70
N UMERISCHE M ATHEMATIK I Wintersemester 2009/2010 Leibniz Universität Hannover P ROF.D R .MARC S TEINBACH Skript zur Vorlesung

Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

Embed Size (px)

Citation preview

Page 1: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

NUMERISCHE MATHEMATIK I

Wintersemester 2009/2010

Leibniz Universität Hannover

PROF. DR. MARC STEINBACH

Skript zur Vorlesung

Page 2: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

Prof. Dr. Marc SteinbachInstitut für Angewandte MathematikLeibniz Universität HannoverWelfengarten 130167 [email protected]

Literaturempfehlungen zur Vorlesung

P. Deuflhard, A. Hohmann.Numerische Mathematik I. De Gruyter, Berlin, 1993.

M. Hanke-Bourgeois.Grundlagen der Numerischen Mathematik und des Wissenschaftlichen Rechnens.Teubner, Stuttgart, 2002.

A. Quarteroni, R. Sacco, F. Saleri.Numerische Mathematik 1. Springer, Berlin, 2002.

A. Quarteroni, R. Sacco, F. Saleri.Numerische Mathematik 2. Springer, Berlin, 2002.

Page 3: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

Kapitel 0

Aufgaben und Ziele der NumerischenMathematik

Modellgestützte Analyse, Simulation und Optimierung von Vorgängen in Naturwissenschaften, Technik,Wirtschaft usw. (Physik, Chemie, Biologie; Baumechanik, Strömungsmechanik, Elektrotechnik, Mecha-tronik; Finanzwesen, Aktien-, Waren- und Energiemärkte):

1. Mathematische Modellbildung mittels experimentell verifizierter Gesetze führt auf einemathema-tische Problemstellung, z. B. eine Minimierungsaufgabe. In anspruchsvollen technischen Anwen-dungen tritt hierbei oft ein Anfangs- oder Randwertproblemfür eine Differentialgleichung auf. Einbrauchbares mathematisches Modell sollte eine eindeutigeLösung besitzen und diese sollte stetigvon den vorgegebenen Daten (z. B. den Anfangs- oder Randwerten) abhängen.

2. Die Lösung solcher Aufgaben lässt sich in der Regel nicht geschlossen angeben, auch nicht un-ter Einsatz von Computeralgebra-Software. Stattdessen müssennumerische Verfahrenverwendetwerden, mit denen eine Näherungslösung berechnet wird. Aufgabe der Numerischen Mathematikist die Entwicklung und Analyse numerischer Verfahren. Mitnumerischen Rechenmethoden werdenauf dem Computer approximative Zahlenwerte für die Lösung mathematischer Aufgabenstellungenbestimmt. Diese unterscheiden sich grundlegend von symbolischen Rechenverfahren der Compu-teralgebra, bei denen mathematische Regeln (Umformungen,Differentiations- und Integrationsre-geln usw.) zur Manipulation von Formelausdrücken verwendet werden.

3. Visualisierung, d. h. geeignete graphische Darstellung der erhaltenen Näherungslösung, um eineVorstellung von den simulierten Vorgängen zu gewinnen und evtl. das Modell und die numerischenVerfahren zu verbessern.

Als Wegweiser durch die in dieser Vorlesung behandelten numerischen Verfahren wird uns das folgendeBeispiel eines mathematischen Modells dienen. Mit diesem Modell lassen sich die verschiedenen Grund-aufgaben der numerischen Mathematik im Laufe der Vorlesungverdeutlichen.

Beispiel(Elastische Biegung eines Balkens).Ziel ist die Berechnung der Durchbiegung eines an beiden Enden eingespannten Balkens aufgrund eineraufliegenden Last.

-

6

???????????

f(x) L x

y

Gesucht ist die Funktiony(x) für 0 6 x 6 L, welche die Auslenkung des Balkens beschreibt. Die Aus-lenkung ist physikalisch dadurch bestimmt, dass sich der Balken in einem Gleichgewichtszustand befindet,

Page 4: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

2 Numerische Mathematik I

in dem die potentielle Energie einen minimalen Wert annimmt. Für die potentielle Energie des Balkenslässt sich, für den Fall „kleiner“ Auslenkungeny(x), aus den Gesetzen der Kontinuumsmechanik folgendeFormel herleiten:

W(y) =EJ

2

∫ L

0y ′′(x)2 dx

︸ ︷︷ ︸

innere (Biege-)Energie

+

∫ L

0f(x)y(x) dx

︸ ︷︷ ︸

Lastpotential

.

Dabei istE der sogenannte Elastizitätsmodul, eine vom Material abhängige positive Zahl. Ists die Di-cke des Balkens, dann bezeichnetJ = s4/12 das zugehörige Biegemoment. Die Funktionf schließlichbezeichnet die auf den Balken wirkende Lastverteilung.Die Tatsache, dass der Balken an den beiden Enden eingespannt ist, wird durch die Randbedingungeny(0) = 0, y ′(0) = 0 (am linken Ende) sowiey(L) = y ′(L) = 0 (am rechten Ende) berücksichtigt. Dasmathematische Modell für die Bestimmung des Gleichgewichtszustandes eines belasteten Balkens bestehtnun in der folgenden Minimierungsaufgabe:Bestimme unter allen zweimal stetig differenzierbaren Funktioneny ∈ C2[0,L], welche die Randbedingun-geny(0) = y ′(0) = 0 undy(L) = y ′(L) = 0 erfüllen, diejenige, die das folgende Funktional minimiert:

W(y) =EJ

2

∫ L

0y ′′(x)2 dx +

∫ L

0f(x)y(x) dx.

Die Lösung dieses Minimierungsproblems lässt sich allerdings nur in seltenen Spezialfällen geschlossenangeben. Stattdessen ist man darauf angewiesen, unter Einsatz des Computers eine hinreichend genaueApproximation mit numerischen Methoden zu berechnen.

Natürlich kann man dazu nicht mit dem unendlichdimensionalen Vektorraum der zweimal stetigen Funk-tionen, deren Funktionswert und Ableitung am linken und rechten Intervallende verschwinden, arbeiten.Stattdessen müssen diese Funktionen durch einfachere angenähert werden, die sich mit endlich vielenWerten beschreiben lassen, beispielsweise durch Polynomevon vorgegebenem Grad. Dies führt uns aufdie Thematik derInterpolation von Funktionen , die im folgenden Kapitel behandelt wird. Für die Inte-grale, die bei der Auswertung des EnergiefunktionalsW(y) zu berechnen sind, lässt sich in der Regel keineexplizite Formel für die Stammfunktion angeben. Stattdessen muss hierzu auf Methoden dernumerischenIntegration zurückgegriffen werden, die Gegenstand des zweiten Kapitels sein werden.Danach folgt ein Kapitel mit grundsätzlichen Untersuchungen zu der Frage, inwieweit man sich auf diemittels numerischen Methoden berechneten Näherungslösungen überhaupt verlassen kann. Der Begriffder Kondition eines mathematischen Problems beschreibt dabei die Empfindlichkeit der Lösung gegen-über Störungen in den Eingangsdaten. Dagegen beschreibt die Stabilität eines Algorithmus, ob dieser diegewünschten Werte auch unter dem Einfluss der unvermeidlichen Rundungsfehler genügend genau appro-ximiert.Die Einschränkung der beim elastischen Balken auftretenden Minimierungsaufgabe auf einen endlich-dimensionalen Vektorraum von Funktionen führt auf lineareGleichungssysteme, mit deren numerischerLösung wir uns in den weiteren Kapiteln dieser Vorlesung beschäftigen werden. Dabei unterscheidet manzwischendirekten Verfahren wie dem Gauß-Algorithmus und seinen Varianten sowieiterativen Ver-fahren, die bei Systemen mit sehr vielen Unbekannten zum Einsatz kommen. Abschließend werden nochiterative Verfahren zur numerischen Lösungnichtlinearer Gleichungssysteme, wie sie häufig aus mathe-matischen Modellen resultieren, behandelt.

Page 5: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

Kapitel 1

Interpolation von Funktionen

Um die für die Auslenkung des elastischen Balkens in Frage kommenden Funktioneny(x), 0 6 x 6 L,mit endlich vielen Parametern näherungsweise darstellen zu können, benötigen wir geeignete Vektorräumemöglichst einfacher Funktionen. Die allgemeine Problemstellung der Interpolation ist die folgende:Auf einem reellen Intervall[a,b] seien eine Funktionf : [a,b] → R sowie ausgewählteStützpunktea 6

x0 < x1 < · · · < xn 6 b gegeben. Dazu bestimme man eine „einfachere“ Funktionp : [a,b] → R mitp(xi) = f(xi) für i = 0, 1, . . . ,n.

1.1 Polynom-Interpolation

Interpolationsaufgabe: Zu paarweise verschiedenen Stützpunkten (oderKnoten) x0,x1, . . . ,xn ∈ [a,b]

bestimme man ein Polynomp ∈ Pn (vom Gradn),

p(x) = anxn + · · · + a1x + a0 mit a0,a1, . . . ,an ∈ R,

welchesf bezüglich der Stützpunkteinterpoliert, d. h.p(xi) = fi := f(xi) für i = 0, . . . ,n erfüllt.Zusammengefasst bilden dieInterpolationsbedingungenoffenbar ein lineares Gleichungssystem (LGS):

1 x0 . . . xn0

1 x1 . . . xn1

......

.. ....

1 xn . . . xnn

a0

a1...

an

=

f0

f1...

fn

∈ Rn+1.

Durch geschickte Wahl einer Basis{Li(x)}ni=0 ⊂ Pn statt{xi}ni=0 erhält man ein äquivalentes LGS mit derEinheitsmatrixI als Koeffizientenmatrix. Man sieht leicht, dass dieLagrange-PolynomeL0, . . . ,Ln ∈ Pn

eine solche Basis bilden:Li ist definiert als Lösung der speziellen Interpolationsaufgabe

Li(xi) = 1, Li(xj) = 0 für j 6= i.

Offenbar erfüllt

Li(x) :=

n∏

j=0,j 6=i

x − xj

xi − xj

diese Bedingung. DasInterpolationspolynomp ergibt sich dann unmittelbar zu

p(x) =

n∑

i=0

fiLi(x).

Damit ist die Existenz einer Lösung der Interpolationsaufgabe bewiesen. Eindeutigkeit: Seienp,q ∈ Pn

mit p(xi) = q(xi) = fi für i = 0, . . . ,n. Das Polynomp − q ∈ Pn hat dannn + 1 Nullstellen, also giltnach dem Fundamentalsatz der Algebrap ≡ q.

Page 6: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

4 Numerische Mathematik I

Satz 1.1.Zun+1 paarweise verschiedenen Stützpunktenxi mit vorgegebenen Stützwertenfi, i = 0, . . . ,n, existiertgenau ein Interpolationspolynom vom Gradn.

Folgerung 1.2.SeiV ein Funktionenraum, derPn als Untervektorraum enthält. Dann ist die Polynom-Interpolation aufVbzgl.x0, . . . ,xn eine AbbildungP ≡ PV ,x0,...,xn

: V → Pn, und zwar eine lineare Projektion.

Beweis.Nach Satz 1.1 istP Abbildung. Seienf,g ∈ V, α ∈ R undp := P(f), q := P(g). Man rechnetnach:P(αf) = αp, P(f + g) = p + q (Linearität) undP(P(f)) = p = P(f) (Projektionseigenschaft).

Mit der Darstellung des Interpolationspolynoms über die Lagrange-Polynome haben wir auch ein numeri-sches Verfahren zur Polynominterpolation. Zur effizientenAuswertung der Formel

p(x) =

n∑

i=0

fi

n∏

j=0,j 6=i

x − xj

xi − xj

für beliebigex ∈ [a,b] sind jedoch einige Überlegungen angebracht. Wir leiten im folgenden einen Algo-rithmus zur effizienten Auswertung dieser Formel her.Dazu führen wir dasKnotenpolynomωn+1(x) := (x − x0) · · · (x − xn) ein und sehen, dass die Lagrange-Polynome die Identität

Li(x) =ωn+1(x)

x − xi

n∏

j=0,j 6=i

1xi − xj

erfüllen. Mit den Gewichten

wi :=

n∏

j=0,j 6=i

1xi − xj

, i = 0, . . . ,n,

lautet die resultierende Formel für die Auswertung des Interpolationspolynoms an einer Stellex:

p(x) =

n∑

i=0

fi

ωn+1(x)

x − xi

wi = ωn+1(x)

n∑

i=0

fiwi

x − xi

.

Algorithmus (Berechnung der Gewichtewi für die Polynominterpolation).

for k = 0 ton dofor i = 0 tok − 1 do

wi = wi(xi − xk)

end forwk = 1for i = 0 tok − 1 do

wk = wk(xk − xi)

end forend forfor k = 0 ton do

wk = 1/wk

end for

Der Aufwand für jede Auswertung an einem Punktx bei ebenfalls variablen Stützwertenfi beträgt nachanfänglicher Berechnung dern+1 Gewichtewi: 2n+1 Additionen bzw. Subtraktionen, 3n+3 Multiplika-tionen bzw. Divisionen. Für gegebene Stützwertefi reduziert sich der Aufwand umn+1 Multiplikationen,wenn man die Produktefiwi vorab berechnet.

Satz 1.3(Fehlerdarstellung zur Polynom-Interpolation).Die Funktionf sei(n + 1)-mal stetig differenzierbar,f ∈ Cn+1[a,b]. Dann gibt es zu jedemx ∈ [a,b] einξ ∈ (a,b) so, dass für das Interpolationspolynomp(x) bezüglich der Knotenx0,x1, . . . ,xn gilt:

f(x) − p(x) =f(n+1)(ξ)

(n + 1)!ωn+1(x).

Page 7: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

1. Interpolation von Funktionen 5

-1

-0.5

0

0.5

1

-1 -0.5 0 0.5 1

Abbildung 1.1: Tschebyschow-PolynomeT0, . . . ,T5

Beweis.Wir haltenx ∈ [a,b] fest und betrachten den Fallx 6= xi, i = 0, . . . ,n. Setze

F(x) := f(x) − p(x) −f(x) − p(x)

ωn+1(x)ωn+1(x).

F besitzt mindestensn + 2 Nullstellen in[a,b]:

F(xi) = f(xi) − p(xi) −f(x) − p(x)

ωn+1(x)ωn+1(xi)︸ ︷︷ ︸

=0

= 0, i = 0, . . . ,n,

F(x) = f(x) − p(x) −f(x) − p(x)

ωn+1(x)ωn+1(x) = 0.

Nach dem Satz von Rolle besitztF ′ (mindestens)n + 1 Nullstellen in(a,b), . . . ,F(n+1) (mindestens) eineNullstelleξ in (a,b). Es folgt

0 = F(n+1)(ξ) = f(n+1)(ξ) − p(n+1)(ξ)︸ ︷︷ ︸

=0

−f(x) − p(x)

ωn+1(x)ω

(n+1)

n+1 (ξ)︸ ︷︷ ︸

=(n+1)!

=⇒ f(x) − p(x) =f(n+1)(ξ)

(n + 1)!ωn+1(x)

Bemerkung.Aus Satz 1.3 ergibt sich unmittelbar:

|f(x) − p(x)| 61

(n + 1)!max

ξ∈[a,b]|f(n+1)(ξ)| · |ωn+1(x)| =

‖f(n+1)‖∞(n + 1)!

|ωn+1(x)|.

Definition (Tschebyschow-Polynome 1. Art).Die Tschebyschow-Polynome 1. Art(Abb. 1.1) sind rekursiv definiert durch:

T0(t) := 1, T1(t) := t, Tk+1(t) := 2tTk(t) − Tk−1(t), k = 1, 2, . . .

Lemma 1.4(Eigenschaften der Tschebyschow-Polynome 1. Art).

(a) Für t ∈ [−1, 1] gilt Tk(t) = cos(k arccost).

(b) Für k > 1 gilt Tk(t) = 2k−1tk + ck−1tk−1 + · · ·+ c1t + c0 mit ck−1, . . . ,c0 ∈ R, d. h., der führende

Koeffizient vonTk(t) ist 2k−1.

Page 8: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

6 Numerische Mathematik I

(c) Es gilt |Tk(t)| 6 1 für t ∈ [−1, 1].

Beweis.(a) Fürk = 0 undk = 1 ist die Formel offenbar richtig. Weiter gilt

cos((k ± 1) arccost) = cos(k arccost) cos(arccost) ∓ sin(k arccost) sin(arccost)

=⇒ cos((k + 1) arccost) + cos((k − 1) arccost) = 2t cos(k arccost),

d. h., die Rekursionsvorschrift für die Tschebyschow-Polynome. (b) folgt direkt aus der Rekursionsformel,(c) folgt aus (a).

Beispiel.Nullstellen vonTn+1(x) als Stützpunkte für die Polynom-Interpolation auf[−1, 1] :

Tn+1(x) = 0 ⇐⇒ (n + 1) arccosx =

(

j +12

)

π, j ∈ Z ⇐⇒ x = cos

(2j + 1

2(n + 1)π

)

, j ∈ Z.

Umsortierung:j = n − i

xi = cos

(2(n − i) + 1

2(n + 1)π

)

= − cos

(2i + 1

2(n + 1)π

)

, i = 0, 1, . . . ,n.

Das zugehörige Knotenpolynom ist (vgl. Lemma 1.4 (b))

ωn+1(x) =1

2nTn+1(x) und nach Lemma 1.4 (c) gilt max

x∈[−1,1]|ωn+1(x)| =

12n

.

Zum Vergleich bei der Verwendung gleichverteilter Stützpunkte

xi = −1 + 2i

n, ωn+1(x) =

n∏

i=0

(

x + 1 − 2i

n

)

.

n 5 10 20

maxx∈[−1,1]|ωn+1(x)| 6.9· 10−2 8.5· 10−3 2.3· 10−4

maxx∈[−1,1]|ωn+1(x)| 3.1· 10−2 9.8· 10−4 9.5· 10−7

Beispiel.Wir betrachten die Interpolation der Funktionf ∈ C∞[−1, 1] mit

f(x) :=

{

0 für x ∈ [−1, 0],

e−1/x für x ∈ (0, 1].

Die Abbildungen 1.2 und 1.3 zeigen deutlich, dass die Differenz zwischen dem Interpolationspolynom undder zu interpolierenden Funktionf bei Verwendung der Tschebyschow-Knoten erheblich kleinerist.

Dass die Nullstellen der Tschebyschow-Polynome bezüglichder Abschätzung aus Satz 1.3 die optimalenKnoten für die Polynominterpolation sind, ist die Aussage des folgenden Satzes.

Satz 1.5.Für jedes Polynomqn+1 der Form

qn+1(x) = (x − x0)(x − x1) · · · (x − xn)

gilt:

maxx∈[−1,1]

|qn+1(x)| >1

2n

(

=1

2nmax

x∈[−1,1]|Tn+1(x)|

)

.

Page 9: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

1. Interpolation von Funktionen 7

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

-1 -0.5 0 0.5 1

f(x)gleichm.Tscheb.

Abbildung 1.2: Polynominterpolation vom Grad 5

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

-1 -0.5 0 0.5 1

f(x)gleichm.Tscheb.

Abbildung 1.3: Polynominterpolation vom Grad 10

Beweis (Widerspruch).Angenommen, es gibt ein Polynomqn+1 der Form

qn+1(x) = (x − x0)(x − x1) · · · (x − xn),

so dass|qn+1(x)| < 2−n für alle x ∈ [−1, 1] gilt. Dann istp(x) := qn+1(x) − 2−nTn+1(x) ∈ Pn, alsoein Polynom vom Gradn, für das an den Punktenξj = cos(jπ/(n + 1)), j = 0, . . . ,n + 1 gilt:

p(ξj) = qn+1(ξj) − 2−n cos((n + 1) arccosξj)

= qn+1(ξj) − 2−n cos(jπ) = qn+1(ξj) − 2−n(−1)j, j = 0, . . . ,n + 1.

Page 10: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

8 Numerische Mathematik I

Wir haben somit

p(ξj) = qn+1(ξj) − 2−nTn+1(ξj)

{

< +2−n − 2−n = 0 falls j gerade,

> −2−n + 2−n = 0 falls j ungerade.

Dies bedeutet, dassp in jedem der Intervalle(ξj,ξj+1), j = 0, . . . ,n eine Nullstelle besitzt. Somit mussp ≡ 0 gelten im Widerspruch zur Annahme.

1.2 Spline-Interpolation

Bei der Polynominterpolation wurde die Approximationsgüte durch Erhöhung des Polynomgrades verbes-sert. Diese Vorgehensweise hat jedoch folgende Nachteile:

• die Abschätzung für den Interpolationsfehler hängt von Ableitungen höherer Ordnung ab,

• die Interpolationspolynome neigen zu starken Oszillationen.

Grundidee der Spline-Interpolation: berechne zwischen den Knoten separate Polynome mit identischem(und relativ kleinem) Polynomgrad, so dass in den Knoten dieFunktion interpoliert wird und zusätzlichgeeignete Übergangsbedingungen erfüllt sind.

Definition (Spline).Zu n + 1 Stützpunktena = x0 < · · · < xn = b ist durchT := {[x0,x1], . . . ,[xn−1,xn]} eineZerlegungdes Intervalls[a,b] gegeben. EinSplinevom Gradk bezüglichT ist eine Funktions ∈ Ck−1[a,b], die aufjedem Intervall[xi−1,xi], i = 1, . . . ,n, mit einem Polynomsi ∈ Pk übereinstimmt. Wir bezeichnen denRaum der Splines vom Gradk bezüglichT mit Sk,T.

Beispiel(k = 1, linearer Spline, dimS1,T = n + 1).

����````` XX`````t

t

t tt

t

a = x0 x1 x2 x3 x4 x5 = b

s1 s2 s3 s4s5

Lemma 1.6.Für die Dimension des Spline-RaumesSk,T gilt: dimSk,T 6 n + k.

Beweis.In [x0,x1] betrachten wir ein beliebiges Polynoms1 ∈ Pk, alsok + 1 freie Parameter. Fürsi(x),i = 2, . . . ,n sind jeweils diek Anfangswertesi(xi−1), s ′

i(xi−1), . . . ,s(k−1)

i (xi−1) durch die Bedingungs ∈ C(k−1)[a,b] festgelegt. Somit bleibt für jedessi, i = 2, . . . ,n, ein freier Parameter, also insgesamt(k + 1) + (n − 1) = n + k.

Wir wenden uns dem Spezialfallkubischer Splines, d. h.k = 3 zu. Nach Lemma 1.6 gilt dimS3,T 6 n+ 3.Wir gebenn+ 3 Bedingungen vor und zeigen später, dass diese Aufgabe eineLösung besitzt. Daraus folgtdann dimS3,T = n + 3.Neben denn + 1 Interpolationsbedingungens(xi) = fi, i = 0, . . . ,n, sind folgende Möglichkeiten für dierestlichen zwei Bedingungen üblich:

(A) s ′(a) = f ′0, s ′(b) = f ′n zu vorgegebenen Wertenf ′0, f ′n ∈ R (vollständiger Spline),

(B) s ′′(a) = 0, s ′′(b) = 0 (natürlicher Spline),

(C) s ′(a) = s ′(b), s ′′(a) = s ′′(b) unter der Zusatzvoraussetzungf0 = fn (periodischer Spline).

Page 11: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

1. Interpolation von Funktionen 9

-0.25

0

0.25

0.5

0.75

1

1.25

0 0.2 0.4 0.6 0.8 1

C0 C6

Abbildung 1.4: Basisfunktionen für den Raum der linearen Splines (h = 0.1)

1.3 Spline-Basen

Zur besseren Übersichtlichkeit beschränken wir uns auf denFall einer Zerlegung inn Teilintervalle gleicherLänge,

T := {[a + (j − 1)h,a + jh] : j = 1, . . . ,n}, h := (b − a)/n.

Die Stützpunkte für die Spline-Interpolation sind also gegeben durchxj = a + jh, j = 0, . . . ,n. Im Fallk = 1 (lineare Splines) ist es naheliegend, für die BasisfunktionenCi, i = 0, . . . ,n, zu fordern, dass

Ci(xi) = 1, Ci(xj) = 0 für j 6= i

erfüllt ist. Damit lässt sich jede lineare Spline-Funktions ∈ S1,T schreiben als

s(x) =

n∑

i=0

s(xi)Ci(x).

Die Basisfunktionen füri = 1, . . . ,n − 1 sind also gegeben durch:

Ci(x) :=

(x − xi−1)/h falls x ∈ [xi−1,xi],

(xi+1 − x)/h falls x ∈ [xi,xi+1],

0 sonst.

Für i ∈ {0,n} muss man die Basisfunktion am linken bzw. rechten Ende des Intervalles „abschneiden“.Diese Basis hat die für den Einsatz in der Praxis sehr angenehme Eigenschaft, nur auf einem relativ kleinenTeilintervall (der Länge 2h) einen von Null verschiedenen Wert anzunehmen (Abb. 1.4).Bei der Konstruktion einer Basis des Spline-RaumesS3,T kann man zunächst ebenfalls versuchen, dieBedingungen

Ci(xi) = 1, Ci(xj) = 0 für j 6= i

für die BasisfunktionCi zu fordern. Die resultierende Basisfunktion hat nun den Nachteil, auf dem ganzenIntervall [a,b] jeweils zwischen den Stützpunkten von Null verschieden zu sein (Abb. 1.5).Es lassen sich aber BasisfunktionenBi konstruieren, die auf dem größten Teil des Intervalls verschwinden,wenn wir fürBi(xi−1) undBi(xi+1) von Null verschiedene Werte zulassen. Füri = 2, 3, . . . ,n − 2 führt

Page 12: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

10 Numerische Mathematik I

-0.2

0

0.2

0.4

0.6

0.8

1

0 0.2 0.4 0.6 0.8 1

Abbildung 1.5: Mögliche Basisfunktion für den Raum der kubischen Splines (h = 0.1)

dies auf Basisfunktionen der Form

Bi(x) :=

14

(x−xi−2

h

)3für x ∈ [xi−2,xi−1],

34

(xi−x

h

)3− 3

2

(xi−x

h

)2+ 1 für x ∈ [xi−1,xi],

34

(x−xi

h

)3− 3

2

(x−xi

h

)2+ 1 für x ∈ [xi,xi+1],

14

(xi+2−x

h

)3für x ∈ [xi+1,xi+2],

0 sonst.

Die rechts- bzw. linksseitigen Grenzwerte einer abschnittsweise definierten Funktionf im Knotenxi seienf(xi±) = limx→xi± f(x). Man rechnet leicht nach, dass die BasisfunktionenBi stetig sind,

0 = Bi(xi−2+),

Bi(xi−1−) =14

= Bi(xi−1+),

Bi(xi−) = 1 = Bi(xi+),

Bi(xi+1−) =14

= Bi(xi+1+),

Bi(xi+2−) = 0,

und analog die erste und zweite Ableitung:

0 = B ′i(xi−2+),

B ′i(xi−1−) = +

34h

= B ′i(xi−1+),

B ′i(xi−) = 0 = B ′

i(xi+),

B ′i(xi+1−) = −

34h

= B ′i(xi+1+),

B ′i(xi+2−) = 0

Page 13: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

1. Interpolation von Funktionen 11

-0.25

0

0.25

0.5

0.75

1

1.25

0 0.2 0.4 0.6 0.8 1

B-1

B6

Abbildung 1.6: B-Splines (h = 0.1)

bzw.

0 = B ′′i (xi−2+),

B ′′i (xi−1−) =

32h2

= B ′′i (xi−1+),

B ′′i (xi−) = −

3h2

= B ′′i (xi+),

B ′′i (xi+1−) =

32h2

= B ′′i (xi+1+),

B ′′i (xi+2−) = 0.

Somit giltBi ∈ C2[a,b] und damitBi ∈ S3,T . B0,B1 sowieBn−1,Bn erhält man analog durch Abschnei-den am linken bzw. rechten Intervallende. Nun werden noch zwei weitere Basisfunktionen benötigt, umden Spline-RaumS3,T aufzuspannen. Dazu verschieben wir die BasisfunktionenB0 undBn nochmals umh nach links bzw. rechts:

B−1 :=

{14

(x1−x

h

)3falls x ∈ [x0,x1],

0 sonst,

Bn+1 :=

{14

(x−xn−1

h

)3falls x ∈ [xn−1,xn],

0 sonst.

Diese Basis besitzt wieder die Eigenschaft, außerhalb eines relativ kleinen Teilintervalles (der Länge 4h)zu verschwinden. Die Basisfunktionen werden auch alsB-Splinesbezeichnet (Abb. 1.6).

Wir wenden uns der Konstruktion des vollständigen interpolierenden Splines (Bed. (A)) zu vorgegebenenWertenf0, f1, . . . ,fn, f ′0, f

′n zu. Dazu verwenden wir den Ansatz

s(x) =

n+1∑

i=−1

σiBi(x)

Page 14: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

12 Numerische Mathematik I

und erhalten ein System vonn+3 linearen Gleichungen für dien+3 Unbekanntenσi, i = −1, . . . ,n+1:

n+1∑

j=−1

σjB′j(x0) = f ′0,

n+1∑

j=−1

σjBj(xi) = fi, i = 0, 1, . . . ,n,

n+1∑

j=−1

σjB′j(xn) = f ′n.

Nach Einsetzen der Funktionswerte für die Basisfunktionenführt dies auf

−34σ−1 +

34σ1 = hf ′0,

14σi−1 + σi +

14σi+1 = fi, i = 0, 1, . . . ,n,

−34σn−1 +

34σn+1 = hf ′n.

Wir multiplizieren die erste Gleichung mit− 12 und die letzte Gleichung mit+ 1

2. Das resultierende lineareGleichungssystem in Matrix-Schreibweise lautet:

3/8 0 −3/8

1/4 1 1/4

1/4 1 1/4...

..... .

1/4 1 1/4

1/4 1 1/4

−3/8 0 3/8

σ−1

σ0

σ1

...

σn−1

σn

σn+1

=

−hf ′0/2

f0

f1

...

fn−1

fn

hf ′n/2

Satz 1.7.Das lineare Gleichungssystem zur Berechnung der Koeffizientenσi, i = −1, . . . ,n+1, für die vollständigeSpline-Interpolation (Bedingung (A)) ist eindeutig lösbar.

Beweis.Wir betrachten das homogene lineare Gleichungssystem

3/8 0 −3/8

1/4 1 1/4

1/4 1 1/4...

..... .

1/4 1 1/4

1/4 1 1/4

−3/8 0 3/8

σ−1

σ0

σ1

...

σn−1

σn

σn+1

=

0

0

0...

0

0

0

,

das sich auch folgendermaßen schreiben lässt:

38σ−1 =

38σ1,

σi = −14σi−1 −

14σi+1, i = 0, 1, . . . ,n,

38σn+1 =

38σn−1.

Page 15: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

1. Interpolation von Funktionen 13

Geht man auf beiden Seiten zu Beträgen über, so erhält man

38|σ−1| =

38|σ1|,

|σi| 614(|σi−1| + |σi+1|), i = 0, 1, . . . ,n,

38|σn+1| =

38|σn−1|.

Durch Aufsummieren über die Gleichungen ergibt sich hieraus

38|σ−1| +

n∑

i=0

|σi| +38|σn+1| 6

14|σ−1| +

14|σ0| +

78|σ1| +

12

n−2∑

i=2

|σi| +78|σn−1| +

14|σn| +

14|σn+1|

678

(38|σ−1| +

n∑

i=0

|σi| +38|σn+1|

)

.

Dies impliziert38|σ−1| +

n∑

i=0

|σi| +38|σn+1| = 0,

und somit mussσ−1 = σ0 = σ1 = · · · = σn = σn+1 = 0 gelten.

Bemerkung.Aus Satz 1.7 folgt die lineare Unabhängigkeit von

{B−1,B0,B1, . . . ,Bn−1,Bn,Bn+1}

und somit dimS3,T = n + 3.

Beispiel.Wir betrachten wieder die Interpolation der Funktionf mit

f(x) =

{

0 für x ∈ [−1, 0],

e−1/x für x ∈ (0, 1].

In Abb. 1.7 ist die vollständige Spline-Interpolation bezüglich der gleichmäßigen Zerlegungen des Inter-valls [−1, 1] mit h = 1

2 undh = 14 gezeigt. Anhand der graphischen Darstellung ist fürh = 1

4 kaum einUnterschied zwischen Funktion und Spline-Interpolierender festzustellen.

1.4 Approximationseigenschaften von Splines

In diesem Abschnitt wird eine systematische Untersuchung der Approximationseigenschaften bei derSpline-Interpolation durchgeführt. Dazu betrachten wir wieder eine allgemeine Zerlegung

T = {[x0,x1], [x1,x2], . . . ,[xn−1,xn]}

Die Längen der Teilintervalle bezeichnen wir mit

hi := xi − xi−1, i = 1, . . . ,n, h := max16i6n

hi.

Nun müssen wir noch entscheiden, wie wir den Abstand zwischen der zu interpolierenden Funktion undder zugehörigen Spline-Interpolierenden messen wollen. Dazu bieten sich für stetige Funktionen beispiels-weise die folgenden Normen an:

‖f‖∞ := maxx∈[a,b]

|f(x)|,

‖f‖2 :=√

〈f, f〉 mit 〈f,g〉 :=

∫ b

a

f(x)g(x) dx,

‖f‖1 :=

∫ b

a

|f(x)|dx.

Page 16: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

14 Numerische Mathematik I

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

-1 -0.5 0 0.5 1

f(x)h = 1/2h = 1/4

Abbildung 1.7: Vollständige Spline-Interpolation (h = 0.5 bzw.h = 0.25)

Mittels Satz 1.3 ließ sich der Fehler bei der Polynom-Interpolation in der Maximum-Norm‖ · ‖∞ abschät-zen. In diesem Abschnitt wird dagegen dieL2-Norm ‖ · ‖2 eine zentrale Rolle spielen. Abschätzungenbezüglich dieser Norm machen eine Aussage über den Fehler „im quadratischen Mittel“.

Lemma 1.8.Für f ∈ C2([a,b]) unds ∈ S3,T gilt:

‖(f − s) ′′‖22 = ‖f ′′‖2

2 − ‖s ′′‖22 −

2

[

(f ′(x) − s ′(x)) s ′′(x)|b

a −

n∑

i=1

(f(x) − s(x))|xi

xi−1s ′′′(ξ)|(xi−1,xi)

]

.

Beweis.Zunächst führt Ausmultiplizieren auf

‖(f − s) ′′‖22 =

∫ b

a

(f ′′(x) − s ′′(x))2dx

=

∫ b

a

f ′′(x)2 dx − 2∫ b

a

f ′′(x)s ′′(x) dx +

∫ b

a

s ′′(x)2 dx

=

∫ b

a

f ′′(x)2 dx − 2∫ b

a

(f ′′(x) − s ′′(x)) s ′′(x) dx −

∫ b

a

s ′′(x)2 dx.

Für den mittleren Term erhalten wir mittels partieller Integration füri = 1, . . . ,n:∫ xi

xi−1

(f ′′(x) − s ′′(x)) s ′′(x) dx

= (f ′(x) − s ′(x)) s ′′(x)|xi

xi−1−

∫ xi

xi−1

(f ′(x) − s ′(x)) s ′′′(x) dx

= (f ′(x) − s ′(x)) s ′′(x)|xi

xi−1−

∫ xi

xi−1

(f ′(x) − s ′(x))dx s ′′′(ξ)|(xi−1,xi)

= (f ′(x) − s ′(x)) s ′′(x)|xi

xi−1− (f(x) − s(x))|

xi

xi−1s ′′′(ξ)|(xi−1,xi) .

Aufsummieren über die Teilintervalle liefert die Aussage des Lemmas.

Page 17: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

1. Interpolation von Funktionen 15

Satz 1.9(Minimierungseigenschaft kubischer Splines).Zu einer vorgegebenen Funktionf ∈ C2[a,b] seis ∈ S3,T ein interpolierender kubischer Spline, d. h. esgilt s(xi) = f(xi) für i = 0, . . . ,n. Ist außerdem eine der Bedingungen (A), (B) oder (C) erfülltsowief ′(a) = f ′(b) im Fall (C), dann gilt

‖f ′′‖22 > ‖s ′′‖2

2.

Beweis.Für den letzten Term in Lemma 1.8 gilt

(f ′(x) − s ′(x)) s ′′(x)|b

a︸ ︷︷ ︸

=0 wegen (A), (B) oder (C)

n∑

i=1

(f(x) − s(x))|xi

xi−1︸ ︷︷ ︸

=0 wegens(xi)=f(xi)

s ′′′(ξ)|(xi−1,xi) = 0.

Also gilt 0 6 ‖(f − s) ′′‖22 = ‖f ′′‖2

2 − ‖s ′′‖22 und damit die Minimierungseigenschaft.

Für die Betrachtung der Konvergenzeigenschaften beschränken uns auf den Fall (A), d. h. auf die vollstän-dige Spline-Interpolation.

Satz 1.10(Approximationsordnung vollständiger Splines).Es seif ∈ C4[a,b]. Dann gilt bei der vollständigen Spline-Interpolation

‖f ′′ − s ′′‖2 6 h2‖f(4)‖2,

‖f ′ − s ′‖2 6 h3‖f(4)‖2,

‖f − s‖2 6 h4‖f(4)‖2.

Beweis.(i) Zur Funktionf ∈ C4[a,b] wählen wir eine kubische Spline-Funktiont ∈ S3,T , von der wirnur fordern, dasst ′′(xi) = f ′′(xi) für i = 0, 1, . . . ,n erfüllt ist. Fürx ∈ [xi−1,xi] gilt dann aufgrund derCauchy–Bunjakowski–Schwarz-Ungleichung(

∫fg)2 6 (

∫f2)(

∫g2):

(f ′′(x) − t ′′(x))2

=

(∫ x

xi−1

(f ′′′(ξ) − t ′′′(ξ))dξ

)2

6 (x − xi−1)

∫ x

xi−1

(f ′′′(ξ) − t ′′′(ξ))2dξ 6 hi

∫ xi

xi−1

(f ′′′(ξ) − t ′′′(ξ))2dξ.

Daraus erhalten wir

‖f ′′ − t ′′‖22 =

∫ b

a

(f ′′(x) − t ′′(x))2dx =

n∑

i=1

∫ xi

xi−1

(f ′′(x) − t ′′(x))2dx

6

n∑

i=1

∫ xi

xi−1

hi

∫ xi

xi−1

(f ′′′(ξ) − t ′′′(ξ))2dξ dx =

n∑

i=1

h2i

∫ xi

xi−1

(f ′′′(ξ) − t ′′′(ξ))2dξ

6 h2∫ b

a

(f ′′′(ξ) − t ′′′(ξ))2dξ = h2‖f ′′′ − t ′′′‖2

2.

Mittels partieller Integration und Cauchy–Bunjakowski–Schwarz-Ungleichung ergibt sich außerdem

‖f ′′′ − t ′′′‖22 =

∫ b

a

(f ′′′(x) − t ′′′(x))2dx =

n∑

i=1

∫ xi

xi−1

(f ′′′(x) − t ′′′(x))2dx

=

n∑

i=1

[

(f ′′ − t ′′) (f ′′′ − t ′′′)|xi

xi−1−

∫ xi

xi−1

(f ′′(x) − t ′′(x))(f(4)(x) − t(4)(x)

)dx

]

= −

∫ b

a

(f ′′(x) − t ′′(x)) f(4)(x) dx = −〈f ′′ − t ′′, f(4)〉 6 ‖f ′′ − t ′′‖2‖f(4)‖2.

Zusammen ergeben die Abschätzungen

‖f ′′′ − t ′′′‖2 6 h‖f(4)‖2 und daraus ‖f ′′ − t ′′‖2 6 h2‖f(4)‖2.

Page 18: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

16 Numerische Mathematik I

Unter Verwendung von Aufgabe 4.1 (a) folgt

‖f ′′ − s ′′‖2 6 ‖f ′′ − t ′′‖2 6 h2‖f(4)‖2.

(ii) In Analogie zum ersten Teil des Beweises erhalten wir

‖f − s‖22 =

∫ b

a

(f(x) − s(x))2dx =

n∑

i=1

∫ xi

xi−1

(f(x) − s(x))2dx

=

n∑

i=1

∫ xi

xi−1

(∫ x

xi−1

(f ′(ξ) − s ′(ξ))dξ

)2

dx

6

n∑

i=1

∫ xi

xi−1

(∫ x

xi−1

(f ′(ξ) − s ′(ξ))2dξ

∫ x

xi−1

12 dξ

)

dx

6

n∑

i=1

h2i

∫ xi

xi−1

(f ′(ξ) − s ′(ξ))2dξ

6 h2∫ b

a

(f ′(ξ) − s ′(ξ))2dξ = h2‖f ′ − s ′‖2

2.

Partielle Integration führt nun auf

‖f ′ − s ′‖22 =

∫ b

a

(f ′(x) − s ′(x))2dx

= (f(x) − s(x)) (f ′(x) − s ′(x))|b

a −

∫ b

a

(f(x) − s(x)) (f ′′(x) − s ′′(x))dx

= −〈f − s, f ′′ − s ′′〉 6 ‖f − s‖2‖f ′′ − s ′′‖2.

Daraus folgt schließlich

‖f ′ − s ′‖2 6 h‖f ′′ − s ′′‖2 und daraus ‖f − s‖2 6 h2‖f ′′ − s ′′‖2,

was zusammen mit dem ersten Teil des Beweises zur Aussage desSatzes führt.

Page 19: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

Kapitel 2

Numerische Integration

Wir kehren wieder zum Beispiel des elastisch verformten Balkens aus dem einführenden Kapitel zurück.Wollen wir für eine gegebene Auslenkungy(x) die potentielle Energie des Balkens berechnen,

W(y) =EJ

2

∫ L

0y ′′(x)2 dx +

∫ L

0f(x)y(x) dx,

so benötigen wir einen Algorithmus zur näherungsweisen Berechnung der beiden Integrale. Dabei könnenwir nicht erwarten, explizite Formeln für die Stammfunktionen der auftretenden Integranden zu finden.Stattdessen ist die Grundlage numerischer Integrationsmethoden, für stetige Funktionenf das Integral

I(f) :=

∫ b

a

f(x) dx

durch eineQuadraturformelI(f) anzunähern. In diese Quadraturformel geht nur die Auswertung vonf aneiner endlichen Zahl von Stützpunkten in[a,b] ein.

2.1 Die Newton–Cotes-Quadraturformeln

Quadraturformeln basieren in der Regel auf einer Zerlegung

T = {[x0,x1], [x1,x2], . . . ,[xn−1,xn]}

des zugrundeliegenden Intervalls[a,b] mit x0 = a, xn = b undhi = xi − xi−1, i = 1, . . . ,n. EinfacheQuadraturformeln erhalten wir durch die Riemannschen Zwischensummen

I(f) =

n∑

i=1

hif(ξi) mit ξi ∈ [xi−1,xi]

(z. B.ξi := (xi−1+xi)/2: Mittelpunktsregel). Wird die ZerlegungT verfeinert, so dassh := maxhi gegenNull strebt, dann ist aus der Analysis bekannt, dassI(f) gegenI(f) konvergiert. Allerdings lässt sich dieGenauigkeit der erhaltenen Näherung für den Wert des Integrals durch eine systematisch Konstruktion derQuadraturformel noch erheblich verbessern.Die Newton–Cotes-Formeln erhalten wir dadurch, dass wir auf dem Intervall[xi−1,xi] das Interpolations-polynom vom Gradk (k = 1, 2, . . . ) bezüglich der äquidistanten Stützpunkte

xij := xi−1 +j

khi, j = 0, 1, . . . ,k,

an die Funktionf bestimmen. Als Quadraturformel verwenden wir dann für jedes Teilintervall [xi−1,xi]

das Integral über dieses Interpolationspolynom.

Page 20: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

18 Numerische Mathematik I

Beispiel(Summierte Trapez-Regel).Fürk = 1 erhalten wir auf[xi−1,xi] das lineare Interpolationspolynom

f(xi−1)xi − x

hi

+ f(xi)x − xi−1

hi

und somit ∫ xi

xi−1

[

f(xi−1)xi − x

hi

+ f(xi)x − xi−1

hi

]

dx =hi

2[f(xi−1) + f(xi)]

als Näherung für das Integral über[xi−1,xi]. Daraus resultiert letztendlich die Quadraturformel

I(f) =

n∑

i=1

hi

2[f(xi−1) + f(xi)].

Diese Quadraturformel wird alssummierte Trapez-Regelbezeichnet.

Beispiel(Summierte Simpson-Regel bzw. Keplersche Fassregel).Wir betrachten noch den Fallk = 2, für den wir das quadratische Interpolationspolynom bezüglich derStützpunktexi−1, xi := (xi−1 +xi)/2,xi auf [xi−1,xi] integrieren. Die Quadraturformel leitet sich mittels

∫ xi

xi−1

[

f(xi−1)2(xi − x)(xi − x)

h2i

+ f(xi)4(x − xi−1)(xi − x)

h2i

+ f(xi)2(x − xi−1)(x − xi)

h2i

]

dx

=hi

6f(xi−1) +

23hif(xi) +

hi

6f(xi)

her und lautet

I(f) =

n∑

i=1

hi

6[f(xi−1) + 4f(xi) + f(xi)] mit xi =

xi−1 + xi

2.

Diese Quadraturformel wird alssummierte Simpson-Regelbezeichnet.

Satz 2.1.(i) Ist die Funktionf zweimal stetig differenzierbar,f ∈ C2[a,b], so gilt für den Approximationsfehler dersummierten Trapez-Regel:

|I(f) − I(f)| 6 (b − a)h2

12‖f ′′‖∞.

(ii) Ist die Funktionf viermal stetig differenzierbar,f ∈ C4[a,b], so gilt für den Approximationsfehler dersummierten Simpson-Regel:

|I(f) − I(f)| 6 (b − a)h4

2880‖f(4)‖∞.

Beweis.Wir verwenden die Abkürzungen

I(f) =

n∑

i=1

Ii(f) mit Ii(f) :=

∫ xi

xi−1

f(x) dx,

I(f) =

n∑

i=1

Ii(f) mit Ii(f) := Ii(fi),

wobei fi das Interpolationspolynom vom Grad 1 bzw. 2 an den Stützpunktenxi−1, xi für die Trapez-Regelbzw.xi−1, xi = (xi−1 + xi)/2, xi für die Simpson-Regel bezeichnet.(i) Für x ∈ [xi−1,xi] gilt nach Satz 1.3 (Interpolationsfehler-Abschätzung)

f(x) − fi(x) =12f ′′(ξ(x))(x − xi−1)(x − xi)

Page 21: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

2. Numerische Integration 19

mit ξ(x) ∈ (xi−1,xi). Nach dem Mittelwertsatz der Integralrechnung existiert dannξi ∈ (xi−1,xi) mit

Ii(f) − Ii(f) =

∫ xi

xi−1

[f(x) − fi(x)

]dx

=12f ′′(ξi)

∫ xi

xi−1

(x − xi−1)(x − xi) dx =h3

i

12f ′′(ξi).

Aufsummieren über die Teilintervalle ergibt die Abschätzung für die Trapezregel:

|I(f) − I(f)| 6112

‖f ′′‖∞n∑

i=1

h3i

6h2

12

n∑

i=1

hi‖f ′′‖∞ =h2

12(b − a)‖f ′′‖∞.

(ii) Zu f ∈ C4[a,b] seiqi ∈ P3 das Hermite-Interpolationspolynom mit

qi(xi−1) = f(xi−1), qi(xi) = f(xi), q ′i(xi) = f ′(xi), qi(xi) = f(xi).

Dann gilt (vgl. Aufgabe 1.2):

f(x) − qi(x) =124

f(4)(ξi)(x − xi−1)(x − xi)2(x − xi)

mit ξi ∈ (xi−1,xi). Es folgt

Ii(f) − Ii(f) = Ii(f) − Ii(qi) + Ii(qi) − Ii(fi) = Ii(f) − Ii(qi),

wobei der hintere Term wegfällt, weil auf dem Intervall[xi−1,xi] Polynome bis zum Grad 3 durch dieSimpson-Regel exakt integriert werden (siehe Aufgabe 4.2). Somit ergibt sich

Ii(f) − Ii(f) =

∫ xi

xi−1

[f(x) − qi(x)] dx

=124

f(4)(ξi)

∫ xi

xi−1

(x − xi−1)(x − xi)2(x − xi) dx

=124

f(4)(ξi)

(

−h5

i

120

)

= −h5

i

2880f(4)(ξi).

Aufsummieren dieser Formel über die Teilintervalle ergibtdie Abschätzung für die Simpson-Regel.

Die allgemeine Newton–Cotes-Quadraturformel vom Gradk lässt sich darstellen in der Form

I(f) =

n∑

i=1

hi

k∑

j=0

λijf(xij), xij = xi−1 +j

khi.

Wir berechnen nun die Gewichteλij für diese allgemeine Form der Newton–Cotes-Formeln. Dazu gehenwir aus von der Lagrange-Darstellung des verwendeten Interpolationspolynoms auf[xi−1,xi]:

fi(x) =

k∑

j=0

f(xij)Lij(x)

mit

Lij(x) =

k∏

m=0,m6=j

x − xim

xij − xim

.

Page 22: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

20 Numerische Mathematik I

Somit erhalten wir

Ii(f) =

∫ xi

xi−1

fi(x) dx =

k∑

j=0

f(xij)

∫ xi

xi−1

Lij(x) dx,

was schließlich mit der Variablentransformationx = xi−1 + ξhi auf folgende Darstellung führt:

λij =1hi

∫ xi

xi−1

Lij(x) dx =1hi

∫ 1

0

k∏

l=0,l6=j

ξ − lk

jk

− lk

hi dξ =

∫ 1

0

k∏

l=0,l6=j

ξ − lk

jk

− lk

dξ.

Offenbar sind die Quadraturgewichteλij unabhängig vonhi und stimmen daher für jedes der Teilintervalleüberein:λij = λj für i = 1, . . . ,n, j = 0, 1, . . . ,k. Es resultiert die allgemeine summierte Newton–Cotes-Quadraturformel

I(f) =

n∑

i=1

hi

k∑

j=0

λjf(xij).

Die Berechnung der Gewichteλj ∈ Q kann für jedesk einmal vorab durchgeführt werden:

k λ0 λ1 λ2 λ3 λ4 λ5 λ6 λ7 λ8 Bezeichnung

1 12

12 Trapezregel

2 16

23

16 Simpson-Regel

3 18

38

38

18 3/8-Regel

4 790

1645

215

1645

790 Milne-Regel

5 19288

2596

25144

25144

2596

19288 —

6 41840

935

9280

34105

9280

935

41840 Weddle-Regel

7 75117280

357717280

49640

298917280

298917280

49640

357717280

75117280 —

8 98928350

294414175 − 464

14175524814175 − 454

2835524814175 − 464

14175294414175

98928350 —

Bemerkung.Für k = 8 sind manche der Quadraturgewichteλj negativ; die zugehörige Quadraturformelist damit unbrauchbar. Dasselbe gilt fürk > 8.

2.2 Gauß–Legendre-Quadratur

Bei den summierten Newton–Cotes-Formeln ist die Verteilung der Integrationspunkte in[xi−1,xi] starrvorgegeben durch

xij = xi−1 +j

khi, j = 0, . . . ,k.

Bei diesen Quadraturformeln gilt

Ii(p) =

∫ xi

xi−1

p(x) dx = hi

k∑

j=0

λjp(xij) = Ii(p)

für alle Polynomep ∈ Pk aufgrund der Konstruktion auf Basis des Interpolationspolynoms vom Gradk.Für geradesk gilt obige Formel sogar für alle Polynome vom Gradk + 1. Im Folgenden soll die Wahl derIntegrationspunktexij ∈ [xi−1,xi] so optimiert werden, dass die zugehörige Quadraturformel

Ii(f) = hi

k∑

j=0

λjf(xij)

Polynome von möglichst hohem Grad auf dem Intervall[xi−1,xi] exakt integriert. Mit denk + 1 Integrati-onspunkten und denk + 1 Integrationsgewichten haben wir 2k + 2 Parameter, die wir frei wählen können.

Page 23: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

2. Numerische Integration 21

Es stellt sich die Frage, ob wir diese so bestimmen können, dass alle Polynome inP2k+1 (Vektorraum derDimension 2k + 2) exakt integriert werden.Da sich bei der Herleitung solcher Quadraturformeln alles um ein festes Intervall[xi−1,xi] dreht, lassenwir zur Vereinfachung der Schreibweise die Indizierung bezüglich i weg. Zur weiteren Vereinfachung be-schränken wir uns o.B.d.A. auf das Intervall[−1, 1]. (Durch eine affine Transformation lässt sich die Über-tragung auf ein beliebiges reelles Intervall[a,b] bewerkstelligen). Wir betrachten also Quadraturformelnin der Form

I(f) = 2k∑

j=0

λjf(xj).

Bei der Konstruktion von Quadraturformeln mit der gewünschten Eigenschaft, dassI(p) = I(p) für allePolynomep ∈ P2k+1 gelten soll, orientieren wir uns am folgenden Resultat.

Lemma 2.2.Gilt I(p) = I(p) für alle p ∈ P2k+1, so hat das Knotenpolynom

ωk+1(x) = (x − x0)(x − x1) · · · (x − xk)

die folgende Eigenschaft:∫ 1

−1ωk+1(x)q(x) dx = 0 für alle q ∈ Pk.

Beweis.Seiq ∈ Pk. Dann istωk+1q ∈ P2k+1, also

∫ 1

−1ωk+1(x)q(x) dx = I(ωk+1q) = 2

k∑

j=0

λjωk+1(xj)︸ ︷︷ ︸

=0

q(xj) = 0.

Beispiel(Gauß–Legendre-Quadraturformeln).Fürk = 0 ergibt sich mit dem Ansatzω1(x) = x − x0 als Bedingung:

∫ 1

−1(x − x0)q0(x) dx = 0

für alle Polynomeq0 ∈ P0 (Konstanten). Dies impliziertx0 = 0.Fürk = 1 undx1 = −x0 liefert der Ansatzω2(x) = (x − x0)(x − x1) = (x − x0)(x + x0) automatisch

∫ 1

−1ω2(x)q1(x) dx = 0

für alle ungeraden Polynomeq1 ∈ P1 (q1(x) = a1x, a1 ∈ R). Es bleibt also nur die Bedingung

∫ 1

−1ω2(x)q1(x) dx = 0

für alle geraden Polynome vom Grad 1 (Konstanten) zu erfüllen und wir erhalten

x0 = −

13

, x1 = +

13

.

Page 24: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

22 Numerische Mathematik I

Fürk = 2 undx1 = 0,x2 = −x0 liefert der Ansatzω3(x) = (x−x0)(x−x1)(x−x2) = (x−x0)x(x+x0)

automatisch ∫ 1

−1ω3(x)q2(x) dx = 0

für alle geraden Polynomeq2 ∈ P2 (q2(x) = a2x2 + a0, a0,a2 ∈ R). Jetzt bleibt also nur die Bedingung

∫ 1

−1ω3(x)q2(x) dx = 0

für alle ungeraden Polynome vom Grad 2 (q2 = a1x, a1 ∈ R) zu erfüllen. Dies liefert

x0 = −

35

, x1 = 0, x2 = +

35

.

Die Quadraturgewichte erhalten wir durch die Bedingung, dass insbesondere die Lagrange-Polynome vomGradk bzgl. der Stützpunktex0,x1, . . . ,xk exakt integriert werden müssen, d. h.

λi =

k∑

j=0

λjLi(xj) =12I(Li) =

12I(Li) =

12

∫ 1

−1Li(x) dx.

Es ergeben sich die folgenden Werte:

k = 0: λ0 = 1,

k = 1: λ0 = λ1 =12

,

k = 2: λ0 = λ2 =518

, λ1 =49

.

2.3 Orthogonalpolynome und Gauß-Quadratur

Wir betrachten die zu berechnenden Integrale in der etwas allgemeineren Form

Iw(f) := I(wf) =

∫ 1

−1w(x)f(x) dx,

wobei weiterhinf ∈ C[−1, 1] vorausgesetzt wird, die Gewichtsfunktionw(x) aber unbeschränkt sein kann,solange nur garantiert ist, dass das IntegralIw(f) existiert. An die Gewichtsfunktionw : [−1, 1] → R

stellen wir folgende Anforderungen:

(W1) w(x) > 0 für alle x ∈ [−1, 1];

(W2) Iw(1) =

∫ 1

−1w(x) dx existiert, d. h. w ∈ L1[−1, 1];

(W3) Iw(f2) =

∫ 1

−1w(x)f(x)2 dx = 0 =⇒ f(x) ≡ 0 für alle f ∈ C[−1, 1].

Definition (Exaktheitsgrad).Die Quadraturformel

Iw(f) = Iw(1)

k∑

j=0

λjf(xj)

besitzt denExaktheitsgradm (bezüglich der Gewichtsfunktionw), falls Iw(p) = Iw(p) für allep ∈ Pm.

Unser Ziel ist es, zu vorgegebener Gewichtsfunktion Quadraturformeln mit möglichst hohem Exaktheits-grad zu konstruieren.

Page 25: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

2. Numerische Integration 23

Definition (Orthogonalpolynome).Erfüllt die Gewichtsfunktionw die Voraussetzungen (W1), (W2) und (W3), so ist durch

〈p,q〉w := Iw(pq) =

∫ 1

−1w(x)p(x)q(x) dx

ein Skalarprodukt auf dem Vektorraum der Polynome erklärt.Die induzierte Norm ist‖p‖w =√

〈p,p〉w.Die Polynomepk ∈ Pk, k = 0, 1, 2, . . . mit Höchstkoeffizient eins, d. h.

pk(x) = xk + ak−1xk−1 + · · · + a1x + a0, a0,a1, . . . ,ak−1 ∈ R,

und der Eigenschaft, dass〈pk,q〉w = 0 für alleq ∈ Pk−1 gilt (k > 0), heißenOrthogonalpolynomebzgl.des Skalarprodukts〈 · , · 〉w.

Satz 2.3.Zu jedem Skalarprodukt mit einer Gewichtsfunktionw, die (W1), (W2) und (W3) erfüllt, gibt es eine ein-deutig bestimmte Folge von Orthogonalpolynomen(pk)∞k=0. Sie genügen der folgenden Rekursionsformel:

p0(x) = 1,

p1(x) = x − α1,

pk(x) = (x − αk)pk−1(x) − β2kpk−2(x), k = 2, 3, . . . ,

wobei

αk =〈xpk−1,pk−1〉w〈pk−1,pk−1〉w

=〈xpk−1,pk−1〉w

‖pk−1‖2w

, βk =〈pk−1,pk−1〉1/2

w

〈pk−2,pk−2〉1/2w

=‖pk−1‖w

‖pk−2‖w

.

(Mit xpk−1 ist hier das durch die Abbildungx 7→ xpk−1(x) definierte Polynom gemeint.)

Beweis.Wir führen den Beweis durch vollständige Induktion: seienp0,p1, . . . ,pk paarweise orthogonalePolynome mit Höchstkoeffizient 1, die der dreigliedrigen Rekursionsformel genügen. Istqk+1 ∈ Pk+1 mitHöchstkoeffizient 1, so istqk+1 − xpk ∈ Pk und es gilt:

qk+1(x) − xpk(x) =

k∑

j=0

cjpj(x) mit cj =〈qk+1 − xpk,pj〉w

‖pj‖2w

, j = 0, . . . ,k.

Die Bedingung, dassqk+1 die Eigenschaften des Orthogonalpolynoms erfüllt (d. h.,〈qk+1,pj〉w = 0 fürj = 0, . . . ,k), ist äquivalent zu

cj =〈−xpk,pj〉w

‖pj‖2w

= −〈pk,xpj〉w‖pj‖2

w

für j = 0, 1, . . . ,k.

Dapk orthogonal zu allen Polynomen vom Gradk − 1 ist (pk ⊥ Pk−1), haben wir

−cj =〈pk,xpj〉w‖pj‖2

w

= 0, j = 0, . . . ,k − 2,

−ck−1 =〈pk,xpk−1〉w‖pk−1‖2

w

=〈pk,pk + αkpk−1 + β2

kpk−2〉w‖pk−1‖2

w

=‖pk‖2

w

‖pk−1‖2w

= β2k+1,

−ck =〈pk,xpk〉w‖pk‖2

w

= αk+1.

Es folgtqk+1 = xpk − β2k+1pk−1 − αk+1pk = (x − αk+1)pk − β2

k+1pk−1.

Page 26: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

24 Numerische Mathematik I

Satz 2.4.Das Orthogonalpolynompk ∈ Pk hat genauk einfache Nullstellen in[−1, 1].

Beweis.Seienx1, . . . ,xm die m verschiedenen Punkte in[−1, 1], an denenpk das Vorzeichen wechselt.Dann wechseltq(x) := (x − x1) · · · (x − xm) an denselben Punkten das Vorzeichen undw(x)q(x)pk(x)

hat überall in[−1, 1] dasselbe Vorzeichen; folglich gilt〈pk,q〉w 6= 0. Andererseits ist aber〈pk, q〉w = 0für alle Polynomeq ∈ Pk−1. Daher mussq ein Polynom vom Gradm > k sein.

Satz 2.5.Wählt man als Quadraturpunktex0, . . . ,xk die Nullstellen des Orthogonalpolynomspk+1 und als Quadra-turgewichte

λj :=1

Iw(1)

∫ 1

−1w(x)Lj(x)dx, j = 0, . . . ,k,

mit den zugehörigen Lagrange-Polynomen

Lj(x) =

k∏

m=0,m6=j

x − xm

xj − xm

, j = 0, . . . ,k,

so besitzt die Quadraturformel

Iw(f) = Iw(1)

k∑

j=0

λjf(xj)

den Exaktheitsgrad2k + 1.

Beweis.(i) Für q ∈ Pk gilt zunächst

q(x) =

k∑

j=0

q(xj)Lj(x)

und daher

Iw(q) =

∫ 1

−1w(x)q(x) dx =

k∑

j=0

q(xj)

∫ 1

−1w(x)Lj(x) dx = Iw(1)

k∑

j=0

λjq(xj) = Iw(q).

(ii) Um zu zeigen, dassIw(q) = Iw(q) sogar für alleq ∈ P2k+1 gilt, schreiben wir

q(x) = pk+1(x)r(x) + s(x)

mit r, s ∈ Pk (Division mit Rest, Euklidischer Algorithmus). Dann erhalten wir

Iw(q) =

∫ 1

−1w(x)q(x) dx =

∫ 1

−1w(x)r(x)pk+1(x) dx

︸ ︷︷ ︸

=〈r,pk+1〉w=0

+

∫ 1

−1w(x)s(x) dx = Iw(s)

= Iw(1)

k∑

j=0

λjs(xj) = Iw(1)

k∑

j=0

λj(pk+1(xj)︸ ︷︷ ︸

=0

r(xj) + s(xj)) = Iw(1)

k∑

j=0

λjq(xj) = Iw(q).

Beispiel(Legendre-Polynome).Für die Gewichtsfunktionw(x) ≡ 1 ergibt sich aus Satz 2.3 die Folge der Orthogonalpolynome

p0(x) = 1,

p1(x) = x,

pk(x) = xpk−1(x) −(k − 1)2

(2k − 1)(2k − 3)pk−2(x), k = 2, 3, . . . .

Dies sind die (auf Höchstkoeffizient 1 normierten)Legendre-Polynome. Hieraus erhält man die Gauß–Legendre-Quadraturformeln.

Page 27: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

2. Numerische Integration 25

Satz 2.6.Zu einer Gewichtsfunktionw mit Rekursionskoeffizientenαk,βk gemäß Satz 2.3 sei

A :=

α1 β2

β2 α2. . .

. . .. . . βn+1

βn+1 αn+1

=: UXUT (Eigenwertfaktorisierung)

mit einer orthogonalen MatrixU ∈ O(n + 1) und X = Diag(x0, . . . ,xn), wobei o. E.x0 6 · · · 6 xn.Dann sind die Eigenwertexk die Knoten der Gauß-Quadraturformel zuw mit zugehörigen Gewichtenλk = U2

0k, k = 0, . . . ,n.

Beweis.(i) Aus der Rekursionsformel folgt

x

p0(x)

p1(x)...

pn(x)

︸ ︷︷ ︸

=:p(x)

=

α1 1

β22 α2

. . .. . .

. . . 1β2

n+1 αn+1

︸ ︷︷ ︸

=:T

p0(x)

p1(x)...

pn(x)

+

0...0

pn+1(x)

,

alsoxp(x) = Tp(x) + pn+1(x)en ∈ Rn+1. Für die Gauß-Knotenxk gilt somit:

pn+1(xk) = 0 ⇐⇒ Tp(xk) = xkp(xk) ⇐⇒ xk ∈ σ(T) ⇐⇒ xk ∈ σ(A),

dennA ist ähnlich zuT :

A = DTD−1 mit D := Diag

(

1,1β2

, . . . ,1

β2 · · ·βn+1

)

.

(ii) Die Identitätλk = U20k (in einer äquivalenten Formulierung) ist bewiesen im Buch von Deuflhard und

Hohmann bzw. in der dort zitierten Arbeit [40] von Golub und Welsch.

2.4 Clenshaw–Curtis-Quadratur

Wir haben gesehen, dass die Newton–Cotes-Quadraturformeln mit k+1 Stützpunkten „nur“ Polynome biszum Gradk bzw.k + 1 exakt integrieren, und dass diese Formeln wegen negativerQuadraturgewichte fürk > 7 numerisch unbrauchbar werden. Die Gauß-Quadraturformeln integrieren dagegen Polynome bis zumGrad 2k+1 exakt undk kann beliebig groß gewählt werden. Allerdings ist die Berechnung der Stützstellenfür große Werte vonk deutlich aufwändiger, wenn auch mit hoher Genauigkeit durchführbar (Lösen einesEigenwertproblems mit Tridiagonalmatrix). Auch entstehen bei Verdopplung der Intervallanzahl völligandere Stützstellen und die bereits berechnetenk+1 Funktionswerte können im Gegensatz zu den Newton–Cotes-Formeln nicht wiederverwendet werden.In der Literatur findet man noch weitere Familien von Quadraturformeln; darunter sind in der Praxis vorallem die Clenshaw–Curtis-Quadraturformeln geeignet: zwar werden beik + 1 Stützpunkten auch nur diePolynome bis zum Gradk exakt integriert, aberk kann nun beliebig groß gewählt werden, die Quadratur-gewichte lassen sich sehr effizient berechnen (mit der sogenannten „schnellen Fourier-Transformation“),und in vielen Fällen sind die Formeln fast so genau wie die Gauß-Formeln. Zudem bleiben alle Stützstellenbei Verdopplung vonk erhalten, so dass nurk neue Funktionswerte berechnet werden müssen.Als Stützpunktexi werden diek + 1 Extrema des Tschebyschow-PolynomsTk+1 in [−1, 1] gewählt,

xi := cosθi mit θi :=i

kπ, i = 0, . . . ,k.

Ohne Herleitung seien die zugehörigen Quadraturgewichte angegeben (mith := b − a = 2):

λi =ai

kh

(

1 −

⌊k/2⌋∑

j=1

bj

4j2 − 1cos(2jθi)

)

, i = 0, . . . ,k,

Page 28: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

26 Numerische Mathematik I

0

0.2

0.4

0.6

0.8

1

-10 -8 -6 -4 -2 0 2 4 6 8 10

Abbildung 2.1: Skizze zum Numerischen Beispiel

mit den Koeffizienten

ai :=

{

1 falls i ∈ {0,k},

2 sonst,bj :=

{

1 falls j = k/2,

2 falls j < k/2.

Der Trick bei der Berechnung der Gewichte (schnelle Fourier-Transformation) besteht in der geschicktenAuswertung der trigonometrischen Summen.

Numerisches Beispiel:Die Genauigkeit der Quadraturformeln soll nun am Beispiel der Berechnung von

I(f) :=

∫ 1

−1

11 + x2

dx = arctan(1) − arctan(−1) =π

2

getestet werden. Der Integrandf ist in Abb. 2.1 dargestellt.Numerische Resultate für die summierten Newton–Cotes-Quadraturformeln (in der Tabelle ist der Appro-ximationsfehler|I(f) − I(f)| dargestellt):

k n = 1 n = 2 n = 4 n = 8 n = 16

1 5.7080· 10−1 7.0796· 10−2 2.0796· 10−2 5.2081· 10−3 1.3021· 10−3

2 9.5870· 10−2 4.1297· 10−3 1.2013· 10−5 7.5566· 10−8 1.1825· 10−9

3 2.9204· 10−2 1.5656· 10−3 4.6019· 10−6 2.9855· 10−8 4.6716· 10−10

4 1.0796· 10−2 2.6250· 10−4 7.2027· 10−7 3.7764· 10−9 5.9122· 10−11

5 5.1855· 10−3 1.4288· 10−4 3.9416· 10−7 2.1270· 10−9 3.3298· 10−11

6 2.2440· 10−3 1.0899· 10−5 2.5646· 10−8 3.8725· 10−13 2.2204· 10−16

7 1.1900· 10−3 6.6755· 10−6 1.5378· 10−8 2.3470· 10−13 6.6613· 10−16

8 5.6589· 10−4 1.0142· 10−8 9.9530· 10−10 9.3259· 10−15 2.2204· 10−16

Der Rechenaufwand besteht im Wesentlichen aus dennk + 1 Funktionsauswertungenf(xij) an den Qua-draturpunkten. Für einen festen Wert vonnk liefert hier in der Regel die Quadraturformel mit dem höchs-ten Grad die besten Ergebnisse. Dies hängt aber wesentlich davon ab, dass die höheren Ableitungen derFunktion in dem betrachteten Intervall nicht allzu stark anwachsen.Numerische Resultate für die summierten Gauß–Legendre-Quadraturformeln (wieder ist der Approximati-onsfehler|I(f) − I(f)| dargestellt):

Page 29: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

2. Numerische Integration 27

k n = 1 n = 2 n = 4 n = 8 n = 16

0 4.2920· 10−1 2.9204· 10−2 1.0380· 10−2 2.6039· 10−3 6.5104· 10−4

1 7.0796· 10−2 2.9742· 10−3 8.6197· 10−6 5.3734· 10−8 8.4088· 10−10

2 1.2537· 10−2 2.6226· 10−4 7.1560· 10−7 3.6250· 10−9 5.6757· 10−11

3 2.1689· 10−3 9.6258· 10−6 2.3006· 10−8 3.4484· 10−13 4.4409· 10−16

4 3.7484· 10−4 6.8525· 10−9 6.6660· 10−10 6.2172· 10−15 0

Hier werdenn(k+1) Funktionsauswertungen benötigt. Wiederum sind die Quadraturformeln von höheremGrad in der Regel effizienter. Der Vergleich mit den entsprechenden Newton–Cotes-Formeln zeigt, dass dieGauß–Legendre-Formeln – wie zu erwarten – bessere Approximationen liefern.Numerische Resultate für die summierten Clenshaw–Curtis-Quadraturformeln (wieder ist der Approxima-tionsfehler|I(f) − I(f)| dargestellt):

k n = 1 n = 2 n = 4 n = 8 n = 16

1 5.7080· 10−1 7.0796· 10−2 2.0796· 10−2 5.2081· 10−3 1.3021· 10−3

2 9.5870· 10−2 4.1297· 10−3 1.2013· 10−5 7.5566· 10−8 1.1825· 10−9

3 3.7463· 10−2 1.3605· 10−3 3.9036· 10−6 2.3612· 10−8 3.6952· 10−10

4 6.9815· 10−3 1.1786· 10−4 3.1836· 10−7 1.5101· 10−9 2.3648· 10−11

5 6.8138· 10−4 8.9625· 10−6 2.5547· 10−8 1.8897· 10−10 2.9563· 10−12

6 8.8027· 10−5 6.7059· 10−7 1.2251· 10−9 2.0428· 10−14 4.4409· 10−16

7 4.4002· 10−5 1.5154· 10−7 3.3741· 10−10 5.3291· 10−15 2.2204· 10−16

8 9.7734· 10−6 1.6564· 10−9 1.5127· 10−11 4.4409· 10−16 0

Für k ∈ {1, 2} sind die Clenshaw–Curtis-Formeln identisch mit den Newton–Cotes-Formeln. Fürk > 3sind die Ergebnisse etwas genauer als mit Newton–Cotes und etwas weniger genau als mit Gauß–Legendre.Die Unterschiede sind für das betrachtete Beispiel nicht sehr gravierend; alle Quadraturformeln liefernschon mit relativ geringem Aufwand sehr genaue Ergebnisse.Wir vergrößern nun das Integrationsintervall und betrachten die Approximation von

I(f) :=

∫ 9

−9

11 + x2

dx = 2 arctan(9) ≈ 2.9202782.

Dies hat zur Folge, dass die Funktionswerte und Ableitungenin dem betrachteten Intervall sehr viel größereUnterschiede aufweisen.Numerische Resultate für die summierten Newton–Cotes Quadraturformeln (hier sind die NäherungswerteI(f) gezeigt):

k n = 1 n = 2 n = 4 n = 8 n = 16

1 0.2195 9.1098 4.9784 3.3281 2.94342 12.0732 3.6013 2.7780 2.8151 2.91253 1.4049 3.1349 2.7707 2.8706 2.91734 3.0365 2.7231 2.8176 2.9190 2.92085 1.8139 2.7237 2.8575 2.9203 2.92056 6.2159 2.7421 2.9094 2.9220 2.92037 2.7159 2.7810 2.9161 2.9213 2.92038 −0.5636 2.8415 2.9264 2.9203 2.9203

Hier kann man erkennen, dass man eine gewisse Anzahln von Teilintervallen benötigt, um überhaupt indie Nähe des Wertes für das Integral zu gelangen. Fürn = 1 undk = 8 bekommt man gar einen negativenWert für die Approximation des Integrals, was an dem negativen Quadraturgewicht zu dem Quadratur-punkt in der Mitte des Intervalls liegt. Eine solche Quadraturformel, die nicht garantiert, dass für positiveIntegranden auch eine positive Näherung des Integrals resultiert, ist in der Praxis unbrauchbar.Numerische Resultate für die summierten Gauß–Legendre Quadraturformeln (wieder sind die Näherungs-werteI(f) gezeigt):

Page 30: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

28 Numerische Mathematik I

k n = 1 n = 2 n = 4 n = 8 n = 16

0 18.0000 0.8471 1.6778 2.5587 2.89711 0.6429 2.1243 2.9089 2.9911 2.92592 8.2016 2.9181 3.0119 2.9231 2.91983 1.2353 3.0502 2.9330 2.9188 2.92034 5.5350 2.9780 2.9162 2.9203 2.9203

Auch die summierten Gauß–Legendre-Formeln benötigen einegewisse Feinheit der Zerlegung, bevorbrauchbare Näherungen erzielt werden. Die Approximationen sind wieder in den meisten Fällen besserals die mit den Newton–Cotes-Formeln erhaltenen.Numerische Resultate für die summierten Clenshaw–Curtis-Quadraturformeln (wieder sind die Näherungs-werteI(f) gezeigt):

k n = 1 n = 2 n = 4 n = 8 n = 16

1 0.2195 9.1098 4.9784 3.3281 2.94342 12.0732 3.6013 2.7780 2.8151 2.91253 0.7773 2.5036 2.8275 2.9450 2.92284 7.4460 2.7798 2.9496 2.9228 2.92015 1.3639 2.9367 2.9351 2.9197 2.92036 5.1532 2.9561 2.9201 2.9202 2.92037 1.8215 2.9371 2.9193 2.9203 2.92038 4.2112 2.9223 2.9200 2.9203 2.9203

Wie bei den beiden anderen Verfahren führen sehr grobe Unterteilungen bzw. wenige Stützpunkte offenbarzu völlig unbrauchbaren Ergebnissen. Man sieht auch, dass die Clenshaw–Curtis-Formeln hier deutlich ge-nauer sind als die Newton–Cotes-Formeln und nur geringfügig ungenauer als die Gauß–Legendre-Formeln.Eine detaillierte theoretische Analyse zeigt, dass die Gauß-Integration nur dann deutlich genauer ist als dieClenshaw–Curtis-Integration, wenn der Integrand in einemrelativ großen Gebiet um das Integrationsinter-vall analytisch ist. Dann liefern aber alle Verfahren schonbei geringem Aufwand eine hohe Genauigkeit.Da f die Pole±i ∈ C hat, ist das AnalytizitätsgebietGf = {z ∈ C : dist(z, J) < 1} für das kleine IntervallJ = [−1, 1] relativ groß (die Gauß-Integration deutlich genauer) und für das große IntervallJ = [−9, 9]relativ klein (Gauß- und Clenshaw–Curtis-Integration vergleichbar genau).

Page 31: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

Kapitel 3

Fehleranalyse numerischerAlgorithmen

Bei numerischen Berechnungen treten vielfältige Arten vonFehlerquellen auf.

Rundungsfehler. Die Ergebnisse numerischer Berechnungen können nur in Gleitkommadarstellung mitMaschinengenauigkeit dargestellt werden. Fehler in den Zwischenergebnissen können sich bei derAusführung der Gleitkommaoperationen(+,−, ·,/) verstärken.

Datenfehler. Eingabedaten aus Experimenten enthalten in der Regel Messfehler. Oder die Eingabedatenstammen aus einer vorhergehenden fehlerbehafteten Rechnung.

Approximationsfehler. Funktionen (z. B. sinx) können meist nicht exakt berechnet werden, sondern wer-den durch eine einfachere Funktion, z. B. ein interpolierendes Polynom ersetzt.

Um die Verlässlichkeit der Ergebnisse numerischer Verfahren beurteilen zu können, ist es notwendig, dieAuswirkung dieser Fehler auf die Genauigkeit der Berechnungen zu untersuchen.

3.1 Sachgemäß gestellte Probleme und Kondition

Intuitiv ausgedrückt gibt die Kondition eines Problems dieEmpfindlichkeit des Fehlers im Resultat bzgl.kleiner Fehler in den Eingabedaten an.

Beispiel.Wir betrachten die Auswertung einer differenzierbaren Funktion f : R → R an einer Stellex ∈ R. Nachdem Mittelwertsatz giltf(x + δ) − f(x) = f ′(ξ)δ mit ξ ∈ B|δ|(x) := {ξ : |ξ − x| < |δ|}. Für δ → 0 gibt|f ′(x)| daher die Kondition bezüglich des absoluten Fehlers an. Fürdie Kondition bezüglich des relativenFehlers erhalten wir aus

|f(x + δ) − f(x)|

|f(x)|=

|x|

|f(x)||f ′(ξ)|

|δ|

|x|

den Ausdruck|x|

|f(x)||f ′(x)|.

Wir liefern nun eine formale Definition des Konditionsbegriffes nach.

Definition (Kondition).Es seienx bzw. x die exakten bzw. gestörten Eingabedaten undy bzw. y die zugehörigen Resultate einerProblemstellung. Alsabsolute Konditionbzgl. der Normen‖ · ‖X (für die Eingabedaten) und‖ · ‖Y (für dieResultate) bezeichnen wir (mitBδ(x) := {x ∈ X : ‖x − x‖X 6 δ} für δ > 0)

κabs(x) := limδ↓0

inf {κ : ‖y − y‖Y 6 κ‖x − x‖X für alle zulässigenx ∈ Bδ(x)}.

Page 32: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

30 Numerische Mathematik I

Die relative Kondition(im Fall x 6= 0, y 6= 0) ist gegeben durch

κrel(x) := limδ↓0

inf

{

κ :‖y − y‖Y

‖y‖Y

6 κ‖x − x‖X

‖x‖X

für alle zulässigenx ∈ Bδ(x)

}

.

Bemerkung.Ein Problem mit endlicher Kondition wird alssachgemäß gestelltbezeichnet, andernfalls alsschlecht gestellt. Schlecht gestellte Probleme lassen sich oft durch geschickte Umformulierung in sach-gemäß gestellte transformieren. Um mit numerischen Verfahren brauchbare Näherungen konstruieren zukönnen, ist es zusätzlich nötig, dass die Kondition des Problems nicht allzu groß ist.

Satz 3.1(Kondition der Polynominterpolation).Es seiena 6 x0 < · · · < xn 6 b paarweise verschiedene Stützpunkte. Die absolute Kondition derPolynominterpolation bzgl. der Maximum-Norm für die Fehler in den Stützwertenf ∈ Rn+1,

‖f − f‖X := max06i6n

|fi − fi|,

bzw. für die resultierenden Fehler der Interpolationspolynome,

‖p − p‖Y := maxx∈[a,b]

|p(x) − p(x)|,

ist gegeben durch

κabs≡ κabs(f) = maxx∈[a,b]

n∑

i=0

|Li(x)| =: Λn

mit den Lagrange-PolynomenLi, i = 0, . . . ,n. Λn wird auch alsLebesgue-Konstantebezeichnet.

Beweis.Für das Interpolationspolynomp und das zugehörige gestörte Polynomp gilt

|p(x) − p(x)| =

∣∣∣∣∣

n∑

i=0

(fi − fi)Li(x)

∣∣∣∣∣6

n∑

i=0

|fi − fi| |Li(x)| 6 ‖f − f‖X

n∑

i=0

|Li(x)|.

Daraus folgt‖p − p‖Y 6 ‖f − f‖XΛn und somit κabs6 Λn.

Um die Gleichheit zu zeigen, wählen wir nun Stützwertefi, i = 0, . . . ,n, so dass für das zugehörigeInterpolationspolynom gilt:

‖p − p‖Y > ‖f − f‖XΛn.

Sei dazuξ ∈ [a,b] mitn∑

i=0

|Li(ξ)| = maxx∈[a,b]

n∑

i=0

|Li(x)|.

Zu beliebigemδ > 0 wählen wir nunfi ∈ Bδ(fi) so, dass

fi − fi =

{

+δ falls Li(ξ) > 0,

−δ falls Li(ξ) < 0.

Dann gilt

‖p − p‖Y > |(p − p)(ξ)| =

∣∣∣∣∣

n∑

i=0

(fi − fi)Li(ξ)

∣∣∣∣∣

= δ

n∑

i=0

|Li(ξ)| = max06i6n

|fi − fi| maxx∈[a,b]

n∑

i=0

|Li(x)| = ‖f − f‖XΛn.

Man beachte, dassκabsnicht vonf abhängt.

Page 33: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

3. Fehleranalyse numerischer Algorithmen 31

Bemerkung.Das Wachstum der Lebesgue-Konstanten mit dem Polynomgrad hängt wesentlich von derWahl der Stützpunkte ab. Für[a,b] = [−1, 1] erhält man zum Beispiel die folgenden Werte:

n 5 10 15

Λn (äquidistante Knoten) 3.11 24.89 512.65Λn (Tschebyschow-Knoten) 2.1 2.49 2.73

Satz 3.2(Kondition der Integration).Die absolute Kondition der Integration bzgl. derL1-Norm

‖f‖X :=

∫ b

a

|f(x)|dx

in den Eingabedaten ist gegeben durchκabs = 1.

Beweis.

|I(f) − I(f)| =

∣∣∣∣

∫ b

a

f(x) dx −

∫ b

a

f(x) dx

∣∣∣∣6

∫ b

a

|f(x) − f(x)|dx = ‖f − f‖X.

Gleichheit gilt, fallsf(x) − f(x) > 0 oder6 0 für allex ∈ [a,b]. Auch hier istκabsunabhängig vonf.

Bemerkung.(a) Die relative Kondition der Interpolation ist gegeben durch

κrel(f) = Λn

‖f‖X

‖p‖Y

.

(b) Die relative Kondition der Integration ist gegeben durch

κrel(f) =I(|f|)

|I(f)|.

Somit wirdκrel groß für stark oszillierende Integranden, für die|I(f)| ≪ I(|f|) gilt.

3.2 Konditionszahlen von Matrizen

Uns interessiert die Kondition der Matrix-Vektor-Multiplikation einer MatrixA ∈ Rn×n mit einem Vektorx ∈ Rn. Setzen wir die formale Definition der absoluten Kondition ein, so erhalten wir

κabs= limδ↓0

inf {κ : ‖Ax − Ax‖ 6 κ‖x − x‖ für alle x ∈ Bδ(x)} = supy∈Rn\{0}

‖Ay‖‖y‖ .

Dieser Ausdruck stellt eine Norm für die durch die MatrixA beschriebene lineare Abbildung dar und wirdals induzierte Matrix-Normbezeichnet. Wir benutzen dasselbe Symbol‖ · ‖ (gegebenenfalls mit Index)sowohl für die Vektor-Norm als auch für die dadurch induzierte Matrix-Norm.

Satz 3.3(Spektralnorm).Das Spektrum einer quadratischen MatrixM seiσ(M) ⊆ C. Für die durch die euklidische Norm‖ · ‖2

induzierte Matrix-Norm

‖A‖2 := supy6=0

‖Ay‖2

‖y‖2

gilt

‖A‖2 =

maxσ(ATA) ≡√

λmax(ATA).

Die Matrix-Norm‖ · ‖2 wird deshalb alsSpektralnormbezeichnet. Für symmetrische Matrizen gilt

‖A‖2 = max|σ(A)| = max {|λ| : λ ∈ σ(A)} .

Page 34: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

32 Numerische Mathematik I

Beweis.Aus der Definition von‖ · ‖2 folgt unmittelbar

‖A‖22 = sup

y6=0

‖Ay‖22

‖y‖22

= supy6=0

yTATAy

yTy.

Die symmetrische MatrixATA lässt sich mittels einer orthogonalen Transformation auf Diagonalgestaltbringen:

ATA = UΛUT mit Λ = Diag(λ1, . . . ,λn) :=

λ1. . .

λn

und einer orthogonalen MatrixU ∈ O(n). WegenUUT = I und mitz := UTy führt dies auf

supy6=0

yTATAy

yTy= sup

y6=0

yTUΛUTy

yTUUTy= sup

z 6=0

zTΛz

zTz

= supz 6=0

∑ni=1 λiz

2i

∑ni=1 z2

i

= max16i6n

λi.

Die Aussage für symmetrische Matrizen folgt aus der Tatsache, dass in diesem Fall die Eigenwerte vonATA = A2 die Quadrate der Eigenwerte vonA sind.

Für die relative Kondition der Matrix-Vektor-Multiplikation mit A ∈ Rn×n gilt

κrel(x) = limδ↓0

inf

{

κ :‖Ax − Ax‖

‖Ax‖ 6 κ‖x − x‖‖x‖ für alle x ∈ Bδ(x)

}

= supy6=0

‖Ay‖‖y‖

‖x‖‖Ax‖ = ‖A‖ ‖x‖

‖Ax‖ .

Fürx ∈ ker(A) gilt somitκrel(x) = ∞. Für reguläresA ∈ Rn×n kann man aber das Supremum über allevon Null verschiedenen Vektorenx bilden und erhält

supx6=0

‖A‖ ‖x‖‖Ax‖ = sup

y6=0‖A‖‖A

−1y‖‖y‖ = ‖A‖ ‖A−1‖.

Definition (Konditionszahl).Der Ausdruckκ(A) := ‖A‖ ‖A−1‖ heißtKonditionszahlder regulären MatrixA. Die zugrundeliegendeNorm wird durch einen Index gekennzeichnet, also beispielsweise

κ2(A) = ‖A‖2‖A−1‖2

für die Spektralnorm.

Die Lösung eines lineares GleichungssystemsAx = b ist äquivalent zur Matrix-Vektor-Multiplikationx = A−1b. Daher erhält man für dieses Problem die absolute Kondition

κabs = ‖A−1‖

und die relative Kondition

κrel(b) = ‖A−1‖ ‖b‖‖A−1b‖ .

Das Supremum über alle von Null verschiedenen rechten Seiten b ergibt „im schlimmsten Fall“ wiederκ(A−1) = ‖A−1‖ ‖A‖ = κ(A).Neben der euklidischen Norm lässt sich auch zu einigen anderen Normen imRn die zugehörige induzierteMatrix-Norm aufRn×n angeben, beispielsweise für

‖y‖1 =

n∑

i=1

|yi| und ‖y‖∞ = max16i6n

|yi|.

Page 35: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

3. Fehleranalyse numerischer Algorithmen 33

Satz 3.4(Zeilen- und Spaltensummennorm).Für die durch die Betragssummennorm‖ · ‖1 bzw. die Maximum-Norm‖ · ‖∞ induzierten Matrix-Normen

‖A‖1 := supy6=0

‖Ay‖1

‖y‖1bzw. ‖A‖∞ := sup

y6=0

‖Ay‖∞‖y‖∞

gilt

‖A‖1 = max16j6n

n∑

i=1

|aij| bzw. ‖A‖∞ = max16i6n

n∑

j=1

|aij|.

Die Matrix-Norm‖ · ‖1 wird alsSpaltensummennorm, ‖ · ‖∞ alsZeilensummennormbezeichnet.

Beweis.Für die Vektor-Norm‖ · ‖1 im Rn gilt

‖y‖1 =

n∑

i=1

|yi|

und somit

‖Ay‖1 =

n∑

i=1

∣∣∣∣∣

n∑

j=1

aijyj

∣∣∣∣∣6

n∑

i=1

n∑

j=1

|aij| |yj| =

n∑

j=1

|yj|

n∑

i=1

|aij|

6

(

max16j6n

n∑

i=1

|aij|

)n∑

j=1

|yj| =

(

max16j6n

n∑

i=1

|aij|

)

‖y‖1.

Aufgrund der Definition der induzierten Matrix-Norm erhältman also

‖A‖1 = supy6=0

‖Ay‖1

‖y‖16 max

16j6n

n∑

i=1

|aij|.

Seik ein Index mitn∑

i=1

|aik| = max16j6n

n∑

i=1

|aij|

undek ∈ Rn derk-te Einheitsvektor. Offenbar gilt dann

‖A‖1 = supy6=0

‖Ay‖1

‖y‖1>

‖Aek‖1

‖ek‖1=

n∑

i=1

|aik|.

Insgesamt haben wir gezeigt:

‖A‖1 = max16j6n

n∑

i=1

|aij|.

Zum entsprechenden Beweis für die Norm‖ · ‖∞ siehe Aufgabe 7.1.

Eine weitere Norm auf dem Raum dern × n-Matrizen ist dieFrobenius-Norm,

‖A‖F :=

(n∑

i=1

n∑

j=1

a2ij

)12

.

Für alleA ∈ Rn×n gilt ‖A‖2 6 ‖A‖F, denn füry ∈ Rn haben wir

‖Ay‖22 =

n∑

i=1

(n∑

j=1

aijyj

)2

6

n∑

i=1

n∑

j=1

a2ij

n∑

j=1

y2j = ‖A‖2

F‖y‖22.

Page 36: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

34 Numerische Mathematik I

Die Frobenius-Norm aufRn×n wird nicht durch eine Vektor-Norm induziert, denn für jede durch eineVektor-Norm induzierte Matrix-Norm gilt offenbar

‖I‖ = supy6=0

‖y‖‖y‖ = 1,

die Frobenius-Norm liefert aber

‖I‖F =

(n∑

i=1

12

)12

=√

n.

Auch die durch

‖A‖∗ :=1√n‖A‖F

definierte Matrix-Norm wird nicht durch eine Vektor-Norm induziert, denn für

E =

1 . . . 1...

......

1 . . . 1

∈ Rn×n und e =

1...1

∈ Rn

erhält man‖E‖∗ =

n√n

=√

n,

aber jede durch eine Vektor-Norm induzierte Matrix-Norm erfüllt

‖E‖ = supy6=0

‖Ey‖‖y‖ >

‖Ee‖‖e‖ =

‖ne‖‖e‖ = n.

Beispiel.Wir betrachten dieHilbert-Matrix

Hn :=

1 12

13 . . . 1

n12

13

14 . . . 1

n+113

14

15 . . . 1

n+2...

......

. . ....

1n

1n+1

1n+2 . . . 1

2n−1

∈ Rn×n

und lösen das lineare GleichungssystemHnx = b für die rechte Seite

b =

11213...1n

∈ Rn.

Nun stören wir die rechte Seiteb, indem wir von doppelter Genauigkeit (mit einem Fehler von höchstens2−52 ≈ 2.22· 10−16) zu einfacher Genauigkeit (Fehler höchstens 2−23 ≈ 1.2· 10−7) übergehen.

n ‖b − b‖2/‖b‖2 ‖x − x‖2/‖x‖2 κ2(Hn)

4 8.33· 10−9 8.13· 10−5 1.55· 104

8 1.06· 10−8 1.34· 101 1.53· 1010

12 1.10· 10−8 1.57· 107 1.67· 1016

Die numerischen Ergebnissen zeigen, dass die Konditionszahlenκ2(Hn) recht gut die riesigen „Verstär-kungsfaktoren“ von Störungen der rechten Seite zu Störungen der Lösung beschreiben.

Page 37: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

3. Fehleranalyse numerischer Algorithmen 35

3.3 Stabilität von Algorithmen

Ein Algorithmus zur Berechnung vonf(x) liefert aufgrund der Rundungs- und Approximationsfehler eingestörtes Resultatf(x). Dabei gilt es zu klären, ob dieses Resultatf(x) anstelle vonf(x) akzeptabel ist.

Definition (Rückwärtsstabilität).Ein Algorithmus zur Auswertung vonf(x), der unter Berücksichtigung von Rundungsfehlern das Ergebnisf(x) liefert, heißtrückwärtsstabil, falls zu jedemx eine „kleine Störung“δx existiert, so dass

f(x) = f(x + δx)

gilt. Die Störungδx heißtRückwärtsfehler.

Bemerkung.Ein Algorithmus wird also als rückwärtsstabil bezeichnet,wenn er die exakte Lösung einesProblems mit leicht geänderten Eingangsdaten liefert. Fürden tatsächlichen Fehler bei der Auswertung vonf(x) gilt somit

|f(x) − f(x)| = |f(x + δx) − f(x)| ≈ κabs(x)|δx|.

Verwendet man einen rückwärtsstabilen Algorithmus, so istder Fehler im Ergebnis in Abhängigkeit vonδx klein, es sei denn, die absolute Kondition des Problems ist groß.

Auf dem Rechner werden reelle Zahlen in Gleitpunktdarstellung gespeichert (üblicherweise zur Basis 2),z. B.

0.101012 · 23 für die Zahl 5.25.

Die meisten Rechner (SUN, DEC, HP, IBM Workstations sowie alle PCs) verwenden die IEEE-Arithmetik:

IEEE „single precision“ (32 Bit) 1 8 23Vorz. Exponent Mantisse

IEEE „double precision“ (64 Bit) 1 11 52

Diese Gleitpunktdarstellung istnormalisiert:die erste Binärziffer nach dem Punkt ist immer eine 1.Wir bezeichnen die Elementaroperationen mit◦ ∈ {+,−,∗,/ }; ihre Realisierungen auf dem Rechner mit⊚ ∈ {⊕,⊖,⊛,⊘}. Mit der relativen MaschinengenauigkeitεM gilt: x ⊚ y = (x ◦ y)(1 + ε) mit |ε| 6 εM ,wobeiεM = 2−23 ≈ 1.2· 10−7 (single precision) bzw.εM = 2−52 ≈ 2.22· 10−16 (double precision).

Beispiel.Wir untersuchen die Stabilität desHorner-Schemaszur Auswertung eines Polynoms an der Stelle x,

p(x) = anxn + an−1xn−1 + · · · + a1x + a0.

Algorithmus (Horner-Schema).

p = an

for i = n − 1 : −1 : 0 dop = x ∗ p + ai

end for

Konkret werten wir mit relativer GenauigkeitεM = 2−52 ≈ 2.22· 10−16 das folgende Polynom aus:

p(x) = (x − 2)9

= x9 − 18x8 + 144x7 − 672x6 + 2016x5 − 4032x4 + 5376x3 − 4608x2 + 2304x − 512.

Die Funktionswerte sind in Abb. 3.1 dargestellt. Um die Effekte bei der Polynomauswertung mit demHorner-Schema zu erklären, betrachten wir die Ausführung des Algorithmus auf dem Rechner:

pn = an

for i = n − 1 : −1 : 0 dopi = x ⊛ pi+1 ⊕ ai

end for

Page 38: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

36 Numerische Mathematik I

-1.5e-10

-1e-10

-5e-11

0

5e-11

1e-10

1.5e-10

1.9 1.92 1.94 1.96 1.98 2 2.02 2.04 2.06 2.08 2.1

exaktHorner

Abbildung 3.1: Polynomauswertung mit dem Horner-Schema

Die explizite Berücksichtigung der Rundungsfehler bei jeder Gleitpunktoperation führt auf

pn = an

for i = n − 1 : −1 : 0 dopi = [(x ∗ pi+1)(1 + εi) + ai](1 + ε ′

i)

end for

mit |εi|, |ε ′i| 6 εM . Ausmultiplizieren ergibt

p0 =

n−1∑

i=0

[

(1 + ε ′i)

i−1∏

j=0

(1 + εj)(1 + ε ′j)

]

aixi +

[n−1∏

j=0

(1 + εj)(1 + ε ′j)

]

anxn.

Nach Vernachlässigung von Termen höherer Ordnung (unter Verwendung vonnεM ≪ 1) erhalten wir

(1 + ε1) · · · (1 + εj) 6 (1 + εM)j6

11 − jεM

≈ 1 + jεM ,

(1 + ε1) · · · (1 + εj) > (1 − εM)j> 1 − jεM .

Somit gilt

p0 =

n∑

i=0

(1 + δi)aixi mit |δi| 6 2nεM + O(ε2

M),

d. h. der berechnete Wertp0 für p(x) ist der exakte Wert eines gestörten Polynoms mit den Koeffizienten(1 + δi)ai, i = 0, . . . ,n. Für große Koeffizientenai sind also auch große Störungenδiai zu erwarten.Die in Abb. 3.1 dargestellten Ergebnisse zeigen aber Fehlerbei der Auswertung vonp(x), die um einenFaktor von etwa 105 über der RechengenauigkeitεM liegen. Diese Tatsache lässt sich nur teilweise mit derGrößenordnung der Koeffizienten des Polynoms und dem damit verbundenen Verlust an Stabilität erklären.Zum Teil muss dies auch daran liegen, dass das Problem der Auswertung des Polynomsp(x) eine großeKondition besitzt. Dies ist auch tatsächlich der Fall, denndie absolute Kondition für die Polynomauswer-tung bezüglich Störungen der Koeffizienten (nicht Störungen inx) ist gegeben durch

κabs = limδ↓0

inf

{

κ : |p(x) − p(x)| 6 κ max06i6n

|ai − ai|

}

=

n∑

i=0

|xi|.

Page 39: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

3. Fehleranalyse numerischer Algorithmen 37

In der Umgebung des Punktesx = 2 gilt somit für unser Polynomκabs ≈ 210 − 1 = 1023, und dieseKondition geht ein in die Abschätzung

|p0 − p(x)| =

∣∣∣∣∣

n∑

i=0

(1 + δi)aixi −

n∑

i=0

aixi

∣∣∣∣∣=

∣∣∣∣∣

n∑

i=0

δiaixi

∣∣∣∣∣

6 2nεM max06i6n

|ai|

n∑

i=0

|xi| + O(ε2M) = 2nεMκabs max

06i6n|ai| + O(ε2

M).

Beispiel.Zum Abschluss dieses Kapitels soll die Rückwärtsstabilität der Cramerschen Regel zur Lösung linearerGleichungssysteme untersucht werden. Dazu betrachten wirwieder die Hilbert-Matrix aus dem vorigenAbschnitt und lösen das zugehörige lineare Gleichungssystem mit der rechten Seite

b =

(

1,13

,

(13

)2

, . . . ,

(13

)n−1)T

.

Wir wenden auf dieses lineare Gleichungssystem die Cramersche Regel an und berechnen dann für die soerhaltene Näherungslösungx das Residuumb−Hnx. Dies liefert die in der folgenden Tabelle aufgeführtenErgebnisse:

n 4 7 10 15

‖b − Hnx‖2 6.57· 10−14 1.86· 10−9 7.98· 10−3 3.64· 103

Die durch die Cramersche Regel gelieferte Näherung ist alsooffenbar nicht die exakte Lösung eines Pro-blems mit leicht gestörter rechter Seiteb, jedenfalls sicher nicht fürn > 10. Daher ist die CramerscheRegel nicht rückwärtsstabil. Die direkten Lösungsverfahren, die wir im nächsten Kapitel untersuchen wer-den, liefern dagegen die folgenden Ergebnisse:

n 4 7 10 15

‖b − Hnx‖2 6.77· 10−16 2.77· 10−14 1.08· 10−12 6.19· 10−10

Darüberhinaus verbietet sich die Verwendung der Cramerschen Regel auch wegen des mit der Berechnungder Determinanten verbundenen immensen Rechenaufwands.

Page 40: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,
Page 41: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

Kapitel 4

Direkte Verfahren zur Lösung linearerGleichungssysteme

Lineare GleichungssystemeAx = b, bei denen zu einer vorgegebenen MatrixA ∈ Rn×n und einer rechtenSeiteb ∈ Rn eine Lösungx ∈ Rn gesucht ist, stellen eine der am häufigsten auftretenden Problemstellun-gen der Numerischen Mathematik dar. Begegnet ist uns diese Aufgabe beispielsweise bei der Bestimmungder Koeffizienten in der B-Spline-Basisdarstellung zur kubischen Spline-Interpolation.

4.1 Gauß-Elimination und LR-Zerlegung

Die Grundidee beruht darauf, dass sich ein LGS mit einer Dreiecksmatrix mit relativ geringem Aufwandauflösen lässt. Daher führt man die Lösung des LGSAx = b auf die Lösung von Dreieckssystemen zurück.DasGaußsche Eliminationsverfahrengeht dabei folgendermaßen vor:

a11 a12 . . . a1n

a21 a22 . . . a2n

......

. . ....

an1 an2 . . . ann

x1

x2...

xn

=

b1

b2...

bn

Zunächst setzt manli1 := ai1a11

und subtrahiert dasli1-fache der 1. Zeile von deri-ten Zeile (fallsa11 6= 0).Dies führt auf

a11 a12 . . . a1n

0 a(2)

22 . . . a(2)

2n...

.... . .

...

0 a(2)n2 . . . a

(2)nn

x1

x2...

xn

=

b1

b(2)

2...

b(2)n

mit a(2)

ij = aij − li1a1j, b(2)

i = bi − li1b1, i, j = 2, . . . ,n. Dieselbe Eliminationsvorschrift wendet mannun auf die Restmatrix (ohne erste Zeile und Spalte) an:

A = A(1) → A(2) → · · · → A(n) =: R

A(k) =

a(1)11 a

(1)12 . . . a

(1)1n

a(2)

22 . . . a(2)

2n

. . ....

a(k)

kk . . . a(k)

kn...

. . ....

a(k)

nk . . . a(k)nn

Page 42: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

40 Numerische Mathematik I

FürA(k) hat der Eliminationsschritt folgende Gestalt:

lik := a(k)

ik /a(k)

kk , i = k + 1, . . . ,n : je n − k Multiplikationen,

a(k+1)

ij := a(k)

ij − lika(k)

kj , i, j = k + 1, . . . ,n : je (n − k)2 Multiplikationen und Additionen,

b(k+1)

i := b(k)

i − likb(k)

k , i = k + 1, . . . ,n : je n − k Multiplikationen und Additionen.

Dies lässt sich mit denFrobenius-Matrizen

Lk :=

1...

1−lk+1,k 1

......

−ln,k 1

.

darstellen alsA(k+1) := LkA(k), b(k+1) := Lkb(k).

Nachn − 1 Eliminationsschritten erhält manLn−1 · · ·L2L1A = R, oder umgeformt

A = LR mit L := (Ln−1 · · ·L2L1)−1 = L−1

1 L−12 · · ·L−1

n−1,

wobei

L−1k =

1...

1lk+1,k 1

......

ln,k 1

, L =

1

l21. . .

.... . .

. . .ln1 . . . ln,n−1 1

.

Die Bestimmung der DreieckszerlegungA = LR nach obigem Algorithmus setzt voraus, dassa(k)

kk 6= 0für k = 1, . . . ,n gilt. Die Gesamtzahl der Rechenoperationen (Additionen und Multiplikationen) für dieBestimmung der Dreieckszerlegung und die Transformation der rechten Seite (b → L−1b =: z) beträgt

n−1∑

k=1

2(n − k)2 + 3(n − k) =

n−1∑

k=1

2k2 + 3k =(n − 1)n(2n − 1)

3+ 3

(n − 1)n

2=

23n3 +

12n2 −

76n.

Lineare Gleichungssysteme der FormRx = z mit einer oberen DreiecksmatrixR (d. h.rij = 0 für i > j)lassen sich durch Rückwärtseinsetzen lösen. Dazu betrachten wir

r11 r12 . . . r1n

r22 . . . r2n

. . ....

rnn

x1

x2...

xn

=

z1

z2...

zn

.

und erhalten folgenden Algorithmus für das Rückwärtseinsetzen:

xn := zn/rnn : 1 Multiplikation

xn−1 := (zn − rn−1,nxn)/rn−1,n−1 : 2 Multiplikationen, 1 Addition

...

x1 := (z1 − r12x2 − · · · − r1nxn)/r11 : n Multiplikationen,n − 1 Additionen

Page 43: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

4. Direkte Verfahren zur Lösung linearer Gleichungssysteme 41

Dies ist offenbar durchführbar, fallsrii 6= 0 für i = 1, . . . ,n gilt. Der Rechenaufwand für das Rückwärts-einsetzen ergibt sich zu

n∑

i=1

2i − 1 = n2 Additionen und Multiplikationen.

Analog werden lineare Gleichungssysteme mit einer unterenDreiecksmatrixL durch Vorwärtseinsetzengelöst. Insgesamt besteht das Gaußsche Eliminationsverfahren zur Lösung eines LGSAx = b aus denfolgenden Schritten:

1. Berechnung der DreieckszerlegungA = LR,

2. Lösen des unteren DreieckssystemsLz = b,

3. Lösen des oberen DreieckssystemsRx = z.

4.2 Die Cholesky-Zerlegung

Definition.Eine symmetrische MatrixA ∈ Rn×n heißtpositiv definit, falls yTAy > 0 für alley ∈ Rn \ {0} gilt.

Satz 4.1.Es seiA ∈ Rn×n symmetrisch positiv definit. Dann existiert die DreieckszerlegungA = LR, und bei derDurchführung des Gaußschen Eliminationsverfahrens gilta

(k)

kk > 0 für k = 1, . . . ,n.

Beweis.Mit e1 = (1, 0, . . . , 0)T gilt nach Voraussetzung

a11 = eT1 Ae1 > 0.

Somit ist der 1. Schritt des Gaußschen Eliminationsverfahrens durchführbar. Wir betrachten die beimk-tenEliminationsschritt auftretende MatrixA(k) und bilden dazu

B(k) := A(k)LT1 · · ·LT

k−1 =

a(1)11

. . .

a(k)

kk . . . a(k)

kn...

. . ....

a(k)

nk . . . a(k)nn

.

(Dabei istB(1) := A(1) = A zu setzen). Die MatrixB(k+1) hängt mitB(k) gemäß

B(k+1) = A(k+1)LT1 · · ·LT

k−1LTk = LkA(k)LT

1 · · ·LTk−1L

Tk = LkB(k)LT

k

zusammen. Für alley ∈ Rn gilt daher

yTB(k+1)y = yTLkB(k)LTky = (LT

ky)TB(k)(LTky).

Da nach VoraussetzungB(1) = A symmetrisch positiv definit ist, sind somit auch alle MatrizenB(k) fürk = 2, . . . ,n symmetrisch positiv definit. Also gilt (mit demk-ten Einheitsvektorek):

a(k)

kk = eTkB(k)ek > 0,

und derk-te Schritt des Gaußschen Eliminationsverfahrens lässt sich durchführen.

Page 44: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

42 Numerische Mathematik I

Die Konstruktion aus dem Beweis von Satz 4.1 liefert nachn − 1 Schritten

B(n) = Ln−1 · · ·L2L1ALT1 LT

2 · · ·LTn−1 = Diag

(a

(1)

11 , . . . ,a(n)nn

)=: D.

Dies bedeutet, dass wirA zerlegen können in der Form

A = L−11 · · ·L−1

n−1DL−Tn−1 · · ·L−T

1 = LDLT .

Dabei istL eine untere Dreiecksmatrix mit Einsen auf der Diagonalen und D eine Diagonalmatrix mitpositiven Diagonaleinträgendk := a

(k)

kk . Mit

D1/2 = Diag(d1/21 , . . . ,d1/2

n )

erhalten wir hierausA = LD1/2D1/2LT = LLT , wobei L := LD1/2 eine untere Dreiecksmatrix mit posi-tiven Einträgen auf der Diagonalen ist. Diese Dreieckszerlegung wird alsCholesky-Zerlegungbezeichnet(benannt nach dem französischen Vermessungsingenieur Andre-Louis Cholesky, 1875-1918).Zur Berechnung der Cholesky-Zerlegung lässt sich die Symmetrie der MatrixA ausnutzen. Dies führt zueinem effizienteren Algorithmus im Vergleich zum GaußschenEliminationsverfahren. Dazu schreiben wirdie gewünschte DreieckszerlegungA = LLT aus:

l11...

. . .ln1 . . . lnn

l11 . . . ln1

. . ....

lnn

=

a11 . . . an1...

. . ....

an1 . . . ann

.

Zur Berechnung derk-ten Zeile vonL kann man diese nacheinander mit den Spalten vonLT multiplizieren,

lk1li1 + · · · + lkilii = aki, i = 1, . . . ,k,

was auf folgenden Algorithmus führt:

Algorithmus (Cholesky-Faktorisierung).

for k = 1 ton dofor i = 1 tok − 1 do

lki =(

aki −∑i−1

j=1 lkjlij

)

/ lii

end for

lkk =(

akk −∑k−1

i=1 l2ki

)1/2

end for

Der Rechenaufwand (Anzahl der Additionen und Multiplikationen bzw. Quadratwurzeln) beträgt

n∑

k=1

k∑

i=1

2i =

n∑

k=1

k(k + 1) =13n3 + n2 +

23n,

also etwa halb so viel wie beim Gaußschen Eliminationsverfahren.

4.3 Stabilitätsanalyse der Cholesky-Zerlegung

Die Lösung eines LGS unter Verwendung der Cholesky-Zerlegung besteht aus den folgenden Schritten:

1. Berechnung der Cholesky-ZerlegungA = LLT ,

2. Lösen des unteren DreiecksystemsLz = b,

3. Lösen des oberen DreiecksystemsLTx = z.

Page 45: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

4. Direkte Verfahren zur Lösung linearer Gleichungssysteme 43

In jedem dieser Schritte sind Skalarprodukte von Vektoren (Zeilen bzw. Spalten von Matrizen) die zu-grundeliegenden elementaren Operationen. Wir betrachtendaher zunächst die Rückwärts-Stabilität dieserOperation.

Lemma 4.2.Bei der Berechnung des Skalarproduktes in Gleitpunktarithmetik erhält man statt des exakten Wertes

s =

d∑

i=1

xiyi das gestörte Resultats =

d∑

i=1

xiyi(1 + δi)

mit |δi| 6 dεM + O(ε2M).

Beweis.Fürd = 1 gilt offenbars = x1y1(1+ δ1) mit |δ1| 6 εM . Durch vollständige Induktion übertragenwir die Formel von Skalarprodukten der Länged − 1 aufd > 2:

s =

(d−1∑

i=1

xiyi(1 + (d − 1)εi) + xdyd(1 + ε ′)

)

(1 + ε ′′) =

d∑

i=1

xiyi(1 + δi)

mit |εi| 6 εM + O(ε2M) und |ε ′|, |ε ′′| 6 εM , also|δi| 6 dεM + O(ε2

M).

Bemerkung.Die Abschätzung im Lemma ist unabhängig von der Additionsreihenfolge. Mit optimalerReihenfolge (Binärbaum) erreicht man sogar|δi| 6 (⌈log2 d⌉ + 1)εM + O(ε2

M).

Satz 4.3.Die Cholesky-Zerlegung berechnet fürn > 3 in Gleitpunktarithmetik eine untere DreiecksmatrixL, so dassfür den FehlerE := A − LLT in erster Näherung gilt:

|Eij| 6 nεM

n∑

k=1

|lik| |ljk|.

Beweis.In exakter Arithmetik liefert der Cholesky-Algorithmus

lki =

(

aki −

i−1∑

j=1

lkjlij

)

/ lii für i < k und lkk =

(

akk −

k−1∑

i=1

l2ki

)12

.

Für diese Formeln müssen wir die Auswirkung der Gleitpunktarithmetik untersuchen, wobei wir die Ab-schätzung für das Skalarprodukt aus Lemma 4.2 verwenden. Für die erste Formel erhalten wir

lki =

(

aki −

i−1∑

j=1

lkjlij(1 + (i − 1)εj)

)

(1 + ε ′)1

lii(1 + ε ′′)

mit |εj| 6 εM + O(ε2M) und |ε ′|, |ε ′′| 6 εM . Auflösen dieser Formel nachaki ergibt

aki =lkilii

(1 + ε ′)(1 + ε ′′)+

i−1∑

j=1

lkjlij(1 + (i − 1)εj) =

i∑

j=1

lkjlij(1 + (n − 1)εj)

mit |εj| 6 εM + O(ε2M), oder äquivalent

aki =

i∑

j=1

lkjlij + Eki

mit

|Eki| =

∣∣∣∣∣

i∑

j=1

lkjlij(n − 1)εj

∣∣∣∣∣6 (n − 1)εM

i∑

j=1

|lkj| |lij| + O(ε2M).

Page 46: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

44 Numerische Mathematik I

Analog gilt für die zweite Formel

lkk =

(

akk −

k−1∑

j=1

l2kj(1 + (k − 1)εj)

)12

(1 + ε ′)12 (1 + ε ′′)

mit |εj| 6 εM + O(ε2M) und |ε ′|, |ε ′′| 6 εM . Hierbei setzen wir voraus, dass auch die Berechnung der

Quadratwurzeln mit der MaschinengenauigkeitεM erfolgt. Auflösen nachakk ergibt

akk =l2kk

(1 + ε ′)(1 + ε ′′)2+

k−1∑

j=1

l2kj(1 + (k − 1)εj) =

k∑

j=1

l2kj(1 + nεj)

mit |εj| 6 εM + O(ε2M). Schließlich erhalten wir

akk =

k∑

j=1

l2kj + Ekk

mit

|Ekk| =

∣∣∣∣∣

k∑

j=1

l2kjnεj

∣∣∣∣∣6 nεM

k∑

j=1

|lkj|2 + O(ε2

M).

Fürn ∈ {1, 2} gilt nur |Eki| 6 (n+1)εM∑i

j=1|lkj| |lij|+O(ε2M), für n > 3 kann man dagegennεM durch

(n − 1)εM ersetzen.

Durch den Cholesky-Algorithmus wird also in Gleitpunktarithmetik die Cholesky-Zerlegung einer leichtgestörten Matrix berechnet:LLT = A − E. Der Cholesky-Algorithmus ist somit rückwärtsstabil.Wir wenden uns nun der Auflösung der Dreieckssysteme durch Vorwärts- bzw. Rückwärtseinsetzen zu.Vorwärtseinsetzen zur Lösung vonLz = b führt auf den folgenden Algorithmus:

for i = 1 ton dozi =

(bi −

∑i−1j=1 lijzj

)/ lii

end for

Satz 4.4.Das beim Vorwärtseinsetzen in Gleitpunktarithmetik erhaltene Resultatz ∈ Rn erfüllt Lz = b mit einerunteren DreiecksmatrixL ∈ Rn×n, für die in erster Näherung

|lij − lij| 6 nεM |lij|

gilt.

Beweis.Im ersten Schritt des Vorwärtseinsetzens gilt

z1 = (b1/l11)(1 + ε) = b1/ [l11(1 + ε11)]

mit |ε|, |ε11| 6 εM . Wegen der Abschätzung für das Skalarprodukt aus Lemma 4.2 gilt für n > 2

zi =

[

bi −

i−1∑

j=1

lijzj(1 + nεij)

]

/ lii(1 + ε ′i)(1 + ε ′′

i )

=

[

bi −

i−1∑

j=1

lij(1 + nεij)︸ ︷︷ ︸

=:lij

zj

]

/ [lii(1 + 2εii)︸ ︷︷ ︸

=:lii

]

mit |ε ′i|, |ε

′′i | 6 εM und |εij| 6 εM + O(ε2

M). Es folgt

|lij − lij| 6 n|lij| |εij| 6 nεM |lij| + O(ε2M).

Page 47: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

4. Direkte Verfahren zur Lösung linearer Gleichungssysteme 45

Bemerkung.Ein analoges Resultat gilt für das Rückwärtseinsetzen zur Lösung des oberen DreieckssystemsLTx = z durch folgenden Algorithmus:

for i = n : −1 : 1 doxi =

(zi −

∑nj=i+1 ljixj

)/ lii

end for

Man erhältLT x = z mit |lji − lji| 6 nεM |lji|. Wir haben also auch die Rückwärtsstabilität des Vorwärts-bzw. Rückwärtseinsetzens zur Lösung linearer Gleichungssysteme mit Dreiecksstruktur nachgewiesen.Die erhaltenen Ergebnisse fassen wir nun zusammen, um die Stabilität der Lösung linearer Gleichungssys-teme mit positiv definiter Matrix mittels Cholesky-Algorithmus zu untersuchen. Dazu stellen wir zunächstfest, dass

b = Lz = (L − L)z + Lz

= (L − L)LT x + LLT x =[(L − L)(LT − LT ) + (L − L)LT + L(LT − LT ) + LLT

]x

=[(L − L)(LT − LT ) + (L − L)LT + L(LT − LT ) + A − E

]x = Ax

gilt, wobeiE undL, LT die Abschätzungen aus Satz 4.3 bzw. 4.4 erfüllen. Dabei lassen sich die Matrixein-träge von

A − A = −E + L(LT − LT ) + (L − L)LT + (L − L)(LT − LT )

in erster Näherung folgendermaßen abschätzen:

|aij − aij| 6 |Eij| +

n∑

k=1

(|lik| |ljk − ljk| + |lik − lik| |ljk| + |lik − lik| |ljk − ljk|)

6 (3nεM + n2ε2M + O(ε2

M))

n∑

k=1

|lik| |ljk| ≈ 3nεM

n∑

k=1

|lik| |ljk|.

Schließlich gilt für symmetrisch positiv definitesA unter Beachtung des Cholesky-Algorithmus:

n∑

k=1

|lik| |ljk| 6

(n∑

k=1

l2ik

)12(

n∑

k=1

l2jk

)12

=√

aii√

ajj 6 max16i6n

aii 6 max16i,j6n

|aij| 6 ‖A‖∞.

Alles in allem haben wir also gezeigt, dass das Resultatx des Cholesky-Algorithmus die exakte Lösungeines lineares Gleichungssystems mit einer MatrixA ist, für die|aij − aij| 6 3nεM‖A‖∞ + O(ε2

M) gilt.

Beispiel.Wir kehren nun zu unserem Beispiel des elastisch verformtenBalkens aus dem einleitenden Kapitel zurück.Dort war folgende Minimierungsaufgabe gestellt:Bestimme unter allen zweimal stetig differenzierbaren Funktioneny ∈ C2[0,L], welche die Randbedingun-geny(0) = y ′(0) = 0 undy(L) = y ′(L) = 0 erfüllen, diejenige, die das folgende Funktional minimiert:

W(y) =EJ

2

∫ L

0y ′′(x)2 dx +

∫ L

0f(x)y(x) dx.

Wir versuchen, diese Minimierungsaufgabe näherungsweisezu lösen, indem wir den Raum der betrachte-ten Funktionen auf die kubischen Splines bezüglich einer uniformen Zerlegung von[0,L] in n Teilintervalleder Längeh = L/n einschränken:

V := {y ∈ S3,T : y(0) = y ′(0) = 0, y(L) = y ′(L) = 0}.

Jede Spline-Funktiony ∈ S3,T lässt sich durch die in Kapitel 1 eingeführte B-Spline-Basis

{B−1,B0,B1, . . . ,Bn−1,Bn,Bn+1}

Page 48: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

46 Numerische Mathematik I

darstellen als

y(x) =

n+1∑

i=−1

ηiBi(x) mit ηi ∈ R.

Die Randbedingungen ergeben folgende Bedingungen an die Koeffizienten:

y(0) = 0: 0 =14η−1 + η0 +

14η1,

y ′(0) = 0: 0 = −3

4hη−1 +

34h

η1,

y(L) = 0: 0 =14ηn−1 + ηn +

14ηn+1,

y ′(L) = 0: 0 =3

4hηn−1 −

34h

ηn+1.

Dies impliziertη−1 = η1, η0 = −η1/2, ηn = −ηn−1/2 undηn+1 = ηn−1. Eine Basis für den RaumV(der Dimensionn − 1) ist daher gegeben durch

{

B1 −12B0 + B−1,B2, . . . ,Bn−2,Bn−1 −

12Bn + Bn+1

}

=:{B1, B2, . . . ,Bn−2, Bn−1

}.

Unser Minimierungsproblem besteht nun also darin, die Koeffizientenηi für i = 1, . . . ,n − 1 so zu be-stimmen, dass die folgende Funktion minimiert wird:

W(η1, . . . ,ηn−1) =EJ

2

∫ L

0

(n−1∑

i=1

ηiB′′i (x)

)2

dx +

∫ L

0

(n−1∑

i=1

f(x)ηiBi(x)

)

dx

=EJ

2

n−1∑

i=1

n−1∑

j=1

ηiηj

∫ L

0B ′′

i (x)B ′′j (x) dx +

n−1∑

i=1

ηi

∫ L

0f(x)Bi(x) dx

=:12yTAy − yTb.

Dabei ergeben sich für unsere Spline-Basis die Matrix

A =EJ

h3

758 −3 − 3

1638

−3 6 − 278 0 3

8

− 316 − 27

8 6 − 278 0

...

38 0 − 27

8 6...

..... .

38 0

......

.. . 0 38

. . .. . .

. . . 6 − 278 0 3

8. . . 0 − 27

8 6 − 278 − 3

1638 0 − 27

8 6 −338 − 3

16 −3 758

∈ R(n−1)×(n−1)

und der Vektorb ∈ Rn−1 mit den Einträgen

bi = −

∫ L

0f(x)Bi(x) dx, i = 1, . . . ,n − 1,

wobei wir zur Auswertung dieser Integrale eine geeignete Quadraturformel (vgl. Kapitel 2) anwendenkönnen. Die MatrixA ist symmetrisch und positiv definit, und die Minimierungsaufgabe führt auf dasLGSAy = b, das mit der Cholesky-Zerlegung gelöst werden kann.

Page 49: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

4. Direkte Verfahren zur Lösung linearer Gleichungssysteme 47

-0.003

-0.0025

-0.002

-0.0015

-0.001

-0.0005

0

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

yy14y18

y12

Abbildung 4.1: Auslenkung des elastischen Balkens mit Lastin x = 14

Für unsere Beispielrechnungen wirdL := 1 gesetzt und (abhängig von der Feinheith := 1/n):

fn(x) :=

n − n2( 14 − x), x ∈ [ 1

4 − 1n

, 14],

n − n2(x − 14), x ∈ [ 1

4, 14 + 1

n],

0, sonst.

Dies approximiert eine punktförmige Belastung im Punktx = 1/4. Die resultierenden Auslenkungenyn,ydes elastischen Balkens (fürEJ = 1) sind in Abb. 4.1 dargestellt. Die angegebenen Konditionszahlen in derfolgenden Tabelle zeigen, dassκ2(A) proportional zun4 anwächst (κ2(A) ≈ 0.0106n4). Die drei letztenSpalten der Tabelle illustrieren die Rückwärtsstabilitätsowohl für die Berechnung der Cholesky-Zerlegungals auch für das Auflösen der Dreieckssysteme.

n κ2(A) ‖A − LLT‖2/‖A‖2 ‖b − Lz‖2/‖b‖2 ‖z − LTy‖2/‖z‖2

8 4.87· 101 1.57· 10−16 1.84· 10−16 1.92· 10−16

16 7.25· 102 1.57· 10−16 2.25· 10−16 5.92· 10−16

32 1.13· 104 1.57· 10−16 5.28· 10−16 2.70· 10−15

64 1.80· 105 1.58· 10−16 1.49· 10−15 1.14· 10−14

128 2.87· 106 1.57· 10−16 3.90· 10−15 3.49· 10−14

256 4.58· 107 1.57· 10−16 1.07· 10−14 1.44· 10−13

512 7.33· 108 1.57· 10−16 3.04· 10−14 5.59· 10−13

1024 1.17· 1010 1.57· 10−16 8.23· 10−14 2.13· 10−12

4.4 Spaltenpivotsuche

Die Berechnung der LR-Zerlegung versagt, falls eines der Pivotelementea(k)

kk verschwindet. Dazu betrach-te man die Matrix

A :=

[0 11 1

]

.

Page 50: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

48 Numerische Mathematik I

A ist regulär, aber der erste Schritt des Gaußschen Eliminationsverfahren ist nicht durchführbar. In derPraxis treten Probleme bereits bei kleinen Pivotelementenauf, wie das Beispiel der Matrix

A :=

[10−20 1

1 1

]

zeigt. Ein Schritt des Gaußschen Eliminationsverfahrens liefert in exakter ArithmetikA = LR mit

L =

[1 0

1020 1

]

, R =

[10−20 1

0 1− 1020

]

.

Auf einem Rechner mit MaschinengenauigkeitεM ≈ 10−16 wird 1 − 1020 durch−1020 dargestellt. Dienumerische Durchführung des Gaußschen Eliminationsverfahrens liefert

L =

[1 0

1020 1

]

, R =

[10−20 1

0 −1020

]

und dies führt auf

LR =

[10−20 1

1 0

]

.

Das Gaußsche Eliminationsverfahren ist also nicht rückwärtsstabil. Vermeiden lässt sich dieses Phänomendurch Vertauschen der beiden Zeilen. Hierfür benötigen wireine Spaltenpivotstrategie.Der Eliminationsschritt mitSpaltenpivotsuchesieht folgendermaßen aus:

1. Wähle im SchrittA(k) → A(k+1) einp ∈ {k, . . . ,n}, so dass|a(k)

pk | > |a(k)

jk | für j = k, . . . ,n gilt;

2. Vertausche die Zeilenp undk:

A(k) → A(k) mit a(k)

ij :=

a(k)

kj falls i = p,

a(k)

pj falls i = k,

a(k)

ij sonst;

3. Führe den nächsten Eliminationsschritt angewandt aufA(k) aus.

Die Vertauschung der Zeilenp undk lässt sich als Multiplikation von links mit einer Permutationsmatrixbeschreiben:

P :=[

e1, . . . , ep︸︷︷︸

k-te Spalte

, . . . , ek︸︷︷︸

p-te Spalte

, . . . ,en

]

(ej = j-ter Einheitsvektor).

Permutationsmatrizen sind dadurch charakterisiert, dassin jeder Zeile und in jeder Spalte genau ein Ele-ment verschieden von Null ist und dieses den Wert 1 hat.

Satz 4.5.Es seiA ∈ Rn×n regulär. Dann existiert eine PermutationsmatrixP, so dass es eine DreieckszerlegungPA = LR gibt mit der Eigenschaft, dass|lij| 6 1 für alle Einträge in der MatrixL gilt.

Beweis.Wir zeigen, dass das Gaußsche Eliminationsverfahren mit Spaltenpivotstrategie die Dreiecks-zerlegung mit der gewünschten Eigenschaft liefert. Die Spaltenpivotstrategie führt im ersten Schritt aufA(1) = P1A

(1) mit 0 6= |a(1)

11 | > |a(1)

i1 | für i = 1, . . . ,n. Der Eliminationsschritt angewandt aufA(1) ergibt

A(2) = L1A(1) = L1P1A

(1) =

a(1)

11 a(1)

12 . . . a(1)

1n

0... B(2)

0

.

Page 51: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

4. Direkte Verfahren zur Lösung linearer Gleichungssysteme 49

Die Nicht-Null-Einträge inL1 sind entweder 1 (auf der Diagonalen) oder es gilt (in der ersten Spalte)

|li1| =

∣∣∣∣∣

a(1)

i1

a(1)

11

∣∣∣∣∣6 1, i = 2, . . . ,n.

Da die MatrizenL1,P1 undA(1) regulär sind, ist auchA(2) und somitB(2) regulär. Derselbe Prozess kannnun aufB(2) angewendet werden, was schließlich nachn − 1 Schritten aufR := Ln−1Pn−1 · · ·L1P1A

führt. Setzt man nun nochPn := I, so ergibt sich

R = PnLn−1P−1n

︸ ︷︷ ︸

Ln−1

PnPn−1︸ ︷︷ ︸

Pn−1

Ln−2Pn−2 . . .L1P1A

= Ln−1Pn−1Ln−2P−1n−1

︸ ︷︷ ︸

Ln−2

Pn−1Pn−2︸ ︷︷ ︸

Pn−2

· · ·L1P1A

= · · · = Ln−1Ln−2 · · · L2L1P1A

mit Li := P−1i+1LiPi+1 und Pi := Pn−1Pn−2 · · ·Pi für i = 1, . . . ,n − 1. Offenbar istPi als Produkt von

Permutationsmatrizen selbst eine Permutationsmatrix. Die Multiplikation von links mitPi+1 vertauschtnur Zeilen ab der(i + 1)-ten, Multiplikation von rechts mitP−1

i+1 vertauscht nur Spalten ab der(i + 1)-ten.Daher gilt

Li = Pi+1LiP−1i+1 =

1...

1−li+1,i 1

......

−ln,i 1

,

d. h.Li besitzt dieselbe Struktur wieLi. Es gilt alsoPA = LR mit

P := P1 und L := (Ln−1Ln−2 · · · L2L1)−1 = L−1

1 · · · L−1n−2L

−1n−1.

Bemerkung.Der zusätzliche Aufwand bei der Spaltenpivotsuche bestehtin der Suche des jeweiligen Pi-votelements sowie der Vertauschung zweier Zeilen in jedem Eliminationsschritt. Die Anzahl der hierzubenötigten Operationen wächst nur proportional zun2 an und ist daher gegenüber dem gesamten Rechen-aufwand vernachlässigbar.

Beispiel.Wir lösen das lineare GleichungssystemAy = b mit derVandermonde-Matrix

A =

xn−11 xn−2

1 . . . x1 1

xn−12 xn−2

2 . . . x2 1...

..... .

......

xn−1n−1 xn−2

n−1 . . . xn−1 1xn−1

n xn−2n . . . xn 1

mit xi := (i − 1)/(n − 1), i = 1, . . . ,n. Als rechte Seiteb ∈ Rn wählen wir einen Zufallsvektor. Fürden Rückwärtsfehler erhalten wir die in Tab. 4.1 aufgelisteten Werte. Es ist zu erkennen, dass sowohl dieBerechnung der LR-Zerlegung mit Spaltenpivotsuche als auch das Auflösen des unteren Dreieckssystemsrückwärtsstabil sind. Das Auflösen des oberen Dreieckssystems ist jedoch mit zunehmender Dimensionn

nicht mehr rückwärtsstabil. Der Grund hierfür liegt in dem Auftreten von Diagonalelementen stark unter-schiedlicher Größe in der MatrixR.

Page 52: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

50 Numerische Mathematik I

Tabelle 4.1: Rückwärtsfehler für LGS mit Vandermonde-Matrix

n ‖PA − LR‖2/‖A‖2 ‖Pb − Lz‖2/‖b‖2 ‖z − Ry‖2/‖z‖2

8 2.80· 10−17 9.97· 10−17 9.49· 10−14

9 7.98· 10−22 5.97· 10−17 6.96· 10−14

10 2.46· 10−17 8.88· 10−17 1.65· 10−11

11 2.91· 10−18 3.69· 10−17 1.59· 10−10

12 2.22· 10−17 9.55· 10−17 2.62· 10−10

13 6.62· 10−19 7.58· 10−17 7.70· 10−10

14 6.35· 10−19 8.66· 10−17 7.08· 10−8

15 1.95· 10−17 1.75· 10−16 6.40· 10−8

16 4.62· 10−17 1.40· 10−16 3.58· 10−7

17 1.82· 10−17 1.21· 10−16 1.85· 10−6

18 1.01· 10−17 1.16· 10−16 1.42· 10−4

19 1.21· 10−17 1.36· 10−16 7.66· 10−4

20 2.08· 10−17 1.06· 10−16 1.50· 10−3

4.5 Lineare Ausgleichsprobleme

Eine häufig auftretende Problemstellung ist die Anpassung von Parametern für ein vorgegebenes Modellzu einer Reihe von Messdaten. Dabei ist die Anzahl der Messdaten in der Regel erheblich größer als dieAnzahl der Parameter. Aufgrund von unvermeidbaren Messfehlern ist aber eine genaue Übereinstimmungdes Modells nicht möglich und man muss daher versuchen, die Parameter so zu bestimmen, dass dieseDiskrepanz möglichst gering bleibt.

Beispiel.Die GeschwindigkeitK, mit der eine chemischen Reaktion abläuft, hängt mit der TemperaturT über dassogenannteArrhenius-Gesetzzusammen, welches die Form

K = αe−β/T

mit Parameternα undβ besitzt. Diese Parameter sind nun vorgegebenen Messdaten(Ti,Ki), i = 1, . . . ,manzupassen. Dazu dient dieMethode der kleinsten Fehlerquadrate, die auf Gauß zurückgeht und darinbesteht, die Summe der Fehlerquadrate

m∑

i=1

(

Ki − αe−β/Ti

)2

zu minimieren. Allerdings geht in dieser Formulierung der Parameterβ nichtlinear ein, was zu einem nicht-linearen Ausgleichsproblem führt, das wesentlich schwieriger zu lösen ist als ein lineares. Daher formenwir die obige Formel für das Arrhenius-Gesetz um, so dass dieParameter nur in linearer Form auftreten:

ln K = ln α −β

T.

Die Methode der kleinsten Quadrate führt nun auf das lineareAusgleichsproblem der Bestimmung derParameter lnα =: γ undβ, so dass

m∑

i=1

(

ln Ki − γ +β

Ti

)2

minimiert wird. Dies lässt sich in Matrix-Schreibweise schreiben als

minβ,γ

∥∥∥∥∥∥∥

ln K1...

ln Km

−1/T1 1...

...−1/Tm 1

γ

)

∥∥∥∥∥∥∥

2

2

.

Die Lösung des Ausgleichsproblems ist zusammen mit den Messdaten in Abb. 4.2 aufgetragen.

Page 53: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

4. Direkte Verfahren zur Lösung linearer Gleichungssysteme 51

1e-06

1e-05

0.0001

0.001

0.01

720 730 740 750 760 770 780 790 800 810 820

Abbildung 4.2: Lösung des linearen Ausgleichsproblems fürdas Arrhenius-Gesetz

Die allgemeine Problemstellung linearer Ausgleichsprobleme besteht darin, zu einer gegebenen MatrixA ∈ Rm×n (m > n) und rechter Seiteb ∈ Rm das Problem

minx∈Rn

‖b − Ax‖22

zu lösen. In unserem Beispiel istn = 2 und der Lösungsvektor enthält die Parameterβ undγ als Einträge.

Satz 4.6.Ein Vektorx ∈ Rn minimiert‖b−Ay‖2

2 unter alleny ∈ Rn genau dann, wenn das Residuumr := b−Ax

senkrecht auf dem BildraumR(A) steht, also

AT r = 0

gilt. Das resultierende lineare Gleichungssystem

ATAx = ATb

ist genau dann regulär, wennA vollen Rang (Rangn) besitzt.

Beweis.(i) Es seix ∈ Rn eine Lösung des Systems derNormalengleichungenATAx = ATb. Für belie-bigesy ∈ Rn gilt dann

‖b − Ay‖22 = ‖b − Ax + A(x − y)‖2

2 = ‖r + A(x − y)‖22

= ‖r‖22 + ‖A(x − y)‖2

2 + 2(x − y)T AT r︸︷︷︸

=0

> ‖r‖22 = ‖b − Ax‖2

2.

Somit ist die BedingungAT r = 0 hinreichend dafür, dass ein Minimum vorliegt. Umgekehrt folgt fürjeden Vektory ∈ Rn, für den das Minimum angenommen wird,A(x−y) = 0 und somitb−Ay = r. DieBedingungAT r = 0 ist daher auch notwendig für das Vorliegen eines Minimums.

Page 54: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

52 Numerische Mathematik I

(ii) ATA ist genau dann singulär, wenn ein Vektorx ∈ Rn \ {0} existiert, für denATAx = 0 gilt. Dies istwiederum äquivalent zur Existenz einesx ∈ Rn \ {0} mit

xTATAx = ‖Ax‖22 = 0, d. h. Ax = 0.

Dies ist genau dann der Fall, wennA nicht vollen Rangn besitzt.

Bemerkung.Eine Lösung des linearen Ausgleichproblems ist also dadurch charakterisiert, dass das Resi-duum eine Normalenrichtung auf dem Bild vonA darstellt. Man bezeichnet daher das lineare Gleichungs-systemATAx = ATb als Normalengleichungen.

Im Falle vollen Ranges ist die symmetrische MatrixATA positiv definit. Die Lösung des linearen Aus-gleichsproblems mittels der Normalengleichungen kann daher in den folgenden Schritten geschehen:

(i) Berechne die MatrixATA ∈ Rn×n undATb ∈ Rn;

(ii) Berechne die Cholesky-ZerlegungATA = LLT ;

(iii) Löse das untere DreieckssystemLz = ATb für z ∈ Rn;

(iv) Löse das obere DreieckssystemLTx = z für x ∈ Rn.

Der Rechenaufwand wird dominiert vom Aufwand zur Berechnung der MatrixATA (etwamn2 Additio-nen und Multiplikationen, wenn die Symmetrie vonATA ausgenutzt wird) und für „kleines“m ≈ n demAufwand zur Berechnung der Cholesky-Zerlegung (etwan3/3 Additionen und Multiplikationen).

Satz 4.7.Für die Matrix A ∈ Rm×n (m > n) mit Vollrangn und den Vektorb ∈ Rm seix ∈ Rn die Lösung deslinearen Ausgleichsproblems. Bezeichnetθ den Winkel zwischenb und dem BildraumR(A), d. h.

cosθ = supy6=0

bTAy

‖b‖2‖Ay‖2,

so gilt für die relative Kondition gegenüber Störungen inb (bezüglich der euklidischen Norm):

κrel(b) = ‖(ATA)−1‖1/22

‖b‖2

‖(ATA)−1ATb‖26

κ2(ATA)1/2

cosθ.

Beweis.(i) Fürx = (ATA)−1ATb und x = (ATA)−1AT b

gilt gemäß der Definition der relativen Kondition:

κrel(b) = sup

{‖x − x‖2

‖x‖2

‖b‖2

‖b − b‖2: b ∈ Rm \ {b}

}

= sup

{‖(ATA)−1AT (b − b)‖2

‖b − b‖2

‖b‖2

‖(ATA)−1ATb‖2: b ∈ Rm \ {b}

}

= ‖(ATA)−1AT‖2‖b‖2

‖(ATA)−1ATb‖2.

Der erste Term in diesem Ausdruck lässt sich mit Satz 3.3 nochweiter umformen zu

‖(ATA)−1AT‖2 =(maxσ

{[(ATA)−1AT ]T (ATA)−1AT

})1/2

=(maxσ

{(ATA)−1AT [(ATA)−1AT ]T

})1/2

=(maxσ

{(ATA)−1

})1/2= ‖(ATA)−1‖1/2

2 ,

Page 55: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

4. Direkte Verfahren zur Lösung linearer Gleichungssysteme 53

wobei verwendet wurde, dass für eine beliebige MatrixB ∈ Rm×n die von Null verschiedenen EigenwertevonBTB mit denen vonBBT übereinstimmen. Wir erhalten somit

κrel(b) = ‖(ATA)−1‖1/22

‖b‖2

‖(ATA)−1ATb‖2.

(ii) Nach Satz 4.6 steht das Residuumb − Ax senkrecht auf dem BildraumR(A), d. h. für alley ∈ Rn gilt(b − Ax)TAy = 0. Die Formel für den Winkel führt somit auf

cosθ = supy6=0

bTAy

‖b‖2‖Ay‖2= sup

y6=0

(b − Ax)TAy + (Ax)TAy

‖b‖2‖Ay‖2

= supy6=0

(Ax)TAy

‖b‖2‖Ay‖2=

‖Ax‖2

‖b‖2.

Einsetzen vonx = (ATA)−1ATb liefert hieraus

cosθ =‖A(ATA)−1ATb‖2

‖b‖26

‖A‖2‖(ATA)−1ATb‖2

‖b‖2.

Wegen

‖A‖2 =(maxσ(ATA)

)1/2= ‖ATA‖1/2

2

erhalten wir schließlich

κ2(ATA)1/2

cosθ=

‖A‖2‖(ATA)−1‖1/22

cosθ>

‖A‖2‖(ATA)−1‖1/22 ‖b‖2

‖A‖2‖(ATA)−1ATb‖2

=‖(ATA)−1‖1/2

2 ‖b‖2

‖(ATA)−1ATb‖2= κrel(b).

Page 56: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,
Page 57: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

Kapitel 5

Iterative Verfahren zur Lösung linearerGleichungssysteme

In der Praxis auftretende lineare Gleichungssysteme besitzen oft sehr viele Unbekannte. Allerdings sind diezugehörigen Matrizen dünn besetzt, d. h. die meisten der Matrixeinträge sind Null. Berechnet man die LR-Zerlegung einer solchen Matrix, so stellt man fest, dass dieFaktorenL undR in der Regel wesentlich mehrNicht-Null-Einträge besitzen als die Ausgangsmatrix. DerRechen- und Speicheraufwand wird so bereitsbei linearen Gleichungssystemen mit einigen Tausend Unbekannten unvertretbar groß. Im Gegensatz zudirekten Verfahren zerstören iterative Verfahren nicht die Besetzungsstruktur der Ausgangsmatrix.

5.1 Relaxationsverfahren

Gegeben sei das lineare Gleichungssystem

a11 a12 · · · a1n

a21 a22 · · · a2n

......

. . ....

an1 an2 · · · ann

x1

x2...

xn

=

b1

b2...

bn

sowie eine Startnäherungx0 = (x01, . . . ,x0

n)T . Wir setzen voraus, dassA regulär ist und dass keines derDiagonalelementea11,a22, . . . ,ann verschwindet.DasJacobi-Verfahrenbasiert auf

aiixk+1i = bi −

j 6=i

aijxkj , i = 1, . . . ,n

und lautet (aufgelöst nachxk+1i ):

xk+1i :=

1aii

(

bi −∑

j 6=i

aijxkj

)

, i = 1, . . . ,n.

Alle Komponenten der neuen Iteriertenxk+1 können gleichzeitig berechnet werden; deshalb wird diesesVerfahren alsGesamtschrittverfahrenklassifiziert.DasGauß–Seidel-Verfahrenbasiert auf

i∑

j=1

aijxk+1j = bi −

n∑

j=i+1

aijxkj , i = 1, . . . ,n

Page 58: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

56 Numerische Mathematik I

und lautet (aufgelöst nachxk+1i ):

xk+1i :=

1aii

(

bi −

i−1∑

j=1

aijxk+1j −

n∑

j=i+1

aijxkj

)

, i = 1, . . . ,n.

Hier müssen die Komponenten der neuen Iteriertenxk+1 nacheinander berechnet werden; deshalb wirddieses Verfahren alsEinzelschrittverfahrenklassifiziert. Insbesondere hängt also die Durchführung desGauß–Seidel-Verfahrens von der Reihenfolge der Vektorkomponenten ab. Führt man das Gauß–Seidel-Verfahren in umgekehrter Reihenfolge aus, so erhält man dasRückwärts-Gauß–Seidel-Verfahren:

xk+1i :=

1aii

(

bi −

i−1∑

j=1

aijxkj −

n∑

j=i+1

aijxk+1j

)

, i = n, . . . , 1.

Iterative Verfahren, bei denen wie beim Jacobi- und den Gauß–Seidel-Verfahren einzelne Komponenten desLösungsvektors verändert und die übrigen beibehalten werden, heißen auchRelaxationsverfahren(“relax”:(Feder) entspannen, lockern). Das Aufspalten der MatrixA ∈ Rn×n in der Form

A = L + D + R

liefert übersichtlichere Darstellungen:

xk+1 := D−1(b − (L + R)xk), k = 0, 1, 2, . . . (Jacobi)

xk+1 := (D + L)−1(b − Rxk), k = 0, 1, 2, . . . (Vorwärts-Gauß–Seidel)

xk+1 := (D + R)−1(b − Lxk), k = 0, 1, 2, . . . (Rückwärts-Gauß–Seidel)

Für den Fehler der Näherung bezüglich der exakten Lösungx ∈ Rn gilt:

x − xk+1 = −D−1(L + R)(x − xk), k = 0, 1, 2, . . . (Jacobi)

x − xk+1 = −(D + L)−1R(x − xk), k = 0, 1, 2, . . . (Vorwärts-Gauß–Seidel)

x − xk+1 = −(D + R)−1L(x − xk), k = 0, 1, 2, . . . (Rückwärts-Gauß–Seidel)

Das Verhalten des Fehlers wird daher durch folgende Matrizen bestimmt:

MJ := −D−1(L + R) = I − D−1A,

MvGS := −(D + L)−1R = I − (D + L)−1A,

MrGS := −(D + R)−1L = I − (D + R)−1A.

Mit N ∈ {D−1, (D + L)−1, (D + R)−1} undM := I − NA = −N(A − N−1) besitzen alle Relaxationsver-fahren die Form

xk+1 := Mxk + Nb, k = 0, 1, 2, . . . , (*)

wobei manN als Näherungsinverse zuA auffassen kann: fürN = A−1 ist M = 0 und das Verfahrenkonvergiert in einem Schritt. Die (üblicherweise sehr groben) Näherungsinversen in Iterationsverfahrenwerden alsVorkonditioniererbezeichnet.Allgemein definiert jede invertierbare MatrixN ∈ Rn×n ein Iterationsverfahren der Form (*). Für dasVerhalten des Fehlers gilt dann wie oben

x − xk+1 = M(x − xk), k = 0, 1, 2, . . .

und somit‖x − xk+1‖ 6 ‖M‖ ‖x − xk‖, k = 0, 1, 2, . . .

für jede Vektor-Norm und die hierdurch induzierte Matrix-Norm. Hinreichendes Kriterium für die Konver-genz eines solchen Relaxationsverfahrens ist also, dass eine induzierte Norm existiert mit‖M‖ < 1.

Page 59: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

5. Iterative Verfahren zur Lösung linearer Gleichungssysteme 57

Definition (Spektralradius).DerSpektralradiuseiner MatrixB ∈ Rn×n ist gegeben durch

ρ(B) := max{|λ| : λ ∈ σ(B)} .

Satz 5.1.Das Relaxationsverfahren

xk+1 := Mxk + Nb

konvergiert genau dann für allex0 ∈ Rn gegen die Lösung des linearen GleichungssystemsAx = b, wennfür die zugehörige IterationsmatrixM = I − NA gilt:

ρ(M) < 1.

Lemma 5.2.Die Matrix B ∈ Rn×n undε > 0 seien vorgegeben. Dann gibt es eine Vektor-Norm‖ · ‖∗, so dass für dieinduzierte Matrix-Norm

‖B‖∗ := supy6=0

‖By‖∗‖y‖∗

gilt:ρ(B) 6 ‖B‖∗ 6 ρ(B) + ε.

Beweis.Der Beweis verwendet die Jordan-NormalformB = T J T−1 mit einer regulären MatrixT ∈ Cn×n

und einer MatrixJ = Diag(J1, . . . ,Jk) ∈ Cn×n mit den Jordan-Blöcken

Ji =

λi 1...

...

.. . 1λi

.

Mit Dε := Diag(1,ε, . . . ,εn−1) definieren wir die Vektor-Norm

‖y‖∗ := ‖D−1ε T−1y‖∞.

Die hierdurch induzierte Matrix-Norm lässt sich durch die Zeilensummennorm ausdrücken,

‖B‖∗ = supy6=0

‖D−1ε T−1By‖∞

‖D−1ε T−1y‖∞

= supz 6=0

‖D−1ε T−1BTDεz‖∞

‖z‖∞= ‖D−1

ε JDε‖∞.

An der Gestalt der MatrixD−1ε JDε = Diag(J1, . . . ,Jk) mit den Blöcken

Ji =

λi ε

. . .. . .. . . ε

λi

erkennt man nun sofort, dass

‖B‖∗ = ‖D−1ε JDε‖∞ ∈

[max

i|λi|, max

i|λi| + ε

]= [ρ(B),ρ(B) + ε].

Die maximale Zeilensumme istρ(B), falls alle Eigenwerteλi mit maximalem Betrag|λi| = ρ(B) einenJordan-Block der Dimension eins besitzen,Ji = λi ∈ R1×1; andernfalls ist sieρ(B) + ε.

Page 60: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

58 Numerische Mathematik I

Beweis von Satz 5.1.(i) Ist ρ(M) < 1, so können wir nach Lemma 5.2 eine Norm‖ · ‖∗ finden, so dass‖M‖∗ < 1 gilt. Wegen‖x − xk‖∗ 6 ‖M‖k

∗‖x − x0‖∗ konvergiert in diesem Fall das Verfahren.(ii) Angenommenρ(M) > 1, dann existieren ein Eigenwertλ ∈ C mit |λ| > 1 und ein Eigenvektorz ∈ Cn

mit Mz = λz. Fallsλ ∈ R, sei o. E.z ∈ Rn. Fürx − x0 = z + z ∈ Rn strebtx − xk = Mk(x − x0) dannnicht gegen Null: daM ∈ Rn×n, gilt Mz = λz und damit

Mk(x − x0) = Mkz + Mkz = λkz + λkz = 2Re(λkz).

Seiλ = reiϕ, dann ist Re(λkz) = rk(Re(eikϕz1), . . . , Re(eikϕzn)). Wegenrk = |λ|k > 1 kann dies nurgegen Null konvergieren, fallsz = 0. Daz Eigenvektor ist, gilt aberz 6= 0.

5.2 Das Verfahren der konjugierten Gradienten

Für lineare GleichungssystemeAx = b mit symmetrisch positiv definiter MatrixA lässt sich auch dasVerfahren der konjugierten Gradienten(CG-Verfahren, aus dem Englischen “conjugate gradients”)ver-wenden. Dieses basiert auf der Beobachtung, dass die Lösungdes LGS identisch ist mit der Bestimmungvonx ∈ Rn, so dass

φ(x) :=12xTAx − xTb minimal wird.

Definition (Konjugierte Vektoren).Sei A ∈ Rn×n symmetrisch positiv definit. Eine Menge von Vektoren{p0, . . . ,pl} ⊂ Rn \ {0} heißtkonjugiertbezüglichA, falls

(pi)TApj = 0 für i 6= j gilt.

Die Konstruktion einer konjugierten Menge von Vektoren wird die Grundlage des Verfahrens der kon-jugierten Gradienten sein. Angenommen, wir hätten eine solche Menge{p0, . . . ,pk}, dann könnten wir,ausgehend von einer Startnäherungx0 ∈ Rn, die Lösung des Minimierungsproblems

minα0,...,αk∈R

φ(x0 + α0p0 + · · · + αkpk) =: φ(xk+1) (M)

folgendermaßen bestimmen:

φ(x0 + α0p0 + · · · + αkpk)

=12(x0 + α0p

0 + · · · + αkpk)TA(x0 + α0p0 + · · · + αkpk)

− (x0 + α0p0 + · · · + αkpk)Tb =: gk(α0, . . . ,αk).

Die Minimalstellen ergeben sich aus

d

dαj

gk(α0, . . . ,αk) = (pj)TA(x0 + α0p0 + · · · + αkpk) − (pj)Tb

= (pj)T (Ax0 − b) + αj(pj)TApj = 0

=⇒ αj =(pj)T (b − Ax0)

(pj)TApj.

Insbesondere lässt sich die Lösung von (M) durch

xj+1 := xj + αjpj für j = 0, 1, . . . ,k

berechnen. Unter Verwendung von

(pj)TAxj = (pj)TA(x0 + α0p0 + · · · + αj−1p

j−1) = (pj)TAx0

können wir den Ausdruck fürαj noch etwas umformen zu

αj =(pj)T (b − Axj)

(pj)TApj=

(pj)T rj

(pj)TApjmit rj := b − Axj.

Page 61: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

5. Iterative Verfahren zur Lösung linearer Gleichungssysteme 59

Lemma 5.3.Für den Residuenvektorrk := b − Axk gilt

(pj)T rk = 0 für j = 0, 1, . . . ,k − 1.

Beweis.Aus der Minimierungseigenschaft (M) folgt unmittelbar, dass fürj = 0, 1, . . . ,k − 1 gilt:

0 =d

dαj

gk−1(α0, . . . ,αk−1) = (pj)TA(x0 + α0p0 + · · · + αk−1p

k−1) − (pj)Tb

= (pj)T (Axk − b) = −(pj)T rk.

Damit ist die Orthogonalität bewiesen.

Wir werden später sehen, dass sich konjugierte Vektoren rekursiv durch

pj+1 = rj+1 + βj+1pj, j = 0, 1, 2, . . .

konstruieren lassen, wobeiβj+1 geeignet zu wählen ist. Somit lässt sich die Formel zur Berechnung vonαj nochmals umformen zu

αj =(pj)T rj

(pj)TApj=

(rj + βjpj−1)T rj

(pj)TApj=

(rj)T rj

(pj)TApj.

Auch die Residuenvektoren lassen sich rekursiv berechnen,nämlich durch

rk+1 = b − Axk+1 = b − A(xk + αkpk) = rk − αkApk.

Wir erhalten schließlich den folgenden Algorithmus für dasCG-Verfahren:

Gegebenx0,τ {Startnäherung, Toleranz}p0 := r0 := b − Ax0

for k = 0, 1 . . . doif ‖rk‖2

2 6 τ2 thenstop

end ifαk := ‖rk‖2

2 /(pk)TApk

xk+1 := xk + αkpk

rk+1 := rk − αkApk

βk+1 := ‖rk+1‖22 /‖rk‖2

2pk+1 := rk+1 + βk+1pk

end forDer Rechenaufwand pro Iterationsschritt besteht im Wesentlichen aus einer Matrix-Vektor-Multiplikationmit A ∈ Rn×n, drei Additionen von Vektoren imRn sowie drei Multiplikationen mit einem Skalar, undweiter zwei Skalarprodukten von Vektoren imRn.

Lemma 5.4.Für die Residuenrk und Suchrichtungenpk des Verfahrens der konjugierten Gradienten gilt

(rk)T rj = 0 für j = 0, 1, . . . ,k − 1,

(pk)TApj = 0 für j = 0, 1, . . . ,k − 1.

Beweis.Der Beweis erfolgt durch vollständige Induktion nachk (in der oben angegebenen Reihenfolge).Fürk = 1 gilt wegenr0 = p0 nach Lemma 5.3

(r1)T r0 = (r1)Tp0 = 0.

Ausserdem gilt

β1 =(r1)T r1

(r0)T r0=

(r1)T (r0 − α0Ap0)

(p0)T (r1 + α0Ap0)= −

(r1)TAp0

(p0)TAp0

Page 62: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

60 Numerische Mathematik I

und damit(p1)TAp0 = (r1 + β1p

0)TAp0 = 0.

Der Schritt vonk nachk + 1 geht folgendermaßen vor sich: wegen

αk =(rk)T rk

(pk)TApk=

(rk)T rk

(rk + βkpk−1)TApk=

(rk)T rk

(rk)TApk

gilt(rk+1)T rk = (rk − αkApk)T rk = 0.

Und aufgrund von Lemma 5.3 bzw. aufgrund der Induktionsvoraussetzung gilt fürj = 0, . . . ,k − 1

(rk+1)T rj = (rk − αkApk)T (pj − βjpj−1) = 0

(setzeβ0 = 0). Schließlich erhalten wir

βk+1 =(rk+1)T rk+1

(rk)T rk=

(rk+1)T (rk − αkApk)

(pk − βkpk−1)T (rk+1 + αkApk)= −

(rk+1)TApk

(pk)TApk

und somit(pk+1)TApk = (rk+1 + βk+1p

k)TApk = 0.

Für j = 0, . . . ,k − 1 wenden wir wieder die Induktionsvoraussetzung an, was auf

(pk+1)TApj = (rk+1 + βk+1pk)TApj =

1αj

(rk+1)T (rj − rj+1) = 0

führt.

Definition (Krylov-Raum).Der Vektorraum span

{v,Av, . . . ,Ak−1v

}heißtk-ter zuA ∈ Rn×n undv ∈ Rn gehörigerKrylov-Raum

und wird mitKk(A,v) bezeichnet.

Lemma 5.5.Für die Suchrichtungenpj und die Residuenrj des CG-Verfahrens gilt:

span{r0, r1, . . . ,rk} = span{p0,p1, . . . ,pk} = Kk+1(A, r0).

Beweis (Vollständige Induktion).Fürk = 0 ist die Aussage klar. Aufgrund der Iterationsvorschrift gilt

rk = rk−1 − αk−1Apk−1 ∈ Kk(A, r0) + AKk(A, r0) ⊆ Kk+1(A, r0)

undpk = rk + βk−1p

k−1 ∈ Kk+1(A, r0) + Kk(A, r0) = Kk+1(A, r0).

Wir haben somit gezeigt, dass

span{r0, . . . ,rk} ⊆ Kk+1(A, r0),

span{p0, . . . ,pk} ⊆ Kk+1(A, r0).

Nach Lemma 5.4 sind entweder die Mengen{r0, . . . ,rk} und {p0, . . . ,pk} linear unabhängig oder es giltpk = rk = 0 undKk+1(A, r0) = Kk(A, r0). Die Behauptung folgt nun aus Dimensionsgründen.

Wir erinnern uns wieder, dass zu einer symmetrisch positiv definiten MatrixA ∈ Rn×n durch

‖x‖A :=√

〈x,x〉A =√

xTAx

die sogenannteA-Norm definiert ist. Die Minimierungseigenschaft (M) des CG-Verfahrens impliziert eineMinimierungseigenschaft des Fehlers bezüglich derA-Norm.

Page 63: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

5. Iterative Verfahren zur Lösung linearer Gleichungssysteme 61

Satz 5.6.Die Iteriertenxk des CG-Verfahrens erfüllen

‖x − xk‖A = miny∈Kk(A,r0)

‖x − (x0 + y)‖A,

d. h. sie minimieren den Fehler bezüglich derA-Norm.

Beweis.Es gilt

‖x − xk‖2A = (x − xk)TA(x − xk)

= xTAx − 2(xk)TAx + (xk)TAxk

= bTA−1b − 2(xk)Tb + (xk)TAxk = bTA−1b + 2φ(xk).

Also folgt die Behauptung aus der Minimierungseigenschaftdes CG-Verfahrens (M) und Lemma 5.5.

Beispiel.Wir untersuchen die Konvergenz des CG-Verfahrens für das bei der Berechnung der Auslenkung des elasti-schen Balkens entstehende lineare Gleichungssystem aus Kapitel 4. In der folgenden Tabelle ist die Anzahlder Iterationen angegeben, die das CG-Verfahren benötigt,um die Norm des Residuums um den Faktor 108

zu reduzieren:‖rk‖2 6 10−8‖r0‖2.

n 16 32 64 128 256 512 1024

CG-Schritte 15 32 103 327 1198 8047 —

κ2(A) 7.25· 102 1.13· 104 1.80· 105 2.87· 106 4.58· 107 7.33· 108 1.17· 1010

Die numerischen Ergebnisse legen die Vermutung nahe, dass die Anzahl der benötigten Iterationsschrittedes CG-Verfahrens proportional zur Wurzel der Konditionszahl anwächst. Diese Abhängigkeit ergibt sichauch aus Fehlerabschätzungen, die man für das CG-Verfahrenbeweisen kann. Man beachte aber, dassbei exakter Rechnung spätestens nachn − 1 Schritten (Dimension des linearen Gleichungssystems) nachSatz 5.6 der Fehler (und damit auch das Residuum) Null sein müsste. Dies ist in der obigen Tabelle nur fürn = 16 der Fall, danach werden mehr Schritte benötigt als die Anzahl der Unbekannten. Fürn = 1024stagniert das CG-Verfahren in obigem Beispiel aufgrund dergroßen Konditionszahl der Matrix und erreichtdie vorgegebene relative Genauigkeit von 10−8 nicht.In der Praxis wird das Verfahren üblicherweise nicht direktauf ein lineares Gleichungssystem angewendet.Stattdessen wird vorher eine Transformation vorgenommen,die die zugehörige Matrix in eine Matrix mitkleinerer Konditionszahl überführt. Auf diesesvorkonditioniertelineare Gleichungssystem wird dann dasCG-Verfahren angewandt.

Page 64: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,
Page 65: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

Kapitel 6

Iterative Verfahren für nichtlineareGleichungssysteme

In diesem Kapitel behandeln wir iterative Lösungsverfahren für Systeme nichtlinearer Gleichungen imRn.Gegeben ist eine differenzierbare FunktionF : Rn → Rn, gesucht istx ∈ Rn mit F(x) = 0.

6.1 Newton-Verfahren

Unter der Annahme, dass es genau eine Lösungx gibt, können wir diese folgendermaßen approximieren:

0 = F(x) ≈ F(x0) + F ′(x0)(x − x0)

falls x0 ∈ Rn nahe genug anx. Man kann also erwarten, dassx1 = x0 + ∆x0 eine bessere Approximationanx darstellt, falls∆x0 ∈ Rn das folgende LGS löst:

F ′(x0)∆x0 = −F(x0).

Algorithmus (Newton-Verfahren).

for k = 0, 1, 2, . . .do∆xk sei Lösung vonF ′(xk)∆xk = −F(xk)

xk+1 := xk + ∆xk

end for

Beispiele.(a) Lösen einer nichtlinearen Gleichung inR (n = 1):

xk+1 := xk −F(xk)

F ′(xk), k = 0, 1, 2, . . .

(b) Lösen eineslinearenGleichungssystems inRn:

F(x) = b − Ax, F ′(x) = −A, x0 beliebig,

∆x0 ∈ Rn mit − A∆x0 = −(b − Ax0),

x1 = x0 + ∆x0,

F(x1) = b − Ax0 − A∆x0 = b − Ax0 − (b − Ax0) = 0.

Das Newton-Verfahren liefert also nach einem Schritt die exakte Lösung.

Page 66: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

64 Numerische Mathematik I

Im Verlauf der Iteration ist zunächst ungewiss, ob das Newton-Verfahren überhaupt konvergiert. Unser Zielist es daher, während der Rechnung zu überprüfen, ob ein Newton-Schritt zu einer „besseren“ Näherung andie Lösung des nichtlinearen Gleichungssystems führt und geeignete Maßnahmen zu ergreifen, falls diesnicht der Fall ist.Die Lösung des nichtlinearen GleichungssystemsF(x) = 0 seix∗ ∈ Rn. FallsF ′(x∗) regulär ist, fassenwir x∗ auf als Minimalstelle der Funktion

f(x) = ‖F(x)‖22.

Offenbar gilt

f ′(x) =d

dxF(x)TF(x) = 2F(x)TF ′(x)

und somitf ′(x∗) = 0. Wir überprüfen nun die Zweckmäßigkeit eines Newton-Schrittes, indem wir dieReduktion vom letzten Residuum‖F(xk)‖2

2 zum aktuellen Residuum‖F(xk+1)‖22 abfragen. Praktikable

Abbruchkriterien basieren ebenfalls auf der Größe des Residuums‖F(xk)‖22.

Wir stellen zunächst fest, dass die Richtungsableitung vonf in Richtung des Newton-Schrittes

∆xk = −F ′(xk)−1F(xk)

negativ ist (sofern∆xk 6= 0), denn für den Einheitsvektor

p :=∆xk

‖∆xk‖2

gilt∂f

∂p(xk) ≡ f ′(xk)p = −2F(xk)TF ′(xk)

F ′(xk)−1F(xk)

‖F ′(xk)−1F(xk)‖2< 0.

Mit anderen Worten: die Newton-Richtung ist eineAbstiegsrichtung, und durch die Wahl von

xk+1 := xk + λk∆xk

erreichen wir für genügend kleinesλk sicher eine Reduktion vonf.

Algorithmus (Gedämpftes Newton-Verfahren).Wähleα ∈ (0, 1

2), z. B.α = 10−3:

Gegebenx0, τ > 0 {Startnäherung, Toleranz}k := 0while ‖F(xk)‖2 > τ do

LöseF ′(xk)∆xk = −F(xk)

λ := 1while ‖F(xk + λ∆xk)‖2

2 > (1 − αλ)‖F(xk)‖22 do

λ := λ/2end whilexk+1 := xk + λ∆xk

k := k + 1end while

6.2 Konvergenz des Newton-Verfahrens

Beim Newton-Verfahren handelt es sich offenbar um eine Fixpunktiteration, d. h. ein iteratives Verfahrender Form

xk+1 := Φ(xk), k = 0, 1, 2, . . .

In unserem Fall istΦ(x) := x − F ′(x)−1F(x). Die Konvergenz von Fixpunktiterationen lässt sich mit demaus der Analysis bekannten Banachschen Fixpunktsatz beschreiben.

Page 67: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

6. Iterative Verfahren für nichtlineare Gleichungssysteme 65

Satz 6.1(Banachscher Fixpunktsatz; Speziallfall).Es seiE ⊆ Rn nichtleer und abgeschlossen undΦ : E → E eineKontraktion, d. h. es gilt

‖Φ(x) − Φ(y)‖ 6 L‖x − y‖ für alle x,y ∈ E

mit einer KonstantenL < 1. Dann gilt:

(a) Es existiert genau ein Fixpunktx∗ vonΦ in E, d. h. einx∗ ∈ E mit Φ(x∗) = x∗;

(b) Für jeden Startvektorx0 ∈ E konvergiert die Fixpunktiterationxk+1 := Φ(xk) gegenx∗.

(c) Für allek ∈ N gilt die a priori-Abschätzung

‖xk − x∗‖ 6Lk

1 − L‖x1 − x0‖

und fürk > 0 die a posteriori-Abschätzung

‖xk − x∗‖ 6L

1 − L‖xk − xk−1‖.

Beweis.Zunächst zeigen wir, dass(xk)k∈N für x0 ∈ E wegenL < 1 Cauchy-Folge ist: fürk,p ∈ N gilt

‖xk+p − xk‖ 6

p−1∑

i=0

‖xk+i+1 − xk+i‖

6

p−1∑

i=0

Li‖xk+1 − xk‖ =1 − Lp

1 − L‖xk+1 − xk‖ 6

1 − Lp

1 − LLk‖x1 − x0‖.

Für genügend großesk wird dies mitLk beliebig klein. DaE abgeschlossen, also vollständig ist, konvergiertdie Cauchy-Folge(xk) gegen einen Limesx∗ ∈ E. Aus den obigen Abschätzungen erhalten wir nun

‖x∗ − xk‖ = limp→∞

‖xk+p − xk‖ 61

1 − L‖xk+1 − xk‖

und weiter (c):

‖x∗ − xk‖ 6Lk

1 − L‖x1 − x0‖ sowie fürk > 0 ‖x∗ − xk‖ 6

L

1 − L‖xk − xk−1‖.

Wegenxk = Φ(xk−1) und der Stetigkeit vonΦ folgt unmittelbar die FixpunkteigenschaftΦ(x∗) = x∗:

‖x∗ − Φ(x∗)‖ = limk→∞

‖x∗ − Φ(xk−1)‖ = limk→∞

‖x∗ − xk‖ = 0.

Eindeutigkeit: isty∗ ∈ E ein weiterer Fixpunkt, so gilt

‖x∗ − y∗‖ = ‖Φ(x∗) − Φ(y∗)‖ 6 L‖x∗ − y∗‖.

Mit L < 1 folgt alsox∗ = y∗. Damit ist alles bewiesen.

Bemerkung.Allgemeiner gilt der Satz in jedem vollständigen metrischen RaumE 6= ∅. Auch der Beweisbleibt wörtlich gültig. Man muss nur jede Normdifferenz‖x − y‖ durch den AbstanddE(x,y) ersetzen.

Lemma 6.2.Es seiD ⊆ Rn offen und konvex undF : D → Rn eine stetig differenzierbare Funktion. Die Jacobi-MatrixF ′ genüge für einγ ∈ R der Lipschitz-Bedingung

‖F ′(y) − F ′(x)‖ 6 γ‖y − x‖ für alle x,y ∈ D,

wobei auf der rechten Seite eine Vektor-Norm desRn und auf der linken Seite die hierdurch induzierteMatrix-Norm desRn×n stehe. Dann gilt:

‖F(y) − F(x) − F ′(x)(y − x)‖ 6γ

2‖y − x‖2 für alle x,y ∈ D.

Page 68: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

66 Numerische Mathematik I

Bemerkung.Die Voraussetzung ist z. B. erfüllt, falls‖F ′(x)‖ 6γ2 für allex ∈ D. Für lineare Abbildungen

F(x) = Ax gilt die Voraussetzung offenbar aufD = Rn mit γ = 0.

Beweis.Wir gehen aus von der Formel

F(y) − F(x) =

∫ 1

0

d

dsF(x + s(y − x)) ds =

∫ 1

0F ′(x + s(y − x))(y − x) ds

und erhalten

F(y) − F(x) − F ′(x)(y − x) =

∫ 1

0[F ′(x + s(y − x)) − F ′(x)] (y − x) ds.

Hieraus ergibt sich die gewünschte Abschätzung gemäß

‖F(y) − F(x) − F ′(x)(y − x)‖ 6

∫ 1

0‖F ′(x + s(y − x)) − F ′(x)‖ ‖y − x‖ds

6 γ

∫ 1

0s‖y − x‖2 ds =

γ

2‖y − x‖2.

Bemerkung.Für das Newton-Verfahren gilt

Φ(x) − Φ(y) = x − F ′(x)−1F(x) − y + F ′(y)−1F(y)

= F ′(x)−1[F ′(x)(x − y) − F(x) + F(y)] + [F ′(y)−1 − F ′(x)−1]F(y)

= F ′(x)−1[F ′(x)(x − y) − F(x) + F(y)] + F ′(y)−1[F ′(x) − F ′(y)]F ′(x)−1F(y)

und somit

‖Φ(x) − Φ(y)‖ 6 ‖F ′(x)−1‖ ‖F ′(x)(x − y) − F(x) − F(y)‖ +

‖F ′(y)−1‖ ‖F ′(x) − F ′(y)‖ ‖F ′(x)−1‖ ‖F(y)‖.

Unter den Voraussetzungen von Lemma 6.2 gilt fürx,y ∈ Bρ(x∗):

‖Φ(x) − Φ(y)‖ 6γ

2‖F ′(x)−1‖ ‖y − x‖2 + γ‖F ′(y)−1‖ ‖F ′(x)−1‖ ‖F(y)‖‖y − x‖

6

[

γρ‖F ′(x)−1‖ + γ‖F ′(y)−1‖ ‖F ′(x)−1‖(γ

2ρ2 + ρ‖F ′(x∗)‖

)]

‖y − x‖.

Sofernρ genügend klein gewählt wird und‖F ′(x)−1‖ für x ∈ Bρ(x∗) beschränkt ist, liegt also eine kontra-hierende Abbildung vor. Nach Satz 6.1 konvergiert dann das Newton-Verfahrenlokal (in der KugelBρ(x∗))mit linearer Konvergenzrate, d. h.‖xk+1 − x∗‖ 6 L‖xk − x∗‖. Eine genauere Analyse zeigt, dass sogarlokal quadratischeKonvergenz vorliegt:‖xk+1 − x∗‖ 6 c‖xk − x∗‖2 mit c > 0.

Satz 6.3.Es seiD ⊆ Rn offen und konvex undF : D → Rn eine stetig differenzierbare Funktion. Die Jacobi-MatrixF ′ genüge für einγ ∈ R der Lipschitz-Bedingung aus Lemma 6.2,

‖F ′(y) − F ′(x)‖ 6 γ‖y − x‖ für alle x,y ∈ D.

Ferner gebe es einx∗ ∈ D mit F(x∗) = 0 und regulärer Jacobi-MatrixF ′(x∗), so dass

‖F ′(x∗)−1‖ 6 β.

Wählt man dannρ > 0 so klein, dass2βγρ 6 1 gilt und Bρ(x∗) ⊆ D, so konvergiert für jeden Startvektorx0 ∈ Bρ(x∗) die Folge der Newton-Iterierten

xk+1 := xk + ∆xk mit F ′(xk)∆xk = −F(xk), k = 0, 1, 2, . . .

gegenx∗ und erfüllt diea posteriori-Abschätzung

‖x∗ − xk+1‖ 6 βγ‖x∗ − xk‖2.

Page 69: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

6. Iterative Verfahren für nichtlineare Gleichungssysteme 67

Satz 6.3 stellt eine Vereinfachung des klassischen Konvergenzsatzes von L. W. Kantorowitsch dar (Rn stattBanachraum, Existenz vonx∗ vorausgesetzt). Wir bleiben imRn, wollen aber noch zwei Schwächen desobigen Resultats beheben:

• die Voraussetzungen sowie die Ausdrücke für Konvergenzbereich und Konvergenzrate enthalten dieunbekannte (!) Lösungx∗;

• der Satz ignoriert dieaffine Invarianzdes Newton-Verfahrens: für jede reguläre MatrixA ∈ Rn×n

definiertG := AF dieselbe Newton-Folge(xk)k∈N wie F, denn

∆xG = G ′(x)−1G(x) = F ′(x)−1A−1 AF(x) = F ′(x)−1F(x) = ∆xF.

Satz 6.3 liefert aber unterschiedliche Lipschitz-Konstanten β,γ und somit auch unterschiedlicheKonvergenzbereiche!

Eine affin invariante Version des Konvergenzsatzes findet sich als Satz 4.10 im Lehrbuch von Deuflhardund Hohmann. Die Existenz einer Lösung wird auch dort gefordert, kann aber durch geringe Modifikationder Voraussetzungen mitbewiesen werden. Wir beweisen abschließend den Spezialfall eines verwandtenResultats von Bock, dessen allgemeine Form zusätzlich über- und unterbestimmte beschränkte nichtlineareAusgleichsprobleme einschließt: minx{‖F1(x)‖2

2 : F2(x) = 0}). Solche werden wir in Numerik 2 behandeln.

Satz 6.4.Es seiD ⊆ Rn offen und konvex undF : D → Rn eine stetig differenzierbare Funktion mit regulärerJacobi-MatrixF ′(x) für alle x ∈ D. Für einω > 0 gelte längs der Newton-Schritte∆x := −F ′(x)−1F(x)

die affin-invariante Lipschitz-Bedingung

‖F ′(x + ∆x)−1[F ′(x + t∆x) − F ′(x)]∆x‖ 6 tω‖∆x‖2 für alle x,x + ∆x ∈ D, t ∈ [0, 1].

Erfüllt ein Startvektorx0 ∈ D die zwei Bedingungen

δ0 :=ω

2‖∆x0‖ < 1 und Bρ(x0) ⊆ D mit ρ :=

‖∆x0‖1 − δ0

,

so ist die Newton-Folge wohldefiniert und konvergiert inBρ(x0) gegen einx∗ ∈ Bρ(x0) mit F(x∗) = 0. DieIterierten genügen dera priori-Abschätzung

‖xk − x∗‖ 6 δk0 ρ

und es gilt

‖∆xk+1‖ 6ω

2‖∆xk‖2.

Beweis.Nach Voraussetzung sindx0,x1 ∈ Bρ(x0). Fürxk,xk+1 ∈ Bρ(x0) gilt

‖∆xk+1‖ = ‖F ′(xk+1)−1F(xk+1)‖ = ‖F ′(xk+1)−1[F(xk+1) − F(xk) − F ′(xk)∆xk]‖

=

∥∥∥∥F ′(xk+1)−1

∫ 1

0[F ′(xk + t∆xk) − F ′(xk)]∆xk dt

∥∥∥∥

6

∫ 1

0tω‖∆xk‖2 dt =

ω

2‖∆xk‖2.

Wegenδ0 < 1 folgt hieraus induktiv‖∆xk+1‖ 6 δ0‖∆xk‖ < ‖∆xk‖. Dies impliziert‖∆xk‖ 6 δk0‖∆x0‖

sowie

‖xk+2 − x0‖ 6

k+1∑

i=0

‖∆xi‖ <‖∆x0‖1 − δ0

= ρ,

alsoxk+2 ∈ Bρ(x0). Die Iteration ist somit wohldefiniert inBρ(x0) und generiert außerdem eine Cauchy-Folge, denn

‖xk+p − xk‖ 6

p−1∑

i=0

‖∆xk+i‖ < δk0‖∆x0‖1 − δ0

= δk0 ρ.

Somit konvergiert die Iteration gegen einx∗ ∈ Bρ(x0) und die a priori-Abschätzung ist erfüllt. Weiter gilt0 = limk→∞ F(xk) + F ′(xk)∆xk = F(x∗) + F ′(x∗) · 0 = F(x∗).

Page 70: Skript zur Vorlesung - ifam.uni-hannover.de · Wintersemester 2009/2010 Leibniz Universität Hannover PROF. DR. MARC STEINBACH Skript zur Vorlesung. ... Wirtschaft usw. (Physik, Chemie,

68 Numerische Mathematik I

Bemerkung.Die Voraussetzungen von Satz 6.4 sehen deutlich komplizierter aus als in Satz 6.3, sind aberder Natur des Newton-Verfahrens entsprechend besser angepasst. Dadurch ist der garantierte Konvergenz-bereich (Radiusρ) i. A. erheblich größer (und nebenbei der Beweis kürzer). Schließlich sind die Voraus-setzungen sogar approximativnumerischüberprüfbar, da sich die Lipschitz-Konstanteω schätzen lässt.Essentiell für die quadratische Konvergenz – die Haupteigenschaft des Newton-Verfahrens – ist stets dieExistenz der InversenF ′(x∗)−1. Im skalaren Fall (n = 1) bedeutet dies, dassx∗ einfacheNullstelle ist.