【发布时间】:2020-12-10 16:05:18
【问题描述】:
我想找到 python 库,我可以在其中获得 ECEF(以地球为中心,以地球为固定)框架中的太阳坐标 - 地心坐标。我尝试使用 jplephem、pyephem 等,但没有一个可以提供这些坐标。请给我图书馆,算法等,我可以在其中获得这些坐标。 问候。
【问题讨论】:
标签: coordinates pyephem sun
我想找到 python 库,我可以在其中获得 ECEF(以地球为中心,以地球为固定)框架中的太阳坐标 - 地心坐标。我尝试使用 jplephem、pyephem 等,但没有一个可以提供这些坐标。请给我图书馆,算法等,我可以在其中获得这些坐标。 问候。
【问题讨论】:
标签: coordinates pyephem sun
您是正确的,这些库都没有快速支持 ECEF 参考框架,尽管它可以在 PyEphem 中通过在纬度 0° 和经度 0° 创建一个 Observer 来伪造,并且其高度足够负以放置它们在地球的中心。
如果您对更现代的库感兴趣,新的 1.34 版本的 Skyfield 直接支持标准的 ITRS 参考框架,即 ECEF:
from skyfield import framelib
from skyfield.api import load
ts = load.timescale()
t = ts.now()
planets = load('de421.bsp')
sun = planets['sun']
earth = planets['earth']
apparent = earth.at(t).observe(sun).apparent()
vector = apparent.frame_xyz(framelib.itrs)
print(vector.au)
结果:
[-0.653207 -0.62839897 -0.38480108]
您可以使用参考帧执行的操作在此处进行了更详细的说明:
https://rhodesmill.org/skyfield/positions.html#coordinates-in-other-reference-frames
【讨论】: