Rektaszension für zwei Planeten und ihre Trennung mit Python berechnen

Ich experimentiere mit der Python-Bibliothek PyEphem für Astronomie und versuche, einige der grundlegenden Berechnungen dort nachzubilden/zu verstehen.

Es gibt eine Funktion namens Trennung, die bei zwei Planeten und einem Datum/einer Uhrzeit den Abstand (Winkel) zwischen diesen beiden Planeten in Bezug auf ihre „x“-Projektion in einer Ebene berechnet.

Für 2018/1/1 für die Planeten Merkur und Mars haben wir also:

import ephem
import math

mercury = ephem.Mercury('2018/1/1')
mars = ephem.Mars('2018/1/1')

s1 = ephem.separation(mercury, mars)
print(math.degrees(s1))

Was zurückkehrt

33.792384499568264

Aber wenn ich dies ohne die Trennfunktion berechnen wollte, dann wäre die Berechnung meiner Meinung nach so einfach wie die "Rektaszension" von 1 minus der "Rektaszension" der anderen:

math.degrees(mercury.ra) - math.degrees(mars.ra)

Was zurückkehrt

35.114532008671574

Warum sind die Winkel unterschiedlich? Da ich keinen Breiten- und Längengrad des Beobachters einbeziehe, sollen laut PyEphem alle Berechnungen geozentrisch sein.

Ist jemand mit den Berechnungen hinter PyEphem oder einer anderen Bibliothek mit eingebauten Ephemeriden vertraut, die konsistente Ergebnisse für die Trennung liefern können?

Antworten (1)

Das Problem scheint in Ihrem Verständnis der separationFunktion zu liegen. Das behauptest du

Es berechnet den Abstand (Winkel) zwischen diesen 2 Planeten in Bezug auf ihre "x" -Projektion in einer Ebene.

die Dokumentation besagt jedoch

Die separation()Funktion berechnet den Winkel in Grad zwischen zwei Körpern, gemessen an ihrer Rektaszension und Deklination.

Im Allgemeinen separation() kann der Winkel zwischen jedem Paar von sphärischen Koordinaten gemessen werden , solange die Elemente jeder Koordinate die sphärische Länge (Winkel um die Kugel) gefolgt von der sphärischen Breite (Winkel über oder unter dem Äquator) sind. Jedes Paar sollte als eine Sequenz aus zwei Elementen wie ein Tupel oder eine Liste bereitgestellt werden. Geeignete Koordinatenpaare umfassen Rektaszension und Deklination; heliozentrischer Längen- und Breitengrad; Azimut und Höhe; und sogar die geografische Länge und Breite zweier Orte auf der Erde.

Dies bedeutet, dass diese Funktion den Winkelabstand zwischen den beiden Objekten berechnet, nicht nur den Abstand in einer bestimmten Ebene. Wenn Sie dieselbe Berechnung durchführen möchten (wie in der Dokumentation angegeben), sieht es so aus, als wollten Sie tatsächlich die allgemeine Winkelabstandsformel .

θ = cos 1 [ Sünde ( δ 1 ) s ich n ( δ 2 ) + cos ( δ 1 ) cos ( δ 2 ) cos ( a 1 a 2 ) ]

wo δ [ π / 2 , π / 2 ] ist die Deklination, und a [ 0 , 2 π ] ist die rechte Himmelfahrt.

danke, das ist eine tolle Aufklärung. Tatsächlich war mein Wissen nicht richtig