【问题标题】:Python astropy: convert velocities from ECEF to J2000 coordinate systemPython astropy:将速度从 ECEF 转换为 J2000 坐标系
【发布时间】:2018-03-10 21:29:34
【问题描述】:

我编写了一个代码,使用 astropy 将坐标从地球固定系统转换为惯性系:

from astropy import coordinates as coord
from astropy import units as u
from astropy.time import Time
from astropy import time

now = Time('2018-03-14 23:48:00')
# position of satellite in GCRS or J20000 ECI:
xyz=[-6340.40130292,3070.61774516,684.52263588]

cartrep = coord.CartesianRepresentation(*xyz, unit=u.km)
gcrs = coord.ITRS(cartrep, obstime=now)
itrs = gcrs.transform_to(coord.GCRS(obstime=now))
loc= coord.EarthLocation(*itrs.cartesian.xyz)
print(loc)

如何对速度也进行转换?

【问题讨论】:

    标签: coordinate-transformation astropy


    【解决方案1】:

    认为您可以执行以下操作:

    from astropy import coordinates as coord
    from astropy import units as u
    from astropy.time import Time
    
    now = Time('2018-03-14 23:48:00')
    
    xyz = [-6340.40130292, 3070.61774516, 684.52263588]
    vxvyvz = [-10.90, 56.4, -74.6]
    
    # put velocities into cartesian differential
    cartdiff = coord.CartesianDifferential(*vxvyvz, unit='km/s')
    cartrep = coord.CartesianRepresentation(*xyz, unit=u.km, differentials=cartdiff)
    
    gcrs = coord.ITRS(cartrep, obstime=now)
    itrs = gcrs.transform_to(coord.GCRS(obstime=now))
    
    # print position
    print(itrs.cartesian.xyz)
    
    # print velocity
    print(itrs.cartesian.differentials)
    

    但是,我不完全确定它是否满足您的要求。或者,在 astropy v. 3.0.1 中,ITRS 类似乎能够获取速度值,因此您可以使用

    now = Time('2018-03-14 23:48:00')
    pos = [-6340.40130292, 3070.61774516, 684.52263588]*u.km
    vel = [-10.90, 56.4, -74.6]*u.km/u.s
    
    gcrs = coord.ITRS(x=pos[0], y=pos[1], z=pos[2], v_x=vel[0], v_y=vel[1], v_z=vel[2], representation_type='cartesian', differential_type='cartesian', obstime=now)
    itrs = gcrs.transform_to(coord.GCRS(obstime=now))
    
    # print position
    print(itrs.cartesian.xyz)
    
    # print velocity
    print(itrs.cartesian.differentials)
    

    两个版本给出了相同的答案,但第二个更简洁一些。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-09-01
      • 2023-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-30
      • 2015-07-06
      • 1970-01-01
      相关资源
      最近更新 更多