[Date Index]
[Thread Index]
[Author Index]
Re: Lorenz system
*To*: mathgroup at smc.vnet.net
*Subject*: [mg23861] Re: Lorenz system
*From*: Brian Higgins <bghiggins at ucdavis.edu>
*Date*: Mon, 12 Jun 2000 01:17:55 -0400 (EDT)
*References*: <8hssdk$dd3@smc.vnet.net>
*Sender*: owner-wri-mathgroup at wolfram.com
Winston,
There seems to be several difficulties with the problem you posed
in your message to the Math group.
First , the problem is not mathematically well posed. The coupling
that you have indicated is not closed in the sense that the n-th
equation requires information about the n-1 and n+1 equations.
Thus if I take n=1, the ODE equation for x[t][1] requires knowledge
about x[t][0], which is not defined. Likewise, for n=N the ODE for
y[t][N] requires knowledge of y[t][N+1]. It seems that you need
some auxilliary equations! Perhaps I am missing something!
In addition, there are several Mathematica programming
problems. Here are the obvious:
(i) Since you specify init1, init2 etc. in the function call you cannot
specify init1[[1]] in your program. Mathematica assumes init1
within the module is a list.
(ii) The variables k1,k2,k3 in the function call do not pattern match
anything in the Module : replace d1,d2,d3 in the module with
ki,k2,k3.
(iii) The code {N,0,48} in the module does not seem to do
anything. I suspect that within NDSolve you want to have
NDSolve[Flatten[Table[eqns,{N,0,N1}]],....
where egns are your ODEs and N1 identifies the number of
coupled Lorenz equations . If this is the case you must then
specify N1 in the function call rather that N.
Hope this helps you get started.
Cheers,
Brian
In article <8hssdk$dd3 at smc.vnet.net>,
Winston Garira <uceswga at ucl.ac.uk> wrote:
> Hi,
>
> Can someone help me. I am trying to solve a system of 48
Lorenz
> equations which are diffusively coupled. In the system of
equations,
> k1, k2, and k3 are the coupling strengths (constants) which in
this
> case I gave the values k1=15.6, k2=8.8 and k3=5.9. In the
system a, b,
> and c are also constants and I assigned them values a=10,
b=27, and
> c=8/3. I used initial conditions x[0]=0.7, y[0]=0.3 and z[0]=-1.5. N
> (is integer) represents the N th lorenz system and so it has
values
> from 0 to 48. In the notebook below in which I tried to plot the
N=21
> Lorenz system I just got the error that x[t][21], y[t][21], z[t][21]
> are not real numbers.
>
> Thank you
>
> Winston
>
> Lorenzs[init1_, init2_, init3_ ,N_, time_, k1_, k2_, k3_, {a_, b_,
c_}]:=
> Module[{},
> {N,0,48} ;
> lorenz=NDSolve[{
> x'[t][N]+a*(y[t][N]-x[t][N])+ d1*(x[t][N-1]-2 x[t][N] + x[t][N])==0,
> y'[t][N]+b*x[t][N]-y[t][N]-x[t][N] y[t][N] + d2*(y[t][N-1]-2
y[t][N]+y[t][N+1])==0,
> z'[t][N]-c*z[t][N] +z[t][N] y[t][N] + d3 *(z[t][N-1]-2
z[t][N]+z[t][N+1])==0,
> x[0][N]==init1[[1]],
> y[0][N]==init2[[2]],
> z[0][N]==init3[[3]]},
> {x[N], y[N], z[N]},
> {t,0,time}, MaxSteps->200000];
> x[t_][N] := Evaluate[x[t][N] /. lorenz];
> y[t_][N]:= Evaluate[y[t][N] /. lorenz];
> z[t_][N] := Evaluate[z[t][N] /. lorenz];
> ];
>
> a=10; b=27; c=8/3;
>
> Lorenzs[{0.7,0.3,-1.5}, N, 5000, 15.6, 8.8, 5.9, {a,b,c}];
> Plot[{x[t][21], y[t][21], z[t][21]}, {t,0,600},
>
PlotStyle\[Rule]{RGBColor[1,0,0.3],RGBColor[0,0.5,1],RGBColor[1,
0,0.3]}];
>
>
Sent via Deja.com http://www.deja.com/
Before you buy.
Prev by Date:
**Re: Pattern Matching**
Next by Date:
**Re: Pattern Matching**
Previous by thread:
**Lorenz system**
Next by thread:
**Compiled**
| |