2013-04-15 43 views
2

行星的星座我試圖計算太陽lat和長時間使用PyEphem什麼我不明白的是,當我計算太陽的經度和星座如何計算正確的經度和使用PyEphem

>>> sun = ephem.Sun() 
>>> sun.compute('2011/05/04') 
>>> print ephem.Ecliptic(sun).lon 
43:02:58.8 

所以43:02:58.8在13.02金牛 但是當我試圖讓星座

>>> print ephem.constellation(sun) 
('Ari', 'Aries') 

它說白羊座的什麼是錯的,我不明白請一些一個扶

回答

3

g ^問題!

有兩個原因,你得到的答案不同於你的預期。

首先,天文學家目前使用的星座邊界是使用1875年發生黃道的位置確定的。從那時起,黃道上的「零經度」點繼續移動,因爲地球軸已經進入,所以你得到的答案將是幾度。要真正瞭解經度在1875年的座標,你要問這樣的:

import ephem 
sun = ephem.Sun() 
sun.compute('2011/05/04') 
print "Today's coordinates:", ephem.Ecliptic(sun).lon 
sun.compute('2011/05/04', epoch='1875') 
print "In 1875 coordinates:", ephem.Ecliptic(sun).lon 

運行此腳本,我得到的輸出:

Today's coordinates: 43:02:58.8 
In 1875 coordinates: 41:18:14.1 

因此,可以消除你的結果誤差的來源之一。需要注意的是PyEphem constellation()函數座標轉換爲1875年在其星座邊界的表中查找一個天空位置之前自動,如果你提供身體作爲它的參數有一個epoch比1875年

你的其他問題不同遇到的問題是官方星座界限標記形成了Ram(金牛座),Scales(天秤座)等等的數字的天空中的實際星羣。而且恰巧這些數字甚至沒有接近整個黃道上正好30°的距離(正如你可能預料的那樣,因爲你從你回來的角度減去30°)。如果你在黃道上的每一個角度打印星座,你會(a)發現星座的寬度差異很大,(b)你會發現13個而不是12個星座穿過黃道,因爲蛇夫座的一部分在於沿着1875年的黃道。

這裏有一些參考,可能會有所幫助:

http://en.wikipedia.org/wiki/Constellation#IAU_constellations

http://en.wikipedia.org/wiki/Precession

0

它在白羊座。下面是使用測試版阿里爲基準計算我:

>>> sun = e.Sun() 
>>> sun.compute('2011/05/04') 
>>> e.Ecliptic(sun).lon 
43:02:58.8 
>>> beta_ari = e.readdb('Sheratan,f|S|A5,01:54:38.5|98.74,28:48:28.9|-110.41,2.65,2000,0') 
>>> beta_ari.compute('2011/05/04') 
>>> e.Ecliptic(beta_ari).lon 
36:53:55.2 
>>> e.Ecliptic(sun).lon - e.Ecliptic(beta_ari).lon 
0.10735523133236013 
>>> e.degrees(e.Ecliptic(sun).lon - e.Ecliptic(beta_ari).lon) 
6:09:03.6 

太陽在黃道線是6:09的程度遠離Beta版阿里,所以它仍然在白羊座。 我也使用該日期與其他程序一起檢查了這個結果,結果是一樣的。