Wissenschaftliches Rechnen I Übungsblatt 13. Abgabe am Dienstag, 24.01.2012 Aufgabe 1. (Verfeinerungsgleichung im 2d-Standard-Fall) Am Beispiel der Courant-Triangulierung auf (0, 1)2 soll diese Aufgabe deutlich machen, wie eine Verfeinerung von Zerlegungen erreicht werden kann und wie dann die zugehörigen nodalen Basisfunktionen zusammenhängen. Die gröbste Triangulierung sei durch T0 = {τ1 (0) , τ2 (0) } gegeben, wobei τ1 (0) das Dreieck mit den Ecken (0, 0), (1, 0) und (0, 1) sei. Zur Verfeinerung einer Zerlegung Tk−1 wird nun jedes (k−1) Dreieck τi durch Verbindung der Seitenmittelpunkte (die als neue Knoten in Nk hinzukommen) in vier kongruente Dreiecke zerlegt (vgl. Abbildung). (k) Jeder Knoten xj ∈ Nk \ Nk−1 liegt damit auf der Seite eines Dreiecks aus der gröberen Triangulierung zwischen (k−1) (k−1) zwei Knoten xi1 und xi2 ∈ Nk−1 . (k) Man nennt dann xj Sohnknoten zu den Vaterknoten (k−1) (k−1) x i1 und xi2 . (k−1) xi2 (k) xj (k−1) xi1 (k) Es sei wie vorher ϕi die nodale, stückweise lineare Basisfunktion („Hütchenfunktion“) (k) zum Punkt xi in Nk . Zeige, dass für k > 0 die Verfeinerungsgleichung (k−1) ϕi (k) (x) = ϕi (x) + X 1 (k) ϕ (x) 2 j j∈J(i) (k−1) gilt, wobei J(i) die Indizes aller Sohnknoten in Nk \ Nk−1 zu xi Hinweis: Betrachte die Funktion (k−1) ϕi auf den Trägern von –1– (k) ϕi bezeichne! (k) bzw. ϕj , j ∈ J(i)! Wissenschaftliches Rechnen I, Blatt 13 Abgabe: 24.01.2012 Aufgabe 2. (Historischer Hintergrund: Multiplikative Schwarzsche Methode) Die in der Vorlesung vorgestellte additive Schwarz-Methode liefert ein Verfahren zur Konstruktion spezieller Vorkonditionierer. Die Grundidee taucht bereits im Jahr 1869 bei H. A. Schwarz auf, der die (sog. multiplikative) Methode verwendete, um LaplaceProbleme auf (überlappend) zusammengesetzten Gebieten zu lösen. In dieser Aufgabe wird ein solches Problem betrachtet: Gesucht ist eine Funktion u : R2 → R mit −∆u = f Ω1 in Ω := Ω1 ∪ Ω2 Ω2 u = 0 auf ∂Ω. Eine iterative Lösung findet man mithilfe des folgenden Algorithmus: Gegeben sei u02 als Lösung von −∆u02 = f in Ω2 , u02 = 0 auf ∂Ω2 . For k = 1, 2, . . . { (i) löse: − ∆uk1 = f in Ω1 , (ii) löse: − ∆uk2 = f in Ω2 , ( uk−1 2 uk1 = 0 ( uk1 k u2 = 0 auf (∂Ω1 ) ∩ Ω2 , sonst; auf (∂Ω2 ) ∩ Ω1 , sonst; } Damit definiert man eine Funktion uk (x) := ( uk1 (x), x ∈ Ω\Ω2 , uk2 (x), x ∈ Ω2 , die unter bestimmten Voraussetzungen gegen die Lösung des Problems konvergiert. a) Es sei Pi die orthogonale Projektion von V auf Vi bezüglich des Energiefunktionals a(·, ·) und I die Identität. Zeige, dass für den Fehler ek := u − uk die folgende Rekursionsbeziehung gilt: ek = (I − P2 )(I − P1 )ek−1 . b) Im Ausdruck (I − P2 )(I − P1 ) = I − P1 − P2 + P1 P2 ist der Term P1 P2 dafür verantwortlich, dass die beiden Aufgaben für die unterschiedlichen Teilgebiete nicht simultan bearbeitet werden können. An dieser Stelle setzt die additive Methode an: Hierbei ersetzt man uk1 in (ii) durch uk−1 und uk 1 uk (x), 1 ũk (x) := uk2 (x), 1 k k (x) , u (x) + u 1 2 2 durch x ∈ Ω\Ω2 , x ∈ Ω\Ω1 , x ∈ Ω1 ∩ Ω2 . Wie sieht in diesem Fall die Fehlerrekursion für ẽk := u − ũk aus? –2– Wissenschaftliches Rechnen I, Blatt 13 Abgabe: 24.01.2012 Aufgabe 3. (Verschärfte Cauchy–Schwarz-Ungleichung) Die Schwarz-Methode kann auch variationell interpretiert werden. Dazu sei V = V1 ⊕ V2 ein Hilbert-Raum mit Skalarprodukt a(·, ·) und Norm k · k. In (V1 , V2 ) gilt eine verschärfte Cauchy–Schwarz-Ungleichung, wenn eine Konstante γ ∈ [0, 1) existiert, sodass |a(v1 , v2 )| ≤ γ kv1 k kv2 k für alle v1 ∈ V1 , v2 ∈ V2 . a) Zeige: Ist der Raum V endlich-dimensional, so ist in jedem Fall auch die verschärfte Cauchy–Schwarz-Ungleichung erfüllt. b) Es sei f ∈ V 0 . Für die Lösung von a(v, w) = f (w) für alle w ∈ V wird das folgende Iterationsverfahren betrachtet: Gegeben sei v 0 ∈ V beliebig. For k = 1, 2, . . . { bestimme v1 ∈ V1 so, dass a(v k−1 + v1 , w1 ) = f (w1 ) für alle w1 ∈ V1 ; setze v k−1/2 := v k−1 + v1 ; bestimme v2 ∈ V2 so, dass a(v k−1/2 + v2 , w2 ) = f (w2 ) für alle w2 ∈ V2 ; setze v k := v k−1/2 + v2 ; } Zur Analyse solcher linearer Verfahren untersucht man die Fehler ei := v − v i bzw. ei+1/2 := v − v i−1/2 . Sie erfüllen die Bestimmungsgleichungen von oben jeweils mit f = 0. Bezeichnet Pi die Projektion von V auf Vi , sodass a(Pi v, wi ) = a(v, wi ) für alle wi ∈ Vi ist, lässt sich das Verfahren für die Fehler wie folgt schreiben: ek−1/2 := ek−1 − P1 ek−1 , ek := ek−1/2 − P2 ek−1/2 . Zeige, dass mit der Konstante γ aus (a) die folgende Abschätzung gilt: k e ≤ γ 2 ek−1 , k ≥ 1. Hinweis: Nimm für die Lösung von (b) zunächst an, dass V1 und V2 eindimensional sind und mach dir anhand einer Skizze klar, welchen Winkel ek−1 und ek−1/2 bilden! Bemerkungen: Es gilt allgemein |a(v1 , v2 )| = kv1 k kv2 k · cos ](v1 , v2 ). Teil (a) lässt sich demnach so interpretieren, dass je zwei Vektoren v1 ∈ V1 , v2 ∈ V2 einen Winkel bilden, der durch γ gegeben ist. Das Verfahren in (b) konvergiert umso besser, je größer der Winkel zwischen den beiden Räumen ist. Knobelaufgabe. (Eine Aufgabe der I. Mathematik-Olympiade von 1962) Es seien a, b und c beliebig gewählte positive Zahlen kleiner als eins. Zeige, dass unter den Zahlen a(1 − b), b(1 − c) und c(1 − a) stets mindestens ein Wert vorkommt, der nicht größer als 1/4 ist! –3– Wissenschaftliches Rechnen I, Blatt 13 Abgabe: 24.01.2012 Abgabe der folgenden Programmieraufgabe ab 25.01.2012 in der Übung Programmieraufgabe. (Finite-Elemente-Methode in 2D — Teil III: Vorkonditionierung) Auf Blatt 10 wurde die Steifigkeitsmatrix A zum Poisson-Problem im CRS-Format aufgestellt und auf Blatt 11 das entstehende Gleichungssystem gelöst. Ziel dieser Aufgabe ist die Verbesserung der Konvergenzgeschwindigkeit mithilfe des Hierarchische-Basis-Vorkonditionierers für den Fall, dass das Gleichungssystem mit dem PCG-Verfahren (siehe z. B. Skript zur Vorlesung Numerische Mathematik ) gelöst wird. Dabei darf die (vollbesetzte) vorkonditionierte Matrix AC nie aufgestellt werden, um die Ordnung des Verfahrens nicht zu zerstören. Unter Verwendung der in Aufg. 1 gezeigten Verfeinerungsgleichung und einer Väter-Liste, die jedem Knoten, der durch eine Verfeinerung entstanden ist, seine beiden eindeutig festgelegten Väter zuordnet, ergibt sich der folgende Algorithmus zur Berechnung des Matrix-Vektor-Produkts v = Cr: y := r für alle Knoten in der Väter-Liste, feinste → gröbste Zerlegung { y(Vater1) := y(Vater1) + 1/2 · y(Sohn); y(Vater2) := y(Vater2) + 1/2 · y(Sohn); } v := y für alle Knoten in der Väter-Liste, gröbste → feinste Zerlegung { v(Sohn) := v(Sohn) + 1/2 · v(Vater1) + v(Vater2) ; } Die Datei T_h3vs.txt hat die bereits von Blatt 10 bekannte Gestalt, ergänzt durch eine Väter-Liste der folgenden Form: Zeile .. . P +D+K +4 P +D+K +5 .. . P +D+K +S+4 Inhalt .. . S l1 .. . lS Erklärung .. . .. . s1 .. . sS v1 .. . vS w1 .. . wS Anzahl der Knoten in der Väter-Liste (= P − 4) Punkt s1 aus N`1 \ N`1 −1 mit den Vätern v1 und w1 Punkt sS aus N`S \ N`S −1 mit den Vätern vS und wS Programmiere das PCG-Verfahren mit Hierarchische-Basis-Vorkonditionierer unter Verwendung des oben angegebenen Algorithmus! Löse damit das Problem von Blatt 11 für die durch T_h3vs.txt gegebene Zerlegung und vergleiche mit dem CG-Verfahren ohne Vorkonditionierung! Hinweis: Studenten, denen das Programm aus Blatt 10 nicht zur Verfügung steht, wird die zugehörige CRS-Matrix in der Datei T_h3CRS.txt zur Verfügung gestellt. –4–