当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python SciPy linalg.cho_solve_banded用法及代码示例


本文简要介绍 python 语言中 scipy.linalg.cho_solve_banded 的用法。

用法:

scipy.linalg.cho_solve_banded(cb_and_lower, b, overwrite_b=False, check_finite=True)#

求解线性方程 A x = b ,给定带状 Hermitian A 的 Cholesky 分解。

参数

(cb, lower) 元组,(ndarray,布尔)

cb 是 A 的 Cholesky 因式分解,由 cholesky_banded 给出。 lower 必须与赋予cholesky_banded 的值相同。

b array_like

右侧

overwrite_b 布尔型,可选

如果为 True,该函数将覆盖 b 中的值。

check_finite 布尔型,可选

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

返回

x 数组

系统 A x = b 的解

注意

例子

>>> import numpy as np
>>> from scipy.linalg import cholesky_banded, cho_solve_banded
>>> Ab = np.array([[0, 0, 1j, 2, 3j], [0, -1, -2, 3, 4], [9, 8, 7, 6, 9]])
>>> A = np.diag(Ab[0,2:], k=2) + np.diag(Ab[1,1:], k=1)
>>> A = A + A.conj().T + np.diag(Ab[2, :])
>>> c = cholesky_banded(Ab)
>>> x = cho_solve_banded((c, False), np.ones(5))
>>> np.allclose(A @ x - np.ones(5), np.zeros(5))
True

相关用法


注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.linalg.cho_solve_banded。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。