【问题标题】:How to find satellite relative velocity in skyfield?如何在天空中找到卫星相对速度?
【发布时间】:2019-08-09 10:55:03
【问题描述】:

我需要了解卫星相对于我的移动速度。我正在考虑使用 Python 包“skyfield”,但我不知道如何计算:

from skyfield.api import EarthSatellite, Topos
import skyfield.api

sat = EarthSatellite('1 43700U 18090A   18335.89431171 +.00000133 +00000-0 +00000-0 0  9993',
                 '2 43700 000.0858 245.4352 0001094 006.6237 164.6135 01.00274015000309')
time_scale = skyfield.api.load.timescale()
time0 = time_scale.utc(2018, 12, 1, 21, 0, 0)
position0 = sat.at(time0)
position0_ITRF = sat.ITRF_position_velocity_error(time0)[:2]

my_loc = Topos('39.0 N', '105.0 W')

我不确定如何将 my_loc 转换为相应的位置,以便计算相对卫星速度。我应该使用实现了更多功能的不同包吗?

【问题讨论】:

    标签: python satellite skyfield satellite-navigation


    【解决方案1】:

    如果你问“my_loc在哪里time0

    position1 = my_loc.at(time0)
    

    然后您将拥有另一个带有.velocity 的位置对象,您应该能够将其与卫星的速度进行比较。你也可以事先做减法:

    relative_position = (sat - my_loc).at(time0)
    

    那么结果对象的.position.velocity 都应该与您的位置相关,而不必您自己减去它们。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-28
      相关资源
      最近更新 更多