Welcome to M.E.S.S.

MESS, the Matrix Equations Sparse Solvers library, is the successor to the Lyapack Toolbox for MATLAB®. It will be available as a MATLAB® toolbox as well as a C-library. It is intended for solving large sparse matrix equations as well as problems from model order reduction and optimal control. The C-version provides a large set of auxillary subroutines for sparse matrix computations and efficient usage of modern multicore workstations.


At the moment the following features are available or under active development:

  • solving large scale (generalized) Lyapunov and Riccati equations.
  • model order reduction for 1st and 2nd order systems via Balanced Truncation.
  • H_2 model order reduction via the IRKA and TSIA algorithms.
  • tools for LQR problems.
  • Differential Riccati equation solvers.

The C-library additionally provides:

  • a uniform interface to handle sparse and dense matrices.
  • shared memory parallel algorithms using OpenMP and Pthreads.
  • a solver for special sparse-dense Sylvester equations.
  • a large set of direct and iterative solvers for linear systems.
  • various helper subroutines for thread pools, configuration files, interface to MATLAB, ...


For information about the MATLAB-part please contact  Dr. Jens Saak.

For information about the C-library please contact  Martin Köhler.


We are collecting a number of common pitfalls regarding the compilation and usage on a separate troubleshooting page.

Software Testing

The C-library is tested nightly. The results are only available from our institute. See  http://johannes/cdash/.

Help using Trac