scipy.interpolate.
NdPPoly#
- class scipy.interpolate.NdPPoly(c, x, extrapolate=None)[source]#
分段張量積多項式
點
xp = (x', y', z', ...)
的值會先計算區間索引 i,使得x[0][i[0]] <= x' < x[0][i[0]+1] x[1][i[1]] <= y' < x[1][i[1]+1] ...
然後計算
S = sum(c[k0-m0-1,...,kn-mn-1,i[0],...,i[n]] * (xp[0] - x[0][i[0]])**m0 * ... * (xp[n] - x[n][i[n]])**mn for m0 in range(k[0]+1) ... for mn in range(k[n]+1))
其中
k[j]
是維度 j 中多項式的次數。此表示法為分段多元冪基底。- 參數:
- cndarray,形狀 (k0, …, kn, m0, …, mn, …)
多項式係數,每個維度 j 的多項式階數為 kj,區間數為 mj+1。
- xndim 元組的 ndarray,形狀 (mj+1,)
每個維度的多項式斷點。這些必須以遞增順序排序。
- extrapolatebool,選填
是否基於第一個和最後一個區間外插到超出範圍的點,或返回 NaN。預設值:True。
另請參閱
PPoly
一維分段多項式
註解
冪基底中的高階多項式在數值上可能不穩定。
- 屬性:
- xndarray 元組
斷點。
- cndarray
多項式的係數。
方法
__call__
(x[, nu, extrapolate])評估分段多項式或其導數
derivative
(nu)建構一個新的分段多項式來表示導數。
antiderivative
(nu)建構一個新的分段多項式來表示反導數。
integrate
(ranges[, extrapolate])計算分段多項式上的定積分。
integrate_1d
(a, b, axis[, extrapolate])計算一維定積分的 NdPPoly 表示法
construct_fast
(c, x[, extrapolate])建構分段多項式,但不進行檢查。