2012-08-09 46 views
3

我試圖數值求解一個偏微分方程,其中非齊次項是另一個函數的積分。例如:在NDSolve中使用NIntegrate

NDSolve [{D [f [x,y],x] == NIntegrate [h [x,y + y2],{y2,x,y}],f [0,y] == 0},f,{x,0,1},{y,0,1}]

其中h [x,y]是先前定義的衆所周知的函數。但似乎Mathematica並不知道如何評估積分。

我不太經常使用Mathematica,所以我確信有一個簡單的解決方案。 有人能告訴我我做錯了什麼嗎?

謝謝。

回答

0

這個問題並不十分清楚,但我遇到了類似的問題,我的解決方案是遵循wolfram forums的建議,將積分放在一個額外的函數中並強制實際輸入。

所以你的情況,這將是

integral[x_Real,y_Real] := NIntegrate[h[x,y+y2],{y2, x, y}]; 
NDSolve[{D[f[x, y], x] == integral[x,y], f[0,y] == 0}, f, {x, 0, 1}, {y,0,1}] 
相關問題