Numerisches Integrieren von Differentialgleichungssystemen

Das Anfangswertproblem für ein System von Differentialgleichungen 1. Ordnung der Form

y'(t,y(t)) = f(t,y(t)) mit y(0)=y0

für 0 ≤ t ≤ tEnd mit bis zu 4 Differentialgleichungen wird numerisch gelöst, d.h. es wird y(t) bestimmt.
Der Vektor y(t) enthält die Lösungen y1(t), y2(t), ... .
Der Vektor y(0) enthält die Anfangswerte der gesuchten Lösungen.
Diese Lösungen werden grafisch als Funktionsverlauf und auch als Wertetabelle ausgegeben.
Die hier verwendeten Verfahren sind Einschrittverfahren, eines davon mit Schrittweitensteuerung, wodurch die besten Ergebnisse erzielt werden.

Auch eine Differentialgleichung n-ter Ordnung (hier n ≤ 4) lässt sich lösen, indem man sie zunächst in ein Differentialgleichungssystem von n Differentialgleichungen umwandelt.
Dazu werden n-1 Hilfsvariablen für y' bis y(n-1) eingeführt und als n-te Gleichung die Differentialgleichung nach ihrer höchsten Ableitung y(n) aufgelöst.

So kann man die Differentialgleichung a(t)y'' + b(t)y' + c(t)y = f(t) lösen, indem man das folgende System erstellt:
y1' = y2
y2' = (f(t) - b(t) y2 - c(t) y1)/a(t)
y1(t) ist dann die gesuchte Lösung y(t) und y2(t) die zugehörige 1. Ableitung.


Heun-Verfahren
verbessertes Euler-Cauchy-Verfahren
Runge-Kutta-Verfahren 3.Ordnung
Runge-Kutta-Verfahren 4.Ordnung
Runge-Kutta-Verfahren 4.Ordnung mit Schrittweitensteuerung
y1'(t,yi) y1(0) y1(t)
y2'(t,yi) y2(0) y2(t)
y3'(t,yi) y3(0) y3(t)
y4'(t,yi) y4(0) y4(t)
Hilfsparameter
tEnd   Δt   Beispiele



weitere JavaScript-Programme