scipy.interpolate.splder

scipy.interpolate.splder(tck, n=1)[源代码]

计算给定样条的导数的样条表示

参数
tckB样条实例或(t,c,k)的元组

要计算其导数的样条

n整型,可选

要计算的导数的顺序。默认值:1

退货
BSpline 实例或元组

阶数为k2=k-n的样条,表示输入样条的导数。返回元组当且仅当输入参数 tck 是元组,否则将构造并返回BSpline对象。

注意事项

0.13.0 新版功能.

示例

这可用于查找曲线的最大值:

>>> from scipy.interpolate import splrep, splder, sproot
>>> x = np.linspace(0, 10, 70)
>>> y = np.sin(x)
>>> spl = splrep(x, y, k=4)

现在,求样条微分,求导数的零点。(注意: sproot 仅适用于3阶样条线,因此我们拟合4阶样条线):

>>> dspl = splder(spl)
>>> sproot(dspl) / np.pi
array([ 0.50000001,  1.5       ,  2.49999998])

这与根非常吻合。 \(\pi/2 + n\pi\)\(\cos(x) = \sin'(x)\)