       RE: assigning a set of initial values

• To: mathgroup at smc.vnet.net
• Subject: [mg43814] RE: [mg43805] assigning a set of initial values
• From: "David Park" <djmp at earthlink.net>
• Date: Tue, 7 Oct 2003 02:40:53 -0400 (EDT)
• Sender: owner-wri-mathgroup at wolfram.com

```Young,

deqns[{a0_, b0_, c0_}, t0_] :=
{a'[t] == a[t]*(3 - a[t] - 2*b[t] - 3*c[t]),
b'[t] == b[t]*(2 - a[t] - b[t]),
c'[t] == c[t]*(4 - a[t] - b[t]),
a[t0] == a0,
b[t0] == b0,
c[t0] == c0}

But it is not easy to get a good plot of the three solutions on one graph.
Here I use a LogLog plot to try to show all three functions and since a[t]
soon bumps around zero I chopped it off. NDSolve has problems with some
initial conditions. The following automatically solves and plots.

Needs["Graphics`Graphics`"]

Clear[a, b, c]
dsols = First@NDSolve[deqns[{10000, 100, 100}, 0], {a, b, c}, {t, 0, 10}];
{a[t_], b[t_], c[t_]} = {a[t], b[t], c[t]} /. dsols;
LogLogPlot[{If[a[t] <= 0, 10.*^-5, a[t]], b[t], c[t]}, {t, 0, 10},
PlotRange -> {{0.000001, 10}, {0.0001, 10000}}];

This could be written into one routine as follows.

solveAndPlot[{a0_, b0_, c0_}, t0_] :=
Module[{deqns, dsols, a, b, c},
deqns = {Derivative[a][t] ==
a[t]*(3 - a[t] - 2*b[t] - 3*c[t]),
Derivative[b][t] == b[t]*(2 - a[t] - b[t]),
Derivative[c][t] == c[t]*(4 - a[t] - b[t]),
a[t0] == a0, b[t0] == b0, c[t0] == c0};
dsols = First[NDSolve[deqns, {a, b, c},
{t, 0, 10}]]; {a[t_], b[t_], c[t_]} =
{a[t], b[t], c[t]} /. dsols;
LogLogPlot[{If[a[t] <= 0, 0.0001, a[t]], b[t],
c[t]}, {t, 0, 10}, PlotRange ->
{{0.000001,10},{0.0001,10000}}]]

solveAndPlot[{10000, 100, 100}, 0]

David Park

From: Young Kim [mailto:kim17 at fas.harvard.edu]
To: mathgroup at smc.vnet.net

Hi,

Let's say there is a non-linear differential equations like the
following
sol = NDSolve[ {a'[t] == a[t] ( 3 - a[t] - 2 b[t] - 3 c[t] ),
b'[t] == b[t] ( 2 - a[t] - b[t] ), c'[t] == c[t] (4 - a[t] -
b[t])}, {a[t], b[t], c[t]}, {t,0,10}]

Is there a way to systematiiclly specify the initial values to the
above equation (e.g. in the table format)
so that you can visualize the multiple trajectories on the same plane
or in the same 3D space ?
Thanks.

Young

```

• Prev by Date: Re: Make Mathematica wait for File
• Next by Date: Help with Nonlinear Fitting?
• Previous by thread: assigning a set of initial values
• Next by thread: Make Mathematica wait for File