Testen der Genauigkeit einer Sonnensystem-Simulation

Ich habe ein Java-Programm geschrieben, um das Sonnensystem zu modellieren, und ich muss seine Genauigkeit testen. Was wären einige gute Möglichkeiten, dies zu tun? Ich habe die Erhaltung von Energie und Drehimpuls überprüft. Ich verwende den Velocity-Verlet-Algorithmus, der beide perfekt konserviert zu haben scheint.

Ich habe mich gefragt, ob es eine Möglichkeit gibt, zu überprüfen, ob sie nach einer Umlaufperiode wieder dort sind, wo sie begonnen haben, aber ich konnte nicht herausfinden, wie man eine Überprüfung programmiert. Ich hätte wirklich gerne eine Möglichkeit, die Auswirkung der Änderung des Zeitschritts zu messen, aber ich weiß nicht, was ein gutes Maß wäre? Kann ich sonst noch etwas tun?

Auf welches Detail der Interaktionen geht Ihr Programm? Berücksichtigt es die Wechselwirkung der Planeten? Verwendet es GR oder Newtonsche Mechanik? Sie könnten versuchen zu prüfen, ob die Keplerschen Gesetze erfüllt sind.
@MartinUeding Nur Newtonsche Mechanik, Planeten interagieren, werden aber nur als Punktmassen modelliert.

Antworten (1)

Eine einfache und generische Art, solche Programme zu testen, ist die Entwicklung rückwärts in der Zeit: Wähle einige Anfangsbedingungen, entwickle eine Zeit lang T , dann invertieren Sie alle Geschwindigkeiten, entwickeln Sie sich erneut für eine Zeit T , und überprüfen Sie, wie nah Sie an den Anfangsbedingungen sind.