Physics Library
 An open source physics library
Encyclopedia | Forums | Docs | Random |  
Login
create new user
Username:
Password:
forget your password?
Main Menu
Sections

Meta

Talkback

Downloads

Information
GPS Broadcast Ephemeris User Equations - Kepler Propagation (Topic)

1 From celestial mechanics to the receiver algorithm

The previous articles built the physics in layers. Newton’s inverse-square force produced a conic orbit. Conservation of energy and angular momentum produced the orbital geometry. The classical elements (a,e,i, Ω,ω,M0) described the orbit, and Kepler’s equation connected elapsed time to position along the ellipse. GPSORB11 then explained why the broadcast model adds fitted parameters such as Δn.

IS-GPS-200 now turns that theory into a receiver algorithm. The first part of Table 20-IV may be organized as

√ --
  A  −→  A − → n0 − →  n −→  Mk  −→  Ek − →  νk − → Φk.
(1)

The elapsed-time variable tk feeds the mean-anomaly propagation, while e, M0, Δn, and ω enter at their appropriate points.

PIC

Figure 1. Computational flow from broadcast ephemeris parameters to uncorrected argument of latitude.

The current GPS interface-document page lists IS-GPS-200N as the base revision and later interface-revision notices. This article derives the legacy LNAV user equations appearing in Table 20-IV of Revision N; current IRNs should always be checked when implementing an operational receiver [21].

2 The constants and transmitted quantities used here

Table 20-IV begins with the GPS-user gravitational parameter

|--------------------------|
μ =  3.986005  × 1014 m3∕s2.|
----------------------------
(2)

The same sheet also states the Earth rotation rate, but that quantity is not needed until the node-longitude and Earth-fixed-coordinate equations treated later in the sequence.

The subset of broadcast quantities needed in this article is summarized below.

Broadcast quantity Meaning Broadcast unit in LNAV
√ --
  A square root of semimajor axis √ --
  m
Δn mean-motion correction semicircles/s
M0 mean anomaly at reference epoch semicircles
e eccentricity dimensionless
toe ephemeris reference time s
ω argument of perigee semicircles

The user equations use ordinary radian trigonometric functions. Therefore a quantity transmitted in semicircles is converted by

|-----------------|
𝜃rad =-π𝜃semicircle.--
(3)

Likewise,

|(----)---------(----)-----------|
|  d-𝜃            -d𝜃            |
|   dt      = π    dt          . |
--------rad∕s-----------semicircle∕s--|
(4)

This unit conversion is essential because n0 computed from μ and A is naturally in radians per second.

3 Step 1: recover the semimajor axis

The LNAV message transmits √A--, not A itself. The receiver first forms

|------------|
|A =  (√ A )2.|
-------------
(5)

Dimensionally,

 √ --     1∕2
[  A ] = m
(6)

so

  √ --
[(  A)2] = m.
(7)

The result is the semimajor axis of the Keplerian-looking baseline ellipse used by the broadcast fit.

For a GPS-like orbit,

√ --
  A  ≈ 5153.64 √m--
(8)

corresponds to

A ≈ 2.6560 × 107 m.
(9)

The encoding also has a useful sensitivity relation. Differentiating Equation (5),

       √--   √ --
dA = 2  A  d(  A ).
(10)

Thus the quantization of the transmitted √A-- maps into semimajor-axis quantization through a simple local scale factor.

4 Step 2: derive the computed mean motion

For an ideal two-body ellipse, Kepler’s third law gives

       ∘ ----
          A3
T =  2π   μ--.
(11)

Mean motion is defined as the angular rate of mean anomaly,

n0 =  2π.
      T
(12)

Substituting Equation (11) into Equation (12),

     ----2π----
n0 = 2π∘A3--∕μ-,
(13)

so

|-----∘------|
|        μ-- |
|n0 =    A3 .|
-------------
(14)

The dimensions are

      ∘  -------
[n  ] =   m3-∕s2=  s−1.
  0       m3
(15)

Because angular measure in the user equations is radians, this is interpreted as radians per second.

For A = 26, 560 km,

n0 ≈ 1.4585684444 ×  10−4 rad∕s.
(16)

The corresponding period is

T = 2-π ≈ 4.308 × 104 s ≈ 11.97 h,
     n0
(17)

consistent with the familiar approximately twelve-hour GPS orbital period.

5 Step 3: form the time from ephemeris epoch

The next quantity is

|------------|
-tk =-t −-toe.
(18)

Here toe is the ephemeris reference epoch and t is GPS system time associated with the signal transmission epoch used for the satellite-position calculation. IS-GPS-200 notes that the time used in this equation is the transmission time, meaning the reception time has effectively been corrected for signal transit time [1].

This distinction matters. A GNSS receiver wants the satellite position when the electromagnetic signal left the satellite, not where the satellite is when the signal arrives at the antenna.

5.1 Why a week-crossover rule is necessary

GPS seconds-of-week repeat every

TW  = 604800  s.
(19)

A simple subtraction can therefore return a value almost one week long when the physical time separation is only a few minutes.

IS-GPS-200 requires the actual total time difference and applies a half-week rule:

|------------------------------------------|
| tk > 302400 s    :  tk ←  tk − 604800  s, |
| tk < − 302400 s  :  tk ←  tk + 604800  s. |
-------------------------------------------|
(20)

The number 302400 s is exactly one half of a GPS week.

PIC

Figure 2. GPS week crossover can make a short physical interval look almost one week long unless the half-week correction is applied.

An implementation-friendly equivalent is to map the raw difference into the interval

− 302400 ≤ tk ≤ 302400  s.
(21)

The conditional form in Equation (20) has the advantage of matching the interface specification directly.

6 Step 4: apply the mean-motion correction

If the orbit were exactly Keplerian, Equation (14) would determine the phase rate completely from A. GPSORB11 explained why the broadcast curve fit provides additional freedom through Δn.

After converting Δn from semicircles per second to radians per second, the receiver forms

|--------------|
|n = n0 + Δn.  |
---------------
(22)

The correction is therefore an additive adjustment to the Keplerian phase rate.

The distinction between n0 and n is worth preserving in software and derivations:

|--------------------------------------------------------|
-geometry-A----=⇒----n0,-----broadcast-fit-Δn----=-⇒----n.-
(23)

If Δn were accidentally added before converting semicircles/s to rad/s, the result would be wrong by a factor of π.

7 Step 5: propagate mean anomaly

At the reference epoch,

M (t  ) = M  .
    oe      0
(24)

With corrected mean motion n assumed constant over this part of the broadcast model,

-dM- = n.
 dt
(25)

Integrating from toe to t,

∫  Mk       ∫  t
      dM  =     n dt,
  M0          toe
(26)

which yields

Mk −  M0 =  n(t − toe).
(27)

Using tk = t toe,

|----------------|
-Mk--=-M0-+--ntk.-
(28)

This equation is the first place where the initial orbital phase M0, the fitted phase-rate correction Δn, and the receiver evaluation time all meet.

Mean anomaly can be normalized modulo 2π for convenience,

Mk  ←  Mk  mod  2π,
(29)

but the trigonometric equations themselves do not require such normalization. Keeping an unwrapped phase can sometimes be useful for diagnostics, while a wrapped phase can improve readability and numerical bookkeeping.

8 Step 6: solve Kepler’s equation for eccentric anomaly

Mean anomaly is linear in time, but it is not the geometric angle of the satellite on the ellipse. GPSORB06 derived the area relation

|------------------|
|M  =  E − e sin E, |
-------------------
(30)

where E is eccentric anomaly.

At time tk, the receiver therefore must solve

Mk  = Ek −  esin Ek.
(31)

Because Ek appears both linearly and inside a sine function, there is no elementary algebraic rearrangement that isolates Ek. A numerical root must be found.

8.1 Deriving the Newton-Raphson iteration

Define

f(E ) = E − e sin E −  Mk.
(32)

The desired eccentric anomaly satisfies

f (Ek) = 0.
(33)

Differentiate:

f′(E) = 1 − e cosE.
(34)

Newton’s method is

             f(Ej-−1)-
Ej = Ej− 1 − f′(Ej −1).
(35)

Substituting Equations (32) and (34),

Ej  = Ej− 1 − Ej−1-−-esinEj-−1-−-Mk-.
                  1 − ecos Ej−1
(36)

Rearranging the numerator gives the form used by IS-GPS-200:

|------------------------------------|
|             Mk − Ej −1 + esinEj −1 |
Ej  = Ej− 1 + ----------------------.|
------------------1-−-ecos-Ej−1-------
(37)

The specified initial value is

|----------|
|E0 =  Mk. |
-----------
(38)

Revision N states that the refinement uses a minimum of three iterations before the final Ek is taken from the refined value [1].

PIC

Figure 3. Newton iteration replaces the nonlinear Kepler equation by a sequence of tangent-line root estimates.

8.2 Why the denominator is well behaved for an ellipse

For an elliptic orbit,

0 ≤ e < 1.
(39)

Because

− 1 ≤ cosE ≤  1,
(40)

we have

1 − ecos E ≥  1 − e > 0.
(41)

Thus the denominator in Equation (37) cannot vanish for an ordinary elliptic orbit. This is also the same factor appearing in

r = A (1 − ecos E),
(42)

so its positivity has a direct geometric meaning: orbital radius remains positive.

9 Step 7: convert eccentric anomaly to true anomaly

The receiver now knows Ek, but the orbital-plane geometry developed in GPSORB04 and GPSORB08 is naturally expressed with true anomaly νk.

For an ellipse,

         -cosEk-−-e--
cos νk = 1 − ecos E ,
                   k
(43)

and

        √1--−-e2 sin E
sinνk = -------------k .
          1 − ecosEk
(44)

Because the common denominator is positive for e < 1, the quadrant of νk is determined by the numerator pair. A robust implementation is therefore

|----------------------------------------|
|           (√ ------                 )  |
|νk = atan2    1 − e2sinEk, cosEk  − e  .|
-----------------------------------------
(45)

9.1 Deriving the half-angle form

Using

   ν      sinν
tan-- = ---------,
    2   1 + cosν
(46)

and substituting Equations (43)–(44),

             √ ------
tan ν-= -------1 −-e2sinE------.
    2   1 − e cosE +  cosE −  e
(47)

The denominator factors as

1 − ecos E + cos E − e = (1 − e)(1 + cosE ).
(48)

Using

             E     E
sinE  = 2 sin --cos --
             2     2
(49)

and

1 + cos E = 2 cos2 E-,
                   2
(50)

we obtain

        √ ------
    ν     1 − e2     E
tan --= -------- tan --.
    2     1 − e      2
(51)

Since

√ ------   ∘ ------
--1-−-e2      1 +-e
 1 − e   =    1 − e ,
(52)

then

|--------∘---------------|
|   νk-     1-+-e    Ek- |
tan  2 =    1 − e tan  2 .|
--------------------------
(53)

This is the relation appearing in the Table 20-IV true-anomaly equation.

For software, a particularly robust half-angle implementation is

|-------------(----------------------------)---|
|ν  = 2 atan2  √1--+-esin Ek-,√1-−--ecos Ek- . |
| k                        2             2     |
-----------------------------------------------
(54)

Equation (54) and Equation (45) are equivalent. Both preserve the quadrant without having to infer it from a single-argument inverse tangent.

10 Step 8: form the argument of latitude

Table 20-IV sheet 2 begins with the next quantity in the chain,

|------------|
Φk--=-νk-+-ω.-
(55)

This is called the argument of latitude before harmonic correction.

The geometry is simple but important:

  • ω is measured in the orbital plane from the ascending-node direction to periapsis;
  • νk is measured from periapsis to the satellite;
  • therefore Φk is measured directly from the ascending-node direction to the satellite.

PIC

Figure 4. The uncorrected argument of latitude is the sum of argument of perigee and true anomaly.

The notation matters because Table 20-IV next applies the twice-per-revolution corrections from GPSORB11. Thus

Φk
(56)

is the uncorrected argument of latitude, while the later

uk = Φk + δuk
(57)

is the corrected argument of latitude. Keeping Φk and uk as distinct variables prevents a common implementation error.

11 A complete line-by-line numerical example

Consider the following GPS-like decoded quantities. Angular quantities are stated here directly in radians or radians per second after any required semicircle conversion:

√ --                 √ --
  A = 5153.63949069    m,
(58)

e = 0.010000,
(59)

Δn  = 4.5 × 10− 9 rad∕s,
(60)

M   = 1.000000 rad,
  0
(61)

ω = 0.700000  rad,
(62)

and choose

tk = 7200 s.
(63)

1. Semimajor axis

                     2                 7
A =  (5153.63949069 ) = 2.6560000  × 10  m.
(64)

Therefore

|----------------|
-A-=-26,-560-km.-|
(65)

2. Computed mean motion

Using μ = 3.986005 × 1014 m3s2,

     ∘ ----------------
n  =   3.986005-×--1014,
 0      (2.6560 ×  107)3
(66)

so

|-----------------------−4-------|
-n0 =-1.4585684444-×--10---rad∕s.-
(67)

3. Corrected mean motion

n = n0 + Δn,
(68)

so

|--------------------------------|
|n = 1.4586134444  × 10− 4 rad ∕s.
---------------------------------
(69)

4. Mean anomaly

Mk  = M0 +  ntk,
(70)

therefore

                               −4
Mk  =  1.0 + (1.4586134444 ×  10  )(7200),
(71)

which gives

|-------------------------|
Mk--=-2.05020167997--rad.--
(72)

5. Eccentric anomaly by Newton iteration

Initialize

E0  = Mk  = 2.05020167997.
(73)

Equation (37) gives

E1  = 2.05903363604  rad,
(74)

E2  = 2.05903329214  rad,
(75)

and

E3  = 2.05903329214  rad.
(76)

Thus after three refinements,

|------------------------|
Ek  ≈ 2.05903329214  rad.|
--------------------------
(77)

The second and third results already agree to the shown precision because the eccentricity is small.

6. True anomaly

Use the quadrant-safe form

           (√ ------                 )
νk = atan2    1 − e2sinEk, cosEk  − e  .
(78)

The result is

|------------------------|
|νk ≈ 2.06784440233  rad.|
--------------------------
(79)

In degrees,

ν ≈  118.479∘.
 k
(80)

7. Argument of latitude

Finally,

Φk  = νk + ω,
(81)

so

|------------------------------------|
|Φ  ≈ 2.76784440233  rad ≈  158.585∘.|
--k----------------------------------
(82)

This is the phase angle used by the second-harmonic correction equations in the next sheet of Table 20-IV.

12 Sanity checks that catch common receiver bugs

The first-half algorithm is compact enough that several independent checks are inexpensive.

Dimensional check

The units should progress as

√ --
  m →  m  → rad ∕s → rad ∕s → rad →  rad →  rad.
(83)

A mismatch usually indicates failure to convert a semicircle quantity to radians.

Circular-orbit limit

If

e →  0,
(84)

then Kepler’s equation becomes

Mk  = Ek,
(85)

and Equations (43)–(44) reduce to

νk =  Ek.
(86)

Therefore

|----------------------------|
e = 0   = ⇒    M   = E  =  ν |
-----------------k-----k----k-
(87)

modulo 2π. A circular test case is therefore an excellent unit test.

Kepler residual

After solving for Ek, compute

rE =  Ek − e sin Ek − Mk.
(88)

The residual should be numerically near zero. This directly tests the iterative solver independently of the later angle conversion.

Two true-anomaly formulas

Compute νk using both Equation (45) and Equation (54). Their wrapped angular difference should be near machine precision. This is a strong test for quadrant mistakes.

Week-crossover test

Explicitly test epochs just before and after the GPS week boundary. The example in Figure 2 should return

tk = 2000 s,
(89)

not

− 602800 s.
(90)

13 Compact implementation sequence

Once the derivations are understood, the operational sequence is short:

1.
Decode √ --
  A, e, toe, Δn, M0, and ω.
2.
Convert all semicircle angles and angular rates to radians and radians per second.
3.
Compute A = (√ --
  A)2.
4.
Compute n0 = ∘ μ∕A3-.
5.
Compute tk = t toe and apply the half-week crossover rule.
6.
Compute n = n0 + Δn.
7.
Compute Mk = M0 + ntk.
8.
Set E0 = Mk and perform at least three Newton refinements using Equation (37).
9.
Convert Ek to νk with a quadrant-safe formula.
10.
Form Φk = νk + ω.

The next sheet then applies the second-harmonic corrections to Φk, radius, and inclination before constructing the Earth-fixed satellite coordinates.

14 How this maps back to the physics

Every line of this part of Table 20-IV now has a physical origin:

User equation

Physics or modeling origin

A = (√ --
  A)2

Broadcast encoding of fitted orbital size

n0 = ∘ ----3
  μ ∕A

Kepler’s third law

tk = t toe

Propagation from ephemeris reference epoch

n = n0 + Δn

Fitted correction to along-track phase rate

Mk = M0 + ntk

Uniform mean-anomaly propagation

Mk = Ek e sin Ek

Kepler’s area law expressed through eccentric anomaly

Newton iteration

Numerical inversion of the nonlinear Kepler equation

Ek νk

Ellipse geometry

Φk = νk + ω

Orbital-plane angular geometry from ascending node to satellite

The apparent collection of unrelated receiver formulas is therefore one continuous mechanics chain.

15 Summary

The first half of the legacy GPS broadcast user algorithm can be compressed to

|---------------------∘------|
|     √ -- 2             -μ- |
|A =  ( A ) ,    n0 =    A3 ,|
-----------------------------
(91)

|--------------------------------------------|
-tk =-t −-toe-with-week--crossover-correction,-|
(92)

|----------------------------------|
|n = n0 + Δn,      Mk  = M0 +  ntk,|
------------------------------------
(93)

|-------------------|
M   = E   − esinE   |
--k-----k---------k--
(94)

solved by Newton iteration,

|-----------(√------------------------)--|
|νk = atan2    1 − e2sinEk, cosEk  − e  ,|
-----------------------------------------|
(95)

and finally

Φ---=-ν--+-ω.|
--k----k------
(96)

The next article can continue with Table 20-IV sheet 2: δuk, δrk, δik, corrected uk, rk, ik, orbital-plane coordinates, corrected node longitude, and the final ECEF position.

References

[1]   Global Positioning Systems Directorate, IS-GPS-200N: NAVSTAR GPS Space Segment/Navigation User Interfaces, 1 August 2022, especially Tables 20-III and 20-IV and Section 20.3.3.4. Available from GPS.gov.

[2]   GPS.gov, Interface Control Documents (ICDs) and Interface Specifications (ISs), current public-document index, accessed September 2026.

[3]   E. D. Kaplan and C. J. Hegarty, eds., Understanding GPS/GNSS: Principles and Applications, 3rd ed., Artech House, 2017.

[4]   D. A. Vallado, Fundamentals of Astrodynamics and Applications, 4th ed., Microcosm Press, 2013.

[5]   O. Montenbruck and E. Gill, Satellite Orbits: Models, Methods, and Applications, Springer, 2000.


"GPS Broadcast Ephemeris User Equations - Kepler Propagation" is owned by bloftin.
(view preamble)
View style:
Other names:  GPSORB12
Keywords:  GPS broadcast ephemeris, IS-GPS-200, Table 20-IV, semimajor axis, mean motion, delta n, ephemeris reference time, week crossover, mean anomaly, eccentric anomaly, Kepler equation, Newton-Raphson, true anomaly, argument of latitude

Cross-references: longitude, mechanics, formula, boundary, GPSORB08, GPSORB04, algebraic, GPSORB06, system, motion, Kepler's third law, quantization, relation, functions, square, latitude, algorithm, parameters, GPSORB11, position, angular momentum, energy, force

This is version 1 of GPS Broadcast Ephemeris User Equations - Kepler Propagation, born on 2026-09-22.
Object id is 1269, canonical name is GPSBroadcastEphemerisUserEquationsKeplerPropagation.
Accessed 3 times total.

Classification:
Physics Classification45.50.Pk (Celestial mechanics )
 91.10.Fc (Space geodetic surveys)
 95.10.Ce (Celestial mechanics )
 02.60.Cb (Numerical simulation; solution of equations)
 02.30.Hq (Ordinary differential equations)
Pending Errata and Addenda
None.
Discussion
Style: Expand: Order:

No messages.

Interact
rate | post | correct | update request | add example | add (any)