Kurs:Gewöhnliche Differentialgleichungen/Eingebettete Runge-Kutta Paare

4.2 Eingebetette Runge-Kutta Paare

Bearbeiten

Auch mit expliziten Runge-Kutta Verfahren ist die Schrittweitensteuerung möglich. Im Unterschied zu dem in Absatz 3.2 beschriebenem Ansatz für die Schrittweitensteuerung des expliziten Eulerverfahrens, wird hier für die Abschätzung des lokalen Fehlers die Schrittweite nicht halbiert, sondern es werden zwei eRKV mit unterschiedlichen Konsistenzordnungen verwendet. Um die Anzahl der Funktionsauswertungen in der Berechnung der Zwischenstufen   so gering wie möglich zu halten, verwenden diese zwei ’eingebetteten’ eRKV gemeinsame Stützstellen. Hierbei ist zu erwähnen, dass nach den Erkentnissen über die Stufenzahl und Ordnung eines eRKV das Verfahren höherer Ordnung weitere zusätzliche Zwischenstellen benötigt, um diese höhere Ordnung zu erreichen.

Als eingebetettes Runge-Kutta Paar verstehen wir zwei eRKV mit   gemeinsamen Stützstellen (und Stufen). Das erste der eRKV hat dabei die Konsistenzordnung   und das zweite Verfahren erreicht mit den   gemeinsamen Stützstellen und den zusätzlichen   Stützsstellen, die Konsistenzordnung  . Die Gewichtsvektoren dieser beider eRKV sind im Allgemeinen unterschiedlich und die Iterationsvorschrifte (die Runge-Kutta-Updates) der beiden Verfahren sind:   Wegen den s gemeinsamen Stufen werden in beiden Verfahren die Funktionsauswertungen   verwendet. Ein Beispiel eines eingebetetten Runge-Kutta Paares ist das
Fehlenberg RK-Paar der Ordnung 2 und 3:

 

 



4.2.1 Schrittweitensteuerung bei eingebetetten Runge-Kutta Verfahren

Bearbeiten

Im Folgenden beschränken wir uns auf den Fall   und leiten die Formel der Schrittweitensteuerung her. Seien   die numerischen Lösungen in  , die aus der exakten Lösung   statt   ausgehen und die Verfahren haben die Konsistenzordnung   und  . Dann gilt für die lokalen Fehler nach Anwendung der Taylorentwicklung (mit Taylorrest)  

wobei  .   nennen wir die führenden Fehlerglieder der beiden Verfahren. Diese sind die Glieder mit der kleinsten Potenz von   und enthalten bis zu  -te und  -te partielle Ableitungen der Funktion   in  . Nach dem Subtrahieren der beiden Gleichungen erhalten wir    

d.h. der lokale Fehler des ersten Verfahrens (eRKV1) lässt sich als Unterschied der beiden numerischen Lösungen abschätzen. Vernachlässigen wir in (4.9) den Rest   mit höheren Potenzen von  , erhalten wir die Abschätzung des lokalen Fehlers mithilfe der numerischen Lösungen der zwei eingebetteten eRKV,[1]  

Gleichzeitig gilt für ein Verfahren der Konsistenzordnung  , dass  

Danach lässt sich die Fehlerkonstante   bei einer festen Schrittweite   berechnen als  

Diese Abschätzung der Fehlerkonstanten ist die Grundidee der Schrittweitensteuerung bei eingebetteten Runge-Kutta Verfahren.


ALGORITHMUS:

  1.  , wähle eine Probeschrittweite   und die Toleranz   für den lokalen Fehler.
    Berechne die numerische Lösung im nächsten Schritt   mit Probeschrittweite  :
    • mithilfe eines Schrittes des eRKV1 mit Schrittweite   und   Stufen:  ,
    • mithilfe eines Schrittes des eRKV2 mit Schrittweite   und   Stufen:  .
  2. Schätze die Fehlerkonstante   anhand (4.10) ab, als  
  3. Berechne die optimale Schrittweite  , sodass der lokale Fehler   etwa der vorgegebenen Toleranz   entspricht, wobei die Fehlerkonstante wie oben geschätzt wird:      
  4. Bestimme (und speichere) die numerische Lösung im nächsten Schritt   mithilfe der Schrittweite   und des Verfahrens eRKV2 der Ordnung  :  

Weitere Beispiele der eingebetteten Runge-Kutta Verfahren sind die Formelpaare: Dorman   Prince (4, 5 Ordnung), oder Bogacki   Shampine (2, 3 Ordnung), die als Matlab-Funktionen ’ODE45’ und ’ODE23’ bekannt sind. Oft werden die Runge-Kutta Paare als FSAL-Typ (First Same As Last) Verfahren implementiert, wobei in jedem Zeitschritt die erste Funktionsauswertung   von   gespart wird, da diese mit der letzten Auswertung   des vorherigen Schrittes übereinstimmt, wie es in folgendem Verfahren der Fall ist:


 

Hier gilt  

  1. Diese Abschätzung setzt voraus, dass die Werte   dem exakten Wert in   entsprechen. Dies ist in der Praxis nicht der Fall. Da aber bei den eingebettenen Runge-Kutta Verfahren die numerische Lösung der höheren Ordnung als Lösung gespeichert wird, und diese der exakten Lösung näher liegt, kann die Absschätzung des lokalen Fehlers mittels numerischen Lösungen ausgehend aus (fast) exater Lösung   in der Praxis verwendet werden.