ODEs 
 

We have already seen a one dimensional (Logistic map) and a two dimensional (Henon map) show extremely complicated behavior. As the name indicates they are systems that are modelled using discrete time scheme where, in general, the current state of the system depends upon state of the variables in the previous state. The chaos generating mechanism was attributed to the stretch-fold mechanism of the equations.

In this section, we will take examples from a modeling technique which treats time as continuous independent variable and the time variation of the state space variables depend upon the current value of the state space variables. In this section, we will restrict to the class of problems that are modelled using ordinary differential equations (ODEs) where time is the independent variable and all state variables change with time. A numerical method of solving delay time differential equation (Mackey-Glass equation) can be found here. A numerical method for partial differential equations - independent time and space - (PDEs) is given here. A related simplified method - via coupled map lattice (CML) or coupled ODEs are also provided.

An example of a dynamical system in which time is a continuous variable is a system of N first-order,ordinary differential equations, expressed as,

dx(1)
dt
º .
x
 
(1)
 
=
F1(x(1),x(2), ¼, x(N)),
(1)
dx(2)
dt
º .
x
 
(2)
 
=
F2(x(1),x(2), ¼, x(N)),
:
dx(N)
dt
º .
x
 
(N)
 
=
FN(x(1),x(2), ¼, x(N)),
which in vector form is expressed as
dx(t)
dt
º .
x
 
=
F(x).
(2)
This is a dynamical system because, given the initial state of the system x(t0) at t = t0, we can, in principle, determine the future state of the system x(t) at any time t > t0. The space (x(1),x(2), ¼, x(N)) is referred to as the phase space and N determines the dimension of the phase space. The path in phase space followed by the system as it evolves with time is called the orbit or trajectory. It is common to refer to a continuous time dynamical system as a flow. It should be noted that the functions (F1, F2, ¼, FN) depend on the state variables (x(1),x(2), ¼, x(N)) and also on one or more parameters, not denoted explicitly. Also, time itself does not appear in these functions explicitly. In such a case the system is said to be autonomous. Systems with functions (F1, F2, ¼, FN) that depend explicitly on time are called nonautonomous and can be reduced to autonomous form by introducing a new variable xN+1 with its time evolution defined as [dx/dt](N+1) = 1 º FN+1. By doing this we have essentially enlarged the number of dimensions of the phase space by 1 to include time as one of the phase space variables.



ROSSLER SYSTEM

Rossler's system is probably the simplest 3-D ODEs that have quadratic nonlinearity and exhibits chaotic behavior. Formally they are given by the following set of three first order coupled nonlinear ordinary differential equations:

dx/dt = -(y + z)
dy/dt = x + ay
dz/dt = b + z(x - c)

where a, b, and c are system parameters and x, y, z are the state space variables of the Rossler system. Before these system parameters are set to some specific values, we try to locate the fixed point of the system. Note, unlike Lorenz system, (0, 0, 0) is not the fixed point of the system. However, we can still find the fixed points as a function of the system parameter and comment on the existence and the stability of these solutions. From the above set of equations, it follows that the location of the fixed points are given by z = -y = x/a and x is determined by solving the quadratic equation x2 - c*x + a*b = 0. Thus, x = (c + sqrt(c*c - 4*a*b))/2 and x = (c - sqrt(c*c - 4*a*b))/2 and the solution exists if (c*c - 4*a*b) > 0 and a is not equal to zero.

In what follows, some of the output from the simulation of Rossler system is provided. Figure below shows the 3-D plot and two projections of the Rossler chaotic attractor for a = 0.2, b = 0.2, and c = 5.7. Click on the 3-D figure to see the animation of the rotation of the attractor about the Z-axis.

3D Rossler attractor for a=0.2, b=0.2, and c=5.7

Here is the computer code that generates the attractor. Note, you can simulate any number of models by changing the function void model() and appropriately setting the parameter values. If you prefer to run it with X-Window interface to see real time display of the data, use the X-Window library provided here, and a simple example code how to use the library is also provided. There are many other, relatively sophisticated, examples provided, check the download section. Among other things, like color display, text display, it allows you to change the parameter values at run time. The implementation example is for an example of an impact oscillator system.



MAKING THE CONNECTION

The attractor shown above for the parameter settings is a chaotic attractor. To reveal the connection between the chaos generating mechanism for the case of Logistic map and that of the continuous time Rossler system, we use the technique of Poincaré surface of section (taken when the phase variable x goes through a maxima) and plot the current maxima against the previous maxima. Such a plot is called the return map. The result of such a plot is shown in the figure below.

Return Map for Rossler attractor shown above, obtained by plotting the value of x obtained by taking the Poincaré section when x goes through the maxima value.

The surprising result of this procedure is that the resulting return map is reminiscent of the logistic and other unimodal maps which may therefore be viewed as models of continuous chaos when the phase space is strongly contracting. This is further revealed by plotting the bifurcation diagram at the Poincaré section as a function of c. Note there exists no solution for the Rossler system for c < 2.0*sqrt(a*b) as discussed above.

Bifurcation Diagram for Rossler system, obtained by plotting the value of x obtained by taking the Poincaré section when x goes through the maxima as a function of c.

You can download the computer code written in C that generates the return map and the bifurcation diagram obtained above. Note the program can be easily modified to study any system modelled using ODEs.



CHAOTIC MIXING

CLICK HERE FOR THE ANIMATION. What is it that we mean when we say there is sensitive dependence on initial conditions and the related question of unpredictabillity of chaotic systems. To answer this question, we consider the time evolution of a large number of nearby initial conditions in the neighborhood of a chaotic attractor. The animation shown below illustrates the result for the case of the Rossler attractor At first, the initial points (there are one hundred thousand initial conditions in the yellow 'dot') travel together. But with the passage of time, they are stretched out, split apart and folded back on each other. After repeated episodes of stretching and folding, the points are distributed over the entire attractor so that the most one can say is that there is a probability distribution which determines the likelihood that a trajectory will be in a given neighborhood of the attractor at any particular time. This distribution, or "measure," is invariant in the sense that it maps to itself under the action of the differential equations In other words, the long-term state of the system can be predicted only statistically.

Here is the code, that generates the computer code implementation, in C, of the code that generates the data file for different frames of the animation.

    

The above code can be easily modified, to study mixing in any system modelled by ODEs. Change the model in the function void model() and set the parameter values appropriately. The code uses the 4th order Runge-Kutta integrator.



LORENZ SYSTEM



REFERENCES

[1]
J. M. T. Thompson and H. B Stewart, Nonlinear dynamics and chaos : geometrical methods for engineers and scientists, Chichester [West Sussex] ; New York : Wiley, c1986.

[2]
Heinz-Otto Peitgen, Hartmut J|rgens, Dietmar Saupe, Chaos and fractals : new frontiers of science, New York : Springer-Verlag, c1992.