| Author |
Comment/Response |
James
|
11/23/12 5:32pm
I have a function, defined in the form f[x_, y_, t_] := a[x, y] + b[x, t] ... with a and b similarly defined in terms of x and y; e.g a[x_, y_]:= x + y, say.
I then want to make two plots - one using Plot3D and another using StreamPlot. However, the functions are integrated with respect to t first:
Plot3D[NIntegrate[f[x,y,t], {t, 0, 10}], {x, -1, 1}, {y, -1, 1}] and StreamPlot[{NIntegrate[f[x, y, t], 1}, {t, 0, 10}], {x, -1, 1}, {y, -1, 1}].
The first case works fine and as expected; the x and y pairs are fixed and passed to NIntegrate, which then works its magic on the function.
The second case does not work however, and produces the NIntegrate:inumr: error, saying that "The integrand <...> has evaluated to non-numerical values for all sampling points in the region with boundaries."
Can anyone explain why StreamPlot does not first fix x and y and then pass these values to the function inside NIntegrate to carry out the integration, as Plot3D seems to do, and as the documentation seems to suggest?
Thank you for your time, Jame
URL: , |
|