我是 PyEphem 的新手,我正在尝试弄清楚它可以做什么以及它是如何工作的。由于我不想将其用作黑匣子并盲目相信我得到的任何数字,因此我想重新创建一个解释的示例here http://www.stargazing.net/kepler/altaz.html.
该示例计算给定观察者在 1998 年 8 月 10 日 23:10 UT 的物体的方位角和高度。给出以下参数:
RA = 16 小时 41.7 分钟,DEC = 36 天 28 分钟
观察者的纬度为北纬 52 d 30 分,西经 1 d 55 分。
根据示例(我可以在 Excel 中重新创建),正确答案是 AZ = 269.14634 度,ALT = 49.169122 度。
我使用 pyephem 编写了以下代码来尝试达到相同的结果:
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 的结果显然与示例大致相符,但相差甚远。我还对打印输出中的 RA 和 DEC 与我输入的内容相比略有修改这一事实感到困惑。
如果有人可以帮助我阐明为什么结果不同以及我可以或应该做什么来复制结果,我将不胜感激。谢谢。
EDIT:更正了下面答案中指出的拼写错误。这个问题仍然有效。
EDIT2:好的,我已经阅读(并且有点理解)为什么 PyEphem 从此调整赤经和赤纬link http://rhodesmill.org/pyephem/radec.html。我不明白的是是否有任何方法可以让 PyEphem 忽略调整相对论偏转, nutation and 光像差就像你可以让它忽略一样大气折射?我假设方位角的差异是由于 RA 和 DEC 的调整造成的,但最好确认一下。