scipy.interpolate.NdPPoly¶
- class scipy.interpolate.NdPPoly(c, x, extrapolate=None)[源代码]¶
分段张量积多项式
点上的值
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,.)
多项式系数,多项式阶 kj 和 mj+1 每个维度的间隔 j 。
- xndarray的二元组,形状(mj+1,)
每个维度的多项式断点。这些必须按升序排序。
- extrapolate布尔值,可选
是根据第一个和最后一个间隔外推到越界点,还是返回NAN。默认值:TRUE。
参见
PPoly
一维分段多项式
注意事项
幂基中的高阶多项式在数值上可能是不稳定的。
- 属性
- xndarray元组
断点。
- cndarray
多项式的系数。
方法:
__call__
\(X[, nu, extrapolate] )求分段多项式或其导数
derivative
\(Nu)构造一个新的分段多项式来表示导数。
antiderivative
\(Nu)构造一个新的分段多项式来表示该反导数。
integrate
\(范围[, extrapolate] )计算分段多项式上的定积分。
integrate_1d
\(a,b,轴[, extrapolate] )计算一维定积分的NdPPoly表示
construct_fast
\(C,x[, extrapolate] )构造分段多项式而不做校验。