scipy.interpolate.LSQUnivariateSpline.
antiderivative#
- LSQUnivariateSpline.antiderivative(n=1)[Quelle]#
Konstruiere einen neuen Spline, der die Stammfunktion dieses Splines darstellt.
- Parameter:
- nint, optional
Ordnung der Stammfunktion, die ausgewertet werden soll. Standard: 1
- Rückgabe:
- splineUnivariateSpline
Spline der Ordnung k2=k+n, die die Stammfunktion dieses Splines darstellt.
Siehe auch
Hinweise
Hinzugefügt in Version 0.13.0.
Beispiele
>>> import numpy as np >>> from scipy.interpolate import UnivariateSpline >>> x = np.linspace(0, np.pi/2, 70) >>> y = 1 / np.sqrt(1 - 0.8*np.sin(x)**2) >>> spl = UnivariateSpline(x, y, s=0)
Die Ableitung ist die Umkehroperation der Stammfunktion, obwohl einige Gleitkommafehler akkumulieren.
>>> spl(1.7), spl.antiderivative().derivative()(1.7) (array(2.1565429877197317), array(2.1565429877201865))
Die Stammfunktion kann zur Auswertung bestimmter Integrale verwendet werden.
>>> ispl = spl.antiderivative() >>> ispl(np.pi/2) - ispl(0) 2.2572053588768486
Dies ist tatsächlich eine Annäherung an das vollständige elliptische Integral \(K(m) = \int_0^{\pi/2} [1 - m\sin^2 x]^{-1/2} dx\)
>>> from scipy.special import ellipk >>> ellipk(0.8) 2.2572053268208538