使用天空场从 TLE 计算卫星远地点和近地点

Calculating satellite apogee and perigee from TLEs using skyfield

我正在尝试根据给定卫星的 TLE 计算其近地点和远地点

from skyfield.api import Topos, EarthSatellite
ts = load.timescale()

# latest TLE as of this morning, epoch is epoch=2020-08-24T12:30:01Z
line=['0 ISS (ZARYA)',
      '1 25544U 98067A   20237.52084486  .00016717  00000-0  10270-3 0  9031', 
      '2 25544  51.6430  10.2947 0001353  63.6269 296.5020 15.49179055  2606']
satellite = EarthSatellite(line[1], line[2], line[0], ts)
t = ts.utc(2020, 8, 24, 12, range(30,123))  #epoch + a full orbit
geocentric = satellite.at(t)
subpoint = geocentric.subpoint()
print(f"max {max(subpoint.elevation.km)}")
print(f"min {min(subpoint.elevation.km)}")

这产生了 437.7 的远地点和 418.5 的近地点。近地点看起来不错,但远地点看起来高了大约17公里。

以为我读错了文档,我也尝试计算沿途的地心距离并得到相同的结果(到 7 个地方)

difference = satellite - bluffton
topocentric = difference.at(t)
alt, az, distance = topocentric.altaz()
print(f"max {max(distance.km)}")
print(f"min {min(distance.km)}")

在 7 位小数内产生相同的结果。

在 TLE 的时代,更多地手动执行此操作:

revs_per_day = 15.49179055
eccentricity = 0.0001353
earth_equatorial_radius = 6378.14
period_hrs = 24.0 / revs_per_day
range = (6028.9 * (period_hrs * 60))** (2 / 3)
perigee = range * (1 + eccentricity) - earth_equatorial_radius

产生的远地点420.02公里,近地点418.18公里,比较符合我的预期。

我做错了什么?我是不是没看懂Skyfield的距离代表什么?

正确,您对要求的距离有一点误解;然后还有其他一些我不太确定的差异。

  1. 物体下方的“子点”是地球表面的位置,该表面被建模为 WGS-84 扁球体,赤道比两极多几公里。因此,不要使用 subpoint.elevation.km 来测量国际空间站从高纬度到低纬度时的上升和下降表面,而是尝试 geocentric.distance().km。如果您对距地球中心的轨道的完整形状不太感兴趣,而只对地面以上的部分感兴趣,则可以随时从中减去地球的平均半径。
  2. 我不太精通数学,无法确定为什么您的 back-of-the-envelope 计算失败了。但是我们至少可以将 geocentric.distance().km 的最大值和最小值与 NASA HORIZONS 输出进行比较以进行比较。我在下面附上它的一些输出:它显示国际空间站在一个轨道上从 6788 公里上升和下降到 6803 公里,几乎与从 Skyfield 返回的 6789-6802 公里范围相同的距离——表明高度范围确实超过当前轨道为 2 公里。
*******************************************************************************
Ephemeris / WWW_USER Mon Aug 24 17:36:17 2020 Pasadena, USA      / Horizons    
*******************************************************************************
Target body name: International Space Station (spacecraft) (-125544) {source: iss}
Center body name: Earth (399)                     {source: DE431mx}
Center-site name: GEOCENTRIC
*******************************************************************************
Start time      : A.D. 2020-Aug-25 00:00:00.0000 UT      
Stop  time      : A.D. 2020-Aug-25 03:00:00.0000 UT      
Step-size       : 1 minutes
*******************************************************************************
...
Center pole/equ : High-precision EOP model        {East-longitude positive}
Center radii    : 6378.1 x 6378.1 x 6356.8 km     {Equator, meridian, pole}    
Target primary  : Earth
Vis. interferer : MOON (R_eq= 1737.400) km        {source: DE431mx}
Rel. light bend : Sun, EARTH                      {source: DE431mx}
Rel. lght bnd GM: 1.3271E+11, 3.9860E+05 km^3/s^2                              
Atmos refraction: NO (AIRLESS)
RA format       : HMS
Time format     : CAL 
EOP file        : eop.200824.p201115                                           
EOP coverage    : DATA-BASED 1962-JAN-20 TO 2020-AUG-24. PREDICTS-> 2020-NOV-14
Units conversion: 1 au= 149597870.700 km, c= 299792.458 km/s, 1 day= 86400.0 s 
Table cut-offs 1: Elevation (-90.0deg=NO ),Airmass (>38.000=NO), Daylight (NO )
Table cut-offs 2: Solar elongation (  0.0,180.0=NO ),Local Hour Angle( 0.0=NO )
Table cut-offs 3: RA/DEC angular rate (     0.0=NO )                           
****************************************************************************************************************
 Date__(UT)__HR:MN     R.A._____(ICRF)_____DEC   APmag   S-brt            delta      deldot    S-O-T /r    S-T-O
****************************************************************************************************************
$$SOE
 2020-Aug-25 00:00     11 24 02.95 +19 59 34.2    n.a.    n.a. 0.00004542337255   0.0095997  18.8151 /T 161.1844
...
 2020-Aug-25 00:25     16 34 19.41 -47 50 11.1    n.a.    n.a. 0.00004547799868   0.0003566 101.0263 /T  78.9709
 2020-Aug-25 00:26     16 56 12.33 -49 10 57.0    n.a.    n.a. 0.00004547808220   0.0000571 104.6886 /T  75.3086
 2020-Aug-25 00:27     17 19 10.96 -50 15 22.9    n.a.    n.a. 0.00004547804847  -0.0002273 108.3437 /T  71.6534
 2020-Aug-25 00:28     17 43 04.17 -51 02 05.5    n.a.    n.a. 0.00004547790303  -0.0004991 111.9896 /T  68.0075
...
 2020-Aug-25 01:13     05 07 59.71 +49 48 30.6    n.a.    n.a. 0.00004538023740  -0.0018603  73.4466 /L 106.5505
 2020-Aug-25 01:14     05 31 35.95 +50 43 36.4    n.a.    n.a. 0.00004537965836  -0.0010181  69.7785 /L 110.2186
 2020-Aug-25 01:15     05 55 59.08 +51 20 10.6    n.a.    n.a. 0.00004537942066  -0.0001615  66.1208 /L 113.8763
 2020-Aug-25 01:16     06 20 51.01 +51 37 19.0    n.a.    n.a. 0.00004537952843   0.0007013  62.4763 /L 117.5208
 2020-Aug-25 01:17     06 45 50.83 +51 34 35.0    n.a.    n.a. 0.00004537998258   0.0015622  58.8484 /L 121.1487
 2020-Aug-25 01:18     07 10 36.81 +51 12 03.0    n.a.    n.a. 0.00004538078075   0.0024132  55.2411 /L 124.7560