Ephemeris and Almanac

Ephemeris and Almanac

Glossary Entry — Global Navigation Satellite Systems (GNSS)

---

1. Definitions: Ephemeris vs. Almanac

Ephemeris (from the Greek ephēmeros, "lasting only a day") is a high-precision dataset that describes the exact orbital position, velocity, and clock behaviour of an individual GNSS satellite at a specific epoch. It allows a receiver to compute the satellite's three-dimensional Cartesian coordinates (X, Y, Z) in the Earth-Centred, Earth-Fixed (ECEF) reference frame and to correct for the satellite's onboard clock bias relative to system time. Because orbital mechanics and clock behaviour change continuously, ephemeris data are valid only for a limited window (typically a few hours) and are updated frequently by the ground segment.

Almanac, by contrast, is a coarse, long-term dataset that provides approximate orbital information and clock correction parameters for all satellites in the constellation simultaneously. Its primary purposes are satellite acquisition assistance and constellation status awareness — enabling a receiver to predict which satellites are above the horizon, their approximate Doppler shift, and their health status, without requiring the receiver to blindly search the full code-phase and frequency space.

The critical distinction is one of precision and intent: ephemeris data are used to compute satellite positions for navigation solutions, while almanac data are used to expedite signal acquisition and constellation management.

---

2. Broadcast Ephemeris Parameters (Keplerian Elements)

The broadcast navigation message — transmitted by every GNSS satellite — contains a set of Keplerian orbital elements and perturbation correction terms. Although the exact parameter naming varies among constellations (GPS, GLONASS, Galileo, BeiDou), the GPS LNAV message is the canonical reference and includes 16 parameters:

| Parameter | Description |

|---|---|

| M₀ | Mean anomaly at reference epoch |

| Δn | Mean motion difference from computed value |

| e | Eccentricity |

| √A | Square root of semi-major axis |

| Ω₀ | Longitude of ascending node at reference epoch |

| i₀ | Inclination at reference epoch |

| ω | Argument of perigee |

| Ω̇ | Rate of right ascension |

| IDOT | Rate of inclination angle |

| Cuc, Cus | Amplitude of cosine/sine harmonic correction to argument of latitude |

| Crc, Crs | Amplitude of cosine/sine harmonic correction to orbital radius |

| Cic, Cis | Amplitude of cosine/sine harmonic correction to inclination |

| t₀e | Ephemeris reference epoch |

These parameters follow a Keplerian-plus-perturbation model: the six classical Keplerian elements define a reference ellipse, and the harmonic correction coefficients (Cuc, Cus, Crc, Crs, Cic, Cis) account for non-Keplerian perturbations such as solar radiation pressure, lunar/solar gravitational effects, Earth's oblateness (J₂), and other forces. The rate terms (Δn, Ω̇, IDOT) allow first-order secular variations to be modelled across the validity window.

The Galileo F/NAV and BeiDou D1/D2 messages use an essentially identical 16-parameter Keplerian representation, while GLONASS employs a distinct state-vector approach, broadcasting satellite position, velocity, and lunisolar acceleration in ECEF Cartesian coordinates and using a 4th-order Runge-Kutta numerical integrator within the receiver.

Broadcast ephemeris typically achieves an accuracy of 1–2 metres (1σ radial) in real time, limited by the prediction capability of the ground control segment.

---

3. Precise Ephemeris Products (IGS)

For applications demanding sub-decimetre accuracy — geodesy, surveying, atmospheric research, and precision timing — the International GNSS Service (IGS) and its Analysis Centres produce precise ephemeris products through post-processing of a global network of reference stations. These products come in several forms:

  • **Final orbits**: Accuracy ~2.5 cm (1D RMS), released 12–18 days after observation.
  • **Rapid orbits**: Accuracy ~2.5 cm, available within 17–24 hours.
  • **Ultra-rapid orbits**: Accuracy ~3–5 cm (predicted segment) / ~2.5 cm (observed segment), updated every 6 hours.
  • **Real-Time orbits**: Streamed via the IGS Real-Time Service (RTS), accuracy ~5–10 cm.
  • Formats include the SP3 (Standard Product 3) file for precise positions and clock offsets at 15-minute intervals, the CLK file for 30-second clock products, and ERP (Earth Rotation Parameters). Modern IGS products are aligned to the IGS20 reference frame and use the IGS20 scale for consistency.

    Precise Point Positioning (PPP) techniques combine precise orbits, clocks, and code/phase bias products to achieve centimetre-level positioning with a single receiver, underscoring the transformative accuracy gain when broadcast ephemeris is replaced by precise products.

    ---

    4. Almanac Accuracy and Coverage

    The almanac is designed for quick first-fix capability (warm start) and constellation monitoring. Its Keplerian elements are truncated and quantised to coarser bit widths than ephemeris parameters, yielding positional accuracy on the order of 1–2 kilometres (orbital), which corresponds to several microseconds of timing uncertainty — acceptable for Doppler estimation and satellite visibility prediction, but wholly inadequate for positioning.

    Almanac validity spans approximately 180 days for GPS, though accuracy degrades progressively as the prediction horizon extends. Each almanac page applies to one satellite, and the full constellation almanac is transmitted over a period of ~12.5 minutes (GPS LNAV). Modernised signals (L2C, L5) and other constellations use more efficient data structures, compressing this acquisition time.

    ---

    5. Time Group Delay (TGD) and Group Delay Variation

    Satellite signals traverse both the onboard electronics (L-band signal generation, amplification, filtering) and the antenna before propagating through space. Different frequencies experience different propagation delays through these hardware paths. The Time Group Delay (TGD) parameter, broadcast in the navigation message, is a first-order differential code bias correction between two carrier frequencies (e.g., L1 and L2 for GPS, or E1 and E5a for Galileo).

  • **TGD** represents the L1 pseudorange group delay minus the L2 pseudorange group delay, calibrated and uploaded by the ground segment.
  • **ISC (Inter-Signal Correction)** parameters, introduced with modernised signals, provide analogous corrections between other signal pairs.
  • For single-frequency receivers using only L1 C/A, TGD cannot be directly eliminated; the broadcast **TGD(L1)** value is applied as a lumped correction.
  • Group delay variation (GDV) refers to frequency-dependent, elevation-angle-dependent, and temperature-dependent variations in the hardware delay that are not captured by the scalar TGD. GDV can introduce systematic biases of several nanoseconds (decimetres in range) and is characterised by calibration campaigns and included in precise bias products (e.g., the IGS DCB — Differential Code Bias — files).

    ---

    6. Satellite Health Status

    Both the ephemeris and almanac messages contain health status flags that indicate whether a satellite is suitable for navigation use. In GPS, the 6-bit health code in the almanac and the health indication in the ephemeris word convey:

  • **000000 (all zeros)**: Healthy — all parameters are within specification.
  • **Non-zero**: Various anomaly codes indicating potentially degraded clock, signal, or ephemeris quality.
  • Additionally, NOTAMs (Notices to Airmen) and NANUs (Notice Advisory to Navstar Users) issued by the U.S. Space Force provide advance warning of scheduled outages, maneuvers, or testing. The IGS Meteo and status files supplement this with independent health assessments. BeiDou and Galileo have analogous health and validity flags within their navigation messages.

    Receivers are expected to deprioritise or exclude unhealthy satellites from the position/time solution.

    ---

    7. Receiver Use of Ephemeris and Almanac in Position/Time Computation

    The navigation solution proceeds in several logical steps:

  • **Signal acquisition**: The receiver uses stored **almanac** data (or recent ephemeris) to predict visible satellites and approximate Doppler shifts, dramatically reducing search time.
  • **Ephemeris decoding**: Once tracking, the receiver demodulates the navigation message and stores the broadcast **ephemeris** parameters for each tracked satellite.
  • **Satellite position computation**: At the measurement epoch, the receiver evaluates the Keplerian model using the 16 parameters and Kepler's equation (solved iteratively for eccentric anomaly **E**), yielding the satellite's ECEF coordinates.
  • **Satellite clock correction**: The broadcast clock polynomial (af₀, af₁, af₂) and TGD are applied to convert satellite time to system time.
  • **Pseudorange/Carrier-phase processing**: The receiver forms observation equations relating the measured pseudorange (or carrier phase) to the geometric range, satellite and receiver clock offsets, atmospheric delays, and noise. At least **four satellites** are needed to solve for three position components and the receiver clock bias (the "time" unknown).
  • **Least-squares or Kalman filter** estimation yields the final position, velocity, and time (PVT) solution.
  • ---

    8. Update Intervals and Validity Periods

    | Data Type | Update Interval | Validity Period |

    |---|---|---|

    | GPS Broadcast Ephemeris | Every 2 hours (nominal upload) | 4 hours (typically ±2 h from reference epoch; usable up to ~4 h) |

    | GPS Almanac | Every ~12.5 minutes (full set) | ~180 days (degrading accuracy) |

    | Galileo Ephemeris | Every 100 minutes | ~4 hours |

    | IGS Final Precise Orbits | Daily | Indefinite (archived) |

    | IGS Ultra-Rapid | Every 6 hours | 24–48 h (observed + predicted segments) |

    | IGS Real-Time | Every ~5 seconds (stream) | Seconds (continuous update) |

    The relatively short validity window of broadcast ephemeris reflects the divergence of satellite trajectories from the reference Keplerian model due to non-conservative forces (solar radiation pressure, attitude manoeuvres, thruster firings) and clock instability.

    ---

    9. Implications for Timing Accuracy

    GNSS-based timing derives from the same pseudorange equations that yield position, with the receiver clock bias (Δtᵣ) being a direct output. Several aspects of the ephemeris and almanac data critically affect timing:

  • **Ephemeris accuracy**: A 1-metre ephemeris error maps directly to **~3.3 ns** of timing error (since 1 m ≈ 3.336 ns at the speed of light). Precise ephemeris reduces this to sub-nanosecond levels.
  • **TGD correction**: Failure to apply TGD when using a single-frequency L1 solution introduces a **constant bias** that can be as large as ~15 ns for certain satellites, directly corrupting timing output.
  • **Satellite clock corrections**: The broadcast clock parameters (af₀, af₁, af₂) are the dominant source of timing uncertainty relative to GPS time; they carry an accuracy of ~7 ns (1σ) for a healthy, recently uploaded satellite.
  • **Orbit prediction degradation**: As the ephemeris ages beyond its optimal window, orbital position errors grow, causing the ranging error — and hence timing error — to increase.
  • **Almanac-level timing**: Using almanac-only for timing would introduce errors of **several microseconds** due to the ~1–2 km positional uncertainty, making it unsuitable for any precision timing application.
  • For high-accuracy timing — such as in telecommunications, financial networks, or scientific experiments — the combination of precise ephemeris (IGS), precise clock products, and TGD/DCB corrections enables time transfer accuracy of < 1 ns when using carrier-phase techniques (PPP or common-view).

    ---

    Summary

    Ephemeris and almanac data form the informational backbone of GNSS positioning and timing. The broadcast ephemeris provides the precision needed for metre-level navigation; the almanac provides the situational awareness needed for rapid satellite acquisition; and precise ephemeris products from the IGS elevate the entire system to centimetre-level accuracy. Understanding the derivation, update cadence, accuracy limitations, and error propagation of these datasets is essential for anyone designing, operating, or analysing GNSS-based systems.