scipy.interpolate.

splder#

scipy.interpolate.splder(tck, n=1)[Quelle]#

Berechnet die Spline-Darstellung der Ableitung eines gegebenen Splines

Veraltet

Diese Funktion gilt als veraltet und wird keine Updates mehr erhalten. Obwohl wir derzeit keine Pläne haben, sie zu entfernen, empfehlen wir, dass neuer Code modernere Alternativen verwendet. Insbesondere empfehlen wir, ein BSpline-Objekt zu erstellen und dessen derivative-Methode zu verwenden.

Parameter:
tckBSpline-Instanz oder Tupel

BSpline-Instanz oder ein Tupel (t,c,k), das den Vektor der Knoten, die B-Spline-Koeffizienten und den Grad des Splines enthält, dessen Ableitung berechnet werden soll

nint, optional

Ordnung der zu evaluierenden Ableitung. Standard: 1

Rückgabe:
BSpline-Instanz oder Tupel

Spline der Ordnung k2=k-n, der die Ableitung des Eingabesplines darstellt. Ein Tupel wird zurückgegeben, wenn das Eingabeargument tck ein Tupel ist, andernfalls wird ein BSpline-Objekt konstruiert und zurückgegeben.

Hinweise

Hinzugefügt in Version 0.13.0.

Beispiele

Dies kann zur Bestimmung von Maxima einer Kurve verwendet werden.

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

Nun differenzieren Sie den Spline und finden die Nullstellen der Ableitung. (Hinweis: sproot funktioniert nur für Splines der Ordnung 3, daher passen wir einen Spline der Ordnung 4 an)

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

Dies stimmt gut mit den Nullstellen \(\pi/2 + n\pi\) von \(\cos(x) = \sin'(x)\) überein.

Ein Vergleich zwischen splev, splder und spalde zur Berechnung der Ableitungen eines B-Splines finden Sie im Beispielabschnitt von spalde.