expm

Purpose

Matrix exponential.

Synopsis

Y = expm(X)

Description

expm(X) is the matrix exponential of X. Complex results are produced if X has nonpositive eigenvalues. Use exp for the element-by-element exponential.

Algorithm

expm is a built-in function, but it uses the Padé approximation with scaling and squaring algorithm expressed in the file expm1.m.

A second method of calculating the matrix exponential is via a Taylor series approximation. This method can be found in the file expm2.m. This method is not recommended as a general purpose method. It is often slow and inaccurate.

A third way of calculating the matrix exponential, found in the file expm3.m, is to diagonalize the matrix, apply the function to the individual eigenvalues, and then transform back. This method fails if the input matrix does not have a full set of linearly independent eigenvalues.

References [1] and [2] describe and compare many algorithms for computing expm(X). The built-in method, expm1, is essentially method 3 of [2].

Examples

Suppose A is the 3-by-3 matrix

    1    1    0
    0    0    2
    0    0   -1
then X = expm(A) is

    2.7183    1.7183    1.0862
         0    1.0000    1.2642
         0         0    0.3679
while exp(A) is

    2.7183    2.7183    1.0000
    1.0000    1.0000    7.3891
    1.0000    1.0000    0.3679
Notice that the diagonal elements of the two results are equal; this would be true for any triangular matrix. But the off-diagonal elements, including those below the diagonal, are different.

See Also

exp, funm, logm, sqrtm

References

[1] G. H. Golub and C. F. Van Loan, Matrix Computation, p. 384, Johns Hopkins University Press, 1983.

[2] C. B. Moler and C. F. Van Loan, "Nineteen Dubious Ways to Compute the Exponential of a Matrix," SIAM Review 20, pp. 801-836, 1979.

(c) Copyright 1994 by The MathWorks, Inc.