Rossler system, initial investigation

longrob's picture

Here is the Rossler system, one of the simplest examples of 3 dimensional deterministic chaos (under certain conditions according to "params"). Thanks to Doug and Joe for various assists. Comments and critiques most welcome ! restart; interface(displayprecision=10): ross_x:=diff(x(t),t)=-y(t)-z(t): ross_y:=diff(y(t),t)=x(t)+a*y(t): ross_z:=diff(z(t),t)=b+x(t)*z(t)-c*z(t): rossler_sys:=ross_x,ross_y,ross_z; #Find fixed points: sol:=solve({rhs(ross_x)=0,rhs(ross_y)=0,rhs(ross_z)=0},{x(t),y(t),z(t)}): fp_sol:=solve({rhs(ross_x)=0,rhs(ross_y)=0,rhs(ross_z)=0},{x(t),y(t),z(t)}): # judicious choice of the following determines chaotic behaviour or not. params:={a=0.32,b=0.3,c=4.5}: fp_sol:=allvalues(eval(fp_sol,params)): fp1:=fp_sol[1];fp2:=fp_sol[2]; #Jacobian: J := frontend(Student:-VectorCalculus:-Jacobian, [map(rhs,[rossler_sys]), [x,y,z](t)], [{`*`,`+`,list},{}]); ev1:=LinearAlgebra[Eigenvalues](eval(J,fp1 union params)); ev2:=LinearAlgebra[Eigenvalues](eval(J,fp2 union params)); # now take a look at the orbits assign(params); DEtools[DEplot3d]({rossler_sys},{x(t),y(t),z(t)},t=50..200,[[x(0)=1,y(0)=1,z(0)=1]],scene=[x(t),y(t),z(t)],stepsize=0.05,thickness=1,linecolor=blue,orientation=[40,120]); # To do: # check eigenvectors # plot poincare return map # plot bifurcation diagram (vary b) # plot 2D or 1D orbits with differing IVPs # look at overall qualitative behaviour

Comments

longrob's picture

Hey what happened ?

My post above seems to have lost all it's new-line-carriage-return's. Why would that happen ? I'm sure it looked OK when I posted it earlier !

I'll try again:

Here is the Rossler system, one of the simplest examples of 3 dimensional deterministic chaos (under certain conditions according to "params"). Thanks to Doug and Joe for various assists. Comments and critiques most welcome !

restart;
interface(displayprecision=10):
ross_x:=diff(x(t),t)=-y(t)-z(t):
ross_y:=diff(y(t),t)=x(t)+a*y(t):
ross_z:=diff(z(t),t)=b+x(t)*z(t)-c*z(t):
rossler_sys:=ross_x,ross_y,ross_z;
#Find fixed points:
sol:=solve({rhs(ross_x)=0,rhs(ross_y)=0,rhs(ross_z)=0},{x(t),y(t),z(t)}):
fp_sol:=solve({rhs(ross_x)=0,rhs(ross_y)=0,rhs(ross_z)=0},{x(t),y(t),z(t)}):
params:={a=0.32,b=0.3,c=4.5}:
fp_sol:=allvalues(eval(fp_sol,params)):
fp1:=fp_sol[1];fp2:=fp_sol[2];
#Jacobian:
J := frontend(Student:-VectorCalculus:-Jacobian, [map(rhs,[rossler_sys]), [x,y,z](t)], [{`*`,`+`,list},{}]);
ev1:=LinearAlgebra[Eigenvalues](eval(J,fp1 union params));
ev2:=LinearAlgebra[Eigenvalues](eval(J,fp2 union params));

# now take a look at the orbits
assign(params);
DEtools[DEplot3d]({rossler_sys},{x(t),y(t),z(t)},t=50..200,[[x(0)=1,y(0)=1,z(0)=1]],scene=[x(t),y(t),z(t)],stepsize=0.05,thickness=1,linecolor=blue,orientation=[40,120]);

#To do:
#check eigenvectors
#plot poincare return map
#plot bifurcation diagram (vary b)
#plot 2D or 1D orbits with differing IVPs

roman_pearce's picture

edit post

You should be able to edit the post to fix it. There's an edit button at the bottom.

gkokovidis's picture

with Animation

 A slight mod to your worksheet to add animation.

View 221_rossler_animate.mw on MapleNet or Download 221_rossler_animate.mw

 

 

Regards,
Georgios Kokovidis
Dräger Medical


problem?

Giorgios, the animation doesn't work here (Maple13.01, standard), I haven't looked into it, is a change in the parameters required or something?.

Scott03's picture

Works

Hi PatrickT,

I have jsut tried the worksheet on Maple 13.02 (standart on WinXP) and the animation does come up with no changes to Giogios's worksheet.  Could you try updating Maple 13 and check to see if the problem goes away?

Scott
Application Developer
Maplesoft

play

Thanks Scott, okay I was assuming that the animation would play automatically, but instead I had to trigger it by selecting "play" in the context menu (I don't usually do mouse clicks so it didn't occur to me to try it).

Even better, I found that by selecting the following:

Tools -> Options -> Display -> Plot Display -> Window

I get a very intuitive "play" button at the bottom of the pop-up window. Then it doesn't take a genius to figure out that pressing play will trigger the animation. Even I was able to work it out. And this one time I overcame a certain reluctance and touched a mouse.

Cheers Scott,

Patrick.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
}