Vallado (2013): Fundamentals of Astrodynamics
Why This Matters for SGP4
Section titled “Why This Matters for SGP4”This is not a primary research document. Every other page in the foundations section covers a single paper that contributes one piece of the SGP4 puzzle. This textbook is different — it is the pedagogical synthesis that explains how all those pieces fit together.
Vallado is uniquely positioned to write it. He is the lead author of both the Rev-1 modernization paper (AIAA 2006-6753-Rev1) and the SGP4 Orbit Determination paper (AIAA 2008-6770). He served as Senior Research Astrodynamicist at AGI (now Ansys), retired USAF Lt. Colonel, with degrees in astrodynamics engineering (USAFA), astronautical engineering (AFIT), and systems management (USC). The textbook provides the theoretical backdrop that those papers assume the reader already understands: VOP formulations, Brouwer’s canonical transformations, the perturbation hierarchy, and the coordinate-frame infrastructure surrounding TEME.
What the textbook uniquely contributes is context that none of the primary papers provide on their own — the relationships between the theories, the historical decisions that shaped the operational system, and several critical warnings about element compatibility that are not documented anywhere else in the public literature.
Book Structure
Section titled “Book Structure”| Ch. | Title | Pages | SGP4 Relevance |
|---|---|---|---|
| 1 | Equations of Motion | 1—40 | Foundation: two-body, n-body |
| 2 | Kepler’s Equation and Kepler’s Problem | 41—127 | TLE format (Sec. 2.4.2), mean elements, B*, Delaunay/Poincare elements |
| 3 | Coordinate and Time Systems | 129—239 | TEME frame (Sec. 3.7.4), IAU-2010 reductions, WGS-84, canonical units |
| 4 | Observations | 241—275 | Sensor systems, observation types |
| 5 | Celestial Phenomena | 277—315 | Sun/Moon position vectors (used by SDP4) |
| 6 | Orbital Maneuvering | 317—421 | Hohmann, relative motion |
| 7 | Initial Orbit Determination | 423—513 | Gauss, Lambert, Gibbs methods |
| 8 | Special Perturbation Techniques | 517—604 | Numerical integration, gravity field, atmospheric drag models, third-body, solar radiation |
| 9 | General Perturbation Techniques | 609—728 | Core SGP4 chapter: VOP, Brouwer, Kozai, SGP4 history, DSST |
| 10 | Orbit Determination and Estimation | 731—833 | Differential correction, Kalman filtering, relates to AIAA 2008-6770 |
| 11 | Mission Analysis | 837—936 | Satellite look angles, close approach |
| 12 | Interplanetary Mission Analysis | 941—987 | Patched conics, CRTBP |
79 numbered algorithms provide pseudocode implementations throughout. Appendix D tabulates gravitational coefficients, nutation coefficients, and data sources.
Key Revelations for the SGP4 Practitioner
Section titled “Key Revelations for the SGP4 Practitioner”The textbook surfaces several facts that are buried in footnotes, scattered across chapters, or simply absent from the primary papers. These are the findings that change how you use TLEs.
TEME Has No Official Definition
Section titled “TEME Has No Official Definition”The footnote on p. 233 states this directly. The True Equator, Mean Equinox frame that SGP4 outputs is “actually a misnomer” — the true equator correctly implies the CIP as Z-axis, but the X-axis is not the conventional mean equinox. It relates to the “uniform equinox” of Herrick (1971) and Seidelmann (1992).
No authoritative specification document exists for TEME. The 4-term nutation approximation used internally by SGP4 is inferred from Koskela (1967), which states that coefficients greater than 0.2 arcseconds are included. This inference is consistent with the original implementation, but it is an inference — not a specification.
Table 3-6 quantifies the cost: TEME position differs from GCRF by 437 m and velocity by 264 mm/s. That is the frame-conversion error alone, on top of any SGP4 propagation error. Computing nutation at the TLE epoch instead of at propagation time introduces an additional 23.6 m error in just 3 days.
B* Is an Arbitrary Free Parameter
Section titled “B* Is an Arbitrary Free Parameter”Despite its definition as , the textbook notes that B* is “really an arbitrary free parameter in differential correction.” It absorbs modeling errors from all sources — maneuvers, solar pressure, gravity mismodeling — not just atmospheric drag. It can appear negative. It may be “completely unrelated to drag effects.”
The conversion between B* and ballistic coefficient uses kg/m with km from Hoots and Roehrich (1980). But this conversion only has physical meaning when B* is actually representing drag, which is not guaranteed.
Kozai and Brouwer Mean Elements Are Not Interchangeable
Section titled “Kozai and Brouwer Mean Elements Are Not Interchangeable”This is the most consequential warning in the textbook for anyone working with TLEs. Published TLE sets use Kozai mean elements. AFSPC uses Brouwer mean elements internally. The textbook’s p. 106 footnote: “Air Force Space Command uses internally as a Brouwer value. However, to maintain compatibility with older theories, the published TLE set converts to a Kozai value.”
The two theories use different averaging methods. Kozai uses Lagrange VOP with ad hoc averaging. Brouwer uses Delaunay elements and canonical transformations. Both produce “mean elements,” but the secular rates for and at the level are “significantly different” between the two despite both being formally correct. The textbook puts it bluntly: “three different expressions! What’s worse, they’re all correct.”
SGP8/SDP8 Was Never Used Operationally
Section titled “SGP8/SDP8 Was Never Used Operationally”STR#3 presented five propagation models: SGP, SGP4, SDP4, SGP8, and SDP8. The textbook states there is “no evidence to suggest that SGP8/SDP8 was implemented for operational TLE formation” (p. 697). The entire satellite catalog has always been SGP4/SDP4. The SGP8/SDP8 models addressed orbital decay and reentry scenarios but never replaced SGP4/SDP4 for routine catalog maintenance.
PPT3 Achieves 200—300 m Accuracy
Section titled “PPT3 Achieves 200—300 m Accuracy”The US Navy’s PPT3 theory (Cefola and Fonte, 1996) uses a similar Brouwer-based approach but incorporates tesseral and sectorial m-daily effects that SGP4 omits entirely. This improves average LEO accuracy from ~1 km (SGP4) to ~200—300 m — a 3—5x improvement using the same general perturbation framework. Both SGP4 and PPT3 output in the TEME coordinate system.
The “Don’t Divide Twice” Warning
Section titled “The “Don’t Divide Twice” Warning”The ndot/2 and nddot/6 values in the TLE format are already divided by 2 and 6 respectively. The textbook emphasizes: “Don’t divide twice!” (p. 691). This is exactly the kind of implementation trap that the primary papers do not call out explicitly. The mean anomaly update uses:
where the ndot/2 and nddot/6 values from the TLE are plugged in directly as the coefficients of and — no further division needed.
The Perturbation Hierarchy
Section titled “The Perturbation Hierarchy”Chapter 9 presents SGP4 as one specific instantiation of a general perturbation framework. Understanding this hierarchy makes clear what SGP4 includes, what it approximates, and what it ignores entirely.
The framework proceeds in five stages:
- Two-body problem (Chapters 1—2): the unperturbed Keplerian orbit that serves as the reference solution
- VOP equations (Sec. 9.3): Lagrangian VOP for conservative forces (gravity) via the disturbing potential and Lagrange brackets; Gaussian VOP for nonconservative forces (drag) via RSW decomposition
- Method of perturbations (Sec. 9.2): solutions developed as power series in small parameters (, etc.), where for explains why terms appear alongside — terms
- Specific force models: geopotential (— zonals for SGP4; full spherical harmonics for numerical methods), drag (static exponential for SGP4; Jacchia-Roberts or NRLMSISE for high-fidelity), third-body (simplified Sun/Moon for SDP4; full ephemerides for numerical)
- Different solution methods yield different “mean” elements: Kozai (ad hoc averaging, published in TLEs), Brouwer (canonical transformations, used internally by AFSPC), DSST (generalized averaging, available from Orekit)
This hierarchy makes explicit what the primary papers only imply: SGP4 is a truncated, simplified instantiation of a much larger theoretical framework, and every simplification carries a specific accuracy cost. The ~1 km accuracy at TLE epoch is not a failure of implementation but the expected result of the theory’s deliberate tradeoffs — low computation cost in exchange for reduced fidelity.
What the Textbook Does Not Cover
Section titled “What the Textbook Does Not Cover”The textbook references but does not reproduce the STR#3 FORTRAN source code. For the actual implementation, equation-to-FORTRAN mappings, and compilation notes, see the STR#3 transcription and the annotated FORTRAN source. For the corrected algorithms and 518 test vectors, see Rev-1.