scipy.linalg.

logm#

scipy.linalg.logm(A, disp=True)[source]#

计算矩阵对数。

矩阵对数是 expm 的逆运算: expm(logm(A)) == A

参数:
A(N, N) array_like

要计算其对数的矩阵

dispbool, 可选

如果结果中的误差估计很大,则打印警告,而不是返回估计的误差。(默认值:True)

返回值:
logm(N, N) ndarray

矩阵 A 的对数

errestfloat

(如果 disp == False)

估计误差的 1-范数,||err||_1 / ||A||_1

参考文献

[1]

Awad H. Al-Mohy 和 Nicholas J. Higham (2012) “改进的矩阵对数的逆缩放和平方算法”。SIAM 科学计算杂志,34 (4)。C152-C169。ISSN 1095-7197

[2]

Nicholas J. Higham (2008) “矩阵函数:理论与计算” ISBN 978-0-898716-46-7

[3]

Nicholas J. Higham 和 Lijing lin (2011) “用于矩阵分数幂的 Schur-Pade 算法”。SIAM 矩阵分析与应用杂志,32 (3)。第 1056-1078 页。ISSN 0895-4798

示例

>>> import numpy as np
>>> from scipy.linalg import logm, expm
>>> a = np.array([[1.0, 3.0], [1.0, 4.0]])
>>> b = logm(a)
>>> b
array([[-1.02571087,  2.05142174],
       [ 0.68380725,  1.02571087]])
>>> expm(b)         # Verify expm(logm(a)) returns a
array([[ 1.,  3.],
       [ 1.,  4.]])