當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python SciPy linalg.matrix_power用法及代碼示例

本文簡要介紹 python 語言中 scipy.sparse.linalg.matrix_power 的用法。

用法:

scipy.sparse.linalg.matrix_power(A, power)#

將方陣求整數次方 power。

對於非負整數,A**power 使用重複的矩陣乘法進行計算。不支持負整數。

參數

A (M, M) 方稀疏數組或矩陣

稀疏數組將被提升為冪冪

power int

用於計算稀疏數組 A 的指數

返回

A**power (M, M) 稀疏數組或矩陣

輸出矩陣將與 A 具有相同的形狀,並將保留 A 的類,但輸出的格式可能會更改。

注意

這使用矩陣冪的遞歸實現。對於使用相當大的冪計算矩陣冪,這可能比使用 A @ A @ … @ A 直接計算乘積的效率要低。這取決於矩陣中非零條目的數量。

例子

>>> from scipy import sparse
>>> A = sparse.csc_array([[0,1,0],[1,0,1],[0,1,0]])
>>> A.todense()
array([[0, 1, 0],
       [1, 0, 1],
       [0, 1, 0]])
>>> (A @ A).todense()
array([[1, 0, 1],
       [0, 2, 0],
       [1, 0, 1]])
>>> A2 = sparse.linalg.matrix_power(A, 2)
>>> A2.todense()
array([[1, 0, 1],
       [0, 2, 0],
       [1, 0, 1]])
>>> A4 = sparse.linalg.matrix_power(A, 4)
>>> A4.todense()
array([[2, 0, 2],
       [0, 4, 0],
       [2, 0, 2]])

相關用法


注:本文由純淨天空篩選整理自scipy.org大神的英文原創作品 scipy.sparse.linalg.matrix_power。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。