标准时期变化后的小行星位置误差

时间:2015-11-25 16:57:56

标签: pyephem

最近,MPCORB数据库改变了标准时代。然后pyephem未能计算出小行星的位置。

以2015-11-23.55 UT为例,以Asteroid 2001 BP25为例。对于新旧标准时期,我计算了它的位置如下:

import ephem
import datetime

tobs = ephem.Date( datetime.datetime(2015, 11, 23, 13, 12, 13) ) # observation time

obj = ephem.readdb( "2001 BP25 0,e,3.47304,134.76688,294.08950,2.4271529,0.26065039,0.2231376,330.92520,06/27.0/2015,2000,H 16.0,0.15" ) # old orbital elements
obj.compute( tobs )
print "With old orbital elements, ra = %.6f deg, dec = %.5f deg" % ( obj.a_ra, obj.a_dec )

obj = ephem.readdb( "2001 BP25 0,e,3.47303,134.76696,294.10956,2.4270882,0.26066081,0.2231111,23.04368,01/12.0/2016,2000,H 16.1,0.15" ) # new orbital elements
obj.compute( tobs )
print "With new orbital elements, ra = %.6f deg, dec = %.5f deg" % ( obj.a_ra, obj.a_dec )

然后我获得了以下输出:

With old orbital elements, ra = 1.879871 deg, dec = 0.30927 deg
With new orbital elements, ra = 1.891992 deg, dec = 0.30874 deg

在线IAU MP检查员确认了用旧轨道元素计算的坐标。

因此,我想知道:在pyephem中是否有一些常数应该为新的标准时期改变?

1 个答案:

答案 0 :(得分:0)

令人高兴的是,这个问题已经解决,但我只是意识到解决方案还没有在Stack Overflow上发布回来。事实证明,Asker用于将数据库转换为XEphem格式的转换例程是使用时间的常量,而不是使用原始文件本身的纪元。修复翻译也解决了坐标的差异 - 详细信息在这里得出:

https://github.com/brandon-rhodes/pyephem/issues/89