matrix_exponential, a FORTRAN90 code which exhibits and compares some algorithms for approximating the matrix exponential function.
Formally, for a square matrix A and scalar t, the matrix exponential exp(A*t) can be defined as the sum:
exp(A*t) = sum ( 0 <= i < oo ) A^i t^i / i!
The simplest form of the matrix exponential problem asks for the value when t = 1. Even for this simple case, and for a matrix of small order, it can be quite difficult to compute the matrix exponential accurately.
The code needs the R8LIB library. The test code requires the TEST_MATRIX_EXPONENTIAL library.
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
matrix_exponential is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version and a Python version.
R8LIB, a FORTRAN90 code which contains many utility routines using double precision real (R8) arithmetic.
TEST_MAT, a FORTRAN90 code which defines test matrices.
TEST_MATRIX_EXPONENTIAL, a FORTRAN90 code which defines a set of test cases for computing the matrix exponential.