To be able to run this program, you need to have an installation
of SciPy stack.

In a recent version of Ubuntu & Debian you can get the SciPy stack
by copying/pasting the following code to a terminal:

sudo apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose

For specific instructions for other systems, see: http://www.scipy.org/install.html

After unzipping, you should have following files:

/data/		%Folder to store data created
/plot/		%Folder to store plots created
00ReadMe.txt 
rossler.py	%System definitions
solver.py	%Integrator
poincare.py	%Computes and plots a Poincare section
returnmap.py	%Computes and plots the arclength return map corresponding to the Poincare section

rossler.py is a module that has the definition of the velocity function for
Rossler system and is included by solver.py

solver.py can be included as a module or run standalone. As a module, it 
contains the function "integrate" that takes an initial point (x0) and array 
of time points (t) for which the positions will be output, and returns an 
array containing the statespace points corresponding to the time instances 
given in t.

poincare.py can be included as a module or run standalone. As a module, it 
contains the function "compute" that returns a Poincare section corresponding
to a given solution array. When called by itself, it computes the Poincare
section corresponding to the solution produced by solver.py and plots it.

returnmap.py is run standalone. It produces the arclength return map corresponding
to the Poincare section computed by poincare.py

To run solver.py to see the output, type

python solver.py

in a terminal in the program directory.

Starting from an initial point on the strange attractor, the simulation will
run for 1000 time units and will generate 100001 output data corresponding to
equally spaced time instances and plot the trajectory.

The data generated by solver.py will be stored in data/solution.dat
A png file that will contain the plot will be stored in plot/rossler.png

After running solver.py you can run

poincare.py to produce the Poincare section.

and then returnmap.py to produce the corresponding returnmap of arclengths.