If you wish to contribute or participate in the discussions about articles you are invited to join Navipedia as a registered user

# GPS and Galileo Satellite Coordinates Computation

Fundamentals
Title GPS and Galileo Satellite Coordinates Computation
Author(s) J. Sanz Subirana, J.M. Juan Zornoza and M. Hernández-Pajares, Technical University of Catalonia, Spain.
Level Intermediate
Year of Publication 2011

Next table 1 provides the GPS or Galileo broadcast ephemeris parameters to compute their satellite coordinates at any observation epoch. These parameters are periodically renewed (typically every 2 hours for GPS and 3 hours for Galileo) and must not be used out of the prescribed time (about four hours), because the extrapolation error grows exponentially beyond its validity period.

The algorithm provided is from the [GPS/SPS-SS, table 2-15] [footnotes 1].The Galileo satellites follow a similar scheme

Table 1: GPS and Galileo broadcast ephemeris and clock message parameters.

In order to compute satellite coordinates from navigation message, the algorithm provided as follows must be used. An accuracy of about 5 meters (RMS) is achieved for GPS satellites with S/A=0ff and several tens of meters with S/A=on [footnotes 2]:

• Compute the time tk from the ephemerides reference epoch toe (t and toe are expressed in seconds in the GPS week):
tk = ttoe
If $t_k>302\,400$ sec, subtract $604\,800$ sec from tk. If $t_k< -302\,400$ sec, add $604\,800$ sec.

• Compute the mean anomaly for tk,
$M_k=M_o+\left( \frac{\sqrt{\mu }}{\sqrt{a^3}}+\Delta n\right)t_k$

• Solve (iteratively) the Kepler equation for the eccentricity anomaly Ek:
Mk = EkesinEk

• Compute the true anomaly vk:
$v_k=\arctan \left( \frac{\sqrt{1-e^2}\sin E_k}{\cos E_k-e}\right)$

• Compute the argument of latitude uk from the argument of perigee ω, true anomaly vk and corrections cuc and cus:
$u_k=\omega +v_k+c_{uc}\cos 2\left( \omega +v_k\right) +c_{us}\sin 2\left( \omega +v_k\right)$

• Compute the radial distance rk, considering corrections crc and crs:
$r_k=a\left( 1-e\cos E_k\right) +c_{rc}\cos 2\left( \omega +v_k\right) +c_{rs}\sin 2\left( \omega +v_k\right)$

• Compute the inclination ik of the orbital plane from the inclination io at reference time toe, and corrections cic and cis:
$i_k=i_o+\stackrel{\bullet }{i} t_k+c_{ic}\cos 2\left( \omega +v_k\right) +c_{is}\sin 2\left( \omega +v_k\right)$

• Compute the longitude of the ascending node λk (with respect to Greenwich). This calculation uses the right ascension at the beginning of the current week (Ωo), the correction from the apparent sidereal time variation in Greenwich between the beginning of the week and reference time tk = ttoe, and the change in longitude of the ascending node from the reference time toe:
$\lambda _k=\Omega _o+\left( \stackrel{\bullet }{\Omega }-\omega _E\right) t_k-\omega _E t_{oe}$

• Compute the coordinates in TRS frame, applying three rotations (around uk, ik and λk):
$\left[ \begin{array}{c} X_k \\ Y_k \\ Z_k \end{array} \right] ={\mathbf R}_3\left( -\lambda _k\right) {\mathbf R}_1\left( -i_k\right) {\mathbf R}_3\left( -u_k\right) \left [ \begin{array}{c} r_k \\ 0 \\ 0 \end{array} \right]$

where ${\mathbf R}_1$ and ${\mathbf R_3}$ are the rotation matrices defined in Transformation between Terrestrial Frames.

## Notes

1. ^ [GPS/SPS-SS], DoD, USA, Global Positioning System Standard Positioning Service Performance Standard. http://www.navcen.uscg.gov/pubs/gps/sigspec/gpssps1.pdf, 1995.
2. ^ Actually, the S/A was mainly applied to the satellite clocks and, apparently, not so often to the ephemeris.