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


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


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

用法:

scipy.linalg.fiedler_companion(a)#

返回一個 Fiedler 伴隨矩陣

給定一個多項式係數數組 a ,此函數形成一個具有特殊結構的五對角矩陣,其特征值與 a 的根一致。

參數

a (N,) 數組

多項式係數的一維數組,按降序排列,前導係數為非零。對於 N < 2 ,返回一個空數組。

返回

c (N-1, N-1) 數組

生成的伴隨矩陣

注意

companion 類似,前導係數應為非零。在前導係數不為 1 的情況下,其他係數在數組生成之前重新縮放。為避免數值問題,最好提供一元多項式。

參考

[1]

M. Fiedler,“關於伴隨矩陣的注釋”,線性代數及其應用,2003 年,DOI:10.1016/S0024-3795(03)00548-2

例子

>>> import numpy as np
>>> from scipy.linalg import fiedler_companion, eigvals
>>> p = np.poly(np.arange(1, 9, 2))  # [1., -16., 86., -176., 105.]
>>> fc = fiedler_companion(p)
>>> fc
array([[  16.,  -86.,    1.,    0.],
       [   1.,    0.,    0.,    0.],
       [   0.,  176.,    0., -105.],
       [   0.,    1.,    0.,    0.]])
>>> eigvals(fc)
array([7.+0.j, 5.+0.j, 3.+0.j, 1.+0.j])

相關用法


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