Splines
Beispiel eines
Splines mit 8
Knoten
Ein
Spline n-ten Grades ist eine
Funktion, die stückweise aus
Polynomen mit maximalem Grad
n zusammengesetzt ist. Dabei werden an den Stellen, an denen zwei Polynomstücke zusammenstoßen (man spricht auch von
Knoten) bestimmte Bedingungen gestellt, etwa dass der
Spline (
n−1) mal
stetig differenzierbar ist.
Handelt es sich bei dem
Spline um eine stückweise
lineare Funktion, so nennt man den
Spline linear (es handelt sich dann um einen Polygonzug), analog gibt es
quadratische,
kubische usw.
Splines.
B-Splines
Für eine numerisch stabile
Spline-Interpolation haben sich die sogenannten B-Splines als Basisfunktionen bewährt.
Definition
Die B-Spline-Basisfunktionen
Ni,p,τ (i=1,…,n−p) der Ordnung
p mit Knotenvektor
τ=(τ1,…,τn) (n≥2p) werden durch die folgende Rekursionsformel von de Boor/Cox/Mansfield definiert:
Ni,1,τ(u)={1,0,u∈[τi,τi+1]sonst
und
Ni,p+1,τ(u)=τi+p−τiu−τiNi,p,τ(u)+τi+p+1−τi+1τi+p+1−uNi+1,p,τ(u).
Die Elemente des Knotenvektors heißen auch Knotenpunkte (im engl. breakpoints) und müssen die Bedingungen
τi≤τi+1 und
τi<τi+p erfüllen.
Eigenschaften
- Nicht-Negativität: Ni,p,τ(u)≥0
- Lokaler Träger: Ni,p,τ(u)=0 falls u∈/[τi,τi+p]
- Zerlegung der Eins: i=0∑n−pNi,p,τ(u)=1, u∈[τp,τn−p+1]
Kurven
Splines lassen sich auch gut benutzen, um Kurven darzustellen. Hier finden sie Einsatz im CAD. Eine Spline-Kurve, deren Darstellung auf B-Splines beruht, nennt man
B-Spline-Kurve. Bestimmt wird die Kurve durch so genannte
De-Boor-Punkte, mit denen sich das Aussehen der Kurve leicht steuern lässt: Die Kurve liegt immer in der
konvexen Hülle der De Boor
Punkte, wird also von ihnen eingeschlossen.
Eine ähnliche Darstellung haben Bézier-Kurven. Diese basieren nicht auf der oben genannten
Basis, sondern auf den
Bernsteinpolynomen. Genau wie bei
B-Spline-Kurven die De-Boor-Punkte gibt es hier die Bézier-Punkte, die das so genannte Kontrollpolygon bilden und mit denen man die Kurve leicht graphisch darstellen kann.
Mathematisch analog lassen sich auf beide Weisen nicht nur Kurven, sondern auch Flächen beschreiben.
Definition einer B-Spline-Kurve
Eine B-Spline-Kurve
C(u),
u∈[τp,τn−p+1] der Ordnung
p mit Knotenvektor
τ und Kontrollpunkten
Pi (i=1,…,n−p) (auch
De-Boor-Punkte genannt) wird definiert durch
C(u)=i=1∑n−pPiNi,p,τ(u).
Für Kurven in der
Ebene sind die Kontrollpunkte 2-dimensional, für Kurven im Raum 3-dimensional.
Eigenschaften:
- Lokalität: Der Kontrollpunkt Pi beeinflusst die Kurve nur im Intervall [τi,τi+p]
- Endpunkt-Interpolation: Es ist P1=C(τp), falls der erste Knotenpunkt p-mal wiederholt wird und Pn−p=C(τn−p+1), falls der letzte Knotenpunkt p-mal wiederholt wird.
Definition einer B-Spline-Fläche
Eine B-Spline-Fläche der Ordnung
p und
q mit Knotenvektor
τ=(τ1,…,τn) (n≥2p) und
μ=(μ1,…,μm) (m≥2q) und Kontrollpunkten (bzw.
De Boor Punkten)
Pij wird definiert durch
C(u,v)=i=1∑n−pj=1∑m−qPijNi,p,τ(u)Nj,q,μ(v)
Die Fläche ist definiert über dem
Rechteck [τp,τn−p+1]×[μq,μm−q+1].
Eigenschaften:
- Lokalität: Der Kontrollpunkt Pij beeinflusst die Fläche nur im Rechteck [τi,τi+p]×[μj,μj+q]
- Endpunktinterpolation: Werden die ersten p Knotenpunkte in τ auf den gleichen Wert gesetzt, die letzten p Knotenpunkte in τ auf den gleichen Wert gesetzt, die ersten q Knotenpunkte in μ auf den gleichen Wert gesetzt und die letzten q Knotenpunkte in μ auf den gleichen Wert gesetzt, dann gilt die Endpunktinterpolation, d. h. P1,1=C(τp,μq),P1,m−q=C(τp,μm−q+1),Pn−p,1=C(τn−p+1,μq) und Pn−p,m−q=C(τn−p+1,μm−q+1)
Wir Mathematiker sind die wahren Dichter, nur müssen wir das, was unsere Phantasie schafft, noch beweisen.
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е