scipy.sparse.linalg.expm#
- scipy.sparse.linalg.expm(A)[source]#
Compute the matrix exponential using Pade approximation.
- Parameters:
- A(M,M) array_like or sparse matrix
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_matrix >>> from scipy.sparse.linalg import expm >>> A = csc_matrix([[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 <3x3 sparse matrix of type '<class 'numpy.float64'>' with 3 stored elements in Compressed Sparse Column format> >>> Aexp.toarray() array([[ 2.71828183, 0. , 0. ], [ 0. , 7.3890561 , 0. ], [ 0. , 0. , 20.08553692]])