15.11.2012 Aufrufe

SkriptNumII_SS08.pdf

SkriptNumII_SS08.pdf

SkriptNumII_SS08.pdf

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Numerische Mathematik II<br />

Peter Knabner<br />

Sommersemester 2008<br />

Überarbeitete Fassung: 09.07.2008<br />

1


Inhaltsverzeichnis<br />

1 Nichtlineare Optimierung ohne Nebenbedingungen 5<br />

1.1 Nichtlineare Optimierung (mit linearen Gleichungsbedingungen) . . . . 5<br />

1.2 Eindimensionale Optimierung . . . . . . . . . . . . . . . . . . . . . . . 8<br />

1.3 Zusammenhang Optimierung – Gleichungssysteme, Newtonverfahren<br />

und Varianten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11<br />

1.4 Konvexe und quadratische Funktionale . . . . . . . . . . . . . . . . . . 13<br />

1.5 Gradientenverfahren und<br />

Methode der konjugierten Gradienten für quadratische Optimierungsprobleme<br />

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16<br />

1.6 Exkurs: Grosse dünnbesetzte lineare Gleichungssysteme aus der Diskretisierung<br />

partieller Differentialgleichungen und die Effizienz von<br />

Lösungsverfahren dafür . . . . . . . . . . . . . . . . . . . . . . . . . . . 28<br />

1.7 Vorkonditionierte CG-Verfahren . . . . . . . . . . . . . . . . . . . . . . 32<br />

1.8 Krylov-Unterraum-Methoden für nichtsymmetrische Gleichungssysteme 39<br />

1.9 Verfahren der konjugierten Gradienten für nichtquadratische Optimierung 45<br />

2 Beispiele Gewöhnlicher Differentialgleichungen (GDG) 48<br />

2.1 Beispiele von Anfangswertaufgaben (AWA) für GDG . . . . . . . . . . 48<br />

2.2 Elemente der Analysis von AWA für GDG . . . . . . . . . . . . . . . . 54<br />

2.3 Beispiele von Randwertaufgaben (RWA) für GDG . . . . . . . . . . . . 59<br />

3 Einschrittverfahren 64<br />

3.1 Beispiele für Einschrittverfahren, Konsistenz . . . . . . . . . . . . . . . 64<br />

3.2 Runge–Kutta-Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . 79<br />

3.2.1 Explizite Runge–Kutta-Verfahren . . . . . . . . . . . . . . . . . 79<br />

3.2.2 Implizite Runge–Kutta-Verfahren . . . . . . . . . . . . . . . . . 87<br />

3.3 Stabilität und Konvergenz . . . . . . . . . . . . . . . . . . . . . . . . . 94<br />

3.4 Implizite Runge–Kutta-Verfahren und Kollokation . . . . . . . . . . . . 105<br />

2


3.5 Spezielle Runge-Kutta-Verfahren und linear-implizite Verfahren . . . . 113<br />

3.6 Extrapolationsverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . 117<br />

3.7 Die Euler–MacLaurin’sche Summenformel . . . . . . . . . . . . . . . . 123<br />

3.8 Extrapolation. Das Romberg–Verfahren . . . . . . . . . . . . . . . . . . 126<br />

3.9 Methoden von Neville und Aitken . . . . . . . . . . . . . . . . . . . . . 129<br />

3.10 Schrittweitensteuerung . . . . . . . . . . . . . . . . . . . . . . . . . . . 130<br />

3.11 Stabilität bei fester Schrittweite, steife Differentialgleichungen . . . . . 137<br />

4 (Lineare) Mehrschrittverfahren 150<br />

4.1 Definition, Beispiele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150<br />

4.1.1 Mehrschrittverfahren via numerische Quadratur . . . . . . . . . 151<br />

4.1.2 Mehrschrittverfahren via numerische Differentiation . . . . . . . 159<br />

4.1.3 Prädiktor-Korrektor-Verfahren . . . . . . . . . . . . . . . . . . . 161<br />

4.2 Konsistenz(-ordnung) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163<br />

4.3 (Lipschitz)Stabilität und Konvergenz . . . . . . . . . . . . . . . . . . . 170<br />

4.4 Stabilität bei fester Schrittweite, Extrapolationsverfahren . . . . . . . . 184<br />

5 Die Finite-Differenzen-Methode für die Poisson-Gleichung 197<br />

5.1 Das Dirichlet-Problem für die Poisson-Gleichung . . . . . . . . . . . . . 197<br />

5.2 Die Finite-Differenzen-Methode . . . . . . . . . . . . . . . . . . . . . . 198<br />

5.3 Verallgemeinerung und Grenzen<br />

der Finite-Differenzen-Methode . . . . . . . . . . . . . . . . . . . . . . 207<br />

5.4 Maximumprinzipien und Stabilität . . . . . . . . . . . . . . . . . . . . 212<br />

6 (Informelle) Einführung in die Methode der Finiten Elemente für<br />

elliptische Probleme 219<br />

6.1 Variationsformulierung für ein eindimensionales Modellproblem . . . . . 219<br />

6.2 Die FEM für das Modellproblem mit stückweise linearen Funktionen . . 225<br />

6.3 Eine Fehlerabschätzung der FEM für das Modellproblem . . . . . . . . 239<br />

3


6.4 Allgemeinere eindimensionale Randwertaufgaben . . . . . . . . . . . . . 243<br />

6.5 Zur Implementierung der FEM für 2 Punkt Randwertaufgaben . . . . . 256<br />

6.6 Variationsgleichungen und Funktionenräume . . . . . . . . . . . . . . . 262<br />

6.7 Allgemeine Konvergenzordnungsaussagen . . . . . . . . . . . . . . . . . 271<br />

4


1 Nichtlineare Optimierung ohne Nebenbedingungen<br />

1.1 Nichtlineare Optimierung (mit linearen Gleichungsbedingungen)<br />

Ein weiteres Grundproblem der numerischen Mathematik besteht in der<br />

Optimierungsaufgabe mit Nebenbedingungen:<br />

Gegeben sei ein F : R n → R und M ⊂ R n . Gesucht ist x ∗ ∈ M mit<br />

F(x ∗ ) ≤ F(x) für alle x ∈ M . (1.1)<br />

Neben einem solchen globalen Minimum (falls existent) gibt es i.a. lokale Minima, d.h.<br />

˜x ∈ M, für die ein ε > 0 existiert, so dass<br />

F(˜x) ≤ F(x) für alle x ∈ Bε(˜x) ∩ M . (1.2)<br />

Die Einschränkungsmenge M ist oft (auch) durch Ungleichungsbedingungen<br />

und durch Gleichungsbedingungen<br />

gegeben.<br />

gi(x) ≤ 0 , i = 1, . . .,m (1.3)<br />

hj(x) = 0 , i = 1, . . ., k (1.4)<br />

Ein wichtiger Spezialfall ist die lineare Programmierung, bei der F, gi und hj affinlinear<br />

sind. Dafür und allgemein für Optimierungsaufgaben mit Nebenbedingungen sei<br />

auf eine Spezialvorlesung verwiesen.<br />

Ist F differenzierbar (im Folgenden vorausgesetzt), so gilt:<br />

Ist ˜x ein lokales Minimum auf R n (d.h. ohne Nebenbedingungen), so gilt<br />

DF(˜x) = 0 und damit<br />

∇F(˜x) = 0 . (1.5)<br />

Dabei wird die Ableitung von F bei ˜x mit DF(˜x) bezeichnet, ist also hier konkret die<br />

Jacobi-Matrix DF(˜x) ∈ R 1,n (als Zeile), d.h. die lineare Abbildung von R n nach R, für<br />

die<br />

F(˜x + h) = F(˜x) + DF(˜x)h + o(�h�) für h ∈ R n<br />

5


gilt. Stellt man DF(˜x)h als Euklidisches Skalarprodukt<br />

mit der Spalte<br />

dar, erhält man den Gradienten.<br />

DF(˜x)h = 〈DF(˜x) T , h〉<br />

∇F(˜x) = DF(˜x) T ∈ R n<br />

Dies ist ein (nichtlineares) Gleichungssystem, auf das die Methoden von Kapitel 4<br />

angewendet werden können, um solch einen stationären Punkt zu berechnen.<br />

Für weitere Zwecke bemerken wir:<br />

Wird F nur auf einen affinen Unterraum<br />

W = ¯x + U<br />

minimiert, so ist also die (1.5) entsprechende Bedingung<br />

und dies wiederum ist äquivalent zu<br />

(im Euklidischen Skalarprodukt 〈·, ·〉), da<br />

DF|W(˜x) = 0<br />

〈∇F(�x), u〉 = 0 für alle u ∈ U (1.6)<br />

DF(˜x)h = 〈∇F(˜x), h〉 für h ∈ R n<br />

und die Ableitung DF(�x) (als lineare Abbildung von R n nach R).<br />

Daraus ergibt sich folgende notwendige Optimalitätsbedingung für Optimierungsaufgaben<br />

mit linearen Gleichungseinschränkungen:<br />

Satz 1.1 Sei F : R n → R differenzierbar, A ∈ R n,m , b ∈ R m .<br />

Betrachtet werde das Minimierungsproblem<br />

Minimiere x ↦→ F(x) unter<br />

A T x = b .<br />

Das lineare Gleichungssystem A T x = b sei lösbar.<br />

Ist ˜x ∈ R n ein lokales Minimum. Sei a (i1) , . . ., a (il) eine Basis des Spaltenraums von A.<br />

Dann gibt es ein eindeutiges λ ∈ R l , den Lagrange-Multiplikator, so dass<br />

∇F(˜x) +<br />

l�<br />

λja (ij)<br />

= 0 . (1.7)<br />

j=1<br />

6


Beweis: Sei U = Kern A T , ¯x eine spezielle Lösung von A T ¯x = b, dann wird also F<br />

auf dem affinen Unterraum W = ¯x + U minimiert. Ein lokales Minimum �x erfüllt also<br />

nach (1.6)<br />

〈∇F(�x), u〉 = 0 für alle u ∈ U<br />

also ∇F(�x) ∈ (Kern A T ) ⊥ = Bild A .<br />

Hat der Spaltenraum Bild A die Basis a (i1) , . . .,a (il) , so folgt daraus die Behauptung.<br />

✷<br />

Bemerkungen:<br />

1) Aus (1.7) folgt die (i.a. nicht eindeutige) Existenz von λ ∈ R m , so dass<br />

∇F(˜x) + Aλ = 0 .<br />

2) Die notwendigen Optimalitätsbedingungen sind also folgender Satz von Gleichungen<br />

∇F(˜x) + Aλ = 0<br />

AT (1.8)<br />

˜x = b ,<br />

d.h. wieder ein nichtlineares Gleichungssystem für �x und λ.<br />

3) Führt man das Lagrange-Funktional<br />

L(x, y) := F(x) + y T (A T x − b)<br />

ein, so lässt sich (1.8) auch schreiben als<br />

∂<br />

L(˜x, λ) = ∇F(�x) + Aλ = 0<br />

∂x<br />

∂<br />

∂y L(˜x, λ) = AT ˜x − b = 0 .<br />

Das Minimum ˜x mit seinem Lagrange-Multiplikator λ entspricht aber keinem<br />

Minimum von L, sondern einem Sattelpunkt, d.h. L wird in x minimiert und in<br />

y maximiert: siehe Optimierung.<br />

4) Es gibt analoge Aussagen für nichtlineare Gleichungseinschränkungen oder für<br />

lineare oder nichtlineare Ungleichungseinschränkungen:<br />

A T x ≤ b<br />

bzw. gi(x) ≤ 0, i = 1, . . .,m mit g : R n → R m : siehe Optimierung<br />

7


5) Der Spezialfall eines linearen F mit linearen Ungleichungsbedingungen (lineare<br />

Optimierung, lineare Programmierung, LP) wird in Linearer Algebra behandelt.<br />

6) Lösungsansätze für Optimierungsaufgaben über notwendige Optimalitätsbedingungen<br />

führen also oft auf nichtlineare Gleichungssysteme vom Typ (1.5).<br />

Wenn auch ∇F auswertbar ist, sind dafür also alle Verfahren aus Kapitel 4 anwendbar.<br />

Brauchen diese Verfahren auch die Jacobi-Matrix wie das Newton-Verfahren, dann<br />

muss auch<br />

� � 2 ∂ F<br />

D(∇F)(x) = (x) =: H(F)(x) , (1.9)<br />

∂xi∂xj<br />

die Hesse-Matrix, auswertbar sein.<br />

Im Folgenden werden nur Optimierungsaufgaben ohne Nebenbedingungen, d.h.<br />

M = R n betrachtet.<br />

1.2 Eindimensionale Optimierung<br />

Allgemein braucht ein stationärer Punkt weder ein (lokales) Maximum noch Minimum<br />

zu sein. Das ist auch in einer Raumdimension so, wenn z.B. für ein Intervall [a, b]<br />

f ′ (a)f ′ (b) < 0 gilt und damit ein stationären Punkt (aber nicht notwendig ein Minimum)<br />

in (a, b) existiert, der sicher mit dem Bisektionsverfahren oder Verbesserungen<br />

gefunden werden kann. Ein Minimum wird dann gefunden, wenn verschärft für ein<br />

¯x ∈ (a, b) (das dann Minimum ist) gilt:<br />

f ′ (x) < 0 für x ∈ (a, ¯x)<br />

f ′ (x) > 0 für x ∈ (¯x, b) .<br />

Dies ist hinreichend, dafür dass f auf [a, b] unimodal ist, d.h.<br />

f ist strikt monoton fallend für x ∈ (a, ¯x) ,<br />

f ist strikt monoton wachsend für x ∈ (¯x, b) .<br />

ij<br />

(1.10)<br />

(1.11)<br />

Anstatt z.B. das Bisektionsverfahren auf f ′ (x) = 0 anzuwenden, reicht es f an zwei<br />

Punkten x1 < x2 in (a, b) auszuwerten, um das Intervall der Unimodalität (das ein<br />

lokales Minimum enthält) zu verkleinern:<br />

A) Ist f(x1) < f(x2), kann das Minimum nicht in (x2, b] liegen,<br />

und so [a, b] durch [a, x2] ersetzt werden.<br />

B) Ist f(x1) > f(x2), kann das Minimum nicht in [a, x1) liegen,<br />

und so [a, b] durch [x1, b] ersetzt werden.<br />

C) Ist f(x1) = f(x2), muss das Minimum in [x1, x2] liegen,<br />

so dass dieser Fall bei A) oder B) hinzugenommen werden kann.<br />

8<br />

(1.12)


Um eine lineare Konvergenzrate mit festem Kontraktionsfaktor C < 1 zu garantieren<br />

sollten x1, x2 so sein, dass (x2 − a) = τ(b − a) = b − x1 für ein festes 0 < τ < 1 (dann<br />

C = τ). Dies ist erfüllt für (bei 0.5 < τ < 1):<br />

x1 = a + (1 − τ)(b − a) ,<br />

x2 = a + τ(b − a) ,<br />

(1.13)<br />

d.h. die Punkte werden von den Intervallgrenzen mit dem relativen Abstand 1 −τ und<br />

τ positioniert. Eine Wahl von τ direkt bei 0.5 macht die Abfrage f(x1) <<br />

≥ f(x2) in<br />

(1.12) instabil. Jeder Iterationsschritt braucht zwei Funktionsauswertungen. Es ist also<br />

vorteilhaft, wenn bei einem (speziellen) τ (nahe bei 0.5) nur eine Funktionsauswertung<br />

pro Iteration gebraucht wird. Das ist dann der Fall, wenn im Fall B) von (1.12) gilt<br />

xalt 2 = xneu ⇐⇒<br />

1<br />

a + τ(b − a) = xalt 1 + (1 − τ)(b − xalt 1 )<br />

=<br />

⇐⇒<br />

a + (1 − τ)(b − a) + (1 − τ)τ(b − a)<br />

τ = 1 − τ + τ − τ2 ⇐⇒<br />

Diese quadratische Gleichung hat die positive Lösung<br />

τ 2 = 1 − τ . (1.14)<br />

τ = (5 1/2 − 1)/2 ∼ 0.618 .<br />

Bei dieser Wahl gilt auch im Fall A) von (1.12)<br />

xalt 1 = xneu ⇐⇒<br />

2<br />

a + (1 − τ)(b − a) = a + τ(xalt 2 − a)<br />

= a + τ2 ⇐⇒<br />

(b − a)<br />

τ2 = 1 − τ .<br />

Die Wahl von τ entspricht gerade dem Verhältnis des goldenen Schnitts, daher heißt<br />

das Verfahren Goldene Schnitt Suche.<br />

9


Algorithmus 1.2 (Minimierung durch Goldene Schnitt Suche)<br />

tau = (5^{1/2} - 1)/2;<br />

x_1 = a + (1 - tau)*(b-a);<br />

f_1 = f(x_1);<br />

x_2 = a + tau*(b-a);<br />

f_2 = f(x_2);<br />

while (b-a) > eps<br />

if (f_1 > f_2)<br />

a = x_1;<br />

x_1 = x_2;<br />

f_1 = f_2;<br />

x_2 = a + tau*(b-a);<br />

f_2 = f(x_2);<br />

else<br />

b = x_2;<br />

x_2 = x_1;<br />

f_2 = f_1;<br />

x_1 = a + (1 - tau)*(b-a);<br />

f_1 = f(x_1);<br />

end<br />

end<br />

Wähle a (1) , b (1) ∈ R so, dass (1.11) erfüllt ist und berechne<br />

Für k = 1, . . . setze<br />

wenn f (k)<br />

1 > f (k)<br />

2<br />

x (1)<br />

1<br />

f (1)<br />

1<br />

x (1)<br />

2<br />

f (1)<br />

2<br />

τ =<br />

√ 5 − 1<br />

2<br />

= a(1) + (1 − τ)(b (1) − a (1) )<br />

= f(x (1)<br />

1 )<br />

= a (1) + τ(b (1) − a (1) )<br />

= f(x (1)<br />

2 )<br />

10


dann:<br />

sonst:<br />

a (k+1) = x (k)<br />

1<br />

b (k+1) = b (k)<br />

x (k+1)<br />

1<br />

f (k+1)<br />

1<br />

x (k+1)<br />

2<br />

f (k+1)<br />

2<br />

a (k+1) = a (k)<br />

b (k+1) = x (k)<br />

2<br />

x (k+1)<br />

2<br />

f (k+1)<br />

2<br />

x (k+1)<br />

1<br />

f (k+1)<br />

1<br />

= x (k)<br />

2<br />

= f (k)<br />

2<br />

= a (k+1) + τ(b (k+1) − a (k+1) )<br />

= f(x (k+1)<br />

2 )<br />

= x (k)<br />

1<br />

= f (k)<br />

1<br />

= a (k+1) + (1 − τ)(b (k+1) − a (k+1) )<br />

= f(x (k+1)<br />

1 )<br />

bis das Abbruchkriterium ( ” |b − a| = 0“) erfüllt ist.<br />

1.3 Zusammenhang Optimierung – Gleichungssysteme, Newtonverfahren<br />

und Varianten<br />

Wir betrachten wieder (1.1) bzw. (1.2) mit M = R n .<br />

I.a. ist ein stationärer Punkt (1.5) kein lokales Minimum, für konvexe Funktionale ist<br />

das aber gesichert, dann ist ein stationärer Punkt sogar ein globales Minimum (ohne<br />

Beweis).<br />

In diesem Fall ist es also äquivalent, ein Minimierungsproblem (1.1)/(1.2) oder ein<br />

lineares Gleichungssystem (1.5) zu lösen.<br />

Hinsichtlich der Wahl einer der Alternativen ist auch Folgendes zu beachten:<br />

(1.1)/(1.2) sensitiver ist als ein nichtlineares Gleichungssystem f(x) = 0 : Setzt man<br />

für die Nullstelle ¯x die Invertierbarkeit von Df(x) in einer Umgebung von ¯x voraus,<br />

dann ist approximativ zu lösen<br />

f(¯x + h) − Df(¯x + h)h = 0 ,<br />

11


um ¯x = ¯x + h − h aus ¯x + h zu erhalten, so dass sich das Fehlerniveau ε von f (≥<br />

Maschinengenauigkeit τ) vermittelt durch die Kondition von Df(¯x+h) auf ¯x überträgt.<br />

Bei der Minimierung von F gilt stattdessen nahe bei der Minimalstelle ¯x approximativ<br />

F(¯x + h) + 1<br />

2 hT H(F)(¯x + h)h = 0 ,<br />

so dass man nur das Fehlerniveau Cε 1/2 für h erwarten kann.<br />

Da aber bei (1.5) f = ∇F ist, ist zu berücksichtigen, ob ∇F exakt auswertbar ist.<br />

Wird ∇F etwa über Differenzenquotienten approximiert, ist die Schlechtgestelltheit des<br />

numerischen Differenzierens zu berücksichtigen, was den Unterschied wieder ausgleicht<br />

(selbst bei optimal gewählten Diskretisierungsschrittweiten δ > 0: siehe Abschnitt 2.7).<br />

Verfahren für stationäre Punkte<br />

Die Anwendung des Newtonverfahrens auf (1.5) führt auf den Basisiterationsschritt<br />

x (i+1) = x (i) + δ (i) mit<br />

H(F)(x (i) )δ (i) = −∇F(x (i) ) .<br />

(1.15)<br />

Da hier der Aufbau des Gleichungssystems besonders aufwändig ist, sind alle Überlegungen<br />

aus Abschnitt 4.5 zur Verringerung dieses Aufwandes sinnvoll. Insbesondere<br />

entstehen Quasi-Newtonverfahren dadurch, dass in (1.15) eine die Hesse-Matrix approximierende<br />

Matrix B(x (i) ) durch sogenannte Sekanten-Updates (bzw. genauer die<br />

LR-Zerlegung) aufgebaut wird. Von diesen ist der nach Broyden, Fletcher, Goldfarb<br />

und Shanno BFGS genannte einer der bekannteren. Auch die in Abschnitt 4.5 besprochenen<br />

(Dämpfungs-) Strategien zur Vergrößerung des Konvergenzeinzugsbereichs sind<br />

sinnvoll. Man kann noch weitergehen, und mit dem Trust-region Ansatz auch die Richtung<br />

δ (i) des Newton-Schrittes modifizieren. Nach Lemma 1.4 (siehe unten) ist (1.15)<br />

äquivalent mit<br />

Minimiere F q;x (i)(δ) , wobei<br />

F q;x (i)(δ) := F(x (i) ) + ∇F(x (i) ) T δ<br />

+ δ T H(F)(x (i) )δ ,<br />

d.h. statt des nichtlinearen Funktionals wird ein quadratisches “Modell” minimiert.<br />

(1.16)<br />

Die Trust-region Strategie vergleicht für die Richtung δ (i) den Abstieg in F q;x (i) mit<br />

dem in F(x (i) + .) und modifiziert und dämpft δ (i) , so dass die Gültigkeit des lokalen<br />

quadratischen Modells gesichert bleibt.<br />

12


Als ein vereinfachtes Newton-Verfahren kann auch das Gauss-Newton Verfahren aus<br />

Abschnitt 4.3 interpretiert werden. Hier wird der Newton-Schritt für ∇F(x) = 0 für F<br />

nach (4.42),<br />

�<br />

m�<br />

�<br />

Df(x (k) ) T Df(x (k) ) +<br />

i=1<br />

fi(x (k) )Hi(x (k) )<br />

δ (k) = −Df(x (k) ) T f(x (k) ) , (1.17)<br />

wobei Hi(x) die Hesse-Matrix von fi an der Stelle x bezeichnet. Durch Wegfall der<br />

Summe, was für kleine Residua fi gerechtfertigt erscheint, entsteht bei vollem Rang<br />

von Df(x (k) ) das Gauss-Newton Verfahren.<br />

1.4 Konvexe und quadratische Funktionale<br />

Definition: Sei X ein R-Vektorraum und F : X → R .<br />

F heißt konvex, wenn für x, y ∈ X, λ ∈ [0, 1] gilt<br />

F(λx + (1 − λ)y) ≤ λF(x) + (1 − λ)F(y) .<br />

Spezielle konvexe Funktionale sind quadratische Funktionale, d.h.<br />

Lemma 1.3 Sei A ∈ R n,n symmetrisch, positiv semidefinit, und b ∈ R n . Dann ist das<br />

Funktional<br />

F(x) := 1<br />

2 xT Ax − b T x (1.18)<br />

ein konvexes Funktional.<br />

Definiere zu einer symmetrischen Matrix A ∈ R n,n :<br />

〈x, y〉A := x T Ay für alle x, y ∈ R n . (1.19)<br />

Dies ist ein Skalarprodukt mit Ausnahme der Definitheitseigenschaft; diese gilt auch,<br />

wenn A positiv definit ist. Also definiert<br />

�x�A := 〈x, x〉 1/2<br />

A = (xT Ax) 1/2<br />

(1.20)<br />

eine Halbnorm bzw. Norm auf R n , die von A erzeugte Energienorm. Es gilt also die<br />

Cauchy–Schwarz’sche Ungleichung<br />

|〈x, y〉A| ≤ �x�A�y�A für alle x, y ∈ R n . (1.21)<br />

13


Beweis von Lemma 1.3:<br />

Es reicht, den nichtlinearen Anteil, d.h. b = 0 zu betrachten.<br />

Seien x, y ∈ R n , λ ∈ [0, 1], ¯ λ := 1 − λ ∈ [0, 1]:<br />

F(λx + ¯ λy) = 1 � �<br />

λx + λy ¯ T � �<br />

A λx + λy ¯<br />

1<br />

=<br />

2<br />

2 λ2x T Ax + λ¯ λx T Ay + 1<br />

2 ¯ λ 2 y T Ay<br />

≤ 1 � � 2 T<br />

λ x Ax + λλ(x ¯ T T<br />

Ax + y Ay) + λ¯ 2 T<br />

y Ay . (1.22)<br />

2<br />

Bei der letzten Abschätzung gingen (1.21) und die sofort aus der binomischen Formel<br />

folgende Ungleichung<br />

2|ab| ≤ εa 2 + 1<br />

(1.23)<br />

für a, b ∈ R, ε > 0 ein, d.h. nämlich mit ε = 1<br />

ε b2<br />

x T Ay ≤ �x�A�y�A ≤ 1 � 2<br />

�x�A + �y�<br />

2<br />

2 �<br />

A .<br />

Die Abschätzung in (1.22) kann nun folgendermaßen fortgesetzt werden:<br />

Es gilt also<br />

F(λx + ¯ λy) ≤ 1<br />

2 (λ(λ + ¯ λ)x T Ax + ¯ λ(λ + ¯ λ)y T Ay) = λF(x) + ¯ λF(y) .<br />

Lemma 1.4 Für das quadratische Funktional (1.18) mit symmetrischen A ∈ R n,n gilt<br />

für x ∈ R n :<br />

∇F(x) = Ax − b .<br />

Ist A zusätzlich positiv semidefinit, dann sind äquivalent:<br />

(1) x ∗ ist globales Minimum von F auf W := ¯x + U für einen linearen Unterraum<br />

U ⊂ R n .<br />

(2) 〈∇F(x ∗ ), u〉 = 0 für alle u ∈ U.<br />

Beweis:<br />

1<br />

2 (x + h)T A(x + h) − b T (x + h) = 1<br />

2 xT Ax − b T x + (Ax − b) T h + 1<br />

2 hT Ah (1.24)<br />

und 1<br />

2 hT Ah = O(�h� 2 ), also gilt<br />

∇F(x) = Ax − b für alle x ∈ R n . (1.25)<br />

14<br />


Also gilt (1)⇒(2) unter Beachtung von (1.6). Die Implikation (2)⇒(1) folgt aus der<br />

folgenden Konsequenz von (1.24), ( 1.25).<br />

F(x + h) = F(x) + ∇F(x) T h + 1<br />

2 hT Ah ≥ F(x) + ∇F(x) T h für alle h ∈ R n ,<br />

d.h. für 〈∇F(x ∗ ), u〉 = 0 für u ∈ U folgt für x ∗ statt x, x statt x ∗ + h mit h ∈ U<br />

Wegen<br />

F(x) ≥ F(x ∗ ) für alle x ∈ W .<br />

�Ax − b� 2 2 = xT A T Ax − (A T b) T x + b T b<br />

ist das Ausgleichsproblem von der Form (1.18) mit der symmetrisch, positiv semidefiniten<br />

Matrix 1<br />

2 AT A, also äquivalent zu den Normalgleichungen<br />

A T Ax = A T b .<br />

Allgemein ist ein Funktional auf einem normierten Raum X<br />

für ein f ∈ X konvex, denn:<br />

ϕ(u) = �f − u� 2<br />

ϕ(λu + ¯ λv) = �λ(f − u) + ¯ λ(f − v)� 2<br />

≤ (λ�f − u� + ¯ λ�f − v�) 2<br />

= λ 2 �f − u� 2 + 2λ ¯ λ�f − u��f − v� + ¯ λ� 2 f − v� 2<br />

≤ λ 2 �f − u� 2 + λ ¯ λ(�f − u� 2 + �f − v� 2 ) + λ 2 �f − v� 2<br />

≤ λ�f − u� 2 + ¯ λ�f − v� 2 ,<br />

(siehe (1.22)).<br />

Ist die Norm �·� auf X durch ein Skalarprodukt 〈·, ·〉 erzeugt, ist ϕ auch differenzierbar<br />

und sogar ein quadratisches Funktional für endlich-dimensionales X (in den Parametern<br />

α1, . . .,αn, wenn dim X = n) - siehe Lineare Algebra.<br />

Betrachtet man die Minimierung von ϕ auf einem affinen Teilraum W = w0 + U, also<br />

das Problem der besten Approximation von f in W, dann ist dies äquivalent zu<br />

Dϕ(w0 + u) = D(�f − w0 − u� 2 ) = 0 für u ∈ U<br />

⇐⇒ 2〈f − (w0 + u), v〉 = 0 für alle v ∈ U .<br />

Sei nun U endlich-dimensional, dim U = n (X darf unendlich-dimensional sein), dann<br />

ist nach Wahl einer Basis v1, . . ., vn von U<br />

n�<br />

für u = αivi dies äquivalent zu<br />

〈f − w0 −<br />

i=1<br />

n�<br />

αivi, vj〉 = 0 für alle j = 1, . . ., n ,<br />

i=1<br />

15<br />


also zu dem linearen Gleichungssystem (mit der Gramschen Matrix)<br />

- siehe Lineare Algebra -<br />

A = (〈vj, vi〉)i,j<br />

Aα = b<br />

für α = (αi) T i , b = (〈f − w0, vi〉) T i .<br />

Mittels Verfahren für die Optimierungsaufgabe für (1.18) entstehen also neue Verfahren<br />

zur Lösung linearer Gleichungssysteme, falls A symmetrisch und positiv definit ist.<br />

Das ist dann relevant, wenn A eine solche Matrix ist, die durch die Diskretisierung<br />

einer partiellen Differentialgleichung (einer elliptischen Randwertaufgabe) entstanden<br />

ist. Dann sind die in Kapitel 1 besprochenen Verfahren nur bedingt brauchbar, da die<br />

dünne Besetzung der Matrix z.T. verloren geht; die iterativen Verfahren aus Kapitel 4<br />

sind wegen ihrer geringen und mit wachsender Dimension schlechter werdenden Konvergenzgeschwindigkeit<br />

nicht brauchbar. Das heute für mittlere Komplexität (n ≤ 5000)<br />

Verfahren der Wahl ist (eine vorkonditionierte Version) des CG–Verfahrens.<br />

1.5 Gradientenverfahren und<br />

Methode der konjugierten Gradienten für quadratische<br />

Optimierungsprobleme<br />

In diesem Abschnitt sei A ∈ R n,n symmetrisch und positiv definit.<br />

Das Gleichungssystem Ax = b ist dann äquivalent zu<br />

Minimiere f(x) := 1<br />

2 xT Ax − b T x für x ∈ R n , (1.26)<br />

da für ein solches Funktional eine Minimalstelle genau einem stationären Punkt entspricht,<br />

das heißt einem x mit<br />

0 = ∇f(x) = Ax − b . (1.27)<br />

Eng verknüpft mit (1.26) ist das folgende Skalarprodukt auf R n<br />

das sogenannte Energie-Skalarprodukt.<br />

〈x, y〉A := x T Ay , (1.28)<br />

16


Ein allgemeines Iterationsverfahren zur Lösung von (1.26) hat die Struktur:<br />

Bestimme eine Suchrichtung d (k) .<br />

Minimiere α ↦→ ˜ f(α) := f � x (k) + αd (k)�<br />

exakt oder approximativ, dies ergibt αk .<br />

(1.29)<br />

Setze x (k+1) := x (k) + αkd (k) . (1.30)<br />

Ist f wie in (1.26) definiert, so ergibt sich das exakte αk aus der Bedingung ˜ f ′ (α) = 0<br />

und<br />

˜f ′ (α) = ∇f � x (k) + αd (k)� T d (k)<br />

als<br />

wobei<br />

αk = − g(k)T d (k)<br />

d (k)T , (1.31)<br />

Ad (k)<br />

g (k) := Ax (k) − b = ∇f � x (k)� . (1.32)<br />

Der Fehler der k-ten Iterierten werde mit e (k) bezeichnet:<br />

e (k) := x (k) − x .<br />

Einige allgemein gültige Beziehungen sind dann:<br />

Wegen der eindimensionalen Minimierung von f gilt<br />

und aus (1.32) folgt sofort:<br />

Wir betrachten die Energienorm<br />

die vom Energieskalarprodukt erzeugt wird.<br />

g (k+1)T d (k) = 0 , (1.33)<br />

Ae (k) = g (k) , e (k+1) = e (k) + αkd (k) , (1.34)<br />

g (k+1) = g (k) + αkAd (k) . (1.35)<br />

�x�A := � x T Ax � 1/2 , (1.36)<br />

17


Vergleichen wir die Lösung x = A −1 b mit einem beliebigen y ∈ R n , dann gilt<br />

1<br />

2 �y − x�2 A<br />

Wir summieren (1.37) (1.38), dann gilt<br />

Ax = b<br />

f(x) = 1<br />

2 xT Ax − b T x<br />

= 1<br />

2 xT b − b T x = − 1<br />

2 bT x (1.37)<br />

= 1<br />

2 yT Ay + 1<br />

2 xT Ax<br />

� �� �<br />

1<br />

2 bT x<br />

− y T Ax<br />

����<br />

b<br />

= f(y) + 1<br />

2 bT x . (1.38)<br />

f(y) = f(x) + 1<br />

2 �y − x�2 A , (1.39)<br />

so dass in (1.26) also auch der Abstand zu x in � · �A minimiert wird. Der Energienorm<br />

wird deshalb eine besondere Bedeutung zukommen. Darin gilt wegen (1.34)<br />

und so wegen (1.34) und (1.33):<br />

�<br />

� e (k) � � 2<br />

A = e(k)T g (k) = g (k)T A −1 g (k)<br />

�<br />

� e (k+1) � � 2<br />

A = g(k+1)T e (k) .<br />

Der Vektor −∇f � x (k)� gibt in x (k) die Richtung des lokal steilsten Abstiegs an, was<br />

das Gradientenverfahren nahelegt, das heißt<br />

und so<br />

d (k) := −g (k)<br />

(1.40)<br />

αk = d(k)T d (k)<br />

d (k)T . (1.41)<br />

Ad (k)<br />

Mit den obigen Identitäten ergibt sich für das Gradientenverfahren aus (1.35):<br />

�<br />

� (k+1)<br />

e � �2 A = � g (k) + αkAd (k)� �<br />

T (k) (k) 2<br />

e = �e �A 1 − αk<br />

d (k)T d (k)<br />

�<br />

und damit mittels der Definition von αk aus (1.41):<br />

18<br />

d (k)T A −1 d (k)


�<br />

� x (k+1) − x � � 2<br />

A = � � x (k) − x � � 2<br />

A<br />

Mit der Ungleichung von Kantorowitsch:<br />

x T Axx T A −1 x<br />

(x T x) 2<br />

≤<br />

⎧<br />

⎪⎨<br />

1 −<br />

⎪⎩<br />

�<br />

d (k)T d (k)<br />

�2 d (k)T Ad (k) d (k)T A −1 d (k)<br />

�<br />

1<br />

2 κ1/2 + 1<br />

2 κ−1/2<br />

�2 wobei κ := κ(A) die spektrale Konditionszahl ist, folgt wegen<br />

1 −<br />

4<br />

(a 1/2 + a −1/2 )<br />

Satz 1.5 Für das Gradientenverfahren gilt:<br />

�<br />

� x (k) − x � �A ≤<br />

(a − 1)2<br />

2 =<br />

(a + 1) 2 für a > 0 :<br />

,<br />

⎫<br />

⎪⎬<br />

⎪⎭ .<br />

� �k κ − 1 ��x �<br />

(0)<br />

− x�A . (1.42)<br />

κ + 1<br />

Das ist die gleiche Abschätzung wie für das optimal relaxierte Richardson-Verfahren<br />

(mit der Verschärfung �M�A ≤ κ−1<br />

κ+1<br />

statt ̺(M) ≤ κ−1<br />

κ+1 ).<br />

Der wesentliche Unterschied besteht aber darin, dass dies ohne Kenntnis der Eigenwerte<br />

von A möglich ist.<br />

Für Finite-Differenzen- oder Finite-Element-Diskretisierungen von elliptischen partiellen<br />

Differentialgleichungen (siehe Abschnitt 7.6 und Numerik partieller Differentialgleichungen)<br />

ist dies trotzdem die gleiche schlechte Konvergenzrate wie für das Jacobi- oder<br />

ähnliche Verfahren. Das Problem liegt darin, dass zwar wegen (1.33) g (k+1)T g (k) = 0<br />

gilt, nicht aber im Allgemeinen g (k+2)T g (k) = 0; vielmehr sind diese Suchrichtungen<br />

oftmals fast parallel.<br />

m = 2:<br />

.x (0)<br />

f = const<br />

..<br />

(Hohenlinien)<br />

Abbildung 1: Zick-Zack-Verhalten des Gradientenverfahrens (lese n = 2 statt m = 2)<br />

19


�<br />

1 0<br />

Beispiel: Für A =<br />

0 9<br />

gilt<br />

und damit<br />

� �<br />

0<br />

, b =<br />

0<br />

x (i) = (0.8) i−1<br />

�<br />

und x (1) =<br />

�<br />

9<br />

(−1) i−1<br />

�x (i) �2 = 0.8�x (i−1) �2 .<br />

Dieses Problem beruht darauf, dass für große κ die Suchrichtungen g (k) und g (k+1) bzgl.<br />

des Skalarprodukts 〈·, ·〉A fast parallel sein können, aber bzgl. � · �A der Abstand zur<br />

Lösung minimiert wird (vgl. (1.39)).<br />

Die Suchrichtungen d (k) sollten also orthogonal bzgl. 〈·, ·〉 A , das heißt konjugiert sein:<br />

�<br />

� 9<br />

1<br />

Definition: Vektoren d (0) , . . .,d (l) ∈ R n heißen konjugiert, wenn gilt:<br />

� d (i) , d (j) �<br />

A<br />

,<br />

�<br />

= 0 für i, j = 0, . . .,l, i �= j .<br />

Wenn die Suchrichtungen eines nach (1.30), (1.31) definierten Verfahrens konjugiert<br />

gewählt werden, dann heißt es ein Verfahren der konjugierten Richtungen.<br />

Seien d (0) , . . .,d (n−1) konjugierte Richtungen, dann sind sie insbesondere linear unabhängig<br />

und bilden daher eine Basis, bzgl. derer die Lösung x (von Ax = b) dargestellt<br />

werden kann mit Koeffizienten γk:<br />

�n−1<br />

x = γkd (k) .<br />

k=0<br />

Wegen der Konjugiertheit der d (k) und wegen Ax = b gilt<br />

γk = d(k)T b<br />

d (k)T , (1.43)<br />

Ad (k)<br />

und die γk sind so ohne Kenntnis von x zu bestimmen. Wären also die d (k) a priori,<br />

zum Beispiel durch Orthogonalisierung einer Basis bzgl. 〈·, ·〉 A , gegeben, dann wäre x<br />

durch (1.43) bestimmt.<br />

Wenden wir (1.43) an, um für x − x (0) die Koeffizienten in der Form<br />

x = x (0) �n−1<br />

+ γkd (k)<br />

20<br />

k=0


zu bestimmen, das heißt wir ersetzen in (1.43) b durch b − Ax (0) , so erhalten wir<br />

Es gilt für die k-te Iterierte nach (1.30)<br />

und damit (vgl. (1.32))<br />

γk = − g(0)T d (k)<br />

d (k)T .<br />

Ad (k)<br />

x (k) = x (0) k−1<br />

+<br />

�<br />

αid (i)<br />

i=0<br />

g (k) = g (0) k−1<br />

+<br />

�<br />

αiAd (i)<br />

und somit für ein Verfahren der konjugierten Richtungen:<br />

Also folgt<br />

i=0<br />

g (k)T d (k) = g (0)T d (k) .<br />

γk = − g(k)T d (k)<br />

d (k)T Ad (k) = αk ,<br />

das heißt x = x (n) . Ein Verfahren der konjugierten Richtungen ist also nach maximal n<br />

Schritten exakt. Unter Umständen kann das CG-Verfahren schon vor Erreichen dieser<br />

Schrittzahl mit g (k) = 0 und der aktuellen Iterierten x (k) = x abbrechen. Bei seiner<br />

Erfindung des CG-Verfahrens in den 1950er Jahren durch Hestenes und Stiefel war<br />

es ursprünglich auch als direktes Verfahren konzipiert. Wenn n sehr groß ist, ist aber<br />

die Exaktheit des CG-Verfahrens weniger wichtig als die Tatsache, dass die Iterierten<br />

als Lösung eines zu (1.26) approximativen Minimierungsproblems interpretiert werden<br />

können:<br />

Satz 1.6 Sei x die Lösung von Ax = b. Die in einem Verfahren der konjugierten<br />

Richtungen bestimmte Iterierte x (k) minimiert sowohl das Funktional f aus (1.26) als<br />

auch den Fehler y ↦→ � � y − x � �A auf x (0) + Kk(A; g (0) ), wobei<br />

Es gilt nämlich<br />

Kk(A; g (0) ) := span � d (0) , . . .,d (k−1)� .<br />

g (k)T d (i) = 0 für i = 0, . . ., k − 1 . (1.44)<br />

21


Beweis: Nach (1.6) reicht es, (1.44) zu zeigen.<br />

Wegen der eindimensionalen Minimierung ist klar, dass dies bei k = 1 und für i = k −1<br />

gilt (siehe (1.33) angewendet auf k − 1). Wegen (1.35) folgt auch für 0 ≤ i < k − 1:<br />

d (i)T� g (k) − g (k−1) � = αk−1d (i)T Ad (k−1) = 0 .<br />

Beim Verfahren der konjugierten Gradienten bzw. CG-Verfahren (CG : Conjugate<br />

Gradients) werden die d (k) während der Iteration durch den Ansatz<br />

bestimmt. Zu klären bleibt, ob dadurch<br />

� d (k) , d (i) �<br />

d (k+1) := −g (k+1) + βkd (k)<br />

A<br />

= 0 für k > i<br />

erreicht werden kann. Die notwendige Forderung � d (k+1) , d (k)� = 0 führt zu<br />

A<br />

− � g (k+1) , d (k)�<br />

�<br />

(k) (k) + βk d , d A �<br />

= 0 ⇐⇒<br />

βk = g(k+1)T Ad (k)<br />

d (k)T Ad (k)<br />

A<br />

✷<br />

(1.45)<br />

. (1.46)<br />

Man beachte, dass vorerst nicht klar ist, dass die durch (1.45), (1.46) definierten Richtungen<br />

konjugiert sind. Das wird erst in Satz 1.9 abgeklärt werden.<br />

Bei der Realisierung des Algorithmus empfiehlt es sich, nicht g (k+1) direkt auszuwerten,<br />

sondern stattdessen (1.35) zu benutzen, da Ad (k) schon zur Bestimmung von αk und<br />

βk nötig ist.<br />

Unter dem Vorbehalt, dass das CG-Verfahren auch ein Verfahren konjugierter Richtungen<br />

ist, gelten die folgenden Aussagen. Der Vorbehalt wird schließlich in Satz 1.9<br />

abgesichert.<br />

Satz 1.7 Falls das CG-Verfahren nicht bei x (k−1) vorzeitig mit Erreichen der Lösung<br />

von Ax = b abbricht, gilt für 1 ≤ k ≤ n:<br />

Kk(A; g (0) ) = span � g (0) , Ag (0) , . . .,A k−1g (0)�<br />

= span � g (0) , . . .,g (k−1)� (1.47)<br />

.<br />

Weiter gilt<br />

und dim Kk(A; g (0) ) = k .<br />

g (k)T g (i) = 0 für i = 0, . . .,k − 1<br />

(1.48)<br />

Der Raum Kk(A; g (0) ) = span � g (0) , Ag (0) , . . .,A k−1 g (0)� heißt der Krylov-(Unter-<br />

)Raum der Dimension k von A bzgl. g (0) .<br />

22


Beweis: Die Identitäten (1.48) sind eine unmittelbare Folge von (1.47) und Satz 1.6.<br />

Der Beweis von (1.47) erfolgt durch vollständige Induktion:<br />

Für k = 1 ist die Aussage trivial, es gelte also für ein k ≥ 1 die Identität (1.47) und<br />

daher auch (1.48). Wegen (1.35) (angewendet auf k − 1) folgt wegen<br />

und so<br />

Ad (k) ∈ A � �<br />

(0)<br />

Kk A; g �� ⊂ span � g (0) , . . ., A k g (0)�<br />

g (k) ∈ span � g (0) , . . ., A k g (0)�<br />

span � g (0) , . . .,g (k)� = span � g (0) , . . .,A k g (0)� ,<br />

da die Teilmengenbeziehung gilt und wegen (1.48) sowie g (i) �= 0 für alle i = 0, . . .,k<br />

die Dimension des linken Teilraums maximal (= k + 1) ist. Die Identität<br />

span � d (0) , . . ., d (k)� = span � g (0) , . . .,g (k)�<br />

folgt aus der Induktionsvoraussetzung und (1.45). ✷<br />

Die Anzahl der Operationen pro Iterationsschritt kann auf eine Matrix-Vektor-, zwei<br />

Skalarprodukt-, und drei SAXPY-Operationen reduziert werden, wenn folgende äquivalente<br />

Ausdrücke benutzt werden:<br />

αk = g(k)T g (k)<br />

d (k)T Ad (k)<br />

Dabei ist eine SAXPY-Operation von der Form<br />

für Vektoren x, y, z und einen Skalar α.<br />

, βk = g(k+1)T g (k+1)<br />

g (k)T g (k)<br />

z := x + αy<br />

Die Gültigkeit der Identitäten (7.47) kann man folgendermaßen einsehen:<br />

Bezüglich αk beachte man, dass wegen (1.33) und (1.45) gilt:<br />

−g (k)T d (k) = −g (k)T� − g (k) + βk−1d (k−1)� = g (k)T g (k)<br />

. (1.49)<br />

und bezüglich βk wegen (1.35), (1.48), (1.46) und der Identität für αk (1.31):<br />

g (k+1)T g (k+1) = g (k+1)T� g (k) + αkAd (k)� = αkg (k+1)T Ad (k) = βkg (k)T g (k)<br />

und somit die Behauptung.<br />

23


Algorithmus 1.8 (CG-Verfahren)<br />

x = x0;<br />

g = A * x - b;<br />

d = - g;<br />

k = 0;<br />

eps2 = eps * eps;<br />

noq2_g_alt = transpose(g) * g;<br />

while(noq2_g_alt > eps2 && k < kmax)<br />

alpha = transpose(g)*g/(transpose(d)*A*d);<br />

x = x + alpha * d;<br />

g = g + alpha * A * d;<br />

noq2_g_neu = transpose(g) * g;<br />

beta = noq2_g_neu / noq2_g_alt;<br />

noq2_g_alt = noq2_g_neu;<br />

d = - g + beta * d;<br />

k = k + 1;<br />

end<br />

Wähle x (0) ∈ R m beliebig und berechne<br />

Für k = 0, 1, . . . setze<br />

d (0)<br />

:= −g (0) = b − Ax (0) .<br />

αk = g(k)T g (k)<br />

d (k)T ,<br />

Ad (k)<br />

x (k+1) = x (k) + αkd (k) ,<br />

g (k+1) = g (k) + αkAd (k) ,<br />

βk = g(k+1)T g (k+1)<br />

g (k)T g (k)<br />

d (k+1) = −g (k+1) + βkd (k) ,<br />

bis das Abbruchkriterium ( ” �g (k+1) �2 = 0“) erfüllt ist.<br />

Das wirklich Erstaunliche am CG-Verfahren ist, dass die durch die Drei-Term-<br />

Rekursion (1.45), (1.46) definierten Richtungen konjugiert sind.<br />

Satz 1.9 Solange g (k−1) �= 0 erfüllt ist, gilt d (k−1) �= 0 und d (0) , . . .,d (k−1) sind konjugiert.<br />

24<br />

,


Beweis: Der Beweis erfolgt durch vollständige Induktion:<br />

Für k = 1 ist die Aussage klar. Es seien also d (0) , . . ., d (k−1) �= 0 und konjugiert. Damit<br />

gelten nach Satz 1.6 und Satz 4.22 die Identitäten (1.44)–(1.48) bis zum Index k. Wir<br />

zeigen als erstes: d (k) �= 0:<br />

Wegen g (k) +d (k) = βk−1d (k−1) ∈ Kk(A; g (0) ) folgte aus d (k) = 0 direkt g (k) ∈ Kk(A; g (0) ).<br />

Aber nach (1.47) und (1.48) für den Index k gilt<br />

was im Widerspruch zu g (k) �= 0 steht.<br />

g (k)T x = 0 für alle x ∈ Kk(A; g (0) ) ,<br />

Beim Nachweis von d (k)T Ad (i) = 0 für i = 0, . . .,k−1 ist nach (1.46) nur noch der Fall<br />

i ≤ k − 2 zu betrachten. Es gilt:<br />

d (i)T Ad (k) = −d (i)T Ag (k) + βk−1d (i)T Ad (k−1) .<br />

Der erste Term verschwindet wegen Ad (i) ∈ A � �<br />

(0)<br />

Kk−1 A; g �� �<br />

(0) ⊂ Kk A; g � , das heißt<br />

Ad (i) ∈ span � d (0) , . . .,d (k−1)� , und (1.44). Der zweite Term verschwindet nach Induktionsvoraussetzung.<br />

✷<br />

Verfahren, die versuchen, bzgl. einer Norm � · � den Fehler oder den Defekt auf<br />

�<br />

(0)<br />

Kk A; g � zu minimieren, heißen Krylov-Unterraum-Methoden. Hier wird also nach<br />

(1.39) und Satz 1.6 der Fehler in der Energienorm � · � = � · �A minimiert.<br />

Aufgrund der Darstellung des Krylov-Raumes in Satz 4.22 sind die Elemente y ∈<br />

x (0) �<br />

(0) + Kk A; g � genau die Vektoren der Form, y = x (0) + q(A)g (0) , wobei q ∈ Πk−1<br />

beliebig ist. Es folgt<br />

y − x = x (0) − x + q(A)A � x (0) − x � = p(A) � x (0) − x � .<br />

Dabei ist p(z) = 1+q(z)z, das heißt p ∈ Πk und p(0) = 1. Andererseits lässt sich jedes<br />

solche Polynom in besagter Form darstellen (definiere q durch q(z) = (p(z) − 1)/z).<br />

Also gilt nach Satz 1.6<br />

für beliebige p ∈ Πk mit p(0) = 1.<br />

�<br />

� x (k) − x � �A ≤ �y − x�A = � � p(A) � x (0) − x �� �A (1.50)<br />

Sei z1, . . .,zm eine orthonormale Basis aus Eigenvektoren, das heißt<br />

Azj = λjzj und z T i zj = δij für i, j = 1, . . .,n . (1.51)<br />

25


Dann gilt x (0) − x = � n<br />

j=1 cjzj für gewisse cj ∈ R, das heißt<br />

und so<br />

und analog<br />

p(A) � x (0) − x � =<br />

n�<br />

p (λj)cjzj<br />

j=1<br />

�<br />

� x (0) − x � � 2<br />

A = � x (0) − x � T A � x (0) − x � =<br />

�<br />

� p(A) � x (0) − x � � � 2<br />

A =<br />

Aus (1.50), (1.52) folgt:<br />

n�<br />

j=1<br />

λj |cjp(λj)| 2 ≤<br />

n�<br />

i,j=1<br />

cicjz T i Azj =<br />

n�<br />

j=1<br />

λj |cj| 2<br />

�<br />

max<br />

i=1,...,n |p(λi)|<br />

�2 ��x �<br />

(0)<br />

− x�2 . (1.52)<br />

A<br />

Satz 1.10 Für das CG-Verfahren gilt für beliebige p ∈ Πk mit p(0) = 1:<br />

� �<br />

� (k)<br />

x − x�A ≤ max<br />

i=1,...,n |p(λi)| � �<br />

� (0)<br />

x − x�A .<br />

Dabei sind λ1, . . .,λn die Eigenwerte von A.<br />

Sind nicht die Eigenwerte von A, sondern nur ihre Lage bekannt, das heißt a, b ∈ R so<br />

dass:<br />

a ≤ λ1, . . .,λn ≤ b , (1.53)<br />

dann kann nur die Aussage<br />

�<br />

� x (k) − x � �A ≤ max<br />

λ∈[a,b] |p(λ)| � � x (0) − x � �A (1.54)<br />

benutzt werden. Es ist also ein p ∈ Πn mit p(0) = 1 zu finden, das<br />

max � |p(λ)| � � λ ∈ [a, b] � minimiert.<br />

Dies ist eine Approximationsaufgabe in der Maximumnorm.<br />

Ihre Lösung lässt sich mittels Tschebyscheff-Polynomen der 1. Art darstellen (siehe<br />

(??) und folgende). Diese werden rekursiv durch<br />

T0(x) := 1 , T1(x) := x , Tk+1(x) := 2xTk(x) − Tk−1(x) für x ∈ R<br />

definiert und haben für |x| ≤ 1 die Darstellung<br />

Tk(x) = cos(k arccos(x)) ,<br />

26


woraus sofort folgt:<br />

|Tk(x)| ≤ 1 für |x| ≤ 1 .<br />

Eine weitere für x ∈ R gültige Darstellung lautet<br />

Tk(x) = 1<br />

2<br />

�� x + � x 2 − 1 �1/2 �k �<br />

+ x − � x 2 − 1 �1/2 �k �<br />

Das optimale Polynom in (1.54) wird dann definiert durch<br />

Daraus folgt:<br />

p(z) := Tk ((b + a − 2z)/(b − a))<br />

Tk ((b + a)/(b − a))<br />

für z ∈ R .<br />

. (1.55)<br />

Satz 1.11 Sei κ die spektrale Konditionszahl von A und es gelte κ > 1, dann:<br />

�<br />

� x (k) − x � �A ≤<br />

Tk<br />

1<br />

� κ+1<br />

κ−1<br />

� � � x (0) − x � �A ≤ 2<br />

� 1/2 κ − 1<br />

κ1/2 �k<br />

��x �<br />

(0)<br />

− x�A . (1.56)<br />

+ 1<br />

Beweis: Man wähle a als kleinsten Eigenwert λmin und b als größten λmax.<br />

Die erste Ungleichung folgt dann sofort aus (1.54) und κ = b/a. Für die zweite Ungleichung<br />

beachte man:<br />

Nach (1.55) gilt wegen (κ + 1)/(κ − 1) = 1 + 2/(κ − 1) =: 1 + 2η ≥ 1:<br />

� �<br />

κ + 1<br />

Tk<br />

≥<br />

κ − 1<br />

1<br />

�<br />

1 + 2η +<br />

2<br />

� (1 + 2η) 2 − 1 �1/2 �k = 1<br />

�<br />

1 + 2η + 2 (η(η + 1))<br />

2<br />

1/2� k<br />

.<br />

Schließlich ist<br />

1 + 2η + 2 (η(η + 1)) 1/2 = � η 1/2 + (η + 1) 1/2�2 = (η + 1) 1/2 + η 1/2<br />

= (1 + 1/η)1/2 + 1<br />

(1 + 1/η) 1/2 − 1 ,<br />

(η + 1) 1/2 − η 1/2<br />

was wegen 1 + 1/η = κ den Beweis beendet. ✷<br />

Für große κ gilt wieder<br />

κ 1/2 − 1<br />

κ 1/2 + 1<br />

2<br />

≈ 1 − .<br />

κ1/2 Gegenüber (1.42) ist also κ zu κ 1/2 verbessert worden.<br />

27


1.6 Exkurs: Grosse dünnbesetzte lineare Gleichungssysteme<br />

aus der Diskretisierung partieller Differentialgleichungen<br />

und die Effizienz von Lösungsverfahren dafür<br />

Um das in Satz 1.11 beschriebene Konvergenzverhalten einschätzen zu können und auch<br />

die Verbesserung gegenüber ?? (Abschnitt 4.4), betrachten wir ein typisches Beispiel<br />

wie es aus der Diskretisierung partieller Differentialgleichungen entsteht. Die einfachste<br />

elliptische Randwertaufgabe, die Poisson–Gleichung (mit Dirichlet-Randbedingungen)<br />

in 2 Raumdimensionen lautet für ein Gebiet Ω ⊂ R 2 und seinen Rand ∂Ω :<br />

−<br />

d�<br />

i=1<br />

∂ 2<br />

∂x 2 i<br />

u = f in Ω , (1.57)<br />

u = g auf ∂Ω . (1.58)<br />

Das Grundgebiet Ω (in der Anwendung also z.B. das betrachtete Werkstück) sei im<br />

Folgenden ein Rechteck: Ω = (0, a) × (0, b).<br />

Bei der Finiten-Differenzen-Methode (FDM) wird ¯ Ω = [0, a] × [0, b] mit Gitterpunkten<br />

(ih, jh), i = 0, . . .,l, j = 0, . . ., m<br />

überzogen und dort die Gleichung (5.1) durch eine lineare Gleichung in den Werten<br />

u(ih, jh) approximiert, indem die Differentialquotienten durch zentrale Differenzenquotienten<br />

ersetzt werden. Randbedingung (5.2) liefert direkt die Werte u(ih, jh) für<br />

(ih, jh) ∈ ∂Ω, so dass diese aus den übrigen Gleichungen eliminiert werden können.<br />

Die für die zentralen Differenzenquotienten in x1 und x2-Richtung herangezogenen Gitterpunkte<br />

zur Approximation von (−∂x1x1u − ∂x2x2u)(ih, jh) bilden also einen<br />

5-Punkte-Stern<br />

(ih, (j + 1)h)<br />

((i − 1)h, jh) (ih, jh) ((i + 1)h, jh)<br />

(ih, (j − 1)h) .<br />

Es entsteht ein lineares Gleichungssystem für n = (l − 1)(m − 1) Werte, die man<br />

als Näherungen für u(ih, jh) ansehen kann. Ordnet man die Gitterpunkte zeilenweise,<br />

dann entsteht ein lineares Gleichungssystem mit der Matrix<br />

28


A = h −2<br />

⎛<br />

T<br />

⎜ −I<br />

⎜<br />

⎝<br />

−I<br />

T<br />

.. .<br />

0<br />

−I<br />

.. .<br />

. ..<br />

.. .<br />

. ..<br />

−I<br />

0<br />

. ..<br />

T<br />

⎞<br />

⎟<br />

−I ⎠<br />

−I T<br />

mit der Einheitsmatrix I ∈ Rl−1,l−1 und<br />

⎛<br />

4<br />

⎜ −1<br />

⎜<br />

T = ⎜<br />

⎝<br />

−1<br />

4<br />

. ..<br />

0<br />

−1<br />

. ..<br />

. ..<br />

. ..<br />

. ..<br />

−1<br />

0<br />

. ..<br />

4<br />

⎞<br />

⎟ ∈ R<br />

⎟<br />

−1 ⎠<br />

−1 4<br />

l−1,l−1 .<br />

(1.59)<br />

Im Folgenden wird der Faktor 1/h 2 weggelassen, da er auf die rechte Seite multipliziert<br />

werden kann und die Matrix weiter mit A bezeichnet. Es muss aber beachtet werden,<br />

dass wegen der dann besseren Approximation an das kontinuierliche Ausgangsproblem<br />

(5.1), (5.2) h klein gewählt werden muss und damit die Dimension n der Matrix groß.<br />

Zur Bewertung von iterativen Lösungsverfahren betrachten wir also den Grenzfall<br />

h → 0<br />

bzw. l = a/h → ∞, m = b/h → ∞<br />

und so n = (l − 1)(m − 1) → ∞ .<br />

Typische Größenordnungen für n sind 10 4 −10 6 . Im Folgenden wird zur Vereinfachung<br />

der Notation der Fall eines Quadrats Ω = (0, a) × (0, a) und so<br />

n = (m − 1) 2<br />

zugrunde gelegt.<br />

Die Matrix A ist symmetrisch und positiv definit, Eigenvektoren und -werte können<br />

exakt bestimmt werden:<br />

mit den Eigenwerten<br />

� z k,l �<br />

ij<br />

= sin ikπ<br />

m<br />

sin jlπ<br />

m ,<br />

�<br />

2 2 − cos kπ<br />

�<br />

lπ<br />

− cos<br />

m m<br />

29<br />

1 ≤ k, l ≤ m − 1<br />

1 ≤ i, j ≤ m − 1 ,<br />

(1.60)


für A, wobei 1 ≤ k, l ≤ m − 1. Dies lässt sich direkt mit Hilfe der trigonometrischen<br />

Identitäten überprüfen.<br />

Also:<br />

k2(A) =<br />

m−1 4(1 − cos m π)<br />

4(1 − cos π<br />

π 1 + cos m =<br />

) 1 − cos m π<br />

m<br />

≈ 4m2<br />

π 2<br />

Für das Jacobi-Verfahren aus Abschnitt 4.4 (Gleichung: (??)) ergibt sich daher<br />

Die Eigenwerte sind<br />

bei gleichen Eigenvektoren und damit<br />

̺(M) = − cos<br />

M = − 1<br />

1<br />

(A − 4I) = I − A .<br />

4 4<br />

1 kπ 1 lπ<br />

cos + cos<br />

2 m 2 m<br />

(m − 1)π<br />

m<br />

= cos π<br />

m<br />

(1.61)<br />

(1.62)<br />

= 1 − π2<br />

2m 2 + O � m −4� . (1.63)<br />

Ist allgemein für ein iteratives Verfahren eine Abschätzung der Kontraktionszahl ̺ ∈<br />

(0, 1) bekannt, d.h. ein ̺ so dass gilt<br />

�<br />

� x (k) − x � � ≤ ̺ k � � x (0) − x � � , (1.64)<br />

dann kann die Anzahl der Iterationsschritte k zur Erreichung eines relativen Fehlerniveaus<br />

ε > 0, d.h. bis zur Gültigkeit von<br />

abgeschätzt werden durch<br />

�<br />

� x (k) − x � � ≤ ε � �x (0) − x � � , (1.65)<br />

k ≥<br />

�<br />

ln 1<br />

� ��<br />

ln<br />

ε<br />

1<br />

�<br />

̺<br />

. (1.66)<br />

Wenn also noch der Aufwand pro Iterationsschritt bekannt ist, kann der Gesamtaufwand<br />

abgeschätzt werden und so auch mit direkten Verfahren verglichen werden. Bei<br />

wachsender Dimension n der Matrix wächst nicht nur der Aufwand pro Iterationsschritt,<br />

sondern i.a. auch die Anzahl der Iterationsschritte, da ̺ von n abhängt.<br />

30


Nur wenn das Verfahren (asymptotisch) optimal ist, indem dies nicht gilt:<br />

̺ = ̺(n) ≤ ̺ < 1 (1.67)<br />

wächst der Aufwand nur mit dem Aufwand eines einzelnen Iterationsschritts. Wie hoch<br />

dieser ist, hängt von der Art der zugrunde liegenden Systemmatrix ab. Das obige Beispiel<br />

((5.1),(5.2)) gehört zu den dünnbesetzten Matrizen in dem Sinn, dass unabhängig<br />

von n die Anzahl der Nichtnulleinträge pro Zeile beschränkt ist (hier durch 5). In diesem<br />

Fall benötigt eine Matrix-Vektoroperation O(n) Operationen, wie allgemein ein Skalarprodukt<br />

oder SAXPY-Berechnung. Wir gehen also im Folgenden davon aus, dass<br />

der Aufwand pro Iterationsschritt für die Verfahren aus Abschnitt 4.4 und die hier<br />

besprochenen CG-Verfahren O(n) ist.<br />

Wegen (1.66) errechnet sich also die Gesamtzahl der nötigen Operationen für das<br />

Jacobi-Verfahren wegen ̺ = ̺(M) zu<br />

ln(1/ε) 1<br />

· O(n) = ln<br />

− ln(̺(M)) ε · O � m 2� · O(n) = ln 1<br />

ε O(n2 ) .<br />

Dabei geht ln(1 + x) = x + O(x 2 ) in die Identifizierung des führenden Terms von<br />

−1/(ln(̺(M)) ein. Ein analoges Ergebnis mit besseren Konstanten gilt für das Gauss–<br />

Seidel-Verfahren.<br />

Im Vergleich dazu benötigt das Eliminations- bzw. das Cholesky-Verfahren<br />

O � Bandbreite 2 · n � = O(n 2 )<br />

Operationen; es besitzt also die gleiche Komplexität. Beide Verfahren sind damit nur<br />

für moderat großes n geeignet.<br />

Ein iteratives Verfahren hat also dann eine bessere Komplexität als das Cholesky-<br />

Verfahren, wenn für seine Kontraktionszahl gilt<br />

̺ = ̺(n) = 1 − O(n −α ) (1.68)<br />

mit α < 1 gilt. Im Idealfall gilt (1.67); dann braucht das Verfahren O(n) Operationen,<br />

was asymptotisch optimal ist.<br />

Für das CG-Verfahren gilt<br />

̺ = 1 −<br />

2<br />

κ(A) 1/2 + 1<br />

≈ 1 −<br />

2<br />

2<br />

πn1/2 + 1<br />

also α = 1<br />

2 in (1.68) ≈ 1 − πn1/2 .<br />

31


Auf der Basis von (1.66) und (1.80) ergibt sich ein Aufwand an Operationen<br />

ln<br />

� �<br />

1<br />

O<br />

ε<br />

� κ 1/2� O(n) = ln<br />

� �<br />

1<br />

O(m)O(n) = ln<br />

ε<br />

� �<br />

1<br />

O(n<br />

ε<br />

3/2 )<br />

Das ist eine deutliche Verbesserung gegenüber des Gauss-Seidel-Verfahrens und ist das<br />

gleiche Verhalten wie beim SOR-Verfahren mit optimalem Relaxationsparameter. Der<br />

Vorteil besteht aber darin, dass beim CG-Verfahren keine Parameter zu bestimmen<br />

sind.<br />

1.7 Vorkonditionierte CG-Verfahren<br />

Wegen Satz 1.11 sollte κ(A) möglichst klein bzw. nur wenig wachsend in n sein, was<br />

für die Diskretisierungsmatrix aus Abschnitt 7.6 nicht gilt.<br />

Die Technik der Vorkonditionierung dient dazu, das Gleichungssystem so zu transformieren,<br />

dass die Konditionszahl der Systemmatrix reduziert wird, ohne dass der<br />

Aufwand der Auswertung des Matrix-Vektor-Produktes (zu sehr) ansteigt.<br />

Bei einer Vorkonditionierung von links wird das Gleichungssystem transformiert zu<br />

C −1 Ax = C −1 b<br />

mit einer Vorkonditionierungsmatrix C, bei Vorkonditionierung von rechts zu<br />

AC −1 y = b ,<br />

so dass sich hier die Lösung von Ax = b als x = C −1 y ergibt. Da die Matrizen im Allgemeinen<br />

dünnbesetzt sind, ist dies immer als Lösung des Gleichungssystems Cx = y zu<br />

interpretieren. Eine einfache Vorkonditionierung dieser Art ist die Zeilenäquilibrierung,<br />

die schon in Abschnitt 2.5 besprochen wurde.<br />

Ist A symmetrisch und positiv definit, dann ist auch für symmetrisches positiv definites<br />

C im Allgemeinen bei beiden Varianten diese Eigenschaft für die transformierte<br />

Matrix verletzt. Wir gehen daher vorläufig aus von einer Zerlegung von C mittels einer<br />

nichtsingulären Matrix W als<br />

C = WW T ,<br />

d.h. von einer Cholesky-Zerlegung (siehe Darstellung ??) von C.<br />

Dann kann Ax = b transformiert werden zu W −1 AW −T W T x = W −1 b, das heißt zu<br />

By = c mit B = W −1 AW −T , c = W −1 b . (1.69)<br />

32


Die Matrix B ist symmetrisch und positiv definit. Die Lösung x ergibt sich dann als<br />

x = W −T y. Diese Vorgehensweise heißt auch gesplittete Vorkonditionierung.<br />

Wegen W −T BW T = C −1 A bzw. WBW −1 = AC −1 haben B, C −1 A und AC −1 die<br />

gleichen Eigenwerte, also insbesondere die gleiche spektrale Konditionszahl κ. Insofern<br />

sollte C möglichst ” nahe“ bei A liegen, um die Konditionszahl zu reduzieren.<br />

Das CG-Verfahren, angewendet auf (1.69) und wieder zurücktransformiert, liefert die<br />

Methode der konjugierten Gradienten mit Vorkonditionierung (Preconditioned CG):<br />

Die Größen des CG-Verfahrens angewendet auf (1.69) werden alle mit ˜ gekennzeichnet,<br />

mit Ausnahme von αk und βk.<br />

Wegen der Rücktransformation<br />

x = W −T ˜x<br />

hat das Verfahren in der Variable x die Suchrichtungen<br />

für die transformierte Iterierte<br />

Der Gradient g (k) von (1.26) in x (k) erfüllt<br />

und somit<br />

d (k) := W −T ˜ d (k)<br />

x (k) := W −T ˜x (k) . (1.70)<br />

g (k) := Ax (k) − b = W � B˜x (k) − c � = W ˜g (k)<br />

g (k+1) = g (k) + αkWB ˜ d (k) = g (k) + αkAd (k) ,<br />

so dass diese Formel gegenüber dem CG-Verfahren unverändert bleibt bei neuer Interpretation<br />

der Suchrichtungen. Diese werden aktualisiert durch<br />

d (k+1) = −W −T W −1 g (k+1) + βkd (k) = −C −1 g (k+1) + βkd (k) ,<br />

also ist zusätzlich in jedem Iterationsschritt das Gleichungssystem Ch (k+1) = g (k+1) zu<br />

lösen.<br />

Schließlich ist<br />

und<br />

˜g (k)T<br />

˜g (k) = g (k)T C −1 g (k) = g (k)T h (k)<br />

˜d (k)T<br />

B ˜ d (k) = d (k)T Ad (k) ,<br />

so dass das folgende Verfahren die in Algorithmus 1.12 aufgeführte Gestalt annimmt.<br />

33


Algorithmus 1.12 (PCG-Verfahren)<br />

x = x0;<br />

g = A * x - b;<br />

h = C \ g;<br />

d = - h;<br />

k = 0;<br />

eps2 = eps * eps;<br />

g_h_alt = transpose(g) * h;<br />

while(transpose(g)*g > eps2 && k


Die Auflösung des zusätzlichen Gleichungssystems sollte bei dünnbesetzten Matrizen<br />

die Komplexität O(n) haben, um die Komplexität für einen Iterationsschritt nicht zu<br />

verschlechtern. Eine Zerlegung C = WW T muss dabei nicht notwendig bekannt sein.<br />

Alternativ kann das PCG-Verfahren auch auf die Beobachtung aufgebaut werden, dass<br />

C −1 A bezüglich des Energieskalarprodukts zu C, 〈·, ·〉C, selbstadjungiert und definit<br />

ist:<br />

〈C −1 Ax, y〉C = � C −1 Ax � T Cy = x T Ay = x T C(C −1 Ay) = 〈x, C −1 Ay〉C<br />

und also auch 〈C −1 Ax, x〉C > 0 für x �= 0.<br />

Wird das CG-Verfahren für (1.69) bezüglich 〈·, ·〉C gewählt, erhält man genau das obige<br />

Verfahren.<br />

�<br />

Soll als Abbruchkriterium der Iteration weiterhin � (k+1) g<br />

”<br />

� � = 0“ benutzt werden, muss<br />

2 �<br />

zusätzlich das Skalarprodukt berechnet werden, alternativ wird bei � (k+1) g<br />

”<br />

T<br />

h (k+1)�� =<br />

0“ der Defekt in der Norm � · �C−1 gemessen.<br />

Aufgrund der Herleitung des vorkonditionierten CG-Verfahrens und der wegen der<br />

Transformation (1.70) geltenden Identität<br />

�<br />

�x (k) − x � � A = � �˜x (k) − ˜x � � B ,<br />

gelten die Approximationsaussagen für das CG-Verfahren auch für das PCG-Verfahren,<br />

wobei die spektrale Konditionszahl κ(A) durch κ(B) = κ(C −1 A) zu ersetzen ist, also:<br />

mit κ = κ(C −1 A).<br />

�<br />

� x (k) − x � �A ≤ 2<br />

� 1/2 κ − 1<br />

κ1/2 �k<br />

��x �<br />

(0)<br />

− x�A + 1<br />

Es besteht eine enge Beziehung zwischen guten Vorkonditionierungsmatrizen C, die<br />

κ(C −1 A) klein halten, und gut konvergenten linear stationären Iterationsverfahren (siehe<br />

Abschnitt ??) mit N = C −1 (und M = I−C −1 A), sofern N symmetrisch und positiv<br />

definit ist. Es gilt nämlich:<br />

κ(C −1 A) ≤ (1 + ̺(M))/(1 − ̺(M)) ,<br />

sofern das durch M und N definierte Verfahren konvergent ist und N für symmetrische<br />

A auch symmetrisch ist.<br />

Von den betrachteten linear stationären Verfahren verbleiben wegen der Symmetrieforderung<br />

35


• das Jacobi-Verfahren:<br />

Dies entspricht wegen C = N −1 = D aus der Zerlegung (??) und der Äquivalenz<br />

des PCG-Verfahrens mit der Vorkonditionierung von links und der Benutzung<br />

von 〈·, ·〉C gerade der Diagonalskalierung, das heißt der Division jeder Gleichung<br />

mit ihrem Diagonalelement.<br />

• das SSOR-Verfahren:<br />

Dies ist eine Variante des SOR-Verfahrens (siehe Abschnitt 4.4), bei der der<br />

SOR-Schritt nach (??) nur der erste Halbschritt der Iteration ist, im zweiten<br />

Halbschritt wird ein SOR-Schritt in der umgekehrten Indizierung n, n − 1, . . .,1<br />

durchgeführt. Das ergibt für M und damit hier als Vorkonditionierungsmatrix.<br />

Nach (??) sind die zwei Halbschritte<br />

und so<br />

dann<br />

Dx (k+1<br />

2 ) = ω � − Lx (k+1<br />

2 ) − Rx (k) + b � + (1 − ω)Dx (k)<br />

Dx (k+1) = ω � − Lx (k+1<br />

2 ) − Rx (k+1) + b � + (1 − ω)Dx (k+1<br />

2 )<br />

M = � D + ωL T� −1 � (1 − ω)D − ωL � (D + ωL) −1 � (1 − ω)D − ωL T� ,<br />

N = ω(2 − ω) � D + ωL T� −1 D (D + ωL) −1 , (1.71)<br />

C = ω −1 (2 − ω) −1 (D + ωL)D −1 (D + ωL T ) .<br />

Somit ist C symmetrisch und positiv definit. Die Auflösung der Hilfsgleichungssysteme<br />

erfordert also nur Vorwärts- und Rückwärtssubstitution bei gleicher Besetzungsstruktur<br />

wie bei der Systemmatrix, so dass auch die Forderung der geringeren Komplexität<br />

erfüllt ist. Aus einer genauen Abschätzung von κ(C −1 A) sieht man (siehe S. 328 ff.,<br />

Axelsson/Barker): Unter gewissen Bedingungen an A, die also Bedingungen an die<br />

Randwertaufgabe und die Diskretisierung widerspiegeln, ergibt sich eine erhebliche<br />

Konditionsverbesserung in Form einer Abschätzung vom Typ<br />

κ(C −1 A) ≤ const(κ(A) 1/2 + 1) .<br />

Die Wahl des Relaxationsparameters ω ist nicht kritisch. Anstatt zu versuchen, diesen<br />

optimal für die Kontraktionszahl des SSOR-Verfahrens zu wählen, kann man eine<br />

Abschätzung für κ(C −1 A) minimieren (siehe S. 337 ff., Axelsson/Barker), was die Wahl<br />

von ω in [1.2, 1.6] nahelegt.<br />

36


Für die 5-Punkte-Stern-Diskretisierung der Poisson-Gleichung auf dem Quadrat ist<br />

nach (1.61) κ(A) = O(m2 ) = O(n) und besagte Bedingungen sind erfüllt (siehe S. 330<br />

ff., Axelsson/Barker). Durch SSOR-Vorkonditionierung verbessert sich dies also zu<br />

κ(C−1A) = O(m) und damit wird die Komplexität des Verfahrens zu<br />

ln<br />

� 1<br />

ε<br />

�<br />

O � κ 1/2� O(n) = ln<br />

� 1<br />

ε<br />

�<br />

O � m 1/2� O(n) = O � n 5/4� . (1.72)<br />

Direkte Eliminationsverfahren scheiden bei Diskretisierungen von Randwertaufgaben<br />

für größere Knotenanzahlen aus. L = (lij) bezeichnet eine untere Dreiecksmatrix mit<br />

lii = 1 für alle i = 1, . . .,n und U = (uij) eine obere Dreiecksmatrix. Die Idee der<br />

unvollständigen LR-Zerlegung oder - auf englisch - ILU-Zerlegung (incomplete LU decomposition)<br />

besteht darin, für die Einträge von L und R nur Plätze eines gewissen<br />

Musters E ∈ {1, . . ., n} 2 zuzulassen, wodurch dann im Allgemeinen nicht mehr A = LR,<br />

sondern nur<br />

A = LR − F<br />

zu fordern ist. Dabei soll die Restmatrix F = (fij) ∈ R n,n folgende Eigenschaften<br />

erfüllen:<br />

fij = 0 für (i, j) ∈ E . (1.73)<br />

Das heißt, die Forderungen<br />

aij =<br />

n�<br />

likrkj für (i, j) ∈ E (1.74)<br />

k=1<br />

stellen |E| Bestimmungsgleichungen für die |E| Einträge der Matrizen L und U. (Man<br />

beachte dabei lii = 1 für alle i.) Die Existenz solcher Zerlegungen wird später diskutiert.<br />

Analog zum engen Zusammenhang der Existenz der LR-Zerlegung und einer LDL T -<br />

bzw. LL T -Zerlegung für symmetrische bzw. symmetrisch positiv definite Matrizen kann<br />

für solche Matrizen etwa der Begriff der IC-Zerlegung (incomplete Cholesky decomposition)<br />

eingeführt werden, bei der eine Darstellung<br />

gefordert wird.<br />

A = LL T − F<br />

Auf eine ILU-Zerlegung aufbauend, wird ein linear stationäres Verfahren durch N =<br />

(LR) −1 (und M = I − NA) definiert, die ILU-Iteration. Es handelt sich also um eine<br />

Erweiterung des alten Verfahrens der Nachiteration.<br />

Benutzt man C = N −1 = LR zur Vorkonditionierung, hängt die Komplexität der<br />

Hilfsgleichungssysteme von der Wahl des Besetzungsmusters E ab. Im Allgemeinen<br />

37


wird gefordert:<br />

E ′ := � (i, j) � � aij �= 0 , i, j = 1, . . ., n � ⊂ E , � (i, i) � � i = 1, . . .,n � ⊂ E , (1.75)<br />

wobei die Gleichheitsforderung E ′ = E der am häufigsten benutzte Fall ist. Dann bzw.<br />

bei festen Erweiterungen von E ′ ist gewährleistet, dass bei einer Sequenz von Gleichungssystemen,<br />

bei denen A dünnbesetzt im engeren Sinn ist, dies auch auf L und R<br />

zutrifft und insgesamt wie bei der SSOR-Vorkonditionierung für die Hilfsgleichungssysteme<br />

inklusive der Bestimmung von L und R jeweils nur O(n) Operationen nötig sind.<br />

Andererseits sollte die Restmatrix F möglich ” klein“ sein, um eine gute Konvergenz der<br />

ILU-Iteration bzw. Kleinheit der spektralen Konditionszahl κ(C −1 A) sicherzustellen.<br />

Mögliche Besetzungsmuster E sind zum Beispiel in [S. 275 ff., Saad] dargestellt. Dort<br />

wird auch eine spezifischere Struktur von L und U diskutiert, wenn die Matrix A aus<br />

der Diskretisierung mit einem Finite-Differenzen-Verfahren herrührt.<br />

Es bleibt die Frage der Existenz (und Stabilität) einer ILU-Zerlegung zu diskutieren.<br />

Es ist bekannt, dass auch für die Existenz einer LU-Zerlegung Bedingungen zu<br />

erfüllen sind, wie etwa die M-Matrix-Eigenschaft. Dies ist auch ausreichend für eine<br />

ILU-Zerlegung.<br />

Satz 1.13 Sei A ∈ R n,n eine M-Matrix, dann existiert zu einem vorgegebenen Muster<br />

E, das (1.75) erfüllt, eine ILU-Zerlegung. Die dadurch definierte Aufspaltung von A in<br />

A = LR − F ist regulär in folgendem Sinn:<br />

� (LR) −1 �<br />

ij ≥ 0 , (F)ij ≥ 0 für alle i, j = 1, . . .,n .<br />

Beweis: Siehe [S. 225, Hackbusch:Iterative]. ✷<br />

Eine ILU- (bzw. IC-) Zerlegung kann dadurch bestimmt werden, dass die Gleichungen<br />

(1.73) als Bestimmungsgleichungen für lij und rij in der richtigen Reihenfolge durchgegangen<br />

werden. Stattdessen kann aber auch das Eliminations- bzw. Cholesky-Verfahren<br />

in seiner Grundform auf dem Muster E durchgeführt werden.<br />

Eine Verbesserung der Eigenwertverteilung von C −1 A ist manchmal möglich, wenn<br />

statt einer IC- eine MIC-Zerlegung (modified incomplete Cholesky decomposition) zugrunde<br />

gelegt wird. Hier werden im Gegensatz zu (1.74), die im Eliminationsverfahren<br />

anfallenden Modifikationsschritte für Positionen außerhalb des Musters nicht ignoriert,<br />

sondern am jeweiligen Diagonalelement durchgeführt.<br />

Was die Reduktion der Konditionszahl durch ILU- (IC-) Vorkonditionierung betrifft,<br />

so gilt für das Modellproblem Analoges wie für die SSOR-Vorkonditionierung. Insbesondere<br />

gilt auch (1.72).<br />

38


Das Hilfsgleichungssystem mit C = N −1 , das heißt<br />

h (k+1) = Ng (k+1)<br />

kann auch interpretiert werden als ein Iterationsschritt des durch N definierten Iterationsverfahrens<br />

mit Startiterierter z (0) = 0 und rechter Seite g (k+1) . Eine Erweiterung<br />

der besprochenen Möglichkeiten zur Vorkonditionierung besteht daher darin, anstelle<br />

von einem eine feste Anzahl von Iterationsschritten durchzuführen.<br />

1.8 Krylov-Unterraum-Methoden für nichtsymmetrische<br />

Gleichungssysteme<br />

Mit den verschiedenen Varianten der PCG-Verfahren stehen Verfahren zur Verfügung,<br />

die für die bei der Diskretisierung von Randwertaufgaben entstehenden Gleichungssysteme<br />

die Zielvorstellungen hinsichtlich ihrer Komplexität recht gut erfüllen. Voraussetzung<br />

ist allerdings, dass die Systemmatrix symmetrisch und positiv definit ist,<br />

was die Anwendbarkeit etwa bei Finite-Differenzen-Diskretisierungen auf rein diffusive<br />

Prozesse ohne konvektiven Transportmechanismus einschränkt. Ausnahmen bilden<br />

hier nur bei zeitabhängigen Problemen (semi-)explizite Zeitdiskretisierungen und das<br />

Lagrange–Galerkin-Verfahren (siehe Numerik partieller Differentialgleichungen). Diesem<br />

kommt auch aufgrund dessen eine besondere Bedeutung zu. Ansonsten sind die<br />

entstehenden Gleichungssysteme immer nichtsymmetrisch und positiv reell, das heißt,<br />

es gilt für die Systemmatrix A:<br />

A + A T<br />

ist positiv definit.<br />

Es ist also wünschenswert, die (P)CG-Verfahren auf solche Matrizen zu verallgemeinern.<br />

Diese sind durch zwei Eigenschaften ausgezeichnet:<br />

• Die Iterierte x (k) minimiert f(·) = �·−x�A auf x (0) �<br />

(0) +Kk A; g � , wobei x = A−1b. • Die Basisvektoren d (i) �<br />

(0) , i = 0, . . ., k − 1, von Kk A; g � müssen nicht von vornherein<br />

bestimmt (und gespeichert) werden, sondern werden über eine Drei-Term-<br />

Rekursion (1.45) während der Iteration bestimmt und eine analoge Beziehung gilt<br />

per definitionem für x (k) (siehe (1.30)).<br />

Die erste Eigenschaft kann im Folgenden beibehalten werden, wobei die Norm<br />

der Fehler- oder auch Defektminimierung von Verfahren zu Verfahren variiert, die<br />

zweite Eigenschaft geht partiell verloren, indem im Allgemeinen alle Basisvektoren<br />

39


d (0) , . . .,d (k−1) zur Bestimmung von x (k) nötig sind. Dies bringt mit großem k Speicherplatzprobleme<br />

mit sich. Analog zu den CG-Verfahren werden Vorkonditionierungen<br />

notwendig sein für ein akzeptables Verhalten der Verfahren. Es ergeben sich die<br />

gleichen Anforderungen an die Vorkonditionierungsmatrizen mit Ausnahme der Forderung<br />

nach Symmetrie und Positivdefinitheit. Alle drei Vorkonditionierungsansätze sind<br />

prinzipiell möglich. Im Folgenden wird daher Vorkonditionierung nicht mehr explizit<br />

angesprochen und auf Abschn. 1.7 verwiesen.<br />

Der einfachste Zugang besteht in der Anwendung des CG-Verfahrens auf ein zu Ax = b<br />

äquivalentes Gleichungssystem mit symmetrisch positiv definiter Matrix. Dies gilt für<br />

die Normalgleichungen<br />

A T Ax = A T b . (1.76)<br />

Dieser Zugang heißt auch CGNR (Conjugate Gradient Normal Residual), da hier die<br />

�<br />

T (0) A A; g � mit g (0) =<br />

Iterierte x (k) die euklidische Norm des Defekts auf x (0) + Kk<br />

A T� Ax (0) − b � minimiert. Dies folgt aus der Gleichung<br />

�y − x� 2<br />

A T A = (Ay − b)T (Ay − b) = �Ay − b� 2 2<br />

für beliebiges y ∈ R n und die Lösung x = A −1 b.<br />

(1.77)<br />

Hier bleiben alle Vorteile des CG-Verfahren erhalten, doch ist in (1.30) und (1.35) und<br />

Ad (k) durch A T Ad (k) zu ersetzen. Abgesehen von der Verdopplung der Operationen<br />

kann dies nachteilig sein, wenn κ2(A) groß ist, da κ2(A T A) = κ2(A) 2 dann zu Stabilitäts-<br />

und Konvergenzproblemen führen kann. Für das in Abschnitt 7.6 angesprochene<br />

Beispiel (und allgemein für Diskretisierungsmatrizen elliptischer Randwertaufgaben)<br />

ist wegen<br />

κ2(A 2 ) ≈ 16<br />

π 4n2<br />

dieses Problem für große Anzahlen von Freiheitsgraden zu erwarten.<br />

Außerdem ist bei listenorientierter Speicherung immer eine der Operationen Ay oder<br />

A T y sehr suchaufwendig. Es kann sogar sein, dass die Matrix A gar nicht explizit<br />

vorliegt, sondern nur die Abbildungsvorschrift y ↦→ Ay auswertbar ist, was dann dieses<br />

Verfahren völlig ausschließt. Gleiche Bedenken gelten, wenn statt (1.76)<br />

AA T ˜x = b (1.78)<br />

mit der Lösung ˜x = A −T x zugrunde gelegt wird. In diesem Fall minimiert x (k) :=<br />

AT ˜x (k) , wobei ˜x (k) die k-te Iterierte des CG-Verfahrens angewendet auf (1.78) bezeichnet,<br />

den Fehler in der euklidischen Norm auf x0 + AT� �<br />

T (0)<br />

Kk AA ; g �� , da<br />

�˜y − ˜x� 2<br />

AA T = � A T ˜y − x � T � A T ˜y − x � = � �A T ˜y − x � � 2<br />

2<br />

40


für beliebiges ˜y ∈ R m und g (0) = Ax (0) − b gilt. Dies erklärt die Bezeichnung CGNE<br />

(mit E von Error).<br />

Bei der Frage, ob ein Verfahren den Fehler oder den Defekt minimiert, ist offensichtlich<br />

auch die zugrunde gelegte Norm zu beachten. Für ein symmetrisch positiv definites<br />

B ∈ R n,n gilt nämlich für y ∈ R n und x = A −1 b:<br />

�Ay − b�B = �y − x� A T BA .<br />

Für B = A −T (für symmetrisch positiv definites A) erhalten wir die Situation des<br />

CG-Verfahrens:<br />

�Ay − b� A −T = �y − x�A .<br />

Für B = I findet sich (1.77) wieder:<br />

�Ay − b�2 = �y − x� A T A .<br />

Dieses Funktional auf x (0) �<br />

(0) +Kk A; g � �<br />

T (0) (nicht Kk A A; g � ) zu minimieren, führt auf<br />

das Verfahren GMRES (Generalized Minimum RESidual).<br />

Algorithmisch beruht dieses (und andere) Verfahren darauf, dass aufeinander aufbau-<br />

�<br />

(0) end Orthonormalbasen von Kk A; g � gebildet werden durch den Arnoldi-Prozess,<br />

der Generieren der Basis nach (1.45) und Orthonormalisieren nach dem Schmidt’schen<br />

Orthonormalisierungsverfahren miteinander verbindet (siehe Algorithmus 1.14).<br />

Algorithmus 1.14 (Arnoldi-Verfahren)<br />

v(:,1) = g0 / sqrt(transpose(g0) * g0);<br />

for j=1:k<br />

for i=1:j<br />

h(i,j) = transpose(v(:,i))*A*v(:,j);<br />

end<br />

w = A * v(:,j)<br />

for i = 1:j<br />

w = w - h(i,j) * v(:,i)<br />

end<br />

h(j+1,j) = sqrt(transpose(w) * w);<br />

if(h(j+1,j) == 0.)<br />

return<br />

else<br />

v(:,j+1) = w / h(j+1,j);<br />

end<br />

end<br />

41


g (0) ∈ R n , g (0) �= 0 sei gegeben. Setze<br />

Für j = 1, . . .,k berechne<br />

v1 := g (0) / �g (0) �2 .<br />

hij := v T i Avj für i = 1, . . ., j ,<br />

wj := Avj −<br />

hj+1,j := �wj�2 .<br />

j�<br />

i=1<br />

Falls hj+1,j = 0, Abbruch, sonst setze<br />

vj+1 := wj/hj+1,j .<br />

hijvi ,<br />

Das Arnoldi-Verfahren sei bis zum Index k durchführbar, dann setze man:<br />

hij := 0 für j = 1, . . ., k , i = j + 2, . . .,k + 1 ,<br />

Hk := (hij) ij ∈ R k,k ,<br />

¯Hk := (hij) ij ∈ R k+1,k ,<br />

Vk+1 := (v1, . . .,vk+1) ∈ R n,k+1 .<br />

Die Grundlage für das GMRES-Verfahren bildet:<br />

Satz 1.15 Das Arnoldi-Verfahren sei bis zum Index k durchführbar, dann gilt:<br />

1) v1, . . .,vk+1 bilden eine Orthonormalbasis von Kk+1(A; g (0) ).<br />

2)<br />

wobei ek = (0, . . ., 0, 1) T ∈ R k ,<br />

3) Die Aufgabe<br />

AVk = VkHk + wke T k = Vk+1 ¯ Hk , (1.79)<br />

V T<br />

k AVk = Hk . (1.80)<br />

Minimiere �Ay − b�2 für y ∈ x (0) + Kk(A; g (0) )<br />

mit dem Minimum x (k) ist äquivalent mit<br />

Minimiere<br />

� �<br />

�Hkξ ¯ − βe1<br />

�<br />

2 für ξ ∈ R k<br />

mit dem Minimum ξ (k) , wobei β := − � � g (0) � � 2 , und es gilt<br />

x (k) = x (0) + Vkξ (k) .<br />

42<br />

(1.81)


Bricht das Arnoldi-Verfahren beim Index k ab, dann gilt:<br />

x (k) = x = A −1 b .<br />

Beweis: Zu 1): Die v1, . . .,vk+1 sind nach Konstruktion orthonormal, so dass nur<br />

�<br />

(0) A; g � für i = 1, . . ., k + 1 gezeigt werden muss. Dies wiederum folgt aus<br />

vi ∈ Kk+1<br />

der Darstellung<br />

vi = qi−1(A)v1 mit Polynomen qi−1 ∈ Πi−1 .<br />

In dieser Form wird die Aussage durch Induktion über k gezeigt. Für k = 0 ist sie<br />

trivial, sie sei also für k − 1 gültig. Ihre Gültigkeit für k folgt dann aus<br />

k�<br />

�<br />

k�<br />

�<br />

hk+1,kvk+1 = Avk − hikvi = Aqk−1(A) − hikqi−1(A) v1 .<br />

i=1<br />

Zu 2): Die Beziehung (1.80) folgt aus (1.79) durch Multiplikation mit V T<br />

k<br />

und V T<br />

k wk = hk+1,kV T<br />

k vk+1 = 0 wegen der Orthonormalität der vi.<br />

Die Beziehung in (1.79) ist die Matrix-Schreibweise von<br />

Avj =<br />

j�<br />

i=1<br />

hijvi + wj =<br />

i=1<br />

j+1 �<br />

hijvi für j = 1, . . .,k .<br />

Zu 3): Der Raum x (0) �<br />

(0) + Kk A; g � hat wegen 1) die Parametrisierung<br />

i=1<br />

, da V T<br />

k Vk = I<br />

y = x (0) + Vkξ mit ξ ∈ R k . (1.82)<br />

Die Behauptung ergibt sich aus der mittels 2) folgenden Identität<br />

Ay − b = A � x (0) + Vkξ � − b = AVkξ + g (0)<br />

= Vk+1 ¯ � �<br />

Hkξ − βv1 = Vk+1<br />

¯Hkξ − βe1 ,<br />

weil wegen der Orthogonalität von Vk+1 gilt:<br />

�Ay − b�2 = � �Vk+1( ¯ Hkξ − βe1) � � = 2 � �<br />

�Hkξ ¯ − βe1<br />

� . 2<br />

Die letzte Behauptung kann man schließlich folgendermaßen einsehen: Bricht das<br />

Arnoldi-Verfahren beim Index k ab, so wird die Beziehung 2) zu<br />

AVk = VkHk ,<br />

43


zw.<br />

AVk = Vk+1 ¯ Hk<br />

gilt weiterhin, wenn vk+1 beliebig gewählt wird (da hk+1,k = 0). Da A nichtsingulär ist,<br />

muss dies auch für Hk gelten. Also ist die Wahl<br />

möglich, für die gilt<br />

ξ := H −1<br />

k (βe1)<br />

� �<br />

�Hkξ ¯ − βe1<br />

� = �Hkξ − βe1� 2 2 = 0 .<br />

Das nach (1.82) zugehörige y ∈ R n erfüllt also y = x (k) = x. ✷<br />

Ein Problem des Arnoldi-Verfahrens besteht darin, dass durch Rundungsfehlereffekte<br />

die Orthogonalität der vi leicht verloren geht. Ersetzt man in Algorithmus 1.14 die<br />

Zuweisung<br />

j�<br />

wj := Avj −<br />

i=1<br />

hijvi<br />

durch die den gleichen Vektor definierenden Operationen<br />

wj := Avj<br />

Für i = 1, . . .,j berechne<br />

hij := w T j vi<br />

wj := wj − hijvi ,<br />

so erhält man das modifizierte Arnoldi-Verfahren, worauf das GMRES-Verfahren in<br />

seiner Grundform zusammen mit (1.81) aufbaut. Alternativ kann die Schmidt’sche Orthonormalisierung<br />

durch das Householder-Verfahren ersetzt werden. Bei exakter Arithmetik<br />

kann das GMRES-Verfahren nur nach Bestimmung der exakten Lösung abbrechen<br />

(mit hk+1,k = 0). Dies ist bei alternativen Verfahren der gleichen Klasse nicht<br />

immer der Fall. Für wachsenden Iterationsindex k können für große Problemdimension<br />

n schnell Speicherplatzprobleme durch die Basisvektoren v1, . . .,vk entstehen. Ein<br />

Ausweg besteht darin, nur eine feste Anzahl l von Iterationen durchzuführen und dann<br />

gegebenenfalls das Verfahren mit x (0) := x (l) und g (0) := Ax (0) − b neu zu starten,<br />

bis schließlich das Konvergenzkriterium erfüllt ist (GMRES-Verfahren mit Restart). Es<br />

gibt auch die abgeschnittene Version des GMRES-Verfahrens, in der die jeweils letzten l<br />

Basisvektoren berücksichtigt werden. Die Minimierung des Fehlers in der Energienorm<br />

(auf dem Vektorraum K) wie beim CG-Verfahren ist nur für symmetrisch positiv definite<br />

Matrizen A sinnvoll. Die dieses Minimum charakterisierende Variationsgleichung<br />

(Ay − b) T z = 0 für alle z ∈ K<br />

44


kann aber allgemein als definierende Bedingung für y gestellt werden. Darauf bauen<br />

weitere Varianten von Krylov-Unterraum-Methoden auf. Eine weitere große Klasse solcher<br />

Verfahren beruht auf der Lanczos-Biorthogonalisierung, bei der neben einer Basis<br />

v1, . . ., vk von Kk(A; v1) eine Basis w1, . . .,wk von Kk(A T ; w1) aufgebaut wird, so dass<br />

v T j wi = δij für i, j = 1, . . ., k .<br />

Der bekannteste Vertreter ist das BICGSTAB-Verfahren. Für eine weitere Erörterung<br />

dieses Themas sei zum Beispiel auf [Saad] verwiesen.<br />

1.9 Verfahren der konjugierten Gradienten für nichtquadratische<br />

Optimierung<br />

Die in den vorigen Abschnitten für quadratische Minimierungsaufgaben entwickelten<br />

Verfahren lassen sich auch auf die Minimierung allgemeiner Funktionale übertragen,<br />

d.h. auf (1.1). Die eindimensionale Minimierung in (1.29) kann dann nicht mehr exakt<br />

durchgeführt werden. Das Graduiertenverfahren nimmt dann folgende Form an:<br />

Algorithmus 1.16 (Gradientenverfahren; allgemeines Funktional)<br />

g = - grad F(x);<br />

d = - g;<br />

while g ~= 0<br />

"Minimiere approximativ F(x + t d) in t";<br />

x = x + t*d;<br />

g = grad F(x);<br />

r = - g;<br />

end<br />

Wähle x 0 ∈ R n beliebig und berechne<br />

g (0) = ∇F(x (0) )<br />

d (0) = −g (0)<br />

Für k = 0, . . .<br />

Minimiere approximativ F � x (k) + αd (k)� und setze<br />

x (k+1) = x (k) + αd (k)<br />

g (k+1) = ∇F(x (k+1) )<br />

d (k+1) = −g (k+1)<br />

45


is das Abbruchkriterium ” �g (k) �2 = 0“ erfüllt ist.<br />

Das Verfahren wird also abgebrochen, wenn die Iterierte x (exakt) ein kritischer Punkt<br />

ist. Da (mindestens wegen Rundungsfehlern) dies nie zu erwarten ist, ist das Kriterium<br />

g �= 0 durch �g� ≥ ε mit einer geeigneten Norm �·� und Steuergröße ε > 0 zu ersetzen.<br />

Nach (??) empfiehlt sich ε = ˜ε�g (0) � mit dem Defekt der Startiterierten g (0) .<br />

Das Verfahren kann also aufgefasst werden als ein speziell gedämpftes vereinfachtes<br />

Newton Verfahren, bei dem die Hesse-Matrix durch die Identität ersetzt wurde.<br />

Für “Minimiere ...” ist also ein eventuell iteratives Verfahren einzusetzen, wie sie in<br />

Abschnitt 7.1 besprochen worden sind; zur Durchführung des Algorithmus muss man<br />

F und ∇F auswerten können. Statt einer eindimensionalen Minimierung begnügt man<br />

sich oft mit einem Abstieg. -∇ F(x (i) ) ist Abstiegsrichtung, d.h. für t (i) klein genug gilt<br />

F(x (i+1) ) < F(x (i) ) .<br />

Genauer fordert man für eine Suchrichtung d (i) einen Abstieg der Art<br />

F(x (i+1) ) < F(x (i) ) − 1<br />

2 t(i) ∇F(x (i) ) T d (i) .<br />

Dies kann man für F ∈ C 2 dadurch erreichen, dass man mit einem ˜t (i) startet und<br />

solange halbiert, bis die obige Bedingung erfüllt ist. Diese Überlegung gilt für allgemeine<br />

Suchrichtungen d (i) , solange sie mit −∇F(x (i) ) T einen spitzen Winkel bilden:<br />

−∇F(x (i) ) T d (i) > 0 .<br />

Für ein allgemeines Funktional F hat das CG-Verfahren die Gestalt<br />

Algorithmus 1.17 (CG-Verfahren nach Fletcher/Reeves; allgemeines Funktional)<br />

g = grad F(x);<br />

d = - g;<br />

noq_g_alt := g*g;<br />

while g ~= 0<br />

"Minimiere approximativ F(x + t d) in t";<br />

x = x + t*d;<br />

g = grad F(x);<br />

noq_g_neu = g*g;<br />

beta = noq_g_neu/noq_g_alt;<br />

46


end<br />

noq_g_alt = noq_g_neu;<br />

d = g + beta * d;<br />

Wähle x 0 ∈ R n beliebig und berechne<br />

g (0) = ∇F(x (0) )<br />

d (0) = −g (0)<br />

Für k = 0, . . .<br />

Minimiere approximativ F � x (k) + αd (k)� und setze<br />

x (k+1) = x (k) + αd (k)<br />

g (k+1) = ∇F(x (k+1) )<br />

βk = g(k+1)T g (k+1)<br />

gkT gk r (k+1) = g (k+1) + βkd (k)<br />

bis das Abbruchkriterium ” �g (k) �2 = 0“ erfüllt ist.<br />

Eine weitere Variante (nach Polak/Ribière) ergibt sich, wenn die Gleichung für βk durch<br />

die folgende im quadratischen Fall äquivalente Form benutzt:<br />

βk =<br />

� g (k+1) − g (k) � T g (k+1)<br />

g (k)T g (k)<br />

47<br />

. (1.83)


2 Beispiele Gewöhnlicher Differentialgleichungen<br />

(GDG)<br />

2.1 Beispiele von Anfangswertaufgaben (AWA) für GDG<br />

Beispiel I: Populationsmodelle<br />

p = p(t) sei die Population einer Spezies zur “Zeit” t ,<br />

wobei t ∈ [t0, T]<br />

oder t ∈ [t0, ∞)<br />

oder t ∈ R.<br />

Bezeichnet man mit ˙p(t) := dp/dt die Ableitung von p, so beschreibt der Quotient<br />

˙p(t)/p(t) die Gesamt-(=Netto-) Wachstumsrate bzgl. der (Gesamt-)Population zur Zeit<br />

t.<br />

Annahme:<br />

˙p(t)/p(t) = r(t, p(t)) . (2.1)<br />

Weitere Annahme: Geschlossenes System, d.h. keine Wanderung<br />

(sonst zusätzlich Ortsabhängigkeit ⇒ partielle DG).<br />

wo g(t, p): Geburtsrate<br />

s(t, p): Sterberate.<br />

Aus (2.1) folgt<br />

r(t, p) = g(t, p) − s(t, p) ,<br />

˙p = r(t, p)p . (2.2)<br />

Anfangswertaufgabe (AWA):<br />

Gesucht p : I → R, I = (t0, T), T ≤ ∞, so dass (2.2) auf (t0, T) gilt, also<br />

und p(t0) = p0<br />

˙p(t) = r(t, p(t))p(t) für alle t ∈ (t0, T)<br />

(2.3)<br />

(d.h. p ist auf I stetig, und wenn die rechte Seite (hier r(t, p)p) in t und p stetig ist,<br />

also t ↦→ r(t, p(t))p(t) stetig ist auf I, ist p stetig differenzierbar auf I und (2.2) gilt<br />

auch auf I).<br />

Unterscheidung: r(t, p) : Variablen t ∈ I, p ∈ R,<br />

r(t, p(t)) : Variable t ∈ I.<br />

48


Beispiele für r:<br />

a) Konstante Wachstumsrate:<br />

r(t, p) = α für alle (t, p) ∈ R × R . (2.4)<br />

Mit Trennung der Variablen erhält man die Lösung<br />

p(t) = p0e α(t−t0)<br />

(d.h. eine eindeutige, auf R existente Lösung der AWA).<br />

Qualitatives Verhalten:<br />

für alle t ∈ R (2.5)<br />

α > 0 : p(t) → ∞ für t → ∞ (unbegrenztes Wachstum)<br />

α < 0 : p(t) → 0 für t → ∞ (Auslöschung)<br />

b) Die logistische Gleichung<br />

Annahme: Es existiert “Grenzpopulation” ξ, so dass<br />

r(t, p) ≤ 0 für p ≥ ξ .<br />

Einfachstes Beispiel: r(t, p) = β(ξ − p), wobei β, ξ > 0.<br />

Es folgt<br />

˙p = αp − βp 2 = (α − βp)p := f(p) , α := βξ . (2.6)<br />

Trennung der Variablen:<br />

Falls p0 �= 0 und p0 �= ξ = α/β (d.h. p0 erfüllt nicht f(p0) = 0), dann ist<br />

p(t) =<br />

die eindeutige Lösung der AWA (2.3).<br />

αp0<br />

βp0 + (α − βp0)e −α(t−t0) für alle t ∈ R (2.7)<br />

Für p0 = 0 :<br />

für p0 = ξ :<br />

p(t) := 0<br />

p(t) := ξ<br />

für alle t ∈ R,<br />

für alle t ∈ R<br />

sind Lösungen der AWA (2.3)<br />

(Eindeutigkeit folgt mit Picard–Lindelöf): 0 und ξ sind stationäre Punkte.<br />

Qualitatives Verhalten:<br />

p(t) ր ξ für t → ∞, falls 0 < p0 < ξ ,<br />

p(t) ց ξ für t → ∞, falls p0 > ξ .<br />

Wegen ¨p = ( ˙p) · = (α − 2βp)(α − βp)p gilt:<br />

¨p > 0 , falls p ∈ (0, ξ/2) ∪ (ξ, ∞) (beide Faktoren > 0 oder < 0) ,<br />

¨p < 0 , falls ξ/2 < p < ξ .<br />

49


Graphen der Lösung von (2.6) für verschiedene Anfangswerte<br />

Der Term −βp 2 ist (sozialer) Reibungsterm.<br />

p = p(t) im “Phasenraum” p :<br />

p ∈ R ↦→ f(p): Richtungsfeld von p ′ = f(p).<br />

Insbesondere AWA ist autonom (d.h. f von t unabhängig).<br />

0 ist abstoßender, ξ anziehender stationärer Punkt.<br />

Beispiel II: Räuber–Beute–Modelle<br />

x = x(t): Population einer “Beute” zur Zeit t<br />

y = y(t): Population eines “Räubers” zur Zeit t<br />

Annahme: Die Wachstumsraten ˙x/x, ˙y/y sind Funktionen von t, x, y, d.h.<br />

˙x = r1(t, x, y)x ,<br />

˙y = r2(t, x, y)y .<br />

AWA: (2.8) auf (t0, a) und x(t0) = x0, y(t0) = y0.<br />

a) konstantes Wachstum (Volterra–Lotka–Gleichungen)<br />

(2.8)<br />

r1(t, x, y) = α − βy , α, β > 0 . (2.9)<br />

Konstante Wachstumsrate α (für y = 0 wie (2.4) mit α > 0),<br />

Reduktionsrate proportional zu Räuberpopulation: −βy.<br />

r2(t, x, y) = −γ + δx , γ, δ > 0 . (2.10)<br />

Konstante Reduktionsrate γ (für x = 0 wie (2.4) mit α < 0),<br />

Wachstumsrate proportional zu Beutepopulation: δx.<br />

50


Mit<br />

erhalten wir<br />

p = p(t) :=<br />

� x(t)<br />

y(t)<br />

˙p = f(p) , wo f(x, y) =<br />

�<br />

∈ R 2<br />

� (α − βy)x<br />

(δx − γ)y<br />

Dieses System (1.Ordnung) besitzt keine geschlossene Lösung.<br />

Stationäre Punkte (d.h. f(p) = 0) sind:<br />

p0 = (0, 0) und p1 = (γ/δ, α/β) .<br />

�<br />

. (2.11)<br />

Man erhält das folgende Richtungsfeld (nur x0 ≥ 0, y0 ≥ 0 von Interesse)<br />

Richtungsfeld für (2.8)<br />

Phasenportrait für (2.8): periodische Lösungen<br />

51


◦ bezeichnet stationäre Punkte.<br />

b) logistisches Wachstum<br />

(2.9) & (2.10) + sozialer Reibungsterm:<br />

−λx 2 in (2.9), −µy 2 in (2.10), λ, µ > 0, liefert<br />

⇒<br />

f(p) =<br />

� (α − βy − λx)x<br />

(δx − γ − µy)y<br />

˙x = 0 auf Gerade L : α − βy − λx = 0 oder bei x = 0,<br />

˙y = 0 auf Gerade M : δx − γ − µy = 0 oder bei y = 0.<br />

(nur x0 ≥ 0, y0 ≥ 0 von Interesse).<br />

stationäre Punkte:<br />

(0, 0), (0, y), y = −γ/µ, (x, 0), x = α/λ<br />

(x, y), (x, y) Schnittpunkt von L und M<br />

1. Fall: L und M schneiden sich nicht in R 2 +<br />

�<br />

. (2.12)<br />

Richtungsfeld für (2.12), wenn sich L und M nicht in R 2 + schneiden<br />

Räuber stirbt immer aus.<br />

52


2. Fall: L und M schneiden sich in R 2 +<br />

Möglichkeiten:<br />

Richtungsfeld für (2.12), wenn sich L und M in R 2 + schneiden<br />

(i) z global attraktiver stationärer Punkt<br />

(ii) Existenz Grenzzyklus<br />

Global attraktiver stationärer Punkt<br />

Grenzzyklus<br />

53


2.2 Elemente der Analysis von AWA für GDG<br />

Allgemein:<br />

Definition: (AWA für System 1. Ordnung)<br />

Sei f : [t0, T) × R m → R m (stetig) gegeben, y0 ∈ R m .<br />

Gesucht ist y : [t0, T) → R m , (stetig) differenzierbar mit<br />

˙y(t) = f(t, y(t)) für alle t ∈ (t0, T) ,<br />

y(t0) = y0 .<br />

(2.13)<br />

Ist f nur auf [t0, T) × M mit M ⊂ R m definiert, ist für eine Lösung auch y(t) ∈ M für<br />

alle t ∈ [t0, T) sicherzustellen.<br />

(2.13) heißt autonom, wenn f(t, y) = f(y) (dies gilt für alle Beispiele oben).<br />

Ein nichtautonomes System mit y = (y1, . . .,ym):<br />

˙y = f(t, y) ,<br />

y(t0) = y0<br />

wird zu einem autonomen System mit y = (y1, . . .,ym, ym+1) der Gestalt<br />

˙yi = f(ym+1, y) , i = 1, . . .,m ,<br />

˙ym+1 = 1 ,<br />

yi(t0) = y0i , i = 1, . . .,m ,<br />

ym+1(t0) = t0 .<br />

Eine AWA für eine skalare GDG n-ter Ordnung<br />

wobei hier<br />

y (n) = f(t, y (0) , y (1) , y (2) , . . .,y (n−1) ) ,<br />

y (0) := y , y (1) := dy<br />

dt ,<br />

y (2) := d2y dt2 , y(k) := dky ,<br />

dtk läßt sich auf ein System von n GDG 1. Ordnung reduzieren durch:<br />

⇒<br />

pi(t) := y (i−1) (t) , i = 1, . . .,n .<br />

p ′ 1 (t) = y′ (t) = p2(t)<br />

p ′ i = pi+1 , i = 1, . . .,n − 1<br />

p ′ n = y(n) = f(t, p1, p2, . . .,pn) ,<br />

54<br />

(2.14)


also<br />

⎛<br />

p2<br />

⎞<br />

p ′ = ˜ ⎜<br />

⎟<br />

⎜<br />

f(t, p) :=<br />

. ⎟<br />

⎜<br />

⎟<br />

⎝ pn ⎠<br />

f(t, p1, . . .,pn)<br />

.<br />

Dazu sind die folgenden Anfangswerte nötig:<br />

⎛<br />

⎜<br />

p0 = p(t0) = ⎜<br />

⎝<br />

y(t0)<br />

y ′ (t0)<br />

.<br />

y (n−1) (t0)<br />

⎞<br />

⎟<br />

⎠ .<br />

Analog kann man bei Systemen n-ter Ordnung verfahren.<br />

Also sind die (autonomen) Systeme 1. Ordnung allgemein genug.<br />

Für die Eindeutigkeit der Lösung von (2.13) reicht die Stetigkeit von f nicht aus. Für<br />

f(y) = y1/2 und y0 = 0 liefert die Trennung der Variablen<br />

� �2 1<br />

y(t) = (t − t0) ,<br />

2<br />

aber auch jedes<br />

ist eine Lösung für T = ∞.<br />

⎧<br />

⎪⎨<br />

y(t) :=<br />

⎪⎩<br />

0 , t0 ≤ t ≤ t1 ,<br />

� �2 1<br />

(t − t1)<br />

2<br />

, t ≥ t1 ,<br />

(2.15)<br />

Die Stetigkeitsforderung muss verstärkt werden, etwa zur lokalen Lipschitz-Stetigkeit<br />

in y. Das sichert die Eindeutigkeit und die lokale Existenz einer Lösung.<br />

Satz 2.1 (von Picard-Lindelöf)<br />

Sei f stetig in R := {(t, y) | t0 ≤ t ≤ TM, �y − y0� ≤ yM} mit TM > t0, yM > 0.<br />

Es gebe ein L > 0, so dass<br />

Setze<br />

und es gelte<br />

�f(t, y) − f(t, z)� ≤ L�y − z� für alle (t, y), (t, z) ∈ R . (2.16)<br />

M := max{�f(t, y)� | (t, y) ∈ R}<br />

M(TM − t0) ≤ yM . (2.17)<br />

Dann gibt es auf [t0, TM] eine Lösung von (2.13) und diese ist eindeutig. Dabei ist � · �<br />

die Euklidische Norm auf R m .<br />

55


Beweis: Lehrbücher über Analysis oder GDG.<br />

Die Lösung existiert also nur lokal, da (2.17) eventuell eine Verkleinerung des gewünschten<br />

TM erzwingt.<br />

Ist f in einer Umgebung von (t0, y0) stetig differenzierbar, so lassen sich TM, yM so klein<br />

wählen, dass f auf R stetig differenzierbar ist und somit nach dem Mittelwertsatz (auf<br />

jede Komponente angewendet) (2.16) gilt mit<br />

�� � �<br />

��� ∂f � �<br />

L := max (t, y) � �<br />

∂y � �<br />

�<br />

(t, y) ∈ R<br />

wobei � · � eine mit � · � verträgliche Matrixnorm darstellt. Also ist in dieser Situation<br />

die lokale, eindeutige Existenz einer Lösung von (2.13) gesichert.<br />

Der Beweis von Satz 2.1 beruht auf der Äquivalenz von 2.13 zu der Integralgleichung<br />

(für T < ∞)<br />

y(t) = y0 +<br />

�t<br />

t0<br />

,<br />

f(s, y(s))ds , t ∈ [t0, T] . (2.18)<br />

Ist y eine Lösung von (2.13), so folgt durch Aufintegrieren auch (2.18). Ist andererseits<br />

y ∈ C[t0, T] eine Lösung von (2.18), so ist y(t0) = y0 und sogar differenzierbar, da<br />

Stammfunktion einer stetigen Funktion. Differenzieren liefert (2.13).<br />

(2.18) stellt in C[t0, T] eine Fixpunktgleichung dar auf die der Banach’sche Fixpunktsatz<br />

(z.B. Numerik I: Satz 4.2) angewendet werden kann. Also liefert die Fixpunktiteration<br />

y0(t) := y0<br />

yn+1(t) = y0 +<br />

�t<br />

t0<br />

f(s, yn(s))ds , n ≥ 0 ,<br />

✷<br />

(2.19)<br />

eine Funktionenfolge yn, die gegen eine Lösung von (2.13) in einer gewichteten Maximumsnorm<br />

linear konvergiert. (Im Allgemeinen ist das aber nicht als Approximationsverfahren<br />

zu empfehlen.)<br />

Zur Korrektgestelltheit von (2.13) gehört auch die Stabilität, d.h. die stetige Abhängigkeit<br />

der Lösung von Datenstörungen.<br />

Definition 2.2 Die AWA (2.13) heißt stabil auf [t0, TM], wenn zu jedem ε > 0 ein<br />

δ > 0 existiert, so dass für δ0 ∈ R m , δ1 ∈ C[t0, TM] mit �δ0� + �δ1�∞ ≤ δ gilt:<br />

Das gestörte Problem<br />

˙z(t) = f(t, ˙z(t)) + δ1(t) , t ∈ [t0, TM]<br />

z(t0) = y0 + δ0<br />

56<br />

(2.20)


hat eine eindeutige Lösung z auf [t0, T] und<br />

Hierbei ist<br />

�y − z�∞ ≤ ε .<br />

�y�∞ := max{�y(t)� | t ∈ [t0, TM]} . (2.21)<br />

Satz 2.3 Unter der Voraussetzungen von Satz 2.1 ist (2.13) stabil auf [t0, TM].<br />

Beweis: Mit den obigen Bezeichnungen gilt wegen (2.18)<br />

d.h. mit<br />

gilt<br />

�y(t) − z(t)� ≤ �δ0� +<br />

�t<br />

t0<br />

t<br />

�<br />

≤ �δ0� +<br />

t0<br />

g(t) := �δ0� +<br />

�f(s, y(s)) − f(s, z(s))� + �δ1(s)�ds<br />

�<br />

�δ1(s)�ds + L<br />

�t<br />

t0<br />

ϕ(t) := �y(t) − z(s)�<br />

ϕ(t) ≤ g(t) +<br />

Das Lemma von Gronwall (s.u.) impliziert<br />

�t<br />

t0<br />

t0<br />

t<br />

�δ1(s)�ds<br />

Lϕ(s)ds .<br />

�y(s) − z(s)�ds<br />

ϕ(t) ≤ g(t) exp(L(t − t0)) für t ∈ [t0, TM]<br />

und damit<br />

⎛<br />

�<br />

�y − z�∞ ≤ exp(L(TM − t0)) ⎝�δ0� +<br />

Zu ε > 0 kann also<br />

TM<br />

t0<br />

⎞<br />

�δ1(s)�ds⎠<br />

≤ exp(L(TM − t0)) max(1, TM − t0)(�δ0� + �δ1�∞) .<br />

δ = (exp(L(TM − t0)) max(1, TM − t0)) −1 ε (2.22)<br />

57


gewählt werden, d.h. es gibt sogar eine Lipschitzstetige Abhängigkeit zwischen Störung<br />

und Lösung und auch die Norm für δ1 könnte zu einer L 1 -Norm in t abgeschwächt<br />

werden.<br />

Beachte, dass in Satz 2.3 δ i. Allg. von TM − t0 und zwar sogar exponentiell abhängt.<br />

Das kann die Abschätzung für große L und TM − t0 aussagelos machen:<br />

Beispiel: Chaotische Systeme<br />

E. N. Lorenz hat 1963 das folgende System als stark vereinfachtes Konzeptmodell zur<br />

Wetterdynamik angegeben<br />

mit Parametern δ, b, r > 0.<br />

˙x(t) = −δx(t) + δy(t)<br />

˙y(t) = rx(t) − y(t) − x(t)z(t)<br />

˙z(t) = x(t)y(t) − bz(t)<br />

x(t0) = 1, y(t0) = 0, z(t0) = 0<br />

Satz 2.1 und Satz 2.3 sind hier anwendbar, doch ist die Sensitivität z.B. für<br />

δ = 10, b = 8/3, r = 28<br />

✷<br />

(2.23)<br />

der Lösung so stark, dass schon für TM −t0 = 25 für den Verstärkungsfaktor C (ε = Cδ)<br />

gilt:<br />

C ≈ 10 8 .<br />

Das Langzeitverhalten von (2.23) numerisch richtig zu erfassen, ist also sehr anspruchsvoll.<br />

Satz 2.4 (Lemma von Gronwall)<br />

Sei p auf (t0, T) integrierbar und nicht negativ, seien g und ϕ auf [t0, T] stetig, g<br />

monoton nichtfallend. Wenn gilt<br />

dann folgt:<br />

ϕ(t) ≤ g(t) +<br />

�t<br />

t0<br />

⎛<br />

�<br />

ϕ(t) ≤ g(t) exp⎝<br />

t0<br />

t<br />

p(s)ϕ(s)ds, t ∈ [t0, T] ,<br />

⎞<br />

p(s)ds⎠<br />

für t ∈ [t0, T] .<br />

58


Beweis: siehe z. B. W. Walter, Differential- und Integralungleichungen.<br />

2.3 Beispiele von Randwertaufgaben (RWA) für GDG<br />

2–Punkt–RWA: Beispiel.<br />

Gegeben seien k ∈ C 1 (a, b) mit k(x) ≥ k0 > 0 für alle x ∈ [a, b] und f ∈ C(a, b).<br />

Gesucht ist u, so dass:<br />

(D)<br />

(−k(x)u ′ (x)) ′ = f(x) für x ∈ (a, b) =: I ,<br />

u(a) = u(b) = 0 .<br />

Klassische Lösung: u ∈ C 1 [a, b] ∩ C 2 (a, b) das (D) erfüllt.<br />

Funktionenräume:<br />

C(a, b) := � f � � f : (a, b) → R, f stetig �<br />

C[a, b] analog<br />

C k (a, b) := � f � � f, f ′ , . . .,f (k) ∈ C(a, b) �<br />

C k [a, b] analog (Ableitungen stetig fortsetzbar in x = a, b)<br />

Eine klassische Lösung von (D) existiert eindeutig (Aufintegrieren & Randbedingungen).<br />

D.h. (D) ist korrekt gestellt (wenn noch u stetig von f abhängt).<br />

Ohne Randbedingungen gilt: u Lösung ⇒ u + g Lösung, wobei<br />

−(kg ′ ) ′ � x<br />

= 0 ⇔ g(x) =<br />

0<br />

α/k(s) ds + β , α, β ∈ R .<br />

f �∈ C(a, b) oder k �∈ C 1 (a, b) ⇒ ? – keine klassische Lösung.<br />

(D) ist ein Modell für Wärmeleitung<br />

ր geometrisch 1–dimensional<br />

eindimensional ց homogen in weiteren Dimensionen<br />

Hierbei ist: u Temperatur [K]<br />

q Wärmestromdichte [W/m 2 ]<br />

Dabei q > 0 : Strom in Richtung von x,<br />

q < 0 : Strom gegen Richtung von x<br />

f Wärmequelldichte [W/m 3 ] (Heizung)<br />

59<br />


Beachte: W = J/s : Leistung W, Wärmemenge J = Nm.<br />

Wegen der Energieerhaltung gilt<br />

q ′ = f . (2.24)<br />

Dazu betrachte ein beliebiges eindimensionales Kontrollvolumen J = [x1, x2],<br />

x1 < x2, xi ∈ I und so das dreidimensionale Kontrollvolumen J × A, mit der Fläche<br />

A = [y1, y2] × [z1, z2] und (Lebesgue-)Maß µ(A).<br />

Dort gilt<br />

µ(A) �<br />

J<br />

f(s) ds =<br />

�<br />

f(s)ds dy dz<br />

J×A<br />

�<br />

= (q(x2) − q(x1))µ(A) =<br />

J<br />

q ′ (s) ds µ(A) ,<br />

herausfließende – hineinfließende Wärme durch<br />

orthogonale Fläche A (in (y, z)–Ebene) mit Maß µ(A)<br />

Da J beliebig war, folgt q ′ (x) = f(x) für x ∈ I (Übung).<br />

Konstitutionelles Gesetz: (experimentell)<br />

q = −ku ′<br />

Dabei ist k > 0 die Wärmeleitfähigkeit [W/(Km)].<br />

Verallgemeinerung von (2.25):<br />

Fourier’sches Gesetz (2.25)<br />

q = −ku ′ + cu =: q1 + q2<br />

Der Term cu beschreibt die zugrundeliegende Strömung.<br />

c erzwungene konvektive Stromdichte [W/Km 2 ]<br />

Es folgt<br />

−(ku ′ ) ′ = f in I<br />

bzw. −(ku ′ − cu) ′ = f in I .<br />

Ist k konstant, kann durch Skalierung k = 1 erreicht werden und wir erhalten<br />

−u ′′ = f in I .<br />

Andere Fälle: k = k(x) analog c = c(x) → lineare RWA,<br />

oder k = k(u) , analog c = c(u) → nichtlinare RWA,<br />

oder k = k(x, u) , analog c = c(x, u) → nichtlineare RWA.<br />

60<br />

(2.26)


Zur Quelldichte f:<br />

insbesondere<br />

f = f(x) oder f = f(x, u) ,<br />

f(x, u) = − ˜ d(x)u + ˜ f(x) .<br />

Für ˜ d(x) ≥ 0: linearer Abbau (d.h. Kühlung), proportional zu u: Senke,<br />

für ˜ d(x) < 0: lineares Wachstum (d.h. Heizung), proportional zu u: Quelle.<br />

Gleiches Modell beschreibt Transport von (im Fluid) gelöstem Stoff.<br />

Dann ist: u Konzentration [kg/m 3 ]<br />

q Massenstromdichte [kg/m 2 s]<br />

q1 = −ku ′ Fick’sches Gesetz<br />

k > 0 Diffusionskoeffizient [m 2 /s]<br />

q2 = cu Massenstromdichte durch Konvektion<br />

c volumetrische Fluidstromdichte [m/s] (= [m 3 /m 2 s])<br />

Wir erhalten also jeweils die Differentialgleichung<br />

−(ku ′ − cu) ′ + ˜ du = f , x ∈ [a, b] . (2.27)<br />

Diese heißt linear, falls k = k(x)(> 0), c = c(x) und ˜ d = ˜ d(x),<br />

und nichtlinear, falls k = k(x, u) oder c = c(x, u) oder ˜ d = ˜ d(x, u) oder f = f(x, u).<br />

Im Folgenden betrachten wir nur den linearen Fall:<br />

Zu (2.27) äquivalente Formen:<br />

(falls c ′ existiert (Lösungsbegriff ohne Existenz von c ′ ?), in (2.27) nur Existenz von<br />

(cu) ′ !)<br />

−(ku ′ ) ′ + cu ′ + du = f (mit d := ˜ d + c ′ ) (2.28)<br />

bzw. (falls k ′ existiert)<br />

−ku ′′ + eu ′ + du = f (mit e := c − k ′ ) (2.29)<br />

(2.27): lineare Differentialgleichung in Divergenzform,<br />

(2.28): lineare Differentialgleichung mit Hauptteil in Divergenzform,<br />

(2.29): allgemeine lineare Differentialgleichung.<br />

Im Folgenden betrachten wir die Form (2.28):<br />

Bedingungen an Koeffizienten: (Regularität s.u.)<br />

k(x) ≥ k0 > 0 , x ∈ [a, b] (2.30)<br />

61


(s.u., falls k stetig auf [a, b] reicht dafür k(x) > 0 für alle x ∈ [a, b]).<br />

d.h. Strom von links nach rechts:<br />

x = a: Einstromrandpunkt<br />

x = b: Ausstromrandpunkt<br />

(oBdA. bei Ausschluss von Vorzeichenwechsel).<br />

d.h. linearer Abbau von u.<br />

c(x) ≥ 0 , x ∈ [a, b] , (2.31)<br />

d(x) : s.u. , i.a. d(x) ≥ 0 , (2.32)<br />

Randbedingungen:<br />

Vorgabe der Temperatur (bzw. Konzentration) (technisch: wie?):<br />

u(a) = ua<br />

u(b) = ub<br />

Vorgabe der (nach außen gerichteten) Stromdichte q:<br />

“äußere Normale” bei x = a: η = −1,<br />

bei x = b: η = 1.<br />

Dirichlet–Randbedingung . (2.33)<br />

−q(a) = qa<br />

⇐⇒ k(a)u ′ (a) = qa<br />

⇐⇒ u ′ (a) = qa/k(a)<br />

q(b) = qb<br />

⇐⇒ u ′ (b) = −qb/k(b)<br />

(Vorzeichen für Vorzeichen von qr, r = a, b wichtig).<br />

Neumann–Randbedingung<br />

Auch nichtlineare Randbedingung ist möglich:<br />

Spezialfall:<br />

−q(a) = qa(u(a)) ,<br />

q(b) = qb(u(b)) .<br />

−q(a) = αa (u(a) − ua), αa > 0<br />

⇐⇒ q(a) + αau(a) = αaua =: ga<br />

⇐⇒ −u ′ (a) + ˜αau(a) = ˜αaua =: ˜ga ,<br />

62<br />

(2.34)<br />

(2.35)<br />

(2.36)


wobei ˜αa := αa/k(a) > 0.<br />

Newton’sche Wärmeleitung: Analogie zu Fourier’sches Gesetz<br />

Strömung proportional zu −g ′ , wo g(x) = u(a) + (u(a) − ua)(x − a), x ≤ a.<br />

ua: Temperatur in äußerer Umgebung von x = a (ambiente Temperatur)<br />

αa: Wärmeaustauschkoeffizient<br />

gemischte Randbedingung<br />

(Linearkombination aus u ′ (a), u(a) wird vorgegeben)<br />

Formal erhält man Dirichlet–Bedingung aus (2.36) durch αa → ∞,<br />

d.h. Grenzfall starker Wärmeaustausch.<br />

Analog bei x = b :<br />

wobei ˜αb := αb/k(b) > 0.<br />

q(b) = αb (u(b) − ub), αb > 0<br />

⇐⇒ −q(b) + αbu(b) = αbub =: gb<br />

⇐⇒ u ′ (b) + ˜αbu(b) = ˜αbub =: ˜gb ,<br />

Oder eine der möglichen Kombinationen Dirichlet/Neumann, etc.<br />

63<br />

(2.37)


3 Einschrittverfahren<br />

3.1 Beispiele für Einschrittverfahren, Konsistenz<br />

Untersucht werden sollen Verfahren zur Bestimmung von Näherungslösungen für das<br />

folgende Anfangswertproblem für ein System gewöhnlicher Differentialgleichungen<br />

(GDG) 1.Ordnung:<br />

(A) y ′ = f(t, y), t ∈ (t0, T]<br />

y(t0) = y0,<br />

wobei für I := [t0, T] gelte<br />

f : I × R n → R n , t0, T ∈ R, t0 < T, y0 ∈ R n<br />

und die Generalvoraussetzung erfüllen:<br />

(G1) f stetig auf [t0, T] × R n<br />

(G2) f ist lokal Lipschitzstetig in y, d.h. zu allen kompakten K ⊂ R n existiert<br />

L = LK ≥ 0, so dass �f(t, y1) − f(t, y2)� ≤ L�y1 − y2� für alle t ∈ I, y1,2 ∈ K.<br />

Ist L unabhängig von K, so heißt f global Lipschitzstetig in y – � · � ist beliebige<br />

Norm auf R n –<br />

Definition 3.1 y ∈ C 1 (I) heißt (globale) Lösung von (A), wenn<br />

i) y ′ (t) = f(t, y(t)) ⇐⇒ y ′ i (t) = fi(t, y1(t), . . .,yn(t)) für alle t ∈ I.<br />

· ′ := ∂<br />

∂t .<br />

ii) y(t0) = y0.<br />

Bemerkung 3.2 1. Der Satz von Picard-Lindelöf (Satz 2.1) sichert die Eindeutigkeit<br />

von y und die lokale Existenz, d.h. es gibt ε > 0, so dass eine (eindeutige)<br />

Lösung y in [t0, t0 + ε] existiert.<br />

2. Die Richtung der “Zeit” t spielt keine Rolle, sofern nur Eigenschaften wie Differenzierbarkeit<br />

und Lipschitzstetigkeit von f eingehen: Statt t ∈ [t0, T] kann<br />

auch t ∈ [T, t0] für T < t0 betrachtet werden (Reduktion auf alten Fall durch<br />

˜t := 2t0 − t, ˜ T := 2t0 − T). Später wird der Begriff der einseitigen Lipschitzstetigkeit<br />

betrachtet der nicht invariant zur Umkehrung der “Zeit” ist.<br />

64


3. Glattheit von f überträgt sich auf die Lösung y: Sei U ⊂ R n+1 offen, so dass f<br />

auf U definiert ist und<br />

(t, y(t)) ∈ U für alle t ∈ [t0, T] . (3.1)<br />

Dann f ∈ C m (U) ⇒ y ∈ C m+1 (I) und y (k) , k = 1, . . ., m + 1, lässt sich durch<br />

Ableitungen von f bis zur k − 1-ten Ordnung ausgewertet bei (t, y(t)) darstellen.<br />

m = 1 : y ′ (t) = f(t, y(t)) ⇒<br />

Kettenregel i = 1, . . .,n :<br />

∂fi<br />

(t) = (t, y(t)) +<br />

∂t<br />

�<br />

∂fi ∂fi<br />

= + · f<br />

∂t ∂y<br />

y ′′<br />

i<br />

=: Dfi(t, y(t))<br />

n� ∂fi<br />

(t, y(t)) y<br />

∂yj<br />

′ j (t)<br />

����<br />

=fj(t,y(t))<br />

�<br />

(t, y(t))<br />

j=1<br />

Hier bezeichnet · das Euklidische Skalarprodukt in R n .<br />

(3.2)<br />

m = 2 : (t, y(t)) werde weggelassen zur Notationsvereinfachung, i = 1, . . .,n :<br />

y ′′′<br />

�<br />

∂<br />

i (t) =<br />

∂t (Df)i<br />

�<br />

= ∂2fi ∂t2 + ∂2 �<br />

n�<br />

�<br />

fi ∂ ∂fi<br />

f + fj<br />

∂t∂y ∂t ∂yj<br />

⇒<br />

y ′ k<br />

= fk<br />

�<br />

n�<br />

∂<br />

∂t<br />

i=1<br />

∂fi<br />

∂yj<br />

fj<br />

�<br />

=<br />

n�<br />

j=1<br />

+<br />

∂ 2 fi<br />

∂yj∂t fj +<br />

n�<br />

j=1<br />

∂fi<br />

∂yj<br />

y ′′′<br />

i (t) = ∂2 fi<br />

∂t 2 + 2 ∂2 fi<br />

+ ∂fi<br />

∂y<br />

n�<br />

j,k=1<br />

∂fj<br />

∂t +<br />

n�<br />

j,k=1<br />

j=1<br />

∂ 2 fi<br />

∂yj∂yk<br />

∂fi<br />

∂yj<br />

∂t∂y f + fT ∂2fi f<br />

∂y2 · ∂f<br />

∂t +<br />

∂ 2 fi<br />

∂y 2 =: D2 fi = Hessematrix<br />

� �T ∂fi ∂f<br />

∂y ∂y f<br />

Man beachte, dass dabei ∂2fi ∂f<br />

die Hesse-Matrix von fi,<br />

∂y2 ∂y<br />

von f bezeichnet und ∂fi<br />

∂y und damit ∂2fi ∂t∂y<br />

als Gradient.<br />

65<br />

y ′ kfj<br />

∂fj<br />

∂yk<br />

y ′ k<br />

(3.3)<br />

aber die Jacobi-Matrix<br />

als Spalte zu interpretieren ist, d.h.


Weitere Generalvoraussetzung:<br />

(G3) Es gibt eine globale Lösung auf I.<br />

In I wird ein Punktegitter definiert<br />

I ′ h := {t ∈ I | t = tj, j = 0, . . ., N + 1, tj+1 := tj + hj, j = 0, . . .,N}<br />

Ih := I ′ h \{tN+1} .<br />

Dabei sind N ∈ N und der Schrittweitenvektor<br />

vorgegeben.<br />

h = (h0, . . .,hN) T ∈ R N+1 , hj > 0 ,<br />

N�<br />

j=0<br />

hj = T − t0 , d.h. tN+1 = T ,<br />

(3.4)<br />

(3.5)<br />

Beispiel: konstante Schrittweite h := (T −t0)/(N +1) sonst spricht man von variabler<br />

Schrittweite (s.u.)<br />

Ziel ist die Bestimmung eines yh : I ′ h → Rn , das (für große N bzw. kleine h) eine<br />

Approximation von y ist.<br />

Dazu wird folgender Ansatz gemacht:<br />

Ersetze y ′ (tj) durch den vorwärtsgenommenen Differenzenquotienten<br />

Dhy(tj) := 1<br />

(y(tj+1) − y(tj)), tj ∈ Ih (3.6)<br />

hj<br />

(wohldefiniert für y : Ih → R n ), so dass eine “Näherung” yj := yh(tj), tj ∈ I ′ h<br />

bestimmt wird durch:<br />

yj+1 = yj + hjf(tj, yj) , j = 0, . . ., N<br />

y0 vorgegeben .<br />

(3.7)<br />

Die yj können sukzessive eindeutig bestimmt werden, das entstandene Verfahren heißt<br />

(explizites) Eulerverfahren (oder Polygonzug-Verfahren):<br />

66


y<br />

y 0<br />

y 1<br />

y zu Anfangswert (t ,y )<br />

0 0<br />

y zu Anfangswert (t ,y )<br />

1 1<br />

t 0 t 1 t 2 t 3 t N T<br />

Folgende im Konflikt stehende Effekte sind zu beachten:<br />

kleine hj :<br />

(1) kleiner Fehler in einem Schritt tj ❀ tj+1<br />

(2) viele Schritte zur Erreichung von t = T nötig: Akkumulation und Verstärkung (?)<br />

der lokalen Fehler pro Schritt.<br />

Also sind als notwendige Eigenschaften eines Verfahrens sicherzustellen:<br />

(1) kleine lokale Fehler für kleine hj (Konsistenz)<br />

(2) kein Aufschaukeln der lokalen Fehler (Stabilität).<br />

Schreibweisen:<br />

h : Ih → R mit tj ↦→ hj ,<br />

h → 0 ⇐⇒ hmax := N<br />

max<br />

j=0 hj → 0 .<br />

Tritt h in “reellen” Ausdrücken auf, ist hmax gemeint: h < H , h p z.B.<br />

Eine direkte Konvergenzaussage für das Eulerverfahren liefert:<br />

Satz 3.3 Sei f ∈ C1 (U) (siehe (3.1)), L die Lipschitzkonstante von f auf Ū. Dann:<br />

�y(tj) − yh(tj)� ≤ (tj − t0)e L(tj−t0) h<br />

max �Df(t, y(t))�<br />

t∈I 2<br />

67<br />

, j = 0, . . ., N.<br />

t<br />

(3.8)


Beweis: Wird nur für auf I × R n gleichmäßig bzgl. y Lipschitz-stetiges f geführt<br />

(genauer später !)<br />

ej := �y(tj) − yh(tj)� ⇒<br />

e0 = 0 und<br />

⇒<br />

y(tj+1) − yh(tj+1) = y(tj+1) − y(tj) + y(tj) − yh(tj) + yh(tj) − yh(tj+1)<br />

ej+1 ≤ hj<br />

= hjy ′ (tj) + h2 j<br />

2 y′′ (s) + y(tj) − yh(tj) − hjf(tj, yh(tj))<br />

für ein s ∈ [tj, tj+1] .<br />

≤L�y(tj)−yh(tj)�<br />

� �� �<br />

�f(tj, y(tj)) − f(tj, yh(tj))�+ ej<br />

+ h2j 2 max<br />

t∈I<br />

�Df(t, y(t))� (⇐ (3.2))<br />

≤ (hjL + 1)ej + h2 j<br />

2 max �Df(t, y(t))�<br />

t∈I<br />

� �� �<br />

=:C<br />

j = 0, . . .,N .<br />

⇒ nach Lemma 3.4 2) für j = 0, . . .,N + 1 :<br />

ej ≤ (tj − t0) exp(L(tj − t0))C h<br />

2 .<br />

Lemma 3.4 (Gronwall diskret) an, bn, en ≥ 0 , n = 0, . . .,N + 1.<br />

1) Aus<br />

folgt<br />

en+1 ≤ (1 + an+1)en + bn+1, n = 0, . . .,N<br />

en ≤<br />

≤<br />

�<br />

�<br />

bi<br />

i=1<br />

e0 + n�<br />

e0 + n�<br />

bi<br />

i=1<br />

� n�<br />

(1 + ai),<br />

i=1<br />

n = 0, . . ., N + 1<br />

�<br />

n�<br />

�<br />

�<br />

exp<br />

68<br />

ai<br />

i=1<br />

.<br />

(3.9)<br />

✷<br />

(∗)


2) Seien h0, . . .,hN ≥ 0, b, L ≥ 0, t0 ∈ R, tn := t0 + n−1 �<br />

hk, n = 0, . . .,N + 1.<br />

Aus<br />

folgt<br />

k=0<br />

en+1 ≤ (1 + hnL)en + hnb<br />

en ≤ (e0 + b(tn − t0)) exp (L(tn − t0)) für n = 0, . . .,N + 1 .<br />

Beweis: Zu 1): durch vollständige Induktion<br />

(∗) gilt für n = 0 und n = 1.<br />

n → n + 1 :<br />

en+1 ≤ (1 + an+1)<br />

≤<br />

�<br />

e0 + n�<br />

�<br />

bi<br />

i=1<br />

e0 + n�<br />

� n+1<br />

i=1<br />

bi<br />

i=1<br />

�<br />

n�<br />

(1 + ai) + bn+1<br />

i=1<br />

�<br />

n+1 �<br />

(1 + ai) + bn+1 (1 + ai).<br />

Die 2. Ungleichung gilt wegen 1 + a ≤ exp(a) für a ∈ R.<br />

Zu 2): Nach 1) folgt<br />

en ≤<br />

�<br />

e0 +<br />

� n�<br />

i=1<br />

hi−1<br />

�<br />

b<br />

�<br />

exp<br />

� n�<br />

i=1<br />

i=1<br />

= (e0 + (tn − t0)b) exp((tn − t0)L) .<br />

hi−1L<br />

Der Konvergenzbeweis lässt sich unter Benutzung des lokalen Abbruchfehlers (Konsistenzfehlers)<br />

besser verstehen (allgemein siehe Definition 3.8). Sei<br />

τj := 1<br />

(y(tj+1)) − y(tj) − hjf(tj, y(tj)) .<br />

hj<br />

hjτj ist also der Fehler im (j + 1)ten Schritt (von tj nach tj+1), wenn an der exakten<br />

Lösung y(tj) gestartet wird, also der minimale Fehler in einem Schritt. Der Beweis von<br />

Satz 3.3 beruht also auf der folgenden Rekursion für den Fehler ej im Schritt j:<br />

⇒<br />

ej+1 = hjτj + ej + hj(f(tj, y(tj)) − f(tj, yj))<br />

�ej+1� ≤ (1 + hjL)�ej� + hj�τj�<br />

69<br />

�<br />


⇒<br />

L(tj−t0) N<br />

�ej� ≤ (tj − t0)e max<br />

k=0 �τk� .<br />

Der Fehler ist also - bis auf einen exponentiellen Verstärkungsfaktor - in der Größenordnung<br />

des Konsistenzfehlers und für diesen gilt<br />

τj = 1<br />

�<br />

hjy ′ (tj) + h2j 2 y′′ (sj) − hjy ′ �<br />

(tj)<br />

und damit<br />

hj<br />

für ein sj ∈ [tj, tj+1]<br />

�τj� ≤ h<br />

2 max �Df(t, y(t))� .<br />

t∈I<br />

Das Eulerverfahren ist unbrauchbar, da es nur mit Ordnung h konvergiert (und nicht<br />

h k , k ≥ 2).<br />

Ist f glatt, können entsprechend hoch konvergente Verfahren konstruiert werden durch<br />

Taylorentwicklung:<br />

Sei f ∈ C p (U), p ∈ N, U nach (3.1), dann ist y ∈ C p+1 (I) und<br />

y (k) (t) = ∂k−1<br />

∂tk−1(f(t, y(t)) =: (Dk−1f)(t, y(t)) , k = 1, . . ., p ,<br />

�<br />

p�<br />

�<br />

y(tj + hj) = y(tj) + hj<br />

⇒<br />

k=1<br />

y(tj + hj) = y(tj) + hj<br />

h k−1<br />

j<br />

k! y(k) (tj)<br />

� p�<br />

k=1<br />

h k−1<br />

j<br />

k!<br />

+ O(h p+1<br />

j )<br />

(D k−1 f)(tj, y(tj))<br />

+ O(h p+1<br />

j ) , j = 0, . . ., N .<br />

Die Methode der Taylorentwicklung besteht nun darin, den Fehlerterm in (3.10)<br />

zu vernachlässigen, d.h. die Näherung y0, . . .,yN wird definiert durch<br />

yj+1 = yj + hj<br />

p�<br />

k=1<br />

y0 vorgegeben.<br />

h k−1<br />

j<br />

k!<br />

�<br />

(D k−1 f)(tj, yj), j = 0, . . .,N ,<br />

70<br />

(3.10)


Beispiele:<br />

p = 1 : yj+1 = yj + hjf(tj, yj), d.h. das explizite Eulerverfahren,<br />

p = 2 : yj+1 = yj + hj<br />

�<br />

f(tj, yj) + hj<br />

2<br />

� ∂f<br />

∂t (tj, yj) +<br />

� ∂f<br />

∂y f<br />

�<br />

(tj, yj)<br />

Der Nachteil ist also, dass viele Ableitungen von f explizit bestimmt werden müssen,<br />

für große p und n kann dies nur über symbolische Differentiation erfolgen. Wir werden<br />

uns stattdessen auf Verfahren konzentrieren, die ihre hohe Konvergenzordnung nur<br />

durch die mehrfache Auswertung von f allein für einen Näherungsschritt erhalten.<br />

Einfache Beispiele dafür ergeben sich aus den bekannten<br />

Konvergenzordnung von Differenzenquotienten (zur Approximation von<br />

Ableitungen)<br />

1) Vorwärtsgenommen Differenzenquotient<br />

y ∈ C 2 (Ω), Ω = (t, t + h) oder (t − h, t)<br />

y ′ (t) = 1<br />

1<br />

(y(t + h) − y(t)) + hR, |R| ≤<br />

h 2 �y′′ �∞.<br />

2) Rückwärtsgenommen Differenzenquotient<br />

3) Zentralen Differenzenquotient<br />

Beweis: Zu 3):<br />

Anwendungen<br />

y ′ (t) = 1<br />

1<br />

(y(t) − y(t − h)) + hR, |R| ≤<br />

h 2 �y′′ �∞<br />

y ′ (t) = 1<br />

2h (y(t + h) − y(t − h)) + h2 R, |R| ≤ 1<br />

6 �y′′′ �∞<br />

y(t + h) = y(t) ± y ′ (t)h ± y ′ (t) h2<br />

2 ± y′′′ (ξ±) h3<br />

6<br />

⇒ y(t + h) − y(t − h) = 2hy ′ (t) + 0 + (y ′′′ (ξ+) − y ′′′ (ξ−)) h2<br />

12 2h.<br />

71<br />

��<br />

.<br />


Approximation von Abbildung y ↦→ y ′ h k R = (Konsistenz-)Fehler: k = Konsistenzordnung.<br />

Stabilität von y ↦→ y ′ : schlechtgestellt! (siehe Abschnitt 2.7 in Numerik<br />

I).<br />

⇒ reduzierte Konvergenzordnung<br />

Approximation von y ′ = f(t, y) (y(t0) = y0)<br />

bei 1) explizites Euler<br />

Stabilität gilt<br />

⇒ Konvergenzordnung = Konsistenzordnung.<br />

Nach 3) Verfahren mit höheren Ordnung<br />

�<br />

yj+1 = yj + hjf<br />

tj + hj<br />

2 , Näherung bei tj+ 1<br />

2<br />

• Zentralen Differenzenquotient um tj + hj<br />

2 =: tj+ 1.<br />

a) Nähereung bei t j+ 1<br />

2<br />

⇒ yj+1 = yj + hjf<br />

����<br />

տ<br />

⇒ Crank-Nicolson-Verfahren.<br />

b) Näherung bei t j+ 1<br />

2<br />

2<br />

1<br />

2 (yj+1 + yj)<br />

⎛<br />

⎜<br />

⎝t j+ 1<br />

2<br />

implizit<br />

, 1<br />

2 (yj+1<br />

����<br />

ր<br />

Gleichung zu lösen für yj+1<br />

yj + hj<br />

2 f(tj, yj)<br />

Expliziten-Euler-Schritt mit Schritt mit Schrittweite hj<br />

2<br />

⇒ V erbessertes Polygonzugverfahren.<br />

�<br />

⎞<br />

⎟<br />

+yj) ⎠<br />

• Zentraler Differenzenquotient = 1 (Vorwärts+Rückwärtsgenommener Differenzenquotient).<br />

2<br />

72


a)<br />

⇒ yj+1 = yj +<br />

����<br />

տ<br />

hj<br />

2<br />

b) Näherung für yj+1: in Euler-Schritt<br />

⇒ Verfahren von Heun<br />

⎛<br />

⎞<br />

⎜<br />

⎟<br />

⎝f(tj, yj) + f(tj+1, yj+1)<br />

⎠<br />

� �� �<br />

ր<br />

implizit<br />

yj+1 = yj + hjf(tj, yj)<br />

Beschränken wir uns auf explizite Verfahren, bei denen keine Gleichung für yj+1 zu<br />

lösen ist ergeben sich also die Beispiele<br />

• ”Zentralen” Differenzenquotient bei t = tj und Schrittweite hj (bzw. hj−1) (bei<br />

äquidistanten Gitter = zentralen Differenzenquotient)<br />

yj+1 − yj−1 = (hj + hj−1)f(tj, yj).<br />

Expliziten Zweischrittverfahren: yj+1 braucht yj und yj−1 (für Start nicht nur y0,<br />

sondern auch y1 nötig, z.B. y1 = y0 + h0f(t0, y0)).<br />

Einschränkung hier: Einschrittverfahren, vorerst: explizit.<br />

• Das verbesserte Polygonzug-Verfahren (Mittelpunktsformel)<br />

�<br />

yj+1 = yj + hjf tj + 1<br />

2 hj, yj + 1<br />

2 hjf(tj,<br />

�<br />

yj) , j = 0, . . ., N,<br />

y0 vorgegeben,<br />

d.h. Dhy(tj) wird aufgefasst als Approximation für<br />

y ′<br />

�<br />

tj + 1<br />

2 hj<br />

� �<br />

= f tj + 1<br />

2 hj,<br />

�<br />

y tj + 1<br />

2 hj<br />

��<br />

und<br />

�<br />

y tj + 1<br />

2 hj<br />

�<br />

durch einen Eulerschritt über hj<br />

2<br />

approximiert<br />

73<br />

(3.11)


�<br />

y<br />

y 0<br />

t 0<br />

t +h / 2<br />

0 0 t 1<br />

y zu Anfangswert (t ,y )<br />

0 0<br />

• Das Verfahren von Heun (Explizite Trapezregel)<br />

y 1<br />

y zu Anfangswert (t 0+h 0/2 , y 0+h 0/2 f(t 0, )) �<br />

yj+1 = yj + hj<br />

2 (f(tj, yj) + f(tj + hj, yj + hjf(tj, yj)), j = 0, . . .,N ,<br />

y0 vorgegeben,<br />

t<br />

(3.12)<br />

d.h. Dhy(tj) wird aufgefasst als Approximation für 1<br />

2 (y′ (tj) + y ′ (tj+1)) und dabei<br />

y(tj+1) durch einen Eulerschritt approximiert.<br />

Für eine Näherung yj+1 sind jeweils 2 Auswertungen von f nötig.<br />

Anwendung auf f = f(t), d.h. numerische Integration liefert für<br />

(3.7) : zusammengesetzte Rechtecksregel: Ordnung h<br />

(3.11) : zusammengesetzte Mittelpunktsregel: Ordnung h2 (3.12) : zusammengesetzte Trapezregel: Ordnung h2 f<br />

f<br />

f<br />

x 0 x 1 x 2 x 3<br />

t<br />

x 0 x 1 x 2 x 3<br />

74<br />

t<br />

x 0 x 1 x 2 x 3<br />

t


(3.7) (3.11) (3.12)<br />

Allgemein:<br />

Definition 3.5 Ein explizites Einschrittverfahren wird gegeben durch eine Familie<br />

von Abbildungen<br />

(Ah) fh : Ih × R n → R n , 0 < h < H , für ein H > 0 .<br />

Die Lösung von (Ah) ist gegeben durch<br />

yh : I ′ h → Rn , so dass<br />

(1) Dhyh(tj) = fh(tj, yh(tj)) ⇐⇒<br />

yh(tj+1) = yh(tj) + hjfh(tj, yh(tj)), j = 0, . . .,N ,<br />

(2) yh(t0) = y0 .<br />

Kurzschreibweise: yj := yh(tj) (nicht y(tj)).<br />

(3.13)<br />

Bemerkung 3.6 1) Bei nichtkonstanter Schrittweite wird hj vor Ausführung des<br />

j-ten Schritt bestimmt durch Bewertung der Güte des alten Schritts: Schrittweitensteuerung<br />

( → Abschnitt 3.10).<br />

2) Explizite Verfahren brauchen also nur Funktionsauswertungen zur Berechnung<br />

einer neuen Näherung yj+1, während implizite Verfahren das Lösen von Gleichungssystemen<br />

nötig macht.<br />

Verfahren sollen konvergent mit hoher Ordnung sein:<br />

Definition 3.7 Sei y die exakte Lösung von (A), yh die Näherungslösung nach (Ah).<br />

Dann heißt<br />

eh : I ′ h → R n , eh(tj) = y(tj) − yh(tj)<br />

der globale Fehler von (Ah).<br />

(Ah) heißt konvergent, wenn<br />

�eh�h := max<br />

t∈I ′ h<br />

�y(t) − yh(t)� → 0 für h → 0 . (3.14)<br />

(Ah) hat (mindestens) die Konvergenzordnung p > 0, wenn es H > 0, C > 0<br />

gibt, so dass<br />

�eh�h ≤ Ch p<br />

für h < H , (3.15)<br />

75


d.h. kurz �eh�h = O(h p ).<br />

h in (3.15) steht für hmax = max h(t).<br />

t∈Ih<br />

Für die Konvergenz von (Ah) ist notwendig, dass der in einem Schritt gemachte lokale<br />

Fehler gegen 0 konvergiert. Deshalb:<br />

Definition 3.8 Sei y die exakte Lösung von (A).<br />

τh : Ih → R n , definiert durch<br />

τh(tj) := 1<br />

(y(tj+1) − y(tj)) − fh(tj, y(tj)), j = 0, . . .,N<br />

hj<br />

heißt der lokale Abbruchfehler.<br />

(Ah) heißt konsistent mit (A), wenn<br />

�τh�h = max �τh(t)� → 0 für h → 0. (3.16)<br />

t∈Ih<br />

(Ah) hat (mindestens) die Konsistenzordnung p > 0, wenn es H > 0, C > 0 gibt,<br />

so dass<br />

�τh�h ≤ Ch p<br />

für h < H (3.17)<br />

d.h. kurz �τh�h = O(h p ).<br />

hjτh(tj) ist der Fehler im Schritt tj → tj+1, wenn im exakten Wert y(tj) bei tj gestartet<br />

wird, also der minimale Fehler in diesem Schritt. Allgemein ist also die beste Situation,<br />

dass sich diese Fehler aufaddieren, so dass ein Gesamtfehler in der Größenordnung<br />

N�<br />

hi�τh(ti)� =: �τh� ′ h ≤ (T − t0)�τh�h<br />

(3.18)<br />

i=0<br />

entsteht. Der beste Fall ist also, dass gilt:<br />

Konvergenz(ordnung) = Konsistenz(ordnung) .<br />

Bei Stabilität ist dies der Fall (→ Abschnitt 1.3). Wir werden also vorerst die Konsistenz(ordnung)<br />

von Verfahren untersuchen.<br />

Bemerkung 3.9 a) Wird in (Ah) nur yh(t0) = y0h (eine Approximation von y0)<br />

gefordert, ist bei Konsistenz(ordnung p) �y0h − y0� → 0 bzw. �y0h − y0� = O(h p )<br />

zu ergänzen. τh könnte statt in � · �h auch in der echt schwächeren Norm � · � ′ h<br />

gemessen werden (Beziehung wie zwischen L ∞ [a, b] und L 1 [a, b]).<br />

76


) Zum Wahl den Normen: Für ein festes Problem (A) ist die Anzahl den Konponenten<br />

fest, daher ist die Wahl an Norm �.� auf dem R n (wegen ihrer Äquivalenz)<br />

nicht essentiel.<br />

Für die Gitterfunktionen f : I ′ h → Rn ist das anders, da<br />

|I ′ h| = N + 2<br />

nicht fest ist, sondern N → ∞ (⇔ hmax → 0) betrachtet wird, und mit Gitterfunktionen<br />

überhaupt f ∈ C(I) belieblig gut approximationen zu bekommen.<br />

Mögliche Normen auf den Gitterfunktionen auf I ′ h sind:<br />

• �f� = �f�h := max t∈I ′ h �f(t)� die (diskrete) Maximumnorm;<br />

• �f� = �f� ′ h := � N<br />

• �f� = �f� ′ h :=<br />

i=0 hi�f(ti)� die (diskrete) L1-Norm; � �1<br />

�N<br />

2 2<br />

i=0 hi�f(ti)�<br />

Von den analogen Situation auf C(I) erwartet man:<br />

�.�h ist echt stärker als �.� ′′ h<br />

�.� ′′ h ist echt stärker als �.�′ h .<br />

die (diskrete) L 2 -Norm.<br />

Man zeige dies, indem man scharfe Äquivalenzkonstanten findet (für N fest) und<br />

diesen Verhalten für N → ∞ untersucht.<br />

Lemma 3.10 Es sind äquivalent:<br />

(1) (Ah) ist konsistent,<br />

(2) max �fh(t, y(t)) − f(t, y(t))� → 0 für h → 0 .<br />

t∈Ih<br />

Beweis:<br />

y ∈ C 1 (I) ⇒ y ′ ist gleichmäßig stetig auf I und (∗)<br />

⇒<br />

N<br />

max<br />

j=0<br />

und<br />

1<br />

(y(tj+1) − y(tj)) − y ′ (tj) = 1<br />

hj<br />

�<br />

�<br />

�<br />

1<br />

� (y(tj+1) − y(tj)) − y ′ �<br />

�<br />

(tj) �<br />

�<br />

hj<br />

hj<br />

hj �<br />

0<br />

(y ′ (tj + t) − y ′ (tj)) dt<br />

≤ N<br />

max<br />

j=0 max �y<br />

0≤t≤hj<br />

′ (tj + t) − y ′ (tj)� → 0 für h → 0 wegen (∗)<br />

77


⇒ Behauptung.<br />

�<br />

1<br />

τh(tj) = (y(tj+1) − y(tj)) − y<br />

hj<br />

′ �<br />

(tj) + (f(tj, y(tj)) − fh(tj, y(tj)))<br />

Im Allgemeinen ist fh(tj, y) = ϕ(hj, tj, y) für y ∈ R n . Ist ϕ stetig in h, so ist also<br />

hinreichend für Konsistenz<br />

ϕ(0, t, y) = f(t, y) für alle t ∈ Ih, y ∈ R n . (3.19)<br />

Konsistenzordnungen können durch Taylorentwicklung bestimmt werden.<br />

Korollar 3.11 1) Das explizite Eulerverfahren ist konsistent mit (A).<br />

2) Ist f ∈ C 1 (U), gilt für das explizite Eulerverfahren<br />

�τh�h ≤ max �Df(t, y(t))�h<br />

t∈I 2 .<br />

3) Ist f ∈ C p (U), so gilt für die Methode der Taylorentwicklung<br />

Beweis:<br />

�τh�h ≤ max<br />

t∈I �(Dp h<br />

f)(t, y(t))�<br />

p<br />

(p + 1)!<br />

1) Lemma 3.10 : f = fh<br />

2) τh(tj) = 1<br />

�<br />

y(tj) + hjy ′ (tj) + h2j 2 y′′ �<br />

(s) − y(tj)<br />

hj<br />

− f(tj, y(tj)) für ein s ∈ [tj, tj+1]<br />

= Df(s, y)(s)) hj<br />

2<br />

3) τh(tj) = 1<br />

�<br />

y(tj) +<br />

hj<br />

p�<br />

k=1<br />

h k j<br />

k!<br />

� D k−1 f � (tj, y(tj))<br />

+ hp+1 j<br />

(p + 1)! (Dpf)(s, y(s)) − y(tj)<br />

− p�<br />

k=1<br />

h k−1<br />

j<br />

k!<br />

�<br />

(D k−1 f)(tj, y(tj)) für ein s ∈ [tj, tj+1] .<br />

78<br />

✷<br />


3.2 Runge–Kutta-Verfahren<br />

3.2.1 Explizite Runge–Kutta-Verfahren<br />

Das Verfahren von Heun (3.12) läßt sich auch schreiben mittels<br />

als<br />

k1(t, h, y) := f(t, y)<br />

k2(t, h, y) := f(t + α2h, y + hβ21k1(t, h, y))<br />

mit α2 = 1, β21 = 1<br />

yj+1 = yj + hj(γ1k1(tj, hj, yj) + γ2k2(tj, hj, yj))<br />

mit γ1 = γ2 = 1<br />

2 .<br />

Ein allgemeines Verfahren dieser Art (explizites Runge–Kutta (RK) Verfahren<br />

2. Stufe) ergibt sich durch Wahl von α2, β21, γ1, γ2, dargestellt als<br />

α2 β21<br />

1 1<br />

1<br />

2<br />

γ1<br />

1<br />

2<br />

γ2<br />

, also<br />

,<br />

1<br />

2<br />

1<br />

2<br />

0 1<br />

(3.12) : Heun (3.11) : Verbessertes Polygonzug-Verfahren<br />

Allgemein definiert man die Klasse der<br />

l-stufigen expliziten Runge–Kutta Verfahren<br />

79


für l ∈ N durch Vorgabe von<br />

α2, . . .,αl, βiν, i = 2, . . .,l, ν = 1, . . ., i − 1,<br />

γ1, . . .,γl, kurz dargestellt als<br />

werden rekursiv definiert durch<br />

α2 β21<br />

α3 β31 β32<br />

.<br />

. ..<br />

αl βl1 βl2 . . . βl,l−1<br />

γ1 γ2 . . . γl−1 γl<br />

ki : Ih × [0, H] × R n → R n<br />

k1(t, h, y) := f(t, y)<br />

und das RK Verfahren durch<br />

d.h. hier ist<br />

für i = 1, . . ., l<br />

�<br />

�<br />

�i−1<br />

ki(t, h, y) := f t + αih, y + h βiνkν(t, h, y)<br />

fh(tj, y) =<br />

i = 2, . . .,l<br />

y0 vorgegeben,<br />

yj+1 = yj + hj<br />

l�<br />

i=1<br />

Beispiele für RK Verfahren 4. Stufe sind<br />

l�<br />

ν=1<br />

ν=1<br />

γνkν(tj, hj, yj),<br />

(3.20)<br />

(3.21)<br />

γiki(tj, hj, y) für tj ∈ Ih, y ∈ R n . (3.22)<br />

80


Das “klassische” Runge–Kutta Verfahren<br />

1 1<br />

2 2<br />

1<br />

2<br />

0<br />

1<br />

2<br />

1 0 0 1<br />

1<br />

6<br />

1<br />

3<br />

1<br />

3<br />

1<br />

6<br />

Die 3/8 Formel<br />

1 1<br />

3 3<br />

2<br />

3<br />

− 1<br />

3<br />

1<br />

1 1 −1 1<br />

1<br />

8<br />

3<br />

8<br />

Das RK Verfahren von R. England<br />

3<br />

8<br />

1 1<br />

2 2<br />

1 1 1<br />

2 4 4<br />

1 0 −1 2<br />

1<br />

6<br />

0<br />

Die “optimale” Formel von Kuntzmann<br />

2<br />

5<br />

3<br />

5<br />

1<br />

2<br />

5<br />

− 3<br />

20<br />

3<br />

4<br />

19<br />

44 −15<br />

44<br />

11<br />

72<br />

25<br />

72<br />

81<br />

2<br />

3<br />

40<br />

44<br />

25<br />

72<br />

1<br />

8<br />

1<br />

6<br />

11<br />

72<br />

(3.23)<br />

(3.24)<br />

(3.25)<br />

(3.26)


Bei Stufenzahl l hat man für einen Schritt l Auswertungen von f. Ein Gesichtspunkt<br />

bei der Wahl der Parameter αi, βiν, γi ist also, eine möglichst hohe Konsistenzordnung<br />

für genügend glatte f zu erreichen. Es gilt:<br />

Lemma 3.12 Das explizite RK Verfahren ist konsistent mit (A) für alle zulässigen<br />

f ⇐⇒ l�<br />

γi = 1.<br />

i=1<br />

Beweis:<br />

“ ⇒ ” f ≡ 1 ⇒ ki ≡ 1 ⇒ fh ≡ l�<br />

γi<br />

i=1<br />

Lemma 3.10: Konsistenz ⇐⇒<br />

� �<br />

� l� �<br />

� �<br />

max � γi − 1�<br />

→ 0<br />

t∈Ih � �<br />

⇐⇒<br />

i=1<br />

“⇐” Es gilt:<br />

Es existiert H > 0, C > 0 so dass<br />

l�<br />

γi = 1<br />

�ki(t, h, y(t))� ≤ C für t ∈ Ih, h ≤ H, i = 1, . . .,l, (∗)<br />

(Beweis durch Induktion über i).<br />

Also<br />

max �fh(t, y(t)) − f(t, y(t))�<br />

t∈Ih<br />

�<br />

= max<br />

tj∈Ih<br />

�<br />

� l�<br />

�<br />

�<br />

� γi(ki(tj, hj, y(tj)) − f(tj, y(tj)) �<br />

�<br />

i=1<br />

�<br />

�<br />

�<br />

�f(tj �<br />

i−1 �<br />

�<br />

+ αihj, y(tj) + hj βiνkν(tj, hj, y(tj)) − f(tj, y(tj)) �<br />

� → 0 für h → 0,<br />

≤ max<br />

t j ∈I h<br />

i=1,...,l<br />

ν=1<br />

da (∗) gilt und f etwa auf {(t, y) | t ∈ I, �y − y(t)� ≤ 1} gleichmäßig stetig ist.<br />

Eine notwendige Forderung ist also<br />

Bezüglich der αi gilt:<br />

l�<br />

i=1<br />

i=1<br />

γi = 1 . (3.27)<br />

82<br />


(1) Durch Wahl der αi läßt sich i. Allg. die Konsistenzordnung nicht verbessern (da<br />

sie für autonome rechte Seiten, d.h. f = f(y), keine Rolle spielen).<br />

(2) Ein nichtautonomes System y ′ = f(t, y), y(t0) = y0 kann äquivalent in ein autonomes<br />

umgeschrieben werden durch Aufnahme von t als (n+1)-ter Komponente<br />

mittels y ′ n+1 (t) = 1, yn+1(t0) = t0, d.h.<br />

� y ′<br />

y ′ n+1<br />

⎛<br />

� ⎜<br />

= ⎜<br />

⎝<br />

y ′ 1<br />

.<br />

y ′ n<br />

y ′ n+1<br />

⎞<br />

⎟<br />

⎠ =<br />

⎛<br />

⎞<br />

f1(yn+1, y1, . . .,yn)<br />

⎜<br />

⎟<br />

⎜<br />

.<br />

⎟<br />

⎜<br />

⎝ fn(yn+1, y1, . . .,yn) ⎟<br />

⎠<br />

1<br />

,<br />

� y<br />

yn+1<br />

(yi(t) hier Komponenten von y(t) , keine Näherungslösung !).<br />

�<br />

(t0) =<br />

� y0<br />

t0<br />

�<br />

(3.28)<br />

Wird ein konsistentes RK Verfahren auf (3.28) angewendet, wird bei (3.27) yn+1 exakt<br />

integriert, d.h.<br />

yj,n+1 = tj , (yj Näherung im j-ten Schritt).<br />

In der nichtautonomen Formulierung gilt<br />

�<br />

�<br />

�i−1<br />

ki(t, h, y) = f t + αih, y + h βiνkν(t, h, y) ,<br />

in der autonomen Formulierung in den ersten n Komponenten<br />

�<br />

�i−1<br />

�i−1<br />

ˆki(t, h, y) = f t + βiν h, y + h βiν ˆ �<br />

kν(t, h, y) ,<br />

ν=1<br />

wobei ki, ˆ ki ∈ R n und benutzt wurde, dass ˆ ki,n+1 ≡ 1 (= fn+1). Es gilt also ki = ˆ ki<br />

i. Allg., das heißt für beide Formulierungen liefert das RK Verfahren das gleiche, genau<br />

dann wenn<br />

αi =<br />

�i−1<br />

ν=1<br />

ν=1<br />

ν=1<br />

βiν i = 2, . . ., l . (3.29)<br />

(3.27), (3.29) soll im Folgenden immer erfüllt sein, das trifft auf die obigen Beispiele zu.<br />

Für die Stufe l = 2 sind also 4 Parameter α2, β21, γ1, γ2 zu bestimmen, die γ1+γ2 = 1<br />

und β21 = α2 erfüllen sollen. Es gilt:<br />

83<br />

,


Satz 3.13 Sei f ∈ C 2 (U), U nach (3.1), dann hat ein RK Verfahren der Stufe 2 die<br />

Konsistenzordnung 2 bei (3.29) genau dann, wenn γ1 + γ2 = 1 und<br />

γ2β21 = 1<br />

2<br />

Ist f ∈ C 3 (U), gilt zusätzlich bei (3.30)<br />

τh(tj) = 1<br />

�<br />

6<br />

(1 − 3γ2β 2 21 )fT ∂2f f +<br />

∂y2 gilt . (3.30)<br />

� �T ∂f ∂f<br />

∂y ∂y f<br />

�<br />

(tj, y(tj))h 2 j + O(h3j ) . (3.31)<br />

für autonome f, d.h. die Ordnung ist im Allgemeinen nicht zu verbessern.<br />

– zur Interpretation der Terme in (3.31) siehe (3.32) –<br />

Beweis: (durch Taylorentwicklung)<br />

nur von (3.31): der Index j wird weggelassen<br />

nach (3.2), (3.3).<br />

Dabei ist<br />

y(t + h) = y(t) + hy ′ (t) + h2<br />

2 y′′ (t) + h3<br />

6 y′′′ (t) + O(h 4 )<br />

= y(t) + hf(y(t)) + h2 ∂f<br />

2 ∂y (y(t))f(y(t))<br />

+ h3<br />

�<br />

f<br />

6<br />

T ∂2 � �T f ∂f ∂f<br />

f +<br />

∂y2 ∂y ∂y f<br />

�<br />

(y(t)) + O(h 4 )<br />

f T ∂2 �<br />

f<br />

f = f<br />

∂y2 T ∂2 �<br />

fi<br />

f ,<br />

∂y2 i<br />

∂2fi ∂y2 die Hessematrix von fi , (3.32)<br />

��∂f �T ∂f<br />

∂y ∂y f<br />

�<br />

= ∂fT i ∂f<br />

f .<br />

∂y ∂y<br />

fh(t, y(t)) = γ1k1(t, h, y(t)) + γ2k2(t, h, y(t))<br />

= γ1f(y(t)) + γ2f(y(t) + β21hf(y(t))<br />

= γ1f(y(t)) + γ2<br />

+ β2 21h 2<br />

2<br />

�<br />

�<br />

i<br />

f T ∂2f f<br />

∂y2 f(y(t)) + β21h ∂f<br />

(y(t)) · f(y(t))<br />

∂y<br />

�<br />

(y(t)) + O(h 3 �<br />

)<br />

84<br />

(∗)


(∗)<br />

⇒ – Argument “y(t)” wird weggelassen –<br />

τh(t) = 1<br />

h (y(t + h) − y(t)) − fh(t, y(t))<br />

� �<br />

1 ∂f<br />

= (1 − γ1 − γ2) f + − γ2β21 · f h<br />

� �� � 2 ∂y<br />

= 0 � �� �<br />

= 0<br />

+ (1 − 3γ2β2 21 )fT ∂2f h2<br />

f<br />

∂y2 6 +<br />

� �T ∂f ∂f<br />

∂y ∂y<br />

⇒ Behauptung (3.31).<br />

f h2<br />

6 + O(h3 )<br />

Bei f ∈ C 2 (U) entwickelt man einen Term weniger, die Annahme, dass f autonom sei,<br />

ist keine Einschränkung wegen (3.29).<br />

Die Gleichungen<br />

β21 = α2 , γ1 + γ2 = 1 , γ2β21 = 1<br />

2<br />

haben die einparametrige Lösungsschar:<br />

β21 gegeben: γ2 = 1<br />

2 /β21, γ1 = 1 − γ2, zum Beispiel<br />

β21 = 1<br />

2 ⇒ γ2 = 1, γ1 = 0 : verbesserter Polygonzug (3.11)<br />

β21 = 1 ⇒ γ2 = γ1 = 1<br />

:<br />

2<br />

Heun (3.12)<br />

Mit wachsender Stufe l werden die Rechnungen komplizierter:<br />

Satz 3.14 Sei f ∈ C 4 (U), dann ist für ein RK Verfahren der Stufe l = 3 die maximale<br />

Konsistenzordnung p = 3, die bei (3.29) genau dann gilt, wenn γ1 + γ2 + γ3 = 1 und<br />

α2γ2 + α3γ3 = 1<br />

2<br />

α 2 2 γ2 + α 2 3 γ3 = 1<br />

3<br />

α2γ3β32 = 1<br />

6 ,<br />

✷<br />

(3.33)<br />

d.h. 4 Gleichungen für 6 Unbekannte gelten. αi, i = 2, . . .,l wobei die Gleichungen<br />

(3.29) nicht mitgezählt werden.<br />

85


Beweis: Übungsaufgabe (für n = 1)<br />

Beispiel: Verfahren von Runge<br />

1 1<br />

1<br />

2<br />

1<br />

4<br />

1<br />

6<br />

1<br />

4<br />

1<br />

6<br />

2<br />

3<br />

✷<br />

(3.34)<br />

Für l = 4 entstehen 8 Gleichungen für die 10 freien Parameter zur Erreichung der<br />

Konsistenzordnung p = 4. (→ Grigorieff I, S. 19). (3.23)–(3.26) erfüllen alle<br />

diese Gleichungen. Das war der Stand der Kenntnis um ca. 1900 durch Runge,<br />

Kutta, Heun. Bei wachsendem l und p ergeben sich schließlich mehr Gleichungen<br />

als Unbekannte. Zum Beispiel um zu klären, ob p = 8 bei l = 10 möglich ist, muss<br />

ein nichtlineares Gleichungssystem mit 200 Gleichungen in 55 Unbekannten gelöst<br />

werden. Es gilt<br />

Ordnung p 1 2 3 4 5 6 7 8 9 10<br />

Anzahl der 1 2 4 8 17 37 85 200 486 1205<br />

Bedingungen<br />

Von J.C. Butcher wurde 1960–85 gezeigt<br />

Stufenzahl l 1 2 3 4 5 6 7 8 9<br />

Maximale 1 2 3 4 4 5 6 6 7<br />

Ordnung p<br />

Differenz l − p 0 0 0 0 1 1 1 2 2<br />

Butcher 85: p ≥ 8 ist nicht mit l = p+2 möglich. Maximal explizit erreichte Ordnung<br />

p = 10 mit l = 18 (Curtis (75)) und l = 17 (Hairer (78)).<br />

Explizite (RK) Verfahren haben das Problem, dass für sogenannte “steife” DGL (→<br />

Abschnitt 3.11) die Schrittweite sehr klein gemacht werden muss, damit die Näherung<br />

wenigstens qualitativ stimmt.<br />

86


Beispiel: n = 1<br />

y ′ = qy (das lineare Testproblem)<br />

y(0) = 1, q = −1000<br />

Gesucht ist y(1) = e −1000 (= 0 in jeder gebräuchlichen Arithmetik).<br />

Das explizite Eulerverfahren mit konstanter Schrittweite h liefert<br />

d.h.<br />

yj+1 = (1 + qh)yj ⇒<br />

yj = (1 + qh) j y0 ⇒ |yN+1| = |1 + qh| N+1<br />

h 1 10 −1 10 −2 10 −3 10 −4<br />

|yN+1| 999 99 10 9 100 0 0.9 10000 (= 0 auf Rechner)<br />

Dabei ist N + 1 = 1/h .<br />

(3.35)<br />

D.h. bei zu großen Schrittweiten explodiert hier die Näherung. Nur implizite Verfahren<br />

haben nicht notwendig diese Eigenschaft. Wünschenswert sind absolut stabile<br />

Verfahren, d.h. solche die hier unabhängig von der Größe von h eine qualitativ richtige<br />

Lösung liefern (→ Abschnitt 3.11).<br />

3.2.2 Implizite Runge–Kutta-Verfahren<br />

Beispiele für implizite Verfahren sind die<br />

l-stufigen impliziten Runge–Kutta Verfahren<br />

definiert durch α1, α2, . . .,αl, βiν, i, ν = 1, . . ., l, γ1, . . ., γl, kurz<br />

α1 β11 . . . . . . β1l<br />

α2<br />

.<br />

.<br />

.<br />

αl βl1 . . . . . . βll<br />

γ1 . . . . . . γl<br />

87<br />

.<br />

.


ki : Ih × [0, H] × R n ∩ {(t, h, y) | (t, y) ∈ Û} → Rn , i = 1, . . .,l , sind gegeben<br />

durch<br />

ki(t, h, y) = f<br />

�<br />

t + αih, y + h<br />

l�<br />

�<br />

βiνkν(t, h, y) , i = 1, . . .,l . (3.36)<br />

ν=1<br />

Û ist eine geeignete Umgebung von (t, y(t)), so dass (3.36) wohldefiniert ist (s.u.). Das<br />

Verfahren lautet<br />

y0 vorgegeben,<br />

l�<br />

γiki(tj, hj, yj), j = 0, . . .,N .<br />

yj+1 = yj + hj<br />

i=1<br />

(3.37)<br />

Die expliziten RK Verfahren sind also der Spezialfall α1 = 0, βiν = 0 für i =<br />

1, . . .,l, ν = i, . . .,l (oberes Dreieck von β einschließlich Diagonale).<br />

Vorteil der impliziten RK Verfahren:<br />

Maximale Konsistenzordnung 2l und absolute Stabilität sind möglich.<br />

Nachteil: Pro Integrationschritt ist das Auflösen von<br />

xi = f<br />

�<br />

t + αih, y + h<br />

l�<br />

ν=1<br />

βiνxν<br />

mit den Unbekannten x = (x1, . . ., xl) ∈ R nl nötig.<br />

Analog zu oben ergeben sich die Forderungen<br />

Beispiele sind:<br />

(i) l = 1<br />

αi =<br />

l�<br />

ν=1<br />

µ µ<br />

1<br />

�<br />

, i = 1, . . .,l , (3.38)<br />

βiν , i = 1, . . .,l , (3.39)<br />

l�<br />

i=1<br />

γi = 1 . (3.40)<br />

88<br />

mit µ ∈ [0, 1]


⇒<br />

⇒<br />

yj+1 = yj + hjk1 , k1 = f(tj + µhj, yj + µhjk1)<br />

k1 = f(tj + µhj, (1 − µ)yj + µ<br />

yj+1<br />

� �� �<br />

(yj + hjk1) ) ⇒<br />

yj+1 = yj + hjf(tj + µhj, (1 − µ)yj + µyj+1) (3.41)<br />

µ = 0 : (explizites) Euler-Verfahren<br />

µ = 1 : implizites Euler-Verfahren<br />

µ = 1<br />

:<br />

2<br />

Crank–Nicolson-Verfahren<br />

(ii) l = 2<br />

0 0 0<br />

1 1 − µ µ<br />

1 − µ µ<br />

mit µ ∈ [0, 1] .<br />

d.h. k1 ist explizit gegeben durch k1 = f, so dass nur eine Unbekannte vorliegt.<br />

yj+1 = yj + hj((1 − µ)k1 + µk2)<br />

k1 = f(tj, yj)<br />

k2 = f(tj + hj, yj + hj((1 − µ)k1 + µk2))<br />

⇒ k2 = f(tj+1, yj+1)<br />

yj+1 = yj + hj((1 − µ)f(tj, yj) + µf(tj+1, yj+1)) (3.42)<br />

µ = 1 : implizites Euler-Verfahren,<br />

µ = 1<br />

2<br />

: implizite Trapezregel,<br />

µ = 0 : (explizites) Euler-Verfahren.<br />

Die implizite Trapezregel geht in das Verfahren von Heun über, wenn in der rechten<br />

Seite von (3.42) yj+1 durch einen expliziten Eulerschritt approximiert wird.<br />

89


Ein Vorteil der impliziten RK Verfahren ist die höhere erreichbare Konsistenzordnung,<br />

da mehr Parameter als bei den expliziten Verfahren angepasst werden können.<br />

Die maximalen Konsistenzordnungen bei Stufe l sind<br />

(1): Allgemeiner Fall (Gauß-Form): maximale Konsistenzordnung = 2l<br />

(2): Radau-Form: maximale Konsistenzordnung = 2l − 1<br />

0 0 . . . 0<br />

α2 β21 . . . β2l<br />

.<br />

.<br />

αl βl1 . . . βll<br />

.<br />

γ1 . . . γl<br />

α1 β11 . . . β1l−1 0<br />

α2<br />

.<br />

. . . .<br />

1 βl1 . . . βll−1 0<br />

γ1 . . . γl−1 γl<br />

Hier ist nur ein Gleichungssystem in (x2, . . .,xl) (da k1 = f) bzw. (x1, . . .,xl−1) (da<br />

k1, . . .,kl unabhängig von kl) (vgl. (3.38)) zu lösen.<br />

(3): Labatto-Form: maximale Konsistenzordnung = 2l − 2<br />

0 0 . . . 0 0<br />

α2 β21 . . . β2l−1 0<br />

.<br />

.<br />

αl−1 βl−1,1 . . . βl−1,l−1 .<br />

1 βl,1 . . . βl,l−1 0<br />

γ1 . . . γl−1 γl<br />

Die angegebenen Konsistenzordnungen sind die maximal erreichbaren (ohne Beweis,<br />

siehe [Deuflhard/Bornemann] oder [Strehmel/Weiner]).<br />

In Abschnitt 1.4 werden Beispiele dafür entwickelt werden.<br />

Die eindeutige Auflösbarkeit des Gleichungssystems (3.38) für kleine h wird gesichert<br />

durch:<br />

Satz 3.15 1) Zu jeder Umgebung V von {(t, f(t, y(t))) | t ∈ I} existieren eine<br />

Umgebung U von {(t, y(t)) | t ∈ I}, wobei y die Lösung von (A) ist, und ein<br />

90<br />

.<br />

.<br />

.<br />

.


H > 0, so dass für h ≤ H und (t, y) ∈ Ih ×R n ∩U (3.38) eine eindeutige Lösung<br />

(x1, . . ., xl) ∈ R nl besitzt, d.h. ki(t, h, y) = xi, i = 1, . . ., l, und<br />

(t, ki(t, h, y)) ∈ V für (t, y) ∈ Ih × R n ∩ U, h ≤ H. (3.43)<br />

2) Ist f global Lipschitzstetig in y mit Lipschitzkonstante L, so reicht für H<br />

q := HL l<br />

max<br />

µ=1<br />

l�<br />

ν=1<br />

und (x,i)i ist Grenzwert der Fixpunktiteration<br />

x (r)<br />

,i<br />

– Zur Notation –<br />

= f<br />

�<br />

t + αih, y + h l�<br />

ν=1<br />

|βµν| = HL�β�∞ < 1 (3.44)<br />

βiνx (r−1)<br />

�<br />

,ν<br />

r = 1, . . ., x (0)<br />

,i := f(t, y) (zum Beispiel)<br />

x = xj,i, dabei sind,<br />

j = 1, . . .,N + 1 für die j-ten Schritt,<br />

i = 1, . . .,l für die Stufen.<br />

Wird ein Index unterdrückt, wird x = x,i b ... x = xj, benutzt.<br />

, i = 1, . . ., l ,<br />

(3.45)<br />

Beweis:<br />

Wie beweisen nur 2), 1) kann darauf zurückgeführt werden. (3.38) hat die Fixpunktgestalt<br />

�<br />

l�<br />

�<br />

x = F(x) mit Fi(x) = f t + αih, y + h , i = 1, . . .,l<br />

ν=1<br />

βiνx,ν<br />

für feste t, h, y. Es reicht also zu zeigen, dass F eine Kontraktion in R nl ist:<br />

Es gilt für x = (x,ν)ν, z = (z,ν)ν mit xν, zν ∈ R n :<br />

�Fi(x) − Fi(z)� ≤ Lh l�<br />

|βiν| �x,ν − z,ν�<br />

ν=1<br />

≤ q�x − z� für h ≤ H,<br />

wenn etwa � · � = � · �∞ auf R n und dann auch auf R nl gewählt wird. Also:<br />

�F(x) − F(z)� ≤ q�x − z� für x, z ∈ R nl<br />

91<br />


Es gibt also eine Umgebung Û von {(t, y(t)) | t ∈ I} und H > 0, so dass ki und damit<br />

fh = l�<br />

γiki dort wohldefiniert sind.<br />

i=1<br />

Bestimmt man die ki nach (3.45), so gilt (→ Numerik I):<br />

� �<br />

� (r)<br />

x − x� q<br />

≤ r �<br />

� (1) (0)<br />

x − x<br />

1 − q<br />

� � (3.46)<br />

Man beachte, dass die Näherung yj+1 und damit (ki(tj, hj, yj)) i =: (xj+1,i)i nur in<br />

der Genauigkeitsordnung berechnet werden muss, wie yj+1 den exakten Werte y(tj+1)<br />

approximiert. Da bestenfalls asymptotische Fehlerabschätzungen<br />

�y(tj+1) − yj+1� ≤ C1h p<br />

mit einer schwer scharf abzuschätzenden Konstante C1 bekannt sind (siehe die obigen<br />

Konsistenzordnungsaussagen und dann Satz 3.22) ist eine solche Überlegung asymptotisch<br />

in h zu verstehen. Berechnet man also anstelle der korrekten Näherung<br />

nur<br />

yj+1 = yj + hj<br />

y (r)<br />

j+1 = y(r) j + hj<br />

dann gilt für den Fehler der Iteration wegen<br />

l�<br />

i=1<br />

l�<br />

i=1<br />

�yj+1 − y (r)<br />

j+1� ≤ �yj − y (r)<br />

j � + hj<br />

γixj+1,i<br />

γix (r)<br />

j+1,i ,<br />

l�<br />

i=1<br />

γi�xj+1,i − x (r)<br />

j+1,i �<br />

≤ �yj − y (r)<br />

j � + hj�xj+1, − x (r)<br />

j+1, �∞<br />

nach dem diskreten Lemma von Gronwall (Lemma 1.4)<br />

�yj − y (r)<br />

j<br />

j−1 �<br />

� ≤<br />

Also sollten die Iterationen x (r)<br />

j, erfüllen:<br />

k=0<br />

hk�xk, − x (r)<br />

k, �∞<br />

≤ (T − t0)�xj, − x (r)<br />

j, �∞.<br />

�xj, − x (r)<br />

j, �∞ ≤ C2h p .<br />

Dies ist wegen (3.46) im Fall q


und wegen q ∼ h durch<br />

r = p<br />

oder zur Sicherheit r = p+1 also eine kleine Iterationsanzahl. Für q nahe bei 1 gilt diese<br />

Überlegung nicht und eine Lösung der Fixpunktgleichung (als Nullstellenproblem) mit<br />

dem Newton-Verfahren ist vorzuziehen. Dies benötigt aber zusätzlich zu Auswertungen<br />

von f auch solche von ∂f<br />

∂y .<br />

Implizite Einschrittverfahren (wie die impliziten RK Verfahren) ordnen sich in die<br />

Definition (Ah) von Definition 3.5 ein, die dann zur Definition eines allgemeineren<br />

Einschrittverfahrens wird: Man muss dazu nur zulassen, dass fh eventuell nicht explizit<br />

gegeben ist, sondern sich fh(t, y) durch Lösen eines Gleichungssystems ergibt. Dazu ist<br />

eventuell der Definitionsbereich einzuschränken auf Ih ×R n ∩U, wobei U eine geeignete<br />

Umgebung von {(t, y(t) | t ∈ I} darstellt (siehe Satz 3.15). In diesem Sinn ist auch die<br />

Definition des lokalen Abbruchfehlers Definition 3.8 zu interpretieren.<br />

Lemma 3.16 Es gibt H > 0, so dass für h ≤ H gilt: Das implizite RK Verfahren ist<br />

konsistent mit (A) für alle zulässigen f ⇐⇒ l�<br />

γi = 1.<br />

Beweis:<br />

Identisch mit Lemma 3.12.<br />

“ ⇒” “ ⇐” braucht Beschränktheit der ki(t, h, y(t)) für h < H.<br />

Für die Beispiele gilt:<br />

Satz 3.17 Sei f ∈ C 2 (U), dann haben (3.41) und (3.42) die Konsistenzordnung 1<br />

und:<br />

Konsistenzordnung = 2 ⇐⇒ µ = 1<br />

2 .<br />

Ordnung 3 ist i. Allg. nicht möglich.<br />

Beweis:<br />

Zu (3.42) ((3.41) analog).<br />

Sei t ∈ Ih, h ≤ H, so dass fh wohldefiniert für (y, t) ∈ Û, wobei Û nach Satz 3.15.<br />

τh(t) = 1<br />

(y(t + h) − y(t)) − (1 − µ)f(y(t)) − µf(y(t + h)) ,<br />

h<br />

93<br />

i=1<br />


wobei oBdA. f autonom wegen (3.39), (3.40) angenommen wurde und eine skalare<br />

Gleichung (n = 1) betrachtet wird. Also: (ohne Argument “y(t)”)<br />

Taylorentwicklung liefert wegen (3.2)<br />

τh(t) = f + f ′ f h<br />

2 + O(h2 ) − (1 − µ)f − µy ′ (t + h)<br />

= µf + f ′ f h<br />

=<br />

� �<br />

1<br />

− µ<br />

2<br />

2 + O(h2 ) − µf − µy ′′ (t)h + O(h 2 )<br />

f ′ f h + O(h 2 ).<br />

Die obige Definition von τh(t) ist nicht ganz korrekt: Eigentlich ist der letzte Summand<br />

−µf(y(t + h)) zu ersetzen durch −µk2(y(t)). Aber wegen<br />

bedeutet dies<br />

also mit Taylorentwicklung<br />

−µk2(y(t)) = −µf(y(t) + h(1 − µ)f(y(t)) + hµk2(y(t)))<br />

−µk2(y(t)) = −µf(−hτh(t) + y(t + h))<br />

−µk2(y(t)) = −µf(y(t + h))<br />

+ µhτh(t)f ′ (y(t + h)) + 0(h2τ 2 h (t)) .<br />

Der erste Summand ist der oben benutzte, die Weiteren können in die � linke � Seite von<br />

1<br />

(∗) inkorporiert werden, was für h < H einen Vorfaktor C etwa aus , 2 ergibt, was<br />

2<br />

nichts an der Aussage ändert.<br />

3.3 Stabilität und Konvergenz<br />

Bis jetzt wurde nur der lokale Abbruchfehler τh(t) bei Annahme einer exakten Arithmetik<br />

mit exakter Auswertung von f betrachtet. Wir wollen nun den globalen Fehler<br />

y(tj) − yh(tj) bei exakter Rechnung bzw. y(tj) − ˜yh(tj) bei Rechnung in endlicher<br />

Arithmetik abschätzen. Dazu müssen wir wissen, wie das Einschrittverfahren (Ah) auf<br />

Störungen von fh und y0 reagiert, da<br />

y(tj) − ˜yh(tj) = y(tj) − yh(tj) + yh(tj) − ˜yh(tj) (3.47)<br />

94<br />

(∗)<br />


und<br />

Dhyh(t) = fh(t, yh(t)), t ∈ Ih, yh(t0) = y0, (3.48)<br />

Dhy(t) = fh(t, y(t)) + τh(t), t ∈ Ih, y(t0) = y0, (3.49)<br />

Dh˜yh(t) = fh(t, ˜yh(t)) + ρh(t)<br />

h(t) , t ∈ Ih, y(t0) = ˜y0. (3.50)<br />

Dabei ist ˜y0 der gerundete Startwert und ρh(tj) der im Schritt tj ❀ tj+1 entstehende<br />

Rundungs- und Auswertungsfehler, d.h.<br />

�ρh(t)� ist beschränkt gleichmäßig in h ≤ H ,<br />

i. Allg. in der Ordnung der Maschinengenauigkeit, aber<br />

nicht �ρh(t)� → 0 für h → 0.<br />

Die minimale Stabilitätsanforderung lautet also:<br />

(3.51)<br />

Definition 3.18 Das Einschrittverfahren (Ah) heißt asymptotisch stabil, wenn ein<br />

H > 0 existiert, so dass es zu ε > 0 ein δ > 0 gibt mit:<br />

Ist zh : I ′ h → Rn eine Lösung von<br />

dann gilt<br />

Dhzh(t) = fh(t, zh(t)) + σh(t), t ∈ Ih<br />

zh(t0) = y0 + β0 ,<br />

�β0� + �σh�h ≤ δ ⇒ �yh − zh�h ≤ ε gleichmäßig in h ≤ H (!)<br />

Der Begriff ist gegenüber Grigorieff I etwas abgeschwächt.<br />

Es folgt sofort:<br />

(3.52)<br />

Satz 3.19 Ist (Ah) konsistent mit (A) und asymptotisch stabil, so ist (Ah) konvergent.<br />

95


Beweis:<br />

Sei H > 0 nach Definition 3.18, ε > 0 beliebig und δ > 0 dazu nach Definition 3.18.<br />

Wegen der Konsistenz gibt es Hδ > 0 mit<br />

also wegen (3.52), (3.49)<br />

�τh�h ≤ δ für h ≤ Hδ<br />

�yh − y�h ≤ ε für h ≤ min(H, Hδ).<br />

Um auch eine Konvergenzordnung zu erhalten, muss die Stetigkeitsbeziehung in Definition<br />

3.18 quantifiziert werden. Dies geschieht durch die hinreichende Bedingung<br />

Definition 3.20 Das Einschrittverfahren (Ah) heißt Lipschitzstetig (L-stetig) in<br />

einer Umgebung U der Lösung y von (A), wenn es H > 0, L ≥ 0 gibt mit<br />

�fh(t, x) − fh(t, y)� ≤ L�x − y�<br />

für alle (t, x), (t, y) ∈ U ∩ Ih × R n , h ≤ H.<br />

Ist U = I × R n , heißt (Ah) global Lipschitzstetig.<br />

Satz 3.21 (Ah) sei konsistent mit (A) und L-stetig in einer Umgebung U von y. Dann<br />

ist (Ah) asymptotisch stabil. Genauer:<br />

Es gibt H0 > 0, δ0 > 0, so dass für h ≤ H0, �σh�h ≤ δ0 für die Lösung zh von (3.52)<br />

gilt<br />

�yh − zh�h ≤ (�β0� + (T − t0)�σh�h) exp(L(T − t0)). (3.53)<br />

Dabei ist L die Lipschitzkonstante von fh.<br />

Beweis:<br />

(1) fh sei global Lipschitzstetig:<br />

Sei h ≤ H0 := H aus Definition 3.20, δ0 beliebig. Setze<br />

e0 := �yh(t0) − zh(t0)� = �β0� ,<br />

ej := �yh(tj) − zh(tj)� = �yj − zj� .<br />

Dann folgt aus (3.52), (3.48)<br />

yj+1 − zj+1 = yj − zj + hj(fh(tj, yj) − fh(tj, zj)) − hjσh(tj)<br />

96<br />


⇒<br />

ej+1 ≤ ej + hjLej + hj�σh(tj)�, j = 0, . . .,N<br />

⇒<br />

Lemma 3.4, 1)<br />

ej ≤<br />

�<br />

e0 +<br />

j−1 �<br />

k=0<br />

⎛<br />

⎞<br />

� ⎜j−1<br />

⎟<br />

⎜�<br />

⎟<br />

hk�σh(tk)� exp ⎜ hk ⎜ L ⎟ ,<br />

⎝k=0<br />

⎠<br />

� �� �<br />

tj−t0<br />

für j = 0, . . ., N + 1 (3.54)<br />

⇒ bzw. direkt aus Lemma 3.4, 2)<br />

�yh − zh�h = �e�h ≤<br />

�<br />

e0 + N�<br />

k=0<br />

�<br />

hk�σh�h exp((T − t0)L)<br />

≤ (�β0� + (T − t0)�σh�h) exp((T − t0)L)<br />

Man beachte: Bis auf den Austausch von f durch fh ist also den Beweis identisch<br />

mit den von Satz 3.13 (siehe auch Überlegung nach Beweis von Lemma 3.4). Bis<br />

jetzt ist die Konsistenz nicht benutzt worden und die Abschätzung gilt auch ohne<br />

eine Kleinheitsannahme an �σh� h .<br />

(2) fh lokal L-stetig in y: wird auf (1) zurückgeführt.<br />

Skizze: fh wird außerhalb U konstant in y zu einem global L-stetigen ˆ fh fortgesetzt.<br />

Die dazugehörigen ˆyh, ˆzh erfüllen nach (1) die Abschätzung (3.53). Es<br />

reicht zu zeigen, dass für h ≤ H0, �σh�h ≤ σ0 gilt<br />

Also:<br />

ˆyh = yh, ˆzh = zh<br />

und dafür reicht (t, ˆyh(t)), (t, ˆzh(t)) ∈ U, da dort fh = ˆ fh. Dies wird mittels der<br />

Konsistenz gezeigt.<br />

Satz 3.22 (Ah) sei konsistent mit (A) und L-stetig in einer Umgebung U von y. Dann<br />

gibt es ein H > 0 so dass für h ≤ H :<br />

�yh − y�h ≤ (T − t0) exp(L(T − t0))�τh�h . (3.55)<br />

Insbesonderes impliziert die Konsistenzordnung p die Konvergenzordnung p.<br />

97<br />


Beweis:<br />

Es ist β0 = 0 und σh = τh und �σh�h ≤ δ0 (δ0 nach Satz 3.21) gilt für h ≤ H wegen<br />

der Konsistenz, also (3.53) ⇒ (3.55).<br />

✷<br />

Für die rundungsfehlerbehaftete Rechnung impliziert Satz 3.21<br />

Korollar 3.23 (Ah) sei konsistent mit (A) und fh sei global Lipschitzstetig. Dann gilt:<br />

�<br />

�<br />

1<br />

�yh − ˜yh�h ≤ �y0 − ˜y0� + (T − t0) �ρh�h exp(L(T − t0))<br />

hmin<br />

(3.56)<br />

wobei hmin = N<br />

min<br />

j=0 hj .<br />

Beweis: Nach dem Teil (1) des Beweis von Satz 3.50 darf in (3.53) δ0 > 0 beliebig<br />

gewählt werden, so dass die Abschätzung für β0 = y0 − ˜y0 und σh = ρh<br />

anwendbar ist.<br />

h<br />

✷<br />

Bei Konvergenz für h → 0 geht also der erste Fehleranteil in (3.47) gegen 0, der zweite<br />

aber gegen +∞, also<br />

Gesamtfehler<br />

h opt<br />

Diskretisierungsfehler5y h-y5h<br />

Rundungsfehler5y h-yh5h ~<br />

Es hat also keinen Sinn, die Schrittweite h beliebig klein zu machen, vielmehr gibt es<br />

ein optimales hopt.<br />

Die Konvergenz der RK Verfahren wird gesichert durch<br />

98<br />

h


Satz 3.24 Ein (implizites) RK Verfahren fh ist Lipschitzstetig in einer Umgebung U<br />

von y. Gilt also l�<br />

γi = 1, d.h. ist fh konsistent, so ist fh asymptotisch stabil und<br />

i=1<br />

konvergent, es gilt (3.55) und Konsistenzordnung p impliziert Konvergenzordnung p.<br />

Beweis:<br />

Wegen Satz 3.21, ist nur die L-Stetigkeit von fh in U zu zeigen für h ≤ H; U, H<br />

geeignet. Nach (G2) existiert zu δ > 0, L = Lδ ≥ 0 mit<br />

�f(t, y1) − f(t, y2)� ≤ L�y1 − y2� für t ∈ I,<br />

yi ∈ Uδ(y(t)) := {y | �y − y(ti)� ≤ δ}.<br />

Nach (3.42) existiert δ1 ≤ δ, H, C ≥ 0 so dass für h ≤ H<br />

�ki(t, h, z)� ≤ C für t ∈ Ih, z ∈ Uδ1(y(t)) . (#)<br />

Es gibt also H1 ≤ H, mit h ≤ H1 ⇒<br />

�<br />

zi + h �<br />

�<br />

βiνkν(t, h, zi)<br />

für z ∈ Uδ1(y(t)), t ∈ Ih.<br />

ν<br />

i<br />

∈ Uδ(y(t))<br />

Sei �k� := l<br />

max<br />

i=1 �ki� und das Argument (t, h) werde weggelassen.<br />

Also gilt für x, z ∈ Uδ1(y(t)), t ∈ Ih, h ≤ H1 :<br />

�ki(x) − ki(z)� ≤<br />

�<br />

�f t + αih, x + h �<br />

� �<br />

βiνkν(x) − f t + αih, z + h �<br />

⇒<br />

ν<br />

≤ L�x − z� + hL�β�∞�k(x) − k(z)� für alle i = 1, . . .,l<br />

(G2)<br />

ν<br />

βiν kν(z)<br />

�k(x) − k(y)� ≤ (1 − hL�β�∞) −1 L�x − z� für h < 1/(L�β�∞)<br />

⇒<br />

=: C1�x − z�<br />

�fh(t, h, x) − fh(t, h, z)� ≤<br />

l�<br />

γiC1�x − z�<br />

i=1<br />

für h < H2 := min(H1, 1/(L�β�∞))<br />

99<br />

�<br />


Die Abschätzung (3.55) ist für große L wegen des exponentiellen Faktors schlecht qualitativ<br />

zu verwenden, oft wird die Fehlerverstärkung sehr überschätzt. Die Herleitung<br />

von (3.55) über (3.53) läßt sich so veranschaulichen:<br />

y<br />

y 0<br />

y 1<br />

}<br />

exakte Lösung<br />

y 2<br />

}<br />

h 0 �(t )<br />

0<br />

h 1 �(t )<br />

1<br />

t0 t1 t2 t3 tN t<br />

t N+1=T<br />

�y(tN+1) − yN+1� ≤<br />

y N<br />

y(t )<br />

N+1<br />

y N+1<br />

}E N<br />

y zu (t ,y )<br />

N N<br />

}<br />

}<br />

globaler Fehler<br />

e N+1= 5 y(t )-y 5<br />

E 2<br />

E 1<br />

N�<br />

�Ei� ≤ . . .<br />

i=1<br />

N+1 N+1<br />

=Verfahrensschritt<br />

Alternativ kann der globale Fehler auf Fortpflanzung des lokalen Fehlers zurückgeführt<br />

werden. Die Lösung von (A) für t ≥ t zum Startwert y werde bezeichnet mit<br />

t ↦→ y(t; t, y) . (3.57)<br />

Die auftretenden Lösungen von (A) mögen in den verwendeten Intervallen eindeutig<br />

existieren, dann<br />

Definition 3.25 Sei y die exakte Lösung von (A), d. h. y = y(., t0, y0), yh die Näherungslösung<br />

nach (Ah). Dann heißt<br />

der lokale Fehler von (Ah).<br />

lh : I ′ h \{t0} → R n ,<br />

lh(tj) := y(tj; tj−1, yj−1) − yj, j = 1, . . .,N,<br />

100<br />


Der lokale Fehler von (Ah) ist eng mit dem lokalen Abbruchfehler verwandt: In<br />

beiden Fällen wird ein lokaler Schritt tj ❀ tj+1 betrachtet und die Evolution der<br />

Näherungslösung zu yj = y (die diskrete Evolution) mit der der exakten Lösung<br />

zu y(tj) = y (der kontinuierlichen Evolution) verglichen. In Definition 3.8 ist<br />

y = y(tj; t0, y0), in Definition 3.25 ist y = yj zum Startwert y0 bei t0. Nach Definition<br />

entspricht so also lh(tj+1) den Ausdruck hjτh(tj). Da für j = 0 die jeweiligen<br />

Startwerte zusammenfallen, gilt also insbesondere<br />

lh(t1) = h0τh(t0) .<br />

Wenn bei den bisherigen Überlegungen zur Konsistenzordnung der Startwert der jeweiligen<br />

Evolutionen bei t = tj keine Rolle spielt, überträgt sich also unter Berücksichtigung<br />

des h-Faktors das Ordnungsverhalten des Konsistenzfehlers auf den des lokalen<br />

Fehlers:<br />

Es ist lh(t1) = h0τh(t0). Bei der Bestimmung der Konsistenz(ordnung) wird aber ohne<br />

Beschränkung der Allgemeinheit dieser Schritt des Verfahrens untersucht. Für lh gelten<br />

also analoge Abschätzungen wie für hτh, d. h.:<br />

Hat (Ah) die Konsistenzordnung p, so gibt es C, H > 0, so daß für h ≤ H :<br />

�lh(tj)� ≤ Ch p hj−1 . (3.58)<br />

Die alternative Abschätzung des globalen Fehlers benutzt nun die stetige Abhängigkeit<br />

von Lösungen von (A) unter schwächeren Voraussetzungen als Lipschitzstetigkeit: (Die<br />

Begriffe gelten der Einfachheit halber global).<br />

Definition 3.26 Sei (., .) ein Skalarprodukt auf R n , �x� := (x, x) 1/2 .<br />

Sei f : I × R n → R n . f heißt einseitig Lipschitzstetig in y, wenn es ein l ε C(I)<br />

gibt, die einseitige Lipschitzkonstante, so dass<br />

(f(t, y) − f(t, z), y − z) ≤ l(t)�y − z� 2<br />

Beachte: l ≥ 0 ist nicht gefordert!<br />

Bemerkung 3.27<br />

für alle t ∈ I, y, z ∈ R n .<br />

1. Ist f Lipschitzstetig, dann auch einseitig Lipschitzstetig mit gleicher Konstante,<br />

da<br />

|(f(t, y) − f(t, z), (y − z))| ≤ �f(t, y) − f(t, z)� �y − z�<br />

CSU<br />

≤ L�y − z� 2 .<br />

101


2. Ist l ≡ 0 möglich, d. h.<br />

(f(t, y) − f(t, z), y − z) ≤ 0 für alle t ∈ I, y, z ∈ R (3.59)<br />

dann heißt f dissipativ.<br />

Für n = 1 gilt:<br />

f dissipativ ⇐⇒<br />

f(t, .) monoton fallend in y für alle t ∈ I<br />

Beachte, dass die Begriffe von der Wahl von (., .) abhängen.<br />

Satz 3.28 Seien y, z die Lösungen von (A) zu Anfangswerten y0, z0, f habe die einseitige<br />

Lipschitzkonstante l, dann gilt:<br />

⎛<br />

�t<br />

⎞<br />

�y(t) − z(t)� ≤ exp ⎝ l(s) ds⎠<br />

�y0 − z0� für alle t ∈ I. (3.60)<br />

Beweis:<br />

ϕ(t) : = �y(t) − z(t)� 2 für t ∈ I, dann:<br />

ϕ ′ (t) = d<br />

(y(t) − z(t), y(t) − z(t))<br />

dt<br />

Sei<br />

= 2(y ′ (t) − z ′ (t), y(t) − z(t))<br />

= 2(f(t, y(t)) − f(t, z(t)), y(t) − z(t))<br />

t0<br />

≤ 2l(t) �y(t) − z(t)� 2 = 2l(t) ϕ(t) (∗)<br />

⎛<br />

�<br />

η(t) : = exp ⎝−2<br />

t0<br />

(ϕη) ′ = ϕ ′ η + ϕη ′ = ϕ ′ η + ϕη(−2l)<br />

→ Behauptung<br />

t<br />

⎞<br />

l(s)ds⎠,<br />

dann:<br />

= η(ϕ ′ − 2lϕ) ≤ 0 nach (∗), also<br />

ϕ(t)η(t) ≤ ϕ(t0)η(t0) für t ∈ I, also<br />

⎛ ⎞<br />

�t<br />

ϕ(t) ≤ exp ⎝2 l(s)ds⎠<br />

ϕ(t0)<br />

102<br />

t0<br />


Satz 3.29 Sei y die Lösung von (A), yh die Lösung von (Ah). f sei einseitig Lipschitzstetig<br />

mit Konstante l, dann:<br />

Dabei ist<br />

�y(tN+1) − yN+1� ≤<br />

N+1 �<br />

i=1<br />

�<br />

exp(<br />

tN+1<br />

ti<br />

�y� := (y, y) 1/2 .<br />

Ist also l konstant und gilt (3.58), so folgt für h ≤ H :<br />

wobei<br />

�y(tN+1) − yN+1� ≤ C(T − t0)h p ,<br />

l(s) ds) �lh(ti)� (3.61)<br />

�y(tN+1) − yN+1� ≤ C′<br />

l exp(l(T − t0) − 1)h p , (3.62)<br />

C ′ :=<br />

� C für l ≥ 0<br />

und C die Konstante aus (3.58) darstellt.<br />

Beweis: Es ist<br />

wobei<br />

C exp(−lh) für l < 0, h := hmax<br />

y(tN+1) − yN+1 = y(tN+1; t0, y0) − y(tN+1; tN+1,yN+1)<br />

= y(tN+1; t0, y0) − y(tN+1; t1, y1) + y(tN+1; t1, y1)<br />

−... − y(tN+1; tN+1,yN+1) ⇒<br />

E := �y(tN+1) − yN+1� ≤<br />

N+1 �<br />

i=1<br />

Ei, (∗)<br />

Ei := �y(tN+1; ti, yi) − y(tN+1; ti−1, yi−1)� .<br />

Wegen Eindeutigkeit der Lösungen von (A) gilt:<br />

y(tN+1; ti−1, yi−1) = y(tN+1; ti, y(ti; ti−1, yi−1))<br />

und somit nach Satz 3.28 mit ti als Anfangspunkt in (3.60):<br />

⎛<br />

�<br />

Ei ≤ exp ⎝<br />

tN+1<br />

ti<br />

⎞<br />

l(s)ds⎠<br />

� yi − y(ti; ti−1, yi−1) � .<br />

� �� �<br />

=lh(ti)<br />

103


Mit (∗) gilt also (3.61).<br />

Zu (3.62). Für h ≤ H ist<br />

E ≤<br />

N+1 �<br />

i=1<br />

exp((tN+1 − ti)l) hi−1<br />

� �� �<br />

Die Summe � darin läßt sich abschätzen durch<br />

�T<br />

t0<br />

T<br />

�<br />

t0<br />

P<br />

Ch p max<br />

exp(l · (T − s))ds für l ≥ 0 ,<br />

exp(l · (T − h − s))ds für l < 0 ,<br />

denn für l ≥ 0 ist nämlich ϕ(t) = exp(l(T − t)), t ∈ I, monoton fallend und � die<br />

Riemannsumme von ϕ mit Funktionswert vom rechten Teilintervallende.<br />

Für l < 0 ist ϕ(t) := exp(l(T − h − t)) monoton wachsend, d. h.<br />

da ti−1 + h ≥ ti, also<br />

�T<br />

t0<br />

ϕ(ti−1) ≥ exp(l(tN+1 − ti)) ,<br />

ϕ(s)ds ≥<br />

N+1 �<br />

l=1<br />

ϕ(ti−1)hi−1 ≥ � .<br />

Für l = 0 ist also (3.62) klar, so ergibt sich die Behauptung aus<br />

�T<br />

für l > 0 und entsprechend für l ≤ 0 aus<br />

�T<br />

t0<br />

t0<br />

exp(l(T − s))ds = 1<br />

l (exp(l(T − t0)) − 1)<br />

exp(l(T − s − h))ds = exp(−lh) 1<br />

l (exp(l(T − t0)) − 1) .<br />

104<br />


Für Lipschitzstetiges f und l = Lipschitzkonstante entspricht (3.62) also (3.55), für<br />

l ≤ 0 ist es aber eine deutliche Verbesserung, etwa gilt für f dissipativ:<br />

�y(tN+1) − yN+1� ≤ C(T − t0)h p für h ≤ H.<br />

Die entsprechende Skizze zu Satz 3.29 ist:<br />

y 0<br />

y 1<br />

exakte Lösung<br />

l (t )<br />

h 1<br />

y 2<br />

l (t )<br />

h 2<br />

t0 t1 t2 t3 tN t<br />

t N+1=T<br />

y N<br />

y(t )<br />

N+1<br />

y N+1<br />

} E1 y=y(.,t 1,y 1)<br />

E2 }<br />

}<br />

E N+1<br />

=Verfahrensschritt<br />

3.4 Implizite Runge–Kutta-Verfahren und Kollokation<br />

Ein weiterer einsichtiger Ansatz zur Konstruktion von Einschrittverfahren (Ah) für (A)<br />

ist der folgende:<br />

Es seien α1 < α2 < · · · < αl gegeben, im Allgemeinen, aber nicht zwingend mit<br />

αi ∈ [0, 1].<br />

Die Näherungslösung yj zu t = tj sei bekannt, dann wird yj+1 zu tj+1 dadurch bestimmt,<br />

dass ein (vektorwertiges) u ∈ Πl(R) durch die folgenden l + 1 Bedingungen bestimmt<br />

wird:<br />

u(tj) = yj<br />

und dann<br />

u ′ (tj + αihj) = f(tj + αihj, u(tj + αihj)) für alle i = 1, . . ., l (3.63)<br />

yj+1 = u(tj+1) .<br />

105


Auf [tj, tj+1] wird also eine polynomiale Näherungslösung durch die Forderung festgelegt,<br />

in tj +αihj, i = 1, . . .,l, die Differentialgleichung exakt zu erfüllen. Einen solchen<br />

Ansatz nennt man Kollokation und die tj + αihj Kollokationspunkte. Ein solches<br />

Kollokationsverfahren ist gerade ein (implizites) RK Verfahren<br />

Satz 3.30 Seien li(τ) := l�<br />

�<br />

l�<br />

(τ − αk) (αi − αk) ∈ �<br />

für i = 1, . . .,l,<br />

und setze<br />

k=1<br />

k�=i<br />

βiν :=<br />

γi :=<br />

�αi<br />

0<br />

1<br />

�<br />

0<br />

k=1<br />

k�=i<br />

l−1<br />

lν(s)ds , i, ν = 1, . . .,l<br />

li(s)ds , i = 1, . . .,l .<br />

(3.64)<br />

Dann ist die Kollokationsmethode (3.63) identisch mit dem (impliziten) RK Verfahren<br />

definiert durch α, β und γ durch das Schema<br />

α β<br />

Beweis: Nach Numerik I, Abschnitt 5.1 kann das vektorwertige u ′ ∈ �<br />

l−1 geschrieben<br />

werden als<br />

�<br />

(t − tj)<br />

tj +<br />

�<br />

u ′ (t) = u ′<br />

=<br />

γ<br />

hj<br />

hj<br />

l�<br />

li((t − tj)/hj)u ′ (tj + αihj) ,<br />

i=1<br />

da auch die rechte Seite in �<br />

l−1 liegt und die gleiche Interpolationsaufgabe in tj +αihj,<br />

i = 1, . . .,l, löst. Also nach Ansatz<br />

u ′ l�<br />

(t) = li((t − tj)/hj)f(tj + αihj, u(tj + αihj)) .<br />

i=1<br />

Wegen u(tj) = yj folgt durch Aufintegration<br />

u(t) = yj +<br />

l�<br />

�<br />

ν=1<br />

tj<br />

t<br />

lν((s − tj)/hj)dsf(tj + ανhj, u(tj + ανhj))<br />

und daraus durch Variablentransformation im Integral<br />

u(t) = yj + hj<br />

l�<br />

ν=1<br />

(t−tj)/hj �<br />

0<br />

lν(s)dsf(tj + ανhj, u(tj + ανhj)) . (3.65)<br />

106


Für die Vektoren<br />

ξi := u(tj + αihj)<br />

impliziert (3.65) also das Gleichungssystem<br />

ξi = yj + hj<br />

l�<br />

βiνf(tj + ανhj, ξν) (3.66)<br />

ν=1<br />

und für t = tj+1 die Bestimmungsgleichung für yj+1 :<br />

yj+1 = u(tj+1) = yj + hj<br />

l�<br />

γif(tj + αihj, ξi) . (3.67)<br />

Es liegt also genau ein implizites RK Verfahren in der in (3.79)–(3.81) zu entwickelnden<br />

äquivalenten Form mit zi = ξi (s.u.) vor. Die Form (3.37) erhalten wir für<br />

i=1<br />

ki(tj, hj, yj) := f(tj + αihj, ξi) , i = 1, . . .,l .<br />

Dann ist natürlich, für ki = ki(tj, hj, yj):<br />

und damit<br />

Ausserdem beachte man<br />

ξi = yj + hj<br />

� ν = 1 l βiνkν<br />

ki = f(tj + αihj, yj + hj<br />

l�<br />

βiν =<br />

ν=1<br />

l�<br />

ν=1<br />

� Pl αν<br />

ν=1 lν(s)ds=R αi 0 1ds<br />

0<br />

βiνkν)<br />

= αi.<br />

Nicht jedes implizite RK Verfahren wird durch Kollokation erzeugt.<br />

Für l = 2 und α1 = 0, α2 = 2<br />

erhält man nach (3.64) das RK Verfahren<br />

3<br />

0 0 0<br />

2<br />

3<br />

mit Konsistenzordnung 3 (siehe oben: Radau-Form).<br />

Ein weiteres implizites RK Verfahren der Stufe 2 mit Ordnung 3 ist gegeben durch<br />

1<br />

3<br />

1<br />

4<br />

107<br />

1<br />

3<br />

3<br />

4<br />

✷<br />

(3.68)


0<br />

2<br />

3<br />

1<br />

4 −1<br />

4<br />

1<br />

4<br />

1<br />

4<br />

5<br />

12<br />

3<br />

4<br />

(3.69)<br />

das wegen β1ν �= 0 mit α1 = 0 nicht durch Kollokation erzeugt worden sein kann. Bei<br />

der vorliegenden Gauß-Form kann man aber prinzipiell auch p = 4 erreichen. Für die<br />

Konsistenz-/Konvergenzordnungsanalyse von Kollokationsverfahren benutzen wir<br />

Lemma 3.31 (von Alekseev-Gröbner).<br />

Die Lösung y von (A) werde mit einer glatten Funktion v mit v(t0) = y0 verglichen.<br />

Dann gilt: Es gibt eine Abbildung Φ = Φ(t, τ, v), so dass<br />

Dabei ist<br />

v(t) − y(t) =<br />

�t<br />

t0<br />

Φ(t, τ, v(τ))d(τ, v)dτ<br />

für alle t ∈ [t0, T] .<br />

(3.70)<br />

d(t, v) := v ′ (t) − f(t, v(t)) . (3.71)<br />

Φ = Φ(t, τ, v) erhält man als Jacobi-Matrix der Abbildung v ↦→ w(t), wobei w die<br />

Lösung von<br />

w ′ = f(t, w), w(τ) = v (3.72)<br />

bezeichnet.<br />

Beweis: Siehe [Deuflhard/Bornemann].<br />

Lemma 3.31 ist also eine Störungsaussage wie Satz 2.3. Besonders einfach (zu beweisen)<br />

wird (3.70) für den linearen Fall<br />

y ′ = Ay , y(t0) = y0 ,<br />

für A ∈ R n,n , (wenn eine Basis aus Eigenvektoren von A existiert). Da auch für e(t) :=<br />

v(t) − y(t)<br />

e ′ (t) = Ae(t) + d(t, v), e(t0) = 0<br />

gilt, kann zur Darstellung von e die Variation-der-Konstanten-Formel benutzt werden:<br />

e(t) =<br />

�t<br />

t0<br />

e A(t−τ) d(τ, v)dτ ,<br />

108<br />


was gerade die Behauptung in dem Spezialfall darstellt, denn (3.72) hat die Lösung<br />

und so<br />

w(t) = e A(t−τ) v<br />

∂w(t)<br />

∂v = eA(t−τ) .<br />

Ein Kollokationsverfahren ist nach Lemma 3.16 immer konsistent, denn<br />

l�<br />

γi =<br />

i=1<br />

�1<br />

0<br />

l�<br />

1li(s)ds =<br />

i=1<br />

�1<br />

0<br />

1ds = 1 .<br />

Satz 3.32 Seien α1 < · · · < αl gegeben, αi ∈ [0, 1]. Sei w(τ) := l�<br />

(τ − αi). Gilt für<br />

ein 0 ≤ m ≤ l<br />

�1<br />

0<br />

w(τ)τ j = 0 für alle j = 0, . . ., m − 1, (3.73)<br />

dann hat das Kollokationsverfahren zu αi die Konsistenzordnung l + m, sofern f hinreichend<br />

glatt ist. Insbesondere ist die Konsistenzordnung also mindestens l.<br />

Beweis: Man betrachte die Quadraturformel<br />

�1<br />

0<br />

g(x)dx ∼ Il(g) :=<br />

Dass Ih(g) exakt ist auf �<br />

l−1 , ist äquivalent zu<br />

also zu<br />

B(l) :<br />

Dies gilt hier, da<br />

l�<br />

i=1<br />

Il(x k−1 ) =<br />

l�<br />

i=1<br />

�1<br />

0<br />

α k−1<br />

�1<br />

i γi =<br />

0<br />

t k−1 dt = 1<br />

k<br />

γiα k−1<br />

i<br />

l�<br />

i=1<br />

1<br />

=<br />

k<br />

i=1<br />

l�<br />

γig(αi) . (3.74)<br />

i=1<br />

für k = 1, . . ., l<br />

, k = 1, . . .,l . (3.75)<br />

α k−1<br />

�1<br />

i li(s)ds =<br />

109<br />

0<br />

s k−1 ds = 1<br />

k .


Dabei ist die folgende Identität eingegangen:<br />

l�<br />

i=1<br />

α k−1<br />

i li(t) = t k−1 ,<br />

was sofort aus der Übereinstimmung für t = αi folgt. Wie bei der Gauß-Quadratur mit<br />

Gewichtsfunktion 1 (d.h. m = l) sichert die Orthogonalitätsbedingung, dass Il sogar<br />

auf �<br />

l+m−1 exakt ist (siehe Numerik I, Satz 6.8):<br />

Sei p ∈ �<br />

l+m−1 , dann kann man p schreiben als<br />

und so<br />

p(x) = w(x)q(x) + r(x) mit q ∈ Πm−1, r ∈ Πl−1<br />

�1<br />

0<br />

p(x)dx =<br />

�1<br />

0<br />

w(x)q(x)dx +<br />

= 0 + Il(r) = Il(p) ,<br />

da auch w(αi)q(αi) = 0 für alle i = 1, . . ., l.<br />

Damit folgt die Behauptung aus dem folgenden Lemma.<br />

�1<br />

0<br />

r(x)dx<br />

Die Bedingung (3.75) gehört zu den vereinfachenden Bedingungen von Butcher,<br />

nur unter denen im Allgemeinen implizite RK Verfahren untersucht werden. Weitere<br />

lauten<br />

l�<br />

C(l) :<br />

βiνα µ−1<br />

/µ für alle i, µ = 1, . . .,l (3.76)<br />

ν=1<br />

und sind hier auch erfüllt:<br />

l�<br />

ν=1<br />

ν = α µ<br />

i<br />

βiνα µ−1<br />

ν<br />

=<br />

=<br />

�αi<br />

l�<br />

α<br />

0<br />

ν=1<br />

µ−1<br />

ν lν(s)ds<br />

�αi<br />

s<br />

0<br />

µ−1 ds = 1<br />

µ αµ i .<br />

Insbesondere impliziert also µ = 1 die Bedingung (1.40), die sichert, dass das Verfahren<br />

angewendet auf ein nichtautonomes und sein äquivalentes autonomes Problem<br />

das Gleiche ergibt. Weiter ist (3.76) für µ = l unter den l-stufigen RK Verfahren mit<br />

Ordnung ≥ l charakterisierend für ein Kollokationsverfahren (siehe [Strehmel/Weiner],<br />

Satz 6.1.11)<br />

Lemma 3.33 Ein Kollokationsverfahren hat die Konsistenzordnung p ∈ N für hinreichend<br />

glatte f, genau dann wenn die durch (3.74) definierte Quadraturformel exakt ist<br />

für �<br />

p−1 .<br />

110<br />


Beweis: Wir untersuchen den lokalen Fehler lh(tj+1). Dazu wird yj+1 = u(tj+1) als<br />

Lösung der Anfangswertaufgabe mit Störung d(·, u) nach (3.71) interpretiert und Lemma<br />

3.31 angewendet:<br />

lh(tj+1) = yj+1 − y(tj+1, tj, uj)<br />

=<br />

�<br />

tj+1<br />

tj<br />

= hj<br />

�1<br />

0<br />

Φ(tj+1, τ, u(τ))d(τ, u)dτ<br />

Φ(tj+1, tj + shj, u(tj + shj))d(tj + shj, u)ds .<br />

Hier wird das Integral mit I( ˜ Φ ˜ d) abgekürzt, wobei˜· andeutet, dass das Argument nicht<br />

s, sondern tj + shj ist. Also gilt<br />

�<br />

lh(tj+1) = hj Il( ˜ Φ ˜ d) + I( ˜ Φ ˜ d) − Il( ˜ Φ ˜ �<br />

d)<br />

�<br />

= hj I( ˜ Φ ˜ d) − Il( ˜ Φ ˜ �<br />

d) ,<br />

da nach Definition des Kollokationsverfahrens für die Quadraturpunkte s = αi gilt:<br />

d(tj + αihj, u) = 0 für alle i = 1, . . .,l,<br />

denn dort wird die Differentialgleichung exakt erfüllt.<br />

Allgemein gilt für Quadraturformeln Il, die exakt sind für �<br />

p−1 :<br />

|I(f) − Il(f)| ≤ C�f (p) �∞<br />

(vgl. Numerik I, S. 170 und ... ) für entsprechend glatte Integranden und eine Konstante<br />

C > 0.<br />

Daraus folgt<br />

|I( ˜ Φ ˜ d) − Il( ˜ Φ ˜ d)| ≤ Ch p<br />

j<br />

(3.77)<br />

da wegen des Arguments tj + shj entsprechende hj-Potenzen durch das Nachdifferenzieren<br />

entstehen. Man beachte aber, dass die Ableitungen von Φ, die alle mittels C in<br />

(3.77) abgeschätzt werden und Ableitungen von u beinhalten, von hj abhängen. Für<br />

einen exakten Beweis ist also noch zu verifizieren, dass sich diese Ableitungen (für kleine<br />

hj) unabhängig von hj beschränken lassen (siehe [Deuflhard/Bornemann], Lemma<br />

6.41). Also folgt<br />

�lh(tj+1)� ≤ Chjh p<br />

und damit die Behauptung, da die Rückrichtung klar ist, denn Quadratur ist der Spezialfall<br />

f(t, y) = f(t).<br />

111


Insbesondere liefert (3.73) bei m = l Verfahren mit der optimalen Konsistenzordnung<br />

2m. Dies bedeutet gerade, die Nullstellen der Legendre-Polynome (transformiert auf<br />

[0, 1]) als Kollokationspunkte αi zu wählen (siehe Numerik I, S. 185-187). Daher spricht<br />

man auch von Gauß-Legendre Verfahren.<br />

Als Beispiele erhält man<br />

l = 1 : α1 = 1<br />

2<br />

und so das Verfahren<br />

Das ist gerade das Crank-Nicolson-Verfahren.<br />

l = 2 : α1 = 1<br />

2 −<br />

√<br />

3<br />

6 , α2 = 1<br />

2 +<br />

√<br />

3<br />

6<br />

und so:<br />

1<br />

2 −<br />

√<br />

3<br />

6<br />

1<br />

4<br />

1<br />

4 −<br />

1<br />

2<br />

√<br />

3<br />

6<br />

+<br />

√<br />

3<br />

6<br />

1<br />

4 +<br />

√<br />

3<br />

6<br />

1<br />

1<br />

4<br />

1<br />

2 2<br />

1<br />

2<br />

1<br />

2<br />

1<br />

✷<br />

(3.78)<br />

Dies und eventuell auch das Gauß-Legendre Verfahren für l = 3 (und damit p = 6)<br />

sind noch zur Anwendung zu empfehlen:<br />

1<br />

2 −<br />

√<br />

15<br />

10<br />

1<br />

2<br />

1<br />

2 +<br />

√<br />

15<br />

10<br />

5<br />

36<br />

5<br />

36 +<br />

√<br />

15<br />

24<br />

5<br />

36 +<br />

√<br />

15<br />

30<br />

5<br />

18<br />

2<br />

9 −<br />

√<br />

15<br />

15<br />

2<br />

9<br />

2<br />

9 +<br />

√<br />

15<br />

15<br />

4<br />

9<br />

5<br />

36 −<br />

√<br />

15<br />

36<br />

5<br />

36 −<br />

Das Beispiel (3.68) erfüllt (3.73) für m = 1, aber nicht für m = 2, was die erwähnte<br />

Konsistenzordnung 3 beweist.<br />

Radau-Formeln erhält man, in dem man α1 = 0 und damit nach (3.64) auch β1ν = 0<br />

für alle ν = 1, . . .,l wählt. Setzt man alternativ αl = 1, dann gilt nach (3.64)<br />

112<br />

5<br />

36<br />

5<br />

18<br />

√ 15<br />

24


γi = βli für alle i = 1, . . ., l .<br />

3.5 Spezielle Runge-Kutta-Verfahren und linear-implizite<br />

Verfahren<br />

Ein implizites RK Verfahren vom Gauß-Legendre Typ hat optimale Konsistenzordnung<br />

und auch gute Stabilitätseigenschaften für steife Systeme (siehe Abschnitt 3.11). Demgegenüber<br />

steht der Aufwand, das nichtlineare System (1.39) in R nl lösen zu müssen.<br />

Alternative Formulierungen ergeben sich für die Unbekannten zi ∈ R n mit<br />

zi := yj + hj<br />

für die das Gleichungssystem lautet<br />

zi = yj + hj<br />

l�<br />

βiνxν i = 1, . . ., l (3.79)<br />

ν=1<br />

l�<br />

βiνf(tj + ανhj, zν), i = 1, . . ., l, (3.80)<br />

ν=1<br />

und dann statt (1.38) yj+1 bestimmt aus<br />

yj+1 = yj + hj<br />

l�<br />

γif(tj + αihj, zi) . (3.81)<br />

i=1<br />

Beachte, dass j immer als Index für den j-ten Zeitschritt vorbehalten ist, i bei zi aber<br />

wegen der l-Stufigkeit des Verfahrens (von yj nach yj+1) zustande kommt.<br />

Die zi sind also zu interpretieren als Näherungswerte für u an t + αih, die xi als Näherungswerte<br />

für u ′ (vgl. (3.66) ff.), also ist |zi−yj| höchstens in der Größenordnung O(h)<br />

zu erwarten. Um Auslöschung zu vermeiden, kann man statt dessen ein Gleichungssystem<br />

für<br />

betrachten, d.h.<br />

˜zi = h<br />

˜zi = zi − yj<br />

l�<br />

f(tj + ανhj, ˜zν + yj) ,<br />

ν=1<br />

yj+1 = yj + hj<br />

l�<br />

γif(tj + αihj, ˜zi + yj) .<br />

i=1<br />

In beiden Versionen (1.39) und (3.80) braucht eine Auswertung der rechten Seite bei<br />

gegebenen x bzw. z l Auswertungen von f, in (3.81) kommen nach Abschluss des<br />

113


(Iterations-) Verfahrens im Gegensatz zu (1.38) l weitere hinzu. Dies kann bei invertierbarer<br />

Matrix β vermieden werden:<br />

Allgemein betrachten wir zu einer Matrix A ∈ Rm,n die durch<br />

�<br />

n�<br />

�<br />

(F(x))i = , i = 1, . . .,m<br />

j=1<br />

aijxj<br />

für x = (xi)i, xi ∈ R l erzeugte lineare Abbildung von R nl nach R ml . Die darstellende<br />

Matrix hat die Gestalt<br />

A ⊗ I =<br />

⎛<br />

⎜<br />

⎝<br />

a11I a12I · · · a1nI<br />

.<br />

am1I · · · · · · amnI<br />

.<br />

⎞<br />

⎟<br />

⎠<br />

(3.82)<br />

für die Einheitsmatrix I ∈ R l,l , was mit dem Tensorprodukt A⊗I ∈ R ml,nl abgekürzt<br />

wird. Allgemein definiert (3.82) für B ∈ R kl anstelle von I das Tensorprodukt A ⊗B ∈<br />

R mk,nl , das assoziativ ist und erfüllt:<br />

Sind A, B nichtsingulär, so auch A ⊗ B und<br />

Das folgt aus<br />

für A, C ∈ R m,m und B, D ∈ R n,n .<br />

Damit lässt sich (3.80) schreiben als<br />

(A ⊗ B) −1 = A −1 ⊗ B −1 . (3.83)<br />

(A ⊗ B)(C ⊗ D) = AC ⊗ BD (3.84)<br />

z = 1 ⊗ yj + hj(β ⊗ I)f ,<br />

wobei (fi)i := (f(tj + αihj, zi))i , und (3.81) als<br />

yj+1 = yj + hj( γ T<br />

����<br />

Zeile<br />

⊗I)f .<br />

Dabei ist 1 = (1, . . .,1) T ∈ R l , so dass 1 ⊗ yj aus l Kopien von yj hintereinander<br />

besteht, und I ∈ R n,n die Einheitsmatrix.<br />

Also folgt bei nichtsingulärem β<br />

f = 1<br />

(β ⊗ I) −1 (z − 1 ⊗ yj)<br />

hj<br />

= 1<br />

(β −1 ⊗ I)(z − 1 ⊗ yj)<br />

hj<br />

114


und also statt (3.81)<br />

yj+1 = yj + hj(γ T ⊗ I)f<br />

was erneute f-Auswertungen vermeidet.<br />

= yj + � γ T β −1 ⊗ I � (z − 1 ⊗ yj) ,<br />

Ist so γ T speziell die s-te Zeile von β für ein s ∈ {1, . . ., l}, also γ T β −1 = e T s ∈ R1,l und<br />

damit<br />

γ T β −1 ⊗ I = (0, . . .,I, 0, . . ., 0),<br />

mit der Einheitsmatrix als s-ter Block, so dass insgesamt gilt:<br />

yj+1 = zs .<br />

Wenn sich die Auflösung von (3.80) durch Fixpunktiteration verbietet (vgl. Abschnitt<br />

3.11), empfiehlt sich das Newton-Verfahren, so dass für das Aufstellen des linearen<br />

Gleichungssystems für den (µ + 1)-ten Iterationsschritt die folgende Jacobi-Matrix als<br />

Koeffizientenmatrix auszuwerten ist:<br />

⎛<br />

⎜<br />

⎝<br />

∂f<br />

�<br />

I − hjβ11 tj + α1hj, z<br />

∂y<br />

(µ)<br />

�<br />

∂f<br />

�<br />

1 , . . .... , −hjβ1l tj + αlhj, z<br />

∂y<br />

(µ)<br />

�<br />

l<br />

.<br />

.<br />

∂f<br />

�<br />

−hjβl1 tj + α1hj, z<br />

∂y<br />

(µ)<br />

�<br />

∂f<br />

1 , . . .... , I − hjβll<br />

∂y<br />

.<br />

.<br />

�<br />

tj + αlhj, z (µ)<br />

l<br />

Dabei ist z (µ) = (z (µ)<br />

1 , . . .,z (µ)<br />

l ) ∈ R nl die bekannte µ-te Iteration. Also sind l Jacobi<br />

Matrizen von f (in R n,n ) auszuwerten. Um den Aufwand zu reduzieren, ändert man<br />

das Verfahren oft zu einem vereinfachten Newton-Verfahren ab (vgl. Numerik I,<br />

Abschnitt 4.5), indem diese durch eine Auswertung von ∂f<br />

, und zwar an der Stelle<br />

∂y<br />

(tj, yj) approximiert wird. Man beachte dabei, dass |zi − yj| in der Größssenordnung<br />

O(h) zu erwarten ist. Steht ∂f<br />

nicht zur Auswertung zur Verfügung, kann dies wieder<br />

∂y<br />

durch Differenzenquotienten approximiert werden, wobei die Schlechtgestelltheit des<br />

numerischen Differenzieren zu beachten ist (siehe Numerik I, Abschnitt 2.7). Durch<br />

diese Modifikationen wird zwar der Aufwand reduziert, das quadratische Konvergenzverhalten<br />

geht aber verloren. Das Gleichungssystem für die Korrektur ∆˜z (µ) , wobei<br />

˜z (µ+1) = ˜z (µ) + ∆˜z (µ) ,<br />

115<br />

�<br />

⎞<br />

⎟<br />


für die transformierten Größen ˜z = z − 1 ⊗ yj lautet also<br />

�<br />

Iln − hjβ ⊗ ∂f<br />

∂y (tj,<br />

�<br />

yj)<br />

wobei (fi)i = (f(tj + αihj, z (µ)<br />

i<br />

+ yj).<br />

∆˜z (µ) = −˜z (µ) + hj(β ⊗ In)f ,<br />

Weitere Vereinfachungen ergeben sich für spezielle Formen von β, z.B. wenn β eine untere<br />

Dreiecksmatrix ist, so dass die nichtlinearen Gleichungssysteme gestaffelt sind, also<br />

nur l nichtlineare Gleichungssysteme der Dimension n zu lösen sind. Solche RK Verfahren<br />

heißen DIRK-Verfahren (diagonally implicit Runge-Kutta). Der Spezialfall eines<br />

gleichen Diagonalelements βii = βd für alle i = 1, . . ., l heißt SDIRK-Verfahren (singly<br />

diagonally implicit Runge-Kutta Verfahren).<br />

Ein Beispiel ist<br />

1 + µ<br />

2<br />

1<br />

2<br />

1 − µ<br />

2<br />

1 + µ<br />

2<br />

− µ<br />

2<br />

1 + µ<br />

2<br />

1 + µ −1 − 2µ<br />

1<br />

6µ 2<br />

1 − 1<br />

3µ 2<br />

0 0<br />

0<br />

1 + µ<br />

2<br />

1<br />

6µ 2<br />

wobei µ eine Nullstelle von 3µ 3 − 3µ − 1 = 0 sei, um Konsistenzordnung 4 zu erhalten.<br />

Bei linear-impliziten RK Verfahren kurz, LIRK-Verfahren, (oBdA. für autonome<br />

Systeme dargestellt) wird Verfahrensdefinition und Newton-Verfahren so ineinander<br />

verwoben, dass mit einer geeigneten Abbildung W : U → R n,n für eine Umgebung U<br />

der Lösung auf der Basis der Umschreibung<br />

y ′ (t) = W(y(t))y(t) + (f(y(t)) − W(y(t))y(t))<br />

der erste, lineare Summand mit einem SDIRK-Verfahren approximiert wird, der zweite,<br />

nichtlineare Summand aber mit einem (anderen) expliziten RK Verfahren, also<br />

yj+1 = yj + hj<br />

116<br />

l�<br />

i=1<br />

γiki


und<br />

ki = W(yj)<br />

+<br />

�<br />

�<br />

yj + hj<br />

f(yj + hj<br />

i = 1, . . .,l .<br />

i�<br />

ν=1<br />

�i−1<br />

ν=1<br />

βiνkν<br />

˜βiνkν)<br />

�<br />

�<br />

− W(yj)<br />

�<br />

yj + hj<br />

�i−1<br />

ν=1<br />

˜βiνkν<br />

Es sind also nur sukzessive l lineare n × n Gleichungssysteme zu lösen.<br />

Nach H.H. Rosenbrock und G. Wanner heißen solche Verfahren auch Rosenbrock-<br />

Wanner (ROW)-Verfahren. Eine naheliegende Wahl ist W(yj) = ∂f<br />

∂y (yj) oder eine<br />

Approximation daran. Dann kann für<br />

˜βiν = βiν für i = 1, . . .,l, ν = 1, . . .,i − 1<br />

das Verfahren als ein nach einem Schritt abgebrochenes vereinfachtes Newton-<br />

Verfahren für die Form (1.39) eines SDIRK-Verfahrens interpretiert werden. Das<br />

einfachste Beispiel basiert auf dem impliziten Euler-Verfahren (siehe (1.42), µ = 1),<br />

also<br />

l = 1, β11 = 1, α1 = γ1 = 1 :<br />

yj+1 = yj + hjk1 ,<br />

k1 = ∂f<br />

∂y (yj)(yj + hjk1) + f(yj) − ∂f<br />

∂y (yj)yj ,<br />

d.h. �<br />

I − ∂f<br />

∂y (yj)hj<br />

�<br />

k1 = f(yj)<br />

und so<br />

yj+1 = yj + hj<br />

�<br />

I − ∂f<br />

∂y (yj)hj<br />

�−1 f(yj) ,<br />

wobei natürlich immer das lineare Gleichungssystem zu lösen und nicht die Inverse zu<br />

berechnen ist.<br />

3.6 Extrapolationsverfahren<br />

In Numerik I führten bei der numerischen Quadratur, d.h. beim Spezialfall f(t, y) =<br />

f(t) zwei Wege zu Verfahren hoher Konvergenzordnung: Die Gauß-Quadratur, die sich<br />

117<br />

�<br />

,


nach Abschnitt 1.4 bei den impliziten RK-Verfahren wiederfindet, und die Romberg-<br />

Integration, d.h. die Extrapolation auf der Basis der zusammengesetzten Trapezregel.<br />

Voraussetzung ist die Gültigkeit einer Fehlerentwicklung, dort die Euler-MacLaurinsche<br />

Summenformel.<br />

Ist also allgemein eine reelle Größe a, hier etwa y(t) für ein festes t ∈ [t0, T] und y sei<br />

die Lösung von (A), zu berechnen und a(h) sei ein Näherungswert, hier etwa durch ein<br />

Einschrittverfahren gegeben, dann reicht nicht nur eine Konvergenzordnungsaussage<br />

vom Typ<br />

|a(h) − a| ≤ Ch p<br />

sondern es sollte bekannt sein, dass eine Fehlerentwicklung vorliegt vom Typ<br />

a(h) = a + aph p + ap+1h p+1 + · · · + ap+k−1h p+k−1 + O(h p+k )<br />

für möglichst großes k ∈ N.<br />

Besonders vorteilhaft ist die Situation, wenn die Entwicklung nicht in h, sondern in<br />

z = h γ für ein γ ∈ N, γ ≥ 2, vorliegt, d.h.<br />

a(h) = a + apz p + · · · + ap+k−1z p+k−1 + O(z p+k ) .<br />

a(h) kann dann für eine Folge von absteigenden Schrittweiten hi, hi+1, . . ., hi+k bestimmt<br />

werden und das Interpolationspolynom ˜ Tik ∈ Πk, das an den Stellen zr, r =<br />

i, . . .,i + k, die Werte a(zr) annimmt. Wertet man ˜ Tik an z = 0 aus, d.h. führt Extrapolation<br />

aus, kann man erwarten, dass Tik := ˜ Tik(0) eine Approximation an a der<br />

Ordnung p + k darstellt (siehe Numerik I, Satz 6.3). Die Werte Tik werden gemäß Numerik<br />

I mit dem Neville-Algorithmus aufgebaut: Die k-te Spalte des Neville-Schemas<br />

liefert also Näherungswerte die mit Ordnung p + k konvergieren.<br />

Damit für ein Einschrittverfahren (Ah) der Fehler eh eine Fehlerentwicklung besitzt,<br />

muss dies mindestens für den Konsistenzfehler τh gelten. Im Folgenden werde eine<br />

konstante Schrittweite h verwendet und es sei vorausgesetzt, dass f und fh auf<br />

S := [t0, T] × R n global Lipschitzstetig und (p + k + 1)-mal stetig differenzierbar<br />

sind. Die Taylorentwicklungstechnik zeigt, dass bei genügender Glattheit von f für<br />

den Konsistenzfehler nicht nur eine Ordnungsabschätzung, sondern auch eine Fehlerentwicklung<br />

möglich ist (vgl. z.B. (1.32)). Zu klären ist, ob diese sich auf den globalen<br />

Fehler überträgt.<br />

Satz 3.34 Das Einschrittverfahren (Ah) habe die Konsistenzordnung p, in dem für<br />

tj ∈ I ′ h gilt:<br />

y(tj+1) − y(tj) − hfh(tj, y(tj)) = dp+1(tj)h p+1 + O(h p+2 ) . (3.85)<br />

118


Sei ep die Lösung der linearen, inhomogenen AWA<br />

Dann ist<br />

e ′ ∂f<br />

p (t) =<br />

∂y (t, y(t))ep(t) + dp+1(t) ,<br />

ep(t0) = 0 .<br />

y ∗ h(tj) := yh(tj) + ep(tj)h p<br />

Lösung eines Einschrittverfahrens mit der Verfahrensfunktion<br />

mit Konsistenzordnung p + 1.<br />

f ∗ h (t, y∗ ) := fh(t, y ∗ − ep(t)h p ) + (ep(t + h) − ep(t))h p−1<br />

Beweis: Dass y∗ h Lösung von (Ah) zu f ∗ h<br />

folgenden Konsistenzfehler τ ∗ h :<br />

hτ ∗ h (tj) = y(tj+1) − y(tj) − hf ∗ h (tj, y(tj))<br />

(3.86)<br />

(3.87)<br />

ist, ist offensichtlich. Dieses Verfahren hat<br />

= y(tj+1) − y(tj) − hfh(tj, y(tj) − ep(tj)h p )<br />

− [ep(tj+1) − ep(tj)]h p<br />

= y(tj+1) − y(tj) − hfh(tj, y(tj))<br />

− [ep(tj+1) − ep(tj)]h p<br />

+ h[fh(tj, y(tj)) − fh(tj, y(tj) − ep(tj)h p )] .<br />

Linearisierung in den eckigen Klammern liefert also mit (3.85)<br />

hτ ∗ h (tj)<br />

�<br />

= dp+1(tj) + ∂<br />

∂y fh(tj, y(tj))ep(tj)<br />

− e ′ p (tj)<br />

�<br />

Da Konsistenzordnung p für fh vorliegt, gilt<br />

h p+1 + O(h p+2 ) .<br />

∂<br />

∂y fh(tj, y(tj)) − ∂<br />

∂y f(tj, y(tj)) = O(h)<br />

(ohne Beweis, Weiterentwicklung von Beweis von Lemma 1.10)<br />

und somit<br />

hτ ∗ h (tj) =<br />

�<br />

dp+1(tj) + ∂f<br />

∂y (tj, y(tj))ep(tj) − e ′ p (tj)<br />

�<br />

119<br />

h p+1 + O(h p+2 ) .


Da nach (3.86) der erste Summand verschwindet, folgt die Behauptung.<br />

Wendet man diese Aussage rekursiv an, sieht man:<br />

Durch sukzessive Modifikation der Verfahrensfunktion und der Näherungslösung erhält<br />

man Verfahren immer höherer Ordnung. Dies überträgt sich auf eine Entwicklung des<br />

globalen Fehlers.<br />

Satz 3.35 (von Gragg)<br />

Der Konsistenzfehler des Einschrittverfahrens (Ah) habe folgende Entwicklung<br />

y(tj+1) − y(tj) − hfh(tj, y(tj))<br />

= dp+1(tj)h p+1 + · · · + dp+k(tj)h p+k + O(h p+k+1 )<br />

für h → 0 .<br />

Dann besitzt der globale Fehler eh die analoge Entwicklung<br />

eh(tj) = ep(tj)h p + ep+1(tj)h p+1 + · · ·+<br />

+ ep+k−1(tj)h p+k−1 + Ep+k(tj, hj)h p+k ,<br />

✷<br />

(3.88)<br />

(3.89)<br />

wobei Ep+k für kleine h beschränkt ist. Dabei sind die Koeffizientenfunktionen ej Lösungen<br />

von linearen, inhomogenen AWAs<br />

wobei speziell ˜ dp+1 = dp+1.<br />

e ′ j(t) = ∂f<br />

∂y (t, y(t))ej(t) + ˜ dj+1(t)<br />

ej(t0) = 0 , j = p, . . .,p + k − 1 ,<br />

Beweis: Betrachte y∗ h und f ∗ h nach Satz 3.34. Da der Konsistenzfehler der Ordnung<br />

p+1 ist folgt mit der Generalvoraussetzung der Lipschitzstetigkeit an fh aus Satz 3.22<br />

für den Fehler<br />

e ∗ h (t) := y(t) − y∗ h (t)<br />

�e ∗ h(tj)� ≤ (tj − t0)exp(L(tj − t0))C ∗ h p+1 =: Mp+1h p+1 ,<br />

wobei C ∗ die Konstante aus der Konsistenzfehlerabschätzung ist:<br />

�τ ∗ h (tj)� ≤ C ∗ h p+1 .<br />

120


Nach Definition von y∗ h gilt für t = tj<br />

und so definiert also die Beziehung<br />

eine Funktion Ep+1 mit der Eigenschaft<br />

e ∗ h(t) = eh(t) − ep(t)h p<br />

eh(tj) = ep(tj)h p + Ep+1(tj, h)h p+1<br />

�Ep+1(tj, h)� ≤ Mp+1 .<br />

Daraus folgt die Behauptung für k = 1. Für k > 1 erhält man die Aussage, indem man<br />

sukzessive von der Aussage für k = 1, k = 2, . . . ausgehend Satz 3.34 anwendet und<br />

Verfahrenssfunktionen f ∗∗ ∗∗∗<br />

h , fh etc. konstruiert. Satz 3.34 macht dann eine Aussage<br />

über den Konsistenzfehler, der etwa für<br />

y ∗∗<br />

h (tj) = y ∗ h (tj) + ep+1(tj)h p+1<br />

= yh(tj) + ep(tj)h p + ep+1(tj+1)h p+1<br />

von der Ordnung p + 2 ist. Die Anwendung von Satz 3.22 wie oben überträgt diese<br />

Aussage auf den globalen Fehler.<br />

Spezielle Einschrittverfahren, die symmetrisch sind, haben sogar eine Konsistenzund<br />

damit Konvergenzfehlerentwicklung in h 2 . (vgl. [Strehmel/Weiner], S. 82 ff). Dazu<br />

gehören die implizite Trapezregel<br />

yj+1 = yj + h<br />

2 (f(tj, yj) + f(tj+1, yj+1))<br />

und das Crank–Nicolson-Verfahren<br />

�<br />

yj+1 = yj + hf tj + h 1<br />

,<br />

2 2 (yj<br />

�<br />

+ yj+1) .<br />

Für den Fall der Quadratur, d.h. f(t, y) = f(t) ist im ersten Fall die Aussage gerade<br />

die Euler-MacLaurin’sche Summenformel. Solche einfachen Verfahren sind also Kandidaten<br />

für die Basis eines Extrapolationsverfahrens. Bei Mehrschrittverfahren (Kapitel<br />

2) wird das Thema wieder aufgegriffen. Die obigen Basisverfahren sind leider implizit.<br />

Tatsächlich gibt es kein explizites RK Verfahren mit Fehlerentwicklung in h 2 . Eine<br />

explizite Variante des Crank–Nicolson-Verfahrens, die explizite Mittelpunktsregel, die<br />

beide Eigenschaften erfüllt, ist ein Mehrschrittverfahren.<br />

121<br />


Wir gehen nochmal auf die praktische Durchführung des Extrapolationsverfahrens ein:<br />

Ausgangspunkt ist eine Fehlerentwicklung wie in (3.89) in h oder in z = h 2 . Wir konzentrieren<br />

uns auf einen Schritt der zu entwickelnden Verfahren, der aus Notationsgründen<br />

der Erste sei. Sei H > 0 eine Grundschrittweite, aus der mittels vorgegebener<br />

gebildet wird. Es werden die Näherungen<br />

n1, n2, . . . ∈ N , hi := H<br />

yh1(H), . . ., yhN (H) (mit N ≤ k + 1)<br />

ni<br />

(3.90)<br />

berechnet. Wie bei der Romberg-Integration (vgl. Numerik I) werden daraus sukzessive<br />

Näherungen höherer Konsistenzordnung bestimmt. Für N = 2, n1 = 1, n2 = 2<br />

entspricht das gerade der Methode der Schrittweitenhalbierung, die in Abschnitt 1.7<br />

behandelt wird. Äquivalent wird für h ↦→ yh(H) das Interpolationspolynom durch<br />

h1, . . ., hN aufgestellt und bei h = 0 ausgewertet. Wie in Numerik I kann dies mit dem<br />

Neville-Algorithmus geschehen.<br />

Seien p = γ1 , p + 1 = γ2, . . . , p + k ≤ γN und<br />

dann wird also mit<br />

γj = γj mit γ = 1 oder γ = 2 , (3.91)<br />

Ti,1 := yhi (H) , i = 1, . . .,N , (3.92)<br />

Ti,l := Ti,l−1 + Ti,l−1 − Ti−1,l−1<br />

(ni/ni−l+1) γ , i = 2, . . ., N, l = 1, . . ., i . (3.93)<br />

− 1<br />

das folgende Tableau (zeilenweise) aufgebaut<br />

T11<br />

T21 T22<br />

T31 T32 T33<br />

. . . . . . .<br />

Für den lokalen Fehler der Til gilt:<br />

122


zw. bei dl(0) = 0 sogar<br />

lil(H) := Til − y(H) ∼ γildl(H)H γl<br />

mit γil := (ni−l+1 · · ·ni) −γ<br />

(3.94)<br />

lil(H) ∼ γild ′ l (0)Hγl+1 . (3.95)<br />

Das bedeutet eine Konsistenzordnung von γl − 1 bzw. γl, die also durch den Spaltenindex<br />

l ≤ i bestimmt wird. Da der Aufwand für (3.93) im Vergleich zu (3.92)<br />

(Ti,1 ˆ= ni Schritte von (Ah)) vernachlässigt werden kann, wird man bei berechneten<br />

T11, . . .,TN1 das Tableau immer bis TNN aufbauen.<br />

3.7 Die Euler–MacLaurin’sche Summenformel<br />

In diesem Abschnitt leiten wir eine asymptotische Entwicklung des Fehlers der zusammengesetzten<br />

Trapezregel<br />

Th(f) := h<br />

�<br />

�<br />

�n−1<br />

f(a) + 2 f(xi) + f(b) ,<br />

2<br />

b − a<br />

wobei h := und xi = a + ih, her. Hiermit werden wir mittels Extrapolation zu<br />

n<br />

besseren Verfahren kommen.<br />

Satz 3.36 (Euler–MacLaurin’sche Summenformel)<br />

Seien f ∈ C2m b − a<br />

[a, b], n ∈ N gegeben und h := . Dann gilt<br />

n<br />

� b<br />

a<br />

f(x) dx = Th(f) −<br />

m�<br />

k=1<br />

Dabei sind B2k Bernoulli’sche Zahlen (s.u.).<br />

i=1<br />

h2k (2k)! B2k<br />

� �<br />

(2k−1) (2k−1) 2m<br />

f (b) − f (a) + O(h ) für h → 0+ .<br />

Bemerkung: Ist f periodisch mit Periodenintervall [a, b], so liefert die Trapezregel<br />

einen Fehler der Größe O(h 2m ), ist also besonders gut geeignet.<br />

Zum Beweis benötigen wir Vorbereitungen.<br />

123


Definition: Die auf R durch<br />

B0(t) = 1 , B ′ k (t) = Bk−1(t) ,<br />

� 1<br />

definierten Polynome Bk, k ∈ N0, heißen Bernoulli–Polynome.<br />

0<br />

Bk(t) dt = 0 , k ≥ 1, (3.96)<br />

Wir bemerken, daß (3.96) Bk eindeutig festlegt, es gilt Bk(t) = � t<br />

0 Bk−1(s) ds + Bk(0),<br />

und die Konstante Bk(0) wird durch � 1<br />

0 Bk(s) ds ! = 0 festgelegt. Ferner gilt offenbar<br />

Bk ∈ Πk.<br />

Als Beispiel bestimmen wir B1(t). Es ist<br />

und: 0 ! =<br />

�1<br />

0<br />

B1(t) =<br />

Analog rechnet man weiter.<br />

�t<br />

0<br />

1 ds + B1(0) = t + B1(0)<br />

B1(t)dt = 1<br />

2 + B1(0) ⇒ B1(0) = − 1<br />

2<br />

Wir stellen einige Eigenschaften der Bk(t) zusammen:<br />

Lemma 3.37 Es gelten:<br />

(i) Bk(0) = Bk(1) , k ≥ 2,<br />

(ii) Bk(t) = (−1) k Bk(1 − t) , k ≥ 0,<br />

(iii) B2k+1(0) = B2k+1(1) = 0 , k ≥ 1.<br />

Beweis: (i) folgt direkt aus (3.96), denn für k ≥ 1 gilt<br />

�<br />

�<br />

Bk+1(t)<br />

� 1<br />

0<br />

=<br />

� 1<br />

0<br />

B ′ k+1(t) dt =<br />

� 1<br />

0<br />

⎫<br />

⎪⎬<br />

⎪⎭<br />

Bk(t) dt = 0 .<br />

(ii) gilt offenbar für k = 0, 1. Sei (ii) für k ∈ N0 richtig. Dann gilt:<br />

Bk+1(t) − Bk+1(0) =<br />

� t<br />

0<br />

= (−1) k+1<br />

Bk(s) ds = (−1) k<br />

� 1−t<br />

1<br />

� t<br />

Fall 1: k = 2j + 1. Dann folgt aus Bk+1(0) = Bk+1(1):<br />

0<br />

Bk(1 − s) ds<br />

⇒ B1(t) = t − 1<br />

2 .<br />

Bk(s) ds = (−1) k+1<br />

�<br />

�<br />

Bk+1(1 − t) − Bk+1(1) .<br />

Bk+1(t) = (−1) k+1 Bk+1(1 − t) .<br />

124


Fall 2: k = 2j, j ≥ 1. Dann liefert Bk+1(0) = Bk+1(1):<br />

und Integration ergibt:<br />

2Bk+1(0) =<br />

� 1<br />

0<br />

Bk+1(t) + Bk+1(1 − t) = 2Bk+1(0)<br />

� 1<br />

(Bk+1(t) + Bk+1(1 − t)) dt = Bk+1(t) dt − Bk+1(t) dt = 0 .<br />

0 � �� � 1 � �� �<br />

(ii) gilt also auch in diesem Fall. Gleichzeitig ist damit auch (iii) bewiesen. ✷<br />

Beweis von Satz 6.1: Für k = 0, . . ., 2m − 1 und jedes ϕ ∈ C2m [0, 1] gilt<br />

� 1<br />

Bk(t) ϕ (k) (t) dt = Bk+1(x) ϕ (k) � � 1<br />

�<br />

(x) − Bk+1(t) ϕ (k+1) (t) dt .<br />

Lemma 3.37 liefert:<br />

�1<br />

0<br />

0<br />

ϕ(t) dt =<br />

�1<br />

� 1<br />

0<br />

B0(t)ϕ(t) dt = 1<br />

(ϕ(0) + ϕ(1)) −<br />

2<br />

�1<br />

0<br />

0<br />

= 1<br />

2 (ϕ(0) + ϕ(1)) − B2(0) (ϕ ′ (1) − ϕ ′ �1<br />

(0)) +<br />

0<br />

= 1<br />

2 (ϕ(0) + ϕ(1)) − B2(0) (ϕ ′ (1) − ϕ ′ �1<br />

(0)) −<br />

.<br />

= 1<br />

(ϕ(0) + ϕ(1)) −<br />

2<br />

0<br />

0<br />

=0<br />

B1(t)ϕ ′ (t) dt<br />

B2(t)ϕ ′′ (t) dt<br />

m�<br />

B2k(0) � ϕ (2k−1) (1) − ϕ (2k−1) (0) � +<br />

k=1<br />

� 0<br />

=0<br />

B3(t)ϕ ′′′ (t) dt (3.97)<br />

�1<br />

0<br />

B2m(t)ϕ (2m) (t) dt .<br />

Wir setzen nun: ϕj(t) := hf(th + xj), 0 ≤ t ≤ 1, j = 0, . . .,n − 1. Dann gilt<br />

� xj+1<br />

xj<br />

f(x) dx =<br />

� 1<br />

0<br />

ϕj(t) dt<br />

und ϕ (2k−1)<br />

j (t) = h2kf (2k−1) (th + xj). (3.97) liefert daher:<br />

� b �n−1<br />

� 1<br />

m�<br />

f(x) dx = ϕj(t) dt = Th(f) − B2k(0) h<br />

a<br />

j=0 0<br />

k=1<br />

2k f (2k−1) �<br />

�<br />

(x) � b<br />

a<br />

n−1 � 1<br />

+ h 2m+1<br />

�<br />

j=0<br />

0<br />

B2m(t) f (2m) (th + xj) dt .<br />

125


Nun ist:<br />

�n−1<br />

h<br />

j=0<br />

� 1<br />

0<br />

B2m(t) f (2m) (th + xj) dt =<br />

n−1 � xj+1<br />

�<br />

j=0<br />

xj<br />

≤ �B2m�∞<br />

B2m<br />

� b<br />

a<br />

� x − xj<br />

h<br />

�<br />

f (2m) (x) dx<br />

|f (2m) (x)| dx ≤ const .<br />

Mit den Bernoulli–Zahlen B2k := (2k)!B2k(0) folgt die Behauptung. ✷<br />

Folgerung: Es gibt von h unabhängige (!) Konstanten α0, . . .,αm−1 und αm(h) mit<br />

|αm(h)| ≤ const. (von h unabhängige Konstante !), so daß<br />

(Dabei sei α0 := � b<br />

f(x) dx).<br />

a<br />

Th(f) =<br />

m−1 �<br />

3.8 Extrapolation. Das Romberg–Verfahren<br />

k=0<br />

αkh 2k + αm(h)h 2m . (3.98)<br />

Bei vielen numerischen Problemen ist lim F(h) für eine Funktion F gesucht. Der<br />

h→0+<br />

Aufwand zur Berechnung von F(h) wächst meist mit h → 0+ stark an; außerdem<br />

setzen Rundungsfehlereinflüsse eine Grenze, wie klein man h wählen kann. Oft hat<br />

man aber Kenntnis, wie sich F(h) − lim F(h) für h → 0+ verhält; es sei etwa:<br />

h→0+<br />

F(h) = α0 + α1h p + O(h r ) , r > p > 0 (3.99)<br />

wobei für α1 nur die Existenz, nicht der Wert bekannt sein muss.<br />

Wertet man F für zwei Werte, etwa h und qh (q > 1) aus, so folgt<br />

und aus (3.99)<br />

F(qh) = α0 + α1h p q p + O(h r ) ,<br />

q p F(h) = q p α0 + α1h p q p + O(h r ) ,<br />

also erhalten wir durch Subtraktion der beiden Gleichungen<br />

lim F(h) = α0 =<br />

h→0+<br />

qpF(h) − F(qh)<br />

qp + O(h<br />

− 1<br />

r ) . (3.100)<br />

Aus der Näherung p–ter Ordnung (3.99) ist also eine Näherung r–ter Ordnung geworden.<br />

Dieses Vorgehen nennt man (Richardson–) Extrapolation. Ist eine weitergehende<br />

Entwicklung nach Potenzen von h als in (3.99) bekannt, so kann das Vorgehen wiederholt<br />

werden.<br />

126


Bemerkung: Zur Erklärung der Bezeichnung Extrapolation überlege man sich:<br />

Bestimmt man zu F und den Knoten h und qh das Interpolationspolynom ˆp(x) =<br />

ˆα0 + ˆα1x p , so ist der Wert von ˆp an der Stelle 0 /∈ [h, qh] d.h. ˆp(0) = α0 (“Extra”–<br />

polation !) gerade gleich der aus (3.100) ablesbaren Näherung für lim F(h).<br />

h→0+<br />

Wir wenden nun die Extrapolation auf die Integration an:<br />

Vernachlässigt man bei der Entwicklung von Th(f) in (3.98) das Restglied, so läßt sich<br />

Th(f) als ein Polynom in h2 �b<br />

auffassen, das für h = 0 den Wert α0 = f(x) dx liefert.<br />

Dies legt zur Bestimmung von α0 die Richardson–Extrapolation nahe:<br />

Bestimme zu verschiedenen Schrittweiten h0, . . .,hm > 0 die zugehörigen Trapezsum-<br />

men Thi (f), i = 0, . . ., m. Dann gibt es ein eindeutiges Polynom p ∈ Πm (in h2 ) mit<br />

b<br />

p(hi) = Thi (f), i = 0, . . .,m. p(0) dient als verbesserte Näherung für<br />

a<br />

�<br />

f(x) dx.<br />

Da nicht p als Funktion von h2 gesucht ist, sondern nur der Wert p(0), bietet sich der<br />

Neville–Algorithmus für diese Aufgabe an.<br />

Sei h0 := b − a, hi := h0/ni, ni < ni+1, i = 1, . . ., m, und Ti0 := Thi (f). Ferner sei für<br />

1 ≤ k ≤ i ≤ m ˜ Tik(h) dasjenige Polynom vom Grade k in h2 , für das gilt<br />

˜Tik(hj) = Tj0 , j = i − k, i − k + 1, . . .,i .<br />

Dann gilt für die extrapolierten Werte Tik := ˜ Tik(0) nach dem Neville–Algorithmus<br />

� �2 hi−k<br />

Tik = Ti,k−1 + Ti,k−1 − Ti−1,k−1<br />

hi<br />

− 1<br />

, 1 ≤ k ≤ i ≤ m .<br />

Dieses Verfahren wurde erstmals von Romberg (1955) vorgeschlagen für die speziellen<br />

Schrittweiten hi = (b − a) 2 −i . Es vereinfacht sich dann zu (vgl. auch (3.100))<br />

Tik = 4k Ti,k−1 − Ti−1,k−1<br />

4 k − 1<br />

(Rombergverfahren) .<br />

Man erhält das folgende Schema von Näherungswerten für<br />

T00<br />

T10<br />

✟<br />

T20<br />

✟<br />

✟<br />

T30 ✟<br />

✟ ✟<br />

❍<br />

❍<br />

T11<br />

❍<br />

❍ ✟<br />

T21<br />

❍ ✟<br />

❍ ✟<br />

T31 ✟<br />

❍<br />

❍<br />

T22 ❍<br />

❍<br />

❍ ✟ T33<br />

❍ ✟<br />

T32<br />

127<br />

�b<br />

a<br />

f(x)dx:<br />

a


In der ersten Spalte stehen die Näherungen nach der zusammengesetzten Trapezregel.<br />

Man rechnet leicht nach, daß in der zweiten bzw. dritten Spalte die Näherungen<br />

nach der zusammengesetzten Simpson– bzw. Milne–Regel stehen. Die vierte Spalte<br />

entspricht keiner (zusammengesetzten) Newton–Cotes–Formel.<br />

Bei der praktischen Durchführung beachte man, daß beim Romberg–Verfahren bei der<br />

Berechnung von Ti+1,0 auf die schon bei Ti0 berechneten Funktionswerte zurückgegriffen<br />

werden kann; es gilt<br />

Ti+1,0 = Thi/2(f) = hi<br />

4<br />

�<br />

�<br />

ni−1 �<br />

f(a) + 2<br />

2ni−1 �<br />

j=1<br />

= hi<br />

f(a) + 2 f(a + jhi) + f(b)<br />

4<br />

j=1<br />

= 1<br />

�<br />

ni �<br />

�<br />

Ti0 + hi f a +<br />

2<br />

j=1<br />

f<br />

�<br />

2j − 1<br />

hi<br />

2<br />

�<br />

�<br />

a + j hi<br />

�<br />

2<br />

�<br />

.<br />

+ hi<br />

2<br />

+ f(b)<br />

ni �<br />

j=1<br />

f<br />

�<br />

�<br />

a +<br />

�<br />

2j − 1<br />

hi<br />

2<br />

Ein Nachteil der Romberg–Folge hi = h0 · 2 −i ist, daß die Zahl der Funktionsauswertungen<br />

zur Bestimmung von Ti0 exponentiell steigt. Von Bulirsch (1963, 1964) wurden<br />

daher vorgeschlagen:<br />

a) hi = h0<br />

2i<br />

(Bulirsch–Folge I),<br />

b) h2i−1 = 2 −i h0 , h2i = 1<br />

3 2−i+1 h0 , i ∈ N (Bulirsch–Folge II).<br />

Für die Konvergenz des Extrapolationsverfahrens zitieren wir ohne Beweis:<br />

Satz 3.38 Sei f ∈ C 2m+2 [a, b]. Dann existieren Ck > 0 mit<br />

�<br />

�<br />

�<br />

�Tik −<br />

� b<br />

a<br />

�<br />

�<br />

f(x) dx�<br />

� ≤<br />

h1<br />

h2<br />

h3<br />

h4<br />

h5<br />

Ck<br />

(2k + 2)!<br />

k�<br />

j=0<br />

h 2 i−j<br />

Romberg Bulirsch I Bulirsch II<br />

1<br />

2<br />

1<br />

4<br />

1<br />

8<br />

1<br />

16<br />

1<br />

32<br />

1<br />

2<br />

1<br />

4<br />

1<br />

6<br />

1<br />

8<br />

1<br />

10<br />

128<br />

, k = 0, . . .,m .<br />

1<br />

2<br />

1<br />

3<br />

1<br />

4<br />

1<br />

6<br />

1<br />

8


3.9 Methoden von Neville und Aitken<br />

Mit dem Algorithmus von Neville kann man den Wert des Interpolationspolynoms an<br />

einer Stelle x berechnen, ohne das Polynom selbst zu berechnen.<br />

Bei gegebenen Stützpunkten (xi, yi), i = 0, . . ., n, bezeichnen wir mit pi0...ik ∈ Πk das<br />

eindeutige Polynom mit pi0...ik (xij ) = yij , j = 0, . . ., k. Dann gilt die Rekursionsformel<br />

a) pi(x) = yi<br />

(x − xi0)pi1...ik (x) − (x − xik<br />

)pi0...ik−1 (x)<br />

b) pi0...ik (x) =<br />

xik − xi0<br />

(3.101)<br />

a) ist trivial. Zum Beweis von b) bezeichnen wir mit q die rechte Seite von b) und<br />

zeigen, daß q die Eigenschaften von pi0...ik besitzt. Natürlich ist grad q ≤ k. Ferner<br />

haben wir nach Definition von pi1...ik und pi0...ik−1 :<br />

und für j = 1, . . ., k − 1:<br />

q(xi0) = pi0...ik−1 (xi0) = yi0<br />

q(xik ) = pi1...ik (xik ) = yik<br />

(xij − xi0)yij − (xij − xik )yij<br />

q(xij ) = = yij .<br />

xik − xi0<br />

Wegen der Eindeutigkeit der Polynominterpolation folgt daher<br />

q = pi0...ik .<br />

Der Algorithmus von Neville besteht darin, mit Hilfe von a) und b) das folgende symmetrische<br />

Tableau, das die Werte der interpolierenden Polynome pi,i+1,...,i+k an der<br />

festen Stelle x enthält, aufzustellen.<br />

Zur Abkürzung schreiben wir Pi,k = pi−k,i−k+1,...,i(x) für i ≥ k:<br />

x0<br />

x1<br />

x2<br />

x3<br />

x4<br />

y0 = P00<br />

y1 = P10<br />

y2 = P20<br />

y3 = P30<br />

y4 = P40<br />

✟<br />

✟<br />

✟ ✟<br />

✟ ✟<br />

✟ ✟<br />

❍<br />

❍<br />

P11<br />

❍<br />

❍<br />

P21<br />

❍<br />

❍ ✟<br />

P31<br />

❍ ✟<br />

❍ ✟<br />

P41 ✟<br />

✟ ✟<br />

❍<br />

❍<br />

P22<br />

❍<br />

❍ ✟<br />

P32<br />

❍ ✟<br />

❍ ✟<br />

P42 ✟<br />

❍<br />

❍<br />

P43<br />

❍<br />

❍ ✟<br />

P33<br />

✟<br />

❍<br />

❍<br />

P44<br />

129


Aus a), b) ergeben sich die Rekursionsformeln<br />

a’) Pi0 := yi<br />

b’) Pi,k := (x − xi−k)Pi,k−1 − (x − xi)Pi−1,k−1<br />

xi − xi−k<br />

= Pi,k−1 + Pi,k−1 − Pi−1,k−1<br />

, 1 ≤ k ≤ i , i = 1, 2, . . . .<br />

x−xi−k − 1 x−xi<br />

(3.102)<br />

Speziell für x = 0 wird die Rekursion a’), b’) später in sogenannten Extrapolationsalgorithmen<br />

(z. B. Rombergverfahren zur numerischen Quadratur) angewendet. In diesem<br />

Spezialfall erhält man<br />

a”) Pi0 := yi<br />

b”) Pik := Pi,k−1 + Pi,k−1 − Pi−1,k−1<br />

xi−k , 1 ≤ k ≤ i , i = 1, 2, . . . .<br />

− 1<br />

xi<br />

(3.103)<br />

Die Methode von Aitken baut ebenfalls auf der Rekursion a), b) auf. Sie unterscheidet<br />

sich vom Neville Algorithmus nur in der Reihenfolge, in der die Pik berechnet werden.<br />

3.10 Schrittweitensteuerung<br />

Bis jetzt haben wir asymptotische Eigenschaften (h → 0) von (Ah) besprochen, die<br />

erlauben Verfahren untereinander zu vergleichen. Will man eine konkrete Rechnung<br />

durchführen und hat sich für ein Verfahren entschieden, möchte man die Schrittweiten<br />

so wählen, dass ein Fehlerniveau ˜ε für den globalen Fehler möglichst nicht überschritten<br />

und möglichst große Schritte zur Reduktion des Aufwands und der Rundungsfehlerfortpflanzung<br />

gemacht werden. Die Wahl einer Konstanten h direkt aufgrund von (3.55)<br />

oder (3.62) ist i. Allg. nicht sinnvoll, selbst wenn die Faktoren, die die Fortpflanzung der<br />

lokalen Fehler beschreiben, realistisch abgeschätzt werden können, da die Konstanten<br />

C in den Konsistenzordnungsaussagen<br />

� τh �h ≤ Ch p bzw. �lh(tj)� ≤ Ch p hj.<br />

nicht explizit vorliegen. Außerdem sind sie durch den lokalen Verlauf der exakten<br />

Lösung y bestimmt, so dass es besser ist, die Schrittweite im Verlauf der Rechnung<br />

anzupassen.<br />

Eine Schrittweitensteuerung, die dies leistet, hat folgende Struktur:<br />

130


1. Wahl einer Genauigkeit ˜ε für den globalen Fehler<br />

2. Bestimmung einer Genauigkeit ε daraus für den lokalen Fehler<br />

(lh(tj) oder hj−1τh(tj−1)) in einem Schritt<br />

tj−1 ❀ tj = tj−1 + hj−1<br />

Liegt yj−1 vor (etwa j = 1) und hj−1 (bei j = 1 durch Schätzung), dann:<br />

3. (Vorläufige) Bestimmung von yj und Schätzung des lokalen Fehlers<br />

4. Akzeptieren oder Verwerfen von yj aufgrund von (3)<br />

Bei Verwerfen: Neubestimmung von hj−1<br />

weiter bei (3)<br />

Bei Akzeptieren: Neubestimmung von hj,<br />

j := j + 1, weiter bei (3).<br />

zu (3): Schätzung des lokalen Fehlers:<br />

Wir betrachten lh(tj) (für hj−1τh(tj−1) analog) und setzen voraus<br />

mit einer glatten Funktion ϕp.<br />

lh(tj) = ϕp(tj−1, yj−1)h p+1<br />

j−1<br />

+ O(hp+2 j−1 ) (3.104)<br />

Das ist etwas mehr als Konsistenzordnung p zu fordern, bei den RK Verfahren für<br />

glatte f aber erfüllt (vgl. z.B. (3.31)). Ziel ist es also, den führenden Fehlerterm<br />

) zu schätzen. Dazu gibt es<br />

ϕp(tj−1, yj−1)h p+1<br />

j−1<br />

bis auf einen Fehler O(hp+2<br />

j−1<br />

(3a) : Die Methode der Schrittweitenverkleinerung<br />

Sei h := hj−1. Man führt den Schritt tj−1 ❀ tj mit kleiner Schrittweite, i. Allg.<br />

h/2, nocheinmal durch, hat also mindestens 2 weitere Einzelschritte und erreicht<br />

Lemma 3.39 Es gelte (3.104), fh sei Lipschitzstetig, sei<br />

yj = yj−1 + hfh(tj−1, yj−1)<br />

y j−1/2 = yj−1 + h<br />

2 fh/2(tj−1, yj−1)<br />

y j = y j−1/2 + h<br />

2 fh/2(tj−1/2, y j−1/2),<br />

wobei tj−1/2 = tj−1 + h<br />

2 ,<br />

131


dann<br />

2p 2p − 1 (yj − yj) = ϕp(tj−1, yj−1)h p+1 + O(h p+2 ), (3.105)<br />

d.h.<br />

2p 2p − 1 (yj − yj) ist ein Schätzer für lh(tj).<br />

Beweis:<br />

yj + 2p<br />

2 p − 1 (y j − yj) hat einen lokalen Fehler der Ordnung p + 1 . (3.106)<br />

Setze ˆy(t) = y(t; tj−1, yj−1) zur Abkürzung, dann gilt:<br />

(1) ˆy(tj) − yj = ϕp(tj−1, yj−1)h p+1 + O(h p+2 ),<br />

(2) ˆy(tj−1/2) − y j−1/2 = ϕp(tj−1, yj−1)( h<br />

2 )p+1 + O(h p+2 ),<br />

und da ˆy(tj) = y(tj; tj−1/2, ˆy(tj−1/2))<br />

ˆy(tj) = ˆy(tj−1/2)+ h<br />

also<br />

2 fh/2(tj−1/2, ˆy(tj−1/2))+ ϕp(tj−1/2, ˆy(tj−1/2)) ( h<br />

2 )p+1 +O(h p+2 ),<br />

(3) ˆy(tj) − y j = ˆy(tj−1/2) − y j−1/2+<br />

h<br />

2 [fh/2(tj−1/2, ˆy(tj−1/2)) − fh/2(tj−1/2, y j−1/2)]+<br />

ϕp(tj−1, ˆy(tj−1))( h<br />

2 )p+1 + O(h p+2 ) .<br />

Durch Entwicklung von ϕp um (tj−1, yj−1) (alle höheren Terme in O(h p+2 )) und<br />

wegen der L-Stetigkeit von fh/2 und (2) ist h<br />

2 [. . .] = O(hp+2 ), d.h. aus (2), (3) folgt<br />

und daraus folgt schließlich mit (1)<br />

ˆy(tj) − y j = 2ϕp(tj−1, yj−1)( h<br />

2 )p+1 + O(h p+2 )<br />

y j − yj = y j − ˆy(tj) + ˆy(tj) − yj = (1 − 2 · 2 −(p+1) )ϕp(tj−1, uj−1)h p+1 + O(h p+2 )<br />

Daraus folgt (3.105) und aus (1) auch (3.106).<br />

Extrapolation wie in Abschnitt 3.6 dargestellt ist eine Verallgemeinerung der Schrittweitenhalbierung.<br />

Insofern ist es nicht verwunderlich, dass auch dort Größen berechnet<br />

132<br />


werden, die zur Schätzung dienen können: Da der Aufwand für das Neville-Tableau<br />

nach Berechnung der yk vernachlässigbar ist, wird man es vollständig bis TNN aufstellen<br />

(siehe Abschnitt 3.6)<br />

Der “zweitgenaueste” Wert ist dann TN,N−1. Dies legt nahe eine Ordnungs- (durch<br />

Wahl von N) und Schrittweitensteuerung dadurch vorzunehmen, dass man TNN−1<br />

als Näherung auffasst und wie bei den eingebetteten Verfahren TNN zur Schätzung des<br />

lokalen Fehlers nimmt, d.h.<br />

lokaler Fehler von TNN−1 ∼ TNN − TNN−1<br />

(3.107)<br />

und dann tatsächlich die Näherung TNN benutzt. Hier kann also nicht nur H, sondern<br />

auch N variiert werden, d.h. neben Schrittweitensteuerung auch Ordnungssteuerung<br />

betrieben werden. Beachte, dass dieses subdiagonale Fehlerkriterium für<br />

N = 2, n1 = 1, n2 = 2 auf den Schätzer<br />

y j − yj<br />

2 p − 1<br />

, nicht auf<br />

2 p<br />

2 p − 1 (y j − yj)<br />

(diagonales Kriterium) führt. Verfeinerungen der Ordnungs- und Schrittweitensteuerung<br />

stammen von Deuflhard (83).<br />

Mit wachsender Genauigkeitsforderung (ε klein) wächst die Ordnung N, sollte<br />

aber auf ein Nmax beschränkt werden. Bei Glattheitsabfall der Lösung sollte sie<br />

entsprechend abfallen.<br />

Eine Alternative zur Schrittweitensteuerung ist<br />

(3b) : Die Methode der eingebetteten Verfahren<br />

Man macht den gleichen Schritt tj−1 ❀ tj mit einem weiteren Verfahren höherer<br />

Konsistenzordnung q > p d.h.<br />

Gilt zusätzlich zu (3.104) für (3.108)<br />

dann<br />

yj = yj−1 + hj−1fh(tj−1, yj−1)<br />

y j = yj−1 + hj−1f h(tj−1, yj−1) .<br />

lh(tj) = ϕq(tj−1, yj−1)h q+1<br />

j−1 + O(hq+2 ) ,<br />

y − yj = lh(tj) − lh(tj)<br />

= ϕp(tj−1, yj−1)h p+1<br />

j−1 + O(hp+2 ) ,<br />

133<br />

(3.108)<br />

(3.109)


d.h. y−yj ist ein möglicher Fehlerschätzer. Im Prinzip ist für f h jedes (RK) Verfahren<br />

mit Ordnung q ≥ p + 1 möglich. Um den zusätzlichen Aufwand zu begrenzen, wählt<br />

man q = p + 1 und ”eingebettete Verfahren”, d.h. RK Verfahren, bei denen die<br />

Funktionsauswertungen von fh bei f h wiederverwendet werden.<br />

Beispiele:<br />

(i) Das Verfahren von Heun (3.12) (p = 2) hat die Erweiterung (p = 3)<br />

1 1<br />

1<br />

2<br />

1<br />

2<br />

❀<br />

1 1<br />

1<br />

2<br />

1<br />

4<br />

1<br />

6<br />

1<br />

4<br />

1<br />

6<br />

2<br />

3<br />

(1.13) Erweiterung<br />

(3.110)<br />

d. h. bei Auswertung von fh ist nur 1 (nicht 2) weitere Auswertungen von<br />

f nötig.<br />

(ii) Erweiterung des Verfahrens von England (p = 4)<br />

1 1<br />

2 2<br />

1 1 1<br />

2 4 4<br />

1 0 −1 2<br />

2<br />

3<br />

1<br />

5<br />

γ<br />

γ<br />

7<br />

27<br />

10<br />

27<br />

0<br />

28<br />

625 −125<br />

625<br />

546<br />

625<br />

1<br />

6<br />

0<br />

2<br />

3<br />

14<br />

336<br />

0 0<br />

1<br />

27<br />

54<br />

625 −378<br />

625<br />

1<br />

6<br />

35 162<br />

336 336<br />

125<br />

336<br />

d.h. 2 zusätzliche Auswertungen sind hier nötig.<br />

Der Schätzer ist hier also gegeben durch:<br />

⎫<br />

⎪⎬<br />

⎪⎭<br />

Verfahren<br />

von<br />

England<br />

1<br />

336 (−42k1 − 224k3 − 21k4 + 162k5 + 125k6)hj−1<br />

134<br />

⎫<br />

⎪⎬<br />

Erweiterung<br />

⎪⎭<br />

(3.111)


(iii) Der Aufwand kann noch weiter reduziert werden, wenn die γ Zeile des niedrigen<br />

Verfahrens eine β Zeile der Erweiterung ist mit α = 1, wie bei den Verfahren von<br />

Dormand/Prince (1980) und den Verfahren von Fehlberg, etwa RKF 2(3) B:<br />

1 1<br />

4 4<br />

27<br />

40 −189<br />

800<br />

214<br />

1<br />

891<br />

γ<br />

γ<br />

214<br />

891<br />

533<br />

2106<br />

729<br />

800<br />

1<br />

33<br />

1<br />

33<br />

0<br />

650<br />

891<br />

650<br />

891<br />

800<br />

1053<br />

− 1<br />

78<br />

⎫<br />

⎬<br />

⎭ fh<br />

⎫<br />

⎪⎬<br />

fh Wird nämlich der Schritt tj−1 ❀ tj akzeptiert, dann muss bei tj ❀ tj+1<br />

⎪⎭<br />

(3.112)<br />

k neu<br />

1 = f(tj, yj) nicht mehr ausgewertet werden, da im alten Schritt schon berechnet<br />

wurde:<br />

�<br />

k4 = f<br />

�<br />

= f<br />

tj−1 + hj−1, yj−1 + hj−1<br />

tj, yj−1 + hj−1<br />

= f(tj, yj) = k neu<br />

1 .<br />

Hier gilt also für die Funktionsauswertungen<br />

Ordnung p = 2 minimal 2<br />

p = 2 eingebettet (i) 3<br />

RKF 2(3) B 3 bei Akzeptanz<br />

Allgemein gilt:<br />

3�<br />

ν=1<br />

γνkν<br />

�<br />

3�<br />

ν=1<br />

p 1 2 3 4 5 6 7<br />

s 1 2 3 4 6 7 9<br />

s ∗ 2 3 5 6 8 10 13<br />

s ∗∗ 2 4 6 9 12 15 ≥ 18<br />

β4νkν<br />

Dabei ist s die Mindestanzahl an Stufen für die Ordnung p, s ∗ für p, p + 1 eingebettet,<br />

s ∗∗ für p, p + 1 unabhängig d.h. es gilt s ∗ ∼ 1, 5 ∗ s.<br />

Zu (4): Akzeptanz/Verwerfen des Schritts, neue Schrittweite<br />

135<br />


Es liege ein Schätzer E für �lh(tj)� vor, etwa durch (3.105) oder (3.108). Die Vorgehensweise<br />

ist dann z.T. heuristisch.<br />

Einfache Variante:<br />

Algorithmus A: Es seien Steuerparameter α < 1 < β, γ1,2 < 1, γ3 > 1 gegeben<br />

(etwa β = 2, α = 1<br />

2 , γ1 = 1<br />

2 , γ2 = 0.9, γ3 = 1.1)<br />

Ist E ≥ βε, verwerfe den Schritt und wiederhole mit hj−1 := γ1hj−1, sonst:<br />

Ist E > ε, mache neuen Schritt mit hj = γ2hj−1, sonst:<br />

Ist E < αε, mache neuen Schritt mit hj = γ3hj−1,<br />

sonst: mache neuen Schritt mit hj−1.<br />

Fundierter ist, das benutzte hj−1, mit dem “optimalen” h∗ zu vergleichen, für das<br />

gilt:<br />

ε = �ϕp (tj−1, yj−1)h ∗p+1 � = �ϕp(tj−1, yj−1)h p+1<br />

� � ∗ p+1<br />

h<br />

j−1� ·<br />

hj−1<br />

d.h.<br />

also<br />

Algorithmus B:<br />

� ∗ h<br />

ε ∼ E<br />

Sei h ∗ �<br />

ε<br />

:=<br />

E<br />

hj−1<br />

� p+1<br />

�1/(p+1) hj−1 .<br />

Ist h ∗ < γ1 hj−1, dann wird der Schritt verworfen und mit hj−1 := h ∗ wiederholt.<br />

Ansonsten wird ein neuer Schritt ausgeführt mit<br />

� � �<br />

ǫ<br />

� ��<br />

1/(p+1)<br />

˜hj := hj−1 min γ4, max γ3, γ2 ,<br />

E<br />

hj := max( ˜ hj, h) .<br />

Dabei sind γ1 ≤ 1, γ2 ≤ 1, γ3 < 1, γ4 > 1 Steuerparameter, die insbesondere wegen<br />

˜hj−1 ∈ [γ3hh−1, γ4hj−1]<br />

eine zu starke Änderung von h verhindern sollen (wenn E etwa ”zufällig” klein ist).<br />

Für γ2 gibt es die Vorschläge 0.8, 0.9, (0.25) 1/(p+1) oder (0.38) 1/(p+1) , γ3 = 0.5,<br />

γ4 = 2 ist üblich.<br />

hj ≥ h soll den Einfluss der Rundungsfehler begrenzen bei entsprechend vorgegebenen<br />

h (vgl. (3.56))<br />

Shampine/Watts setzen nach Schrittzurückweisung temporär γ4 = 1.<br />

136<br />

,


Zu (2):Wahl des lokalen Fehlerniveaus:<br />

Dazu ist eine (problematische) Abschätzung der Verstärkungsfaktoren in (3.55) bzw.<br />

(3.62) nötig. Für kleine L nimmt man nur den Anteil (T − t0), d. h.<br />

Sollen relative Fehler begrenzt werden, dann<br />

ˆε = ˜ε/(T − t0) . (3.113)<br />

ε = ˆε · �˜yj� , (3.114)<br />

wobei ˜yj die Approximation höherer Ordnung für y(tj) ist, d.h.<br />

bei (3a) ˜yj = yj + 2p<br />

2p − 1 (yj − yj) = 2pyj − yj<br />

2p − 1<br />

bei (3b) ˜yj = y j (vom Verfahren der Ordnung q).<br />

Statt (3.113) kann man auch gemischte Skalierungsfaktoren verwenden, d. h.<br />

ε := ˆε · max(�˜yj�, 1) oder<br />

ε := ˆε · max(�˜yj�, 10 −6 )<br />

(3.115)<br />

(3.116)<br />

Im Allgemeinen garantieren die Schrittweitensteuerungen die Größenordnung des lokalen<br />

Fehlers, doch (3.113) kann kritisch sein, so dass der globale Fehler um Größenordnungen<br />

größer ist.<br />

Schlußbemerkung: Obwohl nicht abgesichert, wird oft der Schritt mit den besseren<br />

Näherungen nach (3.115) gemacht.<br />

3.11 Stabilität bei fester Schrittweite, steife Differentialgleichungen<br />

Es gibt Differentialgleichungen, bei denen trotz Verfahren hoher Konvergenzordnung<br />

und Schrittweitensteuerung Probleme auftreten.<br />

Beispiel:<br />

n = 1, y ′ (t) = λ(y(t) − g(t)) + g ′ (t), y(0) = y0,<br />

wobei λ ∈ R, und g ∈ C 1 (R + ) eine schwachvariierende Funktion ist. Die Lösung ist<br />

y(t) = g(t) + exp(λt)(y0 − g(0)), für t ≥ 0. (3.117)<br />

137


Sei λ > 0.<br />

Für y0 = g(0) ist y(t) = g(t), für y0 = ˜g0 �= g(0) (etwa durch Rundung) ist<br />

y(t) = y(t) + exp(λt)(˜g0 − g(0)), d.h. für große λ, t weichen die (exakten) Lösungen<br />

stark ab. Diese schwache stetige Abhängigkeit von den Anfangsdaten führt zu einer<br />

inhärenten Instabilität des Problems, die die Genauigkeit der numerischen Lösung<br />

begrenzen (vgl. (3.55), (3.56)).<br />

Sei λ < 0.<br />

Hier ist y(t) − y(t) = exp(λt)(˜g0 − g(0)) für große λ stark abfallend und sollte nach<br />

kurzer Zeit vernachlässigbar sein. Die Schrittweitensteuerung sollte sich also nur<br />

an dem Lösungsanteil g orientieren können. Trotz der inhärenten Stabilität des<br />

Problems (vgl. (3.60), (3.62)) können Probleme bei der numerischen Lösung auftreten.<br />

y<br />

�>0<br />

g<br />

Als Beispiel betrachten wir konstante Schrittweite h.<br />

a) explizites Eulerverfahren: yj+1 = yj + hf(tj, yj) ⇒<br />

t<br />

yj+1 = yj + h(λ(yj − gj) + g ′ j ), wobei gj := g(tj) etc.<br />

= (1 + hλ)(yj − gj) + gj + hg ′ j<br />

= (1 + hλ)(yj − gj) + gj+1 + O(h 2 ) .<br />

Die exakte Lösung erfüllt (mit t = tj als Startpunkt betrachtet):<br />

y<br />

g<br />


im Gegensatz zur “convergence stability” für die asymptotischen Aussagen:<br />

vgl. Definition 3.18).<br />

b) implizites Eulerverfahren: yj+1 = yj + hf(tt1, yj+1) ⇒<br />

yj+1 = yj + h(λ(yj+1 − gj+1) + g ′ j+1) ⇒<br />

yj+1 =<br />

1<br />

1 − hλ ((yj − gj) + gj + hg ′ j+1<br />

=<br />

=<br />

− hλgj+1)<br />

1<br />

1 − hλ (yj − gj) + 1<br />

1 − hλ (gj+1 + O(h 2 ) − hλgj+1)<br />

1<br />

1 − hλ (yj − gj) + gj+1 + O(h 2 ) . (3.121)<br />

Wegen 0 < 1 < 1 für λ < 0 und alle h > 0 ist hier also keine Einschränkung aus<br />

1−hλ<br />

Stabilitätsgründen nötig.<br />

Lange wurde die Stabilitätsfrage nur untersucht für die lineare Testaufgabe<br />

y ′ = Qy, y(t0) = y0 mit Q ∈ R (n,n) . (3.122)<br />

Obwohl die Theorie inzwischen auch für nichtlineare Probleme entwickelt ist und die<br />

Übertragung der Ergebnisse für (3.122) direkt auf den nichtlinearen Fall (durch Linearisierung<br />

entlang der Lösung) problematisch ist, beschränken wir uns auf (3.122) unter<br />

der Voraussetzung: Q ist diagonalähnlich, d.h.<br />

B −1 Q B = D = diag (q1, · · · , qn) (3.123)<br />

für ein B ∈ C (n,n) qi ∈ C .<br />

qi ist also Eigenwert von Q zum Eigenvektor ci = Bei, ei = (0, · · · , 1, · · ·0) T und<br />

yi(t) := ci exp(qi(t − t0)), i = 1, · · · , n (3.124)<br />

sind eine Basis des Lösungsraums von y ′ = Qy, d.h. die Lösung von (3.122) ist gegeben<br />

durch<br />

n�<br />

n�<br />

y(t) = αiyi(t), wobei αici = y0 . (3.125)<br />

i=1<br />

Bei Anwendung auf (3.122) nehmen die bisher betrachteten Verfahren eine spezielle<br />

Gestalt an, z.B. (bei konstanter Schrittweite h)<br />

explizites Euler-Verfahren: yj+1 = yj + hQyj ⇒<br />

yj+1 = g(hQ)yj<br />

139<br />

i=1<br />

(3.126)


Diskret<br />

Exakt<br />

mit g(hQ) = I + hQ, d.h. g(λ) = 1 + λ .<br />

ˆy = (yj) j<br />

ˆy = � n�<br />

αi˜yi,<br />

i=1<br />

(˜yj) j = g(hqi) j ci<br />

y(t) = � αiyi(t),<br />

αici = y0<br />

n�<br />

i=1<br />

yi(t) = exp (qi(t − t0))ci<br />

αici = y0<br />

(yi) j = yi(tj) = exp(qijh)ci<br />

= exp(qih) j ci<br />

y0 = � αici<br />

ˆy = (˜y1, . . ., ˜yn)α<br />

y = (y1, . . ., yn)α<br />

Allgemeiner: Ist g eine rationale Funktion, d.h.<br />

dann setzt man:<br />

g(B) =<br />

g(λ) =<br />

n�<br />

αiB i<br />

�<br />

m�<br />

βiB i<br />

i=0<br />

i=0<br />

n�<br />

i=0<br />

� −1<br />

implizites Euler: yj+1 = yj + hQyj+1 ⇒<br />

Allgemein:<br />

αiλ i<br />

�<br />

�m<br />

βiλ i<br />

i=0<br />

für B ∈ R n,n<br />

yj+1 = g(hQ)yj mit g(λ) = 1<br />

1 − λ<br />

140<br />

– falls existiert –<br />

für λ �= 1 (3.127)


Definition 3.40 (Ah) gehört zur Klasse (D), wenn gilt<br />

1. (Ah) ist konsistent mit (A).<br />

2. Es gibt eine Umgebung U von z = 0 in C und ein analytisches g : U → C,<br />

so dass (Ah) angewandt auf (3.122) ergibt<br />

yj+1 = g(hQ)yj, j = 0, . . ., N . (3.128)<br />

Analog zu (3.124), (3.125) lässt sich die allgemeine Lösung von (3.128) angeben durch<br />

die Basis des Lösungsraums von (3.128):<br />

also<br />

˜yi,j = cig(hqi) j , i = 1, . . .,n, j = 0, . . ., N + 1, (3.129)<br />

yj =<br />

n�<br />

αi˜yi,j mit<br />

i=1<br />

g(hqi) ist also die Approximation für exp(hqi).<br />

n�<br />

αici = y0 . (3.130)<br />

Beispiel: n = 2,<br />

A = 1<br />

⎛<br />

⎝<br />

2<br />

q1<br />

⎞<br />

+ q2 q1 − q2<br />

⎠ .<br />

q1 − q2 q1 + q2<br />

Dann sind die qi die Eigenwerte mit den Eigenvektoren � � � � 1 1<br />

bzw. , d.h. die Basen<br />

1<br />

−1<br />

aus (3.124) bzw. (3.129) lauten für das explizite Euler-Verfahren:<br />

y1(t) = � � 1<br />

exp(q1(t − t0)), y2(t) = 1<br />

� � 1<br />

exp(q2(t − t0))<br />

−1<br />

˜y1,j = � 1<br />

1<br />

i=1<br />

�<br />

(1 + q1h) j , ˜y2,j = � � 1<br />

(1 + q2h) j<br />

Sind Re q2 < Re q1 < 0, so sind yi, also auch y in einer Vektornorm monoton fallend.<br />

Damit auch yj diese Eigenschaft hat, muss analog zu (3.119) gelten:<br />

Für reelle qi bedeutet dies:<br />

−1<br />

|1 + hqi| < 1 . (3.131)<br />

h < − 2<br />

Re q2<br />

< − 2<br />

Re q1<br />

Die Schrittweitenschranke wird also durch den kleinsten Realteil eines Eigenwerts<br />

bestimmt, auch wenn seine Lösungskomponente schon abgeklungen ist.<br />

141<br />

.


Lineare Aufgaben mit diesem Problem, d.h. mit Eigenwerten qi, so dass Re qi < 0 und<br />

max | Re qi| >> min | Re qi| heißen steif.<br />

Allgemein tritt anstelle von (3.131) die Forderung<br />

|g(hq)| < 1 für Eigenwerte q mit Re q < 0 . (3.132)<br />

Wenn dies für alle h > 0 gilt, heißt (Ah) absolut stabil, ansonsten sind Schrittweitenschranken<br />

nötig, d.h.<br />

Definition 3.41 (Ah) gehöre zur Klasse (D).<br />

HA(0) := {z ∈ C||g(z)| < 1}<br />

heißt der Bereich der absoluten Stabilität.<br />

(Ah) heißt absolut stabil (A–stabil), wenn<br />

z ∈ C, Re z < 0 ⇒ z ∈ HA(0) .<br />

HA(0) ist symmetrisch zu Im z = 0, da:<br />

Wegen<br />

g(z) = g(z), also |g(z)| = |g(z)|<br />

gilt nämlich<br />

Also:<br />

z ∈ HA(0) ⇔ z ∈ HA(0).<br />

explizites Euler-Verfahren: HA(0) = {z ∈ C| |z + 1| < 1}<br />

nicht absolut stabil<br />

implizites Euler-Verfahren: HA(0) = {z ∈ C| |z − 1| > 1}<br />

absolut stabil<br />

H A(0)<br />

-1<br />

C<br />

explizites Euler-Verfahren<br />

142<br />

H (0)<br />

A<br />

C<br />

implizites Euler-Verfahren<br />

1


Bei Re q < 0 gilt für die exakte Lösung nicht nur | exp(q(t − t0))| → 0 für t → ∞,<br />

sondern auch<br />

| exp(q(ti+1 − t0))| = | exp(qh)|| exp(q(ti − t0))| mit<br />

| exp(qh)| → 0 für Re q → −∞ .<br />

Die entsprechende Eigenschaft für (Ah) ist<br />

Definition 3.42 (Ah) Sei absolut stabil.<br />

Gilt<br />

g(z) → 0 für Re z → −∞ und Im z beschränkt,<br />

so heißt (Ah) stark absolut stabil (L−stabil).<br />

Fehlt diese Eigenschaft, so können Komponenten zu q mit Re q


Für die zweite Äquivalenz beachte man nämlich:<br />

u 2 + 2µu − µ 2 u 2<br />

(1 + (1 − µ)u) 2 − (1 − µu) 2 = 2(1 − µ)u + (1 − µ) 2<br />

� �� �<br />

1−2µ+µ 2<br />

= (2(1 − µ) + 2µ)u + (1 − 2µ)u2 = 2u + u 2 − 2µu 2<br />

= u 2 + 2(1 − µu)u<br />

Für die A−Stabilität muß dies gelten für alle u < 0, v ∈ R :<br />

Die Richtung: µ ≥ 1<br />

2<br />

⇒ (∗) ergibt sich sofort. Anderseits<br />

(∗) ⇒ für v = 0 : 2u + (1 − 2µ)u 2 < 0 für u < 0<br />

⇒ 2 + (1 − 2µ)u > 0<br />

Die Annahme µ < 1<br />

führt mit u → −∞ zu einem Widerspruch.<br />

2<br />

zu 2): Für µ = 1 ist |g(z)| =<br />

u → −∞. Allgemein:<br />

1<br />

|1 − z| =<br />

Ist 0 < µ ≤ 1, dann folgt durch Kürzen mit u 2 :<br />

|g(z)| 2 =<br />

(u −2 + 1 − µ) 2 + (1 − µ) 2<br />

(u −2 − µ) 2 + µ 2<br />

1<br />

((1 − u) 2 + v2 also |g(z)| → 0 für<br />

) 1/2<br />

�<br />

v<br />

�<br />

u<br />

v<br />

�2 u<br />

� 2<br />

�<br />

1 − µ<br />

→<br />

µ<br />

für u → −∞ und v beschränkt, also g(z) → 0 für Re(z) → −∞ ⇒ µ = 1.<br />

Für µ = 0 ist |g(z)| 2 = (1 + u) 2 + v 2 → + ∞ für u → −∞<br />

� 2<br />

(3.134)<br />

�Insbesondere<br />

gilt für die implizite Trapezregel bzw. das Crank-Nicolson Verfahren<br />

µ = 1<br />

�<br />

2<br />

2 + z<br />

g(z) = , also g(u) → −1 für u ∈ R, u → −∞ . (3.135)<br />

2 − z<br />

Hier werden also Lösungsanteile zu großen negativen Eigenwerten fast ungedämpft<br />

oszillierend fortgepflanzt, was das Verfahren unbrauchbar machen kann. Die Identität<br />

(∗) zeigt insbesondere aber auch, dass hier sogar gilt<br />

HA(0) = {z ∈ C | Rez < 0} .<br />

144<br />


Im Gegensatz zum impliziten Euler-Verfahren, wo HA(0) größer ist als die linke komplexe<br />

Halbebene, findet also keine Dämpfung von Lösungskomponenten statt zu Eigenvektor<br />

λ mit Re λ ≥ 0, die in der exakten Lösung ungedämpft bleiben.<br />

Für die RK Verfahren gilt allgemein:<br />

Satz 3.44 Ein explizites RK Verfahren (Ah) gehört zur Klasse (D). Ist die Stufe l<br />

und die genaue Konsistenzordnung p, dann<br />

g(z) =<br />

p�<br />

k=0<br />

z k<br />

k! + cp+1z p+1 + . . . + csz l mit cp+1 �=<br />

1<br />

, (3.136)<br />

(p + 1) !<br />

(Ah) ist also nicht A−stabil, HA(0) ist nicht leer und liegt lokal links von z = 0.<br />

Beweis:<br />

folgt sofort aus<br />

g(z) =<br />

l�<br />

ckz k für ck ∈ R, c0 = 1<br />

k=0<br />

ki(y) = Qy + i−1 �<br />

denn durch Induktion zeigt man:<br />

ν=1<br />

yj+1 = yj + h l�<br />

γiki(yj) ,<br />

i=1<br />

βiνhQkν, i = 1, . . .l ,<br />

ki ist ein Polynom (i−1)-ten Grades in hQ angewendet auf Qyj, woraus mit der zweiten<br />

Gleichung die Behauptung folgt.<br />

Wegen der Konsistenzordnung p, aber nicht p + 1 gilt für q ∈ C :<br />

|g(qh) − exp(qh)| = O(h p+1 ), �= O(h p+2 ) ,<br />

für kleine h > 0 und die Eigenwerte q = qi, da dieser Faktor (·yj) gerade der lokale<br />

Fehler ist.<br />

Dies erzwingt cj = 1/i! für i = 0, . . .,p, da also<br />

|g(qh) −<br />

p�<br />

k=0<br />

1<br />

k! (qh)k | = O(h p+1 )<br />

für besagte q ∈ C gilt. Würden also die ersten p+1 Koeffizienten der zu vergleichenden<br />

Polynome nicht übereinstimmen, gäbe es für h → 0 einen vorherschenden Term O(h l )<br />

mit l < p + 1. Der Rest erfolgt sofort.<br />

145<br />


Explizite RK Verfahren eignen sich also nicht für steife Differentialgleichungen.<br />

Bei impliziten RK Verfahren sind die g rational und können Padé–Approximationen<br />

von exp sein, wobei<br />

Definition 3.45 Sei ϕ in einer Umgebung von z = 0 analytisch.<br />

Rjk(z) = Pjk(z)<br />

, z ∈ C<br />

Qjk(z)<br />

heißt Padé–Approximation von ϕ zum Index (j, k) wenn Pjk, Qjk Polynome mit<br />

gradPjk ≤ k, gradQjk ≤ j sind und<br />

ϕ(z)Qjk(z) − Pjk(z) = O(|z| j+k+1 ) für z → 0 ,<br />

d.h. wenn die Approximationsordnung j + k ist.<br />

Ist Qjk(0) �= 0, dann ist eine äquivalente Forderung<br />

ϕ(z) − Rjk(z) = 0(|z| j+k+1 ) für z → 0 .<br />

Satz 3.46 1. Die Padé–Approximationen existieren eindeutig.<br />

2. Für ϕ = exp ist die Padé–Approximation gegeben durch<br />

Pjk(z) :=<br />

Qjk(z) =<br />

k�<br />

� �<br />

k (j + k − l)!<br />

z<br />

l (j + k)!<br />

l ,<br />

j�<br />

� �<br />

j (j + k − l)!<br />

(−z)<br />

l (j + k)!<br />

l ,<br />

l=0<br />

l=0<br />

also gilt Qjk(z) = Pkj(−z) und Qjk(0) = 1.<br />

Bis auf Skalierung durch einen gemeinsamen Faktor sind Pjk, Qjk eindeutig<br />

und kein Rjk = Pjk/Qjk mit ∇Pjk ≤ k ∇Qjk ≤ j hat eine höhere Approximationsordnung<br />

als j + k. Einige Padé–Approximationen lauten:<br />

j \ k 0 1 2<br />

0 1 1 + x 1 + x + 1<br />

2 x2<br />

1<br />

1 +<br />

1<br />

1 − x<br />

1<br />

2x 1 + 2<br />

3<br />

2<br />

3<br />

1<br />

1 − x + 1<br />

2x2 1<br />

1 − x + 1<br />

2x2 − 1<br />

6x3 1 − 2<br />

3<br />

1 − 1<br />

2 x<br />

1 + 1<br />

3 x<br />

x + 1<br />

6 x2<br />

1 + 1<br />

4 x<br />

1 − 3 1 x + 4 4x2 − 1<br />

24x3 146<br />

1 + 1<br />

2<br />

1 − 1<br />

2<br />

x + 1<br />

6 x2<br />

1 − 1<br />

3 x<br />

x + 1<br />

12 x2<br />

x + 1<br />

2 x2


3. Für ϕ = exp gilt<br />

Genau für j = k, j = k + 1, j = k + 2 gilt<br />

(diagonal) (subdiagonal)<br />

|Rjk(z)| < 1 für Rez < 0<br />

Für j = k : | Rkk(z)| → 1 für |z| → ∞, Re z < 0<br />

Für j = k + 1, j = k + 2 :<br />

|Rjk(z)| → 0 für |z| → ∞, Rez < 0<br />

(Ohne Beweis, siehe: [Grigorieff I] oder [Wanner/Hairer/Nørsett 78])<br />

Daraus folgt für die impliziten RK Verfahren<br />

Satz 3.47 1. Die impliziten RK Verfahren gehören zur Klasse (D). g ist eine rationale<br />

Funktion g(z) = Pjk(z)/Qjk(z), wobei Zähler- und Nennergrad k bzw. j<br />

höchstens Stufenanzahl l sind. Es gilt g(0) = 1, also insbesondere Qjk(0) �= 0.<br />

Hat das Verfahren die Konsistenzordnung p und ist j + k ≤ p, dann ist g Padé–<br />

Approximation an exp .<br />

2. Ist g eine diagonale oder eine der beiden ersten subdiagonalen Padé-<br />

Approximationen von exp, ist (Ah) A−stabil, im subdiagonalen Fall auch L–<br />

stabil.<br />

3. Hat (Ah) bei l Stufen die Konsistenzordnung 2l, so ist g diagonale Padé–<br />

Approximation von exp, insbesondere ist (Ah) A−stabil.<br />

Beweis:<br />

zu 1): Zur Vereinfachung beschränken wir uns auf den skalaren Fall n = 1, d.h.<br />

Q = q ∈ R. Der allgemeine Fall kann in der in (3.82) ff. eingeführten Notation angegangen<br />

werden. In der Formulierung (3.80), (3.81) lautet ein allgemeines (implizites)<br />

RK Verfahren der Stufe l angewandt auf die lineare Testaufgabe<br />

d.h.<br />

zi = yj + hj<br />

l�<br />

βiνqzν<br />

ν=1<br />

z = yj1 + hjqβz<br />

147


Dahin ist 1 = (1, . . ., 1) t ∈ R l und<br />

wenn wir setzen<br />

Insbesondere gilt g(0) = 1.<br />

yj+1 = yj + hj<br />

l�<br />

γiqzi<br />

i=1<br />

= yj + hjqγ T (I − hjqβ) −1 yj1<br />

= (1 + hjqγ T (I − hjqβ) −1 1)yj<br />

= g(hjq)yj ,<br />

g(z) := 1 + zγ T (I − zβ) −1 1 ,<br />

(I − zβ) −1 ist über die Cramer’sche Regel darstellbar als<br />

(I − zβ) −1 = adj(I − zβ)/det(I − zβ) ,<br />

wobei (adj(I −zβ))ik bis auf den Faktor (−1) i+k die Determinante der durch Streichung<br />

von i-ter Zeile und k-ter Spalte entstehenden (l − 1) × (l − 1)-Matrix ist. Da die<br />

Matrixeinträge von I − zβ in z alle aus Π1 sind und nach Definition der Determinante<br />

ist also jeder Eintrag (i, k) von (I − zβ) −1 ein Quotient aus einem pi,k ∈ Πl−1 und<br />

einem (festen) q ∈ Πl. Nach Definition von g folgt, dass g eine rationale Funktion mit<br />

Zähler- und Nennergrad höchstens l ist. Wegen g(0) = 1 ist also g analytisch in der<br />

Umgebung von z = 0, also gehört das Verfahren zur Klasse (D).<br />

Für explizite RK Verfahren ergibt sich nochmal teilweise Satz 3.44: Ist β echte untere<br />

Dreiecksmatrix, so ist (I − zβ) −1 untere Dreiecksmatrix mit Diagonaleinträgen 1, also<br />

det (I − zβ) = 1, so dass g ∈ Πl folgt.<br />

Hat das RK Verfahren die Konsistenzordnung p, so folgt wegen Qjk(0) �= 0 über den<br />

lokalen Fehler die Approximationsordnungsaussage für g, also auch für j + k ≤ p für<br />

alle Strahlen hq, q ∈ C, h > 0 und wegen der Analytizität von g in einer Umgebung<br />

von 0 auch allgemein für z → 0.<br />

zu 2): direkt aus Satz, 3.46, 3)<br />

zu 3): g ist wegen 1) und Satz 3.46, 2) diagonale Padé-Approximation von exp, also<br />

nach Satz 3.46, 3) auch A−stabil.<br />

Beachte:<br />

j = 0, k ≤ 4: explizite RK-Verfahren der Stufe k<br />

j = 1, k = 0: implizites Euler-Verfahren<br />

j = k = 1: implizite Trapezregel<br />

148<br />


Die Gauß-Legendre Verfahren finden sich also als diagonale Padé–Approximationen<br />

wieder, sie sind A−stabil, nach Satz 3.46, 3) aber nicht L−stabil. Die Beispiele (3.68)<br />

und (3.69) der Konsistenzordnung 3 haben beide<br />

g(z) =<br />

1 − 2<br />

3<br />

1 + 1<br />

3 z<br />

z + 1<br />

6<br />

z2 ,<br />

also g = R2,1. Damit sind diese Verfahren sowohl A- als auch L-stabil.<br />

Bei SDIRK-Verfahren mit dem Diagonalelement βd ergibt sich bei g das Nennerpolynom<br />

zu<br />

det (I − zβ) = (1 − zβd) l .<br />

Die Frage von A− und L−Stabilität hängt vom Zusammenspiel von Konsistenzordnung<br />

und βd ab (siehe [Strehmel/Weiner], S. 247 ff.). Linear-implizite Verfahren verhalten<br />

sich hinsichtlich A− und L−Stabilität offensichtlich wie ihr Basisverfahren (gegeben<br />

auch α, β, γ).<br />

149


4 (Lineare) Mehrschrittverfahren<br />

4.1 Definition, Beispiele<br />

Bei einem Mehrschrittverfahren wird zur Berechnung einer Näherung yh(tj+m) nicht<br />

nur auf yh(tj+m−1) sondern auf yh(tj+m−1), . . .,yh(tj) zurückgegriffen, wobei m ∈ N<br />

(m = 1 sind also wieder Einschrittverfahren). Da durch den Anfangswert nur y0<br />

gegeben ist, ist eine Anlaufrechnung mit einem weiteren (Einschritt-)Verfahren zur<br />

Beschaffung von y1, . . .,ym−1 nötig. Zur Vereinfachung wird äquidistante Schrittweite<br />

h vorausgesetzt, d.h. h := (T − t0)/N für ein N ∈ N und<br />

I ′ h := {t ∈ I | t = tj := t0 + jh, j = 0, . . .,N}<br />

Ih := {t ∈ I ′ h | t = tj, j = m, m + 1, . . .,N} .<br />

(Diese Definitionen weichen also von (3.4), (3.5) ab !)<br />

(4.1)<br />

Definition 4.1 Ein Mehrschrittverfahren für (A) wird gegeben durch m ∈ N, eine<br />

Familie von Abbildungen<br />

(Ah) fh : Ih × R n(m+1) → R n , h > 0 ,<br />

a0, . . ., am ∈ R, am �= 0 und eine Familie von Startwerten<br />

Die Lösung von (Ah) ist gegeben durch<br />

(1)<br />

1<br />

h<br />

y (0)<br />

h , . . .,y(m−1)<br />

h . (4.2)<br />

yh : I ′ h → Rn , so dass<br />

m�<br />

akyh(tj+k) = fh(tj+m, yh(tj), . . .,yh(tj+m)) für tj+m ∈ Ih,<br />

k=0<br />

(2) yh(tj) = y (j)<br />

h , j = 0, . . .,m − 1.<br />

Zur Abkürzung wird wieder yj := yh(tj) geschrieben, die Anlaufphase wird später behandelt.<br />

(1) ist i. Allg. eine implizite Gleichung für yj+m. Ist fh Lipschitzstetig in der entsprechenden<br />

Variable gleichmäßig in h (analog zu Definition 3.20), existiert yh(tj+m)<br />

eindeutig für h ≤ H und kann mit der Fixpunktiteration berechnet werden.<br />

150


Wir setzen im Folgenden also voraus:<br />

Sei h ≤ H,<br />

so dass Definition 4.1, (1) eine eindeutige Lösung<br />

yh(tj+m) besitzt.<br />

Wir betrachten im Weiteren nur lineare Mehrschrittverfahren:<br />

(4.3)<br />

Definition 4.2 Ein Mehrschrittverfahren heißt linear, wenn es b0, . . .,bm ∈ R<br />

gibt, so dass<br />

d.h.<br />

fh(t, y0 . . . , ym) =<br />

m�<br />

bkf(t − (m − k)h, yk) für t ∈ Ih, yk ∈ R n ,<br />

k=0<br />

1<br />

h<br />

m�<br />

akyj+k =<br />

k=0<br />

m�<br />

bk fj+k , wobei<br />

k=0<br />

fj+k := f(tj+k, yj+k), k = 0, . . .,m, tj+m ∈ Ih .<br />

(4.4)<br />

Ist bm �= 0, ist das Verfahren also implizit, sonst explizit. Ist |a0| + |b0| �= 0, so liegt ein<br />

lineares m-Schrittverfahren vor.<br />

4.1.1 Mehrschrittverfahren via numerische Quadratur<br />

Sei q ∈ N, q ≤ m. Die exakte Lösung y erfüllt<br />

y(tj+m) = y(tj+m−q) +<br />

tj+m �<br />

tj+m−q<br />

f(t, y(t))dt , j = 0, . . ., N − m . (4.5)<br />

Das Integral wird jetzt durch Newton–Côtes Formeln approximiert, d.h. zu r ∈<br />

N, r ≤ m wird der Integrand in (4.5) ersetzt durch das interpolierende Polynom<br />

P ∈ Πr (vom Höchstgrad r) durch die r + 1 Stützpunkte<br />

(tk, fk), k = j, . . .,j + r, fk := f(tk, yk) . (4.6)<br />

(Ist n > 1, ist alles komponentenweise zu interpretieren, d.h. oBdA. wird eine skalare<br />

Gleichung betrachtet)<br />

Beispiel:<br />

151


t j t j+1 t j+2 t j+3 t j+4 t j+5<br />

Interpolations<br />

bereich<br />

Integrations<br />

bereich<br />

m = 5, q = 2, r = 2 (n = 1) (Extrapolation).<br />

Je nachdem, ob der Interpolationsbereich [tj, tj+r] den Integrationsbereich umfasst oder<br />

nicht, spricht man von Interpolations- oder Extrapolationsverfahren.<br />

Die wesentlichen Klassen sind<br />

Typ Name r q<br />

Extrapolations- Adams-Bashforth m − 1 1 explizit<br />

verfahren Nyström m − 1 2<br />

Interpolations- Adams-Moulton m 1 implizit<br />

verfahren Milne-Simpson m 2<br />

Das Verfahren hat also die Gestalt<br />

Wir verwenden dabei die<br />

yj+m = yj+m−q +<br />

Newton’sche Darstellung von P:<br />

wobei<br />

P(t) = fj+r +<br />

t − tj+r<br />

h<br />

tj+m �<br />

tj+m−q<br />

t<br />

P(t)dt . (4.7)<br />

∇fj+r + (t − tj+r)(t − tj+r−1)<br />

2h 2<br />

+ · · · + (t − tj+r) . . .(t − tj+1)<br />

r! h r<br />

∇ r fj+r ,<br />

∇ 2 fj+r<br />

∇ 0 fi := fi, ∇ k fi := ∇ k−1 fi − ∇ k−1 fi−1, k = 1, . . . .<br />

152<br />

(4.8)


Mit<br />

folgt<br />

und<br />

t − tj+r<br />

s := ,<br />

h<br />

⎧<br />

� �<br />

a<br />

⎨ 1 für n = 0<br />

:=<br />

n ⎩ a(a − 1) · · ·(a − n + 1)<br />

für n > 0<br />

n !<br />

yj+m = yj+m−q + h<br />

P(t) =<br />

k=0<br />

r�<br />

k 1<br />

(−1)<br />

h<br />

k=0<br />

1<br />

h<br />

tj+m �<br />

tj+m−q<br />

d.h. ein von h unabhängiger Term.<br />

Beweis:<br />

1<br />

r!<br />

⎛<br />

=s=−(−s)<br />

� �� �<br />

⎜<br />

t − tj+r<br />

⎝ h<br />

=s+1=−(−s−1)<br />

����<br />

. . . . . .<br />

für a ∈ R, n ∈ N0<br />

r�<br />

(−1) k<br />

� �<br />

−s<br />

∇<br />

k<br />

k fj+r , d.h. (4.9)<br />

tj+m �<br />

tj+m−q<br />

� −s<br />

k<br />

� −s<br />

k<br />

�<br />

dt =<br />

=s+r−1=−(−s−r+1)<br />

� �� �<br />

t − tj+1<br />

h<br />

Lagrange’sche Darstellung von P:<br />

P(t) =<br />

�<br />

dt∇ k fj+r , j = 0, . . ., N − m (4.10)<br />

m−r �<br />

m−r−q<br />

⎞<br />

⎟<br />

⎠<br />

r�<br />

fj+klk(t), lk(t) :=<br />

k=0<br />

153<br />

� −s<br />

k<br />

�<br />

ds ,<br />

= (−1)r(−s)(−s − 1) . . .(−s − r + 1)<br />

r!<br />

= (−1) r<br />

r�<br />

ρ=0<br />

ρ�=k<br />

� −s<br />

r<br />

t − tj+ρ<br />

tj+k − tj+ρ<br />

�<br />

.<br />

✷<br />

(4.11)


⇒<br />

und<br />

yj+m = yj+m−q + h<br />

1<br />

h<br />

tj+m �<br />

tj+m−q<br />

also ein von h unabhängiger Term.<br />

Vorteile von Lagrange:<br />

lk(t)dt =<br />

r�<br />

k=0<br />

m−r �<br />

m−r−q<br />

1<br />

h<br />

tj+m �<br />

tj+m−q<br />

r�<br />

ρ=0<br />

ρ�=k<br />

• weniger Operationen (keine Differenzenbildung)<br />

• Schrittweitenänderung leichter<br />

Vorteile von Newton:<br />

lk(t)dt fj+k<br />

s + r − ρ<br />

k − ρ<br />

ds,<br />

(4.12)<br />

• Ordnungsänderung (d.h. von m) leichter, da Koeffizienten nur von m−r, m−r−q<br />

abhängig, nicht von m,<br />

• in (4.12) Auslöschung möglich.<br />

I. Die Verfahren von Adams-Bashforth (A-B):<br />

r = m − 1, q = 1.<br />

tj tj+1 tj+2 ......... tj+m-1 tj+m Interpolations<br />

bereich<br />

k=0<br />

Integrations<br />

bereich<br />

t<br />

explizites<br />

m-Schrittverfahren<br />

m−1 �<br />

yj+m = yj+m−1 + h γk∇ k fj+m−1 mit j = 0, . . ., N − m (4.13)<br />

γk := (−1) k<br />

�1<br />

0<br />

� �<br />

−s<br />

ds, k = 0, . . .,m − 1 , d.h. unabhängig von m. (4.14)<br />

k<br />

154


Die γk ergeben sich aus der erzeugenden Funktion<br />

∞�<br />

G(z) := γkz k , z ∈ C, |z| < 1 (4.15)<br />

da<br />

Lemma 4.3 Für c, d ∈ R, c ≤ d ≤ 1 und z ∈ C, |z| < 1 gilt:<br />

∞�<br />

(−1) k<br />

�d<br />

� �<br />

−s<br />

dsz<br />

k<br />

k �<br />

(1 −<br />

�<br />

z)−s �<br />

= − �<br />

log(1 − z) �<br />

⇒<br />

k=0<br />

G(z) = −<br />

−<br />

c<br />

k=0<br />

�<br />

(1 −<br />

�<br />

z)−s �<br />

�<br />

log(1 − z) �<br />

log(1 − z)<br />

z<br />

1<br />

0<br />

= −<br />

s=d<br />

s=c<br />

z<br />

(1 − z)log(1 − z)<br />

G(z) = 1<br />

1 − z<br />

.<br />

⇒<br />

, |z| < 1 ⇒<br />

�<br />

1 1 1 + z + 2 3z2 + . . . � (γ0 + γ1z + γ2z2 + · · ·) = 1 + z + z2 + · · ·<br />

⇒<br />

d.h.<br />

(4.13) ⇒<br />

mit<br />

d.h.<br />

(4.16)<br />

1γk + 1<br />

2 γk−1 + · · · + 1<br />

k + 1 γ0 = 1 für k = 0, 1, . . . , (4.17)<br />

k 0 1 2 3 4 · · ·<br />

γk 1<br />

yj+m = yj+m−1 + h<br />

αmk = (−1) m−k−1<br />

m−1 �<br />

i=m−k−1<br />

�<br />

1<br />

2<br />

m−1 �<br />

k=0<br />

5<br />

12<br />

3<br />

8<br />

251<br />

720<br />

· · ·<br />

αmkfj+k , j = 0, . . ., N − m (4.18)<br />

i<br />

m − k − 1<br />

155<br />

�<br />

γi, k = 0, . . ., m − 1 , (4.19)


k 0 1 2 3<br />

1 · α1k 1<br />

2 · α2k −1 3<br />

12 · α3k 5 −16 23<br />

24 · α4k −9 37 −59 55<br />

m = 1 : yj+1 = yj + hfj : Explizites Euler-Verfahren<br />

m = 2 : yj+2 = yj+1 + 1<br />

2 h(−fj + 3fj+1)<br />

II. Die Verfahren von Nyström:<br />

r = m − 1, q = 2 (m ≥ 2).<br />

d.h.<br />

tj t .........<br />

j+1 tj+m-2 tj+m-1 tj+m Interpolations<br />

bereich<br />

k=0<br />

Integrations<br />

bereich<br />

t<br />

explizites<br />

m-Schrittverfahren<br />

m−1 �<br />

yj+m = yj+m−2 + h γ ∗ k∇kfj+m−1 , j = 0, . . ., N − m . (4.20)<br />

G ∗ (z) :=<br />

γ ∗ k<br />

=<br />

(Lemma 4.3)<br />

−<br />

= (−1)k<br />

∞�<br />

k=0<br />

�1<br />

−1<br />

γ ∗ z k<br />

� −s<br />

k<br />

�<br />

ds . (4.21)<br />

1 1 − 1 + 2z − z<br />

log(1 − z)(1 − z)<br />

2<br />

1 − (1 − z) 2<br />

=<br />

z 2 − z<br />

−<br />

log(1 − z) 1 − z<br />

für |z| < 1 ,<br />

log(1 − z)<br />

G<br />

z<br />

∗ (z) = 1 + 1<br />

1 − z<br />

156<br />

gilt:


γ ∗ k + 1<br />

2 γ∗ k−1 + · · · + 1<br />

k + 1 γ∗ �<br />

2 , k = 0,<br />

0 =<br />

1 , k = 1, . . . .<br />

Die zu (4.18) analoge Form gilt wieder mit (4.19) (α ∗ mk , γ∗ k statt αmk, γk): ⇒<br />

k 0 1 2 3<br />

α ∗ 2k 0 2<br />

3 · α ∗ 3k 1 −2 7<br />

3 · α ∗ 4k<br />

−1 4 −5 8<br />

m = 2 : yj+2 = yj + 2hfj+1 : Mittelpunktsregel<br />

III. Die Verfahren von Adams-Moulton (A-M):<br />

r = m, q = 1.<br />

tj t .........<br />

j+1 tj+m-2 tj+m-1 tj+m Interpolations<br />

bereich<br />

Integrations<br />

bereich<br />

yj+m = yj+m−1 + h<br />

1<br />

G(z) = −<br />

log(1 − z)<br />

δk := (−1) k<br />

�0<br />

−1<br />

t<br />

implizites<br />

m-Schrittverfahren<br />

(4.22)<br />

m�<br />

δk∇ k fj+m mit (4.23)<br />

k=0<br />

− z)<br />

(1 − (1 − z)) ⇔ −log(1 G(z) = 1.<br />

z<br />

� −s<br />

k<br />

�<br />

ds , d.h. mit Lemma 4.3 (4.24)<br />

δk + 1<br />

2 δk−1 + · · · + 1<br />

k + 1 δ0<br />

�<br />

1 , k = 0<br />

=<br />

0 , k = 1, . . . .<br />

δ0 = 1<br />

157<br />

(4.25)


Lagrange’sche Form:<br />

d.h.<br />

δ3 + 1<br />

2 δ2<br />

δ2 + 1<br />

2 δ1<br />

����<br />

����<br />

− 1<br />

4<br />

δ1 + 1<br />

2 δ0 = 0 ⇒ δ1 = − 1<br />

2<br />

+ 1<br />

3 δ0<br />

����<br />

1<br />

3<br />

� �� �<br />

+ 1<br />

3 δ1<br />

����<br />

1<br />

12<br />

+ 1<br />

4 δ0<br />

����<br />

1<br />

= 0 ⇒ δ2 = − 1<br />

12<br />

= 0<br />

− 1<br />

24 − 1<br />

�<br />

6<br />

��<br />

1<br />

24<br />

4<br />

�<br />

yj+m = yj+m−1 + h<br />

βmk = (−1) m−k<br />

⇒ δ3 = − 1<br />

24<br />

m�<br />

βmkfj+k mit (4.26)<br />

k=0<br />

m�<br />

i=m−k<br />

k 0 1 2 3<br />

2β1k 1 1<br />

12β2k −1 8 5<br />

24β3k 1 −5 19 9<br />

m = 1 : yj+1 = yj + 1<br />

2 h(fj + fj+1) : implizite Trapez-Regel<br />

m = 2 : yj+2 = yj+1 + 1<br />

12 h(−fj + 8fj+1 + 5fj+2)<br />

IV. Die Verfahren von Milne-Simpson:<br />

r = m, (≥ 2), q = 2.<br />

158<br />

� �<br />

i<br />

δk , (4.27)<br />

m − k


tj t .........<br />

j+1 tj+m-2 tj+m-1 tj+m Mit Lemma 4.3<br />

Interpolations<br />

bereich<br />

(4.26), (4.27) gelten analog, d.h.<br />

d.h. für m = 2 und m = 3 :<br />

Integrations<br />

bereich<br />

yj+m = yj+m−2 + h<br />

δ ∗ k<br />

= (−1)k<br />

�0<br />

−2<br />

m�<br />

k=0<br />

� −s<br />

δ ∗ k + 1<br />

2 δ∗ k−1 + · · · + 1<br />

k + 1 δ∗ 0 =<br />

t<br />

δ ∗ k∇ k fj+m mit (4.28)<br />

k<br />

�<br />

ds . (4.29)<br />

⎧<br />

⎪⎨<br />

⎪⎩<br />

k 0 1 2 3 4<br />

3β ∗ 2k 1 4 1<br />

3β ∗ 3k 0 1 4 1<br />

90β ∗ 4k<br />

−1 4 24 124 29<br />

2, k = 0<br />

−1, k = 1<br />

0, k ≥ 2<br />

yj+2 = yj + 1<br />

3 h(fj + 4fj+1 + fj+2)<br />

– entspricht der Simpsonsregel bei der Newton-Côtes Formel –<br />

4.1.2 Mehrschrittverfahren via numerische Differentiation<br />

Hier wird das Polynom P ∈ Πm betrachtet, das die Werte<br />

(4.30)<br />

(tk, yk), k = j, . . .,j + m (4.31)<br />

159


interpoliert und dann für ein r ∈ N mit 0 ≤ r ≤ m P ′ (tj+m−r) aufgefasst wird als<br />

Approximation für<br />

y ′ (tj+m−r) = f(tj+m−r, y(tj+m−r)) ∼ fj+m−r .<br />

P ′ (tj+m−r) = fj+m−r, j = 0, . . ., N − m , (4.32)<br />

ist also die Definition des Verfahrens (implizit für r = 0, sonst explizit). Aus<br />

folgt<br />

mit<br />

P(t) =<br />

m�<br />

(−1) k<br />

� �<br />

−s<br />

∇<br />

k<br />

k t − tj+m<br />

yj+m, s =<br />

h<br />

k=0<br />

P ′ (tj+m−r) = 1<br />

h<br />

ρrk = (−1) k h d<br />

� �<br />

−s �<br />

dt k<br />

�<br />

�<br />

�<br />

m�<br />

k=0<br />

� t=tj+m−r<br />

ρrk∇ k yj+m<br />

Die ρrk bestimmen sich aus der erzeugenden Funktion<br />

� �<br />

k d −s<br />

= (−1) �<br />

ds k<br />

�<br />

�<br />

�<br />

∞�<br />

ρrkz k = −(1 − z) r log(1 − z), |z| < 1<br />

k=0<br />

� s=−r<br />

(4.33)<br />

(4.34)<br />

. (4.35)<br />

(Vertauschung von d<br />

ds und � )<br />

also für r = 0 (rückwärts genommene Differenzen, Backward Differentiation Formula)<br />

d.h.<br />

und<br />

∞�<br />

ρ0kz k = −log(1 − z) =<br />

k=0<br />

ρ00 = 0, ρ0k = 1<br />

k<br />

∞�<br />

ρr+1,kzk = (1 − z) ∞�<br />

k=0<br />

= ρr0 + ∞�<br />

160<br />

∞�<br />

k=1<br />

z k<br />

k ,<br />

für k ∈ N (4.36)<br />

ρrkz<br />

k=0<br />

k<br />

(ρrk − ρr,k−1)z<br />

k=1<br />

k ,


d.h.<br />

ρr+1,0 = ρr0(= 0), ρr+1,k = ρrk − ρr,k−1 für k ∈ N, r = 0, . . ., m − 1 . (4.37)<br />

Damit ist (4.32), (4.34) vollständig definiert. Durch Auflösen der ∇kyj+m lässt sich die<br />

m�<br />

akryj+k schreiben.<br />

linke Seite auch als 1<br />

h<br />

Beispiele: r = 0 :<br />

k=0<br />

m = 1 : yj+1 − yj = hfj+1 (implizites Euler-Verfahren)<br />

m = 2 : yj+2 − 4<br />

3 yj+1 + 1<br />

3 yj = h 2<br />

3 fj+2<br />

m = 3 : yj+3 − 18<br />

11 yj+2 + 9<br />

11 yj+1 − 2<br />

11 yj = h 6<br />

11 fj+3<br />

4.1.3 Prädiktor-Korrektor-Verfahren<br />

Um die Auflösung der nichtlinearen Gleichungen bei impliziten Vefahren etwa<br />

durch Fixpunktiteration zu vermeiden, legt man die Anzahl der Fixpunktiterationen<br />

l a priori fest (l klein: l = 1, 2, . . ., s.u.) und fasst dieses Ergebnis als Korrektor<br />

zu dem von einem geeigneten expliziten Verfahren gelieferten Startwert (Prädiktor) auf.<br />

Beispiel: Kombination von Adams-Bashforth (A − B) (Prädiktor) und Adams-<br />

Moulton (A − M) (Korrektor) zu gleichem m (A − B − Mm). Allgemein ergibt sich<br />

bei linearen Mehrschrittverfahren (und gleichem m) die folgende Gestalt. Das explizite<br />

m-Schrittverfahren sei gegeben durch a ∗ 0, . . .,a ∗ m−1, a ∗ m = 1 (oBdA.), b ∗ 0, . . .,b ∗ m−1, das<br />

implizite durch a0, . . .,am−1, am = 1 (oBdA.), b0, . . ., bm−1, bm, l ∈ N bezeichne die<br />

Anzahl der Iterationen, dann<br />

• j = 0, . . .,m − 1 :<br />

y (l)<br />

j := y (j)<br />

h<br />

f (l)<br />

• j = 0, . . .,N − m :<br />

j := f(tj, y (l)<br />

j<br />

(Startwerte durch Anlaufrechnung)<br />

) , j = 0, . . .,m − 1,<br />

161<br />

(4.38)


– P(Prediktor):<br />

y (0)<br />

j+m<br />

– Iteration: i = 1, . . ., l :<br />

E(valuation)<br />

– E(valuation):<br />

f (i−1)<br />

j+m<br />

C(orrection)<br />

y (i)<br />

j+m<br />

m−1 �<br />

:= −<br />

�<br />

:= f<br />

k=0<br />

m−1 �<br />

:= −<br />

a ∗ k y(l)<br />

j+k<br />

tj+m, y (i−1)<br />

j+m<br />

k=0<br />

ak y (l)<br />

j+k<br />

�<br />

m−1 �<br />

+ h<br />

k=0<br />

m−1 �<br />

+ h<br />

k=0<br />

b ∗ k f(l)<br />

j+k<br />

bkf (l)<br />

j+k<br />

� �� �<br />

unabhängig von i !<br />

f (l)<br />

j+m := f(tj+m, y (l)<br />

j+m ) .<br />

Kurz wird ein solches Verfahren als P(EC) l E-Verfahren bezeichnet.<br />

+ h bmf (i−1)<br />

j+m<br />

Der Hauptaufwand steckt i. Allg. in den Teilen E. Um diesen zu reduzieren, lassen die<br />

P(EC) l -Verfahren den letzten Auswertungsschritt weg, d.h.<br />

• j = 0, . . .,m − 1 :<br />

• j = 0, . . .,N − m :<br />

– P : y (0)<br />

j+m<br />

m−1 �<br />

:= −<br />

k=0<br />

y (l)<br />

j<br />

f (l−1)<br />

j<br />

a ∗ k y(l)<br />

j+k<br />

:= y (j)<br />

h<br />

:= f(tj, y (l)<br />

j ),<br />

m−1 �<br />

+ h<br />

k=0<br />

– Iteration i = 1, . . .,l :<br />

E : f (i−1)<br />

j+m := f(tj+m, y (i−1)<br />

j+m )<br />

C : y (i)<br />

j+m<br />

m−1 �<br />

:= −<br />

k=0<br />

162<br />

aky (l)<br />

j+k<br />

b∗ kf(l−1) j+k , i = 1, . . .,l :<br />

m−1 �<br />

+ h<br />

k=0<br />

bkf (l−1)<br />

j+k<br />

+ h bmf (i−1)<br />

j+m .<br />

(4.39)


4.2 Konsistenz(-ordnung)<br />

Analog zu Definitionen 3.7, 3.8 setzen wir<br />

Definition 4.4 Sei y die exakte Lösung von (A), yh die Näherungslösung nach<br />

(Ah). Dann heißt<br />

eh : I ′ h → R n , eh(tj) := y(tj) − yh(tj)<br />

der globale Fehler von (Ah).<br />

(Ah) heißt konvergent, wenn<br />

�eh�h := max<br />

t∈I ′ h<br />

und hat die Konvergenzordnung p, wenn<br />

Definition 4.5 Sei für u : I ′ h → Rn<br />

(Ahu)(t) :=<br />

⎧<br />

⎪⎨<br />

⎪⎩<br />

�y(t) − yh(t)� → 0 für h → 0 , (4.40)<br />

�eh�h = O(h p ) . (4.41)<br />

u(tj) − y (j)<br />

h ,<br />

1<br />

h<br />

m�<br />

k=0<br />

für t = tj, j = 0, . . ., m − 1 ,<br />

aku(tj+k) −<br />

Die Gitterfunktion τh : I ′ h → Rn , definiert durch<br />

m�<br />

k=0<br />

bkf(tj+k, u(tj+k))<br />

für t = tj+m, j = 0, . . .,N − m .<br />

(4.42)<br />

τh(t) := Ah(y)(t) , t ∈ I ′ h (4.43)<br />

(y exakte Lösung von (A)) heißt lokaler Abbruchfehler (Abschneidefehler).<br />

(Ah) heißt konsistent mit (A), wenn<br />

(Ah) hat die Konsistenzordnung p , wenn<br />

�τh�h := max<br />

t∈I ′ �τh(t)� → 0 für h → 0. (4.44)<br />

h<br />

�τh�h = O(h p ) . (4.45)<br />

163


Die Definition von τh ist für explizite Verfahren bis auf Indizierung identisch mit<br />

Definition 3.8, τh(tj+1) hier ˆ= τh(tj) dort, τh(t0) hier ˆ= y0 − y0 = 0 dort (exakte<br />

Anfangsdaten dort nur zur Vereinfachung). Für implizite Verfahren weichen die<br />

Definitionen ab, da fh aus Definition 3.8 immer die aufgelöste Form ist.<br />

Es gilt also nach Definition<br />

Ah(yh)(t) = 0, Ah(y)(t) = τh(t), t ∈ Ih . (4.46)<br />

Es geht also wieder darum, dass die “Störung” �τh�h klein ist (Konsistenz) und A −1<br />

h<br />

diese nur unabhängig von h verstärkt (Stabilität).<br />

Wir betrachten nur lineare Mehrschrittverfahren, gegeben durch<br />

a0, . . .,am, b0, . . .,bm mit oBdA. am = 1.<br />

Diese Parameter definieren die sogenannten 1. und 2. charakteristischen Polynome<br />

ρ(z) :=<br />

m�<br />

k=0<br />

akz k , σ(z) :=<br />

Satz 4.6 (Ah) ist konsistent mit (A), wenn gilt<br />

m�<br />

k=0<br />

(1) �y (j)<br />

h − y0� → 0 für h → 0, j = 0, . . .,m − 1<br />

(2) ρ(1) = 0<br />

(3) ρ ′ (1) = σ(1)<br />

�<br />

⇐⇒ m�<br />

k=0<br />

�<br />

ak = 0<br />

�<br />

⇐⇒ m�<br />

kak = m�<br />

k=1<br />

bk<br />

k=0<br />

Beweis:<br />

(1) ⇒ �y (j)<br />

h − y(jh)� → 0 für h → 0, j = 0, . . .,m − 1<br />

164<br />

�<br />

.<br />

bkz k . (4.47)


Für t = tj+m, j = 0, . . .,N − m, gilt:<br />

und<br />

τh(t) = 1<br />

h<br />

= 1<br />

h<br />

m�<br />

k=0<br />

m�<br />

k=0<br />

= 1<br />

h ρ(1)<br />

����<br />

=0<br />

+ 1<br />

h<br />

|A1| ≤<br />

≤<br />

|A2| ≤<br />

aky(tj+k) −<br />

ak<br />

m�<br />

k=0<br />

⎧<br />

⎨<br />

m�<br />

k=0<br />

⎩ y(tj) + khy ′ (tj) +<br />

y(tj) + ρ ′ (1) y ′ (tj) −<br />

m�<br />

k=0<br />

m�<br />

k=0<br />

ak<br />

�kh<br />

0<br />

����<br />

=σ(1)<br />

bkf(tj+k, y(tj+k))<br />

�kh<br />

0<br />

m�<br />

k=0<br />

y ′ (tj + s) − y ′ (tj)ds<br />

bky ′ (tj+k)<br />

y ′ (tj + s) − y ′ (tj)ds =: A1 + A2<br />

|bk| �y ′ (tj) − y ′ (tj+k)�<br />

|bk| max �y<br />

j=0,...,N−m<br />

k=0,...,m<br />

′ (tj) − y ′ (tj+k)�<br />

⎫<br />

⎬<br />

⎭ −<br />

m�<br />

k=0<br />

→ 0 für h → 0, da y ′ gleichmäßig stetig ist auf I .<br />

m�<br />

k=0<br />

|ak| 1<br />

h<br />

k h max �y<br />

j=0,...,N−m<br />

s∈[0,mh]<br />

′ (tj + s) − y ′ (tj)�<br />

→ 0 für h → 0.<br />

bky ′ (tj+k)<br />

Bei glattem f lässt sich die genaue Konsistenzordnung einfach algebraisch charakterisieren:<br />

Satz 4.7 Es sei τh(tj) = O(h p ) für j = 0, . . .,m − 1.<br />

1) Dann sind äquivalent:<br />

(1) (Ah) hat die Konsistenzordnung p für alle f ∈ C p (U), wobei U eine Umgebung<br />

von (t, y(t)) ist.<br />

(2) m�<br />

k=0<br />

ak = 0<br />

m�<br />

(kiak − iki−1bk) = 0, i = 1, . . .,p<br />

k=0<br />

(d.h. p = 1 : ρ(1) = 0, ρ ′ (1) = σ(1))<br />

165<br />


2) Ist f ∈ Cp+1 (U), dann ist<br />

�<br />

m�<br />

1<br />

τh(tj+m) = k<br />

(p + 1)!<br />

k=0<br />

p+1 ak − (p + 1)k p �<br />

bk h<br />

� �� �<br />

=: cp<br />

p y (p+1) (tj+m) + O(h p+1 ) .<br />

(4.48)<br />

Ist cp �= 0, ist also die Ordnung p exakt und cp heißt die Fehlerkonstante.<br />

Beweis (durch Taylorentwicklung)<br />

nur 1):<br />

y(t + kh) = y(t) + khy ′ (t) + . . . + (kh)p<br />

p ! y(p) (t) + O(h p+1 )<br />

hy ′ (t + kh) = hy ′ (t) + kh 2 y ′′ (t) + · · · + kp−1<br />

(p − 1)! hp y (p) (t) + O(h p+1 )<br />

⇒ für t + mh ∈ Ih :<br />

hτh(t + mh) = m�<br />

{aky(t + kh) − hbky ′ (t + kh)}<br />

k=0<br />

= m�<br />

k=0<br />

�<br />

aky(t) + p�<br />

+ O(h p+1 )<br />

i=1<br />

also: (1) ⇐ (2) : hτh(t + mh) = O(h p+1 )<br />

(2) ⇐ (1) : Wähle f so, dass<br />

y (i) (t) �= 0, i = 0, . . ., p .<br />

�<br />

ak<br />

i ! ki − bk<br />

(i − 1)! ki−1<br />

�<br />

hiy (i) �<br />

(t)<br />

Für die speziellen Klassen von Mehrschrittverfahren ergibt sich die Konsistenzordnung<br />

direkt aus der Konstruktion.<br />

Satz 4.8 Sei (Ah) ein via numerische Quadratur nach (4.6), (4.7) definiertes Mehrschrittverfahren,<br />

sei f ∈ C r+1 (U), wobei U eine Umgebung von (t, y(t)) darstellt.<br />

Ist τh(tj) = O(h r+1 ) für j = 0, . . .,m − 1, dann hat (Ah) die Konsistenzordnung<br />

r + 1 .<br />

Beweis:<br />

Sei P ∈ Πr das Interpolationspolynom durch die Stützpunkte<br />

(tk, f(tk, y(tk))) = (tk, y ′ (tk)), k = j, . . .,j + r.<br />

166<br />


Wegen y ′ ∈ C r+1 (I) gilt die Fehlerdarstellung (vgl. Numerik I, Satz 6.3):<br />

y ′ j+r �<br />

(t) − P(t) = (t − tk)y (r+2) 1<br />

(ξ)<br />

(r + 1)!<br />

k=j<br />

mit einem ξ = ξ(t) ∈ [tj, max(t, tj+r)] für t ≥ tj. Also<br />

y ′ (t) − P(t) = h r+1 (−1) r+1<br />

� �<br />

−s<br />

y<br />

r + 1<br />

(r+2) (ξ(t)) mit s :=<br />

(vgl. (4.9)), also für j = 0, . . .,N − m :<br />

τh(tj+m) = 1<br />

h (y(tj+m) − y(tj+m−q)) − 1<br />

h<br />

⇒ �τh(tj+m)� ≤ Ch r+1 .<br />

= 1<br />

h<br />

tj+m �<br />

tj+m−q<br />

= (−1) r+1 r+1 1<br />

h<br />

= (−1) r+1 h r+1<br />

y ′ (t) − P(t)dt<br />

h<br />

tj+m �<br />

tj+m−q<br />

m−r<br />

�<br />

m−r−q<br />

167<br />

tj+m �<br />

tj+m−q<br />

P(t)dt<br />

� �<br />

−s<br />

y<br />

r + 1<br />

(r+2) (ξ(t))dt<br />

� −s<br />

r + 1<br />

�<br />

t − tj+r<br />

h<br />

y (r+2) (ξ(tj+r + hs))ds<br />

� �� �<br />

≤�y (r+2) � L ∞ (I)<br />

(4.49)<br />


Konsistenzordnung und Fehlerkonstanten der linearen<br />

Mehrschrittverfahren aus 4.1<br />

Verfahren Typ ρ(z) σ(z) p cp Voraus-<br />

Adams- explizit z m − z<br />

�<br />

m−1 m−1<br />

k=0<br />

setzungen<br />

αmkz k m = r + 1 γm > 0 f ∈ C m<br />

Bashforth m ≥ 1 �τh(tj)� = 0(h m )<br />

Nyström explizit z m − z<br />

Adams- implizit z m − z m−1<br />

�<br />

m−2 m−1<br />

k=0<br />

j = 0,1,... ,m − 1<br />

α ∗ mk zk m γ ∗ m > 0 f ∈ C m<br />

m ≥ 2 �τh(tj)� = O(h m )<br />

j = 0,1,... ,m − 1<br />

m�<br />

βmkzk m + 1 δm+1 < 0 f ∈ Cm+1 k=0<br />

Moulton m ≥ 1 = r + 1 �τh(tj)� = O(h m+1 )<br />

Milne- implizit z m − z m−2<br />

j = 0,1,... ,m − 1<br />

m�<br />

β∗ mkzk m + 1 für m ≥ 3 δ∗ m+1 < 0 f ∈ Cm+1<br />

k=0<br />

Simpson m ≥ 2 für m ≥ 3 �τh(tj)� = O(h m+1 )<br />

4 für m = 2 δ∗ 3 = 0<br />

< 0<br />

j = 0,1,... ,m − 1<br />

Wenden wir dies auf die Beispielklassen I–IV an, so ergibt sich z.B. für I (A − B)<br />

ρ(z) = z m − z m−1<br />

⇒ ρ(1) = 0, ρ ′ (z) = mz m−1 − (m − 1)z m−2 für m ≥ 2,<br />

d.h. ρ ′ (1) = 1<br />

Wende die γ− und die αm-Form auf f=constant an σ(z) = m−1 �<br />

σ(1) = m−1 �<br />

�<br />

k=0<br />

αmk = γ0 = 1<br />

�<br />

m−1<br />

m−1 aus (4.19) oder σ(z) = z<br />

k=0<br />

γk<br />

� �<br />

1 k<br />

1 − z<br />

168<br />

�<br />

.<br />

δ ∗ 4<br />

k=0<br />

αmkz k , also<br />

(4.50)<br />

(4.51)<br />

(4.52)<br />

(4.53)


Nach Satz 4.6 ist das Verfahren also konsistent (bei entsprechenden Startwerten) mit<br />

Ordnung m nach Satz 4.8. Für die Fehlerkonstante gilt<br />

cp = γm .<br />

Insgesamt betrachte man die entsprechende Tabelle.<br />

Milne-Simpson m = 2 hat die erhöhte Ordnung p = 4. Allgemeiner gilt:<br />

Satz 4.9 Sei (Ah) ein via numerische Quadratur definiertes Mehrschrittverfahren. Ist<br />

m gerade, q = m, r = m und f ∈ C m+2 (U), so gilt bei entsprechenden Anfangsdaten<br />

die erhöhte Konsistenzordnung<br />

m + 2.<br />

Beweis:<br />

Übung:<br />

Zeige zuerst bk = bm−k, k = 0. . . ., m/2 und damit, dass (2) aus Satz 4.7 auch für<br />

p = m + 2 gilt.<br />

Satz 4.10 Sei (Ah) ein via numerische Differentiation definiertes Mehrschrittverfahren.<br />

Ist f ∈ C m (U) und τh(tj) = O(h m ) für j = 0, . . .,m−1, dann hat (Ah) die genaue<br />

Konsistenzordnung m.<br />

Beweis:<br />

Nach (4.32) ist für j = 0, . . ., N − m :<br />

τh(tj+m) = P ′ (tj+m−r) − f(tj+m−r, y(tj+m−r))<br />

= P ′ (tj+m−r) − y ′ (tj+m−r) ,<br />

wobei P ∈ Πm das die Werte (tk, y(tk)), k = j, . . .,j + m interpolierende Polynom ist.<br />

Analog zu (4.49) gilt<br />

y(t) − P(t) = h m+1 (−1) m+1<br />

� �<br />

−s<br />

y<br />

m + 1<br />

(m+1) (ξ(t)) (4.54)<br />

mit einem ξ = ξ(t) ∈ [tj, tj+m] für t ∈ [tj, tj+m], s = (t − tj+m)/h.<br />

t ↦→ y (m+1) (ξ(t)) ist dort wegen (4.54) differenzierbar und damit<br />

169<br />


τh(tj+m) = hm+1 � �<br />

m+2 d −s<br />

(−1) �<br />

ds m + 1<br />

�<br />

�<br />

+h m+1 (−1) m+1<br />

= −ρrm+1<br />

� �� �<br />

�=0<br />

� �<br />

−s<br />

m + 1<br />

�<br />

� s=−r<br />

�<br />

�<br />

�<br />

�<br />

� s=−r<br />

� �� �<br />

=0<br />

1<br />

h y(m+1) (ξ(tj+m))<br />

d<br />

dt y(m+1) (ξ(t)) � � ��� t=tj+m<br />

h m y (m+1) (ξ(tj+m)) nach (4.35) .<br />

Nach Satz 4.7 müssen die 2(m + 1) Parameter a0, . . .,am, b0, . . .,bm, p + 1 lineare<br />

Gleichungen erfüllen, damit Konsistenzordnung p vorliegt. am = 1 ist durch Normierung<br />

festgelegt, bei expliziten Verfahren ist bm = 0, d.h. es gibt 2m bzw. 2m + 1 freie<br />

Parameter, was als maximale Konsistenzordnung 2m − 1 (explizit) bzw. 2m (implizit)<br />

vermuten lässt.<br />

Von den Beispielen erfüllen diese maximale Ordnung:<br />

explizit p = m = 2m − 1 ⇐⇒ m = 1<br />

implizit p = m + 1 = 2m ⇐⇒ m = 1<br />

und Milne-Simpson m = 2, da p = 4 = 2m .<br />

Generell existiert ein eindeutiges Verfahren maximaler Ordnung (→ [Grigorieff 2],<br />

S. 19, 20), doch sind diese i. Allg. instabil (s.u.).<br />

4.3 (Lipschitz)Stabilität und Konvergenz<br />

Wir möchten wieder von Konsistenz(-ordnung) auf Konvergenz(-ordnung) schließen<br />

und brauchen dafür die Stabilität des Schemas. Der folgende Begriff ist hinreichend:<br />

Definition 4.11 Sei uh : I ′ h → Rn . (Ah) heißt Lipschitz-stabil in (uh), wenn<br />

H, δ, η > 0 existieren, so dass für 0 < h ≤ H und alle wh : I ′ h → Rn mit<br />

�Ahuh − Ahwh�h ≤ δ gilt:<br />

�uh − wh�h ≤ η�Ahuh − Ahwh�h .<br />

170<br />


Es folgt sofort, setzt man<br />

(rhy)(t) := y(t), t ∈ I ′ h (Restriktion auf Gitter) (4.55)<br />

Satz 4.12 (Ah) sei konsistent mit (A) und Lipschitz-stabil in rhy, wobei y die Lösung<br />

von (A) ist. Dann ist (Ah) konvergent mit Konvergenzordnung p, sofern die Konsistenzordnung<br />

p ist.<br />

Beweis:<br />

Seien H, δ, η > 0 nach Definition 4.11<br />

Also für h ≤ H ′ :<br />

Wegen �τh�h → 0 für h → 0 existiert ˜ H > 0,<br />

so dass �τh�h ≤ δ für h ≤ H ′ := min(H, ˜ H).<br />

�eh�h = �rhy − yh�h ≤ η�Ahrhy − Ahyh�h<br />

= η�τh�h → 0 für h → 0.<br />

Es bleibt also die Aufgabe, eine überprüfbare Charakterisierung für Lipschitz-Stabilität<br />

zu finden. Wir beginnen mit f = 0 (bzw. allgemein fh = 0), d.h. mit linearen, homogenen<br />

Differenzengleichungen des Typs<br />

m�<br />

k=0<br />

akyj+k = 0, j = 0, . . .,<br />

Als Charakterisierung wird sich erweisen:<br />

Definition 4.13 Ein Polynom<br />

y0, . . .,ym−1 gegeben (am = 1 oBdA.) .<br />

ρ(z) =<br />

m�<br />

k=0<br />

ak z k<br />

erfüllt die Wurzelbedingung, wenn für alle Nullstellen z ∈ C von ρ gilt:<br />

(1) |z| ≤ 1 ,<br />

(2) |z| = 1 ⇒ z ist einfach (d.h. ρ ′ (z) �= 0) .<br />

✷<br />

(4.56)<br />

Ein Mehrschrittverfahren erfüllt die Wurzelbedingung, wenn sein 1. charakteristisches<br />

Polynom dies tut.<br />

171


Wir wollen zeigen:<br />

Satz 4.14 Sei f = 0 (bzw. fh = 0). Dann sind für ein Mehrschrittverfahren (Ah)<br />

äquivalent:<br />

(1) (Ah) ist Lipschitz-stabil (in (vh)) für ein beliebiges vh : I ′ h → Rn .<br />

(2) (Ah) erfüllt die Wurzelbedingung.<br />

Dies wird impliziert von<br />

Satz 4.15 Sei y0, y1, . . ., die Lösung der Differenzengleichung<br />

m�<br />

k=0<br />

ak yj+k = gj+m , j = 0, 1, . . .<br />

y0, . . .,ym−1<br />

gegeben,<br />

wobei am = 1 (oBdA.) und gm, gm+1, . . . ∈ R gegeben. Dann:<br />

i) Gilt die Wurzelbedingung (für ρ(z) = m�<br />

�yj� ≤ C<br />

�<br />

m−1<br />

max<br />

l=0 �yl� +<br />

k=0<br />

j�<br />

�<br />

�gk�<br />

k=m<br />

(4.57)<br />

ak z k ) dann gibt es ein C > 0, so dass<br />

für alle j = 0, 1, . . . .<br />

yj<br />

ii) Ist lim<br />

j→∞ j = 0 für gm = gm+1 = · · · = 0, dann gilt die Wurzelbedingung.<br />

Beweis: Satz 4.15 ⇒ Satz 4.14:<br />

• (2) ⇒ (1) in Satz 4.14:<br />

Wegen f ≡ 0 erfüllt für vh, wh, I ′ h<br />

die Gleichung (4.57) mit<br />

also für j = 0, . . ., N :<br />

→ Rn<br />

yj := (vh(tj) − wh(tj)), j = 0, . . ., N (4.58)<br />

gj+m = h(Ahvh − Ahwh)(tj+m), j = 0, . . .,N − m, (4.59)<br />

172


Es gilt die Wurzelbedingung:<br />

�vh(tj) − wh(tj)� = �yj�<br />

also gilt<br />

≤ C<br />

�<br />

m−1<br />

max<br />

l=0 �yl� +<br />

⎛<br />

j�<br />

�<br />

h�(Ahvh − Ahwh)(tk)�<br />

k=m<br />

⎜<br />

⎟<br />

≤ C ⎝1 + (N − m + 1)h⎠<br />

�Ahvh − Ahwh�h<br />

� �� �<br />

≤(T −t0)<br />

⎞<br />

� �� �<br />

η<br />

(2) ⇒ (1) in Satz 4.14 (δ aus Definition 4.11 ist beliebig in diesen Fall f ≡ 0).<br />

• (1) ⇒ (2) in Satz 4.14:<br />

Für (1) ⇒ (2) sei eine Lösung y0, y1, . . . von (4.56) gegeben.<br />

Sei N ∈ N, h := (T − t0)/N und<br />

vh(tj) := Cyj , wh(tj) := 0 , j = 0, . . .,N<br />

�<br />

�<br />

m−1<br />

wobei C := δ max<br />

l=0 �yl�<br />

�<br />

+ 1 , mit δ aus Definition 4.11.<br />

vh und wh sind auch Lösungen von (4.56) und Ah ist linear, also nach Definition<br />

4.5<br />

�Ahvh − Ahwh�h ≤ m−1<br />

max<br />

j=0 �(vh − wh)(tj)�<br />

= C m−1<br />

max<br />

l=0 �yj�<br />

≤ δ<br />

also<br />

�yj� = 1<br />

C �(vh − wh)(tj)�<br />

≤ η<br />

C �Ah(vh<br />

≤<br />

− wh)�h, mit η aus Definition 4.11<br />

η<br />

C C<br />

�<br />

m−1<br />

max<br />

l=0 �yl�<br />

�<br />

für j = 0, . . .,N.<br />

yj<br />

Damit ist (yj) sogar beschränkt, also lim = 0, also gilt nach Satz 4.15 (ii) die<br />

j→∞ j<br />

Wurzelbedingung.<br />

Für den Beweis von Satz 4.15 brauchen wir einige Vorbereitungen.<br />

173<br />


Lemma 4.16 Sei A ∈ C m,m , so dass das charakteristische Polynom χ die Wurzelbedingung<br />

erfüllt. Dann gibt es eine Vektornorm auf C m , so dass für die erzeugte Matrixnorm<br />

gilt:<br />

�A� ≤ 1 .<br />

Beweis: (vgl. Numerik I, Lemma 2.10 !)<br />

Es seien z1, . . .,zm die Nullstellen von χ, so angeordnet, dass<br />

1 = |z1| = . . . = |zk| > |zk+1| ≥ . . . ≥ |zm| .<br />

Die Jordan’sche Normalform von A hat dann die Form mit einem nichtsingulären U :<br />

J := U −1 ⎛<br />

z1<br />

⎜<br />

AU = ⎜<br />

⎝<br />

. ..<br />

zk<br />

0<br />

Jk+1<br />

. ..<br />

⎞<br />

⎟<br />

⎠<br />

mit<br />

⎛<br />

zi<br />

⎜<br />

Ji = ⎜<br />

⎝<br />

1<br />

. .. . ..<br />

. ..<br />

⎞<br />

0<br />

⎟<br />

1 ⎠<br />

0 zi<br />

,<br />

da die z1, . . .,zk einfache Nullstellen (d.h. Eigenwerte von A) sind.<br />

Sei Dε := diag(1, ε, . . ., ε m−1 ),<br />

dann<br />

D −1<br />

ε JDε =<br />

⎛<br />

⎜<br />

⎝<br />

z1<br />

0<br />

. .. 0<br />

0<br />

zk<br />

J (ε)<br />

k+1<br />

. ..<br />

J (ε)<br />

s<br />

Js<br />

⎞<br />

⎟ ,<br />

⎟<br />

⎠<br />

J (ε)<br />

i =<br />

⎛<br />

zi<br />

⎜<br />

⎝<br />

ε<br />

. .. . ..<br />

.. .<br />

⎞<br />

0<br />

⎟<br />

ε ⎠<br />

0 zi<br />

. Ist also ε ≤ |zk| − |zk+1|, dann ist die Zeilensummennorm<br />

174


also<br />

�J (ε)<br />

i �∞ = |zi| + ε ≤ |zk| ≤ 1 ,<br />

�(UDε) −1 A UDε�∞ ≤ 1 ,<br />

so dass �x� := �(UDε) −1 x�∞ eine geeignete Norm auf C m darstellt, da für die erzeugte<br />

Matrixnorm gilt<br />

Beweis von (∗):<br />

Betrachten wir B invertierbar und<br />

d.h.<br />

�x� ′<br />

�A� ′<br />

�A� = �(UDε) −1 A UDε�∞ . (∗)<br />

�x� ↦→ �A� : erzeugte Norm<br />

:= �Bx�<br />

� �<br />

′ �Ax�<br />

:= sup |x �= 0<br />

�x� ′<br />

⎧ ⎫<br />

⎪⎨ ⎪⎬<br />

�BAx�<br />

= sup |y �= 0<br />

⎪⎩<br />

� ���� Bx � ⎪⎭<br />

y<br />

� �<br />

−1 �BAB y�<br />

= sup<br />

|y �= 0<br />

�y�<br />

�A� ′ = �BAB −1 �.<br />

Sei oBdA. n = 1, sonst sind die folgenden Überlegungen für die Komponenten durchzuführen<br />

(und eventuell zum Maximum über die Komponenten überzugehen).<br />

Wir betrachten (4.57) und schreiben dies um zu einem Einschrittverfahren durch<br />

Yj :=<br />

⎛<br />

⎜<br />

⎝<br />

yj<br />

.<br />

yj+m−1<br />

175<br />

⎞<br />

⎟<br />

⎠ ∈ R m , (4.60)<br />

✷<br />


⎛<br />

⎜<br />

A := ⎜<br />

⎝<br />

0 1<br />

. ..<br />

. ..<br />

0 1<br />

−a0 . . . . . . −am−1<br />

⎛<br />

0<br />

⎜<br />

Gj :=<br />

.<br />

⎜<br />

⎝ 0<br />

gj+m<br />

Wegen am = 1 ist dann (4.57) äquivalent zu<br />

⎞<br />

⎞<br />

⎟<br />

⎠<br />

∈ R(m,m)<br />

(4.61)<br />

⎟ , j = 0, 1, . . ., (4.62)<br />

⎠<br />

Yj+1 = AYj + Gj , j = 0, 1, . . .,<br />

Y0 vorgegeben.<br />

Lemma 4.17 Für das charakteristische Polynom χ von A nach (4.61) gilt:<br />

(−1) m χ(z) = ρ(z) =<br />

Beweis:<br />

Entwickeln nach der ersten Spalte liefert:<br />

⎛<br />

⎜<br />

χ(z) = det ⎜<br />

⎝<br />

−z<br />

0<br />

.<br />

1<br />

. ..<br />

0 . . .<br />

. ..<br />

.. .<br />

0<br />

.<br />

1<br />

⎞<br />

⎟<br />

⎠<br />

−a0 . . . . . . . . . −am−1 − z<br />

m�<br />

k=0<br />

akz k .<br />

(4.63)<br />

⎛<br />

⎜<br />

= (−z) det ⎜<br />

⎝<br />

−z<br />

0<br />

.<br />

1<br />

. ..<br />

0 . . .<br />

. ..<br />

. ..<br />

0<br />

.<br />

1<br />

⎞<br />

⎟<br />

⎠<br />

−a1 . . . . . . . . . −am−1 − z<br />

+ (−1)m+1 ⎛<br />

1<br />

⎜<br />

(−a0) det ⎜<br />

−z<br />

⎜<br />

⎝<br />

. ..<br />

. .. . ..<br />

⎞<br />

0<br />

⎟<br />

⎠<br />

0 −z 1<br />

176


=: A1 + A2<br />

und A1 = (−z)χm−1(z) zu den Koeffizienten a1 . . .am−1<br />

A2 = (−1) m a0 , d.h.<br />

χ1(z) = −am−1 − z , also<br />

χ(z) = χm(z) = (−z)χm−1(z) + (−1) m a0 ,<br />

χ(z) = (−1) m a0 + (−1) m a1z + (−z) 2 χm−2(z)<br />

= (−1) m (a0 + a1z + · · · + am−2z m−2 )<br />

+ (−z) m−1 χ1(z) ,<br />

d.h. wegen am = 1 die Behauptung.<br />

Zum Beweis von Satz 4.15<br />

Zu (i): Wir benutzen (4.60)–(4.63). Nach Lemma 4.17, 4.16 gibt es eine Norm auf<br />

C m , also R m , so dass für die erzeugte Matrixnorm gilt<br />

d.h.<br />

�A� ≤ 1 , also<br />

�Yj+1� ≤ �AYj� + �Gj� ≤ �A� �Yj� + �Gj�<br />

�Yj+1� ≤ �Y0� +<br />

j�<br />

�Gk� für j = 0, 1, 2, . . . . (4.64)<br />

k=0<br />

Da auf R m alle Normen äquivalent sind (m ist fest!), existiert K > 0 mit<br />

1<br />

K �Y � ≤ �Y �∞ ≤ K�Y � für Y ∈ R m , (4.65)<br />

also<br />

|yj+m| ≤ �Yj+1�∞ ≤ K�Yj+1�<br />

≤<br />

(4.64)<br />

K<br />

⇒ |yj| ≤ C<br />

�<br />

= K 2<br />

�<br />

K�Y0�∞ +<br />

�<br />

j�<br />

�<br />

K�Gk�∞<br />

k=0<br />

m−1<br />

max<br />

l=0 |yl| +<br />

m−1<br />

max<br />

l=0 |yl| +<br />

177<br />

j�<br />

k=0<br />

|gk+m|<br />

�<br />

, j = 0, 1, . . .,<br />

j�<br />

�<br />

|gk| , j = 0, 1, . . . .<br />

k=m<br />


Zu (ii) Sei z eine Nullstelle von ρ, dann ist<br />

eine spezielle Lösung von (4.56), da<br />

Annahme: |z| > 1 . Dann<br />

d.h.<br />

|yj|<br />

j<br />

log |yj|<br />

j<br />

yj := z j , j = 0, . . . (4.66)<br />

m�<br />

akyj+k = z j ρ(z).<br />

k=0<br />

→ ∞ im Widerspruch zu |yj|<br />

j<br />

Also gilt |z| ≤ 1 für jede Nullstelle z von ρ.<br />

Sei z eine mehrfache Nullstelle, d.h.<br />

= j log |z| − log j → ∞ für j → ∞ ,<br />

� �� �<br />

>0<br />

0 = ρ ′ (z) =<br />

→ 0 für j → ∞.<br />

m�<br />

kakz k−1 ,<br />

k=1<br />

dann ist auch yj = jz j eine spezielle Lösung von (4.56), da<br />

m�<br />

akyj+k =<br />

k=0<br />

m�<br />

k=0<br />

|z| j = |yj/j| → 0 für j → ∞ impliziert hier<br />

ak(j + k)z j+k = jz j ρ(z) + z j+1 ρ ′ (z) = 0<br />

|z| < 1 .<br />

Die obige Charakterisierung ist allgemein, da:<br />

Satz 4.18 Es sind äquivalent:<br />

(1) (Ah) ist Lipschitz-stabil (in (vh)) für beliebige (lokal) Lipschitzstetige f.<br />

(2) (Ah) ist Lipschitz-stabil (in (vh)) für f ≡ 0.<br />

178<br />


Beweis: (1) ⇒ (2): klar.<br />

(2) ⇒ (1) (alternativ [Griforieff 2], S. 115): Sei f global Lipschitzstetig.<br />

Nach Satz 4.14 gilt die Wurzelbedingung.<br />

Seien vh, wh : I ′ h → R, (oBdA. n = 1), dann sei<br />

Mit der Notation (4.60)–(4.62) erfüllt Yj<br />

yj := vh(tj) − wh(tj), j = 0, . . ., N .<br />

Yj+1 = AYj + Gj , wobei<br />

gj+m = h(Ahvh − Ahwh)(tj+m)<br />

+ h m�<br />

bk(f(tj+k, vh(tj+k)) − f(tj+k, wh(tj+k))) .<br />

k=0<br />

Ist L die Lipschitzkonstante von f, dann also<br />

�<br />

m�<br />

�<br />

|gj+m| ≤ h |˜gj+m| + |bk|L|yj+k| , (4.67)<br />

wobei<br />

k=0<br />

˜gj+m := (Ahvh − Ahwh)(tj+m) , j = 0, . . ., N − m . (4.68)<br />

Mit � · � nach Lemma 4.16 und (4.65) gilt also für Ej := �Yj� und B := m�<br />

|bk|<br />

Also<br />

⇒<br />

Ej+1 ≤ Ej + �Gj� ≤ Ej + K|gj+m|<br />

�<br />

≤ Ej + hK |˜gj+m| + LB<br />

(4.67)<br />

m<br />

max<br />

k=0 |yj+k|<br />

�<br />

≤ Ej + hK(|˜gj+m| + LB(�Yj�∞ + �Yj+1�∞)<br />

≤ Ej + hK(|˜gj+m| + LBK(Ej + Ej+1)) .<br />

(1 − hLBK 2 )Ej+1 ≤ (1 + hLBK 2 )Ej + hK|˜gj+m|<br />

Ej+1 ≤ (1 + 4hLBK 2 )Ej + 2hK|˜gj+m| für h ≤ H(L, B; K) , (4.69)<br />

179<br />

k=0


da<br />

1 + a<br />

1 − a ≤ 1 + 4a ⇐⇒ 1 + a ≤ 1 + 3a − 4a2 ⇐⇒ a ≤ 1<br />

2 .<br />

Lemma 1.4 (von Gronwall) impliziert mit (4.68)<br />

⎛<br />

�<br />

j�<br />

�<br />

⎜<br />

|yj+m| ≤ KEj+1 ≤ K E0 + 2hK |˜gk+m| exp ⎝4LBK<br />

k=0<br />

2 ⎞<br />

⎟<br />

h(j + 1) ⎠ für j = 0, . . .,N − m .<br />

� �� �<br />

≤(T −t0)<br />

Mit E0 ≤ K m−1<br />

max<br />

l=0 �(Ahvh −Ahw)(tl)� und (4.68) folgt also schließlich für ein C > 0 und<br />

h ≤ H :<br />

�vh − wh�h ≤ C�Ahvh − Ahwh�h .<br />

Die gefundenen Bedingungen sind sogar Charakterisierungen von Konvergenz.<br />

Satz 4.19 Es sind äquivalent:<br />

(1) (Ah) ist konsistent mit (A) und<br />

(Ah) erfüllt die Wurzelbedingung.<br />

(2) (Ah) ist konvergent.<br />

Es gilt Konvergenzordnung = Konsistenzordnung.<br />

Beweis:<br />

(1) ⇒ (2): Satz 4.12, Satz 4.14, Satz 4.18<br />

(2) ⇒ (1): ohne Beweis<br />

Für die betrachteten Beispiele gilt:<br />

Verfahren via Quadratur:<br />

I, III: ρ(z) = z m − z m−1 , d.h.<br />

Nullstellen z1 = 1, z2 = . . . = zm = 0<br />

II, IV: ρ(z) = z m − z m−2 , d.h.<br />

Nullstellen z1 = 1, z2 = −1, z3 = . . . zm = 0<br />

Die Wurzelbedingung ist also immer erfüllt. Komplizierter ist die Situation für Ver-<br />

fahren via Differentiation:<br />

180<br />

✷<br />


Satz 4.20 Für die Verfahren nach (4.32), (4.34) gilt für m ≥ 2:<br />

Die Wurzelbedingung gilt ⇐⇒ r = 0, m ≤ 6 oder r = 1, m ≤ 2 .<br />

Beweis: [Grigorieff 2], S. 135 ff.<br />

Also:<br />

Satz 4.21 Die Verfahren von Adams-Bashforth, Nyström, Adams–Moulton, Milne–<br />

Simpson m = 2, Milne–Simpson m ≥ 3, BDF r = 0, m ≤ 6; r = 1, m ≤ 2; r ≥<br />

2, m = 1 haben bei entsprechender Anlaufrechnung die Konvergenzordnungen<br />

m m m + 1 4 m + 1 m<br />

A − B N A − M M − S2 M − S BDF<br />

Beweis:<br />

Satz 4.19 mit (4.70), Satz 4.20 und Satz 4.8, Satz 4.9, Satz 4.10.<br />

Sämtliche Überlegungen bis zu Satz 4.18 gelten auch für nichtlineare Mehrschrittverfahren.<br />

In Satz 4.18 ist zusätzlich die Lipschitzstetigkeit der fh gleichmäßig in h zu<br />

fordern (vgl. Definition 3.20).<br />

Die maximale Konsistenzordnung 2m − 1 (explizit) bzw. 2m (implizit) ist bis auf Ausnahmen<br />

nur mit instabilen Verfahren erreichbar, da<br />

Satz 4.22 (Dahlquist (1956))<br />

Sei (Ah) ein lineares m-Schritt-Verfahren, das die Wurzelbedingung erfüllt und für ein<br />

p ∈ N für jedes f ∈ C p (U) die Konsistenzordnung p besitzt. Dann:<br />

1) p ≤ m + 2.<br />

2) p = m + 2 ⇒ m ist gerade und ρ hat nur Nullstellen vom Betrag 1,<br />

insbesondere z = 1 und z = −1.<br />

3) Sei p = m + 2 für gerades bzw. p = m + 1 für ungerades m, dann gibt es ein<br />

lineares Mehrschrittverfahren dieser Ordnung.<br />

181<br />


Beweis: [Werner/Arndt], S. 180 ff.<br />

Beispiele für optimales p :<br />

m ungerade: Adams–Moulton oder Milne–Simpson, also für m = 1 : implizite<br />

Trapezregel; m = 2: Milne–Simpson.<br />

Kommen wir zu den Prädiktor-Korrektor-Verfahren (P-C Verfahren) zurück. Die<br />

P(EC) l E-Verfahren nach (4.38), (4.39) lassen sich als explizite Mehrschrittverfahren<br />

auffassen.<br />

Seien ρ ∗ , σ ∗ bzw. ρ, σ die 1. und 2. charakteristischen Polynome des Prädiktors bzw.<br />

des Korrektors mit a ∗ m = am = 1 :<br />

Lemma 4.23 Das durch (ρ ∗ , σ ∗ ) bzw. (ρ, σ) definierte P(EC) l E Verfahren ist ein<br />

(nichtlineares) m-Schritt-Verfahren mit gleichmäßig in h Lipschitzstetigen fh.<br />

Sein charakteristisches Polynom ist ˜ρ = ρ.<br />

Beweis:<br />

Die letzte Teilbehauptung ist klar. fh ergibt sich rekursiv als<br />

y (i)<br />

m := hbmf(t, y (i−1)<br />

m<br />

fh(t, y0, . . .,ym) := bmf(t, y (l−1)<br />

m ) +<br />

k=0<br />

m−1 �<br />

k=0<br />

m−1 �<br />

) + h bkf(t + (k − m)h, yk) −<br />

y (0)<br />

m−1<br />

m := h<br />

bkf(t + (k − m)h, yk)<br />

m−1 �<br />

k=0<br />

�<br />

b ∗ m−1 �<br />

kf(t + (k − m)h, yk) − a ∗ kyk,<br />

k=0<br />

t ∈ Ih, yk ∈ R n .<br />

k=0<br />

akyk, i = l − 1, . . ., 1 ,<br />

Lipschitz-Stetigkeit von fh gleichmäßig in h (bei Lipschitz-stetigen f): Übung.<br />

P(EC) l E ist also Lipschitz-stabil, genau dann wenn der Korrektor L-stabil ist. Für die<br />

Konsistenzordnung gilt<br />

182<br />

✷<br />


Satz 4.24 1) Ist der Korrektor (ρ, σ) konsistent und bei l = 1 auch ρ ∗ (1) = 0, dann<br />

ist P(EC) l E konsistent.<br />

2) Hat (ρ, σ) Konsistenzordnung p und der Prädiktor (ρ ∗ , σ ∗ ) die Konsistenzordnung<br />

p ∗ , dann hat bei entsprechenden Anfangswerten P(EC) l E die Konsistenzordnung<br />

pl,<br />

pl := min(p, p ∗ + l) . (4.70)<br />

3) Genau dann wenn ρ die Wurzelbedingung erfüllt, ist bei 1) P(EC) l E konvergent<br />

bzw. hat bei 2) Konvergenzordnung pl.<br />

Beweis:<br />

1), 2): vgl. z.B. [Werner/Arndt], S. 187 ff.<br />

3): Satz 4.19, Lemma 4.23.<br />

Für die P(EC) l -Verfahren gilt im Wesentlichen der gleiche Satz, insbesondere haben<br />

sie die gleiche Konsistenzordnung (4.70). Sie bieten also ein besseres Verhältnis<br />

Aufwand zu Genauigkeit (Aufwand P(EC)E ∼ 2 × Aufwand P(EC)).<br />

Beispiel:<br />

⇒<br />

Prädiktor Pm m-Schritt Adams–Bashforth<br />

Korrektor Cm m-Schritt Adams–Moulton<br />

Pm : p ∗ = m , Cm : p = m + 1<br />

Also haben alle folgenden Varianten für l ∈ N die Ordnung pl = m + 1<br />

Pm(ECm) l E<br />

Pm+1(ECm) l E<br />

Pm(ECm) l<br />

Pm+1(ECm) l .<br />

183<br />

✷<br />

(4.71)<br />

(4.72)


4.4 Stabilität bei fester Schrittweite, Extrapolationsverfahren<br />

Anknüpfend an Abschnitt 1.8 betrachtet man wieder die Anwendung eines durch (ρ, σ)<br />

gegebenen linearen Mehrschrittverfahrens auf die lineare Testaufgabe (oBdA. skalar)<br />

und erhält die lineare Differenzengleichung<br />

y ′ = qy , y(t0) = y0 , q ∈ C (4.73)<br />

m�<br />

akyk+j = h<br />

k=0<br />

= h<br />

m�<br />

k=0<br />

bkf(tk+j, yk+j)<br />

m�<br />

bkqyk+j , d.h.<br />

k=0<br />

m�<br />

(ak − hqbk)yk+j = 0. (4.74)<br />

k=0<br />

Für das Verhalten von (yj) ist also das sog. Stabilitätspolynom<br />

χ(z, hq) :=<br />

m�<br />

(ak − hqbk)z k<br />

k=0<br />

= ρ(z) − hqσ(z)<br />

(4.75)<br />

maßgebend.<br />

Gilt die Wurzelbedingung für χ(·, hq), bleibt nach Satz 4.15 (yj) beschränkt. Gilt für<br />

die Nullstellen z(hq) sogar<br />

dann hat (yj) das qualitativ richtige Verhalten<br />

|z(hq)| < 1 , (4.76)<br />

yj → 0 für j → ∞ (4.77)<br />

(vgl. Beweis von Lemma 4.16, Numerik I, Lemma2.10, Satz 4.15).<br />

Generell betrachten wir jetzt Mehrschrittverfahren (Ah), für die zu h > 0, q ∈ C<br />

Polynome χ(·, hq) existieren, so dass mit<br />

184


χ(z, hq) =<br />

gilt: (Ah) angewendet auf (4.73) bedeutet<br />

χ(·, hq)yj :=<br />

m�<br />

ck(hq)yj+k = 0 ,<br />

k=0<br />

m�<br />

ck(hq)z k , (4.78)<br />

k=0<br />

Annahme: ck = ck(w) hänge nahe bei w = 0 stetig von w ab und ck(0) = ak.<br />

(4.79)<br />

Neben den linearen Mehrschrittverfahren gilt dies für<br />

P(EC) l E :<br />

P(EC) l :<br />

χ(z, hq) =<br />

χ(z, hq) =<br />

�l−1<br />

(hqbm) ν (ρ(z) − hqσ(z))<br />

ν=0<br />

+ (hqbm) l (ρ ∗ (z) − hqσ ∗ (z))<br />

�l−1<br />

(hqbm) ν z m (ρ(z) − hqσ(z))<br />

ν=0<br />

In Erweiterung von Definition 3.41 setzen wir<br />

Definition 4.25 (Ah) erfülle (4.78), (4.79).<br />

+ hq(hqbm) l−1 (ρ ∗ σ − ρσ ∗ )(z) .<br />

HA(0) := {w ∈ C | χ(z, w) = 0 ⇒ |z| < 1}<br />

heißt Bereich der absoluten Stabilität.<br />

(Ah) heißt absolut stabil (A-stabil), falls<br />

w ∈ C, Re w < 0 ⇒ w ∈ HA(0).<br />

Für ein Einschrittverfahren der Klasse (D) liefert die Anwendung auf (4.73)<br />

(4.80)<br />

(4.81)<br />

yj+1 − g(hq)yj = 0 , d.h. (4.82)<br />

χ(z, hq) = z − g(hq)<br />

mit der Nullstelle g(hq), so dass dies die alte Definition von HA(0) ist.<br />

185


Lemma 4.26 Sei (Ah) ein lineares Mehrschrittverfahren, gegeben durch (ρ, σ), das die<br />

Wurzelbedingung erfüllt. Seien z1, . . .,zm die Nullstellen von ρ und z1 = 1. Sei q ∈ C<br />

und z1(hq), . . ., zm(hq) die Nullstellen von χ(·, hq), d.h. zi(0) = zi, i = 1, . . .,m.<br />

(Ah) habe die Konsistenzordnung p, dann gilt:<br />

z1(hq) = e hq + O(h p+1 ) für h → 0.<br />

Beweis:<br />

y(t) = eq(t−t0) y0 ist die Lösung von (4.73), d.h. für diese Aufgabe gilt:<br />

m�<br />

hτh(tj+m) = (ak − hqbk)e q(tj+k−t0)<br />

y0<br />

Wegen e q(tj+k−t0) = e qjh (e hq ) k also<br />

k=0<br />

= O(h p+1 ) für j = 0, . . . .<br />

O(h p+1 ) = hτh(tj+m) = e qjh y0χ(e hq , hq)<br />

= e qjh y0(am − hqbm)(e hq − z1(hq)) . . .(e hq − zm(hq)) .<br />

(4.83)<br />

z1(0) = 1 ist einfache Nullstelle von ρ = χ(·, 0). Da die Nullstellen stetig von den Koeffizienten<br />

abhängen und für h = 0 alle Nullstellen z2, . . .,zm einen positiven Abstand<br />

von 1 haben, gilt auch für 0 < h < H, H klein:<br />

|e hq − zk(hq)| ≥ C > 0 , k = 2, . . .,m<br />

für ein C > 0. Mit (4.83) folgt daraus die Behauptung.<br />

Milne–Simpson m = 2 war das “genaueste” Verfahren bisher. Für steife Differentialgleichungen<br />

ist es völlig unbrauchbar:<br />

d.h.<br />

yj+2 − yj = h<br />

3 (fj + 4fj+1 + fj+2)<br />

�<br />

χ(z, w) = 1 − w<br />

�<br />

z<br />

3<br />

2 − 4w<br />

�<br />

z − 1 +<br />

3 w<br />

�<br />

. (4.84)<br />

3<br />

Wegen χ(1, 0) = 0 und p = 4 gilt nach Lemma 4.26 für q �= 0<br />

z1(hq) = e hq + O(|hq| 5 )<br />

= 1 + hq + (hq)2<br />

2 !<br />

+ (hq)3<br />

3 !<br />

186<br />

+ (hq)4<br />

4 ! + O(|hq|5 ) .<br />

✷<br />

(4.85)


Für z2(hq) folgt:<br />

χ(z, hq) =<br />

�<br />

1 − hq<br />

�<br />

(z<br />

3<br />

2 − (z1(hq) + z2(hq))z + z1(hq)z2(hq)) .<br />

Also durch Koeffizientenvergleich mit (4.84):<br />

�<br />

1 − hq<br />

�<br />

(z1 + z2) =<br />

3<br />

4hq<br />

3<br />

z1 + z2 = 4hq<br />

3<br />

1<br />

1 − hq<br />

3<br />

= 4<br />

∞�<br />

ν=0<br />

, d.h.<br />

� �ν+1 hq<br />

3<br />

Nimmt man die Entwickelbarkeit von z2 = z2(hq) in hq = 0 an, d.h.<br />

folgt aus (4.85)<br />

z2(hq) = α0 + α1hq + α2(hq) 2 + . . . ,<br />

z1 + z2 = (1 + α0) + (1 + α1)hq +<br />

� �<br />

1<br />

+ . . . + + α4<br />

4 !<br />

Koeffizientenvergleich mit (4.86) liefert<br />

also<br />

und schließlich<br />

Für kleine |hq| gilt also:<br />

d.h.<br />

1 + α0 = 0 ,<br />

� �<br />

1<br />

+ α2 (hq)<br />

2 2<br />

(hq) 4 + O(|hq| 5 ) .<br />

1<br />

ν ! + αν = 4<br />

, ν = 1, . . .,4 ,<br />

3ν α0 = −1 , α1 = 1<br />

3 , α2 = − 1<br />

18 , α3 = − 1<br />

54<br />

z2(hq) = −e −<br />

1<br />

3 hq + O(|hq| 3 )<br />

� �<br />

= − 1 + 1 1<br />

hq +<br />

3 18 (hq)2 + O(|hq| 3 ��<br />

)<br />

|z1(hq)| > 1 für Re q > 0 ,<br />

|z2(hq)| > 1 für Re q < 0 ,<br />

187<br />

. (4.86)<br />

.


Satz 4.27 Für Milne–Simpson m = 2 gilt<br />

HA(0) ⊂ {z | Re z = 0} .<br />

Allgemein gilt dies für jedes m-Schritt Verfahren der optimalen Ordnung p = m + 2.<br />

Milne–Simpson m = 2 eignet sich also nur für Probleme, die nur wachsende Komponenten<br />

haben. Fallende Komponenten werden nicht stabil integriert.<br />

Für P − C Verfahren gilt: Während die Ordnung des Korrektors das Maximum an<br />

Ordnung darstellt, kann die Stabilität in Form der Größe von HA(0) durch den P − C<br />

Ansatz verbessert werden, z.B. bei Milne–Simpson m = 2 als Korrektor. Die folgenden<br />

Bildern und Tabellen fassen für (4.72) einige Ergebnisse zusammen (C0 = Euler<br />

implizit).<br />

188<br />


Bereiche der absoluten Stabilität für die Adams–Bashforth–Verfahren (Pm)<br />

Bereiche der absoluten Stabilität für die Adams–Moulton–Verfahren (Cm)<br />

189


In den folgenden Bildern sind die Bereiche der absoluten Stabilität für einige PC–<br />

Verfahren eingezeichnet, die aus Kombination von Adams–Bashforth– und Adams–<br />

Moulton–Verfahren entstehen:<br />

190


Bemerkung: Neben den Stabilitätsbereichen für die Verfahren PmECmE und<br />

Pm+1ECmE sind die auf der reellen Achse liegenden Stabilitätsbereiche für die Verfahren<br />

Cm (•) und die Verfahren PmECm (✷) angegeben.<br />

Die auf der reellen Achse liegenden Stabilitätsbereiche (−α, 0) sind für eine<br />

ganze Reihe von weiteren Verfahren in der folgenden Tabelle zusammengestellt:<br />

191


Unter den miteinander verglichenen Verfahren sind die mit • gekennzeichnenten diejenigen<br />

mit maximalem reellen Stabilitätsbereich:<br />

1 ≤ m ≤ 5 : Cm<br />

6 ≤ m ≤ 11 : Pm E Cm E<br />

12 ≤ m ≤ 13 : Pm+1 E Cm E, P(E Cm) 2<br />

14 ≤ m ≤ 20 : Pm+1(E Cm) 2<br />

Hinsichtlich A-Stabilität gilt der enttäuschende<br />

Satz 4.28 (Dahlquist) Ein lineares A-stabiles Mehrschrittverfahren ist implizit und<br />

hat höchstens die Ordnung 2. Die Trapezregel hat darunter die kleinste Fehlerkonstante.<br />

Beweis: G. Dahlquist BIT 3, 27-43 (1963).<br />

Man gibt sich also mit Abschwächungen der A-Stabiliät zufrieden, der<br />

A(α)−Stabilität, bei der nur<br />

z ∈ C, Re z < 0, −z = γe iϕ , |ϕ| ≤ α<br />

⇒ z ∈ HA(0)<br />

192<br />

✷<br />

(4.87)


gefordert wird.<br />

Ist (Ah) A(α)-stabil für ein α ∈<br />

�<br />

Im z<br />

Re z<br />

�<br />

0, π<br />

�<br />

, spricht man von A(0)−stabil, gilt nur<br />

2<br />

z = iy, y < 0 ⇒ z ∈ HA(0) (4.88)<br />

von A0-Stabilität.<br />

Bei Mehrschrittverfahren tritt ein zusätzliches Problem auf, was es bei Einschrittverfahren<br />

nicht gibt: Nach Lemma 4.26 erzeugt schon die durch z1(hq) gegebene Lösung<br />

der Differentialgleichung (4.74)<br />

yj := z1(hq) j , j = 0, . . . , (4.89)<br />

(vgl. (4.66)) eine Approximation entsprechender Genauigkeit der Lösungskomponente<br />

exp(q(tj − t0)). Diese sollte also (bei q < 0) nicht von den weiteren Lösungen<br />

(zi(hq)) j , j = 0, . . ., i = 2, . . .,m von (4.74) überwuchert werden (parasitäre<br />

Lösungen). Das ist die Motivation für<br />

Definition 4.29 Ein konsistentes lineares m-Schrittverfahren (ρ, σ) heißt relativ stabil<br />

für w ∈ C , wenn die Nullstellen z1(w), . . ., zm(w) des Stabilitätspolynoms χ(·, w)<br />

erfüllen<br />

|zk(w)| < |z1(w)| , k = 2, . . ., m ,<br />

sofern z1(0) = 1.<br />

Eine ausreichende Forderung ist dann<br />

193


Definition 4.30 (Ah) heißt steif stabil, wenn es a, b, d mit a, b > 0, d < 0 gibt, so<br />

dass<br />

R1 := {z ∈ C | Re z ≤ d} ⊂ HA(0)<br />

und R2 := {z ∈ C | d ≤ Re z ≤ a, |Im z| ≤ b}<br />

zum Bereich der relativen Stabilität gehört.<br />

In diesem Sinn haben die BDF-Formeln gute Stabilitätseigenschaften.<br />

Satz 4.31 Für das BDF-Verfahren (1.33), (1.35) r = 0 gilt:<br />

(Ah) ist A-stabil ⇐⇒ m ≤ 2 .<br />

Für 1 ≤ m ≤ 6 ist (Ah) steif stabil und A(α)-stabil mit<br />

m 1 2 3 4 5 6<br />

α (in 0 ) 90 90 ∼ 86 ∼ 76 ∼ 50 ∼ 16<br />

Bisher wurde nur konstante Schrittweite h besprochen. Wie bei den Einschrittverfahren<br />

sollte aber auch hier nach analogen Kriterien eine Schrittweitensteuerung<br />

durchgeführt werden.<br />

Bei den bisherigen Formeln bedeutet dies bei Schrittweitenwechsel, das zurückliegene<br />

Werte gebraucht werden, die nicht vorliegen und durch Interpolation verschafft<br />

werden müssen. Dies ist dann einfach, wenn die Formeln in der nicht besprochenen<br />

Nordsieck-Form benutzt werden, bei der gerade die Koeffizienten des Interpolationspolynoms<br />

gespeichert werden. Es gibt auch Varianten der Mehrschrittverfahren<br />

für variable Schrittweite, bei denen bei jedem Schritt Koeffizienten zu berechnen<br />

sind. Neben einer Schrittweitensteuerung ist auch einfach eine Ordnungssteuerung<br />

möglich.<br />

Bemerkungen zur Praxis der Mehrschrittverfahren<br />

Wie wir gesehen haben, ist es ein wesentlicher Vorteil der Einschrittverfahren, dass bei<br />

ihnen die Schrittweite h in jedem Integrationsschritt grundsätzlich neu gewählt werden<br />

kann; eine Anpassung der jeweiligen Schrittweite an das Verhalten der Lösung der<br />

AWA stößt auf keine Schwierigkeiten. Dagegen ist es Nachteil der Einschrittverfahren,<br />

dass die einfacheren unter ihnen nur eine geringe Ordnung besitzen und dass die<br />

194


Ordnung solcher Verfahren starr ist und nicht geändert werden kann, wenn man<br />

nicht das Verfahren ändert. Eine hohe Genauigkeit kann man daher nur mit kleinen<br />

(und dementsprechend vielen) Schritten erreichen. Außerdem ist der Rechenaufwand<br />

hoch; man braucht pro Schritt bei einem Verfahren p-ter Ordnung mindestens p<br />

Auswertungen von f.<br />

Mehrschrittverfahren haben auch eine starre Ordnung. Verfahren hoher Ordnung<br />

können jedoch leicht konstruiert werden. Ihr Hauptvorteil, zumindestens bei linearen<br />

Mehrschrittverfahren, ist ihr geringer Rechenaufwand. Pro Schritt muss bei einem<br />

Prädiktor-Verfahren die rechte Seite der Dgl. nur einmal ausgewertet werden, bei<br />

einem Korrektor-Verfahren ist diese Zahl gleich der (i. Allg. geringen) Zahl der<br />

Iterationsschritte. Dieser Vorteil der Mehrschrittverfahren wirkt sich aber nur aus,<br />

wenn mit konstanter Schrittweite gerechnet wird. Jede Änderung der Schrittweite<br />

macht die Berechnung der zusätzlichen Punkte der Lösungskurve, die nicht in das<br />

durch die alte Schrittweite bestimmte Gitter fallen, nötig. Häufige Änderungen der<br />

Schrittweite, ggf. mit jedem Integrtionsschritt, wie sie bei sehr inhomogenen Lösungsverlauf<br />

nötig sind, lassen die natürlichen Vorteile von Mehrschrittverfahren schnell<br />

verloren gehen. Dasselbe Problem hat man beim Start eines Mehrschrittverfahrens,<br />

denn die fehlenden Startwerte müssen eigens mit einem anderen Verfahren, etwa einem<br />

Einschrittverfahren, berechnet werden.<br />

Diese Beurteilung von Mehrschrittverfahren, die dem Buch von Stoer/Bulirsch:<br />

Einführung in die Numerische Mathematik II, 1973 entnommen ist, scheint der<br />

Situation der Praxis nicht ganz gerecht zu werden. Z.B. sind von Gear und Krogh<br />

Implementierungen von Mehrschrittverfahren vorgenommen worden, die es gestatten,<br />

Ordnung und Schrittweite dem Verlauf der Lösungskurve anzupassen, wobei<br />

der dabei entstehende Aufwand diese Verfahren durchaus als konkurrenzfähig mit<br />

anderen Verfahren erscheinen lässt. Wir können hier nicht im einzelnen darauf eingehen<br />

und beschreiben nur die diesen Verfahren zugrundeliegenden Mehrschrittverfahren.<br />

1) Das Verfahren von Nordsieck–Gear (1971)<br />

Gear verwendet in seinem Programm spezielle Mehrschrittverfahren mit konstanter<br />

Schrittweite, wobei ein Algorithmus bereitgestellt wird, der es gestattet,<br />

die Schrittweite der Verfahren im Laufe der Rechnung zu ändern. Als Prädiktor<br />

bzw. als Korrektor werden Mehrschrittverfahren gleicher Ordnung p verwendet,<br />

und zwar als Prädiktor wird ein Mehrschrittverfahren in Nordsieck-<br />

Form verwendet, welches zu einem auf numerischer Differentiation beruhenden<br />

Mehrschrittverfahren der Ordnung p äquivalent ist, während als Korrektor ein<br />

Mehrschritt-Verfahren in Nordsieck Form benutzt wird, welches zum (p − 1)-<br />

195


schrittigen Adams–Moulton Verfahren äquivalent ist. Die Nordsieck-Form macht<br />

eine relativ einfache Bemessung der Schrittweite und der Ordnung (1 ≤ p ≤ 7)<br />

nach der Größe des Abschneidefehlers möglich.<br />

2) Das Verfahren von Krogh (1969-1971)<br />

Dem Verfahren von Krogh liegen Mehrschrittverfahren mit variabler Schrittweite<br />

zugrunde, dem Verfahren liegt eine nicht notwendig äquidistantes Gitter zugrunde.<br />

Verwendet werden Prädiktorformeln, deren Ordnung um 1 niedriger ist als die<br />

der Korrektorformeln. Eine Anpassung der Schrittweite ist aufgrund der Bauart<br />

der Formeln leicht möglich, ebenso die Anpasung der Ordnung an den Verlauf<br />

der Lösung.<br />

Die Verfahren sind mit anderen (Runge–Kutta, Extrapolationsverfahren,...)<br />

verglichen worden und haben sich als sehr effektiv erweisen (vgl. z.B.<br />

Hull/Enright/Fellen/Sedgwick: “Comparing Numerical Methods for ordinary<br />

differential equations”, SIAM J. Numer. Anal. 9 (603-637) 1972).<br />

196


5 Die Finite-Differenzen-Methode für die Poisson-<br />

Gleichung<br />

5.1 Das Dirichlet-Problem für die Poisson-Gleichung<br />

In diesem Kapitel soll die Finite-Differenzen-Methode am Beispiel der Poisson-<br />

Gleichung auf einem Rechteck eingeführt werden, und daran und an Verallgemeinerungen<br />

der Aufgabenstellung Vorzüge und Grenzen des Ansatzes aufgezeigt werden. Auch<br />

im nachfolgenden Kapitel steht die Poisson-Gleichung im Mittelpunkt, dann aber auf<br />

einem allgemeinen Gebiet. Für die räumliche Grundmenge der Differentialgleichung<br />

Ω ⊂ R d wird als Minimalforderung vorausgesetzt, dass es sich um ein beschränktes<br />

Gebiet handelt, wobei ein Gebiet eine nichtleere, offene, zusammenhängende Menge<br />

ist. Der Rand dieser Menge wird mit ∂Ω bezeichnet, der Abschluss Ω ∪∂Ω mit Ω. Das<br />

Dirichlet-Problem für die Poisson-Gleichung lautet dann:<br />

Gegeben seien Funktionen g : ∂Ω → R und f : Ω → R. Gesucht ist eine Funktion<br />

u : Ω → R, so dass<br />

−<br />

d�<br />

i=1<br />

∂ 2<br />

∂x 2 i<br />

u = f in Ω , (5.1)<br />

u = g auf ∂Ω . (5.2)<br />

Dieses Differentialgleichungsmodell hat Bedeutung in einem weiten Spektrum von<br />

Disziplinen. Die gesuchte Funktion u lässt sich je nach Anwendung auch als elektromagnetisches<br />

Potential, Verschiebung einer elastischen Membran oder Temperatur interpretieren.<br />

Wir benutzen ab jetzt für partielle Ableitungen die folgenden<br />

Schreibweisen: Für u : Ω ⊂ R d → R setzen wir:<br />

∂iu := ∂ u für i = 1, . . .,d ,<br />

∂xi<br />

∂iju := ∂ 2<br />

∂xi ∂xj<br />

u für i, j = 1, . . .,d ,<br />

∆u := (∂11 + . . . + ∂dd) u .<br />

Der Ausdruck ∆u heißt der Laplace-Operator.<br />

Hiermit können wir (5.1) kurz schreiben als<br />

−∆u = f in Ω . (5.3)<br />

197


Wir könnten den Laplace-Operator auch definieren durch<br />

∆u = ∇ · (∇u) ,<br />

wobei ∇u = (∂1u, . . .,∂du) T den Gradienten einer Funktion u und ∇ · v = ∂1v1 +<br />

· · · + ∂dvd die Divergenz eines Vektorfeldes v bezeichne. Daher ist eine alternative<br />

Schreibweise, die hier nicht verwendet werden soll: ∆u = ∇ 2 u . Die auf den ersten<br />

Blick seltsame Inkorporation des Minuszeichens in die linke Seite von (5.3) hat mit den<br />

Monotonie- und Definitheitseigenschaften von −∆ zu tun (siehe Abschn. 5.4).<br />

Es muss noch der Lösungsbegriff für (5.1), (5.2) genauer spezifiziert werden. Bei einer<br />

punktweisen Sichtweise, die in diesem Kapitel verfolgt werden soll, müssen die Funktionen<br />

in (5.1), (5.2) existieren und die Gleichungen gelten. Da (5.1) eine Gleichung<br />

auf der offenen Menge Ω ist, sagt sie nichts über das Verhalten von u bis in ∂Ω hinein<br />

aus. Damit die Randbedingung eine echte Forderung ist, muss u mindestens stetig<br />

bis in den Rand hinein, also auf Ω, sein. Diese Forderungen lassen sich kurz mittels<br />

entsprechender Funktionenräume definieren. Einige Beispiele sind:<br />

C(Ω) := � u : Ω → R � � u stetig in Ω � ,<br />

C 1 (Ω) := � u : Ω → R � � u ∈ C(Ω) , ∂iu existiert auf Ω ,<br />

∂iu ∈ C(Ω) für alle i = 1, . . .,d � .<br />

Analog sind die Räume C k (Ω) für k ∈ N, sowie C(Ω) und C k (Ω) definiert und auch<br />

C(∂Ω). Allgemein spricht man etwas vage bei Forderungen, die die (stetige) Existenz<br />

von Ableitungen betreffen, von Glattheitsforderungen.<br />

Im Folgenden sollen im Hinblick auf die Finite-Differenzen-Methode auch f und g als<br />

stetig auf Ω bzw. ∂Ω vorausgesetzt werden. Dann:<br />

Definition 5.1 Sei f ∈ C(Ω), g ∈ C(∂Ω). Eine Funktion u heißt (klassische) Lösung<br />

der Randwertaufgabe (5.1), (5.2), wenn u ∈ C 2 (Ω) ∩ C(Ω) und (5.1) für alle x ∈ Ω,<br />

sowie (5.2) für alle x ∈ ∂Ω gilt.<br />

5.2 Die Finite-Differenzen-Methode<br />

Der Finite-Differenzen-Methode liegt folgender Ansatz zugrunde: Man suche eine Näherungslösung<br />

für die Lösung der Randwertaufgabe an endlich vielen Punkten in Ω (den<br />

Gitterpunkten). Hierzu ersetze man die Ableitungen in (5.1) durch Differenzenquotienten<br />

nur in Funktionswerten an Gitterpunkten in Ω und fordere (5.2) nur an Gitterpunkten.<br />

Dadurch erhält man algebraische Gleichungen für die Näherungswerte an Gitterpunkten.<br />

Man spricht allgemein von einer Diskretisierung der Randwertaufgabe. Da die<br />

198


Randwertaufgabe linear ist, ist auch das Gleichungssystem für die Näherungslösung linear.<br />

Allgemein spricht man auch bei anderen (Differentialgleichungs-)Problemen und<br />

anderen Diskretisierungsansätzen von dem algebraischen Gleichungssystem als dem<br />

diskreten Problem als Approximation des kontinuierlichen Problems. Ziel weiterer Untersuchungen<br />

wird es sein, den begangenen Fehler abzuschätzen und so die Güte der<br />

Näherungslösung beurteilen zu können.<br />

Generierung der Gitterpunkte Im Folgenden werden vorerst Probleme in zwei<br />

Raumdimensionen betrachtet (d = 2). Zur Vereinfachung betrachten wir den Fall einer<br />

konstanten Schrittweite (oder Maschenweite) h > 0 in beide Ortsrichtungen. Die Größe<br />

h ist hier der Diskretisierungsparameter, der insbesondere die Dimension des diskreten<br />

Problems bestimmt.<br />

l = 8<br />

m = 5<br />

◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦<br />

◦ • • • • • ✸•<br />

• ◦<br />

◦ • • • ✷•<br />

• • • ◦<br />

◦ • • • • • • • ◦<br />

◦ • • • • • • • ◦<br />

◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦<br />

• : Ωh<br />

◦ : ∂Ωh<br />

Abbildung 2: Gitterpunkte in Rechteckgebiet<br />

✷: randfern<br />

✸: randnah<br />

Vorerst sei Ω ein Rechteck, was den einfachsten Fall für die Finite-Differenzen-Methode<br />

darstellt. Durch Translation des Koordinatensystems lässt es sich einrichten, dass Ω =<br />

(0, a) × (0, b) mit a, b > 0 gilt. Die Längen a, b und h seien so, dass<br />

gilt. Durch<br />

a = lh , b = mh für gewisse l, m ∈ N (5.4)<br />

Ωh := � (ih, jh) � �<br />

� i = 1, . . .,l − 1 , j = 1, . . .,m − 1<br />

= � (x, y) ∈ Ω � � (5.5)<br />

� x = ih , y = jh mit i, j ∈ Z<br />

werden Gitterpunkte in Ω definiert, in denen eine Näherung der Differentialgleichung<br />

zu erfüllen ist. Ebenso werden durch<br />

∂Ωh := � (ih, jh) � � i ∈ {0, l} , j ∈ {0, . . ., m} oder i ∈ {0, . . ., l} , j ∈ {0, m} �<br />

= � (x, y) ∈ ∂Ω � � x = ih , y = jh mit i, j ∈ Z �<br />

Gitterpunkte auf ∂Ω definiert, in denen eine Näherung der Randbedingung zu erfüllen<br />

ist. Die Gesamtheit der Gitterpunkte wird bezeichnet mit<br />

Ωh := Ωh ∪ ∂Ωh .<br />

199


Aufstellen des Gleichungssystems<br />

Lemma 5.2 Sei Ω := (x−h, x+h) für x ∈ R, h > 0. Dann gilt mit einer beschränkten,<br />

von u abhängigen, aber von h unabhängigen Größe R<br />

1. für u ∈ C 2 (Ω):<br />

2. für u ∈ C 2 (Ω):<br />

3. für u ∈ C 3 (Ω):<br />

u ′ (x) =<br />

u ′ (x) =<br />

u ′ (x) =<br />

4. für u ∈ C 4 (Ω):<br />

u ′′ (x) =<br />

u(x + h) − u(x)<br />

h<br />

u(x) − u(x − h)<br />

h<br />

u(x + h) − u(x − h)<br />

2h<br />

+ hR und |R| ≤ 1<br />

2 �u′′ �∞ ,<br />

+ hR und |R| ≤ 1<br />

2 �u′′ �∞ ,<br />

+ h 2 R und |R| ≤ 1<br />

6 �u′′′ �∞ ,<br />

u(x + h) − 2u(x) + u(x − h)<br />

h 2 + h 2 R und |R| ≤ 1<br />

12 �u(4) �∞ .<br />

Dabei ist die Maximumnorm � · �∞ jeweils über das Intervall der beteiligten Punkte<br />

x, x + h, x − h zu erstrecken.<br />

Beweis: Der Beweis folgt sofort durch Taylorentwicklung. Als Beispiel betrachte man<br />

die 3. Aussage: Aus<br />

u(x ± h) = u(x) ± hu ′ (x) + h2<br />

2 u′′ (x) ± h3<br />

6 u′′′ (x ± ξ±) für gewisse ξ± ∈ (0, h)<br />

folgt die Behauptung durch Linearkombination. ✷<br />

Sprechweise: Der Quotient in 1. heißt vorwärtsgenommener Differenzenquotient und<br />

man bezeichnet ihn kurz mit ∂ + u(x). Der Quotient in 2. heißt rückwärtsgenommener<br />

Differenzenquotient (kurz: ∂ − u(x)), und der in 3. zentraler Differenzenquotient<br />

(kurz: ∂ 0 u(x)). Den in 4. auftretenden Quotienten können wir mit diesen Bezeichnungen<br />

schreiben als ∂ − ∂ + u(x).<br />

200


Um die Aussage 4. in jede Raumrichtung zur Approximation von ∂11u und ∂22u in<br />

einem Gitterpunkt (ih, jh) anwenden zu können, sind also über die Bedingungen aus<br />

Definition 5.1 hinaus die zusätzlichen Glattheitseigenschaften ∂ (3,0) u, ∂ (4,0) u ∈ C(Ω)<br />

und analog für die zweite Koordinate nötig. Dabei ist zum Beispiel ∂ (3,0) u := ∂ 3 u/∂x 3 1 .<br />

Wenden wir dann diese Approximationen auf die Randwertaufgabe (5.1), (5.2) an, so<br />

erhalten wir im Gitterpunkt (ih, jh) ∈ Ωh<br />

�<br />

u ((i + 1)h, jh) − 2u(ih, jh) + u ((i − 1)h, jh)<br />

−<br />

h2 + u (ih, (j + 1)h) − 2u(ih, jh) + u (ih, (j − 1)h)<br />

h2 �<br />

(5.6)<br />

= f(ih, jh) + R(ih, jh)h 2 .<br />

Dabei ist R wie in Lemma 5.2, 4. beschrieben eine beschränkte, von der Lösung u<br />

abhängige, aber von der Schrittweite h unabhängige Funktion. Liegt weniger Glattheit<br />

für die Lösung u vor, so kann dennoch die Approximation (5.6) für −∆u formuliert<br />

werden, aber die Größe des Fehlers in der Gleichung ist vorerst unklar.<br />

Für die Gitterpunkte (ih, jh) ∈ ∂Ωh ist keine Approximation in der Randbedingung<br />

nötig:<br />

u(ih, jh) = g(ih, jh) .<br />

Vernachlässigen wir den Term Rh 2 in (5.6), so erhalten wir lineare Gleichungen für<br />

Näherungswerte uij für u(x, y) an Stellen (x, y) = (ih, jh) ∈ Ωh. Diese lauten:<br />

1<br />

h2 � �<br />

− ui,j−1 − ui−1,j + 4uij − ui+1,j − ui,j+1 = fij<br />

für i = 1, . . .,l − 1 , j = 1, . . ., m − 1 ,<br />

(5.7)<br />

uij = gij , falls i ∈ {0, l}, j = 0, . . .,m oder j ∈ {0, m}, i = 0, . . ., l . (5.8)<br />

Dabei wurden als Abkürzungen verwendet:<br />

fij := f(ih, jh), gij := g(ih, jh) . (5.9)<br />

Also erhalten wir für jeden unbekannten Gitterwert uij eine Gleichung. Die Gitterpunkte<br />

(ih, jh) und die Näherungswerte uij an ihnen haben also eine natürliche zweidimensionale<br />

Indizierung.<br />

In Gleichung (5.7) treten zu einem Gitterpunkt (i, j) nur die Nachbarn in den vier<br />

Haupthimmelsrichtungen auf, wie in Abb. 3 dargestellt. Man spricht auch vom 5-<br />

Punkte-Stern des Differenzenverfahrens.<br />

Bei den inneren Gitterpunkten (x, y) = (ih, jh) ∈ Ωh kann man zwei Fälle unterscheiden:<br />

201


y<br />

✻<br />

(i−1,j)<br />

•<br />

(i,j+1)<br />

•<br />

(i,j)<br />

•<br />

(i,j−1)<br />

•<br />

(i+1,j)<br />

•<br />

✲ x<br />

Abbildung 3: 5-Punkte-Stern<br />

1. (i, j) liegt so, dass alle Nachbargitterpunkte davon in Ωh liegen (randfern).<br />

2. (i, j) liegt so, dass mindestens ein Nachbarpunkt (r, s) auf ∂Ωh liegt (randnah).<br />

Dann ist in Gleichung (5.7) der Wert urs aufgrund von (5.8) bekannt (urs = grs)<br />

und wir können (5.7) folgendermaßen modifizieren:<br />

Streiche in den Gleichungen für randnahe (i, j) die Werte urs mit (rh, sh) ∈ ∂Ωh<br />

und addiere zur rechten Seite in (5.7) den Wert grs/h 2 . Das durch diese Elimination<br />

von Randunbekannten mittels der Dirichlet-Randbedingung entstehende<br />

Gleichungssystem nennen wir (5.7) ∗ ; es ist äquivalent zu (5.7), (5.8).<br />

Anstelle von den Werten uij, i = 1, . . .,l − 1, j = 1, . . .,m − 1 spricht man auch von<br />

der Gitterfunktion uh : Ωh → R, wobei gilt: uh(ih, jh) = uij für i = 1, . . ., l − 1, j =<br />

1, . . .,m−1. Analog sind Gitterfunktionen auf ∂Ωh oder auf Ωh definiert. Somit können<br />

wir das Differenzenverfahren wie folgt formulieren:<br />

Gesucht ist eine Gitterfunktion uh auf Ωh, so dass die Gleichungen (5.7), (5.8) gelten<br />

oder äquivalent dazu:<br />

Gesucht ist eine Gitterfunktion uh auf Ωh, so dass die Gleichungen (5.7) ∗ gelten.<br />

Gestalt des Gleichungssystems Das Gleichungssystem (5.7) ∗ geht nach Wahl einer<br />

Anordnung der uij für i = 0, . . .,l, j = 0, . . .,m über in ein Gleichungssystem<br />

Ah�uh = �qh<br />

mit Ah ∈ R M1,M1 und �uh,�qh ∈ R M1 , wobei M1 = (l − 1)(m − 1).<br />

(5.10)<br />

Es wird also nahezu die gleiche Bezeichnung gewählt für die Gitterfunktion und für<br />

ihren darstellenden Vektor bei einer festen Nummerierung der Gitterpunkte. Der einzige<br />

Unterschied besteht darin, dass der darstellende Vektor fett gedruckt wird. Die<br />

Anordnung der Gitterpunkte sei beliebig mit der Einschränkung, dass mit den ersten<br />

M1 Indizes die Punkte aus Ωh nummeriert werden, und die Punkte aus ∂Ωh mit den<br />

folgenden M2 = 2(l + m) Indizes versehen werden. Auf die Gestalt von Ah wirkt sich<br />

diese Einschränkung nicht aus.<br />

202


Die rechte Seite �qh hat infolge des beschriebenen Eliminationsprozesses folgende Gestalt:<br />

�qh = − Âh�g + � f , (5.11)<br />

wobei �g ∈ R M2 und � f ∈ R M1 die Darstellungsvektoren gemäß der gewählten Nummerierung<br />

der Gitterfunktionen<br />

fh : Ωh → R und gh : ∂Ωh → R<br />

mit den Werten nach (5.9) sind. Die Matrix Âh ∈ R M1,M2 hat folgende Gestalt:<br />

( Âh)ij = − 1<br />

h 2 , falls der Knoten i randnah<br />

und j ein Nachbar im 5-Punkte-Stern ist ,<br />

( Âh)ij = 0 sonst .<br />

(5.12)<br />

Bei beliebiger Anordnung sind nur das Diagonalelement und höchstens 4 weitere Einträge<br />

pro Zeile in Ah nach (5.7) ungleich 0, das heißt, die Matrix ist dünnbesetzt im<br />

engeren Sinn (siehe Numerik I).<br />

Eine naheliegende Ordnung ist die zeilenweise Nummerierung von Ωh nach folgendem<br />

Schema:<br />

(h,b−h)<br />

(l−1)(m−2)+1<br />

(h,b−2h)<br />

(l−1)(m−3)+1<br />

.<br />

(h,2h)<br />

l<br />

(h,h)<br />

1<br />

(2h,b−h)<br />

(l−1)(m−2)+2 · · · · · ·<br />

(2h,b−2h)<br />

(l−1)(m−3)+2 · · · · · ·<br />

.<br />

. ..<br />

. ..<br />

(2h,2h)<br />

l+1 · · · · · ·<br />

(2h,h)<br />

2 · · · · · ·<br />

(a−h,b−h)<br />

(l−1)(m−1)<br />

(a−h,b−2h)<br />

(l−1)(m−2)<br />

.<br />

(a−h,2h)<br />

2l−2<br />

(a−h,h)<br />

l−1<br />

, (5.13)<br />

die auch lexikographisch genannt wird. (Allerdings passt diese Bezeichnung besser zur<br />

spaltenweisen Nummerierung.)<br />

Die Matrix Ah nimmt daher die folgende Gestalt einer (m − 1) × (m − 1)-<br />

Blocktridiagonalmatrix an:<br />

Ah = h −2<br />

⎛<br />

T<br />

⎜ −I<br />

⎜<br />

⎝<br />

−I<br />

T<br />

. ..<br />

0<br />

−I<br />

. ..<br />

. ..<br />

. ..<br />

. ..<br />

−I<br />

0<br />

. ..<br />

T<br />

⎞<br />

⎟<br />

−I ⎠<br />

(5.14)<br />

−I T<br />

203


mit der Einheitsmatrix I ∈ Rl−1,l−1 und<br />

⎛<br />

4<br />

⎜ −1<br />

⎜<br />

T = ⎜<br />

⎝<br />

−1<br />

4<br />

. ..<br />

0<br />

−1<br />

. ..<br />

.. .<br />

. ..<br />

.. .<br />

−1<br />

0<br />

.. .<br />

4<br />

⎞<br />

⎟ ∈ R<br />

⎟<br />

−1 ⎠<br />

−1 4<br />

l−1,l−1 .<br />

Wir kehren zu einer allgemeinen Nummerierung zurück. Im Folgenden sind einige Eigenschaften<br />

der Matrizen Ah ∈ RM1,M1 und<br />

� � �<br />

Ãh := � Âh ∈ R M1,M<br />

,<br />

Ah<br />

wobei M := M1 + M2, zusammengestellt. Die Matrix Ãh berücksichtigt also alle Gitterpunkte<br />

aus Ωh. Sie hat für die Auflösung von (5.10) zwar keine Bedeutung, wohl<br />

aber für die Stabilität der Diskretisierung, die in Abschn. 5.4 untersucht wird.<br />

• (Ah) rr > 0 für alle r = 1, . . .,M1 ,<br />

• ( Ãh)rs ≤ 0 für alle r = 1, . . ., M1 , s = 1, . . .,M mit r �= s ,<br />

M1 �<br />

�<br />

≥ 0 für alle r = 1, . . ., M1 ,<br />

• (Ah) rs > 0 , falls r zu einem randnahen Gitterpunkt gehört,<br />

•<br />

s=1<br />

M�<br />

( Ãh)rs = 0 für alle r = 1, . . .,M1 ,<br />

s=1<br />

• Ah ist irreduzibel ,<br />

• Ah ist regulär.<br />

(5.15)<br />

Die Matrix Ah ist also schwach diagonaldominant (siehe Numerik I für die nachfolgend<br />

benutzten Begriffe der linearen Algebra). Die Irreduzibilität folgt aus der Tatsache,<br />

dass sich zwei beliebige Gitterpunkte durch einen Weg aus jeweiligen Nachbarn im<br />

5-Punkte-Stern verbinden lassen. Die Regularität folgt aus der irreduziblen Diagonaldominanz.<br />

Daraus können wir nun schließen, dass (5.10) mit dem Algorithmus der<br />

Gauß-Elimination ohne Pivotsuche auflösbar ist. Insbesondere bleibt hierbei eine eventuell<br />

vorliegende Bandstruktur erhalten (siehe Numerik I).<br />

Ah besitzt noch die weiteren Eigenschaften:<br />

• Ah ist symmetrisch,<br />

• Ah ist positiv definit.<br />

204


Es reicht, diese Eigenschaften für eine feste Anordnung, etwa die zeilenweise, zu verifizieren,<br />

da durch Änderung der Anordnung Ah in PAhP T mit einer regulären Matrix<br />

P übergeht, wodurch weder die Symmetrie noch die Positivdefinitheit zerstört wird.<br />

Dabei ist die zweite Aussage nicht offensichtlich. Sie kann zwar durch explizite Angabe<br />

von Eigenwerten und -vektoren verifiziert werden. Die Eigenwerte und -vektoren werden<br />

für den Spezialfall l = m = n in Numerik I, Abschnitt 7.6 angegeben. Somit lässt<br />

sich (5.10) unter Ausnutzung der Bandstruktur mit dem Cholesky-Verfahren auflösen.<br />

Güte der Approximation durch die Finite-Differenzen-Methode<br />

Wir wenden uns nun der folgenden Frage zu:<br />

Wie gut approximiert die der Lösung �uh von (5.10) entsprechende Gitterfunktion uh<br />

die Lösung u von (5.1), (5.2)?<br />

Hierzu betrachten wir die Gitterfunktion U : Ωh → R, die durch<br />

U(ih, jh) := u(ih, jh) (5.16)<br />

definiert ist. Um die Größe von U − uh zu messen, benötigen wir eine Norm. Beispiele<br />

hierfür sind die Maximumnorm<br />

oder die diskrete L 2 -Norm<br />

�uh − U�∞ := max |(uh − U) (ih, jh)|<br />

i=1,...,l−1<br />

j=1,...,m−1<br />

�uh − U�0,h := h<br />

�<br />

l−1 m−1<br />

� �<br />

((uh − U)(ih, jh)) 2<br />

i=1<br />

j=1<br />

� 1/2<br />

. (5.17)<br />

Beide Normen können aufgefasst werden als die Anwendung der kontinuierlichen Normen<br />

� · �∞ des Funktionenraums L ∞ (Ω) bzw. � · �0 des Funktionenraums L 2 (Ω) auf<br />

stückweise konstante Fortsetzungen der Gitterfunktionen (mit spezieller Behandlung<br />

des randnahen Bereichs). Offensichtlich gilt<br />

�vh�0,h ≤ √ ab �vh�∞<br />

für eine Gitterfunktion vh, aber die umgekehrte Abschätzung gilt nicht gleichmäßig in<br />

h, so dass � · �∞ die stärkere Norm darstellt. Allgemein ist also eine Norm � · �h auf<br />

dem Raum der Gitterfunktionen gesucht, in der das Verfahren konvergiert in dem Sinn<br />

�uh − U�h → 0 für h → 0<br />

oder sogar Konvergenzordnung p > 0 hat, indem eine von h unabhängige Konstante<br />

C > 0 existiert, so dass gilt<br />

�uh − U�h ≤ C h p .<br />

205


Nach Konstruktion des Verfahrens gilt für eine Lösung u ∈ C 4 (Ω)<br />

Ah � U = �qh + h 2 � R ,<br />

wobei � U und � R ∈ R M1 die Darstellungen der Gitterfunktionen U und R nach (5.6) in<br />

der gewählten Nummerierung seien. Also gilt:<br />

und damit �<br />

��Ah(�uh<br />

− � �<br />

�<br />

U)<br />

Ah(�uh − � U) = −h 2 � R<br />

� = h<br />

∞<br />

2 | � R|∞ = Ch 2<br />

mit einer von h unabhängigen Konstante C(= | � R|∞) > 0.<br />

Nach Lemma 5.2, 4. gilt<br />

C = 1 �<br />

(4,0)<br />

�∂ u�∞ + �∂<br />

12<br />

(0,4) �<br />

u�∞ .<br />

Dies bedeutet, dass das Verfahren bei einer Lösung u ∈ C 4 (Ω) konsistent mit der<br />

Randwertaufgabe ist mit einer Konsistenzordnung 2. Allgemeiner gefasst lautet der<br />

Begriff wie folgt:<br />

Definition 5.3 Sei (5.10) das lineare Gleichungssystem, das einer (Finite-<br />

Differenzen-) Approximation auf den Gitterpunkten Ωh mit dem Diskretisierungsparameter<br />

h entspricht. Sei � U die Darstellung der Gitterfunktion, die der Lösung u der<br />

Randwertaufgabe nach (5.16) entspricht. Ferner sei �·�h eine Norm auf dem Raum der<br />

Gitterfunktionen auf Ωh und | · |h die entsprechende Vektornorm auf dem Raum R M1h,<br />

wobei M1h die Anzahl der Gitterpunkte in Ωh sei. Die Approximation heißt konsistent<br />

bezüglich � · �h, wenn gilt:<br />

|Ah � U − �qh|h → 0 für h → 0 .<br />

Die Approximation hat Konsistenzordnung p > 0, wenn gilt<br />

|Ah � U − �qh|h ≤ Ch p<br />

mit einer von h unabhängigen Konstanten C > 0.<br />

Der Konsistenz- oder auch Abschneidefehler Ah � U −�qh misst also, inwieweit die exakte<br />

Lösung die Näherungsgleichungen erfüllt. Wie gesehen, ist er im Allgemeinen leicht,<br />

allerdings bei unnatürlich hohen Glattheitsvoraussetzungen, durch Taylorentwicklung<br />

206


zu bestimmen. Dies besagt aber nicht, dass sich der Fehler |�uh − � U|h genauso verhalten<br />

muss. Es gilt:<br />

�<br />

��uh − � U � �<br />

� �<br />

= �A h −1<br />

h Ah(�uh − � �<br />

�<br />

U) ≤ � � �<br />

� −1<br />

A �Ah(�uh − � U) � � , h (5.18)<br />

wobei die Matrixnorm � · �h mit der Vektornorm | · |h verträglich gewählt werden muss.<br />

Der Fehler verhält sich daher erst dann asymptotisch in h wie der Konsistenzfehler,<br />

wenn � �A −1<br />

�<br />

�<br />

h unabhängig von h beschränkbar, also das Verfahren stabil ist:<br />

h<br />

Definition 5.4 In der Situation von Definition 5.3 heißt die Approximation stabil<br />

bezüglich � · �h, wenn eine von h unabhängige Konstante C > 0 existiert, so dass gilt<br />

� �<br />

� −1<br />

A �<br />

h ≤ C . h<br />

Aus der obigen Definition folgt mit (5.18) offensichtlich:<br />

Satz 5.5 Ein konsistentes und stabiles Verfahren ist konvergent und die Konvergenzordnung<br />

ist mindestens gleich der Konsistenzordnung.<br />

Konkret für das Beispiel der 5-Punkte-Stern-Diskretisierung von (5.1), (5.2) auf dem<br />

Rechteck ist also die Stabilität bezüglich � · �∞ wünschenswert. Sie folgt tatsächlich<br />

aus der Struktur von Ah: Es gilt nämlich<br />

�<br />

� A −1<br />

h<br />

�<br />

� h<br />

h<br />

� h<br />

� ∞ ≤ 1<br />

16 (a2 + b 2 ) . (5.19)<br />

Dies folgt aus allgemeineren Überlegungen in Abschn. 5.4 (Satz 5.13). Zusammengenommen<br />

gilt also:<br />

Satz 5.6 Die Lösung u von (5.1), (5.2) auf dem Rechteck Ω erfülle u ∈ C 4 (Ω). Die<br />

5-Punkte-Stern-Diskretisierung hat dann bezüglich � · �∞ die Konvergenzordnung 2,<br />

genauer:<br />

|�uh − � U|∞ ≤ 1<br />

192 (a2 + b 2 ) � �∂ (4,0) u�∞ + �∂ (0,4) �<br />

2<br />

u�∞ h .<br />

5.3 Verallgemeinerung und Grenzen<br />

der Finite-Differenzen-Methode<br />

Wir betrachten vorerst weiter die Randwertaufgabe (5.1), (5.2) auf einem Rechteck Ω.<br />

Die entwickelte 5-Punkte-Stern-Diskretisierung lässt sich als eine Abbildung −∆h von<br />

Gitterfunktionen auf Ωh in Gitterfunktionen auf Ωh auffassen, die definiert ist durch<br />

1�<br />

−∆hvh(x1, x2) := cijvh(x1 + ih, x2 + jh) , (5.20)<br />

i,j=−1<br />

207


wobei c0,0 = 4/h 2 , c0,1 = c1,0 = c0,−1 = c−1,0 = −1/h 2 und cij = 0 für alle anderen (i, j)<br />

gilt. Zur Beschreibung eines wie in (5.20) definierten Differenzen-Sterns werden auch die<br />

Himmelsrichtungen (bei zwei Raumdimensionen) herangezogen. Beim 5-Punkte-Stern<br />

treten also nur die Haupthimmelsrichtungen auf.<br />

Die Frage, ob die Gewichte cij anders gewählt werden können, so dass eine Approximation<br />

höherer Ordnung in h von −∆u entsteht, führt auf eine negative Antwort.<br />

Insofern ist der 5-Punkte-Stern optimal. Das schließt nicht aus, dass andere umfangreichere<br />

Differenzen-Sterne gleicher Approximationsordnung auch erwägenswert sind.<br />

Ein Beispiel lautet:<br />

c0,0 = 8<br />

3h 2 , cij = − 1<br />

3h 2 für alle sonstigen i, j ∈ {−1, 0, 1} . (5.21)<br />

Dieser 9-Punkte-Stern kann interpretiert werden als eine Linearkombination aus dem<br />

5-Punkte-Stern und einem 5-Punkte-Stern für ein um π/4 rotiertes Koordinatensystem<br />

(mit Schrittweite 2 1/2 h), und zwar mit Gewichten 1/3 bzw. 2/3. Unter Benutzung eines<br />

allgemeinen 9-Punkte-Sterns kann ein Verfahren mit Konsistenzordnung größer als<br />

2 nur konstruiert werden, wenn die rechte Seite f an der Stelle (x1, x2) nicht durch<br />

die Auswertung f(x1, x2), sondern durch Anwendung eines allgemeineren Sterns realisiert<br />

wird. Ein Beispiel ist das Mehrstellenverfahren nach Collatz. Verfahren höherer<br />

Ordnung können auch durch umfangreichere Sterne erzielt werden, das heißt, die Summationsindizes<br />

in (5.20) sind durch k und −k für k ∈ N zu ersetzen. Solche Differenzen-<br />

Sterne können aber schon für k = 2 nicht für randnahe Gitterpunkte verwendet werden,<br />

so dass dort auf Approximationen niedrigerer Ordnung zurückgegriffen werden muss.<br />

Betrachtet man den 5-Punkte-Stern also als geeignete Diskretisierung für die Poisson-<br />

Gleichung, so fällt in Satz 5.6 die hohe Glattheitsforderung an die Lösung auf. Dies<br />

kann nicht ignoriert werden, da sie im Allgemeinen nicht gilt: Zwar ist für ein glattberandetes<br />

Gebiet die Glattheit der Lösung nur durch die Glattheit der Daten f und g<br />

bestimmt, doch reduzieren Ecken im Gebiet diese Glattheit, und zwar um so mehr, je<br />

einspringender sie sind. Man betrachte dazu folgende Beispiele:<br />

Für die Randwertaufgabe (5.1), (5.2) auf einem Rechteck [0, a] × [0, b] werde f = 1<br />

und g = 0 gewählt, also beliebig glatte Funktionen. Dennoch kann für die Lösung<br />

u nicht u ∈ C 2 (Ω) gelten, denn sonst wäre auch −∆u(0, 0) = 1, aber andererseits<br />

ist wegen der Randbedingung ∂1,1u(x, 0) = 0, also auch ∂1,1u(0, 0) = 0 und analog<br />

∂2,2u(0, y) = 0, also auch ∂2,2u(0, 0) = 0. Somit folgt −∆u(0, 0) = 0 im Widerspruch<br />

zu obiger Annahme. Der Satz 5.6 ist also hier nicht anwendbar.<br />

Im zweiten Beispiel soll ein Gebiet mit einspringender Ecke,<br />

Ω = � (x, y) ∈ R 2 � � x 2 + y 2 < 1 , x < 0 oder y > 0 � ,<br />

208


etrachtet werden. Allgemein gilt bei einer Identifizierung von R 2 und C, das heißt<br />

von (x, y) ∈ R 2 mit z = x + iy ∈ C: Ist w : C → C analytisch (holomorph), so sind die<br />

Real- und Imaginärteile ℜw, ℑw : C → R harmonisch, das heißt, sie lösen −∆u = 0.<br />

Wir wählen w(z) := z 2/3 . Damit löst u(x, y) := ℑ � (x + iy) 2/3�<br />

−∆u = 0 auf Ω .<br />

In Polarkoordinaten x = r cos ϕ, y = r sin ϕ schreibt sich u als<br />

��re iϕ<br />

u(x, y) = ℑ<br />

�2/3 �<br />

= r 2/3 �<br />

2<br />

sin<br />

3 ϕ<br />

�<br />

.<br />

Also erfüllt u die Randbedingungen<br />

u � e iϕ� �<br />

2<br />

= sin<br />

3 ϕ<br />

�<br />

für 0 ≤ ϕ ≤ 3π<br />

,<br />

2<br />

(5.22)<br />

u(x, y) = 0 sonst auf ∂Ω .<br />

Allerdings ist w ′ (z) = 2<br />

3 z−1/3 unbeschränkt für z → 0, so dass ∂1u, ∂2u unbeschränkt<br />

sind für (x, y) → 0. Hier gilt also nicht einmal u ∈ C 1 (Ω).<br />

Die Beispiele belegen nicht, dass die 5-Punkte-Stern-Diskretisierung unbrauchbar für<br />

die betreffenden Randwertaufgaben ist, sie zeigen aber, dass eine Konvergenztheorie<br />

notwendig ist, die nur die zu erwartende Glattheit der Lösung voraussetzt.<br />

Im Folgenden sollen Verallgemeinerungen der bisherigen Randwertaufgabe diskutiert<br />

werden:<br />

Allgemeine Gebiete � Ω Es werde weiter (5.1), (5.2) betrachtet, aber auf einem<br />

allgemeinen Gebiet im R 2 , bei dem die Randstücke nicht den Koordinatenachsen folgen.<br />

Daher können wir zwar die zweite Gleichung in (5.5) als Definition von Ωh beibehalten,<br />

müssen aber die Menge der Randgitterpunkte ∂Ωh neu definieren:<br />

Ist für (x, y) ∈ Ωh etwa<br />

dann existiert ein s ∈ (0, 1], so dass<br />

(x − h, y) /∈ Ω ,<br />

(x − ϑh, y) ∈ Ω für alle ϑ ∈ [0, s) und (x − sh, y) /∈ Ω .<br />

Dann liegt (x − sh, y) ∈ ∂Ω und wir definieren:<br />

(x − sh, y) ∈ ∂Ωh .<br />

Analog verfahren wir mit den anderen Haupthimmelsrichtungen. Damit ist der Gitterabstand<br />

in Randnähe variabel, er kann kleiner als h werden.<br />

Für die Güte der Approximation gilt:<br />

209


Lemma 5.7 Sei Ω = (x − h1, x + h2) für x ∈ R, h1, h2 > 0.<br />

1. Dann gilt für u ∈ C 3 (Ω)<br />

u ′′ (x) =<br />

2<br />

h1 + h2<br />

� �<br />

u(x + h2) − u(x) u(x) − u(x − h1)<br />

−<br />

h2<br />

+ max {h1, h2}R ,<br />

wobei R unabhängig von h beschränkt sei.<br />

2. Es gibt keine α, β, γ ∈ R, so dass gilt<br />

u ′′ (x) = α u(x − h1) + β u(x) + γ u(x + h2) + R1h 2 1 + R2h 2 2<br />

für Polynome u 3. Grades, falls h1 �= h2.<br />

Beweis: Übung. ✷<br />

Dies führt zu einer kompliziert aufzustellenden Diskretisierung, deren Konsistenz- und<br />

Konvergenzordnung nur schwer zu bestimmen ist. Die bisherige Vorgehensweise liefert<br />

nur die Konsistenzordnung 1.<br />

Andere Randbedingungen Wir wollen folgendes Beispiel betrachten. Hierzu sei<br />

∂Ω = Γ1 ∪ Γ2 in zwei disjunkte Teilmengen aufgeteilt. Gesucht ist nun eine Funktion<br />

u mit<br />

−∆u = f in Ω ,<br />

u = 0 auf Γ1 ,<br />

∂νu := ∇u · ν = g auf Γ2 ,<br />

h1<br />

(5.23)<br />

wobei ν : ∂Ω → R d die äußere Einheitsnormale sei, und somit ∂νu die Normalenableitung<br />

von u.<br />

Für ein Randstück in eine Koordinatenrichtung reduziert sich ∂νu auf eine positive<br />

oder negative partielle Ableitung. Wenn aber nur Gitterpunkte in Ωh verwendet werden,<br />

steht von den bisherigen Approximationen nur ±∂ + u bzw. ±∂ − u (in den Koordinaten<br />

orthogonal zur Randrichtung) zur Verfügung mit entsprechender Reduktion<br />

der Konsistenzordnung. Für einen Randpunkt in allgemeiner Lage ist die Frage einer<br />

angemessenen Approximation von ∂νu offen.<br />

210


Allgemeinere Differentialgleichungen Wir betrachten folgende Differentialgleichung<br />

als Beispiel:<br />

−∇ · (k ∇u) = f auf Ω (5.24)<br />

mit einer stetigen Koeffizientenfunktion k : Ω → R, die auf Ω durch eine positive<br />

Konstante nach unten beschränkt sei. Die darin formulierte Erhaltung einer extensiven<br />

Größe u, deren Fluss −k∇u ist, sollte von der Diskretisierung respektiert werden,<br />

insofern ist eine ausdifferenzierte Form von (5.24) als Basis für die Diskretisierung nicht<br />

zu empfehlen. Der Differentialausdruck in (5.24) kann durch sukzessive Anwendung<br />

zentraler Differenzenquotienten diskretisiert werden, doch dann stellt sich wieder die<br />

Frage der Konsistenzordnung.<br />

Hinzu kommt, dass die Glattheit von u von der des Koeffizienten k abhängt. Werden<br />

Prozesse in inhomogenen Materialien beschrieben, ist k oft unstetig. Als einfachstes<br />

Beispiel nehme k zwei verschiedene Werte an: Es sei Ω = Ω1 ∪ Ω2 und<br />

mit Konstanten k1, k2.<br />

k|Ω1 = k1 > 0 , k|Ω2 = k2 > 0<br />

Auf dem inneren Rand S := Ω1 ∩ Ω2 ist eine Transmissionsbedingung zu fordern:<br />

• u ist stetig,<br />

• (k∇u) · ν ist stetig, wobei ν die äußere Normale auf zum Beispiel ∂Ω1 sei.<br />

Dies führt zu den folgenden Bedingungen für ui, die Einschränkungen von u auf Ωi für<br />

i = 1, 2:<br />

−k1∆u1 = f in Ω1 , (5.25)<br />

−k2∆u2 = f in Ω2 ,<br />

u1 = u2 auf S , (5.26)<br />

k1∂νu1 = k2∂νu2 auf S .<br />

Auch hier ist die Frage der Diskretisierung offen.<br />

Zusammenfassend ergibt sich folgender Wunschkatalog:<br />

Wir suchen einen Lösungsbegriff für (allgemeine) Randwertaufgaben mit nichtglatten<br />

Koeffizienten und rechten Seiten, so dass zum Beispiel Transmissionsbedingungen automatisch<br />

erfüllt sind.<br />

Wir suchen nach einer Diskretisierung für beliebige Gebiete, so dass zum Beispiel Konvergenz(ordnung)<br />

auch bei weniger glatten Lösungen gesichert werden kann, und auch<br />

Neumann-Randbedingungen wie in (5.23) leicht berücksichtigt werden können.<br />

211


Die Finite-Element-Methode in den nachfolgenden Kapiteln wird dies weitgehend<br />

erfüllen.<br />

5.4 Maximumprinzipien und Stabilität<br />

In diesem Abschnitt soll der fehlende Beweis der Stabilitätsabschätzung (5.19) gegeben<br />

werden, und zwar in einem etwas allgemeineren Rahmen, in dem dann auch die Finite-<br />

Element-Diskretisierung diskutiert werden kann (siehe Kapitel 6).<br />

Die Randwertaufgabe (5.1), (5.2) erfüllt ein (schwaches) Maximumprinzip in folgendem<br />

Sinn:<br />

Ist f stetig mit f(x) ≤ 0 für alle x ∈ Ω (kurz: f ≤ 0), dann gilt:<br />

max<br />

x∈Ω<br />

u(x) ≤ max u(x) ,<br />

x∈∂Ω<br />

und zwar ist das Maximumprinzip auch stark insofern, dass das Maximum von u auf<br />

Ω nur dann in Ω angenommen werden kann, wenn u konstant ist. Durch Übergang<br />

von u, f, g zu −u, −f, −g ergibt sich ein analoges (starkes) Minimumprinzip. Gleiches<br />

gilt für allgemeinere lineare Differentialgleichungen wie in (5.24), die auch konvektive<br />

Anteile (das heißt erste Ortsableitungen) enthalten dürfen. Tritt dagegen auch ein<br />

Reaktionsanteil (das heißt ohne Ableitungen) auf, wie in der Gleichung<br />

−∆u + ru = f in Ω<br />

mit einer Funktion r : Ω → R, so dass r(x) ≥ 0 für x ∈ Ω, so gilt ein schwaches<br />

Maximumprinzip nur in der Form:<br />

Ist f ≤ 0, dann gilt:<br />

� �<br />

max u(x) ≤ max max u(x), 0<br />

x∈Ω<br />

x∈∂Ω<br />

Das schwache Maximumprinzip impliziert direkt Aussagen über die Abhängigkeit der<br />

Lösung u der Randwertaufgabe von den Daten f und g, also Stabilitätsaussagen. Dieser<br />

Weg kann auch für Diskretisierungen beschritten werden. Für das grundlegende Beispiel<br />

gilt:<br />

Satz 5.8 Sei uh die durch (5.7), (5.8) definierte Gitterfunktion auf Ωh und fij ≤ 0 für<br />

alle i = 1, . . ., l − 1, j = 1, . . ., m − 1. Dann gilt:<br />

Nimmt uh sein Maximum auf Ωh ∪ ∂Ω ∗ h in (i0h, j0h) ∈ Ωh an, dann folgt:<br />

uh ist konstant auf Ωh ∪ ∂Ω ∗ h .<br />

212<br />

.


Dabei ist<br />

Insbesondere ist also<br />

∂Ω ∗ h := ∂Ωh \ {(0, 0), (a, 0), (0, b), (a, b)} .<br />

max uh(x, y) ≤ max<br />

(x,y)∈Ωh<br />

(x,y)∈∂Ω∗ uh(x, y) .<br />

h<br />

Beweis: Sei ū := uh(i0h, j0h), dann gilt wegen (5.7) und fij ≤ 0<br />

4ū ≤<br />

�<br />

(k,l)∈N (i0 ,j 0 )<br />

uh(kh, lh) ≤ 4ū ,<br />

weil insbesondere auch uh(kh, lh) ≤ ū für (k, l) ∈ N(i0,j0). Dabei ist<br />

N(i0,j0) = {((i0 − 1), j0), ((i0 + 1), j0), (i0, (j0 + 1)), (i0, (j0 − 1))}<br />

die Menge der Indizes der Nachbarn von (i0h, j0h) im 5-Punkte-Stern. Aus diesen<br />

Ungleichungen folgt<br />

uh(kh, lh) = ū für (k, l) ∈ N(i0,j0) .<br />

Wenn dieses Argument auf die Nachbarn in Ωh der Gitterpunkte (kh, lh) für (k, l) ∈<br />

N(i0,j0) und immer weiter auf die jeweils entstehenden Nachbarmengen in Ωh angewendet<br />

wird, erhält man schließlich für jeden Gitterpunkt (ih, jh) ∈ Ωh ∪ ∂Ω ∗ h die<br />

behauptete Identität uh(ih, jh) = ū . ✷<br />

Die Ausnahmemenge der Ecken ∂Ωh \ ∂Ω∗ h ist an keinem Differenzenstern beteiligt, so<br />

dass die Werte auch keinen Einfluss auf uh haben.<br />

Zur Verallgemeinerung dieses Ergebnisses wird das Gleichungssystem wie in (5.10),<br />

(5.11) betrachtet, das heißt<br />

Ah�uh = �qh = − Âh ˆ �uh + � f (5.27)<br />

mit Ah ∈ R M1,M1 wie in (5.14), Âh ∈ R M1,M2 wie in (5.12), �uh, � f ∈ R M1 und ˆ �uh ∈<br />

R M2 . Dieses kann interpretiert werden als eine durch die Finite-Differenzen-Methode<br />

oder einen anderen Ansatz erhaltene Diskretisierung einer Randwertaufgabe auf einem<br />

Gebiet, das nicht notwendigerweise zweidimensional sein muss. Auf mindestens einem<br />

Randstück werden Dirichlet-Vorgaben gefordert. Die Einträge des Vektors �uh können<br />

, wobei<br />

dann aufgefasst werden als die unbekannten Gitterpunktwerte in Ωh ∪ ∂Ω (1)<br />

h<br />

∂Ω (1)<br />

h einem Teil von ∂Ω (mit Fluss- oder gemischten Randbedingungen) entspricht.<br />

Analog besteht dann der Vektor ˆ �uh (indiziert von M1+1 bis M1+M2) aus den durch die<br />

213


Dirichlet-Randbedingungen festgelegten Werten auf ∂Ω (2)<br />

h . Wieder sei M = M1 + M2<br />

und<br />

�<br />

Ãh :=<br />

Ah<br />

� �<br />

� Âh ∈ R M1,M<br />

.<br />

Insbesondere sind also die Dimensionen M1 und M2 nicht fest, sondern werden im<br />

Allgemeinen unbeschränkt für h → 0.<br />

In Anlehnung an (5.15) seien die Generalvoraussetzungen für den Rest dieses Abschnitts:<br />

(1) (Ah)rr > 0 für alle r = 1, . . .,M1 ,<br />

(2) (Ah)rs ≤ 0 für alle r, s = 1, . . .,M1 mit r �= s,<br />

(3)<br />

�M1<br />

(Ah)rs ≥ 0 für alle r = 1, . . ., M1<br />

s=1<br />

und für mindestens einen Index gilt die echte Ungleichung ,<br />

(4) Ah ist irreduzibel ,<br />

(5) ( Âh)rs ≤ 0 für alle r = 1, . . ., M1 , s = M1 + 1, . . .,M ,<br />

(6)<br />

M�<br />

( Ãh)rs ≥ 0 für alle r = 1, . . ., M1 ,<br />

s=1<br />

(7) Für jedes s = M1 + 1, . . .,M existiert ein r ∈ {1, . . ., M1} ,<br />

so dass ( Âh)rs �= 0 .<br />

(5.28)<br />

In Verallgemeinerung der obigen Notation heißen für r ∈ {1, . . ., M1} die s ∈<br />

{1, . . ., M} \ {r} Nachbarn, für die ( Ãh)rs �= 0 gilt, und diese werden zur Menge<br />

Nr zusammengefasst. Die Irreduzibilität von Ah bedeutet also, dass beliebige<br />

r, s ∈ {1, . . ., M1} über Nachbarschaftsbeziehungen miteinander verbindbar sind.<br />

Die Bedingung (7) ist keine Einschränkung: Sie schließt nur aus, dass bekannte Werte<br />

( ˆ �uh)s mit aufgeführt werden, die die Lösung von (5.27) gar nicht beeinflussen. Beim<br />

5-Punkte-Stern auf dem Rechteck sind dies die Eckpunkte. Aufgrund der Bedingung<br />

(7) ist auch jedes r ∈ {M1 +1, . . .,M} mit jedem s ∈ {1, . . ., M1} über Nachbarschaftbeziehungen<br />

verbunden.<br />

Aus Bedingung (2) und (3) folgt die schwache Diagonaldominanz von Ah. Man beachte<br />

auch, dass die Bedingungen redundant sind. Die Bedingung (3) folgt aus (6) und (5).<br />

Zur Vereinfachung der Notation wird für Vektoren �u,�v und auch für Matrizen A, B<br />

jeweils gleicher Dimensionierung verwendet:<br />

�u ≥ �0 genau dann, wenn (�u)i ≥ 0 für alle Indizes i ,<br />

�u ≥ �v genau dann, wenn �u − �v ≥ 0 ,<br />

A ≥ 0 genau dann, wenn (A)ij ≥ 0 für alle Indizes (i, j) ,<br />

A ≥ B genau dann, wenn A − B ≥ 0 .<br />

214<br />

(5.29)


Dann gilt:<br />

Satz 5.9 Betrachtet werde (5.27) unter den Voraussetzungen (5.28). Ferner sei f ≤ 0.<br />

Nimmt ˜ �uh = � � �uh<br />

ˆ�uh<br />

ein nichtnegatives Maximum in einem Index r ∈ {1, . . .,M1} an,<br />

dann sind alle Komponenten gleich. Insbesondere gilt:<br />

max<br />

r∈{1,...,M} (˜ �<br />

�uh)r ≤ max 0, max<br />

r∈{M1+1,...,M} (ˆ �<br />

�uh)r .<br />

Beweis: Sei ū = max (<br />

s∈{1,...,M}<br />

˜ �uh)s und ū = (�uh)r wobei r ∈ {1, . . ., M1}. Die r-te Zeile<br />

von (5.27) impliziert wegen (5.28) (2), (5), (6)<br />

(Ah)rrū ≤ − � � �<br />

Ãh s∈Nr rs (˜ �uh)s = � �<br />

�<br />

s∈Nr<br />

� � �<br />

Ãh<br />

� ( �uh)s<br />

˜<br />

≤ �<br />

s∈Nr<br />

�<br />

� � �<br />

Ãh<br />

rs<br />

�<br />

� ū ≤ (Ah)rrū ,<br />

rs<br />

(5.30)<br />

wobei die Voraussetzung ū ≥ 0 in die letzte Abschätzung einging. Somit gilt überall<br />

Gleichheit. Da die zweite Ungleichung auch für jeden Summanden gilt und ( Ãh)rs �= 0<br />

nach Definition von Nr, folgt schließlich<br />

( ˜ �uh)s = ū für alle s ∈ Nr .<br />

Anwendung der obigen Argumentation auf alle s ∈ Nr ∩ {1, . . .,M1} und so fort auf<br />

die jeweiligen Nachbarmengen ergibt die Behauptung. ✷<br />

Die Irreduzibilität lässt sich abschwächen, wenn anstelle von (5.28) (6) gilt:<br />

M� � �<br />

∗ (6) Ãh rs<br />

s=1<br />

= 0 für alle r = 1, . . .,M1 .<br />

Dann reicht anstelle von (4) die Forderung<br />

(4) ∗<br />

Zu jedem r1 ∈ {1, . . ., M1} mit<br />

M1 �<br />

s=1<br />

gibt es Indizes r2, . . ., rl+1 derart, dass<br />

und<br />

(Ah)r1s = 0 (5.31)<br />

(Ah)riri+1 �= 0 für i = 1, . . ., l<br />

M1 �<br />

s=1<br />

(Ah)rl+1s > 0 . (5.32)<br />

Die entsprechend modifizierten Voraussetzungen werden (5.28) ∗ genannt.<br />

215


In Anlehnung an das obige Beispiel nennen wir einen Punkt r ∈ {1, . . .,M1} randfern,<br />

wenn (5.31) gilt und randnah, wenn (5.32) gilt, und die Punkte r ∈ {M1 + 1, . . ., M}<br />

Randpunkte .<br />

Es gilt:<br />

Satz 5.10 Betrachtet werde (5.27) unter der Voraussetzung (5.28) ∗ .<br />

Ist f ≤ 0, dann gilt:<br />

max<br />

r∈{1,...,M} (˜ �uh)r ≤ max<br />

r∈{M1+1,...,M} (ˆ �uh)r .<br />

Beweis: Es wird die gleiche Notation und Argumentation wie im Beweis von Satz<br />

5.9 verwendet. In (5.30) gilt in der letzten Abschätzung sogar Gleichheit, so dass keine<br />

Vorzeichenbedingung an ū nötig ist. Das Maximum wird also wegen (4) ∗ auch an einem<br />

randnahen Punkt angenommen und damit auch an dessen Nachbarn. Wegen (6) ∗ gehört<br />

dazu ein Randpunkt, was die Behauptung beweist. ✷<br />

Aus diesen Maximumprinzipien folgt sofort ein Vergleichsprinzip:<br />

Satz 5.11 Es gelte (5.28) oder (5.28) ∗ .<br />

Seien �uh1,�uh2 ∈ R M1 Lösungen von<br />

Ah�uhi = − Âh ˆ �uhi + � fi für i = 1, 2<br />

für gegebene � f1, � f2 ∈ R M1 , ˆ �uh1, ˆ �uh2 ∈ R M2 , die � f1 ≤ � f2, ˆ �uh1 ≤ ˆ �uh2 erfüllen. Dann folgt:<br />

�uh1 ≤ �uh2 .<br />

Beweis: Aus Ah(�uh1 − �uh2) = − Âh( ˆ �uh1 − ˆ �uh2) + � f1 − � f2 folgt mit Satz 5.9 bzw. 5.10<br />

max<br />

r∈{1,...,M1} (�uh1 − �uh2)r ≤ 0 .<br />

Damit ergibt sich die Eindeutigkeit der Lösung von (5.27) für beliebige ˆ �uh und � f und<br />

so auch die Regularität von Ah.<br />

Im Folgenden bezeichnen �0 bzw. 0 auch den Nullvektor bzw. die Nullmatrix, bei denen<br />

alle Komponenten gleich 0 sind. Unmittelbare Konsequenzen aus Satz 5.11 sind:<br />

Satz 5.12 Gegeben seien eine Matrix Ah ∈ R M1,M1 mit den Eigenschaften (5.28) (1)–<br />

(3), (4) ∗ , sowie ein Vektor �uh ∈ R M1 . Dann gilt:<br />

Aus Ah�uh ≥ �0 folgt �uh ≥ �0 . (5.33)<br />

216<br />


Beweis: Um Satz 5.11 anwenden zu können, konstruiere man eine Matrix Âh ∈<br />

R M1,M2 , so dass (5.28)* gilt. Dann wähle man<br />

�uh2 := �uh , � f2 := Ah�uh2 , ˆ �uh2 := �0 ,<br />

�uh1 := �0 , � f1 := �0 , ˆ �uh1 := �0 .<br />

Wegen ˆ �uhi := �0 für i = 1, 2 spielt die konkrete Wahl von Âh keine Rolle. ✷<br />

Eine Matrix mit der Eigenschaft (5.33) nennt man inversmonoton. Äquivalent dazu<br />

ist:<br />

�vh ≥ �0 ⇒ A −1<br />

h �vh ≥ �0<br />

und somit durch Wahl der Einheitsvektoren als �vh :<br />

A −1<br />

h<br />

≥ 0 .<br />

Inversmonotone Matrizen, die wie hier (5.28) (1), (2) erfüllen, heißen auch M-Matrizen.<br />

Mit 1 wird im Folgenden der Vektor (passender) Dimension bezeichnet, dessen Komponenten<br />

alle gleich 1 sind. Dann:<br />

Satz 5.13 Es gelte (5.28) (1)–(3), (4) ∗ , (5). Ferner seien �w (1)<br />

h , �w(2)<br />

h ∈ RM1 gegeben mit:<br />

Dann folgt für die Lösung von Ah�uh = − Âh ˆ �uh + � f:<br />

Ah�w (1)<br />

h ≥ �1 , Ah�w (2)<br />

h ≥ −Âh �1 . (5.34)<br />

1) − � | � f|∞�w (1)<br />

h + |ˆ �uh|∞�w (2) �<br />

h ≤ �uh ≤ | � f|∞�w (1)<br />

h + |ˆ �uh|∞�w (2)<br />

h ,<br />

2) |�uh|∞ ≤ � �<br />

� (1)<br />

�w �<br />

h | ∞ � f|∞ + � �<br />

� (2)<br />

�w �<br />

h | ∞ ˆ �uh|∞ .<br />

Unter den Voraussetzungen (5.28) (1)–(3), (4) ∗ und (5.34) gilt für die von |·|∞ erzeugte<br />

Matrixnorm � · �∞:<br />

� �<br />

� −1<br />

A � ≤ ∞ � �<br />

� (1)<br />

�w � . ∞<br />

h<br />

Beweis: Da −| � f|∞ �1 ≤ � f ≤ | � f|∞ �1 und die analoge Aussage für � ûh gilt, erfüllt der<br />

Vektor �vh := | � f|∞�w (1)<br />

h + |ˆ �uh|∞�w (2)<br />

h − �uh :<br />

Ah�vh ≥ | � f|∞ �1 − � f − Âh<br />

h<br />

�<br />

| ˆ �uh|∞ �1 − ˆ �<br />

�uh ≥ �0 ,<br />

wobei in die letzte Abschätzung auch − Âh ≥ 0 eingeht. Aus Satz 5.12 folgt also die<br />

rechte Ungleichung von 1), die linke Ungleichung wird analog bewiesen. Die weiteren<br />

Aussagen folgen unmittelbar aus 1). ✷<br />

217


Aus der Inversmonotonie und (5.28) (5) folgt für die in Satz 5.13 postulierten Vektoren<br />

notwendigerweise �w (i)<br />

h ≥ �0 für i = 1, 2. Stabilität bezüglich � · �∞ des durch (5.27)<br />

definierten Verfahrens unter der Voraussetzung (5.28) (1)-(3), (4*) liegt also dann vor,<br />

wenn sich ein Vektor �0 ≤ �wh ∈ RM1 und eine von h unabhängige Konstante C > 0<br />

finden lassen, so dass<br />

Ah�wh ≥ �1 und |�wh|∞ ≤ C . (5.35)<br />

Dies soll abschließend für die 5-Punkte-Stern-Diskretisierung von (5.1), (5.2) auf dem<br />

Rechteck Ω = (0, a) × (0, b) mit C = 1<br />

16 (a2 + b 2 ) nachgewiesen werden.<br />

Dazu definiere man zunächst die Polynome 2. Grades w1, w2 durch<br />

w1(x) := 1<br />

4 x(a − x) und w2(y) := 1<br />

y(b − y) .<br />

4<br />

Es ist klar, dass w1(x) ≥ 0 für alle x ∈ [0, a] und w2(y) ≥ 0 für alle y ∈ [0, b]. Ferner<br />

gilt w1(0) = 0 = w1(a) und w2(0) = 0 = w2(b), sowie<br />

w ′′<br />

1 (x) = −1<br />

2<br />

und w′′ 2 (y) = −1<br />

2 .<br />

Somit sind w1 und w2 strikt konkav und nehmen ihr Maximum in a<br />

2<br />

Funktion w(x, y) := w1(x) + w2(x) erfüllt also auf Ω<br />

−∆w = 1 in Ω ,<br />

w ≥ 0 auf ∂Ω .<br />

bzw. b<br />

2<br />

an. Die<br />

(5.36)<br />

Sei nun �wh ∈ R M1 für eine fest gewählte Nummerierung die Darstellung der Gitterfunktion<br />

wh, definiert durch<br />

(wh)(ih, jh) := w(ih, jh) für i = 1, . . ., l − 1 , j = 1, . . ., m − 1 .<br />

Analog sei ˆ �wh ∈ R M2 die Darstellung der auf ∂Ω ∗ h definierten Funktion ˆwh.<br />

Wie aus der Fehlerdarstellung von Lemma 5.2, 4. ersichtlich, ist ∂ − ∂ + u(x) exakt für<br />

Polynome 2. Grades. Daher folgt aus (5.36)<br />

und es gilt schießlich<br />

Ah�wh = − Âh ˆ �wh +�1 ≥ �1<br />

�<br />

a<br />

� �<br />

a<br />

�<br />

|�wh|∞ = �wh�∞ ≤ �w�∞ = w1 + w2<br />

2 2<br />

218<br />

= 1<br />

16 (a2 + b 2 ) .


6 (Informelle) Einführung in die Methode der Finiten<br />

Elemente für elliptische Probleme<br />

Abkürzungen: Methode der Finiten Elemente: FEM<br />

Randwertaufgabe: RWA<br />

6.1 Variationsformulierung für ein eindimensionales Modellproblem<br />

2–Punkt–RWA:<br />

Gegeben seien k ∈ C 1 (a, b) mit k(x) ≥ k0 > 0 für alle x ∈ [a, b] und f ∈ C(a, b).<br />

Gesucht ist u, so dass:<br />

(D)<br />

(−k(x)u ′ (x)) ′ = f(x) für x ∈ (a, b) =: I ,<br />

u(a) = u(b) = 0 .<br />

Klassische Lösung: u ∈ C 1 [a, b] ∩ C 2 (a, b), das (D) erfüllt.<br />

Funktionenräume:<br />

C(a, b) := � f � � f : (a, b) → R, f stetig �<br />

C[a, b] analog<br />

C k (a, b) := � f � � f, f ′ , . . .,f (k) ∈ C(a, b) �<br />

C k [a, b] analog (Ableitungen stetig fortsetzbar in x = a, b)<br />

Eine klassische Lösung von (D) existiert eindeutig (Aufintegrieren & Randbedingungen).<br />

D.h. (D) ist korrekt gestellt (wenn noch u stetig von f abhängt).<br />

Ohne Randbedingungen gilt: u Lösung ⇒ u + g Lösung, wobei<br />

−(kg ′ ) ′ � x<br />

= 0 ⇔ g(x) =<br />

0<br />

α/k(s) ds + β , α, β ∈ R .<br />

f �∈ C(a, b) oder k �∈ C 1 (a, b) ⇒ ? – keine klassische Lösung.<br />

219


Äquivalente Formulierungen für (D):<br />

Wir definieren den Raum<br />

Stückweise stetig:<br />

V := � v � � v ∈ C[a, b], v ′ stückweise stetig, v(a) = v(b) = 0 � . (6.1)<br />

Wir definieren weiterhin:<br />

(v, w) := �<br />

Ω v(x)w(x) dx für v, w ∈ L2 (Ω), Ω ⊂ R n ,<br />

L 2 (Ω) := � v : Ω → R � � v 2 Lebesgue–integrierbar � ,<br />

�v�0,2 := (v, v) 1/2 für v ∈ L 2 (Ω) (Norm auf L 2 (Ω)) .<br />

Für Ω = (a, b) wird abkürzenderweise L 2 (a, b) geschrieben.<br />

Es gilt die Cauchy–Schwarz’sche Ungleichung<br />

|(v, w)| ≤ �v�0,2�w�0,2 < ∞ für v, w ∈ L 2 (Ω) .<br />

Variationelle (schwache) Formulierung für (D):<br />

(V )<br />

Gesucht u ∈ V, so dass<br />

(ku ′ , v ′ ) = (f, v) für alle v ∈ V .<br />

(Variationsgleichung) (Für die elastische Stange : Prinzip der virtuellen Arbeit.)<br />

Lemma 6.1 Es gilt<br />

d.h. jede Lösung von (D) ist auch eine Lösung von (V ).<br />

Beweis: Klar, dass C 1 [a, b] ⊂ V . Sei u eine Lösung von (D).<br />

(6.2)<br />

(D) ⇒ (V ) , (6.3)<br />

Multiplikation von (D) mit v ∈ V (Testfunktion) und Integration über I liefern:<br />

(f, v) = ((−ku ′ ) ′ , v) part.Int.<br />

= (ku ′ , v ′ ) − k(b)u ′ (b)v(b) + k(a)u ′ (a)v(a) = (ku ′ , v ′ ) , (6.4)<br />

da v ∈ V . ✷<br />

220


Der Raum V darf also vergrößert werden, solange die partielle Integration in (6.4) noch<br />

erlaubt ist.<br />

(V ) hat die gleichen Lösungen wie die Minimierungsaufgabe<br />

(M)<br />

Gesucht u ∈ V, so dass<br />

F(u) ≤ F(v) für alle v ∈ V<br />

mit<br />

F(v) := 1<br />

2 (kv′ , v ′ ) − (f, v) .<br />

(Für die elastische Stange ist F(v) die potentielle Energie, daher:<br />

Prinzip der minimalen potentiellen Energie.)<br />

Satz 6.2 Es gilt<br />

(V ) ⇐⇒ (M) ,<br />

d.h. Variationsgleichung und Minimierungsaufgabe sind äquivalent.<br />

Beweis:<br />

(V ) ⇒ (M): Sei u Lösung von (V ) und v ∈ V . Setze w := v − u ∈ V . Dann gilt<br />

F(v) = F(u + w) =<br />

(symmetrische)Bilinearform<br />

� �� �<br />

1<br />

2 (k(u′ + w ′ ), u ′ + w ′ ) −<br />

Linearform<br />

� �� �<br />

(f, u + w)<br />

= 1<br />

2 (ku′ , u ′ ) − (f, u) + (ku ′ , w ′ ) − (f, w) + 1<br />

2 (kw′ , w ′ )<br />

≥ 1<br />

2 (ku′ , u ′ ) − (f, u) = F(u) ,<br />

da (ku ′ , w ′ ) = (f, w) wegen w ∈ V und (kw ′ , w ′ ) ≥ 0.<br />

(M) ⇒ (V ): Sei u Lösung von (M), v ∈ V beliebig, ε ∈ R. Für g(ε) := F(u + εv) gilt<br />

g(ε) ≥ F(u) = g(0), da u + εv ∈ V . Also hat g ein globales Minimum in ε = 0.<br />

g(ε) = 1<br />

2 (k(u′ + εv ′ ), u ′ + εv ′ ) − (f, u + εv)<br />

s.o. 1<br />

=<br />

2 (ku′ , u ′ ) − (f, u) + ε(ku ′ , v ′ ) − ε(f, v) + ε2<br />

2 (kv′ , v ′ )<br />

ist offensichtlich stetig differenzierbar, d.h. g ∈ C 1 (R). Da g in ε = 0 ein Minimum<br />

hat, gilt 0 = g ′ (0) = (ku ′ , v ′ ) − (f, v). Weil v ∈ V beliebig war, bedeutet dies: u<br />

löst (V ). ✷<br />

Schwache Lösung: u Lösung von (V ) bzw. (M)<br />

221


Allgemeine Merkmale von (V ) und (M):<br />

(V ) hat die Gestalt: Gesucht u ∈ V, so dass<br />

(ku ′ , v ′ ) = (f, v) für alle v ∈ V<br />

mit<br />

und V ist ein R–Vektorraum.<br />

a(u, v) := (ku ′ , v ′ � b<br />

) = k(x)u<br />

a<br />

′ (x)v ′ (x) dx ,<br />

� b<br />

b(v) := (f, v) =<br />

a<br />

f(x)v(x) dx<br />

a ist Bilinearform auf V , d.h. für u, v1, v2 ∈ V und α ∈ R gilt<br />

analog im 1. Argument.<br />

b ist Linearform auf V .<br />

Ferner gilt für a:<br />

a(u, v1 + v2) = a(u, v1) + a(u, v2) ,<br />

a(u, αv) = αa(u, v) ,<br />

a ist symmetrisch, d.h. a(u, v) = a(v, u) für alle u, v ∈ V ,<br />

a ist positiv, d.h. a(u, u) ≥ 0 für alle u ∈ V ,<br />

a ist definit, d.h. a(u, u) = 0 ⇒ u = 0 in V .<br />

Davon wurde zum Beweis von Satz 6.2 benutzt:<br />

a bilinear, symmetrisch, positiv, b linear.<br />

(6.5)<br />

Bemerkung 6.3 Es wurde also bewiesen:<br />

Eine durch eine symmetrische, positive Bilinearform a und eine Linearform b definierte<br />

Variationsgleichung (V ) ist äquivalent zur Minimierungsaufgabe (M).<br />

Aber (V ) ist allgemeiner: (D) ⇒ (V ) gilt auch für allgemeinere Differentialgleichungen,<br />

wobei a nicht symmetrisch ist. (M) ist dann nicht sinnvoll.<br />

Für Eindeutigkeit braucht man: a definit.<br />

Satz 6.4 Die schwache Lösung ist eindeutig.<br />

222


Beweis: u1 und u2 seien schwache Lösungen, d.h. es gilt<br />

(ku ′ 1, v ′ ) = (f, v) = (ku ′ 2, v ′ ) für alle v ∈ V .<br />

Für u := u1 − u2 ∈ V gilt also (ku ′ , v ′ ) = 0 für alle v ∈ V . Mit der Wahl v = u folgt<br />

� b<br />

ku<br />

a<br />

′ (x) 2 dx = (ku ′ , u ′ ) = 0 ,<br />

also u ′ = 0 (Übung), d.h. u(x) = c für alle x ∈ [a, b]. Speziell für x = a erhält man:<br />

c = u(a) = 0. ✷<br />

Bemerkung 6.5 Mit gleichem Beweis zeigt man:<br />

Ist die Bilinearform a definit, so ist die Lösung der Variationsgleichung eindeutig.<br />

Lemma 6.6 Eine schwache Lösung u mit u ∈ C 2 [a, b] eine ist klassische Lösung (falls<br />

k ∈ C 1 [a, b]).<br />

Beweis: u sei schwache Lösung, d.h. (ku ′ , v ′ ) = (f, v) für alle v ∈ V . Mit partieller<br />

Integration erhält man<br />

⇐⇒<br />

(−(ku ′ ) ′ , v) = (f, v)<br />

� b<br />

für alle v ∈ V<br />

(−(ku<br />

a<br />

′ ) ′ − f)(x) v(x) dx = 0 für alle v ∈ V ,<br />

woraus schließlich −(ku ′ ) ′ = f in (a, b) folgt (Übung). ✷<br />

Die Aussage von Lemma 6.6 gilt auch für u ∈ C 1 [a, b] ∩ C 2 (a, b) und k ∈ C 1 (a, b)<br />

(v mit supp v ⊂ (a, b): Übung).<br />

Wenn (6.5) auf V gilt, dann ist a ein Skalarprodukt, und<br />

ist eine Norm auf V .<br />

Unterscheide �u�a =<br />

�u�a := a(u, u) 1/2<br />

�� b<br />

k(x)u<br />

a<br />

′ (x) 2 �1/2<br />

dx<br />

von �u�0,2 =<br />

�� b<br />

a<br />

u(x) 2 dx<br />

�1/2<br />

V ist linearer R–Vektorraum, auf dem sowohl � · �a als auch � · �0,2 Normen bilden.<br />

223<br />

!<br />

(6.6)


Definition: Eine Abbildung �.� : V → R heißt Norm, wenn die folgenden Eigenschaften<br />

erfüllt sind<br />

�αu� = |α|�u� für α ∈ R, u ∈ V ,<br />

�u + v� ≤ �u� + �v� für u, v ∈ V (Dreiecksungleichung) ,<br />

�u� = 0 ⇔ u = 0 .<br />

d(u, v) := �u − v� definiert eine Metrik auf V .<br />

Konvergenz un → u ⇔ �un − u� → 0 für n → ∞.<br />

Nachweis der Normeigenschaften für (V, �.�a), V aus (6.1):<br />

�αu�a = |α|�u�a für α ∈ R, u ∈ V : klar<br />

�u�a = 0 ⇔ u = 0 : klar<br />

�u + v�a ≤ �u�a + �v�a für u, v ∈ V ց<br />

folgt aus Cauchy–Schwarzscher Ungleichung: (Übung)<br />

a(u, v) ≤ �u�a�v�a für u, v ∈ V ր<br />

Energiefunktional aus (M):<br />

Daher nennt man �.�a Energienorm.<br />

F(v) = 1<br />

1<br />

a(v, v) − b(v) =<br />

2 2 �v�2a − b(v) .<br />

(V, �.�a), (V, �.�0,2) sind verschiedene normierte Räume, da die Normen nicht äquivalent<br />

sind.<br />

Definition: �.�1 und �.�2 seien Normen auf V :<br />

�.�1 heißt äquivalent zu �.�2 (in Zeichen �.�1 ∼ = �.�2), wenn C1, C2 ≥ 0 existieren, so<br />

daß<br />

C1�u�1 ≤ �u�2 ≤ C2�u�1 für alle u ∈ V .<br />

Sind �.�1 und �.�2 äquivalente Normen, so gilt<br />

un → u bzgl. �.�1 ⇐⇒ un → u bzgl. �.�2 ,<br />

die erzeugten Topologien sind also gleich.<br />

224


�.�a und �.�0,2 sind auf V nach (6.1) nicht äquivalent, da für oBdA. [a, b] = [0, 1] und<br />

folgende Funktionen vn gilt:<br />

�� 1<br />

�vn�0,2 ≤<br />

0<br />

aber<br />

�vn�a =<br />

� � 1<br />

n<br />

0<br />

1 dx<br />

�1/2<br />

= 1 ,<br />

k(x)n 2 dx +<br />

1<br />

� 1<br />

1− 1<br />

n<br />

✻<br />

✁ ✁✁<br />

0 1<br />

n<br />

k(x)n 2 dx<br />

� 1/2<br />

Eine Abschätzung �v�a ≤ C�v�0,2 gilt also nicht.<br />

❆ vn<br />

❆<br />

❆<br />

n−1<br />

n 1<br />

✲<br />

≥ k0(2n) 1/2 → ∞ für n → ∞ .<br />

Alle diese Überlegungen bleiben gültig, wenn statt V ein R–Vektorraum ˜ V mit V ⊂ ˜ V<br />

und gleichen Normen betrachtet wird.<br />

6.2 Die FEM für das Modellproblem mit stückweise linearen<br />

Funktionen<br />

Ansatz: Ersetze V in (V ) oder (M) durch einen endlich-dimensionalen Teilraum Vh.<br />

Konstruktion von Vh: lineare Elemente<br />

Zerlegung von I = [a, b]:<br />

Knoten: a = x0 < x1 < · · · < xM < xM+1 = b<br />

M Anzahl der inneren Knoten, d.h. ohne x = a und x = b,<br />

= Anzahl der Freiheitsgrade (s.u.).<br />

Teilintervalle (Elemente): Ki = [xi−1, xi], i = 1, . . ., M + 1 =: N,<br />

Intervallängen: hi := xi − xi−1, i = 1, . . .,N,<br />

h := max<br />

i=1,...,N hi (maximale Elementlänge).<br />

h Diskretisierungsparamenter: xi = x h i<br />

Äquidistante Zerlegung: h = hi für alle i ⇒ h = (b − a)/N.<br />

Ist h klein, nennt man eine Diskretisierung fein.<br />

Wir definieren nun den endlich-dimensionalen Teilraum von V durch<br />

Vh := � v � � v ∈ C[a, b], v|Kj linear, j = 1, . . .,N, v(a) = v(b) = 0� . (6.7)<br />

225


v ∈ Vh ist Polygonzug:<br />

✑ ✑✑ ✥✥� �� ❅ ❅<br />

❩ ❩❩❩<br />

a b<br />

Es ist klar, daß Vh ⊂ V .<br />

Ferner gilt dim Vh = M, denn v ∈ Vh ist gegeben durch v(xi), i = 1, . . ., M, insbesondere<br />

dadurch definiert, da die Interpolationsaufgabe:<br />

Gegeben a < b, α, β ∈ R.<br />

Finde lineares p (d.h. p ∈ P 1 ) mit p(a) = α, p(b) = β.<br />

eindeutig lösbar ist und v ∈ Vh stetig ist.<br />

Sei wj ∈ Vh definiert durch<br />

wj(xi) = δij =<br />

� 1 für i = j<br />

0 für i �= j<br />

�<br />

, i, j = 1, . . .,M , (6.8)<br />

also<br />

⎧<br />

⎨ (x − xj)/hj für x ∈ Kj ,<br />

1<br />

wj(x) = (xj+1 − x)/hj+1 für x ∈ Kj+1 ,<br />

⎩<br />

�<br />

0 sonst . xj−1 xj xj+1<br />

��◗ ◗<br />

◗wj ◗<br />

(Die wj heißen Hutfunktionen.)<br />

Dann bilden w1, . . .,wM eine Basis von Vh, d.h. für v ∈ Vh gilt<br />

v(x) =<br />

M�<br />

ηi wi(x) ⇐⇒ ηj = v(xj) für alle j = 1, . . .,M .<br />

i=1<br />

Die Koeffizienten sind also die Werte an den Knoten (da beide Seiten in xj den Wert<br />

v(xi) annehmen).<br />

Insbesondere sind die wi linear unabhängig (v = 0 ⇔ ηi = 0).<br />

Ist also h klein (⇔ M groß) gibt es viele unbekannte Parameter.<br />

FEM für (D):<br />

(Mh)<br />

Gesucht uh ∈ Vh , so dass<br />

F(uh) ≤ F(v) für alle v ∈ Vh .<br />

Ritz–Verfahren, d.h. (quadratisches) Minimierungsproblem in M Unbekannten.<br />

226


oder:<br />

(Vh)<br />

Galerkinverfahren.<br />

Gesucht uh ∈ Vh , so dass<br />

a(uh, v) = b(v) für alle v ∈ Vh ,<br />

Hierbei sind weiterhin: a(u, v) = (ku ′ , v ′ ) und b(v) = (f, v).<br />

Satz 6.7 uh löst (Mh) ⇐⇒ uh löst (Vh).<br />

Beweis: Wie zu Satz 6.2: Ersetze V durch Vh<br />

(Vh) führt auf ein lineares Gleichungssystem in (ξi).<br />

Wenn w1, . . ., wM eine Basis von Vh bilden und uh = M�<br />

ξiwi, gilt nämlich:<br />

wo<br />

a(u,.),b linear<br />

i=1<br />

a(uh, vh) = b(vh) für alle vh ∈ Vh<br />

⇔ a(uh, wi) = b(wi) für alle i = 1, . . .,M<br />

�<br />

M�<br />

�<br />

⇔ a<br />

= b(wi) für alle i = 1, . . .,M<br />

a(.,u) linear<br />

⇔<br />

j=1<br />

ξjwj, wi<br />

M�<br />

a(wj, wi)ξj = b(wi) für alle i = 1, . . .,M<br />

j=1<br />

⇔ Aξ = b , (6.9)<br />

A = (aij) ij = (a(wj, wi)) ij , Steifigkeitsmatrix ,<br />

b = (bi) i = (b(wi)) i .<br />

Die Bezeichnung Steifigkeitsmatrix für A kommt vom Beispiel der elastischen Stange.<br />

Hier: aij = a(wj, wi) =<br />

bi = b(wi) =<br />

Lösungsschritte für (6.9):<br />

(1) Aufstellen von A, b: Assemblierung.<br />

� b<br />

k(x)w<br />

a<br />

′ j(x)w ′ i(x) dx ,<br />

� b<br />

a<br />

f(x)wi(x) dx .<br />

227<br />


(2) Lösen von Aξ = b (direkt oder iterativ).<br />

Wegen aij = (kw ′ j , w′ i ) gilt aij �= 0 nur wenn supp(w ′ j ) ∩ supp(w′ i ) �= ∅,<br />

wobei supp(f) = {x � � f(x) �= 0};<br />

also supp(wi) = Ki ∪ Ki+1, d.h. aij = 0 für |i − j| > 1.<br />

wi−1<br />

wi<br />

wi+1<br />

� ��❅❅ � ❅<br />

��❅❅ � ❅<br />

��❅❅ ❅<br />

xi−2 xi−1 xi xi+1 xi+2<br />

Somit ist A tridiagonal (nur aii, ai,i−1, ai,i+1 �= 0 möglich).<br />

Allgemein gilt: kleiner Träger von wi ⇒ wenige Einträge in A, d.h. (i, j) mit aij �= 0,<br />

d.h. A ist dünn besetzt und Aξ = b ist auch bei sehr großem M lösbar.<br />

Ist a symmetrisch, so ist auch A symmetrisch,<br />

ist a positiv und definit, so ist A positiv definit, denn mit v := M�<br />

ηiwi gilt für η ∈ RM η T Aη =<br />

M�<br />

ηja(wj, wi)ηi = a(v, v) ,<br />

i,j=1<br />

und somit η T Aη > 0 für η �= 0 (⇔ v �= 0), da a positiv und definit;<br />

insbesondere ist A nichtsingulär.<br />

Satz 6.8 (Vh) bzw. (Mh) haben eine eindeutige Lösung (für eine symmetrische, positive,<br />

definite Bilinearform).<br />

Einträge von A:<br />

aii =<br />

� b<br />

k(x)w<br />

a<br />

′ i (x)2 � xi<br />

dx = k(x)/h<br />

xi−1<br />

2 i<br />

dx +<br />

i=1<br />

� xi+1<br />

k(x)/h 2 i+1 dx<br />

= ˆ ki−1/2/hi + ˆ ki+1/2/hi , i = 1, . . ., M ,<br />

wobei ˆ ki−1/2 :=<br />

ai,i−1 =<br />

� xi<br />

xi−1<br />

� b<br />

k(x)w<br />

a<br />

′ i (x)w′ i−1<br />

xi<br />

k(x) dx/hi und ˆ ki+1/2 :=<br />

(x) dx = −<br />

� xi<br />

xi−1<br />

� xi+1<br />

xi<br />

k(x) dx/hi+1 , (6.10)<br />

k(x)/h 2 i dx = −ˆ ki−1/2/hi , i = 2, . . .,M ,<br />

ai,i+1 = − ˆ ki+1/2/hi+1 , i = 1, . . ., M − 1 .<br />

228


I. Allg. ist eine Quadraturformel nötig zur Auswertung von ˆ ki±1/2:<br />

z.B. Mittelpunktsregel: � xi<br />

k(x) dx ∼ ki−1/2 hi ,<br />

xi−1<br />

wobei ki−α = k(xi − αhi) und ki+α = k(xi + αhi+1) für 0 ≤ α ≤ 1.<br />

Somit gilt ˆ ki±1/2 ∼ ki±1/2.<br />

bi =<br />

� b<br />

a<br />

f(x)wi(x) dx =<br />

Wieder ist i. Allg. Quadratur nötig:<br />

� xi+1<br />

xi−1<br />

Die Mittelpunktregel in xi auf [xi−1, xi+1] liefert:<br />

die Trapezregel auf Ki und Ki+1 liefert:<br />

f(x)wi(x) dx für 1 ≤ i ≤ M .<br />

bi ∼ f(xi)(hi + hi+1) ;<br />

1<br />

bi ∼ hi<br />

2 (0 + f(xi))<br />

1<br />

+ hi+1<br />

2 (f(xi) + 0) = 1<br />

2 (hi + hi+1)f(xi) =<br />

� b<br />

a<br />

I(fwi)(x) dx ,<br />

wobei I(f) ∈ Vh für f ∈ C[a, b] die stückweise lineare Interpolierende bezeichne, d.h.<br />

I(f) ∈ Vh ist definiert durch<br />

I(f)(xi) = f(xi) , i = 0, . . ., M + 1 .<br />

Im Spezialfall k = const. erhält man<br />

�<br />

1<br />

aii = k +<br />

hi<br />

1<br />

�<br />

hi+1<br />

, ai,i−1 = −k 1<br />

hi<br />

, ai,i+1 = −k 1<br />

Bei einer äquidistanten Zerlegung hj = h = 1/N erhalten wir somit:<br />

A = k<br />

⎛<br />

2 −1<br />

⎜ −1<br />

h ⎜<br />

⎝<br />

. . .<br />

. ..<br />

⎞<br />

. ..<br />

⎟<br />

. .. ⎟<br />

−1 ⎠<br />

−1 2<br />

.<br />

Vergleich mit Differenzenapproximation von (D):<br />

Methode der Finiten Differenzen (FDM)<br />

Ersetze Ableitungen in xi durch Differenzenquotienten.<br />

Verschiedene Vorgehensweisen sind möglich: Die erste besteht aus Ausdifferenzieren<br />

−(ku ′ ) ′ (xi) = −k(xi)u ′′ (xi) − k ′ (xi)u ′ (xi)<br />

229<br />

hi+1<br />

.


und Approximationen für v ′ (x) und v ′′ (x):<br />

v ′ (x) = v(x + ¯ h) − v(x − ¯ h)<br />

¯h + ¯ h<br />

erster zentraler Differenzenquotient.<br />

+ R1(x, v, ¯ h, ¯ h) für ¯ h, ¯ h > 0 , (6.11)<br />

Für x = xi liegt ¯ h = hi+1, ¯ h = hi nahe, um wieder Werte am Knoten und so Bestimmungsgleichungen<br />

für Approximationen ui ∼ u(xi) zu erhalten.<br />

Die Größe von R1 bestimmt, was die Ersatzgleichungen mit der RWA zu tun haben<br />

(Konsistenzfehler) und hängt ab von der Glattheit von v und davon, ob eine äquidistante<br />

Zerlegung vorliegt (Übung: Taylorentwicklung).<br />

Die zweifache Anwendung von (6.11) zur Approximation von v ′′ (x) durch einen zweiten<br />

zentralen Differenzenquotienten hat z.B. die Gestalt<br />

v ′′ (x) = 2<br />

¯h + ¯ �<br />

v(x +<br />

h<br />

¯ h) − v(x)<br />

¯h<br />

− v(x) − v(x − ¯ �<br />

h)<br />

+ R2(x, v,<br />

¯h<br />

¯ h, ¯ h)<br />

(Übung: Konsistenzfehler).<br />

Da durch das Ausdifferenzieren die “Divergenz”struktur verloren gegangen ist, empfiehlt<br />

sich eher die folgende Vorgehensweise:<br />

−(ku ′ ) ′ �<br />

(xi) ∼ − ki+1/2 u ′<br />

�<br />

xi + hi+1<br />

�<br />

�<br />

u(xi+1) − u(xi)<br />

∼ − ki+1/2<br />

− ki−1/2<br />

hi+1<br />

=<br />

2<br />

hi + hi+1<br />

2<br />

�<br />

− ki−1/2<br />

u(xi−1) +<br />

hi<br />

− ki−1/2 u ′<br />

�<br />

xi − hi<br />

��<br />

2<br />

�<br />

hi + hi+1<br />

2<br />

� ki−1/2<br />

u(xi) − u(xi−1)<br />

hi<br />

hi<br />

+ ki+1/2<br />

hi+1<br />

� �<br />

hi + hi+1<br />

2<br />

�<br />

u(xi) − ki+1/2<br />

hi+1<br />

�<br />

u(xi)<br />

Die Differenzenapproximation für (D) lautet daher:<br />

Gesucht u0, u1, . . .,uM, uM+1 (d.h. eine Gitterfunktion), so dass<br />

u0 = a, uM+1 = b und u1, . . .,uM bestimmt sind durch die Gleichungen<br />

�<br />

2<br />

−<br />

hi + hi+1<br />

ki−1/2<br />

�<br />

ki−1/2<br />

ui−1 + +<br />

hi hi<br />

ki+1/2<br />

�<br />

ui −<br />

hi+1<br />

ki+1/2<br />

�<br />

ui+1 = f(xi) (6.12)<br />

hi+1<br />

für i = 1, . . .,M.<br />

230


Vergleich mit (FEM):<br />

Die Koeffizienten ξ1, . . .,ξM von uh = M�<br />

ξiwi erfüllen nach (6.10) auch das Gleichungs-<br />

i=1<br />

system (6.12), wenn Mittelpunktregel in (6.10) und Trapezregel für die rechte Seite<br />

angewendet werden.<br />

Also: u0, . . .,uM+1 sind die Knotenwerte der FEM–Lösung für das durch Quadratur<br />

(Mittelpunktregel für Koeffizienten, zusammengesetzte Trapezregel für rechte Seite)<br />

approximierte FEM Gleichungssystem.<br />

Andere Quadraturformeln liefern andere FDM-Approximationen über den FEM Ansatz.<br />

FEM : interne Approximation: Vh ⊂ V<br />

d.h. uh ∈ V : Funktion.<br />

FDM : externe Approximation:<br />

Gitterfunktion u0, . . ., uM+1 ⇒ Funktion in V .<br />

Vergleich mit Finite-Volumen-Approximation:<br />

Methode der Finiten Volumen (FVM) (oder Box Methode, Balance Methode)<br />

Ansatz: Zerlege das Grundgebiet Ω (hier Ω = I) in M + 2 Teilgebiete Bi, so dass<br />

xi ∈ Bi , Bi ∩ Bj = ∅ für i �= j ,<br />

(“sekundäre” Zerlegung in Boxen oder Kontrollvolumina).<br />

Zur Diskretisierung von (D) verwenden wir<br />

M+1 �<br />

i=0<br />

Bi := (xi−1/2, xi+1/2) , i = 1, . . .,M ,<br />

wobei xi+1/2 := xi + hi+1/2 und xi−1/2 := xi − hi/2, sowie<br />

Bi = Ω<br />

B0 := (x0, x1/2) und BM+1 := (xM+1/2, xM+1) .<br />

a = x0 x1 x2 x3<br />

�����<br />

�� ��<br />

�� ��<br />

�� �<br />

B0<br />

B1<br />

B2<br />

B3<br />

. . .<br />

xM−1 xM xM+1 = b<br />

� �� ��<br />

�� �����<br />

BM−1<br />

BM<br />

BM+1<br />

Integriert man die Erhaltungsgleichung q ′ = f (q = −ku ′ ) über Bi (i=1,...,M), so folgt<br />

� xi+1/2<br />

q(xi+1/2) − q(xi−1/2) =<br />

231<br />

x i−1/2<br />

f(x) dx . (6.13)


Differenzenapproximation für u ′ (xi±1/2) wie bei FDM liefert<br />

(exakt, wenn u ∈ Vh!).<br />

q(xi+1/2) ∼ −ki+1/2(u(xi+1) − u(xi))/hi+1 ,<br />

q(xi−1/2) ∼ −ki−1/2(u(xi) − u(xi−1))/hi<br />

Verwendet man für die rechte Seite die Quadraturformel<br />

� xi+1/2<br />

x i−1/2<br />

f(x) dx ∼ hi + hi+1<br />

f(xi) ,<br />

� �� 2 �<br />

=|Bi|<br />

(6.14)<br />

so erhält man für die Näherungswerte u1, . . .,uM das Gleichungssystem (6.12), d.h.<br />

mit u0 = uM+1 = 0 liefert die Finite-Volumen Methode die gleiche Approximation wie<br />

FDM oder FEM mit Quadratur.<br />

Vorteil des Ansatzes:<br />

Lokale (d.h. auf jedem Bi) (Energie-/Masse-/Impuls-) Erhaltung nach (6.13), wenn<br />

Fluss wie in (6.14) approximiert wird.<br />

Äquivalente Formulierung:<br />

Gesucht uh ∈ Vh, so dass<br />

�<br />

(−ku<br />

∂Bi<br />

′ �<br />

) ·n ds =<br />

� �� �<br />

=q<br />

Bi<br />

f(x) dx ∼ |Bi| f(xi) .<br />

Hierbei ist ∂Ω := Ω\ ◦<br />

Ω der Rand von Ω und n = n(x) die äußere Normale an ∂Ω.<br />

Hier haben wir ∂Bi = {xi−1/2, xi+1/2} mit n(xi−1/2) = −1 und n(xi+1/2) = 1.<br />

Beachte: �<br />

∂Bi<br />

(−ku ′ �<br />

) · n ds =<br />

Bi<br />

(−ku ′ ) ′ dx ,<br />

d.h. wir erhalten (6.13) aus der klassischen Formulierung (D) durch die folgende Vorgehensweise:<br />

Multipliziere (D) mit einer Testfunktion χi und integriere über I. Hierbei ist die Test-<br />

funktion χi die charakteristische Funktion des Kontrollvolumens Bi definiert durch<br />

χi(x) =<br />

� 1 , x ∈ Bi<br />

0 , x /∈ Bi<br />

232<br />

.


Zur Auflösung des Gleichungssystems:<br />

Direkte Verfahren beruhen auf der Gaußschen Elimination als Basisalgorithmus.<br />

Für eine nichtsinguläre Matrix A ∈ R n,n ist das Gauß–Verfahren i. Allg. nur mit Pivotisierung<br />

durchführbar und liefert eine Zerlegung<br />

wobei<br />

PA = LR ,<br />

• P Permutationsmatrix (entspricht z.B. den Zeilenpermutationen bei Zeilenpivotisierung),<br />

• L normierte untere Dreieckmatrix (mit lii = 1, i = 1, . . .,n),<br />

• R obere Dreiecksmatrix.<br />

Für unbekanntes x ∈ R n und gegebenes b ∈ R n löst man Ax = b durch<br />

Ax = b ⇔ PAx = Pb ⇔ L ���� Rx = Pb ,<br />

=y<br />

wobei zunächst Ly = Pb durch Vorwärtssubstitution<br />

und dann Rx = y durch Rückwärtssubstitution gelöst wird.<br />

Wann kann auf Pivotisierung verzichtet werden (dann P = I, I Einheitsmatrix)?<br />

Satz 6.9 Sei A ∈ R n,n nichtsingulär. Dann gilt:<br />

A hat eine LR-Zerlegung ⇔ alle Hauptunterdeterminanten sind ungleich 0.<br />

Hinreichende Bedingungen:<br />

Satz 6.10 A hat eine LR-Zerlegung, wenn<br />

i) A symmetrisch, positiv definit (SPD).<br />

ii) A M-Matrix.<br />

Beweis zum 1. Teil: Vergl. Skript zur Numerik I. ✷<br />

Ist A tridiagonal und hat LR–Zerlegung, dann sind L, R Bandmatrizen mit Bandbreite<br />

1.<br />

233


Allgemein gilt: Die Bandbreite bleibt erhalten bei Gauß ohne Pivotsuche (entsprechend<br />

Cholesky).<br />

Ist A tridiagonal in der Form<br />

⎛<br />

⎜<br />

A =: ⎜<br />

⎝<br />

a1 b1<br />

c1<br />

. ..<br />

. ..<br />

. ..<br />

. .. bn−1<br />

cn−1 an<br />

⎞<br />

⎟<br />

⎠ ,<br />

dann ergibt sich bei Durchführbarkeit der Gauß-Elimination A = LR mit<br />

⎛<br />

1<br />

⎜ l1<br />

L = ⎜<br />

⎝<br />

. ..<br />

. .. . ..<br />

⎞<br />

⎟ ,<br />

⎠<br />

⎛<br />

m1<br />

⎜<br />

R = ⎜<br />

⎝<br />

r1<br />

. ..<br />

⎞<br />

. ..<br />

⎟<br />

. .. ⎟<br />

rn−1 ⎠<br />

ln−1 1<br />

und li, mi, ri werden bestimmt durch den folgenden Algorithmus:<br />

m(1)=a(1);<br />

for i=1:n-1<br />

r(i)=b(i);<br />

l(i)=c(i)/m(i);<br />

m(i+1)=a(i+1)-l(i)*b(i);<br />

end<br />

Vorwärtssubstitution zur Lösung von Ly = b:<br />

y(1)=b(1);<br />

for i=2:n<br />

y(i)=b(i)-l(i-1)*y(i-1);<br />

end<br />

Rückwärtssubstitution zur Lösung von Rx = y:<br />

x(n)=y(n)/m(n);<br />

for i=n-1:-1:1<br />

x(i)=(y(i)-b(i)*x(i+1))/m(i);<br />

end<br />

Die Anzahl der Multiplikationen beträgt: 5n–4, d.h. der obige Algorithmus hat die<br />

optimale Komplexität O(n) bzgl. der Dimension n.<br />

Verbesserung der Konstante für andere Verfahren?<br />

Mit Pivotisierung (durch Zeilenvertauschung) : R Bandbreite 2 (Details Übung).<br />

234<br />

mn


Andere Ansatzräume Vh:<br />

In den folgenden Beispielen A) und B) betrachten wir nur den Fall k ≡ 1, ferner sei<br />

oBdA. a = 0 und b = 1.<br />

Beachte auch: h = 1/M hat hier nicht die Bedeutung der Schrittweite:<br />

A) Wir betrachten<br />

Vh = P M+1 ∩ � v ∈ C[0, 1] � � v(0) = v(1) = 0 � , (6.15)<br />

wobei P k der Raum der Polynome k-ten Grades auf R sei.<br />

Eine Basis von Vh ist gegeben durch<br />

wi(x) := x i (1 − x) , i = 1, . . .,M .<br />

Beweis (der linearen Unabhängigkeit): Es ist klar, daß wi ∈ Vh.<br />

Sei v = M�<br />

ξiwi ∈ Vh. Dann:<br />

i=1<br />

v(x) =<br />

M� �<br />

ξix i+1 − ξix i� =<br />

i=1<br />

mit η1 = −ξ1 ,<br />

η2 = ξ1 − ξ2 ,<br />

.<br />

M+1 �<br />

i=1<br />

ηix i<br />

ηi = ξi−1 − ξi (i = 2, . . .,M) ,<br />

ηM+1 = ξM .<br />

.<br />

Wegen v ∈ Vh ⊂ P M+1 sind die Koeffizienten η1, . . .,ηM+1 eindeutig festgelegt,<br />

denn {xi , i = 1, . . ., M + 1} ist Basis von � v ∈ P M+1 � �<br />

� v(0) = 0 .<br />

Wegen v(1) = 0 gilt ferner M+1 �<br />

ηi = 0.<br />

i=1<br />

Daher lassen sich die ξi eindeutig bestimmen durch<br />

ξM = ηM+1<br />

ξM−1 = ηM + ξM . . . ξ1 = η2 + ξ2<br />

.<br />

ξ1 = η2 + ξ2 = M�<br />

ηi = −η1 .<br />

235<br />

i=2<br />


Insbesondere sind die wi glatt.<br />

Steifigkeitsmatrix A:<br />

Beachte:<br />

aij =<br />

=<br />

� 1<br />

0<br />

� 1<br />

0<br />

w ′ jw′ i dx =<br />

� 1<br />

0<br />

(ix i−1 (1 − x) − x i )(jx j−1 (1 − x) − x j ) dx<br />

ijx i+j−2 (1 − x) 2 − (i + j)(1 − x)x i+j−1 + x i+j dx<br />

� 1<br />

0<br />

x i+j dx =<br />

1<br />

i + j + 1<br />

(Hilbertmatrix)<br />

Insbesondere gilt aij �= 0 für alle i, j (vgl. supp(wi) = [0, 1]),<br />

und die Matrix A ist vollbesetzt und schlechtkonditioniert.<br />

B) Betrachte nun<br />

Vh = span{w1, . . ., wM} , wo wi(x) := sin(iπx) . (6.16)<br />

Es gilt also wiederum wi ∈ V , wi glatt und supp(wi) = [0, 1] für alle i = 1, . . .,M.<br />

Steifigkeitsmatrix A:<br />

aij =<br />

� 1<br />

mit λi := (iπ) 2 , denn<br />

0<br />

w ′ jw′ i dx = −<br />

� 1<br />

0<br />

w ′′<br />

j wi dx =<br />

� 1<br />

0<br />

λiwjwi dx = 1<br />

2 λiδij<br />

wi ist Eigenfunktion von −u ′′ , u(0) = u(1) = 0 zum Eigenwert λi. Es gilt nämlich<br />

−w ′′<br />

i (x) = −iπ cos(iπx) ′ = (iπ) 2 sin(iπx) = (iπ) 2 wi(x) ,<br />

wi(0) = wi(1) = 0 .<br />

und die wi sind orthogonal bzgl. (., .), d.h.<br />

�<br />

0 , i �= j<br />

(wi, wj) =<br />

1/2 , i = j<br />

(Beweis durch zweifache partielle Integration).<br />

Also erhalten wir: A = diag(λi/2).<br />

Dies ist optimal für die Auflösung von Aξ = b; allerdings sind die Eigenfunktionen<br />

wi für allgemeinere Differentialoperatoren nicht explizit gegeben.<br />

Wegen (6.17) heißt die Wahl (6.16) für Vh Spektralmethode; es gilt<br />

uh =<br />

M�<br />

i=1<br />

236<br />

(f, wi)<br />

λi/2 wi . (6.17)


A) und B) sind Galerkin– bzw. Ritzverfahren; aber keine Finite–Element–Verfahren,<br />

dafür sollte gelten:<br />

I) supp(wi) ist klein, d.h.<br />

supp(wi) ⊂<br />

ki �<br />

j=1<br />

Kij , wobei ki ≤ k ≪ M für alle i = 1, . . ., M .<br />

Dann ist A eine Bandmatrix (dies gilt aber auch in Beispiel B)!).<br />

II) Es gibt ein Referenzelement ˆ K := [0, 1] und Bijektionen Gi : ˆ K → Ki aus fester,<br />

endlich-dimensionaler Funktionenklasse,<br />

Beispiel: Gi ∈ P 1 (d.h. Gi affin–linear)<br />

Gi(ˆx) = xi−1 + ˆxhi , i = 1, . . .,N .<br />

Für alle i = 1, . . ., N (d.h. für alle Elemente) und für alle v ∈ Vh definiere<br />

(6.18)<br />

ˆv(ˆx) := v|Ki (Gi(ˆx)) , ˆx ∈ ˆ K . (6.19)<br />

Dann sei ˆv aus fester endlich-dimensionaler Funktionenklasse (unabhängig von v,<br />

eventuell abhängig von Ki).<br />

Damit: elementweiser Aufbau von A und b (s.u.).<br />

C) Allgemeinere Finite–Element–Räume:<br />

In jedem Element Kj, j = 1, . . .,N, seien jeweils k − 1 äquidistante Punkte<br />

definiert, d.h. definiere<br />

yi,l := xi + (l/k)hi+1 , i = 0, . . .,M , l = 0, . . ., k − 1 ,<br />

yM+1,0 := xM+1 ,<br />

z.B. für k = 1: yi,0 = xi, i = 0, . . ., M + 1,<br />

und für k = 2: yi,0 = xi, i = 0, . . ., M + 1,<br />

yi,1 = xi + hi+1/2 i = 0, . . ., M.<br />

x0 x1 x2 x3<br />

. . .<br />

xM<br />

xM+1<br />

y0,0 y0,1 y1,0 y1,1 y2,0 y2,1 y3,0 y3,1 yM−1,1 yM,0 yM,1 yM+1,0<br />

Die unterschiedliche Numerierung der Eckknoten und Elementeknoten mit Freiheitsgraden<br />

dient hier nur der Unterscheidung.<br />

Später: durchgehende Numerierung der Knoten mit Freiheitsgraden.<br />

237


Damit lassen sich weitere Finite-Element Räume definieren, etwa<br />

Vh := � v � � v ∈ C[a, b], v|Kj ∈ P k für j = 1, . . .,M : v(a) = v(b) = 0 � (6.20)<br />

(erfüllt (6.18) (mit Gi ∈ P 1 ) und (6.19)).<br />

α) Funktionswerte in den Knoten yi,l als Freiheitsgrade<br />

(Lagrange Elemente)<br />

Eine Basis für Vh besteht aus den Funktionen wi,l ∈ Vh, (i, l) ∈ IB, wo<br />

IB := {(0, l) , l = 1, . . .,k − 1} ∪ {(i, l) , i = 1, . . .,M , l = 0, . . .,k − 1} ,<br />

die definiert sind durch durch die Forderung wi,l(yj,r) = δ(i,l),(j,r),<br />

wobei (i, l), (j, r) die Indexmenge IB durchlaufen.<br />

wi,l existiert eindeutig auf jedem Element Kj, da dort die Lagrange–<br />

Interpolationsaufgabe in P k zu Werten auf den Knoten yj,r ∈ Kj eindeutig<br />

lösbar ist.<br />

Ferner gilt wi,l ∈ C[a, b], denn die Funktionswerte in Eckknoten xk der<br />

Elemente Kj sind vorgegeben,<br />

wi,l(a) = wi,l(b) = 0 ist ebenfalls klar (nach Vorgabe 0 in y0,0 und yM+1,0).<br />

Die Dimension von Vh ist daher dim Vh = (M + 1)k − 1 und entspricht der<br />

Anzahl der Freiheitsgrade.<br />

Eine Darstellung für v ∈ Vh ist daher (wie oben):<br />

v(x) = �<br />

ηi,l wi,l(x) ⇐⇒ ηi,l = v(yi,l) , (i, l) ∈ IB .<br />

(i,l)∈IB<br />

Z.B. für k = 2, quadratischer Ansatz:<br />

1<br />

x i-1 x i-1/2 x i x i+1/2 x i+1<br />

1<br />

x i x i+1/2 x i+1<br />

supp wi,0 = Ki ∪ Ki+1<br />

supp wi,1 = Ki+1<br />

Explizite Darstellung des Basisfunktionen und Bandbreite der resultierenden<br />

Steifigkeitsmatrix: Übung.<br />

β) Funktionswerte und Ableitungen als Freiheitsgrade<br />

(Hermite–Elemente)<br />

238


Wir betrachten als Beispiel den Raum Vh nach (6.20) mit k = 3 (kubischer<br />

Ansatz).<br />

Freiheitsgrade sind der Funktionswert und die 1. Ableitung in den Eckknoten<br />

xj, j = 1, . . .,M.<br />

Die Basisfunktionen sind definiert durch die Forderungen<br />

w2i−1(xj) = δi,j , i, j = 1, . . ., M ,<br />

w ′ 2i−1(xj) = 0 , i, j = 1, . . ., M ,<br />

w2i(xj) = 0 , i, j = 1, . . ., M ,<br />

w ′ 2i (xj) = δij , i, j = 1, . . ., M .<br />

Die wj sind wohldefiniert (vgl. Hermitesche Interpolation auf Element).<br />

1<br />

x i-1 x i x i+1<br />

supp w2i−1 = Ki ∪ Ki+1<br />

x i-1 xi<br />

Explizite Darstellung des Basisfunktionen Vh: Übung.<br />

supp w2i = Ki ∪ Ki+1<br />

6.3 Eine Fehlerabschätzung der FEM für das Modellproblem<br />

Ziel: Konvergenz �u − uh� → 0 für h → 0.<br />

Konvergenzordnung: �u − uh� ≤ Ch α , α möglichst groß, �.� aussagekräftig, z.B.<br />

�.� = �.�0,2 : �u�0,2 := ��<br />

I |u(x)|2 dx � 1/2 ,<br />

�.� = �.�L ∞ : �u�L ∞ := sup x∈I |u(x)| ,<br />

�.� = �.�1,2 : �u�1,2 := ��<br />

I |u(x)|2 dx + �<br />

Die allgemeine Situation bisher war<br />

(V )<br />

(Vh)<br />

Gesucht u ∈ V, so dass<br />

a(u, v) = b(v) für alle v ∈ V .<br />

I |u′ (x)| 2 dx � 1/2 .<br />

Gesucht uh ∈ Vh, so dass<br />

a(uh, v) = b(v) für alle v ∈ Vh , wobei Vh ⊂ V .<br />

Daraus folgt die Fehlergleichung<br />

a(u − uh, v) = 0 für alle v ∈ Vh , (6.21)<br />

239<br />

x i+1


d.h. der Fehler e := u − uh steht orthogonal auf Vh bzgl. a(·, ·),<br />

d.h. uh ist beste Approximation von u in Vh bzgl. �.�a.<br />

Satz 6.11<br />

�u − uh�a = inf �u − v�a . (6.22)<br />

v∈Vh<br />

Beweis: (gilt allgemein für Projektion auf Unterraum von Prä-Hilbertraum)<br />

�u − uh� 2 a = a(u − uh, u − uh) = a(u − uh, u − uh) + a(u − uh, w) für beliebiges w ∈ Vh.<br />

Wähle w := uh − v mit beliebigen v ∈ Vh. Dann folgt nach der Cauchy-Schwarz’schen<br />

Ungleichung<br />

�u − uh� 2 a = a(u − uh, u − uh + w)<br />

≤ �u − uh�a�u − v�a für beliebige v ∈ Vh<br />

� �� �<br />

u−v<br />

und damit �u − uh�a ≤ �u − v�a. (Für �u − uh�a = 0 ist die Behauptung klar.) ✷<br />

Es reicht also, die Approximationsgüte des Ansatzraums Vh abzuschätzen in Termen<br />

von h (Feinheit der Diskretisierung) durch Abschätzung von �u − ˜v�a für ein speziell<br />

gewähltes ˜v ∈ Vh. Oft reicht ˜v = I(u), d.h. die Interpolierende von u in Vh.<br />

Durchführung für stückweise lineare Elemente (Vh nach (6.7)):<br />

Zur Vorbereitung: Poincaré–Ungleichungen<br />

Lemma 6.12 Sei v ∈ C[a, b], v ′ stückweise stetig, v(α) = 0 für ein α ∈ [a, b]<br />

(tatsächlich gebraucht wird v ∈ W 1,2 (a, b), v(α) = 0 s.u.).<br />

Dann gilt:<br />

�� b<br />

a<br />

|v(x)| 2 dx<br />

�1/2<br />

�� b<br />

≤ (b − a) |v<br />

a<br />

′ (x)| 2 �1/2<br />

dx<br />

Beweis: Für x ∈ [a, b] gilt: v(x) = � x<br />

α v′ (s) ds.<br />

Daher folgt nach der Cauchy-Schwarz’schen Ungleichung<br />

und damit<br />

� b<br />

a<br />

|v(x)| ≤<br />

|v(x)| 2 dx ≤<br />

Analog beweist man:<br />

� b<br />

a<br />

� b<br />

a<br />

|v ′ (s)| ds ≤ (b − a) 1<br />

2<br />

(b − a)<br />

�� b<br />

|v<br />

a<br />

′ (s)| 2 �1/2<br />

ds<br />

. (6.23)<br />

� b<br />

|v<br />

a<br />

′ (s)| 2 ds dx = (b − a) 2<br />

� b<br />

|v<br />

a<br />

′ (x)| 2 dx .<br />

240<br />


Lemma 6.13 Sei v ∈ C[a, b], v ′ stückweise stetig, α ∈ [a, b] (reicht: v ∈ W 1,2 (a, b)).<br />

Dann gilt<br />

�� b<br />

|v(x)| 2 dx<br />

a<br />

�1/2<br />

Beweis: Analog zu (6.23): Aus<br />

folgt<br />

≤ (2(b − a)) 1/2<br />

�<br />

(b − a)<br />

|v(x)| ≤ (b − a) 1/2<br />

|v(x)| 2 �<br />

≤ 2 (b − a)<br />

� b<br />

|v<br />

a<br />

′ (x)| 2 dx + |v(α)| 2<br />

�1/2<br />

�� b<br />

|v<br />

a<br />

′ (s)| 2 �1/2<br />

ds<br />

� b<br />

a<br />

+ |v(α)|<br />

|v ′ (s) 2 | ds + |v(α)| 2<br />

�<br />

. (6.24)<br />

und damit die Behauptung. ✷<br />

Lemma 6.14 Sei v ∈ C[a, b], v stückweise stetig, und es gelte � b<br />

v(x) dx = 0 (reicht:<br />

a<br />

v ∈ W 1,2 (a, b)). Dann gilt:<br />

�� b<br />

a<br />

|v(x)| 2 dx<br />

�1/2<br />

�� b<br />

≤ (b − a) |v<br />

a<br />

′ (x)| 2 �1/2<br />

dx<br />

Beweis: Seien x, y ∈ [a, b]. Dann gilt v(x) − v(y) = � x<br />

y v′ (s) ds und damit<br />

also<br />

� b<br />

Für x ≤ y folgt daraus<br />

|v(y)| ≤ 1<br />

b − a<br />

v(x) dx −(b − a)v(y) =<br />

a � ��<br />

=0<br />

�<br />

� b � b<br />

a<br />

x<br />

v(y) = 1<br />

b − a<br />

� b � y<br />

|v ′ (s)| ds dx = 1<br />

b − a<br />

a<br />

x<br />

� b � x<br />

a<br />

y<br />

v ′ (s) ds dx .<br />

� b<br />

a<br />

v ′ (s) ds dx ,<br />

(s − a)|v ′ (s)| ds ≤<br />

da der Satz von Fubini das Vertauschen der Integrale erlaubt.<br />

Für x ≥ y folgt analog<br />

v(y) ≤ 1<br />

b − a<br />

� b � x<br />

a<br />

a<br />

|v ′ (s)| ds dx = 1<br />

b − a<br />

� b<br />

a<br />

. (6.25)<br />

� b<br />

a<br />

(b − s)|v ′ (s)| ds .<br />

|v ′ (s)| ds ,<br />

(Weiter wie beim Beweis von (6.23).) ✷<br />

Es gelten folgende Approximationsordnungen für die Interpolation in Vh entsprechend<br />

der Definition von xi, Vh, etc. auf [a, b] (nach (6.7)):<br />

241


Lemma 6.15 Sei v ∈ C[a, b], v ′ stückweise stetig (v ∈ W 1,2 (a, b)).<br />

Dann gilt:<br />

wobei �v�0,2 := �v�0 :=<br />

�v − I(v)�0,2 ≤ h �v ′ − (I(v)) ′ �0,2 ,<br />

�1/2 � � b<br />

a |v(x)|2 dx<br />

(s.o.).<br />

Beweis: Für e(x) := v(x) − I(v)(x) gilt e(xi) = 0 für i = 1. . . ., M.<br />

Daher folgt für x ∈ Ki<br />

|e(x)| ≤<br />

� xi<br />

xi−1<br />

|e ′ (s)| ds ≤ h 1/2<br />

��<br />

nach der Cauchy Schwarz’schen Ungleichung, weiter<br />

�<br />

�<br />

Ki<br />

|e(x)| 2 dx ≤ h 2<br />

und schließlich die Behauptung.<br />

Ki<br />

Ki<br />

|e ′ (s)| 2 �1/2 ds<br />

|e ′ (x)| 2 dx für alle i = 1, . . ., M<br />

Lemma 6.16 Sei v ∈ C 1 [a, b], v ′′ stückweise stetig (reicht: v ∈ W 2,2 (a, b)).<br />

Dann gilt:<br />

�v ′ − I(v) ′ �0,2 ≤ h�v ′′ �0,2 . (6.26)<br />

Beweis: Wir verwenden wieder e = v − I(v). Wegen �<br />

Ki e′ (x) dx = e(xi) − e(xi−1) = 0<br />

lässt sich Lemma 6.14 auf e ′ auf Ki anwenden und liefert<br />

�<br />

�<br />

�<br />

Ki<br />

|e ′ (x)| 2 dx ≤ h 2 i<br />

Ki<br />

|e ′′ (x)| 2 dx = h 2 i<br />

Ki<br />

|v ′′ (x)| 2 dx ,<br />

da I(v) ′′ = 0 auf Ki (beachte: I(v) ′′ existiert nicht in xi). Dies liefert die Behauptung<br />

�e ′ �0,2 ≤ h�v ′′ �0,2.<br />

✷<br />

Aus Satz 6.11 und Lemma 6.16 folgt:<br />

Satz 6.17 Sei u die Lösung von (D) in C 1 [a, b], u ′′ stückweise stetig (reicht: u ∈<br />

W 2,2 (a, b)) und uh die Lösung von (Vh) mit Vh nach (6.7)<br />

Dann gilt:<br />

�u ′ − u ′ h �0,2 ≤<br />

� �k�∞<br />

k0<br />

242<br />

�1/2 h�u ′′ �0,2 .<br />


Beweis: Wegen<br />

folgt nach Satz 6.11<br />

�u� 2 a =<br />

�u ′ − u ′ h �0,2 ≤<br />

� b<br />

k(x)u<br />

a<br />

′ (x) 2 dx ≥ k0�u ′ � 2 0,2 für u ∈ V<br />

1<br />

(k0) 1/2 �u − uh�a ≤ 1<br />

k 1/2 �u − I(u)�a .<br />

0<br />

Da weiter �u�2 a ≤ �k�∞�u ′ �2 0,2 folgt mit Lemma 6.16<br />

�u ′ − u ′ h �0,2 ≤<br />

� �k�∞<br />

k0<br />

Lemma 6.15 legt nahe, dass auch gilt:<br />

� 1/2<br />

�(u − I(u)) ′ �0,2 ≤<br />

� �k�∞<br />

k0<br />

�1/2 h�u ′′ �0,2 .<br />

�u − uh�0,2 ≤ Ch 2 �u ′′ �0,2 . (6.27)<br />

Diese Behauptung ist hier richtig und kann mit einem Dualitätsargument bewiesen<br />

werden.<br />

Für u ∈ C 2 [a, b] (reicht: u ∈ W 2,∞ (a, b)) gilt sogar<br />

mit �u�L∞ := sup{|u(x)|, x ∈ I} .<br />

�u − uh�L ∞ ≤ Ch2 �u ′′ �L ∞<br />

6.4 Allgemeinere eindimensionale Randwertaufgaben<br />

Das bisher behandelte Modellproblem<br />

(D)<br />

−(ku ′ ) ′ = f für x ∈ (a, b) ,<br />

u(a) = u(b) = 0<br />

(Randbedingung: homogene Dirichletbedingung)<br />

führt zu der variationellen Formulierung<br />

(V )<br />

Gesucht u ∈ V (V nach (6.1)), so dass<br />

a(u, v) = b(v) für alle v ∈ V .<br />

Ansatzraum: V (d.h. u ∈ V );<br />

jedes v ∈ V erfüllt die Randbedingung: essentielle bzw. erzwungene Randbedingung.<br />

Testraum: V (d.h. v ∈ V ).<br />

Inhomogene Dirichletbedingung:<br />

(D ′ )<br />

−(ku ′ ) ′ = f für x ∈ (a, b) ,<br />

u(a) = ua , u(b) = ub für ua, ub ∈ R gegeben .<br />

243<br />


Reduktion auf (D):<br />

klassisch: Stelle u dar als<br />

u = ũ + w ,<br />

wobei ũ ∈ C 1 [a, b] ∩ C 2 (a, b), so dass ũ(a) = 0, ũ(b) = 0,<br />

und w ∈ C 1 [a, b] ∩ C 2 (a, b) mit w(a) = ua, w(b) = ub, z.B.<br />

Dann gilt<br />

w(x) = ub − ua<br />

b − a (x − a) + ua . (6.28)<br />

−(ku ′ ) ′ = f ⇔ −(kũ ′ ) ′ = f + (kw ′ ) ′ =: ˜ f ,<br />

d.h. ũ erfüllt (D) (i. Allg. mit modifizierter rechter Seite).<br />

variationell: Mit den oben definierten Formen<br />

a(u, v) =<br />

� b<br />

ku<br />

a<br />

′ v ′ � b<br />

dx , b(v) =<br />

a<br />

fv dx<br />

ist eine variationelle Lösung gegeben durch u ∈ C[a, b], u ′ stückweise stetig, mit u(a) =<br />

ua, u(b) = ub, das<br />

a(u, v) = b(v) für alle v ∈ V<br />

erfüllt (klassisch ⇒ variationell: partielle Integration).<br />

Aber: u �∈ V , da inhomogene Randbedingungen vorliegen.<br />

Daher verwendet man die obige Darstellung u = ũ + w,<br />

wobei w ∈ C[a, b], w ′ stückweise stetig, w(a) = ua, w(b) = wb,<br />

z.B. w wie in (6.28) oder man wähle ein w ∈ ˜ Vh, wo<br />

˜Vh := � v � � v ∈ C[a, b], v|Kj linear, j = 1, . . .,N� ,<br />

mit möglichst kleinem Träger (s.u. zur Implementierung), z.B.<br />

ua ❅❅❅ ✟ ✟ ✟ ub (6.29)<br />

a x1 xM b<br />

Dann gilt wieder ũ ∈ V , d.h. u ∈ V + w (affiner Teilraum von C[a, b]).<br />

Die entsprechende variationelle Formulierung lautet daher<br />

(V ′ )<br />

Gesucht u ∈ V + w , so dass<br />

a(u, v) = b(v) für alle v ∈ V .<br />

244


Eine alternative Formulierung ergibt sich aus der Äquivalenz<br />

a(u, v) = b(v) für alle v ∈ V<br />

⇐⇒ a(ũ, v) = b(v) − a(w, v) =: ˜ b(v) für alle v ∈ V<br />

(6.30)<br />

und ũ ∈ V , d.h. (V ′ ) entspricht (V ) mit modifizierter rechter Seite, d.h. “o.B.d.A.”<br />

gelten homogene Dirichletbedingungen.<br />

Das Minimierungsproblem (M) ergibt sich analog:<br />

Lemma 6.18 Für inhomogene Dirichletbedingungen ist (V ′ ) (bzw. (V ) mit modifizierter<br />

Linearform ˜ b) äquivalent zum Minimierungsproblem<br />

(M ′ )<br />

Gesucht u ∈ V + w , so dass<br />

F(u) ≤ F(v) für alle v ∈ V + w .<br />

Dabei ist w ∈ V beliebig mit w(a) = ua, w(b) = ub, und F wie bisher definiert als<br />

F(v) := 1<br />

a(v, v) − b(v) .<br />

2<br />

Beweis: Nach Satz 6.2 gilt für ũ aus (6.30): (V ) ⇔ (M), jeweils mit ˜ b aus (6.30) statt<br />

b, also lautet die äquivalente Aussage<br />

˜F(ũ) ≤ ˜ F(˜v) für alle ˜v ∈ V , (6.31)<br />

wobei<br />

˜F(˜v) := 1<br />

2 a(˜v, ˜v) − ˜b(˜v) = 1<br />

a(˜v, ˜v) + a(w, ˜v) − b(˜v) .<br />

2<br />

Da F(v) = F(˜v + w) = 1a(˜v,<br />

˜v) + a(w, ˜v) − b(˜v) + c für v = ˜v + w ∈ V + w, und<br />

2<br />

a(w, w) − b(w) konstant ist, gilt (6.31) genau dann, wenn<br />

c := 1<br />

2<br />

F(u) = ˜ F(ũ) + c ≤ ˜ F(˜v) + c = F(v + w) für alle v ∈ V beliebig .<br />

Allgemeinere Differentialoperatoren<br />

Gemäß der Diskussion in Abschnitt 2.3 erweitern wir den Differentialoperator auf die<br />

Form (2.28), d.h.<br />

−(ku ′ ) ′ + cu ′ + du = f, x ∈ (a, b) (6.32)<br />

unter den Voraussetzungen (2.30), (2.30), vorerst mit Dirichletbedingungen<br />

u(a) = ua, u(b) = ub . (6.33)<br />

245<br />


Wir beginnen mit ua = ub = 0.<br />

Variationelle Formulierung für (6.32), (6.33):<br />

Sei v ∈ V beliebig; partielle Integration im Term 2. Ordnung liefert:<br />

Gesucht u ∈ V , V nach (6.1), so dass<br />

a(u, v) :=<br />

� b<br />

ku<br />

a<br />

′ v ′ + cu ′ � b<br />

v + duv dx =<br />

a<br />

fv dx =: b(v) für alle v ∈ V . (6.34)<br />

Eigenschaften von a:<br />

Für c = 0, d ≥ 0 (d.h. Senke) ist a ein Skalarprodukt auf V (vgl. (6.5)). Wegen Satz<br />

6.2 mit Bemerkung 6.3 gilt:<br />

u ∈ V löst (6.34) ⇐⇒ u ist Minimum von F(v) := 1<br />

2<br />

a(v, v) − b(v) für v ∈ V.<br />

Für c �= 0 ist a weder symmetrisch noch positiv, also ist kein Minimierungsproblem<br />

äquivalent zu (6.34), d.h. das Galerkin–Verfahren ist definiert ((Vh)), nicht jedoch das<br />

Ritz–Verfahren ((Mh)).<br />

Inhomogene Dirichletbedingungen werden wie oben behandelt:<br />

Ersetze b durch ˜ b(v) := b(v) − a(w, v).<br />

Um wie für c = d = 0 die Konvergenz(-ordnung) des einfachsten Finite–Element<br />

Verfahrens (d.h. (Vh) mit Vh nach (6.7)) zu zeigen, brauchen wir (vgl. Beweis von Satz<br />

6.17) Abschätzungen der Gestalt<br />

α�v ′ �2 0,2 ≤ a(v, v) ,<br />

a(v, w) ≤ K�v ′ �0,2�w ′ �0,2 für alle v, w ∈ V ,<br />

wobei α > 0, K > 0 konstant sind.<br />

Satz 6.11 gilt nämlich allgemein in der modifizierten Form:<br />

Satz 6.19 (Lemma von Cea) Sei a eine Bilinearform auf V , so daß für eine Norm<br />

� · �V auf V und Konstanten α, K > 0 gilt:<br />

α�v� 2 V<br />

≤ a(v, v) (6.35)<br />

a(v, w) ≤ K�v�V �w�V (6.36)<br />

für alle v, w ∈ V .<br />

Dann gilt für eine Lösung u der Variationsgleichung (V ) und eine Lösung uh der<br />

Galerkin–Approximation (Vh) mit einem Teilraum Vh ⊂ V :<br />

�u − uh�V ≤ K<br />

α inf �u − v�V . (6.37)<br />

v∈Vh<br />

246


Beweis: Die Fehlergleichung für e := u − uh:<br />

gilt weiterhin, also folgt<br />

a(e, v) = 0 für alle v ∈ Vh<br />

�u − uh� 2 V ≤ 1<br />

α a(u − uh, u − uh) = 1<br />

α a(u − uh, u − v) ≤ K<br />

α �u − uh�V �u − v�V<br />

für beliebiges v ∈ Vh und daraus die Behauptung. ✷<br />

(6.35) heißt Koerzivität, (6.36) Stetigkeit von a. Wenn also (6.35) und (6.36) für �v�V :=<br />

�v ′ �0,2 auf V nach (6.1) gelten, gilt auch Satz 6.17 für Vh nach (6.7).<br />

– � · �V ist Norm auf V , da für k = 1 a(u, v) = � b<br />

a u′ v ′ dx Skalarprodukt auf V ist. –<br />

Ist a Skalarprodukt, kann K<br />

α durch � K<br />

α<br />

6.17 (mit α = k0, K = �k�∞) gezeigt.<br />

� 1/2 ersetzt werden: Das wurde konkret in Satz<br />

Gültigkeit von (6.36) (Stetigkeit):<br />

Zur Gültigkeit von (6.36) braucht man nur Beschränktheitsbedingungen an c und d,<br />

z.B. c, d ∈ L ∞ (a, b) – kann abgeschwächt werden. Dann gilt<br />

a(v, w) = � b<br />

a kv′ w ′ + cv ′ w + dvw dx<br />

≤ �k�∞�v ′ �0,2�w ′ �0,2 + �c�∞�v ′ �0,2�w�0,2 + �d�∞�v�0,2�w�0,2<br />

nach der Cauchy–Schwarz’schen Ungleichung in L 2 (a, b).<br />

Nach Lemma 6.12 gilt für v ∈ V (wegen v(a) = 0)<br />

so dass (6.36) z.B. gilt mit<br />

�v�0,2 ≤ (b − a)�v ′ �0,2 ,<br />

K := �k�∞ + (�c�∞ + �d�∞(b − a)) (b − a) .<br />

Gültigkeit von (6.35) (Koerzivität):<br />

Mit partieller Integration und v(a) = v(b) = 0 erhalten wir für v ∈ V<br />

Also gilt:<br />

� b<br />

a<br />

c v ′ v dx =<br />

a(v, v) =<br />

� b<br />

a<br />

c 1 d<br />

2 dx (v2 ) dx = −<br />

� b<br />

k|v<br />

a<br />

′ | 2 � b<br />

dx +<br />

a<br />

247<br />

� b<br />

a<br />

′ 1<br />

c<br />

2 v2 dx .<br />

�<br />

d − 1<br />

2 c′<br />

�<br />

|v| 2 dx .


Somit ist hinreichend für (6.35) (mit α = k0):<br />

�<br />

d − 1<br />

2 c′<br />

�<br />

(x) ≥ 0 für alle x ∈ (a, b) . (6.38)<br />

Diese Bedingung kann noch verbessert werden zu<br />

m := − inf<br />

x∈(a,b)<br />

�<br />

d − 1<br />

2 c′<br />

�<br />

(x) < k0<br />

1<br />

. (6.39)<br />

(b − a) 2<br />

Um dies einzusehen, sei o.B.d.A. m ≥ 0 (sonst gilt auch (6.38)). Dann folgt wegen<br />

schließlich<br />

� b<br />

a<br />

�<br />

d − 1<br />

2 c′<br />

�<br />

|v| 2 dx ≥ −m<br />

� b<br />

|v|<br />

a<br />

2 dx ≥ −m(b − a) 2<br />

� b<br />

|v<br />

a<br />

′ (x)| 2 dx<br />

a(v, v) ≥ ε�v ′ � 2 0,2 mit ε := k0 − (b − a) 2 m .<br />

Geht man anstelle von (6.32) von der Form<br />

−(ku ′ − cu) ′ + du = f , x ∈ (a, b) , (6.40)<br />

aus, so kann man ausdifferenzieren (wenn erlaubt) und (6.39) anwenden oder stattdessen<br />

die variationelle Formulierung mit<br />

a(u, v) :=<br />

� b<br />

ku<br />

a<br />

′ v ′ − cuv ′ + duv dx (6.41)<br />

verwenden. Beides führt auf die gleiche Bedingung für Koerzivität (Übung).<br />

Es gilt also<br />

Satz 6.20 Es gelte k(x) ≥ k0 > 0, c, d ∈ L ∞ (Ω), c ′ ∈ L ∞ (Ω) und (6.39). Die Lösung<br />

u von (V ) erfülle u ∈ C 1 [a, b], u ′′ stückweise stetig (u ∈ W 2,2 (a, b) reicht).<br />

Dann gilt die Konvergenzordnung<br />

für eine Konstante C > 0.<br />

Flussrandbedingungen für (6.32):<br />

Vorgabe des Flusses q = −ku ′<br />

�(u − uh) ′ � 0,2 ≤ C h �u ′′ � 0,2<br />

bei x = a : q(a) = ga ,<br />

bei x = b : −q(b) = gb<br />

248<br />

(d.h. Fluss nach innen) . (6.42)


Variationelle Formulierung:<br />

d.h. keine Randbedingungen!<br />

V := � v � � v ∈ C[a, b], v ′ stückweise stetig � , (6.43)<br />

Partielle Integration liefert und arbeitet also die Randbedingungen in die Formulierung<br />

ein, so dass die variationelle Formulierung aufgrund von<br />

also lautet:<br />

Gesucht u ∈ V , so dass<br />

a(u, v) =<br />

� b<br />

a<br />

q ′ v dx = −<br />

� b<br />

ku<br />

a<br />

′ v ′ + cu ′ � b<br />

v + duv dx =<br />

a<br />

� b<br />

qv<br />

a<br />

′ dx + (qv)| b a<br />

fv dx + gav(a) + gbv(b) =: b(v) , (6.44)<br />

d.h. wir erhalten eine Variationsgleichung wie bei (homogener) Dirichletbedingung,<br />

aber einen anderen (größeren) Raum V .<br />

Auf V ist aber �v� := �v ′ �0,2 keine Norm mehr, da die Definitheit verloren geht. Auch<br />

gelten alle Argumente, die Lemma 6.12 (Poincaré) benutzen, so nicht, also auch nicht<br />

die Konvergenzaussagen für Dirichlet–Randbedingungen (Satz 6.20). Wir definieren als<br />

Norm auf V stattdessen<br />

�v�V := �v�1,2 :=<br />

�� b<br />

a<br />

|v(x)| 2 dx +<br />

� b<br />

|v<br />

a<br />

′ (x)| 2 �1/2<br />

dx<br />

Auch diese Norm wird von einem Skalarprodukt auf V erzeugt, nämlich von<br />

(Übung).<br />

Offensichtlich gilt<br />

aber eine Abschätzung der Form<br />

〈v, w〉 :=<br />

. (6.45)<br />

� b<br />

vw + v<br />

a<br />

′ w ′ dx (6.46)<br />

�v ′ �0,2 ≤ �v�1,2 für alle v ∈ V ,<br />

�v�1,2 ≤ C�v ′ �0,2 für alle v ∈ V<br />

mit einer Konstanten C > 0 gilt i. Allg. nicht, wohl aber auf V , definiert nach (6.1), da<br />

dann Lemma 6.12 anwendbar ist und C = (1+(b−a) 2 ) 1/2 ergibt. Auf dem Grundraum<br />

V nach (6.1) sind also die Normen äquivalent und daher auch Konvergenzordnungsaussagen<br />

in den Normen (bis auf Konstanten).<br />

Wir suchen jetzt Bedingungen für die Gültigkeit von (6.35), (6.36) für �·�V nach (6.45).<br />

249


Gültigkeit von (6.36):<br />

Wie oben gilt für c, d ∈ L ∞ (a, b) :<br />

a(v, w) ≤ �k�∞�v ′ �0,2�w ′ �0,2 + �c�∞�v ′ �0,2�w�0,2 + �d�∞�v�0,2�w�0,2<br />

≤ C�v�V �w�V<br />

für C := max(�k�∞, �d�∞) + �c�∞ nach der Cauchy–Schwarzschen Ungleichung in<br />

L 2 (a, b) und in R 2 .<br />

Gültigkeit von (6.35):<br />

Wir haben<br />

a(v, v) =<br />

� b<br />

k|v<br />

a<br />

′ | 2 � b<br />

dx +<br />

a<br />

Es gilt für 0 < ε < k0:<br />

��<br />

� b<br />

�<br />

� cvv<br />

a<br />

′ �<br />

� k0<br />

dx�<br />

− ε<br />

� ≤ �c�∞<br />

�c�∞<br />

d|v| 2 dx +<br />

� b<br />

|v<br />

a<br />

′ | 2 dx + �c�∞<br />

� b<br />

a<br />

cvv ′ dx .<br />

�c�∞<br />

4(k0 − ε)<br />

denn für a, b ≥ 0, δ > 0 gilt ab ≤ (δ/2) a 2 + (1/2δ) b 2 , und somit<br />

wobei<br />

a(v, v) ≥ ε<br />

Hinreichend ist ε > 0 und m(ε) > 0, also<br />

� b<br />

|v<br />

a<br />

′ | 2 � b<br />

dx + m(ε)<br />

a<br />

|v| 2 dx ,<br />

m(ε) := min<br />

x∈(a,b) d(x) − �c�2 ∞<br />

4(k0 − ε) .<br />

min d(x) −<br />

x∈(a,b)<br />

�c�2∞ 4 k0<br />

Im Fall c = 0 reicht also min d(x) > 0.<br />

x∈(a,b)<br />

� b<br />

a<br />

|v| 2 dx ,<br />

> 0 . (6.47)<br />

Analog zu V in (6.43) wird jetzt Vh ohne erzwungene Randbedingungen definiert, d.h.<br />

Vh := � v ∈ C[a, b] � � v|Kj linear, j = 1, . . .,M� . (6.48)<br />

Im Vergleich zu Dirichlet–Randbedingungen hat also Vh die Dimension M + 2, nicht<br />

M, da die Freiheitsgrade u(a) und u(b) als Unbekannte auftreten.<br />

Es gilt also<br />

250


Satz 6.21 Es gelte k(x) ≥ k0 > 0, c, d ∈ L ∞ (Ω) und (6.47). Die Lösung von (V )<br />

erfülle u ∈ C 1 [a, b], u ′′ stückweise stetig (u ∈ W 2,2 (a, b) reicht). Vh sei nach (6.48)<br />

gewählt.<br />

Dann gilt für eine Lösung uh von (Vh) die Konvergenzordnung<br />

für eine Konstante C > 0.<br />

�u − uh�V ≤ C h�u ′′ �0,2<br />

Eine RWA mit Flussrandbedingungen ist nicht immer eindeutig lösbar.<br />

Beispiel:<br />

−(ku ′ ) ′ = f in (a, b) ,<br />

−k(a)u ′ (a) = ga ,<br />

k(b)u ′ (b) = gb .<br />

(6.49)<br />

Falls eine Lösung zu (6.49) existiert, liefert die schwache Formulierung (6.44) mit v ≡ 1:<br />

0 =<br />

� b<br />

a<br />

f dx + ga + gb (Kompatibilitätsbedingung) .<br />

Ist u eine Lösung, dann ist auch u+const. eine Lösung.<br />

Gemischte Randbedingung für (6.32):<br />

Vorgabe: Linearkombination aus Fluss und Funktionswert<br />

bei x = a : q(a) + αa u(a) = ga ,<br />

bei x = b : − q(b) + αb u(b) = gb<br />

mit αr ∈ R und gr ∈ R, αr ≥ 0 für r = a, b.<br />

(6.50)<br />

Diese Randbedingung ist motiviert durch den Ansatz:<br />

q(r) = αr(ur − u(r)) ,<br />

wo ur = gr/αr, für r = a, b. Wegen αr > 0 gilt daher:<br />

q(r) > 0 (d.h. Fluss nach innen) ⇔ ur > u(r).<br />

Der Fluss ist also proportional zur (Temperatur)differenz mit Austauschkoeffizient αr.<br />

Eine Dirichlet-Bedingung erhält man formal durch den Grenzübergang αr → ∞, da<br />

dann aus q(r) = αr(ur − u(r)) folgt u(r) → ur (r=a,b).<br />

Variationelle Formulierung:<br />

V nach (6.43) (d.h. ohne erzwungene Randbedingungen):<br />

Multiplikation der Differentialgleichung mit v ∈ V und partielle Integration liefern:<br />

251


Gesucht u ∈ V , so dass<br />

a(u, v) :=<br />

=<br />

� b<br />

ku<br />

a<br />

′ v ′ + cu ′ v + duv dx + αau(a)v(a) + αbu(b)v(b)<br />

� b<br />

a<br />

fv dx + gav(a) + gbv(b) =: b(v) für alle v ∈ V ,<br />

d.h. zusätzliche Rand(integral)terme in der Bilinearform a.<br />

Auch hier sind wieder (6.35) und (6.36) zu überprüfen. Dazu brauchen wir<br />

(6.51)<br />

Lemma 6.22 Die Einbettung von (V, � · �1,2) (definiert nach (6.43) und (6.45)) nach<br />

(C[a, b], � · �∞) ist stetig.<br />

Beweis: Für v ∈ V gilt v ∈ C[a, b] nach Definition.<br />

Zu zeigen bleibt die Existenz einer Konstante C ≥ 0, so dass<br />

�v�∞ ≤ C�v�1,2 für alle v ∈ V .<br />

Im Beweis von Lemma 6.14 (Poincaré) wurde gezeigt:<br />

� b<br />

und daraus folgt wie dort<br />

d.h.<br />

a<br />

�<br />

�v�∞ ≤ max 1,<br />

v(x) dx − (b − a)v(y) =<br />

|v(y)| ≤<br />

� b<br />

a<br />

� b � x<br />

a<br />

|v ′ (x)| dx + 1<br />

b − a<br />

� �<br />

1<br />

�v�1,1 ≤ max 1,<br />

b − a<br />

y<br />

� b<br />

a<br />

v ′ (s) ds dx<br />

|v(x)| dx ,<br />

�<br />

1<br />

(2(b − a))<br />

b − a<br />

1/2 �v�1,2<br />

(6.52)<br />

nach der Cauchy–Schwarz’schen Ungleichung. ✷<br />

Hier wurde in Verallgemeinerung von � · �1,2 die Notation<br />

�v�1,p =<br />

�� b<br />

a<br />

|v(x)| p dx +<br />

� b<br />

a<br />

|v ′ (x)| p dx<br />

�1/p<br />

für p ≥ 1 (6.53)<br />

benutzt. Also ergibt sich analog zu den Flussrandbedingungen mittels Lemma 6.22:<br />

Gültigkeit von (6.36):<br />

|a(v, w)| ≤ � max (�k�∞, �d�∞) + �c�∞ + max (αa, αb)C 2� �v�1,2�w�1,2 ,<br />

wobei C die Stetigkeitskonstante aus Lemma 6.22 ist.<br />

Als Folgerung aus Lemma 6.13 (Poincaré) gilt:<br />

252


Lemma 6.23 Auf V nach (6.43) sind die Normen � · �1,2 und<br />

äquivalent.<br />

�v� :=<br />

Beweis: Nach Lemma 6.13 gilt<br />

und nach Lemma 6.22<br />

Gültigkeit von (6.35):<br />

�� b<br />

|v<br />

a<br />

′ (x)| 2 dx + |v(γ)| 2<br />

�1/2<br />

�v� 2 1,2 ≤ max � 1 + 2(b − a) 2 , 2(b − a) � �v� 2<br />

�v� 2 ≤ max(1, C 2 ) �v� 2 1,2<br />

(6.54)<br />

. ✷<br />

Wie bei Flussrandbedingungen folgt unter Benutzung von Lemma 6.13<br />

|a(v, v)| ≥ ε�v ′ � 2 0,2 + m(ε)�v�2 0,2 + αa |v(a)| 2 + αb |v(b)| 2<br />

≥ (ε − (b − a)(αa + αb)) �v ′ � 2 0,2 +<br />

�<br />

1<br />

m(ε) +<br />

2(b − a) (αa<br />

�<br />

+ αb)<br />

�v� 2 0,2 ,<br />

wobei 0 ≤ αa ≤ αa und 0 ≤ αb ≤ αb beliebig sind. Es ist also ε > (b − a)(αa + αb)<br />

zu wählen, was durch entsprechende Wahl von αa, αb beliebig klein gemacht werden<br />

kann, um andererseits<br />

zu sichern.<br />

Im Fall c = 0 reicht also<br />

˜m(ε) := min<br />

x∈(a,b) d(x) − �c�2∞ 4(k0 − ε) +<br />

1<br />

2(b − a) (αa + αb) > 0 (6.55)<br />

1<br />

min d(x) +<br />

x∈(a,b) 2(b − a) (αa + αb) > 0<br />

(ε > 0 tritt wegen der nicht nötigen Aufspaltung von<br />

reicht also<br />

min d(x) ≥ 0<br />

x∈(a,b)<br />

im Gegensatz zu den Flussrandbedingungen.<br />

�b<br />

a<br />

cvv ′ dx nicht auf); insbesondere<br />

Wieder gilt u.a. unter der Voraussetzung (6.55) ein Konvergenzordnungssatz analog zu<br />

Satz 6.21, wobei hier wie dort die Norm � · �V = � · �1,2 auch durch die äquivalente<br />

Norm nach (6.54) ersetzt werden kann (mit modifizierter Konstante).<br />

253


Kombination Dirichlet/gemischte Randbedingung für (6.32), z.B.<br />

Der entsprechende Raum V ist dann<br />

für x = a : u(a) = ua ,<br />

für x = b : −q(a) + αbu(b) = gb .<br />

V := {v � � v ∈ C[a, b], v ′ stückweise stetig, v(a) = 0} ,<br />

d.h. die Dirichlet-Bedingung ist in den Raum aufgenommen.<br />

(6.56)<br />

Setze wieder u = ũ+w mit ũ ∈ V und w ∈ C[a, b], w ′ stückweise stetig und w(a) = ua,<br />

z.B. w(x) = ua oder w in der Form<br />

Mit der Bilinearform<br />

a(u, v) :=<br />

lautet dann die variationelle Formulierung:<br />

Gesucht ũ ∈ V , so dass<br />

a(u, v) = b(v) :=<br />

ua❍ ❍❍<br />

a x1 b<br />

� b<br />

ku<br />

a<br />

′ v ′ + cu ′ v + duv dx + αbu(b)v(b) (6.57)<br />

� b<br />

a<br />

fv dx + gbv(b) − a(w, v) .<br />

Der Fall x = a: gemischt, x = b: Dirichlet geht analog.<br />

Durch eine Spiegelung: x ↦→ b − x + a geht er in den obigen über.<br />

Unstetige Koeffizienten, Interfacebedingungen:<br />

Beispiel: q = − ku ′ und k nur stückweise stetig,<br />

z.B. stetig in x �= γ, x = γ ∈ (a, b) Sprungstelle.<br />

Die klassische Formulierung q ′ = f in (a, b) ist dann nicht sinnvoll.<br />

Herleitung aus der Erhaltung einer extensiven Größe liefert<br />

q ′ = f in (a, γ) ∪ (γ, b) ,<br />

[q(γ)] := q(γ+) − q(γ−) = 0 (Interface–Bedingung) .<br />

Übergang zu variationeller Formulierung liefert bisherige Form wegen (6.58),<br />

denn für v ∈ V gilt<br />

� b<br />

a<br />

fv dx =<br />

� γ<br />

= −<br />

=<br />

a<br />

� b<br />

a<br />

� b<br />

a<br />

q ′ v dx +<br />

� b<br />

γ<br />

q ′ v dx<br />

qv ′ dx − q(a)v(a) + q(γ−)v(γ) − q(γ+)v(γ) + q(b)v(b)<br />

−qv ′ dx − q(a)v(a) + q(b)v(b) = a(u, v) .<br />

254<br />

(6.58)


Umgekehrt:<br />

Satz 6.24 u ∈ V erfülle a(u, v) = b(v) für alle v ∈ V (V gemäß Randbedingung, die<br />

Formen a, b entsprechend).<br />

Es sei q stetig in (γ − ε, γ) ∪ (γ, γ + ε) für ein ε > 0, f ∈ L 2 (a, b), c, d ∈ L ∞ (a, b).<br />

Dann gilt: [q(γ)] = 0 für alle γ ∈ (a, b).<br />

(D.h. der Fluss q ist stetig in x = γ, i.a. aber nicht u ′ in x = γ (z.B. bei unstetigem k<br />

und q = −ku ′ ).)<br />

Beweis: Wähle in der Variationsgleichung<br />

a(u, v) =<br />

� b<br />

a<br />

−qv ′ dx +<br />

� b<br />

a<br />

cu ′ v + duv dx = b(v) =<br />

(bei entsprechenden Fluss oder gemischten Randbedingungen)<br />

v = vn (n ∈ N) als<br />

Dann folgt<br />

� γ<br />

−n<br />

γ− 1<br />

q dx + n<br />

n<br />

Für n → ∞ gilt aber<br />

sowie wegen<br />

für die restlichen Terme<br />

� γ+ 1<br />

n<br />

γ− 1<br />

n<br />

1<br />

γ − 1<br />

n γ γ + 1<br />

�<br />

n<br />

��❅❅ ❅<br />

� γ+ 1<br />

n<br />

γ<br />

q dx +<br />

� γ+ 1<br />

n<br />

γ− 1<br />

n<br />

� γ<br />

n<br />

γ− 1<br />

q dx → q(γ−) und n<br />

n<br />

cu ′ v + duv dx ≤<br />

� γ+ 1<br />

n<br />

γ− 1<br />

n<br />

� � γ+ 1<br />

n<br />

γ− 1<br />

n<br />

fv dx ≤ �f�L 2<br />

v 2 dx<br />

� 1/2<br />

≤<br />

.<br />

� b<br />

a<br />

cu ′ v + duv dx =<br />

� γ+ 1<br />

n<br />

γ<br />

fv dx(+gav(a) + gbv(b))<br />

� γ+ 1<br />

n<br />

γ− 1<br />

n<br />

q dx → q(γ+) ,<br />

� �1/2 2 n→∞<br />

→ 0 ,<br />

n<br />

fv dx .<br />

�<br />

�c�∞�u ′ �<br />

�0,2 + �d�∞�u�0,2<br />

�� 1<br />

γ+ n<br />

γ− 1<br />

v<br />

n<br />

2 �1/2 n→∞<br />

dx → 0 ,<br />

� � γ+ 1<br />

n<br />

γ− 1<br />

n<br />

v 2 dx<br />

� 1/2<br />

n→∞<br />

→ 0 .<br />

Somit erhalten wir für n → ∞ die Behauptung [q(γ)] = 0. ✷<br />

255


Die Beschränktheitsforderungen an f, c, d können abgeschwächt werden, z.B. reicht<br />

f ∈ Lq (a, b), q > 1, da<br />

��<br />

�<br />

� b �<br />

�<br />

� fv dx�<br />

1 1<br />

� ≤ �f�0,q�v�0,q ′ mit + = 1<br />

q ′ q<br />

a<br />

und für v = vn immer noch �vn�0,q ′ → 0 für n → ∞ gilt.<br />

Befindet sich in x = γ ∈ (a, b) eine konzentrierte Quelle (Punktquelle der Stärke h),<br />

hat die Erhaltungsgleichung dort die Form der Interface–Bedingung<br />

[q(γ)] = h . (6.59)<br />

Die zugehörige variationelle Formulierung hat die gleiche Bilinearform, aber die Linearform<br />

wird erweitert um den Summanden<br />

˜ b(v) := hv(γ) , (6.60)<br />

d.h. ein Punktfunktional. Wie oben, lässt sich die Interface-Bedingung (6.59) wieder<br />

aus der variationellen Formulierung erhalten.<br />

6.5 Zur Implementierung der FEM für 2 Punkt Randwertaufgaben<br />

Wir betrachten die Randwertaufgabe<br />

−(ku ′ ) ′ + cu ′ + du = f in (a, b) ,<br />

bei x = a : u(a) = ua oder − k(a)u ′ (a) + αau(a) = ga ,<br />

bei x = b : u(b) = ub oder k(b)u ′ (b) + αbu(b) = gb .<br />

Dabei gelte: k(x) ≥ k0 > 0, c(x) ∈ R, d(x) ≥ 0, αa,b ≥ 0, f(x) ∈ R, ga,b ∈ R.<br />

(6.61)<br />

Die zugehörige Variationsgleichung ist angegeben in (6.34) (Dirichlet/Dirichlet), (6.51)<br />

(gemischt/gemischt) oder (6.57) (Dirichlet/gemischt).<br />

Also gilt für die Bilinearform a<br />

wobei<br />

a(u, v) = a1(u, v) + a2(u, v) ,<br />

a1(u, v) =<br />

� b<br />

ku<br />

a<br />

′ v ′ + cu ′ v + duv dx<br />

und je nach Randbedingung a2 aus einigen der Summanden<br />

αau(a)v(a) und αbu(b)v(b)<br />

256


esteht, und für die Linearform b<br />

wobei<br />

b(v) = b1(v) + b2(v) + b3(v) ,<br />

b1(v) =<br />

� b<br />

a<br />

fv dx<br />

und je nach (gemischter) Randbedingung b2 aus einigen der Summanden<br />

gav(a) und gbv(b)<br />

besteht, sowie bei Dirichletrandbedingungen<br />

b3(v) = −a(w, v) ,<br />

wobei w die Dirichlet–Randbedingung erfüllt (s.u.).<br />

Leistungsumfang des zu entwickelnden Programms:<br />

”Beliebige” Zerlegung von [a, b] in Elemente (Triangulierung)<br />

Lagrange Ansatz, i. Allg. von Element zu Element verschieden (i.f. linear, quadratisch,<br />

kubisch)<br />

Genereller Aufbau:<br />

(1) Präprozessor: Definition der RWA (k, f, . . ., Randbedingungen, . . .)<br />

Definition der Triangulierung inkl. Ansatzräume (← Triangulierungsprogramm)<br />

Definition der Quadraturformeln<br />

(2) Prozessor: Aufstellen des Gleichungssystems (Assemblierung)<br />

Lösen (in spezieller Datenstruktur)<br />

(3) Postprozessor: (bei exakter Lösung: Fehlerberechnung)<br />

Graphische Ausgabe<br />

Berechnung, Ausgabe abgeleiteter Größen (z.B. Fluss)<br />

Zu (1): Definition der Triangulierung<br />

M Knoten (immer einschließlich x = a, x = b, d.h. abweichend von bisheriger Numerierung,<br />

s.u. Einbringen der Randbedingungen)<br />

Koordinaten der Knoten: x[1 : M]<br />

257


N Elemente Kl, l = 1, . . ., N, Kl abgeschlossen: Kl = [xr, xs]<br />

Beschreibung der Elemente in Feld ekt (Elementknotentabelle) durch<br />

– Polynomgrad +1 (2 oder 3 oder 4)<br />

– Knotenindizes:<br />

Anordnung linker, rechter Randknoten (weitere Knoten von links nach rechts)<br />

evtl. “Teilgebietsnummer”<br />

(wenn Koeffizienten k, f, . . . stückweise konstant definiert)<br />

Beispiel: Grobtriangulierung<br />

K1<br />

� �� � K2<br />

� �� � auf K1 quadratischer Ansatz<br />

x1 x2 x3 x4<br />

auf K2 linearer Ansatz<br />

Zeilenspeicherung der Elemente im Feld ekt:<br />

i \ j 1 2 3 4<br />

1 3 1 3 2<br />

2 2 3 4<br />

↑ ↑ ↑ ↑<br />

Dimension<br />

linker<br />

Randknoten<br />

rechter<br />

Randknoten<br />

Anforderung an globale Numerierung<br />

(→ Lösungsverfahren, Gleichungssystem, Datenstruktur)<br />

weitere<br />

Knoten<br />

Bei direktem Lösungsverfahren (Gauß, Cholesky) PA = LR:<br />

Bandstruktur bleibt immer erhalten für R.<br />

Ohne Pivotisierung bleibt die Bandbreite gleich für L und R,<br />

mit Zeilenpivotisierung bekommt R die doppelte Bandbreite<br />

Speicherstruktur: Band (untere Hälfte bei symmetrischen Matrizen)<br />

❅ ❅<br />

❅❅❅❅❅❅❅❅ ❅❅❅❅❅<br />

❅ ❅❅❅❅❅<br />

(ausführlich später)<br />

❀<br />

� ��<br />

� ��<br />

Daher: Numerierung so, dass Bandbreite minimal wird.<br />

258<br />

aik ❀ ai,k−i+m+1<br />

m Bandbreite


Aufzubauen und zu lösen (vgl. (6.9)) ist das Gleichungssystem Au = b mit<br />

A = (aij) , aij = a(wj, wi) , b = (bi) , bi = b(wi) .<br />

Die wi bilden eine Basis von Vh, so dass wi(xj) = δij, wobei, wenn gl der Grad des<br />

Polynomansatzes auf Kl ist<br />

Es ist aij �= 0, nur wenn<br />

Vh = V N<br />

h = � v ∈ C[a, b] � � v|Kl ∈ P gl , l = 1, . . ., N � .<br />

supp(wi) ∩ supp(wj) �= ∅ ⇔ xi, xj ∈ Kl für ein l ∈ {1, . . ., N} , (6.62)<br />

da supp(wi) =<br />

�<br />

Kl Elementmit xi∈Kl<br />

Kl.<br />

1–dimensional ist daher eine Numerierung von links nach rechts aufsteigend (oder rechts<br />

nach links absteigend) optimal, denn dann gilt<br />

Bandbreite = maximale Dimension der Polynomansatzräume −1.<br />

Allerdings ist diese Numerierung z.B. bei periodischen Randbedingungen<br />

nicht optimal (Übung).<br />

u(a) = u(b)<br />

k(a)u ′ (a) = k(b)u ′ (b)<br />

Triangulierungsprogramm:<br />

Z.B. Generierung einer (Fein-)Triangulierung aus eingegebener Grobtriangulierung<br />

durch mehrfache Verfeinerung. Am obigen Beispiel:<br />

(quadr.)<br />

K1<br />

(lin.)<br />

K2<br />

� �� ��<br />

�� �<br />

x1 x2 x3 x4<br />

zu (2): Assemblierung<br />

❀<br />

(quad.) (quad.) (lin.) (lin.)<br />

K1<br />

K2<br />

K3<br />

K4<br />

� �� ��<br />

�� ���������<br />

x1 x2 x3 x4<br />

x5 x6 x7<br />

Sortieren: x1 x2 x3 x4 x5 x6 x7<br />

Aufbau von aij = a(wj, wi) und bi = b(wi) elementweise:<br />

Randbedingungsunabhängige Anteile, z.B.<br />

kij :=<br />

� b<br />

a<br />

k(x)w ′ j (x)w′ i (x) dx =<br />

N�<br />

�<br />

l=1<br />

259<br />

Kl<br />

k(x)w ′ j (x)w′ i (x) dx =<br />

N�<br />

l=1<br />

k (l)<br />

ij .


Wegen (6.62) gilt wieder k (l)<br />

ij �= 0 nur wenn xi, xj ∈ Kl, d.h. das Element Kl liefert nur<br />

Beiträge zu kij mit xi, xj ∈ Kl.<br />

Transformation auf Referenzelement, z.B. ˆ K := [0, 1].<br />

Gl : ˆ K → Kl = [xr1, xr2] , Gl(ˆx) = (xr2 − xr1) ˆx + xr1 . (6.63)<br />

Am Beispiel kubischer Ansatz, d.h. vh|Kl ∈ P 3 :<br />

Globale Numerierung auf Ke:<br />

Lokale Numerierung auf ˆ K:<br />

xr1 xr3 xr4 xr2<br />

x1 x3 x4 x2<br />

i, j ∈ {r1,...,r4} (i = rs, j = rt) s, t ∈ {1, . . ., 4}<br />

global ←→ lokal<br />

Mit Variablentransformation erhält man<br />

k (l)<br />

ij =<br />

=<br />

� xr2<br />

xr1 � 1<br />

0<br />

k(x) d d<br />

wj(x)<br />

dx dx wi(x) dx<br />

k(G(ˆx)) d d<br />

wj(G(ˆx))<br />

dx dx wi(G(ˆx)) (xr2 − xr1) dˆx .<br />

Mit Ll := |xr2 − xr1|, der Länge des Elements Kl, und<br />

Ni(ˆx) := wri (G(ˆx)) , i = 1, 2(, 3, 4) ,<br />

den lokalen Basisfunktionen auf ˆ K (Formfunktionen), die durch den Grad des Ansatzes<br />

auf Kl bestimmt sind, erhält man<br />

k (l)<br />

ij =<br />

=<br />

=<br />

� 1<br />

0<br />

� 1<br />

0<br />

� 1<br />

0<br />

k(G(ˆx)) d d<br />

Nt(ˆx)<br />

dx dx Ns(ˆx) Ll dˆx<br />

k(G(ˆx)) d 1<br />

Nt(ˆx)<br />

dˆx Ll<br />

d 1<br />

Ns(ˆx) Ll dˆx<br />

dˆx Ll<br />

k(G(ˆx)) d d 1<br />

Nt(ˆx) Ns(ˆx) dˆx =:<br />

dˆx dˆx Ll<br />

ˆ k (l)<br />

t,s ,<br />

wobei wieder i = rs und j = rt gelte.<br />

� �<br />

Die Matrix ˆk (l)<br />

t,s heißt Elementsteifigkeitsmatrix.<br />

t,s=1,2(,3,4)<br />

� �<br />

Nach Berechnung wird ˆk (l)<br />

t,s gemäß globaler Numerierung zu (kij) addiert:<br />

Bei Speicherung � � des unteren Bandes (bei symmetrischen Matrizen) wird das untere<br />

Band von ˆk (l)<br />

t,s zu (kij) addiert, eventuell nach Indexvertauschung.<br />

260


Die Knoten von ˆ K erhält man allgemein durch ˆxs := G −1 (xrs), die Beziehung zwischen<br />

lokaler und globaler Numerierung aus ekt.<br />

Für obiges ˆ K gilt ˆx1 = 0, ˆx2 = 1 (und ˆx3 = 1/2 bei quadratischem bzw. ˆx3 = 1/3,<br />

ˆx4 = 2/3 bei kubischem Ansatz).<br />

Die lokalen Basisfunktionen Ni sind aus dem Ansatzraum, so daß Ni(ˆxj) = δij, i, j =<br />

1, 2(, 3, 4) gilt; d.h. zum Beispiel bei linearem Ansatz:<br />

N1(ˆx) = (1 − ˆx) ,<br />

N2(ˆx) = ˆx .<br />

Approximation von ˆ k (l)<br />

t,s durch Quadraturformel (z.B. Gaußquadratur), d.h.<br />

� 1<br />

0<br />

h(ˆx) dˆx ∼<br />

p�<br />

ωih(ˆx (i) ) .<br />

Dabei sind: ωi > 0: Gewichte,<br />

ˆx (i) : Quadraturpunkte.<br />

Es sind also die Werte Ni(ˆx (j) ) und N ′ i (ˆx(j) ) nötig. Diese müssen nur einmal bestimmt<br />

werden.<br />

Die Wahl der Quadraturformel ist vom Element (d.h. dem Ansatzraum) abhängig.<br />

Die Anteile<br />

sowie<br />

�b<br />

a<br />

�b<br />

a<br />

cw ′ j wi dx und<br />

�b<br />

a<br />

i=1<br />

dwjwi dx (→ Matrix),<br />

fwi dx (→ rechte Seite) werden analog behandelt.<br />

Einbringen der Randbedingungen:<br />

Fluss– bzw. gemischte Randbedingungen:<br />

liefern Anteile ga wi(a), bzw. gb wi(b) für die rechte Seite, sowie Anteile αa wj(a)wi(a)<br />

bzw. αb wj(b)wi(b) für die Steifigkeitsmatrix.<br />

i = ia sei der Index von xi = a (bei obiger Numerierung ia = 1), dito i = ib<br />

⎛ ⎞<br />

0. ⎜ ⎟<br />

⎜ ⎟<br />

⇒ (ga wi(a)) = ⎜ ga ⎟ ← i = ia<br />

⎝<br />

.<br />

⎠<br />

0<br />

261


und<br />

Dirichletrandbedingungen:<br />

⎛<br />

⎞<br />

0<br />

⎜ ..<br />

⎜ . 0 ⎟<br />

(αa wj(a)wi(a)) = ⎜ αa ⎟ ← i = ia<br />

⎝ .<br />

0 .. ⎠<br />

0<br />

↑<br />

i = ia<br />

Dirichletrandbedingungen fließen in die Wahl des Ansatzraumes Vh mit ein, d.h.<br />

Vh = V D<br />

h := V N<br />

h ∩ {v ∈ C[a, b] � � v(a) = v(b) = 0}<br />

Daher gilt für V N<br />

h = span{w1, . . .,wM}:<br />

V D<br />

h = span ({w1, . . .,wM} \ {wia, wib }) .<br />

Auf der rechten Seite kommt der Anteil −a(w, wi) hinzu.<br />

Wählt man w ∈ Vh durch w = uawia + ubwib (dies entspricht der Wahl von (6.29), so<br />

gilt<br />

−a(w, wi) = −a(wia, wi)ua − a(wib , wi)ub ;<br />

dies entspricht der Assemblierung mit V N<br />

h .<br />

In den Zeilen i �= ia, �= ib werden die bekannten Einträge uia = ua, uib = ub (zu<br />

Spaltenindex j = ia, = ib) auf rechte Seite gebracht, d.h. bi wird ersetzt durch bi −<br />

ai,iaua − ai,ibub. In der Matrix werden die Elemente ai,ia und ai,ib durch 0 ersetzt. Die<br />

Zeile ia wird gestrichen und durch die triviale Zeile<br />

ersetzt (analog für ib).<br />

Dadurch bleibt die Symmetrie erhalten.<br />

(0 . . . 0 1 0 . . . 0) u = ua<br />

↑<br />

ia<br />

Alle Operationen werden in der jeweiligen Datenstruktur durchgeführt.<br />

6.6 Variationsgleichungen und Funktionenräume<br />

Grundlage für die eindeutige Existenz einer Lösung einer Variationsgleichung<br />

(V )<br />

ist der Satz von Lax–Milgram.<br />

Gesucht u ∈ V, so dass<br />

a(u, v) = b(v) für alle v ∈ V .<br />

262


Satz 6.25 (von Lax–Milgram) Sei V ein Hilbertraum mit Skalarprodukt 〈·, ·〉,<br />

�u� = 〈u, u〉 1/2 , und die Bilinearform a zusätzlich stetig, d.h. es existiert C > 0, so<br />

dass<br />

|a(u, v)| ≤ C�u��v� für alle u, v ∈ V , (6.64)<br />

und koerziv, d.h. es existiert α > 0, so dass<br />

a(u, u) ≥ α�u� 2<br />

b sei stetig auf V .<br />

Dann besitzt (V ) genau eine Lösung u ∈ V .<br />

Beweis:<br />

(1) Aus dem Darstellungssatz von Riesz folgt erstens:<br />

Es gibt genau ein f ∈ V mit b(v) = 〈f, v〉 für alle v ∈ V .<br />

und zweitens:<br />

Zu u ∈ V existiert genau ein Au ∈ V , so dass<br />

für alle u ∈ V ; (6.65)<br />

〈Au, v〉 = a(u, v) für alle v ∈ V , (6.66)<br />

da für jedes u ∈ V durch v ↦→ a(u, v) eine lineare stetige Abbildung von V nach<br />

R definiert wird.<br />

Also wird durch (6.66) eine Abbildung A : V → V definiert.<br />

(2) Wegen (1) ist (V ) äquivalent zu<br />

Zu zeigen: (6.67) hat genau eine Lösung u ∈ V .<br />

Au = f . (6.67)<br />

(3) Es ist klar, dass A linear ist.<br />

A ist ferner stetig, denn für die Operatornorm gilt: �A� ≤ C:<br />

�Au� = sup |〈Au, v〉| = sup |a(u, v)| ≤ C�u� .<br />

�v�≤1<br />

�v�≤1<br />

(4) Wir definieren zu ε > 0 ein Tε : V → V durch<br />

Tε(u) = u − ε(Au − f) .<br />

Es gilt: u ist Fixpunkt von Tε ⇔ u ist Lösung von (6.67).<br />

263


(5) Wir finden ein ε > 0, so dass Tε eine Kontraktion ist:<br />

Tε(u1) − Tε(u2) = u1 − εAu1 − u2 + εAu2 = (I − εA)(u1 − u2) .<br />

Es genügt zu zeigen: �I − εA� < 1. Dazu sei v ∈ V beliebig.<br />

�(I − εA)v� 2 = 〈v − εAv, v − εAv〉<br />

= 〈v, v〉 − ε〈Av, v〉 − ε 〈v, Av〉 +ε<br />

� �� �<br />

=〈Av,v〉<br />

2 〈Av, Av〉<br />

= �v� 2 − 2εa(v, v) + ε 2 �Av� 2<br />

≤ (1 − 2εα + ε 2 C 2 )<br />

� �� � �v�2<br />

< 1, sfalls 0 < ε < 2α<br />

C 2<br />

Nach dem Banachschen Fixpunktsatz existiert also genau ein Fixpunkt von Tε<br />

fur solch ein ε und damit genau eine Lösung von (6.67). ✷<br />

Bemerkung 6.26 1. Für die Eindeutigkeitsaussage reicht a(v, v) > 0 für v �= 0<br />

(vgl. Satz 6.4), denn sind u1 und u2 Lösungen, so gilt<br />

a(ui, v) = b(v) für alle v ∈ V<br />

⇒ a(u1 − u2, v) = 0 für alle v ∈ V<br />

⇒ a(u1 − u2, u1 − u2) = 0<br />

und damit schließlich u1 = u2.<br />

2. Ist a symmetrisch, stetig und koerziv, dann ist a ein Skalarprodukt auf V . Mit<br />

�u�a := a(u, u) 1/2 besitzt V eine äquivalente Norm (nach (6.64), (6.65)), d.h.<br />

auch (V, �.�a) ist Hilbertraum. Bezüglich �.�a gelten (6.64), (6.65) dann mit: α =<br />

C = 1.<br />

Ohne Koerzivität ist die Lösbarkeit nicht gesichert.<br />

Die bisher betrachteten Räume V sind nicht vollständig in angemessenen Normen:<br />

Betrachte z.B. −u ′′ = f in (a, b) ,<br />

u(a) = 0 , u ′ (b) = gb .<br />

Dann ist a(u, v) =<br />

�b<br />

a<br />

u ′ v ′ dx und V = � v ∈ C[a, b] � � v ′ stückweise stetig, v(a) = 0 � .<br />

V ist aber nicht vollständig bezüglich �.�a und daher auch nicht bezüglich der Norm<br />

�.� eines Skalarprodukts 〈·, ·〉, so dass a koerziv (vergleiche Bemerkung 6.26, 2):<br />

264


Betrachte u(x) := x α mit α ∈ (1/2, 1), sowie oBdA. a = 0, b = 1.<br />

Dann ist u /∈ V , aber<br />

und es gilt<br />

�<br />

un(x) :=<br />

�u − un� 2 a =<br />

=<br />

n u( 1<br />

n<br />

1/n �<br />

0<br />

1/n<br />

�<br />

0<br />

u(x) für x ∈ � 1<br />

n<br />

) x = ( 1<br />

n )α−1 x für x ∈ � 0, 1<br />

n<br />

�<br />

2 1 = α 2α−1<br />

α xα−1 − � � �<br />

1 α−1<br />

2<br />

n<br />

α 2 x 2α−2 − 2α � 1<br />

n<br />

� 1<br />

n<br />

dx<br />

�<br />

, 1�<br />

� ∈ V ,<br />

�α−1 � �<br />

α−1 1 2α−2<br />

x + dx n<br />

�2α−1 � �<br />

1 α−1 1<br />

− 2 n n + � 1<br />

n<br />

so dass �u − un�a → 0 für n → ∞ folgt, da 2α − 1 > 0.<br />

� 2α−1 ,<br />

Insbesondere ist un eine Cauchy–Folge in (V, � · �a). Wäre (V, � · �a) vollständig, so<br />

würde un in V gegen ein ũ ∈ V konvergieren. In einem V und u umfassenden, durch<br />

� · � normierten Raum (Existenz s.u.) würde also der Widerspruch u = ũ folgen.<br />

Es ist also nötig, die Räume V so zu erweitern, dass z.B. u aus obigem Beispiel zu V<br />

gehört.<br />

Das geschieht mit dem Begriff der distributionellen Ableitung.<br />

Jedem v ∈ L 1 (a, b) (oder auch v ∈ L 1 (Ω), Ω ⊂ R n beschränkt) kann eine Distribution<br />

Tv ∈ D ′ (Ω) zugeordnet werden, d.h. ein lineares Funktional<br />

auf dem Raum der Testfunktionen<br />

Tv : D(Ω) → R ,<br />

ϕ ↦→ �<br />

vϕ dx<br />

D(Ω) := � ϕ ∈ C ∞ (Ω) � � supp ϕ ⊂ Ω � ,<br />

Ω<br />

(6.68)<br />

wobei supp ϕ := cl � x ∈ Ω � � ϕ(x) �= 0 � , d.h. ein ϕ ∈ D(Ω) verschwindet in der Nähe<br />

von ∂Ω.<br />

Jede Distribution hat beliebige (partielle) Ableitungen, indem die Formeln für partielle<br />

Integration in (6.68) (für glatte v ) erweitert werden.<br />

Im Folgenden soll die entstehende Distribution wieder durch ein w ∈ V darstellbar<br />

sein, d.h. eindimensional<br />

265


Definition: Sei v ∈ L 1 (a, b).<br />

w ∈ L 1 (a, b) heißt distributionelle oder schwache Ableitung k-ter Ordnung von v,<br />

falls � b<br />

wϕ dx = (−1) k<br />

a<br />

� b<br />

a<br />

w = dk<br />

v ,<br />

dxk v dk<br />

ϕ dx für alle ϕ ∈ D(a, b) .<br />

dxk Wenn also v ∈ Ck [a, b], dann ist dk<br />

v ∈ C[a, b] auch schwache Ableitung von v.<br />

dxk Für eine Raumdimension ist die reguläre distributionelle Ableitung gerade die fast<br />

überall (im Sinne des Lebesgue–Maßes) existierende punktweise Ableitung:<br />

Lemma 6.27 Für u, g ∈ L 1 (a, b) sind äquivalent:<br />

(1)<br />

� b<br />

a<br />

g(x) ϕ(x) dx = −<br />

� b<br />

a<br />

u(x) ϕ ′ (x) dx für alle ϕ ∈ D(a, b).<br />

(2) Zu x0 ∈ [a, b] existiert ein c ∈ R mit u(x) = c +<br />

Beweis:<br />

� x<br />

x0<br />

g(t) dt für fast alle x ∈ (a, b).<br />

(2) ⇒ (1): Sei ϕ ∈ D(a, b) beliebig. Ferner sei x0 ∈ (a, b), so dass [a, x0] ∩ supp ϕ = ∅<br />

�b<br />

und es gelte (2). Aus ϕ(a) = ϕ(b) = 0 folgt ϕ ′ (x) dx = 0 und damit unter<br />

Verwendung des Satzes von Fubini<br />

� b<br />

a<br />

u(x) ϕ ′ (x) dx =<br />

da ϕ(b) = 0.<br />

=<br />

=<br />

� b<br />

a<br />

� b<br />

x0<br />

� b<br />

x0<br />

(1) ⇒ (2): Zunächst für g = 0:<br />

(u(x) − u(x0)) ϕ ′ (x) dx =<br />

ϕ ′ � x<br />

(x)<br />

g(t)<br />

x0<br />

� b<br />

t<br />

g(t) dt dx =<br />

a<br />

� b<br />

ϕ ′ (x) dxdt = −<br />

x0<br />

� b<br />

Sei x0 ∈ (a, b) fest und η ∈ D(a, x0), η0 ∈ D(x0, b) mit<br />

ϕ ∈ D(a, b) durch<br />

ϕ(x) :=<br />

� x<br />

a<br />

η(t) dt<br />

266<br />

� b<br />

x<br />

� b � x<br />

a<br />

g(t)<br />

x0<br />

x0<br />

� b<br />

x0<br />

g(t) dt ϕ ′ (x) dx<br />

χ[x0,x](t) ϕ ′ (x) dxdt<br />

g(t) ϕ(t) dt ,<br />

�b<br />

a<br />

η0 dx �= 0 und definiere<br />

η0(t) dt . (6.69)


Dann gilt<br />

0 =<br />

=<br />

=<br />

für c :=<br />

�b<br />

a<br />

� b<br />

a<br />

� b<br />

a<br />

� b<br />

a<br />

Daraus folgt<br />

u(x) ϕ ′ � b �<br />

(x) dx = u(x) η(x)<br />

� � b<br />

a<br />

u(x) η(x) η0(t) dt − η0(x)<br />

a<br />

� b<br />

x<br />

� b<br />

a<br />

� x<br />

η0(t) dt − η0(x)<br />

�<br />

η(t) dt dx<br />

a<br />

�<br />

η(t) dt dx<br />

�� b<br />

(da supp η ⊂ (a, x0) , supp η0 ⊂ (x0, b))<br />

�<br />

η0(x) dx u(x) η(x) − c η(x) dx<br />

a<br />

η0(x)u(x) dx<br />

�b<br />

a<br />

� �b<br />

a<br />

η0(x) dx.<br />

η(x)(u(x) − c) dx = 0 für alle η ∈ D(a, x0),<br />

also u(x) = c für fast alle x ∈ (a, x0)<br />

und schließlich u(x) = c für fast alle x ∈ (a, b).<br />

Nun der Beweis für beliebige g:<br />

ϕ sei definiert wie oben in (6.69). Durch partielle Integration erhält man<br />

also<br />

� b<br />

a<br />

ϕ ′ (x)<br />

� x<br />

x0<br />

g(t) dt dx = −<br />

0 =<br />

� b<br />

Wie im Fall g = 0 folgt daher<br />

u(x) −<br />

� x<br />

x0<br />

a<br />

� b<br />

a<br />

�<br />

u(x) −<br />

� x<br />

ϕ(x)g(x) dx =<br />

x0<br />

� b<br />

�<br />

g(t) dt ϕ ′ (x) dx .<br />

a<br />

ϕ ′ (x)u(x) dx ,<br />

g(t) dt = c für ein c ∈ R für fast alle x ∈ (a, b)<br />

und damit die Behauptung für beliebige g. ✷<br />

Aus der Charakterisierung absolut stetiger Funktionen folgt:<br />

Satz 6.28 Sei u ∈ L 1 (a, b). Dann sind äquivalent:<br />

(1) Die distributionelle Ableitung u ′ erfüllt u ′ ∈ L 1 (a, b).<br />

(2) u ist absolut stetig und für die fast überall existierende Ableitung u ′ gilt u ′ ∈<br />

L 1 (a, b).<br />

Beweis: Siehe z.B. E. Hewitt, K. Stromberg: Real and Abstract Analysis, S. 286. ✷<br />

267


Definition: f : [a, b] → R heißt absolut stetig, wenn zu ε > 0 ein δ > 0 existiert, so<br />

dass<br />

n�<br />

|f(dk) − f(ck)| < ε , wenn<br />

n�<br />

(dk − ck) < ε<br />

k=1<br />

für jede endliche paarweise disjunkte Familie ((ck, dn)) k in [a, b].<br />

k=1<br />

Für absolut stetige Funktionen gilt die partielle Integration.<br />

Wir definieren folgende Funktionenräume:<br />

Definition: (Sobolevräume) Sei k ∈ N0, p ≥ 1: Die Räume<br />

W k,p �<br />

(a, b) := v ∈ L p �<br />

�<br />

(a, b) � di<br />

dxi v ∈ Lp �<br />

(a, b) für alle i = 0, . . .,k<br />

wobei Ableitung immer schwache Ableitung meint, versehen mit der Norm<br />

�<br />

k� �<br />

�<br />

�v�k,p := �<br />

d<br />

�<br />

i<br />

�<br />

�<br />

v�<br />

dxi �<br />

i=0<br />

p<br />

0,p<br />

�1/p<br />

heißen Sobolevräume (der Ordnung k zur p–ten Potenz).<br />

Dabei ist<br />

L p (a, b) :=<br />

�v�0,p :=<br />

für v ∈ W k,p (a, b)<br />

�<br />

v : (a, b) → R � � v (Lebesgue-)meßbar ,<br />

�<br />

�b<br />

�v�p �1/p<br />

dx ;<br />

also insbesondere W 0,p (a, b) = L p (a, b).<br />

a<br />

Insbesondere gilt auf H k (a, b) := W k,2 (a, b)<br />

wobei<br />

(v, w)k :=<br />

k�<br />

i=0<br />

und kurz (v, w) := (v, w)0.<br />

� b<br />

�v�k := �v�k,2 = (v, v) 1/2<br />

k ,<br />

Für die so definierten normierten Räume gilt:<br />

a<br />

�b<br />

a<br />

|v| p �<br />

dx < ∞<br />

di di<br />

v<br />

dxi dxi w dx für alle v, w ∈ Hk (a, b) ,<br />

268<br />

,<br />

,


Satz 6.29 Sei k ∈ N0, p ≥ 1.<br />

W k,p (a, b) ist ein Banachraum bezüglich �·�k,p und H k (a, b) ist ein Hilbertraum bezüglich<br />

(·, ·)k.<br />

Beweis: Entsprechende Eigenschaften von L p (a, b). ✷<br />

Weitere Eigenschaften der Räume sind<br />

Satz 6.30 Seien k, l ∈ N0, k ≥ l, p, q ≥ 1, so daß k − 1<br />

p<br />

W k,p (a, b) ⊂ W l,q (a, b)<br />

und die Einbettung ist stetig.<br />

(Gilt sogar k − 1 1 > l − , dann ist die Einbettung kompakt.)<br />

p q<br />

1 ≥ l − . Dann gilt<br />

q<br />

Beweis: Übung. ✷<br />

Nach Lemma 6.27 sind also v ∈ W 1,1 (a, b) (eventuell nach Abänderung auf einer Menge<br />

vom Maß 0) stetig. Es gilt sogar:<br />

Satz 6.31<br />

und die Einbettung ist stetig.<br />

(In Zeichen: W 1,1 (a, b) ֒→ C[a, b].)<br />

W 1,1 (a, b) ⊂ C[a, b]<br />

Beweis: Seien x, xn ∈ [a, b], xn → x für n → ∞. Wegen Lemma 6.27 gilt (Übung) für<br />

v ∈ W 1,1 �<br />

��xn<br />

(a, b): |v(x) − v(xn)| = �<br />

� v ′ �<br />

�<br />

(s) ds�<br />

� .<br />

x<br />

Nach dem Lemma von Lebesgue (vgl. Hewitt/Stromberg, S. 276) konvergiert der rechte<br />

Ausdruck wegen v ′ ∈ L1 (a, b) für fast alle x ∈ (a, b) gegen 0.<br />

Die Stetigkeit der Einbettung wurde schon im Beweis zu Lemma 6.22 gezeigt.<br />

Nach Satz 6.30 gilt auch<br />

W k,p (a, b) ֒→ C[a, b] für alle k ≥ 1, p ≥ 1 . (6.70)<br />

Für p > 1 ist die Einbettung sogar kompakt:<br />

Satz 6.32 Sei k ≥ 1, p > 1, dann ist<br />

W k,p (a, b) ֒→ C[a, b] kompakt .<br />

269


Beweis: Wegen Satz 6.30 reicht es, die Behauptung für k = 1 zu zeigen.<br />

Sei K > 0 und betrachte eine Folge vn ∈ W 1,p (a, b) mit �vn�1,p ≤ K.<br />

Zu zeigen: Es existiert eine Teilfolge, so dass �vnk − v�L∞ → 0 für ein v ∈ C[a, b].<br />

Nach dem Satz von Arzela–Ascoli reicht dafür:<br />

i) �vn�L∞ ist beschränkt: gilt nach Satz 6.31.<br />

ii) Die vn sind gleichgradig stetig.<br />

Dies gilt, da für x, y ∈ [a, b] mit x ≤ y:<br />

|vn(x) − vn(y)| =<br />

�<br />

�<br />

�<br />

�<br />

� y<br />

x<br />

v ′ �<br />

�<br />

n(s) ds�<br />

� ≤<br />

≤ K|y − x| 1−1/p<br />

� y<br />

|v<br />

x<br />

′ (s)| ds ≤ (y − x) 1/p′<br />

�� y<br />

x<br />

|v ′ n(s)| p �1/p ds<br />

für alle n ∈ N nach der Hölder’schen Ungleichung mit p und p ′ := (1 − 1<br />

p )−1 . Also ist<br />

vn sogar gleichmäßig Hölderstetig mit Exponent α = 1 − 1/p. ✷<br />

Tatsächlich wurde gezeigt:<br />

W 1,p (a, b) stetig<br />

֒→ C 0,α [a, b] mit α = 1 − 1/p ,<br />

und dann ausgenutzt, dass C 0,α [a, b] ֒→ C[a, b] kompakt ist.<br />

Insbesondere ist<br />

W k,p (a, b) ֒→ L q (a, b) kompakt für k ≥ 1 , p, q ≥ 1 . (6.71)<br />

Wegen (6.70) gilt also für die (vorläufige) Definition der Grundräume V (nach (6.1)<br />

für Dirichlet-Randbedingungen und nach (6.43) sonst)<br />

Für die verwendete Norm auf V gilt<br />

V ⊂ W 1,1 (a, b) .<br />

� · �V = � · �1,2<br />

bzw. � · �V ist äquivalent zu � · �1,2 = � · �1 (vergleiche die Poincaré–Ungleichungen in<br />

Lemma 6.12 – 6.14). Benutzen wir noch den folgenden Teilraum von W 1,p (a, b)<br />

W 1,p<br />

0 (a, b) := � v ∈ W 1,p (a, b) � � v(a) = v(b) = 0 � , (6.72)<br />

270


so ist W 1,p<br />

0 (a, b) abgeschlossen, also auch ein Banach- bzw. für p = 2 ein Hilbertraum.<br />

Dazu muss nur sichergestellt werden, dass die Punktfunktionale<br />

W 1,p (a, b) ∋ v ↦→ V (γ) (6.73)<br />

für ein fest gewähltes γ ∈ [a, b] stetig sind, was aus (6.70) folgt.<br />

Es bieten sich also folgende (größere) Grundräume an:<br />

und<br />

V = H 1 0<br />

1,2<br />

(a, b) := W0 (a, b) für Dirichletrandbedingungen (6.74)<br />

V = H 1 (a, b) für Fluss- bzw. gemischte Randbedingungen. (6.75)<br />

Liegt an einem Randpunkt, etwa x = a, eine Dirichletvorgabe und sonst eine gemischte<br />

Randbedingung vor, so verwende man<br />

V = � v ∈ H 1 (a, b) � � v(a) = 0 � , (6.76)<br />

was ebenfalls ein Hilbertraum ist. (vgl. (6.73)). Alle Überlegungen aus den Kapiteln<br />

6.1–6.5 bleiben gültig, sofern partielle Integration in V erlaubt ist. Das gilt nach Lemma<br />

6.27 (Übung). Nach Satz 6.25 ist die eindeutige Existenz einer Lösung von (V ) in V<br />

gesichert, sofern gilt<br />

(1) a ist stetig und koerziv,<br />

(2) b ist stetig.<br />

Für (1) sind für die verschiedenen Randbedingungen hinreichende Bedingungen angegeben<br />

worden in Kapitel 6.4; (2) ist klar, auch für die Punktfunktionalanteile nach<br />

(6.73) (vgl. auch (6.70)).<br />

6.7 Allgemeine Konvergenzordnungsaussagen<br />

Im Folgenden wird vorausgesetzt, dass bei Wahl von V nach (6.74)–(6.76) die Randwertaufgabe<br />

so ist, dass a stetig und koerziv und b stetig ist. Nach dem Lemma von<br />

Cea (Satz 6.19) ist also die Approximationsgüte einer Finite–Element–Lösung u ∈ Vh<br />

(asymptotisch) so wie die Approximationsgüte von Vh selbst. Wir betrachten im Folgenden<br />

Vh wie in Kapitel 6.2, Abschnitt C (6.20) definiert (vgl. auch Kapitel 6.5).<br />

Seien a = x1 < x2 < . . . < xM = b fest gewählte Knoten, g ∈ N sei der lokale Polynomansatzgrad,<br />

d.h. τh = � � �<br />

Kl<br />

� l = 1, . . .,N sei eine Zerlegung von [a, b] in Elemente<br />

271


(= abgeschlossene Teilintervalle), so dass jedes Kl außer den beiden Randknoten noch<br />

g − 1 innere Knoten enthält. Dann:<br />

Vh := V N<br />

h := � v ∈ H 1 (a, b) � � g<br />

v|Kl ∈ P<br />

bzw. bei Dirichletrandbedingungen<br />

Wir schätzen für u ∈ H 2 (a, b)<br />

für alle l = 1, . . ., N � , (6.77)<br />

Vh := V N<br />

h ∩ � v ∈ C[a, b] � � v(a) = v(b) = 0 � . (6.78)<br />

inf �u − vh�1 ≤ �u − Ih(u)�1<br />

vh∈Vh<br />

(6.79)<br />

völlig analog zur Vorgehensweise bei der Assemblierung in Kapitel 6.5 ab. Dabei ist<br />

der Interpolationsoperator I = Ih in Verallgemeinerung von Kapitel 6.3 folgendermaßen<br />

definiert:<br />

Betrachte auf einem Element Kl = [xr1, xr2] mit den Knoten xr1 < xr3 < . . . < xrg+1 <<br />

xr2 (bzw. für g = 1: xr1 < xr2) die lokale Interpolationsaufgabe:<br />

Gesucht p ∈ P g , so dass<br />

für beliebige, feste Werte urj<br />

p(xrj ) = urj , j = 1, . . .,g + 1 , (6.80)<br />

∈ R.<br />

(6.80) ist eindeutig lösbar (Numerik I) und somit gibt es zu ui ∈ R, i = 1, . . ., M, ein<br />

eindeutiges p ∈ C[a, b] mit p|Kl ∈ P g für alle l = 1, . . .,N, so dass<br />

p(xj) = uj für j = 1, . . .,M (6.81)<br />

(Die Stetigkeit in x = xi folgt aus der Interpolationsbedingung). Wegen des folgenden<br />

Lemmas ist p ∈ V N<br />

h , und so wird der Interpolationsoperator<br />

Ih : V → Vh ,<br />

u ↦→ p ,<br />

wobei in (6.81) uj := u(xj), j = 1, . . ., M (wohldefiniert wegen (6.70)).<br />

Lemma 6.33 Sei v ∈ L 1 (a, b), so dass v|Kl ∈ P g , l = 1, . . ., N. Dann<br />

v ∈ W 1,1 (a, b) ⇐⇒ v ∈ C[a, b] .<br />

272<br />

(6.82)


Beweis: “ ⇒ “ ist klar nach (6.70).<br />

“ ⇐ “ : Die Ableitung v ′ existiert auf Kl punktweise und stetig. Wir definieren w ∈<br />

L ∞ (a, b) durch w|int(Kl) := v ′ . Wir zeigen, dass w die schwache Ableitung von v ist.<br />

Dazu sei ϕ ∈ D(a, b):<br />

� b<br />

a<br />

wϕ dx =<br />

N�<br />

�<br />

l=1<br />

Kl<br />

v ′ ϕ dx (∗)<br />

= −<br />

N�<br />

�<br />

l=1<br />

Kl<br />

vϕ ′ dx = −<br />

� b<br />

a<br />

vϕ ′ dx .<br />

Im (∗) geht die Stetigkeit von v (in den Randknoten der Kl) ein, so dass sich die<br />

Randanteile bei der partiellen Integration gerade wegheben bzw. bei x = a, b wegen<br />

ϕ(x) = 0 wegfallen. ✷<br />

Wegen (6.81) hat Vh eine Basis {w1, . . ., wM}, definiert durch<br />

wi(xj) = δij , i, j = 1, . . ., M (6.83)<br />

– Bei Dirichletrandbedingungen sind die Randfreiheitsgrade zu entfernen –<br />

Wir schätzen jetzt �u − Ih(u)�1 ab.<br />

�u − Ih(u)� 2 1 =<br />

� b<br />

a<br />

|u − Ih(u)| 2 dx +<br />

Für den ersten Summanden erhalten wir<br />

und<br />

A1 =<br />

N�<br />

�<br />

l=1<br />

Kl<br />

� b<br />

|u<br />

a<br />

′ − (Ih(u)) ′ | 2 dx =: A1 + A2<br />

|u − Ih(u)| 2 dx =:<br />

N�<br />

l=1<br />

A (l)<br />

1<br />

(6.84)<br />

A (l)<br />

1 =<br />

�<br />

|(u − Ih(u)) (Gl(ˆx))|<br />

ˆK<br />

2 hl dˆx , (6.85)<br />

wobei wie in (6.63) ˆ K = [0, 1], G = Gl : ˆ K → Kl, ˆx ↦→ x die affin–lineare Bijektion<br />

zwischen Referenz- und allgemeinen Element darstellt, und hl die Länge von Kl<br />

bezeichnet, also<br />

Analog ist A2 = N�<br />

l=1<br />

A (l)<br />

2 und<br />

h = N<br />

max<br />

l=1 hl .<br />

A (l)<br />

� �<br />

�<br />

2 = �<br />

d<br />

� ˆK dˆx ((u − Ih(u))<br />

�<br />

�2<br />

(Gl(ˆx))) �<br />

1<br />

� dˆx , (6.86)<br />

hl<br />

da die Kettenregel auch für u ◦ Gl und u ∈ H 1 (Kl) gilt. (Beweis: Übung)<br />

273


Außerdem gilt für den Interpolationsoperator<br />

Î : H 1 ( ˆ K) → P g ,<br />

ˆv ↦→ ˆp ,<br />

(6.87)<br />

und ˆp(ˆxj) = uj, j = 1, . . .,g + 1, wobei 0 ≤ ˆx1 < ˆx3 < . . . < ˆx2 die Knoten von ˆ K sind<br />

(vgl. Kapitel 6.5)<br />

Ih(v)|Kl ◦ Gl = Î(v ◦ Gl) (6.88)<br />

für v ∈ H 1 (a, b), da v ◦ Gl ∈ H 1 ( ˆ K) (Beweis: Übung), und für p ∈ P g (in der Variable<br />

x) auch p ◦ Gl ∈ P g (in der Variable ˆx) gilt, und die Knoten von ˆ K und Kl durch Gl<br />

aufeinander abgebildet werden. Also<br />

A (l)<br />

1 = � K ˆ |u(ˆx) − Î(u ◦ Gl)(ˆx)| 2 dˆxhl<br />

A (l)<br />

2 = � �<br />

�<br />

ˆK � d<br />

�<br />

��2 ��<br />

u(ˆx) − Î(u ◦ Gl)(ˆx)<br />

dˆx<br />

dˆx 1<br />

hl<br />

(6.89)<br />

und es reicht, den Interpolationsfehler auf ˆ K abzuschätzen. Für die Halbnormen<br />

�� � b �<br />

|v|k := �<br />

d<br />

�<br />

k<br />

� �<br />

2 1/2<br />

�<br />

v�<br />

dxk � dx für k ∈ N0<br />

(6.90)<br />

gilt<br />

a<br />

�v�k =<br />

� k�<br />

i=0<br />

|v| 2 i<br />

�1/2<br />

Zur Unterscheidung kann das Grundgebiet angegeben werden, d.h.<br />

Durch (6.84) – (6.86) wurde gezeigt<br />

|v|k,(a,b) bzw. �v�k,(a,b) .<br />

|v| 2 0,Kl = hl |v ◦ Gl| 2<br />

0, ˆ K ,<br />

|v| 2 1,Kl<br />

= 1<br />

hl<br />

|v ◦ Gl| 2<br />

1, ˆ K .<br />

. (6.91)<br />

Für höhere Ableitungen gilt entsprechend<br />

|v| 2 k,Kl =<br />

� �2k−1 1<br />

|v ◦ Gl| 2<br />

k, ˆ K für v ∈ H k (Kl) (6.92)<br />

und also auch<br />

Es gilt<br />

hl<br />

|v ◦ Gl| 2<br />

k, ˆ ≤ h2k−1<br />

K l |v| 2 . (6.93)<br />

k,Kl<br />

274


Lemma 6.34 (von Bramble–Hilbert)<br />

Sei K ein Intervall, m ∈ N. Dann existiert eine Konstante C = C(K) > 0, so dass<br />

inf<br />

p∈P m−1 �v + p�m,K ≤ C|v|m,K für alle v ∈ H k (K) .<br />

Beweis: Übung. ✷<br />

Also ist |v|m,K eine Norm auf den Quotientenraum H m (K)/P m−1 .<br />

Lokal lässt sich also der Interpolationsfehler wie folgt abschätzen, wenn k, m ∈ N mit<br />

k ≥ m ≥ 0, so dass<br />

P k−1 ⊂ ˆ P , (6.94)<br />

wobei ˆ P der Ansatzraum auf ˆ K ist und alle Elemente (mit ihren Ansatzräumen) durch<br />

affin–lineare Transformationen auf ˆ K (und ˆ P) entstehen (Die Triangulierung heißt dann<br />

affin–äquivalent.). Dies ist für (6.77) mit k ≤ g +1 erfüllt. Also gilt für u ∈ H k (Kl) für<br />

ein beliebiges Element Kl.<br />

|u − Ih(u)| m,Kl<br />

(6.92)<br />

≤ h 1−2m<br />

l<br />

(6.88)<br />

= h 1−2m<br />

l<br />

≤ h 1−2m<br />

l<br />

|u ◦ Gl − Ih(u) ◦ Gl| 2<br />

m, ˆ K<br />

�<br />

�<br />

�<br />

�<br />

�u ◦ Gl − Î(u ◦ Gl) � 2<br />

m, ˆ K<br />

�<br />

�<br />

�u ◦ Gl + ˆp − Î(u ◦ Gl<br />

�<br />

�<br />

+ ˆp)<br />

für ein beliebiges ˆp ∈ P k−1 .<br />

Wegen der Stetigkeit des Operators Ih : Hk ( ˆ K) → Hm ( ˆ K) gilt also<br />

|u − Ih(u)| 2 �<br />

≤ h1−2m�<br />

m,Kl l Id − Î � �2 inf<br />

ˆp∈P k−1<br />

�u ◦ Gl + ˆp� 2<br />

k, ˆ K<br />

Summation ergibt also<br />

also auch<br />

� 2<br />

m, ˆ K<br />

≤ h 1−2m<br />

l C 2 |u ◦ Gl| 2<br />

k, ˆ K nach Lemma 6.34<br />

≤ h 1−2m+2k−1<br />

l C 2 |u| 2 . k,Kl (6.95)<br />

|u − Ih(u)|m,(a,b) ≤ C h k−m |u|k,(a,b) ,<br />

Satz 6.35 Sei τh eine affin–äquivalente Triangulierung, in Lagrange–Elementen, so<br />

dass (6.94) gilt. Dann existiert eine Konstante C > 0, so dass<br />

�u − Ih(u)�m ≤ C h k−m |u|k für alle u ∈ H k (a, b) .<br />

Zur Kombination mit dem Lemma von Cea (Satz 6.19) wähle man m = 1, d.h.<br />

275


Satz 6.36 Es sei τh eine Triangulierung von (a, b) und Vh nach (6.77) oder (6.78)<br />

gewählt (je nach Randbedingung). Es seien a, b stetig und a koerziv auf V (nach (6.65)).<br />

Gilt für die Lösung u der Variationsgleichung (V ) u ∈ H k (a, b) für k ≤ g + 1, dann<br />

erfüllt die Finite–Element–Lösung uh von (Vh) die Konvergenzordnungsaussage<br />

d.h. bei maximaler Regularität u ∈ H g+1 (a, b)<br />

�u − uh�1 ≤ C h k−1 |u|k , (6.96)<br />

�u − uh�1 ≤ h g |u|g+1 .<br />

Für die linearen Elemente (d.h. g = 1) ist dies schon in Satz 6.21 gezeigt.<br />

Wegen der Einbettung (6.70) gilt die gleiche Konvergenzordnung auch in � · �∞ (bzw.<br />

auch in der Hölder–Norm � · �∞,α). Das ist aber nicht optimal.<br />

Trivialerweise gilt die Abschätzung auch in � · �0. Hier können wir eventuell eine Verbesserung<br />

in der Ordnung um 1 erwarten, da<br />

Satz 6.37 (von Aubin und Nitsche)<br />

Betrachte zu ˜ f ∈ L 2 (a, b) das adjungierte Problem:<br />

Gesucht ist u = u ˜ f ∈ V , so daß<br />

a(v, u) = ( ˜ f, v) für alle v ∈ V . (6.97)<br />

Ist das adjungierte Problem regulär, d.h. gilt auch u ˜ f ∈ H 2 (a, b) und<br />

dann folgt für die Lösungen von (V ) bzw. (Vh):<br />

für eine Konstante C > 0.<br />

Beweis:<br />

und<br />

|u ˜ f |2 ≤ C� ˜ f�0 , (6.98)<br />

�u − uh�0 ≤ C h�u − uh�1<br />

�u − uh�0 = sup<br />

0�= ˜ f∈L2 |(u − uh,<br />

(a,b)<br />

˜ f)|<br />

� ˜ f�0<br />

(u − uh, ˜ f) = ( ˜ f, u − uh) ���� = a(u − uh, uf ˜) ���� = a(u − uh, uf˜ − vh)<br />

(6.97)<br />

(V ),(Vh),Vh⊂V<br />

276


für ein beliebiges vh ∈ Vh.<br />

Für vh = Ih(u ˜ f ) gilt<br />

Zusammenfassend folgt<br />

�u ˜ f − vh�1 ≤ C h|u ˜ f |2 nach Satz 6.36<br />

≤ C h� ˜ f�0 nach (6.98) .<br />

�u − uh�0 ≤ C�u − uh�1 sup<br />

0�= ˜ f∈L2 �u<br />

(a,b)<br />

˜ f − Ih(uf ˜)�1 � ˜ f�0<br />

≤ C�u − uh�1 h .<br />

Satz 6.37 sichert also unter den Voraussetzungen von Satz 6.36 eine Ordnungserhöhung,<br />

wenn die Voraussetzungen von Satz 6.36 nicht gelten, aber die von Satz 6.37, so ist<br />

noch lineare Konvergenz bzgl. � · �0 gesichert.<br />

Die Flexibilität der FEM kann in zweierlei Weise genutzt werden:<br />

• h–Verfeinerung bei festem Ansatz ˆ P (sogenannte h–Methode):<br />

Die empfiehlt sich zur Genauigkeitssteigerung und kann auch lokal angewendet<br />

werden, z.B. da wo |u|k,Kl groß ist (vgl. (6.95)). Da u unbekannt ist, geben a posteriori<br />

Fehlerindikoren (d.h. von uh abhängige, (leicht) berechenbare Ausdrücke)<br />

an, wo verfeinert werden soll.<br />

• p–Verfeinerung bei festem h (sogenannte p–Methode):<br />

Hier wird h, d.h. die Triangulierung festgehalten, aber lokal der Grad des Ansatzraums<br />

erhöht. Dadurch steigt (bei entsprechender Glattheit der Lösung) lokal die<br />

Konvergenzordnung.<br />

277<br />

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!