Kelso (2007): SGP4 Validation
About T. S. Kelso
Section titled “About T. S. Kelso”T. S. Kelso is the founder and operator of CelesTrak (celestrak.com), the primary public distribution point for NORAD two-line element sets since 1985. He compiled and distributed the digital version of Spacetrack Report No. 3 (the 1988 PDF that made the FORTRAN source accessible outside the DoD), and co-authored the Vallado et al. (2006) Rev-1 paper that standardized SGP4 implementations across the community.
Why This Paper Matters
Section titled “Why This Paper Matters”Before this study, the accuracy of SGP4/TLE predictions was characterized anecdotally or through comparison with other analytical theories. Kelso provides the first systematic, quantitative assessment against an independent high-precision reference — NGA GPS precision ephemerides with approximately 5 cm accuracy.
The results establish concrete bounds that practitioners can use:
| Prediction scenario | Expected error |
|---|---|
| At TLE epoch | ~1 km (mean), ~5 km (worst case) |
| 1 day from epoch | ~2—4 km |
| 3 days from epoch | ~5 km (mean), ~15 km (worst case) |
Key Findings
Section titled “Key Findings”1. SGP4/TLE Accuracy at Epoch
Section titled “1. SGP4/TLE Accuracy at Epoch”The mean 3D position error at TLE epoch is approximately 0.8 km for GPS satellites. This represents the best-case accuracy achievable with SGP4/TLE — the noise floor of the system. The along-track component dominates (0.52 km mean), consistent with semi-major axis fit errors.
2. Error Growth Rate
Section titled “2. Error Growth Rate”Position errors grow approximately linearly with time from epoch, at a mean rate of ~1.5 km/day (along-track). This linear growth is the signature of a mean motion (semi-major axis) error: a fractional error in mean motion produces an along-track drift of , which grows linearly in time.
3. Error Budget
Section titled “3. Error Budget”For GPS satellites at 20,200 km altitude, the dominant error sources are:
| Source | Approximate contribution |
|---|---|
| Truncated geopotential (missing tesseral harmonics) | 200—500 m/day |
| Unmodeled solar radiation pressure | 100—300 m/day |
| Simplified lunar/solar perturbations | 50—200 m/day |
| TLE fit quality (mean element fitting noise) | ~500 m at epoch |
| TEME frame approximation (4 of 106 nutation terms) | 10—50 m |
4. Broadcast Ephemeris Comparison
Section titled “4. Broadcast Ephemeris Comparison”The IS-GPS-200D broadcast ephemeris achieves ~0.5 m accuracy at epoch — three orders of magnitude better than SGP4/TLE. However, it degrades rapidly beyond its 4-hour fit interval, reaching ~680 m at 24 hours. This highlights that SGP4/TLE and broadcast ephemerides serve fundamentally different purposes: SGP4 provides multi-day predictions for catalog maintenance, while broadcast ephemerides provide sub-meter accuracy for a few hours for navigation.
Key Equations
Section titled “Key Equations”TEME to GCRF Transformation
Section titled “TEME to GCRF Transformation”The coordinate frame transformation from SGP4’s output frame to the Geocentric Celestial Reference Frame:
where corrects for the equation of the equinoxes between TEME’s 4-term nutation and the full IAU-80 model. This transformation is necessary for comparing SGP4 output against any reference not in TEME.
RSW Error Decomposition
Section titled “RSW Error Decomposition”Error decomposition in the radial-along-track-cross-track (RSW) frame:
The along-track component () dominates the error because mean motion errors produce secular drift in the along-track direction while radial and cross-track errors remain bounded.
Practical Implications for Craft
Section titled “Practical Implications for Craft”-
Pointing accuracy. A 1 km position error at GPS altitude (20,200 km) subtends ~0.003 degrees from the ground. For LEO satellites (~500 km), the same 1 km error subtends ~0.1 degrees. Craft’s rotor control via rotctld should account for these uncertainties in pointing calculations.
-
TLE freshness. The ~1.5 km/day error growth means that TLE age is the primary driver of prediction accuracy. Craft’s automatic TLE update scheduler (via CelesTrak) should aim for at most daily updates.
-
Pass prediction accuracy. For LEO satellite pass predictions, the along-track error dominates and manifests as timing errors. A 1 km along-track error at LEO translates to roughly 0.1—0.2 seconds of timing uncertainty, which grows with TLE age.
-
satellite.js accuracy. Craft’s web frontend uses satellite.js (a JavaScript SGP4 implementation) for client-side propagation. The accuracy bounds established by Kelso apply equally to satellite.js, since it implements the same algorithm with the same constants.