我想用pyephem计算卫星的位置。你知道吗
在大多数情况下,它似乎提供了有效的数据。但是对于10%的太空轨道来说,它的结果是错误的。例如:
tlelines = [
'0 SCOUT X-4 DEB',
'1 00722U 63053C 18107.73853716 .10519988 29718+0 80827-1 0 9998',
'2 00722 78.3737 228.3264 0048420 261.5483 98.0279 15.81271626581437'
]
sat = ephem.readtle(*tlelines)
now = ephem.now() # 43314.17601851852
sat.compute(now)
print sat.elevation # computed altitude, according to documentation
结果是9.793773380577526e+18
,这绝对是错误的。根据太空轨道,远地点和近地点分别为359公里和294公里。你知道吗
出了什么问题,我如何修正这个计算?你知道吗
PS.Python版本2,pyephem版本3.7.6.0
问题似乎是你的坐标太老了;卫星坐标通常只在发布的那一刻的几周内准确。在这种情况下:
坐标在你试用时是4个月大:
如果你尝试一个像
now = '2018-04-18'
这样的值,我想你会得到一个更合理的数字。你知道吗相关问题 更多 >
编程相关推荐