Documentation |
Matrix exponential
Y = expm(X)
Y = expm(X) computes the matrix exponential of X.
Although it is not computed this way, if X has a full set of eigenvectors V with corresponding eigenvalues D, then
[V,D] = EIG(X) and EXPM(X) = V*diag(exp(diag(D)))/V
Use exp for the element-by-element exponential.
This example computes and compares the matrix exponential of A and the exponential of A.
A = [1 1 0 0 0 2 0 0 -1 ]; expm(A) ans = 2.7183 1.7183 1.0862 0 1.0000 1.2642 0 0 0.3679 exp(A) ans = 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.
[1] Golub, G. H. and C. F. Van Loan, Matrix Computation, p. 384, Johns Hopkins University Press, 1983.
[2] Moler, C. B. and C. F. Van Loan, "Nineteen Dubious Ways to Compute the Exponential of a Matrix," SIAM Review 20, 1978, pp. 801–836. Reprinted and updated as "Nineteen Dubious Ways to Compute the Exponential of a Matrix, Twenty-Five Years Later," SIAM Review 45, 2003, pp. 3–49.
[3] Higham, N. J., "The Scaling and Squaring Method for the Matrix Exponential Revisited," SIAM J. Matrix Anal. Appl., 26(4) (2005), pp. 1179–1193.