Wissenschaftliches Rechnen I Übungsblatt 13.

Werbung
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–
Herunterladen