Explizites Euler-Verfahren

Explizites Euler-Verfahren

Studium
yk+1=yk+h⋅f(tk,yk),tk+1=tk+hy_{k+1} = y_k + h \cdot f(t_k, y_k), \qquad t_{k+1} = t_k + h

Voraussetzung: y′(t)=f(t,y(t)),y'(t) = f(t, y(t)), y(t0)=y0,y(t_0) = y_0, h>0h > 0

yky_k
Näherung für die Lösung y(t_k)
tkt_k
k-ter Zeitpunkt, t_k = t_0 + k · h
hh
Schrittweite
f(t,y)f(t, y)
rechte Seite der Differentialgleichung y′ = f(t, y)
y0y_0
Anfangswert zur Zeit t_0

Das explizite Euler-Verfahren löst y′ = f(t, y) näherungsweise, indem es in jedem Schritt der aktuellen Steigung folgt.

Erklärung

Das explizite Euler-Verfahren ist das einfachste Verfahren für Anfangswertprobleme y′=f(t,y)y' = f(t, y), y(t0)=y0y(t_0) = y_0. Ausgehend vom Anfangswert geht man in Schritten der Breite hh vorwärts. In jedem Schritt berechnet man die Steigung f(tk,yk)f(t_k, y_k) am aktuellen Punkt und folgt dieser Geraden bis tk+1t_{k+1}. Die Näherungslösung ist ein Streckenzug, daher der Name Polygonzugverfahren.

Das Verfahren entspricht dem Abbruch der Taylorreihe nach dem linearen Glied: y(t+h)≈y(t)+h y′(t)y(t + h) \approx y(t) + h \, y'(t).

Eigenschaften:

  • Konvergenzordnung 1: Der globale Fehler an einem festen Zeitpunkt ist proportional zu hh. Halbiert man hh, halbiert sich der Fehler ungefähr.
  • Explizit: yk+1y_{k+1} ergibt sich direkt aus bekannten Werten, ohne Gleichung zu lösen.
  • Stabilität: Bei abklingenden Lösungen muss hh klein genug sein. Für y′=λyy' = \lambda y mit λ<0\lambda < 0 ist ∣1+hλ∣<1|1 + h\lambda| < 1 nötig, also h<2∣λ∣h < \frac{2}{|\lambda|}. Sonst schwingt die Näherung mit wachsendem Betrag.

Für ff muss eine Lipschitz-Bedingung in yy gelten, damit die Lösung eindeutig ist und das Verfahren konvergiert.

Beispiele

y′=yy' = y, y(0)=1y(0) = 1 mit der exakten Lösung y=ety = e^t. Jeder Schritt multipliziert mit 1+h1 + h. Mit h=0,25h = 0{,}25 erreicht man t=1t = 1 nach vier Schritten:

y4=1,254≈2,4414,e≈2,7183y_4 = 1{,}25^4 \approx 2{,}4414, \qquad e \approx 2{,}7183

Mit h=0,1h = 0{,}1 und zehn Schritten ist y10=1,110≈2,5937y_{10} = 1{,}1^{10} \approx 2{,}5937. Der Fehler sinkt von 0,27690{,}2769 auf 0,12450{,}1245, ungefähr proportional zu hh.

y′=−2yy' = -2y, y(0)=1y(0) = 1 mit der Lösung y=e−2ty = e^{-2t}. Mit h=0,1h = 0{,}1 ist y1=1+0,1⋅(−2)=0,8y_1 = 1 + 0{,}1 \cdot (-2) = 0{,}8 und nach zehn Schritten y10=0,810≈0,1074y_{10} = 0{,}8^{10} \approx 0{,}1074; exakt ist e−2≈0,1353e^{-2} \approx 0{,}1353. Mit h=1,5h = 1{,}5 dagegen ist 1+hλ=−21 + h\lambda = -2, und die Näherung springt 1,−2,4,−8,16,…1, -2, 4, -8, 16, \ldots, obwohl die echte Lösung abklingt.

y′=t+yy' = t + y, y(0)=1y(0) = 1 mit h=0,5h = 0{,}5:

y1=1+0,5⋅(0+1)=1,5,y2=1,5+0,5⋅(0,5+1,5)=2,5y_1 = 1 + 0{,}5 \cdot (0 + 1) = 1{,}5, \qquad y_2 = 1{,}5 + 0{,}5 \cdot (0{,}5 + 1{,}5) = 2{,}5

Die exakte Lösung ist y=2et−t−1y = 2e^t - t - 1, also y(1)=2e−2≈3,4366y(1) = 2e - 2 \approx 3{,}4366.

Typische Fehler

  • Die Steigung am neuen statt am alten Punkt auswerten. Das wäre das implizite Euler-Verfahren.
  • Bei f(t,y)f(t, y) die Zeit tkt_k nicht mitführen und z.B. immer t0t_0 einsetzen.
  • Eine zu große Schrittweite wählen. Neben großem Fehler droht bei abklingenden Lösungen Instabilität.
  • Die Anzahl der Schritte falsch bestimmen: Von t0t_0 bis TT sind es T−t0h\frac{T - t_0}{h} Schritte.

Verwandte Formeln