Assimulo is a simulation package for solving ordinary differential equations. It is written in the high-level programming language Python and combines a variety of different solvers written in FORTRAN, C and even Python via a common high-level interface. The primary aim of Assimulo is not to develop new integration algorithms. The aim is to provide a high-level interface for a wide variety of solvers, both new and old, solvers of industrial standards as well as experimental solvers. The aim is to allow comparison of solvers for a given problem without the need to define the problem in a number of different programming languages to accommodate the different solvers.

Assimulo is created in a collaboration between the Department of Numerical Analysis and the Department of Automatic Control at Lund University together with the company Modelon AB. The main contributors have been Christian Winther (Andersson), Claus Führer, Johan Åkesson and Magnus Gäfvert. For citing Assimulo, see citation.

Assimulo is currently under development and the progress can be followed from our trac-site https://trac.jmodelica.org/assimulo/wiki.

The following solvers are present,

Assimulo uses Cython to wrap the Sundials solvers, CVode and IDA as they are written in C. For FORTRAN solvers, f2py is used from Numpy.


A tutorial which gives a short introduction to Assimulo and how to use Assimulo to solve an explicit and an implicit problem can be found here. There is also a section with describing examples which can be found here.



Assimulo is available for download here. For installation instructions, see here.

The code can be found at https://trac.jmodelica.org/assimulo/wiki.


Contact us preferably through the forum.


If you like to contribute to the Assimulo project please take a look at the contribution license.