matrix_exponential


matrix_exponential, a Python 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.

Licensing:

The information on this web page is distributed under the MIT license.

Languages:

matrix_exponential is available in a C version and a C++ version and a Fortran90 version and a MATLAB version and an Octave version and a Python version.

Related Data and Programs:

test_matrix, a Python code which defines test matrices for which the condition number, determinant, eigenvalues, eigenvectors, inverse, null vectors, P*L*U factorization or linear system solution are known. Examples include the Fibonacci, Hilbert, Redheffer, Vandermonde, Wathen and Wilkinson matrices.

test_matrix_exponential, a Python code which defines a set of test cases for computing the matrix exponential.

Reference:

  1. Alan Laub,
    Review of "Linear System Theory" by Joao Hespanha,
    SIAM Review,
    Volume 52, Number 4, December 2010, page 779-781.
  2. Cleve Moler, Charles VanLoan,
    Nineteen Dubious Ways to Compute the Exponential of a Matrix, SIAM Review,
    Volume 20, Number 4, October 1978, pages 801-836.
  3. Cleve Moler, Charles VanLoan,
    Nineteen Dubious Ways to Compute the Exponential of a Matrix, Twenty-Five Years Later,
    SIAM Review,
    Volume 45, Number 1, March 2003, pages 3-49.
  4. Roger Sidje,
    EXPOKIT: Software Package for Computing Matrix Exponentials,
    ACM Transactions on Mathematical Software,
    Volume 24, Number 1, 1998, pages 130-156.
  5. Robert Ward,
    Numerical computation of the matrix exponential with accuracy estimate,
    SIAM Journal on Numerical Analysis,
    Volume 14, Number 4, September 1977, pages 600-610.

Source Code:


Last modified on 06 February 2017.