如何使用 Python SciPy 解决厄米特正带状矩阵方程?


可以使用名为 scipy.linalg.solveh_banded 的线性函数来求解带状矩阵方程。在下面给出的示例中,我们将求解带状系统 Hx = b,其中 −

$$\mathrm{H} = \begin{bmatrix} 8 & 2-1j&0 &0 \ 2+1j & 5& 1j & -2-1j0\ 0 & -1j& 9& \ 0 & 0& -2+1j& 6 \end{bmatrix} \mathrm{b}=\begin{bmatrix} 1\ 1+1j\ 1-2j\ 0 \end{bmatrix}$$

对于下面的示例,我们将上对角线放入数组 hb −

示例

from scipy.linalg import solveh_banded
hb = np.array([[0, 2-1j, 1j, -2-1j],  [8, 5, 9, 6 ]])
b = np.array([1, 1+1j, 1-2j, 0])
x = solveh_banded(hb, b) 
print(x)

输出

array([ 0.07318536-0.02939412j, 0.11877624+0.17696461j, 0.10077984-0.23035393j, -0.00479904-0.09358128j])

更新时间: 2021 年 11 月 25 日

165 次浏览

开启你的 职业生涯

完成课程认证

开始
广告