scipy.linalg.

cho_solve#

scipy.linalg.cho_solve(c_and_lower, b, overwrite_b=False, check_finite=True)[source]#

在给出 A 的 Cholesky 分解的情况下,求解线性方程 A x = b。

参数::
(c, lower)元组,(数组,布尔)

由 cho_factor 给出的 a 的 Cholesky 分解

b数组

右侧

overwrite_b布尔,可选

是否覆盖 b 中的数据(可能提高性能)

check_finite布尔,可选

是否检查输入矩阵是否只包含有限数字。禁用可能会提高性能,但如果输入包含无穷大或 NaN,可能会导致问题(崩溃、不终止)。

返回值::
x数组

系统 A x = b 的解

另请参阅

cho_factor

矩阵的 Cholesky 分解

示例

>>> import numpy as np
>>> from scipy.linalg import cho_factor, cho_solve
>>> A = np.array([[9, 3, 1, 5], [3, 7, 5, 1], [1, 5, 9, 2], [5, 1, 2, 6]])
>>> c, low = cho_factor(A)
>>> x = cho_solve((c, low), [1, 1, 1, 1])
>>> np.allclose(A @ x - [1, 1, 1, 1], np.zeros(4))
True