MathGroup Archive 2007

[Date Index] [Thread Index] [Author Index]

Search the Archive

Plot3D with NDSolve


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



  • Prev by Date: Re: Interval, Range of a function
  • Next by Date: Install problem, 6.0, Mac OS 10.4.10: No kernel connect?
  • Previous by thread: Strange behaviour (bug?) in Mathematica 6
  • Next by thread: Install problem, 6.0, Mac OS 10.4.10: No kernel connect?