这里有两个微妙之处。首先,您碰巧使用“高度”和“高度”来表示与 PyEphem 库中这两个术语的含义相反的意思——因此您将天空中的点称为“高度/方位角”位置而不是“高度” / azimuth”位置。其次,PyEphem 似乎忘记提供一种简单的方法将日期从Julian转换为它自己的格式。虽然有一个函数julian_date()
可以反其道而行之,但我们必须自己做一些工作通过弄清楚ephem
' 的名称是什么来走向另一个方向。
考虑到这些规定,我认为这个脚本可能会回答您的问题:
import ephem
az = 3.30084818 #rad
el = 0.94610742 #rad
lat = 34.64 #deg
lon = -103.7 #deg
alt = 35800.26 #m
ut = 2455822.20000367 #julian date
# Which Julian Date does Ephem start its own count at?
J0 = ephem.julian_date(0)
observer = ephem.Observer()
observer.lon = str(lon) # str() forces deg -> rad conversion
observer.lat = str(lat) # deg -> rad
observer.elevation = alt
observer.date = ut - J0
print observer.date
print observer.radec_of(az, el)
它产生的答案对于这个特定的观察是否正确?这是脚本为我打印的内容:
2011/9/17 16:48:00
(9:16:24.95, -0:45:56.8)
让我知道这对于这个特定的观察是否具有物理意义,或者其中一个数字是否有误并且仍需要调整!