Hello all,
I’ve encountered what I believe is an error in the output of GLONASS’ AnalyticalPropagator. The ingestion of the ephemeris appears to be correct after manual direct comparison, but after propagation using a built GLONASSAnalyticalPropagatorBuilder for any amount of time, the position drastically changes. In the case shown below, a series of navigation messages over the course of 11/29 for satellite R07 is plotted alongside their correlated positions (in kilometers) after 15 seconds of propagation. The navigation message data was converted to EME-J2K before plotting for comparison.
As a case study, I focused on the data from the attached RNX file, which is one of the files used to generate the above graph. Extracting the R07 data yields a navigation message dated at 2022-11-28T23:44:42.000Z, with position vectors (in meters) as follows:
SUTH00ZAF_R_20223330000_01D_RN.rnx (136.5 KB)
ECEF: [7583600.585938, -7981940.9179690005, -22974412.59766]
EME-J2K: [10463119.2283619; 3268061.006078313; -22997585.224239085]
To determine the ECEF and EME-J2K coordinates as well as test two different propagation methods, I propagated using .propagate()
as well as .propagateInEcef()
in a format akin to this:
temp_prop = gnss.GLONASSAnalyticalPropagatorBuilder(navMessage)
propagator = temp_prop.build()
temp_new_date = navMessage.getDate().shiftedBy(15.0) # set desired date to current + 15 seconds
new_eci_state = propagator.propagate(temp_new_date)
new_ecef_PV = propagator.propagateInEcef(temp_new_date)
print('Orekit propagate Results: {0}'.format(new_eci_state.getPVCoordinates().getPosition())) # view new EME-J2K position
print('Orekit propinECEF Results: {0}'.format(new_ecef_PV.getPosition())) # view new ECEF position
and produced
ECEF: [16130241.053239357; -4296065.7151775155; 19288621.366695557]
EME-J2K: [11018990.22372796; 12576503.05069625; 19264090.862475004]
for a difference in position after 15 seconds by
ECEF: [-8,546.64 km; -3,685.88 km; -42,263.03 km]
EME-J2K: [-555.87 km; -9,308.44 km; -42,261.68 km]
This is a rather dramatic difference after 15 seconds, enough to appear to be in a different orbital plane, leading to the plot from above. I welcome any input you all may be able to offer as to where this issue might be originating from.
Thank you for your help!