我应该使用哪个:Python-sgp4,PyEphem,python-skyfield

Bri*_*ian 5 python satellite coordinate-systems libraries sgp4

似乎完成了传播地球卫星/天体任务的Python工具的前景令人困惑。根据您要执行的操作,PyEphem或Python-SGP4可能更合适。如果满足以下条件,则应使用以下哪项:

  • 我想要地球卫星的ECEF / ECI坐标
  • 我想要一个天体的一般天空坐标
  • 近地与远处物体
  • 想要使用两行元素集

其中任何一项都能完成精确的轨道确定吗?如果没有,我应该去哪里/那里有哪些资源可以精确确定轨道?


我有点知道这里的答案。例如,POD不属于任何这些库。这些计算似乎非常复杂。IGS提供了许多对象的POD。我问的主要原因是出于文档目的。我不熟悉python-skyfield,但我有一种直觉,它可以完成其他两个功能。-布兰登·罗兹(Brandon Rhodes),我等待您的专业知识:)

小智 1

Michael 在他的评论中提到了这一点,但我相信 PyEphem 在当前的 Python 3 版本中已被弃用。话虽这么说,如果您要使用 TLE,SGP4 就是专门用来处理 TLE 的。您在 TLE 中看到的非开普勒和非牛顿项被专门传递到 SGP4 传播器(B* 阻力、平均运动的二阶导数等)。一旦您离开地球邻域(超出 GEO),SGP4 就不会处理这些情况。SGP4 本身本质上是一个近地传播器,在行星际甚至顺月体系上无法很好地扩展。事实上,如果远地点和近地点都超出 GEO,我会倾向于避免使用 SGP4。

值得注意的是,SGP4 在 TEME 框架(真正的赤道平均分点)中输出内容。这是一个惯性系。如果您想要 ECEF 坐标,您将需要找到一个将您从惯性坐标系转换为固定坐标系的包。无论您是否需要地球固定坐标,我都强烈建议您进行此转换,以便您可以转换为您选择的惯性坐标系。