Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage...

279
Einführung in die Numerische Mathematik Thomas Richter [email protected] Thomas Wick [email protected] Universität Erlangen 3. Auflage Winter 2015/16 (2012, 2014)

Transcript of Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage...

Page 1: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

Einführung in die Numerische Mathematik

Thomas [email protected]

Thomas [email protected]

Universität Erlangen

3. Auflage Winter 2015/16 (2012, 2014)

Page 2: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische
Page 3: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

Inhaltsverzeichnis

Literaturverzeichnis ii

1. Einleitung 11.1. Konditionierung von numerischen Problemen . . . . . . . . . . . . . . . . . 51.2. Zahldarstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.3. Rundungsfehleranalyse und Stabilität von numerischen Algorithmen . . . . 14

I. Numerische Methoden der Linearen Algebra 19

2. Grundlagen der Linearen Algebra 21

3. Lineare Gleichungssysteme 293.1. Störungstheorie & Stabilitätsanalyse von linearen Gleichungssystemen . . . 303.2. Das Gauß’sche Eliminationsverfahren und die LR-Zerlegung . . . . . . . . . 333.3. LR-Zerlegung für diagonaldominante Matrizen . . . . . . . . . . . . . . . . 453.4. Die Cholesky-Zerlegung für positiv definite Matrizen . . . . . . . . . . . . . 463.5. Dünn besetzte Matrizen und Bandmatrizen . . . . . . . . . . . . . . . . . . 483.6. Nachiteration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

4. Orthogonalisierungsverfahren und die QR-Zerlegung 594.1. Die QR-Zerlegung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594.2. Das Gram-Schmidt Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . 624.3. Householder-Transformationen . . . . . . . . . . . . . . . . . . . . . . . . . 684.4. Givens-Rotationen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

5. Überbestimmte Gleichungssysteme und die Gauß’sche Ausgleichrechnung 79

6. Berechnung von Eigenwerten 896.1. Konditionierung der Eigenwertaufgabe . . . . . . . . . . . . . . . . . . . . . 906.2. Direkte Methode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936.3. Iterative Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936.4. Das QR-Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 996.5. Reduktionsmethoden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

i

Page 4: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

Inhaltsverzeichnis

II. Numerische Methoden der Analysis 107

7. Nullstellenbestimmung 1097.1. Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1107.2. Stabilität und Kondition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1117.3. Intervallschachtelung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1147.4. Das Newton-Verfahren in 1D . . . . . . . . . . . . . . . . . . . . . . . . . . 117

7.4.1. Das klassische Newton-Verfahren . . . . . . . . . . . . . . . . . . . . 1177.4.2. Das Newton-Verfahren als Defekt-Korrektur . . . . . . . . . . . . . . 1237.4.3. Das gedämpfte Newton-Verfahren . . . . . . . . . . . . . . . . . . . 1247.4.4. Mehrfache Nullstellen . . . . . . . . . . . . . . . . . . . . . . . . . . 1257.4.5. Das vereinfachte Newton-Verfahren . . . . . . . . . . . . . . . . . . . 126

7.5. Weitere Verfahren zur Nullstellensuche . . . . . . . . . . . . . . . . . . . . . 1267.6. Konvergenzbegriffe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1287.7. Nullstellensuche im Rn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

7.7.1. Newton-Verfahren im Rn . . . . . . . . . . . . . . . . . . . . . . . . 1367.7.2. Praktische Aspekte des Newton-Verfahrens . . . . . . . . . . . . . . 141

8. Numerische Iterationsverfahren für lineare Gleichungssysteme 1458.1. Konstruktion von Fixpunktverfahren . . . . . . . . . . . . . . . . . . . . . . 1488.2. Konvergenzkriterium für Jacobi- und Gauß-Seidel-Iteration . . . . . . . . . 1508.3. Relaxationsverfahren: das SOR-Verfahren . . . . . . . . . . . . . . . . . . . 1548.4. Praktische Aspekte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1588.5. Abstiegs & Gradientenverfahren . . . . . . . . . . . . . . . . . . . . . . . . . 160

8.5.1. Vorkonditionierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1768.5.2. Krylow-Teilraum Verfahren für allgemeine Matrizen . . . . . . . . . 178

9. Interpolation und Approximation 1819.1. Polynominterpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183

9.1.1. Lagrangesche Darstellung . . . . . . . . . . . . . . . . . . . . . . . . 1849.1.2. Newtonsche Darstellung . . . . . . . . . . . . . . . . . . . . . . . . . 1859.1.3. Interpolation von Funktionen und Fehlerabschätzungen . . . . . . . 188

9.2. Stückweise Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1919.3. Numerische Differentiation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1989.4. Richardson Extrapolation zum Limes . . . . . . . . . . . . . . . . . . . . . . 2029.5. Numerische Quadratur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

9.5.1. Interpolatorische Quadratur . . . . . . . . . . . . . . . . . . . . . . . 2119.5.2. Stückweise interpolatorische Quadraturformeln . . . . . . . . . . . . 2159.5.3. Romberg-Quadratur . . . . . . . . . . . . . . . . . . . . . . . . . . . 2189.5.4. Gauß-Quadratur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223

9.6. Bestapproximation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2439.6.1. Gauss-Approximation: Beste Approximation in der L2-Norm . . . . 2449.6.2. Tschebyscheff-Approximation . . . . . . . . . . . . . . . . . . . . . . 251

9.7. Trigonometrische Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . 2609.7.1. Schnelle Fourier-Transformation (FFT) . . . . . . . . . . . . . . . . 266

ii

Page 5: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

Literaturverzeichnis

[1] Jörg Bewersdorff. Algebra für Einsteiger: Von der Gleichungsauflösung zur Galois-Theorie. Wiesbaden, 2004.

[2] F. Cucker and A.G. Corbolan. An alternate proof of the continuity of the roots of apolynomial. The American Mathematical Monthly, 96(4):342–345, 1989.

[3] J.F. Epperson. An introduction to numerical methods and analysis. John Wiley &Sons, 2007.

[4] J. Douglas Faires and Richard L. Burdon. Numerische Methoden. Spektrum Akade-mischer Verlag, 1994.

[5] A. Grama, A. Gupta, G. Karypis, and V. Kumar. Introduction to Parallel Computing.Addison-Wesley, 2003. 2nd edition.

[6] G. Hämmerlin and K.-H. Hoffmann. Numerische Mathematik. Springer Verlag, 1992.

[7] M. Hanke-Bourgeois. Grundlagen der numerischen Mathematik und des Wissen-schaftlichen Rechnens. Vieweg-Teubner Verlag, 2009.

[8] IEEE. IEEE 754-2008: Standard for floating-point arithmetic. Technical report, IEEEStandards Association, 2008. doi:10.1109/IEEESTD.2008.4610935.

[9] Rainer Kress. Numerical Analysis. Springer Verlag, 1998.

[10] R. Rannacher. Einführung in die Numerische Mathematik. Vorlesungsskriptum,Universität Heidelberg, http://numerik.uni-hd.de/˜lehre/notes, 2006.

[11] R. Rannacher. Numerik partieller Differentialgleichungen. Vorlesungsskriptum, Uni-versität Heidelberg, http://numerik.uni-hd.de/˜lehre/notes, 2008.

[12] R. Rannacher. Numerik gewöhnlicher Differentialgleichungen. Vorlesungsskriptum,Universität Heidelberg, http://numerik.uni-hd.de/˜lehre/notes, 2011.

[13] T. Richter. Numerik partieller Differentialgleichungen. Vorlesungsskriptum, Univer-sität Heidelberg, http://numerik.uni-hd.de/˜richter/teaching.shtml, 2011.

[14] R. Schaback and H. Wendland. Numerische Mathematik. Springer, 2005.

[15] H. R. Schwarz and N. Köckler. Numerische Mathematik. Vieweg-Teubner Verlag,2011.

[16] E.E. Tyrtyshnikov. A Brief introduction to Numerical Analysis. Birkhäuser, 1997.

[17] Dirk Werner. Funktionalanalysis. Springer, 2004.

iii

Page 6: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische
Page 7: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

Vorwort

Erste Auflage

Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die NumerischeMathematik im Sommersemester 2012 an der Universität Heidelberg entstanden. Die Vor-lesung und der Inhalt des Skripts ist elementar gehalten und kann mit grundlegendenKenntnisse aus Analysis und linearer Algebra verstanden werden. Die Numerische Mathe-matik unterscheidet sich wesentlich von diesen Vorlesungen. In der Analysis und linearenAlgebra werden Strukturuntersuchungen zu verschiedenen Problemen angestellt: ist eineFunktion integrierbar, existiert die Lösung zu einem Gleichungssystem, wie können Vektor-räume charakterisiert werden, usw. In der Numerischen Mathematik steht die Berechnungkonkreter Lösungen im Mittelpunkt. Es zeigt sich, dass viele mathematische Problemenicht - oder nur sehr aufwändig - wirklich gelöst werden können. Und selbst wenn eineeinfache Lösung existiert, etwa ist x =

√2 die Nullstelle von f(x) = x2 − 2, so kann

diese Lösung nicht exakt auf einem Taschenrechner oder Computer dargestellt werden.Da numerische Algorithmen im Allgemeinen auf einem Computer implementiert werden,müssen Fehler, welche zum Beispiel durch Rundung entstehen, mit in die Analyse einbe-zogen werden. Natürlich wird auch in der Numerischen Mathematik mathematisch undexakt vorgegangen, wir können jedoch nicht davon ausgehen, dass mathematische Aufga-ben, wie die Berechnung der Summe zweier Zahlen x+ y, auch auf dem Computer exaktrealisiert werden können.

Das Skript ist in zwei große Abschnitte unterteilt, die numerische Betrachtung von Pro-blemen der linearen Algebra und die Untersuchung von Problemen der Analysis. Wirversuchen dabei jeweils den Zusammenhang zwischen Problem, mathematischer Analyseund numerischem Verfahren herzustellen.

Thomas Richter, Thomas Wick August, 2012

Zweite Auflage

Für die Vorlesung Einführung in die Numerische Mathematik im Sommersemester 2014wurde das Skriptum in einigen Teilen überarbeitet, ergänzt und korrigiert. Neu hinzuge-kommen ist ein Kapitel über Orthogonalisierungsverfahren. Insbesondere aber durch dieintensive Korrektur aller Tutoren konnten zahllose kleine Fehler beseitigt werden.

Thomas Richter März, 2014

v

Page 8: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische
Page 9: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

1. Einleitung

In der numerischen Mathematik werden Verfahren zum “Lösen” von mathematischen Pro-blemen und Aufgaben entworfen und analysiert. Dabei ist die numerische Mathematik engmit anderen Zweigen der Mathematik verbunden und kann auch nicht von dem Anwen-dungsgebiet, also z.B. der Chemie, Physik oder Medizin getrennt werden. Der übliche Wegvon Problem zur Lösung ist lang:

1. Mathematische Modellierung Das zugrundeliegende Problem wird mathematisch er-fasst, es werden Gleichungen entwickelt, die das Problem beschreiben. Ergebnis desmathematischen Modells kann ein lineares Gleichungssystem sein, aber z.B. aucheine Differentialgleichung.

2. Analyse des Modells Das mathematische Modell muss auf seine Eigenschaften unter-sucht werden: existiert eine Lösung, ist diese Lösung eindeutig? Hier kommen alleTeilgebiete der Mathematik zum Einsatz, von der Linearen Algebra über Statistik,Gruppentheorie zur Theorie von partiellen Differentialgleichungen.

3. Numerische Verfahrensentwicklung Ein numerisches Lösungs- oder Approximations-verfahren wird für das Modell entwickelt. Viele mathematische Modelle (etwa Dif-ferentialgleichungen) können nicht exakt gelöst werden und oft kann eine Lösung,auch wenn sie existiert, nicht angegeben werden. Die Lösung einer Differentialglei-chung ist eine Funktion f : [a, b] → R und zur genauen Beschreibung müsste derFunktionswert an den unendlich-vielen Punkten des Intervalls [a, b] bestimmt wer-den. Jede durchführbare Verfahrensvorschrift kann allerdings nur aus endlich vielenSchritten bestehen. Das Problem muss zunächst diskretisiert werden, also auf einendlich-dimensionales reduziert werden. Die Numerische Mathematik befasst sichmit der Analyse der numerischen Verfahren, also mit Untersuchung von Konvergenzund Approximationsfehlern.

4. Implementierung Das numerische Verfahren muss auf einem Computer implemen-tiert werden. Zur effizienten Implementierung müssen spezielle Algorithmen entwi-ckelt werden. Um moderne Computer-Architekturen nutzen zu können muss dasVerfahren z.B. für die Verwendung von Parallelrechnern modifiziert werden.

5. Auswertung Die numerischen Ergebnisse (etwa das Simulationsergebnis einer Flug-zeugumströmung) müssen ausgewertet werden. Dies beinhaltet eine grafische Dar-stellung der Ergebnisse sowie in technischen Anwendungen z.B. die Auswertung vonKräften, die nur indirekt gegeben sind. Anhand von Plausibilitätsanalysen muss dieQualität der Ergebnisse beurteilt werden. Unter Umständen führt diese Überprüfungzu neuen mathematischen Modellen oder modifizierten numerischen Verfahren.

1

Page 10: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

1. Einleitung

Die Teilaspekte dürfen nicht getrennt voneinander gesehen werden. Ein effizienter Algorith-mus ist nichts wert, wenn das zugrundeliegende Problem überhaupt keine wohldefinierteLösung hat, ein numerisches Verfahren für ein Anwendungsproblem ist wertlos, wenn derComputer in absehbarer Zeit zu keiner Lösung kommt.

Das Ergebnis einer numerischen Aufgabe ist im Allgemeinen eine Zahl, oder eine endlicheMenge von Zahlen. Beispiele für numerische Aufgaben sind das Berechnen der Nullstel-len einer Funktion, die Berechnung von Integralen, die Berechnung der Ableitung einerFunktion in einem Punkt, aber auch komplexere Aufgaben wie das Lösen einer Differen-tialgleichung.

Zum Lösen von numerischen Aufgaben werden wir unterschiedliche Verfahren kennenler-nen. Wir grenzen zunächst ein:

Definition 1.1 (Numerisches Verfahren, Algorithmus). Ein numerisches Verfahren ist ei-ne Vorschrift zum Lösen oder zur Approximation einer mathematischen Aufgabe. Ein nu-merisches Verfahren heißt direkt, falls die Lösung bis auf Rundungsfehler exakt berechnetwerden kann. Ein Verfahren heißt approximativ falls die Lösung nur angenähert werdenkann. Ein Verfahren heißt iterativ, falls die Näherung durch mehrfache Ausführung einerVorschrift schrittweise verbessert wird.

Beispiele für direkte Lösungsverfahren sind die p/q-Formel zur Berechnung von Nullstel-len quadratischer Polynome (siehe Kapitel 7) oder der Gauß’sche Eliminationsalgorithmus(Kapitel I) zum Lösen von linearen Gleichungssysteme. Approximative Verfahren müssenz.B. zum Bestimmen von komplizierten Integralen oder auch zum Berechnen von Null-stellen allgemeiner Funktionen eingesetzt werden. Oft ist ein exaktes Lösen von Aufgabendem Problem nicht angemessen. Wenn Eingabedaten zum Beispiel mit großen Messfehlernbehaftet sind, so ist ein exaktes Lösen nicht notwendig. Wir betrachten ein Beispiel einesdirekten Verfahrens:

Beispiel 1.2 (Polynomauswertung). Es sei durch

p(x) = a0 + a1x+ · · ·+ anxn

ein Polynom gegeben. Dabei sei n ∈ N sehr groß. Wir werten p(x) in einem Punkt x0 ∈ Rmit dem trivialen Verfahren aus:

Algorithmus 1.3 (Polynom-Auswertung).

1. Für i = 0, 1, . . . , n berechne yi := aixi0

2. Berechne p =∑Ni=0 yi.

Wir berechnen den Aufwand zur Polynom-Auswertung: In Schritt 1. des Algorithmus sindzur Berechnung der yi i Multiplikationen notwendig, insgesamt

0 + 1 + 2 + · · ·+ n = n(n+ 1)2 = n2

2 + n

2 .

2

Page 11: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

In Schritt 2 sind weitere n Additionen notwendig. Der Gesamtaufwand des Algorithmusbeträgt demnach n2/2 + n/2 Multiplikationen sowie n Additionen. Wir fassen eine Ad-dition und eine Multiplikation zu einer elementaren Operation zusammen und erhaltenzusammen als Aufwand der trivialen Polynomauswertung

A1(n) = n2

2 + n

2

elementare Operationen.

Wir schreiben das Polynom um

p(x) = a0 + x(a1 + x(a2 + · · ·+ x(an−1 + xan) . . . ))

und leiten hieraus einen zweiten Algorithmus her:

Algorithmus 1.4 (Horner-Schema).

1. Setze p := an

2. In Schritt i = n− 1 bis 0 berechne p := ai + x · p

Jeder der n Schritte des Verfahrens benötigt eine Multiplikation sowie eine Addition, alsoergibt sich ein Aufwand von

A2(n) = n

elementare Operationen. Das Horner-Schema benötigt für die gleiche Aufgabe wesentlichweniger Operationen, man denke nur an Polynome n� 1000.

Definition 1.5 (Numerischer Aufwand). Der Aufwand eines numerischen Verfahrens istdie Anzahl der notwendigen elementaren Operationen. Eine elementare Operation ist eineAddition und eine Multiplikation.

Meist hängt der Aufwand eines Verfahrens von der Problemgröße ab. Die ProblemgrößeN ∈ N wird von Problem zu Problem definiert, beim Lösen eines linearen Gleichungssys-tems Ax = b mit einer Matrix A ∈ RN×N ist die Größe der Matrix die Problemgröße.Beim Auswerten eines Polynoms p(x) = anx

n + an−1xn−1 + · · ·+ a0 in einem Punkt x ist

die Problemgröße die Anzahl der Koeffizienten n.

Zur einfachen Schreibweise definieren wir:

3

Page 12: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

1. Einleitung

Definition 1.6 (Landau-Symbole). (i) Es sei g(n) eine Funktion mit g →∞ für n→∞.Dann ist f ∈ O(g) genau dann, wenn

lim supn→∞

∣∣∣∣f(n)g(n)

∣∣∣∣ <∞sowie f ∈ o(g) genau dann, wenn

limn→∞

∣∣∣∣f(n)g(n)

∣∣∣∣ = 0.

(ii) Sei g(h) eine Funktion mit g(h) → 0 für h → 0. Wir definieren wie oben f ∈ O(g)sowie f ∈ o(g).

Einfach gesprochen: f ∈ O(g), falls f höchstens so schnell gegen ∞ konvergiert wie g undf ∈ o(g), falls g schneller als f gegen ∞ geht. Entsprechend gilt für g → 0. dass f ∈ O(g),falls f mindestens so schnell gegen Null konvergiert wie g und f ∈ o(g) falls f schnel-ler als g gegen Null konvergiert. Mit Hilfe der Landau-Symbole lässt sich der Aufwandeines Verfahrens einfacher charakterisieren. Im Fall der trivialen Polynomauswertung inAlgorithmus 1.3 gilt für den Aufwand A1(n) in Abhängigkeit der Polynomgröße n:

A1(n) ∈ O(n2),

und im Fall des Horner-Schema’s von Algorithmus 1.4

A2(n) ∈ O(n).

Wir sagen: der Aufwand der trivialen Polynomauswertung wächst quadratisch, der Auf-wand des Horner-Schema’s linear. Weiter können mit den Landau-Symbolen Konvergenz-begriffe quantifiziert und verglichen werden. In den entsprechenden Kapiteln kommen wirauf diesen Punkt zurück.

Numerische Lösungen sind oft mit Fehlern behaftet. Fehlerquellen sind zahlreich: die Ein-gabe kann mit einem Messfehler versehen sein, ein approximatives Verfahren wird dieLösung nicht exakt berechnen, sondern nur nähern, manche Aufgaben können nur mitHilfe eines Computers oder Taschenrechners gelöst werden und so ist die Lösung mit Run-dungsfehlern versehen. Wir definieren:

Definition 1.7 (Fehler). Sei x ∈ R die Approximation einer Größe x ∈ R. Mit |δx| =|x− x| bezeichnen wir den absoluten Fehler und mit |δx|/|x| den relativen Fehler.

Üblicherweise ist die Betrachtung des relativen Fehlers von größerer Bedeutung: denn einabsoluter Messfehler von 100m ist klein, versucht man den Abstand zwischen Erde undSonne zu bestimmen, jedoch groß, soll der Abstand zwischen Mensa und Mathematikge-bäude gemessen werden.

4

Page 13: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

1.1. Konditionierung von numerischen Problemen

Messung 0.58s 0.61s 0.62s 0.54s 0.64s 0.598sMessfehler (rel) 4% 0.5% 2% 10% 6% 1%Größe 1.65m 1.82m 1.89m 1.43m 2.01m 1.76mFehler (abs) 0.15m 0.02m 0.09m 0.37m 0.21m 0.04mFehler (rel) 8% 1 % 5% 21% 12% 2%

Tabelle 1.1.: Experiment 1: Größenbestimmung durch Fallenlassen eines Balles.

Messung 1.60s 1.48s 1.35s 1.53s 1.45s 1.482sMessfehler (rel) 5% 2.5% 11% <1% 5% 2%Größe 2.53m 1.47m 0.48m 1.90m 1.23m 1.49mFehler (abs) 0.73m 0.33m 1.32m 0.10m 0.57m 0.31mFehler (rel) 40% 18% 73% 6% 32% 17%

Tabelle 1.2.: Experiment 2: Größenbestimmung durch Hochwerfen des Balles.

1.1. Konditionierung von numerischen Problemen

Bei der Analyse von numerischen Verfahren spielen Fehler, insbesondere die Fortpflanzungvon Fehlern eine entscheidende Rolle. Wir betrachten ein Beispiel:

Beispiel 1.8 (Größenbestimmung). Thomas will seine Größe h bestimmen, hat allerdingskein Maßband zur Verfügung. Dafür hat er eine Uhr, einen Ball und im Physikunterrichtgut aufgepasst. Zur Lösung der Aufgabe hat er zwei Ideen:

1. Verfahren 1: Thomas lässt den Ball aus Kopfhöhe fallen und misst die Zeit t0, bisder Ball auf dem Boden auskommt. Die Höhe berechnet er aus der Formel für denfreien Fall,

y(t) = h− 12gt

2 ⇒ h = 12gt

20,

mit der Gravitationskonstante g = 9.81m/s2.

2. Verfahren 2: der Ball wird 2m über den Kopf geworfen und wir messen die Zeit bisder Ball wieder auf dem Boden angekommen ist. s = 2m werden in t′ =

√2s/g

Sekunden zurückgelegt, hierfür benötigt der Ball eine Startgeschwindigkeit von v0 =gt′ =

√2sg ≈ 6.26 m/s. Es gilt für die Flugbahn:

y(t) = h+ v0t−12gt

2 ⇒ h = 12gt

20 − v0t0.

Das zweite Verfahren wird gewählt, weil die Zeit t0, die der Ball in Verfahren 1 zumFallen benötigt, sehr klein ist. Große Messfehler werden vermutet. Wir führen zunächstAlgorithmus 1 durch und messen 5 mal (exakte Lösung h = 1.80m und t0 ≈ 0.606s). DieErgebnisse sind in Tabelle 1.1 zusammengefasst. In der letzten Spalte wurde als Zeit der

5

Page 14: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

1. Einleitung

Mittelwert aller Messergebnisse gewählt. Dies geschieht in der Hoffnung den Messfehlerzu optimieren.

Wir führen nun Algorithmus 2 durch und messen 5 mal (exakte Lösung h = 1.80m und t0 ≈1.519s). In Tabelle 1.2 sind die Messergebnisse und ermittelten Größen zusammengefasst.In der letzten Spalte wird wieder der Mittelwert aller Messergebnisse betrachtet.

Trotz anfänglicher Zweifel erweist sich Algorithmus 1 als stabiler. Mögliche Fehlerquellensind der Messfehler bei der Bestimmung der Zeit t0 sowie bei Algorithmus 2 die Genauigkeitbeim Erreichen der Höhe von 2m. In Algorithmus 1 führt der Messfehler zu etwa demdoppelten relativen Fehler in der Größe. Bei Algorithmus 2 führen selbst kleine Fehler≤ 1% in den Messungen zu wesentlich größeren Fehlern im Ergebnis. Der immer nochkleine Fehler von 5% bei der ersten Messung führt zu einem Ergebnisfehler von etwa 40%.Auch bei Betrachtung des Mittelwerts über alle Messwerte ist die ermittelte Größe von1.49m keine gute Näherung.

Wir wollen nun untersuchen, welche Auswirkung der Fehler in der Eingabe eines Algorith-mus auf das Ergebnis hat. Hierzu sei die Aufgabe wieder allgemein durch die VorschriftA : x 7→ y beschrieben. Die Eingabe x sei mit einem Fehler δx behaftet. Die gestörteEingabe x = x+ δx liefert ein gestörtes Ergebnis y = y + δy:

y = A(x), δy = y − y = A(x)−A(x) = A(x+ δx)−A(x).

Wir teilen durch y = A(x) und erweitern rechts mit δx sowie mit x

δy

y= A(x+ δx)−A(x)

δx

x

A(x)δx

x

Auf der linken Seite verbleibt der relative Fehler im Ergebnis. Gehen wir nun davon aus,dass die Störung δx infinitesimal klein ist, so bleibt rechts ein Differenzenquotient für dieerste Ableitung der Aufgabe. Im Fall |δx| → 0 gilt∣∣∣∣δyy

∣∣∣∣ ≈ ∣∣∣∣∂A(x)∂x

x

A(x)

∣∣∣∣ · ∣∣∣∣δxx∣∣∣∣ ,

und nennen die GrößeκA,x := ∂A(x)

∂x

x

A(x) ,

die Konditionszahl der Aufgabe A(·) in Bezug auf die Eingabe x. Die Konditionszahlbeschreibt die relative Fehlerverstärkung einer Aufgabe in Bezug auf eine Eingabegröße.Wir definieren:

Definition 1.9 (Konditionszahl). Es sei A : Rn → Rm. Wir nennen

κi,j := ∂Ai(x)∂xj

xjAi(x)

die relative Konditionszahl der Aufgabe. Eine Aufgabe heißt schlecht konditioniert, falls|κi,j | � 1, ansonsten gut konditioniert. Im Fall |κi,j | < 1 spricht man von Fehlerdämp-fung, ansonsten von Fehlerverstärkung.

6

Page 15: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

1.2. Zahldarstellung

Wir setzen das Beispiel zur experimentellen Größenbestimmung fort:

Beispiel 1.10 (Größenbestimmung, Fortsetzung).

1. Verfahren 1: Zum Durchführen des Verfahrens h(t0) ist als Eingabe die gemesseneZeit t0 erforderlich. Für die Konditionszahl gilt:

κh,t0 := ∂h(t0)∂t0

t0h(t0) = gt0

t012gt

20

= 2.

Ein relativer Fehler in der Eingabe δt0/t0 kann demnach einen doppelt so großenrelativen Fehler in der Ausgabe verursachen.

2. Verfahren 2: Wir bestimmen die Konditionszahl in Bezug auf die Zeit t0:

κh,t0 = (gt0 − v0) t012gt

20 − v0t0

= 2 gt0 − v0gt0 − 2v0

Wir wissen, dass der Ball bei exaktem Wurf und ohne Messfehler t0 ≈ 1.519 s un-terwegs ist bei einer Startgeschwindigkeit von v0 ≈ 6.26m/s. Dies ergibt:

κh,t0 ≈ κh,v0 ≈ 8.

Fehler in der Eingaben δt0/t0 sowie δv0/v0 werden um den Faktor 8 verstärkt. Diedurch die Konditionszahlen vorhergesagten Fehlerverstärkungen lassen sich in Tabel-len 1.1 und 1.2 zu Beispiel 1.8 gut wiederfinden.

1.2. Zahldarstellung

Die Analyse von Fehlern und Fehlerfortpflanzungen spielen eine zentrale Rolle in der nu-merischen Mathematik. Fehler treten vielfältig auf, auch ohne ungenaue Eingabewerte.Oft sind numerische Algorithmen sehr komplex, setzen sich aus vielen Operationen zu-sammen. Bei der Approximation mit dem Computer treten unweigerlich Rundungsfehlerauf. Da der Speicherplatz im Computer, bzw. die Anzahl der Ziffern auf dem Taschenrech-ner beschränkt sind, treten Rundungsfehler schon bei der bloßen Darstellung einer Zahlauf. Auch wenn es für die numerische Aufgabe

x2 = 2, ⇔ x = ±√

2,

mit x = ±√

2 eine einfach anzugebene Lösung gibt, so kann diese auf einem Computernicht exakt dargestellt werden:

√2 = 1.41421356237309504880 . . .

Der naheliegende Grund für einen zwingenden Darstellungsfehler ist der beschränkte Spei-cher eines Computers. Ein weiterer Grund liegt in der Effizienz. Ein Computer kann effizi-ent nicht mit beliebig langen Zahlen rechnen. Grund ist die beschränkte Datenbandbreite

7

Page 16: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

1. Einleitung

(das sind die 8-Bit, 16-Bit, 32-Bit oder 64-Bit der Prozessoren). Operationen mit Zah-len in längerer Darstellung müssen zusammengesetzt werden, ähnlich dem schriftlichenMultiplizieren oder Addieren aus der Schule.

Computer speichern Zahlen gerundet in Binärdarstellung, also zur Basis 2:

rd(x) = ±n2∑

i=−n1

ai2i, ai ∈ {0, 1}.

Die Genauigkeit der Darstellung, somit der Rundungsfehler hängt von der Anzahl derZiffern, also von n1 und n2 ab. Die Fixkommadarstellung der Zahl im Binärsystem lautet:

rd(x) = [an2an2−1 . . . a1a0.a−1a−2 . . . a−n1 ]2

Praktischer ist die Gleitkommadarstellung von Zahlen. Hierzu wird die Binärdarstellungnormiert und ein gemeinsamer Exponent eingeführt:

rd(x) = ±

0∑i=−n1−n2

ai+n22i 2n2 , ai ∈ {0, 1}.

Der führende Term (die ai) heißt die Mantisse und wird von uns mit M bezeichnet, denExponenten bezeichnen wir mit E. Der Exponent kann dabei eine positive oder negativeZahl sein. Zur Vereinfachung wird der Exponenten E als E = e − b, mit einer positivenZahl e ∈ N und dem Bias b ∈ N geschrieben. Der Biaswert b wird in einer konkretenZahldarstellung fest gewählt und bestimmt somit den größtmöglichen negativen Exponen-ten. Der variable Exponentanteil e wird selbst im Binärformat gespeichert. Es bleibt, dieAnzahl der Binärstellen für Mantisse und Exponent zu wählen. Hinzu kommt ein Bit fürdas Vorzeichen S ∈ {+,−}. Die Gleitkommadarstellung im Binärsystem lautet:

rd(x) = S · [m0.m−1m−2 . . .m−#m]2 · 2[e#e...e1e0]2−b

Die Mantisse wird üblicherweise mit m0 = 1 normiert zu M ∈ [1, 2). D.h., die führendeStelle muss nicht explizit gespeichert werden.

Auf modernen Computern hat sich das IEEE 754 -Format zum Speichern von Zahlenetabliert:

8

Page 17: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

1.2. Zahldarstellung

Definition 1.11 (Normalisierte Gleitkommazahlen im IEEE 754-Format). Das IEEE-754Format [8] beschreibt die Gleitkommadarstellung einer Zahl im Binärformat:

x = s ·M · 2e−b,

mit einem Vorzeichen s ∈ {+,−}, einer Mantisse M ∈ [1, 2) sowie einem Exponentene ∈ N mit Bias b ∈ N. Die Gleitkommazahl wird in Binärdarstellung gespeichert:

se#e . . . e2e1m#m . . .m2m1

mit #e Bit für den Exponenten und #m Bit für die Mantisse. Der Bias wird im All-gemeinen als 2#e−1 − 1 gewählt. Die Interpretation der Zahlen hängt vom Exponentenab:

Null Im Fall e = 0 und m1 = · · · = m#m = 0 ist x = ±0. Die Unterscheidung zwischen+0 und −0 entsteht beim Runden kleiner Zahlen zur Null. Im direkten Vergleichinterpretiert ein Computer +0 = −0.

Unendlich Im Fall e = 2#e − 1 (also alle Bit im Exponenten gleich 1) und m1 = · · · =m#m = 0 ist x = ±∞. Unendlich entsteht etwa beim Teilen durch 0 (mit Vorzei-chen!) oder falls das Ergebnis zu groß (oder negativ zu klein) ist um darstellbar zusein.

NaN Im Fall e = 2#e − 1 und M > 0 steht der Wert für Not a Number und tritt zumBeispiel bei der Operation 0/0 oder ∞−∞ auf.

Normalisierte Zahl Im Fall 0 ≤ e < 2#e−1 steht die Zahl für

s · 1.m#m . . .m2m1 · 2e−b.

Das Rechnen mit Gleitkommazahlen kann im Computer effizient realisiert werden. ImIEEE-754 Format wird die Gleitkommadarstellung durch denormalisierte Zahlen erweitert.Wir erwähnen dies zur Vollständigkeit:

Bemerkung 1.12 (Denormalisierte Zahlen). Denormalisierte Zahlen dienen zum Schlie-ßen der Lücke zwischen Null und der kleinsten positiven darstellbaren Zahl 1.0 . . . 001 ·2−b.Im Fall e = 0 und M > 0 wird die Zahl interpretiert als:

s · 0.m#e . . .m2m1 · 21−b.

Die Genauigkeit bei der Rechnung mit denormalisierten Zahlen ist reduziert.

In Tabelle 1.3 sind verschiedene Gleitkommadarstellungen zusammengefasst, die historischund aktuell benutzt werden. Derzeit wird fast ausschließlich das IEEE-Format verwendet.Hier sind zwei Darstellungen üblich, single-precision (in C++ float) und double-precision

9

Page 18: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

1. Einleitung

Größe Vorzeichen Exponent Mantisse Biaseinfache Genauigkeit (single) 32 Bit 1 Bit 8 Bit 23+1 Bit 127doppelte Genauigkeit (double) 64 Bit 1 Bit 11 Bit 52+1 Bit 1023Zuse Z1 (1938) 24 Bit 1 Bit 7 Bit 15 Bit —IBM 704 (1954) 36 Bit 1 Bit 8 Bit 27 Bit 128i8087 Coprozessor (1980) Erste Verwendung von IEEE (single + double)Intel 486 (1989) Erste integrierte FPU in Standard PCNVIDIA G80 (2007) GPU (single)NVIDIA Fermi (2010) GPU (double)

Tabelle 1.3.: IEEE-754 Format in einfacher und doppelter Genauigkeit sowie Gleitkomma-formate in aktueller und historischer Hardware.

(in C++ double). Durch die Normierung der Mantisse wird ein Bit, das sogenannte hidden-bit gewonnen. Historisch wurden in Rechensystemen jeweils unterschiedliche Zahlendar-stellungen gewählt. Während die ersten Computer noch im Prozessor integrierte Rechen-einheiten für Gleitkomma-Arithmetik, die sogenannte floating-point processing unit (FPU)hatten, verschwand diese zunächst wieder aus den üblichen Computern und war nur inspeziellen Rechnern vorhanden. In Form von Coprozessoren konnte eine FPU nachgerüs-tet werden (z.B. der Intel 8087 zum Intel 8086). Der “486er” war der erste Prozessor fürHeimcomputer mit integrierter FPU. Heute können Gleitkommaberechnungen effizient aufGrafikkarten ausgelagert werden. Die Prozessoren der Grafikkarten, die graphics processingunit (GPU) ist speziell für solche Berechnungen ausgelegt (z.B. schnelle Berechnungenvon Lichtbrechungen und Spiegelungen, Abbilden von Mustern auf 3D-Oberflächen). Spe-zielle Steckkarten (z.B. NVIDIA Tesla), welche gleich mehrere GPU’s enthalten werden inHöchstleistungssystemen eingesetzt. Die Genauigkeit der Darstellung ist im Wesentlichenvon den in der Mantisse zu Verfügung stehenden Stellen bestimmt. Größte und kleins-te darstellbare Zahlen sind durch die Stellen im Exponenten bestimmt. In numerischenVerfahren ist die Verwendung von doppelt-genauer Zahlendarstellung (double) üblich. DieRecheneinheiten moderner Computer nutzen intern eine erhöhte Genauigkeit zum Durch-führen von elementaren Operationen. (80 Bit bei modernen Intel-CPU’s). Gerundet wirderst nach Berechnung des Ergebnis.

Beispiel 1.13 (Gleitkommadarstellung). Wir gehen von vierstelliger Mantisse und vierStellen im Exponent aus mit Bias 24−1 − 1 = 7.

• Die Zahl x = −96 hat zunächst negatives Vorzeichen, also S = 1. Die Binärdarstel-lung von 96 ist

9610 = 1 · 64 + 1 · 32 + 0 · 16 + 0 · 8 + 0 · 4 + 0 · 2 + 0 · 1 = 11000002,

normalisiert

6410 = 1.10002 · 2610 = 1.12 · 21310−710 = 1.12 · 211012−b.

Als Gleitkommadarstellung ergibt sich 1110110002.

10

Page 19: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

1.2. Zahldarstellung

• Die Zahl x = −384 hat wieder negatives Vorzeichen und S = 1. Die Binärdarstellungvon 384 ist:

38410 = 1 ·256 + 1 ·128 + 0 ·64 + 0 ·32 + 0 ·16 + 0 ·8 + 0 ·4 + 0 ·2 + 0 ·1 = 1100000002,

also normalisiert

38410 = 1.1000 · 2810 = 1.1000 · 21510−710 = 1.10002 · 211112−b.

Alle Bits im Exponenten sind 1. Der spezielle Wert e = 11112 ist jedoch zur Speiche-rung von NaN (Not a Number) vorgesehen. Die Zahl 384 ist zu groß um in diesemZahlenformat gespeichert zu werden. Stattdessen wird −∞ oder Binär 1111100002gespeichert.

• Die Zahl x = 1/3 = 0.33333 . . . ist positiv, also S = 0. Die Binärdarstellung von1/3 ist

13 = 0.01010101 . . .2 .

Normalisiert, mit vierstelliger Mantisse erhalten wir

13 ≈ 1.01012 · 2−2 = 1.01012 · 2510−710 = 1.01012 · 201012−b,

also die Binärdarstellung 0010101012. Wir mussten bei der Darstellung runden underhalten rückwärts

1.01012 · 201012−7 = 1.3125 · 2−2 = 0.328125,

mit dem relativen Fehler: ∣∣∣∣∣ 13 − 1.01012 · 201012−b

13

∣∣∣∣∣ ≈ 0.016

• Die Zahl x =√

2 ≈ 1.4142135623 . . . ist positiv, also S = 0. Gerundet gilt:√

2 ≈ 1.01112

Diese Zahl liegt bereits normalisiert vor. Mit Bias b = 7 gilt für den Exponentene = 0 = 7− 7 √

2 ≈ 1.01112 · 201112−b,

also 001110111. Rückwärts in Dezimaldarstellung erhalten wir

1.01112 · 201112−b = 1.4375,

mit dem relativen Darstellungsfehler∣∣∣∣∣√

2− 1.4375√2

∣∣∣∣∣ ≈ 0.016.

11

Page 20: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

1. Einleitung

• Schließlich betrachten wir die Zahl x = −0.003. Mit S = 1 gilt:

0.00310 ≈ 0.000000001100012

und normalisiert

0.00310 ≈ 1.10012 · 2−9 = 1.10012 · 2−2−7.

Der Exponent −9 = −2−b ist zu klein und kann in diesem Format (also vier Stellenfür den Exponenten) nicht dargestellt werden. Die Zahl kann hingegen denormalisiertdargestellt werden als:

0.00310 ≈ ·0.00112 · 21−7.

Binär ergibt dies 1000000112. Umrechnen in Dezimaldarstellung liefert:

0.00112 · 21−7 = 0.1875 · 2−6 ≈ 0.0029,

mit dem relativen Darstellungsfehler∣∣∣∣0.003− 0.00290.003

∣∣∣∣ ≈ 0.033.

Aus der begrenzten Anzahl von Ziffern ergibt sich zwangläufig ein Fehler bei der Durchfüh-rung von numerischen Algorithmen. Der relative Fehler, der bei der Computer-Darstellungx einer Zahl x ∈ R entstehen kann ∣∣∣∣rd(x)− x

x

∣∣∣∣ist durch die sogenannte Maschinengenauigkeit beschränkt:

Definition 1.14 (Maschinengenauigkeit). Die Maschinengenauigkeit eps ist der maxima-le relative Rundungsfehler der Zahldarstellung und wird bestimmt als:

eps := inf{x > 0 : rd(1 + x) > 1}.

Sind im Zahlenformat denormalisierte Zahlen vorgesehen, so verschlechtert sich die Ge-nauigkeit für x→ 0.

Da Rundungsfehler zwangsläufig auftreten, gelten grundlegende mathematische Gesetzewie das Assoziativgesetz oder das Distributivgesetz in Computern nicht mehr. Aufgrundvon Rundungsfehlern spielt die Reihenfolge, in denen Operationen ausgeführt werden einewichtige Rolle und verändert das Ergebnis. Auch ein einfacher Vergleich von Zahlen ist oftnicht möglich, die Abfrage if (3.8/10.0==0.38) kann durch Rundung das falsche Ergebnisliefern und muss durch Abfragen der Art if ( |3.8/10.0 − 0.38| < eps) ersetzt werden.

12

Page 21: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

1.2. Zahldarstellung

Bemerkung 1.15. Die Maschinengenauigkeit hat nichts mit der kleinsten Zahl zu tun,welche auf einem Computer darstellbar ist. Diese ist wesentlich durch die Anzahl der Stel-len im Exponenten bestimmt. Die Maschinengenauigkeit wird durch die Anzahl der Stellenin der Mantisse bestimmt. Bei der üblichen Gleitkommadarstellung mit doppelter Genau-igkeit (double in c++) gilt eps ≈ 10−16, bei einfacher Genauigkeit, z.B. auf Grafikkartengilt eps ≈ 10−8.

Rundungsfehler treten bei jeder elementaren Operation auf. Daher kommt der Konditio-nierung der Grundoperationen, aus denen alle Algorithmen aufgebaut sind, eine entschei-dende Bedeutung zu:

Beispiel 1.16 (Konditionierung von Grundoperationen, Auslöschung).

1. Addition, Subtraktion: A(x, y) = x+ y:

κA,x =∣∣∣∣ x

x+ y

∣∣∣∣ =∣∣∣∣∣ 11 + y

x

∣∣∣∣∣Im Fall x ≈ −y kann die Konditionszahl der Addition (x ≈ y bei der Subtraktion)beliebig groß werden. Ein Beispiel mit vierstelliger Rechnung:

x = 1.021, y = −1.019 ⇒ x+ y = 0.002.

Jetzt sei y = 1.020 gestört. Der relative Fehler in y ist sehr klein: |1.019−1.020|/|1.019| ≤0.1%. Wir erhalten das gestörte Ergebnis

x+ y = 0.001,

und einen Fehler von 100%. Die enorme Fehlerverstärkung bei der Addition vonZahlen mit etwa gleichem Betrag wird Auslöschung genannt. Hier gehen wesentlicheStellen verloren. Auslöschung tritt üblicherweise dann auf, wenn das Ergebnis einernumerischen Operation verglichen mit den Eingabewerten einen sehr kleinen Betraghat. Kleine relative Fehler in der Eingabe verstärken sich zu großen relativen Fehlernim Ergebnis.

2. Multiplikation: A(x, y) = x · y. Die Multiplikation zweier Zahlen ist stets gut kondi-tioniert:

κA,x =∣∣∣∣y xxy

∣∣∣∣ = 1.

3. Division: A(x, y) = x/y. Das selbe gilt für die Division:

κA,x =∣∣∣∣∣1y xxy

∣∣∣∣∣ = 1, κA,y =∣∣∣∣∣ xy2

yxy

∣∣∣∣∣ = 1.

4. Wurzelziehen: A(x) =√x:

κA,x =∣∣∣∣ 12√x

x√x

∣∣∣∣ = 12 .

Ein Fehler in der Eingabe wird im Ergebnis sogar reduziert.

13

Page 22: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

1. Einleitung

Die meisten numerischen Algorithmen bestehen im Kern aus der wiederholten Ausführungdieser Grundoperationen. Der Aufwand von Algorithmen wird in der Anzahl der notwen-digen elementaren Operationen (in Abhängigkeit von der Problemgröße) gemessen. DieLaufzeit eines Algorithmus hängt wesentlich von der Leistungsfähigkeit des Rechners ab.Diese wird in FLOPS, also floating point operations per second gemessen. In Tabelle 1.4fassen wir die erreichbaren FLOPS für verschiedene Computer-Systeme zusammen. DieLeistung ist im Laufe der Jahre rapide gestiegen, alle zehn Jahre wird etwa der Faktor1000 erreicht. Die Leistungssteigerung beruht zum einen auf effizienterer Hardware. ErsteComputer hatten Register mit 8 Bit Breite, die in jedem Takt (das ist die MHz Anga-be) verarbeitet werden konnten. Auf aktueller Hardware stehen Register mit 64 Bit zurVerfügung. Hinzu kommt eine effizientere Abarbeitung von Befehlen durch sogenanntesPipelining: die übliche Abfolge im Prozessor beinhaltet “Speicher lesen, Daten bearbei-ten, Ergebnis speichern”. Das Pipelining erlaubt es dem Prozessor schon den Speicher fürdie nächste Operation auszulesen, während die aktuelle bearbeitet wird. So konnte dieAnzahl der notwendigen Prozessortakte pro Rechenoperation erheblich reduziert werden.Die Kombination aus Intel 8086 mit FPU 8087 hat bei einem Takt von 8 Mhz und 50 000Flops etwa 150 Takte pro Fließkommaoperation benötigt. Der 486er braucht bei 66 Mhzund etwa 1 000 000 Flops nur 50 Takte pro Operation. Der Pentium III liegt bei etwa 5Takten pro Fließkommaoperation. In den letzten Jahren beruht die Effizienzsteigerungwesentlich auf einem sehr hohen Grad an Parallelisierung. Ein aktueller Core I7 Prozessorkann mehrere Operationen gleichzeitig durchführen. Eine Nvidia 580 GPU erreicht ihreLeistung mit über 500 Rechenkernen. Um diese Leistung effizient nutzen zu können müssendie Algorithmen entsprechend angepasst werden, so dass auch alle 500 Kerne ausgelastetwerden. Kann ein Algorithmus diese spezielle Architektur nicht ausnutzen, so fällt dieLeistung auf etwa ein Gigaflop zurück, also auf das Niveau des Pentium III aus dem Jahr2001. Werden die 500 Kerne hingegen optimal ausgenutzt, so erreicht eine Grafikkarte diegleiche Leistung wie der Heidelberger Linux-Cluster helics aus dem Jahr 2002. ModerneSuper-Computer wie der K Computer (schnellster Computer der Welt in 2012) vernetzenüber 500 000 Kerne.

1.3. Rundungsfehleranalyse und Stabilität von numerischenAlgorithmen

Beim Entwurf von numerischen Algorithmen für eine Aufgabe sind oft unterschiedlicheWege möglich, welche sich z.B. in der Reihenfolge der Verfahrensschritte unterscheiden.Unterschiedliche Algorithmen zu ein und derselben Aufgabe können dabei rundungsfeh-lerbedingt zu unterschiedlichen Ergebnissen führen:

Beispiel 1.17 (Distributivgesetz). Wir betrachten die Aufgabe A(x, y, z) = x · z − y · z =(x− y)z und zur Berechnung zwei Vorschriften:

a1 := x · z a1 := x− y,a2 := y · z a := a1 · z,a := a1 − a2.

14

Page 23: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

1.3. Rundungsfehleranalyse und Stabilität von numerischen Algorithmen

CPU Jahr Flops Preis EnergieZuse Z3 1941 0.3 Einzelstücke 4 kWIBM 704 1955 5 · 103 >10 000 000 Euro 75 kWIntel 8086 + 8087 1980 50 · 103 2 000 Euro 200 Wi486 1991 1.4 · 106 2 000 Euro 200 WIPhone 4s 2011 100 · 106 500 Euro 10 W2xPentium III 2001 800 · 106 2 000 Euro 200 WCore i7 2011 100 · 109 1 000 Euro 200 WHelics I (Parallelrechner am IWR) 2002 1 · 1012 1 000 000 Euro 40 kWNvidia GTX 580 (GPU) 2010 1 · 1012 500 Euro 250 WK Computer 2011 10 · 1015 > 500 000 000 Euro 12 000 kWTianhe-2 2013 33 · 1015 250 000 000 Euro 18 000 kW

Tabelle 1.4.: Gleitkomma-Geschwindigkeit sowie Anschaffungskosten einiger aktueller undhistorischer Computer.

Es sei x = 0.519, y = 0.521, z = 0.941. Bei vierstelliger Arithmetik erhalten wir:

a1 := rd(x · z) = 0.4884 b1 := rd(x− y) = −0.002a2 := rd(y · z) = 0.4903 b2 := rd(a1 · z) = −0.001882a3 := rd(a1 − a2) = −0.0019

Mit A(x, y, z) = −0.001882 ergeben sich die relativen Fehler:∣∣∣∣−0.0001882− a30.0001882

∣∣∣∣ ≈ 0.01,∣∣∣∣−0.0001882− b2

0.0001882

∣∣∣∣ = 0.

Das Distributivgesetz gilt auf dem Computer nicht!

Die Stabilität hängt also entscheidend vom Design des Algorithmus ab. Eingabefehler,oder auch Rundungsfehler, die in einzelnen Schritten entstehen, werden in darauffolgendenSchritten des Algorithmus verstärkt. Wir analysieren nun beide Verfahren im Detail undgehen davon aus, dass in jedem der elementaren Schritte (wir haben hier nur Additionund Multiplikation) ein relativer Rundungsfehler ε mit |ε| ≤ eps entsteht, also

rd(x+ y) = (x+ y)(1 + ε), rd(x · y) = (x · y)(1 + ε),

Zur Analyse eines gegebenen Algorithmus verfolgen wir die in Rundungsfehler, welche injedem Schritt entstehen und deren Akkumulation:

Beispiel 1.18 (Stabilität des Distributivgesetzes). Wir berechnen zunächst die Konditi-onszahlen der Aufgabe:

κA,x =∣∣∣∣∣ 11− y

x

∣∣∣∣∣ , κA,y =∣∣∣∣∣ 11− x

y

∣∣∣∣∣ , κA,z = 1.

15

Page 24: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

1. Einleitung

Für x ≈ y ist die Aufgabe schlecht konditioniert. Wir starten mit Algorithmus 1 undschätzen in jedem Schritt den Rundungsfehler ab. Zusätzlich betrachten wir Eingabefeh-ler (oder Darstellungsfehler) von x, y und z. Wir berücksichtigen stets nur Fehlertermeerster Ordnung und fassen alle weiteren Terme mit den Landau-Symbolen (für kleine ε)zusammen:

a1 =x(1 + εx)z(1 + εz)(1 + ε1) = xz(1 + εx + εz + ε1 +O(eps2))= xz(1 + 3ε1 +O(eps2)),

a2 =y(1 + εy)z(1 + εz)(1 + ε2) = yz(1 + εy + εz + ε2 +O(eps2))= yz(1 + 3ε2 +O(eps2)),

a3 =(xz(1 + 3ε1)− yz(1 + 3ε2) +O(eps2))(1 + ε3)= (xz − yz)(1 + ε3) + 3xzε1 − 3yzε2 +O(eps2)

Wir bestimmen den relativen Fehler:∣∣∣∣a3 − (xz − yz)xz − yz

∣∣∣∣ = |(xz − yz)ε3 + 3xzε1 − 3yzε2||xz − yz|

≤ eps+ 3 |x|+ |y||x− y|

eps.

Die Fehlerverstärkung dieses Algorithmus kann für x ≈ y groß werden und entspricht etwa(Faktor 3) der Konditionierung der Aufgabe. Wir nennen den Algorithmus daher stabil.

Wir betrachten nun Algorithmus 2:

a1 =(x(1 + εx)− y(1 + εy))(1 + ε1)= (x− y)(1 + ε1) + xεx − yεy +O(eps2)

a2 =z(1 + εz)((x− y)(1 + ε1) + xεx − yεy +O(eps2)

)(1 + ε2)

= z(x− y)(1 + ε1 + ε2 + εz +O(eps)2) + zxεx − zyεy +O(eps2).

Für den relativen Fehler gilt in erster Ordnung:∣∣∣∣a2 − (xz − yz)xz − yz

∣∣∣∣ = |z(x− y)(ε1 + ε2 + εz) + zxεx − zyεy||xz − yz|

≤ 3eps+ |x|+ |y||x− y|

eps

Die Fehlerverstärkung kann für x ≈ y wieder groß werden. Der Verstärkungsfaktor istjedoch geringer als bei Algorithmus 1. Insbesondere fällt auf, dass dieser zweite Algorithmusbei fehlerfreien Eingabedaten keine Fehlerverstärkung aufweist. (Das ist der Fall εx = εy =εz = 0).

Beide Algorithmen sind stabil, der zweite hat bessere Stabilitätseigenschaften als der erste.

Wir nennen zwei Algorithmen stabil, obwohl der eine wesentlich bessere Stabilitätseigen-schaften hat. Der Stabilitätsbegriff dient daher oft zum relativen Vergleich verschiedenerAlgorithmen. Wir definieren

Definition 1.19 (Stabilität). Ein numerischer Algorithmus zum Lösen einer Aufgabeheißt stabil, falls die bei der Durchführung akkumulierten Rundungsfehler den durch dieKondition der Aufgabe gegebenen unvermeidlichen Fehler nicht übersteigen.

16

Page 25: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

1.3. Rundungsfehleranalyse und Stabilität von numerischen Algorithmen

Wir halten fest: für ein schlecht konditioniertes Problem existiert kein stabiler Algorithmusmit einer geringeren Fehlerfortpflanzung als durch die Konditionierung bestimmt. Für gutkonditionierte Probleme können jedoch beliebig instabile Verfahren existieren.

Der wesentliche Unterschied zwischen beiden Algorithmen aus dem Beispiel ist die Rei-henfolge der Operationen. In Algorithmus 1 ist der letzte Schritt eine Subtraktion, derenschlechte Kondition wir unter dem Begriff Auslöschung kennengelernt haben. Bereits ak-kumulierte Rundungsfehler zu Beginn des Verfahrens werden hier noch einmal wesentlichverstärkt. Bei Algorithmus 2 werden durch die abschließende Multiplikation die Rundungs-fehler, die zu Beginn auftreten, nicht weiter verstärkt. Aus dem analysierten Beispiel leitenwir einer Regel her:

“Bei dem Entwurf von numerischen Algorithmen sollen schlecht konditionierteOperationen zu Beginn durchgeführt werden.”

17

Page 26: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische
Page 27: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

Teil I.

Numerische Methoden der LinearenAlgebra

19

Page 28: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische
Page 29: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

2. Grundlagen der Linearen Algebra

In der linearen Algebra wird die Struktur von linearen Abbildungen T : V →W zwischenendlich-dimensionalen Vektorräumen V und W untersucht. In der numerischen linearenAlgebra befassen wir uns mit einigen praktischen Fragestellungen der linearen Algebra.Schwerpunkt der Anwendung ist das Lösen von linearen Gleichungssystemen, also dasAuffinden von x ∈ V , so dass für ein b ∈ W gilt T (x) = b. Weiter werden wir Verfahrenzur Berechnung von Eigenwerten linearer Abbildungen (welche sich als Matrizen darstellenlassen) sowie zur Orthogonalisierung von Vektoren kennenlernen. Die meisten Problemeder linearen Algebra treten als Teilprobleme anderer Verfahren auf. Große lineare Glei-chungssysteme müssen zur Diskretisierung von Differentialgleichungen, aber z.B. auch beider Approximation von Funktionen gelöst werden. Effiziente numerische Quadraturregelnbenötigen zur Konstruktion die Nullstellen orthogonaler Polynome. Orthogonalisierungs-verfahren spielen aber auch eine Rolle bei der Lösung von großen Gleichungssystemen.

Wir sammeln zunächst einige Definitionen und grundlegende Resultate. Es sei V stets einVektorraum über dem KörperK. Üblicherweise betrachten wir den Raum der reellwertigenVektoren V = Rn.

Definition 2.1 (Basis). Eine Teilmenge B = {v1, . . . , vn} ⊂ V eines Vektorraums überK heißt Basis, falls sich jedes Element v ∈ V eindeutig als Linearkombination der Basis-vektoren B darstellen lässt:

v =n∑i=1

αivi, αi ∈ K.

Die eindeutige Darstellbarkeit jedes v ∈ V durch Basisvektoren erlaubt es, den VektorraumV mit dem Vektorraum der Koeffizientenvektoren α ∈ Kn zu identifizieren. Daher könnenwir uns in diesem Abschnitt im wesentlichen auf diesen Raum (bzw. auf Rn) beschränken.Alle Eigenschaften und Resultate übertragen sich auf V . Zum Beispiel ist ein Polynomeindeutig sowohl in Monom-, Newton- oder Lagrangebasis darstellbar und dann durchentsprechende Koeffizienten bestimmt.

Definition 2.2 (Norm). Eine Abbildung ‖·‖ : V → R+ heißt Norm, falls sie die folgendendrei Eigenschaften besitzt:

1. positive Definitheit: ‖x‖ ≥ 0 ∀x ∈ V, ‖x‖ = 0 ⇒ x = 0,2. Linearität: ‖αx‖ = |α| ‖x‖ ∀x ∈ V, α ∈ K,3. Dreiecksungleichung: ‖x+ y‖ ≤ ‖x‖+ ‖y‖, ∀x, y ∈ V.

21

Page 30: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

2. Grundlagen der Linearen Algebra

Ein Vektorraum mit einer Norm heißt normierter Raum. Im Kn häufig verwendete Normensind die Maximumsnorm ‖ · ‖∞, die euklidische Norm ‖ · ‖2 sowie die l1-Norm ‖ · ‖1:

‖x‖∞ := maxi=1,...,n

|xi|, ‖x‖2 :=(

n∑i=1|xi|2

) 12

, ‖x‖1 :=n∑i=1|xi|.

Im Vektorraum Rn sowie in allen endlich-dimensionalen Vektorräumen gilt der folgendewichtige Satz:

Satz 2.3 (Normäquivalenz). Zu zwei beliebigen Normen ‖ · ‖ sowie ‖ · ‖′ im endlich-dimensionalen Vektorraum V existiert eine Konstante c > 0 so dass gilt:

1c‖x‖ ≤ ‖x‖′ ≤ c‖x‖ ∀x ∈ V.

Dieser Satz bedeutet, dass alle Normen in endlich-dimensionalen Vektorräumen äquivalentsind. Da Normen wesentlich für den Konvergenzbegriff sind, bedeutet dieses Resultat, dasseine Folge xn → x, welche bzgl. einer Norm ‖ · ‖ konvergiert auch bzgl. jeder anderenNorm ‖ ·‖′ konvergiert. Dieser Zusammenhang ist typisch für endlich-dimensionale Räumeund gilt z.B. nicht in Funktionenräumen. So gilt z.B. für die Funktionenfolge fn(x) =exp(−nx2) :

‖fn − 0‖L2([−1,1])n→∞−−−→ 0, jedoch ‖fn − 0‖∞ 6

n→∞−−−→ 0,bezüglich der L2-Norm sowie der Maximumsnorm:

‖f‖L2([−1,1]) :=(∫ 1

−1|f(x)|2 dx

) 12, ‖f‖∞ := sup

x∈[−1,1]|f(x)|.

Neben Normen spielen Räume, in denen ein Skalarprodukt existiert eine wichtige Rolle:

Definition 2.4 (Skalarprodukt). Eine Abbildung (·, ·) : V × V → K heißt Skalarprodukt,falls sie die folgenden Eigenschaften besitzt:

1. Definitheit: (x, x) > 0 ∀x ∈ V, x 6= 0,(x, x) = 0 ⇒ x = 0

2. Linearität: (x, αy + z) = α(x, y) + (x, z) ∀x, y, z ∈ V, α ∈ K,3. Hermitesch: (x, y) = (y, x) ∀x, y ∈ V,

dabei ist z die komplexe Konjugation von z ∈ C.

In reellen Räumen gilt die echte Symmetrie (x, y) = (y, x). Weiter folgt aus 2. und 3.

(αx, y) = α(x, y).

Das bekannteste Skalarprodukt ist das euklidische Skalarprodukt für Vektoren x, y ∈ Rn:

(x, y)2 = xT y =n∑i=1

xiyi.

22

Page 31: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

Vektorräume mit Skalarprodukt werden Prähilberträume genannt. Komplexe Vektorräu-men mit Skalarprodukt nennt man auch unitäre Räume, im Reellen spricht man voneuklidischen Räumen.

Skalarprodukte sind eng mit Normen verwandt:

Satz 2.5 (Induzierte Norm). Es sei V ein Vektorraum mit Skalarprodukt. Dann ist durch

‖x‖ =√

(x, x), x ∈ V,

auf V die induzierte Norm gegeben.

Beweis: Übung! �

Ein Prähilbertraum ist somit immer auch ein normierter Raum Falls der PrähilbertraumV bzgl. dieser Norm vollständig ist, also ein Banachraum ist, so heißt V Hilbertraum.

Die euklidische Norm ist die vom euklidischen Skalarprodukt induzierte Norm:

‖x‖2 = (x, x)122 .

Einige wichtige Sätze gelten für Paare aus Skalarprodukt und induzierter Norm:

Satz 2.6. Es sei V ein Vektorraum mit Skalarprodukt (·, ·) und induzierter Norm ‖ · ‖.Dann gilt die Cauchy-Schwarzsche Ungleichung:

|(x, y)| ≤ ‖x‖ ‖y‖ ∀x, y ∈ V,

sowie die Parallelogrammidentität:

‖x+ y‖2 + ‖x− y‖2 = 2‖x‖2 + 2‖y‖2 ∀x, y ∈ V.

Beweis: Übung. �

Wir definieren weiter

Definition 2.7 (Orthogonalität). Zwei Vektoren x, y ∈ V eines Prähilbertraums heißenorthogonal, falls (x, y) = 0.

Die Einführung einer Normabbildung auf V ermöglicht es, den Abstand ‖x − y‖ zu de-finieren. Die Existenz eines Skalarprodukts ermöglicht es, zwei Elementen einen Winkelzuzuordnen. Es gilt im euklidischen Skalarprodukt

cos(^(x, y)) = (x, y)2‖x‖2‖y‖2

,

und hieraus folgt x ⊥ y falls (x, y)2 = 0. Dieser euklidische Winkelbegriff und Orthogona-litätsbegriff lässt sich auf beliebige Räume mit Skalarprodukt übertragen.

Eine der Aufgaben der numerischen linearen Algebra ist die Orthogonalisierung (oder auchOrthonormalisierung) von gegebenen Systemen von Vektoren:

23

Page 32: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

2. Grundlagen der Linearen Algebra

Definition 2.8 (Orthonormalbasis). Eine Basis B = {v1, . . . , vn} von V heißt Orthogo-nalbasis bezüglich des Skalarproduktes (·, ·), falls gilt:

(φi, φj) = 0 ∀i 6= j,

und Orthonormalbasis falls gilt:(φi, φj) = δij

mit dem Kronecker-Symbol

δij ={

1 i = j

0 i 6= j.

Mit unterschiedlichen Skalarprodukten existieren unterschiedliche Orthonormalbasen zuein und demselben Vektorraum V . Orthogonalität stimmt dann im Allgemeinen nicht mitdem geometrischen Orthogonalitätsbegriff des euklidischen Raums überein:

Beispiel 2.9 (Skalarprodukte und Orthonormalbasis). Es sei V = R2. Durch

(x, y)2 := x1y1 + x2y2, (x, y)ω := 2x1y1 + x2y2,

sind zwei verschiedene Skalarprodukte gegeben. Das erste ist das euklidische Skalarprodukt.Die Skalarprodukteigenschaften des zweiten sind einfach zu überprüfen. Durch

x1 = 1√2

(1, 1)T , x2 = 1√2

(−1, 1)T ,

ist eine Orthonormalbasis bezüglich (·, ·)2 gegeben. Es gilt jedoch:

(x1, x2)ω = 12(2− 1) = 1√

26= 0.

Eine Orthonormalbasis bzgl. (·, ·)ω erhalten wir z.B. durch

x1 = 1√3

(1, 1)T , x2 = 12(−1, 2)T .

Orthonormalbasen werden für zahlreiche numerische Verfahren benötigt, bei der Gauß’schenQuadratur, bei der Gauß-Approximation von Funktionen und z.B. für die QR-Zerlegungeiner Matrix.

Wir betrachten nun den Vektorraum aller Rn×m-Matrizen. Auch dieser Vektorraum istendlich-dimensional und prinzipiell können wir den Vektorraum der n ×m-Matrizen mitdem Vektorraum der (nm)-Vektoren identifizieren. Von besonderem Interesse ist für unsder Vektorraum der quadratischen Rn×n-Matrizen:

24

Page 33: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

Definition 2.10 (Eigenwerte, Eigenvektoren). Die Eigenwerte λ einer Matrix A ∈ Rn×nsind definiert als Nullstellen des charakteristischen Polynoms:

det(A− λI) = 0.

Die Menge aller Eigenwerte einer Matrix A heißt das Spektrum von A

σ(A) := {λ ∈ C, λ Eigenwert von A}.

Der Spektralradius spr : Rn×n → R+ ist der betragsmäßig größte Eigenwert:

spr(A) := max{|λ|, λ ∈ σ(A)}.

Ein Element w ∈ Rn \ {0} heißt Eigenvektor zum Eigenwert λ, falls gilt:

Aw = λw.

Bei der Untersuchung von linearen Gleichungssystemen Ax = b stellt sich zunächst dieFrage, ob ein solches Gleichungssystem überhaupt lösbar ist und ob die Lösung eindeutigist. Wir fassen zusammen:

Satz 2.11 (Reguläre Matrix). Für eine quadratische Matrix A ∈ Rn×n sind die folgendenAussagen äquivalent:

1. Die Matrix A ist regulär.

2. Die transponierte Matrix AT ist regulär.

3. Die Inverse A−1 ist regulär.

4. Das lineare Gleichungssystem Ax = b ist für jedes b ∈ Rn eindeutig lösbar.

5. Es gilt det(A) 6= 0.

6. Alle Eigenwerte von A sind ungleich Null.

Beweis: Übung. �

Wir definieren weiter:

Definition 2.12 (positiv definit). Eine Matrix A ∈ Kn×n heißt positiv definit, falls

(Ax, x) > 0 ∀x 6= 0, x ∈ Kn.

Umgekehrt können wir aus der definierenden Eigenschaft der positiven Definitheit einerMatrix ablesen: Falls A positiv definit ist, so ist durch (A·, ·) ein Skalarprodukt gegeben.Es gilt:

25

Page 34: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

2. Grundlagen der Linearen Algebra

Satz 2.13 (Positiv definite Matrizen). Es sei A ∈ Rn×n eine symmetrische Matrix. Dannist A genau dann positiv definit, falls alle (reellen) Eigenwerte von A positiv sind. Ist Asymmetrisch positiv definit, so sind alle Diagonalelemente von A positiv, d.h. echt größerNull, und das betragsmäßig größte Element steht auf der Diagonalen.

Beweis: (i) Es sei A eine symmetrische Matrix mit einer Orthonormalbasis aus Eigen-vektoren w1, . . . , wn. A sei positiv definit. Dann gilt für einen beliebigen Eigenvektor wimit Eigenwert λi:

0 < (Awi, wi) = λi(wi, wi) = λi.

Umgekehrt seien alle λi positiv. Für x =∑ni=1 αiwi mit x 6= 0 gilt:

(Ax, x) =∑i,j

(λiαiωi, αjωj) =∑i

λiα2i > 0.

(ii) A sei nun eine reelle, positiv definite Matrix. Es sei ei der i-te Einheitsvektor. Danngilt:

0 < (Aei, ei) = aii.

D.h., alle Diagonalelemente sind positiv.

(iii) Entsprechend wählen wir nun x = ei− sign(aij)ej . Wir nehmen an, dass aji = aij dasbetragsmäßig größte Element der Matrix sei. Dann gilt:

0 < (Ax, x) = aii − sign(aij)(aij + aji) + ajj = aii + aij − 2|aij | ≤ 0.

Aus diesem Widerspruch folgt die letzte Aussage des Satzes: Das betragsmäßig größteElement muss ein Diagonalelement sein. �

Für Normen auf dem Raum der Matrizen definieren wir weitere Struktureigenschaften:

Definition 2.14 (Matrixnormen). Eine Norm ‖ · ‖ : Rn×n → R+ heißt Matrizenorm,falls sie submultiplikativ ist:

‖AB‖ ≤ ‖A‖ ‖B‖ ∀A,B ∈ Rn×n.

Sie heißt verträglich mit einer Vektornorm ‖ · ‖ : Rn → R+, falls gilt:

‖Ax‖ ≤ ‖A‖ ‖x‖ ∀A ∈ Rn×n, x ∈ Rn.

Eine Matrixnorm ‖·‖ : Rn×n → R+ heißt von einer Vektornorm ‖·‖ : Rn → R+ induziert,falls gilt:

‖A‖ := supx 6=0

‖Ax‖‖x‖

.

Für eine induzierte Matrixnorm gilt stets

‖A‖ := supx 6=0

‖Ax‖‖x‖

= sup‖x‖=1

‖Ax‖ = sup‖x‖≤1

‖Ax‖.

26

Page 35: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

Es ist leicht nachzuweisen, dass jede von einer Vektornorm induzierte Matrixnorm mitdieser auch verträglich ist. Verträglich mit der euklidischen Norm ist aber auch die Frobe-niusnorm

‖A‖F :=

n∑i,j=1

a2ij

12

,

welche nicht von einer Vektor-Norm induziert ist. Für allgemeine Normen auf dem Vek-torraum der Matrizen gilt nicht notwendigerweise ‖I‖ = 1, wobei I ∈ Rn×n die Ein-heitsmatrix ist. Dieser Zusammenhang gilt aber für jede von einer Vektornorm induzierteMatrixnorm. Wir fassen im folgenden Satz die wesentlichen induzierten Matrixnormenzusammen:

Satz 2.15 (Induzierte Matrixnormen). Sei A ∈ Rn×n. Die aus der euklidischen Vektor-norm, der Maximumsnorm sowie der l1-Norm induzierten Matrixnormen sind die Spek-tralnorm ‖ · ‖2, die maximale Zeilensumme ‖ · ‖∞, sowie die maximale Spaltensumme‖ · ‖1:

‖A‖2 =√

spr(ATA), spr(B) := max{|λ|, λ ist Eigenwert von B},

‖A‖∞ = maxi=1,...,n

m∑j=1|aij |,

‖A‖1 = maxj=1,...,m

n∑i=1|aij |.

Beweis: (i) Es gilt:

‖A‖22 = supx 6=0

‖Ax‖22‖x‖22

= supx 6=0

(Ax,Ax)‖x‖22

= supx 6=0

(ATAx, x)‖x‖22

Die Matrix ATA ist symmetrisch und hat als solche nur reelle Eigenwerte. Sie besitzt eineOrthonormalbasis ωi ∈ Rn von Eigenvektoren mit Eigenwerten λi ≥ 0. Alle Eigenwerte λisind größer gleich Null, denn:

λi = λi(ωi, ωi) = (ATAωi, ωi) = (Aωi, Aωi) = ‖Aωi‖2 ≥ 0. (2.1)

Es sei x ∈ Rn beliebig mit Basisdarstellung x =∑i αiωi. Es gilt dann wegen (ωi, ωj)2 = δij

die Beziehung ‖x‖22 =∑i α

2i mit αi ∈ R:

‖A‖22 = supα6=0

(∑i αiA

TAωi,∑i αiωi)∑

i α2i

= supα 6=0

(∑i αiλiωi,

∑i αiωi)∑

i α2i

= supα 6=0

∑i λiα

2i∑

i α2i

≤ maxiλi.

Es sei nun umgekehrt durch λk der größte Eigenwert gegeben. Dann gilt wegen (2.1) mitαi = δki:

0 ≤ maxiλi = λk =

∑i

λiα2i =

∑i,j

(λiαiωi, αjωj) = (ATAx, x) = ‖Ax‖22. (2.2)

27

Page 36: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

2. Grundlagen der Linearen Algebra

Also gilt maxi λi ≤ ‖A‖22.

(ii) Wir zeigen das Ergebnis exemplarisch für die Maximumsnorm:

‖Ax‖∞ = sup‖x‖∞=1

maxi

m∑j=1

aijxj

.Diese Summe mit ‖x‖∞ = 1 nimmt ihr Maximum an, falls |xj | = 1 und falls das Vorzeichenxj so gewählt wird, dass aijxj ≥ 0 für alle j = 1, . . . ,m. Dann gilt:

‖Ax‖∞ = maxi

m∑j=1|aij |.

Als Nebenresultat erhalten wir aus (2.2), dass jeder Eigenwert betragsmäßig durch dieSpektralnorm der Matrix A beschränkt ist. Es gilt sogar mit beliebiger Matrixnorm undverträglicher Vektornorm für einen Eigenwert λ mit zugehörigem Eigenvektor w ∈ Rn vonA:

|λ| = |λ| ‖w‖‖w‖

= ‖Aw‖‖w‖

≤ ‖A‖ ‖w‖‖w‖

= ‖A‖.

Eine einfache Schranke für den betragsmäßig größten Eigenwert erhält man also durchAnalyse beliebiger (verträglicher) Matrixnormen.

Aus Satz 2.15 folgern wir weiter, dass für symmetrische Matrizen die ‖ · ‖2-Norm mit demSpektralradius der Matrix selbst übereinstimmt, daher der Name Spektralnorm.

28

Page 37: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3. Lineare Gleichungssysteme

Das Lösen von linearen Gleichungssystemen ist eine der wichtigsten numerischen Auf-gaben. Viele Probleme sind nicht unmittelbar als lineares Gleichungssystem formuliert,in vielen Anwendungen treten allerdings ständig (unter Umständen sehr große) lineareGleichungssysteme auf. Groß bedeutet in Anwendungen, dass Gleichungssysteme mit vie-len Millionen Unbekannten gelöst werden müssen. Wir werden uns in diesem Abschnittausschließlich mit reellwertigen Matrizen A ∈ Rn×n befassen. Methoden zum Lösen vonlinearen Gleichungsystemen klassifiziert man als direkte Verfahren, welche die Lösung desGleichungssystems unmittelbar und bis auf Rundungsfehlereinflüsse exakt berechnen unditerative Verfahren, welche die Lösung durch eine Fixpunktiteration approximieren. Hierbefassen wir uns ausschließlich mit direkten Methoden. Iterative Verfahren sind Gegen-stand von Kapitel 8.

Als einführendes Beispiel betrachten wir das einfache Gleichungssystem(0.988 0.9600.992 0.963

)(xy

)=(

0.0840.087

)

mit der Lösung (x, y)T = (3,−3)T . Wir bestimmen die Lösung numerisch durch Gauß-Elimination mit dreistelliger Rechengenauigkeit. Die Gauß-Elimination setzen wir dabeials bekannt voraus: ( )0.988 0.960 0.084

0.992 0.963 0.087 ×0.988/0.992

( )0.988 0.960 0.0840.988 0.959 0.0866 ↓ −

( )0.988 0.959 0.0840 0.001 −0.0026

Mit Hilfe der Gauß-Elimination haben wir die Matrix A auf eine Dreiecksgestalt trans-formiert. Die rechte Seite b wurde entsprechend modifiziert. Das resultierende Dreiecks-system kann nun sehr einfach durch Rückwärtseinsetzen gelöst werden (bei dreistelligerRechnung):

0.001y = −0.0026 ⇒ y = −2.6, 0.988x = 0.087− 0.959 · (−2.6) ≈ 2.58 ⇒ x = 2.61

29

Page 38: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3. Lineare Gleichungssysteme

Wir erhalten also (x, y) = (2.61,−2.60). Der relative Fehler der numerischen Lösung be-trägt somit mehr als 10%. Die numerische Aufgabe, ein Gleichungssystem zu lösen scheintalso entweder generell sehr schlecht konditioniert zu sein (siehe Kapitel 1), oder aber dasEliminationsverfahren zur Lösung eines linearen Gleichungssystems ist numerisch sehr in-stabil und nicht gut geeignet. Der Frage nach der Konditionierung und Stabilität gehenwir im folgenden Abschnitt auf den Grund.

In der praktischen Anwendung treten sehr große Gleichungssysteme Ax = b auf. Beider numerischen Approximation von partiellen Differentialgleichungen müssen MatrizenA ∈ Rn×n der Dimension n > 1 000 000 invertiert werden. (Man nennt das Lösen ei-nes linearen Gleichungssystems oft invertieren, auch wenn die Inverse A−1 nicht wirklichaufgestellt wird). Hinzu kommt, dass ein solches lineares Gleichungssystem oft wieder-holt (viele 1 000 mal) gelöst werden muss (z.B. bei der Diskretisierung von instationärenDifferentialgleichungen, oder bei nichtlinearen Gleichungen). Neben der Stabilität des Lö-sungsprozesses wird auch die numerische Effizienz eine große Rolle spielen. Man versuche,eine 20× 20-Matrix mit dem Gauß’schen Eliminationsverfahren zu invertieren!

3.1. Störungstheorie & Stabilitätsanalyse von linearenGleichungssystemen

Zu einer quadratischen, regulären Matrix A ∈ Rn×n sowie einem Vektor b ∈ Rn betrachtenwir das lineare Gleichungssystem

Ax = b.

Durch numerische Fehler, Rundungsfehler oder bloße Eingabefehler zum Beispiel durchMessungenauigkeiten liegen sowohl A als auch b nur gestört vor:

Ax = b.

Dabei sei A = A+ δA sowie b = b+ δb, mit den Störungen δA sowie δb.

Wir kommen nun zur Kernaussage dieses Abschnitts und wollen die Fehlerverstärkungbeim Lösen von linearen Gleichungssystemen betrachten. Fehler können dabei in der Ma-trix A als auch in der rechten Seite b auftauchen. Wir betrachten zunächst Störungen derrechten Seite:

Satz 3.1 (Störung der rechten Seite). Durch x ∈ Rn sei die Lösung des linearen Glei-chungsystems Ax = b gegeben. Es sei δb eine Störung der rechten Seite b = b + δb und xdie Lösung des gestörten Gleichungssystems Ax = b. Dann gilt:

δx := ‖δx‖‖x‖

≤ cond(A)‖δb‖‖b‖

,

mit der Konditionszahl der Matrix

cond(A) = ‖A‖ · ‖A−1‖.

30

Page 39: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3.1. Störungstheorie & Stabilitätsanalyse von linearen Gleichungssystemen

Beweis: Es sei ‖ · ‖ eine beliebige Matrixnorm mit verträglicher Vektornorm ‖ · ‖. Für dieLösung x ∈ Rn und gestörte Lösung x ∈ Rn gilt:

x− x = A−1(Ax−Ax) = A−1(b− b) = A−1δb.

Also:‖δx‖‖x‖

≤ ‖A−1‖‖δb‖‖x‖

· ‖b‖‖b‖

= ‖A−1‖‖δb‖‖b‖

· ‖Ax‖‖x‖

≤ ‖A‖ · ‖A−1‖︸ ︷︷ ︸=:cond(A)

‖δb‖‖b‖

.

Bemerkung 3.2 (Konditionszahl einer Matrix). Die Konditionszahl einer Matrix spieltdie entscheidende Rolle in der numerischen Linearen Algebra. Betrachten wir etwa dieKonditionierung der Matrix-Vektor Multiplikation y = Ax so erhalten wir bei gestörterEingabe x = x+ δx wieder:

‖δy‖‖y‖

≤ cond(A)‖δx‖‖x‖

Die Konditionszahl einer Matrix hängt von der gewählten Norm ab. Da jedoch alle Ma-trixnormen im Rn×n äquivalent sind, sind auch alle Konditionsbegriffe äquivalent. MitSatz 2.15 folgern wir für symmetrische Matrizen für den Spezialfall cond2(A):

cond2(A) = ‖A‖2 · ‖A−1‖2 = max{|λ|, λ Eigenwert von A}min{|λ|, λ Eigenwert von A} .

Wir betrachten nun den Fall, dass die Matrix A eines linearen Gleichungssystems miteiner Störung δA versehen ist. Es stellt sich zunächst die Frage, ob die gestörte MatrixA = A+ δA überhaupt noch regulär ist.

Hilfsatz 3.3. Es sei durch ‖ · ‖ eine von der Vektornorm induzierte Matrixnorm gegeben.Weiter sei B ∈ Rn×n eine Matrix mit ‖B‖ < 1. Dann ist die Matrix I +B regulär und esgilt die Abschätzung:

‖(I +B)−1‖ ≤ 11− ‖B‖ .

Beweis: Es gilt:‖(I +B)x‖ ≥ ‖x‖ − ‖Bx‖ ≥ (1− ‖B‖)‖x‖

Da 1 − ‖B‖ > 0 ist durch I + B eine injektive Abbildung gegeben. Also ist I + B einereguläre Matrix. Weiter gilt:

1 = ‖I‖ = ‖(I +B)(I +B)−1‖ = ‖(I +B)−1 +B(I +B)−1‖≥ ‖(I +B)−1‖ − ‖B‖ ‖(I +B)−1‖ = ‖(I +B)−1‖(1− ‖B‖) > 0.

Mit diesem Hilfsatz können wir im Folgenden auch auf die Störung der Matrix eingehen:

31

Page 40: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3. Lineare Gleichungssysteme

Satz 3.4 (Störung der Matrix). Es sei x ∈ Rn die Lösung des linearen GleichungssystemsAx = b und A = A + δA einer gestörte Matrix mit ‖δA‖ ≤ ‖A−1‖−1. Für die gestörteLösung x = x+ δx von Ax = b gilt:

‖δx‖‖x‖

≤ cond(A)1− cond(A)‖δA‖/‖A‖

‖δA‖‖A‖

.

Beweis: Wir betrachten den Fall, dass die rechte Seite nicht gestört ist: δb = 0. Dann giltfür die Lösung x sowie die gestörte Lösung x und den Fehler δx := x− x:

(A+ δA)x = b

(A+ δA)x = b+ δAx⇒ δx = −[A+ δA]−1δAx.

Da laut Voraussetzung ‖A−1δA‖ ≤ ‖A−1‖ ‖δA‖ < 1 folgt mit Hilfsatz 3.3:

‖δx‖ ≤ ‖A−1[I +A−1δA]−1δA‖ ‖x‖ ≤ ‖A−1‖1− ‖A−1δA‖

‖δA‖ ‖x‖

≤ cond2(A)1− ‖A−1‖‖δA‖

‖δA‖‖A‖

‖x‖.

Das Ergebnis erhalten wir durch Erweitern mit ‖A‖/‖A‖. �

Diese beiden Störungssätze können einfach kombiniert werden, um gleichzeitig die Störungdurch rechte Seite und Matrix abschätzen zu können:

Satz 3.5 (Störungssatz für lineare Gleichungssysteme). Es sei x ∈ Rn die Lösung deslinearen Gleichungssystems Ax = b mit einer regulären Matrix A ∈ Rn×n. Für die Lösungx ∈ Rn des gestörten Systems Ax = b mit Störungen δb = b− b und δA = A−A gilt unterder Voraussetzung

‖δA‖ < 1‖A−1‖

die Abschätzung:

‖δx‖‖x‖

≤ cond(A)1− cond(A)‖δA‖/‖A‖

(‖δb‖‖b‖

+ ‖δA‖‖A‖

),

mit der Konditionszahlcond(A) = ‖A‖ ‖A−1‖.

Beweis: Wir kombinieren die Aussagen von Satz 3.1 und 3.4. Hierzu sei x die Lösung vonAx = b, x die gestörte Lösung Ax = b und x die Lösung zu gestörter rechter Seite Ax = b.Dann gilt:

‖x− x‖ ≤ ‖x− x‖+ ‖x− x‖ ≤ cond(A)‖δb‖‖b‖‖x‖+ cond(A)

1− cond(A)‖δA‖‖A‖

‖δA‖‖A‖

‖x‖

32

Page 41: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3.2. Das Gauß’sche Eliminationsverfahren und die LR-Zerlegung

Beachte ‖δA‖ < ‖A−1‖−1

0 ≤ cond(A)‖δA‖‖A‖

< ‖A‖ ‖A−1‖ 1‖A‖ ‖A−1‖

≤ 1.

Also giltcond(A) ≤ cond(A)

1− cond(A)‖δA‖‖A‖.

Damit folgt die Aussage. �

Mit diesem Ergebnis kehren wir zum einführenden Beispiel aus Abschnitt 3 zurück:

A =(

0.988 0.9590.992 0.963

)

⇒ A−1 ≈(

8302 −8267−8552 8517

)

In der maximalen Zeilensummennorm ‖ · ‖∞ gilt:

‖A‖∞ = 1.955, ‖A−1‖∞ ≈ 17069, cond∞(A) ≈ 33370.

Das Lösen eines linearen Gleichungssystems mit der Matrix A ist also äußerst schlechtkonditioniert. Hieraus resultiert der enorme Rundungsfehler im Beispiel zu Beginn desKapitels. Wir halten hier fest: Bei großer Konditionszahl ist die Konditionierung des Pro-blems sehr schlecht, d.h. der große Fehler ist immanent mit der Aufgabe verbunden undnicht unbedingt auf ein Stabilitätsproblem des Verfahrens zurückzuführen.

3.2. Das Gauß’sche Eliminationsverfahren und die LR-Zerlegung

Das wichtigste Verfahren zum Lösen eines linearen Gleichungsystems Ax = b mit quadra-tischer Matrix A ∈ Rn×n ist das Gauß’sche Eliminationsverfahren: durch Elimination derEinträge unterhalb der Diagonale wird die Matrix A ∈ Rn×n in den ersten n− 1 Schrittenauf eine obere rechte Dreiecksgestalt gebracht:

∗ ∗ ∗ · · · ∗∗ ∗ ∗ ∗∗ ∗ ∗ ∗... . . . ...∗ ∗ ∗ · · · ∗

→∗ ∗ ∗ · · · ∗0 ∗ ∗ ∗0 ∗ ∗ ∗... . . . ...0 ∗ ∗ · · · ∗

→ · · · →∗ ∗ ∗ · · · ∗0 ∗ ∗ ∗0 0 ∗ ∗... . . . ...0 0 · · · 0 ∗

Mit der rechten oberen Dreiecksmatrix R ∈ Rn×n (R = (rij)ni,j=1 mit rij = 0 für i > j)kann das reduzierte Gleichungssystem

Rx = b,

durch Rückwärtseinsetzen gelöst werden, wobei b aus b durch Anwenden der Eliminati-onsschritte entsteht. Wir betrachten zunächst diese Rückwärtseinsetzen:

33

Page 42: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3. Lineare Gleichungssysteme

Algorithmus 3.6 (Rückwärtseinsetzen). Es sei R ∈ Rn×n eine reguläre rechte obereDreiecksmatrix, d.h. rii 6= 0. Die Lösung x ∈ Rn von Rx = b ist gegeben durch:

1. Setze xn = r−1nnbn.

2. Für i = n− 1, . . . , 1

xi = r−1ii

bi − n∑j=i+1

rijxj

.Es gilt:

Satz 3.7 (Rückwärtseinsetzen). Es sei R ∈ Rn×n eine rechte obere Dreiecksmatrix mitrii 6= 0. Dann ist die Matrix R regulär und das Rückwärtseinsetzen erfordert

NR(n) = n2

2 +O(n)

arithmetische Operationen.

Beweis: Es gilt det(R) =∏rii 6= 0. Also ist die Matrix R regulär.

Jeder Schritt des Rückwärtseinsetzens besteht aus Additionen, Multiplikationen und Di-vision durch die Diagonalelemente. Bei rii 6= 0 ist jeder Schritt durchführbar.

Zur Berechnung von xi sind n − i Multiplikationen und Additionen notwendig. Hinzukommt eine Division pro Schritt. Dies ergibt:

n+n−1∑i=1

(n− i) = n+ (n− 1)n− (n− 1)n2 = n2

2 + n

2 .

Die Transformation von A auf Dreiecksgestalt geschieht durch zeilenweise Elimination:

a11 a12 a13 . . . a1na21 a22 a23 . . . a2n

a31 a32 a33. . . a3n

...... . . . . . . ...

an1 an2 an3 . . . ann

a11 a12 a13 . . . a1n

0 a(1)22 a

(1)23 . . . a

(1)2n

0 a(1)32 a

(3)33

. . . a(1)3n

...... . . . . . . ...

0 a(1)n2 a

(1)n3 . . . a

(1)nn

a11 a12 a13 . . . a1n

0 a(1)22 a

(1)23 . . . a

(1)2n

0 0 a(2)33

. . . a(2)3n

...... . . . . . . ...

0 0 a(2)n3 . . . a

(2)nn

→ · · · → A(n−1) =: R.

34

Page 43: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3.2. Das Gauß’sche Eliminationsverfahren und die LR-Zerlegung

Beginnend mit A(0) := A werden sukzessive Matrizen A(i) erzeugt, mit A(n−1) =: R.Dabei wird in Schritt i des Verfahrens die i-te Spalte von A(i−1) unterhalb der Diagonaleneliminiert. Dies geschieht durch Subtraktion des g(i)

k -fachen der i-ten Zeile von der k-ten.Hierbei gilt für k = i+ 1, . . . , n

g(i)k := a

(i−1)ki

a(i−1)ii

,

und die neue Zeile berechnet sich zu

a(i)kj = a

(i−1)kj − g(i)

k a(i−1)ij , k = i+ 1, . . . , n, j = i, . . . , n.

Damit diese Vorschrift durchgeführt werden kann muss stets a(i−1)ii 6= 0 gelten. Dies folgt

nicht zwingend aus der Regularität von A und aller A(i). Wir gehen zunächst davon aus,dass a(i−1)

ii 6= 0 erfüllt ist und kommen später auf den allgemeinen Fall zurück. Im i-tenEliminationschritt bleiben die ersten i−1 Zeilen und Spalten unverändert. Der i-te Elimi-nationsschritt lässt sich kompakt in Form einer Matrix-Matrix Multiplikation schreiben

A(i) = F (i)A(i−1),

mit der Eliminationsmatrix (alle nicht spezifizierten Einträge sind Null):

F (i) :=

1. . .

1

−g(i)i+1

. . .... . . .−g(i)

n 1

, g

(i)k := a

(i−1)ki

a(i−1)ii

.

Mehrfache Anwendung von Eliminationsmatrizen führt zu der Darstellung:

R = A(n−1) = F (n−1)A(n−2) = F (n−1)F (n−2)A(n−3) = F (n−1) · · ·F (1)︸ ︷︷ ︸=:F

A(0) = FA. (3.1)

Matrizen mit der Gestalt der Eliminationsmatrizen F (i) heißen Frobeniusmatrizen. Es giltder folgende Satz:

35

Page 44: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3. Lineare Gleichungssysteme

Satz 3.8 (Frobeniusmatrix). Jede Frobeniusmatrix F (i) ∈ Rn×n ist regulär und es gilt:

F (i) :=

1. . .

1

−gi+1. . .

... . . .−gn 1

⇒ [F (i)]−1 :=

1. . .

1

gi+1. . .

... . . .gn 1

.

Für zwei Frobeniusmatrizen F (i1) und F (i2) mit i1 < i2 gilt:

F (i1)F (i2) = F (i1) + F (i2) − I =

1. . .

1−g(i1)

i1+1 1... . . .... 1... −g(i2)

i2+1. . .

...... . . .

−g(i1)n −g(i2)

n 1

Beweis: Nachrechnen! �

Bei der Multiplikation von Frobeniusmatrizen ist darauf zu achten, dass diese nicht kom-mutativ ist. Es gilt:

F (i2)F (i1) 6= F (i1) + F (i2) − I für i1 < i2!

Aus dem Multiplikationsverhalten von Frobeniusmatrizen können wir für i1 < i2 < i3 eineeinfache Verallgemeinerung ableiten:

F (i1)F (i2)F (i3) = F (i1)(F (i2) + F (i3) − I) = F (i1)F (i2) + F (i1)F (i3) − F (i1)

= F (i1) + F (i2) − I + F (i1) + F (i3) − I − F (i1)

= F (i1) + F (i2) + F (i3) − 2I.

Wir setzen nun (3.1) fort und mit F−(i) := [F (i)]−1 gilt bei Verwendung von Satz 3.8zunächst, dass F als Produkt von regulären Matrizen selbst regulär ist. Also folgt:

A = F−1R = [F (n−1) · · ·F (1)]−1R = F−(1) · · ·F−(n−1)︸ ︷︷ ︸=:L

R.

36

Page 45: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3.2. Das Gauß’sche Eliminationsverfahren und die LR-Zerlegung

Die Matrix L ist nach der Verallgemeinerung von Satz 3.8 eine untere Dreiecksmatrix mitDiagonaleinträgen 1:

L =

1g

(1)2 1g

(1)3 g

(2)3 1

g(1)4 g

(2)4 g

(3)4 1

...... . . . . . . . . .

g(1)n g

(2)n · · · · · · g

(n−1)n 1.

Wir fassen zusammen:

Satz 3.9 (LR-Zerlegung). Es sei A ∈ Rn×n eine quadratische, reguläre Matrix. Angenom-men alle bei der Elimination auftretenden Diagonalelemente a(i−1)

ii seien ungleich Null.Dann existiert die eindeutig bestimmte LR-Zerlegung in eine rechte obere reguläre Drei-ecksmatrix R ∈ Rn×n sowie in eine linke untere reguläre Dreiecksmatrix L ∈ Rn×n mitDiagonaleinträgen 1. Die Aufwand zur Durchführung der LR-Zerlegung beträgt

13n

3 +O(n2)

arithmetische Operationen.

Beweis: (i) Eindeutigkeit. Angenommen, es existieren zwei LR-Zerlegungen

A = L1R1 = L2R2 ↔ L−12 L1 = R2R

−11 .

Das Produkt von Dreiecksmatrizen ist wieder eine Dreiecksmatrix, also müssen beide Pro-dukte Diagonalmatrizen sein. Das Produkt L−1

2 L1 hat nur Einsen auf der Diagonale, alsofolgt

L−12 L1 = R2R

−11 = I,

und somit L1 = L2 und R1 = R2.

(ii) Durchführbarkeit. Jeder Schritt der Elimination ist durchführbar, solange nicht durcha

(i−1)ii = 0 geteilt werden muss. Die Matrix F ist per Konstruktion regulär und somit

existiert auch die Matrix L.

(iii) Aufwand. Im i-ten Eliminationsschritt

A(i) = F (i)A(i−1)

sind zunächst n− i arithmetische Operationen zur Berechnung der g(i)j für j = i+ 1, . . . , n

notwendig. Die Matrix-Matrix Multiplikation betrifft nur alle Elemente akl mit k > i sowiel > i. Es gilt:

a(i)kl = a

(i−1)kl − g(i)

k a(i)ik , k, l = i+ 1, . . . , n.

37

Page 46: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3. Lineare Gleichungssysteme

Hierfür sind (n − i)2 arithmetische Operationen notwendig. Insgesamt summiert sich derAufwand in den n− 1 Schritten zu:

NLR(n) =n−1∑i=1

{n− i+ (n− i)2} =

n−1∑i=1

{i+ i2

},

und mit den bekannten Summenformeln folgt:

NLR(n) = n3

3 + n

3 .

Die LR-Zerlegung kann nun zum Lösen von linearen Gleichungssystemen verwendet wer-den:

Algorithmus 3.10 (Lösen von linearen Gleichungsystemen mit der LR-Zerlegung). Essei A ∈ Rn×n eine reguläre Matrix, für welche die LR-Zerlegung existiert.

1. Berechne die LR-Zerlegung A = LR in linke untere und rechte obere Dreiecksmatrix.

2. Löse das Gleichungssystem Ax = b durch Vorwärts- und Rückwärtseinsetzen:

(i) Suche y ∈ Rn : Ly = b

(ii) Suche x ∈ Rn : Rx = y.

Die Vorwärtselimination läuft entsprechend des Rückwärtseinsetzens in Algorithmus 3.6und gemäß Satz 3.7 benötigt sie O(n2) Operationen. Das eigentliche Lösen eines linea-ren Gleichungsystems ist also weit weniger aufwendig als das Erstellen der Zerlegung. Invielen Anwendungsproblemen, etwa bei der Diskretisierung von parabolischen Differenti-algleichungen, müssen sehr viele Gleichungssysteme mit unterschiedlichen rechten Seitenaber identischen Matrizen hintereinander gelöst werden. Hier bietet es sich an, die Zerle-gung nur einmal zu erstellen und dann wiederholt anzuwenden.

38

Page 47: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3.2. Das Gauß’sche Eliminationsverfahren und die LR-Zerlegung

Bemerkung 3.11 (Praktische Aspekte). Die Matrix L ist eine linke untere Dreiecks-matrix mit Einsen auf der Diagonale. Die bekannten Diagonalelemente müssen demnachnicht gespeichert werden. Ebenso müssen die Nullelemente der Matrizen A(i) unterhalbder Diagonale nicht gespeichert werden. Es bietet sich an, die Matrizen L und R in dergleichen quadratischen Matrix zu speichern. In Schritt i gilt dann:

A(i) =

a11 a12 a13 · · · · · · · · · a1n

l21 a(1)22 a

(1)23

...

l31 l32 a(2)33

. . . ...... . . . . . . ...... li+1,i a

(i)i+1,i+1 · · · a

(i)i+1,n

...... . . . ...

ln1 ln2 · · · ln,i a(i)n,i+1 . . . a

(i)nn

Dabei sind die fett gedruckten Werte die Einträge von L. Die Werte oberhalb der Linieändern sich im Verlaufe des Verfahrens nicht mehr und bilden bereits die Einträge L sowieR.

Pivotierung Das Element a(i−1)ii wird das Pivot-Element genannt. Bisher musste dieses

Element stets ungleich Null sein. Dies ist jedoch für reguläre Matrizen nicht zwingendnotwendig. Wir betrachten als Beispiel die Matrix

A :=

1 4 22 8 11 2 1

.

Im ersten Schritt zur Erstellung der LR-Zerlegung ist a(0)11 = 1 und es gilt:

A(1) = F (1)A =

1 0 0−2 1 0−1 0 1

1 4 2

2 8 11 2 1

=

1 4 20 0 −30 −2 −1

.

An dieser Stelle bricht der Algorithmus ab, denn es gilt a(1)22 = 0. Wir könnten den Al-

gorithmus jedoch mit der Wahl a(i)32 = −2 als neues Pivot-Element weiterführen. Dies

geschieht systematisch durch Einführen einer Pivotisierung. Im i-ten Schritt des Verfah-rens wird zunächst ein geeignetes Pivot-Element aki in der i-ten Spalte mit k ≥ i gesucht.Die k-te und i-te Zeile werden getauscht und die LR-Zerlegung kann weiter durchgeführtwerden. Das Tauschen von k-ter und i-ter Zeile erfolgt durch Multiplikation mit einer

39

Page 48: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3. Lineare Gleichungssysteme

Pivot-Matrix:

P ki :=

1. . .

10 0 . . . 0 10 1 0... . . . ...0 1 01 0 · · · 0 0

1. . .

1

Es gilt pkijj = 1 für j 6= k und j 6= i sowie pkiki = pkiik = 1, alle anderen Elemente sind Null.Wir fassen einige Eigenschaften von P zusammen:

Satz 3.12 (Pivot-Matrizen). Es sei P = P ki die Pivot-Matrix mit P kijj = 1 für j 6= k, i

und P kiki = P kiik = 1. Die Anwendung P kiA von links tauscht k-te und i-te Zeile von A, dieAnwendung AP ki von rechts tauscht k-te und i-te Spalte. Es gilt:

P 2 = I und somit P−1 = P.

Beweis: Übung. �

In Schritt i der LR-Zerlegung suchen wir nun zunächst das Pivot-Element:

Algorithmus 3.13 (Pivot-Suche). In Schritt i suche Index k ≥ i, so dass

|aki| = maxj≥i|aji|.

Bestimme die Pivot-Matrix als P (i) := P ki.

Im Anschluss bestimmen wir A(i) als

A(i) = F (i)P (i)A(i−1).

Die Pivotisierung sorgt dafür, dass alle Elemente g(i)k = a

(i−1)ki /a

(i−1)ii von F (i) im Betrag

durch 1 beschränkt sind. Insgesamt erhalten wir die Zerlegung:

R = A(n−1) = F (n−1)P (n−1) · · ·F (1)P (1)A. (3.2)

Die Pivot-Matrizen kommutieren nicht mit A oder den F (i). Daher ist ein Übergang zurLR-Zerlegung nicht ohne weiteres möglich. Wir definieren:

F (i) := P (n−1) · · ·P (i+1)F (i)P (i+1) · · ·P (n−1).

40

Page 49: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3.2. Das Gauß’sche Eliminationsverfahren und die LR-Zerlegung

Die Matrix F (i) entsteht durch mehrfache Zeilen- und Spaltenvertauschung von F (i). Dabeiwerden nur Zeilen und Spalten j > i vertauscht. Die Matrix F (i) hat die gleiche Beset-zungsstruktur wie F (i) und insbesondere nur Einsen auf der Diagonale. D.h, sie ist wiedereine Frobeniusmatrix und Satz 3.8 gilt weiter. Es sind lediglich die Einträge in der i-tenSpalte unterhalb der Diagonale permutiert. Für die Inverse gilt entsprechend

L(i) := [F (i)]−1 = P (n−1) · · ·P (i+1)L(i)P (i+1) · · ·P (n−1).

Die gleichzeitige Vertauschung von Zeilen und Spalten lässt die Diagonalelemente unver-ändert. Die Matrix L(i) ist wieder eine Frobeniusmatrix, es werden nur die Elemente derSpalte lij , i > j permutiert. Wir formen (3.2) durch geschicktes Einfügen von Permutati-onsmatrizen um:

R = F (n−1)F (n−2) . . . F (1) P (n−1) . . . P (1)︸ ︷︷ ︸=:P

A

Diesen Prozess mache man sich anhand eines einfachen Beispiels klar:

R = F (3)P (3)F (2)P (2)F (1)P (1)A

= F (3)P (3)F (2) P (3)P (3)︸ ︷︷ ︸=I

P (2)F (1) P (2)P (3)P (3)P (2)︸ ︷︷ ︸=I

P (1)A

= F (3)︸︷︷︸=F (3)

P (3)F (2)P (3)︸ ︷︷ ︸=F (2)

P (3)P (2)F (1)P (2)P (3)︸ ︷︷ ︸=F (1)

P (3)P (2)P (1)︸ ︷︷ ︸=P

A

Mit L(i) = [F (i)]−1 gilt dann:

L(1) · · · L(n−1)︸ ︷︷ ︸=:L

R = PA.

Da L(i) wieder Frobeniusmatrizen sind, gilt weiter mit Satz 3.8:

L = L(1) · · · L(n−1)

=n−1∑i=1

L(i) − (n− 2)I

= P (n−1)(L(n−1) + P (n−1)

(L(n−2) + · · ·+ P (2)F (1)P (2)

). . . P (n−2)

)P (n−1) − (n− 2)I.

Beim Erstellen der LR-Zerlegung müssen also nicht nur die A(i) sondern auch die bisherberechneten L(i) permutiert werden.

Wir fassen zusammen:

Satz 3.14 (LR-Zerlegung mit Pivotisierung). Es sei A ∈ Rn×n eine reguläre Matrix. Esexistiert eine LR-Zerlegung

PA = LR,

wobei P ein Produkt von Pivot-Matrizen ist, L eine untere Dreiecksmatrix mit Diagonal-einträgen eins und R eine rechte obere Dreiecksmatrix. Die LR-Zerlegung ohne Pivotisie-rung P = I ist eindeutig, falls sie existiert.

41

Page 50: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3. Lineare Gleichungssysteme

Beweis: Übung. �

Die Pivotisierung dient einerseits dazu, die Durchführbarkeit der LR-Zerlegung sicher-zustellen. Auf der anderen Seite kann durch geeignete Pivotisierung die Stabilität derGauß-Elimination verbessert werden. Durch Wahl eines Pivot-Elements aki mit maxima-ler relativer Größe (bezogen auf die Zeile) kann die Gefahr der Auslöschung verringertwerden.

Beispiel 3.15 (LR-Zerlegung ohne Pivotierung). Es sei:

A =

2.3 1.8 1.01.4 1.1 −0.70.8 4.3 2.1

, b =

1.2−2.10.6

,und die Lösung des linearen Gleichungssystems Ax = b ist gegeben durch (Angabe mitfünfstelliger Genauigkeit):

x ≈

0.34995−0.98023

2.1595

.Für die Matrix A gilt cond∞(A) = ‖A‖∞ ‖A−1‖∞ ≈ 7.2·1.2 ≈ 8.7. Die Aufgabe ist also gutkonditioniert, ein Verstärkungsfaktor von 7.2 lässt eine Verstärkung des Fehlers um etwaeine Stelle erwarten. Wir erstellen zunächst die LR-Zerlegung (dreistellige Rechnung).Dabei schreiben wir die Einträge von L fettgedruckt in die Ergebnismatrix:

F (1) =

1 0 0−1.4

2.3 1 0−0.8

2.3 0 1

≈ 1 0 0−0.609 1 0−0.348 0 1

, [L(1), A(1)] ≈

2.3 1.8 1.00.609 0.0038 −1.310.348 3.67 1.75

Im zweiten Schritt gilt:

F (2) =

1 0 00 1 00 − 3.67

0.0038 1

≈1 0 0

0 1 00 −966 1

, [L(2)L(1), A(2)] ≈

2.3 1.8 1.00.609 0.0038 −1.310.348 966 1270

Die LR-Zerlegung ergibt sich als:

L =

1 0 00.609 1 00.348 966 1

, R :=

2.3 1.8 1.00 0.0038 −1.310 0 1270

Wir lösen das Gleichungssystem nun durch Vorwärts- und Rückwärtseinsetzen:

Ax = L Rx︸︷︷︸=y

= b.

Zunächst gilt:

y1 = 1.2, y2 = −2.1− 0.609 · 1.2 ≈ −2.83, y3 = 0.6− 0.348 · 1.2 + 966 · 2.83 ≈ 2730.

42

Page 51: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3.2. Das Gauß’sche Eliminationsverfahren und die LR-Zerlegung

Und schließlich:

x3 = 27301270 ≈ 2.15, x2 = −2.83 + 1.31 · 2.15

0.0038 ≈ −3.55, x1 = 1.2 + 1.8 · 3.55− 1 · 2.152.3 ≈ 2.37.

Für die Lösung x gilt:

x =

2.37−3.552.15

, ‖x− x‖2‖x‖2

≈ 1.4,

d.h. einen relativen Fehler von 140 Prozent, obwohl wir nur Rundungsfehler und nochkeine gestörte Eingabe betrachtet haben.

Dieses Negativbeispiel zeigt die Bedeutung der Pivotisierung. Im zweiten Schritt wurdeals Pivot-Element mit 0.0038 ein Wert Nahe bei 0 gewählt. Hierdurch entstehen Werte vonsehr unterschiedlicher Größenordnung in den Matrizen L und R. Dies wirkt sich ungünstigauf die weitere Stabilität aus.

Beispiel 3.16 (LR-Zerlegung mit Pivotisierung). Wir setzen das Beispiel in Schritt 2 fortund suchen zunächst das Pivot-Element:

[L(1), A(1)] =

2.3 1.8 1.00.609 0.0038 −1.310.348 3.67 1.75

, P (2) =

1 0 00 0 10 1 0

Also, pivotisiert:

[L(1), A(1)] =

2.3 1.8 1.00.348 3.67 1.750.609 0.0038 −1.31

.Weiter folgt nun:

F (2) =

1 0 00 1 00 −0.0038

3.67 1

≈1 0 0

0 1 00 −0.00104 1

[L(2)L(1), A(2)] ≈

2.3 1.8 1.00.348 3.67 1.750.609 0.00104 −1.31

Wir erhalten die Zerlegung:

LR = PA, L :=

1 0 00.348 1 00.609 0.00104 1

, R :=

2.3 1.8 1.00 3.67 1.750 0 −1.31

, P :=

1 0 00 0 10 1 0

.Das Lineare Gleichungssystem lösen wir in der Form:

PAx = L Rx︸︷︷︸=y

= Pb.

43

Page 52: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3. Lineare Gleichungssysteme

Zunächst gilt für die rechte Seite: b = Pb = (1.2, 0.6,−2.1)T und Vorwärtseinsetzen inLy = b ergibt

y1 = 1.2, y2 = 0.6−0.348 ·1.2 ≈ 0.182, y3 = −2.1−0.609 ·1.2−0.00104 ·0.182 ≈ −2.83.

Als Näherung x erhalten wir:

x =

0.350−0.9802.160

mit einem relativen Fehler

‖x− x‖2‖x‖2

≈ 0.0002,

also von nur 0.02% statt 140%.

Die Beispiele zeigen, dass die berechnete LR-Zerlegung in praktischer Anwendung natür-lich keine echte Zerlegung, sondern aufgrund von Rundungsfehlern nur eine Näherung derMatrix A ≈ LR ist. Man kann durch Berechnung von LR leicht die Probe machen undden Fehler A− LR bestimmen.

Die LR-Zerlegung ist eines der wichtigsten direkten Verfahren zum Lösen von linearenGleichungssystemen. Der Aufwand zur Berechnung der LR-Zerlegung steigt allerdings mitdritter Ordnung sehr schnell. Selbst auf modernen Computern übersteigt die Laufzeit fürgroße Gleichungssysteme schnell eine sinnvolle Grenze:

n Operationen (≈ 13n

3) Zeit100 300 000 30 µs

1 000 300 · 106 30 ms10 000 300 · 109 30 s

100 000 300 · 1012 10 h1 000 000 300 · 1015 1 Jahr

Tabelle 3.1.: Rechenzeit zum Erstellen der LR-Zerlegung einer Matrix A ∈ Rn×n auf einemRechner mit 10 GigaFLOPS.

Bei der Diskretisierung von partiellen Differentialgleichungen treten Gleichungssystememit n = 106 ∼ 109 auf. Die Matrizen verfügen dann aber über Struktureigenschaftenwie Symmetrie, oder über ein besonders dünnes Besetzungsmuster (in jeder Zeile sindnur einige wenige Einträge ungleich Null). Die linearen Gleichungsysteme, die bei derFinite-Elemente Diskretisierung der Laplace-Gleichung (beschreibt die Ausdehnung einerMembran) entstehen haben z.B. unabhänging von n nur 5 Einträge pro Zeile. Die soentstehenden linearen Gleichungsysteme lassen sich bei effizienter Implementierung derLR-Zerlegung auch bei n = 1 000 000 in weniger als einer Minute lösen.

44

Page 53: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3.3. LR-Zerlegung für diagonaldominante Matrizen

3.3. LR-Zerlegung für diagonaldominante Matrizen

Satz 3.14 besagt, dass die LR-Zerlegung für beliebige reguläre Matrizen mit Pivotierungmöglich ist. Es gibt allerdings auch viele Matrizen, bei denen die LR-Zerlegung ohnePivotisierung stabil durchführbar ist. Beispiele hierfür sind positiv definite oder diagonal-dominante Matrizen:

Definition 3.17 (Diagonaldominanz). Eine Matrix A ∈ Rn×n heißt diagonaldominant,falls

|aii| ≥∑j 6=i|aij |, i = 1, . . . , n.

Eine diagonaldominante Matrix hat das betragsmäßig größte Element auf der Diagonalen,bei regulären Matrizen sind die Diagonalelemente zudem ungleich Null.

Satz 3.18 (LR-Zerlegung diagonaldominanter Matrizen). Sei A ∈ Rn×n eine reguläre,diagonaldominante Matrix. Dann ist die LR-Zerlegung ohne Pivotierung durchführbar undalle auftretenden Pivot-Elemente a(i−1)

ii sind von Null verschieden.

Beweis: Wir führen den Beweis über Induktion und zeigen, dass alle Untermatrizen A(i)kl>i

wieder diagonaldominant sind. Für eine diagonaldominante Matrix gilt

|a11| ≥∑j>1|a1j | ≥ 0,

und da A regulär ist auch zwingend |a11| > 0. Der erste Schritt der LR-Zerlegung istdurchführbar.

Es sei nun A eine reguläre Matrix, wir wollen zeigen, dass die Matrix A nach einemEliminationsschritt eine diagonaldominante Untermatrix Aij>1 hat. Für deren Einträgeaij gilt:

aij = aij −ai1a1ja11

, i, j = 2, . . . , n.

Also gilt für die Untermatrix:

i = 2, . . . , n :n∑

j=2, j 6=i|aij | ≤

n∑j=1, j 6=i

|aij |︸ ︷︷ ︸≤|aii|

−|ai1|+|ai1||a11|

n∑j=2|a1j |︸ ︷︷ ︸

≤|a11|

− |ai1||a11|

|a1i|

≤ |aii| −|ai1||a11|

|a1i| ≤ |aii −ai1a11

a1i| = |aii|.

Die resultierende Matrix ist wieder diagonaldominant. �

Die Definition der Diagonaldominanz scheint zunächst willkürlich. Es zeigt sich aber, dassviele Matrizen, die in Anwendungen, zum Beispiel bei der Diskretisierung von partiellenDifferentialgleichungen auftreten, diese Eigenschaft erfüllen. Zudem ist die Diagonaldo-minanz einer Matrix sehr einfach zu überprüfen und daher ein gutes Kriterium um dieNotwendigkeit der Pivotierung abzuschätzen.

45

Page 54: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3. Lineare Gleichungssysteme

3.4. Die Cholesky-Zerlegung für positiv definite Matrizen

Eine wichtige Klasse von Matrizen sind die positiv definiten Matrizen, siehe Definition 2.12sowie Satz 2.13. Es zeigt sich, dass für symmetrisch positiv definite Matrizen A ∈ Rn×n einesymmetrische Zerlegung A = LLT in eine untere Dreiecksmatrix L erstellt werden kann.Diese ist immer ohne Pivotisierung durchführbar und wird Cholesky-Zerlegung genannt.Der Aufwand zum Erstellen der Cholesky-Zerlegung ist erwartungsgemäß nur halb so großwie der Aufwand zum Erstellen der LR-Zerlegung.

Satz 3.19 (LR-Zerlegung einer positiv definiten Matrix). Die Matrix A ∈ Rn×n sei sym-metrisch, positiv definit. Dann existiert eine eindeutige LR-Zerlegung ohne Pivotierung.

Beweis: Wir gehen ähnlich vor wie bei diagonaldominanten Matrizen und führen denBeweis per Induktion. Dazu sei A eine positiv definite, symmetrische Matrix. Ein Schrittder LR-Zerlegung ist durchführbar, da laut Satz 2.13 gilt a11 > 0. Wir zeigen, dass dieTeilmatrix Aij>1 nach einem Eliminationsschritt wieder symmetrisch positiv definit ist.Es gilt aufgrund der Symmetrie von A:

aij = aij −a1jai1a11

= aji −a1iaj1a11

= aji,

d.h., Aij>1 ist symmetrisch.

Nun sei x ∈ Rn ein Vektor x = (x1, x) ∈ Rn mit x = (x2, . . . , xn) ∈ Rn−1 beliebig. DenEintrag x1 werden wir im Laufe des Beweises spezifizieren. Es gilt wegen der positivenDefinitheit von A:

0 < (Ax, x) =∑ij

aijxixj = a11x21 + 2x1

n∑j=2

a1jxj +n∑

i,j=2aijxixj

= a11x21 + 2x1

n∑j=2

a1jxj +n∑

i,j=2

(aij −

a1jai1a11

)︸ ︷︷ ︸

=aij

xixj +n∑

i,j=2

a1jai1a11

xixj

= a11

x21 + 2x1

1a11

n∑j=2

a1jxj + 1a2

11

n∑i,j=2

a1jai1xixj

+n∑

i,j=2aijxixj

= a11

x1 + 1a11

n∑j=2

a1jxj

2

+ (Ai,j>1x, x).

Die positive Definitheit von Aij>1 folgt somit bei der Wahl

x1 = − 1a11

n∑j=2

a1jxj .

46

Page 55: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3.4. Die Cholesky-Zerlegung für positiv definite Matrizen

Für eine symmetrisch positiv definite Matrix A ist die LR-Zerlegung immer ohne Pivoti-sierung durchführbar. Dabei treten nur positive Pivot-Elemente a(i−1)

ii auf. Das heißt, dieMatrix R hat nur positive Diagonalelemente rii > 0. Es sei D ∈ Rn×n die Diagonalmatrixmit dii = rii > 0. Dann gilt:

A = LR = LDR,

mit einer rechten oberen Dreiecksmatrix R, welche nur Einsen auf der Diagonalen hat. DaA symmetrisch ist folgt:

A = LR = LDR = RTDLT = AT .

Aufgrund der Eindeutigkeit der LR-Zerlegung gilt L = RT und R = DLT . Da D nurpositive Diagonaleinträge hat existiert die Matrix

√D und wir schreiben:

A = LR = LD12︸ ︷︷ ︸

=:L

D−12R︸ ︷︷ ︸

=LT.

Wir fassen zusammen:

Satz 3.20 (Cholesky-Zerlegung). Es sei A ∈ Rn×n eine symmetrisch, positiv definiteMatrix. Dann existiert die Cholesky-Zerlegung:

A = LLT ,

in eine untere linke Dreiecksmatrix L. Sie kann ohne Pivotierung in

n3

6 +O(n2)

arithmetische Operationen durchgeführt werden.

Anstelle eines Beweises geben wir einen effizienten Algorithmus zur direkten Berechnungder Cholesky-Zerlegung an. Hier kann der notwendige Aufwand leicht aus Koeffizienten-vergleich bei A = LTL abgelesen werden:

Algorithmus 3.21 (Direkte Berechnung der Cholesky-Zerlegung). Gegeben sei eine sym-metrisch, positiv definite Matrix A ∈ Rn×n. Dann sind die Einträge lij, j ≤ i der Cholesky-Zerlegung bestimmt durch die Vorschrift:

j = 1, . . . , n :(i) l11 =

√a11, bzw. ljj =

√√√√ajj − j−1∑k=1

l2jk

(ii) lij = l−1jj

aij − j−1∑k=1

likljk

, i = j + 1, . . . , n.

47

Page 56: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3. Lineare Gleichungssysteme

Der Algorithmus kann iterativ aus der Beziehung LLT = A hergeleitet werden. Es gilt:

aij =min{i,j}∑k=1

likljk.

Wir gehen Spaltenweise j = 1, 2, . . . vor. Das heißt, L sei für alle Spalten bis j−1 bekannt.Dann gilt in Spalte j zunächst für das Diagonalelement:

ajj =j∑

k=1l2jk ⇒ ljj =

√√√√ajj − j−1∑k=1

l2jk.

Ist das j-te Diagonalelement ljj bekannt, so gilt für i > j:

aij =j∑

k=1likljk ⇒ lijljj = aij −

j−1∑k=1

likljk ⇒ lij = l−1jj

aij − j−1∑k=1

likljk

.

3.5. Dünn besetzte Matrizen und Bandmatrizen

Der Aufwand zum Erstellen der LR-Zerlegung wächst sehr schnell mit der Größe derMatrix an. In vielen Anwendungsproblemen treten dünn besetzte Matrizen auf:

Definition 3.22 (Dünn besetzte Matrix). Eine Matrix A ∈ Rn×n heißt dünn besetzt,falls die Matrix A nur O(n) von Null verschiedene Einträge besitzt. Das Besetzungsmuster(Sparsity Pattern) B ⊂ {1, . . . , n}2 von A ist die Menge aller Indexpaare (i, j) mit aij 6= 0.

Andere, weniger strenge Definitionen von dünn besetzten Matrizen verlangen, dass dieMatrixO(n log(n)) oder auchO(n

√n) beziehungsweise einfach o(n2) von Null verschiedene

Einträge besitzt.

Ein Beispiel für dünn besetzte Matrizen sind Tridiagonalmatrizen der Form

A ∈ Rn×n, aij = 0 ∀|i− j| > 1.

Für Tridiagonalmatrizen kann die LR-Zerlegung sehr effizient durchgeführt werden:

Satz 3.23 (Thomas-Algorithmus). Es sei A ∈ Rn×n eine reguläre Tridiagonalmatrix. DieLR-Zerlegung ist wieder eine Tridiagonalmatrix und kann in O(n) Operationen durchge-führt werden.

Beweis: Übung. �

Eine Verallgemeinerung von Tridiagonalsystemen sind die Bandmatrizen:

48

Page 57: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3.5. Dünn besetzte Matrizen und Bandmatrizen

Definition 3.24 (Bandmatrix). Eine Matrix A ∈ Rn×n heißt Bandmatrix mit Bandbreitem ∈ N, falls:

aij = 0 ∀|i− j| > m.

Eine Bandmatrix hat höchstens n(2m+ 1) von Null verschiedene Einträge.

Es zeigt sich, dass die LR-Zerlegung einer Bandmatrix wieder eine Bandmatrix ist unddaher effizient durchgeführt werden kann.

Satz 3.25 (LR-Zerlegung einer Bandmatrix). Es sei A ∈ Rn×n eine Bandmatrix mitBandbreite m. Die LR-Zerlegung (ohne Permutierung):

LR = A,

ist wieder eine Bandmatrix, d.h.:

Lij = Rij = 0 ∀|i− j| > m,

und kann inO(nm2)

Operationen durchgeführt werden.

Beweis: Wir zeigen induktiv, dass die entstehenden Eliminationsmatrizen Aij>1 wiederBandmatrizen sind. Es gilt:

aij = aij −a1jai1a11

, i, j = 2, . . . , n.

Es sei nun |i− j| > m. Dann ist aij = 0. Ebenso müssen a1j = ai1 = 0 sein, da 1 ≤ i, j.

Zur Aufwandsberechnung vergleiche den Beweis zu Satz 3.9. Im Fall einer Bandmatrixmüssen in Schritt i der Elimination nicht mehr (n−i)2 arithmetische Operationen sondernhöchstens m2 arithmetische Operationen durchgeführt werden. Ebenso müssen nur mElemente der Frobeniusmatrix zur Reduktion bestimmt werden. Insgesamt ergibt sich:

n∑i=1

(m+m2) = nm2 +O(nm).

Der Unterschied, eine LR-Zerlegung für eine voll besetzte Matrix und eine Bandmatrixdurchzuführen ist enorm. Zur Diskretisierung der Laplace-Gleichung mit Finiten Differen-zen müssen lineare Gleichungssysteme mit der sogenannten Modellmatrix gelöst werden:

A =

Am −Im 0 · · · 0

−Im Am −Im...

0 −Im. . . . . . 0

... . . . . . . −Im0 · · · 0 −Im Am

, Am =

4 −1 0 · · · 0

−1 4 −1...

0 −1 . . . . . . 0... . . . . . . −10 · · · 0 −1 4

m,

49

Page 58: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3. Lineare Gleichungssysteme

Die Matrix A ∈ Rn×n (für eine Quadratzahl n) hat Bandbreite m =√n. In Tabelle 3.2

geben wir die notwendigen Rechenzeiten zum Erstellen der LR-Zerlegung auf aktuellerHardware an. Man vergleiche mit Tabelle 3.1.

n Operationen Zeit Zeit (voll besetzt)100 105 1 µs 30 µs

1 000 106 100 µs 30 ms10 000 108 10 ms 30 s

100 000 1010 1 s 10 h1 000 000 1012 2 min 1 Jahr

Tabelle 3.2.: Rechenzeit zum Erstellen der LR-Zerlegung einer Bandmatrix A ∈ Rn×n mitBandbreite m =

√n auf einem Rechner mit 10 GigaFLOPS. Zum Vergleich

die Zeiten für eine vollbesetzte Matrix, siehe Tabelle 3.1

Die Modellmatrix ist eine Bandmatrix mit Bandbreite m =√n, hat aber in jeder Zeile

neben dem Diagonalelement höchsten 4 von Null verschiedene Einträge ai,i±1 und ai,i±m.Bei so dünn besetzten Matrizen stellt sich die Frage, ob die LR-Zerlegung, also die MatrizenL und R das gleiche dünne Besetzungsmuster haben. Es zeigt sich jedoch, dass die LR-Zerlegung einer dünn besetzten Bandmatrix im Allgemeinen selbst eine dicht besetzteBandmatrix ist. Aus der dünnen Besetzungsstruktur kann kein Nutzen gezogen werden.

Der Aufwand zur Berechnung der LR-Zerlegung einer dünn besetzten Matrix hängt we-sentlich von der Sortierung, also der Pivotierung, der Matrix ab. Wir betrachten hierzuein einfaches Beispiel:

Beispiel 3.26 (LR-Zerlegung dünn besetzter Matrix). Wir betrachten die beiden Matri-zen:

A1 :=

1 2 3 42 1 0 03 0 1 04 0 0 1

, A2 :=

1 0 0 40 1 0 30 0 1 24 3 2 1

Die beiden Matrizen gehen durch simultane Vertauschen der ersten und vierten, sowiezweiten und dritten Zeile und Spalte auseinander hervor. Die LR-Zerlegung der Matrix A1(ohne Permutierung) lautet:

L1 =

1 0 0 02 1 0 03 2 1 04 8

3 1 1

R1 =

1 2 3 40 −3 −6 −80 0 4 40 0 0 7

3

,und für die Matrix A2 erhalten wie (wieder ohne Pivotierung):

L2 =

1 0 0 00 1 0 00 0 1 04 3 2 1

R2 =

1 0 0 40 1 0 30 0 1 20 0 0 −28

.

50

Page 59: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3.5. Dünn besetzte Matrizen und Bandmatrizen

Obwohl beide Matrizen bis auf Zeilen und Spaltentausch das gleiche lineare Gleichungssys-tem beschreiben, haben die LR-Zerlegungen ein gänzlich unterschiedliches Besetzungsmus-ter: die LR-Zerlegung von Matrix A1 ist voll besetzt, während die LR-Zerlegung zu MatrixA2 mit dem gleichen dünnen Besetzungsmuster auskommt wie die Matrix A2 selbst.

Dieses Beispiel lässt sich auf die entsprechende n × n-Matrix verallgemeinern. In Fall1 sind n2 Einträge zum Speichern der LR-Zerlegung notwendig, in Fall 2 nur 3n. Fürn� 1 000 ist dieser Unterschied entscheidend.

Dünn besetzte Matrizen treten in der Anwendung oft auf, etwa bei der Diskretisierung vonDifferentialgleichungen, aber auch bei der Berechnung von kubischen Splines. Damit dieLR-Zerlegung aus der dünnen Besetzungsstruktur Nutzen ziehen kann, muss die Matrixentsprechend permutiert (man sagt hier sortiert) sein. Werden Nulleinträge in A in derLR-Zerlegung überschrieben, so spricht man von fill-in. Die aktuelle Forschung zur Weiter-entwicklung der LR-Zerlegung befasst sich weniger mit der Berechnung der LR-Zerlegungselbst, als mit effizienten Sortierverfahren zur Reduktion der fill-ins. Wir wissen, dass dieLR-Zerlegung einer Bandmatrix mit Bandbreite m wieder eine (voll besetzte) Bandma-trix mit Bandbreite m ist und in O(nm2) Operationen durchgeführt werden kann. EineIdee zur Sortierung der Matrix A besteht nun darin, die Einträge so anzuordnen, dass diesortierte Matrix eine Bandmatrix mit möglichst dünner Bandbreite ist.

Ein bekanntes Verfahren ist der Cuthill-McKee-Algorithmus. Dieser erstellt eine Sortierung{i1, i2, . . . , in} der n Indizes, so dass miteinander verbundene Indizes nahe beieinanderstehen. Zur Herleitung des Verfahrens benötigen wir einige Begriffe. Es sei A ∈ Rn×n einedünn besetzte Matrix mit Besetzungsmuster (i, j) ∈ B = {1, . . . , n}2. Dabei gehen wir derEinfachheit davon aus, dass B symmetrisch ist. Aus (i, j) ∈ B folgt (j, i) ∈ B. Zu einemIndex i ∈ {1, . . . , n} sei N (i) die Anzahl aller mit i verbundenen Indizes:

N (i) := {j ∈ {1, . . . n} : (i, j) ∈ B},

Und für eine beliebige Menge N ⊂ {1, . . . , n} bezeichnen wir mit #N die Menge derElemente in N , d.h. mit #N (i) die Anzahl der Nachbarn von i.

Der Algorithmus füllt schrittweise eine Indexliste I = (i1, i2, . . . ) bis alle Indizes 1, . . . , neinsortiert sind. Wir starten mit dem Index I = (i1), welcher die geringste Zahl vonNachbarn #N (i1) ≤ #N (j),∀j besitzt. Im Anschluss fügen wir die Nachbarn j ∈ N (i1)von i1 hinzu, in der Reihenfolge der jeweiligen Zahl von Nachbarn. Auf diese Weise hangeltsich der Algorithmus von Nachbar zu Nachbar und arbeitet die Besetzungsstruktur derMatrix ab bis alle Indizes zur Liste hinzugefügt wurden.

Bei der genauen Definition des Algorithmus sind noch einige Sonderfälle zu betrachten, sodass der Algorithmus auch wirklich terminiert und alle Indizes findet:

51

Page 60: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3. Lineare Gleichungssysteme

Algorithmus 3.27 (Cuthill-McKee). Es sei A ∈ Rn×n eine dünn besetzte Matrix mitsymmetrischem Besetzungsmuster B ∈ (i, j). Starte mit leerer Indexmenge I = (·) unditeriere für k = 1, . . . , n:

(0) Stopp, falls die Indexmenge I bereits n Elemente besitzt.

(1) Falls die Indexmenge I nur k − 1 Elemente besitzt, bestimme Indexelement ik als(noch nicht verwendeter) Index, d.h. ik 6∈ I mit minimaler Nachbarzahl:

ik = arg minj∈{1,...,n}\I

#N (j),

und füge ik zu I hinzu.

(2) Erstelle Liste aller Nachbarn von ik, welche noch nicht in I enthalten sind:

Nk := N (ik) \ I.

Falls Nk = ∅, Neustart mit k + 1.

(3) Sortiere Liste Nk aufsteigend nach Anzahl von Nachbarn:

Nk = {sk1, sk2, . . . }, #N (ski ) ≤ #N (ski+1).

Füge Indizes {sk1, sk2, . . . } in dieser Reihenfolge zu Liste I hinzu.

Wir betrachten zur Veranschaulichung ein Beispiel:

Beispiel 3.28 (Cuthill-McKee). Es sei eine Matrix A ∈ R8×8 mit folgendem Besetzungs-muster gegeben:

A :=

∗ ∗ ∗∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗∗

∗ ∗ ∗ ∗∗ ∗∗ ∗ ∗

∗ ∗ ∗ ∗

Index N(i) #N(i)1 1,2,8 32 1,2,5,6,8 53 3,5,7,8 44 4 15 2,3,5,7 46 2,6 27 3,5,7 38 1,2,3,8 4

Schritt k = 1: (1) Die Indexliste I ist leer. Der Index 4 hat nur einen Nachbarn (sich selbst), d.h.

i1 = 4, I = (4).

(2) Für den Index 4 gilt N1 = N (4) \ I = ∅, d.h. weiter mit k = 2.

Schritt k = 2: (1) Die Indexliste hat nur k − 1 = 1 Element. Von den verbliebenden Indizes hatIndex 6 die minimale Zahl von zwei Nachbarn, d.h.

i2 = 6, I = (4, 6).

52

Page 61: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3.5. Dünn besetzte Matrizen und Bandmatrizen

(2) Es gilt N2 = N (6) \ I = {2, 6} \ {4, 6} = {2}.

(3) Ein einzelnes Element ist natürlich sortiert, d.h.

i3 = 2, I = (4, 6, 2)

Schritt k = 3: (1) Diese Schritt greift nicht, da I bereits 3 Elemente besitzt, es ist i3 = 2.

(2) Es gilt N3 = N (2) \ I = {1, 2, 5, 6, 8} \ {4, 6, 2} = {1, 5, 8}.

(3) Es gilt #N(1) = 3, #N(5) = 4 und #N(8) = 4, d.h. wir fügen sortiert hinzu:

i4 = 1, i5 = 5, i6 = 8, I = (4, 6, 2, 1, 5, 8).

Schritt k = 4: (1) I hat mehr als 3 Elemente.

(2) i4 = 1. Es ist N4 = N (1) \ I = {1, 2, 8} \ {4, 6, 2, 1, 5, 8} = ∅. Daher weiter mitk = 5

Schritt k = 5: (1) I hat genug Elemente.

(2) i5 = 5. Es ist N5 = N (5) \ I = {2, 3, 5, 7} \ {4, 6, 2, 1, 5, 8} = {3, 7}

(3) Es gilt #N (3) = 4 und #N (7) = 3, d.h. Index 7 wird zuerst angefügt

i7 = 7, i8 = 3, I = (4, 6, 2, 1, 5, 8, 7, 3).

Schritt k = 6: (0) Stopp, da #I = 8.

Wir erhalten mit I0 = (1, 2, 3, 4, 5, 6, 7, 8), (I0)j :7→ Ij die Sortierung:

1→ 4, 2→ 6, 3→ 2, 4→ 1, 5→ 5, 6→ 8, 7→ 7, 8→ 3.

Wir erstellen die sortiere Matrix A gemäß akj = aikij :

A :=

4 6 2 1 5 8 3 7

∗ 4∗ ∗ 6∗ ∗ ∗ ∗ ∗ 2∗ ∗ ∗ 1∗ ∗ ∗ ∗ 5∗ ∗ ∗ ∗ 8

∗ ∗ ∗ 7∗ ∗ ∗ ∗ 3

Die so sortierte Matrix ist eine Bandmatrix mit Bandbreite m = 3.

53

Page 62: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3. Lineare Gleichungssysteme

Abbildung 3.1.: Besetzungsstruktur einer dünn besetzten Matrix A ∈ R1089×1089 mit ins-gesamt 9 409 von Null verschiedenen Einträgen. Links: vor Sortierung,Mitte: Cuthill-McKee Algorithmus und rechts: nach Sortierung mit einemMulti-Fronten-Verfahren aus [5].

Die meisten Verfahren basieren auf Methoden der Graphentheorie. Der Cuthill-McKeeAlgorithmus sucht eine Permutierung des Besetzungsmusters, so dass eng benachbarte In-dizes auch in der Reihenfolge nahe beieinander stehen. Andere Methoden versuchen dendurch das Besetzungsmuster aufgespannten Graphen möglichst in Teilgraphen zu zerlegen.Diese Teilgraphen entsprechen Blöcken in der Matrix A. Die anschließende LR-Zerlegungerzeugt dann voll besetzte, dafür kleine Blöcke. Die einzelnen Blöcke sind nur schwachgekoppelt. Ein Vorteil dieser Sortierung ist die Möglichkeit, effiziente Parallelisierungsver-fahren für die einzelnen Blöcke zu verwenden.

In Abbildung 3.1 zeigen wir die Besetzungsstruktur einer Matrix A ∈ R1 089×1 089 vorund nach entsprechender Sortierung. Die Matrix hat eine symmetrische Besetzungsstruk-tur und 9 409 Einträge ungleich Null (das sind weniger als 1% aller Einträge). Die LR-Zerlegung der unsortierten Matrix ist nahezu voll belegt mit etwa 1 000 000 Einträgen undderen Berechnung erfordert etwa 400 · 106 Operationen. Der Cuthill-McKee Algorithmuserzeugt eine Bandmatrix mit sehr dünner Bandbreite m ≈ 70. Zur Speicherung der LR-Zerlegung sind etwa 150 000 Einträge notwendig und die Berechnung erfordert etwa 5 ·106

Operationen, also nur 180 des Aufwands. Schließlich zeigen wir zum Vergleich die Sortie-

rung mit einem sogenannten Multi-Fronten-Verfahren. Hier wird die Matrix in einzelneBlöcke geteilt. Zur Berechnung der LR-Zerlegung sind hier 3 · 106 Operationen notwendig( 1

133 des Aufwands). Details hierzu finden sich in [5].

3.6. Nachiteration

Die numerisch durchgeführte LR-Zerlegung stellt aufgrund von Rundungsfehlern nur eineNäherung dar A ≈ LR und die so approximierte Lösung LRx = b ist mit einem Fehlerx−x behaftet. Es stellt sich nun die Frage nach einer auswertbaren Abschätzung für diesen

54

Page 63: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3.6. Nachiteration

Fehler, also eine Auswertung, die ohne die echte, aber unbekannte Lösung x auskommt.Ein erster Anhaltspunkt wird durch den Defekt gegeben, siehe auch Definition 7.19:

Definition 3.29 (Defekt (LGS)). Es sei x ∈ Rn die Näherung zur Lösung x ∈ Rn vonAx = b. Die Größe

d(x) := b−Ax,

bezeichnet den Defekt.

Für die exakte Lösung x ∈ Rn von Ax = b gilt d(x) = 0. Je genauer unsere Lösung ist,umso kleiner ist der Defekt. Für allgemeine Approximationen erhalten wir die folgende aposteriori Fehlerabschätzung:

Satz 3.30 (Fehlerabschätzung für lineare Gleichungssysteme). Es sei A ∈ Rn×n einereguläre Matrix und x ∈ Rn die Approximation zur Lösung x ∈ Rn von Ax = b. Dann gilt:

‖x− x‖‖x‖

≤ cond(A)‖d(x)‖‖b‖

.

Beweis: Es gilt:

x− x = A−1(b−Ax) = A−1d(x) ⇒ ‖x− x‖ ≤ ‖A−1‖ ‖d(x)‖.

Teilen durch ‖b‖ = ‖Ax‖ ≤ ‖A‖ ‖x‖ liefert das gewünschte Ergebnis

‖x− x‖‖x‖

≤ ‖A‖ ‖A−1‖ ‖d(x)‖‖b‖

.

Zur Veranschaulichung betrachten wir die Beispiele 3.15 und 3.16 mit:

x ≈

0.34995−0.98023

2.1595

, x1 =

2.37−3.552.15

, x2 =

0.35−0.982.16

mit den relativen Fehlern

‖x− x1‖2‖x‖2

≈ 1.4, ‖x− x2‖2‖x‖2

≈ 0.00023,

sowie Defekten:‖d(x1)‖2‖b‖2

≈ 3.8, ‖d(x2)‖2‖b‖2

≈ 0.0009.

Der Spektralkondition der Matrix A ist cond2(A) ≈ 6, d.h., es ergeben sich die Fehler-schranken:

‖x− x1‖2‖x‖2

≤ 6 · 3.8 ≈ 23, ‖x− x2‖2‖x‖2

≤ 6 · 0.0009 ≈ 0.005.

55

Page 64: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3. Lineare Gleichungssysteme

In beiden Fällen wir der Fehler um einen Faktor 10 ∼ 20 überschätzt. Zur praktischenAuswertung dieser Fehlerabschätzung wird die Konditionszahl der Matrix A benötigt.Diese ist im Allgemeinen jedoch nicht verfügbar, da A−1 weder bekannt, noch einfach zuberechnen ist.

Neben seiner Rolle zur Fehlerabschätzung kommt dem Defekt eine weitere wichtige Bedeu-tung zu. Wir gehen davon aus, dass wir den Defekt d(x) ohne Rundungsfehler berechnenkönnen. Weiter nehmen wir an, dass wir auch die Defekt-Gleichung

Aw = d(x) = b−Ax,

exakt nach w ∈ Rn lösen können. Dann gilt für x+ w:

x+ w = x+A−1(b−Ax) = x+ x− x = x.

Dieser Vorgang wird Defektkorrektur oder Nachiteration genannt. Die Annahme, dass De-fekt und Defektgleichung ohne Rundungsfehler gelöst werden können ist natürlich nichtrealistisch (dann könnte ja auch das Original-System exakt gelöst werden). Dennoch er-halten wir als Grundlage der Nachiteration das folgende Ergebnis:

Satz 3.31 (Nachiteration). Es sei ε (klein genug) die Fehlertoleranz. Durch x ∈ Rn seieine Approximation zu Ax = b gegeben. Weiter sei d eine Approximation zu d(x) mitdoppelter Genauigkeit, d.h.

‖d(x)− d‖‖d(x)‖ ≤ cond(A)ε2. (3.3)

Es sei w eine Approximation der Defektgleichung Aw = d mit einfacher Genauigkeit, d.h.

‖w − w‖‖w‖

≤ cond(A)ε. (3.4)

Dann gilt für die Korrektur x+ w die Abschätzung

‖x− (x+ w)‖‖x‖

≤ εc(A)‖x− x‖‖x‖

,

mit einer Konstante c(A), die von der Konditionszahl cond(A) abhängt.

Beweis: Wir definieren zunächst eine Hilfsgröße: Es sei w die exakte Lösung der exaktenDefektgleichung Aw = d(x):

Aw = b−Ax ⇒ w = A−1b−A−1Ax = x− x. (3.5)

Für den Fehler w − w zwischen den exakten Lösungen von Aw = d(x) und Aw = d giltlaut Störungssatz 3.5:

‖w − w‖‖w‖

≤ cond(A) ‖d(x)− d‖‖d(x)‖︸ ︷︷ ︸

(3.3)

≤ ε2 cond(A)2 (3.6)

56

Page 65: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3.6. Nachiteration

Jetzt folgt durch Einschieben von ±w sowie ±w in den Fehler ‖x− (x+ w)‖:

‖x− (x+ w)‖ ≤ ‖x− (x+ w)‖︸ ︷︷ ︸=0 wegen (3.5)

+ ‖w − w‖︸ ︷︷ ︸(3.6)

+ ‖w − w‖︸ ︷︷ ︸(3.4)

≤ ε2 cond(A)2‖w‖+ ε cond(A)‖w‖≤ ε cond(A)

(ε cond(A)‖w‖+ ‖w‖+ ‖w − w‖︸ ︷︷ ︸

(3.6)

)≤ ε cond(A)

(1 + ε cond(A) + ε2 cond(A)2)‖w‖

≤ εc(A)‖x− x‖,

mit c(A) := cond(A)(1 + ε cond(A) + ε2 cond(A)2). Das Ergebnis folgt mit Teilen durch‖x‖. �

Durch einen Nachiterationsschritt kann der Fehler um den Faktor εc(A) reduziert werden.Die Konstante c(A) hängt dabei allerdings sehr ungünstig von der oft sehr großen Kondi-tionszahl der Matrix ab. Die Nachiteration ist ein universelles Prinzip und nicht auf dieLR-Zerlegung beschränkt. Dennoch definieren wir für diese:

Algorithmus 3.32 (Nachiteration). Es sei A ∈ Rn×n eine reguläre Matrix und b ∈ Rn.Zur Lösung von Ax = b:

1. Erstelle LR-Zerlegung von A mit einfacher Genauigkeit

LR = PA.

2. Setze d(1) = b sowie x(1) = 0 und iteriere für i = 1, 2, . . . :

(i) Ly(i) = Pd(i) mit einfacher Genauigkeit(ii) Rw(i) = y(i) mit einfacher Genauigkeit

(iii) x(i+1) = x(i) + w(i) mit doppelter Genauigkeit(iv) d(i+1) = b−Ax(i+1) mit doppelter Genauigkeit

Der Vorteil der Nachiteration liegt in der mehrfachen Verwendung der erstellten LR-Zerlegung. Zur Berechnung der LR-Zerlegung sind O(n3) Operationen notwendig, währendzum Vorwärts- und Rückwärtseinsetzen, sowie zur Berechnung des Defektes nur O(n2)Operationen benötigt werden. D.h., selbst bei Verwenden höherer Genauigkeit ist derAufwand in Schritt 2.(iii) des Verfahrens klein im Vergleich zu Schritt 1.

Die Annahme, dass zum Erstellen der LR-Zerlegung mit geringerer Genauigkeit gerechnetwird, als zur Defektberechnung ist nicht unrealistisch. Der Speichertyp float von einfa-cher Genauigkeit benötigt zur Speicherung einer Zahl nur den halben Speicher verglichenmit double. Gerade bei sehr großen Matrizen n� 1 000 000 spielt der Speicherbedarf einewesentliche Rolle. Darüber hinaus unterscheidet moderne Hardware (z.B. GPU’s) zwi-schen der Rechnung mit doppelter und einfacher Genauigkeit, deren Operationen oft weitschneller durchgeführt werden können.

57

Page 66: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

3. Lineare Gleichungssysteme

Beispiel 3.33 (Nachiteration). Wir führen Beispiel 3.16 fort und rechnen bei einfacherGenauigkeit auf drei Stellen genau und bei doppelter Genauigkeit auf sechs Stellen genau.Zur Approximation x2 berechnen wir den Defekt d(x2) mit doppelter Genauigkeit (hiersogar exakt):

x2 =

0.35−0.982.16

, d(x2) = b−Ax2 =

−0.0010

−0.002

.Mit dreistelliger (also hier einfacher) Genauigkeit lösen wir zunächst Ly2 = Pd(x2) mitPd(x2) = (−0.001,−0.002, 0)T und erhalten:

y2 =

−0.001−0.001650.000611

.Rückwärtseinsetzen Rw2 = y2 mit dreistelliger Genauigkeit ergibt:

w2 =

−0.0000542−0.000227−0.000466

.Wir berechnen die korrigierte Lösung x2 := x2 + w2 mit sechsstelliger (also doppelter)Genauigkeit zu:

x2 =

0.349946−0.980227

2.15953

.Diese verbesserte Lösung ist mit dem relativen Fehler

‖x− x‖2‖x‖2

≈ 0.0000137 · 10−5

versehen. Der Fehler konnte durch einen Nachiterationsschritt um zwei Größenordnungenverbessert werden!

Mit der gestörten LR-Zerlegung LR ≈ A lässt sich ein Nachiterationsschritt kompaktschreiben als:

x(i+1) = x(i) + Cd(x(i)), C := R−1L−1.

Dabei ist die Matrix C eine Approximation zur Inversen von A. Es stellt sich die Frage, obdie Nachiteration auch dann ein konvergentes Verfahren bildet, wenn C eine noch gröbereApproximation der Inversen C ≈ A−1 ist. Dabei könnte man an Approximationen denken,die auf der einen Seite weiter von A−1 entfernt sind, dafür aber wesentlich einfacher, z.B.in O(n2) Operationen zu erstellen sind. Dieser Ansatz ist Ausgangspunkt von allgemeinenDefektkorrektur-Verfahren, wie wir sie in Kapitel 8 untersuchen werden.

58

Page 67: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4. Orthogonalisierungsverfahren und dieQR-Zerlegung

Die Zerlegung einer regulären Matrix A ∈ Rn×n in die beiden Dreiecksmatrizen L und Rbasiert auf der Elimination mit Frobeniusmatrizen, d.h. R = FA, mit L := F−1. Es gilt:

cond(R) = cond(FA) ≤ cond(F ) cond(A) = ‖F‖ ‖L‖ cond(A).

Bei entsprechender Pivotisierung gilt für alle Einträge der Matrizen F |fij | ≤ 1, sowie fürdie Einträge von L |lij | ≤ 1, siehe Satz 3.14. Dennoch können die Normen von L und Fim Allgemeinen nicht günstiger als ‖F‖∞ ≤ n und ‖L‖∞ ≤ n abgeschätzt werden. Es giltdann die pessimistische Abschätzung

cond∞(R) ≤ n2 cond∞(A).

Die Matrix R, welche zur Rückwärtselimination gelöst werden muss, hat eine unter Um-ständen weit schlechtere Konditionierung als die Matrix A selbst (welche auch schon sehrschlecht konditioniert sein kann).

4.1. Die QR-Zerlegung

Wir suchen im Folgenden zu einer Matrix A ∈ Rn×n einen Zerlegungsprozess A = QRin eine Dreiecksmatrix R ∈ Rn×n, welcher numerisch stabil ist, indem die Zerlegung nurmit Hilfe von Matrizen durchgeführt wird, welche gut konditioniert sind. Hier bieten sichorthogonale Matrizen an:

Definition 4.1 (Orthogonale Matrix). Eine Matrix Q ∈ Rn×n heißt orthogonal, falls ihreZeilen und Spaltenvektoren eine Orthonormalbasis des Rn bilden, d.h. es gilt QTQ = I.

Orthogonale Matrizen haben die Spektralkondition cond2(Q) = 1, denn für alle Eigenwerteλ einer orthogonalen Matrix Q zu Eigenvektor ω gilt:

‖ω‖22 = (QTQω,ω)2 = (Qω,Qω)2 = (λω, λω)2 = |λ|2‖ω‖22 ⇒ |λ| = 1.

Gelingt es uns eine Zerlegung einer Matrix A = QR mit Hilfe einer orthogonalen MatrixQ ∈ Rn×n zu erstellen, so gilt cond2(R) ≤ cond2(A), d.h. die Dreiecksmatrix R hathöchstens die Kondition der ursprünglichen Matrix A.

Wir fassen zunächst einige Eigenschaften orthogonaler Matrizen zusammen:

59

Page 68: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4. Orthogonalisierungsverfahren und die QR-Zerlegung

Satz 4.2 (Orthogonale Matrix). Es sei Q ∈ Rn×n eine orthogonale Matrix. Dann ist Qregulär und es gilt:

Q−1 = QT , QTQ = I, ‖Q‖2 = 1, cond2(Q) = 1.

1. Es gilt det(Q) = 1 oder det(Q) = −1.

2. Für zwei orthogonale Matrizen Q1, Q2 ∈ Rn×n ist auch das Produkt Q1Q2 eineorthogonale Matrix. Für eine beliebige Matrix A ∈ Rn×n gilt ‖QA‖2 = ‖A‖2.

3. Für beliebige Vektoren x, y ∈ Rn gilt:

‖Qx‖2 = ‖x‖2, (Qx,Qy)2 = (x, y)2.

Beweis: Wir beweisen hier nur die im Kontext der numerischen Stabilität wesentlichEigenschaft, dass die Multiplikation mit orthogonalen Matrizen die Kondition einer Matrix(d.h. die 2-Norm) nicht verändert. Die weiteren Teile des Beweises belassen wir als Übung.Es gilt:

‖QAx‖22 = (QAx,QAx)2 = (QTQAx,Ax)2 = (Ax,Ax)2 = ‖Ax‖22.

Und es folgt

‖QA‖2 = supx 6=0

‖QAx‖2‖x‖2

= supx 6=0

‖Ax‖2‖x‖2

= ‖A‖2.

Wir definieren:

Definition 4.3 (QR-Zerlegung). Die Zerlegung einer Matrix A ∈ Rn×n in eine orthogo-nale Matrix Q ∈ Rn×n sowie eine rechte obere Dreiecksmatrix R ∈ Rn×n, gemäß

A = QR,

heißt QR-Zerlegung.

Die QR-Zerlegung hat den Vorteil, dass die Matrix R = QTA höchstens die Konditionszahlder Matrix A selbst besitzt. Einmal erstellt, kann die QR-Zerlegung genutzt werden, umlineare Gleichungssysteme mit der Matrix A effizient zu lösen. Die Matrix Q ist zwar -im Gegensatz zur Matrix L der LR-Zerlegung - keine Dreiecksmatrix, ihre Inverse kannjedoch trivial angegeben werden:

Ax = b ⇔ QTAx = QT b ⇔ Rx = QT b.

Satz 4.4 (QR-Zerlegung). Es sei A ∈ Rn×n eine reguläre Matrix. Dann existiert eine Zer-legung A = QR in eine orthogonale Matrix Q ∈ Rn×n und eine rechte obere DreiecksmatrixR ∈ Rn×n.

60

Page 69: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4.1. Die QR-Zerlegung

Beweis: Es seien A = (a1, . . . , an) die Spaltenvektoren der Matrix A. Da A regulär ist, sinddie Vektoren ai linear unabhängig und bilden eine Basis des Rn. Jetzt sei q1, . . . , qn ∈ Rneine Orthonormalsystem mit den Eigenschaften

(qi, qj)2 = δij ∀i, j, (qi, aj)2 = 0 ∀i > j.

Ein solches System aus Vektoren kann mit dem Gram-Schmidt-Verfahren erzeugt werden.Wir kommen in Satz 4.6 hierauf zurück.

Die Matrix Q = (q1, . . . , qn), bestehend aus den Spaltenvektoren qi ist orthogonal und fürdie Einträge der Matrix R = QTA gilt

R = (rij)nij=1, rij = (qi, aj)2 = 0 ∀i > j. (4.1)

Also ist R eine rechte obere Dreiecksmatrix. �

Eine QR-Zerlegung kann nicht eindeutig sein. Denn angenommen, durch

q1, . . . , qn,

sei das Orthonormalsystem aus Eigenvektoren gegeben, dann ist auch

q1, . . . , qi−1,−qi, qi+1, . . . , qn,

ein Orthonormalsystem aus Eigenvektoren. Diese Wahl führt gemäß (4.1) zu rij = −rijund eine zweite QR-Zerlegung von A ist gegeben.

Diese Überlegung führt unmittelbar zu einer einfachen Normierung der QR-Zerlegung. Injedem Schritt wird das Vorzeichen des Vektors qi so gewählt, dass rii = (qi, ai) > 0, dassalso die Matrix R nur positive Diagonalelemente besitzt. Dann gilt:

Satz 4.5 (Eindeutigkeit der QR-Zerlegung). Die QR-Zerlegung A = QR einer regulärenMatrix A ∈ Rn×n mit rii > 0 ist eindeutig.

Beweis: Es seien A = Q1R1 = Q2R2 zwei QR-Zerlegungen zu A. Dann gilt:

Q := QT2 Q1 = R2R−11 , QT := QT1 Q2 = R1R

−12 . (4.2)

Die Matrizen Q und QT sind beide rechte obere Dreiecksmatrizen, also muss Q eine Dia-gonalmatrix sein. Weiter gilt

QTQ = QT1 Q2QT2 Q1 = R1R

−12 R2R

−11 = I,

d.h., Q ist orthogonal. Aus (4.2) folgt

QR1 = R2,

und für jeden Einheitsvektor ei gilt

qiir(1)ii = eTi (QR1)ei = eTi (R2)ei = r

(2)ii > 0. (4.3)

61

Page 70: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4. Orthogonalisierungsverfahren und die QR-Zerlegung

Die Diagonalelemente qii > 0 sind positiv. Da die Diagonalelemente einer Diagonalmatrixgerade die Eigenwerte der Matrix sind folgt aus |λ| = 1 (da Q orthogonal), dass λ = 1und somit Q = I.

Nun folgt Q1 = Q2 und somit ebenso R1 = R2. �

Der entscheidende Schritt zum Erstellen einer QR-Zerlegung ist die Orthogonalisierungeines Systems von n unabhängigen Vektoren a1, . . . , an ∈ Rn. Wir betrachten diese Tei-laufgabe daher in separaten Abschnitten.

4.2. Das Gram-Schmidt Verfahren

Das klassische Orthogonalisierungsverfahren ist das Gram-Schmidt Verfahren:

Satz 4.6 (Gram-Schmidt Orthonormalisierungsverfahren). Es sei durch {a1, . . . , an} dieBasis eines Vektorraums V gegeben, durch (·, ·) ein Skalarprodukt auf V mit induzierterNorm ‖ · ‖. Die Vorschrift:

(i) q1 := a1‖a1‖

,

(ii) i = 2, . . . , n : qi := ai −i−1∑j=1

(ai, qj)qj , qi := qi‖qi‖

,

erzeugt eine Orthonormalbasis {q1, . . . , qn} von V . Es gilt ferner:

(qi, aj) = 0 ∀1 ≤ j < i ≤ n.

Beweis: Wir führen den Beweis per Induktion. Für i = 1 ist a1 6= 0, da durch a1, . . . , ander ganze V aufgespannt wird. Für i = 2 gilt:

(q2, q1) = (a2, q1)− (a2, q1) (q1, q1)︸ ︷︷ ︸=1

= 0.

Aus der linearen Unabhängigkeit von a2 und q1 folgt, dass q2 6= 0. Es sei nun also (qj , qk) =δjk für k, j < i. Dann gilt für k < i beliebig

(qi, qk) = (ai, qk)−i−1∑j=1

(ai, qj) (qj , qk)︸ ︷︷ ︸=δjk

= (ai, qk)− (ai, qk) = 0.

Da span{q1, . . . , qj} = span{a1, . . . , aj} folgt auch (qi, aj) = 0 für j < i. �

Das Gram-Schmidt Verfahren ist einfach aufgebaut und beruht jeweils auf Projektioneneines Vektors auf bereits orthogonale Anteile. Der Aufwand des Verfahrens steigt mit derAnzahl der Vektoren in der Basis. In Schritt n des Verfahrens ist die Berechnung von n−1Skalarprodukten, von n− 1 Vektoradditionen sowie eine Normberechnung notwendig. Im

62

Page 71: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4.2. Das Gram-Schmidt Verfahren

Raum V = Rn beträgt die Anzahl der arithmetischen Operationen in Schritt n somitO(n2). Der Gesamtaufwand zur Orthogonalisierung von n Vektoren des Rn verhält sichwie O(n3).

Das grundlegende Problem des Gram-Schmidt Verfahrens ist seine Instabilität gegenüberRundungsfehlern. Wir betrachten hierzu ein Beispiel.Beispiel 4.7 (Gram-Schmidt). Im R3 betrachten wir die Basis

a1 =

11213

, a2 =

121314

, a3 =

131415

,dies sind gerade die Spaltenvektoren der Hilbert-Matrix. Wir gehen von dreistelliger Arith-metik aus

a1 =

10.5

0.333

, a2 =

0.50.3330.25

, a3 =

0.3330.250.2

.Schritt 1: Hier genügt Normalisierung. Bei dreistelliger Arithmetik in allen Zwischen-schritten gilt

q1 = a1‖a1‖

0.8570.4280.285

.Schritt 2: Bei Beachtung dreistelliger Arithmetik gilt

q2 = a2 − (a2, q1)q1 ≈ a2 − 0.642q1 ≈

−0.050.0580.067

.Normierung ergibt

q2 ≈

−0.490.5690.657

.Schritt 3: Es gilt

q3 = a3 − (a3, q1)q1 − (a3, q2)q2 ≈ q3− 0.449q1 − 0.11q2 ≈

0.00211−0.00476−0.000235

,bzw. nach Normierung

q3 =

0.405−0.914−0.0451

.Wir machen nun den Test und erhalten

(q1, q2, q2)T (q1, q2, q3) ≈

1 0.01 −0.0570.01 1 −0.75−0.057 −0.75 1

=: I ,

anstelle der Einheitsmatrix I. Es ergibt sich somit ein relativer Fehler von 75%.

63

Page 72: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4. Orthogonalisierungsverfahren und die QR-Zerlegung

Weiter betrachten wir nun beispielhaft die Erstellung einer QR-Zerlegung mit Hilfe desGram-Schmidt-Verfahrens:

Beispiel 4.8 (QR-Zerlegung mit Gram-Schmidt). Es sei das LGS Ax = b mit

A :=

1 1 10.01 0 0.01

0 0.01 0.01

, b :=

10

0.02

,und exakter Lösung

x =

−111

gegeben. Wir bestimmen mit dem Gram-Schmidt Verfahren aus den Spaltenvektoren A =(a1, a2, a3) die entsprechende Orthonormalbasis. Bei dreistelliger Genauigkeit erhalten wir:

q1 = q1‖q1‖

10.01

0

.Weiter:

q2 = a2 − (a2, q1)q1 ≈ a2 − q1 =

0−0.010.01

, q2 = q2‖q2‖

0−0.7090.709

.Schließlich:

q3 = a3 − (a3, q1)q1 − (a3, q2)q2 ≈ a3 − q1 − 0 =

00

0.01

, q3 =

001

.Die QR-Zerlegung ergibt sich mit der “orthogonalen Matrix”

Q =

1 0 00.01 −0.709 0

0 0.709 1

,sowie der rechten oberen Dreiecksmatrix R mit rij = (qi, aj) für j ≥ i:

R :=

(q1, a1) (q1, a2) (q1, a3)0 (q2, a2) (q2, a3)0 0 (q3, a3)

≈1 1 1

0 0.00709 00 0 0.01

.Wir lösen mit Hilfe der QR-Zerlegung Rx = QT b, also1 1 1

0 0.00709 00 0 0.01

x1x2x3

= b = QT b ≈

10.01420.02

64

Page 73: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4.2. Das Gram-Schmidt Verfahren

Es folgt

x =

−322

mit dem relativen Fehler von 140%

‖x− x‖2‖x‖2

≈ 1.41.

Bei der Lösung des Gleichungssystems mit dieser gestörten Matrix entsteht ein sehr großerFehler. Dies liegt daran, dass die Matrix Q nur eine sehr gestörte Orthogonalität aufzeigt:

I!= QT Q ≈

1 −0.00709 0−0.00709 1.01 0.709

0 0.709 1

, ‖QT Q− I‖2 ≈ 0.7.

Die QR-Zerlegung hat prinzipiell bessere Stabilitätseigenschaften als die LR-Zerlegung, dadie Matrix R höchsten die Konditionszahl der Matrix A trägt. Diese Überlegung gilt jedochnur dann, wenn Q und R fehlerfrei erzeugt werden können. Das einfache Gram-Schmidt-Verfahren eignet sich nicht, um die orthogonale Matrix Q zu erstellen. In den folgendenAbschnitten werden wir alternative Orthogonalisierungsverfahren vorstellen, die selbst aufder Anwendung gut konditionierter Operationen beruhen. Zunächst gehen wir noch kurzauf eine Variante des Gram-Schmidt-Verfahrens ein.

Die schlechte Stabilität des Gram-Schmidt Verfahrens kann in Analogie zum Horner-Schema der Polynomauswertung erklärt werden. Die schlechte Stabilität der Polynom-auswertung in Monomdarstellung kommt von der Reihenfolge der Operationen: werdenzunächst alle Monome erstellt und im Anschluss addiert, so folgen die Additionen spätim Verfahren. Das Horner-Schema wechselt stets zwischen Addition und Multiplikation.Eine entsprechende Modifikation des Gram-Schmidt Verfahrens ist ebenso möglich: derOrthogonalisierungsschritt

qi := ai −i−1∑j=1

(ai, qj)qj ,

wird durch eine iterative Vorschrift ersetzt:

q0i := ai, k = 1, . . . , i− 1 : q

(k)i = q

(k−1)i − (q(k−1)

i , qk)qk, qi := q(i−1)i .

Auf diese Weise werden neu entstehende Fehler stets bei der Projektion berücksichtigt. Soergibt sich:

65

Page 74: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4. Orthogonalisierungsverfahren und die QR-Zerlegung

Satz 4.9 (Modifiziertes Gram-Schmidt Orthonormalisierungsverfahren). Es sei durch{a1, . . . , an} eine Basis eines Vektorraums V gegeben, durch (·, ·) ein Skalarprodukt mitinduzierter Norm ‖ · ‖. Die Vorschrift:

(i) q1 := a1‖a1‖

,

i = 2, . . . , n : (ii) q(0)i := ai

k = 1, . . . , i− 1 : q(k)i := q

(k−1)i − (q(k−1)

i , qk)qk

qi := q(i−1)i

‖q(i−1)i ‖

,

erzeugt eine Orthonormalbasis {q1, . . . , qn} von V . Es gilt ferner:

(qi, aj) = 0 ∀1 ≤ j < i ≤ n.

Der Beweis kann entsprechend zu Satz 4.6 durchgeführt werden.

Wir führen nun mit dieser Modifikation das obige Beispiel erneut durch.

Beispiel 4.10 (Modifiziertes Gram-Schmidt Verfahren). Schritt 1 liefert wie oben beidreistelliger Arithmetik:

q1 = a1‖a1‖

0.8570.4280.285

.Schritt 2 erfolgt auch wie im Fall des üblichen Gram-Schmidt Verfahrens:

q2 = a2 − (a2, q1)q1 ≈ a2 − 0.642q1 ≈

−0.050.0580.067

.Normierung ergibt

q2 ≈

−0.490.5690.657

.Schritt 3: Zunächst ist q(0)

3 = a3. Dann ist

q(1)3 = q

(0)3 − (q(0)

3 , q1)q1 ≈ q(0)3 − 0.449q1 ≈

−0.05180.05780.072

,und weiter

q(2)3 = q

(1)3 − (q(1)

3 , q2)q2 ≈ q(1)3 − 0.106q2 ≈

0.00014−0.002510.00236

66

Page 75: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4.2. Das Gram-Schmidt Verfahren

Schließlich liefert die Normierung

q3 ≈

0.0406−0.7280.684

.Der Test auf Orthonormalität ergibt

(q1, q2, q3)T (q1, q2, q3) =

1 0.01 −0.080.01 1 −0.015−0.08 −0.015 1

=: I ,

so dass der relative Fehler im Ergebnis auf 8% reduziert werden kann.

Entsprechend wiederholen wir die Zerlegung der QR-Zerlegung der Matrix A aus Bei-spiel 4.8, nun mit Hilfe des modifizierten Gram-Schmidt-Verfahrens:

Beispiel 4.11 (QR-Zerlegung mit modifiziertem Gram-Schmidt). Es sei wieder das LGS

A :=

1 1 10.01 0 0.01

0 0.01 0.01

, b :=

10

0.02

,mit Lösung

x =

−111

gegeben. Wir bestimmen mit dem modifizierten Gram-Schmidt Verfahren aus den Spalten-vektoren A = (a1, a2, a3) die entsprechende Orthonormalbasis. Bei dreistelliger Genauig-keit erhalten wir:

q1 = q1‖q1‖

10.01

0

.Weiter:

q2 = q2 − (a2, q1)q1 ≈ a2 − q1 =

0−0.010.01

, q2 = q2‖q2‖

0−0.7090.709

.Schließlich:

q(1)3 = a3 − (a3, q1)q1 ≈

00

0.01

, q(2)3 = q

(1)3 − (q(1)

3 , q2)q2 ≈

00.005030.00497

,und also

q3 := q(2)3

‖q(2)3 ‖≈

00.7090.701

67

Page 76: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4. Orthogonalisierungsverfahren und die QR-Zerlegung

Die QR-Zerlegung ergibt sich mit der “orthogonalen Matrix”

Q =

1 0 00.01 −0.709 0.709

0 0.709 0.701

,sowie der rechten oberen Dreiecksmatrix R mit rij = (qi, aj) für j ≥ i:

R :=

(q1, a1) (q1, a2) (q1, a3)0 (q2, a2) (q2, a3)0 0 (q3, a3)

≈1 1 1

0 0.00709 00 0 0.0141

.Wir Lösen das System R = QT b:1 1 1

0 0.00709 00 0 0.0141

x1x2x3

= QT b = b ≈

10.01420.014

mit der Lösung

x =

−221

einen relativen Fehler von 80%

‖x− x‖2‖x‖2

= 0.82.

Für die Matrix Q gilt hier:

QTQ =

1 −0.00709 0.00709−0.00709 1.01 −0.0060.00709 −0.006 0.994

, ‖QTQ− I‖2 ≈ 0.017.

Obwohl die Matrix Q eine sehr gute Orthogonalitätseigenschaft hat, eignet sich die Zerle-gung A = QR nicht zum Lösen des linearen Gleichungssystems Ax = b. Dies liegt hier andem großen Fehler in der Matrix R. Die Matrix Q hat zwar – in sich – gute Orthogonalität,nicht jedoch in Bezug auf die Spaltenvektoren von A.

4.3. Householder-Transformationen

Das geometrische Prinzip hinter dem Gram-Schmidt Verfahren ist die Projektion der Vek-toren ai auf die bereits erstellte Orthogonalbasis q1, . . . , qi−1. Diese Projektion ist schlechtkonditioniert, falls ai fast parallel zu den qj mit j < i, etwa ai ≈ qj ist. Dann droht Auslö-schung. Wir können einen Schritt des Gram-Schmidt Verfahrens kompakt mit Hilfe einesMatrix-Vektor Produktes schreiben (komponentenweise nachrechnen!)

qi = [I −G(i)]ai, G(i) =i−1∑l=1

qlqTl ,

68

Page 77: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4.3. Householder-Transformationen

mit dem dyadischen Produkt zweier Vektoren vvT ∈ Rn×n. Die Matrix [I − G(i)] ist eineProjektion auf Rn → Rn, denn:

[I −G(i)]2 = I − 2i−1∑l=1

qlqTl +

i−1∑k,l=1

ql qTl qk︸ ︷︷ ︸

=δlk

qTk = [I −G(i)].

Weiter gilt:

[I −G(i)]qk = qk −i−1∑l=1

ql qTl qk︸ ︷︷ ︸

=δlk

= 0, k < i.

Die Matrix I −G(i) ist also nicht regulär. Falls in Schritt i der Vektor ai fast parallel zuden bereits orthogonalen Vektoren ist, also ai ∈ δai + span{q1, . . . , qi−1}, so gilt

qi = [I −G(i)]ai = [I −G(i)]δai ⇒ ‖δqi‖‖qi‖

= ‖δqi‖‖[I −Gi]δai‖

.

Bei δai → 0 ist eine beliebig große Fehlerverstärkung möglich. Man vergleiche Bemer-kung 3.2 zur Konditionierung der Matrix-Vektor Multiplikation (bei regulärer Matrix).

Im Folgenden suchen wir eine Transformation von A zu einer Dreiecksmatrix R, die selbstauf orthogonalen Operationen aufbaut. Eine orthogonale MatrixQ ∈ Rn×n mit det(Q) = 1stellt eine Drehung dar und bei det(Q) = −1 eine Spiegelung (oder eine Drehspiegelung).Die Householder-Transformationen nutzen das Prinzip der Spiegelung, um eine MatrixA ∈ Rn×n in eine rechte obere Dreiecksmatrix zu transformieren.

Definition 4.12 (Householder-Transformation). Für einen Vektor v ∈ Rn mit ‖v‖2 = 1ist durch vvT das dyadische Produkt definiert und die Matrix

S := I − 2vvT ∈ Rn×n,

heißt Householder-Transformation.

Es gilt:

Satz 4.13 (Householder-Transformation). Jede Householder-Transformation S = I −2vvT mit ‖v‖2 = 1 ist symmetrisch und orthogonal. Das Produkt zweier Householder-Transformationen S1S2 ist wieder eine orthogonale Matrix.

Beweis: (i) Es gilt Symmetrie:

ST = [I − 2vvT ]T = I − 2(vvT )T = I − 2vvT = S.

Weiter gilt:STS = I − 4vvT + 4v vT v︸︷︷︸

=1

vT = I,

69

Page 78: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4. Orthogonalisierungsverfahren und die QR-Zerlegung

a1

−‖a1‖2e1 ‖a1‖2e1

~v=a1 − ‖a1‖e1 ~v+ = a1 + ‖a1‖e1

~v−

~v+

Abbildung 4.1.: Spiegelungsachsen (gestrichelt) und Normalen zur Spiegelung v+ und v−zur Spiegelung von a1 auf span{e1}.

d.h. S−1 = ST und S ist orthogonal.

(ii) Mit zwei symmetrischen orthogonalen Matrizen S1 sowie S2 gilt:

(S1S2)T = ST2 ST1 = S−1

2 S−11 = (S1S2)−1,

so dass das Produkt S1S2 eine orthogonale Matrix ist. Wir haben hierfür nur die Ortho-gonalität von S1 und S2 genutzt. �

Wir schließen die grundlegende Untersuchung der Householder-Transformationen mit einergeometrischen Charakterisierung ab:

Bemerkung 4.14 (Householder-Transformation als Spiegelung). Es sei v ∈ Rn ein belie-biger normierter Vektor mit ‖v‖2 = 1. Weiter sei x ∈ Rn gegeben mit x = αv+w⊥, wobeiw⊥ ∈ Rn ein Vektor mit vTw⊥ = 0 im orthogonalen Komplement zu v ist. Dann gilt fürdie Householder-Transformation S := I − 2vvT :

S(αv + w⊥) = [I − 2vvT ](αv + w⊥) = α(v − 2v vT v︸︷︷︸=1

) + w⊥ − 2v vTw⊥︸ ︷︷ ︸=0

= −αv + w⊥.

D.h., die Householder-Transformation beschreibt eine Spiegelung an der auf v senkrechtstehenden Ebene.

Mit Hilfe der Householder-Transformationen soll eine Matrix A ∈ Rn×n nun Schritt fürSchritt in eine rechte obere Dreiecksmatrix transformiert werden:

A(0) := A, A(i) = S(i)A(i−1), S(i) = I − 2v(i)(v(i))T ,

mit R := A(n−1). Wir beschreiben den ersten Schritt des Verfahrens: Die reguläre MatrixA ∈ Rn×n soll durch Multiplikation mit einer orthogonalen Householder-Transformationso transformiert werden, dass

A(1) := S(1)A, (A(1))ij = a(1)ij ,

70

Page 79: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4.3. Householder-Transformationen

dass a(1)i1 = 0 für alle i > 1 gilt (d.h. für die Elemente unterhalb der ersten Diagonale).

Hierzu schreiben wir die Matrix A = (a1, a2, . . . , an) mit ihren Spaltenvektoren. Dann istA(1) = (a(1)

1 , . . . , a(1)n ) mit a(1)

i := S(1)ai. Wir suchen die Householder-Transformation S(1),so dass gilt:

e1!= a

(1)1 = S(1)a1.

Hierzu müssen wir auf der Ebene senkrecht zu a1 ± ‖a1‖e1 spiegeln, siehe Abbildung 4.1.Zur Bestimmung des Spiegelungs-Vektor haben wir durch die Wahl des Vorzeichens zweiMöglichkeiten. Aus Stabilitätsgrunden wählen wir

v(1) := a1 + sign(a11)‖a1‖e1∥∥a1 + sign(a11)‖a1‖e1∥∥ , (4.4)

um durch optimale Wahl des Vorzeichens die Gefahr von Auslöschung zu vermeiden. Mitdieser Wahl gilt:

a(1)i = S(1)ai = ai − 2(v(1), ai)v(1), i = 2, . . . , n, a

(1)1 = − sign(a11)‖a1‖e1. (4.5)

Die resultierende Matrix A(1) ist wieder regulär und es gilt a(1)1 ∈ span(e1):

A :=

a11 a12 a13 · · · a1n

a21 a22. . . ...

a31 a32. . . . . . ...

... . . . ...an1 an2 · · · · · · ann

→ A(1) := S(1)A =

a(1)11 a

(1)12 a

(1)13 · · · a

(1)1n

0 a(1)22

. . . ...

0 a(1)32

. . . . . . ...... . . . ...0 a

(1)n2 · · · · · · a

(1)nn

.

Wir setzen das Verfahren mit der Teilmatrix A(1)kl>1 fort. Hierzu sei der verkürzte zweite

Spaltenvektor definiert als a(1) = (a(1)22 , a

(1)32 , . . . , a

(1)n2 )T ∈ Rn−1. Dann wählen wir:

Rn−1 3 v(2) := a(1) + sign(a(1)22 )‖a(1)‖e1∥∥a(1) + sign(a(1)22 )‖a(1)‖e1

∥∥ , S(2) =

1 0 · · · · · · 00

I − 2v(2)(v(2))T0...0

∈ Rn×n.

Multiplikation mit S(2) von links, also A(2) := S(2)A(1) lässt die erste Zeile unverändert.Eliminiert wird der Block A(1)

kl>1. Für die resultierende Matrix A(2) gilt a(2)kl = 0 für l = 1, 2

und k > l. Nach n− 1 Schritten gilt:

R := S(n−1)S(n−2) · · ·S(1)︸ ︷︷ ︸=:QT

A.

Alle Transformationen sind orthogonal, somit ist auch Q ∈ Rn×n eine orthogonale (undnatürlich reguläre) Matrix (siehe Satz 4.2).

Wir fassen zusammen:

71

Page 80: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4. Orthogonalisierungsverfahren und die QR-Zerlegung

Satz 4.15 (QR-Zerlegung mit Householder-Transformationen). Es sei A ∈ Rn×n einereguläre Matrix. Dann lässt sich die QR-Zerlegung von A nach Householder in

2n3

3 +O(n2)

arithmetischen Operationen numerisch stabil durchführen.

Beweis: Die Durchführbarkeit der QR-Zerlegung geht aus dem Konstruktionsprinzip her-vor. Aus der Regularität der Matrizen A(i) folgt, dass der Teilvektor a(i) ∈ Rn−i ungleichNull sein muss. Dann ist v(i) gemäß (4.4) wohl definiert. Die folgende Elimination wirdmit (4.5) spaltenweise durchgeführt:

a(i+1)k = [I − 2v(i)(v(i))T ]︸ ︷︷ ︸

=S(i)

a(i)k = a

(i)k − 2(v(i), a

(i)k )v(i).

Die numerische Stabilität folgt aus cond2(S(i)) = 1, siehe Bemerkung 3.2.

Wir kommen nun zur Abschätzung des Aufwands. Im Schritt A(i) → A(i+1) muss zunächstder Vektor v(i) ∈ Rn−i berechnet werden. Hierzu sind 2(n−i)+2 arithmetische Operationennotwendig. Im Anschluss erfolgt die spaltenweise Elimination. (Es wird natürlich nicht dieMatrix S(i) aufgestellt und die Matrix-Matrix Multiplikation durchgeführt!) Für jedender n − i Spaltenvektoren ist ein Skalarprodukt (v(i), a(i)) (das sind n − i arithmetischeOperationen) sowie eine Vektoraddition und die Multiplikation von (v(i), a(i)) mit v(i)

(weitere n − i arithmetische Operationen) durchzuführen. Insgesamt ergibt sich so derAufwand:

NQR = 2n−1∑i=1

(n− i) + (n− i)2 = n(n− 1) + n(n− 1)(2n− 1)3 = 2n3

3 +O(n2).

72

Page 81: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4.3. Householder-Transformationen

Bemerkung 4.16 (QR-Zerlegung mit Householder-Transformationen). Die Householder-Matrizen S(i) = I − 2v(i)(v(i))T werden nicht explizit aufgestellt. Auch muss das Produkt

Q := (S(1))T · · · (S(n−1))T ,

aus Effizienzgründen nicht explizit berechnet werden. Die Matrix Q steht nur implizit zurVerfügung durch Speichern der Vektoren v(i). Mit implizit meint man, dass etwa zur Be-rechnung des Produktes b := QT b (ist notwendig zum Lösen der Gleichungssysteme) dieHouseholder-Transformationen erneut Schritt für Schritt angewendet werden müssen:

b = QT b = S(n−1) · · ·S(1)b.

Jedes Produkt wird mittels der Vorschrift (4.4) berechnet, ohne dass die Matrizen S(i)

explizit aufgestellt werden:

b(0) := 0, i = 1, . . . , n− 1 : b(i+1) := b(i) − 2(v(i), b(i))v(i), b := b(n).

Neben der oberen Dreiecksmatrix R müssen die Vektoren v(i) ∈ Rn−i gespeichert werden.Im Gegensatz zur LR-Zerlegung kann dies nicht alleine im Speicherplatz der Matrix Ageschehen, da sowohl R als auch die v(i) die Diagonale besetzen. Bei der praktischenRealisierung muss ein weiterer Diagonalvektor angelegt werden.

Abschließend berechnen wir die QR-Zerlegung zu Beispiel 4.8 mit Hilfe der Householder-Transformationen:

Beispiel 4.17 (QR-Zerlegung mit Householder-Transformationen). Es sei wieder das LGS

A :=

1 1 10.01 0 0.01

0 0.01 0.01

, b :=

10

0.02

,mit Lösung

x =

−111

gegeben. Wir wählen mit a1 = (1, 0.01, 0)T und ‖a1‖ ≈ 1 den ersten Vektor zur Spiegelungals:

v(1) = a1 + ‖a1‖e1‖a1 + ‖a1‖e1‖

10.005

0

.Hiermit ergibt sich (wird eigentlich nicht benötigt!)

S(1) = I − 2v(1)(v(1))T ≈

−1 −0.01 0−0.01 1 0

0 0 1

,

73

Page 82: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4. Orthogonalisierungsverfahren und die QR-Zerlegung

und die neuen Spaltenvektoren ergeben sich zu:

a(1)1 = −‖a1‖e1 ≈ −e1,

a(1)2 = a2 − 2(v(1), a2)v(1) ≈ a2 − 2v(1),

a(1)3 = a3 − 2(v(1), a3)v(1) ≈ a3 − 2v(1),

⇒ A(1) =

−1 −1 −10 −0.01 00 0.01 0.01

.

Wir fahren mit der Teilmatrix A(1)kl>1 fort und wählen mit a(1)

2 = (−0.01, 0.01)T (manbeachte das Vorzeichen sign(a(1)

22 ) =“-”)

v(2) = a(1)2 − ‖a

(1)2 ‖e2

‖a(1)2 − ‖a

(1)2 ‖e2‖

≈(−0.9240.383

).

Damit ergibt sich als Householder-Transformation

I − 2v(2)(v(2))T ≈ S(2) =(−0.708 0.7080.708 0.707

), S(2) =

1 0 00 −0.708 0.7080 0.708 0.707

.Wir erhalten:

a(2)2 = ‖a(1)

1 ‖e2,

a(2)3 = a

(1)3 − 2(a(1)

3 , v(2))v(2) ≈ a(1)3 − 2 · 0.00383v(2),

⇒ A(2) =

−1 −1 −10 0.0141 0.007080 0 0.00707

.Zur Probe berechnen wir QT = S(2)S(1) (mit dreistelliger Genauigkeit):

QT ≈

−1 −0.01 00.00708 −0.708 0.708−0.00708 0.708 0.707

.Bei dreistelliger Genauigkeit gilt für das Produkt QTQ ≈ I:

QTQ ≈

1 0 00 1 −7.58 · 10−4

0 −7.58 · 10−4 1

.Dies entspricht einem relativen Fehler ‖QTQ− I‖2 ≤ 7.58 · 10−4 im Rahmen der Rechen-genauigkeit. Wir lösen das System−1 −1 −1

0 0.0141 0.007080 0 0.00707

x1x2x3

= QT b ≈

10.02120.0706

,mit der Lösung

x =

−0.9960.9980.999

,

74

Page 83: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4.4. Givens-Rotationen

und einem relativen Fehler von 0.25%, ‖x− x‖2/‖x‖2 ≈ 0.0025.

Man vergleiche abschließend das Resultat mit dem vorherigen Ergebnissen. Das Glei-chungssystem kann auf drei Stellen Genauigkeit gelöst werden! Richtig durchgeführt istdie QR-Zerlegung ein numerisch sehr stabiles Verfahren.

4.4. Givens-Rotationen

Das Gram-Schmidt Verfahren basiert auf Projektionen, die Householder-Transformationensind Spiegelungen. Schließlich stellen wir kurz eine Methode vor, die auf Rotationen beruht.Wir definieren:

Definition 4.18 (Givens-Rotation). Unter einer Givens-Rotation im Rn versteht mandie Drehung um den Winkel θ in der durch zwei Einheitsvektoren ei und ej aufgespanntenEbene. Die Transformationsmatrix ist gegeben durch:

G(i, j, θ) =

1. . .

1c −s

. . .s c

1. . .

1

, c := cos(θ), s := sin(θ).

Es gilt:

Satz 4.19 (Givens-Rotation). Die Givens-Rotation G(i, j, θ) ist eine orthogonale Matrixmit det(G) = 1. Es ist G(i, j, θ)−1 = G(i, j,−θ).

Beweis: Nachrechnen. �

Wie die Householder-Transformationen sind die Givens-Rotationen orthogonale Matrizen.Die Multiplikation von links an eine Matrix, also GA oder einen Vektor, also Gx ändert

75

Page 84: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4. Orthogonalisierungsverfahren und die QR-Zerlegung

nur die i-te und j-te Zeile von A, bzw. von x:

G(i, j, θ)A =

a11 · · · a1n... . . . ...

ai−1,1 · · · ai−1,ncai1 − saj1 · · · cain − sajnai+1,1 · · · ai+1,n

... . . . ...aj−1,1 · · · aj−1,n

sai1 + caj1 · · · sain + cajnaj+1,1 · · · aj+1,n

... . . . ...an1 · · · ann

.

Die QR-Zerlegung auf der Basis von Givens-Rotationen transformiert die Matrix A wiederschrittweise in eine obere rechte Dreiecksmatrix R. Durch Anwenden einer Givens-Rotationkann jedoch nur ein einzelnes Unterdiagonalelement eliminiert werden und nicht eine ganzeSpalte:

∗ ∗ ∗ ∗∗ ∗ ∗ ∗∗ ∗ ∗ ∗∗ ∗ ∗ ∗

→∗ ∗ ∗ ∗0 ∗ ∗ ∗∗ ∗ ∗ ∗∗ ∗ ∗ ∗

→∗ ∗ ∗ ∗0 ∗ ∗ ∗0 ∗ ∗ ∗∗ ∗ ∗ ∗

→∗ ∗ ∗ ∗0 ∗ ∗ ∗0 ∗ ∗ ∗0 ∗ ∗ ∗

∗ ∗ ∗ ∗0 ∗ ∗ ∗0 0 ∗ ∗0 ∗ ∗ ∗

→∗ ∗ ∗ ∗0 ∗ ∗ ∗0 0 ∗ ∗0 0 ∗ ∗

→∗ ∗ ∗ ∗0 ∗ ∗ ∗0 0 ∗ ∗0 0 0 ∗

.Wir betrachten einen Schritt des Verfahrens. Dazu sei die Matrix A gegeben in der Form:

A =

a11 · · · · · · · · · · · · a1n

0 . . . . . . ...... . . . aii

...... 0 ai+1,i+1

......

......

...... 0

......

... aji... . . . ...

......

......

0 · · · ani an,i+1 · · · ann.

Wir suchen die Givens-Rotation G(i, j, θ) zur Elimination von aji. Für GA gilt:

(G(i, j, θ)A)ji = saii + caji, c := cos(θ), s := sin(θ).

76

Page 85: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4.4. Givens-Rotationen

Anstelle den Winkel θ zu finden bestimmen wir gleich die Werte c und s mit dem Ansatz

saii + caji = 0, c2 + s2 = 1 ⇒ c := aii√a2ii + a2

ji

, s := − aji√a2ii + a2

ji

.

Anwendung von G(i, j, θ) auf A ergibt:

(G(i, j, θ)A)ji = −ajiaii + aiiaji√a2ii + a2

ji

= 0, (G(i, j, θ)A)ii =a2ii + a2

ji√a2ii + a2

ji

=√a2ii + a2

ji.

Das Element aji wird eliminiert. Zur Elimination der i-ten Spalte (unterhalb der Diago-nale) sind (n− i) Givens-Rotationen notwendig. Hieraus lässt sich leicht abschätzen, dassder Aufwand zum Erstellen der QR-Zerlegung nach Givens großer ist als der Aufwandbei Verwenden der Householder-Transformationen. Genaue Analyse und effiziente Durch-führung führt zu 4n3

3 + O(n2) arithmetische Operationen, also dem doppelten Aufwandverglichen mit der Householder-Methode.

Die QR-Zerlegung nach Givens gewinnt aber an Bedeutung, wenn die Matrix A bereitsdünn besetzt ist. Nur Unterdiagonalelemente aji 6= 0 müssen gezielt eliminiert werden. Beisogenannten Hessenberg-Matrizen (das sind rechte obere Dreiecksmatrizen, die zusätzlichnoch eine linke Nebendiagonale besitzen) kann die QR-Zerlegung mit Givens-Rotationen innur O(n2) Operationen durchgeführt werden. Die QR-Zerlegung von Hessenberg-Matrizenspielt die entscheidende Rolle bei dem wichtigsten Verfahren zur Berechnung von Eigen-werten einer Matrix, siehe Abschnitt 6.

Beispiel 4.20 (QR-Zerlegung nach Givens). Wie in Beispielen 4.8 und 4.17 sei wiederdie folgende Matrix gegeben:

A :=

1 1 10.01 0 0.01

0 0.01 0.01

Wir führen alle Rechnungen mit dreistelliger Genauigkeit durch. Zur Elimination vona21 = 0.01 ist:

c(1) = 1√1 + 0.012

≈ 1, s(1) = − 0.01√1 + 0.012

≈ −0.01,

d.h.

G(1) =

1 0.01 0−0.01 1 0

0 0 1

, A(1) = G(1)A ≈

1 1 10 −0.01 00 0.01 0.01

Im zweiten Schritt wählen wir zur Elimination von a(1)

32 = 0.01

c(2) = −0.01√0.012 + 0.012

≈ −0.707, s(2) = − 0.01√0.012 + 0.012

≈ −0.707,

77

Page 86: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

4. Orthogonalisierungsverfahren und die QR-Zerlegung

also

G(2) =

1 0 00 −0.707 0.7070 −0.707 −0.707

, A(2) = G(2)A(1) ≈

1 1 10 0.0141 0.007070 0 −0.00707

= R.

Zur Probe berechnen wir zunächst Q := (G(1))T (G(2))T :

Q =

1 0.00707 0.007070.01 −0.707 −0.707

0 0.707 −0.707

.Die Matrizen Q sowie R sind nahezu identisch zu denen der Householder-Transformationin Beispiel 4.17. Daher ist auch die Genauigkeit der Approximation entsprechend gut:

QT Q =

1.0001 0 00 0.99975 5 · 10−5

0 5 · 10−5 0.99975

, QR ≈

1 1 10.01 3 · 10−5 0.01

0 0.00997 0.009997

,mit relativen Fehlern ‖QR−A‖2/‖A‖2 ≈ 0.00002 sowie ‖QT Q− I‖2 ≈ 0.0003.

78

Page 87: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

5. Überbestimmte Gleichungssysteme unddie Gauß’sche Ausgleichrechnung

In vielen Anwendungen treten lineare Gleichungssysteme auf, die eine unterschiedlicheAnzahl von Gleichungen und Unbekannten besitzen:

Ax = b, A ∈ Rn×m, x ∈ Rm, b ∈ Rn, n 6= m.

Im Fall n > m sprechen wir von überbestimmten Gleichungssystemen, im Fall n < mvon unterbestimmten Gleichungssystemen. Die Untersuchung der eindeutigen Lösbarkeitvon allgemeinen Gleichungssystemen mit rechteckiger Matrix A kann nicht mehr an derenRegularität ausgemacht werden. Stattdessen wissen wir, dass ein Gleichungssystem genaudann lösbar ist, falls der Rang der Matrix A gleich dem Rang der erweiterten Matrix(A|b) ist. Gilt zusätzlich rang(A) = m, so ist die Lösung eindeutig. Ein unterbestimmteslineares Gleichungssystem kann daher nie eindeutig lösbar sein. Wir betrachten in diesemAbschnitt ausschließlich überbestimmte Gleichungssysteme, d.h. den Fall n > m. Einsolches Gleichungssystem ist im allgemeinen Fall nicht lösbar:

Beispiel 5.1 (Überbestimmtes Gleichungssystem). Wir suchen das quadratische Interpo-lationspolynom

p(x) = a0 + a1x+ a2x2,

gegeben durch die Vorschrift:

p

(−1

4

)= 0, p

(12

)= 1, p(2) = 0, p

(52

)= 1.

Dies ergibt die vier Gleichungen:

a0 − 14a1 + 1

16a2 = 0a0 + 1

2a1 + 14a2 = 1

a0 + 2a1 + 4a2 = 0a0 + 5

2a1 + 254 a2 = 1

Wir versuchen, das lineare Gleichungssystem mit Gauß-Elimination zu lösen:

1 −14

116 0

1 12

14 1

1 2 4 01 5

2254 1

1 −14

116 0

0 3 34 4

0 9 634 0

0 11 994 4

1 −14

116 0

0 3 3 40 0 27

2 −120 0 22 −32

4

.

D.h., es müsste gelten a2 = −8/9 ≈ −0.89 sowie a2 = −4/11 ≈ −0.36.

79

Page 88: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

5. Überbestimmte Gleichungssysteme und die Gauß’sche Ausgleichrechnung

In Kapitel 9 werden wir sehen, dass dieses Ergebnis zu erwarten ist, zur eindeutigenInterpolation von n + 1 Punkten durch ein Polynom, ist dieses vom Grad n zu wählen.Bei allgemeinen überbestimmten Gleichungssystemen muss daher die Zielstellung geändertwerden: gesucht wird nicht die Lösung des Gleichungssystems, sondern ein Vektor x ∈ Rm,welcher in gewissem Sinne die beste Approximation ist. Wie gut die Approximation ist,können wir am Defekt festmachen

d(x) = b−Ax ∈ Rn.

Eine beste Approximation x ∈ Rm ist diese, die den Defekt in einer Norm minimiert:

‖b−Ax‖ = miny∈Rm

‖b−Ay‖.

Unterschiedliche Normen werden unterschiedliche Bestapproximationen definieren. Fürden folgenden Satz ist es wesentlich, die euklidische Norm, induziert vom euklidischenSkalarprodukt, zu betrachten:

Definition 5.2 (Methode der kleinsten Fehlerquadrate, Least-Squares). Es sei A ∈ Rn×mmit n > m und b ∈ Rn. Die Least-Squares Lösung x ∈ Rm ist als die Näherung an Ax = bbestimmt, deren Defekt die kleinste euklidische Norm annimmt:

‖b−Ax‖2 = miny∈Rm

‖b−Ay‖2 (5.1)

Die Suche nach einer Least-Squares Lösung ist eng mit der Bestapproximation von Funk-tionen verwandt, also der Approximation von Messwerten mit einfachen Funktionen (dem“fitten”), eine Aufgabe, die wir in Kapitel 9 betrachten werden. Es gilt:

Satz 5.3 (Kleinste Fehlerquadrate). Angenommen für die Matrix A ∈ Rn×m mit n > mgilt rang(A) = m. Dann ist die Matrix ATA ∈ Rm×m positiv definit und die Least-Squares-Lösung x ∈ Rm ist eindeutig bestimmt als Lösung des Normalgleichungssystems:

ATAx = AT b.

Beweis: (i) Es gilt rang(A) = m. D.h. Ax = 0 gilt nur dann, wenn x = 0. Hieraus folgtdie positive Definitheit der Matrix ATA:

(ATAx, x)2 = (Ax,Ax)2 = ‖Ax‖22 > 0 ∀x 6= 0,

und das Gleichungssystem ATAx = AT b ist für jede rechte Seite b ∈ Rn eindeutig lösbar.

(ii) Es sei x ∈ Rm die Lösung des Normalgleichungssystems. Dann gilt für beliebigesy ∈ Rm:

‖b−A(x+ y)‖22 = ‖b−Ax‖22 + ‖Ay‖22 − 2(b−Ax,Ay)2

= ‖b−Ax‖22 + ‖Ay‖22 − 2(AT b−ATAx︸ ︷︷ ︸=0

, y)2

≥ ‖b−Ax‖22.

80

Page 89: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

(iii) Nun sei x das Minimum von (5.1). D.h., es gilt für beliebigen Vektor y:

‖b−Ax‖22 ≤ ‖b−A(x+ y)‖22 = ‖b−Ax‖22 + ‖Ay‖22 − 2(b−Ax,Ay)2 ∀y ∈ Rm.

Hieraus folgt:2(AT b−ATAx, y)2 ≤ ‖Ay‖22.

Wir wählen y als y = sei mit dem i-ten Einheitsvektor und s ∈ R. Dann folgt

2s(AT b−ATAx)i ≤ |s|2‖A‖2 ⇒ |(AT b−ATAx)i| ≤ |s|‖A‖2.

Für s→ 0 folgt ATAx = AT b. �

Die beste Approximation eines überbestimmten Gleichungssystems kann durch Lösen desNormalgleichungssystems gefunden werden. Der naive Ansatz, die Matrix ATA zu bestim-men und dann das Normalgleichungsystem etwa mit dem Cholesky-Verfahren zu lösen istnumerisch nicht ratsam. Zunächst ist der Aufwand zur Berechnung von ATA sehr großund die Berechnung der Matrix-Matrix Multiplikation ist schlecht konditioniert. Weitergilt die Abschätzung:

cond(ATA) ≈ cond(A)2.

Wir lösen mit dieser Methode das überbestimmte Gleichungssystem aus Beispiel 5.1:

Beispiel 5.4 (Lösen der Normalgleichung). Die exakte Lösung des Normalgleichungssys-tems ATAx = AT b ist gegeben durch:

x ≈

0.34250.3840−0.1131

, p(x) = 0.3425 + 0.3740x− 0.1131x2.

Es gilt:‖b−Ax‖2 ≈ 0.947.

Wir stellen das Normalgleichungssystem mit dreistelliger Rechnung auf:

ATA =

4 4.75 10.64.75 10.6 23.710.6 23.7 55.1

, AT b =

23

6.5

.Die exakte Lösung ist bestimmt durch die Polynomkoeffizienten x = (a0, a1, a2)T sowie dasPolynom p(x) = a0 + a1x+ a2x

2:

Wir bestimmen die Cholesky-Zerlegung mit dem direkten Verfahren:

l11 =√

4 = 2l21 = 4.75/2 ≈ 2.38l31 = 10.6/2 = 5.3

l22 =√

10.6− 2.382 ≈ 2.22l32 = (23.7− 2.38 · 5.3)/2.22 ≈ 5

l33 =√

55.1− 5.32 − 52 ≈ 1.42.

, L :=

2 0 02.38 2.22 05.3 5 1.42

.

81

Page 90: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

5. Überbestimmte Gleichungssysteme und die Gauß’sche Ausgleichrechnung

Wir lösen:

LLTx︸︷︷︸=y

= AT b ⇒ y ≈

10.279−0.137

⇒ x ≈

0.3480.345−0.0972

,mit dem Polynom

p(x) = 0.348 + 0.345x− 0.0972x2,

und dem Defekt ‖b−Ax‖ ≈ 0.95 sowie dem relativen Fehler zur exakten Lösung:

‖x− x‖‖x‖

≈ 0.08.

Wir entwickeln ein alternatives Verfahren, welches das Aufstellen des Normalgleichungssys-tems ATAx = AT b umgeht und nutzen hierfür eine Erweiterung der bereits vorgestelltenQR-Zerlegung auf allgemeine rechteckige Matrizen:

Satz 5.5 (QR-Zerlegung rechteckiger Matrizen). Es sei A ∈ Rn×m mit n > m undrang(A) = m. Dann existiert eine orthogonale Matrix Q ∈ Rn×n, sowie eine “rechteckigeobere Dreiecksmatrix” R ∈ Rn×m so dass gilt A = QR mit:

R =

R

}m

0}n−m

, R =

∗ ∗ · · · ∗

0 ∗ . . . ∗... . . . . . . ...0 · · · 0 ∗

∈ Rm×m.

Beweis: Der Beweis folgt durch Anwenden von m Schritten der QR-Zerlegung (statt denm−1 notwendigen Schritten bei quadratischen Matrizen) mit Householder-Transformationenauf die Matrix A. Die Spaltenvektoren A = (a(0)

1 , . . . , a(0)m ) sind linear unabhängig. Die-

se Eigenschaft bleibt durch Anwenden von orthogonalen Householder-TransformationenS(1), . . . , S(m) erhalten, d.h.:

dim(

span{a(1)1 , . . . , a(m)

m })

= m, a(i)j = S(i)a

(i−1)j für i = 1, . . . ,m.

Die ersten m Schritte der Householder-Transformation sind durchführbar und es giltrang(A) = rang(QTA) mit

QT = S(m) · · ·S(1).

82

Page 91: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

Die Matrix A wird dabei schrittweise auf “Dreiecksgestalt” gebracht:

∗ ∗ · · · ∗

∗ . . . . . . ...... . . . . . . ...... . . . . . . ...... . . . . . . ...... . . . . . . ...∗ · · · · · · ∗

∗ ∗ · · · ∗

0 ∗ . . . ......

... . . . ......

... . . . ......

... . . . ......

... . . . ...0 ∗ · · · ∗

∗ ∗ · · · ∗

0 ∗ . . . ...... . . . . . .... . . . 0 ∗... . . . 0...

...0 · · · · · · 0

=: R ∈ Rn×m.

Im Gegensatz zur Householder-Transformation bei quadratischen Matrizen müssen m an-stelle von m − 1 Schritte durchgeführt werden, um den Block unterhalb der m-ten Zeilezu eliminieren.

Die resultierende Matrix R hat Rang m und für ihre Einträge rij mit i > m gilt rij = 0.Daher ist der obere Matrixblock R ∈ Rm×m mit rij = rij für i, j ≤ m regulär mitrang(R) = rang(R) = m. �

Mit dieser verallgemeinerten QR-Zerlegung gilt nun:

ATAx = AT b ⇔ (QR)TQRx = (QR)T b ⇔ RT Rx = RTQT b.

Da alle Einträge von R im unteren Block Null sind gilt RT R = RTR und weiter mit

bi := (QT b)i≤m,

ist das Normalgleichungssystem äquivalent zum einfachen Dreieckssystem

ATAx = AT b ⇔ Rx = b,

mit einer m×m-Matrix R.

Beispiel 5.6 (“Lösen” eines überbestimmten Gleichungssystems mit erweiterter QR-Zer-legung). Für das überbestimmte lineare Gleichungssystem aus Beispiel 5.1 gilt:

1 −1

4116

1 12

14

1 2 41 5

2254

, b =

0101

.

Wir wählen im ersten Schritt der Householder-Transformation (dreistellige Rechnung)

v(1) = a1 + ‖a1‖e1‖ a1 + ‖a1‖e1 ‖

0.8660.2890.2890.289

.

83

Page 92: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

5. Überbestimmte Gleichungssysteme und die Gauß’sche Ausgleichrechnung

0.1

0.2

0.3

0.4

0.5

0.6

0.7

-1 -0.5 0 0.5 1 1.5 2 2.5 3

Least-Squares LoesungApproximation mit Cholesky

Approximation mit QR

Abbildung 5.1.: Lösen eines überbestimmten Gleichungssystems zum Finden der bestenApproximation an Messdaten. Siehe Beispiele 5.1, 5.4 sowie 5.6.

Dann gilt mit a(1)i = ai − 2(ai, v(1))v(1):

A(1) ≈

−2 −2.38 −5.290 −0.210 −1.540 1.29 2.210 1.79 4.46

=: (a(1)1 , a

(1)2 , a

(1)3 ).

Mit dem reduzierten Vektor a(1)2 = (−0.21, 1.29, 1.79)T gilt weiter

v(2) = a(1)2 − ‖a

(1)2 ‖e2

‖ a(1)2 − ‖a

(1)2 ‖e2 ‖

−0.7400.3930.546

.Und hiermit:

A(2) ≈

−2 −2.38 −5.290 2.22 5.040 0 −1.280 0 −0.392

=: (a(2)1 , a

(2)2 , a

(2)3 ).

Wir müssen einen dritten Schritt durchführen und mit a(2)3 = (−1.28,−0.392) ergibt sich

nach gleichem Prinzip:

v(3) =(−0.989−0.148

).

Schließlich erhalten wir:

R = A(3) ≈

−2 −2.38 −5.290 2.22 5.040 0 1.340 0 0

.

84

Page 93: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

Zum Lösen des Ausgleichsystems:

ATAx = AT b ⇔ Rx = b,

bestimmen wir zunächst die rechte Seite nach der Vorschrift b(i) = b(i−1)−2(b(i−1), v(i))v(i):

b =

−10.28−0.155

.Abschließend lösen wir durch Rückwärtseinsetzen Rx = b(3):

x ≈

0.3430.389−0.116

und erhalten das Interpolationspolynom:

p(x) = 0.343 + 0.389x− 0.116x2,

mit Defekt‖b−Ax‖2 ≈ 0.948,

und relativem Fehler zur exakten Least-Squares-Lösung:

‖x− x‖‖x‖

≈ 0.01,

d.h. ein Fehler von etwa einem 1% anstelle von fast 8% beim direkten Lösen des Normal-systems. In Abbildung 5.1 zeigen wir die exakte Lösung sowie die beiden ApproximiertenLösungen zu diesem Beispiel.

In Abschnitt 9.6.1 werden wir die diskrete Gauss-Approximation als Methode zur Nähe-rung von Funktionen an Messwerte betrachten. Diese ist eine Anwendung der Methode derkleinsten Fehlerquadrate. Die lineare Ausgleichsrechnung ist ein Spezialfall mit MatrizenA ∈ Rn×2.

Zum Abschluss betrachten wir noch ein weiteres Beispiel:

Beispiel 5.7 (Ausgleichrechung). Ein Himmelskörper bewegt sich auf einer Ellipsenbahnum den Ursprung

x2

a2 + y2

b2 = 1.

Wir können die Position des Körpers zu verschiedenen Zeiten messen:

x 0.2 -0.7 -0.3 1.2 2.0 -2.4y 1.8 1.7 -1.8 -1.6 1.1 0.5

85

Page 94: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

5. Überbestimmte Gleichungssysteme und die Gauß’sche Ausgleichrechnung

210-1-2

2

1.5

1

0.5

0

-0.5

-1

-1.5

-2

Abbildung 5.2.: Beispiel zur Ausgleichrechnung: Identifikation einer Ellipse.

Aus diesen Daten wollen wir die Längen der beiden Hauptachsen a und b bestimmen. Dieunbekannten Größen a und b tauchen in einem nichtlinearen Zusammenhang auf. Daherdefinieren wir zunächst die beiden Hilfsgrößen

A = 1a2 , B = 1

b2 .

Es entsteht das überbestimmte Gleichungssystem

0.04 3.240.49 2.560.09 3.241.44 2.564.0 1.215.76 0.25

(AB

)=

111111

Zum Lösen dieses überbestimmten Problems könnten wir einerseits unmittelbar die Nor-malgleichung aufstellen und dann lösen. Es gilt:

ATA ≈(

51.50 11.6411.64 35.63

), AT b ≈

(11.8213.06.

)

Als Lösung von ATAx = AT b folgt

x =(AB

)≈(

0.1580.315.

)a = 1√

A≈ 2.51, b = 1√

B≈ 1.78.

86

Page 95: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

Ein alternativer Lösungsweg besteht im Erstellen der QR-Zerlegung von A. Für A ∈ R6×2

müssen wir zwei Schritte durchführen. Wir erhalten:

A = QR, R ≈

−7.18 −1.620 −5.740 00 00 00 0

und für die rechte Seite

b = QT b ≈(−1.65−1.81

)Die Lösung des Gleichungssystems ergibt sich wie oben zu

Rx = b ⇒ x ≈(

0.1580.315

).

In Abbildung 5.2 ist das Ergebnis graphisch dargestellt. Für den Defekt der Least-Squares-Lösung gilt:

‖b−Ax‖2 ≈ 0.13.

87

Page 96: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische
Page 97: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

6. Berechnung von Eigenwerten

In diesem Abschnitt befassen wir uns mit dem Eigenwertproblem: Zu gegebener MatrixA ∈ Rn×n sind die Eigenwerte (und gegebenenfalls Eigenvektoren) gesucht. Wir erinnernan Definition 2.10 und formulieren

Satz 6.1 (Eigenwerte). Es sei A ∈ Rn×n. Dann gilt:

• Die Matrix A hat genau n Eigenwerte, ihrer Vielfachheit nach gezählt.

• Die Eigenwerte sind Nullstellen des charakteristischen Polynoms:

det(A− λI) = 0.

• Reelle Matrizen können komplexe Eigenwerte haben, komplexe Eigenwerte tretenstets als konjugierte Paare λ, λ auf.

• Eigenvektoren zu unterschiedlichen Eigenwerten sind linear unabhängig.

• Falls n linear unabhängige Eigenvektoren existieren, so existiert eine reguläre MatrixS ∈ Rn×n, so dass S−1AS = D eine Diagonalmatrix ist. Die Spaltenvektoren von Ssind die Eigenvektoren und die Diagonaleinträge von D die Eigenwerte.

• Symmetrische Matrizen A = AT haben nur reelle Eigenwerte. Es existiert eine Or-thonormalbasis von Eigenvektoren und eine Diagonalisierung QTAQ = D mit einerorthogonalen Matrix bestehend aus den Eigenvektoren.

• Bei Dreiecksmatrizen stehen die Eigenwerte auf der Diagonalen.

Zu einem Eigenwert λ sind die Eigenvektoren als Lösung des homogenen linearen Glei-chungssystems bestimmt:

(A− λI)w = 0.

Umgekehrt gilt:

Definition 6.2 (Rayleigh-Quotient). Sei A ∈ Rn×n sowie w ∈ Rn ein Eigenvektor. Dannist durch den Rayleigh-Quotienten der zugehörige Eigenwert gegeben:

λ = (Aw,w)2‖w‖22

.

89

Page 98: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

6. Berechnung von Eigenwerten

Mit Hilfe dieser Definition folgt mit Hilfe der Cauchy-Schwarzschen Ungleichung eine ein-fache Schranke für die Eigenwerte:

|λ| ≤ supw 6=0

(Aw,w)2‖w‖22

≤ ‖A‖2 ‖w‖22

‖w‖22= ‖A‖2.

Wir haben in Abschnitt 2 bereits gesehen, dass diese Schranke für die Beträge der Eigen-werte in jeder Matrixnorm mit verträglicher Vektornorm gilt.

6.1. Konditionierung der Eigenwertaufgabe

Bevor wir auf konkrete Verfahren zur Eigenwertberechnung eingehen, analysieren wir dieKondition der Aufgabe, d.h. die Abhängigkeit der Eigenwerte von der Störung der Matrix.Hierfür benötigen wir zunächst einen Hilfsatz:

Hilfsatz 6.3. Es seien A,B ∈ Rn×n beliebige Matrizen. Dann gilt für jeden Eigenwert λvon A, der nicht zugleich Eigenwert von B für jede natürliche Matrizennorm die Abschät-zung:

‖(λI −B)−1(A−B)‖ ≥ 1.

Beweis: Es sei w 6= 0 ein Eigenvektor zu λ. Dann gilt:

(A−B)w = (λI −B)w.

Wenn λ kein Eigenwert von B ist, so ist die Matrix (λI −B) regulär, d.h. es folgt:

(λI −B)−1(A−B)w = w.

Und schließlich durch Normbilden:

1 = ‖(λI −B)−1(A−B)w‖‖w‖

≤ supx

‖(λI −B)−1(A−B)x‖‖x‖

= ‖(λI −B)−1(A−B)‖.

Auf dieser Basis erhalten wir ein einfaches Kriterium zur Eingrenzung der Eigenwerte einerMatrix:

Satz 6.4 (Gerschgorin-Kreise). Es sei A ∈ Rn×n. Alle Eigenwerte λ von A liegen in derVereinigung der Gerschgorin-Kreise:

Ki = {z ∈ C : |z − aii| ≤n∑

k=1,k 6=i|aik|}, i = 1, . . . , n.

Angenommen zu den Indexmengen Im = {i1, . . . , im} und I ′m = {1, . . . , n} \ Im seiendie Vereinigungen Um =

⋃i∈Im Ki und U ′m =

⋃i∈I′m Ki disjunkt. Dann liegen genau m

Eigenwerte (ihrer algebraischen Vielfachheit nach gezählt) in Um und n −m Eigenwertein U ′m.

90

Page 99: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

6.1. Konditionierung der Eigenwertaufgabe

Beweis: (i) Es seiD ∈ Rn×n die DiagonalmatrixD = diag(aii). Weiter sei λ ein Eigenwertvon A mit λ 6= aii. (In diesem Fall wäre die Aussage des Satzes trivial erfüllt). Hilfsatz 6.3besagt bei Wahl der maximalen Zeilensummennorm:

1 ≤ ‖(λI−D)−1(A−D)‖∞ = maxi

n∑

j=1,j 6=i|(λ− aii)−1aij |

= maxi

|λ− aii|−1n∑

j=1,j 6=i|aij |

.D.h. es existiert zu jedem λ ein Index i ∈ {1, . . . , n} so dass gilt:

|λ− aii| ≤n∑

j=1,j 6=i|aij |.

Jeder Eigenwert λ liegt also in mindestens einem der Gerschgorin-Kreise.

(ii) Es seien durch Im und I ′m Indexmengen mit oben genannter Eigenschaft gegeben. Wirdefinieren die Matrix

As := D + s(A−D),

mit A0 = D und A1 = A. Entsprechend definieren wir die Vereinigungen:

Um,s :=⋃i∈Im

Ki(As), U ′m,s :=⋃i∈I′m

Ki(As), Ki(As) = {z ∈ C, |z − aii| ≤ s∑j 6=i|aij |}.

Aufgrund der stetigen Abhängigkeit der Kreisradien von s gilt Um,s ∩ U ′m,s = ∅ für s ∈[0, 1]. Im Fall s = 0 gilt A0 = D und jeder Eigenwert von A0 liegt im Mittelpunkt (alsoλi = aii) des trivialen Kreises mit Radius Null. Das Ergebnis folgt nun durch die stetigeAbhängigkeit der Eigenwerte von s. �

Bemerkung 6.5 (Stetige Abhängigkeit der Eigenwerte von den Matrix-Einträgen). DieEigenwerte sind Nullstellen des charakteristischen Polynoms

pA(λ) = det(A− λI) = α0 + α1λ+ · · ·+ αnλn.

Die Koeffizienten α0, . . . , αn hängen stetig von den Einträgen aij der Matrix A ab. Schwie-riger zu zeigen ist, dass die (komplexen) Nullstellen eines Polynoms auch stetig von denKoeffizienten abhängen. Wir verweisen auf die Literatur. (Z.b. Abschnitt 3.9 in [16]).

Wir betrachten hierzu ein Beispiel:

Beispiel 6.6 (Gerschgorin-Kreise). Wir betrachten die Matrix

A =

2 0.1 −0.50.2 3 0.5−0.4 0.1 5

,mit den Eigenwerten σspr(A) ≈ {1.91, 3.01, 5.08}. Eine erste Schranke liefern verschiede-ne mit Vektornormen verträgliche Matrixnormen von A:

‖A‖∞ = 5.5, ‖A‖1 = 6, ‖A‖2 ≈ 5.1.

91

Page 100: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

6. Berechnung von Eigenwerten

Die Gerschgorin-Kreise von A sind:

K1 = {z ∈ C, |z−2| ≤ 0.6}, K2 = {z ∈ C, |z−3| ≤ 0.7}, K3 = {z ∈ C, |z−5| ≤ 0.5}.

Diese Abschätzung kann verfeinert werden, da A und AT die gleichen Eigenwerte besitzen.Die Radien der Gerschgorin-Kreise können auch als Summe der Spaltenbeträge berechnetwerden. Zusammen ergibt sich:

K1 = {z ∈ C, |z−2| ≤ 0.6}, K2 = {z ∈ C, |z−3| ≤ 0.2}, K3 = {z ∈ C, |z−5| ≤ 0.5}.

Alle drei Kreise sind disjunkt, d.h. in jedem der Kreise liegt genau ein Eigenwert.

Wir können nun den allgemeinen Stabilitätssatz für das Eigenwertproblem beweisen:

Satz 6.7 (Stabilität des Eigenwertproblems). Es sei A ∈ Rn×n eine Matrix mit n linearunabhängigen Eigenvektoren w1, . . . , wn. Durch A = A + δA sei eine beliebig gestörteMatrix gegeben. Dann existiert zu jedem Eigenwert λ(A) von A = A + δA ein Eigenwertλ(A) von A so dass mit der Matrix W := (w1, . . . , wn) gilt:

|λ(A)− λ(A)| ≤ cond2(W )‖δA‖.

Beweis: Es gilt für i = 1, . . . , n die Beziehung Awi = λi(A)wi oder in MatrixschreibweiseAW = W diag(λi(A)), also

W−1AW = diag(λi(A)).

Da die wi linear unabhängig sind, ist W regulär. Wir betrachten nun einen Eigenwertλ = λ(A). Falls λ auch Eigenwert von A ist, so gilt die Behauptung. Also sei λ nun keinEigenwert von A. Dann folgt:

‖(λI −A)−1‖2 = ‖W−1[λI − diag(λi(A))]−1W‖2 ≤ cond2(W )‖[λI − diag(λi(A))]−1‖2.

Für die (symmetrische) Diagonalmatrix λI − diag(λi(A)) gilt

‖[λI − diag(λi(A))]−1‖2 = maxi=1,...,n

|λ− λi(A)|−1.

Da δA = A−A und mit Hilfsatz 6.3 folgt das gewünschte Ergebnis:

1 ≤ ‖[λI −A]−1δA‖2 ≤ ‖[λI −A]−1‖2 ‖δA‖2 ≤ cond2(W ) maxi=1,...,n

|λ− λi(A)|−1 ‖δA‖2.

Die Konditionierung des Eigenwertproblems einer Matrix A hängt von der Konditionszahlder Matrix der Eigenvektoren wi ab. Für symmetrische (hermitesche) Matrizen existierteine Orthonormalbasis von Eigenvektoren mit cond2(W ) = 1. Für solche Matrizen ist dasEigenwertproblem gut konditioniert. Für allgemeine Matrizen kann das Eigenwertproblembeliebig schlecht konditioniert sein.

92

Page 101: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

6.2. Direkte Methode

6.2. Direkte Methode

Die Eigenwerte einer Matrix A können prinzipiell als Nullstellen des charakteristischenPolynoms χA(z) = det(zI − A) berechnet werden. Die Berechnung der Nullstellen kannzum Beispiel mit dem Newton-Verfahren geschehen, Startwerte können mit Hilfe derGerschgorin-Kreise bestimmt werden.

In Kapitel 7 werden wir jedoch feststellen, dass die Berechnung von Nullstellen einesPolynoms ein sehr schlecht konditioniertes Problem ist. Wir betrachten hierzu ein Beispiel.

Beispiel 6.8 (Direkte Berechnung von Eigenwerten). Es sei A ∈ R5×5 eine Matrix mitden Eigenwerten λi = i, i = 1, . . . , 5. Dann gilt:

χA(z) =5∏i=1

(z − i) = z5 − 15z4 + 85z3 − 225z2 + 274z − 120.

Der Koeffizient −15 vor z4 sei mit einem relativen Fehler von 0.1% gestört:

χA(z) = z5 − 0.999 · 15z4 + 85z3 − 225z2 + 274z − 120.

Dieses gestörte Polynom hat die Nullstellen (d.h. Eigenwerte):

λ1 ≈ 0.999, λ2 ≈ 2.05, λ3 ≈ 2.76, λ4/5 ≈ 4.59± 0.430i.

Die Eigenwerte können also nur mit einem (ab λ3) wesentlichen Fehler bestimmt werden.Es gilt etwa:

|4.59 + 0.43i− 5|5 ≈ 0.1,

d.h. der Fehler in den Eigenwerten beträgt 10%, eine Fehlerverstärkung von 100.

Das Aufstellen des charakteristischen Polynoms erfordert eine Vielzahl schlecht konditio-nierter Additionen sowie Multiplikationen. Für allgemeine Matrizen verbietet sich diesesdirekte Verfahren. Lediglich für spezielle Matrizen wie Tridiagonalsysteme lassen die Ei-genwerte bestimmen, ohne das zunächst die Koeffizienten des charakteristischen Polynomsexplizit berechnet werden müssen.

6.3. Iterative Verfahren

Das vorangegangene Beispiel widerspricht scheinbar zunächst der (bei hermiteschen Ma-trizen) guten Konditionierung der Eigenwertsuche. Wir leiten nun stabile numerische Ver-fahren her, die die Eigenwerte nicht mehr direkt berechnen, sondern sie iterativ approxi-mieren.

93

Page 102: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

6. Berechnung von Eigenwerten

Zur Herleitung eines ersten einfachen Iterationsverfahren machen wir die folgende Beob-achtung: Angenommen zu gegebener Matrix A ∈ Rn×n existiere eine Basis aus Eigenvek-toren {w1, . . . , wn}, d.h. die Matrix sei diagonalisierbar. Weiter gelte |λn| > |λn−1| ≥ · · · ≥|λ1| > 0. Dann sei x ∈ Rn in Basisdarstellung:

x = x(0) =n∑j=1

αjwj , αj ∈ R für j = 1, . . . , n.

Wir nehmen an, dass αn 6= 0, dass also die Komponente des Vektors α = (α1, . . . , αn)zum Eigenvektor des betragsmäßig größten Eigenwertes nicht trivial ist. Wir definierendie Iteration

x(i+1) = Ax(i)

‖Ax(i)‖.

Dann gilt

x(i+1) =A Ax(i−1)

‖Ax(i−1)‖

‖A Ax(i−1)

‖Ax(i−1)‖‖= A2x(i−1)

‖A2x(i−1)‖‖Ax(i−1)‖‖Ax(i−1)‖

= · · · = Ai+1x(0)

‖Ai+1x(0)‖. (6.1)

Weiter gilt mit der Basisdarstellung von x(0):

Aix(0) =n∑j=1

αjλijwj = αnλ

in

wn +n−1∑j=1

αjαn

λijλinwj

. (6.2)

Es gilt |λj/λn| < 1 für j < n, daher folgt:

Aix(0) =n∑j=1

αjλijwj = αnλ

in (wn + o(1)) .

Hieraus folgt durch Normierung:

Aix(0)

‖Aix(0)‖=(αnλ

in

|αnλin|

)wn‖wn‖

+ o(1)→ βwn (i→∞),

mit einem β ∈ R. Die Iteration läuft in den Raum, der durch wn aufgespannt wird. Füreinen Vektor w, der Vielfaches eines Eigenvektors ist w = swn gilt:

Aw = sAwn = sλnwn = λnw.

Diese vektorwertige Gleichung gilt in jeder Komponente, kann daher nach dem Eigenwertaufgelöst werden:

λn = [Aw]kwk

.

Wir fassen zusammen:

94

Page 103: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

6.3. Iterative Verfahren

Satz 6.9 (Potenzmethode nach von Mises). Es sei A ∈ Rn×n eine Matrix mit n linear un-abhängigen Eigenvektoren {w1, . . . , wn}. Der betragsmäßig größte Eigenwert sei separiert|λn| > |λn−1| ≥ · · · ≥ |λ1|. Es sei x(0) ∈ Rn ein Startwert mit nichttrivialer Komponentein Bezug auf wn. Für einen beliebigen Index k ∈ {1, . . . , n} konvergiert die Iteration

x(i) = Ax(i−1), x(i) := x(i)

‖x(i)‖, λ(i) := x

(i)k

x(i−1)k

,

gegen den betragsmäßig größten Eigenwert:

|λ(i) − λn| = O

(∣∣∣∣λn−1λn

∣∣∣∣i), i→∞.

Beweis: Wir knüpfen an der Vorbereitung des Beweises (6.1) an. Es gilt:

λ(i) = x(i)k

x(i−1)k

= [Ax(i−1)]kx

(i−1)k

= [Aix(0)]k[Ai−1x(0)]k

.

Weiter, mit (6.2) gilt:

λ(i) =anλ

in

([wn]k +

∑n−1j=1

αjαn

λijλin

[wj ]k)

anλi−1n

([wn]k +

∑n−1j=1

αjαn

λi−1j

λi−1n

[wj ]k) = λn

[wn]k +∑n−1j=1

αjαn

λijλin

[wj ]k

[wn]k +∑n−1j=1

αjαn

λi−1j

λi−1n

[wj ]k

= λn[wn]k +

(αn−1αn

+ o(1)) ∣∣∣λn−1

λn

∣∣∣i [wn−1]k

[wn]k +(αn−1αn

+ o(1)) ∣∣∣λn−1

λn

∣∣∣i−1[wn−1]k

= λn

(1 +O

(∣∣∣∣λn−1λn

∣∣∣∣i−1)).

Die letzte Abschätzung nutzt für 0 < x < 1 den Zusammenhang:

1 + xi+1

1 + xi= 1 + xi+1 − xi

1 + xi= 1 + xi

x− 11 + xi

= 1 +O(|x|i).

Die Potenzmethode ist eine sehr einfache und numerisch stabile Iteration. Sie kann al-lerdings nur den betragsmäßig größten Eigenwert ermitteln. Der Konvergenzbeweis kannverallgemeinert werden auf Matrizen, deren größter Eigenwert mehrfach vorkommt. Kon-vergenz gilt jedoch nur dann, wenn aus |λn| = |λi| auch λn = λi folgt. Es darf also nichtzwei verschiedene Eigenwerte geben, die beide den gleichen, größten Betrag annehmen.Dies schließt zum Beispiel den Fall zweier komplex konjugierter Eigenwerten λ und λ alsbeträgsgrößte aus.

95

Page 104: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

6. Berechnung von Eigenwerten

Bemerkung 6.10 (Potenzmethode bei symmetrischen Matrizen). Die Potenzmethodekann im Fall symmetrischer Matrizen durch Verwenden des Rayleigh-Quotienten verbes-sert werden. Die Iteration

λ(i) = (Ax(i−1), x(i−1))2(x(i−1), x(i−1))2

= (x(i), x(i−1))2,

liefert die Fehlerabschätzung:

λ(i) = λn +O

(∣∣∣∣λn−1λn

∣∣∣∣2i).

Beispiel 6.11 (Potenzmethode nach von Mises). Es sei:

A =

2 1 2−1 2 11 2 4

,mit den Eigenwerten:

λ1 ≈ 0.80131, λ2 = 2.2865, λ3 = 4.9122.

Wir starten die Potenzmethode mit x(0) = (1, 1, 1)T und wählen zur Normierung die Ma-ximumsnorm. Weiter wählen wir als Index k = 1:

i = 1 : x(1) = Ax(0) =

527

, x(1) = x(1)

‖x(1)‖∞≈

0.7140.286

1

, λ(1) = x(1)1

x(0)1≈ 5,

i = 2 : x(2) = Ax(1) =

3.710.8575.29

, x(2) = x(2)

‖x(2)‖∞≈

0.7020.162

1

, λ(2) = x(2)1

x(1)1≈ 5.19,

i = 3 : x(3) = Ax(2) =

3.570.6215.03

, x(3) = x(3)

‖x(3)‖∞≈

0.7100.124

1

, λ(3) = x(3)1

x(2)1≈ 5.077,

i = 4 : x(4) = Ax(3) =

3.540.5384.96

, x(4) = x(4)

‖x(4)‖∞≈

0.7150.108

1

, λ(4) = x(4)1

x(3)1≈ 4.999,

i = 5 : x(5) = Ax(4) =

3.540.5024.93

, x(5) = x(5)

‖x(5)‖∞≈

0.7170.102

1

, λ(5) = x(5)1

x(4)1≈ 4.950,

i = 6 : x(6) = Ax(5) =

3.540.4864.92

, x(6) = x(6)

‖x(6)‖∞≈

0.7190.0988

1

, λ(6) = x(6)1

x(5)1≈ 4.930.

Neben der Festlegung auf den betragsgrößten Eigenwert hat die Potenzmethode den Nach-teil sehr langsamer Konvergenz, falls die Eigenwerte nicht hinreichend separiert sind. Eine

96

Page 105: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

6.3. Iterative Verfahren

einfache Erweiterung der Potenzmethode ist die Inverse Iteration nach Wieland zur Be-rechnung des kleinsten Eigenwerts einer Matrix. Zur Herleitung verwenden wir die Tatsa-che, dass zu einem Eigenwert λ einer regulären Matrix A ∈ Rn×n durch λ−1 ein Eigenwertder inversen Matrix A−1 ∈ Rn×n gegeben ist:

Aw = λ(A)w ⇔ A−1w = λ(A)−1w =: λ(A−1)w.

Die Potenzmethode, angewendet auf die inverse Matrix liefert den betragsgrößten Ei-genwert λmax(A−1) von A−1. Der Kehrwert dieses Eigenwertes ist der betragskleinsteEigenwert der Matrix A selbst λmin(A) = (λmax(A−1))−1. Dieses Prinzip kann weiter ver-allgemeinert werden. Dazu sei λ(A) ein Eigenwert mit zugehörigem Eigenvektor w ∈ Rnvon A und σ ∈ C eine beliebige komplexe Zahl (jedoch kein Eigenwert von A). Dann gilt:

(A− σI)w = (λ(A)− σ)w = λ(A− σI)w ⇔ [A− σI]−1w = λ([A− σI]−1)w,

Die Anwendung der Potenzmethode auf die Matrix [A−σI]−1 liefert nach vorangestellterÜberlegung den betragskleinsten Eigenwert der Matrix [A − σI], d.h. den Eigenwert vonA, der σ am nächsten liegt. Liegen nun Schätzungen für die Eigenwerte der Matrix A vor,so können die genauen Werte mit der Inversen Iteration mit Shift bestimmt werden. DieGerschgorin-Kreise liefern oft einen guten Anhaltspunkt für σ.

Satz 6.12 (Inverse Iteration mit Shift). Es sei A ∈ Rn×n eine reguläre Matrix. Es seiσ ∈ C. Für die Eigenwerte λi von A gelte:

0 < |λ1 − σ| < |λ2 − σ| ≤ · · · ≤ |λn − σ|.

Es sei x(0) ∈ Rn ein geeigneter normierter Startwert. Für i = 1, 2, . . . konvergiert dieIteration

[A− σI]x(i) = x(i−1), x(i) := x(i)

‖x(i)‖, µ(i) := x

(i)k

x(i−1)k

, λ(i) := σ + (µ(i))−1,

für jeden Index k ∈ {1, . . . , n} gegen den Eigenwert λ1 von A:

|λ1 − λ(i)| = O

(∣∣∣∣λ1 − σλ2 − σ

∣∣∣∣i).

Beweis: Der Beweis ist eine einfache Folgerung aus Satz 6.9. Falls σ kein Eigenwert vonA ist, so ist B := A− σI invertierbar. Die Matrix B−1 hat die Eigenwerte µ1, . . . , µn, mit

µi = (λi − σ)−1 ⇔ λi = µ−1i + σ. (6.3)

Für diese gilt nach Voraussetzung:

|µ1| > |µ2| ≥ · · · ≥ |µn| > 0.

97

Page 106: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

6. Berechnung von Eigenwerten

Die Potenzmethode, Satz 6.9, angewandt auf die Matrix B−1 liefert eine Approximationfür µ1:

|µ(i) − µ1| = O

(∣∣∣∣µ2µ1

∣∣∣∣i).

Die gewünschte Aussage folgt mit (6.3). �

In jedem Schritt der Iteration muss ein Lineares Gleichungssystem [A − σI]x = x gelöstwerden. Dies geschieht am besten mit einer Zerlegungsmethode, etwa der LR-Zerlegungder Matrix. Die Zerlegung kann einmal in O(n3) Operationen erstellt werden, anschließendsind in jedem Schritt der Iteration weitere O(n2) Operationen für das Vorwärts- undRückwärtseinsetzen notwendig. Die Konvergenzgeschwindigkeit der Inversen Iteration mitShift kann durch eine gute Schätzung σ gesteigert werden. Eine weitere Verbesserungder Konvergenzgeschwindigkeit kann durch ständiges Anpassen der Schätzung σ erreichtwerden. Wird in jedem Schritt die beste Approximation λ(i) = σ+1/µ(i) als neue Schätzungverwendet, so kann mindestens superlineare Konvergenz erreicht werden. Hierzu wählenwir: σ(0) = σ und iterieren

σ(i) = σ(i−1) + 1µ(i) .

Jede Modifikation des Shifts ändert jedoch das lineare Gleichungssystem und erfordert dieerneute (teure) Erstellung der LR-Zerlegung.

Beispiel 6.13 (Inverse Iteration mit Shift nach Wieland). Es sei:

A =

2 −0.1 0.40.3 −1 0.40.2 −0.1 4

mit den Eigenwerten:

λ1 = 1.954, λ2 ≈ −0.983, λ3 = 4.029.

Wir wollen alle Eigenwerte mit der inversen Iteration mit Shift bestimmen. Startwerteerhalten wir durch Analyse der Gerschgorin-Kreise:

K1 = K0.5(2), K2 = K0.2(−1), K3 := K0.3(4).

Die drei Kreise sind disjunkt und wir wählen als Shift in der Inversen Iteration σ1 =2, σ2 = −1 sowie σ3 = 4. Die Iteration wird stets mit v = (1, 1, 1)T und Normierungbezüglich der Maximumsnorm gestartet. Wir erhalten bei Wahl der ersten Komponentezur Berechnung der µ die Näherungen:

σ1 = 2 : µ(1)1 = −16.571, µ

(2)1 = −21.744, µ

(3)1 = −21.619, µ

(4)1 = −21.622,

σ2 = −1 : µ(1)2 = 1.840, µ

(2)2 = 49.743, µ

(3)2 = 59.360, µ

(4)2 = 59.422,

σ3 = 4 : µ(1)3 = 6.533, µ

(2)3 = 36.004, µ

(3)3 = 33.962, µ

(4)3 = 33.990.

Diese Approximationen ergeben die folgenden Eigenwert-Näherungen:

λ1 = σ1 + 1/µ(4)1 ≈ 1.954, λ2 = σ2 + 1/µ(4)

2 ≈ −0.983, λ3 = σ3 + 1/µ(4)3 ≈ 4.029.

Alle drei Näherungen sind in den ersten wesentlichen Stellen exakt.

98

Page 107: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

6.4. Das QR-Verfahren

Das Beispiel demonstriert, dass die inverse Iteration mit Shift zu einer wesentlichen Be-schleunigung der Konvergenz führt, falls gute Schätzungen der Eigenwerte vorliegen.

6.4. Das QR-Verfahren

Wir haben bereits die QR-Zerlegung einer Matrix A in eine orthogonale Matrix Q ∈ Rn×nsowie eine rechte obere Dreiecksmatrix R ∈ Rn×n kennengelernt. Das QR-Verfahren zurBerechnung der Eigenwerte von A beruht auf der folgenden Beobachtung:

A = QR = QR(QQT ) = Q(RQ)QT , (6.4)

d.h., die Matrix A ist orthogonal ähnlich zur Matrix RQ, hat also die gleichen Eigenwertewie diese. Wir definieren:

Algorithmus 6.14 (QR-Verfahren). Es sei A ∈ Rn×n. Ausgehend von A(1) := A iterierefür i = 1, . . .

1. Erstelle die QR-ZerlegungA(i) =: Q(i)R(i),

2. BerechneA(i+1) := R(i)Q(i).

Das QR-Verfahren erzeugt eine Folge A(i), i ≥ 1 von Matrizen, die gemäß (6.4) alle ähnlichzur Matrix A sind. Wir werden sehen, dass die Diagonaleinträge der Folgenglieder A(i)

gegen die Eigenwerte der Matrix A laufen.

Satz 6.15 (QR-Verfahren zur Eigenwertberechnung). Es sei A ∈ Rn×n eine Matrix mitseparierten Eigenwerten

|λ1| > |λ2| > · · · > |λn|.

Dann gilt für die Diagonalelemente a(t)ii der durch das QR-Verfahren erzeugten Matrizen

A(t):{α(t)

11 , . . . , α(t)nn} → {λ1, . . . , λn} (t→∞).

Beweis: Für den technisch aufwändigen Beweis verweisen wir auf [10] oder [7]. �

Im Allgemeinen konvergieren die Diagonalelemente der Folgenglieder A(i) mindestens li-near gegen die Eigenwerte. In speziellen Fällen wird jedoch sogar kubische Konvergenzerreicht. Verglichen mit der Potenzmethode und der inversen Iteration weist das QR-Verfahren daher zum einen bessere Konvergenzeigenschaften auf, gleichzeitig werden alleEigenwerte der Matrix A bestimmt. In jedem Schritt der Iteration muss jedoch eine QR-Zerlegung der Iterationsmatrix A(i) erstellt werden. Bei allgemeiner Matrix A ∈ Rn×n

99

Page 108: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

6. Berechnung von Eigenwerten

sind hierzu O(n3) arithmetische Operationen notwendig. Um die Eigenwerte mit hinrei-chender Genauigkeit zu approximieren sind oft sehr viele, > 100 Schritte notwendig. Inder praktischen Anwendung wird das QR-Verfahren daher immer in Verbindung mit einerReduktionsmethode (siehe folgender Abschnitt) eingesetzt, bei der die Matrix A zunächstin eine “einfache” ähnliche Form transformiert wird.

Bemerkung 6.16 (LR-Verfahren). Wie das QR-Verfahren liefert auch das LR-Verfahren:

A(i) =: L(i)R(i), A(i+1) := R(i)L(i),

eine Folge von Matrizen A(i), deren Diagonalelemente gegen die Eigenwerte der Matrix Akonvergieren. Das LR-Verfahren zur Eigenwertberechnung konvergiert nur dann, wenn dieLR-Zerlegung ohne Pivotisierung durchgeführt werden kann. Daher wird bei allgemeinenMatrizen üblicherweise das QR-Verfahren bevorzugt.

6.5. Reduktionsmethoden

Das Erstellen der QR-Zerlegung einer Matrix A ∈ Rn×n mit Hilfe von Householder-Matrizen bedarf O(n3) arithmetischer Operationen, siehe Satz 4.15. Da in jedem Schrittdes QR-Verfahrens diese Zerlegung neu erstellt werden muss, ist dieser Aufwand zu groß.Hat die Matrix A jedoch eine spezielle Struktur, ist sie z.B. eine Bandmatrix, so kannauch die QR-Zerlegung mit weit geringerem Aufwand erstellt werden. Es gilt:

Satz 6.17 (Ähnliche Matrizen). Zwei Matrizen A,B ∈ Cn×n heißen ähnlich, falls es einereguläre Matrix S ∈ Cn×n gibt, so dass gilt:

A = S−1BS.

Ähnliche Matrizen haben das gleiche charakteristische Polynom und die gleichen Eigen-werte. Zu einem Eigenwert λ sowie Eigenvektor w von A gilt:

B(Sw) = S(Aw) = λSw.

Ziel dieses Kapitels ist es durch Ähnlichkeitstransformationen

A = A(0) → A(i) = (S(i))−1A(i)S(i),

die Matrix A Schritt für Schritt in eine ähnliche Matrix (also mit den gleichen Eigenwer-ten) zu transformieren, die eine einfache Struktur hat, so dass die Eigenwerte leichter zubestimmen, oder sogar direkt ablesbar sind. Mögliche Normalformen, bei denen die Eigen-werte unmittelbar ablesbar sind, sind die Jordan’sche Normalform, die Diagonalisierungvon A, oder die Schur’sche Normalform:

100

Page 109: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

6.5. Reduktionsmethoden

Definition 6.18 (Schur’sche Normalform). Die Matrix A ∈ Cn×n habe die Eigenwerteλ1, . . . , λn (ihrer Vielfachheit gezählt). Dann existiert eine unitäre Matrix U ∈ Cn×n, sodass

UTAU =

λ1 ∗ · · · ∗

0 . . . . . . ...... . . . . . . ∗0 · · · 0 λn

.

Falls A hermitesch ist (also AT = A), so ist UTAU auch hermitesch, also eine Diagonal-matrix.

Die Aufgabe, eine Matrix A in eine Normalform zu transformieren, ist üblicherweise nurbei Kenntnis der Eigenwerte möglich. Dieser Weg eignet sich somit nicht zur Eigenwertbe-rechnung. Daher werden wir im Folgenden die Reduktion der Matrix A auf eine Normal-form kennenlernen, bei der die Eigenwerte zwar nicht unmittelbar abgelesen werden, dieQR-Zerlegung jedoch mit sehr geringem Aufwand erstellt werden kann. Diese reduzierteNormalform dient dann als Grundlage für das QR-Verfahren zur Eigenwertberechnung.Wir definieren:

Satz 6.19 (Hessenberg-Normalform). Zu jeder Matrix A ∈ Rn×n existiert eine orthogo-nale Matrix Q ∈ Rn×n, so dass

QTAQ =

∗ · · · · · · · · · ∗

∗ . . . . . . . . . ...

0 . . . . . . . . . ...... . . . . . . . . . ...0 · · · 0 ∗ ∗

,

eine Hessenberg-Matrix ist, also eine rechte obere Dreiecksmatrix, die zusätzlich eine un-tere Nebendiagonale besitzt. Falls symmetrisch ist (also AT = A), so ist QTAQ eineTridiagonalmatrix.

Beweis: Die Konstruktion der Hessenberg-Matrix erfolgt ähnlich der QR-Zerlegung mitHouseholder-Transformationen. Um Ähnlichkeitstransformationen sicherzustellen müssenwir die orthogonalen Householder-Matrizen S(i) jedoch von links und rechts an die MatrixA multiplizieren.

Wir beschreiben den ersten Schritt. Es seien A = (a1, . . . , an) die Spaltenvektoren von A.Wir bestimmen den Vektor v(1) = (0, v(1)

2 , . . . , v(1)n )T so, dass mit S(1) = I − 2v(1)(v(1))T

giltS(1)a1 ∈ span(e1, e2).

Hierzu wählen wir eine Householder-Transformation mit Vektor

v(1) = a1 + ‖a1‖e2‖ a1 + ‖a1‖e2 ‖

,

101

Page 110: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

6. Berechnung von Eigenwerten

wobei a1 = (0, a21, . . . , an1) der reduzierte erste Spaltenvektor ist. Dann gilt mit S(1) =I − 2v(1)(v(1))T mit S(1) = (S(1))T :

A(1) = S(1)A(S(1))T =

a11 a12 · · · a1n∗ ∗ · · · ∗

0... . . . ...

...... . . . ...

0 ∗ · · · ∗

·S(1) =:

a11 ∗ · · · ∗∗0 A(1)

...0

, A(1) ∈ Rn−1×n−1.

Im zweiten Schritt wird das entsprechende Verfahren auf die Matrix A(1) angewendet.Nach n− 2 Schritten erhalten wir die Matrix A(n−2), welche Hessenberg-Gestalt hat.

QTAQ := S(n−2) · · ·S(1)︸ ︷︷ ︸=:QT

AS(1) · · ·S(n−2)︸ ︷︷ ︸=:Q

Im Falle A = AT gilt:(QTAQ)T = QTATQ = QTAQ.

D.h., auch A(n−2) ist wieder symmetrisch. Symmetrische Hessenberg-Matrizen sind Tri-diagonalmatrizen. �

Bemerkung 6.20 (Hessenberg-Normalform). Die Transformation einer MatrixA ∈ Rn×n in Hessenberg-Normalform erfordert bei Verwendung der Householder-Transformationen 5

3n3 + O(n2) arithmetische Operationen. Im Fall symmetrischer Ma-

trizen erfordert die Transformation in eine Tridiagonalmatrix 23n

3 +O(n2) Operationen.

Die Transformation in Hessenberg-Normalform benötigt demnach etwas mehr arithmeti-sche Operationen als eine QR-Zerlegung. Im Anschluss können die QR-Zerlegungen einerHessenberg-Matrix mit weitaus geringerem Aufwand erstellt werden. Weiter gilt, dass fürdie QR-Zerlegung einer Hessenberg-Matrix A gilt, dass die Matrix RQ wieder Hessenberg-Gestalt hat. Beides fasst der folgende Satz zusammen:

Satz 6.21 (QR-Zerlegung von Hessenberg-Matrizen). Es sei A ∈ Rn×n eine Hessenberg-Matrix. Dann kann die QR-Zerlegung A = QR mit Householder-Transformationen in2n2 + O(n) arithmetische Operationen durchgeführt werden. Die Matrix RQ hat wiederHessenberg-Gestalt.

Beweis: Es gilt aij = 0 für i > j + 1. Wir zeigen induktiv, dass diese Eigenschaft füralle Matrizen A(i) gilt, die im Laufe der QR-Zerlegung entstehen. Zunächst folgt im erstenSchritt für v(1) = a1 + ‖a1‖e1, dass v(1)

k = 0 für alle k > 2. Die neuen Spaltenvektorenberechnen sich zu:

a(1)i = ai − (ai, v(1))v(1). (6.5)

102

Page 111: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

6.5. Reduktionsmethoden

Da v(1)k = 0 für k > 2 gilt (a(1)

i )k = 0 für k > i + 1, d.h. A(1) hat wieder Hessenberg-Normalform. Diese Eigenschaft gilt induktiv für i = 2, . . . , n− 1.

Da der (reduzierte) Vektor v(i) in jedem Schritt nur zwei von Null verschiedene Einträgehat, kann dieser in 2 arithmetischen Operationen erstellt werden. Die Berechnung der n−ineuen Spaltenvektoren gemäß (6.5) bedarf je 4 arithmetischer Operationen. Insgesamtergibt sich ein Aufwand von

n−1∑i=1

2 + 4(n− i) = 2n2 +O(n).

Es bleibt (als Übung) die Hessenberg-Gestalt der Matrix A′ := RQ nachzuweisen. �

In Verbindung mit der Reduktion auf Hessenberg, bzw. auf Tridiagonalgestalt ist das QR-Verfahren eines der effizientesten Verfahren zur Berechnung von Eigenwerten einer MatrixA ∈ Rn×n. Die QR-Zerlegung kann in O(n2) Operationen durchgeführt werden, und imLaufe des QR-Verfahrens entstehen ausschließlich Hessenberg-Matrizen.

Die Konvergenz des QR-Verfahrens hängt von der Separation der Eigenwerte |λi|/|λi+1| ab.Je weiter die Eigenwerte voneinander entfernt sind, umso besser konvergiert das Verfahren.Im allgemeinen kann lineare Konvergenz gezeigt werden. In speziellen Fällen kann jedochsogar kubische Konvergenz der Diagonalelemente A(t)

ii gegen die Eigenwerte gezeigt werden.

Wie die Inverse Iteration kann das QR-Verfahren durch Einführen eines Shifts beschleunigtwerden. Mit Koeffizienten µi wird die Iteration ersetzt durch die Vorschrift:

A(i−1) − µiI = Q(i)R(i), A(i) := R(i)Q(i) + µiI.

Abschließend betrachten wir hierzu ein Beispiel:

Beispiel 6.22 (Eigenwert-Berechnung mit Reduktion und QR-Verfahren). Wir betrachtendie Matrix

A =

338 −20 −90 32−20 17 117 70−90 117 324 −25232 70 −252 131

.Die Matrix A ist symmetrisch und hat die Eigenwerte:

λ1 ≈ 547.407, λ2 ≈ 297.255, λ3 ≈ −142.407, λ4 ≈ 107.745.

Schritt 1: Reduktion auf Hessenberg- (Tridiagonal)-Gestalt.

Im ersten Reduktionsschritt wählen wir mit a1 = (0,−20,−90, 32) den Spiegelungsvektorv(1) als:

v(1) = a1 − ‖a1‖e2‖ a1 − ‖a1‖e2‖

.

103

Page 112: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

6. Berechnung von Eigenwerten

Wir erhalten mit S(1) := I − 2v(1)(v(1))T :

A(1) = S(1)AS(1) =

338 97.591 0 0

97.591 477.579 27.797 106.9800 27.797 −82.345 −103.4940 106.980 −103.494 76.765

.Mit a(1)

2 = (0, 0, 27.797, 106.980)T und

v(2) = a2 + ‖a2‖e3‖ a2 + ‖a2‖e3‖

folgt mit S(2) := I − 2v(2)(v(2))T :

H := A(2) = S(2)A(1)S(2) =

338 97.591 0 0

97.591 477.579 −110.532 00 −110.532 16.231 −129.1310 0 −129.131 −21.900

.Die Matrix H hat nun Tridiagonalgestalt. Alle Transformationen waren Ähnlichkeitstrans-formationen. Daher haben H und A die gleichen Eigenwerte.

Schritt 2: QR-Verfahren

Wir führen nun einige Schritte des QR-Verfahrens durch, verzichten dabei auf die Zwi-schenschritte zum Erstellen der QR-Zerlegung. Es sei A(1) := H. Dann ist:

A(1) = Q(1)R(1) A(2) = R(1)Q(1) =

400.759 123.634 0 0123.634 441.338 32.131 0

0 32.131 −42.082 −122.4980 0 −122.498 9.985

A(2) = Q(2)R(2) A(3) = R(2)Q(2) =

473.938 113.971 0 0113.971 370.411 −10.831 0

0 −10.831 −74.680 −111.0530 0 −111.053 40.331

A(3) = Q(3)R(3) A(4) = R(3)Q(3) =

520.095 78.016 0 078.016 324.515 4.350 0

0 4.350 −98.717 −94.9420 0 −94.942 64.105

A(4) = Q(4)R(4) A(5) = R(4)Q(4) =

538.682 45.895 0 045.895 305.970 −1.926 0

0 −1.926 −115.400 −77.6200 0 −77.620 80.747

...

A(9) = Q(9)R(9) A(10) = R(9)Q(9) =

547.387 2.245 0 02.245 297.275 0.0453 0

0 0.0453 −140.561 −21.4130 0 −21.413 105.898

.

104

Page 113: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

6.5. Reduktionsmethoden

Für die Diagonalelemente gilt:

a(10)11 ≈ 547.387, a

(10)22 ≈ 297.275, a

(10)33 ≈ −140.561, a

(10)44 ≈ 105.898.

Diese Diagonalelemente stellen sehr gute Näherungen an alle Eigenwerte der Matrix Adar:

|a(10)11 − λ1||λ1|

≈ 3.58·10−5,|a(10)

22 − λ2||λ2|

≈ 0.00007, |a(10)33 − λ3||λ3|

≈ 0.01, |a(10)44 − λ4||λ4|

≈ 0.01.

Der Fehler für λ3 und λ4 ist größer, da diese Eigenwerte weniger separiert sind.

105

Page 114: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische
Page 115: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

Teil II.

Numerische Methoden der Analysis

107

Page 116: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische
Page 117: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

Die Analysis befasst sich mit Folgen und Reihen sowie mit Funktionen im Raum derreellen Zahlen R. Dabei geht es um Begriffe wie Konvergenz, Approximation, Stetigkeit,Differenzierbarkeit und Integration. Numerische Anwendungen der Analysis werden sichim Wesentlichen mit der konkreten Berechnung und Bestimmung dieser Größen befassen.Der Zwischenwertsatz sagt etwa, dass die Funktion

f(x) = x(1 + exp(x)) + 10 sin(3 + log(x2 + 1)) (7.1)

im Intervall [−10, 10] mindestens eine Nullstelle hat. Denn es gilt (nachrechnen!)

x > 10 ⇒ f(x) > 0, x < −10 ⇒ f(x) < 0.

Die konkrete Berechnung dieser oder möglicherweise mehrerer dieser Nullstellen hinge-gen kann schon bei sehr einfachen Funktionen äußerst aufwändig sein. Hier kommt dienumerische Mathematik ins Spiel. Aus der Stetigkeit von f können wir folgern, dass dasIntegral

Iab(f) =∫ b

af(x)dx,

existiert. Die konkrete Berechnung eines Integrals, etwa

∫ 1

−1f(x) dx,

ist jedoch schwer. Analytische Hilfsmittel schlagen oft fehl. In den Numerischen Methodender Analysis werden wir uns mit Lösungsverfahren für diese Probleme befassen: Findenvon Nullstellen, Berechnen von Integralen und Ableitungen, Approximation von Funktio-nen. Dabei wird die Numerik im Allgemeinen nicht in der Lage sein, exakte Lösungenanzugeben, sondern im Allgemeinen Näherungen an z.B. die Nullstelle angeben. Ein ein-fachstes numerisches Verfahren zur Approximation von Nullstellen beruht unmittelbar aufdem Zwischenwertsatz. Falls für eine stetige Funktion gilt f(a) < 0 und f(b) > 0, so musses ein z ∈ (a, b) geben mit f(z) = 0. Dies ist die Basis zur Intervallschachtelung. DasIntervall (a, b) wird stets halbiert und zwar so, dass die Funktion f an den Intervallenden

109

Page 118: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

ein unterschiedliches Vorzeichen ausweist. Angewendet auf (7.1) gilt

a = −3 b = 3 f(a) ≈ −11.45 f(b) ≈ 54.95 f((a+ b)/2) ≈ 1.41a = −3 b = 0 f(a) ≈ −11.45 f(b) ≈ 1.41 f((a+ b)/2) ≈ −10.44a = −1.5 b = 0 f(a) ≈ −10.44 f(b) ≈ 1.41 f((a+ b)/2) ≈ −4.10a = −0.75 b = 0 f(a) ≈ −4.10 f(b) ≈ 1.41 f((a+ b)/2) ≈ −0.53a = −0.375 b = 0 f(a) ≈ −0.53 f(b) ≈ 1.41 f((a+ b)/2) ≈ 0.73a = −0.375 b = −0.1875 f(a) ≈ −0.53 f(b) ≈ 0.73 f((a+ b)/2) ≈ 0.16a = −0.375 b = −0.28125 · · ·

Eine Nullstelle muss also im (jetzt recht kleinen) Intervall (−0.375,−0.28125) liegen.

7.1. Motivation

Das Lösen von nichtlinearen Gleichungen spielt eine grundlegende Rolle in der Mathema-tik. Oft werden solche Aufgabenstellungen als Nullstellenproblem formuliert. Die Nullstel-lenbestimmung von linearen und quadratischen Polynomen ist das einfachste Beispiel undbereits aus der Schule bekannt. Insbesondere kann hierfür noch eine geschlossene Formel(Auflösen nach der Variablen, p-q-Formel, quadratische Ergänzung) angegeben werden.Aber schon bei Gleichungen dritten Grades gibt es keine geschlossene Lösungsformel.

Um diese Art von Gleichungen (numerisch) zu lösen, formulieren wir die Aufgabe alsNullstellensuche (vergleiche zur p-q-Formel). Dies bedeutet, dass wir eine Nullstelle derAbbildung (Funktion)

f : D(f)→ R,

suchen, wobei D(f) ⊂ R den Definitionsbereich von f bezeichnet. Jede nichtlineare Glei-chung

g(x) = y

kann durch die Transformation f(x) := g(x) − y als eine Nullstellenaufgabe geschriebenwerden:

f(x) = 0.

Das allgemeine Nullstellenproblem muss meist mit einem Iterationsverfahren gelöst wer-den. Ausgehend von einem Startwert x0, der zufällig gewählt sein kann besser aber syste-matisch bestimmt werden sollte, erhalten wir mit Hilfe der Iterationsvorschrift eine Folgevon Punkten xk, k = 1, 2, 3, . . ., deren Grenzwert gegen die Nullstelle x ∈ R konvergiert:

f(x0)→ f(x1)→ f(x2) · · · → f(x) = 0.

In der Praxis kann der unendliche Grenzprozess nicht durchgeführt werden. Stattdessenwird die Iteration bei einem N ∈ N gestoppt und das Folgenglied xN wird als Appro-ximation der Nullstelle xN ≈ x betrachtet. Hieraus ergeben sich unmittelbar wichtigeFragenstellungen, die wir in diesem Kapitel untersuchen wollen und uns in den weiterenKapiteln wieder begegnen werden. Im Einzelnen sind dies:

110

Page 119: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7.2. Stabilität und Kondition

• Im Sinne des ersten Kapitels 1: Welche Aussagen können wir zur Stabilität und derKonditionierung der Nullstellenbestimmung machen?

• Konstruktion eines effizienten numerischen Verfahrens.

• Wie schnell konvergiert (xk)k∈N gegen x? Das bedeutet insbesondere die Quantifi-zierung der Konvergenzordnung und der Konvergenzrate (Maße für die Konvergenz-geschwindigkeit). In Analysis I/II haben wir bisher immer von einer Folge xk → xgesprochen, die gegen den Grenzwert konvergiert. Diese Aussage ist in der Praxisaber nutzlos, da wir in endlicher Rechenzeit eine Lösung erhalten möchten.

• Konvergiert das ausgewählte numerische Verfahren auf beliebig großen Intervallenund mit beliebig gewählten Startwerten x0, oder nur dann, wenn der Startwert x0bereits hinreichend nahe an der gesuchten Nullstelle ist? In anderen Worten: ist dasVerfahren lokal oder global konvergent?

• Abschätzung der zu erwartenden Konvergenz mittels einer aussagekräftigen Fehler-schranke für die Approximation |xN−x|. Hier werden wir zwischen der a priori und aposteriori Fehleranalyse unterscheiden. Bei der a priori Fehleranalyse wird der Fehler|xN− x| vor der Rechnung abgeschätzt. Dies gibt dem Numeriker eine grobe Schran-ke zum Verhalten der Fehlerentwicklung, die aber nur asymptotisch richtig ist - undsomit für quantitative Aussagen oft nutzlos ist. Dagegen wird bei der a posterioriFehleranalyse der Fehler |xN − x| während der Rechnung abgeschätzt, alle bereitsberechneten Approximation x0, x1, . . . , xN können in die Abschätzung einfließen. Aposteriori Abschätzungen lassen oft quantitative Aussagen zu, die zur Steuerung desnumerischen Verfahrens genutzt werden können.

Im Rest dieses Kapitels werden wir die oben genannten Fragen anhand verschiedenerVerfahren diskutieren und die Schlüsselbegriffe spezifizieren.

Generell lassen sich die Verfahren zur Nullstellensuche in ableitungsfreie Verfahren (z.B.Intervallschachtelung, Sekantenmethode, sukzessive Approximation) und ableitungsbehaf-tete Verfahren einteilen (Newton-artige Verfahren). Exemplarisch betrachten wir dazu dieIntervallschachtelung und das klassische Newton-Verfahren. Weitere Verfahren werden amEnde des Kapitels zusammenfassend mit Hinweisen auf weiterführende Literatur erläutert.

7.2. Stabilität und Kondition

Wir werden zunächst auf die Konditionierung der Nullstellensuche und auf Stabilität vonAlgorithmen eingehen. Als Beispiel seien Polynome zweiten Grades gewählt. Hier liegt mitder p-q-Formel ein direktes Lösungsverfahren zur Nullstellenberechnung vor.

Wir unterscheiden vier Situationen, wie in Abbildung 7.1 skizziert:

1. Stabile Situation: die beiden Nullstellen liegen hinreichend weit auseinander.

2. Doppelte Nullstelle, d.h. f(x) = f ′(x) = 0.

111

Page 120: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

Abbildung 7.1.: Die vier möglichen Situationen bei der Nullstellensuche quadratischerFunktionen: stabile Situation, doppelte Nullstelle, zwei Nullstellen nahbeieinander und keine reellen Nullstellen.

3. Zwei sehr nah beieinander liegende Nullstellen.

4. Keine reelle Nullstelle.

Beispiel 7.1 (Konditionierung der p-q-Formel). Wir berechnen die Konditionierung derNullstellenberechnung mit der p-q-Formel in Abhängigkeit von den Koeffizienten und wer-den dabei die vier beschriebenen Fälle betrachten. Dazu sei

f(x) = x2 − px+ q = 0, x ∈ R.

Für die Nullstellen x1,2 gilt

x1,2 = x1,2(p, q) = p

2 ±

√p2

4 − q

und wegen f(x) = (x− x1)(x− x2) auch p = x1 + x2 sowie q = x1 · x2 (Satz von Vieta).Die Konditionszahlen werden berechnet durch:

k11 = ∂x1∂p

p

x1= 1 + x2/x1

1− x2/x1, k21 = −∂x1

∂p

p

x1= 1 + x2/x1

1− x2/x1,

k12 = ∂x1∂q

q

x1= −x2/x1

1− x2/x1, k22 = ∂x1

∂q

q

x1= 1

1− x2/x1.

Die Berechnung der Nullstellen x1, x2 ist demnach schlecht konditioniert, falls x1/x2 ∼ 1,d.h. wenn die Nullstellen nahe beieinander liegen. In diesem Fall können die Konditions-zahlen beliebig groß werden.

Beispiel 7.2. Das vorherige Beispiel wird mit konkreten Zahlenwerten weitergeführt. Essei p = 4 und q = 3.9999:

f(x) = x2 − 4x+ 3.9999 = 0,

mit den Nullstellen x1,2 = 2± 0.01. Dann gilt für die Konditionzahl

|k12| =∣∣∣∣ 11− x1/x2

∣∣∣∣ = 99.5.

112

Page 121: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7.2. Stabilität und Kondition

Das entspricht einer möglichen Fehlerverstärkung um den Faktor 100. Bei einer Störungvon p um 1% zu p = 4.04 erhalten wir die gestörten Nullstellen

x1 ≈ 2.304, x2 ≈ 1.736,

mit relativen Fehlern von etwa 15%.

Bei einer Störung von p um minus 1% zu p = 3.96 erhalten wir keine reellen Nullstellenmehr - sondern die komplexen Nullstellen

x1 ≈ 1.98± 0.28196i.

Die Nullstellenbestimmung kann also sehr schlecht konditioniert sein, falls die beiden Null-stellen nahe beieinander liegen. Wir untersuchen nun die Stabilität des p/q Verfahrens zurBerechnung der Nullstellen im gut konditionierten Fall, d.h. im Fall von weit separiertenNullstellen. Es sei also ein Polynom

f(x) = x2 − px+ q,

mit |q| � p2/4 gegeben. Die beiden Lösungen lauten:

x1,2 = p

2 ±

√p2

4 − q,

also x1 ≈ p und x2 ≈ 0. Aus den vorherigen Beispielen haben wir gelernt, dass die Aufgabefür |x1/x2| � 1 gut konditioniert ist. Wir berechnen die Nullstellen mit der p/q-Formel:

1 a1 = p2/42 a2 = a1 − q3 a3 = √a2 ≥ 0 .

Um Auslöschung zu vermeiden wird im Fall p < 0 die zweite Nullstelle mit der p/q-Formelberechnet x2 = p/2− a3 berechnet, ansonsten die erste x1 = p/2 + a3. Die jeweils andereNullstelle können wir entweder auch aus der p/q-Formel gewinnen, oder aber mit dem Satzvon Vieta berechnen. Die Fehlerfortpflanzung für die zuerst berechnete Nullstelle lautet(p > 0): ∣∣∣∣∆x1

x1

∣∣∣∣ ≤ ∣∣∣∣ 11 + 2a3/p

∣∣∣∣︸ ︷︷ ︸<1

∣∣∣∣∆pp∣∣∣∣+ ∣∣∣∣ 1

1 + p/2a3

∣∣∣∣︸ ︷︷ ︸<1

∣∣∣∣∆a3a3

∣∣∣∣ .Das Verfahren ist sehr stabil, es kann sogar mit einer Dämpfung des Fehlers gerechnetwerden. Die zweite Nullstelle x1 kann nun mit Hilfe von zwei unterschiedlichen Variantenbestimmt werden:

• Variante 1: x2 = p/2− a3 von der p/q-Formel,

• Variante 2: x2 = q/x1 von Satz von Vieta.

113

Page 122: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

Falls |q| � p2/4, dann ist a3 ≈ p/2 (im Fall p > 0), und daher tritt bei Variante 1automatisch Auslöschung auf. Die Rundungsfehler in p und a3 übertragen sich wie folgt:∣∣∣∣∆x2

x2

∣∣∣∣ ≤ ∣∣∣∣ 11− 2a3/p

∣∣∣∣︸ ︷︷ ︸�1

∣∣∣∣∆pp∣∣∣∣+ ∣∣∣∣ 1

1− p/2a3

∣∣∣∣︸ ︷︷ ︸�1

∣∣∣∣∆a3a3

∣∣∣∣ .Für |q| � p2/4 ist dieser Algorithmus sehr instabil. Variante 2 hingegen erfordert lediglicheine Division x2 = q/x1. Diese ist immer gut konditioniert (vergleiche Beispiel 1.16) und soergibt sich durch Kombination der p/q-Formel für die eine Nullstelle und Satz von Vietafür die zweite ein stabiles Verfahren zur Lösung beider Nullstellen eines quadratischenPolynoms.

Bemerkung 7.3. Die Quintessence dieser Betrachtungen ist, dass es zu gut konditionier-ten Problemen unterschiedliche Algorithmen mit unterschiedlichen Stabilitätseigenschaftengeben kann.

Beispiel 7.4. Es sollen die Nullstellen von

x2 − 4x+ 0.01 = 0

bestimmt werden. Vierstellige Rechnung ergibt:

1 a1 = 42 a2 = 3.993 a3 = 1.998

und damit (wegen p > 0) für die erste Nullstelle x1 = 3.998 mit einem Fehler |∆x1/x1| ≈0.00013. Die andere Nullstelle kann mit den beiden Varianten berechnet werden:

• Exakte Rechnung: x2 ≈ 0.002501564,

• Variante 1: x2 = 0.002, mit einem Fehler |∆x2/x2| ≈ 0.2

• Variante 2: x2 = 0.002501, mit einem Fehler |∆x2/x2| ≈ 0.00023.

Die berechneten Nullstellen der beiden Varianten unterscheiden sich stark.

7.3. Intervallschachtelung

Das einfachste Verfahren zur Nullstellenbestimmung ist die Intervallschachtelung, welcheauf einer Anwendung des Zwischenwertsatzes beruht.

Es sei f ∈ C[a, b] und x, y ∈ [a, b] mit x < y. Falls f(x) und f(y) unterschiedlicheVorzeichen haben, d.h.,

f(x)f(y) < 0,

dann besitzt die Funktion f nach dem Zwischenwertsatz mindestens eine Nullstelle in(a, b). Das folgende Verfahren ermittelt eine Approximation dieser Nullstelle.

114

Page 123: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7.3. Intervallschachtelung

f

a0 b0

b1a1

a2 b2

Abbildung 7.2.: Geometrische Interpretation der Intervallschachtelung.

Satz 7.5 (Intervallschachtelung). Es sei f ∈ C[a, b] mit f(a)f(b) < 0. Man definiere eineFolge von Intervallen [an, bn] mit n = 0, 1, 2, . . . , N , durch

[a0, b0] = [a, b]

und

[an+1, bn+1] =

[an, xn] falls f(an)f(xn) < 0,[xn, bn] falls f(xn)f(bn) < 0,[xn, xn] falls f(xn) = 0,

wobei xn = 12(an + bn) der Mittelpunkt des Intervalls [an, bn] ist. Dann gilt, dass xn →

x (n→∞) für eine Nullstelle x von f und

|xn − x| ≤b− a2n+1 .

Diese Fehlerschranke verhält sich wie eine geometrische Folge mit dem Quotienten 12 (Kon-

vergenzrate) und hat die Konvergenzordnung p = 1 (mehr dazu in Abschnitt 7.6).

Beweis: Falls f(xn) = 0 für ein n ∈ N, dann ist die Nullstelle exakt gefunden. ImFolgenden wird dieser Fall nicht mehr betrachtet. Nach Konstruktion gilt

a ≤ a1 ≤ . . . ≤ an ≤ an+1 ≤ bn+1 ≤ bn ≤ . . . b1 ≤ b.

Somit ist (an) eine monoton wachsende und nach oben beschränkte Folge. Damit ist diesenach dem Monotoniekriterium konvergent (Analysis I). Analog erhalten wir die Konver-genz für die Folge (bn), die monoton fallend und nach unten beschränkt ist. Es folgt

|bn − an| =|bn−1 − an−1|

2 = |bn−2 − ab−2|22 = . . . = |b− a|2n , (7.2)

115

Page 124: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

und somit gilt

bn = an + (bn − an) n→∞−−−→ an,

und also mit a ≤ an ≤ bn ≤ b

x = limn→∞

an = limn→∞

bn.

Aus der Stetigkeit von f folgt weiter

f(an)f(bn) ≤ 0 ∀n ∈ N

und dies impliziert

f(x)2 = limn→∞

f(an)f(bn) ≤ 0 ⇒ f(x) = 0.

Es bleibt die Konvergenzrate zu bestimmen. Es gilt an ≤ x ≤ bn (∀n) und

|xn − an| ≤ |bn − an| =b− a2n+1 .

Bemerkung 7.6 (A priori Fehlerabschätzung). Die in Satz 7.5 angegebene Fehlerabschät-zung

|xn − x| ≤b− a2n+1 .

ist eine a priori Fehlerabschätzung, da diese bereits vor der Rechnung angegeben werdenkann.

Beispiel 7.7. Wir betrachten das Intervall I = [0, 1], dann liefert die a priori Abschätzung

|x9 − x| < 10−3, |x19 − x| < 10−6, |x29 − x| < 10−9.

Das heißt in der 29-ten Iteration kann eine Genauigkeit von TOL = 10−9 erwartet werden.

Abschließend diskutieren wir noch eine a posteriori Fehlerabschätzung, die allerdings diestetige Differenzierbarkeit von f voraussetzt:

Satz 7.8 (A posteriori Fehlerabschätzung). Es sei f ∈ C1[a, b] mit f(a)f(b) < 0 und füralle x ∈ [a, b] gilt

0 < m ≤ f ′(x) ≤M.

Für die Nullstelle x von f und die in Satz 7.5 definierte Folge (xn)n∈N gilt dann

|f(xn)|M

≤ |xn − x| ≤|f(xn)|m

.

116

Page 125: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7.4. Das Newton-Verfahren in 1D

Beweis: Übung (Mittelwertsatz der Differentialrechnung). �

Die a posteriori Fehlerschranke kann als Abbruchkriterium zum Beenden der Intervall-schachtelung genutzt werden, allerdings nur, falls f stetig differenzierbar in [a, b] ist. Dar-über hinaus lassen sich heuristisch auch weitere Abbruchkriterien untersuchen:

• f(xn) = 0: D.h. die Nullstelle ist exakt gefunden.

• |f(xn)| < TOL: Das Residuum der Aufgabe ist sehr klein.

• |bn − an| < TOL

• n = N0: D.h. Angabe einer Maximalanzahl von Iterationsschritten (mit dem Nach-teil, dass die Nullstelle noch nicht genügend genau approximiert worden ist.

Die Intervallschachtelung ist ein sehr stabiles Verfahren. Aus dem Konstruktionsprinzipfolgt unmittelbar, dass die Nullstelle stets im Iterationsintervall eingeschlossen ist. Al-lerdings konvergiert das Verfahren sehr langsam gegen die gesuchte Nullstelle. Aufgrundseiner Stabilität wird das Intervallschachtelungsverfahren häufig als Startverfahren fürandere Verfahren genutzt. Allerdings ist die Intervallschachtelung auf reelle Funktionenbeschränkt (im Gegensatz zu den weiteren Verfahren, die wir im Anschluss kennen lernenwerden) und das Auffinden doppelter Nullstellen ist nicht möglich.

7.4. Das Newton-Verfahren in 1D

Es sei f ∈ C1[a, b]. Falls die erste Ableitung f ′(x) ohne große Probleme berechenbarist, dann stellt das Newton-Verfahren eine sehr effiziente Methodik zur Berechnung einerNullstelle dar. Das Newton-Verfahren hat viele Ableger - es gibt nicht das eine einzigeNewton-Verfahren. Das klassische Newton-Verfahren (auch Newton-Raphson-Verfahrengenannt) ist durch folgende Vorschrift definiert: Die Funktion f wird im Näherungswert xkdurch ihre Tangente linearisiert und der iterierte Wert xk+1 als Abzisse des Schnittpunktesder Tangente (an f) mit der x-Achse definiert, vergleiche Abbildung 7.3.

7.4.1. Das klassische Newton-Verfahren

Verfahren 7.9 (Newton-Verfahren). Es sei f ∈ C1[a, b] und x0 ∈ [a, b] ein geeigneterStartwert. Die Tangente an f ist durch

t(x) = f(xk) + (x− xk)f ′(xk), k = 0, 1, 2, . . . ,

gegeben. Dann ist die Nullstelle xk+1 der Tangente bestimmt durch

xk+1 = xk −f(xk)f ′(xk)

, k = 0, 1, 2, . . . . (7.3)

Die Iteration wird bei Erfüllung des Abbruchkriteriums 7.12 beendet.

117

Page 126: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

Diese Iteration ist möglich, solange f ′(xk) 6= 0.

fx1 x0

Abbildung 7.3.: Geometrische Interpretation des Newton-Verfahrens.

Die Iteration 7.3 gehört (wie in der Motivation bereits erwähnt) zur Klasse der Fixpunk-titerationen mit der Iterationsfunktion

F (x) := x− f(x)f ′(x) . (7.4)

Für einen Fixpunkt x = F (x) gilt offenbar f(x) = 0.

Als Hauptresultat des Abschnitts zeigen wir

Satz 7.10 (Newton-Verfahren). Die Funktion f ∈ C2[a, b] habe im Innern des Intervalls[a, b] eine Nullstelle x, und es seien

m := mina≤x≤b

|f ′(x)| > 0, M := maxa≤x≤b

|f ′′(x)|. (7.5)

Es sei ρ > 0 so gewählt, dass

ρ0 := M

2mρ < 1, Kρ(x) := {x ∈ R : |x− x| ≤ ρ} ⊂ [a, b]. (7.6)

Dann sind für jeden Startpunkt x0 ∈ Kρ(x) die Newton-Iterierten xk ∈ Kρ(x) definiertund konvergieren gegen die Nullstelle x. Desweiteren gelten die a priori Fehlerabschätzung

|xk − x| ≤2mM

ρ2k0 , k ∈ N,

und die a posteriori Fehlerabschätzung

|xk − x| ≤1m|f(xk)| ≤

M

2m |xk − xk−1|2, k ∈ N.

118

Page 127: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7.4. Das Newton-Verfahren in 1D

Beweis: (i)Wir rekapitulieren zunächst einige Resultate aus der Analysis. Für zwei Punk-te x, y ∈ [a, b], x 6= y, gilt aufgrund des Mittelwertsatzes der Differentialrechnung∣∣∣∣f(x)− f(y)

x− y

∣∣∣∣ = |f ′(ζ)| ≥ m,

mit einem ζ ∈ [x, y]. Demnach gilt:

|x− y| ≤ 1m|f(x)− f(y)|. (7.7)

Daraus folgt, dass die Nullstelle x von f die einzige in [a, b] ist.

Als zweites Hilfsmittel nutzen wir die Taylor-Formel mit Restglied zweiter Ordnung:

f(y) = f(x) + (y − x)f ′(x) + (y − x)2∫ 1

0f ′′(x+ s(y − x))(1− s) ds. (7.8)

Wir setzen

R(y;x) := (y − x)2∫ 1

0f ′′(x+ s(y − x))(1− s) ds = f(y)− f(x)− (y − x)f ′(x). (7.9)

Unter Berücksichtigung der Voraussetzung für f ′′ erhalten wir

|R(y;x)| ≤M |y − x|2∫ 1

0(1− s) ds = M

2 |y − x|2. (7.10)

(ii) Wir werden als nächstes zeigen, dass für jeden Wert x ∈ Kρ(x) auch F (x) ∈ Kρ(x)gilt, das also F (·) eine Selbstabbildung der Kugel Kρ(x) ist. Für x ∈ Kρ(x) nutzen wir dieIterationsfunktion (7.4), so dass gilt

F (x)− x = x− f(x)f ′(x) − x = − 1

f ′(x)(f(x) + (x− x)f ′(x)

).

Mit (7.9) für y = x folgt:

−R(x;x) =(f(x) + (x− x)f ′(x)

).

Zusammenfassend erhalten wir mit (7.5) und (7.6)

|F (x)− x| ≤ |R(x;x)||f ′(x)| ≤

M

2m |x− x|2 ≤ M

2mρ2 < ρ. (7.11)

Dies impliziert, dass F (x) ∈ Kρ(x). Die Abbildung F ist eine Selbstabbildung in Kρ(x).Insbesondere bedeutet dies wegen xk+1 = F (xk) für x0 ∈ Kρ(x) auch alle Newton-Iterierten xk in Kρ(x) liegen.

(iii) Wir setzenρk := M

2m |xk − x|,

119

Page 128: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

so dass mit Hilfe von (7.11) folgt:

ρk = M

2m |xk − x| =M

2m |F (xk−1)− x| ≤ M

2m

(M

2m |xk−1 − x|2)

= ρ2k−1.

Dies führt induktiv auf:

ρk ≤ ρ2k−1 ≤ . . . ≤ ρ2k

0 , |xk − x| ≤2mM

ρ2k0 .

Für

ρ0 = M

2m |x0 − x| ≤M

2mρ < 1

konvergieren die Iterierten xk → x für k → ∞. Desweiteren haben wir die a priori Ab-schätzung gezeigt.

(iv) Es bleibt die a posteriori Fehlerabschätzung zu beweisen. Hierzu nutzen verwendenwir (7.7) (MWS). Es folgt sofort die erste Abschätzung.

|xk − x| ≤1m|f(xk)− f(x)|.

Wir verwenden weiter die Formel für das Restglied (7.9) und setzen die Iterationsvorschriftdes Newton-Verfahrens sein:

R(xk, xk−1) = f(xk)− f(xk−1)− (xk − xk−1)f ′(xk−1)︸ ︷︷ ︸=−f(xk−1)

= f(xk).

Also, mit der Abschätzung (7.10) und der ersten a posteriori Abschätzung gilt:

|xk − x| ≤|f(xk)|m

= |R(xk, xk−1)|m

≤ M

2m |xk − xk−1|2.

Beispiel 7.11 (Newton-Verfahren und Intervallschachtelung). Wir betrachten die Funk-tion f aus der Einleitung:

f(x) = x(1 + exp(x)) + 10 sin(3 + log(x2 + 1))

Wir haben argumentiert, dass f(x) < 0 für x < −10 und f(x) > 0 für x > 10 gilt. ImIntervall [−10, 10] liegt somit mindestens eine Nullstelle. In der Tat hat die Funktion indiesem Intervall 5 Nullstellen. Es gilt (6 Stellen Genauigkeit)

x1 = −9.16359, x2 = −8.65847, x2 = −0.304487, x4 = 0.608758, x5 = 1.54776

120

Page 129: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7.4. Das Newton-Verfahren in 1D

Wir führen zunächst die Intervallschachtelung durch:

a f(a) b f(b) x f(x) b− a0 −10 − 10 + 0 + 201 −10 − 0 + −5 − 102 −5 − 0 + −2.5 − 53 −2.5 − 0 + −1.25 − 2.54 −0.625 − 0 + −0.3125 − 1.255 −0.3125 − 0 + −0.15625 + 0.6256 −0.3125 − −0.15625 + −0.234375 + 0.3125

...15 · · · − · + −0.30449 · 0.000153

Nach 15 Schritten erhalten wir eine Approximation x ≈ −0.30449, welche höchstens denFehler |x − x| ≤ 0.000153 besitzt. Verglichen mit der exakten Nullstelle gilt |x − x3| ≈0.000002.

Wir führen nun das Newton-Verfahren aus. Hierbei gilt es einen Startwert zu wählen.Eigentlich müsste dieser Startwert im Sinne von Satz 7.10 gewählt werden. Dies ist beider vorliegenden Funktion jedoch nur schwer möglich. Wir wählen daher zunächst x0 = 0.Es folgt:

x0 = 0

x1 = x0 −f(x0)f ′(x0) ≈ −0.705600 x1 − x ≈ −0.40

x2 = x1 −f(x1)f ′(x1) ≈ −0.349442 x2 − x ≈ −0.045

x3 = x2 −f(x2)f ′(x2) ≈ −0.306245 x3 − x ≈ −0.00174

x4 = x3 −f(x3)f ′(x3) ≈ −0.304490 x4 − x ≈ −0.000003

Nach nur 4 Schritten sind die ersten 5 wesentlichen Stellen exakt bestimmt. Dieses Beispielzeigt einerseits die Überlegenheit des Newton-Verfahrens, jedoch auch die Schwierigkeit,den Startwert richtig zu wählen. Wir betrachten z.B. als Startwert das linke Intervallende:

x0 = −10

x1 = x0 −f(x0)f ′(x0) ≈ −9.46454 x1 − x ≈ 0.3

x2 = x1 −f(x1)f ′(x1) ≈ −9.24183 x2 − x ≈ 0.08

x3 = x2 −f(x2)f ′(x2) ≈ −9.17249 x3 − x ≈ 0.008

x4 = x3 −f(x3)f ′(x3) ≈ −9.16373 x4 − x ≈ 0.00009

121

Page 130: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

und konvergieren gegen x1. Wenn alle 5 Nullstellen gefunden werden sollen, so müssenjeweils gute Startwerte vorliegen. Diese könnten z.B. mit einer Rasterung des Intervals,also z.B. durch Berechnen aller f(xi) für xi = ih, z.b. mit h = 1 und i = −10,−9, . . . , 10erfolgen.

Im Beweis zum Newton-Verfahren haben wir die Beziehung

|xk − x| ≤M

2m |xk − xk−1|2

hergeleitet. Dies legt das folgende Abbruchkriterium für das Newton-Verfahren nahe:

Bemerkung 7.12 (Abbruchkriterium des Newton-Verfahrens). Die Iteration wird beendet(d.h. wir haben eine akzeptable Lösung xakzeptabel gefunden), falls

|xk+1 − xk||xk|

< TOL, (7.12)

wobei die Tolerenz TOL beispielsweise durch TOL = 10−12 gegeben ist. Das Abbruchkri-terium (7.12) misst den relativen Abstand zwischen zwei aufeinanderfolgenden Iteriertenxk+1 und xk; in anderen Worten, falls zwei Iterierte nah genug beieinander liegen, dannist die Nullstelle näherungsweise bestimmt.

Bemerkung 7.13 (Alternatives Abbruchkriterium des Newton-Verfahrens). Aufgrundder Konstruktion des Newton-Verfahrens gilt:

xk+1 = xk −f(xk)f ′(xk)

, k = 0, 1, 2, . . . ,

so dass mit Hilfe der Voraussetzung aus Satz 7.10

m := mina≤x≤b

|f ′(x)| > 0,

gilt|xk+1 − xk| =

∣∣∣∣ f(xk)f ′(xk)

∣∣∣∣ ≤ ∣∣∣∣f(xk)m

∣∣∣∣ .Das heißt, ein kleines Residuum f(xk) kann ebenfalls (bei festem m) als (absolutes) Ab-bruchkriterium genutzt werden:

|f(xk)| < TOL. (7.13)

Bemerkung 7.14. Für eine zweimal stetig differenzierbare Funktion f existiert zu jedereinfachen Nullstelle x stets eine (evtl. sehr kleine) Umgebung Kρ(x), für die die Voraus-setzungen von Satz 7.10 erfüllt sind. Das Problem beim Newton-Verfahren ist also dieBestimmung eines im Einzugsbereich der Nullstelle x gelegenen Startpunktes x0 (lokaleKonvergenz). Dieser Startwert kann z.B. mit Hilfe der Intervallschachtelung (siehe ent-sprechende Bemerkung oben) berechnet werden. Dann konvergiert das Newton-Verfahrensehr schnell (quadratische Konvergenz) gegen die Nullstelle x.

122

Page 131: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7.4. Das Newton-Verfahren in 1D

Bemerkung 7.15. Das Newton-Verfahren kann auch zur Bestimmung von doppeltenNullstellen genutzt werden, allerdings konvergiert das Verfahren dann nur noch linear,d.h. p = 1, was in Beispiel 7.23 explizit gezeigt wird.

Beispiel 7.16. Falls der Startpunkt x0 im Einzugsbereich des quadratischen Konvergenzliegt, dann konvergiert das Newton-Verfahren sehr schnell gegen die gesuchte Nullstelle.Es sei z.B. q ≤ 1

2 , dann gilt nach nur 10 Iterationsschritten

|x10 − x| ≤2mM

q210 ∼ 2mM

10−300.

Beispiel 7.17 (Wurzelberechnung). Die n-te Wurzel einer Zahl a > 0 ist die Nullstelleder Funktion f(x) = xn − a. Das Newton-Verfahren zur Berechnung von x = n

√a > 0

lautet (mit f ′(x) = nxn−1):

xk+1 = xk −xnk − anxn−1

k

= 1n

{(n− 1)xk + a

xn−1k

}.

Folgende Spezialfälle leiten sich daraus ab:

xk+1 = 12

{xk + a

xk

}, (Quadratwurzel),

xk+1 = 13

{2xk + a

x2k

}, (Kubikwurzel),

xk+1 = (2− axk)xk, (Kehrwert).

Aufgrund von Satz 7.10 konvergiert xk → x für k →∞, falls x0 nahe genug bei x gewähltwird. Bei diesem Beispiel ist die Konvergenz allerdings für alle x0 > 0 gesichert, dadie Folge (xk)k∈N monoton fällt und notwendig gegen x = n

√a konvergiert. Quadratische

Konvergenz liegt im Allgemeinen erst nach einigen Iterationsschritten vor.

Bemerkung 7.18. Wie in dem vorangegangen Beispiel wird auf vielen Rechnern die Wur-zel n√a berechnet. Desweiteren ermöglicht die Darstellung zur Berechnung des Kehrwertes

die Berechnung ohne Ausnutzung der Division sondern lediglich unter Zuhilfenahme vonMultiplikationen und Subtraktionen.

7.4.2. Das Newton-Verfahren als Defekt-Korrektur

In der Praxis wird das Newton-Verfahren oft als Defektkorrektur-Iteration ausgeführt. Wirdefinieren:

Definition 7.19 (Defekt). Es sei x ∈ R eine Approximation der Lösung von f(x) = y.Mit

d(x) = y − f(x)

wird der Defekt bezeichnet. Der Defekt wird auch als das Residuum bezeichnet.

123

Page 132: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

Es sei im Folgenden y = 0 (falls nicht transformieren wir die Gleichung entsprechendum), so dass wir wie üblich ein Nullstellenproblem lösen. Für die Approximation xk istdurch dk := 0 − f(xk) der Defekt der k-ten Iterierten gegeben und wir schreiben dasNewton-Verfahren in der Form:

Definition 7.20 (Newton-Verfahren als Defektkorrektur).

Löse f ′(xk)δx = dk, dk := −f(xk),Berechne xk+1 = xk + δx, k = 0, 1, 2, . . . .

Die Iteration wird bei Erfüllung des Abbruchkriteriums 7.12 beendet.

Diese Art der Berechnung kann bei vielen Fixpunktiterationsverfahren angewendet werden(nicht bei allen!) und wird uns wieder bei der iterativen Lösung von linearen Gleichungs-systemen begegnen. Insbesondere hat das Defektkorrektur-Verfahren den Vorteil, dass dieAbleitung nicht mehr im Nenner steht - oder anders gesprochen, wir müssen nicht mehrdie Inverse der ersten Ableitung explizit angegeben. Für 1D Funktionen ist die expliziteAngabe kein Problem. Wie verhält es sich aber bei höherdimensionalen Funktionen? DerDefekt d(x) = y − f(x) einer Gleichung ist eng mit dem Fehler x − x verbunden. Es giltder folgende allgemeine Satz:

Satz 7.21 (Defekt-Fehler Abschätzung). Es sei f ∈ C1[a, b] eine differenzierbare Funk-tion und x ∈ (a, b) die Lösung von f(x) = y. Für die Approximation x ∈ (a, b) gilt dieFehlerabschätzung

|x− x| ≤ 1m|d(x)|,

mit m = minx∈[a,b] |f ′(x)|.

Beweis: Es gilt mit einem ξ ∈ [a, b]:

d(x) = y − f(x) = f(x)− f(x)x− x

(x− x) = f ′(ξ)(x− x).

Hieraus folgt sofort die Behauptung. �

7.4.3. Das gedämpfte Newton-Verfahren

Das Hauptproblem bei der Durchführung des Newton-Verfahrens ist die Bestimmung einesgeeigneten Startwertes x0 (siehe obige Bemerkungen), so dass quadratische Konvergenzerwartet werden kann. Deshalb wird in der Praxis häufig mit einer Variante gearbeitet,dem sogenannten gedämpften Newton-Verfahren:

124

Page 133: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7.4. Das Newton-Verfahren in 1D

Definition 7.22 (Gedämpftes Newton-Verfahren). Es sei x0 ein geeigneter Startwert. DieDefektkorrektur-Iteration des gedämpften Newton-Verfahrens lautet:

Löse f ′(xk)δx = −f(xk),Berechne xk+1 = xk + λkδx, k = 0, 1, 2, . . . ,

wobei λk ∈ (0, 1] den sog. Dämpfungsparameter bezeichnet.

Je kleiner λk gewählt wird, desto geringer ist der Abstand zwischen xk+1 und xk. Einkleines λ kann helfen, um Konvergenz zu sichern, obwohl der Einzugbereich der quadra-tischen Konvergenz noch nicht erreicht ist. So wird vermieden, dass die Iteration weit ausdem Einzugsbereich herausspringen kann. Eine optimale Wahl von λk kann abh. von derProblemstellung sehr kompliziert werden.

7.4.4. Mehrfache Nullstellen

Das Newton-Verfahren kann auch zur Suche von doppelten Nullstellen verwendet werden,allerdings konvergiert es nur noch höchstens superlinear bei mehrfachen Nullstellen.

Es sei x eine zweifache Nullstelle der Funktion f , d.h. f(x) = f ′(x) = 0 und f ′′(x) 6= 0.Dann gilt mit Zwischenwerten ζk, ηk ∈ [xk, x]:

xk+1 = xk −f(xk)f ′(xk)

= xk −f(xk)− f(x)f ′(xk)− f ′(x)

xk − xxk − x

= xk −f ′(ζk)f ′′(ηk)

.

Beispiel 7.23 (Konvergenzordnung Newton für doppelte Nullstellen). Für das Newton-Verfahren zur Bestimmung einer einfachen Nullstelle der Funktion f lautet die Iterations-funktion g(x) = x− f(x)

f ′(x) . Mit Hilfe des Satzes 7.28 gilt

g′(x) = 1− f ′(x)2 − f(x)f ′′(x)f ′(x)2 = 0.

Sei nun ebenfalls f ′(x) = 0 (doppelte Nullstelle). Hier können wir nun die Regel vonL’Hopital verwenden

limx→x

g′(x) = f ′′(x) limx→x

f(x)f ′(x)2 = f ′′(x) lim

x→x

f ′(x)2f ′(x)f ′′(x) = f ′′(x) 1

2f ′′(x) = 12 .

Damit ist das Newton-Verfahren nach Satz 7.28 zur Bestimmung doppelter Nullstellen nurlinear konvergent.

Im Fall von mehrfachen Nullstellen lässt sich die quadratische Konvergenzordnung desNewton-Verfahrens durch einen Trick erreichen. Wir machen zur Iteration den Ansatz:

xk+1 = xk − ωf(xk)f ′(xk)

125

Page 134: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

mit einem Relaxationsparameter ω, ähnlich dem gedämpften Newton-Verfahren. Ange-nommen, es liegt eine p-fache Nullstelle vor f(x) = f ′(x) = . . . = f (p−1)(x) = 0 undf (p)(x) 6= 0, so wählen wir ω = p. Da ω > 1 sprechen wir von Überrelaxation. Das sogewonnene Verfahren konvergiert wieder quadratisch. Der Beweis findet sich in der Lite-ratur, etwa [10], S. 168. Der praktische Nutzen dieser Modifikation ist beschränkt, da manbei der Suche nach einer Nullstelle üblicherweise nicht deren Vielfachheit kennt.

7.4.5. Das vereinfachte Newton-Verfahren

Häufig ändert sich im Verlauf der Newton-Iteration die Ableitung f ′(x) nicht mehr gra-vierend. In diesem Fall eignet sich das vereinfachte Newton-Verfahren. Die Idee ist rechteinfach: Berechne die Ableitung f ′(x) nur wenige Male (im Idealfall nur für x0) und belassediese für alle weiteren Schritte bei diesem Wert:

Definition 7.24 (Vereinfachtes Newton-Verfahren). Zu einem Startwert x0 ∈ R werdenApproximationen durch die folgende Vorschrift gebildet:

xk+1 = xk −f(xk)f ′(c) , k = 0, 1, 2, . . . .

Hierbei ist c ein fest gewählter Punkt, etwa c = x0.

Das vereinfachte Newton-Verfahren konvergiert nur noch linear. Die Konvergenz kannjedoch, falls f ′(c) eine gute Approximation für f ′(xk) ist, sehr gut sein. Das vereinfachteNewton-Verfahren spielt dann seine Vorteile aus, falls die erste Ableitung aufwendig zuberechnen ist was bei den hier betrachteten Beispielen nicht der Fall ist, aber bei derNullstellensuche im Rn (siehe Kapitel 8) oder bei Problemen mit Differentialgleichungenvorkommen kann.

Dieses Verfahren kann in der theoretischen Analyse als ein Spezialfall der allgemeinenFixpunktiteration aufgefasst werden. Wir verweisen hierzu auf Kapitel 8 und [10], S. 162.

7.5. Weitere Verfahren zur Nullstellensuche

Das Newtonverfahren ist eines der wichtigsten numerischen Verfahren zur Nullstellenbe-stimmung. Es ist nicht nur auf den Fall Rd mit d > 1 erweiterbar, sondern wird auchzur Lösung von Differentialgleichungen häufig genutzt, wobei die Differentialgleichungs-aufgabe wiederum in Form eines Nullstellenproblems formuliert wird (siehe weiterführendeLiteratur [12, 11, 13] und enthaltene Literaturverweise).

Im diesem Abschnitt fassen wir kurz weitere Verfahren zur Nullstellensuche zusammen.Zum tieferen Verständnis sei auf die jeweils angegebene Literatur verwiesen.

126

Page 135: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7.5. Weitere Verfahren zur Nullstellensuche

Sekantenverfahren

Das Sekantenverfahren gehört zur Klasse der Interpolationsmethoden und hat eine direk-te Verbindung zu dem bereits kennengelernten Newtonverfahren. Geometrisch betrach-tet wird bei dem Newton-Verfahren eine Tangente an die Funktion gelegt, während beidem Sekantenverfahren eine Sekante als Approximation zur Ableitung f ′(x) genutzt wird.Hierdurch wird die explizite Berechnung von f ′(x) vermieden. Dies macht Sinn, falls f ′(x)schwierig/aufwendig zu berechnen ist.

Konkret wird bei dem Sekantenverfahren die Ableitung f ′(x) durch einen Differenzenquo-tienten ersetzt, etwa durch

f ′(xk) ∼f(xk)− f(xk−1)

xk − xk−1.

Die Iterationsvorschrift erfordert zwei Startwerte x0 und x1, so dass

xk+1 = xk −xk − xk−1

f(xk)− f(xk−1)f(xk).

Eine wichtige Beobachtung ist, dass die Sekantenmethode unter Umständen zur Auslö-schung im Nenner neigt (zur Auslöschung siehe Kapitel 1). Analog zum Newton-Verfahrenkann eine Analyse mit entsprechender Fehlerabschätzung durchgeführt werden. Hierzuverweisen wir auf [10], Satz 5.3 auf S. 167. Das Sekanten-Verfahren ist eine Kuriosität, dakeine ganzzahlige Konvergenzordnung vorliegt. Stattdessen gilt asymptotisch:

|xk − x| ≤ Cqγkk , γk →

12(1 +

√5) ≈ 1.6818,

also eine Ordnung von etwa 1.6. Die Konstante q hängt wie beim Newton-Verfahren vomEinzugsbereich ab.

In Kombination mit der bereits diskutierten Intervallschachtelung in Abschnitt 7.3 erhaltenwir ein stabilisiertes Verfahren:

Definition 7.25 (Regula falsi). Es sei f eine stetige Funktion auf [a0, b0] := [a, b] mitf(a)f(b) < 0. Für den Startwert x0 ∈ [a0, b0] erfolgt die Iteration

xn+1 := an −f(an)(bn − an)f(bn)− f(an)

Dann ist das nächste Intervall gegeben durch

[an+1, bn+1] =

[an, xn] falls f(an)f(xn) < 0,[xn, bn] falls f(xn)f(bn) < 0,[xn, xn] falls f(xn) = 0,

In Worten bedeutet dies, dass das Verfahren approximierende Geraden (Sekanten) bil-det, aber analog zur Intervallschachtelung die Nullstelle durch kleiner werdende Intervalleeinschließt.

127

Page 136: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

Sukzessive Approximation

Die sukzessive Approximation basiert auf dem Banachschen Fixpunktsatz. Das Verfah-ren eignet sich insbesondere zur Nullstellenbestimmung höherdimensionaler Funktionen.Daher verweisen wir auf Kapitel 8 für eine ausführliche Diskussion.

7.6. Konvergenzbegriffe

In diesem Abschnitt wird die Konvergenz iterativer Verfahren anhand der bereits disku-tierten Beispiele in einen allgemeinen Rahmen gefasst. Die theoretischen Resultate werdenallgemein für Fixpunktpunktverfahren hergeleitet, so dass das Newton-Verfahren als einSpezialfall aufgefasst werden kann. Die Aussagen dieses Abschnitts sind auf andere ite-rative Verfahren, die wir später kennenlernen werden ebenfalls anwendbar, z.B. auf dieiterative Lösung von Gleichungssystemen.

Definition 7.26 (Konvergenzordnung). Wir nennen ein Iterationsverfahren zur Berech-nung einer Nullstelle x von Konvergenz mit der Ordnung p mit p ≥ 1, wenn gilt

|xk − x| ≤ c|xk−1 − x|p,

mit einer festen Konstanten c > 0. Im Fall p = 1, d.h. linearer Konvergenz heißt die besteKonstante c ∈ (0, 1) die lineare Konvergenzrate. Gilt bei linearer Konvergenzrate zusätzlichck → 0 für k →∞, d.h.

|xk − x| ≤ ck |xk−1 − x|,

so sprechen wir von superlinearer Konvergenz.

Die folgenden Überlegungen sind durch die bereits bekannten Abschätzungen motiviert.Für die Intervallschachtelung gilt:

|xn − x| ≤b− a2n+1 ,

mit der Konvergenzrate 12 und der Konvergenzordnung p = 1 (lineare Konvergenz).

Das Newtonverfahren besitzt (lokal) in der Umgebung einer Nullstelle das Konvergenzver-halten

|xk − x| ≤ c |xk−1 − x|2.Wir sprechen von einem quadratisch konvergenten Verfahren oder auch von einem Verfah-ren 2-ter Ordnung.

Grundsätzlich gilt (zumindest asymptotisch), dass superlinear konvergente Folgen schnel-ler als (schlicht) lineare Folgen konvergieren. Außerdem konvergieren Verfahren mit Ord-nung p+1 schneller als Verfahren mit der Ordnung p. Außerdem gilt, je kleiner die Konver-genzrate c ist, desto schneller ist die Konvergenz. Allerdings hat die Konvergenzordnungwesentlich größeren Einfluss auf die Konvergenzgeschwindigkeit, als die Konvergenzrate.

128

Page 137: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7.6. Konvergenzbegriffe

Im Folgenden betrachten wir Fixpunktprobleme der Form

xk+1 = g(xk), k = 0, 1, 2, . . . .

Bei Fixpunktiterationen mit stetig differenzierbarer Abbildung g(·) gilt mit dem Mittel-wertsatz der Analysis:∣∣∣∣xk+1 − x

xk − x

∣∣∣∣ =∣∣∣∣g(xk)− g(x)

xk − x

∣∣∣∣→ |g′(x)| für k →∞. (7.14)

Hieraus folgern wir, dass die lineare Konvergenzrate asymptotisch für k →∞ gerade gleich|g′(x)| ist. Dementsprechend liegt im Falle g′(x) = 0 (mindestens) superlineare Konvergenzvor.

Aus (7.14) können wir folgende Definition ableiten:

Definition 7.27. Ein Fixpunkt x einer stetig differenzierbaren Abbildung g(·) heißt an-ziehend, falls |g′(x)| < 1 ist. Im Fall |g′(x)| > 1, wird ein Fixpunkt abstoßend genannt.

Der folgende Satz liefert ein einfaches Kriterium zur Bestimmung der Konvergenzordnungeiner differenzierbaren Fixpunktiteration. Er kann auch zur Konstruktion von Verfahrenmit hoher Ordnung genutzt werden:

Satz 7.28 (Iterative Verfahren mit Ordnung p ≥ 2). Die Funktion g(·) sei in einer Um-gebung des Fixpunktes x p-mal stetig differenzierbar. Die Fixpunktiteration xk+1 = g(xk)hat genau dann die Ordnung p, wenn

g′(x) = . . . = g(p−1)(x) = 0 und g(p) 6= 0.

Beweis:

• Teil 1 (Rückrichtung)Es seien g′(x) = . . . = g(p−1)(x) = 0. Mit Hilfe der Taylorformal gilt:

xk+1− x = g(xk)−g(x) =p−1∑j=1

(xk − x)j

j! g(j)(x) + (xk − x)p

p! g(p)(ξk), ξk ∈ (xk+1, x).

Damit erhalten wir die Abschätzung:

|xk+1 − x| ≤1p! max |g(p)| |xk − x|p.

• Teil 2 (Hinrichtung)Es sei nun umgekehrt die Iteration von p-ter Ordnung, sprich

|xk+1 − x| ≤ c|xk − x|p.

129

Page 138: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

Falls es ein minimales m ≤ p − 1 mit g(m)(x) 6= 0 gäbe, aber g(j)(x) = 0, j =1, . . . ,m−1, so würde jede Iterationsfolge (xk)k∈N mit hinreichend kleinem |x0−x| 6=0) notwendig gegen x konvergieren wie

|xk − x| ≤∣∣∣∣ 1m!g

(m)(ξk)∣∣∣∣ |xk−1 − x|m,

also mit der Ordnung m. Hier finden wir aber einen Widerspruch zu der Annahme,dass die Iteration von der Ordnung p ist:

|g(m)(x)| = limk→∞

|g(m)(ξk)| ≤ c m! limk→∞

|xk − x|p−m = 0.

Hieraus folgt, dass für g′(x) = . . . = g(p−1)(x) = 0, aber g(p)(x) 6= 0, dass dieIteration nicht von höherer Ordnung als p sein kann.

Beispiel 7.29 (Darstellung des Newton-Verfahrens als Fixpunktverfahren). Die allgemei-ne Fixpunktiteration lautet

xk+1 = g(xk), k = 0, 1, 2, . . . . (7.15)

Das bereits diskutierte Newton-Verfahren lässt sich in dieser Notation wie folgt herleiten.Es sei wie üblich f die Funktion des Nullstellenproblems und h eine hinreichend glatteFunktion, die in einer Umgebung der Nullstelle x nicht verschwindet. Es sei

g(x) := x+ h(x)f(x), (7.16)

mit der Fixpunkt-Eigenschaft g(x) = x die zu (7.15) zugehörige Iterationsfunktion. Wirwollen h(x) so bestimmen, dass wir eine Fixpunktiteration der Ordnung 2 erhalten. An-wendung der Produktregel und Satz 7.28 ergeben in x:

g′(x) := 1 + h′(x) f(x)︸ ︷︷ ︸=0

+h(x)f ′(x) != 0.

Hieraus folgt die Bedingung an h(x) in x:

h(x) = − 1f ′(x) .

Wir wählen h(x) nun für alle x gemäß diese Vorschrift, so dass

h(x) := − 1f ′(x) .

Einsetzen in (7.16) liefert die Iterationsfunktion

g(x) := x− f(x)f ′(x) ,

und der Iterationsvorschrift

xk+1 := g(xk) = xk −f(xk)f ′(xk)

, k = 0, 1, 2, . . . .

130

Page 139: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7.7. Nullstellensuche im Rn

Beispiel 7.30 (Konvergenzordnung Newton für einfache Nullstellen). Im umgekehrtenFall zu Beispiel 7.29 sei das Newton-Verfahren nun als bekannt vorausgesetzt. Mit Hilfe desSatzes 7.28 kann explizit die Konvergenzordnung des Newton-Verfahrens ermittelt werden:

g′(x) = 1− f ′(x)2 − f(x)f ′′(x)f ′(x)2 = 0,

und im Allgemeinen g′′(x) 6= 0. Damit ist das Newton-Verfahren (wie bereits vorher dis-kutiert) quadratisch konvergent.

7.7. Nullstellensuche im Rn

In diesem Kapitel betrachten wir Funktionen f : Rn → Rn und suchen Nullstellen z ∈ Rn,also Punkte mit

f(z) = 0.

Im Fall n > 1 handelt es sich hierbei um nichtlineare Gleichungsysteme. Lineare Glei-chungssysteme lassen sich als Spezialfall dieser Aufgabe schreiben. Für eine Matrix A ∈Rn×n und einen Vektor b ∈ Rn lässt sich die Lösung des LGS Ax = b als Nullstellensuchemit der Funktion

f(x) = b−Ax,

schreiben.

Wir betrachten im Folgenden Iterationen der Art

x0 ∈ Rn, xk+1 = g(xk), k = 0, 1, 2, . . . , (7.17)

mit einer Abbildung g(·) : Rn → Rn.

Definition 7.31 (Fixpunkt). Es sei g : Rn → Rn. Ein Punkt x ∈ Rn heißt Fixpunkt vong, falls g(x) = x.

Für das weitere Vorgehen sei ‖ · ‖ eine beliebige Norm auf Rn und ‖ · ‖ die entsprechendenatürliche Matrizennorm, siehe Definition 2.14.

Zunächst rekapitulieren wir die bereits aus der Analysis bekannte Lipschitz-Stetigkeit einerFunktion:

Definition 7.32 (Lipschitz-Stetigkeit, Kontraktion). Es sei G ⊂ Rn eine nichtleere Men-ge. Eine Abbildung g : G→ Rn wird Lipschitz-stetig genannt, falls

‖g(x)− g(y)‖ ≤ q‖x− y‖, x, y ∈ G,

mit q > 0. Falls 0 < q < 1, so nennt man g eine Kontraktion auf G.

Zur Rekapitulation:

131

Page 140: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

Bemerkung 7.33. Auf einer beschränkten Menge gilt: Differenzierbarkeit ⇒ absoluteStetigkeit ⇒ Lipschitz-Stetigkeit ⇒ gleichmäßige Stetigkeit ⇒ Stetigkeit.

Zum Beispiel ist die Wurzelfunktion f(x) =√x auf [0, 1] zwar gleichmäßig stetig aber

nicht Lipschitz-stetig.

Der Banachsche Fixpunktsatz besagt nun, dass jede Selbstabbildung g : G → G, welcheeine Kontraktion ist, einen Fixpunkt besitzt:

Satz 7.34 (Banach’scher Fixpunktsatz). Es sei G ⊂ Rn eine nichtleere und abgeschlossenePunktmenge und g : G→ G eine Lipschitz-stetige Selbstabbildung, mit Lipschitz-Konstanteq < 1 (also eine Kontraktion).

• Dann existiert genau ein Fixpunkt z ∈ G von g und die Iterationsfolge (xk)k (7.17)konvergiert für jeden Startpunkt x0 ∈ G, so dass xk → z für k →∞.

• Es gilt die a priori Abschätzung:

‖xk − z‖ ≤ qk

1− q‖x1 − x0‖.

• Es gilt die a posteriori Abschätzung:

‖xk − z‖ ≤ q

1− q‖xk − xk−1‖.

Beweis:

(i) Existenz eines Grenzwertes. Da g eine Selbstabbildung in G ist, sind alle Iteriertenxk = g(xk−1) = . . . = gk(x0) bei Wahl eines beliebigen Startpunkts x0 ∈ G definiert.Aufgrund der Kontraktionseigenschaft gilt:

‖xk+1 − xk‖ = ‖g(xk)− g(xk−1)‖ ≤ q‖xk − xk−1‖ ≤ . . . ≤ qk‖x1 − x0‖.

Wir zeigen, dass (xk)k eine Cauchy-Folge ist. Für jedes l ≥ m erhalten wir:

‖xl − xm‖ ≤ ‖xl − xl−1‖+ . . .+ ‖xm+1 − xm‖≤ (ql−1 + ql−2 + . . .+ qm)‖x1 − x0‖

= qm1− ql−m

1− q ‖x1 − x0‖

≤ qm 11− q‖x

1 − x0‖ → 0 (l ≥ m→ 0).

(7.18)

D.h., (xl)l∈N ist eine Cauchy-Folge. Da alle Folgenglieder in G liegen und G als abgeschlos-sene Teilmenge des Rn vollständig ist, existiert der Grenzwert xl → z ∈ G.

132

Page 141: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7.7. Nullstellensuche im Rn

(ii) Fixpunkteigenschaft. Als zweites weisen wir nach, dass z tatsächlich ein Fixpunkt vong ist. Aus der Stetigkeit von g folgt mit xk → z auch g(xk) → g(z). Dann gilt für dieIteration xk+1 := g(xk) bei Grenzübergang

z ← xk+1 = g(xk)→ g(z) (k →∞).

(iii) Eindeutigkeit. Die Eindeutigkeit folgt aus der Kontraktionseigenschaft. Es seien z undz zwei Fixpunkte von g. Dann ist

‖z − z‖ = ‖g(z)− g(z)‖ ≤ q‖z − z‖.

Dies kann wegen q < 1 nur dann gültig sein, wenn ‖z − z‖ = 0, d.h. z = z ist. Damit istder Fixpunkt eindeutig.

(iv) A priori Fehlerabschätzung. Es gilt mit (7.18)

‖z − xm‖ ←−−−l→∞

‖xl − xm‖ ≤ qm 11− q‖x

1 − x0‖.

(v) A posteriori Fehlerabschätzung. Es gilt wieder mit (7.18):

‖xm − z‖ ≤ q 11− q‖x

m − xm−1‖.

Zur Anwendung des Banachschen Fixpunktsatzes auf eine Abbildung g : G ⊂ Rn → Rn

müssen die beiden Voraussetzungen Selbstabbildung sowie Kontraktionseigenschaft nach-gewiesen werden. Angenommen, g sei eine Kontraktion. Dann müssen wir die Existenzeiner abgeschlossenen und nichtleeren Teilmenge von G nachweisen, welche von der Ab-bildung g auf sich selbst abgebildet wird. Angenommen, auf der Kugel

Kρ(c) := {x ∈ Rn| ‖x− c‖ ≤ ρ}, ρ > 0, c ∈ Rn,

sei g eine Kontraktion mit Lipschitz-Konstante q < 1. Dann gilt für x ∈ Kρ(c):

‖g(x)− c‖ ≤ ‖g(x)− g(c)‖+ ‖g(c)− c‖,

wobei ‖g(x)− g(c)‖ ≤ qρ. Falls zusätzlich gilt:

‖g(c)− c‖ ≤ (1− q)ρ,

dann ist‖g(x)− c‖ ≤ qρ+ (1− q)ρ = ρ

und g bildet in sich selbst ab.

Als nächstes rekapitulieren wir den Schrankensatz, der die erste Ableitung (partielle Ab-leitung) mit der Lipschitz-Stetigkeit verknüpft:

133

Page 142: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

Satz 7.35 (Schrankensatz). Die Abbildung g : G → Rn sei stetig differenzierbar auf derkonvexen und offenen Menge G. Es sei

L := supξ∈G|Dg(ξ)| <∞.

Dann gilt‖g(x)− g(y)‖ ≤ L ‖x− y‖, x, y ∈ G,

mit der partiellen Ableitung (Jacobi-Matrix, weiter unten ausführlicher)

Dg(x) =(∂gi∂xj

)i,j=1,...,n

∈ Rn×n.

Falls supξ∈G ‖Dg(ξ)‖ < 1, dann ist g eine Kontraktion auf G. Insbesondere gilt in 1D aufdem Intervall G := [a, b]:

q := maxξ∈[a,b]

|Dg(ξ)|.

Beweis: Der 1D-Fall ist ein Spezialfall des höher-dimensionalen Falles. Aufgrund seinerEinfachheit beweisen wir ihn separat.

(i) Der eindimensionale Fall. Es seien x, y ∈ [a, b]. Nach dem reellen Mittelwertsatz gibtes ein ξ ∈ [a, b], so dass

|g(x)− g(y)| = |Dg(ξ)(x− y)| = |Dg(ξ)| |x− y| ≤ q|x− y|.

(ii) Der n-dimensionale Fall. Es seien x, y ∈ G. Wir setzen aus Normierungsgründen füri = 1, . . . , n:

φi(s) := gi(x+ s(y − x)), 0 ≤ s ≤ 1.

Dann gilt

gi(x)− gi(y) = φi(1)− φi(0) =∫ 1

0φ′(s) ds.

Für die Ableitung gilt

φ′i(s) =n∑j=1

∂gi∂xj

(x+ s(y − x))(y − x)j .

Hiermit und den Stetigkeitseigenschaften der Vektornorm (eine Norm ist immer eine stetigeAbbildung!) folgt

‖g(y)− g(x)‖ =∥∥∥∥∫ 1

0Dg(x+ s(y − x)) · (y − x) ds

∥∥∥∥≤∫ 1

0‖Dg(x+ s(y − x))‖ ds ‖y − x‖

≤ supξ∈G‖Dg(ξ)‖ ‖y − x‖.

134

Page 143: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7.7. Nullstellensuche im Rn

Zusammenfassen der Ergebnisse liefert das wichtige:

Korollar 7.36. Zu jedem Fixpunkt z ∈ G der Abbildung g mit ‖Dg(z)‖ < 1 gibt es eineUmgebung

Kρ = {x ∈ Rn| ‖x− z‖ ≤ ρ} ⊂ G,

so das g eine Kontraktion von Kρ(z) in sich selbst ist.

Beispiel 7.37 (Konvergenz zur Lösung nicht-linearer Gleichungen). Zu f : Rn → Rn

suchen wir eine Nullstelle x ∈ Rn mit f(x) = 0. Mit einer Matrix C ∈ Rn×n definierenwir die Iteration:

x0 ∈ Rn, xk+1 = xk + C−1f(xk), k = 0, 1, 2, . . .

Dieses Verfahren konvergiert, falls f auf einer Kugel Kρ(c) ⊂ Rn stetig differenzierbar istund

supζ∈Kρ(c)

‖I + C−1Df(ζ)‖ =: q < 1, ‖C−1f(c)‖ ≤ (1− q)ρ.

Beispiel 7.38 (Lösung linearer Gleichungssysteme). Es seien A ∈ Rn×n und b ∈ Rngegeben. Das lineare Gleichungssystem ist äquivalent zur Nullstellenaufgabe

f(x) := b−Ax = 0.

Die iterative Lösung (im Gegensatz zur direkten Lösung) kann mit einer regulären MatrixC ∈ Rn×n als Fixpunktaufgabe hergeleitet werden:

x = g(x) := x+ C−1f(x) = x+ C−1(b−Ax) = (I − C−1A)x+ C−1b.

Die Matrix B := I −C−1A nennen wir die Iterationsmatrix der zugehörigen Fixpunktite-ration (auch sukzessive Approximation genannt):

xk+1 = Bxk + C−1b, k = 1, 2, . . . .

Die Abbildung g ist wegen

‖g(x)− g(y)‖ = ‖B(x− y)‖ ≤ ‖B‖‖x− y‖

für ‖B‖ < 1 mit B := I − C−1A eine Kontraktion auf ganz Rn. Dann konvergiert dieIterationsfolge gegen einen Fixpunkt von g und somit zur Lösung von Ax = b.

Bemerkung 7.39. Später werden wir mit Hilfe des Banachschen Fixpunktsatzes verschie-dene Verfahren zur iterativen Lösung von linearen Gleichungssystemen herleiten.

Bemerkung 7.40. Die Konvergenzanalyse der Fixpunktverfahren kann mit Hilfe der be-reits diskutieren Techniken in Kapitel 7.6 durchgeführt werden.

135

Page 144: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

7.7.1. Newton-Verfahren im Rn

Aufgrund seiner herausragenden Bedeutung widmen wir dem Newton-Verfahren für hö-here Dimensionen einen eigenen Abschnitt. Die prinzipiellen Aussagen (Existenz, quadra-tische Konvergenz, gedämpftes Newton-Verfahren, vereinfachtes Newton-Verfahren) sindmit dem 1D-Fall vergleichbar.

Es sei f : D ⊂ Rn → Rn. Wir suchen eine Lösung vom Nullstellenproblem f(x) =(f1(x), . . . , fn(x)) = 0. Wir beginnen mit einem Startwert x0 ∈ D und iterieren xk → xk+1.Die Newton-Iteration wird entsprechend dem eindimensionalen Fall hergeleitet. Um dieIteration xk herum linearisieren wir die Funktion f(·) durch Taylor-Entwicklung bis zurersten Stufe. Es gilt in beliebiger Richtung wk ∈ Rn

f(xk + wk) = f(xk) +n∑j=1

∂f

∂xj(xk)wkj +O(|wk|2).

Die neue Iteration xk+1 = xk +wk ist als Nullstelle der Linearisierung definiert. D.h., wirsuchen die Lösung wk ∈ Rn des linearen Gleichungssystems

n∑j=1

∂fi∂xj

(xk)wkj = −fi(xk), i = 1, . . . , n.

Mit der Jacobimatrix Df : Rn → Rn×n

Df =

∂f1∂x1

∂f1∂x2

· · · ∂f1∂xn

∂f2∂x1

∂f2∂x2

· · · ∂f2∂xn... . . . ...

∂fn∂x1

∂fn∂x2

· · · ∂fn∂xn

,

schreibt sich das zu lösende lineare Gleichungssystem kurz als

Df(xk)wk = −f(xk).

Hiermit lautet die Newton-Iteration mit Startwert x0 ∈ D für k = 0, 1, 2, . . .

x0 ∈ D, Df(xk)wk = −f(xk), xk+1 = xk + wk. (7.19)

Die Tatsache, dass die Ableitung von f(x) im mehrdimensionalen Fall eine Matrix ist,stellt den wesentlichen Unterschied zum eindimensionalen Newton-Verfahren dar. Anstel-le einer Ableitung sind nun n2 Ableitungen zu berechnen. Und anstelle einer Divisiondurch Df(xk) ist in jedem Schritt der Newton-Iteration ein lineares Gleichungssystem mitKoeffizientenmatrix Df(xk) ∈ Rn×n zu lösen.

Die zentrale Konvergenzaussage des Newton-Verfahrens wird im Satz von Newton-Kantorovichzusammengefasst. Hierzu sei f : D ⊂ Rn → Rn eine differenzierbare Abbildung. Mit ‖ · ‖bezeichnen wir stets die euklidische Vektornorm und die von ihr induzierte Matrixnorm,also die Spektralnorm. Wir suchen eine Nullstelle z ∈ D so dass f(z) = 0.

136

Page 145: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7.7. Nullstellensuche im Rn

Satz 7.41 (Newton-Kantorovich). Es sei D ⊂ Rn eine offene und konvexe Menge. Wei-terhin sei f : D ⊂ Rn → Rn stetig-differenzierbar.(1) Die Jacobi-Matrix Df sei gleichmäßig Lipschitz-stetig für alle x, y ∈ D:

‖Df(x)−Df(y)‖ ≤ L‖x− y‖, x, y ∈ D, (7.20)

mit einem L <∞.(2) Die Jacobi-Matrix habe auf D eine gleichmäßig beschränkte Inverse

‖Df(x)−1‖ ≤ β, x ∈ D, (7.21)

mit einem β <∞.(3) Es gelte für den Startpunkt x0 ∈ D:

q := αβL <12 , α := ‖Df(x0)−1f(x0)‖. (7.22)

(4) Für r := 2α sei die abgeschlossene Kugel

Br(x0) := {x ∈ Rn : ‖x− x0‖ ≤ r}

in der Menge D enthalten.Dann besitzt die Funktion f genau eine Nullstelle z ∈ Br(x0) und die Newton-Iteration

Df(xk)δx = −f(xk), xk+1 = xk + δx, k = 0, 1, 2, . . . ,

konvergiert quadratisch gegen diese Nullstelle z. Es gilt die a priori Fehlerabschätzung

‖xk − z‖ ≤ 2αq2k−1, k = 0, 1, . . . .

Beweis: Der Beweis zum Satz ist weitaus aufwändiger als im eindimensionalen Fall, dahergeben wir zunächst eine Skizze an:

(i) Herleitung einiger Hilfsabschätzungen.

(ii) Wir zeigen: alle Iterierten xk liegen in der Kugel Br(x0). Weiter gilt die a prioriFehlerabschätzung.

(iii) Wir zeigen, dass die Iterierten (xk)k∈N eine Cauchy-Folge sind und somit einenGrenzwert z haben.

(iv) Wir zeigen, dass dieser Grenzwert eine Nullstelle von f sein muss.

(v) Wir zeigen, dass es nur eine Nullstelle in Br(x0) geben kann.

Nun zum ausführlichen Beweis:

137

Page 146: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

(i) Es seien x, y, z ∈ D. Da D konvex ist, gilt für alle x, y ∈ D für j = 1, . . . , n:

fj(x)− fj(y) =∫ 1

0

d

dsfj(y + s(x− y)

)ds

=∫ 1

0

n∑k=1

∂fj∂xk

(y + s(x− y)

)(xk − yk) ds.

Mit Hilfe der Jacobimatrix Df gilt kurz:

f(x)− f(y) =∫ 1

0Df

(y + s(x− y)

)(x− y) ds.

Wir ziehen auf beiden Seiten Df(z)(x− y) ab:

f(x)− f(y)−Df(z)(x− y) =∫ 1

0

((Df(y + s(x− y)

)−Df(z)

)(x− y)ds.

Mit Hilfe der Lipschitz-Stetigkeit der Jacobimatrix Df folgern wir hieraus

‖f(y)− f(x)−Df(z)(y − x)‖ ≤ L‖y − x‖∫ 1

0‖s(x− z) + (1− s)(y − z)‖ ds

≤ L

2 ‖y − x‖(‖x− z‖+ ‖y − z‖

).

Für die Wahl z = x schließen wir damit auf

‖f(y)− f(x)−Df(x)(y − x)‖ ≤ L

2 ‖y − x‖2, ∀x, y ∈ D. (7.23)

Und für die die Wahl z = x0 erhalten wir:

‖f(y)− f(x)−D(x0)(y − x)‖ ≤ rL‖y − x‖, ∀x, y ∈ Br(x0). (7.24)

(ii) Wir zeigen nun, dass alle Iterierten im Kreis Br(x0) liegen. Dabei können wir gleicheine Vorbereitung für die a priori Fehlerabschätzung beweisen. Wir führen den Beweisüber vollständige Induktion, und werden zeigen, dass gilt:

‖xk+1 − x0‖ ≤ r, ‖xk+1 − xk‖ ≤ αq2k−1, k = 1, 2, . . . . (7.25)

Wir starten mit k = 0. Es gilt für die Newton-Iteration x1 − x0 = −Df(x0)−1f(x0) mitBedingung (7.22):

‖x1 − x0‖ = ‖Df(x0)−1f(x0)‖ = α = r

2 < r,

d.h. x1 ∈ Br(x0) und es gilt auch die Abschätzung

‖x1 − x0‖ ≤ α = αq20−1.

138

Page 147: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7.7. Nullstellensuche im Rn

Induktionsschritt k → k+ 1. Nach Induktionsvoraussetzung seien die beiden Gleichungen(7.25) wahr für k ≥ 0. Also gilt xk ∈ Br(x0), so dass die Newton-Iterierte xk+1 wohl defi-niert ist. Dann gilt unter Ausnutzung von Bedingung (7.21), der Abschätzung (7.23), derInduktionsvoraussetzung (7.25) mit der Definition von q die folgende Abschätzungskette:

‖xk+1 − xk‖ = ‖Df(xk)−1f(xk)‖≤ β ‖f(xk)‖ = β‖f(xk)−f(xk−1)−Df(xk−1)(xk − xk−1)︸ ︷︷ ︸

=0

≤ βL

2 ‖xk − xk−1‖2︸ ︷︷ ︸Induktion

≤ βL

2(αq2k−1−1

)2

= α

2 q2k−1 < αq2k−1.

Hiermit erhalten wir

‖xk+1 − x0‖ ≤ ‖xk+1 − xk‖+ . . .+ ‖x1 − x0‖

≤ α(1 + q + q3 + q7 + . . .+ q2k−1)

≤ α

1− q ≤ 2α = r,

d.h. es gilt xk+1 ∈ Br(x0). Damit ist der Induktionsschritt von k → k + 1 gezeigt, d.h.,die beiden Ungleichungen (7.25) sind gültig für k + 1.

(iii) Nun zeigen wir, dass die xk ∈ Br(x0) eine Cauchy-Folge bilden. Es sei m > 0. Daq < 1

2 , gilt‖xk − xk+m‖ ≤ ‖xk − xk+1‖+ . . .+ ‖xk+m−1 − xk+m‖

≤ α(q2k−1 + q2k+1−1 + . . .+ q2m+k−1−1)

= αq2k−1(1 + q2k + . . .+ (q2k)2m−1−1)≤ 2αq2k−1

(7.26)

Damit ist gezeigt, dass (xk) ⊂ D eine Cauchy-Folge ist, da q < 12 . Im Banachraum Rn

existiert der Limesz = lim

k→∞xk ∈ Rn.

Im Grenzübergang k →∞ erhalten wir dann mit (7.25):

‖z − x0‖ ≤ r,

so dass z ∈ Br(x0). Im Grenzübergang m → ∞ in (7.26), verifizieren wir die Fehlerab-schätzung des Satzes:

‖xk − z‖ ≤ 2αq2k−1, k = 0, 1, . . . .

139

Page 148: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

(iv) Es bleibt zu zeigen, dass z ∈ Br(x0) eine Nullstelle von f ist. Die Newton-Iterationsvorschriftsowie Bedingung (7.20) liefern

‖f(xk)‖ = ‖Df(xk)(xk − xk−1)‖≤ ‖Df(xk)−Df(x0) +Df(x0)‖ ‖xk+1 − xk‖

≤(L‖xk − x0‖+ ‖Df(x0)‖

)‖xk+1 − xk‖ → 0 (k →∞).

Daher giltf(xk)→ 0, k →∞.

Die Stetigkeit von f impliziert dann f(z) = 0.

(v) Schließlich ist zu beweisen, dass die gefundene Nullstelle z ∈ Br(x0) die einzige seinkann. Die Eindeutigkeit wird mit Hilfe der Kontraktionseigenschaft und der Formulierungder Newton-Iteration als Fixpunktiteration gezeigt. Jede Nullstelle von f(·) ist Fixpunktder vereinfachten Newton-Iteration:

g(x) := x−Df(x0)−1f(x).

Die Fixpunktfunktion g(·) ist Lipschitzstetig. Mit (7.24) gilt:

g(x)− g(y) = x− y −Df(x0)−1f(x) +Df(x0)−1f(y)= Df(x0)−1(f(y)− f(x)−Df(x0)(y − x))≤ ‖Df(x0)−1‖︸ ︷︷ ︸

≤β

rL‖y − x‖ ≤ βLr‖y − x‖.

Mit r = 2α folgt βLr ≤ 2αβL ≤ 2q < 1. D.h. g ist eine Kontraktion. Der Banach’scheFixpunktsatz sagt, dass es nur einen Fixpunkt, also eine Nullstelle gibt. �

Bemerkung 7.42. Der Satz von Newton-Kantorovich unterscheidet sich in einigen Punk-ten vom einfachen Satz 7.10 über das eindimensionale Newton-Verfahren. Der wesentli-che Unterschied ist die Existenz der Nullstelle, welche beim Newton-Kantorovich folgt, beiSatz 7.10 gefordert werden muss. Darüber hinaus ist die erforderliche Regularität von fbeim Newton-Kantorovich geringer. Statt zweimal stetiger Differenzierbarkeit müssen dieersten Ableitungen nur Lipschitzstetig sein. Der Satz von Newton-Kantorovich gilt natür-lich auch im eindimensionalen Fall für Funktionen f : R→ R.

Daher nun eine der Hauptanwendungen des vorherigen Satzes 7.41: das folgende lokaleKonvergenzresultat:

Korollar 7.43. Es sei D ⊂ Rn offen und f : D ⊂ Rn → Rn zweimal stetig-differenzierbar.Wir nehmen an, dass z ∈ D eine Nullstelle mit regulärer Jacobi-Matrix Df(z) ist. Dannist das Newton-Verfahren lokal konvergent, d.h. es existiert eine Umgebung B um z, sodass das Newton-Verfahren für alle Startwerte x0 ∈ B konvergiert.

140

Page 149: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7.7. Nullstellensuche im Rn

Beweis: Den Beweis stellen wir als Übungsaufgabe. �

Korollar 7.44. Korollar 7.43 stellt den Zusammenhang zu dem ein-dimensionalen Fallaus Satz 7.10 her: Dazu sei z ∈ G eine Nullstelle von f und ‖ · ‖∞ die Maximumsnorm.Damit können die Konstanten

m = 1β, M = L

bestimmt werden. Dann gilt zusätzlich zur a priori Fehlerabschätzung, die a posterioriSchranke:

‖xk − z‖∞ ≤1m‖f(xk)‖∞ ≤

M

2m‖xk − xk−1‖2∞, k = 1, 2, . . . .

Beispiel 7.45 (Newton im Rn). Wir suchen die Nullstelle der Funktion

f(x1, x2) =(

1− x2 − y2

(x− 2y)/(1/2 + y)

),

mit der Jacobi-Matrix

Df(x) =(−2x −2y

21+2y − 4+4x

(1+2y)2

).

Die Nullstellen von f sind gegeben durch:

x ≈ ±(0.894427, 0.447214).

Wir starten die Iteration mit x0 = (1, 1)T und erhalten die Iterierten:

x1 ≈(

1.142860.357143

), x2 ≈

(0.926590.442063

), x3 ≈

(0.8949350.447349

), x4 ≈

(0.8944270.447214

).

Nach nur vier Iterationen sind die ersten sechs Stellen exakt.

7.7.2. Praktische Aspekte des Newton-Verfahrens

Jeder Schritt des Newton-Verfahrens besteht aus den folgenden Bestandteilen:

1. Berechnung der Jacobi-Matrix

2. Lösen des linearen Gleichungssystems

3. Update und Kontrolle der Konvergenz

Im eindimensionalen Fall haben wir die Berechnung der Ableitung stets als eine einfacheAufgabe angesehen. Im Rn müssen jedoch n2 Ableitungen

(Df)ij = ∂fi∂xj

, i, j = 1, . . . , n

141

Page 150: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7. Nullstellenbestimmung

berechnet werden. Der Aufwand hierzu kann wesentlich sein. In Schritt 2 muss ein linearesGleichungssystem gelöst werden. Dies kann z.B. mit einer Zerlegungsmethode in O(n3)Operationen geschehen. Das anschließende Lösen mit Vorwärts- und Rückwärtseinsetzenbenötigt weitere O(n2) Operationen.

Wir haben beim eindimensionalen Newton-Verfahren bereits das vereinfachte Newton-Verfahren kennengelernt. Wird die Ableitung f ′(xk) nicht zur stets aktuellen Näherungxk bestimmt, sondern zu einem festen Wert f ′(c), so liegt immer noch Konvergenz vor(wenn auch nur noch lineare Konvergenz). Beim mehrdimensionalen Newton-Verfahrenkann diese Vereinfachung ihre Stärke ganz ausspielen:

Algorithmus 7.46 (Vereinfachtes Newton-Verfahren). Gegeben sei ein Startwert x0 ∈ Rnsowie c ∈ Rn.

1. Berechne die Jacobimatrix Df(c)

2. Erstelle die LR-Zerlegung Df(c) = L(c)R(c)

3. Iteriere für k = 1, 2, . . .a) Löse L(c)R(c)w(k) = −f(xk−1)b) Berechne x(k) = x(k−1) + w(k).

Die beiden teuren Schritte des Newton-Verfahrens werden jeweils nur einmal durchgeführt.Die eigentliche Iteration kann mit Vorwärts- und Rückwärtseinsetzen effizient durchgeführtwerden. Dieses Verfahren kann verfeinert werden, in dem die Linearisierungsstelle c ∈ Rnnicht statisch gewählt wird, sondern regelmäßig aktualisiert wird. Eine Aktualisierungkann entweder nach einer festen Anzahl von Schritten c = x(3), c = x(6), usw. oder immerdann durchgeführt werden, wenn das Verfahren schlecht konvergiert. Zur Kontrolle derKonvergenz eignet sich z.B. das Residuum zweier aufeinander folgender Iterationen

ρk = |f(x(k))||f(x(k−1))|

.

Falls ρk > ρ0, falls also die Konvergenz schlecht ist, so wird mit c = x(k) ein Update derJacobimatrix durchgeführt.

Eine zweite Herausforderung bei der praktischen Durchführung des Newton-Verfahrens istdie Wahl eines guten Startwerts. Eine Globalisierung, also eine Vergrößerung des Konver-genzbereiches kann durch Dämpfung erreicht werden. Hierzu wird Schritt 3.b) in Algo-rithmus 7.46 durch die Vorschrift

x(k) = x(k−1) + ωkw(k)

ersetzt, mit einem Dämpfungsparameter ωk ∈ (0, 1].

Die Vergrößerung des Konvergenzbereiches (Globalisierung) kann mit Hilfe eines Dämp-fungsparameters erreicht werden. Hierzu wird die Newton-Iteration abgewandelt:

xk+1 = xk − ωkDf(xk)−1f(xk).

142

Page 151: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

7.7. Nullstellensuche im Rn

Satz 7.47 (Gedämpftes Newton-Verfahren). Unter den Voraussetzungen von Satz 7.41erzeugt die gedämpfte Newton-Iteration mit

ωk := min{1, 1αkβL

}, αk := ‖Df(xk)−1f(xk)‖

eine Folge (xk)k∈N, für die nach k∗ Schritten

q∗ := αk∗βL <12

erfüllt ist. Ab dann konvergiert xk quadratisch und es gilt die a priori Fehlerabschätzung

‖xk − z‖ ≤ α

1− q∗q2k−1∗ , k ≥ k∗.

Beweis: In [10]. �

In der praktischen Anwendung wird der Dämpfungsparameter oft über die sogenannteLine-Search-Strategie bestimmt:

Algorithmus 7.48 (Newton-Verfahren mit Line-Search). Gegeben sei ein Startwert x0 ∈Rn sowie σ ∈ (0, 1). Iteriere für k = 0, 1, . . .

(i) Löse Df(xk)wk = −f(xk)

(ii) Starte mit ω0 = 1 und iteriere für l = 0, 1, . . .

xk+1 = xk + ωlwk, ωl+1 = σωl,

solange bis |f(xk+1)| < |f(xk)|.

Der Line-Search Algorithmus versucht zunächst ohne Dämpfung zu iterieren. Besitzt dieneue Approximation allerdings ein größeres Residuum |f(xk+1)| > |f(xk)|, so wird derDämpfungsparameter schrittweise reduziert. Auf diese Weise wird monotone Konvergenzim Residuum erzwungen.

143

Page 152: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische
Page 153: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren fürlineare Gleichungssysteme

In diesem Kapitel untersuchen wir numerische Iterationsverfahren zur Approximation derLösung von linearen Gleichungsystemen. Im vorangegangenen Abschnitt haben wir bereitsgesehen, dass wir jedes lineare Gleichungssystem Ax = b mit einer Matrix A ∈ Rn×n undVektoren x, b ∈ Rn per

f(x) = b−Ax,

in ein Nullstellen-Problem umwandeln können. In diesem Kapitel werden wir Analog zumNewton-Verfahren im Rn Fixpunktiterationen xk+1 = g(xk) untersuchen. Das zentraleHilfsmittel ist der Banachsche Fixpunktsatz.

Die in Kapitel 3 kennengelernten Zerlegungsverfahren (also LR, Cholesky sowie QR-Zerlegung) haben alle eine kubische Laufzeit O(n3). Gerade bei sehr großen Problemenwächst der Aufwand so schnell an, dass die Lösung in sinnvoller Zeit nicht zu erreichenist, siehe Tabelle 3.1. Neben der Laufzeit spielt auch der Speicheraufwand eine Rolle. ZurSpeicherung einer voll besetzten Matrix A ∈ Rn×n mit n = 1 000 000 sind bei doppelterGenauigkeit etwa 7 Terabyte Speicher notwendig. Dies ist nur auf größten Parallelrechnernmöglich. Direkte Zerlegungsroutinen wie die LR-Zerlegung sind jedoch denkbar schlechtzur Parallelisierung geeignet. Die linearen Gleichungssysteme die aus den meisten Anwen-dungen resultieren (etwa bei der Diskretisierung von Differentialgleichungen) sind sehrdünn besetzt, d.h., in jeder Zeile stehen nur einige wenige Einträge. Eine dünn besetzteMatrix mit n = 1 000 000 aber nur 100 Einträgen pro Zeile benötigt zur Speicherung nuretwa 750 MB und passt in jeden Laptop. In Abschnitt 3.5 haben wir Sortierverfahrenkennengelernt, um dieses dünne Besetzungsmuster auch für eine LR-Zerlegung nutzbar zumachen. Im Allgemeinen können die Matrizen L und R aber voll besetzt sein und somitden zur Verfügung stehenden Speicher wieder bei weitem übersteigen.

Ein weiterer Nachteil der Zerlegungsverfahren sind numerische Stabilitätsprobleme. DurchRundungsfehler beim Zerlegungsprozess gilt für die LR-Zerlegung üblicherweise nur A 6=LR. D.h., obwohl die LR-Zerlegung eine direkte Methode darstellt, kann das Gleichungs-system nicht exakt gelöst werden. Mit der Nachiteration haben wir in Abschnitt 3.6 eineMethode kennengelernt, um diesen Fehlereinfluss durch sukzessive Iteration zu verringern.Mit der gestörten LR-Zerlegung A ≈ LR haben wir die Iteration

xk+1 = xk + R−1L−1(b−Axk), k = 0, 1, 2, . . .

definiert. Obwohl L und R nicht exakt sind, konvergiert diese Iteration (falls das Residuumdk := b−Axk exakt berechnet werden kann), siehe Satz 3.31.

145

Page 154: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

In diesem Abschnitt werden wir auf der Basis der Nachiteration eine eigene Verfahrensklas-se zur iterativen Lösung großer Gleichungssysteme entwickeln. Dazu sei C ≈ A−1 eineApproximation an die Inverse (etwa C := R−1L−1). Dann definieren wir:

Definition 8.1 (Fixpunktverfahren zum Lösen linearer Gleichungssysteme). Es sei A ∈Rn×n sowie b ∈ Rn und C ∈ Rn×n. Für einen beliebigen Startwert x0 ∈ Rn iteriere fürk = 1, 2, . . .

xk = xk−1 + C(b−Axk−1). (8.1)

Alternativ führen wir die Bezeichnungen B := I − CA und c := Cb ein. Dann gilt:

xk = Bxk−1 + c.

Aufgrund der Konstruktion kann man sich leicht klarmachen, dass durch die Vorschriftg(x) = Bx+c = x+C(b−Ax) wirklich eine Fixpunktiteration mit der Lösung von Ax = bals Fixpunkt gegeben ist. Die Konvergenz von allgemeinen (auch linearen) Fixpunktitera-tionen kann leicht mit dem Banachschen Fixpunktsatz untersucht werden. Hierzu ist dieKontraktionseigenschaft nachzuweisen:

‖g(x)− g(y)‖ ≤ ‖B‖ ‖x− y‖.

Es ergibt sich jedoch das Dilemma, das je nach verwendeter Matrixnorm ‖ · ‖ unterschied-liche Konvergenzresultate vorhergesagt werden. Für eine Matrix B ∈ Rn×n kann etwa‖B‖2 < 1 aber ‖B‖∞ > 1 gelten. Um uns in der Analyse von konkreten Matrixnormen zubefreien beweisen wir zunächst einen Hilfsatz:

Hilfsatz 8.2 (Matrixnorm und Spektralradius). Zu jeder beliebigen Matrix B ∈ Rn×nund zu jedem ε > 0 existiert eine natürliche Matrixnorm ‖ · ‖ε, so dass gilt:

spr(B) ≤ ‖B‖ε ≤ spr(B) + ε.

Beweis: Für den allgemeinen Fall verweisen wir auf [10]. Hier machen wir uns nur klar,dass die Aussage für symmetrische Matrizen gilt. Denn in diesem Fall, siehe Satz 2.15 giltsogar spr(B) = ‖B‖2. �Im nun Folgenden werden wir daher stets mitdem Spektralradius als Norm operieren. Mit diesem Hilfsatz zeigen wir das fundamentaleResultat über allgemeine lineare Fixpunktiterationen:

Satz 8.3 (Fixpunktverfahren zum Lösen linearer Gleichungssysteme). Die Iteration (8.1)konvergiert für jeden Startwert x0 ∈ Rn genau dann gegen die Lösung x ∈ Rn von Ax = bfalls ρ := spr(B) < 1. Dann gilt das asymptotische Konvergenzverhalten

limk→∞

(‖xk − x‖‖x0 − x‖

)1/k

= spr(B).

146

Page 155: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

Beweis: Nach einigen Vorbereitungen zeigen wir in Schritt (i), dass aus spr(B) < 1 dieKonvergenz xk → x folgt. In Schritt (ii) zeigen wir die Rückrichtung und schließlich inSchritt (iii) die Konvergenzaussage.

(0) Zunächst weisen wir nach, dass die Iteration überhaupt eine Fixpunktiteration ist. Fürdie Lösung x ∈ Rn von Ax = b gilt:

Bx+ c = (I − CA)x+ Cb = x− C (Ax− b)︸ ︷︷ ︸=0

= x.

Wir definieren den Fehler ek := xk−x und erhalten bei Ausnutzen der Fixpunkteigenschaftx = Bx+ c die Iterationsvorschrift:

ek = xk − x = Bxk−1 + c− (Bx+ c) = Bek−1.

Entsprechend gilt:ek = Bke0 = Bk(x0 − x). (8.2)

(i) Hilfsatz 8.2 besagt, dass zu jedem ε > 0 eine natürlichen Matrixnorm ‖ · ‖ε existiertmit

spr(B) ≤ ‖B‖ε ≤ spr(B) + ε.

Es sei nach Voraussetzung spr(B) < 1, dann existiert ein ε > 0 mit

‖B‖ε ≤ spr(B) + ε < 1,

und aus (8.2) erhalten wir sofort bei k →∞ in der entsprechenden induzierten Vektornorm‖ · ‖ε:

‖ek‖ε = ‖Bke0‖ε ≤ ‖Bk‖ε‖e0‖ε ≤ ‖B‖kε ‖e0‖ε → 0 (k →∞).

Da im Rn alle Normen äquivalent sind, konvergiert also xk → x für k →∞.

(ii) Die Iteration sei konvergent xk → x. Es sei w ∈ Rn ein Eigenvektor zum betragsmäßiggrößten Eigenwert λmax von B = I−CA. Dann gilt für x0 = x+w, also w = x0−x = −e0

mit (8.2):λkmaxw = Bkw = −Bke0 = −ek.

Da die Iteration nach Voraussetzung konvergent ist (für jeden Startwert) folgt

−ek = λkmaxw → 0 (k →∞),

also notwendigerweisespr(B) = |λmax| < 1.

(iii) Fehlerabschätzung: Aufgrund der Äquivalenz aller Normen existieren Konstantenm,M mit m ≤M so dass:

m‖x‖ ≤ ‖x‖ε ≤M‖x‖, x ∈ Rn.

147

Page 156: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

Damit gilt

‖ek‖ ≤ 1m‖ek‖ε = 1

m‖Bke0‖ε ≤

1m‖B‖kε ‖e0‖ε ≤

M

m(spr(B) + ε)k‖e0‖.

Wegen (M

m

)1/k→ 1, (k →∞)

folgt damit

limk→∞

(‖ek‖‖e0‖

)1/k

≤ spr(B) + ε.

Da ε > 0 beliebig klein gewählt wird, folgt hiermit die Behauptung. �

8.1. Konstruktion von Fixpunktverfahren

Satz 8.3 legt das theoretische Fundament für allgemeine Fixpunkt-Iterationen. Für denSpektralradius ρ := spr(B) = spr(I − CA) muss gelten ρ < 1. Ziel dieses Abschnittes istdie Konstruktion von Iterationsmatrizen C, welche

• möglichst Nahe an der Inversen C ≈ A−1 liegen, damit spr(I − CA)� 1,

• eine möglichst einfache Berechnung der Iteration xk = Bxk−1 + c ermöglichen.

Die erste Forderung ist einleuchtend und C = A−1 stellt in diesem Sinne die optimaleMatrix dar. Die zweite Bedingung beschreibt den Aufwand zum Durchführen der Fix-punktiteration. Wählen wir etwa C = R−1L−1 so bedeutet jeder Schritt ein Vorwärts-und ein Rückwärtseinsetzen, d.h. einen Aufwand der Größenordnung O(n2). Hinzu kom-men die O(n3) Operationen zum einmaligen Erstellen der Zerlegung. Die Wahl C = Ierlaubt eine sehr effiziente Iteration mit O(n) Operationen in jedem Schritt und Bedarfkeines zusätzlichen Aufwands zum Erstellen der Iterationsmatrix C. Die Einheitsmatrix Iist jedoch im Allgemeinen eine sehr schlechte Approximation von A−1. Beide Forderungensind Maximalforderungen und scheinen sich zu widersprechen. Die Wahl von C = I führtauf die Richardson-Iteration:

Definition 8.4 (Richardson-Iteration). Zur Lösung von Ax = b sei x0 ∈ Rn ein beliebigerStartwert. Iteriere für k = 1, 2, . . . :

xk = xk−1 + ω(b−Axk−1),

mit einem Relaxationsparameter ω > 0.

148

Page 157: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8.1. Konstruktion von Fixpunktverfahren

Zur Konstruktion weiterer einfacher iterativer Verfahren spalten wir die Matrix A additivauf zu A = L+D +R, mit

A =

0 . . . 0

a21. . .

... . . . . . .an1 . . . an,n−1 0

︸ ︷︷ ︸

=:L

+

a11 . . . 0

. . .. . .

0 . . . ann

︸ ︷︷ ︸

=:D

+

0 a12 . . . a1n

. . . . . . .... . . an−1,n

0 . . . 0

︸ ︷︷ ︸

=:R

.

Diese additive Zerlegung ist nicht mit der multiplikativen LR-Zerlegung zu verwechseln.Ist die Matrix A bekannt, so kann die additive Zerlegung in L,D,R ohne weitere Berech-nungen angegeben werden.

Wir definieren die zwei wichtigsten Iterationsverfahren:

Definition 8.5 (Jacobi-Verfahren). Zur Lösung von Ax = b mit A = L + D + R seix0 ∈ Rn ein beliebiger Startwert. Iteriere für k = 1, 2, . . . :

xk = xk−1 +D−1(b−Axk−1),

bzw. mit der Jacobi-Iterationsmatrix J := −D−1(L+R)

xk = Jxk−1 +D−1b.

Definition 8.6 (Gauß-Seidel-Verfahren). Zur Lösung von Ax = b mit A = L+D+R seix0 ∈ Rn ein beliebiger Startwert. Iteriere für k = 1, 2, . . . :

xk = xk−1 + (D + L)−1(b−Axk−1),

bzw. mit der Gauß-Seidel-Iterationsmatrix H := −(D + L)−1R

xk = Hxk−1 + (D + L)−1b.

Diese beiden Fixpunktverfahren sind einfach, aber dennoch sehr gebräuchlich. Es gilt:

Satz 8.7 (Durchführung des Jacobi- und Gauß-Seidel-Verfahrens). Ein Schritt des Jacobi-bzw. Gauß-Seidel-Verfahrens ist jeweils in n2 +O(n) Operationen durchführbar. Für jedenSchritt des Jacobi-Verfahren gilt die Index-Schreibweise

xki = 1aii

bi − n∑j=1,j 6=i

aijxk−1j

, i = 1, . . . , n,

für das Gauß-Seidel-Verfahren gilt die Vorschrift:

xki = 1aii

bi −∑j<i

aijxkj −

∑j>i

aijxk−1j

, i = 1, . . . , n.

149

Page 158: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

Beweis: Übung. �

Jeder Schritt dieser Verfahren benötigt mit O(n2) größenordnungsmäßig genauso vieleOperationen wie die Nachiteration mit der LR-Zerlegung. Bei Jacobi- und Gauß-Seidelsind jedoch weit schlechtere Konvergenzraten zu erwarten (wenn die Verfahren überhauptkonvergieren, dieser Nachweis steht hier noch aus!). Der Vorteil der einfachen Iterations-verfahren zeigt sich erst bei dünn besetzten Matrizen. Hat eine Matrix A ∈ Rn×n nurO(n) Einträge, so benötigt jeder Iterationsschritt nur O(n) Operationen. Für eine dünnbesetzte Matrix kann die LR-Zerlegung A = LR aus voll besetzten Matrizen L und Rbestehen. Dann benötigt das Vorwärts- und Rückwärtseinsetzen weiterhin O(n2) arithme-tische Operationen.

8.2. Konvergenzkriterium für Jacobi- und Gauß-Seidel-Iteration

Zur Untersuchung der Konvergenz muss gemäß Satz 8.3 der Spektralradius der Iterations-matrizen J = −D−1(L + R) sowie H := −(D + L)−1R untersucht werden. Im Einzelfallist diese Untersuchung nicht ohne weiteres möglich und einer Matrix A kann der entspre-chende Spektralradius nur schwer angesehen werden. Daher leiten wir in diesem Abschnitteinfach überprüfbare Kriterien her, um eine Aussage über die Konvergenz der beiden Ver-fahren treffen zu können. Zunächst gilt:

Satz 8.8 (Starkes Zeilensummenkriterium). Falls die Zeilensummen der Matrix A ∈ Rn×nder strikten Diagonaldominanz genügen

n∑k=1,k 6=j

|ajk| < |ajj |, j = 1, . . . , n,

so gilt spr(J) < 1 bzw. spr(H) < 1. Jacobi- und Gauß-Seidel-Verfahren konvergieren.

Beweis: Wir beweisen den Satz für beide Verfahren gleichzeitig. Es sei λJ ein Eigenwertvon J und λH ein Eigenwert von H. Mit vJ und vH bezeichnen wir zugehörige normierteEigenvektoren ‖vJ‖∞ = ‖vH‖∞ = 1. Dann gilt:

λJvJ = JvJ = −D−1(L+R)vJ ,

und für das Gauß-Seidel-Verfahren

λHvH = HvH = −(D + L)−1RvH ⇔ λvH = −D−1(λHL+R)vH .

Für das Jacobi-Verfahren folgt

|λJ | ≤ ‖D−1(L+R)‖∞‖vJ‖∞ = ‖D−1(L+R)‖∞ ≤ maxj=1,...,n

1|ajj |

n∑k=1,k 6=j

|ajk|

< 1,

150

Page 159: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8.2. Konvergenzkriterium für Jacobi- und Gauß-Seidel-Iteration

d.h. alle Eigenwerte sind betragsmäßig kleiner 1 und das Jacobi-Verfahren konvergiert.Für das Gauß-Seidel-Verfahren gilt

|λH | ≤ ‖D−1(λHL+R)‖∞‖vH‖∞ = ‖D−1(λHL+R)‖∞

≤ maxj=1,...,n

1|ajj |

∑k<j

|λH ||ajk|+∑k>j

|ajk|

. (8.3)

Wir zeigen |λH | < 1 über ein Widerspruchsargument. Angenommen also, |λH | ≥ 1. Danngilt:

maxj=1,...,n

1|ajj |

∑k<j

|λH ||ajk|+∑k>j

|ajk|

= |λH | maxj=1,...,n

1|ajj |

∑k<j

|ajk|+1|λH |

∑k>j

|ajk|

≤ |λH | max

j=1,...,n

1|ajj |

∑k<j

|ajk|+∑k>j

|ajk|

= |λH | ‖D−1(L+R)‖∞︸ ︷︷ ︸<1

.

Jetzt führt (8.3) und die strikte Diagonaldominanz zum Widerspruch:

|λH | ≤ |λH |‖D−1(L+R)‖∞ < |λH |.

Es gilt notwendigerweise |λH | < 1. �

Dieses Kriterium ist einfach zu überprüfen und erlaubt sofort eine Einschätzung, ob Jacobi-und Gauß-Seidel-Verfahren bei einer gegebenen Matrix konvergieren. Es zeigt sich jedoch,dass die strikte Diagonaldominanz eine zu starke Forderung darstellt: die schon bekannteModellmatrix der Form

A =

B −I−I B −I

−I B −I−I B

, B =

4 −1−1 4 −1

−1 4 −1−1 4

, I =

1

11

1

,ist nur diagonaldominant (siehe Definition 3.17), jedoch nicht strikt Diagonaldominant. Eszeigt sich aber, dass sowohl Jacobi- als auch Gauß-Seidel-Verfahren dennoch konvergieren.Zur Abschwächung der Voraussetzungen definieren wir wiefolgt:

Definition 8.9 (Irreduzibel). Eine Matrix A ∈ Rn×n heißt irreduzibel, wenn es keinePermutationsmatrix P gibt, so dass die Matrix A durch Spalten- und Zeilen in eine Block-Dreiecksmatrix zerfällt:

PAP T =(A11 0A21 A22

)

mit den Matrizen A11 ∈ Rp×p, A22 ∈ Rq×q, A21 ∈ Rq×p, mit p, q > 0, p+ q = n.

Ob eine gegebene Matrix A ∈ Rn×n irreduzibel ist lässt sich nicht unmittelbar bestimmen.Oft hilft das folgende äquivalente Kriterium, welches einfacher zu überprüfen ist:

151

Page 160: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

Satz 8.10 (Irreduzibel). Eine Matrix A ∈ Rn×n ist genau dann irreduzibel, falls derzugehörige gerichtete Graph

G(A) ={Knoten: {1, 2, . . . , n},Kanten: {(i, j), aij 6= 0}

}zusammenhängend ist. Das heißt: zu zwei beliebigen Knoten i und j existiert ein Pfad(i, i1) = (i0, i1), (i1, i2), . . . , (im−1, im) = (im−1, j) mit Kante (ik−1, ik) ∈ G(A).

Für den Beweis verweisen wir auf [10]. Nach dieser alternativen Charakterisierung bedeutetdie Irreduzibilität, dass zu je zwei Indizes i, j ein Pfad i = i0 7→ i1 7→ . . . 7→ im = j besteht,so dass aik−1,ik 6= 0 ist. Anschaulich entspricht dies einem abwechselnden Springen in Zeilenund Spalten der Matrix A, wobei nur Einträge ungleich Null getroffen werden dürfen.

Nun gilt:

Satz 8.11 (Schwaches Zeilensummenkriterium). Die Matrix A ∈ Rn×n sei irreduzibel undes gelte das schwache Zeilensummenkriterium, d.h., die Matrix A sei diagonaldominant:

n∑k=1,k 6=j

|ajk| ≤ |ajj |, j = 1, . . . , n,

und in mindestens einer Zeile r ∈ {1, . . . , n} gelte starke Diagonaldominanz:

n∑k=1,k 6=r

|ark| < |arr|.

Dann ist A regulär und es gilt spr(J) < 1 bzw. spr(H) < 1. D.h., Jacobi- und Gauß-Seidel-Verfahren konvergieren.

Beweis: (i) Durchführbarkeit der Verfahren: Aufgrund der Irreduzibilität von A gilt not-wendig

n∑k=1|ajk| > 0, j = 1, . . . , n.

Wegen der vorausgesetzten Diagonaldominanz folgt dann hieraus ajj 6= 0 für j = 1, 2, . . . , n.

(ii) Zeige spr(J) ≤ 1 und spr(H) ≤ 1: Diese Aussage erhalten wir entsprechend zumVorgehen im Beweis zu Satz 8.8. Es bleibt zu zeigen, dass kein Eigenwert den Betrag Einshat.

(iii) Nachweis, dass |λ| < 1: Angenommen, es gebe einen Eigenwert λ ∈ σ(J) mit |λ| = 1.Es sei v ∈ Cn der zugehörige normierte Eigenvektor mit ‖v‖∞ = 1. Insbesondere gelte|vs| = ‖v‖∞ = 1 für ein s ∈ {1, . . . , n}. Dann erhalten wir aufgrund der Struktur der

152

Page 161: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8.2. Konvergenzkriterium für Jacobi- und Gauß-Seidel-Iteration

Iterationsmatrix (hier nun explizit für Jacobi)

J = −D−1(L+R) =

0 −a12

a11−a13a11

. . . −a1na11−a21

a220 −a23

a22. . . −a2n

a22... . . . ...−an1ann

. . . . . . 0

die folgende Abschätzung:

|vi| = |λ|︸︷︷︸=1

|vi| = |(Av)i| ≤∑k 6=i

|aik||aii|

|vk| ≤∑k 6=i

|aik||aii|

≤ 1, i = 1, 2, . . . , n, (8.4)

wobei wir die Struktur von J in der ersten Ungleichung, |vi| ≤ ‖v‖∞ = 1 in der zweitenund die schwache Diagonaldominanz in der letzten Abschätzung verwendet haben.

Aufgrund der Irreduzibilität gibt es zu je zwei Indizes s, r stets eine Kette von Indizesi1 7→ i2 7→ . . . 7→ im mit im ∈ {1, . . . , n}, so dass

as,i1 6= 0, ai1,i2 6= 0, . . . , aim,r 6= 0.

Durch mehrfache Anwendung von (8.4) folgt der Widerspruch (nämlich, dass |λ| = 1):

|vr| = |λvr| ≤1|arr|

∑k 6=r|ark| ‖v‖∞ < ‖v‖∞ (strikte DD in einer Zeile),

|vim | = |λvim | ≤1

|aim,im |

∑k 6=im,r

|aim,k| ‖v‖∞ + |aim,r| |vr|

< ‖v‖∞,...

|vi1 | = |λvi1 | ≤1

|ai1,i1 |

∑k 6=i1,i1

|ai1,k| ‖v‖∞ + |ai1,i2 | |vi2 |

< ‖v‖∞,‖v‖∞ = |λvs| ≤

1|ass|

∑k 6=s,i1

|as,k| ‖v‖∞ + |as,i1 | |vi1 |

< ‖v‖∞.Daher muss spr(J) < 1.

Mit analoger Schlussfolgerung wird spr(H) < 1 bewiesen. Hierzu nutzt man ebenfallsdie spezielle Struktur der Iterationsmatrix H sowie die umgekehrte Dreiecksungleichung(|a − b| ≥ ||a| − |b||), um (8.4) zu erhalten. Die restliche Argumentation erfolgt dann aufanalogem Wege. �

Mit diesem Satz kann die Konvergenz von Jacobi- sowie Gauß-Seidel-Verfahren für dieModellmatrizen nachgewiesen werden. Denn diese ist strikt diagonaldominant.

153

Page 162: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

Beispiel 8.12 (Jacobi- und Gauß-Seidel-Verfahren bei der Modellmatrix). Wir betrachtendas lineare Gleichungssystem Ax = b mit der Modellmatrix A ∈ Rn×n

A =

2 −1−1 2 −1

. . . . . . . . .−1 2 −1

−1 2

, (8.5)

sowie der rechten Seite b ∈ Rn mit b = (1, . . . , 1)T . Zu i, j mit i < j gilt

ai,i 6= 0→ ai,i+1 6= 0→ ai+1,i+2 6= 0→ ai+2,i+3 6= 0→ · · · → aj−1,j 6= 0.

Die Matrix ist also irreduzibel, weiter diagonaldominant und in erster und letzter Zei-le auch stark diagonaldominant. Jacobi und Gauß-Seidel-Verfahren konvergieren. Expe-rimentell bestimmen wir für die Problemgröße n = 10 · 2k für k = 2, 3, . . . die Anzahlder notwendigen Iterationsschritte, sowie die Rechenzeit (Core i7-Prozessor ’2011) zurApproximation des Gleichungssystems mit einer Fehlertoleranz ‖xk − x‖ < 10−4:

Matrixgröße Jacobi Gauß-SeidelSchritte Zeit (sec) Schritte Zeit (sec)

80 9 453 0.02 4 727 0.01160 37 232 0.13 18 617 0.06320 147 775 0.92 73 888 0.43640 588 794 7.35 294 398 3.55

1 280 2 149 551 58 1 074 776 292 560 8 590 461 466 4 295 231 233

Es zeigt sich, dass für das Gauß-Seidel-Verfahren stets halb so viele Iterationsschrittenotwendig sind, wie für das Jacobi-Verfahren. Weiter steigt die Anzahl der notwendigenIterationsschritte mit der Matrixgröße n. Bei doppelter Matrixgröße steigt die Anzahl derIterationen etwa um den Faktor 4. Der Zeitaufwand steigt noch stärker mit einem Faktorvon etwa 8, da jeder einzelne Schritt einen größeren Aufwand bedeutet. Diesen Zusam-menhang zwischen Matrixeigenschaft und Konvergenzgeschwindigkeit werden wir spätergenauer untersuchen.

Wir merken hier noch an, dass Jacobi- und Gauß-Seidel-Verfahren effizient unter Ausnut-zung der dünnen Besetzungsstruktur programmiert wurden. Dennoch steigt der zeitlicheAufwand zur Approximation mit vorgegebener Genauigkeit mit dritter Ordnung in derProblemgröße n.

8.3. Relaxationsverfahren: das SOR-Verfahren

Das vorangehende Beispiel zeigt, dass Jacobi- sowie Gauß-Seidel-Verfahren sehr langsamkonvergieren. Für die Modellmatrix A ∈ Rn×n steigt die Anzahl der notwendigen Iterati-onsschritte (zum Erreichen einer vorgegebenen Genauigkeit) quadratisch O(n2). Obwohl

154

Page 163: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8.3. Relaxationsverfahren: das SOR-Verfahren

jeder einzelne Schritt sehr einfach ist und äußerst effizient in O(n) Operationen durch-geführt werden kann, sind diese Verfahren den direkten nicht überlegen. Oft, etwa beiTridiagonalsystemen sind direkte Löser mit einem Aufwand von O(n) sogar unschlagbarschnell.

Das SOR-Verfahren ist eine Weiterentwicklung der Gauß-Seidel-Iteration durch die Ein-führung eines Relaxationsparameters ω > 0. Das i-te Element berechnet sich laut Satz 8.7als:

xk,GSi = 1

aii

bi −∑j<i

aijxk,GSj −

∑j>i

aijxk−1j

, i = 1, . . . , n.

Zur Bestimmung der SOR-Lösung verwenden wir nicht unmittelbar diese Approximationxk,GSi , sondern führen einen Relaxationsparameter ω > 0 ein und definieren

xk,SORi = ωxk,GSi + (1− ω)xk−1

i , i = 1, . . . , n

als einen gewichteten Mittelwert zwischen Gauß-Seidel Iteration und alter Approximati-on. Dieser Relaxationsparameter ω kann nun verwendet werden, um die Konvergenzeigen-schaften der Iteration wesentlich zu beeinflussen. Im Fall ω = 1 ergibt sich gerade dasGauß-Seidel-Verfahren. Im Fall ω < 1 spricht man von Unterrelaxation, im Fall ω > 1 vonÜberrelaxation. “SOR” steht für Successive Over Relaxation, verwendet also Relaxations-parameter ω > 1. Successive (also schrittweise) bedeutet, dass die Relaxation für jedeneinzelnen Index angewendet wird. Die Vorstellung zunächst die komplette Gauß-SeidelApproximation xk,GS zu berechnen und xk,SOR = ωxk,GS + (1− ω)xk−1 zu bestimmen istfalsch. Stattdessen definieren wir in Indexschreibweise:

xk,SORi = ω

1aii

bi −∑j<i

aijxk,SORj −

∑j>i

aijxk−1j

+ (1− ω)xk−1i , i = 1, . . . , n.

In Vektorschreibweise gilt:

xk,SOR = ωD−1(b− Lxk,SOR −Rxk−1) + (1− ω)xk−1.

Trennen der Terme nach xk,SOR sowie xk−1 ergibt

(D + ωL)xk,SOR = ωb+ [(1− ω)D − ωR]xk−1,

also die Iteration

xk,SOR = Hωxk−1 + ω[D + ωL]−1b, Hω := [D + ωL]−1[(1− ω)D − ωR].

Dieses Verfahren, mit der IterationsmatrixHω, passt wieder in das Schema der allgemeinenFixpunktiterationen und gemäß Satz 8.3 hängt die Konvergenz des Verfahrens von derBedingung ρω := spr(Hω) < 1 ab.

Die Schwierigkeit bei der Realisierung des SOR-Verfahrens ist die Bestimmung von gutenRelaxationsparametern, so dass die Matrix Hω einen möglichst kleinen Spektralradiusbesitzt. Eine erste Abschätzung liefert:

155

Page 164: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

Satz 8.13 (Relaxationsparameter des SOR-Verfahrens). Es sei A ∈ Rn×n mit reguläremDiagonalteil D ∈ Rn×n Dann gilt:

spr(Hω) ≥ |ω − 1|, ω ∈ R.

Für spr(Hω) < 1 muss deshalb gelten ω ∈ (0, 2).

Beweis: Wir nutzen die Matrix-Darstellung der Iteration:

Hω = [D + ωL]−1[(1− ω)D − ωR] = (I + wD−1L︸ ︷︷ ︸=:L

)−1D−1D︸ ︷︷ ︸=I

[(1− ω)I − ωD−1R︸ ︷︷ ︸=:R

].

Die Matrizen L sowie R sind echte Dreiecksmatrizen mit Nullen auf der Diagonale. D.h.,es gilt det(I+ωL) = 1 sowie det((1−ω)I−ωR) = (1−ω)n. Nun gilt für die Determinantevon Hω

det(Hω) = 1 · (1− ω)n.

Für die Eigenwerte λi von Hω gilt folglich

n∏i=1

λi = det(Hω) = (1− ω)n ⇒ spr(Hω) = max1≤i≤n

|λi| ≥(

n∏i=1|λi|

) 1n

= |1− ω|.

Die letzte Abschätzung nutzt, dass das geometrische Mittel von n Zahlen kleiner ist, alsdas Maximum. �

Dieser Satz liefert eine erste Abschätzung für die Wahl des Relaxationsparameters, hilftjedoch noch nicht beim Bestimmen eines optimalen Wertes. Für die wichtige Klasse vonpositiv definiten Matrizen erhalten wir das folgende Konvergenzresultat:

Satz 8.14 (SOR-Verfahren für positiv definite Matrizen). Es sei A ∈ Rn×n eine symme-trisch positiv definite Matrix. Dann gilt:

spr(Hω) < 1 für 0 < ω < 2.

SOR-Verfahren und auch Gauß-Seidel-Verfahren sind konvergent.

Beweis: Siehe [10]. �

Für die oben angegebene Modellmatrix ist die Konvergenz von Jacobi- sowie Gauß-Seidel-Iteration auch theoretisch abgesichert.

Für symmetrisch positiv definite Matrizen kann für die Matrix des Jacobi J und Gauß-Seidel-Verfahrens H1 der folgende Zusammenhang gezeigt werden:

spr(J)2 = spr(H1). (8.6)

Ein Schritt der Gauß-Seidel-Iteration führt zu der gleichen Fehlerreduktion wie zwei Schrit-te der Jacobi-Iteration. Dieses Resultat findet sich in Beispiel 8.12 exakt wieder. Weiter

156

Page 165: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8.3. Relaxationsverfahren: das SOR-Verfahren

0

0.2

0.4

0.6

0.8

1

0 0.5 1 1.5 2

sp

r

omega

Abbildung 8.1.: Optimaler Relaxationsparameter ωopt in Abhängigkeit des Spektralradius.

kann für diese Matrizen ein Zusammenhang zwischen Eigenwerten der Matrix Hω sowieden Eigenwerten der Matrix J hergeleitet werden. Angenommen, es gilt ρJ := spr(J) < 1.Dann gilt für den Spektralradius der SOR-Matrix:

spr(Hω) =

ω − 1 ω ≥ ωopt,14(ρJω +

√ρ2Jω

2 − 4(ω − 1))2 ω ≤ ωopt

Ist der Spektralradius der Matrix J bekannt, so kann der optimale Parameter ωopt alsSchnittpunkt dieser beiden Funktionen gefunden werden, siehe Abbildung 8.1. Es gilt:

ωopt =2(1−

√1− ρ2

J)ρ2J

. (8.7)

Beispiel 8.15 (Modellmatrix mit SOR-Verfahren). Wir betrachten wieder die vereinfachteModellmatrix aus Beispiel 8.12. Für die Matrix J = −D−1(L+R) gilt:

J =

0 1

212 0 1

2. . . . . . . . .

12 0 1

212 0

.

Zunächst bestimmen wir die Eigenwerte λi und Eigenvektoren wi für i = 1, . . . , n dieserMatrix. Hierzu machen machen wir den Ansatz:

wi = (wik)k=1,...,n, wik = sin(πik

n+ 1

).

Dann gilt mit dem Additionstheoremen sin(x± y) = sin(x) cos(y)± cos(x) sin(y):

(Jwi)k = 12w

ik−1 + 1

2wik+1 = 1

2

(sin(πi(k − 1)n+ 1

)+ sin

(πi(k + 1)n+ 1

))= 1

2 sin(πik

n+ 1

)(cos

(πi

n+ 1

)+ cos

(πi

n+ 1

))= wik cos

(πi

n+ 1

).

157

Page 166: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

Man beachte, dass diese Gleichung wegen wi0 = win+1 = 0 auch für die erste und letzteZeile, d.h. für i = 1 sowie i = n gültig ist. Es gilt λi = cos(πi/(n+1)) und der betragsmäßiggrößte Eigenwert von J wird für i = 1 sowie i = n angenommen. Hier gilt mit derReihenentwicklung des Kosinus:

λmax = λ1 = cos(

π

n+ 1

)= 1− π2

2(n+ 1)2 +O

( 1(n+ 1)4

).

Der größte Eigenwert geht mit n → ∞ quadratisch gegen 1. Hieraus bestimmen wirmit (8.7) für einige Schrittweiten aus Beispiel 8.12 die optimalen Relaxationsparameter:

n λmax(J) ωopt320 0.9999521084 1.980616162640 0.9999879897 1.9902456641280 0.9999969927 1.995107064

Schließlich führen wir für diese Parameter das SOR-Verfahren mit optimalem Relaxati-onsparameter durch und fassen die Ergebnisse in folgender Tabelle zusammen:

Matrixgröße Jacobi Gauß-Seidel SORSchritte Zeit (sec) Schritte Zeit (sec) Schritte Zeit (sec)

320 147 775 0.92 73 888 0.43 486 � 1640 588 794 7.35 294 398 3.55 1 034 0.02

1 280 2 149 551 58 1 074 776 29 1937 0.052 560 4 127 0.225 120 zu aufwendig 8 251 0.90

10 240 16 500 3.56

Die Anzahl der notwendigen Schritte steigt beim SOR-Verfahren nur linear in der Problem-größe. Dies ist im Gegensatz zum quadratischen Anstieg beim Jacobi- sowie beim Gauß-Seidel-Verfahren ein wesentlicher Fortschritt. Da der Aufwand eines Schrittes des SOR-Verfahrens mit dem von Jacobi- und Gauß-Seidel vergleichbar ist für das SOR-Verfahrenzu einem Gesamtaufwand von nur O(n2) Operationen. Dieses positive Resultat gilt jedochnur dann, wenn der optimale SOR-Parameter bekannt ist.

8.4. Praktische Aspekte

Wir fassen zunächst die bisher vorgestellten Verfahren zusammen:

Beispiel 8.16 (Einfache Iterationsverfahren). Es gilt in allgemeiner Darstellung

xk+1 = xk + C−1(b−Axk) = (I − C−1A)︸ ︷︷ ︸=B

xk + C−1b.

158

Page 167: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8.4. Praktische Aspekte

Ausgehend von der natürlichen Aufspaltung A = L + D + R sowie mit einem Relaxati-onsparameter ω sind Richardson-, Jacobi-, Gauß-Seidel- sowie SOR-Verfahren gegeben alsals:

• Gedämpftes Richardson Verfahren:

C−1 = ωI, B = I − ωA,

mit der Index-Schreibweise:

xki = ωbi + xk−1i − ω

n∑j=1

aijxk−1j , i = 1, . . . , n.

• Jacobi-Verfahren:C−1 = D−1, B = −D−1(L+R),

mit der Index-Schreibweise:

xki = 1aii

bi − n∑j=1,j 6=i

aijxk−1j

, i = 1, . . . , n.

• Gauß-Seidel-Verfahren

C−1 = [D + L]−1, B = −(D + L)−1R

mit der Index-Schreibweise:

xki = 1aii

bi −∑j<i

aijxkj −

∑j>i

aijxk−1j

, i = 1, . . . , n.

• SOR-Verfahren (englisch. Successive Over-Relaxation):

C = [D + ωL]−1, B = [D + ωL]−1[(1− ω)D − ωR], ω = ωopt ∈ (0, 2),

mit der Index-Schreibweise:

xki = ω1aii

bi −∑j<i

aijxkj −

∑j>i

aijxk−1j

+ (1− ω)xk−1i , i = 1, . . . , n.

Zur einfachen Durchführung der Verfahren eignet sich stets die Index-Schreibweise. DieMatrix-Form dient insbesondere der einfachen Charakterisierung sowie zum Herleiten vonKonvergenzaussagen.

Als iterative Verfahren werden die Gleichungssysteme nur im (praktisch irrelevanten) Falln → ∞) wirklich gelöst. Üblicherweise muss die Iteration nach einer bestimmten Anzahl

159

Page 168: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

von Schritten abgebrochen werden. Als Abbruchskriterium kann zunächst die asympto-tische Konvergenzaussage aus Satz 8.3 herangezogen werden. Mit ρ := spr(B) gilt imGrenzfall:

‖xk − x‖ ≈ ρk‖x0 − x‖.

Und bei vorgegebener Toleranz TOL kann die notwendige Zahl an Iterationsschrittenabgeschätzt werden:

‖xk − x‖ < TOL ⇒ k =log

(TOL‖x0−x‖

)log(ρ) .

Die Toleranz TOL gibt hier an, um welchen Faktor der Anfängliche Fehler ‖x0 − x‖reduziert wird. Dieses Vorgehen ist in der praktischen Anwendung wenig hilfreich, da derSpektralradius ρ der Iterationsmatrix B im Allgemeinen nicht bekannt ist.

Ein alternatives Kriterium liefert die Abschätzung aus Satz 3.30 für den Defekt dk :=b−Axk:

‖xk − x‖‖x‖

≤ cond(A)‖b−Axk‖

‖b‖.

Hier entsteht jedoch ein ähnliches Problem: Die Konditionszahl der Matrix A ist im All-gemeinen nicht bekannt. Damit kann ebenfalls keine quantitativ korrekte Abschätzunghergeleitet werden. Dieser einfache Zusammenhang zwischen Defekt und Fehler kann je-doch genutzt werden um eine relative Toleranz zu erreichen:

Bemerkung 8.17 (Relative Toleranz). Bei der Durchführung von iterativen Lösungsver-fahren werden als Abbruchskriterium oft relative Toleranzen eingesetzt. Die Iteration wirdgestoppt, falls gilt:

‖xk − x‖ ≤ TOL ‖x0 − x‖.

Als praktisch durchführbares Kriterium werden die unbekannten Fehler durch die Defekteersetzt:

‖b−Axk‖ ≤ TOL ‖b−Ax0‖.

8.5. Abstiegs & Gradientenverfahren

In diesem abschließenden Abschnitt werden wir zur Vorbereitung von leistungsfähigenVerfahren einige Grundlagen entwickeln.

Alle bisherigen Fixpunktiterationen lassen sich allgemeiner in folgender Form schreiben

xk+1 = xk + dk, k = 1, 2, . . . ,

wobei dk in jedem Schritt die Richtung angibt, in der die Lösung verbessert wird. BeimJacobi-Verfahren bestimmt sich diese Richtung z.B. als dk = D−1(b − Axk), beim Gauß-Seidel Verfahren als dk = (D+L)−1(b−Axk). Um diese allgemeine Iteration zu verbessern

160

Page 169: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8.5. Abstiegs & Gradientenverfahren

setzen wir an zwei Punkten an: zunächst fügen wir in jedem Schritt der Iteration einenRelaxationsparameter ωk ein

xk+1 = xk + ωkdk, k = 1, 2, . . . ,

welchen wir Schritt für Schritt optimal bestimmen werden. Anschließen versuchen wirneue Suchrichtungen dk auf eine systematische Art und Weise zu entwickeln. D.h., wirsuchen eine Richtung dk, in der die größte Fehlerreduktion zu erwarten ist. In diesemAbschnitt beschränken wir uns auf symmetrisch positiv definite Matrizen A ∈ Rn×n. Zen-tral für das gesamte Kapitel ist die folgende Charakterisierung zur Lösung eines linearenGleichungssystems mit symmetrisch, positiv definiter Matrix:

Satz 8.18 (Lineares Gleichungssystem und Minimierung). Es sei A ∈ Rn×n eine symme-trische positiv definite Matrix, x, b ∈ Rn. Die folgenden Bedingungen sind äquivalent:

(i) Ax = b,

(ii) Q(x) ≤ Q(y) ∀y ∈ Rn, Q(y) = 12(Ay, y)2 − (b, y)2.

Beweis: (i) ⇒ (ii) x sei Lösung des linearen Gleichungssystems Ax = b. Dann gilt mitbeliebigem y ∈ Rn:

2Q(y)− 2Q(x) = (Ay, y)2 − 2(b, y)2 − (Ax, x)2 + 2(b, x)= (Ay, y)2 − 2(Ax, y)2 + (Ax, x)2

= (A(y − x), y − x)2 ≥ 0,

d.h. Q(y) ≥ Q(x).

(ii) ⇒ (i) Umgekehrt sei Q(x) nun Minimum. D.h. x ∈ Rn ist stationärer Punkt derquadratischen Form Q(x), also:

0 != ∂

∂xiQ(x) = ∂

∂xi

{12(Ax, x)2 − (b, x)2

}= (Ax)i − bi, i = 1, . . . , n.

D.h., x ist Lösung des linearen Gleichungssystems. �

Anstelle ein lineares Gleichungssystem Ax = b zu lösen suchen wir das Minimum des soge-nannten “Energiefunktionals” Q(x)→ min. Dieser Zugang ist Grundlage der im Folgendendiskutieren Verfahren und auch Basis der allgemeinen Klasse von Krylow-Raum-Verfahren.

Wir betrachten zunächst nur symmetrisch positiv definite Matrizen, daher ist durch ‖x‖A :=√(Ax, x)2 eine Norm, die sogenannte Energienorm, gegeben. Die Minimierung des Ener-

giefunktionals Q(·) ist auch äquivalent zur Minimierung des Fehlers xk − x in der zuge-hörigen Energienorm. Denn, angenommen x ∈ Rn sei die Lösung des Gleichungssystemsund y ∈ Rn eine beliebige Approximation an diese Lösung. Dann gilt:

‖y − x‖2A = (A(y − x), y − x)2 = (Ay, y)− 2(Ay, x)︸ ︷︷ ︸=2(b,y)

+(Ax, x) = 2Q(y) + (Ax, x).

Minimierung von Q(y) minimiert auch den Fehler in der Energienorm.

161

Page 170: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

Abstiegsverfahren

Die Idee des Abstiegsverfahrens ist die sukzessive Reduktion des Energiefunktionals Q(·)für eine Folge von Approximationen xk. Dabei wird in jedem Schritt des Verfahrens zu-nächst eine sogenannte Abstiegsrichtung dk gewählt, im Anschluss wird die Approximationin dieser Richtung verbessert xk+1 = xk + ωkdk. Die Schrittweite ωk ∈ R wird dabei sogewählt, dass der resultierende Wert des Energiefunktionals minimal wird. Wir fassenzusammen:

Algorithmus 8.19 (Abstiegsverfahren). Es sei A ∈ Rn×n symmetrisch positiv definit,x0, b ∈ Rn. Iteriere für k = 0, 1, 2, . . .

1. Wähle Abstiegsrichtung dk ∈ Rn

2. Bestimme ωk als Minimum von

ωk = arg minωk∈R

Q(xk + ωkdk)

3. Updatexk+1 = xk + ωkdk.

Wir gehen davon aus dass die Suchrichtungen gegeben seien. Es bleibt, die optimaleSchrittweite zu berechnen. Hier handelt es sich um ein einfaches skalares Minimierungs-problem. Wir bestimmen

0 != ∂

∂ωkQ(xk + ωkdk) = ωk(Adk, dk) + (Axk, dk)− (b, dk),

alsoωk = (b−Axk, dk)

(Adk, dk) .

Eine Möglichkeit zur Bestimmung der Abstiegsrichtung ist eine Kombination mit Jacobi-oder Gauß-Seidel-Verfahren. Die Richtungen werden werden über diese Verfahren be-stimmt, die Schrittweite wird optimal berechnet. Wir betrachten hierzu ein Beispiel:

Beispiel 8.20 (Abstiegsverfahren, Jacobi & Gauß-Seidel). Es sei Ax = b mit

A =

2 −1 0−1 2 −10 −1 2

, b =

2−34

, x =

102

.Mit dem Startvektor x0 = 0 führen wir jeweils 10 Schritte mit Jacobi-, Gauß-Seidel-Verfahren sowie jeweils mit den entsprechenden Kombinationen unter Verwendung desoptimalen Abstiegs-Schritts ωk. In Abbildung 8.2 links fassen wir für alle Verfahren dieFehler zusammen. Auf der rechten Seite der Abbildung stellen wir den Approximations-verlauf xk ∈ R3 für Jacobi- sowie Jacobi-Abstiegsverfahren graphisch dar. Obwohl derVerlauf des Jacobi-Abstiegsverfahrens wesentlich “gradliniger” scheint, konvergiert dieses

162

Page 171: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8.5. Abstiegs & Gradientenverfahren

1e-05

0.0001

0.001

0.01

0.1

1

10

1 2 3 4 5 6 7 8 9 10

JacobiGauss-Seidel

Abstiegs-JacobiAbstiegs-Gauss-Seidel

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

-1.6-1.4

-1.2-1

-0.8-0.6

-0.4-0.2

0

1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9

2

JacobiAbstiegsverfahren

Abbildung 8.2.: Links: Konvergenz von Jacobi-, Gauß-Seidel- sowie den entsprechendenAbstiegsverfahren. Rechts: Vergleich der Annäherung bei Jacobi- undJacobi-Abstiegs-Verfahren an die Lösung x = (1, 0, 2)T .

Verfahren ebenso langsam wie das Jacobi-Verfahren selbst. Nur im Falle des Gauß-Seidel-Verfahrens wird die Konvergenz durch Wahl optimaler Schrittweite ωk wesentlich beschleu-nigt.

Gradientenverfahren Abschließend werden wir ein erstes Verfahren entwickeln, welchesdie neue Suchrichtung dk ∈ Rn systematisch so bestimmt, dass das quadratische Funk-tional Q(x) möglichst stark minimiert werden kann. Wir suchen also die Richtung desstärksten Abfalls. Zu einem Punkt x ∈ Rn ist dies gerade die Richtung d ∈ Rn, die normalauf den Niveaumenge N(x) steht:

N(x) := {y ∈ Rn : Q(y) = Q(x)}

In einem Punkt x ist die Niveaumenge aufgespannt durch alle Richtungen δx ∈ Rn mit:

0 != Q′(x) · δx = (∇Q(x), δx) = (b−Ax, δx).

Die Vektoren δx, welche die Niveaumenge aufspannen stehen orthogonal auf dem Defektb − Ax, dieser zeigt daher in Richtung der stärksten Änderung von Q(·). Wir wählendk := b − Axk. Die so gefundene Suchrichtung wird dann mit dem Abstiegsverfahrenkombiniert, d.h. wir iterieren:

dk := b−Axk, ωk := ‖dk‖22(Adk, dk)2

, xk+1 := xk + ωkdk.

Wir definieren das Gradientenverfahren:

163

Page 172: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

Algorithmus 8.21 (Gradientenverfahren). Es sei A ∈ Rn×n symmetrisch positiv definit,b ∈ Rn. Es sei x0 ∈ Rn beliebig und d0 := b−Ax0. Iteriere für k = 0, 1, 2, . . .

1. rk := Adk

2. ωk = ‖dk‖22

(rk,dk)2

3. xk+1 = xk + ωkdk.

4. dk+1 = dk − ωkrk.

Durch Einführen eines zweiten Hilfsvektors rk ∈ Rn kann in jeder Iteration ein Matrix-Vektor-Produkt gespart werden. Für Matrizen mit Diagonalanteil D = αI ist das Gra-dientenverfahren gerade das Jacobi-Verfahren in Verbindung mit dem Abstiegsverfahren.Daher kann für dieses Verfahren im Allgemeinen auch keine verbesserte Konvergenzaus-sage erreicht werden. Es stellt jedoch den Einstieg in eine ganze Klasse von komplexerenVerfahren, den Krylow-Unterraum-Verfahren dar. Wir zeigen:

Satz 8.22 (Gradientenverfahren). Es sei A ∈ Rn×n symmetrisch positiv definit. Dannkonvergiert das Gradientenverfahren für jeden Startvektor x0 ∈ Rn gegen die Lösung desGleichungssystems Ax = b.

Beweis: Es sei xk ∈ Rn eine gegebene Approximation. Weiter sei d := b − Axk. Dannberechnet sich ein Schritt des Gradientenverfahrens als:

xk+1 = xk + (d, d)(Ad, d)d.

Für das Energiefunktional gilt:

Q(xk+1) = 12(Axk+1, xk+1)− (b, xk+1)

= 12(Axk, xk) + 1

2(d, d)2

(Ad, d)2 (Ad, d) + (d, d)(Ad, d)(Axk, d)− (b, xk)− (d, d)

(Ad, d)(b, d)

= Q(xk) + (d, d)(Ad, d)

{12(d, d) + (Axk, d)− (b, d)

}

= Q(xk) + (d, d)(Ad, d)

12(d, d) + (Axk − b︸ ︷︷ ︸

=−d

, d)

Also folgt:

Q(xk+1) = Q(xk)− (d, d)2

2(Ad, d) .

Wegen der positiven Definitheit von A gilt λmin(A)(d, d) ≤ (Ad, d) ≤ λmax(A)(d, d) undschließlich ist mit

Q(xk+1) ≤ Q(xk)− (d, d)2λmax︸ ︷︷ ︸≥0

,

164

Page 173: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8.5. Abstiegs & Gradientenverfahren

die Folge Q(xk) monoton fallend. Weiter ist Q(xk) nach unten durch Q(x) beschränkt. Alsokonvergiert die Folge Q(xk)→ c ∈ Rn. Im Grenzwert muss gelten 0 = (d, d) = ‖b−Ax‖2,also Ax = b. �

Schließlich zitieren wir noch zur Abschätzung der Konvergenzgeschwindigkeit die folgendeFehlerabschätzung:

Satz 8.23 (Konvergenz des Gradientenverfahrens). Es sei A ∈ Rn×n eine symmetrischpositiv definite Matrix. Dann gilt für das Gradientenverfahren zur Lösung von Ax = b dieFehlerabschätzung

‖xk − x‖A ≤(1− 1/κ

1 + 1/κ

)k, κ := cond2(A) = λmax(A)

λmin(A) .

Beweis: Siehe [10] �

Die asymptotische Konvergenzrate des Gradientenverfahrens wir durch die Kondition derMatrix bestimmt. Für die Modellmatrix gilt κ = O(n2), siehe Beispiel 8.15. Also gilt:

ρ =1− 1

n2

1 + 1n2

= 1− 2n2 +O

( 1n4

).

Die Konvergenz ist demnach ebenso langsam wie die des Jacobi-Verfahrens (wir habenbereits diskutiert, dass es für die Modellmatrix mit dem Jacobi-Abstiegsverfahren über-einstimmt). Für das Gradientenverfahren gilt jedoch der folgende Zusammenhang, derBasis des CG-Verfahrens ist:

Satz 8.24 (Abstiegsrichtungen im Gradientenverfahren). Es sei A ∈ Rn×n symmetrischpositiv definit. Dann stehen je zwei aufeinanderfolgende Abstiegsrichtungen dk und dk+1

des Gradientenverfahren orthogonal aufeinander, also (dk, dk+1) = 0.

Beweis: Zum Beweis, siehe Algorithmus 8.21. Es gilt:

dk+1 = dk − ωkrk = dk − (dk, dk)(Adk, dk)Ad

k.

Also gilt:

(dk+1, dk) = (dk, dk)− (dk, dk)(Adk, dk)(Adk, dk) = (dk, dk)− (dk, dk) = 0.

165

Page 174: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

Das CG-Verfahren Der Zusammenhang aus Satz 8.24 gilt nur für jeweils aufeinander fol-gende Abstiegsrichtungen, im Allgemeinen gilt jedoch dk 6⊥ dk+2. In Abbildung 8.2 rechtsist der Approximationsverlauf des Abstiegs-Jacobi-Verfahren, welches hier mit dem Gra-dientenverfahren übereinstimmt, dargestellt. Zwei aufeinander folgende Richtungen sindzwar je orthogonal, die dritte Richtung steht jedoch wieder nahezu parallel auf der ersten.Dies führt dazu, dass das Gradientenverfahren im Allgemeinen sehr langsam konvergiert.Das CG-Verfahren, oder “Verfahren der konjugierten Gradienten”, entwickelt diesen An-satz weiter und wählt Suchrichtungen {d0, . . . , dk−1} die paarweise orthogonal sind. Ortho-gonalität wird dabei im A-Skalarprodukt (wir betrachten weiter nur symmetrische positivdefinite Matrizen) erreicht:

(Adr, ds) = 0 ∀r 6= s.

Im k-ten Schritt wird die Approximation xk = x0 +∑k−1i=0 αid

i als das Minimum über alleα = (α0, . . . , αk−1) bezüglich Q(xk) gesucht:

minα∈Rk

Q

(x0 +

k−1∑i=0

αidi

)= min

α∈Rk

{12

(Ax0 +

k−1∑i=0

αiAdi, x0 +

k−1∑i=0

αidi

)−(b, x0 +

k−1∑i=0

αidi

)}.

Der stationäre Punkt ist bestimmt durch:

0 != ∂

∂αjQ(xk) =

(Ax0 +

k−1∑i=0

αiAdi, dj

)− (b, dj) = −

(b−Axk, dj

), j = 0, . . . , k − 1.

D.h., das neue Residuum b − Axk steht orthogonal auf allen Suchrichtungen dj für j =0, . . . , k − 1. Dieses Gleichungssystem

(b−Axk, dj) = 0 ∀j = 0, . . . , k − 1, (8.8)

wird Galerkin-Gleichung genannt. Beim Entwurf des CG-Verfahrens ist es nun wichtig,dass die neu gewählte Suchrichtung dk nicht im Erzeugnis der bisherigen Suchrichtungenspan{d0, . . . , dk−1} enthalten ist. Denn in diesem Fall wird der Suchraum nicht größer unddie Approximation kann nicht verbessert werden. Daher wählt man für das CG-Verfahrenausgehend von einer Startapproximation x0 ∈ Rn mit d0 := b − Ax0 den Krylow-RaumKk(d0, A):

Kk(d0, A) := span{d0, Ad0, . . . , Ak−1d0}.

Es gilt:

Hilfsatz 8.25. Angenommen, es gilt Akd0 ∈ Kk. Dann liegt die Lösung x ∈ Rn vonAx = b im k-ten Krylow-Raum Kk(d0, A).

Beweis: Es sei Kk gegeben und xk ∈ x0 + Kk die beste Approximation, welche dieGalerkin-Gleichung (8.8) erfüllt. Es sei rk := b−Axk. Wegen

rk = b−Axk = b−Ax0︸ ︷︷ ︸=d0

+A (x0 − xk)︸ ︷︷ ︸∈Kk

∈ d0 +AKk,

166

Page 175: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8.5. Abstiegs & Gradientenverfahren

gilt rk ∈ Kk+1. Angenommen nun,Kk+1 ⊂ Kk. Dann gilt rk ∈ Kk. Die Galerkin-Gleichungbesagt rk ⊥ Kk, d.h. es gilt zwingend rk = 0 und Axk = b. �

Falls das CG-Verfahren abbricht weil keine neuen Suchrichtungen hinzukommen, so istdie Lösung gefunden. Angenommen, die A-orthogonalen Suchrichtungen {d0, d1, . . . , dk−1}liegen vor, so kann die CG-Approximation durch Ausnutzen der Basisdarstellung xk =x0 +

∑αid

i aus der Galerkin-Gleichung berechnet werden:(b−Ax0 −

k−1∑i=0

αiAdi, dj

)= 0 ⇒ (b−Ax0, dj) = αj(Adj , dj) ⇒ αj = (d0, dj)

(Adj , dj) .

Die A-orthogonale Basis {d0, . . . , dk−1} des Krylow-Raums Kk(d0, A) kann z.B. mit demGram-Schmidt-Verfahren berechnet werden. Der Nachteil dieser Methode ist der hoheAufwand des Gram-Schmidt-Verfahrens. Zur Orthogonalisierung von eines Vektors bzgl.einer bereits vorhandenen Basis {d0, . . . , dk−1} sind k Skalarprodukte erforderlich. SeineLeistungsfähigkeit erlangt das CG-Verfahren durch ausnutzen einer zweistufigen Rekursi-onsformel, welche die A-orthogonale Basis effizient und stabil berechnet:

Hilfsatz 8.26 (2-stufige Rekursionsformel zur Orthogonalisierung). Es sei A ∈ Rn×nsymmetrisch positiv definit, sowie x0 ∈ Rn und d0 := b − Ax0. Dann wird durch dieIteration

rk := b−Axk, βk−1 := − (rk, Adk−1)(dk−1, Adk−1) , dk := rk − βk−1d

k−1, k = 1, 2, . . .

eine A-orthogonale Basis mit (Adr, ds) = 0 für r 6= s erzeugt. Dabei ist xk in Schritt kdefiniert als die Galerkin-Lösung (b−Axk, dj) = 0 für j = 0, . . . , k − 1.

Beweis: Es sei durch {d0, . . . , dk−1} eine A-orthogonale Basis des Kk(d0, A) gegeben.Weiter sei xk ∈ x0 +Kk(d0, A) die Galerkin-Lösung zu (8.8). Es sei rk := b−Axk ∈ Kk+1und wir fordern, dass rk 6∈ Kk(d0, A). Ansonsten bricht die Iteration nach Hilfsatz 8.25ab. Wir bestimmen dk mit dem Ansatz:

dk = rk −k−1∑j=0

βk−1j dj . (8.9)

Die Orthogonalitätsbedingung besagt:

0 != (dk, Adi) = (rk, Adi)+k−1∑j=0

βk−1j (dj , Adi) = (rk, Adi)+βk−1

i (di, Adi), i = 0, . . . , k−1.

Es gilt (rk, Adi) = (b − Axk, Adi) = 0 für i = 0, . . . , k − 2, da Ark ⊥ Kk−1. Hieraus folgtβk−1i = 0 für i = 0, 1, . . . , k − 2. Für i = k − 1 gilt:

βk−1 := βk−1k−1 = − (rk, Adk−1)

(dk−1, Adk−1) .

167

Page 176: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

Schließlich gilt mit (8.9) dk = rk − βk−1dk−1. �

Mit diesen Vorarbeiten können wir alle Bestandteile des CG-Verfahrens zusammensetzen.Es sei also mit x0 eine Startlösung und mit d0 := b − Ax0 der Startdefekt gegeben.Angenommen, Kk := span{d0, . . . , dk−1} sowie xk ∈ x0 +Kk und der Defekt rk = b−Axkliegen vor. Dann berechnet sich dk gemäß Hilfsatz 8.26 als

βk−1 = − (rk, Adk−1)(dk−1, Adk−1) , dk = rk − βk−1d

k−1. (8.10)

Für den neuen Entwicklungskoeffizienten αk in xk+1 = x0 +∑ki=0 αid

i gilt durch Testender Galerkin-Gleichung (8.8) mit dk:

b−Ax0︸ ︷︷ ︸=d0

−k∑i=0

αiAdi, dk

= (b−Ax0, dk)− αk(Adk, dk)

= (b−Ax0 +A(x0 − xk)︸ ︷︷ ︸∈Kk

, dk)− αk(Adk, dk).

Also:

αk = (rk, dk)(Adk, dk) , xk+1 = xk + αkd

k. (8.11)

Hieraus lässt sich auch unmittelbar der neue Defekt rk+1 bestimmen:

rk+1 = b−Axk+1 = b−Axk − αkAdk = rk − αkAdk. (8.12)

Wir fassen (8.10-8.12) zusammen und formulieren das klassische CG-Verfahren:

Algorithmus 8.27 (CG-Verfahren). Es sei A ∈ Rn×n symmetrisch positiv definit, x0 ∈Rn und r0 = d0 = b−Ax0 gegeben. Iteriere für k = 0, 1, . . .

1. αk = (rk,dk)(Adk,dk)

2. xk+1 = xk + αkdk

3. rk+1 = rk − αkAdk

4. βk = (rk+1,Adk)(dk,Adk)

5. dk+1 = rk+1 − βkdk

Bei exakter Arithmetik liefert das CG-Verfahren für ein n-dimensionales Problem eineLösung nach (höchstens) n Schritten und kann daher prinzipiell als direktes Verfahrenbetrachtet werden.

168

Page 177: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8.5. Abstiegs & Gradientenverfahren

Satz 8.28 (CG als direkte Methode). Das CG-Verfahren bricht für jeden Startvektorx0 ∈ Rn bei rundungsfreier Rechnung nach spätestens n Schritten mit xn = x ab. Injedem Schritt gilt

Q(xk) = minα∈R

Q(xk−1 + αdk−1) = miny∈x0+Kk

Q(y),

bzw.‖b−Axk‖A−1 = min

y∈x0+Kk‖b−Ay‖A−1 ,

in der Norm‖x‖A−1 = (A−1x, x)

122 .

Beweis: Die Eigenschaft ein direktes Verfahren zu sein folgt unmittelbar aus Hilfsatz 8.25.

Die Iterierte des CG-Verfahrens ist zunächst bestimmt als

Q(xk) = miny∈x0+Kk

Q(y),

welches gleichbedeutend ist mit (8.8). Mit dem Ansatz

xk = x0 +k−1∑k=0

αkdk−1 = x0 + yk−1︸ ︷︷ ︸

∈Kt−1

+αt−1dk−1,

folgt

(b−Axk, dj) = (b−Ayk−1, dj)− αt−1(Adk−1, dj) = 0 ∀j = 0, . . . , t− 1,

also(b−Ayk−1, dj) = 0 ∀j = 0, . . . , t− 2,

und somit yk−1 = xk−1 sowie

Q(xk) = minα∈R

Q(xk−1 + αdk−1).

Schließlich gilt mit Hilfe der Symmetrie A = AT

‖b−Ay‖2A−1 = (A−1[b−Ay], b−Ay)2 = (Ay, y)2−(A−1b, Ay)2−(y, b)2 = (Ay, y)2−2(b, y)2,

also die Beziehung ‖b−Ay‖2A−1 = 2Q(y).

Obwohl das CG-Verfahren prinzipiell eine direkte Methode ist, wird es in der Praxis als ap-proximative, iterative Methode eingesetzt. Durch Rundungsfehler werden die Suchrichtun-gen {d0, . . . , dk−1} nie wirklich orthogonal sein. Die Konvergenzanalyse des CG-Verfahrenserweist sich als sehr aufwendig. Schlüssel ist die folgende Charakterisierung einer Iterationxk = x0 +Kk als

xk = x0 + pk−1(A)d0,

169

Page 178: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

wobei pk−1 ∈ Pk−1 ein Polynom in A ist:

pk−1(A) =k−1∑i=0

αiAi.

Hiermit kann die Minimierungseigenschaft aus Satz 8.28 geschrieben werden als

‖b−Axk‖A−1 = miny∈x0+Kk

‖b−Ay‖A−1 = minq∈Pk−1

‖b−Ax0 −Aq(A)d0‖A−1 .

Wenn wir zur ‖ · ‖A-Norm übergehen folgt mit d0 = b−Ax0 = A(x− x0)

‖b−Axk‖A−1 = ‖x− xk‖A = minq∈Pk−1

‖(x− x0)− q(A)A(x− x0)‖A,

also‖x− xk‖A = min

q∈Pk−1‖[I − q(A)A](x− x0)‖A.

Im Sinne einer Bestapproximation können wir diese Aufgabe schreiben als

p ∈ Pk−1 : ‖[I − p(A)A](x− x0)‖A = minq∈Pk−1

‖[I + q(A)A](x− x0)‖A. (8.13)

Gesucht ist eine Bestapproximation. Der Konvergenzbeweis zum CG-Verfahren baut da-her auf dem entsprechenden Abschnitt 9.6 und insbesondere Abschnitt 9.6.2 auf. Es istq(A)A ∈ Pk(A), also suchen wir ein Polynom q ∈ Pk mit der Eigenschaft q(0) = 1, so dass

‖xk − x‖A ≤ minq∈Pk, q(0)=1

‖q(A)‖A‖x− x0‖A. (8.14)

Die Konvergenz des CG-Verfahrens hängt davon ab, ob es uns gelingt, ein Polynom q ∈ Pkmit der Eigenschaft p(0) = 1 zu finden, mit möglichst kleiner Norm in A. Wir zeigen:

Hilfsatz 8.29 (Schanke für Matrix-Polynome). Es sei A ∈ Rn×n symmetrisch positivdefinit mit Eigenwerten 0 < λ1 ≤ · · · ≤ λn, p ∈ Pk ein Polynom mit p(0) = 1.

‖p(A)‖A ≤M, M := minp∈Pk, p(0)=1

supλ∈[λ1,λn]

|p(λ)|.

Beweis: Es sei {q1, . . . , qn} eine Orthogonalbasis aus Eigenvektoren von. y ∈ Rn beliebighat die Darstellung

y =n∑i=1

γiqi.

Mit Q = [q1, . . . , qn] gilt

A = QTDQ, D = diag(λ1, . . . , λn),

so dass für Polynome p ∈ Pk−1 folgt:

p(A) =k−1∑i=0

αiAi =

k−1∑i=0

αi(QTDQ)i = QTk−1∑i=0

αiDiQ = QT p(D)Q.

170

Page 179: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8.5. Abstiegs & Gradientenverfahren

Dann ist

‖p(A)y‖2A =n∑i=1

λip(λi)2γ2i ≤ sup

λ∈[λ1,λn]|p(λ)|2︸ ︷︷ ︸

=:M2

n∑i=1

λiγ2i =: M2‖y‖2A.

Und schließlich folgt‖p(A)‖A = sup

y∈Rn, y 6=0

‖p(A)y‖A‖y‖A

= M.

Mit diesem Resultat und der Fehlerabschätzung (8.14) können wir nun eine Konvergenz-abschätzung für das CG-Verfahren herleiten.

Satz 8.30 (Konvergenz des CG-Verfahrens). Es sei A ∈ Rn×n symmetrisch positiv definit,durch b ∈ Rn die rechte Seite und durch x0 ∈ Rn ein beliebiger Startwert gegeben. Danngilt

‖xk − x‖A ≤ 2(

1− 1/√κ

1 + 1/√κ

)k‖x0 − x‖A, k ≥ 0,

mit der Spektralkondition κ = cond2(A) der Matrix A.

Beweis: Aus dem Hilfsatz und der Abschätzung (8.14) folgt:

‖xk − x‖A ≤M‖x0 − x‖A,

mitM = min

q∈Pk, q(0)=1max

λ∈[λ1,λn]|q(λ)|.

Es gilt, eine möglichst scharfe Abschätzung für die Größe M zu finden. Gesucht ist einPolynom q ∈ Pk, welches am Nullpunkt den Wert eins annimmt q(0) = 1 und auf demBereich [λ1, λn] möglichst nahe (in der Maximums-Norm) an 0 liegt.

Hierzu verwenden wir die Tschebyscheff-Approximation. Wir suchen die beste Approxi-mation p ∈ Pk zur Nullfunktion auf [λ1, λn]. Dieses Polynom soll zusätzlich die Normie-rungseigenschaft p(0) = 1 besitzen. Daher scheidet die triviale Lösung p = 0 aus. DasTschebyscheff-Polynom (siehe Abschnitt 9.6.2 und Satz 9.73)

Tk = cos(k arccos(x)

),

hat die Eigenschaft

2−k−1 max[−1,1]

|Tk(x)| = minα0,...,αk−1

max[−1,1]

|xk +k−1∑i=0

αixk|,

ist also bei Normierung des größten Monoms das Polynom, dessen Maximum auf [−1, 1]minimal ist. Wir wählen nun die Transformation

x 7→ λn + λ1 − 2tλn − λ1

171

Page 180: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

und erhalten mitp(t) = Tk

(λn + λ1 − 2tλn − λ1

)Tk

(λn + λ1λn − λ1

)−1,

das Polynom von Grad k, welches auf [λ1, λn] minimal ist und der Normierung

p(0) = 1

genügt. Es gilt

supt∈[λ1,λn]

|p(t)| = Tk

(λn + λ1λn − λ1

)−1= Tk

(κ+ 1κ− 1

)−1, (8.15)

mit der Spektralkonditionκ := λn

λ1.

Wir nutzen die Darstellung der Tschebyscheff-Polynome außerhalb von [−1, 1] aus Satz 9.73:

Tn(x) = 12[(x+

√x2 − 1)n + (x−

√x2 − 1)n

].

Für x = κ+1κ−1 gilt:

κ+ 1κ− 1 +

√(κ+ 1κ− 1

)2− 1 = κ+ 2

√κ+ 1

κ− 1 =√κ+ 1√κ− 1 ,

und entsprechendκ+ 1κ− 1 −

√(κ+ 1κ− 1

)2− 1 =

√κ− 1√κ+ 1 ,

Hiermit kann (8.15) abgeschätzt werden:

Tk

(κ+ 1κ− 1

)= 1

2[(√κ+ 1√

κ− 1

)k+(√

κ− 1√κ+ 1

)k ]≥ 1

2

(√κ+ 1√κ− 1

)kAlso folgt:

supt∈[λ1,λn]

Tk

(κ+ 1κ− 1

)−1≤ 2

(√κ− 1√κ+ 1

)k= 2

1− 1√κ

1 + 1√κ

k�

In Abbildung ?? zeigen wir für die Situation λ1 = 1 und λn = 4 die entsprechendenPolynome für n = 2, 3, 4.

Die Konvergenz des CG-Verfahrens ist gerade doppelt so schnell wie die des Gradienten-verfahrens. Es gilt:

ρ := 1− 1/√κ

1 + 1/√κ

= 1− 2√κ+O(κ).

Für die Modellmatrix folgt ρ = 1− 1n . Das CG-Verfahren ist für dünn besetzte symmetri-

sche Gleichungssysteme eines der effizientesten Iterationsverfahren. Die Konvergenz hängt

172

Page 181: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8.5. Abstiegs & Gradientenverfahren

Abbildung 8.3.: abb:cgtscheby

wesentlich von der Kondition cond2(A) der Matrix A ab. Für cond2(A) ≈ 1 ist das Verfah-ren optimal: Zur Reduktion des Fehlers um einen gegebenen Faktor ε ist eine feste Anzahlvon Schritten notwendig.

Abschließend diskutieren wir anhand der Modellmatrix die verschiedenen Verfahren imVergleich:

Beispiel 8.31 (LGS mit der Modellmatrix). Es sei A ∈ Rn×n mit n = m2 die Modell-matrix:

A =

B −I−I B −I

−I B −I−I B

, B =

4 −1−1 4 −1

−1 4 −1−1 4

, I =

1

11

1

,mit B, I ∈ Rm×m. Die Matrix A ist eine Bandmatrix mit Bandbreite 2m. Weiter ist dieMatrix A symmetrisch positiv definit. Sie ist irreduzibel und diagonaldominant und erfülltin den Rändern der Blöcke das starke Zeilensummenkriterium. Alle bisher diskutierenVerfahren können auf die Matrix A angewendet werden. Größter sowie kleinster Eigenwertund Spektralkondition von A berechnen sich zu:

λmin = 2π2

n+O(n−2), λmax = 8− 2π2

n+O(n−2), κ ≈ 4

π2n ≈ n.

Direkte Verfahren Die LR-Zerlegung ist (da A positiv definit) ohne Permutierung durch-zuführen. Gemäß Satz 3.25 beträgt der Aufwand hierzu NLR = nm2 = 4n2 Operationen.Die Lösung ist dann bis auf Rundungsfehlereinflüsse exakt gegeben. Alternativ kann dieCholesky-Zerlegung von A erstellt werden. Hierzu sind NLL = 2n2 Operationen notwen-dig. LR- bzw. Cholesky-Zerlegung sind dicht besetzte Bandmatrizen. Das anschließendeLösen mit Vorwärts und Rückwärtselimination benötigt weitere 2nm Operationen. Wirfassen die notwendigen Operationen in folgender Tabelle zusammen:

173

Page 182: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

n = m2 NLR NLL100 5 · 104 2 · 104

10000 5 · 109 2 · 109

1000000 5 · 1012 2 · 1012

Bei effizienter Implementierung auf moderner Hardware ist das Gleichungssystem mit10 000 Unbekannten in wenigen Sekunden, das größte Gleichungssystem in wenigen Stun-den lösbar. Grundlegend für die effiziente Anwendung direkter Verfahren ist eine Vorsor-tierung der dünn besetzten Systeme, siehe Abschnitt 3.5.

Einfache Fixpunktiterationen Wir schätzen zunächst für Jacobi- sowie Gauß-Seidel-Verfahren die Spektralradien ab. Mit einem Eigenwert λ und Eigenvektor w von A gilt:

Aw = λw ⇒ Dw + (L+R)w = λw ⇒ −D−1(L+R)w = −D−1(λI −D)w.

D.h. wegen Dii = 4 giltJw = λ− 4

4 w,

und die Eigenwerte von J liegen zwischen

λmin(J) = 14(λmin(A)− 4) ≈ −1 + π2

2n, λmax(J) = 14(λmax(A)− 4) ≈ 1− π2

2n.

Minimaler und maximaler Eigenwert liegen jeweils nahe an −1 bzw. an 1. Für die Kon-vergenzrate gilt:

ρJ := spr(J) = 1− π2

2n,

und mit (8.6) folgt für das Gauss-Seidel-Verfahren

ρH := ρ2J ≈ 1− π2

n.

Zur Reduktion des Fehlers um einen gegebenen Faktor ε sind t Schritte erforderlich:

ρtJJ = ε ⇒ tJ = log(ε)log(ρ) ≈

2π2 log(ε)n, tH ≈

1π2 log(ε)n,

Jeder Schritt hat den Aufwand eines Matrix-Vektor Produktes, d.h. im gegebenen Fall 5n.Schließlich bestimmen wir gemäß (8.7) den optimalen SOR-Parameter zu

ωopt ≈ 2− 2 π√n.

Dann gilt:ρω = ωopt − 1 ≈ 1− 2 π√

n.

Hieraus erhalten wir:tω ≈

log(ε)2π√n.

174

Page 183: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8.5. Abstiegs & Gradientenverfahren

Der Aufwand des SOR-Verfahrens entspricht dem des Gauß-Seidel-Verfahrens mit einerzusätzlichen Relaxation, d.h. 6n Operationen pro Schritt. Wir fassen für die drei VerfahrenKonvergenzrate, Anzahl der notwendigen Schritte und Gesamtaufwand zusammen. Dabeiist stets ε = 10−4 gewählt:

Jacobi Gauß-Seidel SORn = m2 tJ Nj tH NH ωopt tJ NJ

100 180 105 90 5 · 104 1.53 9 105

10000 18500 109 9300 5 · 108 1.94 142 107

1000000 1866600 1013 933000 5 · 1012 1.99 1460 109

Während das größte Gleichungssystem mit dem optimalen SOR-Verfahren in wenigen Se-kunden gelöst werden kann, benötigen Jacobi und Gauß-Seidel-Verfahren etliche Stunden.

Abstiegsverfahren Schließlich betrachten wir Gradienten und CG-Verfahren. Es gilt fürdie Kondition

κ(A) = λmax(A)λmin(A) = 4n

π2 − 1,

also folgt für die Konvergenzraten von Gradienten und CG-Verfahren:

ρGR ≈ 1− 2κ≈ 1− π2

2n, ρCG ≈ 1− π√n.

Bei effizienter Implementierung benötigt das Gradientenverfahren pro Iterationsschritt ei-ne Matrix-Vektor Multiplikation (5n Operationen), zwei Skalarprodukte (2n Operationen)sowie 2 Vektor-Additionen (2n Operationen), insgesamt somit 9n Operationen. Der Auf-wand des CG-Verfahrens ist mit 15n Operationen etwas größer. Die Anzahl der Schrittebestimmt sich zu

ρtGR = 10−4 ⇒ tGR ≈n

π2 , tCG ≈√n

π.

Wir fassen zusammen:

Gradienten CGn = m2 tGR NGR tCG NCG

100 18 104 9 104

10000 2 330 108 140 107

1000000 233 300 1012 1400 1010

Wie bereits bekannt ist das Gradienten-Verfahren ebenso ineffektiv wie das Jacobi-Verfahren.Das CG-Verfahren erreicht etwa die gleiche Effizienz wie das SOR-Verfahren bei optimalerWahl des Relaxationsparameters. Dieses Ergebnis darf nicht falsch interpretiert werden:im Allgemeinen ist dieser Relaxationsparameter nicht verfügbar und muss grob approxi-miert werden. D.h., in der praktischen Anwendung wird das SOR-Verfahren weit schlechterkonvergieren und das CG-Verfahren ist im Allgemeinen überlegen.

175

Page 184: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

8.5.1. Vorkonditionierung

Die Konvergenzrate des CG-Verfahrens hängt von der Konditionszahl der Systemmatrixab. Es gilt:

ρCG =1− 1√

κ

1 + 1√κ

= 1− 2√κ

+O

(1κ

).

Für Diskretisierungen von elliptischen partiellen Differentialgleichungen in 2 Dimensionenmüssen wir z.B. κ = O(N) erwarten, also

ρCG ∼ 1− 1√N,

so dass die Konvergenzrate mit der Problemgröße noch immer schlechter wird.

Die Idee der Vorkonditionierung ist eine Reformulierung des linearen Gleichungssystems.Hier zu sei P ∈ Pn×n eine Matrix, welche die Schreibweise

P = KKT

erlaubt. Dann gilt:

Ax = b ⇔ K−1A(KT )−1︸ ︷︷ ︸=:A

KTx︸ ︷︷ ︸=:x

= K−1b︸ ︷︷ ︸=:b

,

also

Ax = b.

Im Fall

cond2(A)� cond2(A),

und falls die Anwendung von K−1 “preiswert” ist, so kann durch Betrachtung des vor-konditionierten Systems Ax = b eine wesentliche Beschleunigung erreicht werden. DieBedingung P = KKT ist notwendig, damit die Matrix A wieder symmetrisch ist.

Das CG-Verfahren mit Vorkonditionierung kann folgendermaßen formuliert werden:

176

Page 185: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8.5. Abstiegs & Gradientenverfahren

Algorithmus 8.32 (CG-Verfahren mit Vorkonditionierung). Es sei A ∈ Rn×n symme-trisch positiv definit, P = KKT ein symmetrischer Vorkonditionierer. Es sei x0 ∈ Rn.Berechne

r0 = b−Ax0, Pp0 = r0, d0 = p0.

Iteriere für k = 0, 1, . . .

1. αk = (rk,dk)(Adk,dk)

2. xk+1 = xk + αkdk

3. rk+1 = rk − αkAdk

4. Ppk+1 = rk+1

5. βk = (rk+1,pk+1)(rk,gk)

6. dk+1 = pk+1 + βkdk.

In jedem Schritt der Verfahrens kommt als zusätzlicher Aufwand die Anwendung desVorkonditionierers P hinzu. Beim der Auswahl des Vorkonditionierers ist darauf zu achten,dass er die Schreibweise P = KKT erlaubt - auch wenn die Teile K und KT im Verfahrennicht genutzt werden. Für die Wahl des Vorkonditionierers gelten ähnliche Bedingungenwie für die Wahl der Iterationsmatrix einfacher Fixpunktverfahren, d.h. die Bedingung

P ≈ A−1,

damit das vorkonditionierte Problem eine möglichst gute Kondition besitzt und

P ≈ I,

damit die Anwendung des Vorkonditionierers möglichst billig ist. Dementsprechend werdenim Allgemeinen auch ähnliche Verfahren gewählt:

• Jacobi-Vorkonditionierung Wir wählen P ≈ D−1, wobei D der Diagonalanteil derMatrix A ist. Hier gilt:

D = D12 (D

12 )T ,

d.h. bei Dii > 0 ist dieser Vorkonditionierer zulässig. Für die vorkonditionierte Ma-trix gilt

A = D−12AD−

12 ⇒ aii = 1

und die Vorkonditionierung bewirkt eine Skallierung der Matrix-Einträge. Diese Artder Vorkonditionierung kann die Kondition verbessern.

• SSOR-Vorkonditionierung Das SSOR-Verfahren ist eine symmetrische Variante desSOR-Verfahrens und basiert auf der Zerlegung

P = (D + ωL)D−1(D + ωR) = (D12 + ωLD−

12 )︸ ︷︷ ︸

K

(D12 + ωD−

12R)︸ ︷︷ ︸

=KT

,

177

Page 186: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

welches im Fall symmetrischer Matrizen L = RT die notwendige Bedingung an einenCG-Vorkonditionierer erfüllt.

Für die Modellmatrix der Diskretisierung der Laplace-Gleichung kann bei optimalerWahl von ω (welches eine nicht-triviale Aufgabe ist) die Beziehung

cond2(A) =√

cond2(A)

gezeigt werden. Die Konvergenzrate verbessert sich somit erheblich. Die Anzahl dernotwendigen Schritte zum Erreichen einer Fehlerreduktion um den festen Faktor εverbessert sich zu

tCG(ε) = log(ε)log(1− κ−

12 )≈ − log(ε)√

κ, tCG(ε) = log(ε)

log(1− κ−14 )≈ log(ε)

4√κ

Anstelle von z.B. 100 werden nur 10 Schritte benötigt. Die Bestimmung eines opti-malen Parameters ω ist im Allgemeinen jedoch sehr schwer.

• Schließlich betrachten wir die Vorkonditionierung durch unvollständige Cholesky-Zerlegung. Zur symmetrisch, positiv definiten Matrix A erstellen wir die approxima-tive Zerlegung

A ≈ CTC,

wobei die Zerlegung in CT und C die gleiche Besetzungsstruktur der Matrix Averwendet. D.h. Cij 6= 0 nur dann, wenn auch Aij 6= 0. Es gilt

A = CTC +N,

wobei die Größe (also die Zahl der nicht-Nullen) und Bedeutung von N ganz wesent-lich von der Sortierung der Matrix A abhängt (Siehe Abschnitt 3.5 und Beispiel ??).Eine Analyse dieser Vorkonditionierung ist schwierig. In der Praxis zeigt sich jedoch,dass dieses Verfahren den anderen Methoden weit überlegen ist. Insbesondere kommtes ohne die Bestimmung des Parameters ω aus.

8.5.2. Krylow-Teilraum Verfahren für allgemeine Matrizen

Die CG-Iteration beruht stark auf der Symmetrie und positiven Definitheit der MatrixA. Wir wollen hier zum Abschluss kurz Methoden vorstellen, die auch bei allgemeinenMatrizen verwendet werden können.

Es sei also A ∈ Rn×n eine reguläre, sonst aber allgemeine Matrix. Eine Symmetrisierungdes Problems

Ax = b,

kann einfach durch Multiplikation mit AT , also durch

ATAx = AT b,

178

Page 187: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8.5. Abstiegs & Gradientenverfahren

erreicht werden. Die Matrix B = ATA ist positiv definit, da

(Bx, x)2 = (ATAx, x)2 = (Ax,Ax)2 = ‖Ax‖2,

und prinzipiell könnte das CG-Verfahren auf ATA angewendet werden. Anstelle einer sinddann zwei Matrix-Vektor Multiplikationen pro Schritt durchzuführen. Gravierender ist dieAuswirkung auf die Konvergenzrate, da

κ(B) = cond2(ATA) = cond2(A)2.

gilt. Die Konvergenz verschlechtert sich somit wesentlich.

Die GMRES-Methode,Generalized Minimal Residual überträgt die Idee des CG-Verfahrensauf allgemeine Matrizen. Aufbauend auf dem Krylow-Raum

Kk(d0, A) = {d0, Ad0, . . . , Ak−1d0},

wird zunächst eine Orthonormalbasis erstellt. Beim GMRES-Verfahren wird die Orthogo-nalität bzgl. des euklidischen Skalarprodukts erreicht

(di, dj)2 = δij , i, j = 0, . . . , k − 1.

Die Näherung xk ∈ x0 +Kk wird dann mit Hilfe der Galerkin-Gleichung

(b−Axk, Adj)2 = 0, j = 0, . . . , k − 1 (8.16)

berechnet. Bei allgemeinen Matrizen kann kein 2-stufiges Orthogonalisierungsverfahrenhergeleitet werden. Daher hat das GMRES-Verfahren einen weit höheren Aufwand als dieCG-Iteration. Die Orthogonalbasis wird mit dem sogenannten Arnoldi-Verfahren entwi-ckelt. Dieses erlaubt die Wiederverwendung der Faktoren, welche im Zuge der Orthonor-malisierung berechnet wurden zur Lösung der Galerkin-Gleichung (8.16). Die Orthogona-lisierung geschieht üblicherweise mit Givens-Rotationen oder auf Basis von Householder-Transformationen.

Die Schwachstelle des GMRES-Verfahrens ist der wachsende Aufwand mit der Anzahl derSchritte, da die Orthogonalisierung stets bis zum Anfang zurückgeführt werden muss. Inder Praxis wird das GMRES-Verfahren daher meistens mit Restart durchgeführt: zur Or-thogonalisierung wird stets nur eine feste Anzahl von Suchrichtungen No gespeichert. Nachjeweils No Schritten wird ein neuer Krylow-Raum aufgebaut und die Orthogonalisierungerneut gestartet.

Das GMRES-Verfahren ist die Standardmethode zur iterativen Lösung von großen linearenGleichungssystemen mit dünn besetzter Matrix. Es lässt sich leicht mit Vorkonditionierungverbinden. Da die Matrix A sowieso nicht symmetrisch ist, erlaubt das GMRES-Verfahreneine sehr flexlible Wahl von Vorkonditionierern.

Alternativ zum GMRES-Verfahren ist die Biconjugate Gradient Stabilized-Methode (BiCG-Stab) die zweite gebräuchliche Iteration. Der Ansatz des BiCGStab-Verfahrens ist, Fehlerin der Orthogonalität bewusst hinzunehmen. Das Verfahren basiert auf zwei kurzen Re-kursionen für gestörte Orthogonale Vektoren. Eine Analyse des Verfahrens ist schwierig. In

179

Page 188: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

8. Numerische Iterationsverfahren für lineare Gleichungssysteme

der praktischen Anwendung erweist es sich als ähnlich effizient wie die GMRES-Iteration.Die einzelnen Schritte sind schneller, da kurze Rekursionsformeln genutzt werden können.Dafür ist die Konvergenzrate meist schlechter. Auch das BiCGStab Verfahren kann mitVorkonditionierern beschleunigt werden.

180

Page 189: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

In diesem Kapitel befassen wir uns mit der Frage, wie eine Reihe von Daten (z.B. aus phy-sikalischen Messungen, experimentellen Beobachtungen, Börse, etc.) durch eine möglichsteinfache Funktion p(x) (z.B. Polynome) angenähert werden kann. Auf der anderen Seitesoll geklärt werden, wie komplizierte Funktionen durch einfachere Funktionen aus einerbestimmten Klasse (z.B. Raum der Polynome) approximiert werden können.

Bei der Interpolation wird die approximierende Funktion p derart konstruiert, dass diesean den vorliegenden (diskreten) Daten exakt ist:

p(xk) = yk, k = 0, 1, 2, 3, . . . , n.

Die Stützstellen und Stützwerte (xk, yk) sind entweder diskrete Datenwerte (z.B. von Ex-perimenten) oder durch Funktionen bestimmt yk = f(xk). Mit Hilfe der Interpolation p(x)können bis dato unbekannte Werte an Zwischenstellen ξ ∈ (xk, xk+1) oder das Integralbzw. die Ableitung von p(x) bestimmt werden. Darüberhinaus hat die Interpolation einewesentliche Bedeutung zur Entwicklung weiterer numerischer Verfahren, wie beispielsweisenumerische Quadratur, Differentiation oder in weiterführenden Vorlesungen EntwicklungFiniter Elemente [11].

Die Approximation ist allgemeiner gefasst. Wieder wird eine einfache Funktion p(x) (alsoz.B. ein Polynom) gesucht, welche diskrete oder durch Funktionen bestimmte Datenwerte(xk, yk) möglichst gut approximiert. Im Gegensatz zur Interpolation wird jedoch nichtzwingend p(xk) = yk in ausgezeichneten Punkten xk gefordert. Was die Approximationauszeichnet wird von Fall zu Fall entschieden. Möglich ist z.B. bei der Approximation einerFunktion f die beste Approximation bzgl. einer Norm

p ∈ P : ‖p− f‖ = minq∈P‖q − f‖,

wobei P die Klasse der betrachteten einfachen Funktionen ist (also z.B. alle quadrati-schen Polynome). Eine Anwendung der Approximation ist das “Fitten” von diskretenDatenwerten, welche durch Experimente gegeben sind. Oft werden viele tausend Mess-werte berücksichtigt, die von der zugrundeliegenden (etwa physikalischen) Formel jedochaufgrund von statistischen Messfehlern nicht exakt im Sinne der Interpolation, sondernnur approximativ erfüllt werden sollen. Eine zweite Anwendung ist wieder die möglichsteinfache Darstellung von gegebenen Funktionen.

Grundsätzlich hat die Darstellung von diskreten Daten als einfache Funktion oder dieApproximation einer allgemeinen Funktion durch z.B. ein Polynom den großen Vorteil,

181

Page 190: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

dass Elementaroperationen wie Ableitungsbildung und Integration, viel einfacher ausge-führt werden können. Als Funktionenräume zur Approximation werden möglichst einfacheFunktionen verwendet. Beispiele sind die Polynomräume mit Funktionen

p(x) =n∑k=0

αkxk,

oder z.B. die Räume der trigonometrischen Funktionen

q(x) =n∑k=0

αk cos(kπx) + βk sin(kπx).

Einen Zusammenhang zwischen Polynomen und stetigen Funktionen stellt der Weierstraß-sche Approximationssatz her (Analysis I):

Satz 9.1 (Weierstraßsche Approximationssatz). Es sei f ∈ C[a, b]. Dann gibt es zu jedemε > 0 ein auf [a, b] definiertes Polynom p, so dass

|f(x)− p(x)| < ε ∀x ∈ [a, b].

Der Weierstraßsche Approximationssatz besagt zunächst, dass es möglich ist, jede stetigeFunktion beliebig gut durch ein Polynom zu approximieren, hilft jedoch noch nicht beider praktischen Durchführung. Auch hier gibt es einen einfachen Ansatz in der Analysis:

Satz 9.2 (Taylor-Entwicklung). Es sei f ∈ Cn+1[a, b]. Das n-te Taylor-Polynom zu x0 ∈(a, b)

tn(x;x0) :=n∑k=0

f (k)(x0)k! (x− x0)k

ist eine Approximation zu f in der Umgebung von x0. Es gilt die Fehlerabschätzung:

f(x)− tn(x;x0) = f (n+1)(ξx)(n+ 1)! (x− x0)n+1,

mit einer Zwischenstelle ξx ∈ [a, b].

Hier ist C([a, b]) der Vektorraum der auf dem Intervall [a, b] stetigen Funktionen undCk([a, b]) der Raum der auf [a, b] k-mal stetig differenzierbaren Funktionen. Die Taylor-Entwicklung ermöglicht eine konkrete Vorgehensweise zum Erstellen eines approximativenPolynoms. Wir sehen jedoch bereits, dass wir eine sehr starke Regularität von f benötigen.Darüber hinaus ist die Taylor-Entwicklung nur für Funktionen, nicht aber für diskreteDatenwerte (xk, yk) möglich.

Neben der Taylor-Entwicklung von Funktionen stellt die Analysis noch die Fourier-Analysezur Approximation von periodischen Funktionen f mit Hilfe von trigonometrischen Poly-nomen zur Verfügung.

182

Page 191: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.1. Polynominterpolation

9.1. Polynominterpolation

Wir bezeichnen mit Pn den Vektorraum der Polynome vom Grad ≤ n:

Pn :={p(x) =

n∑k=0

akxk ak ∈ R, k = 0, . . . , n

}.

Definition 9.3 (Lagrangesche Interpolationsaufgabe). Die Lagrangesche Interpolations-aufgabe besteht darin, zu n+1 paarweise verschiedenen Stützstellen (Knoten) x0, . . . , xn ∈R und zugehörigen gegebenen Stützwerten y0, . . . , yn ∈ R ein Polynom p ∈ Pn zu bestim-men, so dass die Interpolationsbedingung

p(xk) = yk, k = 0, . . . , n,

erfüllt ist.

Satz 9.4. Die Lagrangesche Interpolationsaufgabe ist eindeutig lösbar.

Beweis: Die Eindeutigkeit wird zuerst nachgewiesen. Es seien p1, p2 ∈ Pn zwei Lösungen.Dann gilt für das Differenzpolynom p := p1 − p2 ∈ Pn:

p(xk) = 0, k = 0, . . . , n,

d.h. p hat n+ 1 Nullstellen und ist folglich das Nullpolynom. Dies kann mit Hilfe des Sat-zes von Rolle nachgewiesen werden. Zum Nachweis der Existenz betrachten wir die Glei-chungen p(xk) = yk, k = 0, . . . , n. Dies kann als ein lineares Gleichungssystem aufgefasstwerden, welches n+ 1 Gleichungen für die n+ 1 unbekannten Koeffizienten a0, . . . , an desPolynoms p ∈ Pn. Wegen der bereits gezeigten Eindeutigkeit des Interpolationspolynomsp (also der Injektivität) hat dieses System notwendigerweise eine Lösung (Surjektivität).�

Die gegebenen Stützwerte yk können Werte einer gegebenen Funktion f sein, d.h.

f(xk) = yk, k = 0, 1, . . . , n,

oder auch beliebige diskrete Datenwerte

(xk, yk), k = 0, 1, . . . , n.

Sind die Stützstellen paarweise verschieden, so lässt sich die Interpolationsaufgabe als einSystem von linearen Gleichungen formulieren:

a0 + a1x1 + a2x21 + · · ·+ anx

n1 = y1

a0 + a1x2 + a2x22 + · · ·+ anx

n2 = y2...

an + a1xn + a2x2n + · · ·+ anx

nn = yn,

183

Page 192: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

bzw. in Matrixschreibweise1 x1 x2

1 · · · xn11 x2 x2

2 · · · xn2...

... . . . . . . ...1 xn x2

n · · · xnn

a0a1...an

=

y0y1...yn

.Das Erstellen des Interpolationspolynoms erfordert demnach das Lösen eines quadrati-schen linearen Gleichungssystems mit n + 1 Gleichungen. Die Matrix ist die sogenannteVandermonde-Matrix. Im allgemeinen Fall ist diese Matrix sehr schlecht konditioniert miteiner exponentiell steigenden Konditionszahl. Dieser direkte Weg eignet sich daher nichtzum praktischen Lösen der Interpolationsaufgabe.

9.1.1. Lagrangesche Darstellung

Zur Bewältigung der Interpolationsaufgabe werden wir eine Basis des Raums Pn definieren,welche ein unmittelbares Aufstellen des Interpolationspolynoms erlaubt. Wir definieren:

Satz 9.5 (Lagrange-Basispolynome). Es seien xk ∈ R für k = 0, . . . , n paarweise ver-schiedene Stützstellen. Die Lagrange-Polynome

L(n)k (x) :=

n∏j=0,j 6=k

x− xjxk − xj

∈ Pn, k = 0, 1, . . . , n,

definieren eine Basis des Pn. Weiter gilt

L(n)k (xl) = δkl (9.1)

Beweis: (i) Wir zeigen zunächst die Eigenschaft (9.1). Es gilt

L(n)k (xk) =

n∏j=0,j 6=k

xk − xjxk − xj

= 1.

Weiter ist für l 6= k

L(n)k (xl) =

n∏j=0,j 6=k

xl − xjxk − xj

= xl − xlxk − xl

n∏j=0,j 6=k,j 6=l

xl − xjxk − xj

= 0.

(ii) Nach Konstruktion gilt L(n)k ∈ Pn für k = 0, . . . , n. Weiter sind alle Polynome L(n)

k

linear unabhängig. Ansonsten gäbe es Koeffizienten α1, . . . , αn mit

L(n)0 (x) =

n∑i=1

αiL(n)i (x).

Für x = x0 ergibt sich ein Widerspruch. �

184

Page 193: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.1. Polynominterpolation

Satz 9.6 (Lagrangesche Darstellung). Es seien x0, . . . , xn ∈ R paarweise verschiedeneStützstellen und y0, . . . , yn ∈ R. Die (eindeutige) Lösung der Lagrangesche Interpolations-aufgabe p(xk) = yk für k = 0, . . . , n ist gegeben durch

p(x) :=n∑k=0

ykL(n)k (x).

Beweis: Diese Aussage folgt unmittelbar aus soeben nachgewiesenen Eigenschaften derLagrangeschen Basispolynome. �

Die Lagrangesche Darstellung des Interpolationspolynoms besticht durch ihre Einfach-heit. Sie hat allerdings den großen Nachteil, das jedes Basispolynom L

(n)k (x) von sämt-

lichen Stützstellen x0, x1, . . . , xn abhängt. Angenommen zur Steigerung der Genauigkeitsoll eine Stützstelle xn+1 hinzugenommen werden, so müssen sämtliche Basispolynomeausgetauscht werden.

9.1.2. Newtonsche Darstellung

Um dieses Problem zu lösen führen wir eine weitere Basis des Polynomraums Pn ein:

Satz 9.7 (Newton-Basispolynome). Es seien xk für k = 0, . . . , n paarweise verschiedeneStützstellen. Durch

N0(x) := 1,

Nk(x) :=k−1∏j=0

(x− xj), k = 1, . . . , n,

ist eine Basis des Pn gegeben.

Beweis: Die Basiseigenschaft kann wieder einfach nachgewiesen werden. Zunächst giltNk ∈ Pn für k = 0, . . . , n. Weiter sind die Basispolynome linear unabhängig. Dies folgtaus der Eigenschaft

Nk(xl) ={

0 k > l

6= 0 k ≤ l.

Ein Polynom Nk kann nicht durch eine lineare Kombination von Polynomen Pl mit l < kdargestellt werden. �

Das Basispolynom Nk(x) hängt nur von den Stützstellen x0, . . . , xk ab. Bei Hinzunah-me einer Stützstelle xk+1 müssen die ersten Basispolynome nicht geändert werden. DasInterpolationspolynom wird nach dem Ansatz

p(x) =n∑k=0

akNk(x),

185

Page 194: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

bestimmt. Für die Stützstelle xk gilt Nl(xk) = 0 für alle l > k. Wir gehen rekursiv vor:

y0!= p(x0) = a0,

y1!= p(x1) = a0 + a1(x1 − x0),

...

yn!= p(xn) = a0 + a1(xn − x0) + . . .+ an(xn − x0) · · · (xn − xn−1).

Im Gegensatz zur vorher kennengelernten Lagrangeschen Darstellung kann ein weiteresDatenpaar (xn+1, yn+1) leicht hinzugefügt werden. Ist das Interpolationspolynom pn ∈ Pngegeben, so kann eine Stützstelle xn+1 einfach hinzugenommen werden:

yn+1!= pn+1(xn+1) = pn(xn+1)+an+1Nn+1(xn+1) ⇒ an+1 = yn+1 − pn(xn+1)

Nn+1(xn+1) . (9.2)

In der Praxis werden die Koeffizienten ak durch den folgenden Algorithmus numerischstabil berechnet:

Satz 9.8. Es seien xk ∈ R für k = 0, . . . , n paarweise verschiedene Stützstellen undyk ∈ R. Das Lagrangesche Interpolationspolynom lautet bezüglich der Newtonschen Poly-nombasis:

p(x) =n∑k=0

y[x0, . . . , xk]Nk(x).

Die Notation y[x0, . . . , xk] bezeichnet die dividierten Differenzen, welche über die folgenderekursive Vorschrift definiert sind:

1 f ü r k = 0, . . . , n s e t z e y[xk] := yk2 f ü r l = 1, . . . , n und3 f ü r k = 0, . . . , n− l berechne4 y[xk, . . . , xk+l] := y[xk+1,...,xk+l]−y[xk,...,xk+l−1]

xk+l−xk

Beweis: Wir bezeichnen mit pk,k+l ∈ Pl das Polynom, welches die Interpolation zu denl + 1 Punkten (xk, yk), . . . , (xk+l, yk+l) darstellt. Insbesondere ist durch p0,n das gesuchtePolynom p ∈ Pn gegeben. Wir zeigen, dass die folgende Aussage für alle l = 0, . . . n undk = 0, . . . , n− l gilt:

pk,k+l(x) = y[xk]+y[xk, xk+1](x−xk)+ · · ·+y[xk, . . . , xk+l](x−xk) · · · (x−xk+l−1). (9.3)

Wir führen den Beweis durch Induktion nach dem Polynomgrad l. Für l = 0 gilt pk,k(x) =y[yk] = yk. Angenommen, die Behauptung sei richtig für l − 1 ≥ 0. D.h. insbesonde-re, das Polynom pk,k+l−1 ist in Darstellung (9.3) gegeben und interpoliert die Punkte(xk, yk), . . . , (xk+l−1, yk+l−1) und das Polynom pk+1,k+l interpoliert die Punkte (xk+1, yk+1),. . . , (xk+l, yk+l). Dann ist durch

q(x) = (x− xk)pk+1,k+l(x)− (x− xk+l)pk,k+l−1(x)xk+l − xk

, (9.4)

186

Page 195: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.1. Polynominterpolation

ein Interpolationspolynom durch die Punkte (xk, yk), . . . , (xk+l, yk+l) gegeben. Dies machtman sich durch Einsetzen von xi in q(x) deutlich. Für innere Punkte i = k + 1, . . . , k +l − 1 gilt pk,k+l−1(xi) = pk+1,k+l(xi) = yi, für xk und xk+l ist jeweils einer der beidenFaktoren gleich Null. Es gilt somit für das gesuchte Interpolationspolynom pk,k+l = q.Nach Konstruktion (9.2) gilt jedoch auch die folgende Darstellung:

pk,k+l(x) = pk,k+l−1(x) + a(x− xk) · · · (x− xk+l−1).

Koeffizientenvergleich des führenden Monoms xn zwischen dieser Darstellung und (9.4)liefert mit Hilfe von (9.3) für pk,k+l−1 sowie pk+1,k+l:

a = y[xk+1, . . . , xk+l]− y[xk, . . . , xk+l−1]xk+l − xk

= y[xk, . . . , xk+l].

Dieses rekursive Konstruktionsprinzip legt sofort einen Algorithmus zum Auswerten derInterpolation an einer Stelle ξ ∈ R nahe, ohne dass das gesuchte Interpolationspolynomp(x) zuvor explizit bestimmt werden muss. Wir gehen hierzu von der Darstellung (9.4)aus:

Algorithmus 9.9 (Neville-Schema). Es seien die Stützstellenpaare (x0, y0), . . . , (xn, yn)gegeben sowie der Auswertungspunkt ξ. Berechne p(ξ) = p0,n:

1 f ü r k = 0, . . . , n s e t z e pk,k := yk2 f ü r l = 1, . . . , n und3 f ü r k = 0, . . . , n− l berechne4 pk,k+l := pk,k+l−1 + (ξ − xk)

pk+1,k+l−pk,k+l−1xk+l−xk

Bei der Durchführung des Neville-Schemas erhalten wir mit pk,l automatisch die Appro-ximationen der Interpolationspolynome durch (xk, yk), . . . , (xk+l, yk+l). Wir führen dasNeville-Schema exemplarisch durch:

Beispiel 9.10 (Neville-Schema). Wir betrachten die Stützstellenpaare (0, 0), (1, 1), (2, 8), (3, 27),welche von der Funktion f(x) = x3 abgegriffen sind. Wir führen das Neville-Schema zurBerechnung der Interpolation im Punkt ξ = 0.5 rekursiv aus:

p00 = 0 p11 = 1 p22 = 8 p33 = 27p01 = 0.5 p12 = −2.5 p23 = −20.5

p02 = −0.25 p13 = 2p03 = 0.125

Die finale Approximation p03 = 0.125 = 0.53 ist exakt. Dies ist zu erwarten, da f ∈ P3.Als Stichprobe betrachten wir die sehr schlechte Approximation p23, welche sich durch daslinearen Interpolationspolynom p2,3(x) durch die Stützstellen (2, 8) und (3, 27), also durch

p2,3(x) = 8 + 27− 83− 2 (x− 2) = 19x− 30

ergibt. Es gilt p2,3(0.5) = −20.5.

187

Page 196: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

9.1.3. Interpolation von Funktionen und Fehlerabschätzungen

In diesem Abschnitt diskutieren wir die Interpolation von Funktionen. Die Punkte sind nunnicht mehr durch einen Datensatz gegeben, sondern durch Auswertung einer gegebenenFunktion f auf [a, b]:

yk = f(xk), xk ∈ [a, b], k = 0, . . . , n.Die Durchführbarkeit, also Existenz und Eindeutigkeit eines Interpolationspolynoms wur-de bereits in den vorangehenden Abschnitten beantwortet. Bei der Interpolation von Funk-tionen stellt sich hier die Frage, wie gut das Interpolationspolynom p ∈ Pn die Funktionf auf [a, b] approximiert.

Satz 9.11 (Interpolationsfehler mit differenziellem Restglied). Es sei f ∈ Cn+1[a, b] undpn ∈ Pn das Interpolationspolynom zu f in den n+ 1 paarweise verschiedenen Stützstellenx0, . . . , xn. Dann gibt es zu jedem x ∈ [a, b] ein ξ ∈ (a, b), so dass

f(x)− p(x) = fn+1(ξ)(n+ 1)!

n∏j=0

(x− xj). (9.5)

Insbesondere gilt

|f(x)− p(x)| ≤maxξ∈(a,b) |fn+1(ξ)|

(n+ 1)!

n∏j=0|x− xj |. (9.6)

Beweis: Falls x mit einer Stützstelle zusammenfällt, d.h. x = xk für ein k ∈ {0, . . . , n},dann verschwindet der Fehler und wir sind fertig. Es sei daher x 6= xk für alle k = 0, 1, . . . , nund F ∈ Cn+1[a, b] mit

F (t) := f(t)− pn(t)−K(x)n∏j=0

(t− xj).

K(x) sei so bestimmt, so dass F (x) = 0. Dies ist möglich, dan∏j=0

(x− xj) 6= 0 ⇒ K(x) = f(x)− pn(t)∏nj=0(x− xj)

.

Dann besitzt F (t) in [a, b] mindestens n+2 verschiedene Nullstellen x0, x1, . . . , xn, x. Durchwiederholte Anwendung des Satzes von Rolle hat die Ableitung F (n+1) mindestens eineNullstelle ξ ∈ (a, b). Mit

0 = F (n+1)(ξ) = f (n+1)(ξ)− p(n+1)(ξ)−K(x)(n+ 1)! = f (n+1)(ξ)− 0−K(x)(n+ 1)!.

Hieraus folgt die Behauptung mittels

K(x) = f (n+1)(ξ)(n+ 1)! ⇒ f(x)− pn(x) = f (n+1)(ξ)

(n+ 1)!

n∏j=0

(x− xj)

188

Page 197: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.1. Polynominterpolation

Satz 9.12 (Interpolationsfehler mit Integral-Restglied). Es sei f ∈ Cn+1[a, b]. Dann giltfür x ∈ [a, b] \ {x0, . . . , xn} die Darstellung

f(x)− p(x) = f [x0, . . . , xn, x]n∏j=0

(x− xj),

mit den Interpolationsbedingungen f [xi, . . . , xi+k] := y[xi, . . . , xi+k] und

f [x0, . . . , xn, x] =∫ 1

0

∫ t1

0· · ·∫ tn

0f (n+1)(x0 + t1(x1 − x0) + . . .+ t(x− xn)

)dt . . . dt2 dt1.

Beweis: Wird folgen. �

Für den Fehler der Lagrange-Interpolation können die folgenden Betrachtungen geführtwerden. In (9.5) wird für großes n der Term 1

(n+1)! sehr klein. Das Produkt∏nj=0(x− xj)

wird klein, wenn die Stützstellen sehr dicht beieinander liegen. Sind alle Ableitungen vonf gleichmäßig (bzgl. der Ableitungsstufe) beschränkt auf [a, b], so gilt mit (9.6), dass

maxa≤x≤b

|f(x)− p(x)| → 0, n→∞.

Haben die Ableitungen der zu interpolierenden Funktion jedoch ein zu starkes Wachs-tumsverhalten für n→∞, z.B.

f(x) = (1 + x2)−1, |fn(x)| ≈ 2nn!O(|x|−2−n),

so konvergiert die Interpolation nicht gleichmäßig auf [a, b].

Beispiel 9.13. Die Funktion f(x) = |x|, x ∈ [−1, 1] werde mit Hilfe der Lagrange-Interpolation in den Stützstellen

xk = −1 + kh, k = 0, . . . , 2m, h = 1/m, x 6= xk

interpoliert. Dies ergibt das globale Verhalten

pm(x) 9 f(x), m→∞.

Zwar ist f in diesem Beispiel nicht differenzierbar, dennoch ist dieses Verhalten derLagrange-Interpolation auch bei anderen Beispielen zu beobachten. Man betrachte z.B. dieFunktion

f(x) = (1 + x2)−1, x ∈ [−5, 5].

Wir fassen die bisherigen Ergebnisse zusammen:

189

Page 198: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

-1 -0.5 0 0.5 1

-0.004

-0.002

0

0.002

0.004

0.006

0.008

0.01

0.012

-1 -0.5 0 0.5 1

Abbildung 9.1.: Interpolationspolynome pm(x) ∈ P2m für m = 1, 2, 4, 8. Links: das kom-plette Interpolationsintervall. Rechts: Ausschnitt nahe y = 0.

Bemerkung 9.14. Der Approximationssatz von Weierstraß besagt, dass jede Funktionf ∈ C([a, b]) durch ein Polynom beliebig gut approximiert werden kann. Die Analysis gibtjedoch keine Hilfestellung bei der konkreten Durchführung der Approximation. Die Lagran-gesche Interpolation ist eine Möglichkeit zur Approximation. Die Qualität dieser Appro-ximation wird jedoch wesentlich durch die Regularität der Daten, also durch f bestimmt.Eine gleichmäßige Approximation von Funktionen mit Lagrangeschen Interpolationspoly-nomen ist im Allgemeinen nicht möglich.

Die Lagrangesche Interpolation “krankt” demnach an den gleichen Einschränkungen wiedie Taylor-Entwicklung, Satz 9.2. Von der Möglichkeit, eine nur stetige Funktion f ∈C([a, b]) beliebig gut zu approximieren sind wir noch weit entfernt.

Ein zweiter Nachteil der Lagrange-Interpolation ist die fehlende Lokalität. Eine Störungin einer Stützstelle (xk, yk) hat Auswirkung auf alle Lagrange-Polynome und insbesondereauf das gesamte Interpolationsintervall. Wir betrachten hierzu ein Beispiel:

Beispiel 9.15 (Globaler Fehlereinfluss). Wir suchen das Interpolationspolynom zu derFunktion f(x) = 0 in den 2m+ 1 Stützstellen

xk = −1 + kh, k = −m, . . . ,m, h = 1m.

Das exakte Interpolationspolynom p ∈ P2m ist natürlich durch p = 0 gegeben. Wir nehmenan, dass die Funktionsauswertung in Nullpunkt gestört ist:

yk ={

0 k 6= 0ε k = 0

,

mit einem kleinen ε. Das gestörte Interpolationspolynom ist in Lagrangescher Darstellunggegeben durch

p(x) =m∏

i=−m,i 6=0

x− xixi

.

190

Page 199: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.2. Stückweise Interpolation

In Abbildung 9.1 zeigen wir pm ∈ P2m für die Fälle m = 1, 2, 4, 8 mit einer Störung ε =0.01. Trotz dieser kleinen Störung an der Stelle x = 0 weichen die Interpolationspolynomam Intervallrand sehr stark von yk = 0 ab. In der rechten Abbildung sieht man, dass fürkleine Polynomgrade, also m = 1 und m = 2 der maximale Fehler auf dem Intervall nichtgrößer als die anfängliche Störung ε = 0.01 ist. Die Lagrangesche Interpolation ist instabilfür große Polynomgrade.

Das ungünstige Verhalten der Interpolation an den Intervallrändern wird Runges Phäno-men genannt. Es erklärt sich aus der Tatsache, dass jedes Polynom p(x) für x → ±∞gegen p → ±∞ strebt. Eine zu interpolierende Funktion, welche diese Eigenschaft nichthat, etwa

r(x) = 11 + x2 ,

für welche r → 0 für x → ±∞, kann im allgemeinen mit Polynomen global schlechtdargestellt werden.

Hermite Interpolation

Zum Abschluss der Funktionsinterpolation erwähnen wir noch eine Verallgemeinerung, diesogenannte Hermitesche Interpolationsaufgabe. Diese unterscheidet sich von der Lagrange-Interpolation durch die Möglichkeit neben Funktionswerten p(xk) = f(xk) auch Gleichheitvon Ableitungswerten p(i)(xk) = f (i)(xk) zu fordern. Wir fassen zusammen:

Satz 9.16 (Hermite Interpolation). Es sei f ∈ C(n+1)([a, b]). Es seien x0, . . . , xm paar-weise verschiedene Stützstellen und µk ∈ N für k = 0, . . . ,m ein Ableitungsindex. Fernergelte n = m+

∑mk=0 µk . Das Hermitesche Interpolationspolynom zu

k = 0, . . . ,m : p(i)(xk) = f (i)(xk), i = 0, . . . , µk,

ist eindeutig bestimmt und zu jedem x ∈ [a, b] existiert eine Zwischenstelle ξ ∈ [a, b], sodass gilt:

f(x)− p(x) = f [x0, . . . , x0︸ ︷︷ ︸µ0+1

, . . . , xm, . . . , xm︸ ︷︷ ︸µm+1

, x]m∏k=0

(x− xk)µk+1

= 1(n+ 1)!f

(n+1)(ξ)m∏k=0

(x− xk)µk+1.

9.2. Stückweise Interpolation

Ein wesentlicher Defekt der globalen Interpolation aus dem vorherigen Abschnitt ist, dassdie interpolierenden Polynome starke Oszillationen zwischen den Stützstellen mit immergrößeren Werten annehmen. Der Grund ist die generische Steifheit, die durch die impliziteForderung von C∞-übergängen in den Stützstellen gegeben ist. Die Steifheit kann dadurch

191

Page 200: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

reduziert werden, dass die globale Funktion als stückweise polynomiale (Teil)-Funktionenbzgl. der Zerlegung a = x0 < x1 < . . . < xn < b zusammengesetzt wird. In den Stützstel-len xi werden dann geeignete Differenzierbarkeitseigenschaften gefordert. Das Wort Splinewird in der Literatur meist für den kubischen Spline verwendet, auf den wir noch eingehenwerden, allgemeiner für stückweise Interpolierende, die höhere globale Regularitätseigen-schaften haben. Einfache stückweise Interpolierende, etwa stückweise lineare Funktionenhaben darüber hinaus eine herausragende Bedeutung bei der Finite Elemente Methodezur Approximation der Lösung von Differentialgleichungen.

f(x)

Ii

yi

a = x0 xi−1 xi b = xn

yi−1

Abbildung 9.2.: Stückweise Interpolation.

Das globale Intervall (wie vorher [a, b] =: I) wird in Teilintervalle Ii = [xi−1, xi] mit derLänge hi = xi−xi−1 unterteilt. Die Feinheit der gesamten Intervallunterteilung wird durchh := maxi=1,...n hi charakterisiert. Zur Definition der Splinefunktion (kurz Spline) seiendie Vektorräume von stückweisen polynomialen Funktionen wie folgt gegeben:

Sk,rh [a, b] := {p ∈ Cr[a, b], p|Ii ∈ Pk(Ii)}, k, r ∈ {0, 1, 2, . . .}.

Zu einem Satz gegebener Stützwerte (die wie in Abschnitt 9.1 aus gegebenen Datenwertenoder Funktionswerten stammen können) in dem Gesamtintervall I, wird eine Interpolie-rende p ∈ Sk,rh [a, b] mit Hilfe von geeigneten Interpolationsbedingungen bestimmt.

f(x)

Ii

yi

a = x0 xi−1 xi b = xn

yi−1

p

Abbildung 9.3.: Stückweise lineare Interpolation p einer Funktion f .

Wir diskutieren nun einige Beispiele, wobei der Fokus auf der Idee des ganzen Prozes-ses liegt und weniger auf der Beweisführung bei Fragen zu Existenz, Eindeutigkeit undFehlerabschätzung.

192

Page 201: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.2. Stückweise Interpolation

Beispiel 9.17 (Stückweise lineare Interpolation). Die stückweise lineare Lagrange-Interpolierende(d.h. k = 1, r = 0) approximiert eine gegebene Funktion f auf [a, b] durch einen Polygonzugin den Stützstellen xi, i = 0, . . . , n:

p ∈ S1,0h [a, b] = {p ∈ C[a, b], p|Ii ∈ P1(Ii)},

mit den Interpolationsbedingungen

p(xi) = f(xi), i = 0, . . . , n.

Anwendung der Fehlerabschätzung für die Lagrange-Interpolation separat auf jedem Ii lie-fert die globale Fehlerabschätzung

maxx∈[a,b]

|f(x)− p(x)| ≤ 12h

2 maxx∈[a,b]

|f ′′(x)|. (9.7)

Für kleine Schrittweiten gilt

maxx∈[a,b]

|f(x)− p(x)| → 0 (h→ 0),

gleichmäßig auf dem gesamten Intervall. Im Gegensatz hierzu erhalten wir für n → ∞also für größer werdenden Polynomgrad keine gleichmäßige Konvergenz!

Iixi−1 xi xi+1

1

φi(x)

Abbildung 9.4.: Lineare Knotenbasisfunktion - auch Hutfunktion genannt.

Die Interpolierende des vorangegangenen Beispiels wird mit Hilfe der sogenannten Kno-tenbasis von S1,0

h ([a, b]) konstruiert. Diese Knotenbasis besteht aus den Hutfunktionenφi ∈ S1,0

h [a, b], i = 0, . . . , n, die durch die Bedingung

φi(xj) = δij

eindeutig bestimmt sind. Die Interpolierende p von f erlaubt dann die Darstellung in Formvon

p(x) =n∑i=0

f(xi)φi(x).

193

Page 202: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Diese Konstruktion stellt die Analogie zur Lagrangeschen Darstellung des Lagrange-Interpo-lationspolynoms her. Im Gegensatz zu dieser globalen Sichtweise arbeiten wir aber bei denSplines lokal, da die Hutfunktionen φi nur in den direkt an der jeweiligen Stützstelle xiangrenzenden Teilintervallen von Null verschieden ist (siehe Abbildung 9.4).

Die Konstruktion von linearen Splines mit höheren globalen Glattheitseigenschaften istnicht ohne weiteres möglich. Erhöht man jedoch den lokalen Polynomgrad auf jedem Teil-intervall, so kann mit Hilfe der Interpolationsbedingungen höhere Glattheit erzielt werden.Dies führt auf die kubischen Splines, d.h. k = 3.

Beispiel 9.18 (Stückweise kubische Interpolation). Es sei auf jedem Teilintervall Ii einkubisches Polynom vorgeschrieben, d.h. k = 3 mit r = 0, so dass S3,0

h [a, b]. Die Interpola-tionsbedingungen für den Fall r = 0 (d.h. globale Stetigkeit) lauten

p(xi) = f(xi).

Zur eindeutigen Bestimmung eines kubischen Polynoms sind in jedem Ii vier Bedingungennotwendig, so dass zwei zusätzliche Interpolationspunkte vorgegeben werden:

p(xij) = f(xij),

wobei xij ∈ Ii, i = 1, . . . , j = 1, 2. Durch diese stückweise kubische Lagrange-Interpolationist eindeutig eine global stetige Funktion p ∈ S3,0

h [a, b] festgelegt.

Anstatt die Interpolationsbedingung durch Zwischenwerte xij ∈ (xi−1, xi) anzureichern istes auch möglich Ableitungswerte vorzugeben:

Beispiel 9.19 (Stückweise kubische Hermite-Interpolation). Es sei wiederum auf jedemTeilintervall Ii ein kubisches Polynom vorgeschrieben, d.h. k = 3 und dieses Mal mit r = 1,so dass S3,1

h [a, b]. Die Interpolationsbedingungen für den Fall r = 1 (d.h. globale Stetigkeitund einmalige globale Differenzierbarkeit) lauten

p(xi) = f(xi), p′(xi) = f ′(xi)

Durch diese vier Bedingungen p ∈ S3,1h [a, b] eindeutig festgelegt.

Satz 9.20 (Stückweise kubische Interpolation). Für die stückweise kubische Interpolationp (d.h. k = 3) mit r = 0 oder r = 1 zur Approximation der Funktion f gilt die globaleFehlerabschätzung

maxx∈[a,b]

|f(x)− p(x)| ≤ 14!h

4 maxx∈[a,b]

|f (4)(x)|.

Beweis: Auf jedem Intervall Ii = [xi−1, xi] mit hi = xi − xi−1 kann die Abschätzung fürdie Lagrange- oder Hermite-Interpolation angewendet werden:

f(x)− p(x)∣∣∣Ii≤ maxIi f (iv)

4! h4i .

194

Page 203: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.2. Stückweise Interpolation

Zur eindeutigen Bestimmung einer stückweise kubischen Funktion sind auf jedem IntervallIi vier Bedingungen erforderlich. Dennoch unterscheiden sich die Sätze an Bedingungen inden beiden betrachteten Beispielen. Bei der stückweise kubischen Lagrange Interpolation inBeispiel 9.18 werden in den n Intervallen jeweils vier Bedingungen p(xij) = f(xij) gestellt,wobei an den Intervallenden xi die gleiche Interpolationsbedingung doppelt auftaucht.Insgesamt ist die stückweise kubische Lagrange Interpolation durch 3n + 1 Bedingungengegeben. Die stückweise Hermite Interpolation in Beispiel 9.19 hat auch vier Bedingungenpro Intervall. An den Intervallenden treten nun jedoch 2 Bedingungen doppelt auf, so dasssich global 2n+ 2 Bedingungen ergeben.

Soll die globale Regularität der Interpolation weiter gesteigert werden, so schlägt dertriviale Ansatz zusätzlich p′′(xi) = f ′′(xi) zu fordern fehl, da dies zu sechs Bedingungen proTeilintervall führen würde (bei nur vier Unbekannten eines kubischen Polynoms). AnstattFunktionswerte für Ableitung und zweite Ableitung in jeder Stützstelle xk vorzuschreibenfordern wir lediglich die Stetigkeit der Ableitungen:

limh↓0

s′(xk + h) = limh↓0

s′(xk − h), limh↓0

s′′(xk + h) = limh↓0

s′′(xk − h).

Wir zählen die Bedingungen und Unbekannten. Der Raum S(3,2)h hat auf jedem der n

Intervalle Ii für i = 1, . . . , n vier unbekannte Parameter

s(x)∣∣Ii

= α(i)0 + α

(i)1 x+ α

(i)2 x2 + α

(i)3 x3.

Die Interpolationsbedingung s(xk) = yk stellt insgesamt n + 1 Bedingungen. Durch diegeforderte globale Stetigkeit von Funktionswert, Ableitung und zweiter Ableitung kommenauf jedem der n− 1 Intervallübergänge weitere drei Bedingungen hinzu. So stehen den 4nunbekannten Parametern 4n − 2 Bedingungen gegenüber. Das Problem wird geschlossendurch die Vorgabe von weiteren Randbedingungen in den Punkten a und b. Durch Vorgabevon

p′′(a) = p′′(b) = 0,wird der natürliche kubische Spline definiert.

Die Übersetzung von Spline ins Deutsche bedeutet Straklatte oder Biegestab, welches eineelastische Latte aus Holz oder Kunststoff ist, die traditionell im Schiffsbau zum Entwurfund Bau verwendet wurde. Man stelle sich einen elastischen Stab vor, welcher an gewis-sen Punkten festgehalten wird, dazwischen jedoch eine freie Form annehmen darf. Nachphysikalischen Grundprinzipien wird diese Form die Energie des Stabes minimieren. DieEnergie ist gerade durch die Krümmung des Stabes gegeben. Der natürliche Spline kannals die Energieminimierende Funktion beschrieben werden, welche global zweimal stetigdifferenzierbar ist und in den Stützstellen die Interpolationseigenschaft erfüllt:

mins∈S[a,b]

E(s), E(s) :=∫ b

a|s′′(x)|2 dx, S := {φ ∈ S3,2

h , φ(xk) = yk für k = 0, . . . , n}.

Diese Form des Splines ist die am häufigsten genutzte Spline-Interpolationsaufgabe undhat z.B. große Anwendungen in der Computergrafik.

195

Page 204: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Definition 9.21 (Kubischer Spline). Eine Funktion sn : [a, b]→ R wird kubischer Splinebzgl. Zerlegung a = x0 < x1 < . . . < xn = b genannt, wenn gilt

i) sn ∈ C2[a, b].

ii) sn|[xi−1,xi] ∈ P3, i = 1, . . . n.

Falls zusätzlich

iii) s′′n(a) = s′′n(b) = 0

gilt, so heißt der Spline natürlich.

Satz 9.22 (Natürliche, kubische Splines). Es seien x0, . . . , xn ∈ R paarweise verschiedeneStützstellen und yk ∈ R gegeben. Der durch die Interpolationsvorschrift

sn(xi) = yi ∈ R, i = 0, . . . , n, s′′n(a) = ya ∈ R, s′′n(b) = yb ∈ R (9.8)

beschriebene kubische Spline existiert eindeutig.Für jede Funktion g ∈ C2[a, b] mit g(xk) = yk für k = 0, . . . , n gilt∫ b

a|s′′(x)|2 dx ≤

∫ b

a|g′′(x)|2 dx.

Im Fall yk = f(xk) für eine Funktion f ∈ C4[a, b] gilt die Fehlerabschätzung

maxa≤x≤b

|f(x)− sn(x)| ≤ 12h

4 maxa≤x≤b

|f (4)(x)|.

Beweis: (i) Bestimmung des Splines: Wir zeigen, dass der Spline als Lösung eines linearenGleichungssystems gegeben ist. Auf jedem Intervall Ii := [xi−1, xi] schreiben wir

s(x)∣∣∣Ii

= a(i)0 + a

(i)1 (x− xi) + a

(i)2 (x− xi)2 + a

(i)3 (x− xi)3, i = 1, . . . , n.

Es gilt die 4n Koeffizienten a(i)j zu bestimmen. Der erste Koeffizient kann unmittelbar als

a(i)0 = yi abgelesen werden:

yi = s(xi) = a(i)0 , i = 1, . . . , n.

Es bleiben für die 3n unbekannten Koeffizienten die Bedingungen

s(xi−1) = yi−1 yi−1 = a(i)0 − a

(i)1 hi + a

(i)2 h2

i − a(i)3 h3 i = 1, . . . , n

s′(xi)∣∣∣Ii

= s′(xi)∣∣∣Ii+1

a(i)1 = a

(i+1)1 − 2a(i+1)

2 hi + 3a(i+1)3 h2

i i = 1, . . . , n− 1

s′′(xi)∣∣∣Ii

= s′′(xi)∣∣∣Ii+1

2a(i)2 = 2a(i+1)

2 − 6a(i+1)3 hi i = 1, . . . , n− 1

a′′(x0) = 0 0 = a(1)2 − 2a(1)

3 h1 i = 0

a′′(xn) = 0 0 = a(n)2 i = n,

196

Page 205: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.2. Stückweise Interpolation

d.h. n + 2(n − 1) + 2 = 3n Gleichungen. Bei entsprechender Nummerierung kann dasLGS als Bandmatrix mit Bandbreite 3 geschrieben werden. Zur effizienten Bestimmungdes Splines kann das Gleichungssystem unter Reformulierung der Bedingungen weiterreduziert werden, so sich ein Tridiagonalsystem ergibt.

(ii) Existenz und Eindeutigkeit: Da der Spline als Lösung eines LGS bestimmt ist, genügtes die Eindeutigkeit zu zeigen. Wir betrachten hierzu den Raum

N := {φ ∈ C2[a, b], φ(xi) = 0, i = 0, . . . , n}.

Auf diesem Raum ist durch

(u, v)N :=∫ b

au′′(x)v′′(x) dx,

ein Skalarprodukt gegeben. Linearität, Symmetrie und Dreiecksungleichung sind klar. DieHomogenität folgt, da aus (v, v)N = 0 sofort punktweise v′′ = 0 folgt. D.h. v ist eine lineareFunktion. Aus v(a) = v(b) = 0 folgt dann v = 0.

Es seien jetzt s1, s2 zwei Splines zu den Stützstellen und Werten {(xi, yi), i = 0, . . . , n}.Dann ist s = s1 − s2 ∈ N und es gilt für w ∈ N mit partieller Integration (beachte, dasss ∈ C∞(Ii), da Polynom):

(s, w)N =∫ b

as′′w′′ dx =

N∑i=1

{s′′w′

∣∣∣xixi−1−∫Ii

s′′′(x)w′(x) dx}

=N∑i=1

{s′′w′

∣∣∣xixi−1− s′′′ w︸︷︷︸

=0

∣∣∣xixi−1

+∫Ii

s(iv)(x)︸ ︷︷ ︸=0

w(x) dx}

=n∑i=1

{s′′(xi)w′(xi)− s′′(xi−1)w′(xi−1)

}= s′′(b)w′(b)− s′′(a)w′(a) = 0,

(9.9)

da s′′(a) = s′′1(a)− s′′2(a) = 0 und ebenso an b. Hieraus folgt

(s, s)N = 0 ⇒ s′′ = 0 ⇒ s = 0,

und also die Eindeutigkeit s1 = s2 und somit auch die Existenz einer Lösung.

(iii) Energieminimierung: Der Zusammenhang

(s, w)N = 0,

gilt nicht nur für s ∈ N , sondern für alle Splines, welche die beschreibende Bedingung (9.8)erfüllen. Man vergleiche hierzu die Argumente in (9.9). D.h., der Raum N steht orthogonalauf dem spline s. Es sei nun f ∈ C2[a, b] mit yi = f(xi) für i = 0, . . . , n. Dann giltw := s− f ∈ N und also

0 = (s, s− f)N = (s, s)N − (s, f)N ,

197

Page 206: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

also ∫ b

as′′(x)2 dx =

∫ b

as′′(x)f ′′(x) dx ≤

(∫ b

as′′(x)2 dx

)(∫ b

af ′′(x)2 dx

),

woraus die Energieminimierung folgt.

(iv) Fehlerabschätzung: Der Nachweis der Fehlerabschätzung ist aufwändig und wir ver-weisen für den Beweis auf die Literatur [14]. �

Die Minimierung der zweiten Ableitung lässt sich einerseits als physikalisches Prinzip ver-wenden. Für die Numerik ist jedoch relevant, dass durch die Minimierung der zweitenAbleitungen auch Oszillationen unterbunden werden. Der natürliche Spline hat sehr guteStabilitätseigenschaften. Zur Berechnung des Splines ist ein lineares Gleichungssystem zulösen. die Gleichungen sind im Beweis zu Satz 9.22 angegeben. Dabei können die Wer-te a(i)

0 = yi sofort angegeben werden. Weiter können in einem Vorbereitungsschritt dieUnbekannten a(i)

1 sowie a(i)3 durch die a(i)

2 ausgedrückt werden. Somit bleibt ein linearesGleichungssystem in den n Unbekannten a(1)

2 , . . . , a(n)2 . Die Matrix hat dabei eine Tridia-

gonalgestalt und kann sehr effizient gelöst werden.

9.3. Numerische Differentiation

In diesem Abschnitt befassen wir uns mit einer einfachen numerischen Aufgabe: zu einergegebenen Funktion f : [a, b] → R soll in einem Punkt x0 ∈ (a, b) die Ableitung f ′(x0)oder die n-te Ableitung f (n)(x0) berechnet werden. Wir gehen davon aus, dass es mit ver-tretbarem Aufwand nicht möglich ist, die Funktion f(x) symbolisch zu Differenzieren unddie Ableitung an der Stelle x0 auszuwerten. Wir benötigen also Approximationsverfahrenzur Bestimmung der Ableitung. Die grundlegende Idee wird durch das folgende Verfahrenbeschrieben:

Verfahren 9.23 (Numerische Differentiation). Die Funktion f : [a, b] → R wird durchein Polynom p(x) interpoliert. Die n-te Ableitung f (n)(x0) wird durch die n-te Ableitungdes Polynoms p(n)(x0) approximiert.

Im Folgenden entwickeln wir einige einfache Verfahren zur Approximation von Ableitun-gen, welche auf der Interpolation beruhen.

Lineare Interpolation Wir interpolieren eine Funktion f(x) linear in den beiden Stütz-stellen x0 und x1.

p1(x) = x− x1x0 − x1

f(x0) + x− x0x1 − x0

f(x1),

und Approximieren die Ableitung f ′(x) durch die entsprechende Ableitung des Polynoms

p′1(x) = f(x1)− f(x0)x1 − x0

.

198

Page 207: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.3. Numerische Differentiation

Für das lineare Interpolationspolynom ist die Ableitung eine Konstante Funktion. Wirerhalten somit für alle Werte x die gleiche Approximation an die Ableitung. Es gilt:

Satz 9.24 (Differenzenquotient der ersten Ableitung). Es sei f ∈ C2[a, b]. Für beliebigePunkte x0, x1 ∈ [a, b] mit h := x1 − x0 > 0 gelten die einseitigen Differenzenquotienten

f(x1)− f(x0)h

= f ′(x0)+ 12hf

′′(x0)+O(h2), f(x1)− f(x0)h

= f ′(x1)− 12hf

′′(x0)+O(h2).

Im Fall f ∈ C4[a, b] gilt für x0, x0−h, x0 +h ∈ [a, b] für den zentralen Differenzenquotient

f(x0 + h)− f(x0 − h)2h = f ′(x0) + 1

4h2f (iv)(x0) +O(h3).

Beweis: (i) Mit Taylor-Entwicklung gilt

f(x0 ± h) = f(x0)± hf ′(x0) + 12h

2f ′′(x0)± 16h

3f ′′′(x0) + 124h

4f (iv)(ξ) ξ ∈ [a, b].

Hieraus folgt z.B. für den rechtsseitigen Differenzenquotienten

f(x0 + h)− f(x0)h

=hf ′(x0) + 1

2h2f ′′(x0) +O(h3)h

= f ′(x0) + 12hf

′′(x0) +O(h2).

Für den rechtsseitigen Differenzenquotienten folgt das Ergebnis entsprechend.

(ii) Für den zentralen Differenzenquotienten heben sich in der Taylor-Entwicklung allegeraden Potenzen von h aus Symmetriegründen auf:

f(x0 + h)− f(x0 − h) = 2f ′(x0) + 13h

3f ′′′(x0) +O(h4).

Hieraus folgt das gewünschte Ergebnis. �

Bei der Berechnung der Approximation der Ableitung mit Hilfe der Polynominterpolationkommt es somit auf die Auswertungsstelle an. Numerische Verfahren, welche in einzelnenPunkten - oder in speziellen Situationen - besser konvergieren als im allgemeinen Fallwerden superkonvergent genannt. Bei der Berechnung des Zentralen Differenzenquotientenliegt ein superkonvergentes Verhalten vor. Es kommt hier entscheidend auf die Symmetriean. Angenommen, die Ableitung in x0 wird durch die lineare Interpolation zwischen x0−hund x0 + 2h approximiert, so gilt mit Taylor-Entwicklung um x0:

f(x0 + 2h)− f(x0 − h)3h

= f ′(x0) +(

2hf ′′(x0) + 86h

2f ′′′(x0))−(1

2hf′′(x0)− 1

6h2f ′′′(x0)

)+O(h3)

f ′(x0) + 32hf

′′(x0) +O(h2).

Terme höherer Ordnung in h heben sich nicht gegenseitig auf und der zentrale aber un-symmetrische Differenzenquotient (welcher ja auch nicht mehr zentral ist) konvergiert nurvon erster Ordnung.

199

Page 208: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Quadratische Interpolation Wir interpolieren f(x) mit Hilfe der drei Stützstellen x0−h,x0, x0 + h durch ein quadratisches Polynom:

p2(x) = f(x0 − h)(x0 − x)(x0 + h− x)2h2

+ f(x0)(x− x0 + h)(x0 + h− x)h2 + f(x0 + h)(x− x0 + h)(x− x0)

2h2 .

In x = x0 gilt für erste und zweite Ableitungen:

p′2(x0) = f(x0 + h)− f(x0 − h)2h , p′′2(x0) = f(x0 + h)− 2f(x0) + f(x0 − h)

h2 .

Für die erste Ableitung ergibt sich erstaunlicherweise wieder der zentrale Differenzenquo-tient, der schon durch lineare Interpolation hergeleitet wurde. Die Ordnung muss alsowirklich von Fall zu Fall nachgewiesen werden. Der einfache Schluss, dass bei symme-trischen zentralen Differenzenquotienten immer Superkonvergenz vorliegt ist falsch!. MitHilfe der linearen Interpolierenden wird ein Ergebnis erreicht, das eigentlich erst bei qua-dratischer Interpolierender zu erwarten wäre. Dieses bessere Ergebnis wird jedoch nur beiAbgreifen der Ableitung im Mittelpunkt erreicht.

Für die zweite Ableitung erhalten wir mit Taylorentwicklung:

p′′2(x0) = −2f(x0) + f(x0 − h) + f(x0 + h)h2 = f ′′(x0) + 1

12h2f (iv)(x0) +O(h4)

den zentralen Differenzenquotient für die zweite Ableitung.

Wir können auf der Basis von p2 auch einen einseitigen Differenzenquotienten für diezweite Ableitung herleiten. Dies erfolgt durch Approximation von f ′′(x0−h) ≈ p′′2(x0−h).Wieder mit Taylorentwicklung erhalten wir

p′′(x0 − h) = f ′′(x0 − h) + hf ′′′(x0 − h) +O(h2)

lediglich eine Approximation erster Ordnung. Neben der Ordnung des Interpolationspoly-noms p(x) kommt es entscheidend auf die entsprechende Wahl der Stützstellen an.

Wir betrachten ein Beispiel:

Beispiel 9.25. Es seif(x) = tanh(x).

Wir suchen eine Approximation von

f ′(1

2

)≈ 0.7864477329659274, f ′′

(12

)≈ −0.7268619813835874.

Zur Approximation verwenden wir für die vier bisher diskutieren Differenzenquotienten zuverschiedenen Schrittweiten h > 0, siehe Tabelle 9.1.

In Abbildung 9.5 tragen wir die Fehler der Approximationen gegenüber der Schrittweiteauf. Hier ist deutlich der Unterschied zwischen linearer und quadratischer Ordnung in hzu erkennen.

200

Page 209: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.3. Numerische Differentiation

hf( 1

2 +h)−f( 12 )

h

f( 12 +h)−f( 1

2−h)2h

f( 12 +2h)−f( 1

2 +h)+f( 12 )

h2f( 1

2 +h)−2f( 12 )+f( 1

2−h)h2

12 0.598954 0.761594 −0.623692 −0.65056114 0.692127 0.780461 −0.745385 −0.70666718 0.739861 0.784969 −0.763733 −0.721740116 0.763405 0.786079 −0.753425 −0.725577132 0.775004 0.786356 −0.742301 −0.726540164 0.780747 0.786425 −0.735134 −0.726782

Exakt 0.786448 0.786448 −0.726862 −0.726862

Tabelle 9.1.: Differenzenapproximation von f ′(1/2) (zwei Tabellen links) und f ′′(1/2)(rechts) der Funktion f(x) = tanh(x). Dabei ist jeweils der einseitige bzw.der zentrale Differenzenquotient genutzt worden.

1e-05

0.0001

0.001

0.01

0.1

1

0.01 0.1 1

Fe

hle

r

h

Approximation der ersten AbleitungEinseitig

Zentral

1e-05

0.0001

0.001

0.01

0.1

1

0.01 0.1 1

Fe

hle

r

h

Approximation der zweiten AbleitungZentral

Einseitig

Abbildung 9.5.: Fehler bei der Differenzenapproximation der ersten (links) und zweiten(rechts) Ableitung von f(x) = tanh(x) im Punkt x0 = 1

2 .

Stabilität

Abschließend untersuchen wir die Stabilität der Differenzenapproximation. Die Koeffizi-enten der verschiedenen Formeln wechseln das Vorzeichen, somit besteht die Gefahr derAuslöschung. Exemplarisch führen wir die Stabilitätsanalyse für die zentralen Differenzen-approximation zur Bestimmung der ersten Ableitung durch. Wir gehen davon aus, dass dieFunktionswerte an den beiden Stützstellen nur fehlerhaft (mit relativem Fehler |ε| ≤ eps)ausgewertet werden können und erhalten:

p′(x0) = f(x0 + h)(1 + ε1)− f(x0 − h)(1 + ε2)2h (1 + ε3)

= f(x0 + h)− f(x0 − h)2h (1 + ε3) + ε1f(x0 + h)− ε2f(x0 − h)

2h +O(eps2).

Für den relativen Fehler gilt∣∣∣∣ p′(x0)− p′(x0)p′(x0)

∣∣∣∣ ≤ eps+ |f(x0 + h)|+ |f(x0 − h)||f(x0 + h)− f(x0 − h)| eps+O(eps2).

201

Page 210: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Im Fall f(x0 + h) ≈ f(x0 − h) also f ′(x0) ≈ 0 kann der Fehler beliebig stark verstärktwerden. Je kleiner h gewählt wird, umso größer wird dieser Effekt, denn:

f(x0 + h)− f(x0 − h) = 2hf ′(x0) +O(h2).

Dieses Ergebnis ist gegenläufig zur Fehlerabschätzung für den Differenzenquotienten inSatz 9.24. Bei der numerischen Approximation müssen beide Fehleranteile addiert werden:

|f ′(x0)− p′(x0)||f ′(x0)| ≤ |f

′(x0)− p′(x0)||f ′(x0)| + |p

′(x0)− p′(x0)||f ′(x0)|

= |f′(x0)− p′(x0)||f ′(x0)| + |p

′(x0)− p′(x0)||p′(x0)| · |p

′(x0)||f ′(x0)|

≤ 13h

2 +O(h4) + maxξ |f(ξ)||f ′(x0)|h eps+O(eps2).

Für kleines h steigt der Rundungsfehleranteil. Der Gesamtfehler wird minimal, falls beideFehleranteile balanciert sind, also im Fall:

h2 ≈ eps

h⇒ h ≈ 3

√eps.

Für eps ≈ 10−16 sind Schrittweiten h < 10−5 demnach nicht sinnvoll.

9.4. Richardson Extrapolation zum Limes

Eine wichtige Anwendung der Interpolation ist die Extrapolation zum Limes. Die Idee lässtsich am einfachsten anhand eines Beispiels erklären. Wir wollen die Ableitung f ′(x0) einerFunktion f im Punkt x0 mit Hilfe des einseitigen Differenzenquotienten berechnen:

a(h) := f(x0 + h)− f(x0)h

.

Der Schrittweitenparameter h bestimmt die Qualität der Approximation a(h) ≈ f ′(x0).Für h→ 0 gilt (bei Vernachlässigung von Rundungsfehlern) a(h)→ f ′(x0). An der Stelleh = 0 lässt sich a(h) jedoch nicht auswerten. Die Idee die Extrapolation zum Limes ist esnun, ein Interpolationspolynom p(x) durch die Stützstellenpaare (hi, a(hi)) für eine Folgevon Schrittweiten h0, h1, . . . , hn zu legen und den Wert p(0) als Approximation für a(0)zu verwenden.

Es stellt sich die grundlegende Frage, ob die Interpolierende in den Stützstellen h0, . . . , hnauch Aussagekraft außerhalb des Intervalls I := [mini{hi},maxi{hi}] hat. Beispiel 9.15lässt dies zunächst nicht vermuten. Hier war die Approximationseigenschaft durch Os-zillationen in Punkten zwischen den Stützstellen schon am Rande des Intervalls I starkgestört. Wir betrachten dennoch ein einfaches Beispiel:

202

Page 211: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.4. Richardson Extrapolation zum Limes

Beispiel 9.26 (Extrapolation des einseitigen Differenzenquotienten). Es sei f(x) = tanh(x)und wir wollen die Ableitung an der Stelle x0 = 1/2 auswerten. Der exakte Wert istf ′(1/2) ≈ 0.786448. Hierzu definieren wir den Differenzenquotienten

a(h) = tanh(x+ h)− tanh(x)h

,

und werten zu den Schrittweiten h = 2−1, 2−2, 2−3, 2−4 aus:

h a(h)2−1 0.59892−2 0.69212−3 0.73992−4 0.7634

Formal können wir nun ein Interpolationspolynom p(h) durch die Punkte hi = 2−i undai = a(hi) legen und dieses an der Stelle h = 0 auswerten. Dies geschieht effizient mitdem Neville-Schema zum Punkt h = 0, den wir noch einmal kurz angeben:

ak,k = ai i = 1, . . . , n,

ak,k+l = ak,k+l−1 − hkak+1,k+l − ak,k+l−1

hk+l − hkl = 1, . . . , n− 1, k = 1, . . . , n− l

hi ai = pii pi,i+1 pi,i+2 pi,i+32−1 0.5989 0.7853 0.78836 0.78652−2 0.6921 0.7976 0.786732−3 0.7399 0.78692−4 0.7634

Die jeweils exakten Stellen sind unterstrichen. Durch Extrapolation kann die Genauigkeitalso wirklich verbessert werden.

Wir wollen dieses Beispiel nun für den einfachsten Fall, einer linearen Interpolation unter-suchen. Zu f ∈ C3([a, b]) sei

a(h) = f(x0 + h)− f(x0)h

= f ′(x0) + h

2 f′′(x0) + h2

6 f′′′(ξx0,h), (9.10)

die einseitige Approximation der ersten Ableitung. Wir legen durch die Stützstellen (h, a(h))sowie (h/2, a(h/2)) das lineare Interpolationspolynom,

p(t) =(t− h

2h− h

2

)a(h) +

(t− hh2 − h

)a

(h

2

),

203

Page 212: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

und werten dieses an der Stelle t = 0 als Approximation von a(0) aus:

a(0) ≈ p(0) = 2a(h

2

)− a(h).

Für a(h/2) sowie a(h) setzen wir die Taylor-Entwicklung (9.10) ein und erhalten mit

p(0) = 2(f ′(x0) + h

4 f′′(x0) + h2

24f′′′(ξx0,h/2)

)−(f ′(x0) + h

2 f′′(x0) + h2

6 f′′′(ξx0,h)

)= f ′(x0) +O(h2),

eine Approximation der ersten Ableitung von zweiter Ordnung in der Schrittweite h.

Durch Extrapolation können Verfahren höherer Ordnung generiert werden. Eine solcheVorgehensweise, bei der Ergebnisse eines numerischen Verfahrens weiter verarbeitet wer-den, wird Postprocessing genannt.

Satz 9.27 (Einfache Extrapolation). Es sei a(h) : R+ → R eine n + 1 mal stetig diffe-renzierbare Funktion mit der Summenentwicklung

a(h) = a0 +n∑j=1

ajhj + an+1(h)hn+1,

mit Koeffizienten aj ∈ R sowie an+1(h) = an+1 +o(1). Weiter sei (hk)k=0,1,... mit hk ∈ R+eine monoton fallende Schrittweitenfolge mit der Eigenschaft

0 < hk+1hk≤ ρ < 1. (9.11)

Es sei p(k)n ∈ Pn das Interpolationspolynom zu (hk, a(hk)), . . . , (hk+n, a(hk+n)). Dann gilt:

a(0)− p(k)n (0) = O(hn+1

k ) (k →∞).

Beweis: In Lagrangescher Darstellung gilt

p(k)n (t) =

n∑i=0

a(hk+i)L(n)k+i(t), L

(n)k+i =

n∏l=0,l 6=i

t− hk+lhk+i − hk+l

. (9.12)

Wir setzen die Entwicklung von a(h) in die Polynomdarstellung (9.12) ein und erhaltenfür t = 0:

p(k)n (0) =

n∑i=0

a0 +n∑j=1

ajhjk+i + an+1(hk+i)hn+1

k+i

L(n)k+i(0).

Für die Lagrangeschen Basispolynome gilt die Beziehung:

n∑i=0

hrk+iL(n)k+i(0) =

1 r = 0,0 r = 1, . . . , n,(−1)n

∏ni=0 hk+i r = n+ 1.

(9.13)

204

Page 213: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.4. Richardson Extrapolation zum Limes

Der Nachweis erfolgt durch Analyse der Lagrangeschen Interpolation von tr für verschie-dene Exponenten r. Mit (9.13) und an+1(hk+i) = an+1 + o(hk+i) folgt:

p(k)n (0) = a0 + an+1(−1)n

n∏i=0

hi+k +n∑i=0

o(1)hn+1k+i L

(n)k+i(0).

Mit der Schrittweitenbedingung (9.11) hk+i ≤ ρihk gilt für die Lagrangeschen Basispoly-nome in t = 0:

|L(n)k+i(0)| =

n∏l=0,l 6=i

∣∣∣∣∣∣ 1hk+ihk+l− 1

∣∣∣∣∣∣ ≤n∏

l=0,l 6=i

∣∣∣∣ 1ρi−l − 1

∣∣∣∣ = c(ρ, n). (9.14)

Insgesamt folgt mit hk+i ≤ hk

p(k)n = a(0) + (−1)nan+1h

n+1k + o(hn+1

k ).

Die Schrittweitenbedingung ist notwendig zum Abschätzen von |L(n)k+i| = O(1) und ver-

hindert das starke Oszillieren der Basisfunktionen bei t = 0 wie in Beispiel 9.15 beobach-tet. Eine zulässige Schrittweitenfolgen zur Extrapolation ist hi = h0

2i . Die einfache Wahlhi = h0/i hingegen ist nicht zulässig, da hier hk+1/hk → 1 gilt und eine Abschätzung inSchritt (9.14) nicht mehr gleichmäßig in k möglich ist.

Um die Extrapolationsvorschrift auf ein gegebenes Verfahren anzuwenden, werden dieApproximationen p

(k)n (0) mit Hilfe des Neville-Schemas aus Algorithmus 9.9 berechnet.

Wir führen hierzu Beispiel 9.26 fort:

Beispiel 9.28 (Extrapolation des zentralen Differenzenquotienten). Wir approximierenwieder die Ableitung von f(x) = tanh(x) an der Stelle x0 = 0.5 und berechnen die Ap-proximationen nun mit dem zentralen Differenzenquotienten. Exakter Wert tanh′(0.5) ≈0.78645:h a(h) = akk ak,k+1 ak,k+2 ak,k+32−1 0.7616 0.7993 0.78620 0.78645932−2 0.7805 0.7895 0.786432−3 0.7850 0.78722−4 0.7861

Die Approximation wird wieder verbessert. Es zeigt sich jedoch, dass im ersten Schritt,d.h. für alle Werte ak,k+1 welche aus linearer Interpolation zweier Werte folgen keineVerbesserung erreicht werden kann.

Im vorangegangenen Beispiel wird der zentrale Differenzenquotient extrapoliert. Für diesengilt bei f ∈ C∞ die Reihenentwicklung

a(h) = f(x+ h)− f(x− h)2h = 1

2h

( ∞∑k=0

f (k)(x)k! hk −

∞∑k=0

f (k)(x)k! (−h)k

)=∞∑k=0

f (2k+1)(x)(2k + 1)! h

2k.

205

Page 214: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

D.h., bei a(h) liegt eine Entwicklung in graden Potenzen von h vor. Dies erklärt, warumdie Interpolation mit linearen Polynomen keinen Gewinn bringt. Stattdessen werden wirnun die bekannte Potenzentwicklung von a(h) ausnutzen uns suchen nach Interpolations-polynomen in h2

p(h) = a0 + a1h2 + a2h

4 + · · · .

Beispiel 9.29 (Extrapolation des zentralen Differenzenquotienten mit quadratischen Po-lynomen). Wir approximieren wieder die Ableitung von f(x) = tanh(x) und interpolierendie bereits berechneten Werte (a(h3), h3) sowie a(h4), h4 mit Hilfe eines linearen Polynomsin h2. Es gilt

p(h) = a(h3)h2 − h2

4h2

3 − h24

+ a(h4)h2 − h2

3h2

4 − h23⇒ p(0) = h2

3a(h4)− h24a(h3)

h23 − h2

4.

Mit den Werten aus Beispiel 9.28 folgt

p(0) = 0.7864493,

d.h. nach nur einem Schritt mit richtiger Ordnung sind bereits die ersten vier Stellenexakt.

Die Richardson-Extrapolation spielt ihre Stärke erst dann voll aus, wenn die zugrunde-liegende Funktion a(h) eine spezielle Reihenentwicklung besitzt, welche z.B. nur geradePotenzen von h beinhaltet. Für den zentralen Differenzenquotienten gilt bei hinreichenderRegularität von f :

a(h) := f(x0 + h)− f(x0 − h)2h = f ′(x0) +

n∑i=1

f (2i+1)(x0)(2i+ 1)! h2i +O(h2n+1).

Die Idee ist es nun, diese Entwicklung bei der Interpolation auszunutzen und nur Polyno-me in 1, h2, h4, . . . zu berücksichtigen. Der zentrale Differenzenquotient ist kein Einzelfall.Bei der numerischen Quadratur werden wir das Romberg-Verfahren kennenlernen, welchesebenso auf der Extrapolation einer Vorschrift mit Entwicklung in h2 beruht. Auch bei derApproximation von gewöhnlichen Differentialgleichungen lernen wir mit dem Gragg’schenExtrapolationsverfahren eine Methode kennen, die auf diesem Prinzip beruht. Daher for-mulieren wir ohne Beweis denn allgemeinen Satz zur Richardson-Extrapolation:

206

Page 215: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.4. Richardson Extrapolation zum Limes

Satz 9.30 (Richardson-Extrapolation zum Limes). Es sei a(h) : R+ → R für ein q > 0eine q(n+ 1) mal stetig differenzierbare Funktion mit der Summenentwicklung

a(h) = a0 +n∑j=1

ajhqj + an+1(h)hq(n+1),

mit Koeffizienten aj ∈ R sowie an+1(h) = an+1+o(1). Weiter sei (hk)k=0,1,... eine monotonfallende Schrittweitenfolge hk > 0 mit der Eigenschaft

0 < hk+1hk≤ ρ < 1. (9.15)

Es sei p(k)n ∈ Pn (in hq) das Interpolationspolynom zu (hqk, a(hk)), . . . , (hqk+n, a(hk+n)).

Dann gilt:a(0)− p(k)

n (0) = O(hq(n+1)k ) (k →∞).

Beweis: Der Beweis ist eine einfache Modifikation von Satz 9.27 und kann imWesentlichenmit Hilfe der Substitution hk = hqk übertragen werden. Für Details, siehe [10]. �

Prinzipiell erlaubt die Richardson-Extrapolation bei hinreichender Regularität eine be-liebige Steigerung der Verfahrensordnung. üblicherweise werden jedoch nur einige wenigeExtrapolationsschritte aus den letzten Verfahrenswerten hk, hk+1, . . . , hk+n verwendet. DieExtrapolation wird am einfachsten mit dem modifizierten Neville-Schema durchgeführt.

Algorithmus 9.31 (Modifiziertes Neville-Schema zur Extrapolation). Für h0, h1, . . . , hnsei a(hi) bekannt. Berechne:

1 f ü r k = 0, . . . , n s e t z e ak,k := a(hk)2 f ü r l = 1, . . . , n und3 f ü r k = 0, . . . , n− l berechne

4 ak,k+l := ak,k+l−1 −((

hk+lhk

)q− 1

)−1(ak+1,k+l − ak,k+l−1)

Wir schließen die Richardson-Extrapolation mit einem weiteren Beispiel ab:

Beispiel 9.32 (Extrapolation des zentralen Differenzenquotienten). Wir approximierendie Ableitung von f(x) = tanh(x) an der Stelle x = 0.5 mit dem zentralen Differenzen-quotienten und Extrapolation. Exakter Wert ist tanh′(0.5) ≈ 0.7864477329:

h a(h) = pkk pk,k+1 pk,k+2 pk,k+32−1 0.761594156 0.7867493883 0.7864537207 0.78644774432−2 0.780460580 0.7864721999 0.78644783772−3 0.784969295 0.78644936032−4 0.786079344

Bereits die jeweils erste Extrapolation pk,k+1 liefert weit bessere Ergebnisse als die Ex-trapolation des einseitigen Differenzenquotienten. Die beste Approximation verfügt über 8richtige Stellen.

207

Page 216: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Beispiel 9.33 (Extrapolation mit verschiedenen Fehlerordnungen). Wir betrachten

f(x) = −e1−cos(πx),

und approximieren f ′′(1) ≈ 72.9270606 mit dem zentralen Differenzenquotienten für diezweite Ableitung

a(h) = f(x+ h)− 2f(x) + f(x− h)h2 .

Wir führen jeweils 2 Schritte der Extrapolation durch. Dabei wählen wir zunächst sub-optimal q = 1

h a(hk) = pkk a(hk)− f ′(1) pk,k+1 pk,k+1 − f ′(1) pk,k+2 pk,k+2 − f ′(1)2−0 12.78 6.01e+ 01 61.95 1.10e+ 01 89.61812 1.67e+ 012−1 37.37 3.56e+ 01 82.70 9.78e+ 00 77.24775 4.32e+ 002−2 60.03 1.29e+ 01 78.61 5.68e+ 00 73.36353 4.36e− 012−3 69.32 3.60e+ 00 74.68 1.75e+ 00 72.95825 3.12e− 022−4 72.00 9.28e− 01 73.39 4.61e− 01 72.92908 2.02e− 032−5 72.69 2.34e− 01 73.04 1.17e− 01 72.92719 1.27e− 042−6 72.87 5.85e− 02 72.96 2.93e− 022−7 72.91 1.46e− 02Ordnung O(h2) O(h2) O(h4)

Ein Schritt der Extrapolation bringt keinen Vorteil. Dies erklärt sich dadurch, dass sichdie rein quadratische Fehlerentwicklung des Differenzenquotienten durch ein lineares Po-lynom nicht approximieren lässt. Wir wiederholen die Rechnung und wählen nun - demDifferenzenquotienten angepasst - die Extrapolationsordnung q = 2:

h a(hk) = pkk a(hk)− f ′(1) pk,k+1 pk,k+1 − f ′(1) pk,k+2 pk,k+2 − f ′(1)2−0 12.78 6.01e+ 01 45.56222 2.74e+ 01 69.0586998 3.87e+ 002−1 37.37 3.56e+ 01 67.59017 5.34e+ 00 72.7408810 1.86e− 012−2 60.03 1.29e+ 01 72.41896 5.08e− 01 72.9227341 4.33e− 032−3 69.32 3.60e+ 00 72.89125 3.58e− 02 72.9269850 7.56e− 052−4 72.00 9.28e− 01 72.92475 2.31e− 03 72.9270594 1.22e− 062−5 72.69 2.34e− 01 72.92692 1.45e− 04 72.9270606 1.91e− 082−6 72.87 5.85e− 02 72.92705 9.11e− 062−7 72.91 1.46e− 02Ordnung O(h2) O(h4) O(h6)

Hier erhalten wir durch Extrapolation den entsprechenden Ordnungsgewinn.

208

Page 217: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.5. Numerische Quadratur

9.5. Numerische Quadratur

Die numerische Approximation von Integralen, Quadratur genannt, ist aus verschiedenenGründen notwendig:

• Die Stammfunktion eines Integrals lässt sich nicht durch eine elementare Funktionausdrücken, etwa bei ∫ ∞

0exp(−x2)dx,

∫ ∞0

sin(x)x

dx.

• Eine Stammfunktion existiert in geschlossener Form, aber die Berechnung ist auf-wendig, so dass numerische Methoden vorzuziehen sind.

• Der Integrand ist nur an diskreten Stellen bekannt; beispielsweise bei Messreihen-daten.

Bei der numerischen Integration basieren die Methoden auf den bereits kennengelern-ten Interpolatonsmethoden. Sie sind somit eine klassische Anwendung der der Polynom-Interpolation sowie Spline-Interpolation. Erstere führen auf die sogenannten interpola-torischen Quadraturformeln während die Spline-Interpolation auf die stückweise inter-polatorische Quadraturformeln (die in der Literatur auch häufig unter dem Namen derzusammengesetzten oder summierten Quadratur zu finden ist).

Bei der interpolatorischen Quadratur einer Funktion f(x) auf dem Intervall [a, b] wirdzunächst eine Interpolationspolynom zu gegebenen Stützstellen x0, x1, . . . , xn kreiert, wel-ches dann integriert wird (basiert dementsprechend auf Abschnitt 9.1). Bei der GaußQuadratur wird die Position der Stützstellen xi ∈ [a, b] im Intervall so bestimmt, dass dieresultierende Integrationsformel eine optimale Ordnung erzielt. Zuletzt betrachten wir alsAnwendung der Extrapolation zum Limes (Abschnitt 9.4), das sogenannte Romberg’scheIntegrationsverfahren in Abschnitt 9.5.3.

Definition 9.34 (Quadraturformel). Es sei f ∈ C[a, b]. Unter einer numerischen Qua-draturformel zur Approximation von I(f) :=

∫ ba f(x) dx verstehen wir die Vorschrift:

In(f) :=n∑i=0

αif(xi),

mit n+1 paarweise verschiedenen Stützstellen x0, . . . , xn sowie n+1 Quadraturgewichtenα0, . . . , αn.

Zunächst bringen wir zur Veranschaulichung einige einfache Beispiele:

209

Page 218: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

a b

f(x)

a x0 = a+b2 b

f(x)

a b

f(x)

Abbildung 9.6.: Linksseitige Boxregel, Mittelpunktsregel und Trapezregel zurIntegralapproximation.

Definition 9.35 (Boxregel). Die Box-Regel zur Integration auf [a, b] ist die einfachsteQuadraturformel und basiert auf Interpolation von f(x) mit einem konstanten Polynomp(x) = f(a) und Integration von p(x) (siehe Abbildung 9.6):

I0(f) = (b− a)f(a).

Neben dieser linksseitigen Boxregel existiert mit I0(f) = (b−a)f(b) auch die rechtsseitigeBoxregel.

Die Boxregel hat ihre Bedeutung bei der Herleitung des Riemann-Integrals. Die Boxregelist vergleichbar mit dem einseitigen Differenzenquotienten. Eine bessere Quadraturformelerhalten wir durch Ausnutzen von Symmetrieeigenschaften:

Definition 9.36 (Mittelpunktsregel). Zur Herleitung der Mittelpunktregel wird die Funk-tion f(x) in der Mitte des Intervalls mit einem konstanten Polynom interpoliert:

I0(f) = (b− a)f(a+ b

2

).

Siehe Abbildung 9.6.

Diese beiden Regeln basieren auf einer Interpolation der Funktion f mit einer konstan-ten Funktion. Herleitung der Trapezregel wird f(x) in den beiden Intervallenden linearinterpoliert:

Definition 9.37 (Trapezregel). Die Trapezregel ist durch Integration der linearen Inter-polation in (a, f(a)) sowie (b, f(b)) gebildet:

I1(f) = b− a2 (f(a) + f(b)).

Siehe auch Abbildung 9.6

210

Page 219: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.5. Numerische Quadratur

9.5.1. Interpolatorische Quadratur

Die interpolatorischen Quadraturformeln werden über die Konstruktion eines geeignetenInterpolationspolynoms hergeleitet. Zu den gegebenen Stützstellen a ≤ x0 < . . . < xn ≤ bwird gemäß Abschnitt 9.1 das Lagrangsche Interpolationspolynom als Approximation derFunktion f gebildet:

pn(x) =n∑i=0

f(xi)L(n)i (x).

Dieses wird dann integriert:

I(n)(f) :=∫ b

apn(x) dx =

n∑i=0

f(xi)∫ b

aL

(n)i (x) dx︸ ︷︷ ︸=:αi

=n∑i=0

αif(xi)

Die Quadraturgewichte

αi =∫ b

aL

(n)i (x)dx (9.16)

hängen offensichtlich nicht von der zu integrierenden Funktion f(x) ab, dafür vom Intervall[a, b] sowie von den Stützstellen x0, . . . , xn. Dies impliziert die Frage, ob durch geschickteVerteilung der Stützstellen die Qualität der Gewichte verbessert werden kann.

Bevor wir einzelne Quadratur-Formeln analysieren und nach möglichst leistungsfähigenFormeln suchen, können wir zunächst ein einfaches aber doch allgemeines Resultat herlei-ten:

Satz 9.38 (Lagrange-Quadratur). Für die interpolatorischen Quadraturformeln In(f) mitn+ 1 paarweise verschiedenen Stützstellen x0, x1, . . . , xn gilt zur Approximation des Inte-grals I(f) =

∫ ba f(x) dx die Fehlerdarstellung

I(f)− In(f) =∫ b

af [x0, . . . , xn, x]

n∏j=0

(x− xj) dx,

mit Newtonscher Restglieddarstellung.

Beweis: Der Beweis folgt unmittelbar durch Integration der entsprechenden Fehlerab-schätzung für die Lagrange-Interpolation in Satz 9.12. �

Hieraus folgt eine wichtige Eigenschaft der interpolatorischen Quadraturformeln:

Korollar 9.39. Die interpolatorische Quadraturformel I(n)(·) ist exakt für alle Polynomevom Grad n. Dieses Ergebnis ist unabhängig von der konkreten Wahl der n+ 1 paarweiseverschiedenen Stützstellen.

Beweis: Folgt direkt aus der Konstruktion der interpolatorischen Quadraturformeln, dafür jedes f ∈ Pn sofort p = f gilt. �

211

Page 220: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Definition 9.40 (Ordnung von Quadraturregeln). Eine Quadraturformel I(n)(·) wird(mindestens) von der Ordnung m genannt, wenn durch sie mindestens alle Polynomeaus Pm−1 exakt integriert werden. D.h. die interpolatorischen Quadraturformeln I(n)(·) zun+ 1 Stützstellen sind mindestens von der Ordnung n+ 1.

Im Folgenden werden wir die bereits eingeführten einfachen Quadraturformeln näher ana-lysieren und ihre Fehlerabschätzung sowie Ordnung bestimmen. Hierzu werden wir dieNewtonsche Integraldarstellung des Interpolationsfehlers aus Satz 9.38 nutzen.

Satz 9.41 (Boxregel). Es sei f ∈ C1[a, b]. Die Boxregel (Definition 9.35) ist von ersterOrdnung und es gilt die Fehlerabschätzung:

I0(f) := (b− a)f(a), I(f)− I0(f) = (b− a)2

2 f ′(ξ),

mit einer Zwischenstelle ξ ∈ (a, b).

Beweis: Die Boxregel basiert auf der Interpolation mit einem konstanten Polynom, hatdaher erste Ordnung. Aus Satz 9.38 folgt mit x0 = a:

I(f)− I0(f) =∫ b

af [a, x](x− a) dx,

wobei mit Satz 9.12 weiter gilt:

I(f)− I0(f) =∫ b

a

∫ 1

0f ′(a+ t(x− a))(x− a)dtdx.

Wir wenden den Mittelwertsatz der Integralrechnung zweimal an und erhalten

I(f)− I0(f) = f ′(ξ)∫ b

a

∫ 1

0(x− a) dtdx = 1

2f′(ξ)(b− a)2,

mit einem Zwischenwert ξ ∈ (a, b). �

Die Boxregel ist die einfachste Quadraturformel. In Analogie zur Diskussion bei den Dif-ferenzenquotienten können wir bei der Mittelpunktsregel durch geschickte Ausnutzungder Symmetrie eine bessere Approximationsordnung erwarten. Um diese bessere Ordnungzu erreichen müssen wieder Superapproximationeigenschaften genutzt werden, welche imAllgemeinen etwas Mehraufwand erfordern:

Satz 9.42 (Mittelpunktsregel). Es sei f ∈ C2[a, b]. Die Mittelpunktsregel (Definition 9.36)ist von Ordnung 2 und es gilt die Fehlerabschätzung:

I0m(f) := (b− a)f

(a+ b

2

), I(f)− I0

m(f) = (b− a)3

24 f ′′(ξ),

mit einer Zwischenstelle ξ ∈ (a, b).

212

Page 221: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.5. Numerische Quadratur

Beweis: Aufgrund der Interpolation mit konstantem Polynom ist zunächst ist nur ersteOrdnung zu erwarten. Es gilt mit Satz 9.12:

I(f)− I0m(f) =

∫ b

af

[a+ b

2 , x

](x− a+ b

2

)dx.

Zur Vereinfachung setzen wir xm := (a+ b)/2 und es sei f ∈ R ein beliebiger, fester Wert.Dann gilt:

I(f)− I0m(f) =

∫ b

a(f [xm, x]− f)(x− xm) dx+ f

∫ b

ax− xm dx︸ ︷︷ ︸

=0

(9.17)

Mit der Integraldarstellung der dividierten Differenzen aus Satz 9.12 gilt bei Taylor-Entwicklung um xm:

f [xm, x] =∫ 1

0f ′(xm + t(x− xm))dt =

∫ 1

0f ′(xm) + t(x− xm)f ′′(ξ) dt,

für ein ξ ∈ [xm, x]. Bei Wahl von f = f ′(xm) folgt mit (9.17) für den Fehler

I(f)− I0m(f) = f ′′(ξ)

∫ b

a

∫ 1

0t(x− xm)2 dt dx = |b− a|

3

24 f ′′(ξ).

Mit dem gleichen Aufwand wie die Boxregel, also mit einer Auswertung der Funktion f(x)erreicht die Mittelpunktsregel die doppelte Ordnung.

Satz 9.43 (Trapezregel). Es sei f ∈ C2([a, b]). Die Trapezregel (Definition 9.37) ist vonOrdnung 2 und es gilt die Fehlerabschätzung:

I1(f) := b− a2 (f(a) + f(b)), I(f)− I1(f) = −(b− a)3

12 f ′′(ξ),

mit einer Zwischenstelle ξ ∈ (a, b).

Beweis: Mit Satz 9.12 gilt:

I(f)− I1(f) =∫ b

af [a, b, x](x− a)(x− b) dx. (9.18)

Für f [a, b, x] gilt bei zweimaliger Anwendung des Mittelwertsatzes der Integralrechnung(der Ausdruck (x− a)(x− b) hat im Intervall keinen Vorzeichenwechsel)

f [a, b, x] =∫ 1

0

∫ t1

0f ′′(a+ t1(b− a) + t(x− b))dtdt1 = 1

2f′′(ξa,b,x),

213

Page 222: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

mit einem Zwischenwert ξa,b,x. Hiermit erhalten wir mit nochmaliger Anwendung des Mit-telwertsatzes (da (x− a)(x− b) ≤ 0) die Restgliedabschätzung:

I(f)− I1(f) = 12

∫ b

af ′′(ξx)(x− a)(x− b) dx = (b− a)3

12 f ′′(ξ),

mit einem weiteren Zwischenwert ξ ∈ (a, b). �

Die Verwendung eines quadratischen Interpolationspolynoms führt auf die Simpson Regel:

Satz 9.44 (Simpson-Regel). Es sei f ∈ C4[a, b]. Die Simpson-Regel, basierend auf Inter-polation mit quadratischem Polynom:

I2(f) = b− a6

(f(a) + 4f

(a+ b

2

)+ f(b)

),

ist von Ordnung vier und es gilt:

I(f)− I2(f) = f (4)(ξ)2880 (b− a)5,

wobei ξ ∈ (a, b).

Beweis: Der Beweis folgt analog zu den Beweisen zu Mittelpunkts- und Trapezregel undsei dem Leser als Übung gestellt. Dabei muss wieder das Superapproximationsprinzipausgenutzt werden. �

Bemerkung 9.45. Wie bei der Mittelpunktsregel ist die Ordnung der Simpson-Regel einePotenz höher als zu erwarten wäre. Treibt man dieses Spiel weiter und konstruiert nochhöhere Quadraturformeln, dann erkennen wir ein allgemeines Prinzip: bei Quadratur mitgeraden Interpolationspolynomen, wird die Fehlerordnung um eine Potenz erhöht. Diesfolgt jeweils aus Symmetriegründen.

Bei allen bisherigen Quadraturformeln sind die Stützstellen gleichmäßig im Intervall [a, b]verteilt. Diese Formeln werden Newton-Cotes-Formeln genannt:

Definition 9.46 (Newton-Cotes-Formeln). Quadraturregeln mit äquidistant im Intervall[a, b] verteilten Stützstellen heißen Newton-Cotes-Formeln. Gehören die Intervallenden asowie b zu den Stützstellen, so heißen die Formeln abgeschlossen, ansonsten offen.

In Tabelle 9.2 fassen wir einige gebräuchliche Newton-Cotes Formeln zusammen. Ab n ≥ 8bei den abgeschlossenen Formeln und ab n = 2 bei den offenen Formeln, treten negativeQuadraturgewichte αi auf. Dies führt zu dem Effekt, dass auch bei rein positiven Integran-den Auslöschung auftreten kann. Daher sind diese Formeln aus numerischer Sicht nichtmehr anwendbar. Für die Gewichte einer Quadratur-Regel gilt stets

n∑i=0

αi = b− a.

214

Page 223: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.5. Numerische Quadratur

Tabelle 9.2.: Eigenschaften und Gewichte einiger Newton-Cotes Formeln.n Gewichte αi Name Ordnung0 1 offen Boxregel 11 1

2 ,12 geschlossen Trapezregel 2

2 16 ,

46 ,

16 geschlossen Simpson-Regel 4

3 18 ,

38 ,

38 ,

18 geschlossen Newton’s 3/8-Regel 4

4 790 ,

3290 ,

1290 ,

3290 ,

790 geschlossen Milne’s-Regel 6

6 41840 ,

216840 ,

27840 ,

272840 ,

27840 ,

216840 ,

41840 geschlossen Weddle-Regel 8

8 395614175 ,

2355214175 ,−

371214175 ,

4198414175 ,−

36322835 ,

4198414175 ,−

371214175 ,

2355214175 ,

395614175 geschlossen 10 ?

Im Fall negativer Gewichte giltn∑i=0|αi| > (b− a).

Ein allgemeiner Satz (Theorem von Kusmin) besagt, dass für n→∞ sogar giltn∑i=0|αi| → ∞ (n→∞).

Regeln von sehr hoher Ordnung sind somit numerisch nicht stabil einsetzbar.

9.5.2. Stückweise interpolatorische Quadraturformeln

Die interpolatorische Quadratur aus dem vorangegangenen Abschnitt beruht auf der Inte-gration eines Interpolationspolynoms p. Für dieses gilt die Fehlererabschätzung (Satz 9.11):

f(x)− p(x) = f (n+1)(ξ)(n+ 1)!

n∏i=0

(x− xi).

Die Genauigkeit der Quadratur kann prinzipiell auf zwei Wege verbessert werden: derVorfaktor kann durch Wahl von mehr Stützstellen klein gehalten werden, denn es gilt1/(n + 1)! → 0. Dies führt jedoch nur dann zur Konvergenz des Fehlers, falls die Ablei-tungen f (n) nicht zu schnell wachsen, siehe Beispiel 9.15. Als zweite Option bleibt dasProdukt der Stützstellen. Eine einfache Abschätzung besagt wegen x, x0, . . . , xn ∈ [a, b]:∣∣∣∣∣

n∏i=0

(x− xi)∣∣∣∣∣ ≤ (b− a)n+1.

Interpolationsfehler (und somit auch Quadraturfehler) lassen sich durch Potenzen der In-tervallgröße beschränken. Dies wird zur Entwicklung von stabilen und konvergenten Qua-draturformeln entsprechend dem Vorgehen der summierten Interpolation (Abschnitt 9.2)

215

Page 224: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

f(x)

Ii

yi

a = x0 xi−1 xi b = xn

yi−1

p

Abbildung 9.7.: Summierte Trapezregel zur Integralapproximation.

genutzt. Hierzu sei

a = y0 < y1 < · · · < ym = b, hi := yi − yi−1,

eine Zerlegung des Intervalls [a, b] in m Teilintervalle mit Schrittweite hi. Auf jedem dieserm Teilintervalle wird die Funktion f mit Hilfe einer Quadraturformel approximiert:

Inh (f) =m∑i=1

In[yi−1,yi](f).

Aus Satz 9.38 folgt sofort eine allgemeine Fehlerabschätzung für die summierten Quadra-turformeln

Satz 9.47 (Summierte Quadratur). Es sei f ∈ Cn+1([a, b]) sowie a = y0 < · · · < ym = beine Zerlegung des Intervalls mit Schrittweiten hi := yi− yi−1 sowie h := max hi. Für diesummierte Quadraturformel Inh (f) gilt die Fehlerabschätzung:

I(f)− Inh (f) ≤ cmax[a,b]|f (n+1)|hn+1,

mit einer Konstante c(n) > 0.

Beweis: Der Beweis folgt einfach aus Kombination von Satz 9.38 sowie der differentiellenRestglieddarstellung der Lagrange-Interpolation. �

Aus diesem Resultat kann ein wichtiges Ergebnis abgelesen werden: für h → 0, also fürsteigende Feinheit der Intervallzerlegung konvergiert die summierte Quadratur für belie-biges n. Mit Hilfe von summierten Quadraturregeln lassen sich somit auch Funktionenmit schnell wachsenden Ableitungen integrieren. Darüber hinaus eignen sich summier-te Regeln auch zur Integration von Funktionen, die nur eine geringe Regularität, etwaf ∈ C1([a, b]) aufweisen. Da es möglich ist die Ordnung n klein zu halten sind summierteQuadraturregeln numerisch stabiler. Zur Veranschaulichung betrachten wir in Abbildung9.7 die summierte Trapezregel.

216

Page 225: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.5. Numerische Quadratur

Im Folgenden konkretisieren wir einige einfache summierte Quadraturregeln. Hierzu be-trachten wir ausschließlich äquidistante Zerlegungen des Intervalls [a, b]:

a = y0 < · · · < ym = b, h := b− am

, yi := a+ ih, i = 0, . . . ,m. (9.19)

Satz 9.48 (Summierte Boxregel). Es sei f ∈ C1[a, b] sowie durch (9.19) eine äquidistanteZerlegung des Intervalls gegeben. Für die summierte Boxregel

I0h(f) = h

m∑i=1

f(yi),

gilt die Fehlerabschätzung:

|I(f)− I0h(f)| ≤ b− a

2 hmax[a,b]|f ′|.

Beweis: Aus Satz 9.41 folgern wir durch Summation über die Teilintervalle

I(f)− I0h(f) =

m∑i=1

h2

2 f′(ξi),

mit Zwischenstellen ξi ∈ [yi−1, yi]. Das Ergebnis folgt nun mit (b− a) =∑i hi sowie durch

Übergang zum Maximum. �

Mit der summierten Boxregel haben wir also sogar für nur stückweise stetig differenzier-bare Funktionen eine konvergente Quadraturformel für h → 0. Entsprechend gilt für dieTrapezregel:

Satz 9.49 (Summierte Trapezregel). Es sei f ∈ C2[a, b] sowie durch (9.19) eine äquidi-stante Zerlegung des Intervalls gegeben. Für die summierte Trapezregel

I1h(f) = h

2

m∑i=1

(f(yi−1) + f(yi)) = h

2 f(a) + hm−1∑i=1

f(yi) + h

2 f(b)

gilt die Fehlerabschätzung:

|I(f)− I1h(f)| ≤ b− a

12 h2 max[a,b]|f ′′|.

Beweis: Übung! �

Die summierte Trapezregel ist besonders attraktiv, da sich die Stützstellen überschneiden:der Punkt yi ist sowohl Stützstelle im Teilintervall [yi−1, yi] als auch [yi, yi+1] und f(yi)muss nur einmal bestimmt werden. Darüber hinaus eignet sich die summierte Trapezre-gel als Grundlage von adaptiven Quadraturverfahren, bei denen die Genauigkeit Stück für

217

Page 226: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Stück dem Problem angepasst wird: wurde auf einer Zerlegung zur Schrittweite h die Ap-proximation I1

h(f) bestimmt, so kann die Genauigkeit durch Intervallhalbierung I1h/2(f)

einfach gesteigert werden. Alle Stützstellen f(yi) können weiter verwendet werden, dieFunktion f(x) muss lediglich in den neuen Intervallmitten berechnet werden. Ein entspre-chendes Resultat gilt für die summierte Simpsonregel:

I2h(f) =

m∑i=1

h

6

(f(yi−1) + 4f

(yi−1 + yi

2

)+ f(yi)

)

= h

6 f(a) +m∑i=1

h

3 f(yi) +m∑i=1

2h3 f

(yi−1 + yi

2

)+ h

6 f(b).

Bei geschickter Anordnung sind nur 2m+ 2 statt 3m Funktionsauswertungen notwendig.

9.5.3. Romberg-Quadratur

Die Idee der Richardson Extrapolation in Abschnitt 9.4, Approximationsprozesse hoherOrdnung zu erzielen, die auf Basismethoden niedriger Ordnung basieren, wird hier aufdie numerische Quadratur angewendet. Konkret werden wir die summierte Trapezregelzur Extrapolation nutzen. Die Trapezregel gehört zu den sehr einfachen Verfahren mitniedriger Ordnung. Wir fassen die wesentlichen Ergebnisse aus Abschnitt 9.5.2 zusammen.Auf einer gleichmäßigen Zerlegung des Intervalls [a, b] in N Teilintervalle mit Schrittweiteh = 1/N ist die summierte Trapezregel zur Approximation von

∫ ba f dx gegeben durch:

Ih(f) = h

12f(a) +

N−1∑j=1

f(xj) + 12f(b)

, xj := a+ jh,

und liefert im Falle f ∈ C2([a, b]) die Fehlerabschätzung:

I(f)− Ih(f) = b− a12 h2f (2)(ξ),

mit einer Zwischenstelle ξ ∈ [a, b]. Um die Extrapolationsmethode erfolgreich anwendenzu können brauchen wir Kenntnis über die weitere Fehlerentwicklung der Trapezregel. DieBasis hierzu ist die Euler-Maclaurinsche Summenformel, die eine Entwicklung des Fehlersin geraden Potenzen von h zeigt:

Satz 9.50 (Euler-Maclaurinsche Summenformel). Falls f2m+2[a, b], dann gilt die Euler-Maclaurinsche Summenformel

I(f)− Ih(f) =m∑k=1

h2k B2k(2k)!

(f (2k−1)(b)− f (2k−1)(a)

)+ h2m+2 b− a

(2m+ 2)!B2m+2f(2m+2)(ξ),

mit ξ ∈ [a, b] und den Bernoulli-Zahlen B2k.

218

Page 227: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.5. Numerische Quadratur

Beweis: Seminarthema! �

Die Bernoulli-Zahlen sind definiert als die Koeffizienten der Taylorreihendarstellung von

x

ex − 1 =∞∑k=0

Bkk! x

k = 1− 12x+ 1

6x2

2! −130x4

4! + 142x6

6! + . . . ,

und genügen der Rekursionsformel

B0 = 0, Bk = −k−1∑j=0

k!j!(k − j + 1)!Bj , k = 1, 2, . . . .

Die ersten Bernoulli-Zahlen sind gegeben als:

1,−12 ,

16 , 0,−

130 , 0,

142 , 0,−

130 , . . . .

Ausgenommen B1 = −12 gilt für jede zweite (ungerader Index) Bernoulli-Zahl B2k+1 = 0.

Ansonsten folgen sie keinem erkennbaren Gesetz Für große k wachsen die Bernoulli-Zahlensehr schnell an und verhalten sich asymptotisch wie

|B2k| ∼ 2(2k)!(2π)−2k, k →∞.

Die Euler-Maclaurinsche Summenformel besagt, dass die Trapezregel eine Entwicklung ingeraden Potenzen von h besitzt. Daher eignet sie sich gleich in zweifacher Hinsicht optimalzur Extrapolation: aufgrund der quadratischen Fehlerentwicklung gewinnen wir in jedemExtrapolationsschritt zwei Ordnungen Genauigkeit und aufgrund der Stützstellenwahl anden Enden der Teilintervalle xj−1 und xj können bereits berechnete Werte f(xj) zu einerSchrittweite h bei der nächst feineren Approximation zu h/2 weiter verwendet werden.Zur Approximation von

a(0) ≈∫ b

af(x) dx, a(h) := Ih(f) = h

12f(a) +

N−1∑j=1

f(xj) + 12f(b)

,verwenden wir das Extrapolationsprinzip aus Abschnitt 9.4:

Verfahren 9.51 (Romberg-Quadratur).

1) Berechne für eine Folge von Schrittweiten (hk)k∈N mit

hk+1hk≤ ρ < 1,

die Approximationena(hk), k = 0, . . . ,m.

2) Extrapoliere die Werte (h2k, a(hk)), k = 0, . . . ,m mit Polynomen in h2.

219

Page 228: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Als Schrittweitenfolge kann mit einem h > 0 die einfache Vorschrift

hk = 2−kh,

verwendet werden. Diese Folge wird Romberg-Folge genannt und hat den Vorteil, dassbereits berechnete Stützstellen weiter verwendet werden können. Der Nachteil dieser Folgeist das schnelle Wachstum der Anzahl der Stützstellen. Die Extrapolation selbst wird mitdem modifizierten Neville-Schema 9.31 durchgeführt.

Die Diagonalelemente ak,k sind gerade die Näherungen zu a(0). Basierend auf Satz 9.30zur allgemeinen Richardson-Extrapolation erhalten wir die Fehlerabschätzung:

Satz 9.52 (Romberg-Quadratur). Es sei f2m+2[a, b] sowie h > 0 gegeben. Das Romberg-Verfahren zur Schrittweitenfolge hk = 2−kh, k = 0, . . . ,m liefert nach m Extrapolations-schritten die Approximation:

I(f)− am,m = O(h2m+2).

Beweis: Der Beweis folgt durch Kombination von Satz 9.30 über die Richardson-Extrapo-lation mit der Euler-Maclaurinschen Summenformel aus Satz 9.50. �

Bemerkung 9.53. Anstatt der Romberg-Folge hk = 2−kh kann auch mit der Burlisch-Folge

hk =

h · 2−k2 k gerade

h3 2−

k−12 k ungerade

gearbeitet werden, da diese wesentlich weniger Funktionsauswertungen benötigt. Bei h = 1sind die ersten Folgenglieder gegeben durch:

12 ,

13 ,

14 ,

16 ,

18 ,

112 , . . . ,

220

Page 229: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.5. Numerische Quadratur

Beispiel 9.54 (Romberg’sches Quadraturverfahren). Wir untersuchen das Integral

I(f) =∫ 1

0exp

{1 + sin2(x)

}dx ≈ 4.7662017991376737307

Für die zu integrierende Funktion gilt f ∈ C∞(R). Das Romberg-Verfahren sollte sich alsogut anwenden lassen. In der folgenden Tabelle führen wir das Romberg-Verfahren mit dersummierten Trapez-Regel durch:

h Ih(f) = a(h) I(f)− Ih(f) a(1)(h) I(f)− a(1)(h) a(2)(h) I(f)− a(2)(h)2−0 4.11830 −4.56e− 01 3.65324 9.17e− 03 3.6623410 7.47e− 052−1 3.76951 −1.07e− 01 3.66177 6.43e− 04 3.6624169 1.24e− 062−2 3.68871 −2.63e− 02 3.66238 3.91e− 05 3.6624157 2.30e− 082−3 3.66896 −6.54e− 03 3.66241 2.42e− 06 3.6624157 3.65e− 102−4 3.66405 −1.63e− 03 3.66242 1.51e− 07 3.6624157 5.72e− 122−5 3.66282 −4.08e− 04 3.66242 9.42e− 09 3.6624157 8.93e− 142−6 3.66252 −1.02e− 04 3.66242 5.89e− 102−7 3.66244 −2.55e− 05Ordnung O(h2) O(h4) O(h6)

Bei diesem Beispiel wird beim Romberg’schen Quadratur-Verfahren bei nur zwei Extrapo-lationsschritten sehr schnell die Maschinengenauigkeit erreicht.

Wir betrachten als zweites Beispiel die Funktion

f(x) = |sin(x)− 0.75|, I(f) =∫ 1

0f(x) dx ≈ 0.304666468

Hier ergibt sich bei Extrapolation der Trapezregel keine wesentliche Verbesserung:

h Ih(f) = a(h) I(f)− Ih(f) a(1)(h) I(f)− a(1)(h) a(2)(h) I(f)− a(2)(h)2−0 0.42074 −1.16e− 01 0.32063 1.60e− 02 0.3045314 1.35e− 042−1 0.34565 −4.10e− 02 0.30554 8.71e− 04 0.3036544 1.01e− 032−2 0.31557 −1.09e− 02 0.30377 8.94e− 04 0.3049991 3.33e− 042−3 0.30672 −2.05e− 03 0.30492 2.56e− 04 0.3045325 1.34e− 042−4 0.30537 −7.06e− 04 0.30456 1.10e− 04 0.3046924 2.59e− 052−5 0.30476 −9.42e− 05 0.30468 1.75e− 05 0.3046680 1.58e− 062−6 0.30470 −3.66e− 05 0.30467 2.57e− 062−7 0.30468 −1.11e− 05

Konvergenzordnungen lassen sich bei diesem Beispiel nicht klar bestimmen. Der Grundhierfür ist die fehlende Regularität der Funktion f . Die Funktion ist zwar integrierbar,ihre Ableitungen haben jedoch an der Stelle arcsin(0.75) ≈ 0.86 Singularitäten.

221

Page 230: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Integration periodischer Funktionen

Im Falle periodischer Funktionen, d.h. es sei f2m+2(−∞,∞) mit dem Periodenintervall[a, b] und

f (2k−1)(a) = f (2k−1)(b), k = 1, 2, . . .

kann die Euler-Maclaurinsche Summenformel entscheidend vereinfacht werden. Aus

I(f)− Ih(f) =m∑k=1

h2k B2k(2k)!

(f (2k−1)(b)− f (2k−1)(a)

)+ h2m+2 b− a

(2m+ 2)!B2m+2f(2m+2)(ξ),

mit

Ih(f) = h

12f(a) +

N−1∑j=1

f(xj) + 12f(b)

, xj := a+ jh,

folgt dann

I(f)− Ih(f) = h2m+2 b− a(2m+ 2)!B2m+2f

(2m+2)(ξ) = O(h2m+2),

mit

Ih(f) = h

12f(a) +

N−1∑j=1

f(xj) + 12f(b)

= h

f(a) +N−1∑j=1

f(xj)

= h

N−1∑j=0

f(xj)

mit xj := a + jh. Die summierte Trapezregel vereinfacht sich dadurch zur summiertenlinksseitigen Boxregel.

Falls f ∈ C∞(−∞,∞), dann konvergiert die summierte Trapezregel (d.h. bei [a, b]-periodischenFunktionen, die summierte Boxregel) schneller gegen den Integralwert, für h→ 0, als jedeandere Quadraturregel.

Beispiel 9.55 (Quadratur periodischer Funktionen). Wir betrachten wie oben die Funk-tion

f(x) = exp{

1 + sin2(x)},

nun aber das Integral

I(f) =∫ π

0f(x) dx ≈ 14.97346455769737.

Die summierte Trapezregel liefert

h Ih(f) = a(h) I(f)− Ih(f)2−0π 8.53973 6.43e+ 002−1π 15.87657 −9.03e− 012−2π 14.97811 −4.64e− 032−3π 14.97346 −1.07e− 082−4π 14.97346 < eps

222

Page 231: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.5. Numerische Quadratur

9.5.4. Gauß-Quadratur

Wie bereits diskutiert, sind die interpolatorischen Quadraturformeln

I(n)(f) =n∑i=0

αif(xi)

zu den Stützstellen x0, . . . , xn ∈ [a, b] nach Konstruktion mindestens von der Ordnungn+ 1. D.h.:

I(p) = I(n)(p) ∀p ∈ Pn.

Wir haben jedoch mit der Mittelpunktsregel n = 0 und der Simpsonregel n = 2 bereitsQuadraturformeln kennengelernt, die exakt sind für alle Polynome Pn+1, die also von derOrdnung n+ 2 sind.

Wir untersuchen in diesem Abschnitt die Frage, ob die Ordnung mit anderen bisher nochnicht kennengelernten Methoden weiter erhöht werden kann. Bisher lag die Freiheit le-diglich in der Wahl des Polynomgrads und somit in der Anzahl der Stützstellen. DieFrage nach der optimalen Verteilung der Stützstellen im Intervall [a, b] wurde bisher nichtuntersucht. In diesem Abschnitt werden wir mit der Gauß-Quadratur interpolatorischeQuadraturformeln kennenlernen, welche durch optimale Positionierung der Stützstellendie maximale Ordnung 2n+ 2 erreichen.

Satz 9.56 (Ordnungsbarriere der Quadratur). Eine interpolatorische Quadraturformel zun+ 1 Stützstellen kann höchstens die Ordnung 2n+ 2 haben.

Beweis: Angenommen I(n)(·) mit den Stützstellen x0, . . . , xn wäre von höherer Ordnung,insbesondere exakt für Polynome P2n+2, dann auch für

p(x) =n∏j=0

(x− xj)2 ∈ P2n+2.

Die eindeutige Interpolierende pn ∈ Pn mit pn(xi) = p(xi) = 0 hat n + 1 Nullstellen undstellt somit die Nullfunktion dar. Dies ergibt einen Widerspruch:

0 <∫ b

ap(x) dx = I(n)(p) = I(n)(pn) = 0.

Im Folgenden untersuchen wir interpolatorische Quadraturregeln genauer und versuchenBedingungen herzuleiten, unter denen die höchst mögliche Ordnung 2n + 2 wirklich er-reicht werden kann. Wir müssen demnach eine Quadraturformel in n + 1 Stützstellenfinden, welche exakt ist für alle Polynome aus P2n+1. Hierzu wählen wir zunächst eineQuadraturformel mit den 2n + 2 Stützstellen x0, x1, . . . , xn, xn+1, . . . , x2n+1. Von dieser

223

Page 232: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

wissen wir, dass sie auf jeden Fall der Ordnung 2n+ 2 ist. Es gilt in Newtonscher Darstel-lung des Interpolationspolynoms

I(f)− I2n+1(f) = I(f)−2n+1∑i=0

f [x0, . . . , xi]∫ b

a

i−1∏j=0

(x− xj)dx

= I(f)− In(f)−2n+1∑i=n+1

f [x0, . . . , xi]∫ b

a

i−1∏j=0

(x− xj) dx,

wobei In(·) diejenige Quadraturregel ist, welche durch die ersten n+1 Stützstellen x0, . . . , xngegeben ist. Wir versuchen nun die Stützstellen x0, . . . , x2n+1 so zu bestimmen, dass dasRestglied

2n+1∑i=n+1

f [x0, . . . , xi]∫ b

a

i−1∏j=0

(x− xj) dx = 0

für alle Funktionen f ∈ C2n+2([a, b]) verschwindet. Das bedeutet, dass die Hinzunahmeder Stützstellen xn+1, . . . , x2n+1 nicht notwendig ist:

I(f)− I2n+1(f) = I(f)− In(f) ⇒ I2n+1(f) = In(f).

Die Formel In(f) mit n+1 Stützstellen hat dann bereits die Ordnung 2n+1. Die Newton-Basispolynome für i = n+ 1, . . . , 2n+ 1 müssen die folgende Bedingung erfüllen:∫ b

a

i−1∏j=0

(x− xj)︸ ︷︷ ︸∈P2n+1

dx =∫ b

a

n∏j=0

(x− xj)︸ ︷︷ ︸∈Pn+1

i−1∏j=n+1

(x− xj)︸ ︷︷ ︸∈Pn

dx != 0.

Ziel ist also eine Bestimmung der ersten n+ 1 Stützstellen x0, . . . , xn, so dass das Integral∫ b

a

n∏j=0

(x− xj)︸ ︷︷ ︸=:pn+1(x)

q(x) dx = 0, ∀q ∈ Pn, (9.20)

für alle q ∈ Pn verschwindet. Wählen wir eine Basis des Pn (mit Dimension n + 1),so ergibt sich ein System von n + 1 Gleichungen für die n + 1 Unbekannten x0, . . . , xn.Geometrisch betrachtet handelt es sich hier um eine Orthogonalisierungsaufgabe bzgl. desL2-Skalarproduktes

(f, g)L2[a,b] :=∫ b

af(x)g(x)dx.

Kurz geschrieben: Suche x0, . . . , xn ∈ R, so dass für pn+1(x) :=∏ni=0(x− xi)

(pn+1, q) = 0 ∀q ∈ Pn (9.21)

gilt. Der Raum der Polynome Pn ist ein linearer Vektorraum. Durch (·, ·) ist ein Ska-larprodukt gegeben. Mit Hilfe des Gram-Schmitt Verfahrens, Satz 4.6, lässt sich aus derMonombasis {1, x, . . . , xn} ein Polynom pn+1 ∈ Pn+1 erzeugen, welches auf allen q ∈ Pn

224

Page 233: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.5. Numerische Quadratur

orthogonal ist. Dies löst jedoch noch nicht das Problem, eine entsprechende Quadratur-formel zu finden, da nicht gesagt ist, dass dieses Polynom pn+1 auch n + 1 paarweiseverschiedene Nullstellen im Intervall [a, b] besitzt.

Bevor wir die allgemeine Lösbarkeit dieser Aufgabe betrachten untersuchen wir zunächstals einfaches Beispiel die Fälle n = 0 sowie n = 1:

Beispiel 9.57 (Optimale Stützstellenwahl durch Orthogonalisierung). Wir wollen diePolynome p1(x) = (x − x0) sowie p2(x) = (x − x0)(x − x1) bestimmen, so dass sie imL2-Skalarprodukt orthogonal auf allen Polynomen von Grad 0 bzw. 1 stehen. Ohne Ein-schränkung betrachten wir das Intervall [−1, 1]:

Für n = 0 gilt mit q ≡ α0 ∈ P0

0 != (x− x0, α0)L2([−1,1]) = −2x0α0 ∀α0 ∈ R,

also muss x0 = 0 gelten.

Im Fall n = 1 gilt mit q = α0 + β0x:

0 != ((x− x0)(x− x1), α0 + β0x)L2[−1,1] = −2(x0 + x1)3 β0 + 2(1 + 3x0x1)

3 α0 ∀α0, β0 ∈ R.

Aus α0 = 0 sowie β0 = 1 folgern wir x0 = −x1 und aus α0 = 1 und β0 = 0 folgt hiermitx1/2 = ± 1√

3 . Die zugehörigen Gewichte bestimmen wir gemäß

αi =∫ b

aL

(n)i (x) dx.

Vergleiche hierzu auch Formel (9.16) zu:

α00 =

∫ 1

−11 dx = 2, α1

0 =∫ 1

−1

x− −1√3

1√3 −

−1√3dx = 1, α1

1 =∫ 1

−1

x− 1√3

−1√3 −

1√3dx = 1,

und wir erhalten die beiden ersten Gauß-Quadraturformeln:

I0G(f) = 2f(0), I1

G(f) = f

(− 1√

3

)+ f

( 1√3

).

Die erste Formel ist gerade die Mittelpunktsregel, von der wir bereits die Ordnung zwei(also 2n+ 2 = 2 · 0 + 2) kennen. Die zweite Formel hat die Ordnung 4, dies kann einfachdurch Integration der Monome 1, x, x2, x3 überprüft werden.

Gauß-Legendre-Quadratur

In diesem Abschnitt werden allgemeine Resultate zur Existenz und Eindeutigkeit vonGauß’schen Quadraturregeln InG(f) untersucht. Aus Konventionsgründen betrachtet mandabei das Intervall [−1, 1] (zur Transformation auf allgemeine Intervalle sei auf Bemerkung9.77 verwiesen).

225

Page 234: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Definition 9.58 (Gauß-Quadratur). Eine Quadraturformel zur Integration einer Funkti-on f : [a, b]→ R mit

InG(f) =n∑k=0

akf(xk)

mit n+1 Quadratur-Stützstellen wird Gauß-Quadraturformel genannt, falls alle Polynomep ∈ P2n+1 exakt integriert werden, d.h. falls gilt:∫ 1

−1p(x) dx =

n∑k=0

akp(xk) ∀p ∈ P2n+1.

Die beiden im Beispiel hergeleiteten Quadraturregeln sind somit Gauß’sche Quadraturfor-meln. Wir wollen im Folgenden die Existenz von Gauß’schen Quadraturregeln mit allge-meiner Ordnung, also für beliebige Stützstellenzahl n ∈ N untersuchen. Zunächst weisenwir nach, dass die Stützstellen der Gauß-Quadratur stets Nullstellen von orthogonalenPolynomen sein müssen:

Satz 9.59. Es seien x0, . . . , xn paarweise verschiedene Quadratur-Stützstellen einer Gauß-Quadraturformel In(·). Dann gilt die Orthogonalitätsbeziehung∫ 1

−1pn+1(x)q(x) dx = 0 ∀q ∈ Pn, pn+1(x) := (x− x0) · · · (x− xn).

Beweis: Diese Aussage wurde bereits in der Herleitung der Gauss-Regeln bewiesen,vergleiche (9.20) und (9.21). Falls die Quadraturregel mit n + 1 Punkten die Ordnung2n + 2 hat, also eine Gauß’sche Regel ist, so muss das Restglied der möglichen Punktexn+1, . . . , x2n+1 wegfallen. Dies entspricht gerade der Orthogonalitätsbeziehung in (9.20).�

Falls eine interpolatorische Quadratur-Formel also die Gauß-Ordnung 2n + 2 besitzt, sobilden die n+1 Stützstellen ein Polynom pn+1(x) =

∏(x−xi), welches Orthogonal auf Pn

steht. Es bleibt zu zeigen, dass durch die Nullstellen eines orthogonalen Polynoms auchimmer die Stützstellen einer Gauss-Formel bilden, d.h. die Rückrichtung.

226

Page 235: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.5. Numerische Quadratur

Satz 9.60. Es sei pn+1 ∈ Pn+1, gegeben als

pn+1(x) =n∏j=0

(x− xj),

mit paarweise verschiedenen und reellen Nullstellen xj ∈ (−1, 1) ein Polynom, welchesL2-orthogonal auf allen Polynomen q ∈ Pn steht, d.h.∫ 1

−1pn+1(x)q(x) dx = 0 ∀q ∈ Pn.

Dann ist durch die Stützstellen x0, . . . , xn und Gewichte

αi =∫ 1

−1L

(n)i (x) dx =

∫ 1

−1

n∏j=0,j 6=i

x− xjxi − xj

dx,

eine Gauß’sche Quadraturformel von Ordnung 2n+ 2 gegeben.

Beweis: Es sei pn+1 entsprechend gegeben. Weiter sei f ∈ C2n+2([−1, 1]) beliebig undpn ∈ Pn das Interpolationspolynom durch die Stützstellen x0, . . . , xn und p2n+1 das Inter-polationspolynom von f durch die Stützstellen x0, . . . , xn sowie durch weitere (paarweiseverschiedene) Stützstellen xn+1, . . . , x2n+1. Durch p2n+1 wird mit 2n + 2 paarweise ver-schiedenen Stützstellen mindestens eine Quadraturregel der Ordnung 2n + 2 erzeugt. InNewton’scher Darstellung gilt für p2n+1 und pn

p2n+1(x) =2n+1∑i=0

f [x0, . . . , xi]i−1∏j=0

(x− xj) = pn(x) +2n+1∑i=n+1

f [x0, . . . , xi]i−1∏j=0

(x− xj)

Für die Differenz von p2n+1 und pn gilt

p2n+1(x)− pn(x) =2n+1∑i=n+1

f [x0, . . . , xi]n∏j=0

(x− xj)︸ ︷︷ ︸=pn+1(x)

i−1∏j=n+1

(x− xj)︸ ︷︷ ︸=:q(x)

,

mit einem Polynom q ∈ Pn. Da pn+1 ⊥ q folgt∫ 1

−1pn(x)dx =

∫ 1

−1p2n+1(x) dx.

D.h., die Stützstellen x0, . . . , xn erzeugen bereits eine Gauß’sche Quadraturregel mit derOrdnung 2n+ 2. �

Diese beiden Sätze besagen, dass die Charakterisierung von Gauß’schen Quadraturregelndurch Nullstellen orthogonaler Polynome eindeutig ist. Zum Abschluss müssen wir nochzeigen, dass überhaupt zu jedem Polynomgrad n orthogonale Polynome existieren, welchereelle Nullstellen im Intervall (−1, 1) besitzen.

227

Page 236: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Satz 9.61. Durch die Vorschrift

p0(x) ≡ 1,

pn(x) = xn −n−1∑i=0

(xn, pi(x)) pi(x)∫ 1−1 p

2i (x) dx

, n = 1, 2, . . .(9.22)

ist eine Folge von orthogonalen Polynomen pn ∈ Pn mit pn ∈ xn + Pn−1 und der Ortho-gonalitätsbeziehung ∫ 1

−1pk(x)pl(x) dx = 0, 0 ≤ l < k,

bestimmt. Die Polynome {pk, k = 0, . . . , n} bilden eine Orthogonalbasis des Pn.

Beweis: Der Raum der Polynome Pn ist ein n + 1 dimensionaler Vektorraum und mitdem Skalarprodukt

(f, g) :=∫ 1

−1f(x)g(x) dx,

ein Hilbertraum. Durch die Monome {1, x, . . . , xn} ist eine Basis des Pn gegeben. Es lässtsich somit das Gram-Schmidt’sche Ortogonalisierungsverfahren aus Satz 4.6 anwenden.D.h., es gilt

p0(x) ≡ 1,

und dann induktiv

pn(x) = xn −n−1∑i=0

(xn, pi(x)) pi(x)∫ 1−1 p

2i (x)dx

.

Im Gegensatz zum üblichen Gram-Schmidt Verfahren fühen wir keine Normierung durch.Daher haben die Polynome pn die gewünschte Form pn(x) ∈ xn + Pn+1.

Die Orthogonalität folgt aus dem Gram-Schmidt Verfahren. �

Dieses Resultat folgt unmittelbar aus einer Anwendung des Gram-Schmidt Verfahrens.Wir rechnen die Orthogonalitätsbeziehung dennoch separat nach:

Bemerkung 9.62 (Orthogonale Polynome). Es sei 0 ≤ l < k. Wir weisen die Orthogo-nalität per Induktion nach k nach. Zunächst sei k = 1. Dann gilt mit (9.22)

(p1, p0) = (x, 1)− (x, 1)(1, 1)(1, 1) = 0.

Nun sei die Aussage wahr für ein k ∈ N. Dann folgt für 0 ≤ l < k + 1:

(pk+1, pl) = (xk+1, pl)−k∑i=0

(xk+1, pi)(pl, pi)(pi, pi)−1.

es gilt nach Induktionanfang (pl, pi) = 0 für 0 ≤ i < l ≤ k. Daher folgt

(pk+1, pl) = (xk+1, pl)− (xk+1, pl)(pl, pl)(pl, pl)−1 = 0.

228

Page 237: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.5. Numerische Quadratur

Die so hergeleiteten Polynome sind paarweise orthogonal, jedoch nicht bzgl. der L2-Normnormiert. Stattdessen gilt eine Normierung über den Koeffizienten vor dem höchsten Mo-noms (stets 1).

Satz 9.63 (Nullstellen orthogonaler Polynome). Die bezüglich des L2([−1, 1])-Skalarprodukts orthogonalen Polynome pn besitzen reelle, einfache Nullstellen im Intervall(−1, 1).

Beweis: Der Beweis wird über Widerspruchsargumente geführt. Die Polynome pn(x) sindalle reellwertig.

(i) Wir nehmen zunächst an, dass pn eine reelle Nullstelle λ hat, die aber nicht im Intervall(−1, 1) liegt. Wir definieren

q(x) := pn(x)x− λ

.

Die Funktion q ist ein Polynom q ∈ Pn−1. Daher gilt q ⊥ pn. Dies impliziert

0 = (q, pn) =∫ 1

−1

p2n(x)x− λ

dx.

Dies ist aber ein Widerspruch, da pn(x)2 auf [−1, 1] stets positiv ist (da pn reellwertig ist),noch die Nullfunktion ist, und darüber hinaus der Faktor (x − λ)−1 keinen Vorzeichen-wechsel haben kann, da λ außerhalb von [−1, 1] liegt. Deshalb kann pn keine Nullstelleaußerhalb von (−1, 1) haben.

(ii) Im zweiten Teil zeigen wir, dass im Intervall (−1, 1) nur einfache und reelle Nullstellenliegen. Wir arbeiten wieder mit einem Widerspruchsargument. Wir nehmen an, dass pneine Nullstelle λ besitzt, die entweder mehrfach oder nicht reell ist. Falls λ nicht reell ist,so ist auch durch λ eine Nullstelle gegeben. In beiden Fällen definieren wir

q(x) := pn(x)(x− λ)(x− λ)

= pn(x)|x− λ|2

.

Das Polynom q(x) liegt in Pn−2. Es gilt

0 = (pn, q) =∫ 1

−1

p2n(x)

|x− λ|2dx.

Wieder folgt ein Widerspruch, da p2n und |x− λ|2 beide größer gleich Null, nicht aber die

Nullfunktion sind. �

Mit diesen Vorarbeiten sind wir in der Lage den Hauptsatz dieses Abschnitts zu aufzu-stellen:

Satz 9.64 (Existenz und Eindeutigkeit der Gaußquadratur). Zu n ∈ N existiert eineeindeutige Gaußquadraturformel der Ordnung 2n + 2 mit n + 1 paarweise verschiedenenStützstellen, die als Nullstellen des orthogonalen Polynoms pn+1 ∈ Pn+1 gegeben sind.

229

Page 238: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Beweis: Der Beweis besteht aus der Zusammenfassung der bisherigen Resultate:

• Satz 9.61 liefert die eindeutige Existenz des orthogonalen Polynoms pn+1 ∈ Pn+1.

• Satz 9.63 garantiert, dass dieses Polynom n+ 1 paarweise verschiedene, reelle Null-stellen besitzt.

• Satz 9.60 besagt, dass durch Wahl der Nullstellen als Stützstellen bei entsprechendenGewichten eine Quadraturformel der Ordnung 2n + 2, also eine Gauß-Quadraturgegeben ist, siehe Definition 9.58.

• Schließlich besagt Satz 9.59, dass nur durch diese Wahl der Stützstellen eine Gauß-Quadraturformel erzeugt wird, liefert also die Eindeutigkeit des Konstruktionsprin-zips.

Damit ist der Beweis geführt. �

Ein Nachteil der Newton-Cotes-Formeln sind negative Gewichte ab n ≥ 7 für geschlosseneFormeln. Die Gaußquadraturgewichte hingegen sind stets positiv:

Satz 9.65 (Gewichte der Gauß-Quadratur). Die Gewichte der Gaußquadratur zu denStützstellen x0, . . . , xn sind stets positiv und es gilt

αk =∫ 1

−1L

(n)k (x) dx =

∫ 1

−1L

(n)k (x)2 dx > 0

Beweis: Es sei durch InG(f) =∑k αkf(xk) die Gauß-Quadratur zu den n+ 1 Stützstellen

x0, . . . , xn gegeben. Für die Lagrangeschen Basispolynome gilt

L(n)i (x) =

∏j 6=i

x− xjxi − xj

, L(n)i (xk) = δik.

Es gilt L(n)i ∈ Pn, also wird auch (L(n)

i )2 von der Gauss-Formel exakt integriert. Somit ist

0 <∫ 1

−1L

(n)k (x)2 dx =

n∑i=0

αiL(n)k (xi)2 = αk.

Die Gauß’schen Quadraturformeln haben neben der hohen Ordnung den weiteren Vorteil,dass bei beliebiger Ordnung alle Gewichte positiv sind, also keine Auslöschung auftritt.

Weiter haben wir gesehen, dass die die Newton-Cotes Formeln unter dem gleichen Mangelwie die Lagrangesche Interpolation leidet: falls die Ableitungen des Integranden zu schnellsteigen, so muss keine Konvergenz bei steigendem Polynomgrad vorliegen. Im Fall derGauss-Quadratur erhalten wir hingegen Konvergenz des Integrals:

230

Page 239: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.5. Numerische Quadratur

Satz 9.66 (Konvergenz der Gauss-Quadratur). Es sei f ∈ C∞([−1, 1]). Die Folge(I(n)(f))n, n = 1, 2, . . . der Gaußformeln zur Berechnung von

I(f) =∫ 1

−1f(x) dx.

ist konvergent:I(n)(f)→ I(f) (n→∞).

Beweis: Es gilt

I(n)(f) =n∑i=0

α(n)i f(x(n)

i ), α(n)i > 0,

n∑i=0

α(n)i = 2.

Es sei ε > 0. Nach dem Approximationssatz von Weierstraß gibt es ein p ∈ Pm (wobei mhinreichend groß), so dass

max−1≤x≤1

|f(x)− p(x)| ≤ ε

4 .

Für hinreichend großes 2n+ 2 > m gilt I(p)− InG(p) = 0. Damit folgern wir

|I(f)− I(n)(f)| ≤ |I(f − p)|︸ ︷︷ ︸≤ ε4 ·2

+ |I(p)− I(n)(p)|︸ ︷︷ ︸=0

+ |I(n)(p− f)|︸ ︷︷ ︸≤ ε4 ·2

≤ ε.

Da ε > 0 beliebig gewählt worden ist, muss I(n)(f)→ I(f) für n→∞ konvergieren. �

Schließlich beweisen wir noch ein optimales Resultat für den Fehler der Gauß-Quadratur:

Satz 9.67 (Fehlerabschätzung der Gauß-Quadratur). Es sei f ∈ C2n+2[a, b]. Dann lautetdie Restglieddarstellung zu einer Gaußquadraturformel der Ordnung 2n+ 2 :

R(n)(f) = f (2n+2)(ξ)(2n+ 2)!

∫ b

ap2n+1(x) dx

für ξ ∈ [a, b] und mit pn+1 =∏nj=0(x− λj).

Beweis: Der Beweis erfolgt unter Zuhilfenahme der Hermite-Interpolation (siehe Satz9.16). Hiernach existiert ein Polynom h ∈ P2n+1 zu einer zu interpolierenden Funktionf ∈ C2n+2[−1, 1], welches die Hermitesche Interpolationsaufgabe löst, mit den Interpola-tionsbedingungen

h(λi) = f(λi), h′(λi) = f ′(λi), i = 0, . . . , n.

Hierzu lautet die (bereits bekannte) Restglieddarstellung

f(x)− h(x) = f [λ0, λ0, . . . , λn, λn, x]n∏j=0

(x− λj)2.

231

Page 240: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Wendet man nun die Gaußsche-Quadraturformel auf h(x) an, dann gilt zunächst I(n)G (h) =

I(h), und weiter unter Anwendung des Mittelwertsatzes der Integralrechnung

I(f)− I(n)G (f) = I(f − h)− I(n)

G (f − h)

=∫ 1

−1f [λ0, λ0, . . . , λn, λn, x]

n∏j=0

(x− λj)2 dx−n∑i=0

ai[f(λi)− h(λi)]

= f (2n+2)(ξ)(2n+ 2)!

∫ 1

−1

n∏j=0

(x− λj)2 dx.

Der Mittelwertsatz darf hier angewendet werden, da stets∏nj=0(x − λj)2 ≥ 0. Der Term

[f(λi)−h(λi)] = 0, da hier die Interpolationsbedingungen ausgenutzt worden sind. Damitist alles gezeigt. �

Bemerkung 9.68 (Zur Regularität in der Fehlerformel). Für die Gauß-Quadratur geltendie gleichen Anforderungen wie für alle anderen Integrationsmethoden: um die volle Ord-nung 2n + 2 zu erreichen, muss die zu integrierende Funktion f(x) entsprechend regulärsein, also f ∈ C2n+2[a, b]. Liegt diese Regularität nicht vor, so kann die Gauß-Quadraturnicht die volle Ordnung entfalten. In diesem Fall ist eine summierte Formel von niedrigerOrdnung (durchaus auch eine Gauß-Formel) angebracht.

Nachdem wir nun das theoretische Fundament der Gaußquadratur bereitgestellt habenverbleibt im finalen Schritt die explizite Angabe der Stützstellen sowie der (Quadratur)-Gewichte. Hierzu definieren wir die Legendre-Polynome.

Legendre-Polynome und zweistufige Orthogonalisierung

Für die bezüglich des L2(−1, 1) orthogonalen Polynome lässt sich eine geschlossene Formelangeben:

232

Page 241: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.5. Numerische Quadratur

Satz 9.69 (Legendre-Polynome). Die aus der Monombasis {1, x, x2, . . . } mit dem Gram-Schmidt-Verfahren (ohne Normierung) erstellte Orthogonalbasis {p0, . . . , pk} hat die ex-plizite Darstellung

pk(x) := k!(2k)!

dk

dxk(x2 − 1)k. (9.23)

Für diese Polynome gilt

‖pk‖ = k!2

(2k)!

√22k+1

2k + 1 , pk(1) = 2kk!2

(2k)! . (9.24)

Sie lassen sich durch eine zweistufige Rekursionsformel berechnen

p0(x) = 1p1(x) = x

k = 1, . . . , n− 1 : pk+1(x) = xpk(x)− k2

4k2 − 1pk−1(x).(9.25)

Durch Normierung bei x = 1 sind die Legendre-Polynome Ln ∈ Pn definiert

Lk(x) := (2k)!2kk!2 pk(x), Lk(1) = 1.

Beweis: (i) Wir zeigen zunächst per partieller Differentiation die Orthogonalität. Es giltfür k ≥ l

(2k!)(2l)!k!l! (pk, pl) =

(dk(x2 − 1)k, dl(x2 − 1)l

)= dk−1(x2 − 1)k · dl(x2 − 1)l

∣∣∣1−1︸ ︷︷ ︸

=0

−(dk−1(x2 − 1)k, dl+1(x2 − 1)l

),

da ds(x2 − 1)k für s < k stets den Faktor x2 − 1 enthält. Nach l ≤ k-facher partiellerDifferentiation ergibt sich daher

(2k!)(2l)!k!l! (pk, pl) = (−1)l

(dk−l(x2 − 1)k, d2l(x2 − 1)l

)(9.26)

Für k = l folgern wir hieraus

(2k)!2

k!2 ‖pk‖2 = (−1)k

((x2 − 1)k, 1

)(2k)! = (−1)k(2k)!

∫ 1

−1(x2 − 1)k dx, (9.27)

also‖pk‖2 = (−1)k k!2

(2k)!

∫ 1

−1(x2 − 1)k dx. (9.28)

Das Integral berechnet sich als∫ 1

−1(x2 − 1)k dx = (−1)kΓ(k + 1)

√π

Γ(

32 + k

) = (−1)k k!(k + 1)!22k+2

(2(k + 1))! .

233

Page 242: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Zusammen mit (9.28) folgt

‖pk‖2 = k!422k+1

(2k)!2(2k + 1) ,

und somit die Darstellung (9.24).

Falls k > l folgt aus (9.26) bei weiterer partieller Differentiation

(2k!)(2l)!k!l! (pk, pl)

= (−1)ldk−l−1(x2 − 1)k · d2l(x2 − 1)l∣∣∣1−1︸ ︷︷ ︸

=0

−(−1)l(dk−l−1(x2 − 1)k, d2l+1(x2 − 1)l︸ ︷︷ ︸

=0

)

die Orthogonalität.

(ii) Die Normierung an x = 1 ist klar für k = 0 sowie k = 1. Rekursiv folgt

pk+1(1) = 1 · 2kk!2

(2k)! −k2

4k2 − 12k−1(k − 1)!2

(2(k − 1))! = 2kk!2

(2k)! −2k−1k!2

(2k − 1)(2k + 1)(2(k − 1))!

= 2kk!2(2k + 1)(2k + 2)(2(k + 1))! − 2k−1k!22k(2k + 2)

(2(k + 1))!

= 2k+1(k + 1)!2

(2(k + 1))!

((2k + 1)k + 1 − k

k + 1

)= 2k+1(k + 1)!2

(2(k + 1))!

(iii) Der führende Koeffizient ist eins, also

pk(x) = xk ± . . . .

Mit der Normierung des führenden Koeffizienten sind die aus der Monombasis orthogona-lisierten Polynome eindeutig bestimmt.

(iv) Es bleibt der Nachweis der 2-stufigen Rekursionsformel. Diese werden mit Hilfe einesallgemeinen Prinzips herleiten und den Beweis später abschließen. �

Einschub: 2-stufige Orthogonalisierung Es sei für das Folgende V ein allgemeiner, endlich-oder abzählbar unendlich dimensionaler Vektorraum, also z.B. der Raum der Polynome(bis zu einem Grad n). Weiter sei durch A : V → V eine Abbildung auf V gegeben. Wirdefinieren

Definition 9.70 (Krylow-Unterraum). Es sei A : V → V und d ∈ V . Dann bezeichnenwir mit

Kl(d,A) := span{d,Ad, . . . , Al−1d} ⊂ V,

den Krylow-Unterraum.

234

Page 243: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.5. Numerische Quadratur

Am Beispiel der Polynome wählen wir z.B. d = 1, also das konstante Monom und dieAbbildung A : Pk → Pk+1 als

p(z) 7→ zp(z).

Dann ist der Krylov-Raum Kk(1, z) gerade der Polynomraum Pk−1. Krylov-Räume tretenhauptsächlich beim Lösen linearer Gleichungssysteme Ax = b auf. Im V = Rn ist dannfür einen Vektor d ∈ Rn der Krylow-Raum gegeben als

Kl(d,A) = {d,Ad,A2d, . . . , Al−1d}.

Hier wird klar, dass die Räume für l→∞ nicht unbedingt immer größer werden können.Spätestens für l = n gilt Kn+1(d,A) ⊂ Kn(d,A).

Es gilt

Satz 9.71 (Zweistufige Orthogonalisierung). Es sei V ein Vektorraum mit Skalarprodukt(·, ·) und induzierter Norm ‖ · ‖. Es sei A : V → V so gegeben, dass gilt

(Ax, y) = (x,Ay) ∀x, y ∈ V. (9.29)

Für ein d ∈ V lässt sich eine Orthonormalisierung {q1, . . . , ql} des Krylow-Raums Kl(d,A)in folgendem zweistufigen Verfahren berechnen:

q1 := d

‖d‖

q2 := Aq1 − (Aq1, q1)q1, q2 := q2‖q2‖

i = 3, . . . , l : qi := Aqi−1 − (Aqi−1, qi−1)qi−1 − (Aqi−1, qi−2)qi−2, ql := ql‖ql‖

.

Beweis: Wir führen den Beweis durch Induktion. Hierzu sei

q1 := d

‖d‖.

Angenommen, nun sei durch q1, . . . , ql eine Orthonormalbasis des Kl(d,A) gegeben. Wirbetrachten zwei Fälle: Fall 1: Es gilt Kl+1(d,A) ⊂ Kl(d,A), d.h. der Krylow-Raum wirdnicht größer und das Verfahren bricht ab, da die Orthonormalbasis {q1, . . . , ql} bereitsgegeben ist.

Fall 2: Krylow-Raum Kl+1(d,A) ist größer als Kl(d,A).

(i) Wir zeigen zunächst durch ein Widerspruchsargument, dass Aql 6∈ Kl(d,A) liegt. Dennangenommen es sei Aql ∈ Kl(d,A). Dann existieren Koeffizienten α1, . . . , αl ∈ R mit

Aql =l∑

i=1αiqi ⇒ (Aql, qj) = αj j = 1, . . . , l,

235

Page 244: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

da die q1, . . . , ql eine Orthonormalbasis bilden. Mit (9.29) folgt

αl = (Aql, qj) = (ql, Aqj︸︷︷︸∈Kj+1(d,A)

) = 0 für j = 1, . . . l − 1,

und somit im Gegensatz zur Annahme

Aql = αlql ∈ Kl(d,A).

(ii) Wir orthogonalisieren Aql ∈ Kl+1(d,A) bzgl. q1, . . . , ql gemäß

ql+1 := Aql −l∑

i=1βiqi.

Dies ergibt0 != (ql+1, qj) = (Aql, qj)− βj j = 1, . . . , l,

wieder da die q1, . . . , ql eine Orthonormalbasis bilden. Weiter gilt

βj = (Aql, qj) = (ql, Aqj︸︷︷︸∈Kj+1(d,A)

) = 0 für j = 1, . . . , l − 2.

Hieraus lesen wir die Iterationsvorschrift ab:

q2 = Aq1 − (Aq1, q1)q1,

sowieql+1 = Aql − (Aql, ql)ql − (Aql, ql−1)ql−1

für l > 1. �

Im Folgenden werden wir dieses Resultat auf die Legendre-Polynome anwenden. Zunächstgilt:

pk+1(x) = xpk(x)−(tpk(t), pk(t)

)pk(x)−

(tpk(t), pk−1(t)

)pk−1(x).

Anhand der Darstellung (9.23) folgt, dass pk entweder eine gerade oder ungerade Funktionist. Denn (x2−1)k ist gerade und die k-te Ableitung ist gerade wenn k gerade ist, ansonstenungerade. Damit ist p2

k eine gerade und xp2k eine ungerade Funktion mit Mittelwert Null.

Also gilt die 2-stufige Rekursion:

pk+1(x) = xpk(x)−(tpk(t), pk−1(t)

)pk−1(x).

Wir berechnen den Faktor γk =(tpk(t), pk−1(t)

)indirekt. Mit (9.24) gilt

2k+1(k + 1)!2

(2(k + 1))! = 2kk!2

(2k)! − γk2k−1(k − 1)!2

(2(k − 1))! ,

also4k2(k + 1)2

(2k − 1)2k(2k + 1)(2k + 2) = 2k2

(2k − 1)2k − γk,

236

Page 245: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.5. Numerische Quadratur

und schließlichγk = k

2k − 1 −k(k + 1)

(2k − 1)(2k + 1) = k2

4k2 − 1 .

Hiermit ist der Beweis zu Satz 9.69 nun abgeschlossen.

Mit den Legendre-Polynomen existiert eine explizite Darstellung für die orthogonalen Po-lynome bezüglich des L2([−1, 1])-Skalarprodukts. Die ersten Legendre-Polynome lauten:

L0(x) = 1,L1(x) = x, x0 = 0

L2(x) = 12(3x2 − 1), x0/1 = ±

√13 ,

L3(x) = 12(5x3 − 3x), x0 = 0, x1/2 = ±

√35

L4(x) = 18(35x4 − 30x2 + 3), x0/1 ≈ ±0.861136, x2/3 ≈ ±0.339981

Für die Nullstellen (also die Quadratur-Stützstellen) existiert keine geschlossene Formel.Im Fall n > 3 können die Nullstellen nur noch numerisch berechnet werden.

Die entsprechenden Quadraturgewichte können einfach über die Formel (9.16) berechnetwerden

αk =∫ 1

−1

n∏j=0,j 6=k

x− xjxk − xj

dx.

In Tabelle 9.3 fassen wir die Stützstellen und Gewichte der ersten Gauß-Legendre Regelnzusammen.

n− 1 xi αi Ordnung0 0 2 21 ±

√13 1 4

2 0 89

±√

35

59 6

3 ±0.8611363116 0.347854845±0.3399810436 0.652145154 8

4 0 0.568888889±0.9061798459 0.236926885±0.5384693101 0.478628670 10

Tabelle 9.3.: Einige Gauß-Legendre Quadratur-Regeln.

Gauß-Tschebyscheff Quadratur

Die Gauß’schen Quadraturformeln sind so konstruiert, dass Polynome bis zu einem be-stimmten Grad exakt integriert werden können. Oft sind die zu integrierenden Funktionen

237

Page 246: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

überhaupt keine Polynome, z.B.

f(x) =√

1− x2,

auf dem Intervall [−1, 1]. Die Ableitungen dieser Funktion haben an den IntervallendenSingularitäten. Die einfache Gauß-Quadratur ist zur Approximation von

∫ 1−1 f(x) dx nicht

geeignet, da hohe Regularität vorausgesetzt wird.

Die Idee der Gauß-Quadratur kann verallgemeinert werden. Ziel ist die möglichst effizienteQuadratur von Funktionen, welche nach der Art

f(x) = ω(x)p(x),

zusammengesetzt sind, wobei p(x) ein Polynom ist und ω(x) eine Gewichtsfunktion. MitHilfe dieser Gewichtsfunktion definieren wir ein modifiziertes Skalarprodukt:

Satz 9.72 (Gewichtetes Skalarprodukt). Durch ω ∈ L∞([−1, 1]) sei eine positive

ω(x) > 0 fast überall,

Gewichtsfunktion gegeben. Dann ist durch

(f, g)ω :=∫ 1

−1ω(x) f(x) g(x) dx,

ein Skalarprodukt gegeben.

Beweis: Übung! �

Wir können nun die Konstruktion der Gauss-Legendre Formeln mit Hilfe des gewichtetenSkalarprodukts durchführen. Angenommen, durch pωn+1(x) sei ein entsprechendes ortho-gonales Polynom gegeben, d.h.

(pωn+1, q)ω = (ωpωn+1, q) = 0 ∀q ∈ Pn.

Satz 9.63 kann unmittelbar übertragen werden, d.h. pωn+1 hat n+1 paarweise verschiedeneNullstellen in (−1, 1). Laut Satz 9.60, welcher ebenfalls sofort übertragen werden kannbilden diese Nullstellen eine Gauß’sche Quadraturformel für Integrale der Art∫ 1

−1ω(x)f(x) dx.

Wir können die gleiche Argumentation wie bei den Gauß-Legendre Formeln anwenden.

Die Gauß-Tschebyscheff Quadratur wählt als spezielles Gewicht die Funktion

ω(x) = 1√1− x2

.

Diese Funktion legt ein starkes Gewicht auf die beiden Intervallenden. Es gilt:

238

Page 247: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.5. Numerische Quadratur

Satz 9.73 (Tschebyscheff-Polynome). Die Tschebyscheff-Polynome Tn ∈ Pn mit

Tn(x) := cos(n arccos x), −1 ≤ x ≤ 1,

sind die bezüglich des (·, ·)ω Skalarprodukts orthogonalisierten Monome {1, x, . . . } mit derGewichtsfunktion

ω(x) = 1√1− x2

.

Die n paarweise verschiedenen Nullstellen des n-ten Tschebyscheff-Polynoms Tn(x) sindgegeben durch

xk = cos(2k + 1

2n π

), k = 0, . . . , n− 1.

Auf dem Intervall R \ [−1, 1] haben die Tschebyscheff-Polynome die Darstellung

Tn(x) = 12[(x+

√x2 − 1)n + (x−

√x1 − 1)n

].

Beweis: (i) Wir müssen zunächst nachweisen, dass durch Tn(x) überhaupt Polynomegegeben sind. Wir führen den Beweis induktiv durch Herleiten einer Iterationsformel fürdie Tn. Es gilt:

T0(x) = 1, T1(x) = x,

also insbesondere T0 ∈ P0 und T1 ∈ P1. Aus dem Additionstheorem für die Kosinusfunktion

cos((n+ 1)y) + cos((n− 1)y) = 2 cos(ny) cos(y),

erhalten wir mit y = arccos x eine zweistufige Rekursionsformel:

Tn+1(x) + Tn−1(x) = 2xTn(x) ⇒ Tn+1(x) = 2xTn(x)− Tn−1(x).

Hieraus schließen wir induktiv Tn ∈ Pn mit

Tn(x) = 2n−1xn + . . . .

(ii) Wir weisen nun die Orthogonalität der Tschebyscheff-Polynome bzgl. des gewichtetenSkalarprodukts auf [−1, 1] nach. Mit x = cos(t) gilt unter Ausnutzung der Orthogonalitättrigonometrischer Polynome:

∫ 1

−1

Tn(x)Tm(x)√1− x2

dx =∫ π

0cos(nt) cos(mt) dt =

π, n = m = 0,π2 , n = m > 0,0, n 6= m.

(iii) Die Nullstellen der Tschebyscheff-Polynome können unmittelbar aus der explizitenDarstellung berechnet werden.

(iv) Die zweite Darstellung der Tschebyscheff-Polynome kann ebenso auf die Iterations-formel zurückgeführt werden. �

Schließlich müssen noch die Gewichte der Gauß-Tschebyscheff-Formeln bestimmt werden:

239

Page 248: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Satz 9.74 (Gewichte der Gauß-Tschebyscheff-Quadraturformeln). Für die Gewichte αkder Gauß-Tschebyscheff-Quadratur mit n Stützstellen gilt

αk = π

n, k = 0, . . . , n− 1.

Beweis: Die FunktionenTm(x)√1− x2

, m = 0, . . . , n− 1,

werden von den Tschebyscheff-Formel mit n Stützstellen exakt integriert. D.h., es gilt

n−1∑k=0

αkTm(xk) =∫ 1

−1

Tm(x)√1− x2

dx, m = 0, . . . , n− 1.

Mit Satz 9.73 folgt

n−1∑k=0

αk cos((2k + 1)m

2n π)

=∫ 1

−1

Tm(x)√1− x2

dx, m = 0, . . . , n− 1,

mit (Nachrechnen) ∫ 1

−1

Tm(x)√1− x2

dx ={π m = 0,0 m = 1, . . . , n− 1

.

Aus diesen Gleichungen kann ein lineares Gleichungssystem in den α0, . . . , αn−1 mit denLösungen αk = π/n hergeleitet werden. �

Damit haben wir alle Komponenten gesammelt, um die Gauß-Tschebyscheff Formel inklu-sive Restglied anzugeben:

Verfahren 9.75 (Gauß-Tschebyscheff-Formel). Die Gauß-Tschebyscheff-Formel vomGrad 2n mit Restglied lautet

∫ 1

−1

f(x)√1− x2

dx = π

n

n−1∑k=0

f

(cos

(2k + 12n π

))+ π

22n−1(2n)!f(2n)(ξ)

mit ξ ∈ [−1, 1].

Beweis: Die Quadraturformel folgt sofort aus Einsetzen der Stützstellen und Gewichte indie allgemeine Definition einer Quadraturformel. Die Restglieddarstellung folgt aus Satz9.67. �

Die Gauß-Tschebyscheff Quadratur hat den Vorteil, dass Stützstellen und Gewichte un-mittelbar explizit angegeben werden können. Sie sind natürlich auf den Spezialfall vonFunktionen zugeschnitten, die am Rande des Integrationsbereiches Singularitäten haben.

240

Page 249: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.5. Numerische Quadratur

Beispiel 9.76. Wir verwenden die Gauss-Tschebyscheff-Quadratur zur Berechnung desIntegrals (halber Kreisinhalt)

I(f) =∫ 1

−1

√1− x2 dx =

∫ 1

−1ω(x) (1− x2)︸ ︷︷ ︸

=:f(x)

dx,

mit dem Gauss-Tschebyscheff-Gewicht ω(x) und (1 − x2) ∈ P2. Da f ∈ P2 wählen wirn = 2 im Verfahren 9.75 zur exakten Berechnung des Integrals. D.h.

∫ 1

−1ω(x)f(x) dx ≈ π

2

1∑k=0

f

(cos

(2k + 12 · 2 π

))

mit ξ ∈ (−1, 1) und den Quadraturgewichten a0 = a1 = π2 . Wir erhalten

I(f) =∫ 1

−1

√1− x2 dx =

∫ 1

−1ω(x)(1− x2) dx

= π

2

1∑k=0

(1−

(cos

(2k + 14 π

))2)

= π

2

((1− cos

(14π)2)

+(

1− cos(3

4π)2))

= π

2 ((1− 0.5) + (1− 0.5))

= π

2 ,

d.h., das Integral wird exakt berechnet.

Bemerkung 9.77 (Normierung des Integrationsintervalls). Die Gauß-Quadratur mitLegendre-Polynomen und Tschebyscheff Polynomen ist lediglich auf dem Intervall [−1, 1]definiert. Allerdings bedeutet dies keine Einschränkung für den allgemeinen Fall [a, b].Jedes endlich-dimensionale Intervall [a, b] kann durch die Transformation

x = 2 t− ab− a

− 1, t ∈ [a, b]

in [−1, 1] überführt werden. Mit der Wahl x ∈ [−1, 1] wird dann die Integration in [−1, 1]durchgeführt, um anschließend durch die Rücktransformation

t = (x+ 1)(b− a)2 + a, x ∈ [−1, 1]

die (berechneten) Werte für t ∈ [a, b] zu erhalten.

241

Page 250: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Korollar 9.78 (Transformation des Integrationsintervalls). Mit den Voraussetzungen ausBemerkung 9.77 gilt für das (exakte) Integral

I(f) =∫ b

af(t) dt = b− a

2

∫ 1

−1f

[(x+ 1)(b− a)2 + a

]dx.

Die Quadraturformel zur Integration von I(f) lautet dann

In(f) = b− a2

n∑k=0

akf

[(xk + 1)(b− a)2 + a

].

242

Page 251: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.6. Bestapproximation

9.6. Bestapproximation

Bisher haben wir uns im Wesentlichen mit der Interpolation beschäftigt. Die Approxi-mation ist weiter gefasst: wir suchen eine einfache Funktion p ∈ P (dabei ist der Funk-tionenraum P meist wieder der Raum der Polynome), welche die beste Approximation zugegebener Funktion f oder zu gegebenen diskreten Daten yi ∈ R darstellt. Der Begriff bes-te Approximation ist dabei weit gefasst. Wir verstehen unter ihm den minimalen Abstandvon p zu f (oder zu den diskreten Daten) in einer Norm. Die allgemeine Approximations-aufgabe besteht nun im Auffinden von p ∈ P , so dass

‖f − p‖ = minq∈P‖f − q‖.

Die Wahl der Norm ‖ · ‖ ist dabei zunächst beliebig. Es stellt sich jedoch heraus, dass diemathematische Approximationsaufgabe je nach betrachteter Norm einer sehr unterschied-liche Vorgehensweise bedarf. Eine spezielle Approximationsaufgabe haben wir bereits ken-nengelernt:

Bemerkung 9.79 (Lagrange-Interpolation als Approximation). Angenommen, in denn + 1 paarweise verschiedenen Stützstellen x0, x1, . . . , xn soll für das Polynom pn ∈ Pngelten p(xi) = f(xi), dann definieren wir die Norm:

|p|n := maxi=0,...,n

|p(xi)|.

Man kann zeigen, dass dies wirklich eine Norm auf dem Polynomraum Pn ist. Die Appro-ximationsaufgabe: suche p ∈ Pn, so dass

|p− f |n = minq∈Pn

|q − f |n,

ist gerade die Lagrange-Interpolationsaufgabe.

In diesem Abschnitt werden wir uns hingegen hauptsächlich mit der L2-Norm

‖f‖L2([a,b] :=(∫ b

af(x)2 dx

) 12

,

sowie mit der Maximumsnorm

‖f‖∞ := maxx∈[a,b]

|f(x)|,

befassen. Die beste Approximation in der L2-Norm taucht in der Analysis in Form derFourier-Entwicklung in trigonometrischen Polynomen auf, Konvergenz wird hier bezüglichder L2-Norm

‖f − fn‖L2([a,b]) → 0 (n→∞),

243

Page 252: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

gezeigt. Die Approximation bezüglich der Maximumsnorm ist für die praktische Anwen-dung von großer Bedeutung: denn eine Approximation, die den Fehler gleichmäßig aufdem gesamten Intervall [a, b] unter Kontrolle hält, schließt die typischen Oszillationen derLagrange-Interpolation an den Intervallenden (siehe Beispiel 9.15) systematisch aus. Eszeigt sich allerdings, das gerade dieser für die Anwendung wichtige Approximationsbegriffmathematisch schwer zu greifen ist.

9.6.1. Gauss-Approximation: Beste Approximation in der L2-Norm

Zunächst betrachten wir die beste Approximation einer Funktion f : [a, b] → R mitPolynomen p ∈ P bezüglich der L2-Norm:

‖f − p‖L2([a,b]) = minφ∈P‖f − φ‖L2([a,b]).

Die L2-Norm kann mittels ‖f‖L2 = (f, f)12 über das L2-Skalarprodukt definiert werden.

Vektorräume mit Skalarprodukt heißen Prähilbertraum. Speziell in reellen Vektorräumenspricht man von euklidischen Räumen, im Komplexen auch von unitären Räumen. DasSkalarprodukt dient zur Beschreibung von Orthogonalitätsbeziehungen. Für die Approxi-mation bezüglich der L2-Norm gilt die folgende Charakterisierung:

Satz 9.80 (Approximation und Orthogonalität). Es sei f ∈ C[a, b] und S ⊂ C[a, b] einendlich dimensionaler Unterraum. Es sei durch

(f, g) :=∫ b

af(x)g(x) dx, ‖f‖ = (f, f)

12 ,

das L2-Skalarprodukt mit zugehöriger Norm gegeben. Dann ist p ∈ S beste Approximationzu f ∈ C[a, b]

‖f − p‖ = minφ∈S‖f − φ‖,

genau dann, wenn der Fehler f − p orthogonal auf dem Raum S steht:

(f − p, φ) = 0 ∀φ ∈ S.

Beweis: (i) Wir zeigen zunächst, dass jede beste Approximation p ∈ S die Orthogonali-tätsbedingung erfüllt. Die quadratische Funktion

Fφ(t) := ‖f − p− tφ‖2 = (f − p− tφ, f − p− tφ), t ∈ R

hat für jedes fest gewählte φ ∈ S bei t = 0 ein Minimum. D.h., t = 0 muss stationärerPunkt sein:

d

dtFφ(t)

∣∣∣t=0

= 0 ⇒ d

dtFφ(t) = −2(f − p− tφ, φ)

Aus t = 0 folgt die Orthogonalitätsbeziehung (für alle φ ∈ S).

244

Page 253: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.6. Bestapproximation

(ii) Umgekehrt gelte nun die Beziehung

(f − p, φ) = 0 ∀φ ∈ S,

für ein p ∈ S. Dann gilt für den Fehler für beliebige φ ∈ S:

‖f − p‖2 = (f − p, f − p) = (f − p, f − φ) + (f − p,∈S︷ ︸︸ ︷φ− p)︸ ︷︷ ︸

=0

≤ ‖f − p‖ ‖f − φ‖,

und also die Minimalbedingung. �

Wir können die beste Approximation p ∈ S durch eine Orthogonalitätsbeziehung beschrei-ben. Dieser Zusammenhang ist der Schlüssel zur Analyse der Gauss-Approximation undauch zur praktischen numerischen Realisierung. Wir können sofort den allgemeinen Satzbeweisen:

Satz 9.81 (Allgemeine Gauß-Approximation). Es sei H ein Vektorraum mit Skalarprodukt(·, ·) und S ⊂ H ein endlich-dimensionaler Teilraum. Dann existiert zu jedem f ∈ H eineeindeutig bestimmte beste Approximation p ∈ S in der induzierten Norm ‖ · ‖:

‖f − p‖ = minφ∈S‖f − φ‖.

Beweis: Für den Beweis nutzen wir die Charakterisierung der Bestapproximation mitHilfe des Skalarprodukts aus Satz 9.80.

(i) Eindeutigkeit: Seien p1, p2 ∈ S zwei Bestapproximationen. Dann gilt notwendigerweise

(f − pi, φ) = 0 ⇒ (p1 − p2, φ) = 0 ∀φ ∈ S,

und also, für φ := p1 − p2 folgt ‖p1 − p2‖ = 0, somit p1 = p2.

(ii) Existenz: Der endlich-dimensionale Teilraum S ⊂ H besitzt eine Basis {φ1, . . . , φn}mit n := dim(S). Die beste Approximation p ∈ S stellen wir als Linearkombination indieser Basis dar:

p =n∑k=1

αkφk,

mit eindeutig bestimmten Koeffizienten αk ∈ R. Dieser Ansatz für p wird in die Orthogo-nalitätsbedingung eingesetzt:

(f − p, φl) = (f −n∑k=1

αkφk, φl) = (f, φl)−n∑k=1

αk(φk, φl) = 0 k = 1, . . . , n.

Dies entspricht dem linearen Gleichungssystem

Ax = b,

245

Page 254: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

mit Koeffizientenmatrix A = (akl)nkl=1, rechter Seite b = (bl)nl=1 und Lösung x = (αk)nk=1:

alk = (φk, φl), bl = (f, φl).

Die Matrix A ist die Gram’sche Matrix zur Basis φ1, . . . , φn und stets regulär. Damit istdas Gleichungssystem stets eindeutig lösbar. �

Der Beweis liefert sofort ein Konstruktionsprinzip zur Bestimmung der Bestapproximationp ∈ S. Wir stellen zu gegebener Basis {φ1, . . . , φn} das lineare n × n Gleichungssystemauf:

n∑j=1

aijαj = bi, i = 1, . . . , n,

mit aij = (ψi, ψj) und berechnen den Ergebnisvektor x = (αj)j . Die gesuchte Bestappro-ximation p ∈ S ist dann in der Basisdarstellung gegeben als

p =n∑i=1

αiψi.

Zur numerischen Realisierung muss zunächst das lineare Gleichungssystem aufgestellt wer-den, d.h. insbesondere müssen die Einträge der Systemmatrix (numerisch) integriert wer-den. Schließlich ist das lineare Gleichungssystem Ax = b zu lösen. Angenommen, wirstarten die Konstruktion mit der Monombasis {1, x, . . . , xn} auf dem Intervall [0, 1]. Dannist die durch

aij =∫ 1

0xi xj dx,

gegebene Matrix die sogenannte Hilbert-Matrix

Hn =

1 12

13

14 . . . 1

n12

13

14

15 . . . 1

n+113

14

15

. . . 1n+2

14

15

. . . . . . ...... . . . ...1n

1n+1

1n+2

1n+3 . . . 1

2n−1

.

Das Lösen eines Gleichungssystems mit der Hilbert-Matrix ist äußerst schlecht konditio-niert. Schon für n = 4 liegt die Fehlerverstärkung der Hilbert-Matrix bei 15 000. DieseMatrix muss also unbedingt vermieden werden. Der direkte Weg zum Erstellen der Be-stapproximation ist somit nicht numerisch stabil.

Auch wenn die Wahl der Basisvektoren {φ1, . . . , φn} keinen Einfluss auf das Ergebnis hat,so bestimmt sie doch wesentlich den Aufwand bei der Realisierung. Angenommen, dieBasis sei ein Orthonormalsystem, d.h. es gelte (φi, φj) = δij für alle i, j = 1, . . . , n. Danngilt für die Systemmatrix

aij = (φi, φj) = δij ⇒ A = I.

246

Page 255: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.6. Bestapproximation

Die Systemmatrix ist die Einheitsmatrix und die gesuchten Koeffizienten lassen sich sofortablesen

αi = (f, φi),

womit die Bestapproximation durch die Relation

p =n∑i=1

(f, φi)φi,

trivial gegeben ist. Für dieses vereinfachte Vorgehen benötigen wir zunächst eine Ortho-normalbasis von S ⊂ H. Die Orthonormalisierung kann mit Hilfe des bereits diskutie-ren Gram-Schmidt-Algorithmus durchgeführt werden. Bei Verwendung der Monombasisdes S = Pn führt dieser Algorithmus auf die bereits bekannten Legendre-Polynome ausSatz 9.69.

Die Legendre-Polynome erlauben eine einfache Anwendung der Gauss-Approximation:

Korollar 9.82 (Gauss-Approximation mit Polynomen). Es sei f ∈ C[−1, 1]. Die Bestap-proximation p ∈ Pn bezüglich der L2-Norm im Raum der Polynome von Grad n eindeutigbestimmt durch:

p(x) =n∑i=0

1‖Li‖2L2[−1,1]

(Li, f)Li(x),

mit den Legendre-Polynomen

Li(x) := 12ii!

di

dxi(x2 − 1)i.

Die Normierung mit ‖Ln‖−2 ist notwendig, da die Legendre-Polynome bezüglich der L2-Norm nicht normiert sind, vergleiche Satz 9.69.

Die Eigenschaft von p ∈ Pn die beste Approximation zu f im Raum der Polynome zusein, bedeutet auch, dass p bezüglich der L2-Norm eine bessere Approximation ist als jedeLagrange-Interpolation zu beliebiger Wahl von Stützstellen x0, . . . , xn in [−1, 1]. Hierauskönnen wir auf triviale Weise eine einfache Fehlerabschätzung herleiten. Dazu sei f ∈Cn+1([a, b]) und p ∈ Pn die Bestapproximation. Es gilt

‖f − p‖L2[a,b] ≤ ‖f − ihf‖L2[a,b] ∀ihf,

wobei ihf eine beliebige Interpolation zu f in n+1 Stützstellen ist. Mit der (punktweisen)Fehlerabschätzung der Interpolation, Satz 9.11 folgt:

‖f − p‖L2([a,b]) ≤‖fn+1‖∞(n+ 1)! min

x0,...,xn∈[a,b]

∫ 1

−1

n∏j=0

(x− xj)2 dx

12

. (9.30)

Das Minimum des zweiten Ausdrucks ist nicht einfach zu bestimmen, es können alle Stütz-stellen im Intervall frei variiert werden. Wir werden aber später auf diesen Punkt zurück-kommen und diese Lücke schließen.

247

Page 256: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

-1.5

-1

-0.5

0

0.5

1

1.5

-1 -0.5 0 0.5 1

f(x)Gauss-Approximation

Lagrange-Interpolation

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

-1 -0.5 0 0.5 1

Fehler Gauss-ApproximationFehler Lagrange-Interpolation

0

Abbildung 9.8.: Gauss-Approximation sowie Lagrange-Interpolation (jeweils kubisch) derFunktion f(x) = sin(πx). Rechts: Fehler der Approximationen.

Beispiel 9.83 (Gauss-Approximation vs. Lagrange-Interpolation). Wir approximieren dieFunktion f(x) = sin(πx) auf dem Intervall I = [−1, 1] mit Polynomen vom Grad drei.Zunächst erstellen wir in den äquidistant verteilten vier Stützstellen

xi = −1 + 2i3 , i = 0, . . . , 3

das zugehörige Lagrangesche Interpolationspolynom. Aufgrund von f(x0) = f(x3) = 0 gilt:

pL(x) = sin(x1)L(3)1 (x) + sin(x2)L(3)

2 (x)

= 27√

316 (x− x3).

Als zweite Approximation bestimmen wir die Gauß-Approximation in der L2-Norm. Hierzuverwenden wir die Darstellung über die normierten Legendre-Polynome Ln(x) auf [−1, 1].Es gilt: ∫ 1

−1L0(x) f(x) dx = 0,

∫ 1

−1L2(x) f(x) dx = 0,

sowie ∫ 1

−1L1(x) f(x) dx =

√6π,

∫ 1

−1L3(x) f(x) dx =

√14(π2 − 15)

π3 .

Hieraus erhalten wir die Gauß-Approximation

pG(x) =√

6πL1(x) +

√14(π2 − 15)

π3 L3(x)

= 5x(7π2x2 − 105x2 − 3π2 + 63)2π3 .

Für die beiden Approximationen gilt:

‖f − pL‖L2([−1,1]) ≈ 0.2, ‖f − pG‖L2([−1,1]) ≈ 0.1,

248

Page 257: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.6. Bestapproximation

d.h., die Gauß-Approximation liefert in der L2-Norm ein doppelt so gutes Ergebnis. InAbbildung 9.8 zeigen wir beide Approximationen, die Funktion f(x) sowie die Fehler f(x)−pl(x) sowie f(x)−pg(x). Hier sehen wir zunächst, dass die Lagrange-Interpolation an denStützstellen die Interpolationsbedingung, also f(xi) = pL(xi) = 0 erfüllt, wo hingegen dieGauss-Approximation gerade am Rand einen großen Fehler aufweist. Der maximale Fehlerim Intervall ist hingegen bei der Gauß-Approximation etwas geringer.

Diskrete Gauß-Approximation

Abschließend betrachten wir nun die Bestapproximation diskreter Messwerte (xi, yi), i =1, 2, . . . ,m. Wir definieren auf der Punktmenge die Norm

|y|2 =(

m∑i=1

y2i

) 12

.

Es sei S ein endlich dimensionaler Funktionenraum, z.B. der Raum der Polynome Pn. Wirsuchen die beste Approximation p ∈ S bezüglich der Punkt-Norm:

|p− y|2 =(

m∑i=1|p(xi)− yi|2

) 12

. = minφ∈S|φ− y|2.

Im Fall m > n können wir keine Gleichheit in den Punkten xi fordern. D.h., φ(x) ist keineInterpolation. Ein Beispiel ist die Bestimmung der linearen Ausgleichsgerade p1(x) = α0 +α1x zu vielen (tausend?) Messwerten. Die euklidische Vektornorm ist aus dem euklidischenSkalarprodukt abgeleitet:

|x|2 = (x, x)122 ,

daher kann die bisher entwickelte Theorie unmittelbar angewendet werden. Schlüssel zurBestimmung der Bestapproximation ist wieder gemäß Satz 9.80 die Charakterisierung überdie Orthogonalität:

|p− y|2 = minφ∈S|φ− y|2 ⇔ (p− y, φ)2 = 0 ∀φ ∈ Rn.

Alle Eigenschaften der kontinuierlichen Gauß-Approximation übertragen sich und wir kön-nen gleich den Existenzsatz formulieren:

Satz 9.84 (Diskrete Gauß-Approximation). Es seien durch (xi, yi) für i = 1, . . . ,m dis-krete Datenwerte gegeben. Weiter sei S ein endlich dimensionaler Funktionenraum mitBasis {φ1, . . . , φn}. Die diskrete Gauß-Approximation p ∈ S

|p− y|2 :=(

m∑i=1|p(xi)− yi|2

) 12

= minφ∈S|φ− y|2,

ist eindeutig bestimmt.

249

Page 258: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Beweis: über die Basisdarstellung ist S äquivalent zum euklidischen Raum Rn. Eindeu-tigkeit und Existenz folgen nun in Rn wie im Beweis zu Satz 9.81. �

Die Konstruktion der diskreten Gauß-Approximation folgt wieder über die Basisdarstel-lung

p(x) =n∑i=1

αiφi(x)

aus der beschreibenden Orthogonalitätsbeziehung:

(p− y, φk)2 =m∑i=1

(p(xi)− yi)φk(xi) = 0, k = 1, . . . , n

Setzen wir für p die Basisdarstellung ein, so erhalten wir das Gleichungssystem:

n∑j=1

αj

m∑i=1

φj(xi)φk(xi)︸ ︷︷ ︸=(φj ,φk)2

=m∑i=1

yiφk(xi)︸ ︷︷ ︸=(y,φk)2

, k = 1, . . . , n.

Der gesuchte Koeffizientenvektor α = (αk)nk=1 ist gegeben als Lösung des Gleichungssys-tems:

(φ0, φ0)2 (φ0, φ1)2 · · · (φ0, φn)2

(φ1, φ0)2. . . ...

... . . . ...(φn, φ0)2 · · · · · · (φn, φn)2

α0α1...αn

=

(y, φ0)2(y, φ1)2

...(y, φn)2.

Aus der allgemeinen Darstellung kann eine spezielle und häufig genutzte Approximationabgeleitet werden: die Gauß’sche Ausgleichsrechnung:

Beispiel 9.85 (Lineare Ausgleichsrechnung). Wir suchen die lineare Approximation p(x) ∈P1

p(x) = α0 + α1x,

zu gegebenen Messwerten. Es seien φ0(x) ≡ 1, φ1(x) = x dann ergibt sich das folgendelineare Gleichungssystem:(

(φ0, φ0)2 (φ0, φ1)2(φ1, φ0)2 (φ1, φ1)2

)(α0α1

)=(

(y, φ0)2(y, φ1)2,

)⇐⇒

(m

∑xi∑

xi∑x2i

)(α0α1

)=( ∑

yi∑xiyi.

)

Dieses System ist regulär, falls m ≥ 2 und es mindestens zwei Stützwerte xi 6= xj gibt.

Verallgemeinerung der Gauß-Approximation Die diskrete Gauß-Approximation sowiedie Approximation von Funktionen lassen sich durch die Verwendung von gewichtetenSkalarprodukten und entsprechenden gewichteten induzierten Normen vereinfachen.

250

Page 259: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.6. Bestapproximation

Die Verwendung eines Gewichtes dient dazu, die Approximationsgenauigkeit der Gauß-Approximierenden an den Intervallenden zu verbessern. Für jedes integrable und positiveω(x) > 0 ist durch

(f, g)ω :=∫ b

af(x)g(x)ω(x) dx,

wieder ein Skalarprodukt mit entsprechender Norm

‖f‖ω = (f, f)12ω ,

gegeben. Wird die Gewichtsfunktion w(x) = 1√1−x2 auf dem Intervall (−1, 1) verwendet,

so legt die Bestapproximation ein größeres Gewicht auf die Intervallenden. Die hieraus ab-geleiteten orthonormalen Polynome sind die bereits diskutierten Tschebyscheff-Polynome.

Auch die diskrete Gauß-Approximation lässt sich dies bezüglich verallgemeinern. Hierzusei durch ω ∈ Rn ein Vektor mit ωi > 0 gegeben. Dann ist für x, y ∈ Rn durch

(x, y)ω =n∑i=1

xiyiωi, |x|ω = (x, x)12ω ,

ein gewichtetes Skalarprodukt mit entsprechender Norm gegeben. Gerade für die diskreteApproximation spielen die Gewichte eine große Rolle in der Anwendung: Angenommenfür die Stützstellen und Stützwerte sind Abschätzungen für den Messfehler bekannt. Dannkönnen Stützwerte mit kleinerem Messfehler stärker gewichtet werden.

Sämtliche Sätze zur Gauß-Approximation wurden für beliebige von Skalarprodukten indu-zierte Normen bewiesen. Daher übertragen sich alle Eigenschaften auch auf die gewichtetenNormen.

9.6.2. Tschebyscheff-Approximation

Wählen wir anstelle der L2[a, b]-Norm die Maximumsnorm

‖f‖∞ := min[a,b]|f(x)|,

so kann die Bestapproximationsaufgabe nicht entsprechend der Gauss-Approximation an-gegangen werden. Es fehlt der Zusammenhang der Maximumsnorm zu einem Skalarpro-dukt und somit der Bezug zur Orthogonalität und eine Charakterisierung der Bestappro-ximation mit Hilfe einer Variationsgleichung.

Definition 9.86 (Tschebyscheff-Approximation). Es sei f ∈ C[a, b] und S ⊂ C[a, b] einendlich dimensionaler Teilraum. Die Funktion p ∈ S mit

‖f − p‖∞ ≤ ‖f − g‖∞ ∀g ∈ S,

heißt Tschebyscheff-Approximation zu f .

251

Page 260: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Beispiel 9.87 (Bestapproximation in der Maximumsnorm). Wir betrachten f(x) = cos(πx)auf I = [0, 1]. Wir suchen zunächst die Bestapproximation mit der konstanten Funktionp(x) ≡ c:

minc∈R‖f − c‖∞.

Da−1 = min

I|f(x)| < max

I|f(x)| = 1,

muss auch −1 ≤ c ≤ 1 gelten. Für diese Wahl erhalten wir

‖f − c‖∞ = max{1− c, 1 + c},

und die optimale Lösung für c = 0.

Im Falle der linearen Bestapproximation p(x) = c+αx ist diese Aufgabe bereits schwer zulösen.

Die Existenz der Tschebyscheff-Approximation kann nicht mit Hilfe einer Orthogonalitäts-beziehung gezeigt werden. Wir können jedoch ein ganz allgemeines Approximationsresultatverwenden:

Satz 9.88 (Existenz der Tschebyscheff-Approximation). Es sei E ein Vektorraum mitNorm ‖ · ‖ und S ⊂ E ein endlich dimensionaler Teilraum. Dann existiert zu jedem f ∈ Eeine Bestapproximation p ∈ S mit

‖f − p‖ = minq∈S‖f − q‖.

Beweis: Wir zeigen zunächst, dass eine Bestapproximation in der Menge

Sf := {φ ∈ S, ‖φ‖ ≤ 2‖f‖}

liegen muss. Diese Menge ist nicht leer, natürlich liegt z.B. f ∈ Sf .

Angenommen g ∈ S mit ‖g‖ > 2‖f‖. Dann folgt mit der umgekehrten Dreiecksungleichung

‖g − f‖ ≥ ‖g‖ − ‖f‖ > ‖f‖ = ‖f − 0‖ ≥ infq∈S‖f − q‖,

d.h., g ∈ S ist keine Bestapproximation. Die Teilmenge Sf ⊂ S ist abgeschlossen, endlichdimensional, kompakt. Auf Sf ist die Funktion

F (φ) := ‖f − φ‖,

stetig und nimmt als stetige Funktion auf in der kompakten Menge Sf ein Minimum p ∈ Sfan. Dieses Minimum ist die Bestapproximation. �

Zur Charakterisierung der Bestapproximation benötigen wir nun ein überprüfbares Kri-terium. Viele der folgenden Sätze lassen sich auf allgemeine Vektorräume E und endlichdimensionale Teilräume S übertragen. Wir gehen jedoch davon aus, dass E = C[a, b] der

252

Page 261: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.6. Bestapproximation

Raum der stetigen Funktionen ist und S = Pn der Raum der Polynome vom Grad bis n.Angenommen, p ∈ Pn sei eine Bestapproximation zu f ∈ C[a, b]. Dann definieren wir

e(x) = f(x)− p(x), e := max[a,b]|e(x)|,

und die Menge aller Punkte x ∈ [a, b], in denen die Fehlerfunktion maximal wird.

E(f, p) := {x ∈ [a, b] : |e(x)| = e}.

Es gilt

Satz 9.89 (Satz von Kolmogoroff). Die Funktion p ∈ Pn ist genau dann Bestapproxima-tion zu f ∈ C[a, b], falls

∀q ∈ Pn : min{(f(x)− p(x))q(x) : ∀x ∈ E(f, p)

}≤ 0.

Beweis: (i) Angenommen, p sei Bestapproximation und das Kolmogoroff-Kriterium giltnicht. Dann existiert ein q ∈ Pn und ein ε > 0, so dass für e(x) := f(x)− p(x) gilt

∀x ∈ E(f, p) : e(x)q(x) > 2ε.

Die Menge E(f, p) ist kompakt. Daher existiert eine offene Menge U mit E(f, p) ⊂ U und

∀x ∈ U : (f(x)− p(x))q(x) > ε.

Wir definieren M := ‖q‖∞ und p1 := p+ λq. Für λ > 0 folgt dann für x ∈ U

(f(x)− p1(x))2 =(e(x)− λq(x)

)2 = e(x)2 − 2λe(x)q(x) + λ2q(x)2

< e2 − 2λε+ λ2M2.

Für alle0 < λ <

ε

M2

gilt(f(x)− p1(x))2 < e2 − λε.

Es existiert also eine Funktion p1 die in der Umgebung U eine bessere Approximation zuf ist als p. Wir betrachten jetzt x ∈ [a, b] \U . Diese Menge ist kompakt (U ist offen). Alsoexistiert ein δ >< 0 mit

|e(x)| < e− δ ∀x ∈ [a, b] \ U,

den die Maxima werde ja gerade innerhalb der offenen Umgebung U angenommen. Für

λ <δ

2Mgilt dann

|f(x)− p1(x)| ≤ |f(x)− p(x)|+ λ|q(x)| ≤ e− δ + δ

2MM = e− δ

2 .

253

Page 262: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Die Funktion p1 ist also auf ganz [a, b] eine bessere Approximation zu f . Dies ist einWiderspruch, das Kolmogoroff-Kriterium muss demnach gelten.

(ii) Jetzt nehmen wir an, dass das Kolmogoroff-Kriterium für p gilt. Es sei p1 ∈ Pn beliebigund q := p1 − p. Es existiert also mindestens ein t ∈ E(f, p) mit

e(t)q(t) ≤ 0.

Hieraus folgt

(f(t)− p1(t))2 = (e(t)− q(t))2 = e(t)2 − 2e(t)q(t) + q(t)2 ≥ e(t)2 = e2,

d.h.‖f − p1‖∞ ≥ ‖f − p‖∞ ∀p1 ∈ Pn,

d.h., p ist die Bestapproximation. �

Die Eindeutigkeit einer Bestapproximation kann für die Polynomräume kann nun mitdiesem Kriterium nachgewiesen werden:

Satz 9.90 (Haar’scher Eindeutigkeitssatz). Es sei f ∈ C[a, b] \ Pn und Pn der Raum derPolynome bis zum Grad n und p ∈ Pn die Bestapproximation zu f . Dann besitzt die MengeE(f, p) mindestens n+ 2 Punkte und die Bestapproximation ist eindeutig bestimmt.

Beweis: (i) Angenommen, die Menge E(f, p) habe nur n + 1 Punkte x0, x1, . . . , xn+1 ∈[a, b]. Zu diesen n+ 1 paarweise verschiedenen Punkten existiert die eindeutige Lagrange-Interpolation q ∈ Pn mit

q(xj) = e(xj) = f(xj)− p(xj), j = 0, . . . , n.

Wir überprüfen das Kolmogoroff-Kriterium (das für die Bestapproximation ja gelten müss-te)

e(xj)q(xj) = e(xj)2 = e2 > 0.

Das Kriterium ist nicht erfüllt, d.h. p kann keine Bestapproximation, d.h. es existierenmindestens n+ 2 Punkte in E(f, p).

(ii) Angenommen, p1, p2 seien zwei Bestapproximationen zu f ∈ C[a, b]. Dann gilt:

‖f − 12(p1 + p2)‖∞ ≤

12‖f − p1‖∞ + 1

2‖f − p2‖∞,

d.h., p := (p1 +p2)/2 ist auch Bestapproximation. Nach Teil (i) existieren mindestens n+2Punkte x0, . . . , xn+1 ∈ E(f, p) mit

|f(xj)− p(xj)| = e, j = 0, . . . , n+ 1,

also ∣∣∣∣12(f(xj)− p1(xj)) + 12(f(xj)− p2(xj))

∣∣∣∣ = e, j = 0, . . . , n+ 1.

254

Page 263: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.6. Bestapproximation

Gleichzeitig gilt für die beiden Polynome p1, p2

|f(xj)− pi(xj)| ≤ e, i = 1, 2, j = 0, . . . , n+ 1.

Hieraus folgt:

f(xj)− p1(xj) = f(xj)− p2(xj) ⇒ p1(xj) = p2(xj),

d.h. die beiden Polynome pi ∈ Pn stimmen in n + 2 Stellen überein, sind also identisch.Die Bestapproximation ist somit eindeutig. �

Zur konkreten Bestimmung der Bestapproximation und zu ihrer weiteren Charakterisie-rung zitieren wir nun noch die folgende Verschärfung des Kolmogoroff-Kriteriums:

Satz 9.91 (Tschebyscheffscher Alternantensatz). Es sei f ∈ C[a, b] und p ∈ Pn die Bestap-proximation zu f . Genau dann existiert eine Sequenz aus n+2 Stellen x0, . . . , xm ∈ E(f, p),die sogenannte Alternante, so dass für den Fehler e(x) = f(x)− p(x) gilt

|e(xi)| = ‖e‖∞, e(xi) = −e(xi+1), i = 0, . . . , n+ 1,

die Extrema werden also mit wechselndem Vorzeichen angenommen.

Beweis: Der Haar’sche Eindeutigkeitssatz besagt bereits, dass die Menge E(f, p) mindes-tens n+ 2 paarweise verschiedene Punkte besitzt, an denen gilt:

|e(xj)| = e, j = 0, . . . , n+ 1.

Weiter gilt das Kriterium von Kolmogoroff in diesen n+2 Punkten. Wir müssen nun nochzeigen, dass das Vorzeichen von e(xj) von Punkt zu Punkt wechselt. Angenommen, esgäbe nur n Vorzeichenwechsel, d.h. z.B.

e(xj) = (−1)je j = 0, . . . , i,e(xi) = e(xi+1) = (−1)ie

e(xj) = (−1)j+1e j = i+ 2, . . . , n+ 1.

Wir versuchen dies zum Widerspruch zu bringen, indem wir eine Funktion qα ∈ Pn kon-struieren, die das Kriterium von Kolmogoroff nicht erfüllt. Dazu wählen wir das eindeutigbestimmte Polynom qα ∈ Pn mit

qα(xj) = e(xj) j = 0, . . . , i− 1qα(xi) = αe(xi) j = i

qα(xj) = e(xj) j = i+ 2, . . . , n+ 1,

mit einem beliebigen α > 0. Dies sind n+ 1 Bedingungen für die n+ 1 Unbekannten desPolynomraums Pn, damit ist qα eindeutig bestimmt. Der Punkte xi+1 wird ausgelassen.Nun seien L(n)

j für j = 0, . . . , n die Lagrange-Polynome zu den n+ 1 Punkten

x0, x1, . . . , xi, xi+2, . . . , xn+1.

255

Page 264: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Dann schreibt sich q als

qα(x) =i−1∑j=0

e(xj)L(n)j (x) + αe(xi)L(n)

i (x) +n+1∑j=i+2

e(xj)L(n)j−1(x). (9.31)

Hiermit gilt:

e(xj)qα(xj) =

e2 j = 0, . . . , i− 1αe2 j = i,

? j = i+ 1,e2 j = i+ 2, . . . , n+ 1.

Wir müssen die Stelle xi+1 betrachten. Hier gilt mit der Darstellung (9.31)

qα(xi+1) = qα(xi+1) + αe(xj)L(n)i (xi+1),

wobei q sich entsprechend (9.31) ergibt. Das Lagrange-Basispolynom L(n)i (x) kann zwi-

schen xi und xi+2 keinen Vorzeichenwechsel haben. Ansonsten hätte es n + 1 Nullstellenund wäre selbst das Nullpolynom. Daher gilt

e(xi+1)q(xi+1) = e(xi+1)q(xi+1) + α e(xi+1)e(xi)︸ ︷︷ ︸=e2>0

L(n)i (xi+1)︸ ︷︷ ︸

>0

.

Für α groß genug folgt:e(xi+1)qα(xi+1) > 0

im Widerspruch zum Satz von Kolmogoroff. Es muss somit eine Alternante existieren. �

Ist eine Alternante {x0, . . . , xn+1} bekannt, so kann hieraus die Bestapproximation

pn(x) =n∑i=0

αixi,

bestimmt werden. Für diese gilt

n∑i=0

αixik + (−1)kαn+1 = f(xk), k = 0, . . . , n+ 1, (9.32)

wobei der Koeffizienten αn+1 gerade den maximalen Fehler angibt

|αn+1| = ‖f − pn‖ = e

Durch (9.32) ist ein System von n + 2 linearen Gleichungen in den n + 2 Unbekanntenα0, . . . , αn+1 gegeben.

256

Page 265: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.6. Bestapproximation

Der Remez-Algorithmus Der Remez-Algorithmus baut auf dieser Idee auf. Falls eineAlternante x0, . . . , xn+1 bekannt ist, so können mit Hilfe von (9.32) die Koeffizientenα0, . . . , αn der Bestapproximation

p(x) =n∑i=0

αixi

bestimmt werden. Der Remez-Algorithmus versucht, die Alternante iterativ zu ermitteln.

Im Folgenden skizzieren wir das Vorgehen.

• Zunächst muss eine erste Schätzung für die Alternante x(0)0 , . . . , x

(0)n+1. Als Möglich-

keiten bieten sich gleichverteilte Stützstellen im Intervall, oder die Nullstellen desentsprechenden Tschebyscheff-Polynoms an.

• Wir gehen nun davon aus, dass eine Schätzung A(l) := {x(l)0 , . . . , x

(l)n+1} für die Al-

ternante vorliegt. Der Übergang l 7→ l + 1 besteht aus diesen Schritte:

1. Mit Hilfe von A(l) wird das lineare Gleichungssystem (9.32) gelöst. Die Lösungα

(l)0 , . . . , α

(l)n+1 bestimmt das Polynom

p(l)(x) =n∑j=0

α(l)j x

j .

2. Man bestimme die Fehlerfunktion

e(l)(x) = f(x)− p(l)(x).

und die Menge der Extremstellen y(l)0 , . . . , y

(l)m von e(l).

3. Falls n + 2 dieser Extremstellen die Alternanteneigenschafft approximativ er-füllen, so bricht die Iteration ab. Die Alternanteneigenschaft ist erfüllt, falls∣∣∣|e(l)(yi)| − ‖e(l)‖∞

∣∣∣‖e(l)‖∞

< tol, e(l)(yi) · e(l)(yi+1) < 0.

4. Falls keine Alternante vorliegt, so wird aus der Menge der Extremstellen y(l)0 , . . . , y

(l)m

sowie der Menge der bisherigen Punkte x(l)0 , . . . , x

(l)n+1 eine neue Schätzung ge-

wonnen.

Dabei wird der neue Punkt x(l+1)j als eine der Extremstellen y(l)

k gewählt, diemöglichst nahe an x(l)

j liegt und die Vorzeichenbedingung

e(l)(x(l+1)j ) · e(l)(x(l+1)

j−1 )

erfüllt. Falls dies nicht möglich ist, so werden die alten Punkte x(l)j weiter ver-

wendet.

257

Page 266: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Wir starten mit einer ersten Schätzung x(0)0 , . . . , x

(0)n+1, z.B. den Nullstellen des Tschebyscheff-

Polynoms Tn+1. Hierzu werden die Koeffizienten α(0)0 , . . . , α

(0)n+1 sowie das Polynom p(0)

bestimmt. Angenommen, die Fehlerfunktion

e(0)(x) := f(x)− p(0)(x),

hat die Alternanten-Eigenschaft, so bricht die Iteration ab. Ansonsten wird die Mengeder Extremwerte E(f, p(0)) von e(0) bestimmt. Ansonsten werden die Punkte in E(f, p(0))verwendet, um die Alternante zu verbessern. Punkte x(0)

i werden durch lokale Maxima,bzw. Minima aus E(f, p(0)) ersetzt.

Optimale Lagrange-Interpolation Abschließend wollen wir die Tschebyscheff-Approximationverwenden, um für eine Funktion f ∈ Cn+1[a, b] die optimale Lagrange-Interpolation, alsoeine optimale Wahl der Stützstellen zu erstellen. Es gilt laut Satz 9.11 für die allgemeineLagrange-Interpolation zu den paarweise verschiedenen Stützstellen x0, . . . , xn die Ab-schätzung

f(x)− pn(x) = f (n+1)(ξ)(n+ 1)!

n∏i=0

(x− xi),

mit einem Zwischenwert ξ. Ziel ist nun die Bestimmung der Stützstellen x0, . . . , xn, sodass

‖L‖∞,[a,b] → min, L(x) =n∏i=0

(x− xi).

Diese Stützstellenwahl ist dann die optimale für allgemeine Funktionen f ∈ Cn+1[a, b] undgeht nicht auf die spezielle Funktion ein. Diese Aufgabe kann als Bestapproximationsauf-gabe beschrieben werden. Es gilt

L(x) = xn+1 − g(x),

mit einem Polynom g ∈ Pn. Gesucht ist also die Bestapproximation g ∈ Pn zur Funktionf(x) = xn+1 im Intervall I = [a, b]. Aus Satz 9.91 wissen wir, dass die Fehlerfunktione(x) = f(x)− g(x) mindestens n+ 1 Nullstellen hat (zwischen den n+ 2 Extremstellen).

258

Page 267: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.6. Bestapproximation

Satz 9.92 (Optimale Stützstellen der Lagrange-Interpolation). Auf dem Intervall [−1, 1]ist die Tschebyscheff-Approximation g ∈ Pn zu f(x) = xn+1 gegeben durch

g(x) = xn+1 − 2−nTn+1(x),

mit dem Tschebyscheff-Polynom (siehe Satz 9.73)

Tn+1(x) = cos ((n+ 1) arccos(x)) .

Die Nullstellen von Tn+1(x)

xk = cos(π(2k + 1)2(n+ 1)

), k = 0, . . . , n,

sind die gesuchten optimalen Stützstellen der Lagrange-Interpolation auf [−1, 1]. Auf demallgemeinen Intervall [a, b] sind die optimalen Stützstellen gegeben durch

yk = a+ b− a2 (1 + xk).

Beweis: Die Nullstellen der Tschebyscheff-Polynome wurden bereits in Satz 9.73 be-stimmt. Mit Hilfe der rekursiven Beziehung (ebenso aus diesem Satz)

T0(x) = 1, T1(x) = x, Tn+1(x) = 2xTn(x)− Tn−1(x)

folgt

Tn+1(x) = 2nxn+1 + q(x),

mit einem q ∈ Pn. Andererseits ist Tn+1 gegeben als Vielfaches der Linearfaktoren

2−nTn+1(x) =n∏k=0

(x− xk) = L(x).

Hieraus folgt

max[−1,1]

|L(x)| = max[−1,1]

n∏k=0|x− xk| = 2−n max

[−1,1]|Tn+1(x)| = 2−n.

Die Funktion Tn+1(x) nimmt im Intervall [−1, 1] genau n+ 2 mal die Extremwerte ±1 an.Diese n+ 2 Extremstellen bilden eine Alternante für die eindeutige Bestapproximation zuf(x) = xn+1

g(x) = xn+1 − 2−nTn+1(x) ∈ Pn.

259

Page 268: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Es bleibt zu zeigen, dass diese Bestapproximation wirklich das Produkt |L(x)| in [−1, 1]minimiert:

max[−1,1]

|L(x)| = 2−n max[−1,1]

max |Tn+1(x)|

= max[−1,1]

∣∣∣xn+1 − (xn+1 − 2−nTn+1(x))∣∣∣ = max

[−1,1]

∣∣∣xn+1 − g(x)∣∣∣

≤ minp∈Pn

max[−1,1]

∣∣∣xn+1 − p(x)∣∣∣

≤ min−1≤y0<···<yn≤1

max[−1,1]

∣∣∣ n∏k=0

(x− yk)∣∣∣,

d.h. die Stützstellenwahl ist wirklich optimal. �

9.7. Trigonometrische Interpolation

Bisher haben wir uns ausschließlich mit der Interpolation in Polynomräume befasst. Indiesem Abschnitt betrachten wir die Interpolation mit trigonometrischen Polynomen, alsoFunktionen der Art

tn(x) = 12a0 +

m∑k=1

{ak cos

(2πkxω

)+ bk sin

(2πkxω

)},

wobei n = 2m und ak, bk ∈ R die reellen Koeffizienten sind. Für diese trigonometrischenPolynome gilt

tn(x) = tn(x+ ω),

d.h. ω > 0 ist die Periode der Funktion tn(x). Die trigonometrische Interpolation eignetsich somit zur Interpolation von periodischen Funktionen oder Daten. Die aus der Analy-sis bekannte Fourier-Analyse ist keine Interpolation, sondern kann als Bestapproximation(siehe Abschnitt 9.6) im Raum der trigonometrischen Funktionen betrachtet werden. ImFolgenden betrachten wir ohne Einschränkung die Periode ω = 2π, so dass sich die Trigo-nometrischen Basispolynome vereinfacht schreiben lassen als

tn(x) = 12a0 +

m∑j=1

{aj cos (jx) + bj sin (jx)

}. (9.33)

Im Folgenden untersuchen wir Interpolationsaufgabe

tn(xk) = yk, k = 0, . . . , n.

Dabei betrachten wir äquidistant verteilte Stützstellen im Invervall [0, 2π]. Im Rahmender trigonometrischen Interpolation wird sich dies als das typische Szenario erweisen:

xk = 2πkn+ 1 , k = 0, . . . , n.

260

Page 269: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.7. Trigonometrische Interpolation

Bei trigonometrischen Funktionen ist Betrachtung komplexer Zahlen oft einfacher. Wirdefinieren für Koeffizienten c0, . . . , cn ∈ C die 2π-periodische Funktion

t∗n(x) =n∑k=0

ckeikx,

mit der komplexen Einheit i =√−1. Es gilt

Satz 9.93 (Komplexe trigonometrische Interpolation). Es seien x0, . . . , xn ∈ [0, π) dien + 1 paarweise verschiedenen äquidistanten Stützstellen und y0, . . . , yn ∈ C Stützwerte.Dann ist das trigonometrische Interpolationspolynom

t∗n(xi) = yi, i = 0, . . . , n

eindeutig bestimmt. Die Koeffizienten bestimmen sich als

ck = 1n+ 1

n∑j=0

yje−ijxk .

Beweis: (i) Wir definierenw := eix, wk := eixk .

Dann schreibt sich das Polynom t∗n als

t∗n(x) =n∑k=0

cjwj ,

und die Interpolationsaufgabe als

t∗n(xk) = yk, k = 0, . . . , n.

Das Interpolationspolynom ist dann im Sinne der Lagrange-Interpolation eindeutig be-stimmt.

(ii) Zur Berechnung der Koeffizienten beobachten wir, dass die wk gerade die n + 1-tenEinheitswurzeln sind, denn:

wn+1k = exp (2πik) = 1 ∀k ∈ N.

Weiter gilt:wjk = exp

(2πijkn+ 1

)= wkj .

Dann istn∑j=0

yjw−jk =

n∑j=0

t∗n(xj)w−jk =n∑

j,l=0clw

ljw−jk =

n∑l=0

cl

n∑j=0

wl−kj =n∑l=0

cl

n∑j=0

wjl−k. (9.34)

261

Page 270: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Für eine n+ 1-te Einheitswurzel gilt:

0 = wn+1 − 1 = (w − 1)(wn + wn−1 + · · ·+ 1),

alson∑j=0

wl−kj ={

0 l 6= k

n+ 1 l = k,

da w0 = 1. Dann folgt mit (9.34) die Darstellung

n∑j=0

yjw−jk = (n+ 1)ck ⇔ ck = 1

n+ 1

n∑j=0

yjw−jk .

Aufgrund der periodischen Struktur der Basispolynome und der äquidistanten Verteilungder Stützstellen gilt

cn+1−k = 1n+ 1

n∑j=0

yje−ijxn+1−k = 1

n+ 1

n∑j=0

yje− 2iπj(n+1−k)

n+1 = 1n+ 1

n∑j=0

yje2iπjkn+1 =: c−k

(9.35)Der Bezug zwischen den komplexen Polynomen t∗n(x) und einer gesuchten reellen trigono-metrischen Interpolation tn(x) gelingt auf Basis der Eulerschen Formel

eix = cos(x) + i sin(x).

Satz 9.94 (Reelle trigonometrische Interpolation). Für n ∈ N gibt es zu gegebenen reellenZahlen y0, . . . , yn genau ein trigonometrisches Polynom der Form

tn(x) = 12a0 +

m∑k=1

(ak cos(kx) + bk sin(kx)

)+ θ

2am+1 cos((m+ 1)x

),

mit tn(xj) = yj für j = 0, . . . , n und

m ={n2 n geraden−1

2 n gerade, θ =

{0 n gerade1 n gerade

.

Die reellen Koeffizienten bestimmen sich als

ak = 2n+ 1

n∑j=0

yj cos(jxk), bk = 2n+ 1

n∑j=0

yj sin(jxk).

Beweis: (i) Es sei t∗n das nach Satz 9.93 bestimmte komplexe Interpolationspolynom mit

t∗n(xj) = yj , j = 0, . . . , n.

262

Page 271: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.7. Trigonometrische Interpolation

Wir definieren mit Hilfe von (9.35) die Koeffizienten

ak := ck + c−k, bk = i(ck − c−k), k = 1, . . . ,m, am+1 := 2cm+1.

Die Koeffizienten sind reell, denn

ck ± c−k = 1n+ 1

n∑j=0

yj((

cos(jxk)− i sin(jxk))±(

cos(jxk) + i sin(jxk)))

⇒ ak = 2n+ 1

n∑j=0

yj cos(jxk),

bk = 2n+ 1

n∑j=0

yj sin(jxk).

Für n = 2m+ 1 ungerade ist

m+ 1 = n+ 12 = (n+ 1)− n+ 1

2 = (n+ 1)− (m+ 1),

also am+1 = cm+1 + c−(m+1) ∈ R. Wir definieren das Polynom

tn(x) = a02 +

m∑k=1

(ak cos(kx) + bk sin(kx)

)+ θ

2am+1 cos((m+ 1)x

).

(ii) Wir zeigen nun, dass

tn(xj) = t∗n(xj), j = 0, . . . , n.

Es gilt:

tn(xj) = c0 +m∑k=1

((ck + c−k) cos(kxj) + i(ck − c−k) sin(kxj)

)+ θcm+1 cos

((m+ 1)xj

)= c0 +

m∑k=1

(ck(

cos(kxj) + i sin(kxj))

+ c−k(

cos(kxj)− i sin(kxj)))

+ θcm+1(

cos((m+ 1)xj) + i sin((m+ 1)xj)︸ ︷︷ ︸=0 für n=2m+1ungerade

)

= c0 +m∑k=1

(cke

ikxj + c−ke−ikxj

)+ θcm+1e

i(m+1)xj ,

da cos(x) = cos(−x) sowie − sin(x) = sin(−x). Wir konnten im Fall n = 2m+ 1 ungeradeden Term

sin ((m+ 1)xj) = sin(n+ 1

22πjn+ 1

)= sin(πj) = 0, j = 0, . . . , n.

einschieben. Mit Hilfe von (9.35), also c−k = cn+1−k und

e−ikxj = ei 2πkjn+1 = ei 2π(n+1−k)j

n+1 = ei(n+1−k)xj ,

263

Page 272: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

folgt

tn(xj) =n∑k=0

ckeikxjyj = 0,

d.h., die Interpolationsbedingung ist in allen Punkten erfüllt.

(iii) Es bleibt, die Eindeutigkeit dieser Interpolation zu zeigen. Hier können wir wie üblichvorgehen: zur Bestimmung der n+ 1 Koeffizienten a0, . . . , am+1 und b1, . . . , bm sind n+ 1Bedingungen tn(xj) = yj zu erfüllen. Wir haben gezeigt, dass dieses Gleichungssystem fürbeliebige Werte y0, . . . , yn lösbar ist. Die zugehörige n+ 1×n+ 1-Matrix hat somit vollenRang, ist regulär. Die Interpolation ist somit eindeutig bestimmt. �

Die trigonometrische Interpolation eignet sich zur Approximation periodischer Funktionen.Oft sind Funktionen nicht periodisch oder liegen überhaupt nur auf einem Intervall [a, b]vor. In diesem Fall kann die Funktion zunächst auf das Intervall [0, π] transformiert unddann periodisch fortgesetzt werden

f(x) ={f(x) x ∈ [0, 2π]f(x− 2jπ) x ∈ (2πj, 2π(j + 1))

Im Fall f(x) 6= f(2π) hat die periodisch fortgesetzte Funktion an den Punkten 2πj Uns-tetigkeitsstellen. Hier definieren wir

f(2πj) = 12(f(0) + f(2π)).

Diese Mittelwertbildung ist durch die Fourier-Entwicklung von Funktionen motiviert. Die-se konvergiert an Unstetigkeitsstellen gerade gegen den Mittelwert der beidseitigen Grenz-werte.

Wir gehen nun davon aus, dass eine stetige Funktion f ∈ C[0, π] mit f(0) = f(π) = 0vorliegt. Diese kann einfach auf zwei Arten fortgesetet werden. Die gerade Fortsetzung istdefiniert als

f(x) =

f(x) x ∈ [0, π]f(2π − x) x ∈ [π, 2π]2π − periodisch sonst,

(9.36)

die ungerade Fortsetzung als

f(x) =

f(x) x ∈ [0, π]−f(2π − x) x ∈ [π, 2π]2π − periodisch sonst.

(9.37)

Für diese beiden ergeben sich Spezialfälle bei der Berechnung der Koeffizienten ak und bk:

264

Page 273: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.7. Trigonometrische Interpolation

Satz 9.95 (Kosinus- und Sinustransformation). Es sei f ∈ C[0, π] eine Funktion mitf(0) = f(π) = 0. Für die trigonometrischen Interpolation der gerade Fortsetzung

xk = 2πkn+ 1 , yk =

{f(xk) k = 0, . . . ,m,f(2π − xk) k = m+ 1, . . . , n

gilt

c(x) = 12a0 +

m+1∑k=1

ak cos(kx), ak = 2m+ 1

m∑j=0

f(xj) cos(jxk).

Für die trigonometrische Interpolation der ungeraden Fortsetzung

xk = 2πkn+ 1 , yk =

{f(xk) k = 0, . . . ,m,−f(2π − xk) k = m+ 1, . . . , n

gilt

s(x) =m∑k=1

bk sin(kx), ak = 2m+ 1

m∑j=0

f(xj) sin(jxk).

Beweis: Wir betrachten zunächst die komplexen Koeffizienten. Im Fall der geraden Fort-setzung gilt mit yk = yn+1−k:

ck = 1n+ 1

n∑j=0

yje−ijxk = 1

n+ 1

n∑j=0

yn+1−je−ijxk

= 1n+ 1

n∑j=0

yje−i(n+1−j)xk = cn+1−k = c−k.

Also folgtbk = i(ck − c−k) = 0,

sowieak = ck + c−k = 2ck = 2

n+ 1

m∑j=0

yje−ijxk + 2

n+ 1

n∑j=m+1

yje−ijxk

= 2n+ 1

m∑j=0

yje−ijxk + 2

n+ 1

m∑j=1

yn+1−j︸ ︷︷ ︸=yj

e−i(n+1−j)xk

= 2n+ 1

m∑j=0

yje−ijxk + 2

n+ 1

m∑j=1

yjeijxk ,

dae−i(n+1−j)xk = e−i2π(1− j

n+1 )k = e−i2πkeijxk = eijxk (e−i2πk = 1).Hiermit folgt (bei Berücksichtigung von y0 = ym+1 = 0

ak = 4n+ 1

m∑j=1

yjeijxk + e−ijxk

2 = 2m+ 1

m∑j=1

yj cos(jxk).

Im Fall der Sinustransformation kann entsprechend vorgegangenwerden. �

265

Page 274: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

9.7.1. Schnelle Fourier-Transformation (FFT)

Die Transformation von Stützwerten y0, . . . , yn zu Koeffizienten heißt diskrete Fourier-transformation, bzw. im Falle einer geraden oder ungerade Fortsetzung diskrete Sinustrans-formation und diskrete Kosinustransformation. Dieser Prozess ist umkehrbar, d.h. es exis-tieren bijektive Abbildungen

{y0, . . . , yn} ↔ {a0, . . . , am+1, b1, . . . , bm},

sowie

{y0, . . . , ym} ↔{{a0, . . . , am+1} gerade Fortsetzung{b1, . . . , bm} ungerade Fortsetzung.

Die Basispolynome cos(kx) sowie sin(kx) können als die wesentlichen Schwingungen derperiodischen Funktion f(x) betrachtet werden. Die Koeffizienten ak, bk geben die jeweili-ge Dominanz der Frequenzen an. Die diskrete Fourier-Transformation dient einerseits zurAnalyse von Daten. Aus Messdaten können z.B. die dominanten Schwingungen von mecha-nischen Strukturen ermittelt werden. Auf der anderen Seite ist die Fourier-Transformationdie Grundlage für viele Kompressionsverfahren.

Das jpeg-Format für Bilder baut z.B. auf der Kosinus-Transformation auf. Ein Feld ausGrauwerten wird zunächst in Blöcke der Größe 8× 8 zerlegt. In jedem dieser Blöcke wirdeine Kosinus-Transformation erstellt. Im Anschluss werden einige der Koeffizienten (jenach Kompressionsgrad) auf Null gesetzt. Hierbei werden nicht einfach betragsmäßig klei-ne Werte abgeschnitten, stattdessen wird berücksichtigt, welche Unterschiede vom Augewie gut wahrgenommen werden. Die Rücktransformation der reduzierten Koeffizienten er-gibt das komprimierte Bild. Auch das mp3 -Format zur Audiokomprimierung basiert aufeiner Art Fouriertransformation des Signals. Je nach Frequenz und Amplitude werdenKoeffizienten reduziert.

Im Folgenden beschreiben wir mit der Fast Fourier Transformation (FFT) einen sehrschnellen Algorithmus zur Berechnung der Koeffizienten ak und bk. Wir wählen hierzu diekomplexe Schreibweise, so dann zunächst die komplexen Werte

ck =n∑j=0

yjwjk, k = 0, . . . , n, (9.38)

mit den Abkürzungenyj := 1

n+ 1yj , w := e−i 2πn+1 ,

zu berechnen sind. Aus diesen bestimmen sich ak und bk als

ak = ck + c−k, bk = i(ck − c−k). (9.39)

Die Berechnung der n+1 Werte ck mit dem Horner-Schema würde n2 +O(n) Operationenbenötigen. Eine effizientere Methode kann durch eine hierarchische Aufteilung der Summen

266

Page 275: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9.7. Trigonometrische Interpolation

erreicht werden. Für das Folgende sei n+ 1 = 2p für p ∈ N. Dann ist

ck =2p∑j=0

yjwjk

=2p−1−1∑j=0

(y2j(w2)jk + y2j+1(w2)jkwk

)

=2p−1−1∑j=0

y2j(w2)jk +2p−1−1∑j=0

y2j+1(w2)jkwk

(9.40)

Nun sei k1 ∈ {0, 1, . . . , 2p−1 − 1} der ganzzahlige Rest bei Division von k durch 2p−1, also

k ≡ k1 mod 2p−1.

Wegen wn+1 = w2p = 1 folgt für ein λ ∈ N

(w2)jk = (w2)λ2p−1j(w2)jk1 = (w2p)j(w2)jk1 = (w2)jk1 .

Hiermit lässt sich (9.40) schreiben als

ck =2p−1−1∑j=0

y2j(w2)jk1 + wk2p−1−1∑j=0

y2j+1(w2)jk1 ,

oder aberck = ck1 + wk ck1 , k = 0, . . . , 2p − 1, k ≡ k1mod 2p−1,

wobei

ck1 =2p−1−1∑j=0

y2j(w2)jk1 , ck1 =2p−1−1∑j=0

y2j+1(w2)jk1 , k1 = 0, . . . , 2p−1 − 1.

Zur Berechnung der n+ 1 = 2p Größen c0, . . . , cn genügt es also, die zweimal 2p−1 Größenc0, . . . , c2p−1−1 und c0, . . . , c2p−1−1 zu berechnen. Die n + 1 = 2p-dimensionale Fourier-Transformation wurde durch zwei Fourier-Transformationen der Dimension 2p−1 ersetzt.Würden wir diese Koeffizienten jeweils mit dem Horner-Schema bestimmen, so hätten wirbereits den Aufwand auf die Hälfte reduziert, da die quadratische Laufzeit nun wenigerzum Tragen kommt:

2 ·(n

2

)2= n2

2 .

Der FFT-Algorithmus basiert nun auf rekursiver Anwendung dieser Technik. Die 2 Fourier-Transformationen der Dimension 2p−1 werden durch 4 Transformationen der Dimension2p−2 ersetzt. Schließlich ergeben sich 2p Fourier-Transformationen der trivialen Dimension1. Diese können ohne weiteren Rechenaufwand durch Zuweisung der Funktionswerte yj“gelöst” werden. Es gilt:

267

Page 276: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

9. Interpolation und Approximation

Satz 9.96 (Schnelle Fourier-Transformation). Im Fall n + 1 = 2p berechnet die SchnelleFourier-Transformation die n+ 1 Koeffizienten c0, . . . , cn mit

2(n+ 1) log2(n+ 1)

komplexen Operationen.

Beweis: Angenommen, durch rp sei der Aufwand gegeben, die n+ 1 = 2p Komponentenzu berechnen. Sind ck1 , ck1 bekannt, so sind hierfür die Potenzen wk und die Summen zuberechnen:

ck = ck1 + wk ck1 , k = 0, . . . , n

Hierzu sind (n + 1) + (n − 1) = 2n ≤ 2 · 2p komplexe Operationen notwendig. Iterativergibt sich also

rp ≤ 2 · rp−1 + 2 · 2p, p = 1, 2, . . . .

Wir zeigen per Induktion rp ≤ 2p · 2p. Wir starten mit r0 = 0. Dann ist

rp ≤ 2 · rp−1 + 2 · 2p = 2 · (2(p− 1) · 2p−1) + 2 · 2p = 2p · 2p = 2(n+ 1) log2(n+ 1).

Bei der praktischen Durchführung der schnellen Fourier-Transformation startet man mitden 2p atomaren Koeffizienten, welche gerade durch die stützwerte yj gegeben sind. Imanschluss werden die rekursiven Formeln

ck = ck1 + ck1 , k = 0, . . . , 2p − 1, k ≡ k1mod 2p−1,

durchgeführt. Bei n+ 1 = 1 024 benötigt die Schnelle Fourier-Transformation 20 480 kom-plexe Operationen. Auf der Basis des Horner-Schemas würden 1 000 000 komplexe Ope-rationen benötigt. Die schnelle Fourier-Transformation ist eines der wenigen Verfahren,welche zur Lösung der Aufgabe - falls sie anwendbar ist - ausschließlich Vorteile mit sichbringt. Dies ist selten. Die meisten “fortgeschrittenen” numerischen Methoden bringengewisse Nachteile mit sich, z.B. höhere Anforderungen an die Regularität (bei der Gauss-Approximation) oder geringere Robustheit (bei der Newton-Iteration bei schlechten Start-werten). Als ein weiteres Verfahren dieser Art stellt sich das Mehrgitterverfahren zur Lö-sung dünn besetzter Gleichungssysteme heraus. Kann es angewendet werden, so wird einefeste Fehlerreduktion in linearem Aufwand O(n) erreicht.

268

Page 277: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

Index

l1-Norm, 22

Ahnliche Matrizen, 100Approximation, 181Aufwand, elementare Operation, 3Ausloschung, 13

Banach’scher Fixpunktsatz, 132Bandmatrix, 49Basis, 21Besetzungsmuster, 48Boxregel, 210

Cauchy-Schwarz Ungleichung, 23Charakteristisches Polynom, 89Cholesky-Zerlegung, 46Cuthill-McKee, 51

Darstellungsfehler, 12Defekt, 54, 55, 123

Lineares Gleichungssystem, 55Defektkorrektur, 54, 56denormalisierte Zahlen, 9Diagonaldominanz, 45

strikte, 150Differenzenquotient

einseitig, 199zentral, 199zweite Ableitung, 200

direktes Verfahren, 29Dividierte Differenzen, 186

Eigenvektor, 25Eigenwert, 25Eigenwerte, 89elementare Operation, 3Energienorm, 161

euklidische Norm, 22euklidischer Raum, 23Euler-Maclaurinsche Summenformel, 218Exponent, 8Extrapolation zum Limes, 202

Fast Fourier Transformation, 266Fixkommadarstellung, 8floating-point processing unit, 10FLOPS, 14Fourier-Entwicklung, 243FPU, 10Frobeniusmatrix, 35Frobeniusnorm, 27

Gaus-Legendre, 225Gaus-Seidel-Verfahren, 149Gaus-Tschebyscheff, 237Gauss-Quadratur, 223Gerschgorin-Kreise, 90Gewichtsfunktion, 238Givens-Rotation, 75Gleitkommadarstellung, 8GPU, 10Gradientenverfahren, 163Gram-Schmidt Verfahren, 62, 66graphics processing unit, 10

Hessenberg-Matrix, 77, 101Hilbertraum, 23Horner-Schema, 2, 3Householder-Transformation, 69

IEEE 754, 9Interpolation, 181

Hermite, 191Lagrangesche Darstellung, 184

269

Page 278: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

Index

Newtonsche Darstellung, 185Intervallschachtelung, 114Inverse Iteration, 97Irreduzibel, 151iterative Verfahren, 29

Jacobi-Verfahren, 149

kleinste Fehlerquadrate, 80Konditionszahl, 6

Matrix, 30Konditionszahl einer Matrix, 32Kontraktion, 131Konvergenz

iterativer Verfahren, 128

Lagrange Interpolationsaufgabe, 183Landau-Symbole, 4Least-Squares Lösung, 80Legendre-Polynome, 233Line-Search, 143Lineares Gleichungssystem

überbestimmt, 79Lipschitz-stetig, 131LR-Verfahren zur Eigenwertberechnung,

100

Mantisse, 8Maschinengenauigkeit, 12Matrix

dunn besetzt, 48orthogonal, 59

Matrixnorm, 26induzierte, 26vertraglich, 26

Maximumsnorm, 22Mittelpunktsregel, 210

Nachiteration, 56Neville-Schema, 187Newton-Cotes Formeln, 214Newton-Verfahren

1D, 117gedampftes, 124vereinfachtes, 126

Norm, 21

l1, 22euklidisch, 22

Normalgleichungssystem, 80Normaquivalenz, 22Nullstellensuche, 110

orthogonal, 23Orthogonalbasis, 24Orthonormalbasis, 24

Parallelogrammidentitat, 23Pivot-Element, 39Pivot-Matrizen, 40Pivotisierung, 39Polynomauswertung, 2Postprocessing, 204Potenzmethode, 95Prähilbertraum, 244Prahilbertraum, 23

QR-Verfahren zur Eigenwertberechnung,99

QR-Zerlegung, 60Quadratur, 209Quadraturgewicht, 209

Rayleigh-Quotient, 89Relaxation, 155Remez-Algorithmus, 257Residuum, 123Romberg-Verfahren, 218Ruckwartseinsetzen, 34Runges Phänomen, 191

Satz von Kolmogoroff, 253Satz von Newton-Kantorovich, 137Schnelle Fourier Transformation, 266Schrankensatz, 134Simpson-Regel, 214Skalarprodukt, 22SOR-Verfahren, 154Sparsity Pattern, 48Spektralnorm, 27Spektralradius, 25Spektrum, 25Spline, 196

270

Page 279: Einführung in die Numerische Mathematikrichter/pdf-files/numerik0.pdf · Vorwort ErsteAuflage Dieses Vorlesungsskriptum ist begleitend zur Vorlesung Einführung in die Numerische

Index

Stutzstellen, 209

Taylor-Entwicklung, 182Trapezregel, 210Tridiagonalmatrix, 48trigonometrische Polynome, 260Tschebyscheff-Approximation, 251Tschebyscheff-Polynome, 239

Uberrelaxation, 155unitarer Raum, 23Unterrelaxation, 155

Vandermonde-Matrix, 184

Zeilensummenkriteriumschwaches, 152starkes, 150

271