Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2012

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

Search the Archive

Re: Dr. Lynchs book Dynamical Systems with Applications using Mathematica

  • To: mathgroup at smc.vnet.net
  • Subject: [mg125372] Re: Dr. Lynchs book Dynamical Systems with Applications using Mathematica
  • From: Tomas Garza <tgarza10 at msn.com>
  • Date: Sat, 10 Mar 2012 06:16:14 -0500 (EST)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com

Perhaps a simple example will shed some light: think of an equation, like x^2 -x-3 = 0, which you wish to numerically solve for x. You will use the function NSolve with the appropriate syntax, and get the two solutions -1.30278 and 2.30278, but they appear in terms of rules (cf. the OnLine Help for NSolve, and see in More Information: NSolve gives solutions in terms of rules of the form x->sol). What you actually get is then {{x -> -1.30278}, {x-> 2.30278}}. This is a list of the solutions, in this case real numbers. Call this sol, for example:
sol = NSolve[x^2 - x - 3 == 0, x]. The evaluation of this yields {{x -> -1.30278}, {x -> 2.30278}}
Then sol[[1]] is {x -> -1.30278}; and sol[[1, 1]] is x -> -1.30278 .Then, if you say y = x/.sol[[1,1]] what you get is that y has been set to the value -1.3027, which is what you will usually need.
The same reasoning applies to you problem. ode1[[1,1]] is the first of the list of solutions, and it comes in terms of a parameter, t. {x[t], y[t]} /. sol[i] says "take the x[t], y[t] which appear in ode1[[i, 1]]". This is the input to ParametricPlot. And so on.
I hope this will help.
-Tomas

> Date: Fri, 9 Mar 2012 06:11:02 -0500
> From: pennsylvaniajake at gmail.com
> Subject: Re: Dr. Lynchs book Dynamical Systems with Applications using Mathematica
> To: mathgroup at smc.vnet.net
>
> Could some one please explain the code?
>
> The line starts with sol[1] and ends with ode1[-3,-4];
>
> I have looked through all my books on Mathematica and cannot find
> anything like it.
>
>  p1=VectorPlot[{2x+y,x+2y},{x,-3,3},{y,-3,3}] ;
>  ode1[x0_,y0_]:=NDSolve[{x'[t]=C5 2x[t]+y[t],y'[t]=C5 x[t]+2y[t],x[0]=C5 x0,y[0]=C5 y0},{x[t],y[t]},{t,-3,3}];
>
>  sol[1]=ode1[1,1];sol[2]=ode1[1,-1];sol[3]=ode1[-1,-1];sol[4]=ode1[-1,1];sol[5]=ode1[3,1];sol[6]=ode1[1,3];sol[7]=ode1[-1,-3];sol[8]=ode1[-3,-1];
>
>  p2=ParametricPlot[Evaluate[Table[{x[t],y[t]}/.sol[i],{i,8}]],{t,-3,3},
>  PlotRange=C2=AE{{-3,3},{-3,3}},PlotPoints=C2=AE100,AxesLabel=C2=AE{"x","y"}];
>
>  Show[{p1,p2},PlotRange=C2=AE{{-3,3},{-3,3}},AxesLabel=C2=AE{"x","y"},Axes=C2==AETrue] 
>


  • Prev by Date: Re: new functional operator
  • Next by Date: Re: Dr. Lynchs book Dynamical Systems with Applications using Mathematica
  • Previous by thread: Re: Dr. Lynchs book Dynamical Systems with Applications using Mathematica
  • Next by thread: Re: Dr. Lynchs book Dynamical Systems with Applications using Mathematica