numpy.polynomial#

一個用於有效處理多項式的子套件。

在本子套件的文件中,「有限冪級數」,即多項式(也簡稱為「級數」)由多項式係數的 1-D numpy 陣列表示,從最低階項到最高階項排序。例如,array([1,2,3]) 表示 P_0 + 2*P_1 + 3*P_2,其中 P_n 是適用於特定模組的 n 階基底多項式,例如,polynomial(它「包裝」了「標準」基底)或 chebyshev。為了獲得最佳效能,所有多項式運算(包括在參數處的求值)都實作為係數的運算。其他(模組特定的)資訊可以在感興趣模組的 docstring 中找到。

此套件為六種不同的多項式提供了便利類別

名稱

提供

Polynomial

冪級數

Chebyshev

Chebyshev 級數

Legendre

Legendre 級數

Laguerre

Laguerre 級數

Hermite

Hermite 級數

HermiteE

HermiteE 級數

這些便利類別為使用不同基底的多項式建立、操作和擬合資料提供了 consistent interface。便利類別是 polynomial 套件的首選介面,並且可以從 numpy.polynomial 命名空間取得。這消除了導航到相應子模組的需求,例如 np.polynomial.Polynomialnp.polynomial.Chebyshev 而不是 np.polynomial.polynomial.Polynomialnp.polynomial.chebyshev.Chebyshev。這些類別提供了比每個多項式類型子模組中定義的類型特定函數更 consistent 且更簡潔的介面。例如,要將 degree 為 1 的 Chebyshev 多項式擬合到由陣列 xdataydata 給定的資料,fit 類別方法

>>> from numpy.polynomial import Chebyshev
>>> xdata = [1, 2, 3, 4]
>>> ydata = [1, 4, 9, 16]
>>> c = Chebyshev.fit(xdata, ydata, deg=1)

是優於 np.polynomial.chebyshev 模組中的 chebyshev.chebfit 函數

>>> from numpy.polynomial.chebyshev import chebfit
>>> c = chebfit(xdata, ydata, deg=1)

請參閱 使用便利類別 以取得更多詳細資訊。

便利類別#

以下列出了表示各種多項式類型的所有類別通用的各種常數和方法。在下文中,術語 Poly 代表任何一個便利類別(例如 PolynomialChebyshevHermite 等),而小寫 p 代表多項式類別的實例

常數#

  • Poly.domain – 預設域

  • Poly.window – 預設視窗

  • Poly.basis_name – 用於表示基底的字串

  • Poly.maxpower – 允許 p**n 的最大值 n

  • Poly.nickname – 用於列印的字串

建立#

用於建立多項式實例的方法。

  • Poly.basis(degree) – 給定 degree 的基底多項式

  • Poly.identity()p,其中 p(x) = x 對於所有 x

  • Poly.fit(x, y, deg) – degree 為 degp,其係數由資料 xy 的最小平方擬合決定

  • Poly.fromroots(roots) – 具有指定 roots 的 p

  • p.copy() – 建立 p 的副本

轉換#

用於將一種多項式實例轉換為另一種的方法。

  • p.cast(Poly) – 將 p 轉換為 Poly 種類的實例

  • p.convert(Poly) – 將 p 轉換為 Poly 種類的實例,或在 domainwindow 之間映射

微積分#

  • p.deriv() – 取 p 的導數

  • p.integ() – 積分 p

驗證#

  • Poly.has_samecoef(p1, p2) – 檢查係數是否匹配

  • Poly.has_samedomain(p1, p2) – 檢查域是否匹配

  • Poly.has_sametype(p1, p2) – 檢查類型是否匹配

  • Poly.has_samewindow(p1, p2) – 檢查視窗是否匹配

雜項#

  • p.linspace() – 在 domain 中等間隔的點傳回 x, p(x)

  • p.mapparms() – 傳回 domainwindow 之間線性映射的參數。

  • p.roots() – 傳回 p 的 roots。

  • p.trim() – 移除尾隨係數。

  • p.cutdeg(degree) – 將 p 截斷為給定 degree

  • p.truncate(size) – 將 p 截斷為給定 size

配置#

numpy.polynomial.set_default_printstyle(style)

設定多項式字串表示的預設格式。