Domanda

Voglio calcolare la posizione della Terra (rispetto al Sole) e asse rotazioni per una certa data e l'ora. E 'ok per assumere il Sole è fermo al 0,0,0 coordinate. deviazioni molto minori, a causa della forza gravitazionale lune per esempio, possono essere ignorati. Tutto ciò accurata all'interno di una laurea o così è abbastanza buono.

Ci sono delle librerie / sorgente / dati là fuori che mi aiuterà realizzare questo?

È stato utile?

Soluzione

Il codice aa-56, che può essere scaricato da qui , include un'effemeridi solari che probabilmente si incontrano I tuoi bisogni. Per i lavori di alta precisione che ci si vuole qualcosa di più preciso, come DE421 del JPL, ma ci sono alcuni scomodi grandi tavoli di coefficienti coinvolti, ed è probabilmente estremo eccessivo se sei felice con una precisione di 1 grado.

La rotazione della Terra in un dato momento è dato dal Greenwich tempo siderale.
Jean Meeus' 'Astronomical Algorithms' (un buon riferimento per avere per questo tipo di calcoli!) fornisce una formula per theta0 (angolo di rotazione cumulativa in gradi) in termini di data JD Julian:

T = (JD - 2451545.0 ) / 36525

theta0 = 280.46061837 + 360.98564736629*(JD-2451545.0) + 
           0.000387933*T*T - T*T*T/38710000.0

theta0 = 0 gradi mod 360 rappresenta l'istante in cui il meridiano di Greenwich è allineato con ascensione retta 0:00 coordinate celesti.

Altri suggerimenti

Sì. Quello che vi serve è un pacchetto Ephemeris .

Il JPL ha un servizio online di Ephemeris che farà i calcoli per voi, quindi se siete web in grado si può colpire che fino.

Ho trovato un libero Ephermeris pacchetto troppo, ma sembra che colpisce solo il sito JPL per te. Tuttavia, c'è un link per scaricare lì database del JPL e farlo funzionare fuori di questo. Quindi, se si desidera lavorare non in linea e non vi occupate di aggiornamento del database dal JPL manualmente ogni tanto, che potrebbe essere un'opzione.

In Python, utilizzando il ephem libreria:

>>> import ephem
>>> sun = ephem.Sun()
>>> sun.compute(ephem.now())
>>> sun.hlong, sun.hlat, sun.earth_distance
(69:41:32.6, 0:00:00.2, 0.98602390289306641)

ephem non fornisce una comoda rappresentazione della Terra come un corpo, ma sun.hlong e sun.hlat dare la longitudine e la latitudine eliocentrica della Terra. Questo potrebbe essere meglio documentato.

Per la rotazione della Terra, forse si può dire che valore che stai cercando qui. (Normalmente usiamo l'ora del giorno, ma penso che è generalmente chiaro come entrare in possesso di questo!)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top