From: slawek on
I have got an DDE/ODE equation: for parameter d < 0.8 the solutions are
non-chaotic, for d > 0.9 the solutions are chaotic.

Mathematica NDSolve works fine for d < 0.8 .

The problem is NDSolve has got a kind of "safety chceck" - for d > 0.9 it
gives a warning "Maximum number of ... steps reached at the point" - and
gives no solution. I want to bypass the checking - and turn NDSolve to a
dumb routine which gives any noise solution just to show that the solution
is noisy, chaotic and so on.

Obviously, it would be possible to use any programing language to implement
an naive integration scheme. But I would like use an option in NDSolve, to
avoid the change of the environment.

Any suggestions, please?

slawek



From: J. Batista on
Here is a possible answer to your question. You can append the option
MaxSteps -> Infinity to the end of your NDSolve command line. This will
allow NDSolve to use an unlimited number of steps in generating a solution.
Hopefully this helps.

Regards,
J. Batista

On Mon, Jul 26, 2010 at 6:39 AM, slawek <slawek(a)host.pl> wrote:

> I have got an DDE/ODE equation: for parameter d < 0.8 the solutions are
> non-chaotic, for d > 0.9 the solutions are chaotic.
>
> Mathematica NDSolve works fine for d < 0.8 .
>
> The problem is NDSolve has got a kind of "safety chceck" - for d > 0.9 it
> gives a warning "Maximum number of ... steps reached at the point" - and
> gives no solution. I want to bypass the checking - and turn NDSolve to a
> dumb routine which gives any noise solution just to show that the solution
> is noisy, chaotic and so on.
>
> Obviously, it would be possible to use any programing language to implement
> an naive integration scheme. But I would like use an option in NDSolve, to
> avoid the change of the environment.
>
> Any suggestions, please?
>
> slawek
>
>
>
>
From: slawek on

U=BFytkownik "J. Batista" <jbatista800(a)gmail.com> napisa=B3 w wiadomo=B6ci grup
dyskusyjnych:i2m4lo$o4n$1(a)smc.vnet.net...
> Here is a possible answer to your question. You can append the option
> MaxSteps -> Infinity to the end of your NDSolve command line. This will
> allow NDSolve to use an unlimited number of steps in generating a
> solution.
> Hopefully this helps.
>
> Regards,
> J. Batista

The infinite number of steps would take infinite time.

Thus it's not so brillant idea as it pretend to be.

slawek




From: Daniel Lichtblau on
slawek wrote:
> U=BFytkownik "J. Batista" <jbatista800(a)gmail.com> napisa=B3 w wiadomo=B6ci grup
> dyskusyjnych:i2m4lo$o4n$1(a)smc.vnet.net...
>> Here is a possible answer to your question. You can append the option
>> MaxSteps -> Infinity to the end of your NDSolve command line. This will
>> allow NDSolve to use an unlimited number of steps in generating a
>> solution.
>> Hopefully this helps.
>>
>> Regards,
>> J. Batista
>
> The infinite number of steps would take infinite time.
>
> Thus it's not so brillant idea as it pretend to be.
>
> slawek

You neglected to mention what happened when you tried it. Was it
something bad (e.g. program hang or frozen computer)?

Daniel Lichtblau
Wolfram Research

From: sean on
Maybe this helps

Below throws max steps error.

t1 = 0; t2 = 10000;

sol = NDSolve[{x'[t] == y[t], y'[t] == x[t] - x[t]^3 - .15 y[t] +=
.3
Cos[t], x[0] == -1, y[0] == 1}, {x[t], y[t]}, {t, t1, t2}]
Plot[Evaluate[{x[t], y[t]} /. sol], {t, 0, 100}]
ListPlot[Table[Evaluate[{x[t], y[t]} /. sol], {t, t1, t2, 2 Pi}]]


NDSolve::mxst: Maximum number of 10000 steps reached at the point t ==
676.9646955474411`. >>


One way to circumvent is to increase the number of steps. For above
system, something like 500000 will do it. I found it by trial and
error. maybe it will work for your system.

t1 = 0; t2 = 10000;
sol = NDSolve[{x'[t] == y[t],
y'[t] == x[t] - x[t]^3 - .15 y[t] + .3 Cos[t], x[0] == -1,
y[0] == 1}, {x[t], y[t]}, {t, t1, t2}, MaxSteps -> 500000]

Plot[Evaluate[{x[t], y[t]} /. sol], {t, 0, 100}]
ListPlot[Table[Evaluate[{x[t], y[t]} /. sol], {t, t1, t2, 2 Pi}]]


The other way is to set it to infinity, but as you said it may take
infinite time. No way of knowing without the actual system.

Sean


On Jul 27, 4:53 am, "slawek" <sla...(a)host.pl> wrote:
> U=BFytkownik "J. Batista" <jbatista...(a)gmail.com> napisa=B3 w wiadomo=
=B6ci grup
> dyskusyjnych:i2m4lo$o4...(a)smc.vnet.net...
>
> > Here is a possible answer to your question. You can append the optio=
n
> > MaxSteps -> Infinity to the end of your NDSolve command line. This w=
ill
> > allow NDSolve to use an unlimited number of steps in generating a
> > solution.
> > Hopefully this helps.
>
> > Regards,
> > J. Batista
>
> The infinite number of steps would take infinite time.
>
> Thus it's not so brillant idea as it pretend to be.
>
> slawek