TEST_MATRIX_EXPONENTIAL
Matrix Exponential Tests
TEST_MATRIX_EXPONENTIAL
is a C++ library which
contains some simple tests for software that computes 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, that is
exp(A) = sum ( 0 <= i < oo ) A^i / i!
Even for this simple case, and for a matrix of small order, it can be quite
difficult to compute the matrix exponential accurately.
TEST_MATRIX_EXPONENTIAL needs the C8LIB and R8LIB libraries.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
TEST_MATRIX_EXPONENTIAL is available in
a C version and
a C++ version and
a FORTRAN90 version and
a MATLAB version and
a Python version.
Related Data and Programs:
EXPOKIT,
a FORTRAN77 library which
solves various forms of the matrix exponential problem,
by Roger Sidje.
MATRIX_EXPONENTIAL,
a C++ library which
demonstrates some simple approaches to the problem of computing the
exponential of a matrix.
R8LIB,
a C++ library which
contains many utility routines using double precision real (R8) arithmetic.
TEST_MAT,
a C++ library which
defines test matrices.
Reference:

Alan Laub,
Review of "Linear System Theory" by Joao Hespanha,
SIAM Review,
Volume 52, Number 4, December 2010, page 779781.

Cleve Moler, Charles VanLoan,
Nineteen Dubious Ways to Compute the Exponential of a Matrix,
SIAM Review,
Volume 20, Number 4, October 1978, pages 801836.

Cleve Moler, Charles VanLoan,
Nineteen Dubious Ways to Compute the Exponential of a Matrix,
TwentyFive Years Later,
SIAM Review,
Volume 45, Number 1, March 2003, pages 349.

Cleve Moler,
Cleve's Corner: A Balancing Act for the Matrix Exponential,
July 23rd, 2012.

Roger Sidje,
EXPOKIT: Software Package for Computing Matrix Exponentials,
ACM Transactions on Mathematical Software,
Volume 24, Number 1, 1998, pages 130156.

Robert Ward,
Numerical computation of the matrix exponential with accuracy estimate,
SIAM Journal on Numerical Analysis,
Volume 14, Number 4, September 1977, pages 600610.
Source Code:
Examples and Tests:
List of Routines:

C8MAT_EXP_A returns the matrix for a given complex test.

C8MAT_EXP_EXPA returns the "exact" exponential matrix for a given complex test.

C8MAT_EXP_N returns the matrix order for a given complex test.

C8MAT_EXP_STORY prints explanatory text for each complex problem.

C8MAT_EXP_TEST_NUM returns the number of complex tests.

R8MAT_EXP_A returns the matrix for a given real test.

R8MAT_EXP_EXPA returns the "exact" exponential matrix for a given real test.

R8MAT_EXP_N returns the matrix order for a given real test.

R8MAT_EXP_STORY prints explanatory text for each real problem.

R8MAT_EXP_TEST_NUM returns the number of real tests.
You can go up one level to
the C++ source codes.
Last modified on 05 March 2013.