Skip to content

Latest commit

 

History

History
121 lines (93 loc) · 4.63 KB

test_matrix_exponential.md

File metadata and controls

121 lines (93 loc) · 4.63 KB

TEST_MATRIX_EXPONENTIAL
Matrix Exponential Tests {#test_matrix_exponential-matrix-exponential-tests align="center"}


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: {#licensing align="center"}

The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.

Languages: {#languages align="center"}

TEST_MATRIX_EXPONENTIAL is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version.

Related Data and Programs: {#related-data-and-programs align="center"}

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: {#reference align="center"}

  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. Cleve Moler,
    Cleve's Corner: A Balancing Act for the Matrix Exponential,
    July 23rd, 2012.
  5. Roger Sidje,
    EXPOKIT: Software Package for Computing Matrix Exponentials,
    ACM Transactions on Mathematical Software,
    Volume 24, Number 1, 1998, pages 130-156.
  6. 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: {#source-code align="center"}

Examples and Tests: {#examples-and-tests align="center"}

List of Routines: {#list-of-routines align="center"}

  • 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.