scipy.interpolate.InterpolatedUnivariateSpline.
導數#
- InterpolatedUnivariateSpline.derivative(n=1)[原始碼]#
建構一個新的樣條函數來表示此樣條函數的導數。
- 參數:
- nint, 選填
導數的階數。預設值:1
- 回傳值:
- splineUnivariateSpline
階數為 k2=k-n 的樣條函數,代表此樣條函數的導數。
另請參閱
註解
版本 0.13.0 新增。
範例
這可以用於尋找曲線的極大值
>>> import numpy as np >>> from scipy.interpolate import UnivariateSpline >>> x = np.linspace(0, 10, 70) >>> y = np.sin(x) >>> spl = UnivariateSpline(x, y, k=4, s=0)
現在,微分樣條函數並找到導數的零點。(注意:
sproot
僅適用於 3 階樣條函數,因此我們擬合一個 4 階樣條函數)>>> spl.derivative().roots() / np.pi array([ 0.50000001, 1.5 , 2.49999998])
這與 \(\cos(x) = \sin'(x)\) 的根 \(\pi/2 + n\pi\) 非常吻合。