MathGroup Archive 2012

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

Search the Archive

Re: How to Scale and vary plot for a Differential Equation


You appear to be confusing the syntax of DSolve with that of NDSolve.
DSolve can be used to solve the DE once rather than repeatedly inside
the manipulate.

DSolve[{x'[t] - r x[t] (1 - x[t]/K) == 0,
    x[0] == 1/2}, x[t], t][[1]] // Quiet

{x[t] -> (E^(r*t)*K)/(-1 + E^(r*t) + 2*K)}

Manipulate[
 Module[{sol},
  sol = {x[t] -> (E^(r*t)*K)/(-1 + E^(r*t) + 2*K)};
  ParametricPlot[
   Evaluate[{
     x[t] /. sol,
     Log[D[x[t] /. sol, t]]}],
   {t, 0, 50},
   Frame -> True,
   Axes -> False,
   FrameLabel -> {"x", Log[Overscript[x, "."]]},
   AspectRatio -> 1,
   PlotRange -> {{0, 5.1}, {-6, 2.1}}]],
 {{r, 1}, 1, 5, 0.01, Appearance -> "Labeled"},
 {{K, 1}, 1, 5, 0.01, Appearance -> "Labeled"}]


Bob Hanlon


On Fri, Jul 20, 2012 at 3:48 AM, Rahul Chakraborty
<rahul.6sept at gmail.com> wrote:
> Dear all,
>
> Kindly guide me for the above mentioned subject. I did try to code it but needs guidance.The code as below
>
> Clear[x];
> k[x_]=Manipulate[DynamicModule[{r:=1,K:=1},{Slider[Dynamic[r]],Slider[Dynamic[K]]},eqn=x'[t]-r x[t] (1-x[t]/K)==0//Quiet,sol=First@DSolve[{eqn,x[0]==1/2},x[t],{t,0,50}],[ParametricPlot[Evaluate[{x[t]/.sol,D[x[t]/.sol,t]}],{t,0,50},Frame->True,AxesLabel->{"x",Overscript[x,"."]},AspectRatio->1],ImageSize-> Scaled[r,K]],{r,1,5},{K,1,5},Initialization:> {r:=1,K:=1},SaveDefinitions-> True]]
>
> Regards,
> rahul
>



  • Prev by Date: Re: FindCurvePath has a problem
  • Next by Date: Re: Solving Third Order differential equation using Mathematica.
  • Previous by thread: How to Scale and vary plot for a Differential Equation
  • Next by thread: Re: How to Scale and vary plot for a Differential Equation