312 53 2MB
German Pages 266 Year 2011
Andreas Meister Numerik linearer Gleichungssysteme
Andreas Meister
Numerik linearer Gleichungssysteme Eine Einführung in moderne Verfahren Mit MATLAB®-Implementierungen von C. Vömel 4., überarbeitete Auflage STUDIUM
Bibliografische Information der Deutschen Nationalbibliothek Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über abrufbar.
Prof. Dr. Andreas Meister Universität Kassel FB 10 Mathematik und Naturwissenschaften Heinrich-Plett-Str. 40 34132 Kassel [email protected]
1. Auflage 1999 2., überarbeitete Auflage 2005 3., überarbeitete Auflage 2008 4., überarbeitete Auflage 2011 Alle Rechte vorbehalten © Vieweg+Teubner Verlag |Springer Fachmedien Wiesbaden GmbH 2011 Lektorat: Ulrike Schmickler-Hirzebruch | Barbara Gerlach Vieweg+Teubner Verlag ist eine Marke von Springer Fachmedien. Springer Fachmedien ist Teil der Fachverlagsgruppe Springer Science+Business Media. www.viewegteubner.de Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Jede Verwertung außerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlags unzulässig und strafbar. Das gilt insbesondere für Vervielfältigungen, Übersetzungen, Mikroverfilmungen und die Einspeicherung und Verarbeitung in elektronischen Systemen. Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, dass solche Namen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten wären und daher von jedermann benutzt werden dürften. Umschlaggestaltung: KünkelLopka Medienentwicklung, Heidelberg Gedruckt auf säurefreiem und chlorfrei gebleichtem Papier Printed in Germany ISBN 978-3-8348-1550-7
Fu¨r Jonas, Anika, Lara und Jannik
vii
Vorwort Im Rahmen der Numerik linearer Gleichungssysteme befassen wir uns mit der effizienten L¨osung großer, linearer Systeme, wodurch ein wichtiges Teilgebiet der Numerischen Linearen Algebra betrachtet wird, das in den letzten Jahren immer gr¨oßere Bedeutung gewonnen hat. Der in den vergangenen zwei Dekaden vollzogene drastische Anstieg der Leistungsf¨ahigkeit von Personal Computern, Workstations und Großrechneranlagen hat zu einer weitverbreiteten Entwicklung numerischer Verfahren zur Simulation praxisrelevanter Problemstellungen in der Medizin, der Physik, den Ingenieurwissenschaften und vielen weiteren Bereichen gef¨ uhrt. Neben der Methode der Finiten Elemente, die inh¨arent auf ein lineares Gleichungssystem f¨ uhrt, ben¨ otigen auch die h¨aufig verwendeten Finite-Differenzenund Finite-Volumen-Verfahren in Kombination mit einem impliziten Zeitschrittverfahren einen Algorithmus zur L¨ osung linearer Gleichungssysteme. So ist es nicht verwunderlich, dass die Forschungsaktivit¨ aten auf dem Gebiet der Gleichungssysteml¨oser einen deutlichen Aufschwung erfahren und zur Entwicklung einer Vielzahl effizienter Verfahren gef¨ uhrt haben. Das vorliegende Buch basiert auf den Inhalten einer vom Autor am Fachbereich Mathematik der Universit¨ at Hamburg gehaltenen vierst¨ undigen Vorlesung, die sich im Kontext der erw¨ahnten Entwicklungen mit der Herleitung und Analyse klassischer sowie moderner Methoden zur L¨osung linearer Gleichungssysteme befasste. Aufgrund der in diesem Gebiet vorliegenden Vielzahl unterschiedlicher direkter und iterativer Verfahren, ist es innerhalb einer vierst¨ undigen Vorlesung sicherlich nicht m¨oglich alle existierenden Algorithmen vorzustellen. Ziel dieses Manuskriptes ist es daher, dem ¨ interessierten Leser einen Uberblick u ¨ber weite Bereiche dieses Gebietes zu vermitteln, die f¨ ur praktische Anwendungen wichtigen Methoden zu diskutieren, verwandte Algorithmen durch Bemerkungen und Literaturhinweise zu integrieren und die Erarbeitung weiterer Verfahren zu erleichtern. Die vorausgesetzten Grundkenntnisse beschr¨ anken sich hierbei gezielt auf u ¨ bliche Inhalte der Analysis und linearen Algebra mathematischer Vorlesungen in den ersten zwei Semestern eines Hochschulfaches, da die beschriebenen Methoden weit u ¨ber die Grenzen eines Mathematikstudiums von großem Interesse sind. Zur Unterst¨ utzung eines Selbststudiums werden zudem alle ben¨ otigten Grundlagen in einem eigenst¨andigen Kapitel bereitgestellt. Nachdem das Auftreten linearer Gleichungssysteme im ersten Kapitel anhand einiger Modellbeispiele beschrieben wird, stellen wir im zweiten Kapitel die f¨ ur die folgenden Methoden ben¨otigten Grundlagen der linearen Algebra zur Verf¨ ugung. Das dritte Kapitel widmet sich den direkten Verfahren, die h¨ aufig in modernen Gleichungssysteml¨osern involviert sind oder teilweise in unvollst¨ andigen Versionen als Vorkonditionierer verwendet werden. Der Schwerpunkt liegt auf der Beschreibung iterativer Verfahren, die im anschließenden vierten Kapitel vorgestellt werden. Hierbei wird stets besonderen Wert auf eine Motivation sowie eine u ¨ bersichtliche, einheitliche und mathematisch abgesicherte Herleitung der iterativen Gleichungssysteml¨ oser gelegt. Neben den Splitting-Methoden, wie zum Beispiel dem Jacobi- und Gauß-Seidel-Verfahren, der Richardson-Iteration und
viii
Vorwort
den Relaxationsverfahren, beschreiben wir zun¨ achst die Zweigittermethode und anschließend das Mehrgitterverfahren sowie dessen vollst¨andige Variante. Die Herleitung des CG-Verfahrens nehmen wir durch eine Kombination der zuvor beschriebenen Verfahren des steilsten Abstiegs und der konjugierten Richtungen vor. Desweiteren betrachten wir vom GMRES-Verfahren u ¨ ber die BiCG-Methode bis zum QMRCGSTAB-Verfahren eine große Bandbreite moderner Krylov-Unterraum-Methoden, die zur L¨osung von Gleichungssystemen mit einer unsymmetrischen und indefiniten Matrix geeignet sind. Das abschließende f¨ unfte Kapitel ist einer ausf¨ uhrlichen Beschreibung und Untersuchung m¨oglicher Pr¨akonditionierungstechniken gewidmet, da die dargestellten Verfahren bei praxisrelevanten Problemstellungen in der Regel erst in Kombination mit einem geeigneten Vorkonditionierer eine stabile und effiziente Gesamtmethode liefern. Die pr¨asentierten Methoden finden ihre Anwendung in unterschiedlichsten numerischen Verfahren, die in verschiedensten Programmiersprachen entwickelt wurden. Daher wurde gezielt eine Darstellung der Algorithmen gew¨ ahlt, die eine Umsetzung in ein beliebiges Computer Programm erm¨ oglichen, weshalb die Verwendung einer expliziten Programmiersprache vermieden wurde. Viele der pr¨ asentierten Verfahren sind bereits in Softwarepaketen wie zum Beispiel LAPACK [3], LINSOL [76], MATLAB [1] und Templates [8] verf¨ ugbar. Bedanken m¨ochte ich mich an dieser Stelle bei Frau Monika Jampert, die weite Teile meines handschriftlichen Manuskriptes in ein LATEX-Skript verwandelt hat und bei Dipl. Math. Dirk Nitschke f¨ ur seine Unterst¨ utzung bei allen LATEX-Fragen. Zudem gilt mein Dank Dr. Christoph B¨ asler, Dipl. Math. Michael Breuss, Martin Ludwig, Christian Nagel, Dipl. Math. Stefanie Schmidt und Dipl. Math. Christof V¨omel f¨ ur das intensive Korrekturlesen und die vielen konstruktiven Hinweise und Bemerkungen, die sich in vielen Bereichen positiv ausgewirkt haben. Besonders bedanken m¨ochte ich mich an dieser Stelle bei Prof. Dr. Thomas Sonar, der durch seine ermutigende Unterst¨ utzung und jahrelange fachliche Begleitung wesentlich zur Entstehung dieses Buches beigetragen hat.
Hamburg, im September 1999
Andreas Meister
Vorwort zur zweiten Auflage Innerhalb der zweiten Auflage wurden neben der Korrektur entdeckter Fehler auch textliche Erweiterungen und erg¨ anzende Bemerkungen eingef¨ ugt, die hoffentlich eine bessere Lesbarkeit zur Folge haben. Mein Dank gilt hierbei vielen Lesern, die durch zahlreiche Hinweise und konstruktive Kritik wesentlich zur Verbesserung beigetragen haben. Eine zentrale Erweiterung stellen die im erg¨ anzten Anhang aufgef¨ uhrten MATLABImplementierung zu g¨ angigen Krylov-Unterraum-Methoden dar, die von Dr. C. V¨omel entwickelt wurden. F¨ ur diese hilfreiche Unterst¨ utzung m¨ochte ich mich an dieser Stelle recht herzlich bedanken. Durch diese Erg¨ anzung ergibt sich f¨ ur den interessierten Anwender eine M¨oglichkeit zur unmittelbaren Nutzung der diskutierten Verfahren, die einen tieferen Einblick in die jeweiligen Eigenschaften der betrachteten Methode im Kontext individueller Problemstellungen er¨ offnet.
ix ¨ Uber Kommentare, Verbesserungsvorschl¨ age und Korrekturhinweise, die mir bespielsweise u ¨ ber meine Email-Adresse [email protected] zugesendet werden k¨onnen, w¨ urde ich mich sehr freuen. Desweiteren besteht unter http://www.mathematik.uni-kassel.de/~meister/buch_online ein Online-Service zum Buch. Neben aktuellen Informationen und Korrekturhinweisen k¨onnen dieser Seite auch die angesprochenen MATLAB-Implementierungen entnommen werden.
Kassel, im November 2004
Andreas Meister
Vorwort zur dritten Auflage Neben geringf¨ ugigen Korrekturen von Tippfehlern wurden im Rahmen dieser Auflage ¨ zahlreiche Ubungsaufgaben erg¨ anzt, die sich jeweils am Ende der Kapitel 2 bis 5 befin¨ den. Bei einigen Problemstellungen konnte ich dabei auf Ubungen aus meinem eigenen Studium zur¨ uckgreifen. Den damaligen Aufgabenstellern gilt daher r¨ uckwirkend mein herzlicher Dank. Die zugeh¨ origen L¨ osungen k¨ onnen dem unter http://www.vieweg.de/tu/8y
bereitgestellten Online-Service entnommen werden. Hier findet der interessierte Leser zudem Hinweise zu themenbegleitenden Kompaktkursen sowie die im Buch aufgef¨ uhrten MATLAB-Implementierungen.
Kassel, im Oktober 2007
Andreas Meister
Vorwort zur vierten Auflage Innerhalb dieser Auflage wurde mit dem Verfahren nach Householder eine weitere M¨oglichkeit zur Berechnung einer QR-Zerlegung aufgenommen. Zudem wurden eine kleine Anzahl an Tippfehler beseitigt und einige Erg¨ anzungen bei den mathematischen Aussagen vorgenommen. Die bereitgestellten Zusatzmaterialien sind unter http://www.viewegteubner.de
zu finden. Gedankt sei an dieser Stelle allen aufmerksamen Lesern, die mit konstruktiven Vorschl¨agen zur besseren Lesbarkeit beigetragen haben.
Kassel, im Dezember 2010
Andreas Meister
x
Inhaltsverzeichnis 1 Beispiele f¨ ur das Auftreten linearer Gleichungssysteme
1
2 Grundlagen der linearen Algebra
7
2.1
Vektornormen und Skalarprodukt . . . . . . . . . . . . . . . . . . . .
7
2.2
Lineare Operatoren, Matrizen und Matrixnormen . . . . . . . . . . . .
13
2.3
Konditionszahl und singul¨ are Werte . . . . . . . . . . . . . . . . . . .
25
2.4
Der Banachsche Fixpunktsatz . . . . . . . . . . . . . . . . . . . . . . .
29
2.5
¨ Ubungsaufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
3 Direkte Verfahren
36
3.1
Gauß-Elimination . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
3.2
Cholesky-Zerlegung . . . . . . . . . . . . . . . . . . . . . . . . . . . .
46
3.3
QR-Zerlegung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
49
3.4
3.3.1
Das Gram-Schmidt-Verfahren . . . . . . . . . . . . . . . . . . . . .
49
3.3.2
Die QR-Zerlegung nach Givens . . . . . . . . . . . . . . . . . . . .
55
3.3.3
Die QR-Zerlegung nach Householder . . . . . . . . . . . . . . . . .
59
¨ Ubungsaufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
66
4 Iterative Verfahren 4.1
4.2
Splitting-Methoden
69 . . . . . . . . . . . . . . . . . . . . . . . . . . . .
72
4.1.1
Jacobi-Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . .
76
4.1.2
Gauß-Seidel-Verfahren . . . . . . . . . . . . . . . . . . . . . . . . .
81
4.1.3
Relaxationsverfahren . . . . . . . . . . . . . . . . . . . . . . . . . .
84
4.1.3.1
Jacobi-Relaxationsverfahren . . . . . . . . . . . . . . . .
85
4.1.3.2
Gauß-Seidel-Relaxationsverfahren . . . . . . . . . . . . .
87
4.1.4
Richardson-Verfahren . . . . . . . . . . . . . . . . . . . . . . . . .
96
4.1.5
Symmetrische Splitting-Methoden . . . . . . . . . . . . . . . . . .
99
Mehrgitterverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 4.2.1
Zweigitterverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
4.2.2
Der Mehrgitteralgorithmus . . . . . . . . . . . . . . . . . . . . . . 116
xi 4.2.3 4.3
Das vollst¨ andige Mehrgitterverfahren
. . . . . . . . . . . . . . . . 118
Projektionsmethoden und Krylov-Unterraum-Verfahren . . . . . . . . 119 4.3.1
4.3.2
Verfahren f¨ ur symmetrische, positiv definite Matrizen . . . . . . . 124 4.3.1.1
Die Methode des steilsten Abstiegs
. . . . . . . . . . . . 125
4.3.1.2
Das Verfahren der konjugierten Richtungen
4.3.1.3
Das Verfahren der konjugierten Gradienten . . . . . . . . 133
. . . . . . . 131
Verfahren f¨ ur regul¨ are Matrizen . . . . . . . . . . . . . . . . . . . . 142 4.3.2.1
Der Arnoldi-Algorithmus und die FOM . . . . . . . . . . 142
4.3.2.2
Der Lanczos-Algorithmus und die D-Lanczos-Methode . . 147
4.3.2.3
Der Bi-Lanczos-Algorithmus . . . . . . . . . . . . . . . . 151
4.3.2.4
Das GMRES-Verfahren . . . . . . . . . . . . . . . . . . . 156
4.3.2.5
Das BiCG-Verfahren . . . . . . . . . . . . . . . . . . . . . 171
4.3.2.6
Das CGS-Verfahren . . . . . . . . . . . . . . . . . . . . . 178
4.3.2.7
Das BiCGSTAB-Verfahren . . . . . . . . . . . . . . . . . 181
4.3.2.8
Das TFQMR-Verfahren . . . . . . . . . . . . . . . . . . . 187
4.3.2.9
Das QMRCGSTAB-Verfahren . . . . . . . . . . . . . . . 196
4.3.2.10 Konvergenzanalysen . . . . . . . . . . . . . . . . . . . . . 199 4.4
¨ Ubungsaufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
5 Pr¨ akonditionierer
207
5.1
Skalierungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
5.2
Polynomiale Pr¨ akonditioner
5.3
Splitting-assoziierte Pr¨ akonditionierer . . . . . . . . . . . . . . . . . . 214
5.4
Die unvollst¨ andige LU-Zerlegung . . . . . . . . . . . . . . . . . . . . . 215
5.5
Die unvollst¨ andige Cholesky-Zerlegung
5.6
Die unvollst¨ andige QR-Zerlegung
5.7
Die unvollst¨ andige Frobenius-Inverse . . . . . . . . . . . . . . . . . . . 221
5.8
Das pr¨ akonditionierte CG-Verfahren . . . . . . . . . . . . . . . . . . . 223
5.9
Das pr¨ akonditionierte BiCGSTAB-Verfahren . . . . . . . . . . . . . . 226
5.10
Vergleich der Pr¨ akonditionierer . . . . . . . . . . . . . . . . . . . . . . 228 ¨ Ubungsaufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
5.11
. . . . . . . . . . . . . . . . . . . . . . . 211
. . . . . . . . . . . . . . . . . 218
. . . . . . . . . . . . . . . . . . . . 219
A Implementierungen in MATLAB
233
Literaturverzeichnis
246
Index
251
1
1
Beispiele fu ¨ r das Auftreten linearer Gleichungssysteme
In diesem Kapitel besch¨ aftigen wir uns mit der Entstehung linearer Gleichungssysteme auf der Basis physikalisch relevanter Problemstellungen. Die ausgew¨ahlten Beispiele verdeutlichen einerseits das Auftreten schwachbesetzter (Beispiele 1.1 und 1.4) sowie vollbesetzter (Beispiele 1.2 und 1.3) Matrizen und dienen andererseits als Modellprobleme (Beispiele 1.1 und 1.4) f¨ ur die Analyse der in den folgenden Abschnitten beschriebenen Verfahren. Beispiel 1.1 Die Poisson-Gleichung Die Poisson-Gleichung stellt eine elliptische partielle Differentialgleichung zweiter Ordnung dar, die zu einem Standardproblem bei der Untersuchung partieller Differentialgleichungen und deren numerischer Behandlung geworden ist. Sie tritt unter anderem bei der numerischen Simulation inkompressibler reibungsbehafteter Str¨omungsfelder, das heißt bei der Diskretisierung der inkompressiblen Navier-Stokes-Gleichungen auf [18, 23]. Unter Verwendung des Laplace-Operators ∆=
∂2 ∂2 + ∂x2 ∂y 2
l¨asst sich die Poisson-Gleichung als Randwertproblem auf dem Gebiet Ω ⊂ R2 in der Form −∆u(x,y) = f (x,y) f¨ ur (x,y) ∈ Ω ⊂ R2 , (1.0.1) u(x,y) = ϕ(x,y) f¨ ur (x,y) ∈ ∂Ω schreiben, wobei ∂Ω den Rand von Ω beschreibt. Bei gegebener Funktion f ∈ C (Ω; R) und gegebenen Randwerten ϕ ∈ C (∂Ω; R) wird folglich eine Funktion u ∈ C 2 (Ω; R) ∩ C Ω; R gesucht, die dem Randwertproblem (1.0.1) gen¨ ugt. Zur Diskretisierung der Poisson-Gleichung auf dem Einheitsquadrat Ω = (0,1) × (0,1) mittels einer zentralen Finite-Differenzen-Methode wird Ω = Ω ∪ ∂Ω mit einem Gitter Ωh der Schrittweite h = 1/(N + 1) mit N ∈ N versehen. Wir schreiben (xi ,yj ) = (ih,jh) f¨ ur i,j = 0, . . . ,N + 1 sowie ur i,j = 0, . . . ,N + 1. uij = u(xi ,yj ) und fij = f (xi ,yj ) f¨ Desweiteren approximieren wir
A. Meister, Numerik linearer Gleichungssysteme, DOI 10.1007/978-3-8348-8100-7_1, © Vieweg+Teubner Verlag |Springer Fachmedien Wiesbaden GmbH 2011
2
1 Beispiele f¨ ur das Auftreten linearer Gleichungssysteme y
1 yN
y3 y2 y1
x1
Bild 1.1
x2
x3
xN
x
1
Diskretisierung des Einheitsquadrates
∂ 2u (xi ,yj ) ≈ ∂x2
1 h
≈
=
∂u (xi+1/2 ,yj ) ∂x
1 (ui+1,j − 2uij + ui−1,j ). h2
Mit einer analogen Vorgehensweise f¨ ur −∆u(xi ,yj ) ≈
ui+1,j − ui,j ui,j − ui−1,j − h h
(1.0.2)
∂ 2u erhalten wir f¨ ur den Laplace-Operator ∂y 2
1 (4uij − ui−1,j − ui+1,j − ui,j−1 − ui,j+1 ) h2
und somit die diskrete Form der Gleichung (1.0.1) 4ui,j − ui−1,j − ui+1,j − ui,j−1 − ui,j+1 = h2 fij
f¨ ur
1 ≤ i,j ≤ N,
u0,j = ϕ0,j , uN +1,j = ϕN +1,j
f¨ ur
j = 0, . . . ,N + 1,
ui,0 = ϕi,0 , ui,N +1 = ϕi,N +1
f¨ ur
i = 0, . . . ,N + 1.
Eine zeilenweise Neunummerierung, die einer lexikographischen Anordnung der inneren Gitterpunkte entspricht, ergibt u1 = u1,1 , u2 = u2,1 , u3 = u3,1 , . . . , uN = uN,1 , uN +1 = u1,2 , . . . ,uN 2 = uN,N . Die Neunummerierung wird ebenfalls f¨ ur f durchgef¨ uhrt, und wir erhalten somit ein Gleichungssystem Au = g f¨ ur die Bestimmung des L¨osungsvektors u := (u1 , . . . ,uN 2 )T . Hierbei gilt
3 ⎛
B
⎜ ⎜ −I A=⎜ ⎜ ⎝
−I .. .
..
..
..
.
.
. −I
⎞
⎟ ⎟ ⎟ ∈ RN 2 ×N 2 ⎟ −I ⎠ B
(1.0.3)
mit ⎛
−1 ⎜ ⎜ −1 . . . B=⎜ ⎜ .. ⎝ . 4
⎞
⎟ ⎟ . ⎟ ∈ RN ×N ⎟ .. . −1 ⎠ −1 4 ..
⎛
⎜ und I = ⎝
⎞
1 ..
Die rechte Seite weist f¨ ur den Spezialfall ϕ ≡ 0 die Gestalt ⎞ ⎛ f1 2 ⎟ ⎜ g = h2 ⎝ ... ⎠ ∈ RN
. 1
⎟ ⎠ ∈ RN ×N .
(1.0.4)
fN 2
auf. Im Fall ϕ ≡ 0 m¨ ussen die entsprechenden Randwerte im Vektor der rechten Seite ber¨ ucksichtigt werden. F¨ ur die erste Komponente erhalten wir in diesem Fall g1 = h2 f1 + ϕ0,1 + ϕ1,0 . Bemerkung: Die Matrix A ist symmetrisch, positiv definit und schwachbesetzt. Ihre Struktur ist zudem abh¨angig von der gew¨ ahlten Anordnung der inneren Gitterpunkte. Beispiel 1.2 Lineare Integralgleichung zweiter Art Lineare Integralgleichungen erster und zweiter Art treten zur Festlegung von Dichtefunktionen auf, mittels derer die L¨ osung einer partiellen Differentialgleichung (zum Beispiel der Helmholtz-Gleichung) in Form eines Einfach- oder Doppelschichtpotentials dargestellt werden kann [44, 36]. Wir betrachten die Integralgleichung zweiter Art u(x) = v(x) +
1
k(x,y)u(y)dy f¨ ur x ∈ [0,1].
(1.0.5)
0
Bei gegebenem Integralkern k : [0,1]×[0,1] → R mit k(x,0) = 0 und gegebener Funktion v : [0,1] → R werden wir im Folgenden ein lineares Gleichungssystem zur Berechnung einer N¨aherungsl¨ osung der gesuchten Funktion u : [0,1] → R herleiten. Zur Diskretisierung der Integralgleichung verwenden wir eine Nystr¨om-Methode. Hierzu unterteilen wir das Intervall [0,1] in N Teilintervalle der L¨ange h = 1/N mit N ∈ N . Sei j xj = = jh f¨ ur j = 0, . . . ,N, N
4
1 Beispiele f¨ ur das Auftreten linearer Gleichungssysteme
dann erhalten wir unter Verwendung der numerischen Integration 1
k(x,y)u(y)dy ≈ h
0
N
k(x,xj )u(xj ) = h
j=1
N
k(x,xj )u(xj )
j=0
aus (1.0.5) die approximative Darstellung N 1 k(x,xj )u(xj ) f¨ ur x ∈ [0,1]. u(x) = v(x) + N
(1.0.6)
j=0
Betrachten wir die Gleichung (1.0.6) an den St¨ utzstellen xi , i = 0, . . . ,N und definieren ui = u(xi ) , vi = v(xi ), dann erhalten wir mit v = (v0 , . . . ,vN )T das lineare Gleichungssystem Au = v zur Bestimmung des Vektors u = (u0 , . . . ,uN )T . Hierbei gilt A = (aij )i,j=0,...,N ∈ R(N +1)×(N +1) mit aij = δij −
1 k(xi ,xj ) N
(1.0.7)
unter Verwendung des Kronecker-Symbols 0, i = j δij = 1, i = j. Bemerkung: Aus der Darstellung der Matrixkoeffizienten (1.0.7) ist unmittelbar ersichtlich, dass die Besetzungsstruktur sowie alle weiteren Eigenschaften der Matrix (Symmetrie, Definitheit) von dem zugrundeliegenden Integralkern abh¨angen. Im Normalfall ist die Matrix A hierbei vollbesetzt. Beispiel 1.3 Funktionsdefinition aus Messwerten Es sei bekannt, dass sich eine physikalische Gr¨ oße z als Polynom n -ten Grades der Zeit t schreiben l¨asst: n αi ti f¨ ur t ∈ R+ z(t) = 0. i=0
Aus Messungen ist die physikalische Gr¨ oße zu den Zeitpunkten 0 ≤ t0 < . . . < tN , N ≥ n , bekannt. Die zugeh¨ origen Messwerte lauten z0 , . . . ,zN . Die Aufgabe besteht in der Ermittlung der Koeffizienten α0 , . . . ,αn , so dass die Summe der Fehlerquadrate minimal wird (Methode der kleinsten Quadrate). Das bedeutet f (α) =
n N j=0
i=0
αi tij − zj
2
=
N j=0
[z(tj ) − zj ]2
soll u ullt ¨ ber alle α = (α0 , . . . ,αn )T ∈ Rn+1 minimiert werden. Der L¨osungsvektor α erf¨ somit ∂f (α) = 0 f¨ ur k = 0, . . . ,n. ∂αk
5 Aufgrund der Gestalt der Funktion f folgt hieraus N
j=0
⇔ ⇔ ⇔
N
j=0 N
j=0 n
i=0
2[z(tj ) − zj ] tkj
= 0
z(tj ) tkj
=
αi tij tkj
=
ti+k j
=
n
i=0 N
j=0
αi
f¨ ur k = 0, . . . ,n
N
j=0 N
j=0 N
j=0
zj tkj
f¨ ur k = 0, . . . ,n
zj tkj
f¨ ur k = 0, . . . ,n
zj tkj
f¨ ur k = 0, . . . ,n.
Zu l¨osen bleibt somit das lineare Gleichungssystem Aα = b mit A = (aki )k,i=0,...,n ∈ R(n+1)×(n+1) mit aki = und T
b = (b0 , . . . ,bn ) ∈ Rn+1 mit bk =
N
N
tk+i f¨ ur k,i = 0, . . . ,n j
j=0
zj tkj f¨ ur k = 0, . . . ,n.
j=0
Bemerkung: Die resultierende Matrix A ist stets vollbesetzt und symmetrisch. Das vorliegende Gleichungssystem wird u ¨ blicherweise als die zum linearen Ausgleichsproblem minα∈Rn+1 f (α) geh¨orende Normalengleichung bezeichnet. Beispiel 1.4 Die Konvektions-Diffusions-Gleichung Die Konvektions-Diffusions-Gleichung wird h¨ aufig als Modellproblem bei der Entwicklung neuartiger Verfahren innerhalb der Str¨ omungsmechanik genutzt, da sie eine struktu¨ relle Ahnlichkeit zu den Euler- und Navier-Stokes-Gleichungen aufweist. In Anlehnung an die Arbeiten [68] und [51] betrachten wir die station¨are Konvektions-Diffusions-Gleichung auf dem Einheitsquadrat Ω = (0,1) × (0,1) in der Form β · ∇u(x,y) − ε∆u(x,y) = 0
u(x,y) = x2 + y 2
f¨ ur
(x,y) ∈ Ω ⊂ R2 ,
f¨ ur
(x,y) ∈ ∂Ω
(1.0.8)
mit β = (cos α, sin α)T , α = 45◦ und ε ∈ R+ 0 . Wir nutzen die in Beispiel 1.1 vorgestellte ¨ aquidistante Diskretisierung des Einheitsquadrates. Um im Grenzfall eines verschwindenden Diffusionsparameters ε keine Entkopplung des diskreten Systems in der Form eines Schachbrettmusters zu erhalten, wird der Gradient ∇u innerhalb des konvektiven Anteils mittels einer einseitigen Differenz gem¨aß ∂u ui+1,j − ui,j (xi+1 ,yj ) ≈ ∂x h
und
∂u ui,j+1 − ui,j (xi ,yj+1 ) ≈ , ∂y h
6
1 Beispiele f¨ ur das Auftreten linearer Gleichungssysteme
diskretisiert. Diese Strategie wird innerhalb der Str¨omungsmechanik als Upwind-Methode bezeichnet. Die Verwendung der Approximation (1.0.2) f¨ ur den Laplace-Operator ergibt in Kombination mit einer lexikographischen Anordnung ein Gleichungssystem der Form Au = g zur Berechnung des Vektors u := (u1 , . . . ,uN 2 )T . Die Besetzungsstruktur der Matrix stimmt hierbei mit der Struktur der Matrix innerhalb des Beispiels der PoissonGleichung u ¨ berein. Die explizite Darstellung der Matrix lautet ⎞ ⎛ B −εI ⎟ ⎜ ⎟ ⎜ D ... ... ⎟ ∈ RN 2 ×N 2 A=⎜ (1.0.9) ⎟ ⎜ . . .. . . −εI ⎠ ⎝ D B mit ⎛
4ε + h(cos α + sin α) −ε ⎜ .. ⎜ . −ε − h cos α B=⎜ ⎜ . .. ⎝
..
.
..
. −ε −ε − h cos α 4ε + h(cos α + sin α)
⎞
⎟ ⎟ ⎟ ∈ RN ×N ⎟ ⎠
und ⎛
⎜ D=⎝
−ε − h sin α
..
⎞
. −ε − h sin α
⎟ N ×N , ⎠∈R
wobei I ∈ RN ×N wiederum die Einheitsmatrix repr¨asentiert. Die rechte Seite g h¨angt in diesem Fall ausschließlich von den u ¨ ber (1.0.8 )2 gegebenen Randbedingungen ab. Bemerkung: Die Matrix A ist stets unsymmetrisch und schwachbesetzt.
7
2
Grundlagen der linearen Algebra
Die Herleitung und Analyse der im Folgenden betrachteten Verfahren zur L¨osung linearer Gleichungssysteme basiert auf den in diesem Kapitel dargestellten Grundlagen. Wir betrachten hierbei stets Abbildungen zwischen reellen beziehungsweise komplexen linearen R¨aumen, die oftmals auch als Vektorr¨aume u ¨ ber R respektive C bezeichnet werden. Derartige lineare R¨ aume, wie zum Beispiel der Rn oder Cn stellen nichtleere Mengen dar, deren Elemente durch eine Addition verkn¨ upft und mit Skalaren λ ∈ R oder C multipliziert werden k¨ onnen, die den Vektorraumaxiomen gen¨ ugen. Diese Axiome garantieren lediglich, dass mit Addition, Subtraktion und Multiplikation wie gewohnt gerechnet werden kann.
2.1
Vektornormen und Skalarprodukt
Notwendige Begriffe wie Orthogonalit¨ at, L¨ ange, Abstand und Konvergenz basieren auf Skalarprodukten beziehungsweise Normen. Diese Abbildungen werden wir daher in diesem Abschnitt einf¨ uhren und einige wesentliche Aussagen pr¨asentieren. Definition 2.1 Sei X ein komplexer beziehungsweise reeller linearer Raum. Eine Abbildung . : X −→ R mit den Eigenschaften (N1) x ≥ 0
(Positivit¨at)
(N2) x = 0 ⇔ x = 0
(Definitheit)
(N3) α · x = |α| · x ∀ x ∈ X, ∀ α ∈ C (bzw.R)
(Homogenit¨at)
(N4) x + y ≤ x + y
(Dreiecksungleichung)
∀ x,y ∈ X
nennt man eine Norm auf X . Ein linearer Raum X mit einer Norm heißt normierter Raum. Falls X = Cn beziehungsweise X = Rn gilt, so wird die Norm auch als Vektornorm bezeichnet. Die Positivit¨at einer Norm kann hierbei auch aus den Axiomen (N3) und (N4) hergeleitet werden und br¨ auchte daher aus formalen Gr¨ unden nicht innerhalb der Definition aufgef¨ uhrt werden. Wir verwenden dennoch die obige Formulierung, um diese Eigenschaft der Norm explizit vorliegen zu haben. Auf Cn beziehungsweise Rn sind Normen zum Beispiel wie folgt gegeben: (a) x1 :=
n
i=1
|xi |
(Betragssummennorm)
A. Meister, Numerik linearer Gleichungssysteme, DOI 10.1007/978-3-8348-8100-7_2, © Vieweg+Teubner Verlag |Springer Fachmedien Wiesbaden GmbH 2011
8
2 Grundlagen der linearen Algebra (b) x2 :=
n
i=1
|xi |
2
21
(Euklidische Norm)
max |xi | (c) x∞ := i=1,...,n
(Maximumnorm)
Wir kommen nun zur Einf¨ uhrung des ben¨ otigten Konvergenzbegriffs. Definition 2.2 Eine Folge {xn }n∈N von Elementen aus einem normierten Raum X heißt konvergent mit dem Grenzelement x ∈ X , wenn zu jedem ε > 0 eine nat¨ urliche Zahl N = N (ε) existiert, so dass xn − x < ε
∀n≥ N
gilt. Eine Folge, die nicht konvergiert, heißt divergent. Definition 2.3 Sei X ein normierter Raum. Eine Folge {xn }n∈N aus X heißt CauchyFolge, wenn es zu jedem ε > 0 ein N = N (ε) ∈ N derart gibt, dass xn − xm < ε ∀n,m ≥ N gilt. Der anschließende Satz liefert einen generellen Zusammenhang zwischen konvergenten Folgen und Cauchy-Folgen. Satz 2.4 Sei X ein normierter Raum. Jede konvergente Folge {xn }n∈N aus X ist eine Cauchy-Folge. Beweis: Sei ε > 0 gegeben und x das Grenzelement der Folge {xn }n∈N ε ⇒ ∃N = N ∈ N mit xn − x < 2ε ∀n ≥ N 2 ⇒ xn − xm ≤ xn − x + x − xm < ε ∀n,m ≥ N . Definition 2.5 Sei X ein komplexer oder reeller linearer Raum. Eine Abbildung (.,.) : X × X −→ C mit den Eigenschaften (H1) (x,x) ∈ R+ 0
∀x ∈X
(Positivit¨at)
(H2) (x,x) = 0 ⇔ x = 0
(Definitheit)
(H3) (x,y) = (y,x) ∀ x,y ∈ X
(Symmetrie)
(H4) (αx + βy,z) = α(x,z) + β(y,z) ∀x,y,z ∈ X α,β ∈ C
(Linearit¨at)
heißt Skalarprodukt oder inneres Produkt auf X . Ein linearer Raum X versehen mit einem Skalarprodukt heißt Pr¨ a-Hilbert-Raum.
2.1 Vektornormen und Skalarprodukt
9
Bemerkung: Es gilt zudem (H4’) (x,αy + βz)
(H3)
=
(H3)
=
(αy + βz,x)
(H4)
=
α(y,x) + β(z,x)
α(x,y) + β(x,z).
Diese Eigenschaft wird als Antilinearit¨ at bezeichnet. Satz 2.6 Auf jedem Pr¨a-Hilbert-Raum X ist durch x := (x,x), x ∈ X
eine Norm erkl¨art.
Beweis: Die ersten drei Normeigenschaften ergeben sich durch direktes Nachrechnen. Die Eigenschaft (N4) folgt durch Anwendung der Cauchy-Schwarzschen Ungleichung |(x,y)| ≤ x y. ¨ Ublicherweise wird auf dem Cn das euklidische Skalarprodukt gem¨aß (x,y)2 :=
n
xi y i = y ∗ x
i=1
genutzt. Hierbei gilt der Zusammenhang x2 :=
(x,x)2 .
Satz 2.7 Sei X ein normierter Raum und {xn }n∈N eine konvergente Folge in X , dann ist das Grenzelement eindeutig bestimmt. Beweis: Seien x und y zwei Grenzelemente, d. h. gelte xn −→ x f¨ ur n −→ ∞ und xn −→ y f¨ ur n −→ ∞ , dann folgt 0 ≤ x − y = x − xn + xn − y n→∞ ≤ x − xn + xn − y −−−−→ 0 n→∞ n→∞ −−−−→0 −−−−→0 ⇒ 0 ≤ x − y ≤ 0 (N2)
⇒ x − y = 0 ⇒ x − y = 0 ⇒ x = y. Definition 2.8 Zwei Normen .a und .b auf einem linearen Raum X heißen ¨aquivalent, wenn jede Folge genau dann bez¨ uglich .a konvergiert, wenn sie bez¨ uglich .b konvergiert.
10
2 Grundlagen der linearen Algebra
Satz und Definition 2.9 Zwei Normen .a und .b auf einem linearen Raum X sind genau dann ¨aquivalent, wenn es reelle Zahlen α,β > 0 gibt, so dass αxb ≤ xa ≤ βxb
∀x∈X
(2.1.1)
¨ gilt. Die gr¨oßte derartige Zahl α und die kleinste derartige Zahl β werden als Aquivalenzkonstanten bezeichnet. Beweis: ⇐“ ” .b
ur n → ∞ , dann folgt mit (2.1.1) Sei {xn }n∈N eine beliebige Folge mit xn −−→ x f¨ xn − xa ≤ βxn − xb → 0 f¨ ur n → ∞ und somit die geforderte Konvergenz der Folge in der Norm .a . Die zweite Ungleichung in (2.1.1) liefert auf analoge Weise die Konvergenz einer Folge in der Norm .b aus der Konvergenz der Folge in der Norm .a . ⇒“ ” Annahme: Es existiert kein β ∈ R+ mit xa ≤ β f¨ ur alle x ∈ X mit xb = 1 . Dann existiert eine Folge {xn }n∈N mit xn a ≥ n2
und xn b = 1.
Sei y n := dann erhalten wir y n a =
1 xn a ≥ n n
xn , n und y n b =
1 . n
(2.1.2)
.b
ur n → ∞ , wodurch die Folge aufgrund der vorausgesetzten Somit folgt y n −−→ 0 , f¨ ¨ Aquivalenz der Normen .a und .b auch in der Norm .a konvergiert. Hiermit ergibt sich direkt der angestrebte Widerspruch zur Eigenschaft (2.1.2). Folglich existiert ein β ∈ R+ mit xa ≤ β f¨ ur alle x ∈ X mit xb = 1 . Sei nun y ∈ X \ {0} , dann erhalten wir durch y y ≤ βyb ya = yb = yb (2.1.3) yb a yb a ¨ die Ubertragung der Eigenschaft auf alle Vektoren aus X \ {0} . Da das Nullelement stets der Gleichung (2.1.1) gen¨ ugt, folgt ya ≤ βyb
f¨ ur alle y ∈ X.
Die zweite Absch¨atzung ergibt sich analog. Aufgrund des Satzes 2.9 wird die Definition ¨ aquivalenter Normen oftmals auf der Basis der Ungleichungen (2.1.1) vorgenommen. Als direkte Folgerung dieser Ungleichungen erhalten wir die folgende Aussage.
2.1 Vektornormen und Skalarprodukt
11
Korollar 2.10 Die Grenzelemente einer Folge stimmen bez¨ uglich zweier ¨aquivalenter Normen u ¨ berein. Satz 2.11 Auf einem endlichdimensionalen reellen oder komplexen linearen Raum sind alle Normen ¨aquivalent. Beweis: F¨ ur den Nachweis der obigen Behauptung gen¨ ugt es zu zeigen, dass eine bestimmte Norm ¨aquivalent zu jeder Norm ist. Sei X := span{u1 , . . . ,um } ein m -dimensionaler linearer Raum, dann l¨asst sich jedes x ∈ X in der Form x=
m
αi ui , αi ∈ C
i=1
darstellen. Definieren wir auf X die Norm xmax := max
i=1,...,m
|αi |,
dann folgt f¨ ur jede weitere Norm . auf X die Absch¨atzung m m m (N4) (N3) x = αi ui ≤ |αi | ui αi ui = i=1
≤
max
i=1,...,m
i=1
|αi |
m i=1
i=1
ui = βxmax .
(2.1.4)
β:=
Die zweite Ungleichung werden wir mittels des folgenden Widerspruchsbeweises nachweisen. ur alle x ∈ X . Annahme: Es existiert kein α ∈ R+ mit xmax ≤ αx f¨ Wie wir bereits in Gleichung (2.1.3) gesehen haben, ist diese Eigenschaft ¨aquivalent zur Aussage: Es existiert kein α ∈ R+ mit xmax ≤ α f¨ ur alle x ∈ X mit x = 1. Somit existiert eine Folge {xn }n∈N mit xn max ≥ n und xn = 1. Sei y n := Wir schreiben
xn , dann gilt y n max = 1 f¨ ur alle n ∈ N. xn max yn =
m i=1
αi,n ui
(2.1.5)
12
2 Grundlagen der linearen Algebra
und erhalten mit (2.1.5)
max |αi,n | = 1 f¨ ur alle n ∈ N . Mit {α1,n }n∈N , . . .,{αm,n }n∈N
i=1,...,m
liegen daher m beschr¨ ankte Folgen komplexer Zahlen vor, so dass f¨ ur i = 1, . . . ,m aufgrund des Satzes von Bolzano-Weierstraß je eine konvergente Teilfolge j→∞
existiert. Definieren wir
αi,n(j) −−−→ α i mit n(j + 1) > n(j) y :=
m i=1
dann folgt f¨ ur y n(j) :=
m
αi,n(j) ui
α i ui ,
i=1
y n(j) − ymax = max
i=1,...,m
j→∞
|αi,n(j) − α i | −−−→ 0.
(2.1.6)
Unter Verwendung der Ungleichung (2.1.4) erhalten wir .
ur j → ∞, y n(j) −−→ y f¨ so dass sich mit (2.1.5) xn(j) 1 1 j→∞ = y n(j) = ≤ −−−→ 0 xn(j) max xn(j) max n(j)
j→∞
und folglich y = 0 ergibt. Hierdurch erhalten wir mittels y n(j) max −−−→ 0 einen Widerspruch zu y n max = 1 f¨ ur alle n ∈ N .
¨ F¨ ur die aufgef¨ uhrten Vektornormen erhalten wir die Aquivalenzkonstanten f¨ ur x ∈ Rn gem¨ aß √ (2.1.7) x2 ≤ x1 ≤ nx2 , √ (2.1.8) x∞ ≤ x2 ≤ nx∞ ,
und 1 x1 ≤ x∞ ≤ x1 . n
(2.1.9)
Definition 2.12 Eine Teilmenge V eines normierten Raumes X heißt vollst¨andig, wenn jede Cauchy-Folge aus V gegen ein Grenzelement aus V konvergiert. Ein vollst¨andiger normierter Raum heißt Banach-Raum. Bei den betrachteten linearen Gleichungssystemen betrachten wir stets endlichdimensionale normierte R¨aume. F¨ ur diese R¨ aume ergibt sich die folgende hilfreiche Eigenschaft. Satz 2.13 Jeder endlichdimensionale normierte Raum ist ein Banach-Raum. Beweis: Sei X ein endlichdimensionaler normierter Raum. Laut Satz 2.11 sind auf X alle Normen ¨aquivalent, so dass der Nachweis f¨ ur eine beliebige Norm erbracht werden kann.
2.2 Lineare Operatoren, Matrizen und Matrixnormen
13
Sei X := span{u1 , . . . ,uk } , dann l¨ asst sich jedes x ∈ X in der Form x=
k i=1
αi ui mit αi ∈ C
schreiben. Wir betrachten nun wiederum die Norm xmax := max |αi |. i=1,...,k
Sei {xn }n∈N eine Cauchy-Folge in X , dann schreiben wir xn =
k i=1
αi,n ui mit αi,n ∈ C
und erhalten ur n,m → ∞. max |αi,n − αi,m | = xn − xm max → 0 f¨
i=1,...,k
Folglich stellen die k Koeffizientenfolgen jeweils Cauchy-Folgen in C dar, so dass aufgrund der Vollst¨andigkeit des Raumes der komplexen Zahlen n→∞
˜= gilt. Mit x
k
i ∈ C f¨ ur i = 1, . . . ,k αi,n −−−−→ α
α ˜ i ui liegt wegen
i=1 n→∞
˜ max = max |αi,n − α xn − x i | −−−−→ 0 i=1,...,k
der gesuchte Vektor vor.
2.2
Lineare Operatoren, Matrizen und Matrixnormen
Die Eigenschaften der Matrix eines linearen Gleichungssystem sind wesentlich f¨ ur die Auswahl eines geeigneten iterativen Verfahrens und bestimmen in der Regel zudem das Konvergenzverhalten der gew¨ ahlten Methode. Neben der Einf¨ uhrung spezieller Klassen von Matrizen und der Festlegung unterschiedlicher Matrixnormen werden wir in diesem Abschnitt den Spektralradius erl¨ autern und dessen Zusammenhang zu den Matrixnormen diskutieren, der sich als fundamental f¨ ur Konvergenzaussagen von Splitting-Methoden erweisen wird. Definition 2.14 Seien X,Y normierte R¨ aume mit den Normen .X beziehungsweise .Y . Ein Operator A : X → Y heißt .X
(a) stetig an der Stelle x ∈ X , falls f¨ ur alle Folgen {xn }n∈N aus X mit xn −−−→ x f¨ ur n → ∞ .Y Axn −−−→ Ax f¨ ur n → ∞ folgt.
14
2 Grundlagen der linearen Algebra
(b) stetig, falls A an allen Stellen x ∈ X stetig ist. (c) linear, falls A(αx + βy) = αAx + βAy ∀x,y ∈ X ∀α,β ∈ C gilt. (d) beschr¨ankt, wenn A linear ist und ein C ≥ 0 existiert, so dass AxY ≤ CxX ∀x ∈ X gilt. Jede Zahl C mit dieser Eigenschaft heißt Schranke von A . Wir besch¨aftigen uns im Weiteren mit sogenannten induzierten Matrixnormen, die jeweils auf der Grundlage einer Vektornorm durch den folgenden Satz festgelegt werden. Satz und Definition 2.15 Ein linearer Operator A : X → Y ist genau dann beschr¨ankt, wenn A := sup AxY < ∞ xX =1
gilt. A ist die kleinste Schranke von A und heißt Norm des Operators. Beweis: ⇒“ ” Sei A beschr¨ankt, dann existiert insbesondere ein C ≥ 0 mit ur alle x ∈ X mit xX = 1 AxY ≤ C f¨ und wir erhalten A =
sup xX =1
AxY ≤ C < ∞.
Insbesondere stellt A demzufolge die kleinste Schranke von A dar. ⇐“ ” Sei A linear und gelte A < ∞ Betrachten wir ein beliebiges x ∈ X \ {0} , dann folgt x x A AxY = X xX Y x = xX A xX Y ≤ xX sup
zX =1
= xX A. Somit ist A beschr¨ ankt mit Schranke A .
AzY
2.2 Lineare Operatoren, Matrizen und Matrixnormen
15
Die Eigenschaft Ax ≤ Ax wird als Vertr¨aglichkeitsbedingung bezeichnet. Stetigkeit und Beschr¨ anktheit stellen im Kontext linearer Operatoren ¨aquivalente Begriffe dar. Diese Tatsache wird durch den folgenden Satz nachgewiesen. Satz 2.16 F¨ ur einen linearen Operator A : X → Y sind die folgenden drei Eigenschaften ¨aquivalent: (a) A ist stetig an der Stelle x = 0 . (b) A ist stetig. (c) A ist beschr¨ankt. Beweis: (a) ⇒ (b) “ ” Sei x ∈ X gegeben und {xn }n∈N eine beliebige Folge aus X mit xn → x , n → ∞ , dann folgt mit der Stetigkeit an der Stelle x = 0 und der Linearit¨at des Operators die Gleichung .Y
Axn = A(xn − x) +Ax −−−→ Ax f¨ ur n → ∞. .
−−−Y→0, n→∞
(b) ⇒ (c) “ ” Annahme: A ist stetig und nicht beschr¨ ankt. Dann existiert eine Folge {xn }n∈N aus X mit xn X = 1 und Axn Y ≥ n . Wir definieren xn y n := Axn Y und erhalten hiermit
yn X =
1 1 xn X = ≤ . Axn Y Axn Y n
Folglich konvergiert die Folge y n in der Norm auf X gegen das Nullelement, und es folgt aus der Stetigkeit des Operators .Y
Ay n −−−→ A (0) = 0 f¨ ur n → ∞, so dass ein Widerspruch zu Ay n Y =
Axn Y = 1 f¨ ur alle n ∈ N Axn Y
vorliegt. ”
(c) ⇒ (a) “ .X
ur n → ∞ . Dann Sei A beschr¨ankt und {xn }n∈N eine Folge aus X mit xn −−−→ 0 , f¨ folgt
16
2 Grundlagen der linearen Algebra
und hieraus mit
Axn Y ≤ Axn X → 0 f¨ ur n → ∞ .Y
Axn −−−→ 0 = A (0) f¨ ur n → ∞
die Stetigkeit des Operators an der Stelle x = 0 .
Bei der Betrachtung von Kompositionen linearer Abbildungen erweist sich der folgende Satz zur Absch¨atzung der Norm der Komposition als hilfreich. Satz 2.17 Seien A : X → Y und B : Y → Z beschr¨ankte lineare Operatoren, dann ist BA : X → Z beschr¨ankt mit BA ≤ B A.
(2.2.1)
Beweis: Mit BAxZ ≤ B AxY ≤ B A xX
folgt der Nachweis direkt aus BA =
sup xX =1
BAxZ ≤
sup xX =1
BAxX = BA.
Die Eigenschaft (2.2.1) wird auch als Submultiplikativit¨at der zugrundeliegenden Norm bezeichnet. Wir werden uns im Folgenden, solange nicht ausdr¨ ucklich erw¨ahnt, stets auf Normen beschr¨anken, die auf der Grundlage der Definition 2.15 festgelegt sind. Im Kontext der betrachteten Matrizen sind jedoch auch hiervon abweichende Normen denkbar, die nicht der Ungleichung (2.2.1) gen¨ ugen. Jede lineare Abbildung zwischen endlichdimensionalen Vektorr¨aumen kann durch eine Matrix ⎛ ⎞ a11 . . . a1n ⎜ .. ⎟ ∈ Cm×n .. A = ⎝ ... . . ⎠ am1
. . . amn
repr¨asentiert werden. Die Menge aller Matrizen wollen wir nun vorab in unterschiedliche Klassen unterteilen. Definition 2.18 Zu einer gegebenen Matrix ⎛ ⎞ a11 . . . a1n ⎜ .. ⎟ ∈ Rn×n .. A = ⎝ ... . . ⎠ an1 . . . ann heißt
⎛
a11 ⎜ .. T A =⎝ . a1n
die zu A transponierte Matrix.
⎞ . . . an1 .. ⎟ ∈ Rn×n .. . . ⎠ . . . ann
2.2 Lineare Operatoren, Matrizen und Matrixnormen
17
Definition 2.19 Eine Matrix A ∈ Rn×n heißt (a) symmetrisch, falls AT = A gilt,
(b) orthogonal, falls AT A = I gilt. Definition 2.20 Zu gegebener Matrix ⎛ ⎞ a11 . . . a1n ⎜ .. ⎟ ∈ Cn×n .. A = ⎝ ... . . ⎠ an1 . . . ann heißt
⎛
a11 ⎜ .. ∗ A =⎝ . a1n
die zu A adjungierte Matrix.
⎞ . . . an1 .. ⎟ ∈ Cn×n .. . . ⎠ . . . ann
Definition 2.21 Eine Matrix A ∈ Cn×n heißt (a) hermitesch, falls A∗ = A gilt, (b) unit¨ar, falls A∗ A = I gilt, (c) normal, falls A∗ A = AA∗ gilt, (d) a¨hnlich zur Matrix B ∈ Cn×n , falls eine regul¨are Matrix C ∈ Cn×n mit B = C −1 AC existiert, (e) linke untere Dreiecksmatrix, falls aij = 0
∀j > i gilt,
(f) rechte obere Dreiecksmatrix, falls aij = 0
∀j < i gilt,
(g) Diagonalmatrix, falls aij = 0
∀j = i gilt.
Definition 2.22 Sei X = Rn beziehungsweise Cn . Eine Matrix A : X → X heißt (a) positiv semidefinit, falls (Ax,x)2 ≥ 0 f¨ ur alle x ∈ X gilt, ur alle x ∈ X\{0} gilt, (b) positiv definit, falls (Ax,x)2 > 0 f¨ (c) negativ semidefinit, falls −A positiv semidefinit ist, (d) negativ definit, falls −A positiv definit ist. Definition 2.23 Zwei Gleichungssysteme heißen ¨aquivalent, wenn ihre L¨osungsmengen identisch sind. Lemma 2.24 Sei P ∈ Cn×n regul¨ar und A ∈ Cn×n , dann sind die Gleichungssysteme Ax = y und P Ax = P y ¨aquivalent.
18
2 Grundlagen der linearen Algebra
Beweis: Aufgrund der Regularit¨ at der Matrix P folgt Px = 0
⇔
x = 0.
Damit erhalten wir die Behauptung direkt aus P (Ax − y) = 0
⇔
Ax − y = 0.
Lemma und Definition 2.25 Das lineare Gleichungssystem Ax = b mit A ∈ Cm×n (Rm×n ) ist genau dann l¨osbar, wenn rang(A) = rang(A,b) gilt, wobei rang(A) die Dimension des Bildes von A darstellt, das heißt rang(A) = dim bild(A) mit bild(A) = {y ∈ Cm (Rm ) | ∃ x ∈ Cn (Rn ) mit y = Ax } . Beweis: ⇒“ ” Sei Ax = b , dann gilt b ∈ bild(A) . Hiermit erhalten wir rang(A) = rang(A,b) . ⇐“ ” n Sei rang(A) = rang(A,b) , dann l¨ asst sich b in der Form b = i=1 xi ai mit xi ∈ C schreiben, wobei ai f¨ ur i = 1, . . . ,n die i -te Spalte der Matrix A darstellt. Hieraus ergibt sich direkt Ax = b mit x = (x1 , . . . ,xn )T .
∈ Cn×n linke untere und R,R ∈ Cn×n rechte obere DreiecksLemma 2.26 Seien L,L matrizen, dann sind und RR LL
ebenfalls linke untere beziehungsweise rechte obere Dreiecksmatrizen. Beweis: , dann folgt f¨ ur j > i Sei L = lij i,j=1,...,n = LL lij =
n
m=1
lim lmj =
j−1
n lim lim lmj + lmj = 0. m=1 m=j =0
=0
Analog ergibt sich die Behauptung f¨ ur die rechten oberen Dreiecksmatrizen. ∈ Rn×n (Cn×n ) orthogonale (unit¨are) Matrizen, dann ist Lemma 2.27 Seien Q,Q auch QQ
orthogonal (unit¨ar).
2.2 Lineare Operatoren, Matrizen und Matrixnormen
19
Beweis: Bei dem Beweis beschr¨ anken wir uns auf orthogonale Matrizen. Der Nachweis der Behauptung f¨ ur unit¨ are Matrizen verl¨ auft analog. Aufgrund der Orthogonalit¨at der Matri und Q folgt zen Q T = I. =Q T QT QQ =Q T IQ =Q TQ QQ QQ Dem folgenden Satz k¨ onnen wir eine zentrale Eigenschaft unit¨arer respektive orthogonaler Matrizen entnehmen. Satz 2.28 Sei Q ∈ Cn×n (Rn×n ) eine unit¨are (orthogonale) Matrix, dann gilt Qx2 = x2 f¨ ur alle x ∈ Cn×n Rn×n .
Beweis: Der Nachweis ergibt sich unter Ber¨ ucksichtigung von Q∗ Q = I direkt aus Qx22 = (Qx,Qx)2 = (x,Q∗ Qx)2 = (x,x)2 = x22 .
Orthogonale wie auch unit¨ are Matrizen repr¨ asentieren folglich bez¨ uglich der euklidischen Norm stets l¨angenerhaltende Abbildungen. Wie bereits zuvor erw¨ ahnt, kann eine Matrixnorm mittels einer vorliegenden Vektornorm definiert werden. Ist A ∈ Cn×n und .a : Cn → R eine Norm, dann bezeichnet man Aa := sup
xa =1
Axa
(2.2.2)
als die von der Vektornorm induzierte Matrixnorm. In diesem Sinne gilt f¨ ur A ∈ Cn×n : A1
=
A∞
=
A2
≤
max
n
k=1,...,n i=1
max
n
i=1,...,n k=1
n
i,k=1
|aik |
|aik | (Spaltensummennorm), |aik | (Zeilensummennorm), 2
12
= AF .
√ Hierbei wird .F : Cn×n → R als Frobeniusnorm bezeichnet. Wegen IF = n ist aus (2.2.2) sofort ersichtlich, dass die Frobeniusnorm keine induzierte Matrixnorm darstellt. Auch die durch A := maxi,k=1,...,n |aik | gegebene Norm besitzt keine zugeh¨orige Vektornorm. Einfache Beispiele zeigen, dass diese Norm nicht submultiplikativ ist. Es sei an dieser Stelle nochmals betont, dass wir uns bei den folgenden Betrachtungen, solange nicht ausdr¨ ucklich erw¨ ahnt, stets auf induzierte Matrixnormen beschr¨anken werden, obwohl einige Aussagen (zum Beispiel der Satz 2.29) allgemeine G¨ ultigkeit besitzen. Die einzige Ausnahme bildet die im Abschnitt 5.7 betrachtete Frobenius-Norm bei der Herleitung der unvollst¨ andigen Frobenius-Inversen.
20
2 Grundlagen der linearen Algebra
Satz 2.29 Eine Matrix A ∈ Cn×n ist in jeder Norm beschr¨ankt. Beweis: Sei x ∈ X beliebig, dann folgt
n aij xj = max |(Ax)i | = max i=1,...,n i=1,...,n j=1
Ax∞
≤
mit S =
max
n
i=1,...,n j=1
max
i=1,...,n
n j=1
|aij ||xj | ≤ Sx∞
¨ |aij | . Diese Aussage gilt durch die Aquivalenz der Normen (Satz
2.11) f¨ ur jede beliebige Norm. Folglich erhalten wir mit Satz 2.29 auch die Stetigkeit jeder Matrix A ∈ Cn×n .
Definition 2.30 Eine komplexe Zahl λ ∈ C heißt Eigenwert der Matrix A ∈ Cn×n , falls ein Vektor x ∈ Cn \ {0} mit Ax = λx
existiert. Der Vektor x heißt Eigenvektor zum Eigenwert λ . Die Menge
σ (A) = λ λ ist Eigenwert von A
wird als Spektrum von A bezeichnet. Die Zahl
heißt Spektralradius von A .
ρ(A) = max |λ| λ ∈ σ (A)
Die Eigenwerte λ ∈ σ (A) stellen wegen
(A − λI) x = 0 mit x ∈ Cn \ {0}
die Nullstellen des charakteristischen Polynoms p(λ) = det (A − λI) dar. Da jedes Polynom u ¨ ber C nach dem Fundamentalsatz der Algebra in Linearfaktoren n ur alle zerf¨allt, das heißt p(λ) = i=1 (λ − λi ) gilt, erhalten wir direkt σ (A) = ∅ f¨ n×n A∈C . Der folgende Satz von Schur stellt das wesentliche Hilfsmittel zum Nachweis des Satzes 2.36 dar, wodurch in Kombination mit Satz 2.35 ein direkter Zusammenhang zwischen einer Norm und dem Spektralradius einer Matrix vorliegt. Diese Aussagen werden sich sp¨ ater bei der Konvergenzanalyse von Splitting-Methoden als entscheidend erweisen.
Satz 2.31 Zu jeder Matrix A ∈ Cn×n (Rn×n mit σ (A) ⊂ R) existiert eine unit¨are (orthogonale) Matrix U ∈ Cn×n (Rn×n ) derart, dass U ∗ AU
eine rechte obere Dreiecksmatrix darstellt.
2.2 Lineare Operatoren, Matrizen und Matrixnormen
21
Beweis: Wir beschr¨anken uns beim Beweis der Behauptung zun¨achst auf den komplexen Fall. Der Beweis wird mittels einer vollst¨ andigen Induktion gef¨ uhrt. F¨ ur n = 1 erf¨ ullt U = I die Behauptung. Sei die Behauptung f¨ ur j = 1, . . . ,n erf¨ ullt, dann w¨ahle ein λ ∈ σ(A) mit zugeh¨origem 1 ∈ Cn+1 \{0} . Durch Erweiterung von v 1 = v 1 / Eigenvektor v v1 2 durch v 2 , . . . ,v n+1 zu einer Orthonormalbasis des Cn+1 ergibt sich mit C(n+1)×(n+1) ∋ V = (v 1 . . . v n+1 )
die Gleichung V ∗ AV e1 = V ∗ Av 1 = V ∗ λv 1 = λe1 , wobei e1 = (1,0, . . . ,0)T ∈ Cn+1 gilt. Hiermit folgt ⎞ ⎛ ˜T λ a ⎟ ⎜ 0 ⎟ ⎜ ∈ Cn×n und a ˜ ∈ Cn . V ∗ AV = ⎜ . ⎟ mit A A ⎠ ⎝ .. 0
existiert laut Induktionsvoraussetzung eine unit¨are Matrix W ! ∈ Cn×n derart, Zu A ∗ ! A W ! eine rechte obere Dreiecksmatrix darstellt. Mit W ! ist auch dass W ⎞ ⎛ 1 0 ··· 0 ⎟ ⎜ 0 ⎟ ⎜ W =⎜ . ⎟ ! W ⎠ ⎝ .. 0
unit¨ar und wir erhalten mit U := V W ∈ C(n+1)×(n+1) laut Lemma 2.27 eine unit¨are Matrix, f¨ ur die einfaches Nachrechnen zeigt, dass U ∗ AU eine rechte obere Dreicksmatrix darstellt. Im Fall einer regul¨ aren Matrix A ∈ R(n+1)×(n+1) erhalten wir wegen σ (A) ⊂ R zu 1 ∈ Cn+1 \ {0} zum Eigenwert λ ∈ R wegen v 1 = x 1 + i jedem Eigenvektor v y1 , n+1 1 , x y1 ∈ R aus y 1 = A v 1 = λ v 1 = λ x1 + iλ y1 A x1 + iA die Eigenschaft
A x1 = λ x1 sowie A y 1 = λ y1 , 1 ein Eigenvektor aus Rn+1 \{0} vorliegt. Unter Ber¨ 1 oder y ucksichtigung so dass mit x dieser Eigenschaft ergibt sich der Nachweis im Fall einer reellen Matrix analog zum obigen Vorgehen. Lemma 2.32 F¨ ur jede hermitesche Matrix A ∈ Cn×n gilt σ (A) ⊂ R . Beweis: Sei x ∈ Cn \ {0} Eigenvektor zum Eigenwert λ ∈ σ (A) . Dann folgt mit
22
2 Grundlagen der linearen Algebra
λ x2 = λ(x,x)2 = (λx,x)2 = (Ax,x)2 = (x,Ax)2 = (x,λx)2 = λ(x,x)2 = λ x2 ∈ R+ ∈ R+
direkt λ = λ und somit λ ∈ R .
Als direkte Folgerung des letzten Satzes erhalten wir die anschließende Aussage f¨ ur hermitesche und wegen Lemma 2.32 somit auch f¨ ur symmetrische Matrizen. Korollar 2.33 Sei A ∈ Cn×n (Rn×n ) hermitesch (symmetrisch), dann existiert eine unit¨are (orthogonale) Matrix U ∈ Cn×n (Rn×n ) , derart, dass U ∗ AU = diag{λ1 , . . . ,λn } ∈ Rn×n gilt. Hierbei stellt f¨ ur i = 1, . . . ,n jeweils λi ∈ R den Eigenwert der Matrix A mit der i -ten Spalte von U als zugeh¨origen Eigenvektor dar. Satz 2.34 Sei A ∈ Cn×n , dann gilt A2 =
" ρ(A∗ A).
(2.2.3)
Beweis: Da A∗ A hermitesch ist, existiert laut Korollar 2.33 eine unit¨are Matrix U ∈ Cn×n , so dass U ∗ A∗ AU = diag{λ1 , . . . ,λn } ∈ Rn×n gilt. Jedes x ∈ Cn l¨asst sich daher n unter Verwendung der Spalten u1 , . . . ,un der unit¨ aren Matrix U in der Form x = i=1 αi ui mit αi ∈ C darstellen und es gilt A∗ Ax =
n
λi αi ui .
i=1
Hiermit erhalten wir Ax22
= (Ax,Ax)2 = (x,A∗ Ax)2 n n n = αi ui , λi αi ui = (αi ui , λi αi ui )2 i=1
=
n i=1
i=1
i=1
λi |αi |2
≤ ρ (A∗ A) Hiermit erhalten wir
2
n i=1
(2.2.4) |αi |2 = ρ (A∗ A) x22 .
Ax22 ≤ ρ (A∗ A) . x22
Die Gleichheit ergibt sich durch Betrachtung des Eigenvektors uj zum betragsgr¨oßten Eigenwert λj . Mit (2.2.4) folgt 0 ≤ Aui 22 = λi , i = 1, . . . ,n
2.2 Lineare Operatoren, Matrizen und Matrixnormen
23
und somit erhalten wir Auj 22 λj uj 22 = λj = ρ (A∗ A) . 2 = uj 2 uj 22 Aufgrund der Eigenschaft (2.2.3) wird A2 auch als Spektralnorm der Matrix A bezeichnet. Die folgenden zwei S¨ atze sind von entscheidender Bedeutung f¨ ur die Konvergenzaussagen iterativer Verfahren, die auf einer Aufteilung der Matrix des Gleichungssystems beruhen. Satz 2.35 F¨ ur jede Matrix A ∈ C n×n gilt (a) ρ(A) ≤ A f¨ ur jede induzierte Matrixnorm, (b) A2 = ρ(A) , falls A hermitesch ist. Beweis: ur den Sei λ ∈ C der betragsgr¨ oßte Eigenwert von A zum Eigenvektor u ∈ Cn \ {0} f¨ o.B.d.A. u = 1 gilt. Dann folgt A = sup Ax ≥ Au = |λ|u = |λ|, x=1
womit sich direkt ρ(A) ≤ A ergibt.
Mit Korrollar 2.33 erhalten wir f¨ ur hermitesche Matrizen die Eigenschaft ρ(A2 ) = ρ(A)2 , so dass sich f¨ ur hermitesche Matrizen unter Verwendung des Satzes 2.34 " " A2 = ρ(A∗ A) = ρ(A2 ) = ρ(A)2 = ρ(A) ergibt.
Satz 2.36 Zu jeder Matrix A ∈ Cn×n und zu jedem ε > 0 existiert eine Norm auf Cn×n , so dass A ≤ ρ(A) + ε gilt. Beweis: F¨ ur n = 1 ist die Aussage ebenso trivial wie daher n ≥ 2 und A ungleich der Nullmatrix. einer unit¨aren Matrix U ∈ Cn×n mit ⎛ r11 ⎜ ∗ R = U AU = ⎝
f¨ ur jede Nullmatrix A ∈ Cn×n . Seien Der Satz von Schur liefert die Existenz ... .. .
⎞ r1n .. ⎟ , . ⎠ rnn
wobei λi = rii , i = 1, . . . ,n die Eigenwerte von A sind. Sei α := dann definieren wir zu gegebenem ε > 0
max
i,k=1,...,n
|rik | > 0 ,
24
2 Grundlagen der linearen Algebra δ := min 1,
Mit
⎛
⎛
⎜ ⎜ ⎜ ⎜ −1 C := D RD = ⎜ ⎜ ⎜ ⎝
> 0.
δ ..
. δ n−1
δr12 .. .
r11
⎟ ⎟ ⎟ ⎠
. . . . . . δn−1 r1n .. .. . . .. .. .. . . . .. . δrn−1,n rn,n
Unter Verwendung der Definition (2.2.5) folgt C∞
≤
(2.2.5)
⎞
1
⎜ ⎜ D=⎜ ⎝
erhalten wir
ε (n − 1)α
⎞
⎟ ⎟ ⎟ ⎟ ⎟. ⎟ ⎟ ⎠
max |rii | + (n − 1)δα
i=1,...,n
= ρ(A) + (n − 1)δα ≤ ρ(A) + ε.
(2.2.6)
Da D und U regul¨ are Matrizen darstellen, ist durch x := D−1 U −1 x∞
eine Norm auf Cn gegeben. Sei y := D−1 U −1 x , dann folgt mit (2.2.6) A = =
sup Ax =
x=1
sup y∞ =1
=
sup y∞ =1
sup D −1 U −1 x∞ =1
D−1 U −1 Ax∞
D−1 U −1 AU Dy∞ Cy∞
= C∞ ≤ ρ(A) + ε. Mit den obigen beiden S¨ atzen ergibt sich somit stets f¨ ur alle Matrizen A und alle ε > 0 die Existenz einer Norm derart, dass ρ(A) ≤ A ≤ ρ(A) + ε gilt. Hierdurch k¨onnen Konvergenzaussagen, die auf der Norm einer Matrix basieren und dabei unabh¨angig von der speziellen Wahl der Norm sind, direkt auf den Spektralradius der Matrix u ¨ bertragen werden. Betrachten wir nun normale Matrizen, so werden diese teilweise auch u ¨ ber ihre Diagonalisierbarkeit mittels einer unit¨ aren Matrix definiert [24]. Die M¨oglichkeit einer solchen Definition normaler Matrizen wird durch den folgenden Satz nachgewiesen, der uns im weiteren auch eine spezielle Darstellung der Konditionszahl solcher Matrizen erm¨oglicht.
2.3 Konditionszahl und singul¨ are Werte
25
Satz 2.37 Eine Matrix A ∈ Cn×n ist genau dann normal, wenn eine unit¨are Matrix U ∈ Cn×n existiert, so dass D = U ∗ AU eine Diagonalmatrix darstellt. Beweis: ⇒“ ” Mit Satz 2.31 existiert eine unit¨ are Matrix U derart, dass R = (rij )i,j=1,...,n = U ∗ AU eine rechte obere Dreiecksmatrix darstellt. Mit R∗ R = U ∗ A∗ U U ∗ AU = U ∗ A∗ AU = U ∗ AA∗ U = U ∗ AU U ∗ A∗ U = RR∗ ist R ebenfalls normal. F¨ ur die Diagonalelemente der Matrix B = (bij )i,j=1,...,n = R∗ R = RR∗ gilt i n |rji |2 = bii = |rij |2 . j=1
j=i
Eine sukzessive Auswertung dieser Gleichung f¨ ur i = 1, . . . ,n liefert rij = 0 f¨ ur alle i = j . Somit stellt D = R die gesuchte Diagonalmatrix dar. ⇐“ ” Sei U ∈ Cn×n unit¨ ar mit D = diag{d11 , . . . ,dnn } = U ∗ AU , dann folgt A∗ A = U D ∗ DU ∗ = U DD∗ U ∗ = AA∗ .
2.3
Konditionszahl und singul¨ are Werte
Neben dem Spektralradius stellt auch die Konditionszahl einer Matrix eine interessante Gr¨oße dar, mit der Fehlereinfl¨ usse wie auch Konvergenzgeschwindigkeiten iterativer Methoden abgesch¨ atzt werden k¨ onnen. Wir werden daher in diesem Abschnitt den Begriff der Konditionszahl einf¨ uhren und seine Bedeutung hinsichtlich der L¨osung linearer Gleichungssysteme studieren. Es wird sich dabei zeigen, dass sich die bez¨ uglich der Spektralnorm gebildete Konditionszahl einer normalen Matrix A ∈ Rn×n durch deren Eigenwerte darstellen l¨ asst. Im allgemeinen Fall einer regul¨aren Matrix muss hierzu ihre Singul¨arwertverteilung betrachtet werden. ar, dann heißt Definition 2.38 Sei A ∈ Cn×n regul¨ conda (A) := Aa A−1 a die Konditionszahl der Matrix A bez¨ uglich der induzierten Matrixnorm .a . Es ist leicht ersichtlich, dass die Konditionszahl einer regul¨aren Matrix unabh¨angig von der zugrundeliegenden induzierten Matrixnorm nach unten beschr¨ankt ist. Den mathematischen Nachweis hierzu liefert das folgende Lemma.
26
2 Grundlagen der linearen Algebra
Lemma 2.39 Sei A ∈ Cn×n regul¨ar, dann gilt cond(A) ≥ cond(I) = 1 f¨ ur cond(A) = A A−1 mit einer induzierten Matrixnorm . . Beweis: Der Nachweis ergibt sich direkt aus der folgenden Ungleichung cond(I) = II −1 = 1 = I = AA−1
Satz 2.17
≤
AA−1 = cond(A).
Die Relevanz der Konditionszahl hinsichtlich der iterativen L¨osung linearer Gleichungssysteme werden wir nun anhand zweier S¨ atze verdeutlichen. In praktischen Anwendungen ist es u blich, die Norm des Residuenvektors rm = b − Axm als Maß f¨ ur die G¨ ute der ¨ vorliegenden N¨aherungsl¨ osung innerhalb eines Iterationsverfahrens zu verwenden, da der Fehlervektor em = A−1 b−xm aufgrund der Unkenntnis u ¨ ber die wahre L¨osung nicht zur Verf¨ ugung steht. Ein Grund hierf¨ ur liegt in der Eigenschaft, dass das Residuum analog zum Fehler genau dann identisch verschwindet, wenn die Iterierte mit der exakten L¨osung u ur eine kleine Konditionszahl der Matrix des ¨ bereinstimmt. Es wird sich zeigen, dass f¨ linearen Gleichungssystems eine Konvergenzabsch¨atzung auf der Basis des Residuums sinnvoll ist. Liegt jedoch eine große Konditionszahl vor, so kann trotz Verringerung des Residuums eine deutlich anwachsende Fehlernorm vorliegen. Satz 2.40 Gegeben sei ein Iterationsverfahren zur L¨osung von Ax = b mit einer regul¨aren Matrix A . Es bezeichne ek = A−1 b − xk den Fehlervektor und r k = b − Axk den Residuenvektor des k-ten Iterationschritts, dann gilt 1 ek rk ek rk ≤ ≤ cond(A) ≤ cond(A)2 . cond(A) r0 e0 r0 e0
(2.3.1)
Beweis: Mit rk = b − A xk = A ek ≤ A ek und
ek = A−1 b − xk ≤ A−1 b − Axk = A−1 rk
ergibt sich der erste Teil der Behauptung aus rk r k 1 1 ek 1 1 Aek rk = ≤ ≤ . = −1 −1 cond(A) r0 A A r0 A e0 e0 A A r0 Die weiteren Ungleichungen folgen analog. Dem obigen Satz k¨ onnen wir entnehmen, dass im Fall einer orthogonalen Matrix A stets ek 2 rk 2 = e0 2 r0 2 gilt, wodurch eine direkte Konvergenzanalyse auf der Grundlage des Residuums durchgef¨ uhrt werden kann.
2.3 Konditionszahl und singul¨ are Werte
27
Messdaten aus physikalischen Experimenten weisen in nat¨ urlicher Weise Ungenauigkeiten auf. Die Auswirkung solcher oder anderer fehlerhafter Eingangsdaten auf die L¨osung k¨ onnen ebenfalls unter Verwendung der Konditionszahl der Matrix abgesch¨atzt werden. Auch hierbei erweist sich eine kleine Konditionszahl als vorteilhaft, da sich hier kleine relative Fehler in den Daten b auch nur als kleine relative Fehler in den L¨osungen x bemerkbar machen. Satz 2.41 Seien A regul¨ar, x die L¨osung des Gleichungssystems Ax = b und x+∆x die L¨osung von A(x + ∆x) = b + ∆b, dann gilt ∆x ∆b ≤ cond(A) . x b Beweis: Aufgrund der Linearit¨ at von A folgt ∆b = (b + ∆b) − b = A(x + ∆x) − Ax = A(∆x). Hiermit erhalten wir
∆x = A−1 (∆b) ≤ A−1 ∆b,
so dass mit b = Ax ≤ A x die behauptete Ungleichung mit ∆x A−1 ∆b ∆b ≤ = cond(A) x A−1 b b folgt. Liegt ein Gleichungssystem vor, bei dem die Matrix eine sehr große Konditionszahl besitzt, dann erweist es sich aufgrund der S¨ atze 2.40 und 2.41 als sinnvoll, zun¨achst eine = b ˜ mit cond(A) ≪ cond(A) vorUmformulierung auf ein ¨ aquivalentes System Ax zunehmen und anschließend ein Iterationsverfahren auf das transformierte System anzuwenden. Eine ¨aquivalente Umformulierung kann zum Beispiel durch Multiplikation mit einer regul¨aren Matrix P gem¨ aß Lemma 2.24 durchgef¨ uhrt werden. Hierbei stellt sich die Frage nach der Wahl der Matrix P . Die Matrix sollte aus Rechenzeitgr¨ unden einfach berechenbar sein und aus Effektivit¨ atsgr¨ unden eine m¨oglichst gute Approximation der Inversen der Matrix A repr¨ asentieren, so dass cond(P A) ≪ cond(A) gilt. Solche ¨aquivalenten Transformationen werden als Pr¨ akonditionierungen bezeichnet und ausf¨ uhrlich im Kapitel 5 untersucht. Es sei an dieser Stelle bereits erw¨ahnt, dass die Stabilisierung numerischer Verfahren zwar einen Grund zur Nutzung einer Pr¨akonditionierung darstellt, die wesentliche Zielsetzung derartiger Techniken allerdings in der Beschleunigung iterativer Verfahren liegt. Der folgende Abschnitt liefert eine Darstellung der durch die Spektralnorm gegebenen Konditionszahl einer regul¨ aren Matrix A mittels ihrer singul¨aren Werte beziehungsweise ihrer Eigenwerte. Die Konditionszahlen hinsichtlich der Zeilen- respektive Spaltensummennorm kann anschließend u ¨ber cond2 (A) abgesch¨atzt werden.
28
2 Grundlagen der linearen Algebra
Satz und Definition 2.42 F¨ ur jede regul¨are Matrix A ∈ Rn×n existieren orthogonale n×n Matrizen U ,V ∈ R derart, dass U T AV = diag{σ1 , . . . ,σn }
(2.3.2)
uhrten reellen Zahlen σi ( i = 1, . . . ,n ) heißen mit 0 < σ1 ≤ . . . ≤ σn gilt. Die aufgef¨ singul¨are Werte der Matrix A und gen¨ ugen jeweils der Gleichung det AT A − σi2 I = 0. (2.3.3) Die i -te Spalte von U bzw. V heißt i -ter Links- bzw. Rechtssingul¨arvektor der Matrix A.
Beweis: Da A regul¨ar ist, liegt mit AT A eine symmetrische, positiv definite Matrix vor. Somit existiert laut Korollar 2.33 eine orthogonale Matrix V ∈ Rn×n derart, dass V T AT AV = diag{λ1 , . . . ,λn } √ mit 0 0 gibt, so Konditionszahlen conda und condb ¨ dass α condb (A) ≤ conda (A) ≤ β condb (A) (2.3.6) f¨ ur alle regul¨aren A ∈ Rn×n gilt.
Als direkte Folgerung aus den Matrix- respektive Vektornorm¨aquivalenzen erhalten wir f¨ ur jede regul¨are Matrix A ∈ Rn×n die Ungleichungen 1 cond2 (A) ≤ cond1 (A) ≤ n cond2 (A), n 1 cond∞ (A) ≤ cond2 (A) ≤ n cond∞ (A) n
(2.3.7) (2.3.8)
und 1 cond1 (A) ≤ cond∞ (A) ≤ n2 cond1 (A). n2
2.4
(2.3.9)
Der Banachsche Fixpunktsatz
Viele Iterationsverfahren zur L¨ osung eines linearen Gleichungssystems Ax = b lassen sich in der Form
30
2 Grundlagen der linearen Algebra xn+1 = F (xn ) f¨ ur n = 0,1,2, . . .
(2.4.1)
schreiben, wobei F eine Abbildung der betrachteten Grundmenge in sich darstellt. Die durch die Vorgehensweise (2.4.1) gesuchte L¨ osung muss hierbei einen Fixpunkt der Abbildung F darstellen. Die Iterationsvorschrift (2.4.1) wird daher auch als Fixpunktiteration bezeichnet. F¨ ur diese Verfahrensklasse liefert der Banachsche Fixpunktsatz Aussagen zur Existenz und Eindeutigkeit eines Fixpunktes sowie eine a priori und eine a posteriori Fehlerabsch¨atzung. Zun¨ achst f¨ uhren wir die hierzu notwendigen Begriffe des Fixpunktes und der Kontraktionszahl ein. Definition 2.46 Ein Element x einer Menge D ⊂ X heißt Fixpunkt eines Operators F : D ⊂ X → X , falls F (x) = x gilt. Definition 2.47 Sei X ein normierter Raum. Ein Operator F :D⊂X→X heißt kontrahierend, wenn eine Zahl 0 ≤ q < 1 mit F (x) − F (y) ≤ q x − y ∀x,y ∈ D existiert. Die Zahl q heißt Kontraktionszahl des Operators F . Satz 2.48 Kontrahierende Operatoren sind stetig und besitzen h¨ochstens einen Fixpunkt. Beweis: Wir betrachten zun¨ achst die Stetigkeit des Operators. Seien X ein normierter Raum, F : D ⊂ X → X ein kontrahierender Operator und {xn }n∈N eine Folge aus D mit xn → x ∈ D f¨ ur n → ∞ , dann folgt mit 0 ≤ F (xn ) − F (x) ≤ q xn − x → 0 f¨ ur n → ∞ die Stetigkeit des Operators F . Seien x,y ∈ D Fixpunkte von F , dann erhalten wir x − y = F (x) − F (y) ≤ qx − y, so dass mit (1 − q) x − y ≤ 0 >0
≥0
die Gleichung x − y = 0 und somit x = y folgt.
Satz 2.49 (Banachscher Fixpunktsatz) Sei D eine vollst¨andige Teilmenge eines normierten Raumes X und F :D→D
2.4 Der Banachsche Fixpunktsatz
31
ein kontrahierender Operator, dann existiert genau ein Fixpunkt x ∈ D von F , und die durch xn+1 = F (xn ) f¨ ur n = 0,1,2 . . . gegebene Folge konvergiert f¨ ur jeden Startwert x0 ∈ D gegen x . Es gelten zudem die a priori Fehlerabsch¨atzung qn xn − x ≤ x1 − x0 1−q und die a posteriori Fehlerabsch¨atzung
xn − x ≤
q xn − xn−1 , 1−q
wobei q die Kontraktionszahl des Operators repr¨asentiert. Beweis: Mit x0 ∈ D ist xn+1 = F (xn ) , n = 0,1, . . . wegen F : D → D wohldefiniert. Es gilt xn+1 − xn ≤ q xn − xn−1 ≤ . . . ≤ q n x1 − x0 .
(2.4.2)
Sei m > n , dann folgt xn − xm
≤ (2.4.2)
xn − xn+1 + xn+1 − xn+2 + . . . + xm−1 − xm
≤
(q n + . . . + q m−1 )x1 − x0
≤
qn
=
qn x1 − x0 . 1−q
∞ i=0
q i x1 − x0 (2.4.3)
Wegen |q| < 1 erhalten wir xn − xm → 0 f¨ ur n → ∞, so dass mit {xn }n∈N eine Cauchy-Folge vorliegt. Aufgrund der Vollst¨andigkeit der Teilmenge D existiert ein x ∈ D mit xn → x , f¨ ur n → ∞ . Mit Satz 2.48 = F lim xn−1 = F (x) x = lim xn = lim F (xn−1 ) n→∞
n→∞
n→∞
ist x ein Fixpunkt von F , der nach Satz 2.48 eindeutig bestimmt ist. Aus der Gleichung (2.4.3) erhalten wir die a priori Fehlerabsch¨atzung xn − x = lim xn − xm m→∞
(2.4.3)
≤
qn x1 − x0 . 1−q
32
2 Grundlagen der linearen Algebra
Aus xn − x = F (xn−1 ) − F (xn ) + F (xn ) − F (x) ≤ F (xn−1 ) − F (xn ) + F (xn ) − F (x) ≤ qxn−1 − xn + qxn − x ergibt sich durch einfache Umformulierung die behauptete a posteriori Fehlerabsch¨atzung xn − x ≤
q xn−1 − xn . 1−q
Beispiel 2.50 Gesucht sei ein x ∈ R mit x = 1 − sin x . Wir betrachten mit D = [ε,1] , 0 < ε ≤ 1 − sin 1 < 1 , eine bez¨ uglich der Norm x = |x| vollst¨andige Teilmenge des R und haben mit f (x) = 1 − sin x eine beliebig oft stetig differenzierbare Funktion vorliegen, die zudem f : D → D und |f (x) − f (y)| ≤ q|x − y| mit der Kontraktionszahl q = max |f ′ (x)| = | cos ε| < 1 erf¨ ullt. Somit besitzt f (x) genau einen Fixpunkt x ∈ D x∈D
und die Iteration
xn+1 = f (xn ) konvergiert f¨ ur alle x0 ∈ D gegen x . Die folgende Skizze verdeutlicht geometrisch den Verlauf der Iteration f¨ ur x0 = 0.25 . y 1
g(x) = x f(x) = 1 - sin x
0.5
0.5
Bild 2.1
1
Iterationsverlauf f¨ ur f (x) = 1 − sin x mit x0 = 0.25 .
1.5
x
¨ 2.5 Ubungsaufgaben
2.5
33
¨ Ubungsaufgaben
Aufgabe 1: Gegeben sei ein lineares Gleichungssystem Ax = b (1). Zeigen Sie, dass die Operationen (a) Multiplikation einer Gleichung in (1) mit einer komplexen Zahl ( = 0) , (b) Vertauschen zweier Gleichungen in (1) (c) Addition der j -ten Gleichung aus (1) zur i -ten Gleichung in (1), stets ein zu (1) ¨aquivalentes Gleichungssystem liefern. Hinweis: Dr¨ ucken Sie alle obigen Operationen durch eine Matrixmultiplikation aus und nutzen Sie Lemma 2.24. Aufgabe 2: Sei A = (aij )i,j=1,...,n ∈ Rn×n eine symmetrische und positiv definite Matrix. Zeigen Sie: (a) aii > 0, i = 1, . . . ,n , (b)
max
i,j=1,...,n
|aij | = max |aii | . i=1,...,n
Aufgabe 3: Beweisen Sie die Aussage: Ist A ∈ Rn×n eine symmetrische, streng diagonal dominante Matrix mit positiven Diagonalelementen, dann ist A positiv definit. Aufgabe 4: Es sei A ∈ Cn×n . Zeigen Sie: Aj → 0, j → ∞ Aufgabe 5: Sei A =
⇐⇒
0.78 0.563 0.913 0.659
ρ(A) < 1.
.
Berechnen Sie cond∞ (A) = A∞ A−1 ∞ . Aufgabe 6: ar und U ∈ Cn×n unit¨ ar. Zeigen Sie: Sei A ∈ Cn×n regul¨ cond2 (AU ) = cond2 (A) = cond2 (U A). Aufgabe 7: (a) Es sei A =
1 2
100
0
1 4
gegeben. Bestimmen Sie ρ(A) , A∞ , A1 , AF . ur die Vektornormen .∞ , .1 , .2 (b) Skizzieren Sie die Einheitskugeln im R2 f¨ ¨ und bestimmen Sie die besten Aquivalenzkonstanten f¨ ur diese drei Normen im Rn .
34
2 Grundlagen der linearen Algebra
Aufgabe 8: Es sei X ein Banachraum und A : X → X ein Operator, dessen Potenz Am f¨ ur ein m ∈ N ein kontrahierender Operator ist. Beweisen Sie, dass genau ein Fixpunkt x von A existiert und dass die durch die Iterationsvorschrift xn
= Axn−1 , n = 1,2, . . .
x0
∈
X
beliebig
erzeugte Folge {xn }n∈N gegen x konvergiert. Aufgabe 9: Sei . eine beliebige induzierte Matrixnorm auf Cn×n . Zeigen Sie: Es gilt ρ(A) = lim Ak 1/k k→∞
f¨ ur alle A ∈ Cn×n . Aufgabe 10: Zeigen Sie, dass der Spektralradius keine Norm auf dem Rn×n definiert. Wie sieht es mit dem Raum Rn×n Symm der symmetrischen, reellen n × n -Matrizen aus? Aufgabe 11: Gegeben sei die Funktion f mit f (x) = 0.5 + sin x − 2x. (a) Man zeige, dass f genau eine Nullstellen besitzt. (b) Man berechne die Nullstelle von f mit Hilfe des Fixpunktverfahrens, wobei die Voraussetzungen des Banachschen Fixpunktsatzes jeweils zu u ufen sind. ¨berpr¨ (c) F¨ ur die berechnete N¨ aherung x5 f¨ uhre man eine a priori und eine a posteriori Fehlerabsch¨atzung durch. Hinweis: Eine einfache Funktionsabtastung zeigt, dass sich die Nullstelle im Intervall [0.4, 0.5] befindet. Aufgabe 12: Gegeben sei die Funktion f mit f (x) =
x − 2 − 3 ln x. 4
(a) Man zeige, dass f genau zwei Nullstellen besitzt. (b) Man berechne die beiden Nullstellen von f mit Hilfe des Fixpunktverfahrens, wobei die Voraussetzungen des Banachschen Fixpunktsatzes jeweils zu u ufen sind. ¨ berpr¨ (c) F¨ ur die berechnete N¨ aherung x5 f¨ uhre man jeweils eine a priori und eine a posteriori Fehlerabsch¨ atzung durch.
¨ 2.5 Ubungsaufgaben
35
Hinweis: Eine einfache Funktionsabtastung zeigt, dass sich die Nullstellen im Intervall [0.5, 0.6] sowie im Intervall [56, 57] befinden. Aufgabe 13: Susanne und Frank machen ein Physik-Experiment. Sie versuchen die Parameter x1 und x2 zu bestimmen und kennen die funktionale Beziehung
6 3 1 2
x=
a 1
.
Die beiden f¨ uhren einen Versuch durch und messen a = 1 . Als erfahrene Experimentatoren wissen Sie, dass in Experimenten immer Fehler auftauchen, haben jedoch keine Zeit, den Versuch zu wiederholen. Sch¨atzen Sie f¨ ur Susanne und Frank in Abh¨ angigkeit vom unbekannten Messfehler ǫ den relativen Fehler ∆x/x in der ∞ -Norm nach oben ab. Aufgabe 14: Berechnen Sie die Kondition der 3 × 3 Hilbert-Matrix ⎞ ⎛ 1 1/2 1/3 A = ⎝ 1/2 1/3 1/4 ⎠ 1/3 1/4 1/5
in der ∞ - und der 1 -Norm. Wenn Sie wollen, u ufen Sie ihr Ergebnis mit MATLAB. ¨berpr¨ Nutzen Sie hierzu die Befehle cond(A,1) bzw. cond(A,inf) f¨ ur die Konditionszahlen. Eine n × n Hilbert-Matrix wird mittels hilb(n) erzeugt. Aufgabe 15: Gesucht sind die L¨ osungen des nichtlinearen Gleichungssystems x2 + y 2 + y2
1 2 16 x
= 4, = 1.
(a) Fertigen Sie eine Skizze an, die die Lage der L¨osungen verdeutlicht. Bestimmen Sie f¨ ur den 1 . Quadranten einen guten ganzzahligen Startwert (x0 ,y0 ) . (b) Gesucht ist die L¨ osung im ersten Quadranten. Geben Sie eine geeignete Fixpunktgleichung an und weisen Sie hierf¨ ur die Voraussetzungen des Fixpunktsatzes von Banach nach.
36
3
Direkte Verfahren
Unter einem direkten Verfahren zur L¨ osung eines linearen Gleichungssystems versteht man eine Rechenvorschrift, die unter Vernachl¨ assigung von Rundungsfehlern die exakte L¨osung in endlich vielen Schritten ermittelt. Direkte Verfahren werden heutzutage nur selten zur unmittelbaren L¨ osung großer linearer Gleichungssysteme verwendet. Sie werden jedoch h¨aufig in einer unvollst¨ andigen Form als Vorkonditionierer innerhalb iterativer Methoden genutzt und zur L¨ osung von Subproblemen eingesetzt.
3.1
Gauß-Elimination
Die Grundidee des Gaußschen Eliminationsverfahrens liegt in einer sukzessiven Transformation des Systems Ax = b in ein a ¨quivalentes System der Form LRx = b mit einer rechten oberen Dreiecksmatrix R und einer linken unteren Dreiecksmatrix L , das durch einfaches Vorw¨ arts- und anschließendes R¨ uckw¨artseinsetzen gel¨ost werden ˜= kann. Hierbei wird in der u blichen Formulierung des Verfahrens die Multiplikation b ¨ L−1 b simultan mit der Berechnung der Matrix R durchgef¨ uhrt. Wir bezeichnen im Folgenden mit ⎞ ⎛ 1 ⎟ ⎜ .. ⎟ ⎜ . ⎟ ⎜ ⎟ ⎜ 1 ⎟ ⎜ ⎟ ← k-te Zeile ⎜ 0 . . . . . . . . . 1 ⎟ ⎜ ⎟ ⎜ .. .. ⎟ ⎜ . 1 . ⎟ ⎜ ⎟ ⎜ .. .. .. P kj = ⎜ (3.1.1) ⎟ . . . ⎟ ⎜ ⎟ ⎜ . . .. ⎟ ⎜ 1 .. ⎟ ⎜ ⎟ ← j-te Zeile ⎜ 1 ... ... ... 0 ⎟ ⎜ ⎟ ⎜ 1 ⎟ ⎜ ⎟ ⎜ .. ⎠ ⎝ . 1 stets eine Permutationsmatrix, die aus der Einheitsmatrix I durch Vertauschung der j ten mit der k -ten Zeile (j ≥ k) hervorgegangen ist. F¨ ur k = j gilt hierbei P kj = I . Wir werden im Weiteren die Matrix L durch eine multiplikative Verkn¨ upfung von Matrizen der Form A. Meister, Numerik linearer Gleichungssysteme, DOI 10.1007/978-3-8348-8100-7_3, © Vieweg+Teubner Verlag |Springer Fachmedien Wiesbaden GmbH 2011
3.1 Gauß-Elimination
37 ⎛
⎜ ⎜ ⎜ ⎜ ⎜ Lk = ⎜ ⎜ ⎜ ⎜ ⎝
⎞
1 ..
. 1 −ℓk+1,k .. .
..
. ..
−ℓn,k
. 1
⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠
(3.1.2)
darstellen. Derartige Matrizen, die sich h¨ ochstens in einer Spalte von der Einheitsmatrix unterscheiden, werden als Frobeniusmatrizen bezeichnet. Definition 3.1 Die Zerlegung einer Matrix A ∈ Rn×n in ein Produkt A = LR aus einer linken unteren Dreiecksmatrix L ∈ Rn×n und einer rechten oberen Dreiecksmatrix R ∈ Rn×n heißt LR-Zerlegung. In der Literatur wird die LR-Zerlegung auch oft als LU-Zerlegung (lower, upper) bezeichnet. Speziell bei unvollst¨ andigen Zerlegungen, wie sie im Kapitel 5 beschrieben werden, ist der Begriff der unvollst¨ andigen LU-Zerlegung anstelle der unvollst¨andigen LR-Zerlegung g¨angig. Mit Hilfe der Matrizen (3.1.1) und (3.1.2) l¨ asst sich der zentrale Teil des Gaußschen Eliminationsverfahrens wie folgt formulieren: Algorithmus Gauß-Elimination I — A(1) := A F¨ ur k = 1, . . . ,n − 1 (k)
W¨ahle aus der k -ten Spalte von A(k) ein beliebiges Element ajk = 0 mit j ≥ k . Definiere P kj mit obigem j und k gem¨ aß (3.1.1). (k) := P kj A(k) A
(k)
(k)
Definiere Lk gem¨ aß (3.1.2) mit lik = aik / akk , i = k + 1, . . . ,n . (k) A(k+1) := Lk A
38
3 Direkte Verfahren
Mit A(n) liegt hierdurch die rechte obere Dreiecksmatrix R vor, die wie bereits beschrieben zur einfachen L¨ osung des linearen Gleichungssystems verwendet wird. Allgemein enth¨alt A(i) durch die spezielle Konstruktion der Matrizen Lk , k = 1, . . . ,i − 1 bis einschließlich zur ( i − 1 )-ten Spalte unterhalb der Diagonalen ausschließlich Nullelemente. Wir wenden uns jetzt der Frage nach der Existenz und Eindeutigkeit von LR-Zerlegungen zu. Einfache Beispiele wie die Matrix 0 1 A= 1 1 zeigen, dass nicht jede regul¨ are Matrix notwendigerweise eine LR-Zerlegung besitzt. Analog ist auch der Nachweis der Eindeutigkeit der LR-Zerlegungen nur unter einer zus¨atzlichen Bedingung an eine der beiden Dreiecksmatrizen m¨oglich. Bevor wir uns mit den eigentlichen Existenz- und Eindeutigkeitsaussagen besch¨aftigen, ist es sinnvoll, zun¨achst die Begriffe der Hauptabschnittsmatrix und -determinante einzuf¨ uhren und einige hilfreiche Lemmata zu beweisen. Definition 3.2 Sei A ∈ Rn×n gegeben, dann heißt ⎛ ⎞ a11 . . . a1k ⎜ ⎟ ⎜ .. ⎟ ∈ Rk×k f¨ .. ur k ∈ {1, . . . ,n} A[k] := ⎜ ... . . ⎟ ⎝ ⎠ ak1
. . . akk
die f¨ uhrende k × k -Hauptabschnittsmatrix von A und det A[k] die f¨ uhrende k × k Hauptabschnittsdeterminante von A .
Lemma 3.3 Seien ℓi = (0, . . . ,0,ℓi+1,i , . . . ,ℓn,i )T ∈ Rn und ei ∈ Rn der i -te Einheitsvektor, dann gilt f¨ ur Li = I − ℓi eTi ∈ Rn×n (a) L−1 = I + ℓi eTi , i −1 −1 (b) L−1 1 L2 . . . L k = I +
k
i=1
ℓi eTi f¨ ur k = 1, . . . ,n − 1 .
Beweis: Zu (a) : Da Li eine untere Dreiecksmatrix mit Einheitsdiagonale darstellt, existiert genau eine −1 Matrix L−1 mit L−1 = I . Hieraus folgt die Behauptung (a) durch i i Li = Li Li (I − ℓi eTi )(I + ℓi eTi ) = I − ℓi eTi + ℓi eTi − ℓi eTi ℓi eTi = I. =0 =0
Zu (b) : Wir f¨ uhren den Beweis durch Induktion u ur k = 1 liefert (a) die Behauptung. ¨ ber k . F¨ Gelte die Aussage f¨ ur j = 1, . . . ,k < n − 1 , dann folgt
3.1 Gauß-Elimination
39
−1 −1 L−1 1 . . . Lk Lk+1
=
k I+ ℓi eTi I + ℓk+1 eTk+1 i=1
= I + ℓk+1 eTk+1 + = I+
k+1 i=1
k
i=1
ℓi eTi +
k
i=1
ℓi eTi .
ℓi eTi ℓk+1 eTk+1 =0
Lemma 3.4 Sei L ∈ Rn×n eine regul¨are linke untere Dreiecksmatrix, dann stellt auch L−1 ∈ Rn×n eine linke untere Dreiecksmatrix dar. F¨ ur regul¨are rechte obere Dreiecksmatrizen R ∈ Rn×n gilt die analoge Aussage. Beweis: Definieren wir D = diag {ℓ11 , . . . ,ℓnn } mittels der Diagonaleintr¨age der Matrix L , dann gilt det D = 0 und := D−1 L L stellt laut Lemma 2.26 ebenfalls eine untere Dreiecksmatrix dar, die zudem eine Einheitsn−1 ˜ die Form L = I + ˜ℓi eT mit diagonale besitzt. Somit hat L i i=1
˜ℓi = (0, . . . ,0,ℓ˜i+1,i , . . . ,ℓ˜n,i )T
i = I + ˜ℓi eT ( i = 1, . . . ,n − 1 ) als ein und kann unter Verwendung der Matrizen L i Produkt =L 1 · . . . · L n−1 L
−1 = L −1 −1 mit L −1 dargestellt werden. F¨ ur die Inverse ergibt sich L = I − ˜ℓi eTi n−1 ·. . .· L1 i −1 ( i = 1, . . . ,n−1 ) laut Lemma 3.3. Die Matrix L l¨asst sich folglich als Produkt unterer −1 −1 −1 · . . . · L schreiben und stellt somit Dreiecksmatrizen in der Form L−1 = L n−1 1 D nach Lemma 2.26 ebenfalls eine linke untere Dreiecksmatrix dar.
Mit RT (R−1 )T = (R−1 R)T = I = RT (RT )−1 folgt (RT )−1 = (R−1 )T . Unter Verwendung des obigen Beweisteils stellt mit L = RT auch L−1 = (RT )−1 eine linke T untere Dreiecksmatrix dar, wodurch R−1 = (RT )−1 eine rechte obere Dreiecksmatrix repr¨asentiert. Lemma 3.5 Sei A = (aij )i,j=1,...,n ∈ Rn×n und sei L = (ℓij )i,j=1,...,n ∈ Rn×n eine untere Dreiecksmatrix, dann gilt (LA) [k] = L[k]A[k] f¨ ur k = 1, . . . ,n. Beweis: Sei k ∈ {1, . . . ,n} . F¨ ur i,j ∈ {1, . . . ,k} folgt mit ℓim = 0 f¨ ur m > k ≥ i ((LA)[k])ij =
n
m=1
ℓim amj =
k
m=1
ℓim amj +
n
ℓim amj =
m=k+1
k
m=1
ℓim amj = (L[k]A[k])ij .
40
3 Direkte Verfahren
Satz 3.6 (Existenz einer LR -Zerlegung I) Sei A ∈ Rn×n eine regul¨are Matrix, dann existiert eine Permutationsmatrix P ∈ Rn×n derart, dass P A eine LR-Zerlegung besitzt. Beweis: F¨ ur alle im Algorithmus I berechneten Matrizen A(k) gilt (k)
ur aiℓ = 0 f¨
ℓ = 1, . . . ,k − 1, i > ℓ.
(3.1.3)
ur alle ℓ = 1, . . . ,k − 1 , jℓ ≥ ℓ gilt, folgt Da det Lℓ = 0 = det P ℓ,jℓ f¨ det A(k) = det Lk−1 P k−1,jk−1 . . . L1 P 1,j1 A = 0. (k)
Somit existiert ein i ∈ {k, . . . ,n} mit aik = 0 und der Algorithmus I bricht nicht vor der Berechnung von A(n) ab. Zudem stellt R := A(n) = Ln−1 P n−1,jn−1 . . . L1 P 1,j1 A
(3.1.4)
mit (3.1.3) eine obere Dreiecksmatrix dar. Alle Li lassen sich hierbei in der Form Li = I − ℓi eTi , ℓi = (0, . . . ,0,ℓi+1,i , . . . ,ℓn,i )T schreiben, und es gilt P k,jk ei = ei sowie P k,jk ℓi = ˆℓi = (0, . . . ,0,ℓˆi+1,i , . . . ,ℓˆn,i )T f¨ ur alle i < k ≤ jk . ucksichtigung von P k,jk = P Tk,jk die Gleichung F¨ ur i < k ≤ jk folgt hiermit unter Ber¨ P k,jk Li
= P k,jk (I − ℓi eTi ) = P k,jk − ˆℓi eTi
# i P k,j = P k,jk − ˆℓi (P k,jk ei )T = P k,jk − ˆℓi eTi P k,jk = L k
# i = I − ˆℓi eT . Die Verwendung der Gleichung (3.1.4) mit einer unteren Dreiecksmatrix L i liefert # 1 P n−1,jn−1 . . . P 1,j1 A # n−2 . . . L R = Ln−1 L e L:=
P :=
eine untere Dreiecksmatrix darstellt, folgt mit mit einer Permutationsmatrix P . Da L Lemma 3.4, dass −1 L := L eine untere Dreiecksmatrix repr¨ asentiert und es ergibt sich die behauptete Darstellung LR = P A.
Satz 3.7 (Existenz einer LR -Zerlegung II) Sei A ∈ Rn×n regul¨ar, dann besitzt A genau dann eine LR-Zerlegung, wenn det A[k] = 0 gilt.
∀k = 1, . . . ,n
3.1 Gauß-Elimination
41
Beweis: ⇒ “: Gelte A = LR . ” Aufgrund der Regularit¨ at der Matrix A liefert der Determinantenmultiplikationssatz det L[n] · det R[n] = det A[n] = 0 und folglich det L[n] = 0 = det R[n]. Da L und R Dreiecksmatrizen repr¨ asentieren, folgt hierdurch det L[k] = 0 = det R[k] f¨ ur k = 1, . . . ,n und es ergibt sich mit Lemma 3.5 det A[k] = det(LR)[k] = det L[k] · det R[k] = 0. ⇐ “: Gelte det A[k] = 0 f¨ ur alle k = 1, . . . ,n . ” A besitzt eine LR-Zerlegung, falls Algorithmus I mit P kk = I , k = 1, . . . ,n − 1 durch(k) ur k = 1, . . . ,n − 1 gilt. gef¨ uhrt werden kann, das heißt, wenn akk = 0 f¨ (1)
F¨ ur k = 1 gilt a11 = det A[k] = 0 , wodurch P 11 = I w¨ahlbar ist. (k)
Sei akk = 0 f¨ ur k < n − 1 , dann folgt A(k+1) = Lk . . . L1 A, und wir erhalten wiederum mit Lemma 3.5 det A(k+1) [k + 1] = det Lk [k + 1] · . . . · det L1 [k + 1] · det A[k + 1] = 0. Da A(k+1) [k + 1] eine obere Dreiecksmatrix darstellt, folgt (k+1)
ak+1,k+1 = 0.
Satz 3.8 (Eindeutigkeit der LR -Zerlegung) Sei A ∈ Rn×n regul¨ar mit det A[k] = 0 f¨ ur k = 1, . . . ,n , dann existiert genau eine LR-Zerlegung von A derart, dass L eine Einheitsdiagonale besitzt. Beweis: Mit Satz 3.7 existiert mindestens eine LR-Zerlegung der Matrix A . Seien zwei LRZerlegungen der Matrix A durch L1 R1 = A = L2 R2 gegeben, wobei L1 und L2 Einheitsdiagonalen besitzen, dann folgt −1 R2 R−1 1 = L2 L 1 .
Mit Lemma 2.26 und Lemma 3.4 ist somit L−1 2 L1 zugleich eine linke untere und rechte obere Dreiecksmatrix, die eine Einheitsdiagonale besitzt. Folglich gilt L−1 2 L1 = I
42
3 Direkte Verfahren
und wir erhalten L1 = L2 und R1 = R2 .
Bemerkung: Ohne die Forderung, dass L eine Einheitsdiagonale besitzt, folgt L1 = L2 D, R1 = D−1 R2 mit einer regul¨aren Diagonalmatrix D . Somit sind LR-Zerlegungen durch Multiplikation mit einer Diagonalmatrix ineinander u uhrbar. ¨berf¨ Zur L¨osung des linearen Gleichungssystems Ax = b ergibt sich die folgende explizite Form des Gauß-Algorithmus. Algorithmus Gauß-Elimination ohne Pivotisierung — F¨ ur k = 1, . . . ,n − 1 F¨ ur i = k + 1, . . . ,n aik := aik /akk F¨ ur j = k + 1, . . . ,n aij := aij − aik akj F¨ ur k = 2, . . . ,n F¨ ur i = 1, . . . ,k − 1 bk := bk − aki bi F¨ ur k = n, . . . ,1 F¨ ur i = k + 1, . . . ,n bk := bk − aki xi xk := bk /akk
⎫ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎬
Berechnung der
⎪ LR-Zerlegung ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎭ ⎫ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎬ Vorw¨artselimination
⎪ b := L−1 b ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎭ ⎫ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎬ R¨ uckw¨artselimination ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎭
x := R−1 b
Zur Analyse des Rechenaufwandes betrachten wir lediglich die zeitaufwendigen Multiplikationen und Divisionen:
3.1 Gauß-Elimination # Divisionen
43 =
n−1 k=1
# Multiplikationen =
n−1 k=1
=
(n − k)2 +
n−1 i=1
=
(n − k) + n =
n−1
i+n=
i=1
n
i=
i=1
n(n + 1) 2
n(n − 1) n(n − 1) + 2 2
i2 + n(n − 1) =
(n − 1)n(2n − 1) + n(n − 1) 6
n 3 n2 5n + − . 3 2 6
Hiermit erhalten wir # Division + # Multiplikation =
n3 n + n2 − . 3 3
Betr¨agt die Rechenzeit f¨ ur eine Multiplikation bzw. Division 1μ sec = 10−6 sec, dann ben¨otigt der Gauß-Algorithmus f¨ ur eine reelle n × n Matrix A die in der folgenden Tabelle aufgef¨ uhrten Rechenzeiten: n 103
Tabelle 3.1
10
4
10
5
Zeit ≈ 5 min 30 sec ≈ 4 Tage
≈ 10 Jahre 7 Monate
Rechenzeiten des Gaußschen Eliminationsverfahrens
Gleichungssysteme mit einer Anzahl von 105 Unbekannten treten bereits bei impliziten Finite-Volumen- und Finite-Differenzen-Verfahren f¨ ur die zweidimensionalen EulerGleichungen der Gasdynamik auf, wenn mit 25000 Kontrollvolumina respektive Gitterpunkten eine durchaus g¨ angige Diskretisierung des Str¨omungsgebietes vorliegt. Bei solchen Anwendungsf¨ allen erweist sich der Gauß-Algorithmus auch bei Vernachl¨assigung der Rundungsfehler und des immensen Speicherplatzbedarfs bereits aus Rechenzeitgr¨ unden als unpraktikabel. Betrachten wir hingegen Gleichungssysteme mit einer kleinen Anzahl von Unbekannten, so liegt mit dem Gaußschen Eliminationsverfahren eine direkte Methode vor, die h¨aufig den iterativen Algorithmen u ¨ berlegen ist. Mit dem folgenden Beispiel sollen die Vorteile einer Pivotisierung im Hinblick auf die Genauigkeit des ermittelten L¨osungsvektors verdeutlicht werden. Beispiel 3.9 Sei ε ≪ 1 derart, dass bei Maschinengenauigkeit 1 ± ε = 1 respektive 1 ±
1 1 =± ε ε
gilt. Wir betrachten das Gleichungssystem Ax = b in der Form εx1 x1 das die exakten L¨ osung
+ 2x2 + x2
=1 = 1,
44
3 Direkte Verfahren x1 =
1 1−ε ≈ 0.5, x2 = ≈ 0.5 2−ε 2−ε
besitzt. Mit dem Gaußschen Eliminationsverfahren erhalten wir εx1 + 2x2 2 1− x2 ε
= 1 = 1−
1 ε
1 ε und damit aufgrund der vorliegenden Rechengenauigkeit x2 = · = 0.5 . Einsetzen in ε 2 die erste Gleichung liefert εx1 + 1 = 1 , wodurch x1 = 0 folgt. Eine vorherige Zeilenvertauschung f¨ uhrt dagegen zum Gleichungssystem x1
+
εx1
x2
= 1
+ 2x2
= 1.
Hieraus folgt mit dem Gaußschen Eliminationsverfahren: x1
+
x2 (2 − ε)x2
= 1 = 1 − ε,
so dass wir x2 = 0.5 und x1 = 1 − x2 = 0.5 als L¨osung erhalten. Anhand des vorliegenden Gleichungssystems wollen wir die Vorteile der Pivotisierung n¨aher untersuchen. Betrachten wir zun¨ achst das Gaußsche Eliminationsverfahren ohne Pivotisierung. Das (1) Element a11 = ε der Matrix ⎞ ⎛ (1) (1) a11 a12 ε 2 ⎠ ⎝ = A= (1) (1) 1 1 a a 21
22
(1)
ist deutlich kleiner als a21 = 1 . Hierdurch wird im Algorithmus ein sehr großer Quotient (1) a21 (1) a11
=
1 ε
(1)
gebildet. Da auch die weiteren Matrixelemente in der Gr¨oßenordnung von a21
liegen, erhalten wir (2)
a22 =
(1)
a22
=O(1) f¨ ur ε→0
(1) (1)
−
a12 a21 (1)
a11
=1−
2 =O ε
1 f¨ ur ε → 0. ε
=O( ε1 ) f¨ ur ε→0
Innerhalb der Matrix A(2) weisen somit alle verbleibenden Nichtnullelemente eine deutlich unterschiedliche Quantit¨ at auf. Analog ergibt sich O(1) 1 = f¨ ur ε → 0. b= O 1ε 1 − 1ε (1)
Liegt ein sehr kleiner Matrixkoeffizient a11 = ε vor, so f¨ uhrt die Maschinengenauigkeit (2) (1) (2) zu a22 = − 2ε und b2 = − ε1 . Folglich haben im vorliegenden Fall die Werte a22 (1) und b2 keinen Einfluss auf die L¨ osung des Gleichungssystems. Die zweite Gleichung ist deshalb f¨ ur hinreichend kleines ε = 0 numerisch ¨aquivalent zur ersten Gleichung f¨ ur ε = 0 . Daher erhalten wir stets das Endergebnis
3.1 Gauß-Elimination
45 (1)
x2 =
b1
(1)
a12
und x1 = 0. (1)
Durch die vorgestellte Zeilenvertauschung liegt ein kleiner Quotient (2)
e a21
(1) e a11
= ε vor, wo-
durch sich alle relevanten Elemente der Matrix A in der gleichen Gr¨oßenordnung befinden. Folglich ergeben sich keine Probleme aufgrund der vorliegenden Rechengenauigkeit. Bei Verwendung einer Pivotisierung auf der Basis des gr¨oßten Zeilen- oder Spaltenelementes liegt der Quotient stets im Intervall [−1,1] , wogegen bei einer direkten Nutzung des Gaußschen Eliminationsverfahrens keine allgemeing¨ ultige Schranke f¨ ur den Quotienten angegeben werden kann. (k)
Die Permutation von Zeilen oder Spalten erweist sich somit nicht nur im Fall akk = 0 als sinnvoll. Wir unterscheiden drei Pivotisierungsarten: (a) Spaltenpivotisierung: Definiere P kj gem¨ aß (3.1.1) mit (k)
j = index max |ajk | j=k,...,n
und betrachte das zu
A(k) x = b
¨aquivalente System
P kj A(k) x = P kj b.
(b) Zeilenpivotisierung: aß (3.1.1) mit Definiere P kj gem¨ (k)
j = index max |akj | j=k,...,n
und betrachte das System A(k) P kj y = b x = P kj y. (c) Vollst¨andige Pivotisierung: Definiere P k,j1 und P k,j2 gem¨ aß (3.1.1) mit (k) max |aji | , j1 = index max j=k,...,n
j2 = index max
j=k,...,n
i=k,...,n
max
i=k,...,n
(k) |aij |
und betrachte das System P k,j1 A(k) P k,j2 y = P k,j1 b x = P k,j2 y.
46
3 Direkte Verfahren
Bemerkung: Wird das Gaußsche Eliminationsverfahren auf ein Gleichungssystem Ax = b mit einer singul¨aren Matrix bei vollst¨ andiger Pivotisierung angewendet, so existiert ein k ≤ n mit (k) max |aij | = 0. i,j=k,...,n
In diesem Fall ist das System mit Lemma 2.25 genau dann l¨osbar, wenn sich bei Durchf¨ uhrung aller Multiplikationen mit Li und P i,ji , i = 1, . . . ,k − 1 angewandt auf die erweiterte Koeffizientenmatrix (A(1) ,b(1) ) = (A,b) die Form
(k)
(k)
(A(k) ,b(k) ) mit b(k) = (b1 , . . . ,bk−1 ,0, . . . 0)T
ergeben hat.
3.2
Cholesky-Zerlegung
F¨ ur symmetrische, positiv definite Matrizen kann der beim Gaußschen Eliminationsverfahren ben¨otigte Aufwand zur Berechnung einer LR-Zerlegung verringert werden. Definition 3.10 Die Zerlegung einer Matrix A ∈ Rn×n in ein Produkt A = LLT mit einer linken unteren Dreiecksmatrix L ∈ Rn×n heißt Cholesky-Zerlegung.
Satz 3.11 (Existenz und Eindeutigkeit der Cholesky-Zerlegung) Zu jeder symmetrischen, positiv definiten Matrix A ∈ Rn×n existiert genau eine linke untere Dreiecksmatrix L ∈ Rn×n mit ℓii > 0, i = 1, . . . ,n derart, dass A = LLT gilt. Beweis: Sei x ∈ Rk \ {0} , k < n , dann definieren wir y = (x,0, . . . ,0)T ∈ Rn \ {0} . Somit folgt xT A[k]x = y T Ay > 0, so dass alle A[k] f¨ ur k = 1, . . . ,n positiv definit sind. Eine Induktion u ur n = 1 gilt A = (a11 ) > 0 , ¨ber n liefert nun die Behauptung: F¨ √ wodurch ℓ11 := a11 > 0 die Darstellung A = LLT mit L = (ℓ11 ) liefert. Sei die Behauptung f¨ ur n = 1, . . . ,j erf¨ ullt, dann folgt f¨ ur n = j + 1 A[j] c A= , cT ann
3.2 Cholesky-Zerlegung
47
wobei A[j] positiv definit ist. Somit existiert genau eine linke untere Dreiecksmatrix Lj ∈ Rj×j mit ℓii > 0 , i = 1, . . . ,j und A[j] = Lj LTj . Wir machen nun den Ansatz Ln :=
Lj
0
dT
α
(3.2.1)
mit d ∈ Rj , α ∈ R derart, dass A[j] Lj d A[j] c T = A[n] = Ln Ln = ann cT dT LTj dT d + α2 gelten soll. Wegen 0 = det A[j] = (det Lj )2 ist Lj invertierbar und damit d = L−1 j c T 2 eindeutig bestimmt. Weiter gilt α = ann − d d. Aufgrund der positiven Definitheit von A = A[n] gilt det A[n] > 0 , so dass sich 0< ergibt. Damit erhalten wir α=
det(A[n]) = α2 (det(Lj ))2
"
ann − dT d ∈ R+ ,
wodurch mit (3.2.1) die gesuchte Matrix vorliegt. Wir nehmen eine spaltenweise Berechnung der Matrixkoeffizienten vor. Bei der Herleitung des Algorithmus gehen wir somit davon aus, dass alle lij f¨ ur i = 1, . . . ,n und j ≤ k − 1 bekannt sind. Dann folgt aus ⎞⎛ ⎞ ⎛ ℓ11 . . . ℓn1 ℓ11 ⎟⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ . . .. .. A = ⎜ ... ⎟⎜ ⎟ . . . ⎠⎝ ⎠ ⎝ ℓnn ℓn1 . . . ℓnn die Beziehung
akk = ℓ2k1 + . . . + ℓ2kk =
k
ℓ2kj ,
j=1
wodurch sich lkk gem¨ aß ℓkk
( ) k−1 ) = *akk − ℓ2kj
(3.2.2)
j=1
berechnen l¨asst. Aus
aik = ℓi1 ℓk1 + . . . + ℓik ℓkk =
k
ℓij ℓkj f¨ ur i = k + 1, . . . ,n
j=1
erhalten wir die Berechnungsvorschrift f¨ ur die unterhalb der Diagonale befindlichen Elemente der k -ten Spalte in der Form
48
3 Direkte Verfahren
ℓik
⎞ ⎛ k−1 1 ⎝ ur i = k + 1, . . . ,n. aik − ℓij ℓkj ⎠ f¨ = ℓkk j=1
(3.2.3)
Algorithmus Cholesky-Zerlegung — F¨ ur k = 1, . . . ,n F¨ ur j = 1, . . . ,k − 1 akk := akk − akj akj akk :=
√ akk
F¨ ur i = k + 1, . . . ,n F¨ ur j = 1, . . . ,k − 1 aik := aik − aij akj aik := aik /akk F¨ ur k = 1, . . . ,n F¨ ur i = 1, . . . ,k − 1 bk := bk − aki bi bk := bk /akk F¨ ur k = n, . . . ,1 F¨ ur i = k + 1, . . . ,n bk := bk − aik xi xk := bk /akk
⎫ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎬
Berechnung der
⎪ Cholesky-Zerlegung ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎭ ⎫ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎬
Vorw¨artselimination ⎪ ⎪ ⎪ ⎪ ⎪ b := L−1 b ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎭ ⎫ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎬ R¨ uckw¨artselimination ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎭
x := L−T b
Betrachten wir f¨ ur die Analyse der Rechenzeit lediglich den f¨ ur große n entscheidenden ersten Teil, so erhalten wir
3.3 QR-Zerlegung
49
# Multiplikationen + # Divisionen + # Wurzeln =
n
k=1
(k − 1) +
Multiplikationen
=
n
k + n
k=1
n
k=1
n
1 +
k=1
k=1
Wurzeln
k−
n
n
k2
(n − k)(k − 1) +
Multiplikationen
n
k=1
(n − k)
Divisionen
k=1
=
n(n + 1) n(n + 1) n(n + 1)(2n + 1) +n − 2 2 6
=
n2 n n3 + + . 6 2 3
F¨ ur große n ben¨ otigt die Cholesky-Zerlegung damit nur etwa die H¨alfte der aufwendigen Operationen des Gauß-Algorithmus.
3.3
QR-Zerlegung
Eine wesentliche Grundlage zur Definition des im Abschnitt 4.3.2.4 betrachteten GMRESVerfahrens wie auch vieler Methoden zur L¨ osung von Eigenwertproblemen und linearen Ausgleichsproblemen stellt die QR-Zerlegung einer Matrix dar. Der Vorteil der QRZerlegung im Vergleich zur LR-Zerlegung liegt in der Normerhaltung der unit¨aren Transformation bez¨ uglich der euklidischen Norm. Zudem kann das Gleichungssystem Ax = b wegen Q∗ = Q−1 mittels Ax = b ⇔ QRx = b ⇔ Rx = Q∗ b leicht gel¨ost werden. Die drei bekanntesten Methoden zur Berechnung dieser Zerlegung sind das Gram-Schmidt-Verfahren und die Algorithmen nach Givens und Householder. In den folgenden Kapiteln werden wir ausschließlich die beiden erstgenannten Methoden verwenden. Eine ausf¨ uhrliche Herleitung der QR-Zerlegung nach Householder findet man zum Beispiel in [15, 32, 54, 20]. Definition 3.12 Die Zerlegung einer Matrix A ∈ Cn×n in ein Produkt A = QR aus einer unit¨aren Matrix Q und einer rechten oberen Dreiecksmatrix R heißt QR-Zerlegung.
3.3.1
Das Gram-Schmidt-Verfahren
Die Herleitung des Gram-Schmidt-Verfahrens ergibt sich unmittelbar aus dem folgenden konstruktiven Existenznachweis der QR-Zerlegung.
50
3 Direkte Verfahren
Satz 3.13 (Existenz der QR-Zerlegung) Sei A ∈ Cn×n eine regul¨are Matrix, dann existieren eine unit¨are Matrix Q ∈ Cn×n und eine rechte obere Dreiecksmatrix R ∈ Cn×n derart, dass A = QR gilt. Beweis: Wir f¨ uhren den Beweis, indem wir sukzessive f¨ ur k = 1, . . . ,n die Existenz von Vektoren q 1 , . . . ,q k ∈ Cn mit (q i ,q j )2 = δij f¨ ur i,j = 1, . . . ,k (3.3.1) und span{q1 , . . . ,q k } = span{a1 , . . . ,ak }
(3.3.2)
nachweisen, wobei aj (1 ≤ j ≤ k) den j -ten Spaltenvektor der Matrix A darstellt. F¨ ur k = 1 sind die beiden Bedingungen wegen a1 ∈ Cn \ {0} mit q1 =
a1 a1 2
(3.3.3)
erf¨ ullt. Seien nun q 1 , . . . ,q k mit k ∈ {1, . . . ,n − 1} gegeben, die die Bedingungen (3.3.1) und (3.3.2) erf¨ ullen, dann l¨ asst sich jeder Vektor q k+1 ∈ span{a1 , . . . ,ak+1 } \ span{q 1 , . . . ,qk } in der Form q k+1 = ck+1
ak+1 −
k
ci q i
i=1
(3.3.4)
(3.3.5)
mit ck+1 = 0 schreiben. Motiviert durch + , (q k+1 ,q j )2 = ck+1 (ak+1 ,q j )2 − cj f¨ ur j = 1, . . . ,k
und der Zielsetzung der Orthogonalit¨ at setzen wir in (3.3.5) ci := (ak+1 ,q i )2 f¨ ur i = 1, . . . ,k und erhalten hierdurch die Gleichung k (q k+1 ,q j )2 = ck+1 (ak+1 ,q j )2 − (ak+1 ,q i )2 (q i ,q j )2 i=1
ur j = 1, . . . ,k. = ck+1 [(ak+1 ,q j )2 − (ak+1 ,q j )2 ] = 0 f¨ Da A regul¨ar ist, gilt ak+1 ∈ span{q 1 , . . . ,q k } , so dass ˜ k+1 := ak+1 − q
k i=1
(ak+1 ,q i )2 q i = 0
(3.3.6)
3.3 QR-Zerlegung
51
folgt. Mit ck+1 :=
1 ˜ q k+1 2
ergibt sich qk+1 2 = 1 , so dass durch q k+1 =
1 ˜ q k+1 2
˜ k+1 = q
1 ˜ q k+1 2
ak+1 −
k
(ak+1 ,q i )2 q i
i=1
(3.3.7)
wegen (3.3.6) der gesuchte Vektor vorliegt. Die Definition Q = (q 1 . . . q n ) aß (3.3.3) respektive (3.3.7) und mit q 1 , . . . ,q n gem¨ ⎛ ⎞ r11 · · · r1n ⎜ ⎟ q˜i 2 ⎜ ⎟ . . .. .. ⎟ mit rik = R := ⎜ ⎝ ⎠ (ak ,q i )2 rnn
f¨ ur k = i, f¨ ur k > i
liefert somit
A = QR.
Die L¨osung des Gleichungssystems Ax = b erhalten wir durch R¨ uckw¨artsaufl¨osen des ˜ = Q∗ b. Gleichungssystems Rx = b Seien die Spalten der Matrix A ∈ Cm×n , m ≥ n linear unabh¨angig, dann folgt aus dem ∈ Cm×n , deren Spalten paarweise orthonorobigen Beweis die Existenz einer Matrix Q . mal sind, und einer regul¨ aren rechten oberen Dreiecksmatrix R ∈ Cn×n mit A = QR m×m Erweitern wir Q zu einer unit¨ aren Matrix Q ∈ C , so folgt die Darstellung R . A=Q 0 Zusammenfassend erhalten wir aus dem Beweis des obigen Satzes das Gram-SchmidtVerfahren f¨ ur eine regul¨ are Matrix A ∈ Rn×n in der folgenden Form:
52
3 Direkte Verfahren
Algorithmus Gram-Schmidt — F¨ ur k = 1, . . . ,n F¨ ur i = 1, . . . ,k − 1 rik := 0 F¨ ur j = 1, . . . ,n rik := rik + aji ajk F¨ ur i = 1, . . . ,k − 1 F¨ ur j = 1, . . . ,n ajk := ajk − rik aji rkk := 0 F¨ ur j = 1, . . . ,n rkk := rkk + ajk ajk rkk :=
√
rkk
F¨ ur j = 1, . . . ,n ajk := ajk /rkk F¨ ur k = 1, . . . ,n b˜k := 0 F¨ ur i = 1, . . . ,n b˜k := b˜k + aik bi F¨ ur k = n, . . . ,1 F¨ ur i = k + 1, . . . ,n b˜k := b˜k − rki xi xk := b˜k /rkk
⎫ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎬ Berechnung der
⎪ QR-Zerlegung ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎭ ⎫ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎬ Matrixmultiplikation ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎭
b := QT b
⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎭
x := R−1 b
⎫ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎬ R¨ uckw¨artselimination
3.3 QR-Zerlegung
53
Bei der Aufwandsanalyse der QR-Zerlegung nach Gram-Schmidt betrachten wir lediglich den aufwendigen ersten Teil und vernachl¨ assigen auch hier das explizite L¨osen des Gleichungssystems. Somit erhalten wir # Multiplikationen + # Divisionen + # Wurzeln = 2n = 2n
n
(k − 1) + n
k=1
n
1+ n
k=1
Multiplikationen
n
k+n=2
k=1
n
1 +
k=1
Divisionen
n
1
k=1
Wurzeln
n2 (n + 1) + n = n3 + n2 + n. 2
F¨ ur große n ist der Aufwand somit ungef¨ ahr dreimal so hoch wie beim Gauß-Algorithmus. Die numerische Problematik des Gram-Schmidt-Verfahrens liegt im Auftreten von Rundungsfehlern, die zu Ausl¨ oschungseffekten und folglich zu einer ungen¨ ugenden Orthogonalit¨at der Vektoren q 1 , . . . ,qn f¨ uhren k¨ onnen. Zur Verbesserung betrachten wir zwei Varianten des Verfahrens. Variante I: Das modifizierte Gram-Schmidt-Verfahren Grundidee:
Nach der Berechnung des k -ten Spaltenvektors qk der unit¨aren Matrix Q werden die Vektoren ak+1 , . . . ,an der Matrix A derart modifiziert, dass sie senkrecht auf allen Spaltenvektoren q 1 , . . . ,qk stehen.
Durchf¨ uhrung:
Sei A = (a1 . . . an ) ∈ Rn×n (1)
1. Schritt: Setze ak = ak f¨ ur k = 1, . . . ,n . 2. Schritt: F¨ ur k = 1, . . . ,n (k)
qk (k+1)
aj
:=
ak
(k)
ak 2 (k)
= aj
(k)
− (aj ,q k )2 q k f¨ ur j = k + 1, . . . ,n.
Der Rechenaufwand des modifizierten Gram-Schmidt-Verfahrens ist identisch zum urspr¨ unglichen Algorithmus. Vergleichen wir beide Methoden, so kann sich eine Ver¨anderung fr¨ uhestens f¨ ur n = 3 ergeben.
54
3 Direkte Verfahren (1)
(1)
(1)
F¨ ur A = (a1 ,a2 ,a3 ) = (a1 ,a2 ,a3 ) ∈ R3×3 folgt: Gram-Schmidt-Verfahren Modifiziertes Gram-Schmidt-Verfahren
=
q1
(1)
a1 a1 2
q1 (2)
a2
(2)
a3 ˜2 a
= a2 − (a2 ,q 1 )2 q 1
q2
=
=
a1
(1)
a1 2 (1) (1) = a2 − a2 ,q 1 q 1 (1)
(1)
= a3 − a3 ,q 1
2
2
q1
(2)
˜2 a ˜ a2 2
q2 (3)
a3
=
a2
(2)
a2 2 (2) (2) = a3 − a3 ,q 2 q 2 2
= a3 − (a3 ,q 1 )2 q 1
˜3 a
− (a3 ,q 2 )2 q 2 =
q3
(3)
˜3 a ˜ a3 2
q3
=
a3
(3)
a3 2
Hieraus ergibt sich der Zusammenhang (3) (1) (1) (1) (1) a3 = a3 − a3 ,q 1 q 1 − a3 ,q 2 q 2 + a3 ,q 1 q 1 ,q 2 q 2 2
2
2
2
˜ 3 + ((a3 ,q 1 )2 q 1 ,q 2 )2 q 2 , = a
so dass der Unterschied im Vektor ((a3 ,q 1 )2 q 1 ,q 2 )2 q 2 liegt, der bei exakter Arithmetik verschwindet. Variante II: Gram-Schmidt-Verfahren mit Nachorthogonalisierung Grundidee:
Nach der Berechnung des unnormierten k -ten Spaltenvektors q k wird dieser bez¨ uglich q 1 , . . . ,q k−1 orthogonalisiert und anschließend normiert.
Durchf¨ uhrung:
˜ k der unnormierte Vektor, dann setze Sei q
3.3 QR-Zerlegung
55 q¯k
˜k − = q
qk
=
k−1 i=1
(˜ q k ,q i )2 q i
q¯k . ¯ q k 2
Zus¨ atzlich m¨ ussen die Koeffizienten der Matrix R durch neu alt ri,k = ri,k + (˜ q k ,q i )2 f¨ ur i = 1, . . . ,k − 1
modifiziert werden. Der Rechenaufwand ist im Vergleich zum urspr¨ unglichen Gram-Schmidt-Verfahren etwa doppelt so hoch. Satz 3.14 (Eindeutigkeit der QR-Zerlegung) Sei A ∈ Cn×n regul¨ar, dann existiert zu je zwei QR-Zerlegungen Q1 R1 = A = Q2 R2
(3.3.8)
eine unit¨are Diagonalmatrix D ∈ Cn×n mit Q1 = Q2 D
und
R2 = DR1 .
Beweis: Mit D = Q∗2 Q1 liegt wegen Lemma 2.27 eine unit¨are Matrix vor, und es gilt Q1 = Q2 D. Da A regul¨ar ist, sind auch R1 und R2 regul¨ar, und wir erhalten mit (3.3.8) D = Q∗2 Q1 = R2 R−1 1 . Lemma 3.4 in Kombination mit Lemma 2.26 und Lemma 2.27 besagt, dass D eine rechte obere Dreiecksmatrix darstellt. Da D zudem unit¨ar ist, stellt D sogar eine Diagonalmatrix dar. Korollar 3.15 Sei A ∈ Cn×n regul¨ar, dann existiert genau eine QR-Zerlegung der Matrix A derart, dass die Diagonalelemente der Matrix R reell und positiv sind.
3.3.2
Die QR-Zerlegung nach Givens
Wir beschr¨anken uns auf den Fall einer Matrix A ∈ Rn×n . Die Idee der Givens-Methode liegt in einer sukzessiven Elimination der Unterdiagonalelemente. Beginnend mit der ersten Spalte werden hierzu die Subdiagonalelemente jeder Spalte in aufsteigender Reihenfolge mittels orthogonaler Drehmatrizen annulliert. Gehen wir zum Beispiel von der Matrix
56
3 Direkte Verfahren 0
A
=
B B B B B B B B B B B B B B B B B B B B B B B B B B B B @
∗ 0 .. . .. . .. . .. . .. . .. . .. . .. . 0
... .. . .. .
... ..
...
...
...
...
...
...
...
∗ .. . .. . .. . .. . .. . .. . .. . .. . .. . ∗
...
.
0
∗
0 .. . .. . .. . .. . .. . 0
0 .. . .. . 0 ∗ .. . ∗ ↑
∗ ..
∗ .. . .. . .. . .. . ∗
..
. .
..
.
..
.
..
.
..
.
..
. ..
...
...
...
. ...
...
1 C C C C C C C C C C C C C C C C C C C C C C C C C C C C A
∈ Rn×n ,
← j-te Zeile
i-te Spalte
aus, das heißt, es gilt akℓ = 0 ∀ℓ ∈ {1, . . . ,i − 1} mit ℓ < k ∈ {1, . . . ,n},
(3.3.9)
ai+1,i = . . . = aj−1,i = 0
(3.3.10)
und aji = 0 . Dann suchen wir eine orthogonale Matrix 0
Gji
derart, dass f¨ ur neben
B B B B B B B B B B =B B B B B B B B B @
1 ..
1
. 1 gii 0 .. . 0 gji
0 1
··· ..
0
0
.
···
1 0
gij 0 .. . 0 gjj 1 ..
. 1
= Gji A A
C C C C C C C C C C n×n C∈R C C C C C C C C A
a ˜kℓ = 0 ∀ℓ ∈ {1, . . . ,i − 1} mit ℓ < k ∈ {1, . . . ,n},
(3.3.11)
a ˜i+1,i = . . . = a ˜j−1,i = 0
(3.3.12)
a ˜ ji = 0
(3.3.13)
und auch gilt.
3.3 QR-Zerlegung
57
von A lediglich in der i -ten und j -ten Zeile, und es Zun¨achst unterscheidet sich A gilt f¨ ur ℓ = 1, . . . ,n a ˜iℓ = gii aiℓ + gij ajℓ a ˜jℓ = gji aiℓ + gjj ajℓ . ur ℓ < i < j , so dass Mit (3.3.9) folgt aiℓ = ajℓ = 0 f¨ ˜jℓ = 0 f¨ ur a ˜iℓ = a
ℓ = 1, . . . ,i − 1
gilt und folglich die Forderungen (3.3.11) und (3.3.12) erf¨ ullt sind. Wohldefiniert durch aji = 0 setzen wir aii gii = gjj = " 2 aii + a2ji und
gij = −gji = "
aji
a2ii
+ a2ji
.
Somit stellt Gji eine orthogonale Drehmatrix um den Winkel α = arccos gii dar, und es gilt aii aji aii + " aji = 0. a ˜ji = − " 2 2 2 aii + aji aii + a2ji
Definieren wir Gji = I im Fall einer Matrix A , die (3.3.9) und (3.3.10) gen¨ ugt und zudem aji = 0 beinhaltet, dann haben wir mit := Q
1 i+1 . .
i=n−1 j=n
Gji := Gn,n−1 · . . . · G3,2 · Gn,1 · . . . · G3,1 · G2,1
eine orthogonale Matrix, f¨ ur die
R = QA
T folgt eine obere Dreiecksmatrix ist. Mit Q = Q A = QR.
Im Kontext der Givens-Methode haben wir die M¨oglichkeit, das Gleichungssystem Ax = b mittels eines QR-Verfahrens ohne explizite Abspeicherung der orthogonalen Matrix zu l¨osen. Zur L¨osung des linearen Gleichungssystems Ax = b ohne Abspeicherung der resultierenden orthogonalen Matrix Q m¨ ussen die Drehungen nicht nur auf die Spalten der Matrix A , sondern zudem auf die rechte Seite b angewendet werden. Wir erg¨anzen daher die Matrix A um die rechte Seite b gem¨ aß an+1 = b und erhalten den im Folgenden dargestellten Algorithmus.
58
3 Direkte Verfahren
Algorithmus Givens-Methode — F¨ ur i = 1, . . . ,n − 1 F¨ ur j = i + 1, . . . ,n ❩ ❩ aji = 0 Y ❩ ❩
✚ ✚ ✚ ✚ N
" t := 1/ a2ii + a2ji s := taji c := taii F¨ ur k = i, . . . ,n + 1 t := caik + sajk ❩ ❩ k=i Y ❩ ❩
✚ ✚ ✚ ✚ N ajk := −saik + cajk
aik := t aji := 0 F¨ ur i = n, . . . ,1 F¨ ur j = i + 1, . . . ,n ai,n+1 := ai,n+1 − aij xj xi := ai,n+1 /aii Bei der Givens-Methode ergibt sich ohne Ber¨ ucksichtigung der rechten Seite b und des expliziten Aufl¨osens des Gleichungssystems durch R¨ uckw¨artseinsetzen der folgende Rechenaufwand f¨ ur eine vollbesetzte Matrix: # Multiplikationen + # Divisionen + # Wurzeln ≤
=
n−1 i=1
{2(n − i) + 4(n − i)(n − i + 1)} +
Multiplikationen
10 4 3 n + 2n2 − n. 3 3
n−1 i=1
(n − i) +
Divisionen
n−1 i=1
(n − i)
Wurzeln
3.3 QR-Zerlegung
59
Im allgemeinen Fall liegt bei der Givens-Methode ein h¨oherer Rechenaufwand im Vergleich zum Gram-Schmidt-Verfahren vor. Durch die im Algorithmus vorgenommene Abfrage reduziert sich jedoch der Aufwand des Givens-Verfahrens durchaus sehr stark, wenn eine Matrix mit besonderer Struktur vorliegt. Betrachtet man beispielsweise eine obere ¨ Hessenbergmatrix1, so m¨ ussen lediglich n − 1 Givens-Rotationen zur Uberf¨ uhrung in obere Dreiecksgestalt vorgenommen werden. In diesem Spezialfall reduziert sich der Rechenaufwand von der Gr¨ oßenordnung n3 auf die Gr¨oßenordnung n2 . Wir werden diese Eigenschaft sp¨ater bei der Herleitung des GMRES-Verfahrens ausnutzen.
3.3.3
Die QR-Zerlegung nach Householder
Mit der Householder-Transformation lernen wir nun einen weiteren Weg zur Berechnung einer QR-Zerlegung einer gegebenen Matrix A ∈ Rn×n kennen. Wir werden dabei ¨ eine sukzessive Uberf¨ uhrung der Matrix in rechte obere Dreiecksgestalt vornehmen, wobei im Gegensatz zur Givens-Methode stets Spiegelungs- anstelle von Drehmatrizen genutzt werden. W¨ ahrend die Zielsetzung bei der Givens-Rotation in jedem Schritt in der Annulierung genau eines Matrixelementes liegt, werden im Rahmen der HouseholderTransformation stets Spiegelung derart durchgef¨ uhrt, dass alle Unterdiagonalelemente einer Spalte zu Null werden. Betrachten wir einen beliebigen Vektor v ∈ Rs \ {0} , so suchen wir eine orthogonale, ur die symmetrische Matrix2 H ∈ Rs×s mit det H = −1 , f¨ Hv = c · e1 , c ∈ R \ {0}
(3.3.14)
unschten Orgilt, wobei e1 den ersten Einheitsvektor repr¨asentiert. Aufgrund der gew¨ thogonalit¨at der Matrix ist die Abbildung laut Satz 2.28 l¨angenerhaltend, womit f¨ ur die Konstante c aus v2 = Hv2 = c · e1 2 = |c| · e1 2 = |c| die Darstellung c = ±v2
(3.3.15)
folgt. Sei u ∈ Rs der Normaleneinheitsvektor zur Spiegelungsebene3 S der Matrix H mit den durch ϕ = ∠(u,v) gegebenen Winkel zwischen den Vektoren u und v . Dann berechnet sich die L¨ ange ℓ der orthogonalen Projektion von v auf u gem¨aß Abbildung 3.1 (links) wegen ℓ (u,v)2 uT v = cos ϕ = = v2 u2 v2 v2 =1
T
zu ℓ = u v .
F¨ ur gegebene Vektoren u und v erhalten wir den zu v an S gespiegelten Vektor in der Form 1 2 3
Eine oberen Hessenbergmatrix weist ausschließlich im rechten oberen Dreiecksanteil und auf der unteren Nebendiagonalen nichtverschwindende Eintr¨ age auf. Reellwertige Spiegelungsmatrizen sind stets orthogonal sowie symmetrisch und besitzen die Determinante -1, siehe [16]. In dem hier betrachteten Fall stellt die Spiegelungsebene einen ( n − 1 )-dimensionalen Unterraum des Rn dar.
60
3 Direkte Verfahren
S
S ℓ
−ℓu
v
v
u
−ℓu e v
u
ℓ
Bild 3.1 L¨ ange der orthogonalen Projektion (links) und Wirkung der Matrix H auf den Vektor v (rechts)
= v − 2uℓ = v − 2uuT v = Hv v
mit H = I − 2uuT . Die Wirkung der Matrix H auf den Vektor v ist in Abbildung 3.1 (rechts) dargestellt. Man u ufe, dass die Spiegelungseigenschaft auch gilt, wenn ¨ berpr¨ die Vektoren u und v entgegen der Abbildung 3.1 (rechts) in verschiedene Halbebenen bez¨ uglich der Spiegelungsebene S zeigen. Bevor wir uns der Festlegung des Vektors u zuwenden, werden wir zun¨achst die Eigenschaften der resultierenden Matrix H analysieren. Satz und Definition 3.16 Sei u ∈ Rs mit u2 = 1 , dann stellt H = I − 2uuT ∈ Rs×s
eine orthogonale und symmetrische Matrix mit det H = −1 dar und wird als HouseholderMatrix bezeichnet. Beweis: Aus
T
H T = (I − 2uuT )T = I − 2(uuT )T = I − 2uT uT = I − 2uuT = H
folgt die behauptete Symmetrie und wir erhalten unter Ber¨ ucksichtigung der euklidischen L¨angenvoraussetzung u2 = 1 die Orthogonalt¨at gem¨aß H T H = H 2 = (I − 2uuT )(I − 2uuT ) = I − 4uuT + 4u uT u uT = I. =1
Erweitern wir den Vektor u mittels der Vektoren y 1 , . . . ,y s−1 ∈ Rs zu einer Orthonormalbasis des Rs und definieren hiermit die orthogonale Matrix Q = (u,y 1 , . . . ,y s−1 ) ∈ Rs×s , so gilt uT Q = (1,0, . . . ,0) = eT1 und folglich erhalten wir aus Q−1 HQ = QT HQ = QT (I − 2uuT )Q
⎛
⎜ ⎜ = QT Q − 2QT uuT Q = I − 2e1 eT1 = ⎜ ⎝
−1
⎞
1 ..
. 1
⎟ ⎟ ⎟ ⎠
3.3 QR-Zerlegung direkt
61
−1 = det(Q−1 HQ) = det Q−1 det H det Q = det H. =1/ det Q
Da die gew¨ unschte Eigenschaft Hv = c e1 wegen c = ±v2 nur bis auf das Vorzeichen eindeutig ist, ergeben sich zwei m¨ ogliche, jeweils durch einen Einheitsnormalenvektor u± festgelegte Spiegelungsebenen S± . Geometrisch wird aus der Abbildung 3.2 (links) deutlich, dass die Spiegelung von v auf v2 e1 eine Spiegelungsebene S+ erfordert, die die Winkelhalbierende zu v und e1 enth¨ alt. Wir nutzen demzufolge u+ =
v − v2 e1 v − v2 e1 2
als Vektor in Richtung einer Diagonalen des aus v und v2 e1 gebildeten Parallelogramms. S− S+ v
v
u−
u+ −v2 e1
v2 e1
−v2 e1
v2 e1
Bild 3.2 Festlegung des Einheitsnormalenvektors u+ respektive u− zur Spiegelung auf v2 e1 (links) beziehungsweise −v2 e1 (rechts)
Abbildung 3.2 (rechts) kann zudem entnommen werden, dass die Spiegelung von v auf −v2 e1 entsprechend durch die Wahl u− =
v + v2 e1 v + v2 e1 2
erwartet werden kann. Die Korrektheit dieser heuristischen Vorgehensweise zur Bestimonnen wir durch einfaches Nachrechnen der entspremung der Vektoren u+ und u− k¨ chenden Abbildungseigenschaften belegen. Unter Ber¨ ucksichtigung von v ∓ v2 e1 22 = v T v ∓ 2v2 eT1 v + v22 = 2(v T ∓ v2 eT1 )v
(3.3.16)
=v T v
erhalten wir f¨ ur die zugeh¨ origen Matrizen H ± = I − 2u± uT± aus H ±v
= v − 2u± uT± v = v − 2
v ∓ v2 e1 v ∓ v2 e1 22
= v − (v ∓ v2 e1 ) = ±v2 e1
(v ∓ v2 e1 )v
(3.3.16) 1 = 2 v∓v2 e1 22
(3.3.17)
62
3 Direkte Verfahren
den gew¨ unschten Nachweis. Um einen bei der Berechnung von v ∓ v2 e1 vorliegenden Rundungsfehler nicht durch eine Division mit einer kleinen Zahl unn¨otig zu vergr¨oßern, wird die Vorzeichenwahl derart vorgenommen, dass v ∓ v2 e1 22 = (v1 ∓ v2 )2 + v22 + . . . vs2
(3.3.18)
maximal wird. Aus (3.3.18) wird sofort ersichtlich, dass sich somit v + sgn(v1 )v2 e1 1, f¨ ur x ≥ 0 mit sgn(x) = u= −1, f¨ ur x < 0 v + sgn(v1 )v2 e1 2 ergibt. Zur endg¨ ultigen Konstruktion der, f¨ ur den Householder-Algorithmus notwendigen Matrizen betrachten wir zun¨ achst noch folgendes Hilfsresultat, wobei mit der Abk¨ urzung I k stets die Einheitsmatrix im Rk×k bezeichnet wird. /s = I s − 2us uT ∈ Rs×s die Lemma 3.17 Sei us ∈ Rs mit us 2 = 1 gegeben und H s zugeh¨orige Householder-Matrix, dann stellt 0 I n−s ∈ Rn×n Hs = !s 0 H eine orthogonale Matrix dar.
Beweis: Der Nachweis ergibt sich unmittelbar aus I n−s 0 I n−s T Hs Hs = = T !s !s H 0 0 H
0 Is
= In .
¨ Unter Verwendung der erzielten Resultate k¨ onnen wir eine sukzessive Uberf¨ uhrung einer gegebenen Matrix A ∈ Rn×n in obere Dreiecksgestalt vornehmen. Wir setzen hierzu A(0) = A und schreiben ⎞ ⎛ (0) (0) a11 . . . a1n ⎜ . .. ⎟ ⎟ A(0) = ⎜ . ⎠ . ⎝ .. (0)
an1
(0)
(0)
. . . ann
(0)
Mit a(0) = (a11 , . . . ,a1n )T definieren wir unter Verwendung von (0)
un =
a(0) + sgn(a11 )a(0) 2 e1 (0)
a(0) + sgn(a11 )a(0) 2 e1 2
die Householder-Matrix H n = I n − 2un uTn ∈ Rn×n
Folglich besitzt A(1) = H n A(0) laut (3.3.17) die Gestalt
3.3 QR-Zerlegung
63
A
(1)
⎛
⎜ ⎜ =⎜ ⎜ ⎝
(1)
(1)
(1)
a11 0 .. .
a12 (1) a22 .. .
. . . a1n (1) . . . a2n .. .
0
an2
(1)
. . . ann
(1)
⎞
⎟ ⎟ ⎟ . ⎟ ⎠
Diese Vorgehensweise werden wir auf weitere Spalten u ¨ bertragen, wobei stets kleiner werdende rechte untere Anteile der Matrix betrachtet werden. Die Zielsetzung legt dabei in der Annulierung der Unterdiagonalelemente. Liegt nach k Transformationsschritten die Matrix ⎛ (k) ⎞ B (k) R ⎜ ⎟ (k) (k) ⎜ ⎟ ak+1,k+1 . . . ak+1,n ⎟ ⎜ (k) A =⎜ ⎟ ∈ Rn×n .. .. ⎜ 0 ⎟ ⎝ ⎠ . . (k)
...
an,k+1
(k)
ann
vor, wobei R(k) ∈ Rk×k eine rechte obere Dreiecksmatrix darstellt und B (k) ∈ Rk×(n−k) (k) (k) ¨ gilt, so setzen wir a(k) = (ak+1,k+1 , . . . ,ak+1,n )T ∈ Rn−k . Analog zum Ubergang von (0) (1) A auf A konstruieren wir mit (k)
un−k =
a(k) + sgn(ak+1,k+1 )a(k) 2 e1 (k)
a(k) + sgn(ak+1,k+1 )a(k) 2 e1 2
!n−k = I n−k − 2un−k uT ∈ R(n−k)×(n−k) . Laut Lemma 3.17 die Householder-Matrix H n−k stellt 0 Ik ∈ Rn×n H n−k = !n−k 0 H eine orthogonale Matrix dar und wir erhalten ⎛ (k) R ⎜ (k+1) ⎜ ak+1,k+1 ⎜ ⎜ ⎜ 0 A(k+1) = ⎜ ⎜ ⎜ 0 .. ⎜ ⎜ . ⎝ 0 ⎛
⎜ ⎜ ⎜ =⎜ ⎜ ⎝
R(k+1)
(k+1)
0
f¨ ur A(k+1) = H n−k A(k) die Darstellung ⎞ B (k) ⎟ (k+1) (k+1) ⎟ ak+1,k+2 . . . ak+1,n ⎟ ⎟ ⎟ (k+1) (k+1) ak+2,k+2 . . . ak+2,n ⎟ ⎟ ⎟ .. .. ⎟ ⎟ . . ⎠ (k+1) (k+1) an,k+2 . . . ann
B (k+1)
ak+2,k+2 .. . (k+1) an,k+2
(k+1)
. . . ak+2,n .. . (k+1) . . . ann
⎞
⎟ ⎟ ⎟ ⎟ ∈ Rn×n ⎟ ⎠
mit einer rechten oberen Dreiecksmatrix R(k+1) ∈ R(k+1)×(k+1) . Nach n − 1 Schritten4 ergibt sich demzufolge die rechte obere Dreiecksmatrix 4
¨ Uberlegen Sie, warum bereits n − 1 Schritte ausreichend sind.
64
3 Direkte Verfahren R = R(n) = H 2 H 3 · · · H n A.
(3.3.19)
Durch Lemma 3.17 wissen wir, dass alle verwendeten Matrizen H 2 , . . . ,H n orthogonal sind und folglich mit Q = H Tn H Tn−1 . . . H T2 ebenfalls eine orthogonale Matrix vorliegt, die wegen A = (H 2 H 3 · · · H n )T R = H Tn H Tn−1 . . . H T2 R = QR die gew¨ unschte QR-Zerlegung liefert. Zusammenfassend l¨ asst sich die QR-Zerlegung nach Householder in folgender Form darstellen, wobei wir die Matrix A um die rechte Seite b gem¨aß an+1 = b erg¨anzen und somit eine direkte L¨ osung des Gleichungssystems Ax = b erm¨oglicht wird. Die Matrix Q ist dabei implizit u ¨ber die Vektoren un−k+1 , k = 1, . . . ,n gegeben, die den linken unteren Dreiecksanteil der resultierenden Matrix bilden. Da die Vektoren un−k+1 jedoch stets die Dimension n − k + 1 besitzen, ergibt sich in Verbindung mit der rechten oberen Dreicksmatrix R eine Doppelbelegung der Diagonalen. Daher werden die Diagonalelemente der Matrix R im Vektor d abgespeichert. Zum einfachen Verst¨andnis der algorithmischen Darstellung sei noch auf einige algebraische Zusammenh¨ange hingewiesen. Sei a = (akk , . . . ,akn )T ∈ Rn−k+1 , so gelten f¨ ur die im Verfahren auftretenden Hilfsgr¨ oßen dk und β die Darstellungen dk = −sgn(akk )a2 und β
(3.3.18)
=
1/(a + sgn(akk )a2 e1 22 ) .
Vernachl¨assigen wir wie bei den vorhergehenden Verfahren die rechte Seite und das explizite L¨osen des Gleichungssystems durch R¨ uckw¨ artseinsetzen, so ergibt sich der folgende Rechenaufwand: # Multiplikationen + # Divisionen + # Wurzeln =
n
k=1
+
{2(n − k + 1) + (n − k)(2(n − k + 1) + 1)} +
n
k=1
=
Multiplikationen
{1 + (n − k + 1)}
Wurzeln
2 3 16 n + 2n2 − n. 3 3
n
k=1
{1 + (n − k + 1)}
Divisionen
Bei einer großen Dimension n des Gleichungssystems liegt im Fall einer vollbesetzten Matrix mit dem Householder-Verfahren eine Methode vor, die etwa die H¨alfte der zugrundegelegten arithmetischen Operationen der Givens-Methode und etwa 2/3 der Operationen des Gram-Schmidt-Verfahrens ben¨ otigt. Es sei jedoch bei diesem Vergleich nochmals daraufhingewiesen, dass der Givens-Algorithmus bei Matrizen mit besonderer Struktur h¨aufig den geringsten Rechenaufwand aller drei Verfahren aufweist.
3.3 QR-Zerlegung
65
Algorithmus Householder-Methode — F¨ ur k = 1, . . . ,n α := 0 F¨ ur i = k, . . . ,n α := α + a2ik ✚ ✚ ✚ ✚ N
❩
❩ akk > 0 Y ❩ ❩ √ dk := − α β :=
1 dk akk − α
akk := akk − dk F¨ ur j = k + 1, . . . ,n + 1 α := 0 F¨ ur i = k, . . . ,n α := α + aik aij γ := β · α F¨ ur i = k, . . . ,n aij := aij + γ aik F¨ ur i = k, . . . ,n aik :=
0
−
β aik 2
F¨ ur k = n, . . . ,1 F¨ ur j = k + 1, . . . ,n ak,n+1 := ak,n+1 − akj xj xk := ak,n+1 /akk
dk :=
√ α
66
3.4
3 Direkte Verfahren
¨ Ubungsaufgaben
Aufgabe 1: Man berechne die LR-Zerlegung der Matrix ⎞ ⎛ 1 4 5 A = ⎝ 1 6 11 ⎠ 2 14 31
T
und l¨ose hiermit das lineare Gleichungssystem Ax = (17, 31, 82) . Aufgabe 2: Gegeben ist das lineare Gleichungssystem A x = b mit 8 4 α , b = A = β 6 15
.
(a) F¨ ur welche Werte von α und β besitzt dieses Gleichungssystem (1) eine eindeutige L¨ osung, (2) keine L¨osung, (3) unendlich viele L¨ osungen ? (b) F¨ ur den Fall, dass Ax = b eindeutig l¨ osbar ist, gebe man die L¨osung in Abh¨angigkeit von den Parametern α,β an. Aufgabe 3: Beweisen Sie, dass zu jeder symmetrischen, positiv definiten Matrix A ∈ Rn×n genau eine untere Dreiecksmatrix L ∈ Rn×n mit positiven Diagonalelementen existiert, f¨ ur welche A = LLT gilt. Aufgabe 4: Man berechne die QR-Zerlegung der Matrix 1 3 A = −1 1 und l¨ose hiermit das lineare Gleichungssystem Ax = (16, 0)T . Aufgabe 5: Gegeben sei die Matrix
⎛
1 ⎜ 2 A = ⎜ ⎝ 1 3
⎞ 3 4 1 7 a 4 ⎟ ⎟. 4 6 1 ⎠ 4 9 0
(a) F¨ ur welchen Wert von a besitzt A keine LR-Zerlegung. (b) Berechnen Sie eine LR-Zerlegung von A im Existenzfall. (c) F¨ ur den Fall, dass A keine LR-Zerlegung besitzt, geben Sie eine Permutationsmatrix P derart an, dass P A eine LR-Zerlegung besitzt.
¨ 3.4 Ubungsaufgaben
67
Aufgabe 6: Gegeben sei eine regul¨ are Matrix A ∈ Rn×n mit Bandbreite d , das heißt es gilt A = (aij )i,j=1,...,n mit aij = 0 f¨ ur |i − j| ≥ d . Zudem seien alle Hauptabschnittsdeterminanten von A ungleich Null. Zeigen Sie: Bei der LR-Zerlegung von A bleibt die Bandstruktur erhalten, d.h. L und R besitzen die Bandbreite d . Aufgabe 7: Gegeben sei die Tridiagonalmatrix ⎛ a1 c2 ⎜ ⎜ b1 a2 An = ⎜ ⎜ .. ⎝ .
..
⎞
.
..
. bn−1
cn an
Zeigen Sie, dass unter den Voraussetzungen
⎟ ⎟ ⎟ , c1 := 0, bn := 0. ⎟ ⎠
|bj | + |cj | ≤ |aj | und |bj | < |aj |, j = 1, . . . ,n eine LR-Zerlegung von ⎛ 1 ⎜ ⎜ α1 Ln = ⎜ ⎜ ⎝
An in der Form ⎞
.. ..
. .
..
.
αn−1
1
⎟ ⎟ ⎟ ⎟ ⎠
und
⎛
⎜ ⎜ Rn = ⎜ ⎜ ⎝
β1
c2 .. .
..
.
..
.
⎞ cn βn
⎟ ⎟ ⎟ ⎟ ⎠
existiert. Geben Sie eine Rekursionsformel zur Berechnung der αj und βj an.
Hinweis:
Zeigen Sie induktiv: |αj | < 1 , j = 1, . . . ,n − 1 und |βj | > 0 , j = 1, . . . ,n .
Aufgabe 8: ar und es gelte A = QR , wobei Q ∈ Cn×n unit¨ar ist und Es sei A ∈ Cn×n regul¨ n×n R ∈ C eine rechte obere Dreiecksmatrix darstellt. Es bezeichne aj ∈ Cn bzw. n q j ∈ C den j -ten Spaltenvektor von A bzw. Q , j = 1, . . . ,n . Zeigen Sie: span{a1 , . . . ,aj } = span{q1 , . . . ,q j }
f¨ ur alle j = 1, . . . ,n.
Aufgabe 9: Berechnen Sie eine Cholesky-Zerlegung der Matrix ⎞ ⎛ 9 3 9 A = ⎝ 3 9 11 ⎠ 9 11 17
und l¨osen Sie hiermit das lineare Gleichungssystem ⎞ ⎛ 24 Ax = ⎝ 16 ⎠ . 32
68
3 Direkte Verfahren
Aufgabe 10: (a) Gegeben sei die Matrix A=
A11 0
A12 A22
∈ Rn×n
mit Aii ∈ Rmi ×mi , i = 1,2, wobei m1 + m2 = n und det Aii = 0, i = 1,2 gilt. Man zeige, dass A invertierbar ist und bestimme eine Blockdarstellung der Inversen A−1 . (b) Unter Benutzung geeigneter Blockbildungen ⎛ 1 2 3 ⎜ 2 5 7 ⎜ B=⎜ ⎜ 0 1 2 ⎝ 0 0 0 0 0 0
berechne man die Inverse von ⎞ 1 0 1 1 ⎟ ⎟ 1 1 ⎟ ⎟. 1 0 ⎠ 0 1
Aufgabe 11: Gegeben seien eine symmetrische Matrix An−1 ∈ R(n−1)×(n−1) und eine untere Dreiecksmatrix Ln−1 ∈ R(n−1)×(n−1) mit positiven Diagonalelementen, die Ln−1 LTn−1 = An−1 erf¨ ulle. Weiter seien b ∈ Rn−1 ein Spaltenvektor, α ∈ R und An−1 b An := ∈ Rn×n bT α symmetrisch und positiv definit. Zeigen Sie, dass ein Vektor c ∈ Rn−1 und eine positive reelle Zahl β existieren, so dass T Ln−1 0 Ln−1 c An = cT β 0 β gilt. Aufgabe 12: Gegeben sei die Matrix
⎛
1 A = ⎝ 2 0
4 α 1
⎞ 7 β ⎠. 1
Unter welchen Voraussetzungen an die Werte α,β ∈ R ist die Matrix regul¨ar und besitzt zudem eine LR-Zerlegung. Geben Sie zudem ein Parameterpaar (α,β) derart an, dass die Matrix A regul¨ ar ist und keine LR-Zerlegung besitzt. Aufgabe 13: Zeigen Sie, dass die in Lemma 3.17 definierten Matrizen H n neben der nachgewiesenen Orthogonalit¨at auch symmetrisch sind und die Determinante −1 besitzen, also folglich eine Spiegelung repr¨ asentieren.
69
4
Iterative Verfahren
Die pr¨asentierten direkten Verfahren stellen bei einer kleinen Anzahl von Unbekannten oftmals eine effiziente Vorgehensweise dar. Praxisrelevante Problemstellungen (siehe Beispiele 1.1 und 1.4) f¨ uhren jedoch h¨ aufig auf große schwachbesetzte Gleichungssysteme. Die Speicherung derartiger Gleichungssysteme wird gew¨ohnlich erst durch die Vernachl¨assigung der Nullelemente der Matrix, die teilweise u ¨ ber 99% der Matrixkoeffizienten darstellen, erm¨oglicht. Betrachten wir die erl¨ auterte Diskretisierung der Konvektions-DiffusionsGleichung mit N = 500 , so ben¨ otigen wir bei einem vorausgesetzten Speicherplatzbedarf von 8 Byte f¨ ur jede reelle Zahl etwa 10 Megabyte zur Speicherung der nichtverschwindenden Matrixkoeffizienten. Dagegen w¨ urde das Abspeichern der gesamten Matrix 500 Gigabyte beanspruchen. Direkte Verfahren k¨ onnen in der Regel die besondere Gestalt der Gleichungssysteme nicht ausnutzen, wodurch vollbesetzte Zwischenmatrizen generiert werden, die einerseits den verf¨ ugbaren Speicherplatz u ¨berschreiten und andererseits zu unakzeptablen Rechenzeiten f¨ uhren (siehe Tabelle 3.1). Desweiteren entstehen solche Gleichungssysteme zumeist durch eine Diskretisierung der zugrundeliegenden Aufgabenstellung, wodurch auch die exakte L¨ osung des Gleichungssystems nur eine Approximation an die gesuchte L¨osung darstellt. Folglich erweist sich eine N¨ aherungsl¨ osung f¨ ur das Gleichungssystem mit einem Fehler in der Gr¨oßenordnung des Diskretisierungsfehlers als ausreichend. Hierzu eignen sich iterative Methoden hervorragend. Wir betrachten ein lineares Gleichungssystem der Form Ax = b
(4.0.1)
mit gegebener rechter Seite b ∈ Cn und regul¨ arer Matrix A ∈ Cn×n . Iterative Verfahren ermitteln sukzessive N¨ aherungen xm an die exakte L¨osung A−1 b durch wiederholtes Ausf¨ uhren einer festgelegten Rechenvorschrift ur m = 0,1, . . . xm+1 = φ(xm ,b) f¨ bei gew¨ahltem Startvektor x0 ∈ Cn . Bevor wir uns mit speziellen numerischen Methoden besch¨aftigen werden, wollen wir in diesem Abschnitt zun¨ achst einige zweckdienliche Eigenschaften iterativer Verfahren beschreiben. Definition 4.1 Ein Iterationsverfahren ist gegeben durch eine Abbildung φ : Cn × Cn → Cn und heißt linear, falls Matrizen M ,N ∈ Cn×n derart existieren, dass φ(x,b) = M x + N b A. Meister, Numerik linearer Gleichungssysteme, DOI 10.1007/978-3-8348-8100-7_4, © Vieweg+Teubner Verlag |Springer Fachmedien Wiesbaden GmbH 2011
70
4 Iterative Verfahren
gilt. Die Matrix M wird als Iterationsmatrix der Iteration φ bezeichnet. Die Matrizen M und N werden hierbei eindeutig durch die Iterationsvorschrift festgelegt. ˜ ∈ Cn bezeichnen wir als Fixpunkt des IterationsverfahDefinition 4.2 Einen Vektor x n n n rens φ : C × C → C zu b ∈ Cn , falls ˜ = φ(˜ x x,b) gilt. Definition 4.3 Ein Iterationsverfahren φ heißt konsistent zur Matrix A , wenn f¨ ur alle b ∈ Cn die L¨osung A−1 b ein Fixpunkt von φ zu b ist. Ein Iterationsverfahren φ heißt konvergent, wenn f¨ ur alle b ∈ Cn und alle Startwerte x0 ∈ Cn ein vom Startwert unabh¨angiger Grenzwert ˆ = lim xm = lim φ(xm−1 ,b) x m→∞
m→∞
existiert. Die Konsistenz stellt eine notwendige Bedingung an jedes Iterationsverfahren dar, da mit ihr ein sinnvoller Zusammenhang zwischen der numerischen Methode und dem Gleichungssystem sichergestellt wird. Bei einem inkonsistenten Algorithmus m¨ usste der Anwender die Iteration in einem geeigneten Moment abbrechen, da die exakte L¨osung keinen station¨aren Punkt der Iteration darstellt und sich die Folge der N¨aherungsl¨osungen nach Erreichen des L¨osungsvektors notwendigerweise wieder von diesem entfernen wird. Bei einem linearen Iterationsverfahren kann die Konsistenz der Methode unmittelbar anhand der verwendeten Matrizen M und N bestimmt werden. Diese wesentliche Eigenschaft wird durch den folgenden Satz belegt. Satz 4.4 Ein lineares Iterationsverfahren ist genau dann konsistent zur Matrix A , wenn M = I − NA gilt. Beweis: = A−1 b . Sei x
⇒ “ φ sei konsistent zur Matrix A . ” Damit erhalten wir = φ( + Nb = Mx + N A x x,b) = M x x.
ucksichtigung der Regularit¨at Da die Konsistenz f¨ ur alle b ∈ Cn gilt, ergibt sich unter Ber¨ ∈ Cn , wodurch der Matrix A die G¨ ultigkeit der obigen Gleichung f¨ ur alle x M = I − NA
folgt.
71 ⇐ “ Es gelte M = I − N A . ” Dann ergibt sich = Mx + N A + N b = φ( x x = Mx x,b),
wodurch die Konsistenz des Iterationsverfahrens φ zur Matrix A folgt. Die Wahl M = I und N = 0 zeigt bereits deutlich, dass die Forderung nach der Konsistenz des Verfahrens zwar eine notwendige, jedoch keine hinreichende Bedingung zur Festlegung praktikabler linearer Iterationsverfahren repr¨asentiert. Wir ben¨otigen folglich eine zus¨atzliche Forderung, um die Konvergenz der Methode gegen die gesuchte L¨osung sicherzustellen. Satz 4.5 Ein lineares Iterationsverfahren φ ist genau dann konvergent, wenn der Spektralradius der Iterationsmatrix M die Bedingung ρ(M ) < 1 erf¨ ullt. Beweis: ⇒ “ φ sei konvergent. ” Sei λ Eigenwert von M mit |λ| = ρ(M ) und x ∈ Cn \{0} der zugeh¨orige Eigenvektor. W¨ahlen wir b = 0 ∈ Cn , dann folgt f¨ ur x0 = c x mit beliebigem c ∈ R \ {0} die Iterationsfolge xm = φ(xm−1 ,b) = M xm−1 = . . . = M m x0 = λm x0 . Im Fall |λ| > 1 folgt aus xm = |λ|m x0 die Divergenz der Folge {xm }m∈N . F¨ ur |λ| = 1 stellt M f¨ ur den Eigenvektor eine Drehung dar. Die Konvergenz der Folge ur alle {xm }m∈N liegt daher nur im Fall λ = 1 vor. Hierbei erhalten wir xm = x0 f¨ m ∈ N unabh¨angig vom gew¨ ahlten Skalierungsparameter c , so dass sich mit ˆ = lim xm = x0 x m→∞
ein vom Startvektor abh¨ angiger Grenzwert ergibt und daher das Iterationsverfahren nicht konvergent ist. Die Bedingung |λ| < 1 und damit ρ(M ) < 1 stellt demzufolge ein notwendiges Kriterium f¨ ur die Konvergenz des Iterationsverfahrens dar. ⇐ “ Gelte ρ(M ) < 1 . ” Da laut Satz 2.11 alle Normen auf dem Cn ¨ aquivalent sind, kann die Konvergenz in einer beliebigen Norm nachgewiesen werden. Sei ε := dass
1 2 (1
− ρ(M )) > 0 , dann existiert mit Satz 2.36 eine Norm auf Cn×n derart, q := M ≤ ρ(M ) + ε < 1
gilt. Bei gegebenem b ∈ Cn definieren wir
72
4 Iterative Verfahren F : Cn x
→ Cn F
→ F (x) = M x + N b.
Hiermit erhalten wir F (x) − F (y) = M x − M y ≤ M x − y = qx − y, so dass aufgrund des Banachschen Fixpunktsatzes die durch xm+1 = F (xm ) ur ein beliebiges Startelement x0 ∈ Cn gegen den eindeutig definierte Folge {xm }m∈N f¨ bestimmten Fixpunkt ˆ = lim xm+1 = lim F (xm ) = lim φ(xm ,b) x m→∞
m→∞
m→∞
konvergiert und folglich mit φ ein konvergentes Iterationsverfahren vorliegt. Nat¨ urlich k¨onnen analog zur Konsistenz auch Matrizen M und N angegeben werden, die ein konvergentes lineares Iterationsverfahren generieren, ohne in einem zweckm¨aßigen Verh¨altnis zum Gleichungssystem zu stehen (z. B. M = 0 , N = I ). Erst das Zusammenwirken von Konsistenz und Konvergenz liefert eine geeignete Iterationsvorschrift. Satz 4.6 Sei φ ein konvergentes und zur Matrix A konsistentes lineares Iterationsver der Folge fahren, dann erf¨ ullt das Grenzelement x xm = φ(xm−1 ,b) f¨ ur m = 1,2, . . .
f¨ ur jedes x0 ∈ Cn das Gleichungssystem (4.0.1). Beweis: Mit Satz 4.5 konvergiert die Folge xm = φ(xm−1 ,b) gegen den eindeutig bestimmten Fixpunkt = φ( x x,b),
der wegen der Konsistenz des Iterationsverfahrens die L¨osung der Gleichung Ax = b darstellt.
4.1
Splitting-Methoden
Splitting-Methoden zur L¨ osung des Gleichungssystems (4.0.1) basieren auf einer Aufteilung der Matrix A in der Form A = B + (A − B), B ∈ Cn×n , so dass sich aus Ax = b das ¨ aquivalente System
(4.1.1)
4.1 Splitting-Methoden
73 Bx = (B − A)x + b
ergibt. Ist B zudem regul¨ ar, dann erhalten wir x = B −1 (B − A)x + B −1 b und definieren hierdurch das lineare Iterationsverfahren xm+1 = φ(xm ,b) = M xm + N b f¨ ur m = 0,1, . . . mit
M := B −1 (B − A)
und
N := B −1 .
Bevor wir Splitting-Verfahren hinsichtlich ihrer Konsistenz und ihres Konvergenzverhaltens untersuchen, werden wir mit der folgenden Definition den Begriff der symmetrischen Splitting-Methode einf¨ uhren. Solche Methoden erweisen sich bei der im Kapitel 5 beschriebenen Pr¨akonditionierung symmetrischer, positiv definiter Matrizen als vorteilhaft, da mit Hilfe der Iterationsmatrix symmetrischer Splitting-Methoden diese Eigenschaften der Matrix auch u aquivalente Umformulierung hinaus erhalten werden k¨onnen. ¨ber die ¨ Folglich k¨onnen Methoden f¨ ur positiv definite, symmetrische Matrizen, wie zum Beispiel das im Abschnitt 4.3.1.3 hergeleitete Verfahren der konjugierten Gradienten, auch nach der Pr¨akonditionierung angewendet werden. Definition 4.7 Die Splitting-Methode xm+1 = B −1 (B − A)xm + B −1 b zur L¨osung der Gleichung (4.0.1) heißt symmetrisch, falls f¨ ur jede positiv definite und symmetrische Matrix A die Matrix B ebenfalls positiv definit und symmetrisch ist. Satz 4.8 Sei B ∈ Cn×n regul¨ar, dann ist das lineare Iterationsverfahren xm+1 = φ(xm ,b) = B −1 (B − A)xm + B −1 b zur Matrix A konsistent. Beweis: Mit M = B −1 (B −A) = I −B −1 A = I −N A folgt die Behauptung durch Anwendung des Satzes 4.4. Gilt f¨ ur eine Splitting-Methode ρ(M ) < 1 , dann stellt das eindeutig bestimmte Grenzelement der Folge xm = φ(xm−1 ,b) f¨ ur m = 1,2, . . . f¨ ur beliebigen Startvektor x0 ∈ Cn die L¨ osung der zugeh¨origen Gleichung Ax = b dar. Betrachten wir ein lineares Iterationsverfahren ur m = 1,2, . . . xm = M xm−1 + N b f¨ mit ρ(M ) < 1, dann existiert laut Satz 2.36 zu jedem ε mit 0 < ε < 1 − ρ(M ) eine Norm derart, dass
74
4 Iterative Verfahren ρ(M ) ≤ M ≤ ρ(M ) + ε < 1 q:=
gilt. Aus dem Banachschen Fixpunktsatz folgt die a priori Fehlerabsch¨atzung xm − A−1 b ≤
qm ur m = 1,2, . . . . x1 − x0 f¨ 1−q
F¨ ur jede weitere Norm · a gilt xm − A−1 ba ≤
qm Ca x1 − x0 a 1−q
mit einer Konstanten Ca > 0 , die nur von den Normen abh¨angt. Somit stellt der Spektralradius in jeder Norm ein Maß f¨ ur die Konvergenzgeschwindigkeit dar. Satz 4.9 Sei φ ein zur Matrix A konsistentes lineares Iterationsverfahren, f¨ ur dessen zugeh¨orige Iterationsmatrix M eine Norm derart existiert, dass q := M < 1 gilt, dann folgt f¨ ur gegebenes ε > 0 xm − A−1 b ≤ ε f¨ ur alle m ∈ N mit ln m≥
ε(1 − q) x1 − x0 ln q
und x1 = φ(x0 ,b) = x0 . Beweis: Mit φ(x,b) − φ(y,b) ≤ qx − y folgt mit der a priori Fehlerabsch¨atzung des Banachschen Fixpunktsatzes die Ungleichung xm − A−1 b ≤
qm x1 − x0 . 1−q
Zu gegebenem ε > 0 erhalten wir unter Ausnutzung von x1 = x0 f¨ ur ln m≥
ε(1 − q) x1 − x0 . ln q
somit die Absch¨atzung ε(1 − q) m q x1 − x0 xm − A−1 b ≤ x1 − x0 ≤ x1 − x0 = ε. 1−q 1−q Gilt 0 < q < 1 und q˜ = q 2 , dann folgt q 2m q˜m q 2m = . < 1 − q˜ 1 − q 2 1−q
4.1 Splitting-Methoden
75
Betrachtet man folglich zwei konvergente lineare Iterationsverfahren φ1 und φ2 deren zugeordnete Iterationsmatrizen M 1 und M 2 die Eigenschaft ρ (M 1 ) = ρ (M 2 )2 erf¨ ullen, dann liefert Satz 4.9 eine gesicherte Genauigkeitsaussage f¨ ur die Methode φ1 in der Regel nach der H¨ alfte der f¨ ur das Verfahren φ2 ben¨otigten Iterationszahl. Innerhalb eines iterativen Verfahrens dieser Klasse darf daher mit einer Halbierung der ben¨otigten Iterationen gerechnet werden, wenn der Spektralradius beispielsweise von 0.9 auf 0.81 gesenkt wird. Beispiel 4.10 Triviales Verfahren Wir betrachten das Modellproblem 0.3 0.7 −0.4 x1 . = 0.3 x2 −0.2 0.5 A:=
x:=
(4.1.2)
b:=
Die exakte L¨osung lautet A−1 b = (1,1)T . Nat¨ urlich besteht f¨ ur dieses Gleichungssystem keine Notwendigkeit zur Nutzung eines iterativen Verfahrens. Das Beispiel eignet sich jedoch sehr gut zur Verdeutlichung der Effizienz der einzelnen Splitting-Methoden. Mit ¨ A = I − (I − A) folgt die Aquivalenz zwischen Ax = b und x = (I − A)x + b. Hierdurch ergibt sich das einfache konsistente und lineare Iterationsverfahren xm+1 = φ(xm ,b) = (I − A) xm + I b. M :=
(4.1.3)
N :=
2
Es gilt det(M − λI) = (λ − 0.4) − 0.09 , so dass die Eigenwerte der Iterationsmatrix λ1 = 0.1 und λ2 = 0.7 sind und damit das Verfahren (4.1.3) mit ρ(M ) = 0.7 < 1 konvergiert. Sei x0 = (21, − 19)T , dann erhalten wir den in der folgenden Tabelle aufgef¨ uhrten Konvergenzverlauf. Triviales Verfahren m xm,1 xm,2 εm := xm − A−1 b∞ 0 2.100000e+01 -1.900000e+01 2.000000e+01 10 8.116832e-01 8.116832e-01 1.883168e-01 40 9.999958e-01 9.999958e-01 4.244537e-06 70 1.000000e-00 1.000000e-00 9.566903e-11 96 1.000000e-00 1.000000e-00 8.881784e-15
εm /εm−1 7.000000e-01 7.000000e-01 7.000002e-01 6.956522e-01
Der Konvergenzverlauf zeigt, dass eine derartig primitive Wahl der Iterationsmatrix in der Regel zu keinem zufriedenstellenden Algorithmus f¨ uhren wird. Die Entwicklung effektiver Splitting-Methoden korreliert mit der gezielten Festlegung der Matrix B , die einerseits leicht invertierbar sein muss und andererseits eine gute Approximation der Matrix A mit dem Ziel ρ(M ) ≪ 1 darstellen soll.
76 4.1.1
4 Iterative Verfahren Jacobi-Verfahren
Das Jacobi-Verfahren zur iterativen L¨ osung des linearen Gleichungssystems Ax = b mit regul¨arer Matrix A ∈ Cn×n setzt nichtverschwindende Diagonalelemente aii = 0 , i = 1, . . . ,n der Matrix A voraus, so dass mit D = diag{a11 , . . . ,ann } eine regul¨are Diagonalmatrix vorliegt. Der Grundidee der Splitting-Methoden folgend, schreiben wir das lineare Gleichungssystem Ax = b in der ¨ aquivalenten Form −1 x = D −1 (D − A) x + D b. N J :=
M J :=
Mit Satz 4.8 ist das hiermit definierte lineare Iterationsverfahren ur m = 0,1,2, . . . xm+1 = D −1 (D − A)xm + D −1 b f¨
(4.1.4)
konsistent zur Matrix A , und wir erhalten die Komponentenschreibweise ⎞ ⎛ xm+1,i =
n ⎟ 1 ⎜ ⎜b i − aij xm,j ⎟ ur i = 1, . . . ,n und m = 0,1,2, . . . . ⎠ f¨ ⎝ aii j=1 j =i
Beim Jacobi-Verfahren wird die neue Iterierte xm+1 somit ausschließlich mittels der alten Iterierten xm ermittelt. Die Methode wird aus diesem Grund auch als Gesamtschrittverfahren bezeichnet und ist folglich unabh¨ angig von der gew¨ahlten Nummerierung der Unbekannten x = (x1 , . . . ,xn )T . Da es sich um eine Splitting-Methode handelt, ist die Konvergenz des Jacobi-Verfahrens einzig vom Spektralradius der Iterationsmatrix M J = D −1 (D − A) abh¨ angig. Dieser Wert kann laut Satz 2.35 durch jede beliebige Matrixnorm abgesch¨ atzt werden, wodurch sich die Konvergenz des Verfahrens ohne Berechnung der Eigenwerte anhand der Gr¨ oße der Matrixkoeffizienten u ufen l¨asst. ¨berpr¨ Satz 4.11 Erf¨ ullt die regul¨are Matrix A ∈ Cn×n mit aii = 0 , i = 1, . . . ,n das starke Zeilensummenkriterium n |aik | q∞ := max 0 , i = 1,2 , n1 + n2 = n gilt. Andernfalls heißt A irreduzibel mit A oder unzerlegbar. Die Reduzibilit¨at ist somit ausschließlich von der Besetzungsstruktur der Matrix und nicht von den absoluten Werten der Matrixkoeffizienten abh¨angig. Zudem haben die Diagonalelemente keinen Einfluss auf die Reduzibilit¨at. Satz 4.13 Sei die regul¨are Matrix A ∈ Cn×n irreduzibel und diagonaldominant, das heißt, es gilt n |aij | ≤ 1, (4.1.5) max i=1,...,n |aii | j=1 j =i
und es existiere ein k ∈ {1, . . . ,n} mit n |akj | < 1, |akk | j=1
(4.1.6)
j =k
ur jede dann konvergiert das Jacobi-Verfahren bei beliebigem Startvektor x0 ∈ Cn und f¨ beliebige rechte Seite b ∈ Cn gegen A−1 b .
78
4 Iterative Verfahren
¨ Die Grundidee des Satzes liegt in einer graphentheoretischen Uberlegung: Bezeichnen wir mit GA := {V A ,E A } den gerichteten Graphen der Matrix A , der aus den Knoten V A := {1, . . . ,n} und der Kantenmenge geordneter Paare E A := {(i,j) ∈ V A × V A | aij = 0} besteht. Eine Matrix A ist genau dann irreduzibel, wenn der zugeh¨orige gerichtete Graph GA zusammenh¨ angend ist, das heißt, wenn es zu je zwei Indizes i0 = i,iℓ = j ∈ V A einen gerichteten Weg der L¨ ange ℓ ∈ N (i0 ,i1 )(i1 ,i2 ) . . . (iℓ−1 ,iℓ ) ur k = 0, . . . ,ℓ − 1 gibt. mit (ik ,ik+1 ) ∈ E A f¨ Ist
em := xm − A−1 b
der Fehlervektor der m -ten Iterierten des Jacobi-Verfahrens, dann folgt mit (4.1.5) ur i = 1, . . . ,n , und mit (4.1.6) existiert ein k ∈ {1, . . . ,n} mit |em+1,i | ≤ em ∞ f¨ |em+1,k | ≤ γem ∞ mit γ < 1. Hiermit folgt |em+2,j | ≤ γem ∞ mit γ < 1
f¨ ur alle j ∈ {1, . . . ,n} mit (j,k) ∈ E A , und aufgrund des zusammenh¨angenden Graphen gilt em+n ∞ ≤ γem ∞ (4.1.7) mit γ < 1 , wodurch sich die Konvergenz des Jacobi-Verfahrens ergibt. Die Irreduzibilit¨at der Matrix stellt somit sicher, dass die Eigenschaft (4.1.6) bei diagonaldominanten Matrizen sp¨atestens nach n Iterationen zu einer betragsm¨aßigen Verringerung aller Komponenten innerhalb des Fehlervektors f¨ uhrt. Die Anzahl der ben¨otigten Iterationen wird hierbei durch den maximalen Wert der L¨ ange des jeweils k¨ urzesten gerichteten Weges zwischen Zeilen, die der Ungleichung (4.1.6) gen¨ ugen, und Zeilen i ∈ {1, . . . ,n} , die die Gleichung n |aij | =1 |aii | j=1 j =i
erf¨ ullen, bestimmt. Liegt eine vollbesetzte Matrix vor, die den Bedingungen des Satzes 4.13 gen¨ ugt, so ergibt sich die Ungleichung (4.1.7) sp¨atestens nach zwei Iterationen. Wir kommen nun zum Beweis des Satzes 4.13. Beweis: Betrachten wir die Iterationsmatrix M J = (mij )i,j=1,...,n des Jacobi-Verfahrens und definieren |M J | := (|mij |)i,j=1,...,n sowie y := (1, . . . ,1)T ∈ Rn , so gilt mit (4.1.5) 0 ≤ (|M J |y)i ≤ yi f¨ ur i = 1, . . . ,n,
(4.1.8)
und mit (4.1.6) existiert ein k ∈ {1, . . . ,n} mit 0 ≤ (|M J |y)k < yk .
(4.1.9)
ur i = 1, . . . ,n und alle m ∈ N . Existiert ein m ˜ ∈N Aus (4.1.8) folgt (|M J |m y)i ≤ yi f¨ ˜ mit (|M J |m y)j < yj , so erhalten wir f¨ ur alle m ≥ m ˜ mit (4.1.5) die Ungleichung
4.1 Splitting-Methoden
79 (|M J |m y)j < yj .
(4.1.10)
Mit tm := y − |M J |m y und m τ m := #{tm i | ti = 0, i = 1, . . . ,n}
ergibt sich unter Verwendung von (4.1.9) und (4.1.10) 0 < τ 1 ≤ τ 2 ≤ . . . ≤ τ m ≤ τ m+1 ≤ . . . . Nun nehmen wir an, es g¨ abe ein m ∈ {1, . . . ,n − 1} mit τ m = τ m+1 < n und f¨ uhren dieses zum Widerspruch. O.B.d.A. weise der Vektor tm die Form u m t = , u ∈ Rp f¨ ur 1 ≤ p < n, und ui > 0 f¨ ur i = 1, . . . ,p 0 auf, dann folgt mit (4.1.10) und τ m = τ m+1 v m+1 , v ∈ Rp , und vi > 0 f¨ ur i = 1, . . . ,p. t = 0 Sei |M J | =
|M 11 | |M 12 | |M 21 | |M 22 |
mit |M 11 | ∈ Rp×p , dann ergibt sich unter Verwendung der Ungleichung (4.1.8) v |M 11 |u m+1 m+1 m+1 m =t = y − |M J | y ≥ |M J |y − |M J | y = |M J |t = . 0 |M 21 |u Mit ui > 0 , i = 1, . . . ,p erhalten wir aufgrund der Nichtnegativit¨at der Elemente der Matrix |M 21 | die Gleichung |M 21 | = 0, wodurch M j reduzibel ist. Da sich die Besetzungsstrukturen von M j und A bis auf die Diagonalelemente gleichen und diese keinen Einfluss auf die Reduzibilit¨at haben, liegt demzufolge ein Widerspruch zur Irreduzibilit¨ at der Matrix A vor. Somit folgt im Fall τ m < n direkt 0 < τ 1 < τ 2 < . . . < τ m < τ m+1 f¨ ur m ∈ {1, . . . ,n − 1} , wodurch sich die Existenz eines m ∈ {1, . . . ,n} mit 0 ≤ (|M J |m y)i < yi f¨ ur i = 1, . . . ,n ergibt. Hiermit erhalten wir m m ρ(M J )m ≤ ρ(M m J ) ≤ M J ∞ ≤ |M J | ∞ < 1
und folglich ρ(M J ) < 1 .
80
4 Iterative Verfahren
Beispiel 4.14 F¨ ur das Gleichungssystem Au = g mit der aus der Diskretisierung des Poisson-Problems resultierenden Matrix A (siehe (1.0.3)) konvergiert das JacobiVerfahren bei beliebigem g ∈ RN und u0 ∈ RN . Diese Behauptung belegen wir durch den Nachweis der Voraussetzungen des Satzes 4.13. Zun¨achst erf¨ ullt A das schwache Zeilensummenkriterium, und es gilt n |a1i | 1 1 = + < 1, |a 4 4 11 | i=2
so dass die Irreduzibilit¨ at der Matrix zu zeigen bleibt. Als ersten Schritt weisen wir die 2 2 Irreduzibilit¨at der in der Matrix A ∈ RN ×N enthaltenen Submatrizen B ∈ RN ×N nach. Seien i,j ∈ V B gegeben. Aufgrund der vorliegenden Symmetrie der Matrix k¨onnen wir o. B. d. A. i < j voraussetzen. Wegen (ℓ,ℓ + 1) ∈ E B , ℓ = 1, . . . ,N − 1 erhalten wir durch (i,i + 1)(i + 1,i + 2) . . . (i + k − 1,j) mit k = j − i einen gerichteten Weg von i nach j , womit die Irreduzibilit¨at der Matrix B folgt. Wir kommen nun zur Matrix A : Seien i,j ∈ V A gegeben, wobei analog zur Matrix B aufgrund der Symmetrie der Matrix A wiederum i < j o. B. d. A. angenommen wird, dann existiert stets eine eindeutige Darstellung der Indizes in der Form i = i1 N + i2 und j = j1 N + j2 mit 0 ≤ i1 ≤ j1 ≤ N − 1 und i2 ,j2 ∈ {1, . . . ,N } . Gilt i1 = j1 , so existiert aufgrund der Irreduzibilit¨at der Matrix B ein gerichteter Weg von i nach j . Im Fall i1 < j1 existiert zun¨achst ein gerichteter Weg von i nach ˜j = i1 N + j2 ≤ N 2 − N . Wegen (ℓ,ℓ + N ) ∈ E A , f¨ ur l = 1, . . . ,N 2 − N erhalten wir durch (˜j,˜j + N )(˜j + N,˜j + 2N ) . . . (˜j + (k − 1)N,j) mit k = j1 − i1 die Vervollst¨ andigung des gerichteten Weges von i nach j . Eine reduzible Matrix ergibt sich beispielsweise bei der Diskretisierung der KonvektionsDiffusions-Gleichung im Grenzfall eines verschwindenden Diffusionsparameters. In diesem Fall kann das entsprechende Gleichungssystem jedoch durch einfache Vorw¨artselimination gel¨ost werden. Beispiel 4.15 F¨ ur das Modellproblem (4.1.2) 0.3 0.7 −0.4 ,b= A= 0.3 −0.2 0.5 liegt mit q∞ := max
i=1,2
2 |aij | j=1 j =i
|aii |
= max
4 2 , 7 5
1
j L = (ℓij )i,j=1,...,n mit ℓij = (4.1.11) 0, sonst und die strikte rechte obere Dreiecksmatrix R = (rij )i,j=1,...,n
mit
rij =
aij , i < j 0, sonst.
(4.1.12)
Hierdurch erhalten wir das zu Ax = b ¨ aquivalente Gleichungssystem (D + L)x = −Rx + b und x = −(D + L)−1 R x + (D + L)−1 b. M GS :=
Somit gilt
N GS :=
M GS = (D + L)−1 (D + L − A) = I − N GS A, und das lineare Iterationsverfahren
(4.1.13)
82
4 Iterative Verfahren xm+1 = −(D + L)−1 Rxm + (D + L)−1 b f¨ ur m = 0,1, . . .
(4.1.14)
ist konsistent zur Matrix A . Zur Herleitung der Komponentenschreibweise betrachten wir die i− te Zeile des Iterationsverfahrens (4.1.14) in der Form gem¨ aß Gleichungssystem (4.1.13) i j=1
aij xm+1,j = −
n
aij xm,j + bi .
j=i+1
Seien xm+1,j f¨ ur j = 1, . . . ,i − 1 bekannt, dann kann xm+1,i durch ⎞ ⎛ i−1 n 1 ⎝ aij xm+1,j − aij xm,j ⎠ f¨ xm+1,i = ur i = 1, . . . ,n und m = 0,1,2, . . . bi − aii j=1 j=i+1
(4.1.15) ermittelt werden. Aus dieser Darstellung wird deutlich, dass beim Gauß-Seidel-Verfahren zur Berechnung der i -ten Komponente der (m + 1) -ten Iterierten neben den Komponenten der alten m -ten Iterierten xm die bereits bekannten ersten i − 1 Komponenten der (m + 1) -ten Iterierten xm+1 verwendet werden. Das Verfahren wird daher auch als Einzelschrittverfahren bezeichnet und ist abh¨angig von der gew¨ahlten Nummerierung der Unbekannten (x1 , . . . ,xn )T . Verglichen mit dem Jacobi-Verfahren wird beim Gauß-Seidel-Algorithmus mit D + L eine bessere Approximation der Matrix A verwendet, wodurch ein kleiner Spektralradius der Iterationsmatrix und folglich eine schnellere Konvergenz erwartet werden darf. ur i = 1, . . . ,n gegeben. Satz 4.16 Sei die regul¨are Matrix A ∈ Cn×n mit aii = 0 f¨ Erf¨ ullen die durch pi =
i−1 |aij | j=1
|aii |
pj +
n |aij | f¨ ur i = 1,2, . . . ,n |aii | j=i+1
rekursiv definierten Zahlen p1 , . . . ,pn die Bedingung p := max pi < 1, i=1,...,n
ur jede dann konvergiert das Gauß-Seidel-Verfahren bei beliebigem Startvektor x0 und f¨ beliebige rechte Seite b gegen A−1 b . Beweis: Unser Ziel ist der Nachweis M GS ∞ < 1 . Sei x ∈ Cn mit x∞ = 1 . F¨ ur z := M GS x = −(D + L)−1 Rx gilt zi = −
i−1 aij j=1
aii
zj −
n aij xj . a j=i+1 ii
Somit folgt unter Verwendung von x∞ = 1 die Absch¨atzung
(4.1.16)
4.1 Splitting-Methoden
83 |z1 | ≤
n |aij | j=2
|aii |
= p1 < 1.
ur die i -te Seien z1 , . . . ,zi−1 mit |zj | ≤ pj , j = 1, . . . ,i − 1 < n gegeben, dann folgt f¨ Komponente des Vektors z mit (4.1.16) |zi | ≤
i−1 |aij |
|aii |
j=1
pj +
n |aij | = pi < 1. |aii |
j=i+1
Hieraus ergibt sich z∞ < 1 und damit aufgrund der Kompaktheit des Einheitskreises die Absch¨atzung M GS ∞ = sup M GS x∞ < 1, x∈Cn x∞ =1
wodurch ρ(M GS ) < 1 gilt und die Konvergenz des Gauß-Seidel-Verfahrens vorliegt. Beispiel 4.17 Wie bereits im Beispiel 4.14 betrachten wir die Matrix A gem¨aß Beispiel 1.1. Mit pj = 0 f¨ ur alle j ≤ 0 erhalten wir p1
=
1 4
pi
≤
1 p 4 i−1
pi
≤
1 p 4 i−N
+
1 4
< 1, +
1 4
+
1 4
< 1 f¨ ur i = 2, . . . ,N,
+ 14 pi−1 +
1 4
+
1 4
< 1 f¨ ur i = N + 1, . . . ,N 2 ,
und folglich die Konvergenz des Gauß-Seidel-Verfahrens. Strikt diagonaldominante Matrizen erf¨ ullen wegen
n
|aij | i=1,...,n j=1 |aii | j =i
max
< 1 inh¨arent die Be-
dingungen des Satzes 4.16, wodurch sich das folgende Korollar ergibt: Korollar 4.18 Sei die regul¨are Matrix A ∈ Cn×n strikt diagonaldominant, dann konvergiert das Gauß-Seidel-Verfahren bei beliebigem Startvektor x0 und f¨ ur jede beliebige rechte Seite b gegen A−1 b . Beispiel 4.19 Die Matrix A=
0.7 −0.4 −0.2 0.5
ist strikt diagonaldominant, wodurch die Konvergenz des Gauß-Seidel-Verfahrens sichergestellt ist. Die zugeh¨ orige Iterationsmatrix 4 0 7 M GS = −(D + L)−1 R = 8 0 35 weist die Eigenwerte λ1 = 0 und λ2 =
8 35
auf, so dass
ρ(M GS ) = ρ(M J )2 =
8 ≈ 0.22857 35
84
4 Iterative Verfahren
gilt und mit etwa doppelt so schneller Konvergenz wie beim Jacobi-Verfahren gerechnet werden darf. F¨ ur den Startvektor x0 = (21, − 19)T und die rechte Seite b = (0.3,0.3)T erhalten wir diese Erwartung mit dem in der folgenden Tabelle aufgelisteten Konvergenzverlauf best¨atigt. Gauß-Seidel-Verfahren m xm,1 xm,2 εm := xm − A−1 b∞ 0 2.100000e+01 -1.900000e+01 2.000000e+01 5 9.688054e-01 9.875222e-01 3.119462e-02 10 9.999805e-01 9.999922e-01 1.946209e-05 15 1.000000e-00 1.000000e-00 1.214225e-08 20 1.000000e-00 1.000000e-00 7.575385e-12 25 1.000000e-00 1.000000e-00 4.551914e-15
4.1.3
εm /εm−1 2.285714e-01 2.285714e-01 2.285714e-01 2.285702e-01 2.204301e-01
Relaxationsverfahren
Wir schreiben das lineare Iterationsverfahren xm+1 = B −1 (B − A)xm + B −1 b in der Form
xm+1 = xm + B −1 (b − Axm ) .
(4.1.17)
rm :=
Somit kann xm+1 als Korrektur von xm unter Verwendung des Vektors r m interpretiert werden. Beschr¨anken wir unsere Betrachtungen zun¨ achst auf Verfahren, die einen Gesamtschrittcharakter aufweisen, so liegt das Ziel der Relaxationsverfahren in einer Verbesserung der Konvergenzgeschwindigkeit der Methode (4.1.17) durch Gewichtung des Korrekturvektors rm . Wir modifizieren (4.1.17) zu xm+1 = xm + ωB −1 (b − Axm ) mit ω ∈ R+ . Ausgehend von xm suchen wir das optimale xm+1 in Richtung rm .
rm xm+1
Bild 4.1
xm
Berechnung der Iterierten beim Relaxationsverfahren
Optimal bedeutet im obigen Sinne, dass der Spektralradius der Iterationsmatrix minimal wird. Mit
4.1 Splitting-Methoden
85 xm+1
= xm + ωB −1 (b − Axm ) −1 = (I − ωB −1 A) xm + ωB b
(4.1.18)
N (ω):=
M (ω):=
muss ω ∈ R+ folglich derart bestimmt werden, dass ρ(M (ω)) minimal wird, das heißt ω = arg min ρ(M (α)). α∈R+
Der Gewichtungsfaktor ω heißt Relaxationsparameter, und die Methode (4.1.18) wird ¨ f¨ ur ω < 1 als Unterrelaxationsverfahren und f¨ ur ω > 1 als Uberrelaxationsverfahren bezeichnet. Betrachten wir nun als zugrundeliegende Verfahren diejenigen, die auf einem Einzelschrittansatz beruhen. F¨ ur diese Algorithmen ist die erw¨ahnte Vorgehensweise zwar ebenfalls durchf¨ uhrbar, jedoch un¨ ublich. Die Relaxation wird bei diesen Methoden bei der Iteration jeder Einzelkomponente ber¨ ucksichtigt. Die genaue Vorgehensweise wird am Beispiel des Gauß-Seidel-Verfahrens im Abschnitt 4.1.3.2 erl¨autert.
4.1.3.1
Jacobi-Relaxationsverfahren
Gem¨aß (4.1.17) schreiben wir das Jacobi-Verfahren in der Form xm+1 = xm + D−1 (b − Axm ) f¨ ur m = 0,1, . . . . Somit besitzt das Jacobi-Relaxationsverfahren die Darstellung xm+1
= xm + ωD−1 (b − Axm ) −1 ur m = 0,1, . . . , = (I − ωD −1 A) xm + ωD b f¨ N j (ω):=
M J (ω):=
und wir erhalten die Komponentenschreibweise n ω bi − xm+1,i = xm,i + aij xm,j aii j=1 n ω = (1 − ω)xm,i + ur i = 1, . . . ,n und m = 0,1, . . . . bi − aij xm,j f¨ aii j=1 j =i
Satz 4.20 Die Iterationsmatrix des Jacobi-Verfahrens M J habe nur reelle Eigenwerte λ1 ≤ . . . ≤ λn mit den zugeh¨origen linear unabh¨angigen Eigenvektoren u1 , . . . ,un , und es gelte ρ(M J ) < 1 . Dann besitzt die Iterationsmatrix M J (ω) des Jacobi-Relaxationsverfahrens die Eigenwerte ur i = 1, . . . ,n, μi = 1 − ω + ωλi f¨ und es gilt ωopt = arg min+ ρ(M J (ω)) = ω∈R
2 . 2 − λ1 − λn
86
4 Iterative Verfahren
Beweis: Mit −D−1 (L + R)ui = M J ui = λi ui f¨ ur i = 1, . . . ,n erhalten wir M J (ω)ui
= (I − ωD−1 A)ui =
(1 − ω)I − ωD −1 (L + R) ui
= (1 − ω + ωλi )ui f¨ ur i = 1, . . . ,n. angig sind, existieren keine weiteren EiDa die Eigenvektoren u1 , . . . ,un linear unabh¨ genwerte. F¨ ur die Eigenwerte μi (ω) = 1 − ω + ωλi , (i = 1, . . . ,n) der Iterationsmatrix des Jacobi-Relaxationsverfahrens gilt mit ω ≥ 0 μ1 (ω) ≤ . . . ≤ μn (ω).
f! 1
f4=3
n
f1=2 1
-1
n
f4=3 f3=2
1
1
-1
Bild 4.2 Verlauf der Relaxationsfunktionen fω in Abh¨ angigkeit vom gew¨ ahlten Relaxationsparameter ω
Betrachten wir die in der Abbildung 4.2 f¨ ur verschiedene Relaxationsparameter ω dargestellte Relaxationsfunktion fω : R λ
→ R fω
→ fω (λ) = 1 − ω + ωλ,
so liegt die Idee nahe, den optimalen Relaxationsparameter durch die Bedingung μn (ω ∗ ) = fω∗ (λn ) = −fω∗ (λ1 ) = −μ1 (ω ∗ ) zu bestimmen. Hierdurch erhalten wir aus
4.1 Splitting-Methoden
87
μn (ω ∗ ) = 1 − ω ∗ + ω ∗ λn = −(1 − ω ∗ + ω ∗ λ1 ) = −μ1 (ω ∗ ) unter Verwendung von ρ(M j ) < 1 die Darstellung ω∗ =
2 > 0. 2 − λ1 − λn
ur alle ω ∈ R+ , so gilt stets μn (ω ∗ ) = −μ1 (ω ∗ ) ≥ 0 . Ber¨ ucksichtigen wir fω (1) = 1 f¨ Zum Nachweis der Optimalit¨ at sei ω > ω ∗ > 0 . Somit folgt μ1 (ω) = 1 − ω (1 − λ1 ) < 1 − ω ∗ (1 − λ1 ) = μ1 (ω ∗ ) ≤ 0, >0
wodurch sich
ρ(M J (ω)) ≥ |μ1 (ω)| > |μ1 (ω ∗ )| = ρ(M J (ω ∗ ))
ergibt. Eine analoge Aussage erhalten wir im Fall ω < ω ∗ durch Betrachtung der Eigenwerte μn (ω) und μn (ω ∗ ) , so dass ω ∗ = ωopt = arg min+ ρ(M J (ω)) ω∈R
folgt. Gleichungssysteme, bei denen die Iterationsmatrix des Jacobi-Verfahrens eine um den Nullpunkt symmetrische Eigenwertverteilung besitzt, liefern aufgrund des Satzes 4.20 den optimalen Relaxationsparameter ωopt = 1 . Folglich kann mit dem Relaxationsansatz in solchen F¨allen keine Beschleunigung des zugrundeliegenden Gesamtschrittverfahrens erzielt werden. Die betrachtete Modellgleichung (4.1.2) weist diese Eigenschaft auf, weshalb auf eine Diskussion der Methode in Bezug auf diesen Sachverhalt verzichtet wird.
4.1.3.2
Gauß-Seidel-Relaxationsverfahren
Wir betrachten die Komponentenschreibweise des Gauß-Seidel-Verfahrens (4.1.15) mit gewichteter Korrekturvektorkomponente rm,i in der Form i−1 n ω xm+1,i = xm,i + aij xm+1,j − aij xm,j bi − aii j=1 j=i i−1 n ω bi − aij xm+1,j − aij xm,j = (1 − ω)xm,i + aii j=1 j=i+1 f¨ ur i = 1, . . . ,n und m = 0,1, . . . . Hieraus erhalten wir + , (I + ωD−1 L)xm+1 = (1 − ω)I − ωD−1 R xm + ωD −1 b, wodurch
D −1 (D + ωL)xm+1 = D−1 [(1 − ω)D − ωR] xm + ωD−1 b
und somit das Gauß-Seidel-Relaxationsverfahren in der Darstellung
xm+1 = (D + ωL)−1 [(1 − ω)D − ωR] xm + ω(D + ωL)−1 b M GS (ω):=
folgt.
N GS (ω):=
88
4 Iterative Verfahren
Satz 4.21 Sei A ∈ Cn×n mit aii = 0 f¨ ur i = 1, . . . ,n , dann gilt f¨ ur ω ∈ R ρ(M GS (ω)) ≥ |ω − 1|. Beweis: Seien λ1 , . . . ,λn die Eigenwerte von M GS (ω) , dann folgt n
λi i=1
= det M GS (ω) = det((D + ωL)−1 ) det((1 − ω)D − ωR) = det(D −1 ) det((1 − ω)D) = det(D)−1 (1 − ω)n det D = (1 − ω)n .
Hiermit ergibt sich ρ(M GS (ω)) = max |λi | ≥ |1 − ω|. i=1,...,n
Der obige Satz besagt, dass eine Wahl des Relaxationsparameters ω ≤ 0 stets zu einem divergenten Verfahren f¨ uhrt, so dass die beim Relaxationsverfahren zun¨achst willk¨ urlich geforderte Positivit¨ at des Relaxationsparameters an dieser Stelle im Kontext des GaußSeidel-Relaxationsverfahrens seine Begr¨ undung findet. Analog beinhaltet der Satz die Forderung ω < 2 . Beide Bedingungen fassen wir in dem folgenden Korollar zusammen. Korollar 4.22 Das Gauß-Seidel-Relaxationsverfahren konvergiert h¨ochstens f¨ ur einen Relaxationsparameter ω ∈ (0,2) . Satz 4.23 Sei A hermitesch und positiv definit, dann konvergiert das Gauß-SeidelRelaxationsverfahren genau dann, wenn ω ∈ (0,2) ist. Beweis: ur i = 1, . . . ,n , wodurch Aus der positiven Definitheit der Matrix A folgt aii ∈ R+ f¨ sich die Wohldefiniertheit des Gauß-Seidel-Relaxationsverfahrens ergibt. ⇒ “ Das Gauß-Seidel-Relaxationsverfahren sei konvergent. ” In diesem Fall ergibt sich ω ∈ (0,2) unmittelbar aus Korollar 4.22. ⇐ “ Gelte ω ∈ (0,2) . ” Sei λ Eigenwert von M GS (ω) zum Eigenvektor x ∈ Cn . Da A hermitesch ist folgt L∗ = R und somit ((1 − ω)D − ωL∗ )x = λ(D + ωL)x. Mit
und
2 [(1 − ω)D − ωL∗ ] = (2 − ω)D + ω(−D − 2L∗ ) = (2 − ω)D − ωA + ω(L − L∗ ) 2(D + ωL) = (2 − ω)D + ω(D + 2L) = (2 − ω)D + ωA + ω(L − L∗ )
4.1 Splitting-Methoden
89
ergibt sich f¨ ur den Eigenvektor x ∈ Cn λ((2 − ω)x∗ Dx + ωx∗ Ax + ωx∗ (L − L∗ )x) = 2λx∗ (D + ωL)x = 2x∗ [(1 − ω)D − ωL∗ ]x = (2 − ω)x∗ Dx − ωx∗ Ax + ωx∗ (L − L∗ )x. Unter Verwendung der imagin¨ aren Einheit i schreiben wir x∗ (L − L∗ )x = x∗ Lx − x∗ L∗ x = x∗ Lx − x∗ Lx = i · s, s ∈ R. Zudem gilt
d := x∗ Dx ∈ R+ ,
a := x∗ Ax ∈ R+ ,
so dass
λ((2 − ω)d + ωa + iωs) = (2 − ω)d − ωa + iωs folgt. Division durch ω und Einsetzen von μ =
2−ω ω
liefert
λ(μd + a + is) = μd − a + is. Aus der Voraussetzung ω ∈ (0,2) erhalten wir μ ∈ R+ , so dass mit a,d ∈ R+ die Ungleichung |μd + is − a| < |μd + is − (−a)| und daher die Absch¨atzung |λ| =
|μd + is − a| 1 f¨ ur alle Mit ω ∈ (0,2) k¨onnen wir ω − vernachl¨ λ ∈ [0,1) . Zudem gilt f¨ ur alle λ ∈ [0,1) und ω ∈ (0,2) 1 ∂g (ω,λ) = λ2 ω − 1 < 0. ∂ω 2 Wir erhalten die folgenden drei F¨ alle: (1) 2 > ω > ω + (λ) : Die beiden Eigenwerte μ+ (ω,λ) und μ− (ω,λ) sind komplex, und es gilt |μ+ (ω,λ)| = |μ− (ω,λ)| = |ω − 1| = ω − 1 (2) ω = ω + (λ) : Aus (4.1.22) folgt λ2 =
4 4 − 2 , wodurch sich ω ω
|μ+ (ω,λ)| = |μ− (ω,λ)| = ergibt.
1 2 2 λ ω − (ω − 1) = 2ω − 2 − (ω − 1) = ω − 1 2
4.1 Splitting-Methoden
93
(3) 0 < ω < ω + (λ) : Die Gleichung (4.1.21) liefert zwei reelle Eigenwerte 0 1 2 2 1 2 2 ± μ (ω,λ) = λ ω − (ω − 1) ± λω λ ω − (ω − 1) 2 4 >0
≥0
mit
max{|μ+ (ω,λ)|,|μ− (ω,λ)|} = μ+ (ω,λ). Zur Bestimmung von ρ(M GS (ω)) sind wir in allen drei F¨allen nur an μ+ (ω,λ) interessiert. Damit betrachten wir f¨ ur λ ∈ [0,1) - + μ (ω,λ) f¨ ur 0 < ω < ω + (λ) (4.1.23) μ(ω,λ) = ω−1 f¨ ur ω + (λ) ≤ ω < 2. Hiermit gilt f¨ ur 0 < ω < ω + (λ) und λ ∈ [0,1) 0 1 λω 2 1 2 2 ∂μ 1 2 2 (ω,λ) = λω + ω λ ω − (ω − 1) + λω " > 0, ∂λ 4 2 1 λ2 ω 2 − (ω − 1) ≥0 4 >0
(4.1.24)
≥0
und wegen
μ(ω,λ) =
ωλ + 2
0
2 1 2 2 λ ω − (ω − 1) 4
folgt ∂μ (ω,λ) = 2 ∂ω
ωλ + 2
0
⎤ ⎡ 1 2 λ ω − 1 1 2 2 λ 1 ⎦. λ ω − (ω − 1) ⎣ + " 2 4 2 2 1 λ2 ω 2 − (ω − 1) 4 >0
Wir schreiben
q(ω,λ):=
⎛
⎞
⎜ 01 ⎟ 1 ⎜ ⎟ q(ω,λ) = " λ2 ω 2 − (ω − 1) + λ2 ω − 1⎟ . ⎜λ 4 2 ⎝ ⎠ 2 14 λ2 ω 2 − (ω − 1) q2 (ω,λ):= q1 (ω,λ):= 1
>0
F¨ ur die Funktionen q1 und q2 gilt hierbei f¨ ur alle λ ∈ [0,1) und ω ∈ (0,ω + (λ)) q1 (ω,λ) ≥ 0
und q2 (ω,λ) < 0.
Desweiteren liefert [q1 (ω,λ)]2 =
ω 2 λ4 ω 2 λ4 2 + λ2 − ωλ2 < + 1 − ωλ2 = [q2 (ω,λ)] 4 4
94
4 Iterative Verfahren
die Ungleichung ∂μ (ω,λ) < 0 f¨ ur alle λ ∈ [0,1) und ω ∈ (0,ω + (λ)). ∂ω Aus (4.1.23) erhalten wir zudem μ(0,λ) = 1 = μ(2,λ) , so dass |μ(ω,λ)| < 1 f¨ ur alle λ ∈ [0,1) und ω ∈ (0,2) folgt, wodurch sich direkt ρ(M GS (ω)) < 1 ergibt. F¨ ur jeden Eigenwert λ wird |μ(ω,λ)| minimal f¨ ur ωopt = ω + (λ) . Gleichung (4.1.23) liefert somit ρ(M GS (ωopt ))
=
|μ(ωopt ,ρ(M J ))|
=
ωopt (ρ(M J )) − 1
(4.1.22)
2 −1 1 + 1 − ρ2 1 − 1 − ρ2 . 1 + 1 − ρ2
=
=
Bemerkung: Da f¨ ur alle λ ∈ (0,1) lim
ωցωopt
∂μ (ω,λ) = 1 und ∂ω
lim
ωրωopt
∂μ (ω,λ) = −∞ ∂ω
(4.1.25)
gilt, sollte ω im Zweifelsfall eher gr¨ oßer ωopt als kleiner ωopt gew¨ahlt werden. Zudem liegt der optimale Relaxationsparameter f¨ ur die den Voraussetzungen des Satzes 4.28 gen¨ ugenden Matrizen im Intervall [1,2) , weshalb dieses Relaxationsverfahren auch als SOR-Methode (successive overrelaxation method) bezeichnet wird. Bei einem ged¨ampften Gauß-Seidel-Verfahren ( ω < 1 ) spricht man hingegen auch von der successive underrelaxation method. Beispiel 4.29 Wir betrachten wiederum das Modellproblem Ax = b mit 0.3 0.7 −0.4 . , b= A= 0.3 −0.2 0.5 Die Matrix A ist als Tridiagonalmatrix konsistent geordnet, und die Eigenwerte von M J = −D−1 (L + R) sind laut Beispiel 4.15 λ1,2 = ±
0
8 ∈ R, 35
so dass ρ(M J ) < 1 gilt. Unter Verwendung dieser Eigenschaften liefert der Satz 4.28 die Konvergenz des Gauß-Seidel-Relaxationsverfahrens xm+1 = M GS (ω)xm + N GS (ω)b
4.1 Splitting-Methoden
95
f¨ ur alle ω ∈ (0,2) . Der optimale Relaxationsparameter lautet ωopt = und liefert
2 " 1+ 1−
ρ(M GS (ω ∗ )) =
1− 1+
8 35
"
"
≈ 1.0648
1−
8 35
1−
8 35
≈ 0.0648.
" 8 Die Abbildung 4.3 zeigt den f¨ ur λ = 35 aufgetragenen Verlauf des Spektralradius in Abh¨angigkeit vom Relaxationsparameter. Desweiteren pr¨asentiert die Tabelle den Konvergenzverlauf des Gauß-Seidel-Relaxationsverfahrens mit optimalem Relaxationsparameter beim Modellproblem unter Verwendung des Startvektors x0 = (21, − 19)T .
0.8
0.6
! 0.4
0.2
0.0 0.0
Bild 4.3
0.5
1.0
!
1.5
2.0
Spektralradius in Abh¨ angigkeit vom Relaxationsparameter
SOR-Gauß-Seidel-Verfahren m xm,1 xm,2 εm := xm − A−1 b∞ 0 2.100000e+01 -1.900000e+01 2.000000e+01 5 9.987226e-01 9.997003e-01 1.277401e-03 10 1.000000e-00 1.000000e-00 2.942099e-09 15 1.000000e-00 1.000000e-00 4.884981e-15
εm /εm−1 8.134709e-02 7.205638e-02 6.727829e-02
Die Abbildung 4.3 verdeutlicht nachdr¨ ucklich den Verlauf des Spektralradius in der N¨ahe des optimalen Relaxationsparameters, wodurch das analytisch ermittelte Verhalten unterstrichen wird.
96 4.1.4
4 Iterative Verfahren Richardson-Verfahren
Das Richardson-Verfahren basiert auf dem Grundalgorithmus xm+1 = (I − A)xm + b (siehe Beispiel 4.10) und einer Gewichtung des Korrekturvektors r m = b − Axm mit einer Zahl Θ ∈ C . Wir erhalten xm+1 = (I − ΘA) xm + M R (Θ):=
(4.1.26)
b
N R (Θ):=
oder in Komponentenschreibweise
xm+1,i = xm,i + Θ(bi −
ΘI
n
aij xm,j ).
j=1
Lemma 4.30 Sei A ∈ Cn×n mit σ(A) ⊂ R gegeben, und seien λmax = max λ sowie λ∈σ(A)
ur alle Θ ∈ R λmin = min λ , dann gilt f¨ λ∈σ(A)
σ(M R (Θ)) ⊂ R und f¨ ur alle Θ ∈ C ρ(M R (Θ)) = max{|1 − Θλmax |,|1 − Θλmin |}. Beweis: Mit M R (Θ) = I −ΘA weisen alle Eigenwerte der Matrix M R (Θ) die Form μ = 1−Θλ mit λ ∈ σ(A) auf. Mit Θ ∈ R und σ(A) ⊂ R sind alle Eigenwerte von M R (Θ) reellwertig, und es gilt σ(M R (Θ)) ⊂ R . F¨ ur gegebenes Θ ∈ C betrachten wir die durch p : [a,b] → R λ
→ p(λ) = |1 − Θλ|
definierte Funktion, die auf [a,b] kein lokales Maximum besitzt. Hiermit gilt max p(λ) = max{|1 − Θa|,|1 − Θb|},
λ∈[a,b]
und wir erhalten ρ(M R (Θ)) = max p(λ) = max {|1 − Θλmin |,|1 − Θλmax |} . λ∈σ(A)
In Anlehnung an das Gauß-Seidel-Relaxationsverfahren werden wir mit den folgenden zwei S¨atzen den Konvergenzbereich der Richardson-Iteration in Abh¨angigkeit vom Parameter Θ sowie dessen optimalen Wert Θopt bestimmen.
4.1 Splitting-Methoden
97
Satz 4.31 Seien A ∈ Cn×n mit σ(A) ⊂ R+ und λmax = max λ , λmin = min λ , λ∈σ(A)
λ∈σ(A)
dann konvergiert das Richardson-Verfahren (4.1.26) f¨ ur Θ ∈ R genau dann, wenn 0 ρ(M R (Θ)) ≥ |1 − Θλmax | ≥ 1 − Θλmax , womit Θλmax > 0 und damit aufgrund des positiven reellen Spektrums von A die Ungleichung Θ > 0 folgt. Weiter gilt −1 < −ρ(M R (Θ)) ≤ −|1 − Θλmax | ≤ 1 − Θλmax , wodurch sich Θλmax < 2 und mit λmax > 0 die Absch¨atzung Θ
0 f¨ ur i = 1, . . . ,n , so dass neben der Richardson-Methode auch die Jacobi- und Gauß-SeidelVerfahren wohldefiniert sind.
100
4 Iterative Verfahren
(1) B J (ω) = ω1 D = ω1 diag{a11 , . . . ,ann } ist symmetrisch und mit ω,aii ∈ R+ f¨ ur i = 1, . . . ,n zudem positiv definit1 . 1 I ist das Richardson-Verfahren genau dann eine symmetrische (2) Mit B R (Θ) = Θ Splitting-Methode, wenn Θ ∈ R+ gilt.
(3) Das Gauß-Seidel-Relaxationsverfahren ist unabh¨angig von einer speziellen Wahl des Relaxationsparameters ω ∈ (0,2) keine symmetrische Splitting-Methode, da die Matrix B GS (ω) = ω1 (D + ωL) f¨ ur alle L = 0 unsymmetrisch ist.
Wir wollen im Folgenden am Beispiel des Gauß-Seidel-Relaxationsverfahrens eine M¨oglichkeit der Symmetrisierung unsymmetrischer Splitting-Methoden vorstellen. Entspreche A = D + L + R der u ¨blichen Zerlegung der Matrix A , dann definieren wir mit ur m = 0,1, . . . xm+1 = −(D + R)−1 L xm + (D + R)−1 b f¨ M RGS :=
N RGS :=
das r¨ uckw¨arts durchgef¨ uhrte Gauß-Seidel-Verfahren. Die Komposition der beiden GaußSeidel-Verfahren entspricht der Durchf¨ uhrung zweier aufeinanderfolgender Iterationvorschriften. Durch eine Zusammenfassung der beiden Einzelschritte zu einem Iterationsschritt erhalten wir mit xm+1/2 = M GS xm + N GS b die Darstellung xm+1 = M RGS xm+1/2 + N RGS b = M RGS M GS xm + (M RGS N GS + N RGS ) b. M SGS :=
N SGS :=
F¨ ur das hieraus entstandene symmetrische Gauß-Seidel-Verfahren gelten folglich M SGS = −(D + R)−1 L −(D + L)−1 R = (D + R)−1 L(D + L)−1 R
und N SGS
=
−(D + R)−1 L (D + L)−1 + (D + R)−1
= (D + R)−1 I − L(D + L)−1 = (D + R)−1 D(D + L)−1 .
Analog erhalten wir das symmetrische Gauß-Seidel-Relaxationsverfahren (symmetrisches SOR-Verfahren = SSOR-Verfahren) als Kombination der relaxierten Einzelverfahren in der Form xm+1 = M SGS (ω)xm + N SGS (ω)b mit 1
Es sei an dieser Stelle angemerkt, dass bei allen Relaxationsverfahren ω > 0 vorausgesetzt wurde.
4.1 Splitting-Methoden
101
M SGS (ω) = (D + ωR)−1 ((1 − ω)D − ωL) (D + ωL)−1 ((1 − ω)D − ωR) und N SGS (ω) = ω(2 − ω) (D + ωR)−1 D(D + ωL)−1 .
(4.1.27)
F¨ ur jede positiv definite und hermitesche Matrix A ∈ Cn×n existiert eine unit¨are Matrix Q ∈ Cn×n mit ur i = 1, . . . ,n. D = Q∗ AQ = diag {d11 , . . . ,dnn } mit dii > 0 f¨ Dann sei im Folgenden stets 7 6 1/α Q. A1/α := Q∗ D1/α Q = Q∗ diag d11 , . . . ,d1/α nn
Im Fall einer positiv definiten, symmetrischen Matrix A ∈ Rn×n ist Q ∈ Rn×n orthogonal. Satz 4.36 Das symmetrische Gauß-Seidel-Relaxationsverfahren ist f¨ ur ω ∈ (0,2) eine konsistente symmetrische Splitting-Methode. Beweis: Mit M GS (ω) = I − N GS (ω)A und M RGS (ω) = I − N RGS (ω)A erhalten wir I − N SGS (ω)A = I − (M RGS (ω)N GS (ω) + N RGS (ω)) A = I − N RGS (ω)A −M RGS (ω) N GS (ω)A =M RGS (ω)
=I−M GS (ω)
= M RGS (ω)M GS (ω)
= M SGS (ω),
(4.1.28)
wodurch das SSOR eine konsistente Splitting-Methode repr¨asentiert. Sei A positiv definit und symmetrisch, dann gelten aii > 0 ( i = 1, . . . ,n ) und L = RT . √ √ a11 , . . . , ann , dann folgt mit B SGS (ω) = N −1 Sei D1/2 = diag SGS (ω) die Gleichung B SGS (ω) =
=
1 (D + ωL)D −1 (D + ωR) ω(2 − ω)
1 ω(2 − ω)
= C T C.
1 D + ωRT D −1/2 D −1/2 (D + ωR) ω(2 − ω) C :=
102
4 Iterative Verfahren
Die Voraussetzungen ω ∈ (0,2) und aii > 0 ( i = 1, . . . ,n ) liefern die Regularit¨at der Matrix C , wodurch sich neben der Symmetrie auch die positive Definitheit der Matrix B SGS = C T C ergibt. Satz und Definition 4.37 Sei A ∈ Cn×n eine positiv definite und hermitesche Matrix, dann stellt .A : Cn
→ R
x → xA := A1/2 x
2
eine Norm dar. Diese Norm heißt Energienorm (bez¨ uglich A ). Die zugeh¨orige Matrixnorm ist durch .A : Cn×n B gegeben.
→ R
→ BA = A1/2 BA−1/2
2
Beweis: Der Nachweis der ersten Aussage beruht auf einfachem Nachrechnen der Vektornormaxio¨ me und verbleibt als Ubungsaufgabe. F¨ ur die Matrixnorm erhalten wir BA
=
sup BxA =
xA =1
=
sup A1/2 x2 =1
A1/2 Bx2
sup A1/2 BA−1/2 y2 = A1/2 BA−1/2 . 2
y2 =1
Satz 4.38 Sei A ∈ Cn×n hermitesch und positiv definit, dann konvergiert das symmetrische Gauß-Seidel-Relaxationsverfahren f¨ ur alle ω ∈ (0,2) , und es gilt 2
ρ (M SGS (ω)) = M SGS (ω)A = M GS (ω)A , sowie σ (M SGS (ω)) ⊂ [0,ρ (M SGS (ω))] . Beweis: Da A1/2 ∈ Cn×n regul¨ ar ist, ist M SGS (ω) zu A1/2 M SGS (ω)A−1/2 = A1/2 M RGS (ω)A−1/2 A1/2 M GS (ω)A−1/2
ahnlich. Mit ¨
M RGS (ω) = (D + ωR)−1 ((1 − ω)D − ωL) = I − ω(D + ωR)−1 A
(4.1.29)
4.1 Splitting-Methoden
103
und M GS (ω) = (D + ωL)−1 ((1 − ω)D − ωR) = I − ω(D + ωL)−1 A erhalten wir A1/2 M RGS (ω)A−1/2
= I − ωA1/2 (D + ωR)−1 A1/2 = = =
∗ ∗ I − ωA1/2 (D + ωR)−1 A1/2 I − ωA1/2 (D + ωL)−1 A1/2 A1/2 M GS (ω)A−1/2
∗
∗
.
(4.1.30)
∗ A1/2 M GS (ω)A−1/2 folgt Aus A1/2 M SGS (ω)A−1/2 = A1/2 M GS (ω)A−1/2 σ (M SGS (ω)) = σ A1/2 M SGS (ω)A−1/2 ⊂ R+ 0.
Somit gilt σ (M SGS (ω)) ⊂ [0,ρ (M SGS (ω))] . Aus (4.1.29) und (4.1.30) wird direkt ersichtlich, dass die Matrix A hermitesch ist und somit ρ(M SGS (ω)) = ρ A1/2 M SGS (ω)A−1/2 Satz 2.35
=
(4.1.29),(4.1.30)
= =
folgt.
(4.1.31) 1/2
M SGS (ω)A−1/2
A1/2 M SGS (ω)A−1/2 2 = M SGS (ω)A
∗ 1/2 A1/2 M GS (ω)A−1/2 A M GS (ω)A−1/2
2
2 1/2 2 A M GS (ω)A−1/2 = M GS (ω)A 2
F¨ ur hermitesche Matrizen f¨ uhren wir die folgende Ordnungsrelation ein: Seien die Matrizen F ,G ∈ Cn×n hermitesch, dann schreiben wir G > F , wenn G − F positiv definit ist. Seien F ,G ∈ Cn×n hermitesch mit G > F und F positiv definit gegeben, dann sei λ ∈ R+ Eigenwert von F mit λ = ρ(F ) und zugeh¨origem Eigenvektor x ∈ Cn mit x2 = 1 . Somit erhalten wir 0 < ρ(F ) = (F x,x)2
(G>F )
A ω
(4.1.33)
ergibt. Betrachten wir die Matrix 8 GS (ω) := A1/2 M GS (ω)A−1/2 M =
A1/2 (I − N GS (ω)A) A−1/2
=
I − A1/2 N GS (ω)A1/2 ,
dann folgt ∗
8 GS (ω) 8 GS (ω)M M =
I − A1/2 N ∗GS (ω)A1/2 I − A1/2 N GS (ω)A1/2
=
I − A1/2 (N ∗GS (ω) + N GS (ω)) A1/2 +A1/2 N ∗GS (ω)AN GS (ω)A1/2
=
−∗ 1/2 I − A1/2 N ∗GS (ω) N −1 GS (ω) + N GS (ω) N GS (ω)A +A1/2 N ∗GS (ω)AN GS (ω)A1/2
= (4.1.33)
Nℓ−1 ist der Kern von Rℓ−1 ℓ ℓ ker(Rℓ−1 ) , dann folgt mit w := A−1 ℓ ℓ v = 0 die Gleichung ℓ−1 M GGK w = w − P ℓℓ−1 A−1 Aℓ w = w, ℓ ℓ−1 Rℓ =v =0
wodurch sich ρ M GGK ≥ 1 ergibt. ℓ
114
4 Iterative Verfahren T
Betrachten wir wiederum als Beispiel den Fehler eℓ0 = (0.75,0.2,0.9,0.8,0.55,0.9,0.3) , so erhalten wir mit zwei Iterationsschritten auf Ωℓ und einer anschließenden Grobgitterkorrektur die in Abbildung 4.12 aufgef¨ uhrte Darstellung. Definition 4.43 Sind φ,ψ : Cn × Cn → Cn zwei Iterationsverfahren, dann heißt φ ◦ ψ : Cn × Cn → Cn mit xm+1 = (φ ◦ ψ) (xm ,b) := φ(ψ(xm ,b),b)
Produktiteration.
Fehler
1.0
0.5
0.0 0.0
Bild 4.12
e20 e21 e22 e22 neu
0.5 x
1.0
Entwicklung des Fehlers beim Zweigitterverfahren
Lemma 4.44 Sind φ,ψ zwei lineare Iterationsverfahren mit den Iterationsmatrizen M φ und M ψ , dann gilt: (a) Sind φ und ψ konsistent, dann ist auch die Produktiteration φ ◦ ψ konsistent. (b) Die Iterationsmatrix der Produktiteration φ ◦ ψ hat die Form M φ◦ψ = M φ M ψ . (c) Die beiden Produktiterationen φ ◦ ψ und ψ ◦ φ besitzen die gleichen Konvergenzeigenschaften im Sinne von ρ(M φ◦ψ ) = ρ(M ψ◦φ ). Beweis: ˆ = A−1 b , dann folgt die Konsistenz aus zu (a): Sei x ˆ. (φ ◦ ψ)(ˆ x,b) = φ (ψ(ˆ x,b),b) = φ(ˆ x,b) = x
4.2 Mehrgitterverfahren
115
zu (b): Mit φ(xm ,b) = M φ xm + N φ b und ψ(xm ,b) = M ψ xm + N ψ b folgt die Behauptung gem¨ aß (φ ◦ ψ)(xm ,b) = M φ (M ψ xm + N ψ b)+N φ b = M φ M ψ xm +(M φ N ψ + N φ )b. =M φ◦ψ
=N φ◦ψ
zu (c): Sei x Eigenvektor der Matrix M φ M ψ zum Eigenwert λ = 0 , so ergibt sich aus M φ M ψ x = λx = 0 die Eigenschaft M ψ x = 0 , wodurch aufgrund der Gleichung M ψ M φ M ψ x = λM ψ x stets ρ (M φ M ψ ) ≤ ρ (M ψ M φ ) gilt. Analog erhalten wir ρ (M ψ M φ ) ≤ ρ (M φ M ψ ) . Damit stimmen die Spektralradien der Iterationsmatrizen und somit auch das Konvergenzverhalten der Produktiterationen φ ◦ ψ und ψ ◦ φ u ¨ berein.
Lineare Iterationsverfahren wie zum Beispiel die Jacobi-Methode wirken sich gl¨attend auf den Fehlerverlauf aus und werden daher im Folgenden als Gl¨atter bezeichnet. Seien ν ∈ N die Anzahl der Iterationsschritte auf dem feinen Gitter Ωℓ und φℓ das Gl¨attungsverfahren, dann erhalten wir das Zweigitterverfahren als Produktiteration in der Form = φGGK ◦ φνℓ . φZGM ℓ ℓ
(4.2.18)
Bezeichnet R die Restriktion, P die Prolongation und E das exakte L¨osen des Gleichungssystems, dann l¨ asst sich (4.2.18) mit dem Gl¨atter G gem¨aß der in der Abbildung 4.13 dargestellten Form visualisieren.
G
`
R
P E
Bild 4.13
`
1
Zweigitterverfahren ohne Nachgl¨ attung
Seien ν1 ,ν2 ∈ N mit ν = ν1 + ν2 , dann liegt laut Lemma 4.44 mit ZGM (ν1 ,ν2 )
φℓ
:= φνℓ 2 ◦ φGGK ◦ φνℓ 1 ℓ
(4.2.19)
ein Verfahren vor, das die gleichen Konvergenzeigenschaften wie (4.2.18) aufweist. Man spricht hierbei von ν1 Vor- und ν2 Nachgl¨ attungen. Wir erhalten somit die in Abbildung 4.14 pr¨asentierte graphische Darstellung. Satz 4.45 Sei φℓ ein konsistentes Iterationsverfahren mit Iterationsmatrix M ℓ , dann ZGM (ν1 ,ν2 ) konsistent mit der Iterationsmatrix ist das Zweigitteriterationsverfahren φℓ ZGM (ν1 ,ν2 ) ν1 ℓ−1 Mℓ = M νℓ 2 I − P ℓℓ−1 A−1 R A ℓ Mℓ . ℓ−1 ℓ
116
4 Iterative Verfahren
G1
G2 R
P E
Bild 4.14
`
`
1
Zweigitterverfahren mit Nachgl¨ attung
Beweis: konsistent mit Iterationsmatrix Laut Lemma 4.41 ist die Grobgitterkorrektur φGGK ℓ ℓ −1 ℓ−1 M GGK = I − P A R A . Lemma 4.44 (a) liefert somit die behauptete Konsiℓ ℓ ℓ−1 ℓ−1 ℓ stenz, und mit Lemma 4.44 (b) folgt ZGM (ν1 ,ν2 ) ν1 ℓ−1 Mℓ = M φν2 ◦φGGK ◦φν1 = M νℓ 2 I − P ℓℓ−1 A−1 R A ℓ Mℓ . ℓ−1 ℓ ℓ
ℓ
ℓ
Zur Vor- und Nachiteration k¨ onnen hierbei nat¨ urlich auch unterschiedliche Gl¨attungsalgorithmen genutzt werden. In der Form eines Diagramms l¨ asst sich das Zweigitterverfahren wie folgt schreiben: Algorithmus - Zweigitterverfahren — F¨ ur i = 1, . . . ,ν1 uℓ := φℓ uℓ ,f ℓ
Aℓ uℓ − f ℓ dℓ−1 := Rℓ−1 ℓ ℓ−1 eℓ−1 := A−1 ℓ−1 d
uℓ := uℓ − P ℓℓ−1 eℓ−1 F¨ ur i = 1, . . . ,ν2 uℓ := φℓ uℓ ,f ℓ 4.2.2
Der Mehrgitteralgorithmus
Das Zweigitterverfahren hat sich als effizient herausgestellt. Es ist jedoch f¨ ur große Systeme unpraktikabel, da es die exakte L¨ osung der Korrekturgleichung
4.2 Mehrgitterverfahren
117 Aℓ−1 eℓ−1 = dℓ−1
(4.2.20)
auf Ωℓ−1 ben¨otigt. Da aber die Prolongation der exakten L¨osung eℓ−1 auf das feine Gitter Ωℓ nur eine N¨ aherung an den gesuchten Fehlervektor eℓ = uℓ − uℓ,∗ liefert, erweist sich auch eine approximative L¨ osung der Korrekturgleichung als ausreichend. Die Gleichung (4.2.20) weist die gleiche Form wie die Ausgangsgleichung Aℓ uℓ = f ℓ auf. Die Idee liegt daher in der Nutzung einer Zweigittermethode auf Ωℓ−1 und Ωℓ−2 zur ℓ−1 . Damit erhalten wir eine Dreigittermethode, bei Approximation von eℓ−1 = A−1 ℓ−1 d ℓ−2 ℓ−2 der Aℓ−2 e =d exakt gel¨ ost werden muss. Sukzessives Fortsetzen dieser Idee liefert ein Verfahren auf ℓ + 1 Gittern Ωℓ , . . . ,Ω0 bei dem lediglich A0 e0 = d0 exakt gel¨ost werden muss. Bei der von uns gew¨ ahlten Gitterverfeinerung mit hℓ−1 = 2hℓ gilt A0 ∈ R1×1 . In der Praxis wird in der Regel mit Ω0 ein Gitter genutzt, das eine approximative L¨osung des Gleichungssystems mit der Matrix A0 auf effiziente und einfache Weise erm¨oglicht. Der Mehrgitteralgorithmus l¨ asst sich folglich als rekursives Verfahren in der anschließenden Form darstellen: MGM(ν1 ,ν2 )
Algorithmus - Mehrgitterverfahren φℓ
uℓ ,f ℓ
❩ ❩ ℓ=0 Y ❩ ❩ 0 u0 := A−1 0 f
R¨ uckgabe von u0
— ✚ ✚ ✚ ✚ N
F¨ ur i = 1, . . . ,ν1 uℓ := φℓ uℓ ,f ℓ
ℓ ℓ A dℓ−1 := Rℓ−1 u − f ℓ ℓ eℓ−1 := 0 0
F¨ ur i = 1, . . . ,γ MGM(ν1 ,ν2 )
eℓ−1 := φℓ−1 i
uℓ := uℓ − P ℓℓ−1 eℓ−1 γ F¨ ur i = 1, . . . ,ν2 uℓ := φℓ uℓ ,f ℓ R¨ uckgabe von uℓ
ℓ−1 eℓ−1 i−1 ,d
118
4 Iterative Verfahren
In der hier gew¨ahlten Darstellung werden zur iterativen L¨osung der Grobgittergleichung γ Schritte verwendet. In der Praxis erweisen sich in der Regel γ = 1 respektive γ = 2 als geeignet. Der Fall γ = 1 liefert den sogenannten V-Zyklus, der sich f¨ ur ℓ = 3 graphisch gem¨aß Abbildung 4.15 darstellen l¨ asst, w¨ ahrend f¨ ur γ = 2 die als W-Zyklus bezeichnete Iterationsfolge vorliegt. Der f¨ ur diese Vorgehensweise entstehende algorithmische Ablauf des Verfahrens ist f¨ ur den Fall von vier genutzten Gittern in Abbildung 4.16 dargestellt.
G2
G1 R
3
P
G2
G1 R
2
P
G1
G2 R
E
1
P 0
Mehrgitterverfahren mit V-Zyklus
Bild 4.15
G1 R
G2 G
G1 R
Bild 4.16
4.2.3
G
G1 R
P
P E
R
G2 E
P
3
P
G2 R
G1 R
G P E
R
2
P
G2 P E
1
0
Mehrgitterverfahren mit W-Zyklus mit ν = ν 1 + ν 2
Das vollst¨ andige Mehrgitterverfahren
Die Idee des vollst¨andigen Mehrgitterverfahrens (nested iteratons, full multigrid method (FMGM)) liegt in der Nutzung der gr¨ oberen Gitter zur Verbesserung der Startn¨aherung uℓ0 auf dem feinsten Gitter Ωℓ . Die Durchf¨ uhrung l¨ asst sich wie folgt beschreiben: (a) L¨ose auf Ω0 die Gleichung A0 u0 = f 0 exakt. (b) Prolongiere das Ergebnis auf das n¨ achstfeinere Gitter und f¨ uhre einige Iterationsschritte mit dem Gl¨ attungsverfahren durch.
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
119
(c) Wiederhole (b), bis eine N¨ aherungsl¨ osung uℓ0 auf Ωℓ ermittelt wurde. (d) F¨ uhre das Mehrgitterverfahren mit der Startn¨aherung uℓ0 durch. Graphisch erhalten wir f¨ ur den V-Zyklus auf 3 Gittern die Darstellung des vollst¨andigen Mehrgitterverfahrens in der in Abbildung 4.17 pr¨asentierten Form.
E Bild 4.17
P
G
G P R 2
G1 R
E
P
G
P 2
G2
2
1 0
Vollst¨ andiges Mehrgitterverfahren mit ν = ν 1 + ν 2
Varianten des Verfahrens erh¨ alt man zum Beispiel durch (a) eine approximative anstelle einer exakten L¨osung der Gleichung A0 u0 = f 0 . (b) die Nutzung unterschiedlicher Anzahlen von Gl¨attungsschritten. (c) die Verwendung verschiedener Prolongationen und Restriktionen.
4.3
Projektionsmethoden und Krylov-Unterraum-Verfahren
Wir betrachten in diesem Abschnitt stets lineare Gleichungssysteme der Form Ax = b
(4.3.1)
mit einer regul¨aren Matrix A ∈ Rn×n und einer rechten Seite b ∈ Rn . Definition 4.46 Eine Projektionsmethode zur L¨osung der Gleichung (4.3.1) ist ein Verucksichtigung fahren zur Berechnung von N¨ aherungsl¨ osungen xm ∈ x0 + Km unter Ber¨ der Bedingung (b − Axm ) ⊥ Lm , (4.3.2)
wobei x0 ∈ Rn beliebig ist und Km sowie Lm m -dimensionale Unterr¨aume des Rn repr¨asentieren. Die Orthogonalit¨ atsbedingung ist hierbei durch das euklidische Skalarprodukt mittels x ⊥ y ⇔ (x,y)2 = 0 definiert. Gilt Km = Lm , so besagt (4.3.2), dass der Residuenvektor rm = b − Axm senkrecht auf Km steht. In diesem Fall liegt daher eine orthogonale Projektionsmethode vor, und (4.3.2) heißt Galerkin-Bedingung. F¨ ur Km = Lm liegt eine schiefe Projektionsmethode vor, und (4.3.2) wird als PetrovGalerkin-Bedingung bezeichnet.
120
4 Iterative Verfahren
Beispiel 4.47 Jeder Schritt des Gauß-Seidel-Verfahrens kann als orthogonale Projektionsmethode mit x0 = (xm+1,1 , . . . ,xm+1,i−1 ,0,xm,i+1 , . . . ,xm,n )T und den eindimensionalen R¨aumen K = L = span {ei } interpretiert werden, denn es gilt n 1 i−1 xi = − aij xm+1,j + aij xm,j − bi aii j=1 j=i+1 ⇔ bi − (Ax)i = 0 mit x ∈ x0 + K ⇔
b − Ax ⊥ L
mit x ∈ x0 + K.
Diese Eigenschaft l¨ asst sich auch f¨ ur weitere iterative Verfahren dieser Art nachweisen. Generell unterscheiden sich Splitting-Methoden jedoch wesentlich von den Projektionsmethoden. Eine Gegen¨ uberstellung dieser beiden Verfahrensklassen gibt die Tabelle 4.1. Splitting-Methoden
Projektionsmethoden
Berechnung von N¨ aherungsl¨ osungen xm ∈ Rn
Berechnung von N¨ aherungsl¨osungen xm ∈ x0 + Km ⊂ Rn dim Km = m ≤ n
Berechnungsvorschrift Berechnungsvorschrift (Orthogonalit¨atsbed.) xm = M xm−1 + N b b − Axm ⊥ Lm ⊂ Rn dim Lm = m ≤ n Tabelle 4.1
Gegen¨ uberstellung von Splitting-Methoden und Projektionsverfahren
Definition 4.48 Eine Krylov-Unterraum-Methode ist eine Projektionsmethode zur L¨osung der Gleichung (4.3.1), bei der Km den Krylov-Unterraum Km = Km (A,r 0 ) = span r0 ,Ar0 , . . . ,Am−1 r0 mit r0 = b − Ax0 darstellt.
Krylov-Unterraum-Methoden werden oftmals durch eine Umformulierung des linearen Gleichungssystems in eine Minimierungsaufgabe beschrieben. Zwei der bekanntesten Vertreter dieser Algorithmengruppe sind das von Hestenes und Stiefel [38] entwickelte Verfahren der konjugierten Gradienten und die von Saad und Schulz [63] hergeleitete GMRESMethode. Beide Verfahren ermitteln die optimale Approximation xm ∈ x0 + Km an die gesuchte L¨osung A−1 b im Sinne der Orthogonalit¨atsbedingung (4.3.2), wobei bei jeder Iteration die Dimension des Unterraums um eins inkrementiert wird. Vernachl¨assigt man die auftretenden Rundungsfehler, so w¨ urden beide Methoden sp¨atestens nach n Iterationen die exakte L¨ osung liefern. Bevor wir uns mit der Herleitung der einzelnen Verfahren befassen, werden wir zun¨achst eine allgemeing¨ ultige Konvergenzaussage f¨ ur Krylov-Unterraum-Methoden formulieren. Hierzu erweist sich das folgende Lemma als hilfreich.
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
121
Lemma 4.49 Gegeben sei eine Projektionsmethode zur L¨osung der Gleichung Ax = b mit einer regul¨aren Matrix A ∈ Rn×n . Sei m ∈ N fest, und bilden die Spaltenvektoren der Matrix V m ∈ Rn×m beziehungsweise W m ∈ Rn×m eine Basis der R¨aume Km respektive Lm derart, dass W Tm AV m ∈ Rm×m regul¨ar ist, dann besitzt die L¨osung der Projektionsmethode die Darstellung −1 xm = x0 + V m W Tm AV m W Tm r0 . Beweis: Aufgrund der Basiseigenschaft der Spaltenvektoren der Matrix V m l¨asst sich der L¨osungsvektor in der Form xm = x0 + V m αm mit αm ∈ Rm schreiben. Aus der Orthogonalit¨atsbedingung (4.3.2) erhalten wir W Tm (b − A (x0 + V m αm )) = 0, wodurch
W Tm AV m αm = W Tm (b − Ax0 )
folgt. Aufgrund der vorausgesetzten Regularit¨ at der Matrix W Tm AV m gilt daher −1 W Tm r 0 , αm = W Tm AV m
wodurch sich die behauptete Gestalt der Iterierten ergibt.
Aus dem obigen Lemma erhalten wir unmittelbar die Darstellung des zugeh¨origen Residuenvektors in der Form −1 rm = b − Axm = r0 − AV m W Tm AV m W Tm r 0 . (4.3.3) Wir kommen nun zum angek¨ undigten Konvergenzsatz, der in [39] vorgestellt wurde.
Satz 4.50 Sei die Matrix A ∈ Rn×n regul¨ar. Desweiteren bezeichnen v 1 , . . . ,v m ∈ Rn und w 1 , . . . ,w m ∈ Rn die durch ein beliebiges Krylov-Unterraum-Verfahren erzeugten Basisvektoren des Km und Lm . Liegt mit den Matrizen V m = (v 1 . . . v m ) ∈ Rn×m und W m = (w 1 . . . w m ) ∈ Rn×m eine regul¨are Matrix W Tm AV m ∈ Rm×m vor, dann folgen mit der Projektion −1 (4.3.4) W Tm P m = I − AV m W Tm AV m die Absch¨atzungen f¨ ur den Fehlervektor em = A−1 b − xm und den Residuenvektor r m = Aem der Krylov-Unterraum-Methode in der Form em ≤ A−1 P m min1 p(A)r 0
(4.3.5)
rm ≤ P m min1 p(A)r 0 ,
(4.3.6)
p∈Pm
und p∈Pm
1 wobei Pm die Menge aller Polynome p vom H¨ochstgrad m bezeichnet, die zudem die Nebenbedingung p(0) = I erf¨ ullen.
122
4 Iterative Verfahren
Beweis: Aus der Definition der Projektion P m folgt unter Ber¨ ucksichtigung der Regularit¨at der Matrix W Tm AV m die Gleichung −1 P m AV m = AV m − AV m W Tm AV m W Tm AV m = 0.
(4.3.7)
Unter Verwendung der Gleichung (4.3.3) ergibt sich r m = P m r0 , wodurch mit (4.3.7) zudem r m = P m (r 0 + AV m α) f¨ ur jeden Vektor α ∈ Rm gilt. Wegen AV m α ∈ AKm erhalten wir r m = P m p(A)r 0 1 f¨ ur jedes beliebige Polynom p ∈ Pm . Hierdurch folgt
rm = min1 P m p(A)r 0 ≤ P m min1 p(A)r 0 . p∈Pm
p∈Pm
Analog liefert em = A−1 r m die Ungleichung (4.3.5). Die im obigen Satz geforderte Regularit¨ at der Matrix W Tm AV m l¨asst sich f¨ ur spezielle Krylov-Unterraum-Verfahren direkt nachweisen. F¨ ur eine symmetrische, positiv definite Matrix A existiert laut Korollar 2.33 eine orthogonale Matrix U mit U T AU = D = diag{λ1 , . . . ,λn } . Aus der positiven Definitheit folgt λi > 0 f¨ ur i = 1, . . . ,n und wir erhalten A = U D 1/2 D1/2 U T . Betrachten wir hierbei eine orthogonale KrylovUnterraum-Methode, so k¨ onnen wegen Lm = Km die Matrizen W m = V m genutzt werden, wodurch sich T W Tm AV m = D 1/2 U T V m D1/2 U T V m ∈ Rm×m
ergibt. Da die Vektoren der Matrix V m eine Basis von Km darstellen, erhalten wir rang (V m ) = m . Hierdurch ist D1/2 U V m injektiv, so dass T 2 1/2 T 1/2 T D U V m x = D 1/2 U T V m x = 0 ∀x ∈ Rm \ {0} x, D U V m 2
2
die Regularit¨at der Matrix W Tm AV m liefert. Eine derartige Methode stellt zum Beispiel das im Folgenden betrachtete Verfahren der konjugierten Gradienten dar.
F¨ ur regul¨are Matrizen A ∈ Rn×n betrachten wir Lm = AKm , wodurch W m = AV m gew¨ ahlt werden kann. Analog zu der obigen Betrachtung ergibt sich die Regularit¨at der Matrix W Tm AV m aus T W Tm AV m = (AV m ) AV m . Diese Bedingungen erf¨ ullt das im Abschnitt 4.3.2.4 hergeleitete GMRES-Verfahren. Generell ergibt sich f¨ ur m = n die Regularit¨ at der Matrizen V m und W m , so dass P m = 0 gilt, und wir aus den Absch¨ atzungen (4.3.5) und (4.3.6) jeweils die Aussage erhalten, dass derartige Krylov-Unterraum-Verfahren sp¨atestens nach n Schritten die exakte L¨osung ermitteln.
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
123
Die Entwicklung modernster numerischer Algorithmen zur Simulation praxisrelevanter Problemstellungen hat zu einer großen Nachfrage hinsichtlich effizienter, schneller und robuster iterativer Gleichungssysteml¨ oser gef¨ uhrt und einen wesentlichen Impuls zum in den letzten zwanzig Jahren erzielten Fortschritt im Bereich der Krylov-Unterraum-Verfahren beigetragen. Aufgrund der Vielzahl dieser Verfahren werden wir uns im vorliegenden Buch neben dem Verfahren der konjugierten Gradienten im Wesentlichen auf die sehr h¨aufig verwendeten Methoden GMRES, CGS, BiCGSTAB, TFQMR und QMRCGSTAB beschr¨anken und die Einordnung weiterer Algorithmen in den vorliegenden Rahmen soweit m¨ oglich durch Anmerkungen vornehmen. Der Zusammenhang zwischen den genannten Algorithmen wird in der Abbildung 4.18 schematisch verdeutlicht. Hinsichtlich weiterer Literaturstellen zu dieser Verfahrensklasse sei auf die B¨ ucher von Axelsson [7], Demmel [19], Fischer [25], Greenbaum [33], Kelley [43], Meurant [52], Saad [62], Trefethen und Bau [70], van der Vorst [73] sowie Weiss [75] verwiesen. CG-Verfahren Hestenes, Stiefel [38], 1952 ❅ Simultane Betrachtung: Ax = b und AT x = b ✠ BiCG-Verfahren Fletcher [26], 1975 Vermeidung von Multiplikationen mit AT ❄ CGS-Verfahren Sonneveld [68], 1989 Oszillationsminimierung durch eindimensionale Residuenminimierung ❄ BiCGSTAB-Verfahren van der Vorst [72], 1992 Erweiterung auf ℓ -dimensionale Residuenminimierung ❄ BiCGSTAB( ℓ )-Verfahren Sleijpen, Fokkema [65], 1993 Bild 4.18
❍
❍❍ ❍❍
❍❍ ❍❍
❍ ❍❍ ❍
❅ Minimierung: ❅ F (x) = Ax − b22 ❅ ❅ ❅ ❘ GMRES-Verfahren Saad, Schultz [63], 1986
Speicherplatzreduzierung ❍❍ ❍❍durch Quasiminimierung ❍❍ ❍ ❥❄ QMR-Verfahren Freund, Nachtigall [29], 1991
❍❍ Vermeidung von ❍❍ Multiplikationen mit AT ❍❍ ❍ ❍ ❥❄ TFQMR-Verfahren Freund [28], 1993 ¨ ❍❍ Ubereinstimmende ❍❍ Grundidee ❍❍ ❍ ❍ ❥❄ QMRCGSTAB-Verfahren Chan et. al. [17], 1994
Zusammenh¨ ange zwischen Krylov-Unterraum-Verfahren
124 4.3.1
4 Iterative Verfahren Verfahren f¨ ur symmetrische, positiv definite Matrizen
Innerhalb dieses Abschnitts setzen wir voraus, dass das betrachtete Gleichungssystem (4.3.1) eine symmetrische und positiv definite Matrix aufweist. Zur Herleitung der Verfahren betrachten wir die Funktion F : Rn
→ R 1 (Ax,x)2 − (b,x)2 x → 2
(4.3.8)
und werden zun¨achst einige ihrer grundlegenden Eigenschaften im Zusammenhang mit dem betrachteten Gleichungssystem studieren. Lemma 4.51 Seien A ∈ Rn×n symmetrisch, positiv definit und b ∈ Rn gegeben, dann gilt mit der durch (4.3.8) gegebenen Funktion F ˆ = arg minn F (x) x x∈R
genau dann, wenn Aˆ x=b gilt. Beweis: Da A positiv definit ist, existiert die positiv definite Inverse A−1 ∈ Rn×n , und wir erhalten (4.3.9) arg minn F (x) = arg minn G(x) x∈R
x∈R
mit 1 G(x) = F (x) + bT A−1 b 2 1 1 (Ax,x)2 − (b,x)2 + bT A−1 b = 2 2 1 1 (Ax − b)T x − bT (x − A−1 b) = 2 2 1 −1 T 1 T = A b (Ax − b) (Ax − b) x − 2 2 1 = (Ax − b)T A−1 (Ax − b). 2
(4.3.10)
Somit gelten G(x) ≥ 0 und G(x) = 0
⇔
x = A−1 b.
Bei allen in diesem Abschnitt betrachteten Verfahren nehmen wir eine sukzessive Minimierung der Funktion F ausgehend vom Punkt x ∈ Rn entlang spezieller Richtungen p ∈ Rn vor. Wir definieren daher f¨ ur x,p ∈ Rn die Funktion fx,p : R
→ R
λ → fx,p (λ) := F (x + λp).
(4.3.11)
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
125
Lemma und Definition 4.52 Seien die Matrix A ∈ Rn×n symmetrisch, positiv definit und die Vektoren x,p ∈ Rn mit p = 0 gegeben, dann gilt (r,p)2 (Ap,p)2
λopt = λopt (x,p) := arg min fx,p (λ) = λ∈R
mit r := b − Ax . Der Vektor r wird als Residuenvektor und seine euklidische Norm r2 als Residuum bezeichnet. Beweis: Es gilt fx,p (λ) =
1 2
(A(x + λp),x + λp)2 − (b,x + λp)2
= F (x) + λ(Ax − b,p)2 + 12 λ2 (Ap,p)2 .
Somit folgt
′ (λ) = (Ax − b,p)2 + λ (Ap,p)2 fx,p >0
und
′ (λopt ) = (Ax − b,p)2 + fx,p
(b − Ax,p)2 (Ap,p)2 = 0. (Ap,p)2
Mit ′′ fx,p (λ)
= (Ap,p)2
A pos.def. p =0
>
0
(4.3.12)
ist λopt globales Minimum von fx,p . Ist nun mit {pm }m∈N0 eine Folge von Suchrichtungen aus Rn \{0} gegeben, dann k¨onnen wir ein erstes Verfahren erstellen: Algorithmus - Basisl¨ oser — W¨ahle x0 ∈ Rn F¨ ur m = 0,1, . . . r m = b − Axm λm =
(r m ,pm )2 (Apm ,pm )2
xm+1 = xm + λm pm
4.3.1.1
Die Methode des steilsten Abstiegs
Zur Vervollst¨andigung des Basisl¨ osers ben¨ otigen wir eine Berechnungsvorschrift zur Ermittlung der Suchrichtungen pm ∈ Rn . Wir fordern zudem o.B.d.A. pm 2 = 1 . F¨ ur x = A−1 b erhalten wir eine global optimale Wahl durch
126
4 Iterative Verfahren p=
ˆ −x x ˆ x − x2
ˆ = A−1 b, mit x
denn hiermit folgt bei Definition von λopt gem¨ aß Lemma 4.52 ˜ = x + λoptp = x = x + ˆ x − x2 ˆ. = x
ˆ −x (b − Ax,ˆ x − x)2 x (b − Ax,ˆ x − x)2 ˆ x − x2
Jedoch ben¨otigen wir hierbei bereits zur Definition der Suchrichtung die exakte L¨osung. Beschr¨anken wir uns auf lokale Optimalit¨ at, so erhalten wir diese mit dem negativen Gradienten der Funktion F . Hier gilt 1 A sym. = Ax − b = −r. ∇F (x) = (A + AT )x − b 2 Somit liefert ⎧ r ⎨ f¨ ur r = 0, r2 p := (4.3.13) ⎩ 0 f¨ ur r = 0
die Richtung des steilsten Abstiegs. Die Funktion F ist wegen
∇2 F (x) = A
und positiv definitem A strikt konvex. Auch hiermit erkennen wir, dass ˆ = A−1 b x wegen ∇F (ˆ x) = 0
das einzige und globale Minimum von F darstellt. Mit (4.3.13) erhalten wir das auch als Gradientenverfahren bezeichnete Verfahren des steilsten Abstiegs in der folgenden Form: Algorithmus - Verfahren des steilsten Abstiegs — W¨ahle x0 ∈ Rn F¨ ur m = 0,1, . . . r m = b − Axm ❩ ❩ r m = 0 Y ❩ ❩ λm =
rm 22 (Ar m ,rm )2
xm+1 = xm + λm rm
✚ ✚ ✚ ✚ N λm = 0
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
127
Bemerkung: In der praktischen Anwendung wird r0 außerhalb der Schleife ermittelt und innerhalb der Schleife rm+1
= b − Axm+1 = b − Axm − λm Arm = r m − λm Ar m
verwendet, wodurch pro Iteration eine Matrix-Vektor-Multiplikation vermieden wird. Eine MATLAB-Implementierung ist im Anhang A aufgelistet. Satz 4.53 Das Verfahren des steilsten Abstiegs ist konsistent und nicht linear. Beweis: Das Iterationsverfahren φ : Rn × Rn → Rn ist gegeben durch φ(x,b) = (I − λ(x,b)A) x + λ(x,b)b, wobei λ : Rn × Rn → R in der Form ⎧ b − Ax22 ⎨ (A(b − Ax),b − Ax)2 λ(x,b) = ⎩ 0
(4.3.14)
f¨ ur b − Ax = 0 sonst.
festgelegt ist. Einfaches Nachrechnen an kleinen Beispielen zeigt, dass λ nicht konstant ˆ = A−1 b ergibt sich λ(ˆ ˆ = φ(ˆ ˆ ist. F¨ ur x x,b) = 0 . Folglich erhalten wir x x,b) und x stellt einen Fixpunkt der Iteration φ dar. Satz 4.54 Sei A positiv definit und symmetrisch, dann konvergiert die durch das Verur jeden Startvektor x0 ∈ Rn fahren des steilsten Abstiegs definierte Folge {xm }m∈N0 f¨ −1 ˆ = A b , und es gilt f¨ ˆ die gegen die L¨osung x ur den Fehlervektor em = xm − x Absch¨atzung m cond2 (A) − 1 em A ≤ e0 A . (4.3.15) cond2 (A) + 1 Beweis: Betrachten wir die Gleichung (4.3.14), so kann das Verfahren als spezielle RichardsonIteration mit variablem Θ = λ(x,b) interpretiert werden. Da der Startvektor x0 ∈ Rn beliebig ist, reicht der Nachweis der Absch¨ atzung (4.3.15) f¨ ur m = 1 . Seien λmax = max λ und λmin = λ∈σ(A)
min λ , dann ergibt sich beim herk¨ommlichen
λ∈σ(A)
Richardson-Verfahren mit optimalem Gewichtungsparameter Θopt
Satz 4.32
=
2 λmax + λmin
f¨ ur den Fehlervektor eR 1 die Darstellung eR 1 = M R (Θopt )e0 mit
128
4 Iterative Verfahren M R (Θopt ) = I − Θopt A.
Aus der Symmetrie der Matrix A folgt, dass M R (Θopt ) ebenfalls symmetrisch ist und sich somit M R (Θopt )2
Satz 2.35
=
ρ (M R (Θopt )) λmax − λmin λmax + λmin
Satz 4.32
=
ergibt. Zudem gilt f¨ ur beliebiges p ∈ R M R (Θopt )Ap = Ap M R (Θopt), und es folgt mit
1/2 R ˜0 = A1/2 e0 und e ˜R e e1 1 = A
die Darstellung
1/2 ˜R e M R (Θopt )e0 = M R (Θopt )˜ e0 . 1 = A
Hiermit erhalten wir eR e0 2 = M R (Θopt )2 e0 A . eR 1 A = ˜ 1 2 ≤ M R (Θopt )2 ˜ Unter Verwendung der Gleichung (4.3.10) folgern wir G(x) =
1 1 ˆ 2A (Ax − b)T A−1 (Ax − b) = x − x 2 2
so dass sich mit xR 1 = x0 + Θopt r 0 und x1 = x0 + λ0 r 0 durch x1 = arg
min
x∈x0 +span {r0 }
F (x) = arg
min
x∈x0 +span {r0 }
die Absch¨atzung e1 A ≤ eR 1 A ≤
G(x) = arg
min
x∈x0 +span {r0 }
λmax − λmin e0 A λ +λ max min
1 ˆ 2A x − x 2
(4.3.16)
ξ :=
ergibt. F¨ ur positiv definite, symmetrische Matrizen A ∈ Rn×n gilt A2 = ρ(A) = λmax > 0 und A−1 2 = ρ(A−1 ) = λ−1 min > 0 , so dass einerseits mit |ξ| < 1 die behauptete Konvergenz des Verfahrens vorliegt und andererseits aus (4.3.16) die Absch¨atzung λ max −1 A2 A−1 2 − 1 cond2 (A) − 1 λmin e1 A ≤ λmax e0 A e e0 A = = 0 A cond2 (A) + 1 A2 A−1 2 + 1 +1 λ min
folgt. Wegen cond2 (A) ≥ 1 ist es aufgrund des obigen Satzes somit stets vorteilhaft, eine m¨ oglichst kleine Konditionzahl vorliegen zu haben.
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
129
Beispiel 4.55 Wir betrachten Ax = b mit A=
2 0 0 10
, b=
0 0
, x0 =
√4 1.8
.
Hiermit erhalten wir den folgenden Konvergenzverlauf: Verfahren m xm,1 0 4.000000e+00 10 3.271049e-02 40 1.788827e-08 70 9.782499e-15 72 3.740893e-15
des steilsten Abstiegs (Gradientenverfahren) xm,2 εm := xm − A−1 bA εm /εm−1 1.341641e+00 7.071068e+00 1.097143e-02 5.782453e-02 6.183904e-01 5.999910e-09 3.162230e-08 6.183904e-01 3.281150e-15 1.729318e-14 6.183904e-01 1.254734e-15 6.613026e-15 6.183904e-01
Wir nutzen die in Abbildung 4.19 qualitativ dargestellten H¨ohenlinien der Funktion F zur Verdeutlichung des Konvergenzverlaufs. Liegen bei der betrachteten Diagonalmatrix gleiche Diagonaleintr¨ age vor, dann beschreiben die H¨ohenlinien Kreise, und das Verfahren konvergiert bei beliebigem Startvektor bereits bei der ersten Iteration, da der Residuenvektor stets in die Richtung des Koordinatenursprungs zeigt. Weist die Diagonalmatrix positive, jedoch sehr unterschiedlich große Diagonaleintr¨age auf, dann stellen die H¨ohenlinien der Funktion F zunehmend gestreckte Ellipsen dar, wodurch die N¨aherungsl¨osung bei jeder Iteration das Vorzeichen wechseln kann und nur sehr langsam gegen das Minimum der Funktion F konvergiert. Die zunehmende Verringerung der Konvergenzgeschwindigkeit l¨ asst sich hierbei auch deutlich durch Betrachten der Konditionzahl der Matrix A erkl¨ aren, die bei der zugrundeliegenden Diagonalmatrix mit dem Streckungsverh¨altnis der Ellipse u ¨ bereinstimmt.
x2
x0 x2 x3
Bild 4.19
x1
x1
H¨ ohenlinien der Funktion F mit qualitativem Konvergenzverlauf
130
4 Iterative Verfahren
Als Motivation zur Verbesserung f¨ uhren wir die Begriffe Optimalit¨at bez¨ uglich einer Richtung und eines Unterraums ein. Definition 4.56 Sei F : Rn → R gegeben, dann heißt x ∈ Rn (a) optimal bez¨ uglich der Richtung p ∈ Rn , falls F (x) ≤ F (x + λp) ∀ λ ∈ R gilt. (b) optimal bez¨ uglich eines Unterraums U ⊂ Rn , falls F (x) ≤ F (x + ξ) ∀ ξ ∈ U gilt. Lemma 4.57 Sei F durch (4.3.8) gegeben, dann ist x ∈ Rn genau dann bez¨ uglich U ⊂ Rn optimal, wenn r = b − Ax ⊥ U gilt.
Beweis: F¨ ur beliebiges ξ ∈ U \{0} betrachten wir f¨ ur λ ∈ R fx,ξ (λ) = F (x + λξ). Die Funktion fx,ξ ist laut (4.3.12) strikt konvex und aus ′ fx,ξ (λ) = (Ax − b,ξ)2 + λ(Aξ,ξ)2
folgt ′ (0) = 0 fx,ξ
⇔
Ax − b ⊥ ξ.
Satz 4.58 Die Iterierten xm , m ∈ N des Gradientenverfahrens sind optimal bez¨ uglich der Richtung r m−1 = b − Axm−1 . Beweis: Im Fall r m−1 = 0 folgt direkt r m ⊥ r m−1 . Sei r m−1 = 0 , so erhalten wir mit λm−1 =
rm−1 22 (Ar m−1 ,r m−1 )2
die Orthogonalit¨at der Residuenvektoren durch (r m ,r m−1 )2
= (rm−1 − λm−1 Ar m−1 ,r m−1 )2 = (r m−1 ,r m−1 )2 − = 0.
Lemma 4.57 liefert damit die Optimalit¨ at.
r m−1 22 (Ar m−1 ,rm−1 )2 (Ar m−1 ,r m−1 )2
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
131
Korollar 4.59 Das Gradientenverfahren stellt in jedem Schritt eine orthogonale Projektionsmethode mit K = L = span {rm−1 } dar. W¨ unschenswert w¨ are eine Optimalit¨ at der Iterierten bez¨ uglich des gesamten Unterraums ur linear unabh¨ angige Residuenvektoren hierdurch sp¨ateU = span {r0 , . . . ,r m−1 } , da f¨ stens xn = A−1 b folgt. Im Verfahren des steilsten Abstiegs liegt jedoch das Problem vor, dass die ermittelte N¨aherungsl¨osung xm stets nur eine Optimalit¨at bez¨ uglich rm−1 aufweist und die Bedingung r ⊥ p nicht transitiv ist, so dass aus r m−2 ⊥ rm−1 und r m−1 ⊥ rm nicht notwendigerweise rm−2 ⊥ r m folgt. 4.3.1.2
Das Verfahren der konjugierten Richtungen
Die Idee dieses Verfahrens ist die Erweiterung der Optimalit¨ at der ermittelten N¨ahe rungen xm auf den gesamten Unterraum Um = span p0 , . . . ,pm−1 mit linear unabh¨angigen Suchrichtungen p0 , . . . ,pm−1 . Hierzu werden wir mit dem folgenden Satz eine Bedingung an die zu verwendenden Suchrichtungen formulieren, die den Erhalt der Optimalit¨at bez¨ uglich U m im (m + 1) -ten Schritt garantiert. uglich des Unterraums Satz 4.60Sei F gem¨aß (4.3.8) gegeben und x ∈ Rn optimal bez¨ ˜ = x + ξ genau dann optimal bez¨ U = span p0 , . . . ,pm−1 ⊂ Rn , dann ist x uglich U , wenn Aξ ⊥ U gilt. Beweis: Sei η ∈ U beliebig, dann folgt die Behauptung unmittelbar aus (b − A˜ x,η)2 = (b − Ax,η)2 − (Aξ,η)2 . =0
Wird mit pm eine Suchrichtung gew¨ ahlt, f¨ ur die Apm ⊥ U m = span p0 , . . . ,pm−1
oder ¨aquivalent
Apm ⊥ pj , j = 0, . . . ,m − 1 gilt, so erbt die N¨ aherungsl¨ osung xm+1 = xm + λm pm laut Satz 4.60 die Optimaltit¨ at von xm bez¨ uglich U m unabh¨angig von der Wahl des skalaren Gewichtungsparameters λm . Dieser Freiheitsgrad wird im Weiteren zur Erweiterung der Optimalit¨ at auf
132
4 Iterative Verfahren U m+1 = span {p0 , . . . ,pm }
genutzt. Definition 4.61 Sei A ∈ Rn×n , dann heißen die Vektoren p0 , . . . ,pm ∈ Rn paarweise konjugiert oder A -orthogonal, falls pi ,pj A := Api ,pj 2 = 0 ∀ i,j ∈ {0, . . . ,m} und i = j gilt.
Eine f¨ ur das Verfahren wichtige Eigenschaft liegt in der sukzessiven Dimensionserh¨ohung innerhalb der betrachteten Folge von Untervektorr¨aumen {U m }m=1,2,... , die durch das anschließende Lemma nachgewiesen wird. Lemma 4.62 Seien A ∈ Rn×n symmetrisch, positiv definit und p0 , . . . ,pm−1 ∈ Rn \{0} paarweise A -orthogonal, dann gilt dim span p0 , . . . ,pm−1 = m
f¨ ur m = 1, . . . ,n .
Beweis: m−1 αj pj = 0 mit αj ∈ R , dann erhalten wir f¨ ur i = 0, . . . ,m − 1 Gelte j=0
⎛
0 = (0,Api )2 = ⎝
m−1 j=0
⎞
αj pj ,Api ⎠ = 2
m−1 j=0
αj pj ,Api 2 = αi
(p ,Ap ) i i 2
.
= 0, da A pos.def.
ur i = 0, . . . ,m − 1 , wodurch die lineare Unabh¨angigkeit der Folglich ergibt sich αi = 0 f¨ Vektoren nachgewiesen ist. Seien mit p0 , . . . ,pm ∈ Rn \{0} paarweise konjugierte Suchrichtungen gegeben und xm optimal bez¨ uglich Um = span p0 , . . . ,pm−1 , dann erhalten wir die Optimalit¨at von xm+1 = xm + λpm
bez¨ uglich Um+1 , wenn 0 = b − Axm+1 ,pj 2 = b − Axm ,pj 2 −λ Apm ,pj 2 = 0 f¨ ur j =m
= 0 f¨ ur j =m
f¨ ur j = 0, . . . ,m gilt. Hieraus ergibt sich f¨ ur λ die Darstellung λ=
(r m ,pm )2 , (Apm ,pm )2
und wir k¨onnen das Verfahren der konjugierten Richtungen in der folgenden Form schreiben:
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
133
Algorithmus - Verfahren der konjugierten Richtungen — W¨ahle x0 ∈ Rn r 0 := b − Ax0 F¨ ur m = 0, . . . ,n − 1 λm :=
(rm ,pm )2 (Apm ,pm )2
xm+1 := xm + λm pm r m+1 := r m − λm Apm Sind die gegebenen Suchrichtungen ung¨ unstig gew¨ahlt, so kann mit xn die exakte L¨osung vorliegen, obwohl xn−1 noch einen sehr großen Fehler aufweist. Im Extremfall kann ur m = 1,2, . . . ,n − 1 und xn = A−1 b gelten. Das Verfahren hierbei xm = x0 = A−1 b f¨ kann daher bei fest vorgegebenen Suchrichtungen in der Regel nur als direktes Verfahren genutzt werden. Diese Eigenschaft f¨ uhrt bei großen n zu einem hohen Rechenaufwand. Eine problemangepasste Auswahl der Suchrichtungen ist also gefordert. 4.3.1.3
Das Verfahren der konjugierten Gradienten
Die von Hestenes und Stiefel [38] vorgestellte Methode der konjugierten Gradienten (CG-Verfahren) kombiniert das Gradientenverfahren mit dem Verfahren der konjugierten Richtungen. Das Verfahren nutzt die Residuenvektoren zur Definition der konjugierten Suchrichtungen, wodurch ein problemangepasstes Vorgehen in Bezug auf die Auswahl der Suchrichtungen vorliegt, und zudem die Optimalit¨at des Verfahrens der konjugierten Richtungen erhalten wird (siehe Schaubild 4.20). Analog zu der bereits vorgestellten Methode der konjugierten Richtungen kann das Verfahren der konjugierten Gradienten als direktes und iteratives Verfahren interpretiert werden. Mit den Residuenvektoren r0 , . . . ,r m ermitteln wir die Suchrichtungen sukzessive f¨ ur m = 1, . . . ,n − 1 gem¨ aß p0
pm
= r0 ,
= rm +
m−1
αj pj .
(4.3.17)
j=0
F¨ ur αj = 0 ( j = 0, . . . ,m − 1 ) erhalten wir damit eine zum Verfahren des steilsten Abstiegs analoge Auswahl der Suchrichtungen. Mit der Ber¨ ucksichtigung der bereits genutzten Suchrichtungen p0 , . . . ,pm−1 ∈ Rn \ {0} in der obigen Form liegen m Freiheitsgrade in der Wahl der Koeffizienten αj vor, die zur Gew¨ahrleistung der Konjugiertheit der Suchrichtungen genutzt werden. Aus der geforderten A -Orthogonalit¨atsbedingung folgt m−1 αj Apj ,pi 2 0 = (Apm ,pi )2 = (Ar m ,pi )2 + j=0
134
4 Iterative Verfahren Verfahren des steilsten Abstiegs
Verfahren der konjugierten Richtungen
Basis
: Gradienten als Basis : Konjugiertheit der Suchrichtungen Suchrichtungen Vorteil : Problemorientiertheit Vorteil : Optimalit¨at Nachteil : Konvergenzverhalten Nachteil : Fehlerverlauf ❍ ✟ ❍❍ ✟✟ ❍❍ ✟ ✟ ✟ ❥ ❍ Verfahren der konjugierten Gradienten Basis
: Gradienten zur Berechnung konjugierter Suchrichtungen Vorteile : Problemorientiertheit, Optimalit¨ at Bild 4.20
Herleitung des CG-Verfahrens
f¨ ur i = 0, . . . ,m − 1 . Mit Apj ,pi 2 = 0 f¨ ur i,j ∈ {0, . . . ,m − 1} und i = j
erhalten wir die ben¨ otigte Vorschrift zur Berechnung der Koeffizienten in der Form αi = −
(Ar m ,pi )2 . (Api ,pi )2
(4.3.18)
Somit ergibt sich die vorl¨ aufige Version des Verfahrens der konjugierten Gradienten in der folgenden Darstellung: Algorithmus - Vorl¨ aufiges Verfahren der konjugierten Gradienten — W¨ahle x0 ∈ Rn p0 := r 0 := b − Ax0 F¨ ur m = 0, . . . ,n − 1 λm :=
(r m ,pm )2 (Apm ,pm )2
xm+1 := xm + λm pm rm+1 := r m − λm Apm pm+1
m Ar m+1 ,pj 2 p := r m+1 − Apj ,pj 2 j j=0
(4.3.19)
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
135
Das vorl¨aufige CG-Verfahren weist den entscheidenden Nachteil auf, dass zur Berechnung von pm+1 scheinbar alle pj ( j = 0, . . . ,m ) ben¨otigt werden. Im ung¨ unstigsten Fall ben¨otigen wir daher den Speicherplatz einer vollbesetzten n×n -Matrix f¨ ur die Suchrichtungen. Bei großen schwachbesetzten Matrizen ist das Verfahren somit ineffizient und eventuell unpraktikabel. Durch die folgende Analyse zeigt sich jedoch, dass das Verfahren im Hinblick auf den Speicherplatzbedarf und die Rechenzeit entscheidend verbessert werden kann. Satz 4.63 Vorausgesetzt, das vorl¨aufige CG-Verfahren bricht nicht vor der Berechnung von pk f¨ ur k > 0 ab, dann gilt (a) pm ist konjugiert zu allen pj mit 0 ≤ j < m ≤ k , ur (b) Um+1 := span {p0 , . . . ,pm } = span {r0 , . . . ,r m } mit dim Um+1 = m + 1 f¨ m = 0, . . . ,k − 1 , ur m = 1, . . . ,k , (c) r m ⊥ U m f¨
(d) xk = A−1 b
⇐⇒
rk = 0 m
⇐⇒
pk = 0 ,
ur m = 0, . . . ,k − 1 , (e) Um+1 = span {r 0 , . . . ,A r0 } f¨ (f ) r m ist konjugiert zu allen pj mit 0 ≤ j < m − 1 < k − 1 . Beweis: zu (a): Da pk berechnet wurde, gilt p0 , . . . ,pk−1 ∈ Rn \{0} . Die Behauptung folgt aus den Berechnungsvorschriften (4.3.17) und (4.3.18). zu (b): Induktion u ¨ ber m . F¨ ur m = 0 folgt p0 = r 0 ∈ Rn \{0} und damit die Behauptung. Sei (b) f¨ ur m < k − 1 erf¨ ullt. Wegen pm+1 ∈ Rn \{0} folgt mit (a) die Konjugiertheit von pm+1 zu allen p0 , . . . ,pm . Aus Lemma 4.62 erhalten wir somit dim Um+2 = m + 2, und m (4.3.17) pm+1 − rm+1 = αj pj ∈ Um+1 j=0
liefert
Um+2 = span Um+1 ,pm+1 = span {Um+1 ,r m+1 } .
zu (c): Induktion u ¨ ber m : F¨ ur m = 1 erhalten wir mit p0 = 0 die Gleichung (r1 ,r 0 )2 = (r0 ,r0 )2 −
(r 0 ,p0 )2 (Ap0 ,r 0 )2 (Ap0 ,p0 )2
r 0 =p0
=
0.
Sei (c) f¨ ur m < k erf¨ ullt und η ∈ Um , dann folgt mit Teil (a) (r m+1 ,η)2 = (rm ,η)2 −λm (Apm ,η)2 = 0. =0
=0
Unter Ber¨ ucksichtigung von pm = 0 erhalten wir die Behauptung durch (r m+1 ,pm )2 = (r m ,pm )2 −
(r m ,pm )2 (Apm ,pm )2 = 0. (Apm ,pm )2
136
4 Iterative Verfahren
¨ zu (d): Aus rk = b−Axk folgt direkt die Aquivalenz zwischen xk = A−1 b und r k = 0 . Sei rk = 0 , dann liefert (4.3.19) die Gleichung pk = 0 . Gelte pk = 0 , dann gilt wiederum mit (4.3.19) r k ∈ Uk . Laut Teil (c) gilt aber rk ⊥ Uk , womit r k = 0 folgt. zu (e): Induktion u ¨ ber m : F¨ ur m = 0 ist die Aussage trivial. Sei (e) f¨ ur m < k − 1 erf¨ ullt, dann folgt mit (b) r m ∈ Um+1 = span {r 0 , . . . ,rm } = span {r 0 , . . . ,Am r 0 } sowie
Apm ∈ AUm+1 = span Ar0 , . . . ,Am+1 r0 . Folglich erhalten wir rm+1 = rm − λm Apm ∈ span r0 , . . . ,Am+1 r 0 , so dass Um+2 = span {r 0 , . . . ,rm+1 } ⊂ span r0 , . . . ,Am+1 r0 gilt. Teil (b) liefert dim Um+2 = m + 2 , wodurch Um+2 = span r 0 , . . . ,Am+1 r 0 folgt.
zu (f): F¨ ur 0 ≤ j < m − 1 ≤ k − 1 gilt pj ∈ Um−1 . Somit gilt Apj ∈ Um , und wir erhalten A symm. (c) Ar m ,pj 2 = rm ,Apj 2 = 0.
Dem obigen Satz k¨ onnen wir drei wesentliche Aussagen zur Verbesserung des Verfahrens entnehmen: • Mit Aussage (f) folgt pm = r m −
m−1 j=0
Ar m ,pj 2 Arm ,pm−1 2 p = rm − p . Apj ,pj 2 j Apm−1 ,pm−1 2 m−1
(4.3.20)
Damit ist der Speicheraufwand unabh¨ angig von der Anzahl der Iterationen. • Das Verfahren bricht in der k + 1 -ten Iteration genau dann ab, wenn pk = 0 gilt. Mit (d) liefert xk in diesem Fall bereits die exakte L¨osung, so dass pk = 0 als Abbruchkriterium genutzt werden kann. Im folgenden Diagramm stellen wir zudem eine Variante dar, die ohne zus¨ atzlichen Rechenaufwand als Abbruchkriterium das Residuum verwendet. • Aus r m+1 = r m −λm Apm erhalten wir aufgrund der Eigenschaft (c) die Gleichung (rm − λm Apm ,rm )2 = 0 , wodurch sich die skalare Gr¨oße in der Form λm =
(r m ,r m )2 (rm ,pm )2 = (Apm ,pm )2 (Apm ,rm )2
(4.3.21)
schreiben l¨asst. Verwendung der Gleichung (4.3.20) offenbart (Ar m ,pm−1 )2 (Apm ,rm )2 = Apm ,pm + p = (Apm ,pm )2 , (Apm−1 ,pm−1 )2 m−1 2
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
137
so dass (4.3.21) die Eigenschaft (r m ,r m )2 = (r m ,pm )2
(4.3.22)
liefert. Desweiteren ergibt sich im Fall λm = 0 aus dem vorl¨aufigen CG-Verfahren stets 1 Apm = − (r m+1 − r m ), (4.3.23) λm so dass (Ar m+1 ,pm )2 (Apm ,pm )2
A symm.
=
(b),(c)
=
(Apm ,r m+1 )2 (4.3.23) (r m+1 − rm ,r m+1 )2 = (Apm ,pm )2 (r m+1 − r m ,pm )2 (r m+1 ,rm+1 )2 (4.3.22) (rm+1 ,r m+1 )2 − = − (r m ,pm )2 (r m ,r m )2
folgt und hierdurch innerhalb jeder Iteration eine Matrix-Vektor-Multiplikation entf¨allt. Hiermit ergibt sich das CG-Verfahren in der folgenden Form. Der interessierte Leser findet eine Implementierung der Methode im Anhang A. Algorithmus - Verfahren der konjugierten Gradienten
—
W¨ahle x0 ∈ Rn p0 := r 0 := b − Ax0 , α0 := r0 22 F¨ ur m = 0, . . . ,n − 1 ❩
✚ ✚ ✚ ✚ N
❩ αm = 0 Y ❩ ❩ v m := Apm , λm :=
αm (v m ,pm )2
STOP
xm+1 := xm + λm pm r m+1 := r m − λm v m αm+1 := rm+1 22 pm+1 := r m+1 +
αm+1 p αm m
Beispiel 4.64 Wir betrachten das eindimensionale Randwertproblem (4.2.1) mit hℓ = (das heißt Nℓ = 7 ), wodurch sich Aℓ uℓ = f ℓ mit
1 8
138
4 Iterative Verfahren RNℓ ×Nℓ ∋ Aℓ = tridiag {−64,128, − 64}
ergibt. Zudem sei die rechte Seite gem¨ aß f ℓ = (128, − 448,704, − 832,512,128,320)T gegeben. Mit dem Startvektor u0 = 0 erhalten wir den in der folgenden Tabelle pr¨asentierten Konvergenzverlauf: Verfahren der konjugierten Gradienten (CG-Verfahren) m um,1 um,2 um,3 um,4 um,5 um,6 um,7 rm 2 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 1336.36 1 0.58 -2.04 3.21 -3.79 2.33 0.58 1.46 363.57 2 -0.39 -1.72 2.81 -4.57 3.00 4.99 4.26 252.76 3 -0.01 -2.38 2.06 -3.53 4.87 6.07 6.25 153.30 4 -0.14 -2.88 2.57 -2.13 6.50 7.48 5.93 117.64 5 -0.70 -2.18 3.53 -1.12 7.65 7.81 6.27 103.52 6 0.13 -1.14 5.40 0.54 8.23 8.54 6.98 89.70 7 1.00 0.00 6.00 1.00 9.00 9.00 7.00 0.00 Dieses einfache Beispiel best¨ atigt die theoretische Eigenschaft des Verfahrens, nach sp¨atestens Nℓ Iterationen die exakte L¨ osung zu ermitteln. Im Allgemeinen weist der numerische Algorithmus jedoch Ungenauigkeiten aufgrund von Rundungsfehlern auf, wodurch bei einem Gleichungssystem (4.3.1) das nach n Iterationen vorliegende Ergebnis in der Regel von der gesuchten L¨ osung abweicht. Daher f¨ uhrt man in der Praxis bei kleinem n zus¨atzliche Iterationen durch, bis eine hinreichend genaue L¨osung berechnet wurde. Ein Algol-Programm f¨ ur eine Variante dieses Algorithmus findet man in [77], einen umfangreichen Bericht u ¨ ber numerische Erfahrungen in [58]. Viele aus technischen Anwendungen resultierende Gleichungssysteme besitzen eine große, schwachbesetzte Matrix A ∈ Rn×n . An einer exakten L¨osung dieses Gleichungssystems ist man dabei aus folgenden zwei Gr¨ unden nicht interessiert: Zun¨achst w¨ urde auch bei exakter Arithmetik die eventuell ben¨ otigten n Iterationen auf extrem hohe Rechenzeiten und folglich zu einem unbrauchbaren Verfahren f¨ uhren. Desweiteren stellt die exakte L¨osung des Gleichungssystems gew¨ ohnlich nur eine Approximation an die L¨osung der zugrundeliegenden Problemstellung dar. Man ist deshalb nur an einer Fehlerordnung interessiert, die im Bereich der Approximationsg¨ ute des Diskretisierungsverfahrens liegt. Diese Argumente zeigen, dass auch ein theoretisch direkter Algorithmus wie das CGVerfahren u ¨ blicherweise nur als iterative Methode verwendet wird. Die im CG-Algorithmus auftretenden Quotienten verdeutlichen die grundlegende Abh¨angigkeit des Verfahrens von der positiven Definitheit der Matrix. Gleichungssysteml¨oser, die die Symmetrie der Matrix ausnutzen, jedoch keine positive Definitheit fordern, werden ausf¨ uhrlich von Fischer [25] diskutiert.
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
139
Beispiel 4.65 Als weiteres Beispiel betrachten wir die Poisson-Gleichung (siehe Beispiel 1.1), wobei N = 200 gew¨ ahlt wird und folglich 40.000 Unbekannte vorliegen. Zudem verwenden wir ϕ ≡ 0 und f (x,y) = 2x + 2y . Aus der folgenden Tabelle wird ersichtlich, dass der CG-Algorithmus bereits nach 641 Iterationen eine u ¨ bliche Grenze der Maschinengenauigkeit erreicht hat. Auch hierdurch zeigt sich nachdr¨ ucklich, dass das Verfahren bei großen Gleichungssystemen als iterative Methode genutzt werden sollte. Innerhalb des Beispiels 4.14 haben wir bereits nachgewiesen, dass die Matrix des betrachteten Gleichungssystems den Voraussetzungen des Satzes 4.13 gen¨ ugt und folglich das JacobiVerfahren konvergiert. Der Residuenverlauf dieser Splitting-Methode ist ebenfalls in der Tabelle enthalten und unterstreicht die durch das CG-Verfahren gewonnene immense Effizienzsteigerung.
Iterationen 0 150 300 450 600 641
CG-Verfahren Jacobi-Verfahren Residuenverlauf 140.348 140.348 1.83245 134.735 2.40822e-05 131.221 1.77391e-12 128.135 1.88161e-15 125.292 8.91038e-17 124.547
Bemerkung: Es gilt beim CG-Verfahren stets xm ∈ x0 +
, span p0 , . . . ,pm−1 =span {r 0 ,...,Am−1 r0 }=Km
uglich Km , da und xm ist optimal bez¨
r m ⊥ Km gilt. Das CG-Verfahren stellt somit eine orthogonale Krylov-Unterraum-Methode dar. Zudem gilt xm = arg min F (x). (4.3.24) x∈x0 +Km
Wir haben bereits beim Verfahren des steilsten Abstiegs eine Konvergenzaussage auf der Basis der Konditionszahl der Matrix des linearen Gleichungssystems herleiten k¨onnen. Eine analoge Aussage werden wir nun f¨ ur das CG-Verfahren formulieren. Satz 4.66 Seien A ∈ Rn×n symmetrisch, positiv definit und {xm }m∈N0 die durch das Verfahren der konjugierten Gradienten erzeugte Folge von N¨aherungsl¨osungen. Dann erf¨ ullt der zu xm korrespondierende Fehlervektor em = xm − A−1 b die Ungleichung m cond2 (A) − 1 em A ≤ 2 e0 A . cond2 (A) + 1
140
4 Iterative Verfahren
Beweis: 1 Wir nutzen wiederum die Menge Pm aller Polynome p vom H¨ochstgrad m , die der Nebenbedingung p(0) = I gen¨ ugen. Folglich existiert aufgrund der Gleichung em = xm − A−1 b = x0 − A−1 b − =e0
1 ein Polynom p ∈ Pm mit
m i=1
ci Ai−1 r0 =−Ai e0
em = p(A)e0 . −1
Die Gleichung (4.3.24) liefert xm − A
(4.3.25) −1
bA = minx∈x0 +Km x − A
bA , wodurch
em A = min1 p(A)e0 A
(4.3.26)
p∈Pm
folgt. Als symmetrische und positiv definite Matrix besitzt A reelle und positive Eigenwerte λn ≥ . . . ≥ λ1 > 0 und die zugeh¨ origen Eigenvektoren v 1 , . . . ,v n k¨onnen als Orthonormalbasis des Rn gew¨ ahlt werden. Somit existiert eine Darstellung des Fehlervektors e0 in der Form n e0 = αi v i i=1
mit αi ∈ R f¨ ur i = 1, . . . ,n . Hieraus erhalten wir n n n 2 αi λi v i = α2i λi αi v i , e0 A = i=1
i=1
und analog p(A)e0 2A =
n
i=1
2
p(λi )2 α2i λi .
i=1
Folglich ergibt sich unter Ausnutzung der Gleichung (4.3.26) die Ungleichung em A
= =
≤ ≤
min p(A)e0 A
1 p∈Pm
min
1 p∈Pm
n
p(λi )2 α2i λi
i=1
min
max |p(λj )|
min1
max
1 j=1,...,n p∈Pm
p∈Pm λ∈[λ1 ,λn ]
1/2 n
α2i λi
i=1
|p(λ)|e0 A .
1/2 (4.3.27)
Die weitere Aufgabe zum Nachweis der Behauptung besteht in der Angabe eines speziellen Polynoms. F¨ ur die Tschebyscheff-Polynome Tm : [−1,1] → [−1,1] mit Tm (x) = cos(m arccos x), m ∈ N0 l¨asst sich mittels einer Induktion unter Verwendung von T0 (x) = 1 und T1 (x) = x die Rekursionsformel
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
141
Tm+1 (x) = 2xTm (x) − Tm−1 (x) f¨ ur m ∈ N aus dem Kosinus-Additionstheorem herleiten. Diese Darstellung belegt Tm ∈ Pm und wird zudem zur Fortsetung der Tschebyscheff-Polynome auf R genutzt. Ebenfalls ergibt sich durch eine vollst¨ andige Induktion die Gleichung 1 1 1 1 Tm f¨ ur m ∈ N0 . x+ = xm + m (4.3.28) 2 x 2 x Wir betrachten zun¨ achst den Fall λ1 = λn . Unter dieser Voraussetzung ist das Polynom n +λ1 ) Tm 2λ−(λ λ1 −λn pm (λ) = 1 Tm λλnn +λ −λ1 1 . Ausgehend von der Ungleichung (4.3.27) erhalten wohldefiniert und es gilt pm ∈ Pm wir mit Tm 2λ − (λn + λ1 ) ≤ 1 ∀λ ∈ [λ1 ,λn ] λ1 − λn
und
1 cond2 (A) + 1 λn + λ1 = = λn − λ1 cond2 (A) − 1 2 die Absch¨atzung em A
≤
max
λ∈[λ1 ,λn ]
≤
(4.3.29),(4.3.28)
=
≤
cond2 (A) + 1 cond2 (A) − 1 + cond2 (A) − 1 cond2 (A) + 1
(4.3.29)
|pm (λ)|e0 A
1 e0 A λn +λ1 Tm λn −λ1 ⎛ ⎞−1 m m ⎟ ⎜ ⎟ ⎜ cond2 (A) − 1 ⎟ e0 A 2 ⎜ cond2 (A) + 1 + ⎟ ⎜ cond2 (A) − 1 cond2 (A) + 1 ⎝ ⎠ >0 >0 m cond2 (A) − 1 2 e0 A . cond2 (A) + 1
1 F¨ ur den Spezialfall λ1 = λn > 0 nutzen wir pm ∈ Pm mit pm (λ) = 1 − λλn und erhalten λn mit cond2 (A) = λ1 = 1 die behauptete Ungleichung
em A ≤
max
|pm (λ)| e0 A = 0 = 2
λ∈[λ1 ,λn ]
=0
cond2 (A) − 1
cond2 (A) + 1
m
e0 A .
142 4.3.2
4 Iterative Verfahren Verfahren f¨ ur regul¨ are Matrizen
Im Kontext komplexer Anwendungsf¨ alle k¨ onnen h¨aufig keine Aussagen u ¨ ber die Eigenschaften der auftretenden Gleichungssysteme getroffen werden. Bereits die Diskretisierung der Konvektions-Diffusions-Gleichung (Beispiel 1.4) zeigt, dass selbst bei einfachen Grundgleichungen die Symmetrie der Matrix nicht gew¨ahrleistet werden kann. Wir werden uns in diesem Abschnitt daher mit Verfahren besch¨aftigen, die neben der Regularit¨at der Matrix zun¨achst keine weiteren Forderungen an das betrachtete Gleichungssystem stellen. Diese Bedingung erweist sich beim GMRES-Verfahren als theoretisch hinreichend f¨ ur die Konvergenz und Stabilit¨ at des Verfahrens. Die weiteren iterativen Gleichungssysteml¨oser basieren direkt oder indirekt auf dem Bi-Lanczos-Algorithmus und erben demzufolge im Fall einer indefiniten Matrix auch dessen m¨ogliche vorzeitige Verfahrensabbr¨ uche. Trotz dieser Problematik sind die angesprochenen Algorithmen im Bereich des wissenschaftlichen Rechnens sehr verbreitet und haben sich als robust, stabil und effizient erwiesen.
4.3.2.1
Der Arnoldi-Algorithmus und die FOM
Arnoldi entwickelte 1951 ein Verfahren zur sukzessiven Transformation dichtbesetzter Matrizen auf die obere Hessenbergform. Dieser Algorithmus wurde sp¨ater auch zur Ermittlung von Eigenwerten verwendet und dient in der folgenden Form zur Berechnung einer Orthonormalbasis Vm = {v 1 , . . . ,v m } des Krylov-Unterraums Km , die f¨ ur weitere Verfahren von entscheidender Bedeutung ist. Zur Herleitung des Arnoldi-Algorithmus setzen wir voraus, dass mit {v1 , . . . ,v j } eine Orthogonalbasis des Kj = span{r 0 , . . . ,Aj−1 r 0 } f¨ ur j = 1, . . . ,m vorliegt. Wegen AKm = span{Ar 0 , . . . ,Am r0 } ⊂ Km+1 liegt die Idee nahe, v m+1 in der Form vm+1 = Av m + ξ mit ξ ∈ span{v1 , . . . ,v m } = Km zu definieren. Mit ξ = −
m
αj v j folgt
j=1
(v m+1 ,v j )2 = (Av m ,vj )2 − αj (v j ,v j )2 , wodurch aufgrund der Orthogonalit¨ atsbedingung αj =
(Av m ,v j )2 (v j ,v j )2
f¨ ur j = 1, . . . ,m gilt. Betrachten wir zudem ausschließlich normierte Basisvektoren, dann vereinfacht sich die Berechnung der Koeffizienten zu αj = (v j ,Av m )2 und wir erhalten unter der Voraussetzung r0 = 0 das folgende Verfahren:
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
143
Algorithmus - Arnoldi — v 1 :=
r0 r0 2
F¨ ur j = 1, . . . ,m F¨ ur i = 1, . . . ,j hij := (vi ,Av j )2 wj := Av j −
j
(4.3.30)
hij v i
(4.3.31)
i=1
hj+1,j := wj 2
(4.3.32) ✚ ✚ ✚ ✚ N
❩
❩ hj+1,j = 0 Y ❩ ❩ wj v j+1 := hj+1,j
(4.3.33) v j+1 := 0 STOP
Eine Implementierung dieses Verfahrens in Form eines MATLAB-Files befindet sich im Anhang A. Satz 4.67 Vorausgesetzt, der Arnoldi-Algorithmus bricht nicht vor der Berechnung von v m = 0 ab, dann stellt Vj = {v1 , . . . ,v j } eine Orthonormalbasis des j -ten KrylovUnterraums Kj f¨ ur j = 1, . . . ,m dar. Beweis: ur alle j = 1, . . . ,m ein OrthoWir weisen zun¨achst nach, dass die Vektoren v1 , . . . ,v j f¨ normalsystem (ONS) repr¨ asentieren. Hierzu f¨ uhren wir eine Induktion u ¨ ber j durch. F¨ ur j = 1 ist die Aussage wegen r 0 = 0 trivial. Sei Vk f¨ ur k = 1, . . . ,j < m ein ONS, dann folgt unter Ausnutzung der Voraussetzung v j+1 = 0 die Gleichung (v j+1 ,vk )2
(4.3.31) (4.3.33)
=
= (4.3.30)
=
=
1 hj+1,j
Av j −
1
j i=1
hij v i ,v k
2
((Av j ,v k )2 − hkj ) hj+1,j 1 ((Av j ,v k )2 − (v k ,Av j )2 ) hj+1,j 0.
Die Normierung (4.3.33) liefert die Behauptung. Wir kommen nun zum Nachweis der Basiseigenschaft und f¨ uhren wiederum eine Induktion u ¨ ber j durch.
144
4 Iterative Verfahren
F¨ ur j = 1 ist die Aussage trivial. Sei Vk f¨ ur k = 1, . . . ,j < m eine Basis von Kk , dann folgt j wj = A vj − hij v i ∈ Kj+1 . i=1 ∈Kj ∈Kj
Somit gilt span{v 1 , . . . ,v j+1 } ⊂ Kj+1 . Aufgrund der nachgewiesenen Orthonormalit¨at der Vektoren v1 , . . . ,v j+1 ∈ Rn \ {0} gilt dim span{v 1 , . . . ,v j+1 } = j + 1 , wodurch span{v1 , . . . ,v j+1 } = Kj+1 folgt.
Satz 4.68 Vorausgesetzt, der Arnoldi-Algorithmus bricht nicht vor der Berechnung von v m = 0 ab, dann erhalten wir unter Verwendung von V m = (v 1 . . . v m ) ∈ Rn×m mit H m := V Tm AV m ∈ Rm×m
(4.3.34)
eine obere Hessenbergmatrix, f¨ ur die ur i ≤ j + 1, hij aus dem Arnoldi-Algorithmus f¨ (H m )ij = 0 f¨ ur i > j + 1 gilt. Beweis: Bezeichnen wir die Elemente der Matrix H m mit ˜hij , dann folgt mit (4.3.34) ˜ ij = (v i ,Av j )2 h
(4.3.30)
=
hij
f¨ ur
i ≤ j.
Seien j ∈ {1, . . . ,m − 1} beliebig, aber fest, dann erhalten wir f¨ ur k ∈ {1, . . . ,m − j} die Darstellung ˜ j+k,j h
= (4.3.31)
=
(v j+k ,Av j )2 (v j+k ,wj )2 +
j i=1
(4.3.33)
=
=
hij (v j+k ,v i )2 =0
hj+1,j (v j+k ,v j+1 )2 hj+1,j f¨ ur k = 1 0 f¨ ur k = 2, . . . ,m − j.
Satz 4.69 Vorausgesetzt, der Arnoldi-Algorithmus bricht nicht vor der Berechnung von v m+1 ab, dann gilt AV m = V m+1 H m , (4.3.35) wobei H m ∈ R(m+1)×m durch Hm = gegeben ist.
Hm 0 . . . 0 hm+1,m
(4.3.36)
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
145
Beweis: Aus (4.3.31) und (4.3.33) folgt Av j = hj+1,j v j+1 +
j
hij v i f¨ ur j = 1, . . . ,m
i=1
und somit (4.3.35). Mit dem Arnoldi-Algorithmus kann direkt ein iteratives Verfahren zur L¨osung der Gleichung Ax = b definiert werden. Zun¨ achst l¨ asst sich jeder Vektor xm ∈ x0 + Km in der Form xm = x0 + V m αm mit αm ∈ Rm (4.3.37)
schreiben, da die Spalten der Matrix V m eine Basis des Krylov-Unterraums Km darstellen.
Machen wir den Ansatz einer orthogonalen Krylov-Unterraum-Methode, dann ergibt sich unter Verwendung des ersten Einheitsvektors e1 = (1,0, . . . ,0)T ∈ Rm die Bedingung rm
=
b − Axm ⊥ Km
⇐⇒ (b − Axm ,vj )2
=
0 f¨ ur j = 1, . . . ,m
Rm ∋ 0
=
V Tm (b − Axm )
⇐⇒
(4.3.37)
=
V Tm (r0 − AV m αm )
=
r0 2 e1 − V Tm AV m αm .
(4.3.38)
=H m
Hiermit erhalten wir die als Full Orthogonalization Method (FOM) bezeichnete orthogonale Krylov-Unterraum-Methode in der folgenden Form: Algorithmus - Full Orthogonalization Method (FOM) — W¨ahle x0 ∈ Rn und m ∈ N . r 0 := b − Ax0 ✚ ✚ ✚ ✚ N
❩ ❩ r 0 = 0 Y ❩ ❩ Berechne V m und H m gem¨ aß dem Arnoldi-Algorithmus unter Verwendung von r 0 αm := r0 2 H −1 m e1 xm := x0 + V m αm
STOP
146
4 Iterative Verfahren
Die L¨osung der Gleichung H m αm = r0 2 e1
kann zum Beispiel durch m − 1 Givens-Rotationen mit G = Gm,m−1 · . . . · G2,1 und anschließendem R¨ uckw¨ artsl¨ osen des verbleibenden Systems Rαm = r0 2 Ge1 mit einer rechten oberen Dreiecksmatrix R erfolgen. F¨ ur das Residuum ergibt sich hierbei rm 2
= Satz 4.69
=
= =
b − A(x0 + V m αm )2 V m+1 r0 2 e1 − H m αm 2 R Gr 0 2 e1 − αm 0 . . . 0 hm+1,m 2 hm+1,m |(αm )m | .
Bei der FOM muss durchaus m sehr groß gew¨ ahlt werden, um eine akzeptable L¨osung ¨ erwarten zu d¨ urfen. Eine Uberpr¨ ufung des Residuums als Indikator f¨ ur einen Verfahrensabbruch w¨are daher w¨ unschenswert. Eine M¨oglichkeit besteht darin, mit ε > 0 eine Genauigkeitsschranke vorzugeben. Erf¨ ullt xm die Bedingung b − Axm 2 ≤ ε dann wird das Verfahren beendet, ansonsten wird ein Restart“ mit x0 = xm durchgef¨ uhrt. ” Hierdurch wird der Speicherplatzbedarf f¨ ur die Orthonormalbasis auf n · m reelle Zahlen beschr¨ankt. Zur Aufwandsminimierung in Bezug auf die Rechenzeit und den ben¨otigten Speicherplatz erhalten wir somit die folgende Variante der Full Orthogonalization Method, zu der eine MATLAB-Implementierung im Anhang A aufgef¨ uhrt ist. Algorithmus - Restarted FOM — W¨ahle x0 ∈ Rn , ε > 0 und m ∈ N . r 0 := b − Ax0 Solange r0 2 > ε Berechne V m und H m gem¨ aß Arnoldi-Algorithmus unter Verwendung von r 0 αm := r0 2 H −1 m e1 xm := x0 + V m αm x0 := xm r 0 := b − Ax0
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
147
Ein Problem des vorgestellten Algorithmus liegt darin, dass die Orthogonalit¨at der Vektoren bereits nach wenigen Iterationen verloren gehen kann. Eine Verbesserung liefert der sogenannte Arnoldi-modifizierte Gram-Schmidt-Algorithmus. Dieser ergibt sich aus dem Arnoldi-Verfahren, indem (4.3.30) und (4.3.31) Aktuelle Schleife (Arnoldi) — F¨ ur i = 1, . . . ,j hij := (v i ,Av j )2 w j := Av j − durch
j
i=1
hij v i
Modifizierte Schleife (Arnoldi) — w j := Av j F¨ ur i = 1, . . . ,j hij := (v i ,w j )2 w j := w j − hij v i (4.3.39) ersetzt werden. Legt man eine maximale Bandbreite der Matrix H m fest und vernachl¨assigt anschließend alle außerhalb liegenden Matrixeintr¨ age, so ergibt sich die IOM (Incomplete Orthogonalization Method), die analog zu DIOM (Direct IOM) eine schiefe Projektionsmethode darstellt. DIOM und IOM unterscheiden sich einzig darin, dass bei der direkten Version eine LU-Zerlegung der Matrix H m vorgenommen wird, wodurch sich ein einfach programmierbarer Algorithmus ergibt. Eine spezielle Implementierung der IOM wird in [59] vorgestellt.
4.3.2.2
Der Lanczos-Algorithmus und die D-Lanczos-Methode
Mit dem Ziel der Eigenvektor- und Eigenwertbestimmung stellte Lanczos [45] bereits 1950 ein Verfahren zur Umformung symmetrischer Matrizen auf Tridiagonalgestalt vor. Wie wir sehen werden, kann die Methode als Vereinfachung des Arnoldi-Algorithmus f¨ ur symmetrische Matrizen aufgefasst werden. Betrachten wir eine symmetrische Matrix A ∈ Rn×n , dann folgt mit (4.3.34) H m = V Tm AV m = V Tm AT V m = (V Tm AV m )T = H Tm . Hiermit erhalten wir den Lanczos-Algorithmus aus dem Arnoldi-Algorithmus, da
148
4 Iterative Verfahren
(a) das Matrixelement hj−1,j bereits durch hj,j−1 im vorhergehenden Schritt berechnet wurde und somit die Schleife (4.3.30) zu hjj = (v j ,Av j )2 degeneriert und (b) (4.3.31) sich auf w j = Av j − hj−1,j v j−1 − hjj v j verk¨ urzt. W¨ahlen wir die Notationen aj = hjj und cj = hj−1,j , dann hat H m die Gestalt ⎛ ⎞ a1 c2 ⎜ ⎟ ⎜ c2 a2 . . . ⎟ ⎜ ⎟ ⎜ ⎟ .. .. .. Hm = ⎜ ⎟. . . . ⎜ ⎟ ⎜ ⎟ . .. a ⎝ cm ⎠ m−1 cm am Aus der modifizierten Variante des Arnoldi-Algorithmus (siehe (4.3.39)) ergibt sich unter Ausnutzung von hj−1,j = hj,j−1 der Lanczos-Algorithmus in der Form Algorithmus - Lanczos — v 1 :=
r0 , c1 := 0 , v 0 := 0 r0 2
F¨ ur j = 1, . . . ,m w j := Av j − cj v j−1 aj := (w j ,v j )2 w j := w j − aj v j cj+1 := wj 2
❩ ❩ cj+1 = 0 Y ❩ ❩ wj v j+1 := cj+1
✚ ✚ ✚ ✚ N v j+1 := 0 STOP
Analog zum Arnoldi-Algorithmus l¨ asst sich auch linearen Gleichungssystems Ax = b verwenden. sich in der Form ⎞⎛ ⎛ β1 1 ⎜ ⎟ ⎜ . ⎜ ⎜ γ2 . . 0 ⎟ ⎟⎜ ⎜ ⎜ ⎟ ⎜ . . .. .. Hm = ⎜ ⎟⎜ ⎟⎜ ⎜ ⎟⎜ ⎜ .. .. ⎠⎝ 0 ⎝ 0 . . γm 1 =: Lm
die Lanczos-Methode zur L¨osung des Vorausgesetzt, die Matrix H m l¨asst δ2 .. .
..
.
..
.
⎞
..
.
..
.
=: U m
⎟ 0 ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ δm ⎠ βm
(4.3.40)
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
149
zerlegen, dann folgt δj
= cj f¨ ur j = 2, . . . ,m
β1
= a1 , cj f¨ ur j = 2, . . . ,m, = βj−1
γj βj
= aj − γj cj f¨ ur j = 2, . . . ,m.
(4.3.41) (4.3.42) (4.3.43)
Analog zur FOM schreiben wir die N¨ aherungsl¨osung unter Verwendung des ersten Einheitsvektors e1 ∈ Rm in der Form xm
= x0 + V m H −1 m r0 2 e1 ˜1 =: e = x0 + P m z m
n×m mit P m := V m U −1 und z m m ∈ R vektoren von P m , dann folgt mit ⎛ β1 δ2 ⎜ .. ⎜ . Pm ⎜ ⎜ ⎝
(4.3.40)
=
−1 ˜1 x0 + V m U −1 m Lm e
˜ 1 . Seien p1 , . . . ,pm ∈ Rn die Spalten:= L−1 m e
..
.
..
.
⎞ δm βm
⎟ ⎟ ⎟ = (v 1 . . . v m ) ⎟ ⎠
die Gleichung δm pm−1 + βm pm = v m , wodurch sich die Vorschrift zur Berechnung der m -ten Spalte mittels 1 (v m − δm pm−1 ) (4.3.44) pm = βm unter Ber¨ ucksichtigung der Festlegung δ0 := 0 respektive p0 := 0 ergibt. Gilt die Beziehung P m−1 U m−1 = V m−1 , dann folgt mit (4.3.44) die Gleichung P m U m = V m , T m−1 wodurch sich P m = V m U −1 m ergibt. Sei desweiteren z m−1 = (ξ1 , . . . ,ξm−1 ) ∈ R m−1 ˜1 ∈ R die L¨osung von Lm−1 z m−1 = e , so erhalten wir durch Inkrementierung der Raumdimension ⎞ ⎛ 0 ⎜ .. ⎟ z ˜1 e ⎜ m−1 Lm−1 . ⎟ ˜ 1 = Lm z m = ⎜ = Rm ∋ e ⎟ ξm γm ξm−1 + ξm ⎝ 0 ⎠ 0 . . . 0 γm
1
und somit
ξm = −γm ξm−1 .
(4.3.45)
ur die N¨aherungsl¨osung folgt daher Hierbei liefert die erste Gleichung direkt ξ1 = 1 . F¨ z m−1 = x0 + P m−1 zm−1 + ξm pm xm = x0 + (P m−1 ,pm ) ξm = xm−1 + ξm pm
(4.3.46)
150
4 Iterative Verfahren
und wir erhalten zusammenfassend das D(Direct)-Lanczos-Verfahren: D-Lanczos-Algorithmus — W¨ahle x0 ∈ Rn und ε > 0 r 0 := b − Ax0
❩ ❩ r0 2 > ε Y ❩ ❩ r0 v 1 := r0 2
✚ ✚ ✚ ✚ N
c1 := γ1 := 0, ξ1 := 1, p0 := v 0 := 0 F¨ ur j = 1, . . . w j := Av j − cj v j−1 aj := (v i ,wj )2 ❩ ❩ j>1 Y ❩ ❩ γj βj pj
(4.3.42)
:=
(4.3.43)
:=
(4.3.44)
:=
cj βj−1
✚ ✚ ✚ ✚ N , ξj
(4.3.45)
:=
−γj ξj−1
aj − γj cj 1 (v j − cj pj−1 ), xj βj
(4.3.46)
:=
xj−1 + ξj pj ✚ ✚ ✚ ✚ N
❩ ❩ b − Axj 2 > ε Y ❩ ❩ w j := w j − aj v j cj+1 := wj 2
❩ ❩ cj+1 = 0 Y ❩ ❩ wj v j+1 := cj+1
v j+1 := 0 STOP ✚ ✚ ✚ ✚ N
v j+1 := 0 STOP
Die Anwendung einer LQ-Zerlegung anstelle einer LU-Zerlegung f¨ uhrt auf das Verfahren SYMMLQ, welches 1975 von Paige und Saunders [55] vorgestellt wurde. Die naheliegende Idee der Nutzung einer QR-Zerlegung wird zudem in [25] vorgestellt. Der D-Lanczos-Algorithmus wurde auf der Basis der Umformung (4.3.38) hergeleitet und stellt somit analog zur FOM eine orthogonale Krylov-Unterraum-Methode dar. Betrachten wir nun den Spezialfall einer positiv definiten und symmetrischen Matrix A . Da V m
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
151
orthonormale Spaltenvektoren besitzt, erhalten wir V m x = 0 f¨ ur alle x ∈ Rn \ {0} , wodurch sich mit (x,H m x)2 = (V m x,AV m x)2 neben der Symmetrie auch die positive Definitheit auf die Matrix H m ∈ Rm×m u ¨bertr¨agt. ur k = 1, . . . ,m positiv deMit H m stellen auch alle Hauptabschnittsmatrizen H m [k] f¨ finite Matrizen und folglich auch regul¨ are Matrizen dar. Hierdurch folgt mit Satz 3.8 die Existenz und Eindeutigkeit der Zerlegung (4.3.40). In diesem Fall ist der Algorithmus wohldefiniert und als orthogonale Krylov-Unterraum-Methode zudem ¨aquivalent zum CG-Verfahren. Somit k¨ onnen wir den D-Lanczos-Algorithmus als Verallgemeinerung des CG-Verfahrens auf indefinite symmetrische Matrizen ansehen.
4.3.2.3
Der Bi-Lanczos-Algorithmus
Die aus dem Arnoldi- und Lanczos-Algorithmus hervorgegangenen iterativen Verfahren FOM und D-Lanczos weisen unterschiedliche Vorteile und Nachteile auf. Der Vorteil der Full Orthogonalization Method liegt in der Anwendbarkeit f¨ ur beliebige regul¨are Matrizen A ∈ Rn×n , w¨ ahrend sich der D-Lanczos-Algorithmus durch einen geringen Speicherplatzbedarf f¨ ur die Orthonormalbasis {v1 , . . . ,v m } des KrylovUnterraums Km auszeichnet. Betrachten wir die Nachteile der beiden Algorithmen, so weist die FOM einen hohen Speicherplatzbedarf f¨ ur die Orthonormalbasis auf, der bei schwachbesetzten Matrizen A ∈ Rn×n oftmals keine n Iterationen zul¨asst. Abhilfe liefert die Restarted-Version“, die jedoch nach n Schritten auch theoretisch keine Konver” genz gew¨ahrleistet. Das D-Lanczos-Verfahren ist dagegen auf die L¨osung von Gleichungssystemen mit einer symmetrischen Matrix A beschr¨ankt und kann als Spezialform der FOM f¨ ur symmetrische Matrizen interpretiert werden. Beide Verfahren sind f¨ ur positiv definite Matrizen formal ¨ aquivalent zum Verfahren der konjugierten Gradienten. Das Ziel des Bi-Lanczos-Algorithmus liegt in der Ermittlung einer Basis des KrylovUnterraums Km derart, dass hierauf beruhende iterative Verfahren den Vorteil eines geringen Speicherplatzes mit der Anwendbarkeit auf unsymmetrische Matrizen verkn¨ upfen. Sei A ∈ Rn×n eine beliebige regul¨ are Matrix, dann definieren wir neben Km = Km (A,r0 ) = span r0 ,Ar0 , . . . ,Am−1 r0
den zu Km transponierten Krylov-Unterraum m−1 1 T T T T Km = Km A ,r 0 = span r 0 ,A r 0 , . . . , A r0 .
Definition 4.70 Seien v 1 , . . . ,v m ,w 1 , . . . ,wm ∈ Rn , dann heißen die beiden Mengen {v 1 , . . . ,v m } und {w1 , . . . ,wm } bi-orthogonal, wenn (v i ,w j )2 = δij cij mit cij ∈ R\{0} f¨ ur i,j = 1, . . . ,m
(4.3.47)
ur i = 1, . . . ,m heißen die Mengen bi-orthonormal. gilt. Im Fall cii = 1 f¨
Eine wesentliche Eigenschaft bi-orthogonaler Mengen wird durch das folgende Lemma beschrieben.
152
4 Iterative Verfahren
Lemma 4.71 Seien die Mengen {v 1 , . . . ,v m } und {w1 , . . . ,wm } bi-orthogonal, dann gilt dim span {v 1 , . . . ,v m } = m = dim span {w 1 , . . . ,wm } Beweis: Aus Symmetriegr¨ unden ist es hierbeiausreichend, die Behauptung f¨ ur die Vektoren m v 1 , . . . ,v m nachzuweisen. Gelte 0 = i=1 λi v i , so erhalten wir f¨ ur j = 1, . . . ,m die Darstellung m m m 1 1 1 1 λj = λi cij δij = λi (v i ,w j )2 = λi v i ,wj = (0,w j )2 = 0. cjj i=1 cjj i=1 cjj i=1 cjj 2
Der Bi-Lanczos-Algorithmus basiert auf der folgenden Idee: Anstelle eine Orthonormalbasis des Km zu ermitteln, wird simultan eine Basis {v 1 , . . . ,v m } des Km und eine T Basis {w 1 , . . . ,w m } des Km berechnet, die der Bi-Orthogonalit¨atsbedingung (4.3.47) gen¨ ugen. Bi-Lanczos-Algorithmus — h1,0 = h0,1 := 0 v 0 = w0 := 0 v 1 = w1 :=
r0 r0 2
(4.3.48)
f¨ ur j = 1, . . . ,m hjj := (w j ,A vj )2
(4.3.49)
v ∗j+1 := A v j − hjj v j − hj−1,j v j−1
(4.3.50)
w∗j+1 := AT w j − hjj w j − hj,j−1 w j−1
(4.3.51)
hj+1,j := |(v ∗j+1 ,w ∗j+1 )2 |1/2 ❩ hj+1,j = 0 ❩ Y ❩ ❩ (v ∗j+1 ,w∗j+1 )2 hj,j+1 := hj+1,j
✚ ✚ ✚ ✚ N (4.3.52)
v j+1 :=
v ∗j+1 hj+1,j
(4.3.53)
wj+1 :=
w∗j+1 hj,j+1
(4.3.54)
hj,j+1 := 0 v j+1 := 0 wj+1 := 0 STOP
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
153
Mit dem n¨achsten Satz werden wir nachweisen, dass der vorliegende Bi-Lanczos-Algorithmus T tats¨achlich bi-orthonormale Basen der Krylov-Unterr¨aume Km und Km generiert. Satz 4.72 Vorausgesetzt, der Bi-Lanczos-Algorithmus bricht nicht vor der Berechnung von w m = 0 ab, dann stellen Vj = {v1 , . . . ,v j } und Wj = {w1 , . . . ,w j } eine Basis des Krylov-Unterraums Kj beziehungsweise KjT f¨ ur j = 1, . . . ,m dar. Zudem erf¨ ullen die Basisvektoren die Bi-Orthogonalit¨atsbedingung (4.3.47) mit cii = 1 f¨ ur i = 1, . . . ,m . Beweis: Den Nachweis der Bi-Orthonormalit¨ at erhalten wir durch eine vollst¨andige Induktion u ¨ ber j . F¨ ur j = 1 folgt (w 1 ,v1 )2 =
(r 0 ,r 0 )2 = 1. r0 22
Sei die Bedingung f¨ ur ℓ = 1, . . . ,j < m erf¨ ullt, dann erhalten wir (v j+1 ,wj )2
(4.3.50) (4.3.53)
1
=
hj+1,j
=
0,
(Av j ,wj ) −hjj (v j ,wj )2 −hj−1,j (vj−1 ,wj )2 2 =1
= hjj
=0
wobei sich im Fall j = 1 die Eigenschaft (v j−1 ,wj )2 = (v 0 ,w1 )2 = 0 durch die Definition von v 0 := 0 ergibt. Zudem gilt f¨ ur 0 < i < j = v j ,AT w i (Av j ,w i )2 2
(4.3.51) (4.3.54)
=
hi,i+1 (v j ,w i+1 )2 + (v j ,hii wi + hi,i−1 wi−1 )2 =0
=
ur i = j − 1, hj−1,j f¨ 0 f¨ ur i < j − 1.
Die Verwendung der beiden obigen Aussagen liefert f¨ ur 0 < i < j die Gleichung (v j+1 ,wi )2
(4.3.50) (4.3.53)
=
=
1 hj+1,j
(Av j ,wi )2 hj−1,j , i=j−1 = 0, j j + 1.
ur i < j Analog erhalten wir mit der Definition von w∗j+1 und (4.3.51) f¨ ur i = j − 1, hj−1,j f¨ (w i ,Av j ) = AT wi ,v j = 0 f¨ ur i < j − 1, womit die behauptete Darstellung der Matrix T m gem¨aß (4.3.56) gezeigt ist. Ber¨ ucksichtigen wir die Gestalt der Matrix T m , dann stellen die Gleichungen (4.3.57) und (4.3.58) die Matrixdarstellungen der Gleichungen (4.3.50) und (4.3.51) unter Verwendung von (4.3.53) respektive (4.3.54) dar. Der Nachweis rang(V m ) = rang(W m ) = m folgt unmittelbar aus der Basiseigenschaft der entsprechenden Spaltenvektoren.
156
4 Iterative Verfahren
Der Bi-Lanczos-Algorithmus terminiert in der pr¨asentierten Form im Fall hj+1,j = 0 . Eine derartige Situation tritt auf, wenn einer der beiden Basisvektoren identisch verschwindet. Gilt v ∗j+1 = 0 , so liegt mit Kj ein A -invarianter Krylov-Unterraum vor, d. h. es gilt Kj = Kj+1 , und hierauf basierende orthogonale als auch schiefe KrylovUnterraum-Methoden liefern die exakte L¨ osung des Gleichungssystems, siehe [62]. Eine analoge Aussage ergibt sich f¨ ur w∗j+1 = 0 . Diese beiden F¨alle werden als regul¨are Verfahrensabbr¨ uche beschrieben. Bei orthogonalen Vektoren v ∗j+1 = 0 = w ∗j+1 liegt ein sogenannter ernsthafter Abbruch (serious breakdown) vor, da hierauf beruhende Projektionsmethoden in der Regel ohne Berechnung einer akzeptablen N¨aherungsl¨osung terminieren. Diese Problematik kann oftmals durch eine vorausschauende Variante des Verfahrens (Look-ahead Lanczos algorithm) behoben werden. Hierbei wird ausgenutzt, dass h¨aufig die Vektoren v∗j+2 und w ∗j+2 auch ohne explizite Verwendung von v ∗j+1 und onnen. Sollten auch v ∗j+2 und w∗j+2 nicht ermittelt werden w∗j+1 definiert werden k¨ k¨onnen, dann versucht der Algorithmus die Vektoren v ∗j+3 und w∗j+3 zu berechnen, usw.. Gelingt die Berechnung eines solchen Vektorpaares, so kann der Algorithmus in seiner urspr¨ unglichen Form weitergef¨ uhrt werden. Die auf dem Bi-Lanczos-Algorithmus beruhenden Iterationsverfahren haben sich innerhalb praktischer Anwendungen auch bei Nutzung der beschriebenen Lanczos-Version als stabil erwiesen [49, 51]. Wir verzichten daher auf eine detailierte Beschreibung der vorausschauenden Variante und verweisen den interessierten Leser auf die Arbeiten von Brezinski, Zaglia, Sadok [13] und Parlett, Taylor, Liu [56], wobei in letzterem auch sogenannte unheilbare Verfahrensabbr¨ uche diskutiert werden.
4.3.2.4
Das GMRES-Verfahren
Das von Saad und Schultz [63] 1986 vorgestellte GMRES-Verfahren (Generalized Minimal Residual) ist bei beliebigen regul¨ aren Matrizen anwendbar. Analog zum CG-Algorithmus kann das Verfahren formal als direktes und iteratives Verfahren aufgefasst werden. Die Verwendung des GMRES-Verfahrens in einer direkten Form ist jedoch in der Regel aufgrund des ben¨otigten Speicherplatzes nicht praktikabel. Der Algorithmus wird daher bei praxisrelevanten Problemstellungen zumeist in einer Restarted-Version genutzt, die bereits bei der FOM vorgestellt wurde. Das Verfahren kann auf zwei unterschiedliche Arten betrachtet werden. Einen Zugang erhalten wir, indem wir GMRES als Krylov-Unterraum-Methode betrachten, bei der die Projektion durch eine Petrov-Galerkin-Bedingung mit Lm = AKm gegeben ist und das Verfahren somit eine schiefe Projektionsmethode darstellt. Die zweite M¨oglichkeit zur Herleitung des Verfahrens besteht in der Umformulierung des linearen Gleichungssystems in ein Minimierungsproblem. Wir definieren hierzu im Gegensatz zum Verfahren der konjugierten Gradienten die Funktion F durch F : Rn
→ R x → b − Ax22 .
(4.3.59)
Lemma 4.74 Seien A ∈ Rn×n regul¨ar und b ∈ Rn , dann gilt mit der durch (4.3.59) gegebenen Funktion F ˆ = arg minn F (x) x x∈R
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
157
ˆ = A−1 b gilt. genau dann, wenn x Beweis: Es gilt F (x) = b − Ax22 ≥ 0 f¨ ur alle x ∈ Rn . Somit erhalten wir durch ⇔
F (ˆ x) = 0 die Aussage
Aˆ x=b
ˆ = arg minn F (x) = A−1 b. x x∈R
Zum Abschluss dieser kurzen Einordnung der GMRES-Methode m¨ ussen wir noch nachweisen, dass beide Herleitungen zum gleichen Verfahren f¨ uhren, das heißt, dass die bei den unterschiedlichen Bedingungen erzielten N¨aherungsl¨osungen u ¨ bereinstimmen. Diese Aussage liefert uns das folgende Lemma. Lemma 4.75 Seien F : Rn → R durch (4.3.59) gegeben und x0 ∈ Rn beliebig. Dann folgt = arg min F (x) x (4.3.60) x∈x0 +Km
genau dann, wenn
b − A x ⊥ Lm = AKm
(4.3.61)
gilt. Beweis: = x0 + z und xm = x0 + z m , dann erhalten wir x ∈ x0 + Km mit x Seien xm , F (xm ) − F ( x)
x − b,A x − b)2 = (Axm − b,Axm − b)2 − (A = (A(x0 + z m ) − b,A(x0 + z m ) − b)2 − (A(x0 + z) − b,A(x0 + z) − b)2 = (Az m ,Az m )2 + 2 (Ax0 − b,Az m )2 + (Ax0 − b,Ax0 − b)2 − (Az,Az)2 − 2 (Ax0 − b,Az)2 − (Ax0 − b,Ax0 − b)2 = (Az m ,Az m )2 − 2 (Az,Az m )2 + (Az,Az)2 = (A(z m − z),A(z m − z))2
7 6 +2 (Ax0 − b,Az m )2 + (Az,Az m )2 − (Ax0 − b,Az)2 − (Az,Az)2 = (A x − b,A(z m − z))2
= (A(z m − z),A(z m − z))2 + 2 (A x − b,A(z m − z))2 .
(4.3.62)
158
4 Iterative Verfahren
(4.3.61) ⇒ (4.3.60)“ ” Gelte b − A x ⊥ AKm .
ur alle z ∈ Km und wir erhalten Dann ergibt sich (b − A x,Az)2 = 0 f¨ F (xm ) − F ( x)
(4.3.62)
=
2
A(z m − z)2 .
Unter Ber¨ ucksichtigung der Regularit¨ at der Matrix A folgt somit x) f¨ ur alle xm ∈ {x0 + Km }\{ x}. F (xm ) > F ( (4.3.60) ⇒ (4.3.61)“ ” = arg min F (x) . Gelte x x∈x0 +Km
Wir f¨ uhren einen Widerspruchsbeweis durch und nehmen hierzu an, dass ein z m ∈ Km derart existiert, dass (b − A x,Az m )2 = ε = 0
gilt. O.B.d.A. k¨onnen wir ε > 0 voraussetzen. Mit der Regularit¨at der Matrix A gilt z m = 0 und wir definieren η := (Az m ,Az m )2 > 0. Desweiteren betrachten wir f¨ ur gegebenes ξ ∈ R mit 0 < ξ
0 auf, so wird dennoch die zur Zeit optimale N¨aherungsl¨osung xm bestimmt und als Startvektor innerhalb eines Restarts verwendet. Das folgende Diagramm beschreibt eine GMRES-Version mit Restart und einer maximalen KrylovUnterraumdimension von m . Das Verfahren wird oftmals als Restarted GMRES( m ) bezeichnet. Die theoretisch m¨ ogliche Interpretation des GMRES-Verfahrens als direkte Methode geht in dieser Formulierung zwar verloren, aber das Residuum ist dennoch monoton fallend. Im Rahmen einer impliziten Finite-Volumen-Methode zur Simulation reibungsfreier und reibungsbehafteter Luftstr¨ omungen erwies sich bei schwachbesetzten Gleichungssystemen mit etwa 10.000 Unbekannten eine maximale Krylov-Unterraumdimension im Bereich 10 bis 15 als ausreichend, um eine Genauigkeit von ε = 10−6 ohne Restart zu erreichen, falls eine geeignete Pr¨akonditionierung implementiert wurde. Hierbei hat sich gezeigt, dass das Konvergenzverhalten des GMRES-Verfahrens sehr stark vom gew¨ahlten Pr¨akonditionierer abh¨angt. Mit einer unvollst¨ andigen LU-Zerlegung (siehe Abschnitt 5.4) erwies sich die Methode als robust, w¨ ahrend eine einfache Skalierung (siehe Abschnitt 5.1) analog zum Verfahren ohne Vorkonditionierung h¨ aufig auf nicht akzeptable Rechenzeiten f¨ uhrte. Eine ausf¨ uhrliche Diskussion der angesprochenen Ergebnisse kann der Arbeit [49] entnommen werden. Das Ersetzen der Arnoldi-Methode durch eine unvollst¨andige Orthogonalisierungsvorschrift innerhalb des GMRES-Verfahrens f¨ uhrt auf den sogenannten Quasi-GMRES-Algorithmus (QGMRES). Dieser Ansatz kann auch in einer direkten Version der DQGMRES verwendet werden. Beide Verfahren sind allerdings nicht so stark verbreitet und werden detailliert in [62] beschrieben.
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
167
GMRES( m )-Algorithmus mit begrenzter Anzahl von Restarts — W¨ahle x0 ∈ Rn und ε > 0 restart := 0 ; r0 := b − Ax0
❩ ❩ r0 = 0 Y ❩ ❩ x := x0 v 1 :=
r0 , r0 2
✚ ✚ ✚ ✚ N
γ1 := r0 2
F¨ ur j = 1, . . . ,m F¨ ur i = 1, . . . ,j setze hij := (v i ,Av j )2 wj := Av j −
j
i=1
hij v i , hj+1,j := wj 2
F¨ ur i = 1, . . . ,j − 1 hij ci := hi+1,j −si β :=
"
h2jj + h2j+1,j ; sj :=
si ci
hj+1,j β
hij hi+1,j
; cj :=
hjj β
hjj := β; γj+1 := −sj γj ; γj := cj γj
✚ ✚ ✚ ✚ N
❩ ❩ γj+1 ≤ ε Y ❩ ❩
F¨ ur i = j, . . . ,1 j αi := h1ii γi − k=i+1 hik αk x := x0 +
STOP
j
i=1
v j+1 :=
wj hj+1,j
αi v i
F¨ ur i = m, . . . ,1 m αi := h1ii γi − k=i+1 hik αk x := x0 +
m
i=1
αi v i
x0 := x ; r 0 := b − Ax0 ; restarts := restarts + 1 solange restart ≤ Maximale Anzahl von Restarts Unter Verwendung von W m = (Av 1 . . . Av m ) erf¨ ullt das GMRES-Verfahren die Voraussetzung des Satzes 4.50. Folglich gilt
168
4 Iterative Verfahren rm ≤ P m min1 p(A)r 0 p∈Pm
bez¨ uglich jeder Norm, wobei P m die in (4.3.4) aufgef¨ uhrte Projektion darstellt. F¨ ur ur den Spezialfall der Projektionen gilt mit P 2m = P m stets P m ≥ 1 , wodurch sich f¨ euklidischen Norm schon aus der Definition der Funktion F gem¨aß (4.3.59) f¨ ur die durch das GMRES-Verfahren ermittelte N¨ aherungsl¨ osung xm mit rm 2 = min1 p(A)r 0 2
(4.3.77)
p∈Pm
eine Verbesserung der Aussage ergibt. Unter zus¨ atzlichen Voraussetzungen an die Matrix ergeben sich mit den anschließenden Aussagen weitere Absch¨atzungen des Residuums. Zu einer gegebenen symmetrischen Matrix B ∈ Rn×n bezeichne λmin (B) und λmax (B) im Folgenden stets den betragskleinsten beziehungsweise betragsgr¨oßten Eigenwert von B. Satz 4.78 Sei A ∈ Rn×n positiv definit und r m der im GMRES-Verfahren ermittelte m -te Residuenvektor, dann konvergiert das GMRES-Verfahren, und es gilt ⎛
rm 2 ≤ ⎝1 −
λ2min
AT +A 2
⎞ m2
⎠ λmax AT A
r0 2 .
(4.3.78)
Beweis: Aus (4.3.77) erhalten wir rm 2 ≤ min1 p(A)2 r0 2 .
(4.3.79)
p∈Pm
Wir werden nun den Nachweis der Absch¨ atzung (4.3.78) durch eine explizite Angabe 1 erbringen. eines Polynoms p ∈ Pm F¨ ur α > 0 definieren wir p1 (A) = I − αA ∈ P11 , wodurch (p1 (A))
m
1 ∈ Pm und
min p(A)2 ≤ (p1 (A))m 2 ≤ p1 (A)m 2
1 p∈Pm
gilt. Aus p1 (A)22
(2.2.2)
=
=
(I − αA)x22 x22 x =0 x2 =1 1 (Ax,Ax)2 (x,Ax)2 + α2 sup 1 − 2α (x,x)2 (x,x)2 x =0 sup (I − αA)x22 = sup
ergibt sich f¨ ur x = 0 unter Verwendung von 0< und
(x,AT Ax)2 (Ax,Ax)2 = ≤ λmax AT A (x,x)2 (x,x)2
(4.3.80)
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
169
T x, A 2+A x (x,Ax)2 AT + A A pos. def. 2 > 0 = ≥ λmin (x,x)2 (x,x)2 2 die Ungleichung p1 (A)22 ≤ 1 − 2αλmin
AT + A 2
+ α2 λmax AT A .
(4.3.81)
Das Minimum der rechten Seite bez¨ uglich α erhalten wir im Punkt T λmin A 2+A > 0. αmin = λmax AT A
atzung (4.3.81) folgt f¨ ur p1 (A) = I−αmin A Durch Einsetzen der Gr¨ oße αmin in die Absch¨ die Ungleichung T λ2min A 2+A < 1. 0 ≤ p1 (A)22 ≤ 1 − (4.3.82) λmax AT A
Somit konvergiert das GMRES-Verfahren, und es gilt r m 2
(4.3.79)
≤
(4.3.80)
≤
(4.3.82)
≤
min p(A)2 r0 2
1 p∈Pm
p1 (A)m 2 r 0 2 ⎞ m2 T ⎛ λ2min A 2+A ⎝1 − ⎠ r0 2 . λmax AT A
F¨ ur eine symmetrische Matrix ergibt sich hieraus zudem eine Absch¨atzung unter Verwendung der Konditionszahl der Matrix A , die den Vorteil einer kleineren Konditionszahl verdeutlicht. Korollar 4.79 Sei A ∈ Rn×n positiv definit und symmetrisch. Zudem sei rm der im GMRES-Verfahren ermittelte m -te Residuenvektor, dann konvergiert das GMRESVerfahren und es gilt m cond22 (A) − 1 2 rm 2 ≤ r0 2 . cond22 (A) Zum Abschluss dieses Abschnitts wenden wir uns nochmals dem GMRES( m )-Verfahren zu. W¨ahrend mit Satz 4.77 das GMRES-Verfahren sp¨atestens nach n Iterationen die exakte L¨osung liefert, kann aufgrund des Restarts eine solche Aussage f¨ ur die GMRES( m )Methode ( m < n ) nicht nachgewiesen werden. Zwar liegt auch bei der Restarted-Version ein monotones Abfallen des Residuums vor, es bleibt jedoch zu bef¨ urchten, dass sich ein konstanter Residuenverlauf einstellt. Wir sind daher an Konvergenzaussagen f¨ ur das GMRES( m )-Verfahren interessiert, die zudem aus praktischen Gesichtspunkten eine m¨oglichst kleine untere Schranke f¨ ur die maximale Krylov-Unterraumdimension m fordern sollten. Eine derartige Aufgabenstellung kann in Spezialf¨allen durch die anschließenden S¨atze positiv beantwortet werden.
170
4 Iterative Verfahren
Satz 4.80 Sei A ∈ Rn×n positiv definit, dann konvergiert das GMRES( m )-Verfahren f¨ ur m ≥ 1 . Beweis: Durch die Ungleichung (4.3.82) ergibt sich mit Satz 4.78 stets r1 2 ≤ γr0 2
(4.3.83)
mit γ < 1 . Da γ unabh¨ angig vom Startvektor x0 ist, folgt aus (4.3.83) die Behauptung.
Satz 4.81 Sei A ∈ Rn×n regul¨ar und symmetrisch, dann konvergiert das GMRES( m )Verfahren f¨ ur m ≥ 2 . Beweis: Ausgehend von der Absch¨ atzung (4.3.79) w¨ ahlen wir p(A) = I − αA2 mit α > 0 . Analog zum Beweis des Satzes 4.78 folgt unter Verwendung der Symmetrie der Matrix A die Ungleichung p(A)22 ≤ 1 − 2αλmin A2 + α2 λmax A4 . F¨ ur den optimalen Parameter ergibt sich αmin
λmin A2 = λmax A4
wodurch mit p1 (A) = I − αmin A2 die Absch¨ atzung
12 λ2min A2 r2 2 ≤ 1 − r0 2 λmax A4 1 die Gleichung Zudem erhalten wir aus Lm z m = r 0 2 e1 f¨ ξm + ℓm,m−1 ξm−1 = 0.
(4.3.89)
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
173
Zudem gilt ξ1 = r0 2 , und aus (4.3.87) ergibt sich daher m zm = x0 + P m−1 z m−1 + p ˜ m−1 ξm xm = x0 + P ˜ m−1 = xm−1 + ξm p
(4.3.90)
und pm−1 . r m = b − Axm = r m−1 − ξm A˜
(4.3.91)
F¨ ur den Residuenvektor erhalten wir somit die Darstellung rm
= (4.3.84)
=
Satz 4.73
=
=
=
b − Axm r 0 − AV m T −1 m (r 0 2 e1 ) r 0 − V m T m + hm+1,m v m+1 eTm T −1 m (r 0 2 e1 )
r 0 − V m r0 2 e1 −hm+1,m v m+1 eTm T −1 m (r 0 2 e1 ) = 0 ∈R σm v m+1
(4.3.92)
˜ m−1 l¨ asst sich folglich unter Verwendung der Gleichung mit σm ∈ R . Der Vektor p (4.3.88) in der Form 1 1 ˜ m−1 = ˜ m−2 . p r m−1 − hm−1,m p umm σm−1 schreiben. Analog erhalten wir f¨ ur das transponierte Problem b − AT x∗m ⊥ Km T mit x∗m = x∗0 + Km und x∗0 = A−T Ax0 bei vorausgesetzter Regularit¨at der Matrix T m die eindeutig bestimmte L¨ osung in der Form
x∗m = x∗0 + W m T −T m (r 0 2 e1 ) ur den Residuenvektor r∗m = b − AT x∗m ergibt sich entmit W m gem¨aß Satz 4.73. F¨ sprechend der Gleichung (4.3.92) die Darstellung ∗ r∗m = σm wm+1 ∗ mit σm ∈ R . Definieren wir
so gilt
∗ ∗m = p ˜0 . . . p ˜ ∗m−1 := W m L−T P m ,
∗ ˜ ∗m−1 = wm − ℓm,m−1 p ˜ ∗m−2 = σm−1 ˜ ∗m−2 , p r ∗m−1 − ℓm,m−1 p
174
4 Iterative Verfahren
m−1 laut (4.3.88) die Festlegung p ∗−1 := 0 wobei analog zur Bestimmung der Vektoren p respektive ℓ1,0 := 0 ber¨ ucksichtigt werden muss. Die N¨aherungsl¨osung l¨asst sich in der Form ∗m z ∗m x∗m = x∗0 + P mit
T
∗ z ∗m = (ξ1∗ , . . . ,ξm ) := U −T m (r 0 2 e1 )
schreiben. Analog zu (4.3.89) gilt f¨ ur m > 1 ∗ =− ξm
hm−1,m ∗ ξ umm m−1
und ξ1 = − Daher ergibt sich
r0 2 . u11
∗ ∗ ˜ m−1 x∗m = x∗m−1 + ξm p
sowie
∗ ˜ ∗m−1 . r∗m = r ∗m−1 − ξm AT p
Skalieren wir die Suchvektoren gem¨ aß pm−1 =
ξm ˜ p αm−1 m−1
und p∗m−1 =
∗ ξm ˜∗ , p αm−1 m−1
dann folgt
und
xm
= xm−1
x∗m
=
x∗m−1
+ αm−1 p∗m−1
pm
= τm rm
+ βm−1 pm−1 ,
p∗m
∗ ∗ τm rm
=
+ αm−1 pm−1 ,
∗ + βm−1 p∗m−1
∗ ∗ mit τm ,τm ,βm−1 ,βm−1 ∈ R . Hierbei bleibt die Berechnung der skalaren Gr¨oßen anzugeben. Es erweist sich als u achst den BiCG-Algorithmus in der folgen¨ bersichtlich, zun¨ den Form aufzuf¨ uhren und anschließend nachzuweisen, dass in der gew¨ahlten Formulierung mit xj+1 f¨ ur j ∈ N0 stets die L¨ osung der auf der Petrov-Galerkin-Bedingung (4.3.85) basierenden Krylov-Unterraum-Methode vorliegt. Ein direkt ausf¨ uhrbares Programm wird im Anhang A dargestellt.
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
175
BiCG-Algorithmus — W¨ahle x0 ∈ Rn und ε > 0 r 0 = r∗0 = p0 = p∗0 := b − A x0 j := 0 Solange rj 2 > ε
rj ,r ∗j
2 αj := A pj ,p∗j 2
xj+1 := xj + αj pj r j+1 := rj − αj A pj r ∗j+1 := r∗j − αj AT p∗j r j+1 ,r∗j+1 2 βj := rj ,r ∗j 2 pj+1 := r j+1 + βj pj p∗j+1 := r ∗j+1 + βj p∗j j := j + 1
Lemma 4.83 Vorausgesetzt, der BiCG-Algorithmus bricht nicht vor der Berechnung von p∗m ab, dann gilt f¨ ur j = 0, . . . ,m rj
=
j+1
γi v i ,
r ∗j =
i=1
pj
=
j+1 i=1
j+1
γi∗ wi ,
(4.3.93)
λ∗i wi
(4.3.94)
i=1
λi v i ,
p∗j
=
j+1 i=1
∗ ,λj+1 ,λ∗j+1 = 0 und den aus dem Bi-Lanczos-Algorithmus resultierenden mit γj+1 ,γj+1 bi-orthonormalen Vektoren v 1 , . . . ,v j+1 und w1 , . . . ,wj+1 .
176
4 Iterative Verfahren
Beweis: Der Nachweis ergibt sich durch eine Induktion u ur j = 0 gilt v 1 = w 1 = r0 = ¨ ber j . F¨ p0 = r∗0 = p∗0 , so dass die Darstellung mit γ1 = γ1∗ = λ1 = λ∗1 = 1 erf¨ ullt ist. Vorausgesetzt, die Behauptung sei f¨ ur ℓ = 0, . . . ,j < m erf¨ ullt, dann folgt aus dem BiCG-Verfahren r j+1
rj − αj Apj
= (4.3.93) (4.3.94)
=
j+1 j γi v i − α j λi Av i . −αj λj+1 Av j+1 + i=1 i=1 ∈Kj+2 ∈Kj+1
Laut Voraussetzung konnte pj+1 berechnet werden, wodurch αj = 0 folgt und mit λj+1 = 0 sich der Residuenvektor in der Form r j+1 = γj+2 v j+2 + ψj+1 ∈ Kj+2 ∈Kj+1
mit γj+2 = 0 schreiben l¨ asst. F¨ ur den Suchvektor ergibt sich entsprechend pj+1 = rj+1 + βj pj
(4.3.93) (4.3.94)
=
∈Kj+1
λj+2 v j+2 + φj+1 ∈ Kj+2 . ∈Kj+1
mit λj+2 = 0 . Die Aussage f¨ ur die verbleibenden zwei Vektoren folgt analog. Lemma 4.84 Vorausgesetzt, der BiCG-Algorithmus bricht nicht vor der Berechnung von p∗m+1 ab, dann gilt (rj ,r ∗i )2 Apj ,p∗i 2
= 0
f¨ ur
i = j ≤ m + 1,
(4.3.95)
= 0
f¨ ur
i = j ≤ m + 1.
(4.3.96)
Beweis: Wir f¨ uhren den Beweis mittels einer vollst¨ andigen Induktion u ur m = 0 ¨ber m durch. F¨ ergibt sich die Behauptung gem¨ aß (r 1 ,r∗0 )2 = (r0 ,r∗0 )2 −
(r0 ,r∗0 )2 (Ar 0 ,r ∗0 )2 = 0 (Ar0 ,r∗0 )2
(4.3.97)
und (Ap1 ,p∗0 )2
= (Ar 1 ,p∗0 )2 + β0 (Ap0 ,p∗0 )2 β0 r 1 ,AT p∗0 + (r 0 ,r ∗0 )2 α0 2 (r1 ,r ∗1 )2 r∗ − r∗1 = r1 , 0 + α0 α0 2 =
= 0.
(4.3.98)
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
177
Analog ergibt sich die behauptete Aussage f¨ ur (r 0 ,r∗1 )2 sowie (Ap0 ,p∗1 )2 . Sei die Behauptung f¨ ur ℓ = 0, . . . ,m erf¨ ullt, dann folgt der Nachweis in den folgenden Schritten. F¨ ur j < m erhalten wir unter Ber¨ ucksichtigung von β−1 := 0 respektive p∗−1 := 0 die Gleichungen rm+1 ,r∗j 2 = rm ,r∗j 2 −αm Apm ,r ∗j 2 = 0 = −αm Apm ,p∗j − βj−1 p∗j−1 2 (4.3.96)
=
0
(4.3.99)
und (r m+1 ,r∗m )2
= (r m ,r∗m )2 − αm (Apm ,r ∗m )2
= (r m ,r∗m )2 − αm (Apm ,p∗m )2 + αm Apm ,βm−1 p∗m−1 2 = 0
= (r m ,r∗m )2 −
(r m ,r∗m )2 (Apm ,p∗m )2 (Apm ,p∗m )2
= 0.
(4.3.100)
Desweiteren ergibt sich f¨ ur j < m Apm+1 ,p∗j 2 = Arm+1 ,p∗j 2 + βm Apm ,p∗j 2 = rm+1 ,AT p∗j 2 =0 r ∗j − r ∗j+1 = r m+1 , αj 2 (4.3.99) (4.3.100)
=
0
und
Apm+1 ,p∗m
2
= (Ar m+1 ,p∗m )2 + βm (Apm ,p∗m )2
βm (rm ,r ∗m )2 αm 2 r m+1 ,r ∗m+1 2 r ∗m − r ∗m+1 + = r m+1 , αm αm 2 =
rm+1 ,AT p∗m
+
= 0. Eine analoge Vorgehensweise liefert die verbleibenden Gleichungen rj ,r∗m+1 2 = 0 und Apj ,p∗m+1 2 = 0 f¨ ur j < m + 1 .
178
4 Iterative Verfahren
Satz 4.85 Unter der Voraussetzung, dass der BiCG-Algorithmus nicht vor der Berechnung von r ∗m abbricht, stellt xm die L¨osung des Problems T b − Ax ⊥ Km
mit x ∈ x0 + Km dar. Beweis: Das Einsetzen von (4.3.93) in (4.3.95) liefert 0
(4.3.95)
=
rTm r∗i
(4.3.93)
=
m+1
γj v Tj r ∗i
f¨ ur
j=1
i = 0, . . . ,m − 1.
Startend von i = 0 erhalten wir mittels der Bi-Orthogonalit¨atsbedingung (4.3.47) und der Darstellung (4.3.93) f¨ ur r∗i sukzessive die Gleichung γ1 = . . . = γm = 0, wodurch T b − Axm = r m = γm+1 v m+1 ⊥ Km
gilt und folglich mit xm die L¨ osung der Krylov-Unterraum-Methode vorliegt. Bemerkung: Der im BiCG-Verfahren implizit vorliegende Vektor x∗m = A−T (b − r∗m ) stellt analog zur N¨aherungsl¨osung xm die L¨ osung des transponierten Problems b − AT x ⊥ Km T , x∗0 = A−T Ax0 dar. mit x ∈ x∗0 + Km
Der BiCG-Algorithmus weist im Wesentlichen drei Nachteile auf. Zun¨achst k¨onnen Resi duenvektoren rj = 0 und r∗j = 0 mit r j ,r∗j = 0 auftreten, die zu einem Verfahrensabbruch f¨ uhren, obwohl die L¨ osung der betrachteten Gleichung nicht berechnet wurde. Desweiteren werden bei jeder Iteration Matrix-Vektor-Multiplikationen mit A und AT ben¨otigt, und die BiCG-Iterierten sind im Gegensatz zu den GMRES-Iterierten in der Regel durch keine Minimierungseigenschaft charakterisiert, wodurch sich Oszillationen im Konvergenzverhalten zeigen k¨ onnen [27, 29, 33, 42, 75]. Im Fall einer symmetrischen, positiv definiten Matrix A stimmt der Bi-Lanczos-Algorithmus mit der Lanczos-Methode und entsprechend das BiCG-Verfahren mit dem CG-Verfahren u ¨berein.
4.3.2.6
Das CGS-Verfahren
Das CGS-Verfahren (Conjugate Gradient Squared) wurde 1989 von Sonneveld [68] pr¨asentiert und stellt eine Weiterentwicklung des BiCG-Verfahrens dar, bei dem die Berechnung der skalaren Gr¨oßen αj und βj ohne Verwendung des Residuenvektors r∗m und des oglich ist, wodurch der Zugriff auf AT entf¨allt. Suchvektors p∗m m¨ Wir betrachten Pj als die Menge der Polynome vom H¨ochstgrad j und schreiben
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren rj
= ϕj (A)r 0 ,
r ∗j
= ϕj (AT )r 0
pj
= ψj (A)r 0 ,
p∗j
= ψj (AT )r 0
179
mit ϕj ,ψj ∈ Pj . Auf der Basis des BiCG-Algorithmus sind in unserem Fall die Polynome ϕj und ψj rekursiv durch ψj (λ) = ϕj (λ) + βj−1 ψj−1 (λ)
(4.3.101)
und ϕj+1 (λ) = ϕj (λ) − αj λψj (λ)
(4.3.102)
mit ϕ0 (λ) = ψ0 (λ) = 1 gegeben. Die grundlegende Idee des CGS-Verfahrens liegt in der Nutzung der Eigenschaft φj (A)r 0 ,φj (AT )r 0 = φ2j (A)r 0 ,r0 2 , 2
ultig ist. Definieren wir die f¨ ur alle Polynome φj ∈ Pj g¨ ˆj := ϕ2j (A)r 0 r
ˆ j := ψj2 (A)r 0 p
und
dann folgt
αj =
ϕj (A)r 0 ,ϕj (AT )r 0
Aψj (A)r 0 ,ψj (AT )r0
2
2
2 ϕj (A)r 0 ,r0 2 = Aψj2 (A)r 0 ,r 0 2
(ˆ r j ,r0 )2 = Aˆ pj ,r 0 2
(4.3.103)
und
ϕj+1 (A)r 0 ,ϕj+1 (AT )r 0 βj = ϕj (A)r 0 ,ϕj (AT )r0
2
=
(ˆ rj+1 ,r 0 )2 . (ˆ rj ,r 0 )2
(4.3.104)
2
Mit (4.3.101) und (4.3.102) erhalten wir 2 2 ψj2 (λ) = ϕ2j (λ) + 2βj−1 ϕj (λ)ψj−1 (λ) + βj−1 ψj−1 (λ),
ϕ2j+1 (λ) = ϕ2j (λ) − αj λ 2ϕ2j (λ) + 2βj−1 ϕj (λ)ψj−1 (λ) − αj λψj2 (λ)
(4.3.105) (4.3.106)
und f¨ ur die gemischten Terme ϕj+1 (λ)ψj (λ) = ϕ2j (λ) + βj−1 ϕj (λ)ψj−1 (λ) − αj λψj2 (λ). Wir definieren
(4.3.107)
180
4 Iterative Verfahren qˆj := ϕj+1 (A)ψj (A)r 0
(4.3.108)
und ˆj u
:=
ϕj (A)ψj (A)r 0
(4.3.101)
=
ϕ2j (A)r 0 + βj−1 ϕj (A)ψj−1 (A)r 0
=
rˆ j + βj−1 qˆ j−1 .
(4.3.109)
Damit ergibt sich qˆj
(4.3.107)
=
ϕ2j (A)r 0 + βj−1 ϕj (A)ψj−1 (A)r 0 − αj Aψj2 (A)r 0
=
ˆj + βj−1 q ˆ j−1 − αj Aˆ r pj
(4.3.109)
=
ˆj+1 r
= (4.3.106)
=
= =
= und ˆ j+1 p
ˆ j − αj Aˆ u pj ,
(4.3.110)
ϕ2j+1 (A)r0 ϕ2j (A)r 0 − αj A 2ϕ2j (A)r 0 + 2βj−1 ϕj (A)ψj−1 (A)r 0 − αj Aψj2 (A)r 0
ˆ j − αj A 2ˆ ˆ j−1 − αj Aˆ r r j + 2βj−1 q pj
ˆj + βj−1 q ˆ j + βj−1 q ˆ j−1 − αj Aˆ ˆ j−1 + r ˆj − αj A r pj r ˆj ˆj = u = q
ˆj + q ˆj ˆj − αj A u r = (4.3.105)
2 ψj+1 (A)r0
=
ϕ2j+1 (A)r 0 + 2βj ϕj+1 (A)ψj (A)r 0 + βj2 ψj2 (A)r 0
=
ˆj+1 + 2βj qˆ j + βj2 p ˆj r
=
(4.3.111)
ˆ j+1 + βj q ˆj . ˆ j + βj p u
(4.3.112)
ˆ j+1 erhalten wir Mit dem Residuenvektor r
ˆ j+1 = x ˆj . ˆ j + αj u ˆj + q x
(4.3.113)
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
181
Vernachl¨assigen wir das Superskript ˆ , so folgt der CGS-Algorithmus durch (4.3.103), (4.3.104) sowie (4.3.109) bis (4.3.113) in der folgenden Form. Die Umsetzung eines derartigen Pseudocodes in ein ausf¨ uhrbares MATLAB-Programm liefert Anhang A. CGS-Algorithmus — W¨ahle x0 ∈ Rn und ε > 0 u0 = r0 = p0 := b − A x0 , j := 0 Solange rj 2 > ε v j := A pj , αj :=
(rj ,r 0 )2 (v j ,r 0 )2
q j := uj − αj v j xj+1 := xj + αj uj + q j
r j+1 := rj − αj A uj + q j βj :=
(r j+1 ,r0 )2 (r j ,r0 )2
uj+1 := rj+1 + βj q j pj+1 := uj+1 + βj q j + βj pj , j := j + 1 4.3.2.7
Das BiCGSTAB-Verfahren
Der vorgestellte CGS-Algorithmus zeichnet sich im Vergleich zum BiCG-Verfahren durch zwei Vorteile aus. Zum einen ben¨ otigt die Methode keinerlei Operationen mit AT und zum anderen weist sie aufgrund der Quadrierung des Polynoms zur Definition des Residuenvektors ein schnelleres Konvergenzverhalten bei gleichbleibendem Rechenaufwand auf. Jedoch beinhaltet auch das CGS-Verfahren die bereits im Bi-Lanczos-Algorithmus vorliegende Problematik eines vorzeitigen Abbruchs, und es zeigen sich teilweise Oszillationen im Residuenverlauf [28, 31, 51, 53, 71]. Die auftretenden vorzeitigen Verfahrensabbr¨ uche k¨ onnen analog zum Look-ahead Ansatz teilweise behoben werden [14]. Mit der BiCGSTAB-Methode (BiCG Stabilized) hat van der Vorst [72] eine Variante des CGS-Verfahrens vorgestellt, die ein wesentlich glatteres Konvergenzverhalten aufweist. Hierzu werden im Gegensatz zum CGS-Algorithmus gezielt unterschiedliche Polynome bei der Definition der Suchrichtungen und Residuenvektoren betrachtet, womit bei jeder
182
4 Iterative Verfahren
Iteration ein zus¨atzlicher Freiheitsgrad zur Verf¨ ugung steht, der zur Minimierung des Residuums genutzt wird. Zun¨ achst werden die Residuenvektoren r j , r∗j und die Suchvektoren pj , p∗j entsprechend dem CGS-Verfahren definiert, wobei die hierbei ben¨otigten Polynome ϕj und ψj gem¨ aß (4.3.101) und (4.3.102) gegeben sind. Wir setzen weiterhin ˜ ∗j := φj AT r 0 , ˜ ∗j := r p
wobei das Polynom durch die einfache Rekursionsvorschrift φj+1 (λ) := (1 − ωj λ) φj (λ)
(4.3.114)
mit φ0 (λ) := 1 festgelegt ist. Als Folgerung des Satzes 4.85 erhalten wir ϕj (A) r 0 = r j ⊥ KjT und damit
ϕj (A) r 0 ,πj−1 AT r0 = 0, 2
(4.3.115)
f¨ ur alle πj−1 ∈ Pj−1 . Hiermit folgt die Darstellung ϕj (A) r 0 ,φj AT r0 2 αj = αj ϕj (A) r 0 ,φj AT r0
2
(4.3.115)
=
(4.3.102)
=
(φj (A) ϕj (A) r 0 ,r 0 )2 ϕj (A) − ϕj+1 (A) r0 ,φj AT r0 αj 2
(φj (A) ϕj (A) r 0 ,r 0 )2 , (φj (A) Aψj (A) r 0 ,r 0 )2
und wir definieren daher ˆj := φj (A) ϕj (A) r0 r
(4.3.116)
ˆ j := φj (A) ψj (A) r0 . p
(4.3.117)
sowie Damit folgt ˆj s
:= (4.3.102)
φj (A) ϕj+1 (A) r 0
=
φj (A) ϕj (A) r 0 − αj Aφj (A) ψj (A) r 0
=
rˆj − αj Aˆ pj
(4.3.118)
und wir erhalten die Rekursionsformeln rˆ j+1
= φj+1 (A) ϕj+1 (A) r 0 = (I − ωj A) φj (A) ϕj+1 (A) r 0 ˆj = (I − ωj A) s
(4.3.119)
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
183
und ˆ j+1 p
=
φj+1 (A) ψj+1 (A) r 0
(4.3.101)
=
φj+1 (A) ϕj+1 (A) r 0 + βj φj+1 (A) ψj (A) r 0
=
rˆ j+1 + βj (I − ωj A) φj (A) ψj (A) r 0
=
ˆj . rˆ j+1 + βj (I − ωj A) p
(4.3.120)
Um eine vollst¨andige Darstellung des Verfahrens zu erhalten, m¨ ussen wir abschließend die Berechnung der skalaren Gr¨ oßen βj und ωj erl¨autern. Wir schreiben (4.3.101) (4.3.102)
ϕj (λ)
=
−αj−1 λϕj−1 (λ) + πj−1 (λ)
=
αj−1 αj−2 λ2 ϕj−2 (λ) + π ˜j−1 (λ)
=
(−1)j αj−1 . . . α0 λj + π j−1 (λ)
(4.3.121)
πj−1 ,π j−1 ∈ Pj−1 . Analog ergibt sich die Darstellung mit πj−1 ,˜
mit π ˆj−1
φj (λ) = (−1)j ωj−1 . . . ω0 λj + π ˆj−1 (λ) ∈ Pj−1 , wodurch mit r ∗j = ϕj AT r 0 die Gleichung
r j ,r∗j 2 r j ,˜ r∗j 2
=
(4.3.122)
ϕj (A) r 0 ,ϕj AT r0 2 T ϕj (A) r0 ,φj A r 0 2
(4.3.121) (4.3.122)
=
j ϕj (A) r 0 ,(−1)j αj−1 . . . α0 AT r0 + π j−1 AT r0 2 j T T j ϕj (A) r0 ,(−1) ωj−1 . . . ω0 A r0 + π ˆj−1 A r0 2
(4.3.115)
=
j ϕj (A) r0 , AT r 0 αj−1 . . . α0 2 j ωj−1 . . . ω0 T ϕj (A) r0 , A r0 2
= folgt. Somit gilt
αj−1 . . . α0 ωj−1 . . . ω0
184
4 Iterative Verfahren βj
=
=
=
=
r j+1 ,r∗j+1 2 rj ,r ∗j 2 r j+1 ,r∗j+1 2 rj+1 ,˜ r ∗j+1 2 r j ,˜ r∗j 2 r∗j+1 2 r∗j 2 r j+1 ,˜ r j ,˜ r j ,r∗j 2 r∗j+1 2 αj r j+1 ,˜ ωj r ∗j 2 rj ,˜ T (A) r ,φ ϕ A r0 j+1 0 j+1 αj 2 ωj ϕj (A) r0 ,φj AT r 0 2
=
r j+1 ,r 0 )2 αj (ˆ . ωj (ˆ r j ,r 0 )2
(4.3.123)
Mit ωj steht uns ein Parameter zur gezielten Minimierung des Residuums zur Verf¨ ugung. Wir betrachten die Funktion fj : R → R ˆj 22 . fj (ω) := (I − ωA) s ′′
ˆj = 0 ergibt sich fj (ω) = 2Aˆ F¨ ur s sj 22 > 0 , wodurch die Funktion in diesem Fall strikt ˆj = 0 der Parameter ωj konvex ist. Wie wir im Folgenden sehen werden, kann im Fall s beliebig gew¨ahlt werden und das Verfahren liefert die exakte L¨osung. Wir beschr¨anken ˆj = 0 , wodurch wir uns daher auf den Fall s ωj := arg min fj (ω) ω∈R
mittels
′
0 = fj (ωj ) = −2 (Aˆ sj ,ˆ sj )2 + 2 ωj (Aˆ sj ,Aˆ sj )2 in der Form ωj =
(Aˆ sj ,ˆ s j )2 (Aˆ sj ,Aˆ sj ) 2
(4.3.124)
erhalten. Die BiCGSTAB-Iterierte l¨ asst sich folglich gem¨aß ˆ j+1 x
= (4.3.119)
=
(4.3.118)
=
=
A−1 (b − rˆ j+1 ) ˆj + ωj Aˆ A−1 (b − s sj ) A−1 b − rˆj + αj Aˆ pj + ωj Aˆ sj
ˆ j + ωj s ˆj ˆ j + αj p x
(4.3.125)
schreiben. Vernachl¨ assigen wir wiederum das Superskript ˆ , so ergibt sich mit (4.3.118) bis (4.3.120), (4.3.123) bis (4.3.125) und der Definition der skalaren Gr¨oße αj zusammenfassend der BiCGSTAB-Algorithmus in der folgenden Form. Zur Implementierung siehe Anhang A.
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
185
BiCGSTAB-Algorithmus — W¨ahle x0 ∈ Rn und ε > 0 r 0 := p0 := b − A x0 , ρ0 := (r 0 ,r 0 )2 , j := 0 Solange rj 2 > ε v j := A pj , αj :=
ρj (v j ,r 0 )2
sj := r j − αj v j , tj := A sj ωj :=
(tj ,sj )2 (tj ,tj )2
xj+1 := xj + αj pj + ωj sj r j+1 := sj − ωj tj ρj+1 := (r j+1 ,r 0 )2 , βj :=
αj ρj+1 ωj ρj
pj+1 := r j+1 + βj pj − ωj v j , j := j + 1
Eine Verallgemeinerung des vorgestellten Verfahrens im Sinne einer ℓ -dimensionalen anstelle einer eindimensionalen Minimierung stellt die BiCGSTAB( ℓ )-Methode dar, die 1993 von Sleipjen und Fokkema [65] hergeleitet wurde. Der Algorithmus kann als Kombination der GMRES( ℓ )-Methode und des BiCG-Verfahrens interpretiert werden und stimmt im Fall ℓ = 1 mit der BiCGSTAB-Methode u ¨ berein. Dabei werden zun¨achst implizit ℓ BiCG-Residuenvektoren berechnet und anschließend eine Minimierung u ¨ ber den hierdurch festgelegten ℓ -dimensionalen Unterraum durchgef¨ uhrt. Wir haben bereits im Abschnitt 4.3.2.3 die m¨ oglichen Verfahrensabbr¨ uche des Bi-LanczosAlgorithmus diskutiert. Mit der folgenden Variante des BiCGSTAB-Verfahrens werden wir eine Stabilisierung der Methode hinsichtlich dieser Problematik pr¨asentieren. Zun¨achst werden wir vor der Berechnung des Skalars αj die Gr¨oße des auftretenden Nenners u ufen, um bei großen, aber ann¨ ahernd orthogonalen Vektoren v j und r 0 ¨berpr¨ eine Divisionen durch sehr kleine Werte zu vermeiden. Liegt der Betrag des Nenners relativ zur L¨ange der Vektoren v j und r 0 unterhalb einer vorgegebenen Schranke, so wird ein Restart des Verfahrens durchgef¨ uhrt. Eine weitere m¨ogliche Division durch Null tritt bei der Berechnung von ωj auf. Zur Behebung dieser Problematik wird in [8] eine Kontrolle des Vektors sj empfohlen, der dem Residuenvektor im BiCG-Verfahren entspricht. Gilt sj 2 ≤ ε , so erhalten wir mit xj+1 = xj + αj pj bereits rj+1 2 = rj − αj v j 2 = sj 2 ≤ ε,
186
4 Iterative Verfahren
wodurch keine Notwendigkeit zur Ermittlung des Vektors tj und damit der Berechnung der skalaren Gr¨oße ωj vorliegt. Durch die Ber¨ ucksichtigung der obigen Verbesserungen ergibt sich die folgende Stabilisierung des BiCGSTAB-Verfahrens. Stabilisierter BiCGSTAB-Algorithmus — W¨ahle x0 ∈ Rn und ε, ε > 0
r 0 := p0 := b − A x0 , ρ0 := (r 0 ,r 0 )2 , j := 0
Solange rj 2 > ε v j := A pj σj := (v j ,r0 )2 ❩ σj > ε v j 2 r0 2 ❩ Y ❩ ❩ αj :=
✚ ✚ ✚ ✚ N
ρj σj
Restart mit x0 = xj
sj := r j − αj v j ❩ sj 2 > ε ❩ Y ❩ ❩ tj := A sj ωj :=
(tj ,sj )2 (tj ,tj )2
xj+1 := xj + αj pj + ωj sj r j+1 := sj − ωj tj ρj+1 := (r j+1 ,r 0 )2 βj :=
αj ρj+1 ω j ρj
pj+1 := r j+1 + βj pj − ωj v j j := j + 1
✚ ✚ ✚ ✚ N xj+1 := xj + αj pj r j+1 := sj j := j + 1
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
187
Nat¨ urlich k¨onnen zudem weitere Modifikationen zu einem besseren Verhalten der Methode beitragen. Eine M¨ oglichkeit besteht in der Kontrolle der Variation der relevanten Gr¨ oßen. Wegen r j+1 − r j 2 sj − r j 2 |αj |v j 2 ≤ = rj 2 rj 2 rj 2 liegt im Fall |αj |vj 2 ≤γ r j 2 ¨ die relative Anderung des Residuums unterhalb einer zu w¨ahlenden Grenze γ , so dass ein Restart sinnvoll erscheint. Zur Kontrolle von Rundungsfehlern kann in regelm¨aßigen Abst¨anden der im Verfahren ermittelte Residuenvektor rj+1 mit dem tats¨achlichen Residuenvektor b − Axj+1 verglichen werden. Gr¨oßere Abweichungen weisen auf Run¨ dungsfehler hin, wodurch ebenfalls ein Restart angebracht erscheint. Eine Ubertragung der Look-ahead-Strategie auf das BiCGSTAB-Verfahren wird in [12] vorgestellt.
4.3.2.8
Das TFQMR-Verfahren
Mit der QMR-Methode (Quasi Minimal Residual) pr¨asentierten Freund und Nachtigal [29] ein neuartiges BiCG-¨ ahnliches Verfahren, das als Kombination zwischen der GMRES-Methode und dem BiCG-Verfahren angesehen werden kann. Das Verfahren verkn¨ upft die Vorteile des geringen Speicher- und Rechenaufwandes der BiCG-Methode, die auf die Verwendung des Bi-Lanczos-Algorithmus zur¨ uckgeht, mit der Eigenschaft des glatten Residuenverlaufes des GMRES-Verfahrens, das auf der Minimierung des Residuums beruht. Hierzu wurde die vorausschauende Variante des Bi-Lanczos-Verfahrens, der Look-ahead Lanczos-Algorithmus, zur Berechnung einer Basis {v 1 , . . . ,v m } des Km genutzt. Die aus den Basisvektoren bestehende Matrix V m = (v 1 . . . v m ) ist aufgrund des genutzten Bi-Lanczos-Algorithmus nicht notwendigerweise orthogonal, weshalb beim QMR-Verfahren im Gegensatz zur GMRES-Methode lediglich eine Quasiminimierung der durch (4.3.59) gegebenen Funktion vorgenommen wird. In nat¨ urlicher Weise impliziert der BiCG-Algorithmus einen notwendigen Zugriff auf die Matrix AT im QMRVerfahren. Die im Folgenden beschriebene TFQMR-Methode (Transpose-Free QMR) wurde von Freund [28] auf der Basis des CGS-Verfahrens anstelle der BiCG-Methode entwickelt, wodurch Matrix-Vektor-Multiplikationen mit AT entfallen. Bevor wir zur direkten Herleitung des Verfahrens kommen, werden wir mit den folgenden beiden Lemmata eine Basis des Krylov-Unterraums Km definieren und eine Eigenschaft der Basisvektoren beweisen. Hierzu sei die Abbildung ⌊ ⌋ : R → Z durch ⌊ ⌋
x −→ ⌊x⌋ ∈ ]x − 1,x]
(4.3.126)
definiert. Lemma 4.86 Vorausgesetzt, das CGS-Verfahren bricht nicht vor der Berechnung der Vektoren q ⌊ m−1 ⌋ und u⌊ m−1 ⌋ ab, dann stellen die durch 2 2 u⌊ k−1 ⌋ , falls k ungerade, 2 (4.3.127) y k := q ⌊ k−1 ⌋ , falls k gerade 2
definierten Vektoren y 1 , . . . ,y m eine Basis des Km dar.
188
4 Iterative Verfahren
Beweis: Sei n ∈ N0 , dann folgt f¨ ur k = 2n + 1 = un = ϕn (A) ψn (A) r 0
yk
= α20 · . . . · α2n−1 Ak−1 r0 + π (A) r0 mit π ∈ Pk−2 und f¨ ur k = 2n > 0 yk
= q n−1 = ϕn (A) ψn−1 (A) r 0 = −α20 · . . . · α2n−2 αn−1 Ak−1 r 0 + π (A) r 0 mit π ∈ Pk−2 .
Laut Voraussetzung gilt αi = 0 f¨ ur i = 0, . . . ,n − 1 und damit span {y 1 , . . . ,y m } = Km .
Lemma 4.87 Sei wk :=
-
ϕ2⌊ k−1 ⌋ (A) r 0
, falls k ungerade,
2
ϕ⌊ k−1 ⌋ (A) ϕ⌊ k ⌋ (A) r 0 2
2
, falls k gerade,
(4.3.128)
dann gilt wk+1 = wk − α⌊ k−1 ⌋ Ay k f¨ ur k = 1, . . . ,m 2
mit den durch (4.3.127) gegebenen Vektoren y 1 , . . . ,y m . Beweis: Aus (4.3.102) erhalten wir λψj (λ) =
1 (ϕj (λ) − ϕj+1 (λ)) . αj
(4.3.129)
Sei n ∈ N0 , dann folgt f¨ ur k = 2n + 1 Ay k
= (4.3.109) (4.3.129)
=
=
Aun 1 2 ϕn (A) r0 − ϕn (A) ϕn+1 (A) r0 αn 1 2 ϕ⌊ k−1 ⌋ (A) r0 − ϕ⌊ (k+1)−1 ⌋ (A) ϕ⌊ k+1 ⌋ (A) r 0 2 2 2 α⌊ k−1 ⌋ 2
=
1 (w k − wk+1 ) α⌊ k−1 ⌋ 2
und f¨ ur k = 2n > 0
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren Ay k
=
Aq n−1
(4.3.108) (4.3.129)
=
=
1 αn−1 1
ϕn−1 (A) ϕn (A) r 0 − ϕ2n (A) r 0
α⌊ k−1 ⌋ 2
=
189
ϕ⌊ k−1 ⌋ (A) ϕ⌊ k ⌋ (A) r0 − ϕ2⌊ (k+1)−1 ⌋ (A) r 0 2
2
2
1 (wk − w k+1 ) . α⌊ k−1 ⌋ 2
Aufgrund der vorgenommenen Definition des Vektors wk gilt stets w2k+1 = r k . Mit
und
⎛
Bm
Y m = (y 1 . . . y m ) ,
(4.3.130)
W m+1 = (w 1 . . . wm+1 )
(4.3.131) ⎞
α−1 ⌊ 1−1 ⌋
2 ⎜ ⎜ −α−1 1−1 ⌊ ⎜ 2 ⌋ ⎜ ⎜ =⎜ ⎜ ⎜ ⎜ ⎝
α−1 ⌊ 2−1 ⌋ 2
..
.
..
.
−α−1 ⌊ m−2 ⌋ 2
α−1 ⌊ m−1 ⌋ 2
−α−1 ⌊ m−1 ⌋ 2
l¨asst sich Lemma 4.87 in der Form AY m = W m+1 B m
⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ∈ R(m+1)×m ⎟ ⎟ ⎟ ⎠ (4.3.132)
schreiben. Zudem existiert aufgrund des Lemmas 4.86 f¨ ur jeden Vektor xm ∈ x0 + Km die Darstellung xm = x0 + Y m αm mit αm ∈ Rm . Durch (4.3.128) folgt w1 = r 0 und wir erhalten daher f¨ ur den zu xm geh¨orenden Residuenvektor unter Verwendung der Gleichung (4.3.132) rm
= b − Axm = r 0 − AY m αm = W m+1 e1 − B m αm
(4.3.133)
mit e1 = (1,0, . . . ,0)T ∈ Rm+1 . Die Matrix W m+1 ist in der Regel nicht normerhaltend, weshalb bei der Quasiminimierung keine vollst¨andige Minimierung des Residuums betrachtet wird. Unter zus¨ atzlicher Verwendung der Skalierungsmatrix ⎛ ⎞ w1 2 ⎜ ⎟ ⎜ ⎟ .. ⎜ ⎟ ∈ R(m+1)×(m+1) . S m+1 := ⎜ ⎟ ⎝ ⎠ w m+1 2
190 folgt
4 Iterative Verfahren rm 2 ≤ W m+1 S −1 m+1 w 1 2 e1 − S m+1 B m αm . 2 2 =: τm
(4.3.134)
Die Skalierung dient in der obigen Formulierung als Vorkonditionierer, da die Konditionszahl der Matrix W m+1 S −1 ur die G¨ ute der Absch¨atzung des Resim+1 ein Kriterium f¨ duums durch die Gr¨ oße τm darstellt. Wir erhalten die im folgenden Lemma bewiesene Absch¨atzung: Lemma 4.88 Sei τm := w1 2 e1 − S m+1 B m αm , dann folgt 2
√
r m 2 ≤
m + 1 τm
f¨ ur den durch (4.3.133) gegebenen Residuenvektor r m . Beweis: Da die euklidische Norm einer beliebigen Matrix A = (aij ) ∈ Rm×n der Absch¨atzung ⎛
A2 ≤ ⎝
n m i=1 j=1
⎞1/2
|aij |2 ⎠
= AF
gen¨ ugt, folgt die Behauptung durch Einsetzen der Ungleichung W m+1 S −1 m+1 ≤ 2
in die Gleichung (4.3.134).
1/2 m+1 wi 2 √ = m+1 wi 2 i=1
2
In Anlehnung an die im GMRES-Verfahren durch (4.3.64) eingef¨ uhrte Abbildung nutzen wir aufgrund der Absch¨ atzung (4.3.134) die Funktion Jm : Rm → R mit (4.3.135) Jm (α) := w1 2 e1 − S m+1 B m α 2
und beschreiben mit den folgenden zwei S¨ atzen ein Iterationsverfahren zur L¨osung der Minimierungsaufgabe αm = arg minm Jm (α), α∈R
die die TFQMR-Iterierte mittels xm = x0 + Y m αm liefert. Satz 4.89 Sei m ≥ 1 und gelte Tm := S m+1 B m ∈ R(m+1)×m Tm = hm+1,1 . . . hm+1,m
(4.3.136)
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren
191
mit einer regul¨aren Matrix T m . F¨ ur k = m − 1,m seien desweiteren αk = arg min Jk (α), α∈Rk
und τk := Jk (αk ) mit der durch (4.3.135) gegebenen Funktion Jk . Dann gilt αm−1 2 ˜m + c2m α αm = 1 − c m 0 mit
T ˜ m := α⌊ j−1 ⌋ α
j=1,...,m
2
sowie
(4.3.137)
T ∈ Rm , = α0 ,α0 ,α1 , . . . ,α⌊ m−1 ⌋ 2
τm = τm−1 ϑm cm mit ϑm = und
Beweis: Einfaches Nachrechnen liefert ⎛ w
wm+1 2 τm−1
−1/2 cm = 1 + ϑ2m .
(4.3.138)
⎞
1 2 α0
Tm
wodurch und somit
⎜ ⎜ w2 2 ⎜ − α0 ⎜ ⎜ ⎜ =⎜ ⎜ ⎜ ⎜ ⎜ ⎝
w2 2 α0
..
.
..
.
m 2 − αwm−2 ⌊
2
w m 2 α⌊ m−1 2
−
wm+1 2 α⌊ m−1 2
˜ m = w1 2 T −1 α m e1 ˜ m wm+1 2 = w1 2 e1 − T m α
⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟, ⎟ ⎟ ⎟ ⎟ ⎠ (4.3.139)
2
(4.3.140)
gilt. Wir f¨ uhren analog zum Lemma 4.76 eine orthogonale Transformation der Matrix T m mittels Givens-Rotationen durch und erhalten die Darstellung Rm . (4.3.141) Qm T m = Rm = 0T Zudem definieren wir gm := w1 2 Qm e1 .
192
4 Iterative Verfahren
Aufgrund der besonderen Gestalt der Matrix T m stellt die Abbildung Rm eine rechte obere Dreiecksmatrix mit Bandbreite zwei dar. F¨ ur den Vektor g m ergibt sich dabei mit ⎛ ⎞ γ1 ⎟ ⎜ ⎜ .. ⎟ gm g m−1 ⎜ ⎟ . ⎟ und g m−1 = gm = =⎜ ⎜ ⎟ γ˜m+1 γ˜m ⎜ γm ⎟ ⎝ ⎠ γ˜m+1
unter Verwendung der durch (4.3.141) gegebenen Transformation die ⎛ ⎞ I w1 2 ⎜ ⎟ Qm−1 0 ⎟ c s gm = ⎜ m m ⎝ ⎠ 0 1 0T −sm cm ⎞ ⎛ ⎛ ⎞⎛ g m−1 I g m−1 ⎟ ⎜ ⎜ ⎟⎜ ⎜ ⎟ ⎜ ⎟ ⎜ cm sm ⎠ ⎝ γ˜m ⎠ = ⎝ cm γ˜m = ⎝ −sm cm −sm γ˜m 0
Form ⎞
⎟ ⎟, ⎠
(4.3.142)
wobei o.B.d.A. cm ≥ 0 gelten soll. Analog zum GMRES-Verfahren liegt mit Rm eine regul¨are Matrix vor, und wir erhalten αm = arg minm Jm (α) = R−1 m gm . α∈R
Desweiteren gilt
Rm 0T
= Rm
⎛
⎜ =⎜ ⎝
I cm
sm
−sm
cm
wodurch mit c2m + s2m = 1 die Gleichung Qm−1 T m =
⎞ ⎟ ⎟ ⎠
I
0
0T
cm
Qm−1 T m 0 . . . 0 hm+1,m
,
Rm
folgt. Mit (4.3.139) erhalten wir daher unter Ber¨ ucksichtigung der vorausgesetzten Regularit¨at der Matrix T m die Eigenschaft cm = 0 und folglich die Darstellung ˜m α
= w1 2 T −1 m e1 −1 = Qm−1 T m g m−1 I 0 g m−1 −1 = Rm γ˜m 0T c−1 m Rm−1 αm−1 . = R−1 m γ˜m c−1 m
(4.3.143)
4.3 Projektionsmethoden und Krylov-Unterraum-Verfahren Elementares Nachrechnen liefert die Form ⎛ R Rm = ⎝ m−1 0T
Aus (4.3.142) erhalten wir
gm =
0 rm−1,m rm,m
g m−1 cm γ˜m
193
⎞
⎠.
,
wodurch mit g m−1 = Rm−1 αm−1 unter Ber¨ ucksichtigung der obigen Gestalt der oberen Dreiecksmatrix Rm die behauptete Gestalt des Koeffizientenvektors durch Rm−1 αm−1 −1 −1 αm = Rm g m = Rm (4.3.144) γ˜m cm Rm−1 αm−1 Rm−1 αm−1 −1 2 2 + cm 1 − cm = Rm γ˜m c−1 0 m αm−1 ˜m + c2m α = 1 − c2m 0 ˜ m an, so erhalten wir unter Verwendung der folgt. Wenden wir die Funktion Jm auf α −2 2 Identit¨at c−2 m − 1 = cm sm die Gleichung