2015-02-23 71 views
0

我想如下與奇異MATLAB

enter image description here

我知道如何寫在MATLAB二重積分來執行功能的雙重積分二重積分。正如你所看到的,這個函數不容易計算,因爲變量是分母。假設我稱之爲integrad fun1。

我寫了下面的代碼來解決它

[email protected](gamma1)gamma1; 

I= integral2(fun1,0,+inf,gamma2min,+inf); 

我收到以下錯誤

最小步長接近X = 0.160784到達。可能存在奇點,或者容差對於這個問題可能太嚴格。

我也明白問題是什麼,但我不知道如何解決它。

感謝所有幫助

+1

沿迦瑪= GAMMA2奇異看起來很糟糕;除非函數f滿足當gamma1 = gamma2時f(gamma1,gamma2)= 0,積分將發散。即使這樣也可能不足以挽救積分。你能指定f的性質嗎? – 2015-02-23 21:46:47

回答

0

Matlab的文檔中說,「integral2執行最好的時候,奇點積分邊界上」 [src。因此,由於您的積分區域是在伽馬空間簡單的矩形,我打破它分爲兩個區域對奇點(gamma1 == gamma2)和金額:

I1 = integral2(fun1, 0  , gamma2min , gamma2min , +Inf); 
I2 = integral2(fun1,gamma2min , +Inf , gamma2min , +Inf); 
I = I1 + I2; 
+0

你的意思是gamma2min而不是gamma1min吧? – George 2015-02-24 00:57:41

+0

如果我遵循你的代碼,我得到錯誤,因爲它應該是標量。 – George 2015-02-24 01:00:11

+0

@George是的,我的意思是'gamma2min'(道歉)。你是做什麼的「它應該是標量」? – TroyHaskin 2015-02-24 01:09:23