Wie kann man die steife Gleichung in diesem Restricted Three Body Problem numerisch lösen?


8

Ich bin bei der Lösung des Circular Restricted Three Body-Problems auf eine steife Gleichung gestoßen. [Ein Objekt bewegt sich unter Berücksichtigung des Effekts der Gravitationskräfte, die durch zwei in einem 2D-Raum fixierte Gravitationsquellen verursacht werden.]

Die Gleichungen sind folgende:

x=GM1(xx1)(xx1)2+y23GM2(xx2)(xx2)2+y23

y=GM1y(xx1)2+y23GM2y(xx2)2+y23

Weder die Euler-Methode noch Runge Kutta funktionieren, da die Eigenschaft in der Nähe von (x1,0) oder (x1,0) nicht gut ist. Die Derivate ändern sich zu schnell. Die Simulation kann nicht richtig gelöst werden. Das Objekt ist zu leicht auf die Gravitationsquelle zu treffen.

Wie kann ich das beheben?

Vielen Dank!


3
Was meinst du mit "Weder Euler-Methode noch Runge Kutta werden funktionieren"? Sind dies Ihre eigenen Implementierungen dieser Methoden? Verwenden Sie eine feste Zeitschrittgröße? Ich glaube, dass beide Methoden auch in der Nähe der Singularitäten gut funktionieren sollten, wenn Sie eine adaptive Zeitschrittgröße wählen.
Wolfgang Bangerth

Haben Sie eine implizite Methode wie Backward Euler ausprobiert ?
Paul

Antworten:



0

Eine gut lesbare Einführung in moderne ODE-Löser finden Sie in Kapitel 7 von Cleve Molers Buch Numerical Computing With MATLAB, das online hier verfügbar ist: http://www.mathworks.com/moler/odes.pdf Zu den Themen, die er behandelt, gehört Stabilität , wie man eine vorgeschriebene Genauigkeit mit variablen Zeitschrittalgorithmen und Anwendung auf das Zweikörperproblem erhält.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.