I/T5 - WS 04/05 CR – Übung 8 Termin: 10.-14.01.05
Kurvenlänge und Flächenberechnung
Ihre Aufgabe ist es, den Flächeninhalt A und den Umfang U des Schaukelpferdes aus der Übung 7 (ohne die Kufen) mit verschiedenen Methoden zu berechnen. Vergleichen Sie die Ergebnisse!
1. Tabellenintegration: Die Randkurve wurde bereits erfasst und gespeichert als Folge von Kno- tenpunkten Pm =
(
xm,ym)
,m=1,...,M . Hieraus kann man näherungsweise den Umfang U0 als Summe von Abständen P Pm m+1 aufeinander folgender Punkte ermitteln. Ein Näherungswert A0 für den Flächeninhalt ergibt sich bei zyklischer Indizierung über die Vieleckflächenformel( )
1
0 1 1
1
1 2
M
m m m
m
A x x y
−
+ −
=
=
∑
− .2. Funktionsintegration: Die Randkurve wird durch 2 parametrische Spline-Funktionen x t y t( ), ( ) beschrieben mit 1≤ ≤t M (Knotenzahl). Damit lauten die Formel für die Kurvenlänge
2 2
1
( ) ( )
M
U =
∫
x t& +y t dt& und den Flächeninhalt1
1 ( ( ) ( ) ( ) ( )) 2
M
A=
∫
x t y t& −y t x t dt& (x y& &, sind Ablei- tungen nach t). Wenn man die beiden Integranden als Funktionen von t formuliert, kann man U und A mit Integrationsroutinen berechnen (z.B. quadl oder romberg).3. Polynome und Ableitungen: Die Spline-Funktionen ( ), ( )x t y t sind stückweise Polynome der Form p tm( )=d sm 3+c sm 2+b sm +am, wobei s= −t tm. Die Ableitung p t&m( ) kann man daraus ex- akt berechnen: p t&m( )=3d sm 2+2c s bm + m.
In Matlab werden die Spline-Koeffizienten in einer Struktur p gespeichert, deren einzelne Kom- ponenten b, C, l, k die Funktion unmkpp liefert: [b,C,l,k]=unmkpp(p);
b (= Base Points): Zeilenvektor, der die Rasterpunkte tm enthält.
l (= M-1): Anzahl der Splines p tm( ).
k (= 4): Spaltenzahl, Grad der Spline-Funktionen +1
C l k× −Matrix, deren Zeilen die Polynomkoeffizienten enthalten: dm,c b am, m, m ist Zeile m.
Umgekehrt kann man mit mkpp eine Struktur dp erzeugen, die gerade die Ableitungen unserer Splines enthält. Dazu muss man aus C die passende Matrix D mit den oben beschriebenen Koeffi- zienten der Polynome p t&m( ) zusammensetzen und dp=mkpp(b,D); aufrufen.
4. Integranden von U und A: Wir bezeichnen die Spline-Struktur von ( )x t mit p, von ( )y t mit q.
Die Strukturen ihrer Ableitungen seien dp und dq. Mit Hilfe dieser Strukturen lassen sich die bei- den Integranden α( )t = x t&( )2+y t&( )2 und ( )β t =x t y t( ) ( )& −y t x t( ) ( )& über ppval als Matlab- Funktionen in function-m-Files berechnen.
Ihr Matlab-Programm soll folgendes leisten:
• Einlesen der Bildpunkte aus der Datei xy.pt mit load. Speichern Sie die xy-Koordinaten in 2 Spaltenvektoren u,v. Entfernen Sie den 1. Punkt (das Auge) aus u,v. Fügen Sie den letzten Bildpunkt an erster Stelle in u,v ein, damit die Kurve geschlossen ist.
• Berechnen Sie den ungefähren Umfang U0 des Pferdes mit norm.
• Berechnen Sie den ungefähren Flächeninhalt A0 des Pferdes mit trapz.
• Berechnen Sie (parametrischen) Spline-Strukturen p für ( )x t und q für ( )y t mit spline.
• Berechnen Sie die Spline-Strukturen dp und dq der Ableitungen ( ), ( )x t y t& & . (Hierbei ist auch die Matlab-Funktion repmat hilfreich).
• Formulieren Sie function-m-Files für die Integranden α( )t = x t&( )2+y t&( )2 und ( )t x t y t( ) ( ) y t x t( ) ( )
β = & − & .
• Berechnen Sie die Integrale 2 2
1
( ) ( )
M
U =
∫
x t& +y t dt& und1
1 ( ( ) ( ) ( ) ( )) 2
M
A=
∫
x t y t& −y t x t dt& mit einer Genauigkeit von mindestens 8 Dezimalstellen.• Vergleichen Sie zur Kontrolle A mit A0 und U mit U0.