Klassisches Runge-Kutta-Verfahren
Table of contents |
2 Details |
Das klassische Runge-Kutta-Verfahren ist ein explizites 4-stufiges Einschrittverfahren der numerischen Mathematik zur näherungsweisen Lösung von Anfangswert-Problemenen (Gewöhnliche Differentialgleichungen). Der Name stammt von den deutschen Mathematikern Carl Runge und Martin Wilhelm Kutta. Runge hat als erster (1895) ein mehrstufiges Verfahren angegeben und Kutta die allgemeine Form expliziter s-stufiger Verfahren. Siehe das allgemeine Runge-Kutta-Verfahren.
Das klassische Runge-Kutta-Verfahren verwendet – wie die weitaus meisten numerischen Lösungsverfahren für Differentialgleichungen – den Ansatz, Ableitungen (Differentialquotientenen) durch (endliche) Differenzenquotientenen zu ersetzen. Die dabei bei nichtlinearen Funktionen notwendigerweise auftretenden Fehler (es werden sämtliche höheren Glieder der Taylor-Entwicklung vernachlässigt) können durch geeignete Kombinationen verschiedener Differenzquotienten teilweise kompensiert werden. Das Runge-Kutta-Verfahren ist nun eine solche Kombination, die Diskretisierungsfehler bis zur dritten Ableitung kompensiert.
Das Runge-Kutta-Verfahren kann nur für Anfangsbedingungen eingesetzt werden; für Randbedingungen müssen andere Verfahren eingesetzt werden.
Allgemeines
x | y | y' |
---|---|---|
Hinweis:In der Literatur wird häufig an Stelle der y'X direkt die Schrittdifferenz kX=h.y'X angegeben. Das ist insbesonders hinsichtlich der in den folgenden Abschnitten angegebenen Anwendung auf Differentialgleichungen höherer Ordnung unpraktisch und wird darum (weil es die schematische Rechenarbeit unterbricht und auch sonst keinen Gewinn bringt) hier nicht verwendet.
Mit den neuen Werten x1 und y1 kann dann der nächste Rungeschritt durchgeführt werden.
Die erzielte Genauigkeit liegt – bei genügend glattem f(x,y) – in der Größenordnung von h4.
Das obige Schema kann leicht auch auf Systeme von Differentialgleichungen Obwohl es Runge-Kutta-Verfahren gibt, die für Differentialgleichungen 2. oder höherer Ordnung speziell ausgelegt
sind, hat sich in der Praxis herausgestellt, daß – insbesonders wenn über viele Schritte gegangen wird
– das folgende Verfahren sehr brauchbar ist:
Sei
Wir erhalten dadurch ein System von n gewöhnlichen Differentialgleichungen 1.Ordnung:
die nach dem im obigen Absatz angegeben Schema gerechnet werden können. In diesem speziellen Fall vereinfacht sich das
Schema noch, da ja jedes ui gleich u'i-1 ist und daher für diese Ableitungen keine eigene Spalte
vonnöten ist. Nur in der letzten Spalte muß f(x,u0,u1,…un-1)
ausgewertet werden. Zu beachten ist allerdings, daß hier von rechts nach links zu rechnen ist, da ja für jeden Schritt
die Ableitungen des Vorschrittes benötigt werden und genau diese ja nicht aufgeschrieben wurden, sondern quasi rechts
vom aktuellen Wert eben errechnet wurden.
Systeme von Differentialgleichungen
erweitert werden. Es ist nur für jede abhängige Variable eine eigene Spalte yi resp. y'i
einzurichten und für jede die obigen Schritte auszuführen unter Verwendung der jeweiligen yi der
vorangegangenen Zeile.
Differentialgleichungen höherer Ordnung
eine gewöhnliche Differentialgleichung nter Ordnung. Dann werden folgende Hilfsfunktionen eingeführt: