Spline-Interpolation
Bei der
Spline-Interpolation versucht man, eine
Funktion mit Hilfe von
Splines zu interpolieren. Die einfachste Methode dazu ist die Verwendung von
Geraden zwischen jeweils zwei benachbarten
Punkten. Je mehr
Punkte man nimmt und die Entfernungen zwischen diesen verkürzt, desto genauer approximiert man die gegebene
Funktion. Die Extrapolation kann allerdings teilweise sehr schlecht sein. Bei der
Interpolation von z. B. Messwerten muss berücksichtigt werden, dass wirklich
alle Punkte einbezogen werden, d. h. so genannte Ausreißer beeinflussen das Ergebnis.
Einfacher Ansatz (Streckenzug)
Die Berechnung
eines einfachen
Splines als Streckenzug erfolgt auf die bekannte Weise, mit der man auch den Graphen zwischen zwei
Punkten ermittelt:
- s(x)=m⋅x+b, d.h.
s(x)=x2−x1y2−y1⋅x+y1−x2−x1y2−y1⋅x1 (mit m=x2−x1y2−y1 und b=y1−m⋅x1)
Es ist klar, dass diese "einfachen" Spline-Polynome - wie oben angesprochen - sehr ungenau sein können. Wesentlich bessere Ergebnisse liefern kubische Spline-Polynome.
Der kubische Spline
Es soll eine
Funktion f interpoliert werden.
Hierzu unterteilt man ein
Intervall [a,b] durch
a=x0<x1<…<xn−1<xn=b und definiert die Stützstellen
(xi,fi=f(xi)),
i=0,…,n.
- Sj(x)=aj+bj⋅(x−xj)+cj⋅(x−xj)2+dj⋅(x−xj)3 für xj≤x≤xj+1 und j=0,…,n−1
Um das Gleichungssystem eindeutig zu lösen werden
4n Bedingungen benötigt. Für jedes der
n Intervalle sind zwei Interpolationsbedigungen zu erfüllen:
- Sj(xj)=fj j=0,1,…,n−1
- Sj(xj+1)=fj+1 j=0,1,…,n−1
Dadurch entstehen
2n Bedingungen. Weitere
2n−2 Bedingungen erhält man dadurch, dass der
Spline an allen
n−2 inneren Stützstellen zweimal
stetig differenzierbar sein muss:
- S´j(xj)=S´j+1(xj) j=1,…,n−1
- S´´j(xj)=S´´j+1(xj) j=1,…,n−1
Für die weiteren 2 Bedingungen (Randbedingungen) gibt es verschiedene Möglichkeiten, so z. B.:
- freier Rand oder natürlicher Spline: S0′′(x0)=0,Sn−1′′(xn)=0
- eingespannter Rand: S0′(x0)=f0′,Sn−1′(xn)=fn′ wobei f0′ und fn′ vorgegeben, normalerweise entweder durch die Ableitung der zu interpolierenden Funktion f oder durch eine Approximation derselben.
- periodische Randbedinung: S0′(x0)=Sn−1′(xn),S0′′(x0)=Sn−1′′(xn)
- not-a-knot: Die äußeren drei Punkte werden je durch ein Polynom interpoliert.
- Sj′(x)=bj+2⋅cj⋅(x−xj)+3⋅dj⋅(x−xj)2.
- Sj′′(x)=2⋅cj+6⋅dj⋅(x−xj).
Die ganzen Zahlen hat der liebe Gott geschaffen, alles andere ist Menschenwerk.
Leopold Kronecker
Anbieterkеnnzeichnung: Mathеpеdιa von Тhοmas Stеιnfеld
• Dοrfplatz 25 • 17237 Blankеnsее
• Tel.: 01734332309 (Vodafone/D2) •
Email: cο@maτhepedιa.dе