4

这看起来是一项非常基本的任务,但我无法解决。

PyEphem 文档:

http://rhodesmill.org/pyephem/radec.html

描述了如何以相反的方式执行转换,从一个Body和一个Observer对象到表观地心位置,在.alt.az属性中具有仰角和方位角。

但是,我应该如何从 Elevation 和 Azimuth 开始并获得 RA 和 Dec?

例如,这是我想在赤道参考系中获得 RA 和 Dec 的一组坐标:

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

谢谢!

4

1 回答 1

2

这里有两个微妙之处。首先,您碰巧使用“高度”和“高度”来表示与 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)

让我知道这对于这个特定的观察是否具有物理意义,或者其中一个数字是否有误并且仍需要调整!

于 2012-01-24T06:50:15.063 回答