Wo finde ich einen Datensatz der Anfangsbedingungen unseres Sonnensystems?

Wie der Titel schon sagt, brauche ich eine Reihe von Daten unseres Sonnensystems. Ähnlich wie hier http://bima.astro.umd.edu/nemo/archive/#iau25 , aber genauer gesagt, die Dubinsky Milky Way-Andromeda-Daten.

Ich erstelle eine n-Körper-Simulation für die Schule und kann anscheinend keine anfänglichen Partikelbedingungen finden, mit denen ich unser Sonnensystem in der von mir entwickelten Software simulieren könnte. Ich brauche Anfangspositionen, Geschwindigkeit und Masse.

Irgendeine Idee, wo ich das finden könnte?

Antworten (4)

Der Ephemeriden-Generator von Horizons kann Ihnen die Positions- und Geschwindigkeitsvektoren eines Planeten zu einem bestimmten Zeitpunkt liefern.

Dies ist eine Reihe möglicher Optionen:

Geben Sie hier die Bildbeschreibung ein

Wenn Sie auf dieser Seite auf Ephemeriden generieren klicken , erhalten Sie Positions- und Geschwindigkeitsvektoren:

Geben Sie hier die Bildbeschreibung ein

Über den Positions- und Geschwindigkeitsvektoren befinden sich das julianische Datum sowie das konventionellere Datum.

Wikipedia kann die Massen von Sonne und Planeten angeben.

Sie sind wahrscheinlich schon lange weitergezogen, aber nur als Referenz werden die Anfangsbedingungen, die HORIZONS verwendet, erwähnt ("header.431_572") in ftp://ssd.jpl.nasa.gov/pub/eph/planets/Linux/ README.txt , aber der einzige Ort, an dem ich sie in "Tabellenform" finden konnte, ist in meinem eigenen Git-Repository:

https://github.com/barrycarter/bcapps/blob/master/ASTRO/header.431_572

Die Werte sind erklärt in http://ilrs.gsfc.nasa.gov/docs/2014/196C.pdf ab Seite 39, „VI. Initial Conditions and Constants“, insbesondere in den Tabellen ab Tabelle 4 auf Seite 47 und endet mit Tabelle 13 auf Seite 74.

Ich habe Skripte geschrieben, um die Anfangsbedingungen einzurichten und die Differentialgleichungen mit Mathematica numerisch zu lösen, daher kann Folgendes hilfreich sein:

https://github.com/barrycarter/bcapps/blob/master/ASTRO/README

https://github.com/barrycarter/bcapps/blob/master/ASTRO/bc-header-values.pl

https://github.com/barrycarter/bcapps/blob/master/ASTRO/bc-integrate.m

Wenn ich die Schrittgröße ausreichend reduziere (Mathematicas Standardschrittgröße ist zu groß), stimmen meine Ergebnisse genau mit denen von HORIZONS überein:

https://github.com/barrycarter/bcapps/blob/master/ASTRO/bc-integrate-compare.m

Ich konnte die kartesischen Orbitalvektoren für alle Hauptkörper von HORIZON nur in der J2000-Epoche erhalten. Ich könnte die Abdeckung durch die Zeit verlängern. Es ist leicht, eine Datenüberlastung zu bekommen, wenn man dies tut. Meine Simulation wird nur mit den Gesetzen der Gravitation und Bewegung modelliert. Dies ergibt Ergebnisse, die den veröffentlichten überraschend nahe kommen. Das Rückwärtslaufen des Sonnensystems (durch Umkehren der Geschwindigkeitsvektoren) hat mir die anfänglichen Vektoren zurück bis 1900 gegeben. Das ist alles, was ich brauchte, und die Ergebnisse waren für meine Zwecke nah genug. Ich habe noch die CSV-Dateien.

Ich hatte auch alle möglichen Probleme mit dem Horizont-Interface. Beispielsweise hatte eine Änderung des Datums keine Auswirkung auf den Wert der Vektoren. dh: alle angegebenen Startdaten haben die gleichen Werte. In letzter Zeit war ich nicht in der Lage, dieses Kunststück zu duplizieren. Es gibt offensichtlich einige ernsthafte Probleme mit dieser Schnittstelle, besonders in letzter Zeit.

Ich weiß, dass die Daten, die ich bekommen habe, korrekt waren, weil sie perfekt mit veröffentlichten Ereignissen korrelieren, zB: dem jüngsten Merkurtransit.

Auch ich suche noch nach solchen Daten.

In welcher Sprache schreiben Sie diese Simulation? Ist es 2D oder 3D? Benötigen Sie nur Positionen und Geschwindigkeiten für die Planeten unseres Sonnensystems?

Ich habe genau das getan (das Sonnensystem in Fortran simuliert) und ich brauchte keine genauen Anfangspositionen, alles, was ich brauchte, waren Anfangsradien (in AU von der Sonne / dem Massenmittelpunkt) und Anfangsgeschwindigkeiten. Verwenden Sie einen Zufallszahlengenerator, um die Planeten an zufälligen Orten entlang ihrer Umlaufbahnen zu verteilen. In Fortran sah das so aus:

CALL RANDOM_NUMBER(randNum)
degrees = 2*3.141592653
theta(1:15) = degrees*randNum(1:15)

Und da habe ich ein Array von 15 zufälligen radialen Positionen. Sie können Anfangsgeschwindigkeiten der Planeten unseres Sonnensystems von jeder seriösen Quelle erhalten.

Würde diese Lösung nicht davon ausgehen, dass Planeten kreisförmige Umlaufbahnen haben?
Ja, tut es leider. Zum Glück für uns ist es jedoch eine vernünftige Annahme. Welche Planeten versuchst du zu simulieren? Es wäre etwas hilfreicher, wenn wir mehr über die anfänglichen Parameter und Ziele Ihres Projekts wüssten.
Nun, zuerst mache ich das in C# mit OpenCL und OpenGL. Ich verwende den naiven O(n^2)-Algorithmus, da dieser am einfachsten in OpenCL zu implementieren war. Zuerst versuchte ich, die Milchstraße-Andromeda-Kollision zu simulieren, aber das stellte sich als sehr langsam heraus, also versuche ich jetzt nur, unser Sonnensystem in 2D zu simulieren.
Okay, also ... C# ist für diese Art des wissenschaftlichen Rechnens weit weniger geeignet als so etwas wie C/C++/Fortran. Wofür verwenden Sie OpenCL/GL? Das Sonnensystem zu simulieren ist viel einfacher als die Kollision von Milliarden Sternen, ja. Für den Anfang können Sie Merkur ignorieren, es sei denn, Sie interessieren sich wirklich dafür (es beeinflusst nichts anderes). Simulieren Sie dies, um zu sehen, wie es auf Instabilität oder ein anderes Endziel reagiert?
Nun, ich bin mit C# besser vertraut als mit Fortran, und ich verwende OpenGL für die Visualisierung und OpenCL für die Parallelität. Mein Endziel ist die Visualisierung der Umlaufbahnen der Planeten um die Sonne.
Ahh, das macht Sinn. Ich habe die Ergebnisse meiner Simulation nicht wirklich visualisiert (die Ergebnisse waren für mich eine riesige CSV-Datei), daher kann ich Ihnen leider nicht viel helfen. Es hört sich nicht so an, als ob Sie nach immenser Präzision streben, daher wird meine Antwort in Bezug auf die Anfangspositionen für Sie gut funktionieren.