[Inhalt] [Zurück] [Weiter] [Thema] [Index]

KubischerSpline()


Syntax:

KubischerSpline (QL qf, Real ftoleranz, Real gewicht) : QL
qf: Quantenfolge mit Punktquanten
ftoleranz: zum Linearisieren
gewicht: Maß zum Abwägen zwischen interpolierend oder approximierend

Beispiel:

kubisch := KubischerSpline(qf, 0.05, 10)

Beschreibung:

Aus den Datenpunkten in qf wird ein kubischer approximierender Spline berechnet. Dieser Spline wird immer an vorgegebene Randsteigungen angepasst. Der Spline wird zwischen den zweiten und vorletzten Punkt in qf gelegt. Aus dem ersten und letzten wird die linke bzw. rechte Randsteigung (Randableitung) berechnet. Ist die Steigung des Rands nicht bekannt, so fügt man links und/oder rechts einen Lücke-PunktQuant an. Die Funktion berechnet dann die Randsteigung aus dem 2. und 3. bzw. vorletzten und vorvorletzten Punkt.

Mit gewicht kann man entscheiden, ob der Algorithmus eher interpolierend arbeitet (gewicht --> unendlich) oder die Punkte optimal mittelt (gewicht --> 0). Das Gewicht darf jedoch nicht oder < 0 sein! Man gibt mit dem Gewicht also gleichsam an, wie weit man bereit ist, die Extremwerte ausschlagen zu lassen zu Gunsten des genauen Treffens der vorgegebenen Punkte. In der Praxis wird es ratsam sein, den Benutzer durch grafisch-interaktives Manipulieren des Gewichtes, dieses bestimmen zu lassen.

Siehe dazu [Numerik].

Die ftoleranz wird benötigt, um die kubischen Verläufe des Splines zu linearisieren.

Siehe auch AkimaSpline() ( interpolierender Spline).



toposoft 28.03.2024