2017-10-19 140 views

回答

0

解釋性補充天文年曆第三版第239所指出,地方平均太陽時,LMSoT,由

與UT和觀察者的東經LMSoT = UT +ƛ

UT通常認爲是指UT1。要將UTC轉換爲UT1,請參閱公告A https://www.iers.org/IERS/EN/DataProducts/EarthOrientationData/eop.html

對於2016/08/27 UT1 - UTC = -0.243031。原始的海報只能工作到毫秒,所以到-0.243。 2016/08/27 19:19:00.000 UTC = 19:18:59.757 UT1。

波士頓緯度,-71.03°,轉換爲時間,= -4ħ44米7.200小號

波士頓LMSoT = 19:18:59.757 - 4:44:7.2000 = 14:34:52.557

原始海報可以簡化程序,具體取決於所需的實際精度。尤其是,UTC始終在UT1的0.9 s內,因此如果不需要精確到秒,則可以跳過查找UT1 - UTC的步驟。

+0

你如何將經度轉換爲時間? ƛ符號代表什麼? – Rose

+0

ƛ代表經度。由於一個完整的旋轉可以被認爲是360°或24小時,並且360/24 = 15,所以度數除以15以獲得小時數。 –

0

我找到了一個解決方案here使用pyephem。如果這是一個問題,它會考慮夏令時。

from ephem import Sun, Observer, pi, hours 

dt = '2016/08/27 19:19' 

sun = Sun() 
sun.compute(dt) 

boston = Observer() 
boston.lat = '42.37' 
boston.lon = '-71.03' 
boston.date = dt 
ra, dec = boston.radec_of('0', '-90') 

print 'Sun right ascension:', sun.ra 
print 'Boston nadir right ascension:', ra 
print 'Solar time:', hours((ra - sun.ra) % (2 * pi)), 'hours'