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


Python SciPy signal.unique_roots用法及代碼示例


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

用法:

scipy.signal.unique_roots(p, tol=0.001, rtype='min')#

從根列表中確定唯一根及其多重性。

參數

p array_like

根列表。

tol 浮點數,可選

就它們之間的距離而言,兩個根的公差被認為是相等的。默認值為 1e-3。有關根分組的詳細信息,請參閱注釋。

rtype {‘max’, ‘maximum’, ‘min’, ‘minimum’, ‘avg’, ‘mean’},可選

如果多個根在彼此的 tol 內,如何確定返回的根。

  • ‘max’, ‘maximum’: pick the maximum of those roots

  • ‘min’, ‘minimum’: pick the minimum of those roots

  • ‘avg’, ‘mean’: take the average of those roots

當在複數根中找到最小值或最大值時,首先將它們與實部進行比較,然後再與虛部進行比較。

返回

unique ndarray

唯一根的列表。

multiplicity ndarray

每個根的多重性。

注意

如果我們有 3 個根a,bc, 這樣a接近bb接近c(距離小於tol),那麽這並不一定意味著a接近c.這意味著根分組不是唯一的。在這個函數中,我們使用 “greedy” 分組按照輸入中給出的順序遍曆根p.

這個效用函數不是特定於根的,而是可以用於必須確定唯一性和多重性的任何值序列。有關更一般的例程,請參閱 numpy.unique

例子

>>> from scipy import signal
>>> vals = [0, 1.3, 1.31, 2.8, 1.25, 2.2, 10.3]
>>> uniq, mult = signal.unique_roots(vals, tol=2e-2, rtype='avg')

檢查哪些根的重數大於 1:

>>> uniq[mult > 1]
array([ 1.305])

相關用法


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