Node:Functions of a Matrix, Previous:Matrix Factorizations, Up:Linear Algebra
expm (a) | Loadable Function |
Return the exponential of a matrix, defined as the infinite Taylor
series
expm(a) = I + a + a^2/2! + a^3/3! + ... The Taylor series is not the way to compute the matrix
exponential; see Moler and Van Loan, Nineteen Dubious Ways to
Compute the Exponential of a Matrix, SIAM Review, 1978. This routine
uses Ward's diagonal
Pade'
approximation method with three step preconditioning (SIAM Journal on
Numerical Analysis, 1977). Diagonal
Pade'
approximations are rational polynomials of matrices
-1 D (a) N (a) whose Taylor series matches the first
|
logm (a) | Function File |
Compute the matrix logarithm of the square matrix a. Note that this is currently implemented in terms of an eigenvalue expansion and needs to be improved to be more robust. |
[result, error_estimate] = sqrtm (a) | Loadable Function |
Compute the matrix square root of the square matrix a.
Ref: Nicholas J. Higham. A new sqrtm for MATLAB. Numerical Analysis Report No. 336, Manchester Centre for Computational Mathematics, Manchester, England, January 1999. |
kron (a, b) | Function File |
Form the kronecker product of two matrices, defined block by block as
x = [a(i, j) b] For example,
kron (1:4, ones (3, 1)) => 1 2 3 4 1 2 3 4 1 2 3 4 |
x = syl (a, b, c) | Loadable Function |
Solve the Sylvester equation
A X + X B + C = 0using standard LAPACK subroutines. For example, syl ([1, 2; 3, 4], [5, 6; 7, 8], [9, 10; 11, 12]) => [ -0.50000, -0.66667; -0.66667, -0.50000 ] |