EDIT MINORE: Dico qui sotto che la libreria Horizons di JPL non è open source. In realtà, è, ed è disponibile qui: http://naif.jpl.nasa.gov/naif/tutorials.htmlpyephem, libnova, stellarium, JPL Horizons non sono d'accordo sulla luna RA/DEC?
A 2013-01-01 00:00:00 UTC a 0 gradi di latitudine nord, 0 gradi est latitudine, livello di elevazione del mare, qual è il J2000 quest'epoca ascensione retta e declinazione della luna?
Purtroppo, le diverse librerie danno risposte leggermente diverse. Convertito per gradi, i risultati riassunti (RA): prima
Stellarium: 141.9408333000, 9.8899166666 [precision: .0004166640, .0000277777]
Pyephem: 142.1278749990, 9.8274722221 [precision .0000416655, .0000277777]
Libnova: 141.320712606865, 9.76909442356909 [precision unknown]
Horizons: 141.9455833320, 9.8878888888 [precision: .0000416655, .0000277777]
La mia domanda: perché? Note:
Mi rendo conto che queste differenze sono piccole, ma:
Io uso pyephem e libnova per il calcolo del sole/luna rise/set, e questi tempi possono essere molto sensibile alla posizione in latitudini più elevate (ad esempio, il sole di mezzanotte).
Posso capire che la libreria Horizons di JPL non è open source, ma gli altri tre lo sono. Non dovrebbe qualcuno risolvere le differenze in queste librerie e unirle? Questo è il mio reclamo principale . Gli autori delle librerie stellarium/pyephem/libnova hanno una differenza fondamentale in come eseguire questi calcoli, oppure fanno hanno solo bisogno di unire il loro codice?
realizzo anche ci potrebbero essere altri motivi i calcoli sono differente, ed apprezzerei tutto l'aiuto nella rettifica questi possibili errori:
Pyephem e libnova possono utilizzare l'epoca di la data invece di J2000
La luna è abbastanza vicina che la posizione dell'osservatore può influire sul suo effetto di parallasse RA/DEC.
Sto usando il python di Perl Astro :: Nova e Python, non le implementazioni originali C di queste librerie. Tuttavia, se queste differenze sono causate dall'uso di Perl/Python, ciò è importante in la mia opinione.
Il mio codice (w/risultati grezzi):
- In primo luogo, Perl e Astro :: Nova:
#!/bin/perl # RA/DEC of moon at 0N 0E at 0000 UTC 01 Jan 2013 use Astro::Nova; # 1356998400 == 01 Jan 2013 0000 UTC $jd = Astro::Nova::get_julian_from_timet(1356998400); $coords = Astro::Nova::get_lunar_equ_coords($jd); print join(",",($coords->get_ra(), $coords->get_dec())),"\n"; RESULT: 141.320712606865,9.76909442356909
- Second, Python and pyephem:
#!/usr/local/bin/python # RA/DEC of moon at 0N 0E at 0000 UTC 01 Jan 2013 import ephem; e = ephem.Observer(); e.date = '2013/01/01 00:00:00'; moon = ephem.Moon(); moon.compute(e); print moon.ra, moon.dec RESULT: 9:28:30.69 9:49:38.9
- The stellarium result (snapshot):
- The JPL Horizons result (snapshot):
[JPL Horizons richiede dati POST (non proprio, ma finta), così ho non poteva inviare un URL].
io non li (pigro) hanno messo in relazione, ma credo che ci sono molte domande senza risposta su StackOverflow che riducono efficacemente a questa domanda (inconsistenza di precisione biblioteche astronomiche), tra cui alcune delle mie domande .
sto giocando w questa roba a: https://github.com/barrycarter/bcapps/tree/master/ASTRO
Questo è fantastico, grazie! Non ho controllato tutto ciò che hai detto, ma a breve! – barrycarter