KnownX MPT Help

Propagation accuracy: validation method and results

Document
KX-TN-001
Type
Technical note
Version
1.0
Date
6 October 2026
Applies to
KnownX MPT 0.1.0

Abstract

This note describes how the orbit propagation in KnownX MPT is validated and reports the current results. Automated checks compare the engine with analytic references for two-body motion, J2 nodal regression and the J3 and J4 zonal terms, and bound the behaviour of the integrator. Two reports compare KnownX with the SGP4 propagator: for three satellites in different orbit regimes over 72 hours, where the difference after 72 hours is between 2.3 km and 9.9 km and is mostly along-track, and for a manoeuvre-free 163-day history of ISS (Zarya), where predictions are scored against later published elements. The note states the domain in which results are validated and the effects the engine does not yet model.

1. Introduction

1.1 Purpose

A propagated trajectory is useful for planning only if its error is known. This note sets out what KnownX MPT is tested against, what the tests measure, and the numbers they currently produce, so that an analyst can decide whether the tool is suitable for a given task.

1.2 Scope

The note covers translational orbit propagation: gravity, the zonal harmonic terms and the numerical integrator. Atmospheric drag and propulsion are described in section 2 because they act in the same force sum, but they are not yet checked against an external reference. Attitude, collision handling, rendering and the mission-planning tools are outside the scope of this note.

1.3 Terms

TLE
Two-line element set: the public format in which orbital elements of tracked objects are published.
SGP4
The analytic propagator that TLEs are produced for and must be used with.
RIC
Radial, in-track and cross-track components of a position difference, relative to the reference orbit.
Check
An automated test against a reference that every release must pass.
Report
A comparison whose full results are recorded and published, as in sections 5 and 6.

2. Models under test

All forces are summed for each body at every step, in double precision, and passed to the integrator.

2.1 Point-mass gravity

Newtonian attraction is summed over every gravity source in the scenario; no body is treated as the single fixed centre. For a source with gravitational parameter μ at distance r:

a = μ / (r² + ε²) · r̂

where ε is a softening radius that is zero for orbital cases.

2.2 Zonal harmonics

The oblateness of the Earth is modelled with the zonal terms of degree 2, 3 and 4, about the source's spin axis. With k the unit spin axis, ξ = r̂ · k, Rₑ the equatorial radius and Pl the Legendre polynomial of degree l, each degree contributes:

a_l = (μ J_l Rₑ^l / r^(l+2)) · [ ((l+1) P_l(ξ) + ξ P_l′(ξ)) r̂ − P_l′(ξ) k ]

For l = 2 this reduces to the familiar J2 vector form.

2.3 Atmospheric drag

Drag acts against an atmosphere that rotates with its body. Density ρ(h) follows a piecewise-exponential profile of 28 layers from sea level to 1,000 km.

a = −½ ρ(h) A (C_pressure + C_skin) |v_rel| v_rel / m
v_rel = v_body − (v_source + ω_source × r)

2.4 Integration

Interactive scenarios use a semi-implicit (symplectic) Euler step. Validation and benchmarking use a fourth-order Runge-Kutta step. Both call the same force code, so they cannot differ in which forces are applied. At high time rates a step is divided into substeps.

2.5 Constants

QuantityValueBasis
Earth gravitational parameter3.986004418 × 10¹⁴ m³/s²WGS 84
Earth equatorial radius6,378,137 mWGS 84
J21.08262668 × 10⁻³EGM96 / WGS 84
J3−2.5327 × 10⁻⁶EGM96 / WGS 84
J4−1.6196 × 10⁻⁶EGM96 / WGS 84
Sea-level density1.225 kg/m³Standard atmosphere

In the comparison with SGP4 (section 5) the Earth constants are replaced with the WGS 72 values SGP4 itself uses, so that the comparison measures the difference between the models and not between two sets of constants.

3. Validation approach

3.1 Two kinds of evidence

Validation produces two kinds of evidence. A check compares the engine with an analytic reference, and every release must pass it. A report runs a comparison against real-object data and records the full result; the results in sections 5 and 6 are reports.

3.2 Status shown in the application

The status of each capability is shown in the workspace beside the capability itself:

StatusShown asMeaning
ValidatedVALChecked against a reference by an automated test that every release must pass.
ImplementedDEVWorking and tested, not yet checked against an external reference.

3.3 Reference data

Analytic references are closed-form results from orbital mechanics. Real-object references are public element sets from CelesTrak and Space-Track, read with strict checksum verification and propagated with the reference implementation of SGP4 published by Vallado, unmodified.

3.4 Error measures

Position differences are resolved into radial, in-track and cross-track components. For horizons of days to months, where two trajectories can be more than half an orbit apart, the straight-line distance between them stops growing and understates the error. Section 6 therefore reports the unwrapped along-track difference, which keeps growing with the phase difference.

4. Analytic checks

Every release must pass the checks below.

CheckCaseReference
Two-body motionA circular orbit under point-mass gravityClosed-form circular motion
J2 nodal regressionA 700 km circular orbit at 51.6°, propagated for two days with and without J2The analytic secular rate of the ascending node
IntegratorAn exact circular orbit at several step sizesClosed-form circular motion
J3 and J4An eccentric, inclined orbit run with and without each termThe first-order analytic contribution of each term alone

4.1 J2 nodal regression

The reference is the secular rate of the right ascension of the ascending node, with p the semi-latus rectum and n the mean motion:

dΩ/dt = −(3/2) J2 (Rₑ / p)² n cos i

The same orbit is propagated twice. With point-mass gravity only, the node must not drift; with J2 enabled, the measured rate must match the analytic rate.

4.2 J3 and J4

The secular effects of J3 and J4 are several hundred times smaller than those of J2, and second-order J2 terms are of the same size as J4. An absolute comparison would not isolate them. The check therefore measures the difference between a run with and without each term, so the J2 behaviour common to both runs cancels, and compares that difference with the first-order analytic contribution of the term: the node rate for J4, and the eccentricity drift for J3.

4.3 Integrator

The step ladder is a bound, not an accuracy claim. It established the Runge-Kutta step as the integrator for every comparison with a horizon longer than a few orbits.

5. Comparison with SGP4 over 72 hours

5.1 Method

Three satellites were chosen to exercise different parts of the model. For each, a single public element set is converted to an initial state. KnownX then propagates that state numerically for 72 hours at a 60 s Runge-Kutta step, and SGP4 propagates the same element set over the same interval. The difference between the two is resolved into RIC components at every step.

5.2 Results

ObjectAfterRadial (m)In-track (m)Cross-track (m)Total (m)
ISS (Zarya)
Low orbit, drag-dominated
Largest total: 2,600 m
6 h-8547-3547
24 h-81,739101,739
72 h132,25892,258
Landsat 9
Sun-synchronous, J2-dominated
Largest total: 9,881 m
6 h-933034
24 h-23993-1994
72 h-629,88119,881
GPS BIIR-5
Medium orbit, drag-free control
Largest total: 4,567 m
6 h28-12073143
24 h33-80845810
72 h123-4,3041194,308

5.3 Reading the results

For the two low-orbit objects the radial and cross-track differences stay below 70 m throughout the 72 hours, and the total is almost entirely along-track. An along-track difference that grows with time corresponds to a small difference in orbital period between the two models: the two trajectories follow nearly the same path, slightly out of step.

For the medium-orbit object the radial difference stays below 130 m. Its cross-track difference oscillates once per orbit and reaches 2,551 m between the checkpoints in the table, so the checkpoint values alone understate it; the largest total in the table includes it.

SGP4 is an analytic theory fitted to tracking data, not a truth trajectory, so these figures measure agreement between two models. For the medium-orbit case, the difference of about 4 km at 72 hours is attributed mainly to the gravity of the Sun and Moon, which SGP4's deep-space terms include and KnownX does not yet model.

6. Forward prediction against later elements

6.1 Method

The public element history of ISS (Zarya) is first vetted for manoeuvres, and the longest manoeuvre-free window is selected automatically. The oldest element set in a 163-day window from 1998 to 1999 is used as the starting state. KnownX propagates forward from it numerically, with the drag term held at the value in that first element set; SGP4 extrapolates the same first element set. Both are scored against the state given by each later published element set at its own epoch.

6.2 Results

Prediction horizonKnownX (km)SGP4 extrapolation (km)
1 day2030
3 days103192
7 days400900
14 days1,3293,361
30 days6,30116,073

Unwrapped along-track difference from the later element set, 163 epochs in the window.

6.3 Reading the results

Both predictions drift from the later elements at a rate that grows with the horizon, as expected for an object whose decay depends on atmospheric density that neither prediction updates. The later element sets used as the reference are themselves SGP4 fits. Agreement with them at the level SGP4 itself achieves is therefore a meaningful result; a smaller difference than SGP4's is not evidence of higher accuracy, and no such claim is made.

7. Validity domain

UseStanding
Earth-centred orbital motion in low orbit under point-mass gravity with J2Validated.
J3 and J4 effects, drag-driven decay, propulsive manoeuvres, trajectory and closest-approach prediction over hours to daysImplemented; agreement with SGP4 as reported in section 5.
Long-term propagation where third-body gravity or solar radiation pressure matter, such as medium and geostationary orbits over many days; re-entryOutside the current domain.

KnownX MPT is a planning and analysis tool. It is not intended as the sole basis for a safety-critical operational decision.

8. Limitations and open items

  • Gravity harmonics stop at the zonal terms to degree 4; tesseral and sectoral terms are not modelled.
  • The gravity of the Sun and Moon on spacecraft, and solar radiation pressure, are not modelled.
  • The atmosphere is a static profile, independent of solar and geomagnetic activity.
  • The forward prediction covers one object. Histories for the other two benchmark objects are to be added.

9. Reproducing these results

The comparisons in sections 5 and 6 can be run from the application. Open the Validation Center from the Mission Launcher, import a TLE file, and choose the benchmark against SGP4 for a single element set, or forward prediction for an element history. Each report is shown as a table and chart, lists its caveats with the numbers, and can be exported to CSV.

Results depend on the element sets used. The figures in this note come from the element sets recorded with version 0.1.0 and will differ for other epochs and objects.

10. References

  1. Vallado, D. A., Fundamentals of Astrodynamics and Applications, 4th ed., Microcosm Press, 2013.
  2. Vallado, D. A., Crawford, P., Hujsak, R., Kelso, T. S., "Revisiting Spacetrack Report #3", AIAA 2006-6753, 2006.
  3. Hoots, F. R., Roehrich, R. L., "Spacetrack Report No. 3: Models for Propagation of NORAD Element Sets", 1980.
  4. National Geospatial-Intelligence Agency, "World Geodetic System 1984", NGA.STND.0036.
  5. CelesTrak, celestrak.org; Space-Track, space-track.org.

11. Revision history

VersionDateChange
1.06 October 2026First issue, for KnownX MPT 0.1.0.