Numerik gewöhnlicher Differentialgleichungen

52
Kapitel 3 Numerik gew¨ ohnlicher Differentialgleichungen 3 Inhalt dieses Kapitels ist die numerische L¨ osung eines Systems gew¨ ohnlicher Differentialgleichungen y (x)= f (x, y (x)) (3.1) bzw. ausgeschrieben in Komponenten y 1 (x) = f 1 (x, y 1 (x),...,y n (x)), y 2 (x) = f 2 (x, y 1 (x),...,y n (x)), . . . . . . y n (x) = f n (x, y 1 (x),...,y n (x)). Man unterscheidet dabei zwischen Anfangswertproblemen und Randwert- problemen. Bei ersteren fordert man y (x 0 )= y 0 an einer Stelle x 0 , bei letzteren dagegen r(y (a),y (b)) = 0 mit einer vorgegebenen Funktion r und einem Intervall [a, b]. 54

Transcript of Numerik gewöhnlicher Differentialgleichungen

Page 1: Numerik gewöhnlicher Differentialgleichungen

Kapitel 3

Numerik gewohnlicher Differentialgleichungen

3

Inhalt dieses Kapitels ist die numerische Losung eines Systems gewohnlicher

Differentialgleichungen

y′(x) = f(x, y(x)) (3.1)

bzw. ausgeschrieben in Komponenten

y′1(x) = f1(x, y1(x), . . . , yn(x)),

y′2(x) = f2(x, y1(x), . . . , yn(x)),...

...

y′n(x) = fn(x, y1(x), . . . , yn(x)).

Man unterscheidet dabei zwischen Anfangswertproblemen und Randwert-

problemen. Bei ersteren fordert man

y(x0) = y0

an einer Stelle x0, bei letzteren dagegen

r(y(a), y(b)) = 0

mit einer vorgegebenen Funktion r und einem Intervall [a, b].

54

Page 2: Numerik gewöhnlicher Differentialgleichungen

3.1 Beispiele und Grundlagen

Bevor wir die Problemklasse naher analysieren, wollen wir zwei Beispiele

kennenlernen. Als erstes wird die chemische Reaktionskinetik behandelt,

danach folgen elektrische Schaltkreise. In beiden Beispielen verwendet man

mathematische Modelle, um einen realen Vorgang zu beschreiben. Ohne Ver-

einfachungen und Modellannahmen ist dies im Allgemeinen nicht moglich,

doch wird man von einem vernunftigen Modell verlangen, dass es die inter-

essierenden Phanomene bzw. Effekte hinreichend gut widerspiegelt.

Chemische Reaktionskinetik

Die Reaktionskinetik beschreibt den zeitlichen Ablauf chemischer Reaktio-

nen, und zwar auf einer Makroebene. Man interessiert sich nicht fur das

Verhalten einzelner Molekule, sondern fur Stoffkonzentrationen in einem Re-

aktionsgefaß und nimmt an, dass sie dem Massenwirkungsgesetz (bzw. Ver-

einfachungen daraus) unterliegen.

Betrachten wir dazu zwei Gase A und B unter den Annahmen konstan-

ter Druck, konstantes Volumen und konstante Temperatur. Im Fall einer

monomolekularen Reaktion

Ak

−→ B

mit Reaktionsgeschwindigkeit k gilt fur die zeitliche Anderung der Konzen-

trationen [A] und [B]

d

dt[A] = ˙[A] = −k[A], ˙[B] = k[A]

Die Exponentialfunktion als Losung beschreibt also den zeitlichen Verlauf

der Reaktion. Wegen ˙[A] + ˙[B] = 0 folgt [A] + [B] = konstant, was man als

Massenerhaltung bezeichnet.

Komplexer und in der Anwendung bedeutsamer sind bimolekulare Reaktio-

55

Page 3: Numerik gewöhnlicher Differentialgleichungen

nen. Das Reaktionsschema lautet hier

A + Bk

−→ C + D

mit Substanzen A, B, C, D. In diesem Fall ergeben sich die Differentialglei-

chungen fur die Konzentrationen zu

˙[A] = −k[A][B], ˙[B] = −k[A][B],˙[C] = k[A][B], ˙[D] = k[A][B].

(3.2)

Im allgemeinen Fall liegen insgesamt n Substanzen sowie m Reaktionen

zwischen ihnen vor,

n∑

i=1

αijAikj

−→

n∑

i=1

γijAi, j = 1, . . . , m.

Dabei bezeichnen die ganzen positiven Zahlen αij, γij die Anteile der Sub-

stanzen (stochiometrische Konstanten) und die reellen Parameter kj die

unterschiedlichen Reaktionsgeschwindigkeiten. Als Differentialgleichung fur

die Konzentration der Substanz Ai hat man dann

˙[Ai] =m∑

j=1

(γij − αij)kj

n∏

l=1

[Al]αlj , i = 1, . . . , n. (3.3)

Die Vorschrift (3.3) stellt ein allgemeines Schema dar, um Differentialglei-

chungsmodelle fur chemische Reaktionen zu erzeugen. Charakteristisch ist

dabei die polynomiale rechte Seite.

Beispiel 3.1: Brusselator (Lefever/Nicolis 1971)

Gegeben sind n = 6 Substanzen A, B, D, E, X, Y und die m = 4 Ubergange

Ak1−→ X, B + X

k2−→ Y + D,

2X + Yk3−→ 3X, X

k4−→ E

mit Reaktionsgeschwindigkeiten k1, . . . , k4. Anwendung der Regeln fur mono- und bimolekulare

Reaktionen ergibt (ohne [·] Notation)

A = −k1A, X = k1A,

B = −k2BX, X = −k2BX,

Y = k2BX, D = k2BX,

X = −k4X, E = k4X.

56

Page 4: Numerik gewöhnlicher Differentialgleichungen

Die dritte Reaktion ist autokatalytisch trimolekular und liefert nach der allgemeinen Regel (3.3)

die Beitrage

X = k3X2Y, Y = −k3X

2Y.

Mit Sortieren nach Unbekannten und Aufsummieren der rechten Seiten folgen die gekoppelten

Differentialgleichungen

A = −k1A,

B = −k2BX,

D = k2BX, (3.4)

E = k4X,

X = k1A − k2BX + k3X2Y − k4X,

Y = k2BX − k3X2Y.

Fazit: Ein nichtlineares Differentialgleichungssystem mit polynomialer rechter Seite!

Analytische Losung?

Als Vorbereitung fur spater werden die Gleichungen (3.4) vereinfacht: Die Differentialgleichungen

fur D und E werden weggelassen (warum?), A und B werden als konstant angenommen. Wir

setzen ki = 1, schreiben x statt t sowie y1(x) := X(x), y2(x) := Y (x).

(Notationsvereinbarung: y(t) mit Zeit t : ddt

y = y, y(x) mit unabh. Var. x : ddx

y = y′)

Ubrig bleibt das sogenannte Brusselatormodell (woher stammt der Name?)

y′1 = A + y21y2 − (B + 1)y1,

y′2 = By1 − y21y2,

(3.5)

das eine hochinteressante nichtlineare Dynamik aufweist.

Elektrische Schaltkreise

Die Beschreibung einer Schaltung als Netzwerk elektrischer Bauelemente

bildet die Grundlage fur Modellbildung und numerische Simulation hoch-

integrierter Systeme (Speicherchips und Prozessoren). Auf diese Art und

Weise kann das transiente Verhalten der Ausgangssignale als Reaktion auf

die Eingangssignale ohne zeit- und konstenintensive experimentelle Unter-

suchungen analysiert werden.

Wie bei der Reaktionskinetik existiert auch hier ein auf physikalischen Ge-

setzmaßigkeiten basierender Kalkul, mit dessen Hilfe die Netzwerkgleichun-

57

Page 5: Numerik gewöhnlicher Differentialgleichungen

gen aufgestellt werden. Wesentlich dabei sind die Kirchhoffschen Regeln

Die Summe der

{

Teilstrome in jedem Knoten

Teilspannungen in jeder Masche

}

ist Null.

Zusammen mit den Gleichungen fur die Bauelemente (Widerstande, Kapa-

zitaten, Induktivitaten, Transistoren, Strom- und Spannungsquellen) erge-

ben sich dann die Netzwerkgleichungen, die den gesamten Schaltkreis be-

schreiben.

Die am weitesten verbreitete Technik, die modifizierte Knotenspannungs-

analyse (MNA, Modified Nodal Analysis), fuhrt auf Differentialgleichungen

der Form

Cy = f(y, t),

wobei die Unbekannten y aus Spannungen und Stromen zusammengesetzt

sind. Die Eintrage in der Matrix C bestehen aus Kapazitaten. Falls keine

solchen auftreten (und keine Induktivitaten), ist C ≡ 0, und die Gleichungen

reduzieren sich auf den stationaren Fall.

In vielen Anwendungen ist die Matrix C singular, und es liegt somit keine

gewohnliche Differentialgleichung vor, sondern ein sogenanntes differentiell-

algebraisches System. Einzelheiten dazu in Kapitel 6. Das folgende Beispiel

dagegen enthalt neben einer Kapazitat noch eine Induktivitat und wird

durch eine Differentialgleichung 2. Ordnung beschrieben.

Beispiel 3.2: Elektrischer Schwingkreis

Wir betrachten als einfaches Beispiel einen elektrischen Schwingkreis, der aus einer Spannungs-

quelle U(t), einer Kapazitat C, einer Induktivitat L und einem Widerstand R besteht, siehe

Abb. 1.

Fur die Spannungsabfalle UR, UC sowie UL gelten die Gesetze

UR = RI, UC = Q/C, UL = LI

wobei I den fließenden Strom und Q die Ladung der Kapazitat bezeichnen. Die Kirchhoffschen

Regeln (hier die Maschenregel) ergeben

U = UR + UC + UL.

58

Page 6: Numerik gewöhnlicher Differentialgleichungen

U(t)

L

C

R

Abbildung 1: Elektrischer Schwingkreis

Mit I = Q und Einsetzen erhalt man fur die an der Kapazitat anliegende Spannung UC die

Differentialgleichung

LC UC + RC UC + UC = U. (3.6)

Insgesamt also eine uber U(t) gesteuerte Schwingung, die durch das Produkt RC gedampft wird.

Aussagen aus der Theorie gewohnlicher

Differentialgleichungen

Als Einstieg und Wiederholung beginnen wir mit einem Blick auf lineare

Differentialgleichungen. Fur das skalare lineare Anfangswertproblem (AWP)

y′ = a · y + b, y(x0) = y0,

liefert der Losungsansatz z(x) = ea(x−x0) · z0 eine Losung des homogenen

Falls z′ = az. Durch Variation der Konstanten folgt

y(x) = z(x)v(x) =⇒ y(x) =

(b

a+ y0

)

ea(x−x0) −b

a.

Dieses Vorgehen verallgemeinert man schnell auf Systeme linearer Differen-

tialgleichungen

y′ = A · y + b, A ∈ Rn×n, b ∈ R

n.

Wir nehmen an, dass A diagonalisierbar ist (d.h. n l.u. EV besitzt). Mit

z(x) = exp(A(x − x0))z0 hat man eine Losung des homogenen Systems

59

Page 7: Numerik gewöhnlicher Differentialgleichungen

z′ = Az. Dabei stellen die Spalten der Matrix

exp(Aτ) =∞∑

k=0

(Aτ)k

k!Matrizenexponentielle (3.7)

ein Fundamentalsystem dar. Die Variation der Konstanten fur den inhomo-

genen Fall ergibt sich hier zu y(x) = exp(A(x − x0)) · v(x).

Im Fall nichtlinearer rechter Seiten (bzw. Differentialgleichungen) kommt

man mit analytischen Losungstechniken dagegen meist nicht mehr weiter.

Beispiel 3.3: Van–der–Pol–Gleichung

Wir betrachten zunachst die lineare Differentialgleichung 2. Ordnung z(t) + αz(t) + z(t) = 0,

vergleiche den Schwingkreis (3.6). Fur α > 0 hat sie fallende (gedampfte/stabile) Losungen, fur

α > 0 wachsende (instabile) Losungen, und fur α = 0 resultieren periodische Losungen. Setzt

man α = α(z), so dass α < 0 fur kleine z und α > 0 fur große z, so kann man ein sich selbst

regulierendes (steuerndes) Verhalten erwarten, das in eine periodische Losung hineinlauft. Die

Wahl α(z) := µ(z2 − 1) mit konstantem Parameter µ > 0 erfullt diese Erwartung und liefert die

Van-der-Pol-Gleichung

z + µ(z2 − 1)z + z = 0. (3.8)

Eine allgemeine geschlossene Losung ist nicht bekannt!

Es ist vorteilhaft, die Gleichung (3.8) auf die neue Zeit x = t/µ zu transformieren (die Periode

hangt dann nicht mehr von µ ab). Mit u(x) = z(µx) = z(t(x)), u′ = µz, folgt

1

µ2u′′ + (u2 − 1)u′ + u = 0.

Von besonderem Interesse ist der Fall µ ≫ 1, bei dem wir ε := 1/µ2 ≪ 1 setzen (ein sogenann-

tes singular gestortes System). In einem letzten Schritt fuhren wir noch die Koordinaten nach

Lienhard ein,

y2(x) := u(x), y1(x) := εy′2 + (y32/3 − y2),

und erhalten so das Systemy′1 = −y2,

εy′2 = y1 − y32/3 + y2.

(3.9)

Wie verlaufen die Losungen von (3.9) im oben skizzierten Richtungsfeld?

60

Page 8: Numerik gewöhnlicher Differentialgleichungen

−1.5 −1 −0.5 0 0.5 1 1.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

y

z

Abbildung 2: Richtungsfeld der Van-der-Pol-Gleichung

Bevor wir zum Existenz- und Eindeutigkeitssatz kommen, seien noch drei

oft hilfreiche Bemerkungen erwahnt:

(i) Differentialgleichungen hoherer Ordnung lassen sich durch Hilfsvaria-

blen auf Differentialgleichungen erster Ordnung zuruckzufuhren:

y′′ = −ω2y ⇔ y′ = v, v′ = −ω2y.

(ii) Nichtautonome Gleichungen y′ = f(x, y(x) transformiert man mittels

yn+1(x) := x und fn+1(x, y) := 1 in ein autonomes System.

(iii) Durch Integration uberfuhrt man y′ = f(x, y) in

y(x) = y0 +

x∫

x0

f(t, y(t)) dt .

Falls f = f(t), ist die Quadratur als Sonderfall enthalten!

61

Page 9: Numerik gewöhnlicher Differentialgleichungen

Wir betrachten nun das allgemeine Anfangswertproblem

y′(x) = f(x, y(x)), y(x0) = y0, (3.10)

wobei f : [a, b]×Rn → R

n und x0 ∈ [a, b], y0 ∈ Rn. Die rechte Seite f heißt

(global) Lipschitz–stetig im Definitionsgebiet (oder “Streifen”)

D := {(x, y) : a ≤ x ≤ b, y ∈ Rn},

falls

‖f(x, y) − f(x, z)‖ ≤ L · ‖y − z‖ ∀ (x, y), (x, z) ∈ D. (3.11)

Einfaches Kriterium: Falls f sowie ∂f/∂y stetig auf dem Definitionsgebiet

D sind und ∂f/∂y beschrankt ist, ‖∂f/∂y‖ ≤ L, folgt daraus die Lipschitz-

stetigkeit.

Beweisskizze: Fur je zwei Punkte (x, y), (x, z) in D gilt (MWS der Differentialrechnung)

‖f(x, y) − f(x, z)‖ ≤ sup(t,v)∈D‖∂f(t, v)/∂v‖ ‖y − z‖.

Mit dem Begriff der Lipschitzstetigkeit zeigt man dann (Picard-Lindelof,

s. Analysis)

Satz 3.1 Falls die rechte Seite f auf dem Definitionsgebiet D stetig ist

und der Lipschitzbedingung (3.11) genugt, besitzt das Anfangswertproblem

(3.10) eine eindeutige, stetig differenzierbare Losung y auf dem ganzen In-

tervall [a, b].

Eine hohere Glattheit der Losung hangt von der Glattheit der rechten Seite

f bzw. ihrer Ableitungen ∂pf/∂yp ab. Falls alle partiellen Ableitungen bis

zur Ordnung p stetig sind, ist auch y insgesamt p mal stetig differenzierbar.

Lasst man dagegen die Lipschitzstetigkeit als Voraussetzung weg und geht

nur von einer stetigen rechten Seite f aus, kann man nur noch die Existenz

einer Losung nachweisen, die Eindeutigkeit geht verloren (Existenzsatz von

Peano).

62

Page 10: Numerik gewöhnlicher Differentialgleichungen

Hinreichend fur Existenz und Eindeutigkeit ist im ubrigen bereits eine

abgeschwachte Form der Lipschitz-Bedingung (3.11), die lokale Lipschitz-

Stetigkeit. Sie ist gegeben, falls es zu jeder kompakten Teilmenge K ⊂ D

eine Lipschitzkonstante LK gibt mit

‖f(x, y) − f(x, z)‖ ≤ LK · ‖y − z‖ ∀ (x, y), (x, z) ∈ K. (3.12)

Allerdings kann mit dieser schwacheren Voraussetzung nicht die Existenz

auf dem ganzen Intervall [a, b] garantiert werden.

3.2 Einfluß von Storungen

In diesem Abschnitt steht die Kondition des Anfangswertproblems im Mit-

telpunkt. Wie wirken sich Storungen in den Anfangswerten und in der rech-

ten Seite auf die Losung aus?

Satz 3.2 Storung der Anfangswerte

Falls die rechte Seite f der Lipschitzbedingung (3.11) genugt, gilt fur zwei

Losungen y(x) und z(x) mit Anfangswerten y(x0), z(x0) die Abschatzung

‖y(x) − z(x)‖ ≤ ‖y(x0) − z(x0)‖eL|x−x0|.

Beweis: Aus y′ = f(x, y) und z′ = f(x, z) folgt mit Integration

y(x) − z(x) = y(x0) − z(x0) +

x∫

x0

(f(t, y) − f(t, z)) dt

und damit

‖y(x) − z(x)‖︸ ︷︷ ︸

=:m(x)

≤ ‖y(x0) − z(x0)‖ + L

x∫

x0

‖y(t) − z(t)‖︸ ︷︷ ︸

=m(t)

dt

bzw.

m(x) ≤ ‖y(x0) − z(x0)‖ + L

x∫

x0

m(t) dt. (∗)

63

Page 11: Numerik gewöhnlicher Differentialgleichungen

m(x) ist stetig und

q(x) := e−Lx

x∫

x0

m(t) dt

stetig differenzierbar. Also gilt

m(x) =(eLxq(x)

)′= LeLxq(x) + eLxq′(x). (∗∗)

Eingesetzt in (∗):

LeLxq(x) + eLxq′(x) ≤ ‖y0 − z0‖ + LeLxq(x)

=⇒ q′(x) ≤ ‖y0 − z0‖e−Lx

=⇒ q(x) =

x∫

x0

q′(t) dt ≤ ‖y0 − z0‖(e−Lx0 − e−Lx

)/L

Abschatzungen eingesetzt in (∗∗):

m(x) ≤ ‖y0 − z0‖(eL(x−x0) − 1 + 1)

(Bei Integration in die “Vergangenheit” mit x0 ≥ x analoges Vorgehen). �

}z

y

x x

< e |y -z |0

0

0

0 0L(x-x )0

Abbildung 3: Skizze zu Satz 3.2

Warum konnen sich zwei Losungskurven nicht schneiden?

64

Page 12: Numerik gewöhnlicher Differentialgleichungen

Im Beweis von Satz 3.2 ist eine vereinfachte Fassung des Lemmas von Gron-

wall versteckt, das eine wichtige Rolle bei verschiedenen Abschatzungen

spielt. In der vollstandigen Fassung lautet es:

Lemma 3.3 Gronwall

Sei m(x) eine positive, stetige Funktion sowie ρ ≥ 0, ε ≥ 0. Falls

m(x) ≤ ρ + ε(x − x0) + L

∫ x

x0

m(t) dt,

gilt die Abschatzung

m(x) ≤ ρeL(x−x0) +ε

L

(

eL(x−x0) − 1)

.

Mit dem Lemma von Gronwall kann man die Abschatzung uber die Aus-

wirkung von Storungen in den Anfangswerten erweitern. Sei y eine exakte

Losung und z eine approximative Losung, die einen Defekt δ(x) aufweist,

z′(x) = f(x, z(x)) + δ(x), ‖δ(x)‖ ≤ ε.

Mit m(x) := ‖y(x) − z(x)‖ und ρ := ‖y(x0) − z(x0)‖ sind die obigen Vor-

aussetzungen erfullt, denn

y(x) − z(x) = y(x0) − z(x0) +

∫ x

x0

δ(t) dt +

∫ x

x0

(f(t, y) − f(t, z)) dt.

Anwendung des Gronwallschen Lemmas liefert

‖y(x) − z(x)‖ ≤ ‖y(x0) − z(x0)‖eL(x−x0) +

ε

L

(

eL(x−x0) − 1)

(3.13)

als Verallgemeinerung von Satz 3.2. Der zweite Term beinhaltet dabei die

Auswirkung des Defekts / der Storung δ(x). Auffallend ist die zentrale Rolle

der Exponentialfunktion. Falls die Lipschitzkonstante L sehr groß ist, wird

eLx sehr schnell wachsen, und (3.13) stellt dann eine sehr pessimistische

Aussage dar. In den allermeisten Fallen sind jedoch Anfangswertprobleme

deutlich besser konditioniert als es (3.13) suggeriert.

65

Page 13: Numerik gewöhnlicher Differentialgleichungen

3.3 Einschrittverfahren

Dieser Abschnitt stellt eine erste und sehr wichtige Verfahrensklasse zur

Losung von Anfangswertproblemen vor, die sogenannten Einschrittverfah-

ren. Allgemein basieren numerische Verfahren fur AWPe auf folgendem An-

satz: Man fuhrt ein Gitter auf dem betrachteten Intervall [a, b] ein,

a = x0 < x1 < x2 < . . . < xn−1 < xn = b,

d.h. man diskretisiert das Kontinuum [a, b]. Die Schrittweiten hi = xi+1 −

xi mussen nicht aquidistant sein. Dann berechnet man, ausgehend von y0,

sukzessive Nahrungen yi.= y(xi) an den diskreten Punkten,

y0 −→ y1 −→ y2 −→ . . . −→ yn.

Man spricht dabei allgemein von Diskretisierungsverfahren und unterschei-

det speziell:

a) Einschrittverfahren: Nur die Daten xi, yi, hi gehen in die Berechnung

von yi+1 ein.

b) Mehrschrittverfahren: Hier gehen Daten xk, yk, hk fur k = i−m, . . . , i

aus der “Vergangenheit” in die Berechnung von yi+1 ein. Siehe Kap. 4.

Beispiele fur Einschrittverfahren

Zunachst betrachten wir einige elementare Beispiele (mit hi = h konstant),

um einen ersten Eindruck von Einschrittverfahren zu bekommen. Altestes

und in manchen Anwendungen immer noch gebrauchliches Verfahren ist das

explizite Eulerverfahren

y1 = y0 + hf(x0, y0),

y2 = y1 + hf(x1, y1),...

...

yi+1 = yi + hf(xi, yi). (3.14)

66

Page 14: Numerik gewöhnlicher Differentialgleichungen

y

xhx x

i i+1

yi

i+1yy(xi+1)...

Abbildung 4: Expliziter Euler (Eulerscher Polygonzug)

Die wesentliche Idee besteht in der wiederholten Anwendung der Vorschrift,

durch die man eine Folge von diskreten Approximationen erzeugt. Man

spricht auch vom Eulerschen Polygonzugverfahren, da die diskreten Werte

der yi aus einem immer langer werdenden Polygonzug folgen. Damit liegt

zusatzlich ein linearer Interpolant vor, und man hat de facto auch eine

kontinuierliche Approximation konstruiert.

Drei Interpretationen des Eulerverfahrens ergeben sich direkt:

(i) Geometrisch: Lege die Tangente in (xi, yi) an.

(ii) Vorwarts-Differenzenquotient (yi+1 − yi)/h.= y′(xi) = f(xi, yi)

(iii) Quadraturformel y(xi+1) = y(xi) +

xi+1∫

xi

f(t, y(t)) dt

︸ ︷︷ ︸.=h·f(xi,yi)

Als zweites Einschrittverfahren betrachten wir das Implizite Eulerverfahren

yi+1 = yi + h(f(xi+1, yi+1), (3.15)

das sich als Ruckwarts-Differenzenquotient interpretieren lasst. Wahrend

beim expliziten Euler nur eine Auswertung der rechten Seite f notig ist,

67

Page 15: Numerik gewöhnlicher Differentialgleichungen

um einen Integrationsschritt durchzufuhren, erfordert der implizite Euler

die Losung eines nichtlinearen Systems fur yi+1!

Letztes Beispiel ist die Trapezregel

yi+1 = yi +h

2(f(xi, yi) + f(xi+1, yi+1))

︸ ︷︷ ︸

.=

xi+1∫

xi

f(t,y(t)) dt

, (3.16)

bei der man deutlich die Verwandschaft zur numerischen Quadratur sieht.

Im Folgenden beschranken wir uns auf explizite Einschrittverfahren; die im-

pliziten spielen hauptsachlich bei sogenannten steifen Differentialgleichun-

gen eine Rolle.

Konsistenz und Konvergenz

Als Notation fur Einschrittverfahren (ESV) verwendet man das Schema

yi+1 = yi + hiΦ(xi, yi, hi) (3.17)

mit der Verfahrensfunktion oder Inkrementfunktion Φ. Beim expliziten Eu-

ler (3.14) ist Φ(xi, yi, hi) = f(xi, yi).

Wie gut approximiert yi+1 die exakte Losung y(xi+1)? Zur Analyse der Ver-

fahren fuhrt man verschiedene Begriffe ein. Der erste ist eine lokale Eigen-

schaft:

Definiton 3.1 Lokaler Diskretisierungsfehler

Sei y(x) exakte Losung des Anfangswertproblems y′ = f(x, y), y(x0) = y0,

und y1 = y0 + hΦ(x0, y0, h) die numerische Approximation nach einem

Schritt. Der lokale Diskretisierungsfehler ist definiert als

τ(h) :=y(x0 + h) − y1

h. (3.18)

68

Page 16: Numerik gewöhnlicher Differentialgleichungen

Nach (3.18) gibt τ(h) die Differenz von exakter Losung und numerischer

Approximation, skaliert mit h, an. Eine zweite Interpretation ist

τ(h) =y(x0 + h) − y0

h︸ ︷︷ ︸Sehnensteigung

exakt

−y1 − y0

h︸ ︷︷ ︸Steigung

Approx.

.

Schließlich gibt es eine dritte Interpretation

τ(h) =y(x0 + h) − y0

h− Φ(x0, y0, h) ,

die τ(h) als Defekt sieht, der beim Einsetzen der exakten Losung in die

Verfahrensvorschrift entsteht. Formal schreibt man oft auch τ(x, y, h), um

die Abhangigkeit von x sowie y starker zu betonen.

Beispiel 3.4: Lokaler Diskretisierungsfehler beim expliziten Euler

τ(h) = 1h(y(x0 + h) − y1) = 1

h(y(x0 + h) − y0 − hf(x0, y0))

Taylorentw. y(x0 + h) = y(x0) + hy′(x0) + 12h2y′′(x0) + . . .

= y0 + hf(x0, y0) + 12h2(fx + fyf)(x0, y0) + . . .

=⇒ τ(h) = h · 12(fx + fyf)(x0, y0) + O(h2)

Man spricht beim Euler von einem Verfahren der Konsistenzordnung 1.

Nach dem lokalen Diskretisierungsfehler fuhren wir einen weiteren Begriff

ein, die Konsistenz:

Definition 3.2 Konsistenzordnung

Ein Verfahren heißt konsistent, falls der lokale Diskretisierungsfehler fur

h → 0 ebenfalls gegen 0 strebt:

‖τ(h)‖ ≤ γ(h) mit limh→0

γ(h) = 0 .

Das Verfahren hat die Konsistenzordnung p, falls

‖τ(h)‖ = O(hp) .

Die Konsistenzordnung beschreibt die Qualitat der numerischen Approxi-

mation in einem Schritt. Eigentlich interessiert man sich aber fur die Qua-

litat nach n Schritten. Dazu definiert man drittens

69

Page 17: Numerik gewöhnlicher Differentialgleichungen

Definition 3.3 Globaler Diskretisierungsfehler

Der globale Diskretisierungsfehler eines Verfahrens ist die Differenz

en(X) = y(X) − yn mit X = xn fest, n variabel.

Ein Verfahren ist konvergent, falls

limn→∞

‖en(X)‖ = 0 .

Konvergenz bedeutet also:

Fur feiner werdendes Gitter strebt der globale Fehler gegen 0.

Wie hangen Konsistenz und Konvergenz zusammen? Die Analysetechnik ist

in Abb. 5 skizziert.

y

x x x x =Xx

u (x

u (x )

u (x )y

y

y

2

n210

01

2

n)

n

n0

1.

.

.

. ..

Abbildung 5: Analyse des globalen Fehlers

Zum diskreten Wert yi sei ui(x) die exakte Losung der Differentialgleichung

mit Anfangswert ui(xi) = yi fur i = 0, . . . , n. Insbesondere ist u0 = y die

exakte Losung zum Anfangswert y0. Der globale Fehler lautet dann

y(xn) − yn = u0(xn) − yn

70

Page 18: Numerik gewöhnlicher Differentialgleichungen

und lasst sich durch die Differenzen ui − ui+1 ausdrucken:

u0(xn) − yn = u0(xn) − u1(xn) + u1(xn) − u2(xn) + . . .

. . . − un−1(xn) + un−1(xn) − yn

=n−2∑

i=0

[ui(xn) − ui+1(xn)] + un−1(xn) − yn.

Damit folgt

‖u0(xn) − yn‖ ≤ ‖un−1(xn) − yn‖ +n−2∑

i=0

‖ui(xn) − ui+1(xn)‖

≤ ‖un−1(xn) − yn‖ +n−2∑

i=0

‖ui(xi+1) − ui+1(xi+1)‖eL|xn−xi+1|.

Bei der letzten Abschatzung wurde Satz 3.2 angewandt, um die Diffe-

renz ‖ui(xn) − ui+1(xn)‖ auf die Differenz der Anfangswerte ‖ui(xi+1) −

ui+1(xi+1)‖ zuruckzuspielen. Wegen yi+1 = ui+1(xi+1) hat man nun

‖u0(xn) − yn‖ ≤n−1∑

i=0

‖ui(xi+1) − yi+1‖eL|xn−xi+1|.

Die ‖·‖–Beitrage auf der rechten Seite sind lokale Fehler nach einem Schritt.

Fur ein konsistentes Verfahren ist demnach

‖ui(xi+1) − yi+1‖ ≤ c · hp+1i ≤ c · hp

max · hi

mit hmax = maxi

hi. Schließlich bekommen wir fur den globalen Fehler

‖u0(xn) − yn‖ ≤ c · hpmax

n−1∑

i=0

hieL|xn−xi+1|

≤ c · hpmax

xn∫

x0

eL(xn−t) dt

unter der Annahme xn > x0. Mit Ausintegrieren lautet das Resultat:

71

Page 19: Numerik gewöhnlicher Differentialgleichungen

Satz 3.4 Konvergenz von Einschrittverfahren

Sei f stetig sowie Lipschitzstetig mit Konstante L nach (3.11). Weiter habe

das Einschrittverfahren Konsistenzordnung p, d.h.

‖τ(h)‖ = O(hp) .

Dann gilt fur den globalen Diskretisierungsfehler

‖en(X)‖ ≤ chpmax

eL|X−x0| − 1

L

wobei hmax = maxi

hi.

Diskussion von Satz 3.4

1) Ordnung globaler Diskretisierungsfehler = Ordnung lokaler Diskretisie-

rungsfehler. Man sagt bei ESV auch kurz: Konsistenz =⇒ Konvergenz

2) Variable Schrittweiten sind zugelassen. Der Verstarkungsfaktor1L(eL(x−x0) − 1) ist jedoch von den Schrittweiten unabhangig.

4) Manchmal findet man die Schreibweise e(h, x) statt en(x) fur den glo-

balen Diskretisierungsfehler, um die Abhangigkeit von der Schrittweite

zu betonen. Oft besitzt e(h, x) eine asymptotische Entwicklung in h.

Einschrittverfahren sind demnach einfach zu analysieren: Man ermittelt den

lokalen Fehler (durch Taylorreihenentwicklung) und bekommt aus der Kon-

sistenz bereits globale Konvergenz.

72

Page 20: Numerik gewöhnlicher Differentialgleichungen

3.4 Runge–Kutta–Verfahren

Runge–Kutta–Verfahren sind spezielle ESV, die in jedem Schritt die rechte

Seite mehrmals “ausloten” und die daraus gewonnenen Zwischenergebnisse

oder Zuwachse / Korrekturen linear kombinieren.

Beispiel 3.5: Heun–Verfahren

x x

y

K

K

0 1

y0

1

1

2

Abbildung 6: Ansatz fur das Verfahren nach Heun

Diskretisierungsvorschrift

y1 = y0 + 12h(K1 + K2)

mit Korrekturen K1 = f(x0, y0),

K2 = f(x1, y0 + h · K1),

bzw. mit Verfahrensfunktion Φ:

y1 = y0 + h · Φ(x0, y0, h) ,

Φ(x, y, h) = 12 [f(x, y) + f(x + h, y + hf(x, y))]

= 12(K1 + K2)

Das allgemeine Diskretisierungsschema fur einen Schritt eines Runge–Kutta–

Verfahrens lautet

y1 = y0 + h(b1K1 + b2K2 + . . . + bsKs) (3.19)

mit Korrekturen / Zuwachsen

Ki = f

(

x0 + cih, y0 + hi−1∑

j=1

aijKj

)

, i = 1, . . . , s. (3.20)

73

Page 21: Numerik gewöhnlicher Differentialgleichungen

Die Verfahrenskoeffizienten bi, ci fur i = 1, . . . , s sowie aij fur i = 1, . . . , s

und j ≤ i − 1 legen die Methode fest, zusammen mit der Stufenzahl s.

Beispiel 3.6: Heun–Verfahren

Stufenzahl s = 2 und Koeffizienten

b1 =1

2, b2 =

1

2, c1 = 0, c2 = 1, a21 = 1.

Beispiel 3.7: Modifiziertes Euler–Verfahren

y1 = y0 + h · K2

mit K1 = f(x0, y0),

K2 = f(x0 + h

2 , y0 + h2 · K1

).

Also s = 2 Stufen und Koeffizienten b1 = 0, b2 = 1, c1 = 0, c2 = 12 , a21 = 1

2 .

Praktischerweise fasst man die Koeffizienten in einem Tableau, dem soge-

nannten Butcher–Tableau, zusammen:

c1 0

c2 a21. . . 0

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

cs as1 . . . ass−1 0

b1 b2 . . . bs

bzw. c A

bT

Die Verfahren sind dann gegeben uber z.B. die Koeffizienten

0

1 112

12

Heun

012

12

0 1

mod. Euler

012

12

12 0 1

2

1 0 0 116

26

26

16

“klassisches Runge–Kutta–Verfahren”

(Runge 1895, Kutta 1901)

74

Page 22: Numerik gewöhnlicher Differentialgleichungen

Koeffizientenbestimmung

Wie kommt man auf die Koeffizienten? Die Koeffizienten sind zunachst

freie Parameter des Verfahrens. Sie werden so bestimmt, dass das Verfahren

“moglichst gut” ist, d.h. eine moglichst hohe Ordnung erreicht. Wesentliches

Hilfsmittel bei der Bestimmung sind Taylorreihenentwicklungen der exakten

Losung und der numerischen Naherung.

Als Beispiel fur eine Koeffizientenbestimmung (den sogenannten Abgleich)

betrachte man den Fall s = 2:

Das Runge–Kutta–Verfahren lautet

y1 = y0 + h(b1K1 + b2K2) ,

K1 = f(x0 + c1h, y0) , K2 = f(x0 + c2h, y0 + ha21K1).

Taylorentwicklung liefert

K1 = f(x0, y0) + fx(x0, y0) · c1 · h + O(h2)

K2 = f(x0, y0) + fx(x0, y0) · c2 · h + fy(x0, y0)ha21K1 + O(h2)

= f(x0, y0) + fx(x0, y0) · c2 · h + fyf(x0, y0)ha21 + O(h2)

=⇒ y1 = y0 +h(b1 + b2)f(x0, y0)

+h2(b1c1 + b2c2)fx(x0, y0)

+h2b2a21fyf(x0, y0) + O(h3)

Exakte Losung im Vergleich (s. Beispiel 3.4)

y(x0 + h) = y0 + hf(x0, y0) +1

2h2(fx + fyf)(x0, y0) + O(h3)

Als Bedingungsgleichungen fur Konsistenzordnung p = 2 ergeben sich dem-

nach

b1 + b2 = 1, b1c1 + b2c2 =1

2, b2a21 =

1

2. (3.21)

Als spezielle Losungen von (3.21) hat man u.a. das Heun–Verfahren und

den modifizierten Euler. Mit s = 2 Stufen ist jedoch die Ordnung p = 3

nicht erreichbar!

75

Page 23: Numerik gewöhnlicher Differentialgleichungen

Offensichtlich wird bereits bei s = 3 Stufen der Abgleich sehr aufwandig.

Das Vorgehen vereinfacht sich etwas, falls man nur autonome Differenti-

algleichungen betrachtet. Man wird von einem fur autonome Differential-

gleichungen hergeleiteten Verfahren naturlich verlangen, dass es auch im

nichtautonomen Fall wohldefiniert ist (d.h. invariant unter Autonomisie-

rung ist).

Wir vergleichen dazu y′ = f(x, y) mit der autonomisierten Gleichung

Y ′ = F (Y ), Y :=

(

y

x

)

, F (Y ) :=

(

f(x, y)

1

)

.

Der Runge–Kutta–Ansatz ist fur beide Gleichungen nur dann aquivalent,

falls

ci =i−1∑

j=1

aij, (3.22)

denn wegen der letzten Zeile in F ergibt sich x0 + cih = x0 + hi−1∑

j=1

aij · 1 als

Forderung.

Damit genugt es, den Abgleich nur im autonomen Fall durchzufuhren und

nachtraglich mit den Koeffizienten aij die Zwischenstutzstellen oder Knoten

ci mittels (3.22) zu definieren. Aber diese Erleichterung hilft nicht allzuviel,

um Verfahren mit s ≥ 3 Stufen und entsprechend hoherer Ordnung zu ge-

winnen. Auch wenn die einzelnen Schritte nur aus wiederholter Taylorent-

wicklung bestehen, ist der Abgleich auf diese Art und Weise schnell nicht

mehr handhabbar. Der folgende Satz gibt die Bedingungsgleichungen bis

Ordnung 4 an.

76

Page 24: Numerik gewöhnlicher Differentialgleichungen

Satz 3.5 Ordnungsbedingungen

Seien f ∈ Cp(D) und A, b, c die Koeffizienten des Runge-Kutta-Verfahrens.

Das Verfahren hat die Ordnung p, falls die Bedingung (3.22) und die fol-

genden Bedingungsgleichungen erfullt sind:

p = 1 :s∑

i=1

bi = 1 (1)

p = 2 :s∑

i=1

bici = 1/2 (2) sowie (1)

p = 3 :s∑

i=1

bic2i = 1/3,

s∑

i,j=1

biaijcj = 1/6 (3) sowie (1) − (2)

p = 4 :s∑

i=1

bic3i = 1/4,

s∑

i,j=1

biciaijcj = 1/8,

s∑

i,j=1

biaijc2j = 1/12,

s∑

i,j,k=1

biaijajkck = 1/24 sowie (1) − (3)

Fur Ordnungen p ≥ 5 hat Butcher ab 1963 ein graphentheoretische Hilfs-

mittel eingefuhrt, die sogenannten Butcher–Baume, um die auftretenden

elementaren Differentiale systematisch zu beschreiben. Beispielsweise ist

(autonomer Fall)

y(x0 + h) = y(x0) + hf(y0) +1

2h2f ′f(y0) +

1

3!h3 (f ′′(f, f) + f ′f ′f) (y0) + . . .

Die Darstellung uber Butcher–Baume sieht dann folgendermaßen aus:

y(x0 + h) = y(x0) + h · • +1

2h2

��������

�� +1

3!h3

��������

��

��������

�����

�����

+

��������

��

��

����

����

+ . . .

77

Page 25: Numerik gewöhnlicher Differentialgleichungen

Auf diese Art und Weise gelingt es, die fortgesetzte Taylorentwicklung syste-

matisch und elegant darzustellen, und zwar sowohl fur die exakte Losung als

auch fur die numerische Approximation. (Naheres in Deuflhard/Bornemann

und Hairer/Wanner)

Verfahrenskonstruktion

Die in Satz 3.5 angegebenen Bedingungsgleichungen sind nichtlinear, und

deswegen stellt die Bestimmung geeigneter Koeffizienten, die sogenannte

Verfahrenskonstruktion, eine schwierige Aufgabe dar. Wir wollen im folgen-

den die Situation bei s = 4 Stufen naher betrachten und Verfahren der

Ordnung p = 4 konstruieren. (Zeige: Ordnung p = 4 ist mit s = 3 Stufen

nicht erreichbar!)

Insgesamt hat man mit der Konvention ci =∑

aij die 10 Koeffizienten

b1, b2, b3, b4, a21, a31, a32, a41, a42, a43 zu bestimmen, so dass samtliche Bedin-

gungen erfullt sind.

Die Bedingung∑

bi = 1 erinnert sofort an die Quadratur und legt nahe,

b1, . . . , b4 als Gewichte einer Quadraturformel zu interpretieren. Fassen wir

die ci zusatzlich als Stutzstellen im Intervall [0, 1] auf, so folgt aus den

Bedingungen∑

bici = 1/2,∑

bic2i = 1/3,

bic3i = 1/4,

dass diese Quadraturformel exakt fur alle Polynome in P3 sein muss.

Zwei Quadraturformeln konnen wir nun heranziehen:

a) Die Newtonsche 3/8-Regel mit

c = (0, 1/3, 2/3, 1)T , b = (1/8, 3/8, 3/8, 1/8)T .

Mit dieser Festlegung liefern∑

biaijcj = 1/6,∑

biciaijcj = 1/8 sowie∑

biaijajkck = 1/24 die Beziehungen

a32 = 1, a42c2 + a43c3 = 1/3, b4a43a32c2 = 1/24.

78

Page 26: Numerik gewöhnlicher Differentialgleichungen

Damit ist a43 = 1 und a42 = −1. Aus der Definition der ci ergeben sich

schließlich noch a21 = 1/3, a31 = −1/3, a41 = 1.

Resultat ist die Kuttasche 3/8-Regel

013

13

23 −1

3 1

1 1 −1 118

38

38

18

(Zu uberprufen ist noch die ubriggebliebene Bedingung∑

biaijc2j = 1/12,

die von diesen Koeffizienten tatsachlich erfullt wird.)

b) Die Simpson-Regel mit

c = (0, 1/2, 1/2, 1)T , b = (1/6, 2/6, 2/6, 1/6)T ,

wobei diese eigentlich nur 3 Knoten besitzt und deswegen der mittlere ver-

doppelt wurde. Ein analoges Vorgehen wie unter a) fuhrt dann auf das

“klassische” Runge-Kutta-Verfahren auf S. 37.

Wie oben erwahnt kann man mit Hilfe des Abgleichs uber die Butcher-

Reihen die Bedingungsgleichungen fur Verfahren hoher Ordnung (≥ 5) zwar

elegant aufstellen, die Zahl der Bedingungsgleichungen nimmt jedoch stark

zu:

Ordnung p 1 2 3 4 5 6 7

Mindeststufen s 1 2 3 4 6 7 9

# Bed.gleich. 1 2 4 8 17 37 85

# Zahl Koeff. 1 3 6 10 21 28 45

Die Koeffizientenbestimmung ist dann nur noch mit weiteren vereinfachen-

den Annahmen (vergl. den Zugang uber die Quadratur) und mit Computer–

Algebra–Unterstutzung (Maple, Mathematica) moglich. In der folgenden

Tabelle ist aufgefuhrt, wieviele Stufen notwendig sind, um eine bestimmte

Ordnung zu erreichen. Offensichtlich gilt die Ungleichung s ≥ p.

79

Page 27: Numerik gewöhnlicher Differentialgleichungen

Stufenzahl s 1 2 3 4 5 6 7 8

max. Ordnung p 1 2 3 4 4 5 6 6

Fehlerschatzung und Schrittweitensteuerung

Die bisher vorgestellten Verfahren wurden fur ein gegebenes Gitter

x0 < x1 < . . . < xn−1 < xn

formuliert. Das einfachste Gitter ist das aquidistante, doch diese Wahl ist

in den meisten Anwendungen wenig effizient. Ziel sollte es vielmehr sein,

das Gitter so zu wahlen, dass

(i) eine vorgegebene Genauigkeit der numerischen Losung erreicht wird,

(ii) der dazu notwendige Rechenaufwand moglichst minimal wird.

Im folgenden wollen wir die Grundlagen fur eine adaptive Gittersteuerung

kennenlernen, vergleiche dazu den Algorithmus des adaptiven Simpson bei

der numerischen Quadratur.

Verschiedene Faktoren sind bei der Gittersteuerung zu berucksichtigen. Bild

7 gibt eine qualitative Darstellung des Gesamtfehlers im aquidistanten Fall.

Bei Vergroßern der Schrittweite verringert sich der Aufwand, moglicherweise

steigt aber der Fehler an (vgl. Satz 3.4). Zu kleine Schrittweiten bedeuten

dagegen mehr Aufwand und großeren Einfluss von Rundungsfehlern. Insbe-

sondere gibt es eine untere Schranke, die die Schrittweite nicht unterschrei-

ten sollte.

Schauen wir uns nun eine spezielle Losungskurve an, so wird man offensicht-

lich fordern, dass starke Anderungen in der Losung ein lokal feines Gitter

verlangen, wahrend annahernd konstante Abschnitte mit großen Schritten

durchlaufen werden konnen, Abb. 8.

Da das Losungsverhalten aber a priori nicht bekannt ist (im gewissen Ge-

80

Page 28: Numerik gewöhnlicher Differentialgleichungen

h

Gesamtfehler

Rundungsfehler

e (x)< O(h )n

p

Abbildung 7: Verhalten des globalen Fehlers mit Rundungsfehlern

y

xgroße Schrittweiten

kleine Schrittweiten

Abbildung 8: Nicht aquidistantes Gitter

81

Page 29: Numerik gewöhnlicher Differentialgleichungen

gensatz zur Quadratur, bei der man den Integranden kennt), kann die

Gitterstruktur nicht zu Beginn der numerischen Integration festgelegt wer-

den. Stattdessen wird man die Gitterpunkte wahrend des Losungsprozesses

schrittweise anpassen, d.h. ausgehend von (xi, yi) wird eine neue Schrittwei-

te hi bestimmt und damit xi+1 festgelegt. Man spricht deswegen von einer

Schrittweitensteuerung, kurz SWS.

Das Ziel der SWS kann nun so formuliert werden: Wahle hi so, dass die

nachste Naherung yi+1 eine vorgegebene Fehlertoleranz erfullt.

Allerdings steuern alle gangigen Verfahren nur den lokalen Fehler und nicht

den globalen! D.h., die Schrittweite hi wird so gewahlt, dass fur den aktu-

ellen Schritt gilt

‖u(xi+1)|u(xi)=yi− yi+1‖ ≤ ǫ (3.23)

mit vorgegebener Toleranz ǫ. Die exakte Losung u(x) zum AW u(xi) = yi ist

im Kriterium (3.23) naturlich nicht bekannt und muss durch eine Approxi-

mation yi+1 ersetzt werden. Man spricht deswegen von der Fehlerschatzung,

vergleiche das Vorgehen beim adaptiven Simpson.

Bei Runge–Kutta–Verfahren ist die folgende Technik am weitesten verbrei-

tet: Kombiniere ein Verfahren der Ordnung p (fur yi+1) mit einem der Ord-

nung p+1 (fur yi+1). Man bezeichnet das Verfahren fur yi+1 als eingebettetes

Verfahren.

Formal im Butcher–Tableau

c A

bT −→ y1 = y0 + hs∑

i=1

biKi

bT −→ y1 = y0 + hs∑

i=1

biKi

Die Idee der Einbettung geht auf Fehlberg zuruck, und die von ihm ent-

wickelten adaptiven Verfahren nennt man deswegen Runge–Kutta–Fehlberg–

82

Page 30: Numerik gewöhnlicher Differentialgleichungen

Verfahren. Details dazu und eine moderne Implementierung werden weiter

unten besprochen. Im folgenden konzentrieren wir uns auf die Grundidee

der Schrittweitensteuerung und nehmen an, eine zweite Approximation yi+1

der Ordnung p + 1 stehe zur Verfugung.

Mit den Naherungen yi+1 und yi+1 setzt man nun folgendermaßen an, um

eine “optimale” Schrittweite hopt. zu bestimmen: Es gilt

‖yi+1 − yi+1‖.= c · hp+1 (yi+1 Konsistenzord. p).

Die Wunschschrittweite hopt. ist dagegen uber

c · hp+1opt.

= ǫ

gegeben. Durch Division folgt

hp+1opt.

= hp+1 ǫ

‖yi+1 − yi+1‖

bzw.

hopt. = h p+1

√ǫ

‖yi+1 − yi+1‖. (3.24)

Die Vorschrift (3.24) bildet die Grundlage fur die Schrittweitensteuerung

bei Einschrittverfahren. Wichtig dabei ist, dass die Idee der Herleitung ei-

gentlich nur fur kleine Schrittweiten gultig ist, denn nur dann macht die

Darstellung des Fehlerschatzers als chp+1 Sinn.

Fur den Einsatz in der Praxis sind zahlreiche Heuristiken notwendig, um die

Leistungsfahigkeit der SWS zu optimieren und Sonderfalle abzufangen. We-

sentlich sind z.B. die Begrenzung der neuen Schrittweite nach oben/unten

und die Einfuhrung eines Sicherheitsfaktors.

Im folgenden Algorithmus ist diese Heuristik in den Grundzugen berucksichtigt.

Die einzelnen Schritte sind allgemein gehalten und greifen mit Φ auf ein

Verfahren der Ordnung p zuruck sowie mit Φ auf eines der Ordnung p + 1.

83

Page 31: Numerik gewöhnlicher Differentialgleichungen

Algorithmus 3.1 Einschrittverfahren adaptiv

Start: x0, y0, h0, ǫ, xend gegeben;

i = 0;

while xi < xend

x = xi + hi;

y = yi + hiΦ(xi, yi, hi);

y = yi + hiΦ(xi, yi, hi);

e = ‖y − y‖;

hopt. = h p+1

√ǫ

e· ρ; % Sicherheitsf. ρ

hopt. = min(α · hi, max(βhi, hopt.)); % Schranken α, β

if e ≤ ǫ

xi+1 = x;

yi+1 = y;

hi+1 = min(hopt., xend − xi+1);

i = i + 1;

else

hi = hopt.; % Wiederhole Schritt

endend

Bemerkungen:

1) Die Konstanten ρ, α, β sind abhangig vom konkreten Verfahren. Bei

einem Verfahren hoherer Ordnung kann eine großere Anderung von

hopt. zugelassen werden als bei einem Verfahren niedriger Ordnung.

2) Geeignete Norm zur Fehlerschatzung:

ERR =

√√√√

1

n

n∑

j=1

(yj − yj

ATOL + RTOL · WTj

)2

, WT = |y|

mit absoluter/relativer Toleranz ATOL, RTOL. Statt e ≤ ǫ vergleicht

man dann den Fehler gegen 1, ERR ≤ 1.

84

Page 32: Numerik gewöhnlicher Differentialgleichungen

In Algorithmus 3.1 wird die weniger genaue Losung als neue Approximation

herangezogen, denn fur sie liegt mit der Differenz y − y ein Fehlerschatzer

vor. Diese Argumentation gilt heute als uberholt, und man rechnet in den

gangigen Verfahren mit der besseren Losung weiter, ein Vorgehen, das man

auch als lokale Extrapolation bezeichnet. Begrundung: Der Fehlerschatzer

bezieht sich auf den lokalen Fehler und liefert kaum Information uber den

eigentlich wichtigeren globalen Fehler. Stattdessen wird uber die SWS das

Gitter an den lokalen Losungsverlauf angepasst, und diese Anpassung funk-

tioniert, wie die Erfahrung zeigt, mit der lokalen Extrapolation genauso gut,

mit dem zusatzlichen Plus der hoheren Ordnung.

Damit fuhren wir die folgende Verbesserung im Algorithmus 3.1 ein: Φ ist ein

Verfahren der Ordnung p+1 und Φ eines der Ordnung p. Dann arbeitet der

Algorithmus automatisch im Modus der lokalen Extrapolation; alle anderen

Schritte bleiben wie gehabt.

Eingebettete Verfahren

Wie oben bereits erwahnt, stellt die Einbettung eines zweiten RK-Verfahrens,

das moglichst wenig zusatzlichen Aufwand erfordert, die gangige Technik

zur SWS dar. Am Beispiel des klassischen RK-Verfahrens mit p = 4 wollen

wir die prinzipielle Vorgehensweise studieren. Im Tableau haben wir also

eine zusatzliche Zeile012

12

12 0 1

2

1 0 0 116

26

26

16

b1 b2 b3 . . . bs

85

Page 33: Numerik gewöhnlicher Differentialgleichungen

Erster Ansatz: Wir nehmen s = 4 an und versuchen, die vier Koeffizienten

b1, . . . , b4 so zu bestimmen, dass

y1 = y0 + h(b1K1 + . . . + b4K4)

eine Approximation der Ordnung 3 darstellt. (Vergleiche die Diskussion

oben: Wir sehen das gegebene Verfahren als das bessere an und suchen dazu

ein zweites, das Information fur die SWS liefert.) Aus den Bedingungsglei-

chungen fur Ordnung p = 3 folgt (Satz 3.5)

b1 + b2 + b3 + b4 = 1, b2/2 + b3/2 + b4 = 1/2,

b2/4 + b3/4 + b4 = 1/3, b3/4 + b4/2 = 1/6,

wobei die Koeffizienten aij und ci bereits eingesetzt wurden. Einzige Losung

des linearen Gleichungssystems ist b = b, d.h. mit s = 4 ist es nicht moglich,

solch ein eingebettetes Verfahren zu konstruieren!

Zweiter Ansatz: Mit s = 5 bekommt man mehr Freiheitsgrade, dies soll-

te aber nicht zu einem hoheren Aufwand fuhren. Eine weitere Auswertung

einer Korrektur K5 stellt einen solchen Aufwand dar, dieser fallt aber durch

den Fehlberg-Trick nicht ins Gewicht: Wir bestimmen die neu ins Spiel kom-

menden Koeffizienten c5, a51, . . . , a54 so, dass

K5(alter Schritt) = K1(neuer Schritt). (3.25)

Man nennt diese Technik auch FSAL (FirstSameAsLast). Konkret bedeutet

dies

K5(a.S.) = f(x0+c5h, y0+h∑

a5jKj) = f(x0+h, y0+h∑

biKi) = K1(n.S.).

Also ist c5 = 1 und a5j = bj fur j = 1 : 4. Mit diesen Koeffizienten geht man

nochmals in die Bedingungsgleichungen fur die Ordnung p = 3. Es zeigt

sich: Nun existiert eine ganze Familie von Gewichten b, die die Ordnung 3

86

Page 34: Numerik gewöhnlicher Differentialgleichungen

liefern. Ein Beispiel zeigt das folgende Butcher-Tableau:

012

12

12 0 1

2

1 0 0 1

1 16

26

26

16

16

26

26

16 0

16

26

26 0 1

6

Die Auswertung der Differenz y − y reduziert sich hier auf die einfache

Formel y − y = (K1(n.S.) − K4(a.S.))/6, d.h. die Große y muss gar nicht

explizit berechnet werden.

Bemerkung:

Eine in der Herleitung einfache, aber in der Auswertung teure Alternative

zu den eingebetteten Verfahren ist die Richardson-Extrapolation, bei der

ein Schritt y1 = y0 + 2hΦ(x0, y0, 2h) mit doppelter Schrittweite und zwei

Schritte y1/2 = y0 + hΦ(x0, y0, h), y1 = y1/2 + hΦ(x0 + h, y1/2, h) mit einfa-

cher Schrittweite miteinander kombiniert werden, um mittels Extrapolation

eine Approximation hoherer Ordnung zu erhalten. Vergleiche den adaptiven

Simpson.

Das Dormand-Prince-Verfahren DOPRI5(4)

Das zur Zeit wohl am weitesten verbreitete und fur mittlere Genauigkeits-

anforderungen effizienteste explizite Runge-Kutta-Verfahren geht auf Dor-

mand und Prince (1980) zuruck.

Das Verfahren hat die Ordnung 5 mit einem eingebetteten Verfahren der

Ordnung 4, daher stammt die Namensgebung DOPRI5(4). Erreicht wird

dies mit s = 6 und s = 7 Stufen, wobei durch den FSAL-Ansatz die

zusatzliche Stufe nicht ins Gewicht fallt. Man hat also effektiv nur 6 Stufen

87

Page 35: Numerik gewöhnlicher Differentialgleichungen

pro Schritt auszuwerten. Der Koeffizientensatz lautet

015

15

310

340

940

45

4445

−5615

329

89

193726561

−253602187

644486561

−212729

1 90173168

−35533

467325247

49176

−510318656

1 35384 0 500

1113125192

−21876784

1184

35384 0 500

1113125192

−21876784

1184 0

517957600 0 7571

16695393640

−92097339200

1872100

140

Die Bestimmung der Koeffizienten erfolgte nach mehreren Kriterien:

(i) Der fuhrende Fehlerterm δ6(y) des Verfahrens 5. Ordnung soll moglichst

klein sein, der fuhrende Fehlerterm δ5(y) des Verfahrens 4. Ordnung dage-

gen soll moglichst dominant sein im Vergleich zu den weiteren Termen der

zugehorigen Fehlerentwicklung.

(ii) Der Term δ5(y), der sich ja aus elementaren Differentialen von f zusam-

mensetzt, soll im Sonderfall der Quadratur f = f(x) nicht verschwinden.

(iii) Die Koeffizienten ci sollen in [0, 1] liegen und verschieden sein.

In die Bestimmung gehen daneben auch viel Erfahrung und Fingerspitzen-

gefuhl ein!

Einen guten Integrationscode zeichnen aber nicht nur die Koeffizienten aus.

Zwei weitere Aspekte sind von besonderer Bedeutung:

Kontinuierliche Losungsdarstellung oder Dense Output: Die SWS

sorgt dafur, dass der Integrator moglichst große Schritte macht, um eine

vorgegebene Genauigkeit einzuhalten. Oft will man aber die Losung zu sehr

vielen Zeitpunkten auswerten, und dies ohne die Integration mit entspre-

chend verkleinerten Schritten durchfuhren zu mussen. Hilfsmittel dazu ist

eine kontinuierliche Losungsdarstellung (engl. Dense Output), d.h. ein In-

terpolant, der die diskreten Daten (xi, yi) interpoliert und dazwischen die

88

Page 36: Numerik gewöhnlicher Differentialgleichungen

exakte Losung moglichst gut approximiert. Grundsatzlich geht man dabei

intervallweise vor und konstruiert nach jedem Schritt den Interpolanten auf

[xi, xi+1].

Die einfachste Methode bei ESV verwendet die Daten yi, fi sowie yi+1, fi+1

und konstruiert das Hermite–Interpolationspolynom vom Grad 3

u(θ) = (1−θ)yi +θyi+1 +θ(θ−1) ((1 − 2θ)(yi+1 − yi) + (θ − 1)hfi + θhfi+1)

mit 0 ≤ θ ≤ 1. Probe: u(0) = yi, u′(0) = y′i = fi, u(1) = yi+1, u′(1) = fi+1

Falls das Verfahren Ordnung p ≥ 3 hat, stellt der Hermite-Interpolant eine

stetige Erweiterung des Runge-Kutta-Verfahrens dar, die die exakte Losung

im aktuellen Intervall mit Ordnung 3 approximiert und global C1 ist. Damit

kann der Integrator nach jedem Schritt uberprufen, ob Ausgabepunkte er-

reicht wurden und nachtraglich an diesen Stellen das Polynom u auswerten.

Zu DOPRI5(4) wurde eine stetige Erweiterung der Ordnung 4 entwickelt,

die auf einem Polynom vom Grad 5 basiert.

Verbesserte SWS mit PI-Regler: Die Steuerung der Schrittweite wur-

de im Jahre 1988 durch eine regelungstheoretische Analyse (Gustafsson /

Lundh / Soderlind) auf ein solideres Fundament gestellt. Insbesondere ver-

besserte man die Formel (3.24) fur die neue Schrittweite um einen Korrek-

turterm, der fur glattere Schrittweitenverlaufe und weniger Schrittverwer-

fungen sorgt.

Die Formel (3.24) ist in diesem Zusammenhang ein I-Regler , d.h. sie beruck-

sichtigt die Summe der bisherigen Abweichungen vom Sollwert (das Inte-

gral). Ein PI-Regler ist zusatzlich Proportional zur letzten Abweichung vom

Sollwert und aus regelungstechnischer Sicht besser. Man kommt so auf die

Schrittweitenformel

hi+1 = hi

‖yi+1 − yi+1‖

)α(‖yi − yi‖

ǫ

(3.26)

mit Konstanten α = 0.7/p, β = 0.4/p.

89

Page 37: Numerik gewöhnlicher Differentialgleichungen

3.5 Mehrschrittverfahren

Mehrschrittverfahren (MSV) bilden neben den ESV die zweite große Verfah-

rensklasse. Bei ihnen fließen Daten / Losungspunkte aus der Vergangenheit

in die Berechnungvorschrift mit ein. Genauer:

In einem k–Schrittverfahren berechnet man die Approximation yi+1.= y(xi+1)

aus den Daten

(xi−k+1, yi−k+1), (xi−k+2, yi−k+2), . . . , (xi−1, yi−1), (xi, yi).

Die Daten stammen aus den vorherigen Schritten oder einer Anlaufrech-

nung. Neben der Konsistenz ist die Eigenschaft der Stabilitat bei MSV

notwendig, um die Konvergenz zu zeigen. Insofern zeigt sich hier ein we-

sentlicher Unterschied zu den ESV.

Verfahrensklassen

Adams–Verfahren. Zur Herleitung der Adams–Verfahren integriert man

die Differentialgleichung y′ = f(x, y) von xi bis xi+1 und erhalt

y(xi+1) = y(xi) +

xi+1∫

xi

f(x, y(x)) dx . (3.27)

Der Integrand in (3.27) hangt von der (unbekannten) Losung y ab und wird

nun durch ein Interpolationspolynom p ersetzt. Zwei Falle werden unter-

schieden:

a) Das Polynom p interpoliert fi−k+j = f(xi−k+j, yi−k+j) , j = 1, . . . , k

Uber die Lagrange-Interpolation hat man die Darstellung

p(x) =k∑

j=1

fi−k+j · li,j(x) mit li,j(x) =k∏

ν=1

ν 6=j

x − xi−k+ν

xi−k+j − xi−k+ν.

90

Page 38: Numerik gewöhnlicher Differentialgleichungen

�����������������������������������

�����������������������������������

f

x

f

f f

p(x)

x x x x

Integration yi+1

i−k+1

i−1i

i−k+1 i−1 i i+1

Abbildung 9: Idee der Adams-Bashforth-Verfahren

Mit Einsetzen von p(x) im Integral in (3.27) folgt

yi+1 = yi + hi

k∑

j=1

βi,jfi−k+j, βi,j :=1

hi

xi+1∫

xi

li,j(x) dx.

Fur aquidistantes Gitter xi = x0 + i · h sind die Koeffizienten βi,j =: βj−1,

j = 1, . . . , k unabhangig vom Schritt i,

xi+1∫

xi

li,j(x) dx = h

1∫

0

k∏

ν=1

ν 6=j

x0 + ih + sh − (x0 + (i − k + ν)h)

x0 + (i − k + j)h − (x0 + (i − k + ν)h)ds

= h

1∫

0

k∏

ν=1

ν 6=j

k − ν + s

j − ν

︸ ︷︷ ︸

=:βj−1

ds.

Die Verfahrensvorschrift schreibt sich dann folgendermaßen:

yi+1 = yi + h(β0fi−k+1 + β1fi−k+2 + . . . + βk−1fi) (3.28)

As spezielle Verfahren hat man

k = 1 yi+1 = yi + hfi,

k = 2 yi+1 = yi + h(−1

2fi−1 + 32fi

),

k = 3 yi+1 = yi + h(

512fi−2 −

1612fi−1 + 23

12fi

).

91

Page 39: Numerik gewöhnlicher Differentialgleichungen

Die so gewonnenen expliziten MSV nennt man Adams–Bashforth–Verfahren.

b) Ein alternativer Zugang fordert, dass das Polynom p die Werte fi−k+j

fur j = 1, . . . , k, k + 1 interpoliert. Da p damit von yi+1 abhangt, liegt ein

implizites Verfahren vor.

���������������������

���������������������

f

xx xi−k+1 i x i+1

fi i+1f

p(x)

Abbildung 10: Idee der Adams-Moulton-Verfahren

Analoge Konstruktion des Interpolanten wie unter a) liefert

p(x) =k+1∑

j≡1

fi−k+j · l∗i,j(x), l∗i,j(x) =

k+1∏

ν=1

ν 6=j

x − xi−k+ν

xi−k+j − xi−k+ν.

Bei aquidistantem Gitter erhalt man die Koeffizienten

β∗j−1 =

1∫

0

k+1∏

ν=1

ν 6=j

k − ν + s

j − νds, j = 1, . . . , k + 1

und als Verfahren

yi+1 = yi + h(β∗0fi−k+1 + . . . + β∗

k−1fi + β∗kfi+1). (3.29)

Spezielle Vertreter sind

k = 1 yi+1 = yi + h(

12fi + 1

2fi+1

)Trapezregel,

k = 2 yi+1 = yi + h(− 1

12fi−1+, 812fi + 5

12fi+1

).

92

Page 40: Numerik gewöhnlicher Differentialgleichungen

Diese Klasse von impliziten MSV bezeichnet man als Adams–Moulton–

Verfahren. Der Fall k = 0 macht auch Sinn, daraus ergibt sich

yi+1 = yi + hfi+1 Impliziter Euler.

Adams–Verfahren sind in der Praxis von großer Bedeutung und werden

meist als Pradiktor–Korrektor–Schema implementiert:

(i) y(0)i+1 = yi + h(β0fi−k+1 + . . . + βk−1fi)

(Startschritt mit explizitem Adams–Bashforth–Verfahren)

(ii) y(l+1)i+1 = Ψ(y

(l)i+1), l = 0, 1, . . .

Fixpunktiteration Korrektorschritt; mit implizitem Adams–Moulton–

Verfahren, wobei

Ψ(y) := hβ∗kf(xi+1, y) + yi + h(β∗

0fi−k+1 + . . . + β∗k−1fi).

Die Integration im Korrektor konvergiert fur h hinreichend klein gegen einen

Fixpunkt mit y = Ψ(y), da dann

‖Ψ′(y)‖ = h|β∗k| ‖fy(xi+1, y)‖ ≤ M < 1

gezeigt werden kann (vgl. Banachscher Fixpunktsatz).

Verfahren nach Nystrom und Milne. Analog zur Herleitung der Adams–

Verfahren kann man weitere MSV konstruieren, indem man y′ = f(x, y) von

xi−1 bis xi+1 integriert, d.h. uber 2 Intervalle. Der Fall a) mit explizit gege-

benem Interpolanten p fuhrt dann auf die Nystrom–Verfahren. Ein Beispiel

ist der Fall

k = 2 yi+1 = yi−1 + 2hfi,

der die Mittelpunktregel liefert.

Der Fall b) mit implizitem Ansatz definiert die Verfahren nach Milne. Als

Beispiel betrachte

k = 2 yi+1 = yi−1 + h/3(fi−1 + 4fi + fi+1),

93

Page 41: Numerik gewöhnlicher Differentialgleichungen

eine Verallgemeinerung der Keplerschen Fassregel aus der Quadratur (Ver-

fahren von Milne–Simpson).

BDF–Verfahren. Die Herleitung der BDF (Backward Difference Formulas)–

Verfahren basiert auf der Differentation (und nicht der Integration wie bei

Adams). Man konstruiert einen Interpolanten q(x) durch

(xi−k+1, yi−k+1), . . . , (xi, yi), (xi+1, yi+1)

und fordert, dass q(xi+1) die Differentialgleichung erfullt, d.h.

q′(xi+1) = f(xi+1, q(xi+1)) = f(xi+1, yi+1).

In der Lagrange-Darstellung ist

q(x) =k+1∑

j=1

yi−k+jl∗i,j(x) ⇒ q′(xi+1) =

k+1∑

j=1

yi−k+jl∗,′i,j(xi+1).

Im Fall aquidistanter Schrittweiten gilt weiter

d

dxl∗i,j(x)|x=xi+1

=1

h

d

ds

k+1∏

ν=1

ν 6=j

k − ν + s

j − ν

|s=1

︸ ︷︷ ︸=:αj−1

Die Koeffizienten α0, . . . , αk sind wiederum unabhangig vom Schritt i, und

allgemein lautet das k-Schritt-BDF-Verfahren dann

α0yi−k+1 + . . . + αk−1yi + αkyi+1 = hfi+1. (3.30)

BDF–Verfahren sind implizit und finden vor allem bei steifen Differential-

gleichungen Anwendung. Beispiele sind

k = 1 yi+1 − yi = hf(xi+1, yi+1) (Impliziter Euler)

k = 2 32yi+1 − 2yi + 1

2yi−1 = hfi+1 (BDF-2)

k = 3 116 yi+1 − 3yi + 3

2yi−1 −13yi−2 = hfi+1 (BDF-3)

94

Page 42: Numerik gewöhnlicher Differentialgleichungen

Im Folgenden werden alle bisher eingefuhrten Verfahren unter einer einheit-

lichen Notation zusammengefaßt und analysiert. Statt

α0yi−k+1 + . . . + αkyi+1 = h(β0fi−k+1 + . . . + βk−1fi + βkfi+1)

schreibt man ein lineares k-Schritt-Verfahren bequemer als

α0yi + α1yi+1 + . . . + αkyi+k = h(β0fi + . . . + βkfi+k)

bzw. kurzk∑

l=0

αlyi+l = hk∑

l=0

βlfi+l (3.31)

mit zunachst beliebigen reellen Verfahrenskoeffizienten αl und βl.

3.6 Konsistenz von MSV

Analog zu den ESV untersuchen wir nun den Fehler eines MSV in einem

Schritt. Dazu gibt es verschiedene Ansatze, die im Wesentlichen aquivalent

sind. Wir verwenden hier den Defekt als lokale Fehlerdefinition, vgl. Defini-

tion 3.1.

Definition 3.4 Lokaler Diskretisierungsfehler MSV

Sei y(x) exakte Losung des AWP y′ = f(x, y), y(x0) = y0. Der lokale

Diskretisierungsfehler des MSV (3.31) mit konstanter Schrittweite h ist de-

finiert als Defekt

τ(h) :=1

h

(k∑

l=0

αly(xi+l) − h

k∑

l=0

βlf(xi+l, y(xi+l))

)

.

Das Fehlermaß τ(h) ergibt sich also durch Einsetzen der exakten Losung in

die Differenzengleichung (3.31). Im Sonderfall exakter Daten

yi = y(xi), . . . , yi+k−1 = y(xi+k−1)

95

Page 43: Numerik gewöhnlicher Differentialgleichungen

hat man fur die numerische Losung unter der Annahme βk = 0 (explizites

Verfahren)

αkyi+k +k−1∑

l=0

αlyi+l = hk−1∑

l=0

βlfi+l

und fur die exakte Losung

αky(xi+k) +k−1∑

l=0

αly(xi+l) = h

k−1∑

l=0

βlfi+l + h · τ(h)

=⇒ τ(h) =αk

h(y(xi+k) − yi+k) . (3.32)

Die Darstellung (3.32) ist analog zur Definition 3.1 des lokalen Fehlers bei

ESV. Oft normiert man das MSV noch durch αk := 1, so dass (3.32) un-

abhangig von Verfahrenskoeffizienten geschrieben werden kann.

Definition 3.5 Konsistenzordnung MSV

Ein MSV heisst konsistent, falls der lokale Diskretisierungsfehler τ(h) fur

h → 0 ebenfalls gegen 0 strebt:

‖τ(h)‖ ≤ γ(h) mit limh→0

γ(h) = 0 .

Das MSV hat Konsistenzordnung p, falls

‖τ(h)‖ = O(hp) .

Zur Bestimmung der Konsistenzordnung eines MSV fuhrt man ahnlich den

RK–Verfahren einen Abgleich durch und ermittelt Bedingungsgleichungen

fur die Koeffizienten αl, βl. Man setzt an

1

h

(k∑

l=0

αly(x + lh) − h

k∑

l=0

βly′(x + lh)

)

= τ(h)

mit y(x + lh)) = y(x) + y′(x)lh +1

2y′′(x)(lh)2 + . . .

y′(x + lh)) = y′(x) + y′′(x)lh +1

2y′′′(x)(lh)2 + . . .

96

Page 44: Numerik gewöhnlicher Differentialgleichungen

Sortieren nach h–Potenzen ergibt

τ(h) =1

hy(x)

k∑

l=0

αl + y′(x)k∑

l=0

(αl · l − βl)

+h

2y′′(x)

k∑

l=0

(αl · l2 − 2βll)

... (3.33)

+hp−1

p!y(p)(x)

k∑

l=0

(αl · lp − p · βll

p−1)

+ O(hp)

Ein MSV ist demnach konsistent, fallsk∑

l=0

αl = 0 undk∑

l=0

(αl · l − βl) = 0. (3.34)

Fur die Ordnung p ≥ 1 mussen auch die hoheren Terme in der Entwicklung

(3.33) herausfallen, d.h.

k∑

l=0

αllq = q

k∑

l=0

βllq−1 fur q = 1, . . . , p. (3.35)

Beispiel 3.9: Gegeben ist das MSV

yi+2 + 4yi+1 − 5yi = h(4fi+1 + 2fi).

Die Verfahrenskoeffizienten sind also α2 = 1, α1 = 4, α0 = −5, β1 = 4, β0 = 2

Konsistent:∑

αl = 0,∑

αl · l − βl = (−5 · 0 − 2) + (4 · 1 − 4) + (1 · 2) = 0

p = 2 :∑

αl · l2 − 2βll = (−5 · 0 − 2 · 0) + (4 · 1 − 8) + (1 · 4) = 0

p = 3 :∑

αl · l3 − 3βll

2 = (−5 · 0 − 2 · 0) + (4 · 1 − 12) + (1 · 8) = 0

Also liegt ein 2–Schritt–Verfahren der Konsistenzordnung p = 3 vor.

Alternativ zu den Bedingungsgleichungen (3.34) und (3.35) benutzt man

die erzeugenden Polynome

ρ(ζ) : = αkζk + . . . + α1ζ + α0 , (3.36)

σ(ζ) : = βkζk + . . . + β1ζ + β0 , (3.37)

97

Page 45: Numerik gewöhnlicher Differentialgleichungen

um die Konsistenzordnung zu charakterisieren. Es folgt unmittelbar die

Aquivalenz der Konsistenzbedingung (3.34) mit

ρ(1) = 0 und ρ′(1) = σ(1). (3.38)

Die weiteren Bedingungen erhalt man uber den Ansatz

ρ(eh) =k∑

l=0

αlelh =

k∑

l=0

αl(1 + lh +1

2(lh)2 + . . .)

σ(eh) =k∑

l=0

βlelh =

k∑

l=0

βl(1 + lh +1

2(lh)2 + . . .)

Daraus schließt man auf

ρ(eh) − hσ(eh) =k∑

l=0

αl + hk∑

l=0

(αl · l − βl)

+1

2h2

k∑

l=0

(αl · l2 − 2βl · l)

... (3.39)

+hp

p!

k∑

l=0

(αl · lp − pβl · l

p−1) + O(hp+1).

D.h., die Entwicklung (3.33) lasst sich auch uber die Exponentialfunktion

kompakt darstellen. Setzt man noch h = ln µ, dann ist h = 0 ⇔ µ = 1 und

ρ(eh)−hσ(eh) = O(hp+1) ⇔ ρ(µ)−ln µ·σ(µ) hat µ = 1 als p+1–fache NST

98

Page 46: Numerik gewöhnlicher Differentialgleichungen

Satz 3.6 Konsistenzordnung MSV

Das MSV∑

αlyi+l = h∑

βlfi+l hat die Konsistenzordnung p, falls eine der

drei aquivalenten Bedingungen erfullt ist:

(i)k∑

l=0

αl = 0 undk∑

l=0

αllq = q

k∑

l=0

βllq−1 fur q = 1, . . . , p

(ii) ρ(eh) − hσ(eh) = O(hp+1) fur h → 0.

(iii) ρ(µ) − ln µ · σ(µ) hat µ = 1 als p + 1–fache Nullstelle

Bemerkungen

1) In der Literatur schreibt man oft τ(x, y, h) statt τ(h), um die Abhangig-

keit vom Gitter und der Losung zu betonen. Bedingung (ii) oben be-

deutet dann τ(x, exp, h) = O(hp) . Ein anderer Ansatz verwendet statt

τ(x, y, h) den Differenzenoperator

L(x, y, h) :=k∑

l=0

αly(x + lh) − h

k∑

l=0

βly′(x + lh) = hτ(x, y, h).

2) Einordnung Verfahrensklassen:

k–Schritt–Adams–Bashforth Adams–Moulton BDF

p k k + 1 k

Was ist die maximal erreichbare Konsistenzordnung? Insgesamt hat man

2k + 2 Parameter α0, . . . , αk, β0, . . . , βk. Nach Normierung αk = 1 stehen

noch 2k + 1 Parameter zur Verfugung. Wie man zeigen kann, existiert ein

implizites MSV der Ordnung p = 2k und ein explizites mit p = 2k − 1. Die

maximal erreichbare Ordnung ist also deutlich hoher als bei Adams- oder

BDF–Verfahren. Allerdings sind solche Verfahren nicht mehr stabil, siehe

den nachsten Abschnitt.

Vor der Stabilitatsanalyse noch die Definition des globalen Fehlers:

99

Page 47: Numerik gewöhnlicher Differentialgleichungen

Definition 3.7 Globaler Diskretisierungsfehler

Der globale Diskretisierungsfehler eines MSV ist die Differenz

en(X) = y(X) − yn mit X = xn fest, n variabel.

3.7 Stabilitat von MSV

Wie hangen lokaler Fehler (d.h. die Konsistenz) und globaler Fehler (d.h.

Konvergenz) zusammen? Anders als bei ESV braucht man bei MSV eine

zusatzliche Stabilitatsbedingung, um Konvergenz zu zeigen.

Beispiel 3.10 Als Beispiel fur die Problematik betrachte das MSV mit k = 2 und p = 3 aus

Beispiel 4.1,

yi+2 + 4yi+1 − 5yi = h(4fi+1 + 2fi).

Erzeugende Polynome sind ρ(ζ) = ζ2 + 4ζ − 5 sowie σ(ζ) = 4ζ + 2. Das MSV wird angewendet

auf die triviale (!) Differentialgleichung

y′ = 0 , AW y0 = 1 , sowie y1 = hǫ. (3.40)

Daraus ergibt sich die 3–Term–Rekursion

yi+2 + 4yi+1 − 5yi = 0 Start y0 = 1, y1 = 1 + hǫ. (3.41)

Ansatz zur Losung: ρ(ζ) = (ζ −1)(ζ +5) = (ζ − ζ1)(ζ − ζ2) mit NST ζ1 = 1, ζ2 = −5. Aus yi = ζi1

folgt

ζi+21 + 4ζi+1

1 − 5ζi1 = 0 ⇐⇒ ζi

1 · ρ(ζ1) = 0.

ζi1 ist also spezielle Losung der Differenzengleichung (3.41), genauso ζi

2. Als allgemeine Losung

setzen wir an yi = Aζi1 + Bζi

2, und damit gilt

yi+2 + 4yi+1 − 5yi = 0 ⇐⇒ Aζi1ρ(ζ1) + Bζi

2ρ(ζ2) = 0.

Die noch freien Parameter A, B ergeben sich aus den AW

y0 = Aζ01 + Bζ0

2 y1 = Aζ11 + Bζ1

2

= A + B = A − 5B

=⇒ A = 1 + hǫ6 , B = −hǫ

6 .

Die allgemeine Losung der Rekursion (3.41) lautet somit

yi = 1 +hǫ

6+

−hǫ

6· (−5)i. (3.42)

100

Page 48: Numerik gewöhnlicher Differentialgleichungen

Diskussion: Im Fall ǫ = 0 liegen die Startwerte auf der exakten Losung y(x) ≡ 1 von (3.40)).

Die numerische Losung yi ≡ 1 stimmt dann mit der exakten uberein. Im Fall ǫ 6= 0 ist y1 leicht

gestort. Diese Storung wird duch den Faktor (−5)i dramatisch verstarkt – das MSV ist instabil!

Die im Beispiel diskutierte Problematik tritt bei vielen MSV auf. Verfahren

mit scheinbar guten Eigenschaften wie hoher Konsistenzordnung und kleiner

Fehlerkonstante liefern schon bei einfachsten Testbeispielen extrem schlecht

Resultate.

Zur Analyse des Stabilitatsproblems wird wie im Beispiel 4.2 die triviale

Testgleichung y′ = 0, y(x0) = 1 betrachtet. Ein darauf angewandtes MSV

liefert die homogene Rekursion oder Differenzengleichung

α0yi + α1yi+1 + . . . + αkyi+k = 0 (3.43)

mit Startwerten y0, . . . , yk−1.

Offensichtlich ist die Folge der yi uber die Rekursion eindeutig festgelegt.

Man kann aber noch mehr aussagen, und zwar mit Hife der Theorie der

Differenzengleichungen. Beachte die Analogie zu linearen Differentialglei-

chungen k-ter Ordnung!

Satz 3.7

Sei λ eine m-fache Nullstelle des charakteristischen Polynoms ρ(ζ) aus

(3.36), d.h. ρ(λ) = ρ′(λ) = . . . = ρ(m−1)(λ) = 0. Dann gilt:

(i) y(1)i = λi, y

(2)i = Dλi = iλi−1, y

(3)i = D2λi = i(i − 1)λi−2, . . . ,

y(m)i = Dm−1λi = i(i − 1)(i − 2) · . . . · (i − m + 2)λi−m+1

sind spezielle Losungen der homogenen Rekursion (3.43).

(ii) Die allgemeine Losung von (3.43) lasst sich als Linearkombination der

insgesamt k speziellen Losungen nach (i) schreiben.

Beweis: Betrachte spezielle Losung y(j)i mit 1 ≤ j ≤ m,

α0y(j)i + α1y

(j)i+1 + . . . + αky

(j)i+k = Dj−1(α0λ

i + α1λi+1 + . . . + αkλ

i+k) = Dj−1(ρ(λ) · λi).

101

Page 49: Numerik gewöhnlicher Differentialgleichungen

Mit der Produktregel nach Leibniz

Dl(f · g) =l∑

j=0

(l

s

)

DsfDl−sg

folgt

Dj−1(ρ(λ)λi) = ρ(λ)︸︷︷︸

=0

Dj−1λi + . . . +

(j − s

s

)

Dsρ(λ)︸ ︷︷ ︸

=0

Dl−sλi + . . . + Dj−1ρ(λ)︸ ︷︷ ︸

=0

λi = 0.

Damit ist (i) gezeigt. Offensichtlich gibt es insgesamt k spezielle Losungen entsprechend dem Grad

von ρ, und jede Linearkombination ist ebenfalls Losung der homogenen Rekursion. Zu zeigen

bleibt, dass solch eine Linearkombination durch die Startwerte y0, . . . , yk−1 eindeutig festgelegt

ist. Beweis dazu ist “elementar, aber muhselig” (Stoer/Bulirsch, S. 148) �

Welche Folgerung erlaubt Satz 3.7? Wir haben die Fallunterscheidung:

Falls λ eine NST von ρ ist mit |λ| > 1:

{yi} = {λi} wachst exponentiell!

Falls λ eine NST von ρ ist mit |λ| < 1:

{yi} = {λi} fallt exponentiell!

Falls λ eine NST ist mit |λ| = 1:

yi = λi liefert |yi| = 1,

y(j)i = i(i − 1)(1i − 2) · . . . · (i − j + 2)λi wachst polynomial!

(nur falls λj-fache NST mit j > 1)

Die homogene Rekursion wird also vollstandig durch die Nullstellen des

charakteristischen oder erzeugenden Polynoms ρ bestimmt. Dies motiviert

Definition 3.8 Stabilitatsbedingung MSV

Ein MSV erfullt die Stabilitatsbedingung, falls alle NST des charakteristi-

schen Polynoms ρ(ζ) = αkζk+. . .+α1ζ+α0 im abgeschlossenen Einheitskreis

von C liegen und diejenigen auf dem Rand nur einfach sind:

Falls ρ(λ) = 0 =⇒ |λ| ≤ 1,

Fallsρ(λ) = 0,

|λ| = 1

}

=⇒ λ ist einfache NST. (3.44)

102

Page 50: Numerik gewöhnlicher Differentialgleichungen

Das MSV heißt stark stabil: Fur alle NST gilt |λ| < 1 außer fur λ = 1,

ansonsten schwach stabil.

x

x

x

xx

Im

Re

einfache NST

evt. mehrfache NST

ρ

Abbildung 11: Nullstellen des ρ-Polynoms bei Erfulltsein der Stabilitatsbed.

Abb. 11 illustriert die Lage der Nullstellen bei Erfulltsein der Stabilitatsbedingung.

Bei konsistenten MSV ist λ = 1 immer eine NST von ρ, denn

ρ(1) = α0 + α1 + . . . + αk = 0 nach Satz 4.1

Was bedeutet die Stabilitatsbedingung fur die oben eingefuhrten Verfah-

rensklassen? Bei Adams–Bashforth und Adams–Moulton ist

αk = 1 , αk−1 = −1 , αk−2 = . . . = α0 = 0

und damit

ρ(ζ) = ζk−ζk−1 = ζk−1(ζ−1) mit NST λ = 1 einfach , λ = 0 k − 1-fach.

Damit sind die Adams-Verfahren stark stabil.

Die BDF-Verfahren sind stark stabil nur fur k ≤ 6, ansonsten instabil (o.

Bew.).

Die Verfahren nach Nystrom und Milne haben Koeffizienten αk = 1, αk−1 =

0, αk−2 = −1, αk−3 = · · · = α0 = 0. Daher

ρ(ζ) = ζk − ζk−2 = ζk−2(ζ2 − 1) = ζk−2(ζ − 1)(ζ + 1)

mit NST ζ1 = 0, ζ2 = 1, ζ3 = −1. Demnach sind diese MSV nur schwach-

stabil.

103

Page 51: Numerik gewöhnlicher Differentialgleichungen

Falls das MSV die Stabilitatsbedingung erfullt, gilt im Ubrigen

limi→∞

yi

i= 0

fur alle Losungen der homogenen Rekursion (3.43).

Die bisherige Analyse des Stabilitatsproblems kann wie folgt zusammenge-

fasst werden: Die Konsistenz eines MSV reicht nicht aus, um Konvergenz

fur die Testgleichung y′ = 0 zu erzielen. Zusatzlich notwendig ist die Stabi-

litatsbedingung (3.44)!

Wie sieht nun der allgemeine Fall, d.h. die Konvergenz fur y′ = f(x, y), aus?

Es zeigt sich, dass die anhand von y′ = 0 ermittelte Stabilitatsbedingung

(3.44) hinreichend ist, um die Konvergenz fur ein konsistentes Verfahren zu

zeigen! Ohne Bew. sei angegeben:

Satz 3.8 Konvergenz MSV

Das MSV∑

αlyi+l = h∑

βlfi+l habe die Konsistenzordnung p und erfulle

die Stabilitatsbedingung (2.41). Dann ist es fur hinreichend glattes f auch

konvergent von der Ordnung p, d.h.

en(X) = Y (X) − yn = O(hp)

Kurz und pragnant:

Stabilitat

+ Konsistenz⇐⇒ Konvergenz

Offen bleibt noch die Frage, welche maximale Konsistenzordnung ein stabi-

les MSV haben kann. Ohne Berucksichtigung der Stabilitatsbedingung war

die maximale Ordnung 2k bzw. 2k− 1, s.o. Unter Berucksichtigung gilt der

beruhmte

104

Page 52: Numerik gewöhnlicher Differentialgleichungen

Satz 3.9 Dahlquist–Barriere (1956/59)

Ein lineares k-Schritt–Verfahrenk∑

l=0

αlyi+l = hk∑

l=0

βlfi+l, das die Stabilitats-

bedingung (3.44) erfullt, hat maximale Konsistenzordnung

k + 1 falls k ungerade

k + 2 falls k gerade

Die Ordnung k + 2 kann nur erzielt werden, wenn alle NST des charak-

teristischen Polynoms ρ auf dem Rand des Einheitskreises liegen (schwach

stabiles Verfahren).

Beispiele:

k = 1: Maximal p = 2, wird erreicht von Adams–Moulton

yi+1 − yi = h2(fi+1 + fi) Trapezformel

k = 2: Maximal p = 4, wird erreicht von Milne

(aber nur schwach stabiles Verfahren)

Bemerkungen:

1) Der Beweis der Dahlquist–Barriere verlangt viel funktionentheoretische

Hilfsmittel, s. Hairer/Wanner S. 384.

2) Aufgrund der Testgleichung y′ = 0 spricht man manchmal auch von

0–Stabilitat.

Zum Abschluss der MSV noch ein paar Worte zur Implementierung. Im

Gegensatz zu den RK–Verfahren ist diese sehr komplex und lasst viel Spiel-

raum fur Heuristiken. Die heute verfugbaren Codes gleichen in gewisser

Hinsicht “ nervosen Rennpferden”.

105