Akima-Interpolation
Unter Interpolation versteht man eine Vorschrift, nach der eine Funktion f(x) aus vorgegebenen Funktionswerten f(xi) rekonstruiert wird. Nun kann man im Allgemeinen aus endlichen vielen vorgegebenen Funktionswerten die Funktion selbst nicht eindeutig bestimmen. Aus diesem Grund berechnet man als Interpolierende eine Näherung f(x) dieser Funktion, was auf verschiedene Weise geschehen kann. Eine bekannte Möglichkeit, die Form einer Kurve interaktiv zu überwachen, ist Punkte an eine Stelle zu setzen, durch die die Kurve verlaufen muss, oder Punkte, die die Kurvenform in einem vorausbestimmten Verlauf überwachen. Diese Punkte werden als Stützpunkte oder Verlaufspunkte bezeichnet. Es besteht bei der Kurve eine Interpolation der Kontrollpunkte, wenn sie durch diese verläuft. Für ein glattes Anlegen der Kurve ist es notwendig, Polynome nur intervallweise zu definieren und den Verlauf nur von den benachbarten Stützstellen bestimmen zu lassen.
Zu den Interpolationsverfahren, die dies befolgen, zählt die Spline-Interpolation. Die Spline-Interpolation wird in vielen Bereichen der Messauswertung, Grafik und CAD eingesetzt, obwohl die Ergebnisse durch das Auftauchen von sogenannten Überschwinger nicht immer befriedigend ausfällt. Bei den B-Spline Kurven ändert sich die Kurvenform nur in der Umgebung eines abgeänderten Kontrollpunktes. Eine weitere Methode der Darstellung von Kurve ist die Bezier-Methode. Jedoch liegen nicht alle Stützpunkte auf der Kurve. Jeder Stützpunkt scheint auf einen ihm naheliegenden Teil der Kurve eine "Anziehung" auszuüben.
Akima Interpolation
Im Jahre 1970 wurde von Hiroshi Akima eine neue Methode entwickelt, die Polynome dritten Grades zwischen den Stützstellen definiert, jedoch auf die Stetigkeit der zweiten Ableitung in den Stützstellen verzichtet. Diese Bedingung erzeugt die Überschwinger bei starken Gradienwechseln. Die Akima interpolierte Kurve verläuft durch jeden Stützpunkt und beschreibt von Stützpunkt zu Stützpunkt einen sehr natürlichen Kurvenverlauf. Sollte auf die Stetigkeit der zweiten Ableitung nicht verzichtet werden können, so ist die Akima Interpolation schon durch ihre Definition überfordert. Soll die zweite Ableitung einer wie auch immer gearteten Interpolation in Berechnungen einfließen, müssen diese allerdings schon sehr fehlertolerant sein. In solchen Anwendungen führt auch der Mittelwert aus den zweiten Ableitungen der Polynome links und rechts der Stützstellen zu genügend genauen Ergebnissen. Akima ging bei seinem Verfahren auf die Grundüberlegung der Interpolation zurück: Was geschieht, wenn eine Kurve manuell gezeichnet wird? Offensichtlich wird beim Zeichnen nur ein lokales Teilintervall von Punkten berücksichtigt. Dieser Aspekt war es, den er in eine mathematische Form brachte.
Definiert man im i-ten Intervall ein Polynom der Form
- Pi(Xi) = Ai + Bi * (X-Xi) + C i* (X-Xi) + Di * (X-Xi)3
- mit der Bedingung, dass diese Funktion durch die i-te und i+1-te Stützstelle verläuft, also dass gilt:
- Pi(Xi) = Yi
- Pi(Xi+1) = Yi+1
- und dass der Gradient der Funktion in den Stützstellen eine noch zu bestimmende Steigung aufweist,
- P´i(Xi) = ti
- P´i(Xi+1) = ti+1
- so können die Polynomkoeffizienten berechnet werden:
- Ai = Yi
- Bi = ti
- Ci = (((Yi+1-Yi) / (Xi+1-Xi))- 2ti-ti+1) / (Xi+1-Xi)
- Di = ((ti+ti+1) - 2((Yi+1-Yi)) / (Xi+1-Xi))) / (Xi+1-Xi)
- Diese Art der Koeffizientenbestimmung ist als Hermite-Interpolation bekannt.
H.Akima bestimmt die Steigung ti am i-ten Punkt mit Hilfe von je zwei rechts und links benachbarten Punkten.
Das Kernstück der Akima-Interpolation ist die Steigungsformel. Sie liefert aus den Geradensteigungen mi die Steigung ti der Interpolation an der Stelle Xi.
- mi=
- ti=
Zum Verständnis der Wirkungsweise dieses Ausdrucks, kann man die vier folgenden Fälle betrachten.
- ti = mi-1 ,wenn mi-2 = mi-1 und mi = mi+1
- ti = mi ,wenn mi-2 = mi-1 und mi = mi+1
- ti = mi-1 ,wenn mi-1 = mi
- ti = mi ,wenn mi-2 = mi-1 und mi = mi+1
Da n Steigungen berechnet werden müssen, sind 2 extrapolierte Punkte links und rechts vom Wertebereich notwendig. Diese werden durch je ein Polynom zweiten Grades bestimmt, das mit Hilfe der letzten drei Stützstellen ermittelt wird. Dazu gelten die Vorgaben:
- X3 - X1 = X2 - X1 = X1 - X2
- beziehungsweise
- Xn - Xn-2 = Xn+1 - Xn-1 = Xn+2 - Xn
- Damit sind die vier Koeffizienten für alle n-1 Polynome bestimmt.