11

我想更具体地说明我想做的事情。我在 ECI 中获取坐标,我需要从中获取纬度和经度。我能怎么做?我正在搜索,但我找不到任何关于它的信息。再次感谢。

(我正在用java编写一个小程序,显示给定时间内卫星的位置。所以,我使用了NORAD SGP算法,我有位置(x,y,z)和速度(Vx,Vy, Vz)。但是根据我阅读的内容,该算法使用的坐标系是ECI。现在我需要在地图上绘制卫星,但我无法将此坐标转换为可以帮助我的某个系统。我想如果我可以将它转换为容易绘制的经度和纬度。你能帮我吗?我该怎么做?最好的选择是什么(UTM等)?谢谢。)

4

2 回答 2

9

您想要做的是称为 ECI/ECEF(笛卡尔)到大地测量(纬度/经度)的转换。这种转换是所有大地转换中最复杂的,因为封闭形式的解决方案很复杂。有关坐标系的讨论,请参见 Stevens 和 Lewis,飞机控制和模拟的第 34 页:http: //books.google.com/books/about/Aircraft_control_and_simulation.html ?id=T0Ux6av4btIC

ECI 到大地测量是一个两步过程:

第一步是最简单的,因为您需要将 ECI(地心惯性)转换为 ECEF(地心/地固定)。

第二步是将 ECEF 转换为大地测量。您可以在此处阅读有关通过 Newton-Ralphson 解决此问题的信息:http ://en.wikipedia.org/wiki/Geodetic_system

但是,如果我没记错的话,Newton-Raphson 在两极附近变得不稳定。封闭形式的解决方案要复杂得多。我已经成功实施了朱的方法。封闭形式解决方案的优点是没有迭代并且没有奇点(技术上存在奇点但不在地球之上)。参考文献:J.朱。以地球为中心的地球固定坐标到大地坐标的转换。技术报告 IEEE Log NO. T-AES/30/3/1666,IEEE,1993 年 12 月。

于 2012-02-24T13:02:34.473 回答
0

Python的 PyMap3D库具有eci2ecefecef2geodetic函数。它们默认与 Astropy 交互并且非常好,这要归功于Michael Hirsch 的辛勤工作(SciVision - 他接受捐赠)。

当然,您需要知道观察 ECI 坐标的时间;否则,您将无法将它们转换为 ECEF。我建议不要使用更简单的eci2geodetic函数,除非不需要高精度和准确度;它会更快一些,因为它不考虑地球的章动等)。

于 2021-09-03T19:33:11.900 回答