【发布时间】:2020-12-20 01:29:32
【问题描述】:
我有以下程序:
nknots = 4
x_i = [0, 1, 2, 3]
y_i = [1, np.exp(1), np.exp(2), np.exp(3)]
coeff = interpolate.make_interp_spline(x_i, y_i, bc_type="natural")
我想使用坐标由 x_i 和 y_i 数组给出的结来构造三次样条。但是,我很难获得所有系数。三次样条函数的形式如下:
y_i(x) = a + b*(x - x_i) + c*(x - x_i)^2 + d*(x - x_i)^3
当我这样做时
print(coeff(x_i))
我只得到 a 值的数组:
[ 1. 2.71828183 7.3890561 20.08553692]
但是,我缺少 b、c 和 d 系数的数组。我如何提取那些?还是我缺少步骤?我阅读了关于 make_interp_spline 的 scipy 文档,但我不明白如何获得 b、c 和 d 系数。
【问题讨论】:
标签: python scipy interpolation coefficients cubic-spline