Ich habe versucht, ein Modell des Sonnensystems in einem Spiel zu bauen. Bisher ist es mir gelungen, jeden der Planeten mit keplerschen Elementen und Formeln von https://ssd.jpl.nasa.gov/?planet_pos in Position zu bringen . Ein Beispiel für Jupiter ist:
a e I L long.peri. long.node.
AU, AU/Cy rad, rad/Cy deg, deg/Cy deg, deg/Cy deg, deg/Cy deg, deg/Cy
-----------------------------------------------------------------------------------------------------------
Jupiter 5.20288700 0.04838624 1.30439695 34.39644051 14.72847983 100.47390909
-0.00011607 -0.00013253 -0.00183714 3034.74612775 0.21252668 0.20469106
An dieser Stelle möchte ich einige der Jupitermonde hinzufügen, aber dieselbe Seite scheint nicht die gleiche Art von Daten für diese Monde zu liefern, vielleicht weil sich die Monde unterschiedlich verhalten. Leider ist meine Mathematik nicht großartig; Normalerweise kann ich etwas Aufgeschriebenes umsetzen, aber ich habe nicht die Mittel, um es selbst auszuarbeiten.
Für die Jupitermonde sind die Daten aufgelistet unter: https://ssd.jpl.nasa.gov/?sat_elem#jupiter Hier ist ein Beispiel für Ganymed:
Sat. a e w M i node n P Pw Pnode R.A. Dec. Tilt
(km) (deg) (deg) (deg) (deg) (deg/day) (days) (yr) (yr) (deg) (deg) (deg)
Ganymede 1070400. 0.0013 192.417 317.540 0.177 63.552 50.3176072 7.155 63.549 132.654 268.168 64.543 0.068
Hier geben sie an, dass die Daten „ mittlere Bahnelemente bezogen auf die lokalen Laplace-Ebenen “ sind, im Gegensatz zu „ keplerschen Elementen für ungefähre Positionen der großen Planeten “.
Während die ersten 6 Parameter gleich zu sein scheinen (a, e, w, M, i, Knoten), haben die Keplerschen Elemente auch "Raten" oder Zeitableitungen ( laut diesem Beitrag: https://space.stackexchange. com/questions/8911/determining-orbital-position-at-a-future-point-in-time ). Die von der NASA freundlicherweise zur Verfügung gestellten Formeln für die Kepler-Elemente beruhen auf diesen Raten.
Wenn ich verstehen könnte, wie man die "Raten" für die Jupitermonde bestimmt, könnte ich vielleicht dieselbe Formel verwenden (ist das das Richtige?) Es sieht so aus, als ob diese Raten etwas sind, was ich können sollte aus den anderen für die Monde bereitgestellten Daten berechnen, aber ich konnte nicht feststellen, wie.
Mein Verdacht ist, dass ich entweder eine andere Formel für die Berechnung mit den Laplace-Ebenen benötige, oder ich muss diese "Raten" -Werte berechnen und dieselbe Formel verwenden, die ich bereits habe.
Ich versuche, kartesische (x, y, z) Koordinaten für jeden Mond zu generieren, wobei (0,0,0) das Zentrum von Jupiter selbst ist, für ein bestimmtes Datum/eine bestimmte Uhrzeit (normalerweise "jetzt").
Ich frage mich langsam, ob ich hier den falschen Baum anbelle. Kann jemand Licht ins Dunkel bringen
Ein hervorragendes Buch von Jean Meeus, „Astronomical Algorithms“, liefert die Berechnungen für Planetenpositionen und Jupiters galiläische Monde (Io, Europa, Ganymed und Callisto). Meeus erklärt die Mathematik nicht wirklich in großem Umfang, daher ist es relativ einfach, ihr als formelhaften Ansatz zu folgen. Er verwendet VSOP für Planetenpositionen und Lieskes E5-Theorie für die Monde (eine Erklärung für beide finden Sie auf Wikipedia). Als Bonus zeigt Meeus, wie Sie Berechnungen für beide Parameter mit einem geringeren Genauigkeitsgrad durchführen, was Ihre Berechnungsgeschwindigkeit verbessern könnte. Auch wenn dieses Buch etwas schwerfällig sein kann, möchten Sie vielleicht den Unterschied zwischen „Ephemeridenzeit“ und „irdischer Zeit“ nachlesen, da dies ebenfalls Ihre Genauigkeit beeinflusst.
Vielen Dank an die Leute, die versucht haben, mir dabei zu helfen, sowohl damals, als ich die Frage zum ersten Mal gestellt habe, als auch später.
Mit dem soliden Rat von @barrycarter in den Kommentaren habe ich versucht, die SPICE-Bibliothek zu verwenden , um die Positionen der verschiedenen interessierenden Himmelskörper zu berechnen.
Nach einigem Lesen und weiteren Ratschlägen von NAIF selbst habe ich es mir zur Aufgabe gemacht, die CSPICE-Bibliothek, Version 66, für die Arbeit mit iOS (und folglich macOS) zu portieren.
Ich habe dann das SPKMERGE-Tool verwendet , um Ephemeridendateien zu generieren, die nur die Daten enthielten, die ich für meine App benötigte. Die App lädt diese Dateien dann über CSPICE und generiert die benötigten Positionsdaten.
Die modifizierte Version der CSPICE-Bibliothek für iOS ist jetzt für andere verfügbar, die davon Gebrauch machen möchten.
Es ist zu finden unter:
Benutzer21
PKCLsoft
Benutzer21
PKCLsoft
Benutzer21
PKCLsoft