Re: How to Scale and vary plot for a Differential Equation
- To: mathgroup at smc.vnet.net
- Subject: [mg127402] Re: How to Scale and vary plot for a Differential Equation
- From: Rahul Chakraborty <rahul.6sept at gmail.com>
- Date: Sun, 22 Jul 2012 04:32:26 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- Delivered-to: mathgroup-newout@smc.vnet.net
- Delivered-to: mathgroup-newsend@smc.vnet.net
- References: <20120720074852.62B9B685F@smc.vnet.net>
Dear Bob,
Sir, I've tried the same code for another DE. Everything is same just
changed the equations and initial conditions. Its giving an error, i
couldn't debug it.
Clear[x];
DSolve[{x''[t]+\[Mu]
(x[t]x[t]-1)x'[t]+x[t]==0,x[0]==1/2,x'[0]==0},x[t],t][[1]]//Quiet
{x[t]->x[t]+\[Mu] (-1+x[t]^2)
(x^\[Prime])[t]+(x^\[Prime]\[Prime])[t]==0,x[0]==1/2,x'[0]==0}
Manipulate[Module[{sol},sol={x[t]->{x[t]+\[Mu] (-1+x[t]^2)
(x^\[Prime])[t]+(x^\[Prime]\[Prime])[t]==0,x[0]==1/2,x'[0]==0}};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,10.1},{-6,10.1}}]],{{\[Mu],1},1,50,0.01,Appearance->"Labeled"}]
ERROR: ParametricPlot::exclul: {Im[(x^\[Prime])[t]+2 x[t]
(<<1>>^(<<1>>))[<<1>>]^2+(-1+Power[<<2>>])
(x^\[Prime]\[Prime])[t]+(x^(3))[t]==0]-0} must be a list of equalities
or real-valued functions. >>
Kindly advice.
Regards,
rc
On 7/21/12, Bob Hanlon <hanlonr357 at gmail.com> wrote:
> It is not required. If you don't like it, don't use it. Adjust
> PlotRange to taste.
>
>
> Bob Hanlon
>
>
> On Sat, Jul 21, 2012 at 12:57 AM, Rahul Chakraborty
> <rahul.6sept at gmail.com> wrote:
>> Dear Bob,
>>
>> Thanks.
>>
>> But one query, why it is required to use Log in " Log[D[x[t] /. sol,
>> t]". Because in simple plot without Manipulate it is not required.
>>
>>
>> Regards,
>> rc
>>
>> On 7/21/12, Bob Hanlon <hanlonr357 at gmail.com> wrote:
>>> 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
>
- References:
- How to Scale and vary plot for a Differential Equation
- From: Rahul Chakraborty <rahul.6sept@gmail.com>
- How to Scale and vary plot for a Differential Equation