Terminate NDSolve by a condition
- To: mathgroup at smc.vnet.net
- Subject: [mg123579] Terminate NDSolve by a condition
- From: Sam Takoy <sam.takoy at yahoo.com>
- Date: Mon, 12 Dec 2011 06:42:01 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
Hi,
Suppose I'm solving a system of ODE's for x[t] and y[t] and I know
that there is a periodic solution, but beyond that I know nothing, not
even how long the period is. So I want to stop NDSolve when x repeats
a certain value. Here's an example:
sol = NDSolve[{x'[t] == -Sin[t], y'[t] == Cos[t], x[0] == 1, y[0] ==
0}, {x, y}, {t, 0, 6}];
ParametricPlot[Evaluate[{x[t], y[t]} /. sol], {t, 0, 6}]
This solution goes from 0 to 6, but I want it to go from 0 until x(t)
= 1 again.
What's the best way to accomplish this?
Many thanks in advance,
Sam
- Follow-Ups:
- Re: Terminate NDSolve by a condition
- From: DrMajorBob <btreat1@austin.rr.com>
- Re: Terminate NDSolve by a condition
- From: Bob Hanlon <hanlonr357@gmail.com>
- Re: Terminate NDSolve by a condition
- From: Oliver Ruebenkoenig <ruebenko@wolfram.com>
- Re: Terminate NDSolve by a condition