如何使用 Python SciPy 求解三角矩阵方程?
名为 scipy.linalg.solveh_triangular 的线性函数用于求解带状矩阵方程。在下面给出的示例中,我们将解决三角系统 ax = b 其中 -
$$\mathrm{a} = \begin{bmatrix} 3 & 0 & 0 & 0\\ 2 & 1 & 0 & 0\\ 1 &0 &1 &0 \\ 1& 1& 1& 1 \end{bmatrix};\; \mathrm{b} =\begin{bmatrix} 1\\ 2\\ 1\\ 2 \end{bmatrix}$$
示例
fromscipy.linalgimport solve_triangularimport numpy as npa = np.array([[3, 0, 0, 0], [2, 1, 0, 0], [1, 0, 1, 0], [1, 1, 1, 1]])b = np.array([1, 2, 1, 2])x = solve_triangular(a, b, lower=True)print (x)
输出结果
array([ 0.33333333, 1.33333333, 0.66666667, -0.33333333])