Kubischer Spline Berechnen Beispiel Essay

For a broader coverage related to this topic, see Spline (mathematics).

In the mathematical field of numerical analysis, Spline interpolation is a form of interpolation where the interpolant is a special type of piecewisepolynomial called a spline. Spline interpolation is often preferred over polynomial interpolation because the interpolation error can be made small even when using low degree polynomials for the spline[citation needed]. Spline interpolation avoids the problem of Runge's phenomenon, in which oscillation can occur between points when interpolating using high degree polynomials.

Introduction[edit]

Originally, spline was a term for elasticrulers that were bent to pass through a number of predefined points ("knots"). These were used to make technical drawings for shipbuilding and construction by hand, as illustrated by Figure 1.

The approach to mathematically model the shape of such elastic rulers fixed by n + 1 knots is to interpolate between all the pairs of knots and with polynomials .

The curvature of a curve is given by:

As the spline will take a shape that minimizes the bending (under the constraint of passing through all knots) both and will be continuous everywhere and at the knots. To achieve this one must have that

This can only be achieved if polynomials of degree 3 or higher are used. The classical approach is to use polynomials of degree 3 — the case of cubic splines.

Algorithm to find the interpolating cubic spline[edit]

A third order polynomial for which

can be written in the symmetrical form

 

 

 

 

(1)

where

 

 

 

 

(2)

 

 

 

 

(3)

 

 

 

 

(4)

As

one gets that:

 

 

 

 

(5)

 

 

 

 

(6)

Setting x = x1 and x = x2 respectively in equations (5) and (6) one gets from (2) that indeed first derivatives q′(x1) = k1 and q′(x2) = k2 and also second derivatives

 

 

 

 

(7)

 

 

 

 

(8)

If now (xi, yi), i = 0, 1, ..., n are n + 1 points and

 

 

 

 

(9)

where i = 1, 2, ..., n and are n third degree polynomials interpolating y in the interval xi−1xxi for i = 1, ..., n such that q′i (xi) = q′i+1(xi) for i = 1, ..., n−1 then the n polynomials together define a differentiable function in the interval x0xxn and

 

 

 

 

(10)

 

 

 

 

(11)

for i = 1, ..., n where

 

 

 

 

(12)

 

 

 

 

(13)

 

 

 

 

(14)

If the sequence k0, k1, ..., kn is such that, in addition, q′′i(xi) = q′′i+1(xi) holds for i = 1, ..., n-1, then the resulting function will even have a continuous second derivative.

From (7), (8), (10) and (11) follows that this is the case if and only if

 

 

 

 

(15)

for i = 1, ..., n-1. The relations (15) are n − 1 linear equations for the n + 1 values k0, k1, ..., kn.

For the elastic rulers being the model for the spline interpolation one has that to the left of the left-most "knot" and to the right of the right-most "knot" the ruler can move freely and will therefore take the form of a straight line with q′′ = 0. As q′′ should be a continuous function of x one gets that for "Natural Splines" one in addition to the n − 1 linear equations (15) should have that

i.e. that

 

 

 

 

(16)

Figure 1: Interpolation with cubic splines between eight points. Hand-drawn technical drawings were made for shipbuilding etc. using flexible rulers that were bent to follow pre-defined points

Bei der Spline-Interpolation versucht man, gegebene Stützstellen, auch Knoten genannt, mit Hilfe stückweise stetiger Polynome, genauer Splines, zu interpolieren. Während das Ergebnis einer Polynominterpolation durch unvorteilhaft festgelegte Stützstellen oft bis zur Unkenntlichkeit oszilliert, liefert die Splineinterpolation brauchbare Kurvenverläufe und Approximationseigenschaften (Rungephänomen). Die Spline-Interpolation lässt sich mit geringem, linearem Aufwand berechnen, liefert aber im Vergleich zur Polynominterpolation eine geringere Konvergenzordnung.

Vorlage für die Splineinterpolation (dritten Grades) ist das traditionelle, biegsame Lineal der Schiffbauer, die Straklatte (englisch Spline). Diese wird an beliebig vielen, vom Konstrukteur vorgegebenen Punkten fixiert und verbindet die Punkte dann durch eine glatte und harmonische Biegelinie. Die Straklatte erzeugt so die Linie durch alle Punkte mit minimaler Biegeenergie und kleinsten Krümmungen. Während bei der Straklatte die Wendestellen (Orte maximaler Linearität und minimaler Biegeenergie) in der Regel zwischen den Stützstellen liegen und die Stützstellen selbst Orte maximaler Krümmung sind (Orte maximaler Kraft durch Fixierung), liegen die Wendestellen bei der Polynomeninterpolation nahe an den Stützstellen, bei der polynomialen Bestapproximation sogar in den Stützstellen.

Die Begriffe Splineinterpolation bzw. Splinefunktion ohne weitere Zusätze bezeichnen immer die Splineinterpolation bzw. Splinefunktion dritten Grades. Beide Begriffe werden zumeist synonym verwendet. Der Begriff Spline wird jedoch zunehmend als Abkürzung für B-Spline, seltener auch für andere splineartige Linien wie die Bézierkurven, benutzt.

Einfacher Ansatz (Streckenzug)[Bearbeiten | Quelltext bearbeiten]

Die einfachste Methode ist die Verwendung von Geraden zwischen jeweils zwei benachbarten Punkten, die Berechnung eines einfachen Splines als Streckenzug erfolgt auf dieselbe Weise, mit der man auch den Graphen zwischen zwei Punkten ermittelt:

Diese „einfachen“ Spline-Polynome können – wie oben angesprochen – sehr ungenau sein. Wesentlich bessere Ergebnisse liefern kubische Spline-Polynome.

Der kubische C2-Spline[Bearbeiten | Quelltext bearbeiten]

Ein kubischer Spline ist ein Spline, dessen Einschränkungen auf die Teilintervalle (also zwischen zwei Stützstellen) kubische Funktionen sind. Kubische Splines sind zweimal stetig differenzierbar () und erfüllen eine Minimalitätsbedingung für die zweite Ableitung, was sie gegenüber anderen Splines besonders interessant macht.

Zur Interpolation der Funktion fordert man nun . Die kubischen Splines eignen sich auf Grund ihrer Glattheit gut zur Approximation von „glatten“ Funktionen. Auf Grund ihrer Konstruktion neigen sie im Gegensatz zu Interpolationspolynomen weniger zu Überschwingern.

Auf jedem Teilintervall wählt man nun das Polynom in Newtondarstellung, um die Spline-Interpolation anzusetzen.

für und

Um das Gleichungssystem eindeutig zu lösen, werden Bedingungen benötigt. Für jedes der Intervalle sind zwei Interpolationsbedingungen zu erfüllen:

Dadurch entstehen Bedingungen. Weitere Bedingungen erhält man dadurch, dass der Spline an allen inneren Stützstellen zweimal stetig differenzierbar sein muss:

Für die restlichen 2 Bedingungen (Randbedingungen) gibt es verschiedene Möglichkeiten, so z. B.:

Die erste Ableitung (Steigung) sieht so aus:

Die zweite Ableitung (Krümmung) sieht so aus:

Obiger naheliegender Ansatz erfordert einige Rechenarbeit.

Baryzentrische Koordinaten[Bearbeiten | Quelltext bearbeiten]

Zur Vereinfachung werden innerhalb des Intervalls für die Hilfsgrößen und die baryzentrischen Variablen und eingeführt. Jedes Teilintervall wird hierbei auf das Intervall linear transformiert. Für das resultierende kubische Polynom wird die Notation verwendet. Die Ableitungen nach ergeben sich als und . Es gilt nach der Kettenregel: . Die Stützstelle ist linker Rand im Intervall und rechter Rand in . Das ergibt auf den neuen Ansatz

mit ,

durch den die Stetigkeit bereits hergestellt ist.

Die ersten Ableitungen sind

.

Nun sei zur Abkürzung für mit den noch unbekannten Parametern . Die Stetigkeit der ersten Ableitung wird über die Anschlussbedingungen hergestellt: für . Somit gilt: ; die unbekannten Parameter und können nun durch ausgedrückt werden:

Über die zweiten Ableitungen werden die Anschlussbedingungen für hergestellt:

Beispiel eines Splines mit 8 Knoten

0 comments

Leave a Reply

Your email address will not be published. Required fields are marked *