我是PyEphem的新手,我試圖弄清楚它可以做什麼以及它是如何工作的。由於我不想用它作爲黑盒,並盲目信任我得到的任何數字,我想重新創建一個解釋爲here的示例。Python PyEphem計算方位角和海拔高度
該示例計算1998年8月10日23:10UT處給定觀察者的物體的方位角和高度。以下參數中給出:
RA = 16小時41.7分鐘,DEC = 36 d 28分鐘
觀察者的緯度是52 d 30分鐘北和經度1 d 55分鐘西。
根據示例(我可以在Excel中重新創建)的正確答案是AZ = 269.14634度和ALT = 49.169122度。
day = '1998/8/10 23:10:00'
longitude = ephem.degrees('-1.91667')
latitude = ephem.degrees('52.5')
star = ephem.FixedBody()
star._ra = '16:41:42.0'
star._dec = '36:28:00.0'
observer = ephem.Observer()
observer.date = day
observer.lon = longitude
observer.lat = latitude
star.compute(observer)
print 'Observer', observer
print 'RA', star.ra, 'DEC', star.dec
print 'AZ', star.az, 'ALT', star.alt
運行的程序給我這個輸出:
>>>
Observer <ephem.Observer date='1998/8/10 23:10:00' epoch='2000/1/1 12:00:00' lon=-1:55:00.0 lat=52:30:00.0 elevation=0.0m horizon=0:00:00.0 temp=15.0C pressure=1010.0mBar>
RA 16:41:39.23 DEC 36:28:33.5
AZ 269:09:54.9 ALT 49:10:57.7
爲AZ + ALT顯然是看球結果
我使用pyephem努力實現同樣的結果寫了下面的代碼到了這個例子,但很不相同。我也對這樣的事實感到困惑,即與我輸入的內容相比,RA和DEC在打印輸出時略有修改。
如果有人能夠幫助我瞭解結果不同的原因以及我可以或應該如何複製結果,我將不勝感激。謝謝。
編輯:更正了以下答案中指出的錯字。這個問題仍然有效。
EDIT2:好的,我已閱讀(並理解)爲什麼赤經和赤緯是由PyEphem從這個link調整的。我不明白的是,如果有什麼辦法讓PyEphem忽略調整相對論偏轉,垂頭和像差的光同樣的方式,你可以把它忽略大氣折射?我假設方位角的差異是由於RA和DEC的調整,但它確實很好。
相關:[太陽給定時間的位置,經度和緯度](http://stackoverflow.com/questions/8708048/position-of-the-sun-given-time-of-day-latitude-經度)(在R中實現)。 – jfs