3 Die Lösung der diskreten Poisson-Gleichung

Ähnliche Dokumente
Der CG-Algorithmus (Zusammenfassung)

III. Iterative Löser. III.1 Direkte Löser und ihre Nachteile. III.2 Klassische lineare Iterationsverfahren

Begleitmaterial zur Vorlesung Numerik linearer Gleichungssysteme

KAPITEL 1. Einleitung

Begleitmaterial zur Vorlesung Numerik linearer Gleichungssysteme

Iterative Lösung Linearer Gleichungssysteme

3. Lineare Gleichungssysteme

Symmetrische Gleichungssysteme Das Verfahren konjugierter Gradienten

2. Lineare Gleichungssysteme: direkte und iterative Lösungsverfahren

Lineare Iterationsverfahren: Definitionen

5.3.5 Abstiegs & Gradientenverfahren

Lineare Gleichungssysteme

III. Iterative Löser. III.1 Direkte Löser und ihre Nachteile. III.2 Klassische Iterationsverfahren. III.3 GMRES und CG-Verfahren

Numerische Lineare Algebra

7. Iterative Lösung. linearer Gleichungssysteme

Lineare Gleichungssysteme

A 1 x = b, A 1 R m m, m := (n 1) 2, nh = 1, T I I T I. A 1 = 1 h 2 I T. T R (n 1) (n 1) und I ist die (n 1) (n 1)-Identitätsmatrix.

Iterative Methoden zur Lösung von linearen Gleichungssystemen

38 Iterative Verfahren für lineare Gleichungssysteme

Numerisches Rechnen. (für Informatiker) M. Grepl P. Esser & G. Welper & L. Zhang. Institut für Geometrie und Praktische Mathematik RWTH Aachen

Iterative Verfahren, Splittingmethoden

4 Iterative Lösung Linearer Gleichungssysteme 4.1 Fixpunktiteration und Konvergenzsätze.

2. Geben Sie für das Jacobi-Verfahren eine scharfe a-priori Abschätzung für den Fehler. x (10) x p

Iterative Verfahren zur Lösung von Linearen Gleichungssystemen

Diplom VP Numerik 27. August 2007

8 Iterationsverfahren zur Lösung von Gleichungen

2 Lineare Gleichungssysteme

Musterlösung. Aufgaben zu Iterative Lösung Linearer Gleichungssysteme. Vordiplomskurs Numerische Methoden Sommer 2008

Das CG-Verfahren. Sven Wetterauer

8 Iterationsverfahren zur Lösung von Gleichungssystemen

y (k) (0) = y (k) y(z) = c 1 e αz + c 2 e βz. c 1 + c 2 = y 0 k=1 k=1,...,m y k f k (x)

Ausgleichsproblem. Definition (1.0.3)

VF-3: Es seien A R n n beliebig aber regulär, b R n und gesucht sei die Lösung x R n von A x = b.

Numerische Mathematik für Ingenieure (SoSe 2013)

3 Numerische Behandlung der Tschebyscheff-Approximation

Kapitel 2: Lineare Gleichungssysteme. 2.1 Motivation: Bildverarbeitung Sei B = (B(n, m)) ein N M stochastisches Feld mit ZVen

Diplom VP Numerik 28. August 2006

Numerik II. Roland Pulch

Institut für Numerische Simulation der Universität Bonn Prof. Dr. Mario Bebendorf

Musterlösungen zur Leistungsnachweisklausur vom Studiengang Informatik, Ingenieurinformatik, Lehramt

Iterative Löser: Einführung

Finite Elemente. Dr. S.-J. Kimmerle Institut für Mathematik und Rechneranwendung Fakultät für Luft- und Raumfahrttechnik Wintertrimester 2015

Kapitel 2: Lineare Gleichungssysteme. 2.1 Motivation: Bildverarbeitung Sei B = (B(n, m)) ein N M stochastisches Feld mit ZVen

51 Numerische Berechnung von Eigenwerten und Eigenvektoren

Lanczos Methoden. Stefan Grell Im Rahmen eines Proseminar zur Numerischen Mathematik unter der Leitung von Prof. Wolf Hofmann. 15.

Eigenwerte. Vorlesung Computergestützte Mathematik zur Linearen Algebra. Lehrstuhl für Angewandte Mathematik Sommersemester 2009

Finite Elemente Methoden (aus der Sicht des Mathematikers)

KAPITEL 7. Berechnung von Eigenwerten. Av = λv

Lineares Gleichungssystem

Spezielle Matrixformen

Iterative Verfahren für lineare Gleichungssysteme

Nichtlineare Ausgleichsrechnung

Kapitel 6. Iterationsverfahren für lineare Gleichungssysteme

Institut für Geometrie und Praktische Mathematik

Lösungen zu Blatt 13 der Übungen zur Vorlesung Numerik, LMU München, Wintersemester 2016/2017

Modulprüfung Numerische Mathematik 1

Lineare Gleichungssysteme


Ausgewählte Lösungen zu den Übungsblättern 9-10

a b Q = b a 0 ) existiert ein Element p Q, so dass gilt: q 1 q 2 = 2 b 1 b 2 a 1 b 2 a 2 b 1 a 1 a 2 b 1 b 2 a 1 b 2 a 2 b 1 a b p = 1 det(q) C 2 2,

2 Lineare Gleichungssysteme

7. Übungs-/Wiederholungsblatt zu Einführung in die Numerik (SS 2012)

Lineare Ausgleichsprobleme. Jetzt: Lösung überbestimmter linearer GS, d.h. mehr Gleichungen als Unbekannte

D-MAVT NUMERISCHE MATHEMATIK FS 14 K. Nipp, A. Hiltebrand Lösung vom Test 2

1 Singulärwertzerlegung und Pseudoinverse

Optimierung. Optimierung. Vorlesung 2 Optimierung ohne Nebenbedingungen Gradientenverfahren Thomas Brox, Fabian Kuhn

Einführung in die numerische Mathematik

Nichtlineare Gleichungen

4.6 Berechnung von Eigenwerten

4. Großübung. Lösung linearer Gleichungssysteme

KLAUSUR zur Numerik I mit Lösungen. Aufgabe 1: (10 Punkte) [ wahr falsch ] 1. Die maximale Ordnung einer s-stufigen Quadraturformel ist s 2.

Wiederholung von Linearer Algebra und Differentialrechnung im R n

Begleitmaterial zur Vorlesung Numerik I

Lösbarkeit linearer Gleichungssysteme

2. Dezember Lineare Algebra II. Christian Ebert & Fritz Hamm. Skalarprodukt, Norm, Metrik. Matrizen. Lineare Abbildungen

Erweiterungen der LR-Zerlegung

NICHTRESTRINGIERTE OPTIMIERUNG

3 Matrizenrechnung. 3. November

Inexakte Newton Verfahren

Nichtlineare Gleichungssysteme

Lineare Algebra. 10. Übungsstunde. Steven Battilana.

Lineare Algebra und Geometrie II, Übungen

Numerisches Rechnen. (für Informatiker) M. Grepl J. Berger & J.T. Frings. Institut für Geometrie und Praktische Mathematik RWTH Aachen

Übungsblatt

Numerische Lineare Algebra

Glättung durch iterative Verfahren

Nichtlineare Gleichungssysteme

Diplom VP Informatik / Numerik 2. September 2002

AUFGABENSAMMLUNG ZU VEKTORRECHNUNG FÜR USW

9 Lineare Gleichungssysteme

Institut für Geometrie und Praktische Mathematik

7. Iterative Lösung. linearer Gleichungssysteme

Näherungsverfahren zur Bestimmung der Nullstelle α sind iterativ, d.h. sie liefern eine Folge {x (k) } k=0 mit α = lim x (k). (3.0.

Finite Elemente I Konvergenzaussagen

Gruppe II Lineare Algebra

Begleitmaterial zur Vorlesung Numerik II

6 Lineare Gleichungssysteme

Lösung zu Serie [Aufgabe] Faktorisieren Sie die folgenden Polynome so weit wie möglich:

5 Interpolation und Approximation

Transkript:

Finite Elemente I 90 3 Die Lösung der diskreten Poisson-Gleichung Die Galerkin-Matrix der FE-Diskretisierung der Poisson-RWA (2.1) ist symmetrisch und positiv-definit (gilt nicht notwendig für andere Dgln.) Allen FE-Diskretisierungen gemeinsam: die Galerkin-Matrix ist dünn besetzt (sparse). Wir betrachten die Matrix aus Beispiel 2 (L-Gebiet). bilinear biquadratisch N h # Einträge 0 Anteil h # Einträge 0 Anteil 65 0.25 251 5.94% 0.5 313 7.4% 225 0.125 1339 2.64% 0.25 2073 4.1% 883 0.0625 6107 0.78% 0.125 10141 1.5% 3201 0.0312 26011 0.25% 0.0625 44767 0.44% 12545 0.0156 107291 0.068% 0.0312 187742 0.12% 3 Die Lösung der diskreten Poisson-Gleichung TU Bergakademie Freiberg, SoS 2007

Finite Elemente I 91 0 0 10 10 20 20 30 30 40 40 50 50 60 60 0 10 20 30 40 50 60 nz = 251 h = 0.25, bilineare Elemente 0 10 20 30 40 50 60 nz = 313 h = 0.5, biquadratische Elemente 3 Die Lösung der diskreten Poisson-Gleichung TU Bergakademie Freiberg, SoS 2007

Finite Elemente I 92 1 Q1 finite element subdivision 1 Q2 finite element subdivision 0.8 0.8 0.6 0.6 0.4 0.4 0.2 0.2 0 0 0.2 0.2 0.4 0.4 0.6 0.6 0.8 0.8 1 1 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 h = 0.25, bilineare Elemente 1 1 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 h = 0.5, biquadratische Elemente 3 Die Lösung der diskreten Poisson-Gleichung TU Bergakademie Freiberg, SoS 2007

Finite Elemente I 93 Direkte oder iterative Verfahren? In der FE-Praxis wurde lange Zeit mit direkten Verfahren, also Varianten der Gauß-Elimination, gearbeitet. Stark verbreitet: frontal solvers. Hier wird die Faktorisierung der Matrix so früh wie möglich während der Assemblierung vorgenommen. Weiterentwicklungen auch heute noch relevant, auch als eigenständige Eliminationsverfahren, z.b. UMFPACK. Faustregel: in 2D reichen ausgereifte direkte, auf dünn-besetzte Matrizen spezialisierte Löser aus. Für 3D-Diskretisierungen muss auf Iterationsverahren zurückgegriffen werden. Vorteil direkter Verfahren: typischerweise als black box einsetzbar. Bei Iterationsverfahren ist deutlich mehr Expertise des Anwenders erforderlich. 3 Die Lösung der diskreten Poisson-Gleichung TU Bergakademie Freiberg, SoS 2007

Finite Elemente I 94 3.1 Erste Iterationsverfahren Zunächst sei allgemein gegeben Ax = b, A C n n invertierbar, b C n. (3.1) Grundidee: Startnäherung x 0 A 1 b, Erzeuge rekursiv Folge {x m } m N mit lim m x m = A 1 b. 3.1 Erste Iterationsverfahren TU Bergakademie Freiberg, SoS 2007

Finite Elemente I 95 Die ersten Iterationsverfahren (Handrechnung!) beruhen auf Umstellung einzelner Gleichungen, Auflösen nach den entsprechenden Unbekannten und Wiedereinsetzen (Relaxation). Carl-Friedrich Gauß ( 1832), Normalgleichungen aus Astronomie, Landesvermessung, 20 40 Unbekannte Ich empfehle Ihnen diesen Modus zur Nachahmung. Schwerlich werden Sie je wieder direkt eliminieren, wenigstens nicht, wenn Sie mehr als 2 Unbekannte haben. Das indirekte Verfahren lässt sich halb im Schlafe ausführen, oder man kann während desselben an andere Dinge denken. Brief von Gauß an Gerling, 1823 Carl Gustav Jacobi ( 1846) Ludwig Seidel ( 1862) Christian August Nagel (Sächsische Triangulation, 1867-1886) 159 Unbekannte 3.1 Erste Iterationsverfahren TU Bergakademie Freiberg, SoS 2007

Finite Elemente I 96 Formale Beschreibung von Relaxationsverfahren durch Zerlegungen (splittings): A = M N, M invertierbar, (3.2a) überführt (3.1) in Fixpunktform Mx = Nx +b, zugehörige Fixpunktiteration x m+1 = Tx m + c, T = M 1 N, c = M 1 b. (3.2b) Typische algorithmische Umsetzung: Algorithmus 1 : Relaxationsverfahren. 1 2 3 4 Gegeben : A invertierbar, b, Startnäherung x 0 for m = 0, 1, 2... bis Abbruchkriterium erfüllt do r m b Ax m Löse Mh = r m x m+1 x m + h 3.1 Erste Iterationsverfahren TU Bergakademie Freiberg, SoS 2007

Finite Elemente I 97 Klassische Zerlegungen M = I Richardson-Verfahren M = D := diag(a) Jacobi-Verfahren, Einzelschrittverfahren M = D L, L = tril(a) Gauß-Seidel-Verfahren, Einzelschrittverfahren, Liebmann-Verfahren M = D ωl, ω R SOR-Verfahren (successive-overrelaxation) M = ω 2 ω ( 1 ω D L)D 1 ( 1 ω D U ), U := triu(a), ω R SSOR-Verfahren (symmetric SOR) 3.1 Erste Iterationsverfahren TU Bergakademie Freiberg, SoS 2007

Finite Elemente I 98 Für den Fehler x x m, x := A 1 b, der m-ten Iterierten aus (3.2b) gilt x x m+1 = (I M 1 A)(x x m ) = T (x x m ) = = T m (x x 0 ). Lemma 3.1 Für eine beliebige Matrix T C n n gilt lim T m = O ρ(t ) < 1. m Satz 3.2 Das durch die Zerlegung (3.2a) definierte Relaxationsverfahren (3.2b) konvergiert genau dann für alle Startnäherungen x 0, wenn für die Iterationsmatrix T = M 1 N gilt ρ(t ) < 1. 3.1 Erste Iterationsverfahren TU Bergakademie Freiberg, SoS 2007

Finite Elemente I 99 3.2 Das CG-Verfahren Die Iterierten und Residuen des durch die Zerlegung (3.2a) definierten Relaxationsverfahrens (3.2b) sind gegeben durch also durch x m = x 0 + (I M 1 A) j M 1 r 0, m 1 j=0 M 1 r m = (I M 1 A) m M 1 r 0, m = 1, 2,... mit Polynomen x 0 + q m 1 (T )M 1 r 0 bzw. M 1 r m = p m (T )M 1 r 0 q m 1 (λ) = 1 + λ + + λ m 1 P m 1 bzw. p m (λ) = λ m P m

Finite Elemente I 100 Das CG-Verfahren (conjugate gradients), oder allgemein polynomiale Beschleunigungsverfahren, auch Krylov-Unterraumverfahren genannt, können als Iterationsverfahren interpretiert werden, bei denen die Iterierten bzw. Residuen die Form x m = x 0 + q m 1 (A)r 0, r m = p m (A)r 0, mit q m 1 P m 1, p m (λ) = 1 λq m 1 (λ) P m besitzen, wobei versucht wird, diese Polynome in jedem Schritt möglichst günstig zu wählen. Entscheidend: in jedem Schritt der Iteration ist nur eine Matrix-Vektor- Multiplikation mit der Koeffizientenmatrix A (bzw. der Iterationsmatrix T ) erforderlich.

Finite Elemente I 101 3.2.1 Herleitung des CG-Verfahrens Gegeben: A R n n spd, b R n (komplexer Fall analog). Gesucht: Lösung x des LGS Ax = b. (3.3) Sei (, ) ein gegebenes Innenprodukt auf R n (mit zugehöriger Norm ). Wichtige Beobachtung: da A spd a ist durch (u, v) A := (Au, v), u, v R n, ebenfalls ein Innenprodukt gegeben, das A-Innenprodukt oder auch Energie- Innenprodukt (mit zugehöriger Norm A ). Da mit A auch A 1 spd, gilt dasselbe auch für (, ) A 1. a eigentlich: A selbstadjungiert bez. (, )

Finite Elemente I 102 Ausgangspunkt dieser Herleitung des CG-Verfahrens (siehe Numerik- Vorlesung): x löst (3.3) x minimiert φ(x ) = 1 2 (x, x ) A (b, x ) über R n. Minimierung auf Unterräumen: Anstatt auf ganz R n minimieren wir φ auf einer Folge geschachtelter affiner Unterräume der Gestalt S m = x 0 + V m, V m = span{p 1, p 2,..., p m }. Hierbei bilden p 1,..., p m eine Folge linear unabhängiger Richtungsvektoren. Als Näherungen x m x erhalten wir die Lösungen der Unterraumaufgaben Bestimme x m S m mit φ(x m ) = min x S m φ(x ).

Finite Elemente I 103 Wegen φ(x ) = 1 2 ( b Ax 2 A 1 b 2 A 1 ) ist die Minimierung von φ äquivalent zur Minimierung von b Ax A 1, d.h. gesucht ist ein x S m welches den Ausdruck b Ax A 1 = b Ax 0 Ap A 1 = r 0 Ap A 1 minimiert mit einem p V m. Äquivalent: bestimme Bestapproximation bez. A 1 Unterraum AV m. an r 0 aus dem Äquivalent: A 1 -orthogonale Projektion von r 0 nach AV m Charakterisierung: r 0 Ap A 1 Ap j, j = 1, 2,..., m,

Finite Elemente I 104 oder oder (p, p j ) A = (r 0, p j ), j = 1, 2,..., m, r m := b Ax m V m. Besitzt p die Koordinatendarstellung p = y 1 p 1 + + y m p m, so erfüllt der Koordinatenvektor y = [y 1, y 2,..., y m ] R m das LGS [(p j, p i ) A ] m i,j=1y = [(r 0, p i )] m i=1. (3.4) Bemerkung: Wegen b Ax A 1 = A 1 b x A besitzt die Bestapproximation p V m auch die Eigenschaft, dass die zugehörige Approximation x m = x 0 + p den Fehler A 1 b x m bezüglich der A-Norm minimiert.

Finite Elemente I 105 Konjugierte Suchrichtungen Sind die Richtungsvektoren p j A-konjugiert (ein Synonym für A-orthogonal), so vereinfacht sich das LGS (3.4) für die Koordinaten: Die Koeffizientenmatrix wird diagonal, die Gleichungen sind entkoppelt, d.h. beim Übergang von V m nach V m+1 bleiben die Koeffizienten y 1,..., y m unverändert, es gilt y i = (r 0, p i ) (p i, p i ) A, i = 1, 2,..., m. Wir erhalten so folgenden Algorithmus:

Finite Elemente I 106 Algorithmus 2 : Verfahren der konjugierten Richtungen (CD-Verf.) 1 2 3 4 5 6 7 Gegeben : A spd, b Bestimme Startnäherung x 0, berechne r 0 b Ax 0, m 0 while nicht konvergiert do m m + 1 Bestimme nächsten, zu p 1,..., p m 1 konjugierten Richtungsvektor p m α m (r m 1,p m ) (p m,p m ) A x m x m 1 + α m p m r m r m 1 α m Ap m Bemerkung: Eine Folge A-orthogonaler Suchrichtungen kann man erzeugen aus einer beliebigen Folge (linear unabhängiger) Vektoren p 1, p 2,... mit Hilfe des Gram-Schmidtschen Orthogonalisierungsverfahrens: p m = p m m 1 j=1 ( p m, p j ) A (p j, p j ) A p j, m = 1, 2.... (3.5)

Finite Elemente I 107 Lemma 3.3 Im m-ten Schritt des CD-Verfahrens gilt: p m A {p 1, p 2,..., p m 1 }, (3.6) r m {p 1, p 2,..., p m }, (3.7) p m {r 0, r 1,..., r m 1 }. (3.8) Lemma 3.4 Das CD-Verfahren berechnet die Lösung x von (3.3) nach einer endlichen Anzahl L n Schritten. Bemerkungen: 1. Die endliche Abbrucheigenschaft geht i.a. verloren bei rundungsbehafteter Rechnung. 2. Obwohl der Fehler die interessierende Größe, ist oft nur das Residuum verfügbar. Der nächste Satz gibt prinzipielle Beziehungen zwischen diesen an.

Finite Elemente I 108 Satz 3.5 Sei x eine Approximation an A 1 b. Dann gelten für den Fehler e := A 1 b x und das zugehörige Residuum r = b Ax r r A e A r e e A, (3.9) r 2 r 2 A e r e 2 e 2. (3.10) A Lemma 3.6 Im m-ten Schritt des CD-Verfahrens wird der Abstand in der A-Norm zur Lösung reduziert gemäß e m 1 2 A e m 2 A = (r m 1, p m ) 2 (p m, p m ) A.

Finite Elemente I 109 Konjugierte Gradienten A-orthogonale Suchrichtungen machen einen Iterationsschritt zwar effizient, müssen aber per se nicht zu schneller Konvergenz führen. (Warum?) Idee: Wähle in (3.5) den neuen Vektor p m+1 als Richtung stärkster Abnahme von φ an der Stelle x m : p m+1 = φ x =xm = b Ax m = r m, m > 1, p 1 = p 1 = r 0. Danach A-Orthogonalisierung gegen {p 1,..., p m }. Vorteil: Liefert solange neue Suchrichtungen bis Lösung gefunden. (Warum?) Aus dieser Wahl folgt sofort span{r 0, r 1,..., r m 1 } = span{p 1, p 2,..., p m }, m = 1, 2,..., L. (3.11)

Finite Elemente I 110 Wir erhalten so den Algorithmus 3 : CG-Verfahren (vorläufige Version). 1 2 3 4 5 6 7 8 Gegeben : A spd, b Bestimme Startnäherung x 0, berechne r 0 b Ax 0 Setze m 0, p 1 r 0 while nicht konvergiert do m m + 1 α m (r m 1,p m ) (p m,p m ) A x m x m 1 + α m p m r m r m 1 α m Ap m p m+1 r m P m j=1 (ep m,p j ) A (p j,p j ) A p j

Finite Elemente I 111 Vereinfachungen: (1) Solange m < L ist α m 0 und aus r m = r m 1 α m Ap m folgt zunächst Ap m span{r m 1, r m } und allgemein span{ap 1, Ap 2,..., Ap m 1 } span{r 0, r 1,..., r m 1 } (3.11) = span{p 1, p 2,..., p m }. Da aber r m span{p 1,..., p m } nach (3.7) folgt hieraus r m A span{p 1,..., p m 1 } sodass Zeile 8 sich vereinfacht zu p m+1 r m (r m, p m ) A (p m, p m ) A p m =: r m + β m+1 p m. (3.12) (2) Aus p m = r m 1 + β m p m 1 folgt wegen r m 1 p m 1 für Zeile 5 α m = (r m 1, p m ) (p m, p m ) A = (r m 1, r m 1 ) (p m, p m ) A. (3.13)

Finite Elemente I 112 (3) Aus r m = r m 1 α m Ap m folgt (r m, r m ) = α m (r m, Ap m ) = α m (r m, p m ) A und daher wegen (3.13) für (3.12) β m+1 = (r m, p m ) A (p m, p m ) A = (r m, r m ) α m (p m, p m ) A = (r m, r m ) (r m 1, r m 1 ).

Finite Elemente I 113 Mit diesen Vereinfachungen erhalten wir die endgültige Formulierung des CG-Verfahrens: Algorithmus 4 : CG-Verfahren. 1 2 3 4 5 6 7 8 9 Gegeben : A spd, b Bestimme Startnäherung x 0, berechne r 0 b Ax 0 Setze m 0, p 1 r 0 while nicht konvergiert do m m + 1 α m (r m 1,r m 1 ) (p m,p m ) A x m x m 1 + α m p m r m r m 1 α m Ap m β m+1 (r m,r m ) (r m 1,r m 1 ) p m+1 r m + β m+1 p m

Finite Elemente I 114 3.2.2 Eigenschaften des CG-Verfahrens Aufwand: Operationen pro Schritt: 1 Matrix-Vektor Produkt, 2 Innenprodukte, 3 Vektoraufdatierungen. Speicher: 4 Vektoren. Lemma 3.7 Für die Suchrichtungen des CG-Verfahrens gilt m 1 p m = r m 1 2 j=0 r j, m = 1, 2,..., L. (3.14) r j 2

Finite Elemente I 115 Satz 3.8 Beim CG-Verfahren gelten die Beziehungen (r m, p j ) = 0, 1 j m, 0 m L 1, (3.15) (r m, r j ) = 0, m j, 0 m, j L 1, (3.16) (r m, p j ) = r j 1 2, m + 1 j L, 0 m L 1, (3.17) (p m, p j ) A = 0, m j, 1 m, j L, (3.18) (p m, r m 1 ) A = p m 2 A, 1 m L, (3.19) (p m, r j ) A = 0, m + 1 j L 1, m = 1, 2..., L, (3.20) Lemma 3.9 Für die Residuen und Richtungsvektoren des CG-Verfahrens gelten (3.21) (p m, p j ) = r j 1 2 p m 2 r m 1 2, j m, (3.22) m 1 X p m 2 = r m 1 2 + β m p m 1 2 = r m 1 4 j=0 1 r j 2. (3.23)

Finite Elemente I 116 Lemma 3.10 Im m-ten Schritt des CG-Verfahrens gilt e m 1 2 A e m 2 A = α m r m 1 2 = p m 2 A p m 2 x m x m 1 2. (3.24) Für j < m gilt e j 2 A e m 2 A = α j+1 r j 2 + + α m r m 1 2. (3.25) Die m-te Iterierte besitzt die Darstellung x m = x 0 + m α j p j = x 0 + j=1 m j=1 Satz 3.11 Im m-ten Schritt des CG-Verfahrens gilt e m 1 2 e m 2 = p m 2 p m 2 A e j 2 A e m 2 A r j 1 2 r j 1. (3.26) [ em 2 A + e m 1 2 ] A. (3.27) Insbesondere ist der CG-Fehler auch bezüglich der Norm monoton fallend.

Finite Elemente I 117 CG als Krylov-Unterraumverfahren Für A R n n und v R n heißt der Unterraum K m (A, v) := span{v, Av,..., A m 1 v} R n der m-te Krylov-Unterraum von A und v. Es ist Proposition 3.12 K m (A, v) = {p(a)v : p P m 1 }. 1. Die m-te CG-Iterierte liegt im affinen Unterraum x 0 + K m (A, r 0 ). 2. Für den Abbruchindex L des CG-Verfahrens gilt L = min { m : K m (A, r 0 ) = K m+1 (A, r 0 ) } = min { deg q : q monisch und q(a)r 0 = 0 }.

Finite Elemente I 118 3.2.3 Konvergenz des CG-Verfahrens Die Rolle der Konditionszahl Bei einer n n-matrix A liefert das CG -Verfahren die Lösung von Ax = b nach L n Schritten (in exakter Arithmetik). In diesem Sinne konvergiert das CG-Verfahren immer gegen x = A 1 b. Gesucht sind hier obere Schranken für den Fehler x x m (m < L). Von entscheidender Bedeutung ist die Optimalitätseigenschaft x x m A = min p(a)(x x 0 ) A. p P m, p(0)=1 Sei Ω (0, ) eine kompakte Menge, welche die Eigenwerte von A enthält. Für jedes p m P m mit p m (0) = 1 gilt dann x x m A x x 0 A p m,ω := max λ Ω p m(λ).

Finite Elemente I 119 Alle echten Fehlerschranken für das CG-Verfahren basieren auf obiger (trivialer) Beobachtung: ausgehend von einer kompakten Obermenge Ω Λ(A) (typischerweise Ω = [λ min (A), λ max (A)]) versuchen wir, Polynome p m zu konstruieren mit p m (0) = 1, die auf Ω ein möglichst kleines Maximum haben. Dies führt auf natürliche Weise zu einer Aufgabe der polynomialen Bestapproximation: Bestimme p m P m, p m (0) = 1, sodass p m,ω = min p P m, p(0)=1 p,ω. Für Ω = Λ(A) ist die Abschätzung x x m A x x 0 A min p P m, p(0)=1 max p(λ) λ Λ(A) in folgendem Sinne scharf: Für jedes m existiert ein Startvektor x 0 = x 0 (m), sodass im m-ten Schritt Gleichheit gilt.

Finite Elemente I 120 Die Aufgabe, p m P m, p m (0) = 1, so zu bestimmen, dass p m,ω = min p P m, p(0)=1 p,ω ist lösbar für jedes m N 0 und jede kompakte Teilmenge Ω der komplexen Ebene. Die Lösung ist eindeutig, sofern Ω aus mindestens m Punkten besteht. Eine geschlossene Darstellung dieser Lösung existiert jedoch nur in Spezialfällen, etwa wenn Ω ein Intervall ist. Die Chebyshev-Polynome sind definiert durch T m (ξ) := cos(m arccos ξ) P m (ξ [ 1, 1], m = 0, 1,...) (3.28) Sie genügen der dreistufigen Rekursion T m (ξ) = 2ξ T m 1 (ξ) T m 2 (ξ) (m = 2, 3,...) mit T 0 (ξ) = 1 and T 1 (ξ) = ξ. Hieran erkennt man, dass T m tatsächlich ein Polynom vom Grad (exakt) m ist.

Finite Elemente I 121 1 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 1 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 Graphen von T 0, T 1,... T 5 auf [ 1, 1].

Finite Elemente I 122 T m besitzt die m einfachen Nullstellen, ξ (m) k = cos((2k + 1)π/(2m)), k = 0,..., m 1, welche sämtlich in ( 1, 1) liegen. Es ist T m (ξ) 1 für alle ξ [ 1, 1]. Gleichheit gilt für η (m) k := cos(kπ/m), k = 0,..., m, genauer gesagt: T m (η (m) k ) = ( 1) k. Als nächstes transformieren wir die Polynome T m auf ein beliebiges reelles Intervall [δ γ, δ + γ] (0, + ), d.h., 0 < γ < δ. λ l(λ) := (λ δ)/γ ist eine Bijektion von [δ γ, δ + γ] auf [ 1, 1]. Die Umkehrabbildung ist ξ l 1 (ξ) = δ + ξγ. Wegen δ/γ < 1 gilt T m ( δ/γ) 0 und p m (λ) := T m(l(λ)) T m (l(0)) = T m((λ δ)/γ) T m ( δ/γ) (m = 0, 1,...) (3.29) ist somit eine Folge von Residualpolynomen, d.h., p m (0) = 1.

Finite Elemente I 123 1 1 p 0 p 0 p 1 p 1 0.8 p 2 0.8 p 2 p 3 p 3 p 4 p 4 0.6 p 5 0.6 p 5 0.4 0.4 0.2 0.2 0 0 0.2 0.2 0.4 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 0.4 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2 Graphen von p 0, p 1,... p 5 auf [0, 2] bzw. auf [δ γ, δ + γ] = [1, 2].

Finite Elemente I 124 Lemma 3.13 Sei Ω := [δ γ, δ + γ] (0, ). Für die Polynome p m aus (3.29) gilt p m,ω = min p,ω. p P m, p(0)=1 Es verbleibt die Bestimmung von T m ( δ/γ). Hierzu setzen wir Es ist 0 < θ < 1 und θ := δ δ 2 γ 2 γ. max λ Ω p m(λ) = 1 T m ( δ/γ) = 2 θm 1 + θ 2m 2 θm (m = 0, 1,...).

Finite Elemente I 125 Satz 3.14 (Fehlerschranke für CG) Für die Näherungen des CG-Verfahrens gilt die Fehlerabschätzung ( κ+1 ) m κ 1 x x m A x x 0 A 1 T m ( κ+1 κ 1 ) = 2 1 + ( κ+1 κ 1 ) 2m 2 ( κ + 1 κ 1 ) m. Hierbei bezeichnet κ = cond 2 (A) = λ max (A)/λ min (A) die Konditionszahl von A bezüglich der Euklid-Norm. Diese Schranke ist (nahezu) scharf in folgendem Sinne: es gibt lineare Gleichungssysteme Ax = b (mit A R n n ) sowie cond 2 (A) = κ und Startnäherungen x 0 sodass x x n 1 A x x 0 A = 1 T n 1 ((κ + 1)/(κ 1)) (Setze A = diag( η 1,..., η n ) mit η j die Extremalstellen des transformierten Chebyshev-Polynoms p n 1.)

Finite Elemente I 126 Abbruchbedingung Typische Abbruchbedingung: iteriere bis e m A / e 0 A ɛ mit vorgegebener Toleranz ɛ > 0. Ausgehend von Satz 3.14 ist dies spätestens der Fall, wenn ( ) m ( κ 1 ɛ 2 = 2 1 2/ ) m κ κ + 1 1 + 1/. κ Logarithmieren und die Approximation log(1 + x) x für x klein führt auf die Bedingung m 1 log ɛ κ. 2 2 Beispiel: Poisson-Gleichung, uniformes Gitter, bilineare FE. Hier gilt κ(a) = O(h 2 ). Dies bedeutet: bei Halbierung der Gitterweite verdoppelt sich die Anzahl Iterationen.

Finite Elemente I 127 Wir betrachten folgendes Beispiel: die symmetrische 500 500 Matrix A = A(τ) definiert durch 1 falls i = j, a i,j = X i,j falls i j und X i,j τ, 0 sonst. wobei X i,j auf [0, 1] gleichverteilte Zufallsvariable bezeichnet. Man beachte: mit wachsendem τ nimmt die Anzahl von Null verschiedener Einträge in A ebenso zu wie die Konditionszahl. Für τ = 0.2 ist λ min (A) < 0, A also nicht mehr positiv definit. Wir erhalten so: τ nnz(a) λ min (A) λ max (A) cond 2 (A) θ 0.01 (schwarz) 3016 0.9713 1.0325 1.0630 0.0153 0.05 (magenta) 12940 0.7150 1.6479 2.3049 0.2058 0.1 (blau) 25248 0.2097 3.5457 16.9059 0.6087 0.2 (cyan) 50510 1.1677 11.1262

Finite Elemente I 128 Wir wählen b = [1, 1,..., 1], x 0 Verfahrens durch. = 0 und führen 20 Schritte des CG- 10 4 10 4 10 0 10 0 10 4 10 4 10 8 10 8 10 12 10 12 10 16 0 10 20 10 16 0 10 20 x x m 2 x x m A

Finite Elemente I 129 Beobachtungen: Divergenz im Fall τ = 0.2. Im Fall τ = 0.1 wird der Fehler nach 20 Schritten nur auf 10 5 reduziert, bei den übrigen Beispielen mit kleineren Konditionszahlen beobachten wir rasche Konvergenz. Für τ = 0.01 erreicht der Fehler nach 9 Schritten den Bereich der Maschinengenauigkeit. In diesem Fall löst das CG-Verfahren Ax = b in etwa 6 10 4 Flops und ist damit um den Faktor 700 schneller als die Cholesky-Zerlegung.

Finite Elemente I 130 10 4 10 0 10 0 10 5 10 10 10 4 10 15 10 8 10 20 10 25 10 12 10 30 10 35 10 16 0 10 20 r m 2, mit r m = b Ax m 10 40 0 10 20 r m 2, mit r m = r m 1 α m Ap m In der Praxis ist der Fehler nicht verfügbar und Abbruchkriterien basieren oft auf dem Residuum r m. In exakter Arithmetik ist es einerlei, ob wir r m = b Ax m oder die rekursive Formel aus dem Algorithmus auswerten, wobei die erste Variante eine weitere Matrix-Vekto- Multiplikation erfordert. In Gleitpunktrechnung kann der Unterschied allerdings dramatisch sein.

Finite Elemente I 131 Die obere Schranke aus Satz 3.14 ist in vielerlei Hinsicht unbefriedigend: Sie spiegelt nicht den Einfluß von r 0 (also b und x 0 ) wider. Sie hängt nur von den Extremaleigenwerten ab; die Verteilung der Eigenwerte innerhalb des Intervalls [λ min (A), λ max (A)] bleibt unberücksichtigt. In vielen für die Praxis relevanten Fällen ist die schranke aus Satz 3.14 viel zu pessimistisch. In vielen Fällen wird bei CG ein superlineares Konvergenzverhalten beobachtet. Dies ist erst vor kurzem nathematisch zufriedenstellend erklärt worden.

Finite Elemente I 132 3.2.4 Vorkonditionierung Idee: Falls CG für gegebenes LGS zu langsam konvergiert, löse stattdessen ein äquivalentes, für das CG schneller konvergiert. Ein solches ist gegeben durch M 1 Ax = M 1 b, M geeignete spd Matrix. Die resultierenden Modifikationen des Algorithmus erhöhen den Aufwand um Die Lösung eines LGS mit der Matrix M in jedem Schritt, Die Speicherung eines weiteren Vektors z m, des vorkonditionierten Residuums.

Finite Elemente I 133 Algorithmus 5 : Vorkonditioniertes CG-Verfahren. 1 2 3 4 5 6 7 8 9 10 11 Gegeben : A spd, b, M spd Bestimme Startnäherung x 0, berechne r 0 b Ax 0 Löse Mz 0 = r 0 Setze m 0, p 1 z 0 while nicht konvergiert do m m + 1 α m (r m 1,z m 1 ) (p m,p m ) A x m x m 1 + α m p m r m r m 1 α m Ap m Löse Mz m = r m β m+1 (r m,z m ) (r m 1,z m 1 ) p m+1 z m + β m+1 p m

Finite Elemente I 134 Obwohl unverzichtbar in der Praxis ändert die Berücksichtigung von Vorkonditionierung wenig für die Konvergenzanalyse: es müssen lediglich folgende Ersetzungen vorgenommen werden: A M 1 A, b M 1 b, (x, y) (x, y) M := (Mx, y). Beachte: die M 1 A-Norm bezüglich (, ) M ist nichts als die A-Norm bezüglich (, ). Das vorkonditionierte CG-Verfahren minimiert also weiterhin die A-Norm der Fehlers.

Finite Elemente I 135 3.3 Mehrgitterverfahren Grundidee: kombiniere Mehrere Schritte eines klassischen Relaxationsverfahren der Bauart (3.2): x x + B(b Ax) Glättung mit einem Schritt eines in gewisser Weise komplementären Verfahrens gleicher Bauart x x + C (b Ax) auch Unterraumkorrektur genannt. Grobgitterkorrektur, Vorteil: Bei vielen aus der Diskretisierung elliptischer RWA resultierenden LGS sind Mehrgitterverfahren optimal in dem Sinn, dass sie zur Lösung eines LGS der Dimension n nur O(n) Operationen erfordern. 3.3 Mehrgitterverfahren TU Bergakademie Freiberg, SoS 2007

Finite Elemente I 136 Ein Schritt eines solchen Verfahrens bestehend aus einer Grobgitterkorrektur (GGK) gefolgt von s Glättungsschritten ausgehend von der Näherung x m führt auf x m+1 = x m + [I (I BA) s (I CA)]A 1 (b Ax ), x x m+1 = (I BA) s (I CA)(x x m ). (3.30a) (3.30b) Normen: zu gegebenem Innenprodukt (, ) auf R n, A zum A-Innenprodukt (, ) A. Es gilt: x A = A 1/2 x für alle x R n, X A = A 1/2 XA 1/2 für alle X R n n. 3.3 Mehrgitterverfahren TU Bergakademie Freiberg, SoS 2007

Finite Elemente I 137 Fehler in der A-Norm: Kontraktionszahl: x x m A (I BA) s (I CA) A x x m 1 A κ := (I BA) s (I CA) A = (I A 1/2 BA 1/2 ) s (I A 1/2 CA 1/2 ) Entscheidend für die Konvergenzanalyse von Mehrgitterverfahren (MGV) ist nicht die naheliegende Abschätzung sondern κ I A 1/2 BA 1/2 s I A 1/2 CA 1/2 κ max { (I A 1/2 BA 1/2 ) s y : y R(I A 1/2 CA 1/2 ), y = I A 1/2 CA 1/2 }. (3.31) 3.3 Mehrgitterverfahren TU Bergakademie Freiberg, SoS 2007

Finite Elemente I 138 Gestalt der GGK-Matrix: Sei A R N N sowie n N, n < N, I N n R N n beliebig, I n N := ( I N n ) R n N, A n := I n N AI N n R n n. Dann definieren wir unter der Annahme, dass In N A n invertierbar ist, die Matrix der GGK als so gewählt wurde, dass C := I N n A 1 n I n N (3.32) Satz 3.15 Für die durch (3.32) definierte Matrix C gilt A 1/2 R(I A 1/2 CA 1/2 ) N (I n N) (3.33) sowie I A 1/2 CA 1/2 = 1. (3.34) 3.3 Mehrgitterverfahren TU Bergakademie Freiberg, SoS 2007

Finite Elemente I 139 Anwendung von Satz 3.15 auf (3.31) ergibt { } κ max (I A 1/2 BA 1/2 ) s y : y = 1, A 1/2 y N (IN n ) { } = max (I A 1/2 BA 1/2 ) s y : y = 1, y A 1/2 R(In N ) Fazit: Ziel ist es also, I N n so zu wählen, dass κ möglichst klein wird. Bemerkung 3.16 I A 1/2 CA 1/2 ist die A-orthogonale Projektion nach N (CA 1/2 ). 3.3 Mehrgitterverfahren TU Bergakademie Freiberg, SoS 2007