我需要找出卫星相对于我的移动速度。我正在考虑使用 Python 包“skyfield”,但我不知道如何计算:from skyfield.api import EarthSatellite, Toposimport skyfield.apisat = 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 转换为相应的位置,以便计算相对卫星速度。我应该使用具有更多功能的不同包吗?
1 回答
慕少森
TA贡献2019条经验 获得超9个赞
如果你问“哪里是my_loc
在time0
:
position1 = my_loc.at(time0)
那么您将拥有另一个位置对象.velocity
,您应该能够将其与卫星的速度进行比较。你也可以预先做减法:
relative_position = (sat - my_loc).at(time0)
然后结果对象的.position
和.velocity
都应该相对于您的位置,而无需您自己减去它们。
添加回答
举报
0/150
提交
取消