Motion model source code

Custom requirements

C++ support in AUTO

For efficiency and integration with numerical software, we provide C++ versions of our model components. In order to be able to conduct a continuation analysis of the model, for instance displaying its bifurcations, we propose a modification of the classical software AUTO that allows building and linking to C++ code.

C++ support in AUTO

Necomi

The C++ code relies on a multidimensional array library to facilitate the implementation of the model in an efficient manner. This templatized library we propose relies heavily on the latest C++ standards (C++11 and C++14), requiring a modern compiler, such as GCC or clang.

Necomi website

Flowy

Although we use standard HDF5 files as storage format, which are easily manipulable in a variety of programming languages, we provide a standalone visualization tool to generate custom displays of the multidimensional arrays. This software is a graphical user interface, written in Python with the GTK+ toolkit.

Documentation | Download the tarball

External dependencies

The C++ code requires a C++14 compatible compiler such as GCC or clang. CMake is used as a build system to search for the dependencies and generating system specific make files.

The Python code requires recent Python 2 and 3 compilers, as well as the NumPy and SciPy libraries. The IPython shell is also required to load and execute a few notebooks.

The HDF5 library is required to load and store the model motion data formats. For the C++ code, the official library needs to be compiled with C++ support. For the Python code, h5py is required.

The SUNDIALS differential equation solvers are required to run the non-stochastic dynamics of the C++ models.

The graphical interface of flowy requires the GTK+ library, in its third major version, as well as its associated Python bindings (note that you cannot use the older pygtk bindings).

Model components

IPython notebooks

We provide some IPython notebooks describing a few of the components in our model. Those can be run online.

More to be added.