I recently wrote a unit test for my calculation algorithm for satellite orbits, which uses the ephemeris data in the ‘RINEX Logging’ Nav Data files from Skydel and compare them to the ECEF positions inside the ‘Raw logging (csv)’ data.
For GPS satellites this works quite well, but for GALILEO my calculated ECEF positions are far away from the ones in Skydel’s csv files. As GPS and GALILEO use the same type of algorithm to compute ECEF positions out of ephemeris data this seemed strange.
The only difference in my algorithm is the Gravitational constant used. I use the following values from the ICDs:
GPS: µ = 3.986005 x 10^14 m^3/s^2
GAL: µ = 3.986004418 × 10^14 m^3/s^2
The interesting thing is, that if I use the GPS µ on the GALILEO data, then the calculated ECEF position improves a lot. So my question would be, what value do you use for µ to generate your ephemeris data inside the RINEX output. Do you use the same µ for GPS and GALILEO satellites?
Sorry for the late response; we were busy participating in a special event for us last week.
Yes, We use the same Gravitational constant (µ) for GPS and GALILEO satellites.
I think your finding regarding using GPS - µ on calculating Galileo data improves the calculated ECEF position is correct. However, you mentioned that using GPS - µ improves “the calculated ECEF position a lot” I wonder if you can share how much improvements you observed in the calculated ECEF position when using GPS - µ? Thanks.
I compared a simulated value from the .csv output against my calculated value from ephemeris for a GALILEO satellite.
I took an ephemeris with time 2022-06-01 13:50:00 and compared against the a csv line with gps time of week 2212w, 309570.500s (13:59:30.5s) (so not too far away from each other).
The only difference in the calculation algorithm is the use of different µ values: