SciPy中哪個線性函式用於求解厄米特正定帶狀矩陣方程?


名為`scipy.linalg.solveh_banded`的線性函式用於求解厄米特正定帶狀矩陣方程。此函式的形式如下:

scipy.linalg.solveh_banded(ab, b, overwrite_ab=False, overwrite_b=False, lower=False, check_finite=True)

此線性函式將求解方程 ax = b 中的 x,其中 a 是厄米特正定帶狀矩陣。

帶狀矩陣 a 以如下所示的上下對角線有序形式儲存在 ab 中:

ab[u + i - j, j] == a[i,j] (if upper form; i<=j)
ab[ i - j, j] == a[i,j] (if lower form; i >= j)

ab 的上三角形式示例如下:

*    *    a02   a13   a24  a35
*    a01  a12   a23   a34  a45
a00 a11 a22 a33 a44    a55

這裡 a 的形狀為 (6, 6),u = 2。

ab 的下三角形式示例如下:

a00 a11 a22 a33 a44 a55
a10  a21 a32 a43 a54  *
a20 a31 a42 a53 *    *

這裡 a 的形狀為 (6, 6),u = 2。

引數

以下是函式 `scipy.linalg.solveh_banded()` 的引數:

  • ab− (u + 1, M) array_like

    此引數表示帶狀矩陣。

  • b− (M,) 或 (M, K) array_like

    此引數表示右側向量。

  • overwrite_ab− bool,可選

    此引數用於丟棄帶狀矩陣 ab 中的資料。這可能會提高矩陣的效能。

  • overwrite_b− bool,可選

    此引數用於丟棄 b 中的資料。這可能會提高矩陣的效能。

  • lower− bool,可選

    此引數用於檢查帶狀矩陣是否為下三角形式。預設為帶狀矩陣的上三角形式。

  • check_finite− bool,可選

    此引數用於檢查輸入矩陣是否僅包含有限數字。停用它可能會提高效能。如果輸入不包含無限值,則可能會導致問題。

返回值

  • x− (M,) 或 (M, K) ndarray

    返回帶狀矩陣方程 ax = b 的解。輸出的形狀取決於 b 的形狀。

更新於:2021年11月24日

92 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.