expm — SciPy v1.15.3 Manual (original) (raw)
scipy.sparse.linalg.
scipy.sparse.linalg.expm(A)[source]#
Compute the matrix exponential using Pade approximation.
Parameters:
A(M,M) array_like or sparse array
2D Array or Matrix (sparse or dense) to be exponentiated
Returns:
expA(M,M) ndarray
Matrix exponential of A
Notes
This is algorithm (6.1) which is a simplification of algorithm (5.1).
Added in version 0.12.0.
References
[1]
Awad H. Al-Mohy and Nicholas J. Higham (2009) “A New Scaling and Squaring Algorithm for the Matrix Exponential.” SIAM Journal on Matrix Analysis and Applications. 31 (3). pp. 970-989. ISSN 1095-7162
Examples
from scipy.sparse import csc_array from scipy.sparse.linalg import expm A = csc_array([[1, 0, 0], [0, 2, 0], [0, 0, 3]]) A.toarray() array([[1, 0, 0], [0, 2, 0], [0, 0, 3]], dtype=int64) Aexp = expm(A) Aexp <Compressed Sparse Column sparse array of dtype 'float64' with 3 stored elements and shape (3, 3)> Aexp.toarray() array([[ 2.71828183, 0. , 0. ], [ 0. , 7.3890561 , 0. ], [ 0. , 0. , 20.08553692]])