Dipl.-Math. Martin Köhler
Dipl.-Math. Martin Köhler
Phone: +49 391 6110 445
Fax: +49 391 6110 453
Dr. Jens Saak
Dr. Jens Saak
Phone: +49 391 6110 216
Fax: +49 391 6110 453
Prof. Dr. Peter Benner
Prof. Dr. Peter Benner
Phone: +49 391 6110 450
Fax: +49 391 6110 453


Dr. Zvonimir Bujanovic

University of Zagreb, Zagreb, Croatia

Dr. Hermann Mena

Department of Mathematics, University of Innsbruck, Innsbruck, Austria


M.E.S.S. (Matrix Equation Sparse Solver)

M.E.S.S. is the successor to the LyaPack Toolbox for MATLAB. It is intended for solving large sparse matrix equations. The new version has been rewriten in large parts to fit the drastic upgrades in the Matlab releases since 2000. Additionally new solvers for differential Riccati equations extend the functionality and many enhancements upgrade the efficiency and runtime behaviour enlarging the number of unknowns that can now be computed.

Amongst other things, M.E.S.S. can solve Lyapunov and Riccati equations, and perform model reduction of systems in state space and structured differential algebraic form. M.E.S.S. has been implemented in MATLAB as well as C, with bindings also via MEX and to Python. M.E.S.S. is therefore not restricted to the solution of "academic toy problems". Several measures have been taken to enhance the computational performance of MESS routines in both implementations. To put this into the right perspective, Lyapunov equations of order 20 000 were solved by MESS within less than a minute on a regular laptop computer. On a 64bit computeserver algebraic Riccati equations of order 250 000 can be solved in well below an hour and solutions to Lyapunov equations for 3d multiphysics applications with roughly 500 000 DOFs have been computed in only a few hours. When using standard (dense) methods, supercomputers are needed to solve problems of this size in reasonable time.

The final release of the C version of M.E.S.S. is still work in progress, but the MATLAB and Octave version is available below. For citations to the Software please see the file in the top level directory of the corresponding download or installation.

Matlab and Octave

C Version

Coming soon.

Python Bindings

The Python package pyMESS will be released as part of the C-version. It uses the C library for fast execution and can be used together with the numpy and scipy packages.

Further Information

Information about the current development are available at:

Alternatively, please send an email to the contact persons on the right if you have any questions about the current release plans and development.

loading content