RADS -- Rigorous Analysis of Dynamical Systems
----------------------------------------------
RADS is a Python-based software toolkit which provides various
components for the rigorous analysis of a dynamical
system. Capabilities include:
* Construction of an outer approximation of the system in question
using interval arithmetic (requires external CAPD library, see
below)
* Analysis of maximal invariant sets.
* Pythonic interface to Chomp and Homcubes, with appropriate
conversion of output.
* Given an index map (in the form of a Numpy matrix) and a map
(dictionary) assigning generators to regions in phase space, RADS
provides a stand alone construction of a symbolic system
semi-conjugate to the original system.
Dependencies:
--------------
* Required:
Python >= 2.6
Numpy >= 1.0
NetworkX >= 1.0
chomp and homcubes_rads (source included)
fabricate.py (included)
* Recommended dependencies:
CAPD (http://capd.ii.uj.edu.pl/) -- for interval arithmetic, a
dependency of RADS' internal interval arithmetic library
C-XSC (http://www2.math.uni-wuppertal.de/wrswt/xsc/cxsc_new.html) --
alternate interval arithmetic library
GNU gcc/g++ -- for compilation of CAPD and internal RADS interval
arithmetic and outer approximation library
Cython -- internal RADS interval arithmetic and outer approximation
library. Standard in Enthought distributions of Python, or from
package repo on most (any?) Linux flavor.
The interval arithmetic library is necessary for combinatorial
enclosure/outer approximation. The Chomp package is required for
computation of the Conley index.
Installation:
-------------
* To build the full package:
--------------------------
1. Make sure C-XSC is compiled and installed on your system.
2. If your Python and Numpy install are different from the defaults found by get_python_lib() and friends, you should enter the appropriate values by hand in config.py. (There are two sample configuration files in sample_configs.)
3. Make sure 'make_rads' is executable (eg. run 'chmod u+x make_rads'
if necessary).
4. Run
python setup.py build --cxsc=/path/to/cxsc/include
4'. Compiled files should now appear in build/lib
5. Run
python setup.py install --prefix=<dir where you want RADS to live>
* To build only the symbolic system subpackage (this process NOT IMPLEMENTED CURRENTLY)
--------------------------------------------
1. Run
python setup.py build --sym
2. Run
python setup.py install --prefix=<dir where you want RADS to live>
The package built in this way will exclude the compilation of the
combinatorial enclosure/outer approximation library. It will,
however, be necessary to compile the Chomp library. Hence, GNU g++
is necessary.
Remark: --prefix=<dir where you want RADS to live> will automatically install all files in, eg.,
<dir where you want RADS to live>/lib/python2.7/site-packages/