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 />
✷