Plot3D with NDSolve
- To: mathgroup at smc.vnet.net
- Subject: [mg81643] Plot3D with NDSolve
- From: sean_incali <sean_incali at yahoo.com>
- Date: Sun, 30 Sep 2007 04:02:04 -0400 (EDT)
Hello group,
Let's say I can solve the following DE that depends on 2 paparmeters a
and b, and plot it accordingly.
eqn = y'[x] == b/(a y[x])
par = {a -> 1, b -> 1}
solution = NDSolve[{eqn /. par, y[0] == 0.1}, y, {x, 0.1, 5}];
Plot[y[x] /. solution, {x, 0.1, 5}];
Above shows a 2d graph in x and y axes.
What I want to do is now use one of the parameter as z axis.
So I need to solve the DE while varying a from 1 to 5 for instance.
Then I want to graph the solutions as a 3D object. with x. y and a
axis (where a will be the new z axis.)
I guess I can use Table to iterate the whole procedure, but I wanted
to see how others would approach it.
For instance, if I use
eqn = y'[x] == b/(a y[x])
par = {b -> 1}
solution = Table[NDSolve[{eqn /. par, y[0] == 0.1}, y, {x, 0.1, 5}],
{a, 1, 5}];
Plot[Evaluate[y[x] /. solution], {x, 0.1, 5}];
It will shows all the solutions in one 2D graph. I want to see them in
3D.
On the side note.. Why does the Plot require the "Evaluate" in the
second code I posted and not in the first code???
If someone can explain that that will be great also.
Thanks in advance as usual.
sean