Kurs:Gewöhnliche Differentialgleichungen/4.0 Einführung
Runge-Kutta Verfahren
[Bearbeiten]Runge-Kutta Verfahren (RKV) sind spezielle Einschrittverfahren, die durch ihre Struktur eine höhere Konsistenzordnung und damit eine höhere Genauigkeit der numerischen Lösung ermöglichen. Diese Verfahren wurden vom deutschen Mathematiker Wilhelm Kutta 1901 auf Basis eines Artikels von Carl Runge aus dem Jahre 1895 entwickelt.
Betrachten wir die Gleichung , so wird die höhere Konsistenzordnung der Runge-Kutta-Verfahren durch die höhere Anzahl von Funktionsauswertungen der Funktion (rechte Seite der Gleichung) an den Stellen zwischen und erreicht. Die Zwischenstellen nennen wir Stufen, oder Stützstellen, wobei und die Schrittweite ist.
In den bislang studierten ESV, wie das Eulerverfahren, Trapezregel, Mittelpunktregel (in expliziter oder impliziter Form), wurde in jedem Schritt ein bis zwei Auswertungen von an den Stellen oder verwendet. In den RKV wird die Anzahl der Stützstellen erhöht und ihre Lage entsprechend bestimmt, damit eine möglichst hohe Konsistenzordnung erreicht werden kann. Die bisher bekannten ESV können als die einfachsten Runge-Kutta Verfahren einordnet werden.
Definition 4.1 (Runge-Kutta Verfahren).
Sei die Anzahl von Stufen/Stützstellen, die Koeffizientenmatrix mit Einträgen , sei Vektor der Gewichte und Vektor der Stützstellen.
Das Verfahren mit der Vorschrift heißt s-stufiges Runge-Kutta Verfahren.
Die Runge-Kutta Verfahren können schematisch auch im sog. Butcher-Tableau angegeben werden:
oder kurz
.
Beispiel 4.1.
Die Funktionsauswertung eines RKV für ist wobei die zweite Zeile der Matrix ist und
Der neue Wert der numerischen Lösung nach einem Schritt des RKV (auch Runge-Kutta Update genannt) berechnet sich nach (4.2) als
Der Vergleich dieser Gleichung mit der Volterra’schen Integralgleichung (2.1) auf dem Intervall ,
führt zu folgenden Überlegungen: Ersetzt man das Integral sinnvol durch eine Summe, sodass
so wird eine Quadratur von angewendet, um den neuen Wert zu berechnen. Dabei sind die Knoten dieser Quadratur an den Stützstellen (vergleiche (4.1)) und die Gewichte der Quadratur. Ein RKV zu konstruieren bedeutet daher, eine geeignete Quadratur des Integrals zu finden. Bei den einfachsten RKV (dabei handelt es sich um die im 3. Kapitel vorgestellten Einschrittverfahren) handelt es sich um die Anwendung von Quadraturen, wie beispielsweise die Rechteck-, Mittelpunkt- und Trapezregel für das Integral (siehe Bemerkung 3.1 Punkt iii) und Abbildungen 3.1, 3.2, 3.3, 3.4). Das Butcher-Tableau kann wie folgt interpretiert werden: Der Vektor beschreibt die Stützstellen und der Vektor die Gewichte der zugehörigen Quadratur von auf dem Intervall . Die Matrix spiegelt in gewissem Sinne die Differentialgleichung zurück. Dies kann wie folgt begründet werden:
Nach der Definition der Runge-Kutta Verfahren, siehe (4.1), und mithilfe der Differentiagleichung kann darauf geschlossen werden, dass die die Ableitungen der gesuchten Funktion an den Stützstellen approximieren, sodass mit und - fest,
gilt. Da die Matrix zur Berechnung von dient, spiegelt diese automatisch die Differentialgleichung in oben beschriebenem Sinne zurück.
Anhand der Matrix kann zwischen expliziten und impliziten RK- Verfahren unterscheiden werden:
- Explizite Runge-Kutta Verfahren (eRKV):
Ist die Matrix eine untere Dreiecksmatrix, handelt es sich um explizite RKV. Hierbei werden in jedem Schrit für die Berechnung von immer nur die vorher berechneten verwendet. In diesem Fall kann man durch das Einsetzen explizit berechnen als
- Implizite Runge-Kutta Verfahren (iRKV):
Ist die Matrix eine voll besetzte Matrix, so hängen für jedes im Allgemeinem von allen ab. Die Berechnung von erfolgt dann durch die Lösung eines (linearen oder ggf. nichlinearen) Systems von Gleichungen. In diesem Fall ist die Berechnung von einfacher oder kostengünstiger, wenn eine Dreiecksmatrix ist. Man unterscheidet in diesem Fall zwischen:
- DIRK-Verfahren: ’diagonal implizit RK -Verfahren’:
- DIRK-Verfahren: ’diagonal implizit RK -Verfahren’:
Matrix ist eine Dreiecksmatrix mit ,
- SDIRK-Verfahren: ’simply diagonal implizit RK -Verfahren’:
- SDIRK-Verfahren: ’simply diagonal implizit RK -Verfahren’:
Matrix ist eine Dreiecksmatrix mit ist eine Einheitsmatrix,
- SIRK-Verfahren ’simply implizit RK -Verfahren’:
- SIRK-Verfahren ’simply implizit RK -Verfahren’:
Matrix ist eine vollbesetzte Matrix, wobei und die obere Dreiecksmatrix besteht auch aus ’s.
Nun geben wir einige konkrete Beispiele von Runge-Kutta Verfahren an:
Explizites Eulerverfahren, :
Implizites Eulerverfahren, :
Verbessertes Eulerverfahren (explizite Mittelpunktregel), :
Klassisches Runge-Kutta Verfahren, :
- Regel, :
Zwei weitere explizite 3-stufige RKV sind durch folgende Butcher-Tableaus gegeben:
Verfahren von Heun, (1900): 3-stufiges eRKV