2010-12-01 8 views
3

Je souhaite calculer la position de la Terre (par rapport au soleil) et les rotations d'axe pour une date et une heure données. Il est permis de supposer que le Soleil est stationnaire à la coordonnée 0,0,0. Des déviations très mineures, dues à l'attraction gravitationnelle des Lunes par exemple, peuvent également être ignorées. Quelque chose de précis dans un degré ou plus est assez bon.Calcul de la position et des rotations de l'orbite terrestre

Existe-t-il des bibliothèques/sources/données qui me permettront d'accomplir ceci?

+0

Avant de demander "Déterminer l'orientation de la terre avec le temps donné", trouvé celui-ci est ce que je veux. – Nianliang

Répondre

4

Le code aa-56, which can be downloaded from here, comprend une éphéméride solaire qui répondra probablement à vos besoins. Pour un travail de haute précision, vous voudriez quelque chose de plus précis comme le DE421 du JPL, mais il y a des tables de coefficients gênantes, et il est probablement excessif si vous êtes satisfait d'une précision de 1 degré.

La rotation de la Terre à un instant donné est donnée par l'heure sidérale de Greenwich.
Jean Meeus de "Astronomical Algorithms" (! Une bonne référence pour avoir ces sortes de calculs) donne une formule pour theta0 (angle de rotation cumulé en degrés) en termes de la date Julian JD:

T = (JD - 2451545.0)/36525 

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

theta0 = 0 degré mod 360 représente l'instant où le méridien de Greenwich est aligné avec l'ascension droite 0:00 en coordonnées célestes.

+0

+1, trouvé la formule ci-dessus au chapitre 12 Temps sidéral à Greenwich (page 88)! – Nianliang

2

Oui. Ce dont vous avez besoin est un paquet Ephemeris.

Le JPL has an online Ephemeris service qui fera les calculs pour vous, donc si vous êtes capable de Web, vous pouvez frapper ça.

J'ai aussi trouvé un free Ephermeris package, mais il semblerait que ce soit juste pour le site JPL. Cependant, il y a un lien pour télécharger la base de données du JPL et faire en sorte que cela fonctionne. Donc, si vous voulez travailler hors ligne et que cela ne vous dérange pas de mettre à jour manuellement votre base de données depuis le JPL, cela peut être une option.

2

En Python, en utilisant la bibliothèque ephem:

>>> 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 ne fournit pas une représentation pratique de la Terre en tant que corps, mais sun.hlong et sun.hlat donnent la longitude et la latitude héliocentrique de la Terre. Cela pourrait être mieux documenté. Pour la rotation de la Terre, vous pouvez peut-être dire quelle valeur vous recherchez ici. (Normalement, nous utilisons l'heure de la journée, mais je pense qu'il est généralement clair comment obtenir cela!)

Questions connexes