SDN-AP

Whitepaper

SDN-AP: Mean-Element Propagation from Low Earth Orbit to Interplanetary Cruise

One semi-analytic theory family with calibrated drag, tesseral gravity, maneuvers, reentry and launch, in a single WebAssembly module

Technical whitepaper 1.0 | 24 October 2026

Numerical evidence cutoff: 24 October 2026

Markdown source

Executive summary

SDN-AP, the Space Data Network advanced propagator, turns element sets into states for a whole catalog at once. One WebAssembly module carries three theories (section 1): SGP4, the theory of the public catalog; the SGP4XP mode, which implements the extended theory the US Space Force publishes; and SDNAP, the Space Data Network's own theory. The module returns the same bytes under its browser host and under native WasmEdge, at any thread count (section 12.2).

The SDNAP theory contributes:

Contribution Section
The tesseral field of low Earth orbit in a catalog element set: m-daily short periodics, their eccentricity-vector terms and shallow resonances of every order inside a tapered band, with a zonal tail; and the projection that shows how an omitted m-daily term enters the fitted drag 3
A calibrated dynamic density inside the averaged rates: NRLMSISE-00 times the common mode of a dynamic calibration of the atmosphere, read from SDS records and evaluated through one density kernel shared by the whole catalog 4.1, 4.2
Drag-makeup thrust as a signed effective ballistic coefficient, with the thrust fraction inferred from a ballistic prior 4.3
One element-set form for Earth-centered, Moon-centered, cislunar and heliocentric arcs 6
Fit spans chosen by the data: each candidate span scored on the arc's own latest day 7
Maneuver detection by a six-element generalized likelihood ratio on the theory's own inverse-map innovations, with the epoch and the velocity change profiled over the epoch elements and the ballistic term 8
Reentry through criteria for the validity of averaging, a one-way hand-off to osculating integration in the same environment, and a closed-form lifetime window 9
Launch batches fitted jointly under a hierarchical ballistic prior, with association by along-track order 10

Held out against precise orbits, sets fitted to 24 h of data have median day-3 position errors of 0.16 to 0.47 km in low Earth orbit (laser-ranged satellites), 0.13 to 0.18 km for navigation satellites in medium Earth orbit and 0.10 to 0.14 km in geostationary orbit (section 12.3). The SGP4XP mode reproduces the reference implementation of its theory to a median of 0.37 µm (section 12.1).

1 The theory family

Theory MEAN_ELEMENT_THEORY in SDS $OMM Element set Integration
SGP4 (1.1) SGP4 Mean elements and B* Closed form
SGP4XP (1.2) SGP4XP Mean elements with the ballistic term BTERM and the radiation-pressure term AGOM, both in m²/kg Averaged rates on an integration grid
SDNAP (1.3) SDNAP Mean equinoctial elements with BeffB_{\mathrm{eff}}, AGOM and the empirical terms τc\tau_c, τs\tau_s; segment sets carry a fitted epoch state Averaged rates on an integration grid; segments by numerical integration

1.1 SGP4

The SGP4 base is written from Spacetrack Report No. 31 and from the account of the theory by Hoots, Schumacher and Glover2.

1.2 The SGP4XP mode

The mode implements SGP4-XP as the US Space Force describes it3:

Term Method Origin
State Six mean equinoctial elements (section 2.1) 4
Integration Third-order Runge–Kutta step on a grid anchored at the epoch, cubic Hermite interpolation between nodes (section 2.2) 5
Zonal gravity Averaged rates through J5 6
Drag Jacchia 1970 exospheric temperature and density table, with the US Standard Atmosphere 1976 below 90 km, driven by a solar-cycle flux model of the date; averaged by 13-point Gauss–Legendre quadrature over the perigee arc 7,8,9
Radiation pressure Cannonball area-to-mass ratio AGOM; rates averaged over the sunlit arc, whose ends are roots of the shadow quartic 10
Sun and Moon Analytic positions; averaged quadrupole and octupole rates with output-time corrections; instantaneous point masses for periods of 1,100 min and more 11
Resonance Classes at one day, half a day, 16 h and 8 h, with the inclination and eccentricity functions held at the epoch 12,13
Short periods First-order J2 terms; output in TEME 6

1.3 The SDNAP theory

SDNAP keeps the state, integrator, grid, checkpoints and output chain of section 2 and changes the forces:

Term SDNAP Section
Zonal gravity Through J5 as in section 1.2, and J6 to J20 3.1
Tesseral gravity EGM96 to degree 70: m-daily and eccentricity-vector short periodics at output time, shallow resonances in the rates 3.2 to 3.4
Deep resonance The classes of section 1.2 with exact eccentricity and inclination functions 3.5
Atmosphere NRLMSISE-00 times es(t)e^{s(t)} from SDS $SPW and $DCL records, through a shared kernel 4.1, 4.2
Ballistic term Signed Beff=(1−κ)BB_{\mathrm{eff}} = (1-\kappa)B 4.3
Empirical terms Transverse τ0\tau_0, τc\tau_c, τs\tau_s with a persistence time 4.4
Centers Earth and Moon in mean elements; cislunar and heliocentric segments 6

2 Mean elements and averaging

2.1 State and rates

The state is y=(n,af,ag,χ,ψ,λ)y = (n, a_f, a_g, \chi, \psi, \lambda) with

af=ecos⁡(ω+Ω),ag=esin⁡(ω+Ω),ψ=tan⁡i2cos⁡Ω,χ=tan⁡i2sin⁡Ω,λ=M+ω+Ω,a_f = e\cos(\omega+\Omega),\quad a_g = e\sin(\omega+\Omega),\quad \psi = \tan\tfrac{i}{2}\cos\Omega,\quad \chi = \tan\tfrac{i}{2}\sin\Omega,\quad \lambda = M+\omega+\Omega,

regular at zero eccentricity and zero inclination4. An acceleration with radial, transverse and normal components (R,T,N)(R, T, N) changes the elements by Gauss's equations in equinoctial form14. With LL the true longitude, w=1+afcos⁡L+agsin⁡Lw = 1 + a_f\cos L + a_g\sin L, s2=1+χ2+ψ2s^2 = 1+\chi^2+\psi^2, pp the semilatus rectum and h=μph = \sqrt{\mu p}:

a˙=2a2h(esin⁡ν R+pr T),n˙=−3n2a a˙,a˙f=pμ (Rsin⁡L+[(w+1)cos⁡L+af]Tw−(ψsin⁡L−χcos⁡L) agNw),a˙g=pμ (−Rcos⁡L+[(w+1)sin⁡L+ag]Tw+(ψsin⁡L−χcos⁡L) afNw),ψ˙=pμ s2Ncos⁡L2w,χ˙=pμ s2Nsin⁡L2w.\begin{aligned} \dot a &= \frac{2a^2}{h}\Big(e\sin\nu\,R + \frac{p}{r}\,T\Big), \qquad \dot n = -\frac{3n}{2a}\,\dot a,\\ \dot a_f &= \sqrt{\tfrac{p}{\mu}}\,\Big(R\sin L + \big[(w+1)\cos L + a_f\big]\frac{T}{w} - (\psi\sin L - \chi\cos L)\,\frac{a_g N}{w}\Big),\\ \dot a_g &= \sqrt{\tfrac{p}{\mu}}\,\Big(-R\cos L + \big[(w+1)\sin L + a_g\big]\frac{T}{w} + (\psi\sin L - \chi\cos L)\,\frac{a_f N}{w}\Big),\\ \dot\psi &= \sqrt{\tfrac{p}{\mu}}\,\frac{s^2 N\cos L}{2w}, \qquad \dot\chi = \sqrt{\tfrac{p}{\mu}}\,\frac{s^2 N\sin L}{2w}. \end{aligned}

A force enters the theory as its average over the mean anomaly,

⟨y˙⟩=12π∮y˙ dM=12π∮y˙ (1−ecos⁡E) dE,\langle\dot y\rangle = \frac{1}{2\pi}\oint \dot y\,dM = \frac{1}{2\pi}\oint \dot y\,(1-e\cos E)\,dE,

and gravity enters through Lagrange's equations for the averaged disturbing function (section 3). A mean-motion error grows into an along-track error s(t)=a∫δn dts(t) = a\int\delta n\,dt. A fractional error δ\delta in the drag, held for a time tt, gives

s(t)=34 n ∣a˙D∣ δ t2,(1)s(t) = \tfrac{3}{4}\,n\,\lvert\dot a_D\rvert\,\delta\,t^2, \tag{1}

with a˙D=−ρBμa\dot a_D = -\rho B\sqrt{\mu a} the drag decay of the semi-major axis: 3.4 km after three days for a 10 % error at 550 km, where a˙D=−53\dot a_D = -53 m/day. Most of the error of a low orbit lies along track, so each term below is judged by what it does to the mean motion.

2.2 Integration and output

Stage Method
Rates The averaged rates of every term at the stages of a third-order Runge–Kutta step5
Grid Anchored at the epoch; a step of two mean periods, 95 min for periods of 1,100 min and more
Between nodes Cubic Hermite interpolation of the elements from their values and rates at the two nodes
Checkpoints Integrated states held on the grid; a request integrates from the nearest checkpoint, so a state does not depend on which times were requested before it
Output map x=H(y,t)x = \mathcal H(y, t): the short-periodic corrections (J2, Sun and Moon, the tesseral terms of section 3), Kepler's equation, then position and velocity in TEME
Frames GCRF by IAU 2006/2000A precession–nutation through ERFA15; EME2000 by the frame bias; Earth-fixed by GMST 1982 with UT1 = UTC and the mean pole

2.3 Orbit averages of drag

Orbit Rule Basis
Near-circular, z=ae/H<3z = ae/H < 3 with H=60H = 60 km Trapezoid rule in eccentric anomaly, K=12K = 12 nodes Ek=2πk/KE_k = 2\pi k/K with weights (1−ecos⁡Ek)/K(1-e\cos E_k)/K Geometric convergence for smooth periodic integrands16
Eccentric, z≥3z \ge 3 13-point Gauss–Legendre quadrature on the perigee band Nodes where the density is9

The density at each node is taken at the osculating radius: the mean orbit's plus its first-order J2 short-period radial terms. Their constant part moves the mean height by −0.43 km at 300 km and 53° inclination, about 1 % of the density.

2.4 The inverse map

The mean elements whose output is a given osculating state xx at tt solve

yk+1=yk+q(x)−q(H(yk,t)),y0=q(x),(2)y_{k+1} = y_k + q(x) - q\big(\mathcal H(y_k, t)\big), \qquad y_0 = q(x), \tag{2}

where qq gives the osculating equinoctial elements of a state: the osculating-to-mean iteration17. The short-periodic corrections are of order J2, so the iteration converges to 10−910^{-9} km and 10−1210^{-12} km/s in about four steps. Maneuvers, detection and launch sets use it (sections 8 to 10).

3 Gravity

Kaula's disturbing function12 is

R=μa∑l≥2∑m=0l(REa)l∑p=0lFlmp(i)∑qGlpq(e) Slmpq,ψlmpq=(l−2p) ω+(l−2p+q) M+m (Ω−θG),(3)R = \frac{\mu}{a}\sum_{l\ge 2}\sum_{m=0}^{l}\Big(\frac{R_E}{a}\Big)^{l}\sum_{p=0}^{l}F_{lmp}(i)\sum_{q}G_{lpq}(e)\,S_{lmpq},\qquad \psi_{lmpq} = (l-2p)\,\omega + (l-2p+q)\,M + m\,(\Omega-\theta_G), \tag{3}

with SlmpqS_{lmpq} the cosine and sine of ψlmpq\psi_{lmpq} weighted by the field coefficients Cˉlm\bar C_{lm} and Sˉlm\bar S_{lm}. The terms split by j=l−2p+qj = l-2p+q, the multiple of the mean anomaly in the angle:

Family Indices Period Treatment Truncation
Zonal m=0m = 0 Secular and long-period Rates J2 to J20 (3.1)
m-daily j=0j = 0, q=0q = 0, ll even About 1/m1/m day Output, first order Even l≤12l \le 12, all mm (3.2)
Eccentricity-vector j=0j = 0, q=±1q = \pm 1, ll odd About 1/m1/m day Output, first order l≤7l \le 7 (3.3)
Shallow resonance l−2p=1l - 2p = 1, q=0q = 0, angle slower than 0.045 n0.045\,n 22 revolutions and longer Rates, integrated Odd l≤31l \le 31, all mm (3.4)
Deep resonance The classes of section 1.2 Days and longer Rates, integrated As each class (3.5)

The field is EGM96 to degree 7018, with EGM200819 as an option. Each truncation is the degree beyond which the median day-3 error against full-force Starlink truths stops falling.

3.1 Zonal

J2 to J5 enter in closed-form averaged rates (section 1.2). J6 to J20 add first-order rates: the secular terms of even degree, and the long-period terms of odd degree with angle ±ω\pm\omega, which are of order ee in GG but of order one in the eccentricity vector. Fitted to one full-force truth with zonal gravity only, the day-3 error is 0.35 km with J2 to J5, 0.14 km to J10, 0.047 km to J20 and 0.042 km to J40.

3.2 m-daily terms

For j=0j = 0, q=0q = 0 and even ll (p=l/2p = l/2) the angle is ψ=m(Ω−θG)\psi = m(\Omega - \theta_G), with a period of about one mm-th of a day. With the slow elements frozen over that period and ψ′=m(Ω˙J2−ωE)\psi' = m(\dot\Omega_{J2} - \omega_E), Lagrange's equations integrate in closed form. Since ∂R/∂M=0\partial R/\partial M = 0, the semi-major axis, the mean motion and the eccentricity do not oscillate:

Δi=−mAFGna2ηsin⁡i S(ψ)ψ′,Δ(sin⁡i Ω)=AF′Gna2η S1(ψ)ψ′,Δ(eϖ)=(ηAFG′na2+etan⁡(i/2) AF′Gna2η)S1(ψ)ψ′,Δλ=(2(l+1)AFGna2+η e AFG′na2(1+η)+tan⁡(i/2) AF′Gna2η)S1(ψ)ψ′,(4)\begin{aligned} \Delta i &= -\frac{m A F G}{n a^2 \eta\sin i}\,\frac{S(\psi)}{\psi'}, \qquad \Delta(\sin i\,\Omega) = \frac{A F' G}{n a^2\eta}\,\frac{S_1(\psi)}{\psi'},\\ \Delta(e\varpi) &= \Big(\frac{\eta A F G'}{n a^2} + \frac{e\tan(i/2)\,A F' G}{n a^2\eta}\Big)\frac{S_1(\psi)}{\psi'},\\ \Delta\lambda &= \Big(\frac{2(l+1)A F G}{n a^2} + \frac{\eta\, e\, A F G'}{n a^2(1+\eta)} + \frac{\tan(i/2)\,A F' G}{n a^2\eta}\Big)\frac{S_1(\psi)}{\psi'}, \end{aligned} \tag{4}

with A=μREl/al+1A = \mu R_E^{l}/a^{l+1}, F=Fˉl,m,l/2(i)F = \bar F_{l,m,l/2}(i) at the epoch inclination, F′=dF/diF' = dF/di, G=⟨(a/r)l+1⟩G = \langle(a/r)^{l+1}\rangle, η=1−e2\eta = \sqrt{1-e^2}, SS the term's combination of Cˉlm\bar C_{lm} and Sˉlm\bar S_{lm} and S1S_1 its antiderivative in ψ\psi: the equinoctial form of Danielson et al.20. The corrections are added to the elements at output time. The normalized inclination functions are Fourier coefficients. On a circular orbit, Pˉlm(sin⁡isin⁡u) eimΔλ(u)=∑pFˉlmp ei(l−2p)u\bar P_{lm}(\sin i\sin u)\,e^{\mathrm i m\Delta\lambda(u)} = \sum_p \bar F_{lmp}\,e^{\mathrm i(l-2p)u}, with Δλ(u)\Delta\lambda(u) the longitude from the node, is a trigonometric polynomial of degree ll; so 2l+12l + 1 samples give every coefficient exactly, and the normalized Legendre recurrence21 keeps the values stable to degree 70.

The m-daily set is a few hundred meters along track in every low orbit (EGM2008, even l≤8l \le 8, exact inclination functions):

Orbit aa (km) ii (°) Along-track RMS of the set (m)
Starlink, 550 km shell 6,928 53.05 384
ISS 6,795 51.64 394
Stella (laser-ranged) 7,180 98.6 487
LAGEOS-1 12,270 109.84 110

3.3 Eccentricity-vector terms

Odd-degree terms with q=±1q = \pm1 and j=0j = 0 have the angle ψ=w ω+m(Ω−θG)\psi = w\,\omega + m(\Omega-\theta_G), w=−qw = -q. They are of order ee in GG but of order one in the eccentricity vector, through the 1/e1/e of Lagrange's equations, and they oscillate at the m-daily frequencies, amplified by n/ψ˙n/\dot\psi. They are added at output time, to first order and to degree 7. Fitted to one full-force truth with tesserals to degree 3, they take the fit residual from 0.274 to 0.051 km and the day-3 error from 2.6 to 0.37 km.

3.4 Shallow resonance

The angle ψ=(M+ω)+m(Ω−θG)\psi = (M+\omega) + m(\Omega-\theta_G) of order mm drifts slowly when about mm revolutions fill a nodal day. For each order whose angle moves slower than εn\varepsilon n, with ε=0.045\varepsilon = 0.045, the terms of odd degree to 31 enter the averaged rates, with FF and dF/didF/di at the epoch inclination and GG at the epoch eccentricity. The grid resolves their periods, 1/ε≈221/\varepsilon \approx 22 revolutions and longer. With x=∣ψ˙∣/(εn)x = \lvert\dot\psi\rvert/(\varepsilon n) from the current elements, each term carries the weight

w(x)={1,x≤0.9,cos⁡2 ⁣(π2⋅x−0.90.2),0.9<x<1.1,0,x≥1.1,(5)w(x) = \begin{cases} 1, & x \le 0.9,\\ \cos^2\!\Big(\dfrac{\pi}{2}\cdot\dfrac{x-0.9}{0.2}\Big), & 0.9 < x < 1.1,\\ 0, & x \ge 1.1, \end{cases} \tag{5}

so a term that crosses the band edge as drag raises nn fades instead of switching; terms are selected at the epoch out to x=1.3x = 1.3. The 530 to 570 km Starlink shells lie within about 0.2 rev/day of the 15:1 commensurability. On the 53° shell ψ˙≈−0.164\dot\psi \approx -0.164 rev/day: a 6.1-day period and, in EGM2008, an along-track amplitude near 0.8 km. The 97.6° shell sits on the resonance, where the term acts as a nearly constant transverse force of up to 2.7×10−82.7\times10^{-8} m/s².

3.5 Deep resonance

The one-day, half-day, 16 h and 8 h classes of section 1.2 take Glpq(e)G_{lpq}(e) as the Hansen coefficients themselves22,12, valid at every eccentricity. Power series in ee diverge beyond the Laplace limit e=0.6627e = 0.662723, and Molniya orbits sit near e=0.72e = 0.72. The derivatives of the inclination functions are exact. The functions are held at their epoch values.

3.6 How an omitted term enters the drag

Take an along-track term Acos⁡(ωmt+φ)A\cos(\omega_m t + \varphi) that a theory omits, on a fit arc of length TT that holds C=ωmT/2πC = \omega_m T/2\pi cycles, with the arc mapped to x∈[−1,1]x \in [-1, 1]. It projects onto the quadratic signature of drag with the Legendre coefficient

c2=−5A j2(πC)cos⁡φ′,(6)c_2 = -5A\,j_2(\pi C)\cos\varphi', \tag{6}

from eikx=∑l(2l+1) iljl(k)Pl(x)e^{\mathrm i kx} = \sum_l (2l+1)\,\mathrm i^l j_l(k) P_l(x), with jlj_l the spherical Bessel functions. By equation (1) the drag itself has

c2,D=n ∣a˙D∣ T28,(7)c_{2,D} = \frac{n\,\lvert\dot a_D\rvert\,T^2}{8}, \tag{7}

which is 627 m at 24 h, 2,507 m at 48 h and 5,641 m at 72 h for a˙D=−53\dot a_D = -53 m/day at 550 km. The fit biases the drag by δB/B=c2/c2,D\delta B/B = c_2/c_{2,D} and carries the bias forward as c2P2(1+2L/T)c_2 P_2(1 + 2L/T) at a lead LL past the arc; at the end of day 3 after a 24 h fit, P2(7)=73P_2(7) = 73. For the J22 term of the 53° shell (period 11.8 h, along-track amplitude 454 m) the bias is 22 %, 2.1 % and 0.64 % at 24, 48 and 72 h (RMS over the phase). The m=1m = 1 terms, with periods near a day, alias harder: ∣5j2(πC)∣=1.53\lvert 5 j_2(\pi C)\rvert = 1.53 against 0.436 at 24 h. The tesseral terms close this path in the theory (sections 3.2 to 3.4) and longer spans close it in the fit (section 7).

4 Atmosphere and density calibration

4.1 Density and environment

aD=−12 Beff ρ ∣vr∣ vr,vr=v−ωE×r,ρ=ρMSIS(r,t; F10.7,Fˉ81,Ap) es(t)(8)\mathbf a_D = -\tfrac12\,B_{\mathrm{eff}}\,\rho\,\lvert\mathbf v_r\rvert\,\mathbf v_r,\qquad \mathbf v_r = \mathbf v - \boldsymbol\omega_E\times\mathbf r,\qquad \rho = \rho_{\mathrm{MSIS}}\big(\mathbf r, t;\ F_{10.7}, \bar F_{81}, A_p\big)\,e^{s(t)} \tag{8}
Input Source Use
Model NRLMSISE-0024 Total mass density at geodetic height, latitude, longitude and solar time
Solar flux Daily rows of SDS $SPW, or a $PRW table Observed F10.7 of the previous day and its 81-day centered mean25
Geomagnetic activity The same rows Daily Ap26
Density correction SDS $DCL s(t)=ln⁡(ρ/ρMSIS)s(t) = \ln(\rho/\rho_{\mathrm{MSIS}}), the common mode of a dynamic calibration of the atmosphere27,28, linear between its nodes

Beyond the last row or node the values in force are held. The atmosphere co-rotates with the Earth.

4.2 The catalog-shared density kernel

The atmosphere at a given time is the same for every object. NRLMSISE-00 is therefore evaluated once per kernel time on a grid, every object's quadrature nodes interpolate it, and es(t)e^{s(t)} is applied at the query time:

Axis Nodes Interpolation
Height above the equatorial radius 79: 100 to 400 km every 10 km, to 1,000 km every 20, to 1,500 km every 50, to 2,500 km every 100 Linear in log⁡ρ\log\rho
Geocentric latitude 13, every 15° Four-point Lagrange
Local solar time 16, every 1.5 h Four-point Lagrange, periodic
Time Nine grids a day: eight at 3 h intervals of UT and one at 24 h UT under the same day's inputs Linear, never across a change of the daily inputs

Ninety-six grids (10.7 days) share one allocation of 6.3 MiB, so a catalog propagated over a week builds each grid once. A grid depends only on its time and the environment, never on which object first needs it. Against direct evaluation along 53° orbits, ln⁡(ρkernel/ρdirect)\ln(\rho_{\mathrm{kernel}}/\rho_{\mathrm{direct}}) has an RMS of 0.21 %, 0.33 % and 0.47 % at 350, 450 and 550 km, and at most 1.7 %.

4.3 Effective ballistic coefficient and thrust

A drag-makeup thrust proportional and opposite to the drag, aT=−κ aD\mathbf a_T = -\kappa\,\mathbf a_D, leaves the rates of drag with

Beff=(1−κ) B,(9)B_{\mathrm{eff}} = (1-\kappa)\,B, \tag{9}

so the averaged theory carries an operator's thrust, storms included, through one fitted number. BeffB_{\mathrm{eff}} is signed: net thrust, κ>1\kappa > 1, is a negative BeffB_{\mathrm{eff}}. It acts in the drag regime, perigee below 2,500 km. A ballistic arc observes only BeffB_{\mathrm{eff}}. Given a prior B∼N(B^,σB2)B \sim N(\hat B, \sigma_B^2), the set reports κ=1−Beff/B^\kappa = 1 - B_{\mathrm{eff}}/\hat B with

σκ2=(BeffB^2)2σB2+σBeff2B^2.(10)\sigma_\kappa^2 = \Big(\frac{B_{\mathrm{eff}}}{\hat B^2}\Big)^2\sigma_B^2 + \frac{\sigma_{B_{\mathrm{eff}}}^2}{\hat B^2}. \tag{10}

4.4 Empirical transverse terms

Temp(u,t)=(τ0+τccos⁡u+τssin⁡u) g(t),g(t)={1,t≤te,e−(t−te)/τe,t>te,(11)T_{\mathrm{emp}}(u, t) = \big(\tau_0 + \tau_c\cos u + \tau_s\sin u\big)\,g(t),\qquad g(t) = \begin{cases}1, & t \le t_e,\\ e^{-(t-t_e)/\tau_e}, & t > t_e,\end{cases} \tag{11}

with uu the argument of latitude, tet_e the end of the fit arc and τe=24\tau_e = 24 h. To first order in ee the averaged rates are a˙=2τ0g/n\dot a = 2\tau_0 g/n and ddt(af+iag)=eiΩ(τc+iτs) g/(na)\tfrac{d}{dt}(a_f + \mathrm i a_g) = e^{\mathrm i\Omega}(\tau_c + \mathrm i\tau_s)\,g/(na). The constant term is an along-track quadratic −32τ0t2-\tfrac32\tau_0 t^2; the pair turns the eccentricity vector in a fixed direction of the orbit frame, the once-per-revolution empirical acceleration of precise orbit determination29,30. τ0\tau_0 and BeffB_{\mathrm{eff}} share the t2t^2 signature, correlated as ⟨ρ⟩/⟨ρ2⟩\langle\rho\rangle/\sqrt{\langle\rho^2\rangle}, above 0.99 for a 10 % density variation, so one of the two is free per object: BeffB_{\mathrm{eff}}, or τ0\tau_0 with BB at its prior where the configuration selects sustained thrust (section 11). Above the drag regime, τc\tau_c and τs\tau_s carry the once-per-revolution part of radiation pressure and are held after the arc. On 54 GNSS windows (ESA final orbits) the day-3 median is 0.176 km with them held, 0.243 km with them decaying and 0.219 km without them.

5 Radiation pressure and third bodies

Force Earth-centered sets Moon-centered sets Cislunar segments Heliocentric segments
Radiation pressure Cannonball AGOM, averaged over the sunlit arc between the roots of the shadow quartic10, with output-time terms Averaged, in the Moon's cylindrical shadow Radial, AGOM Radial, through μeff=μ⊙(1−β)\mu_{\mathrm{eff}} = \mu_\odot(1-\beta) with β\beta fitted
Third bodies Sun and Moon from analytic series: averaged quadrupole and octupole rates11 and output-time terms; point masses for periods of 1,100 min and more Earth and Sun, the same averaged series The Earth or the Moon, and the Sun, as DE440 point masses31 Venus, the Earth–Moon barycenter, Mars, Jupiter and Saturn from DE440
Empirical τc\tau_c, τs\tau_s above the drag regime (section 4.4) None None RTN acceleration a0+a1t\mathbf a_0 + \mathbf a_1 t

The lightness number β=P1 AU (1 AU)2 AGOM/μ⊙=7.69×10−4 AGOM\beta = P_{1\,\mathrm{AU}}\,(1\,\mathrm{AU})^2\,\mathrm{AGOM}/\mu_\odot = 7.69\times10^{-4}\,\mathrm{AGOM}, with AGOM in m²/kg, measures radial radiation pressure against the Sun's gravity. For high lunar orbits the Earth's quadrupole drives the Kozai–Lidov exchange of eccentricity and inclination32,33, which the averaged rates carry. The DE440 positions are refitted to Chebyshev records: the geocentric Moon to 1.6 m, the Sun to 3.3 km and the planets to between 2.6 m (Venus) and 0.25 km (Jupiter and Saturn).

6 Moon-centered, cislunar and heliocentric sets

6.1 Moon-centered mean elements

The Moon turns once in 27.3 days, so the tesseral angles m(Ω−θM)m(\Omega-\theta_M) are slow for every lunar orbit, and the lunar tesserals belong in the averaged rates rather than in the output:

Part Method
Frame Mean equinoctial elements in the DE440 lunar principal-axis frame frozen at the epoch; the $OMM refers them to ICRF
Gravity GRGM660PRIM34 to degree 70 in the rates: every term whose angle has no mean anomaly (j=0j = 0, ∣q∣≤2\lvert q\rvert \le 2), with FF and GG at the epoch, evaluated in the principal-axis frame of the time
Short periods First-order terms with j≠0j \ne 0 to degree 8 and ∣q∣≤2\lvert q\rvert \le 2
Integration Fourth-order Runge–Kutta on a fixed 240 s grid from the epoch, cubic Hermite between nodes
Orientation DE440 principal-axis angles refitted to 16-day Chebyshev records of degree 13, within 5.9×10−95.9\times10^{-9} rad of the kernel
Maneuvers Each half of the arc is fitted alone. When the whole arc's residual exceeds three times the cleaner half's residual rr plus 0.05 km, the set is refitted on the longest latest segment (three quarters to one quarter of the arc, at least 6 h) whose residual is within max⁡(2r, r+0.05 km)\max(2r,\ r + 0.05\ \mathrm{km}); with no such segment the arc is refused by name

The averaged degree sets the lunar error. On 8 windows of each orbiter, day 3 is 6.5, 3.7, 1.95 and 1.83 km for LRO and 22.6, 6.3, 5.9 and 4.0 km for Danuri at degrees 10, 30, 50 and 70.

6.2 Cislunar and heliocentric segments

Where averaging about one body does not hold, a segment carries a fitted epoch state that is integrated numerically:

Part Cislunar Heliocentric
Center and axes The Moon or the Earth, ICRF The Sun, ICRF
Forces The other body and the Sun as DE440 point masses, the center's J2, radial radiation pressure μ⊙(1−β)\mu_\odot(1-\beta), five planets from DE440, RTN acceleration a0+a1t\mathbf a_0 + \mathbf a_1 t
Integration Fourth-order Runge–Kutta5 on a fixed 60 s grid, which keeps the finite-difference Jacobian smooth Fourth-order Runge–Kutta on a 1,800 s grid; inside a sphere of influence ap(mp/M⊙)2/5a_p(m_p/M_\odot)^{2/5} each step is cut into parts of 2 % of distance over speed
Fit Levenberg–Marquardt on the state and AGOM Levenberg–Marquardt with Jacobi scaling and weak priors on β\beta and the RTN terms
Shortest segment 6 h 5 days

6.3 Reach and segmentation

Arc Treatment
Earth-centered, apocenter within 250,000 km Earth mean elements (sections 2 to 5)
Earth-centered, apocenter beyond 250,000 km Cislunar segment
Moon-centered, apocenter within 10,000 km Moon-centered mean elements (section 6.1)
Moon-centered, apocenter beyond 10,000 km, or open Cislunar segment
Sun-centered Heliocentric segment, the arc cut after its latest sphere-of-influence passage

A segment fit tries the whole arc and its latest half and quarter, each at least the shortest segment, and keeps the longest whose residual is within max⁡(2r, r+0.05 km)\max(2r,\ r + 0.05\ \mathrm{km}) of the smallest residual rr, so a burn or a change of thrust ends the earlier segment. Each segment is an SDS $OMM35,36 with CENTER_NAME, REFERENCE_FRAME ICRF, the fitted epoch state as osculating elements with SEMI_MAJOR_AXIS and GM (an open orbit has e>1e > 1 and a<0a < 0), MEAN_ELEMENT_THEORY SDNAP, the regime (CISLUNAR or HELIO), the force parameters, and the time by which the epoch was carried past a maneuver or a sphere-of-influence passage.

7 Fitting and spans

The fit adjusts the epoch elements and the parameters (Beff,AGOM,τc,τs)(B_{\mathrm{eff}}, \mathrm{AGOM}, \tau_c, \tau_s) to the positions of an SDS $OEM by Levenberg–Marquardt37,38, with analytic Jacobians: the exact derivatives of two-body motion with the J2 secular drifts, and the drag column through the theory's n˙\dot n per unit BB. A prior on BeffB_{\mathrm{eff}} enters as one more row: a previous set's value and sigma (the sigma floored at 10 %), or the configuration's. Each fit starts on two revolutions and grows the arc by factors of three to the full interval, each stage starting from the last solution. The span follows the data:

Step Rule (defaults of $PCF FIT)
Default span 48 h; 24 h for e>0.5e > 0.5
Candidates 48, 72 and 120 h, with 24 h first for e>0.5e > 0.5
Score Each candidate fitted to the data before the latest 24 h and scored by its error on that tail, a day-1 prediction
Choice A longer candidate only when its tail error is at most 0.9 (for e>0.5e > 0.5, 0.7) of the best shorter one's; for e>0.5e > 0.5, no candidate longer than 36 h once the period passes 36 h
Final fit The chosen span refitted on all the data
Implausible fit A residual above 100 km halves the span to its latest half, down to 24 h; an Earth arc still beyond it is refused by name

Longer spans shrink the aliasing of section 3.6 by T2T^2 through equation (7). On laser-ranged spheres in low orbit (Ajisai, LARES, LARES 2, Larets, Starlette, Stella and WESTPAC; 21 windows of ILRS orbits39; fits ending at the same time; median 3D RMS, km):

Span Day 1 Day 2 Day 3
24 h 0.071 0.161 0.300
48 h 0.064 0.087 0.122
72 h 0.051 0.065 0.106
120 h 0.050 0.056 0.074
Span rule on 168 h of data, 24 h tail 0.061 0.086 0.093
Span rule, 6 h tail 0.061 0.092 0.144

A 6 h tail scores the fit's own short-period error rather than its drag estimate, so the tail is a day.

8 Maneuvers

8.1 Impulse and finite-burn maps

For an impulse Δv=(ΔvU,ΔvV,ΔvW)\Delta\mathbf v = (\Delta v_U, \Delta v_V, \Delta v_W) in the radial, in-track and cross-track axes of the pre-burn state at tbt_b, the position is continuous and the post-burn mean elements follow from the inverse map, equation (2):

y+=H−1(x−(tb)+(0,Δv), tb),x−(tb)=H(y−(tb),tb).(12)y^+ = \mathcal H^{-1}\big(x^-(t_b) + (\mathbf 0, \Delta\mathbf v),\ t_b\big),\qquad x^-(t_b) = \mathcal H\big(y^-(t_b), t_b\big). \tag{12}

To first order on a near-circular orbit, Δa=2ΔvV/n\Delta a = 2\Delta v_V/n, Δ(af+iag)=eiL(2ΔvV−iΔvU)/(na)\Delta(a_f + \mathrm i a_g) = e^{\mathrm i L}(2\Delta v_V - \mathrm i\Delta v_U)/(na), Δ(ψ+iχ)=s2eiLΔvW/(2na)\Delta(\psi + \mathrm i\chi) = s^2 e^{\mathrm i L}\Delta v_W/(2na) and Δλ=−2ΔvU/(na)\Delta\lambda = -2\Delta v_U/(na): a radial impulse leaves the semi-major axis unchanged, and a cross-track one moves only χ\chi and ψ\psi. A burn of constant acceleration (aU,aV,aW)(a_U, a_V, a_W) lasting Δtb\Delta t_b sweeps ΔL=nΔtb\Delta L = n\Delta t_b about its centroid LcL_c. Integrating the same rates over it gives

Δa=2aVΔtbn,Δ(af+iag)=eiLc (2aV−iaU) Δtbna sinc⁡ΔL2,Δ(ψ+iχ)=s2eiLc aWΔtb2na sinc⁡ΔL2,(13)\Delta a = \frac{2a_V\Delta t_b}{n},\qquad \Delta(a_f + \mathrm i a_g) = e^{\mathrm i L_c}\,\frac{(2a_V - \mathrm i a_U)\,\Delta t_b}{na}\,\operatorname{sinc}\frac{\Delta L}{2},\qquad \Delta(\psi + \mathrm i\chi) = s^2 e^{\mathrm i L_c}\,\frac{a_W\Delta t_b}{2na}\,\operatorname{sinc}\frac{\Delta L}{2}, \tag{13}

with sinc⁡x=sin⁡x/x\operatorname{sinc}x = \sin x/x. A finite burn is therefore the map (12) at its centroid with the eccentricity-vector and plane changes scaled by sinc⁡(ΔL/2)\operatorname{sinc}(\Delta L/2), the arc loss of the impulsive approximation40. Each burn yields a post-burn $OMM with its epoch at the centroid, and an SDS $MNV with the pre- and post-burn states and the characterization of Δv\Delta\mathbf v.

8.2 Detection

Step Method
Innovations ek=H−1(xk,tk)−y(tk)e_k = \mathcal H^{-1}(x_k, t_k) - y(t_k) against a burn-free fit of the arc: the inverse map removes the short-period motion that the theory models
Signature A burn at tbt_b adds MkΔvM_k\Delta\mathbf v for tk>tbt_k > t_b, with Mk=Φ(tk,tb) G(tb)M_k = \Phi(t_k, t_b)\,G(t_b), G=∂y+/∂ΔvG = \partial y^+/\partial\Delta\mathbf v and Φ(tk,tb)=S(tk)S(tb)−1\Phi(t_k, t_b) = S(t_k)S(t_b)^{-1}; S(t)=∂y(t)/∂y0S(t) = \partial y(t)/\partial y_0 comes from six sets perturbed in the epoch elements. The signature is a step in (n,af,ag,χ,ψ)(n, a_f, a_g, \chi, \psi) and a ramp in λ\lambda
Weights Per element, W=(1.4826 MAD)−2W = (1.4826\,\mathrm{MAD})^{-2}41 with a floor of about 1 m, counted once per revolution: the theory's own low-frequency error resembles a burn's step and ramp

The statistic

F(tb)=∑tk>tbMk⊤WMk,g(tb)=∑tk>tbMk⊤Wek,Δv^=F−1g,Λ(tb)=g⊤F−1g(14)F(t_b) = \sum_{t_k > t_b} M_k^{\top} W M_k,\qquad \mathbf g(t_b) = \sum_{t_k>t_b} M_k^{\top} W e_k,\qquad \widehat{\Delta\mathbf v} = F^{-1}\mathbf g,\qquad \Lambda(t_b) = \mathbf g^{\top}F^{-1}\mathbf g \tag{14}

is the generalized likelihood ratio of a jump42, distributed as χ32\chi^2_3 without a burn. A burn is declared when max⁡tbΛ\max_{t_b}\Lambda exceeds 20: about 5,500 candidate epochs a year in low orbit give α≈1.8×10−4\alpha \approx 1.8\times10^{-4} for one false alarm per object-year. The epoch and Δv\Delta\mathbf v then come from the likelihood profiled over the nuisance θ\theta, the epoch elements and BeffB_{\mathrm{eff}}, re-estimated with and without the burn:

Λp(tb)=u⊤N~(N~⊤PN~)−1N~⊤u,P=A+−A+A−1A+,u=b+−A+A−1b,(15)\Lambda_p(t_b) = \mathbf u^{\top}\tilde N\big(\tilde N^{\top}P\tilde N\big)^{-1}\tilde N^{\top}\mathbf u,\qquad P = A_+ - A_+A^{-1}A_+,\qquad \mathbf u = \mathbf b_+ - A_+A^{-1}\mathbf b, \tag{15}

with A=∑kJk⊤WJkA = \sum_k J_k^{\top}WJ_k and b=∑kJk⊤Wek\mathbf b = \sum_k J_k^{\top}We_k over the arc, A+A_+ and b+\mathbf b_+ the same sums over tk>tbt_k > t_b (suffix sums, so one pass serves every candidate epoch), Jk=∂ek/∂θJ_k = \partial e_k/\partial\theta and N~\tilde N the burn's image in θ\theta. The $MNV gives the epoch where Λp\Lambda_p peaks and the interval within 3.84 of the peak, χ12\chi^2_1 at 95 %43; a burn-free arc reports the floor 20/Fcc\sqrt{20/F_{cc}} per axis at the best epoch. After a detection, a joint segment fit estimates (y0,Δv,tb)(y_0, \Delta\mathbf v, t_b) over the whole arc, the post-burn set being the map (12) of y0y_0 at tbt_b, so the early segment still informs BeffB_{\mathrm{eff}} and the post-burn state.

8.3 Measured

Test Truth Result
Impulse map: 1 and 10 m/s in-track at the end of a 24 h fit 48 Starlink truths; the full-force propagator FFM-144 restarted with the impulse Day-3 response error, the maneuvered less the unmaneuvered trajectory against the same difference in FFM-1 (median): 0.103 and 0.875 km, on displacements of about 800 and 7,400 km
Finite burns: 1 m/s in-track over 15, 30 and 60 min 24 Starlink truths, FFM-1 Day-1 excess error with the map (13): 0.000, 0.003 and 0.005 km; with a centroid impulse: 0.046, 0.321 and 1.417 km
Detection: 20 cm/s at 30 h of a 48 h arc, one burn per axis A low orbit in FFM-1 Epoch within 0.9 min; Δv\Delta v within 9.8 % (radial and cross-track) and 11.5 % (in-track); 5 cm/s in-track stays below the threshold (Λ=16.1\Lambda = 16.1)
Detection floor, 48 h arc FFM-1 70, 5.5 and 54 mm/s radial, in-track and cross-track
False alarms 48 burn-free arcs of 72 h and 24 of 48 h at 350 to 650 km, FFM-1 None; a Gumbel fit45 of the largest Λ\Lambda puts the threshold of 20 at 0.35 (72 h) and 0.005 (48 h) false alarms per object-year

9 Reentry

9.1 Where averaging ends

Averaging needs the elements to change little over one integration step of two periods, against the scales the rates depend on. At nodes every 30 min along the mean trajectory, within 120 days:

Criterion Test (defaults of $PCF REENTRY) Meaning
C1 ε1=4π∣a˙∣/(n H(hp))>0.05\varepsilon_1 = 4\pi\lvert\dot a\rvert/\big(n\,H(h_p)\big) > 0.05 Decay over a step against the density scale height at perigee
C2 hp<180h_p < 180 km Perigee height
C3 ∣Δ(ae)rev∣/(ae)>0.01\lvert\Delta(ae)_{\mathrm{rev}}\rvert/(ae) > 0.01 for e>0.01e > 0.01 Eccentricity collapsing per revolution
C4 3π8∣Δarev∣>0.5\tfrac{3\pi}{8}\lvert\Delta a_{\mathrm{rev}}\rvert > 0.5 km for e>0.02e > 0.02 The along-track sawtooth of an eccentric orbit's perigee passes

HH is the scale height of the density model at the perigee height, and the per-revolution changes are the averaged rates over one period. Drag on an eccentric orbit acts mostly at perigee46, so the osculating semi-major axis steps by Δarev\Delta a_{\mathrm{rev}} at each pass while the mean theory ramps; the along-track difference is a sawtooth of 3π8∣Δarev∣\tfrac{3\pi}{8}\lvert\Delta a_{\mathrm{rev}}\rvert peak to peak.

9.2 Hand-off and window

At the first node where a criterion trips, the set hands off, one way, to osculating integration: EGM96 to degree and order 20, the Sun and Moon, NRLMSISE-00 times es(t)e^{s(t)} under the same $SPW and $DCL records with the set's BeffB_{\mathrm{eff}}, and radial radiation pressure, by fourth-order Runge–Kutta at 10 s down to 80 km. The density model is the same on both sides of the boundary. A set flagged as lowering decays by its sustained transverse thrust τ0\tau_0, with BeffB_{\mathrm{eff}} at its prior.

A fractional ballistic error δB\delta B and a density error δ(t)\delta(t) move a lifetime LL by δL=−L δB/B−∫0Lδ(t) dt\delta L = -L\,\delta B/B - \int_0^L\delta(t)\,dt. With δ\delta first-order Gauss–Markov, of variance σδ2\sigma_\delta^2 and correlation time τ\tau47, the 1-sigma window is

σL2L2=(σBB)2+σδ2 2τL[1−τL(1−e−L/τ)],(16)\frac{\sigma_L^2}{L^2} = \Big(\frac{\sigma_B}{B}\Big)^2 + \sigma_\delta^2\,\frac{2\tau}{L}\Big[1 - \frac{\tau}{L}\big(1 - e^{-L/\tau}\big)\Big], \tag{16}

with σδ=0.15\sigma_\delta = 0.15, τ=2\tau = 2 days, σB/B\sigma_B/B from the set's BeffB_{\mathrm{eff}} sigma or the configuration, and LL the time to go from the end of the fitted data. With σB/B=0.05\sigma_B/B = 0.05 the window is 9.9 % of the time to go at 10 days and 14.7 % at 1 day. Each issue is one SDS $RDM with the keywords of the CCSDS Re-entry Data Message48: the nominal epoch and its window, the orbit lifetime from the set's epoch, BALLISTIC_COEFF =1/Beff= 1/B_{\mathrm{eff}} in kg/m², and the impact point.

9.3 Measured

Twelve decays integrated by FFM-1 to 100 km (three ballistic coefficients at three levels of solar activity, and three eccentric orbits; 134 nodes), each fitted at successive perigee heights and handed to reentry:

Measure Result
Criteria against the error A criterion trips above the height where the first 3 h of prediction pass 1 km of error in 9 of 12 cases, at it in 2 and below it in 1; for 10 km, above it in 11 and at it in 1
Reentry epoch (80 km) less FFM-1's 100 km stop, median −0.33 h with more than 48 h to go, −0.36 h at 12 to 48 h, −0.27 h under 12 h
Absolute error, median 0.42, 0.40 and 0.34 h
FFM-1's stop inside the window 131 of 131 nodes

10 Launch sets

Method Input Result
First set An SDS $LAM insertion orbit (osculating a,e,i,Ω,ω,ua, e, i, \Omega, \omega, u at its epoch) or an SDS $BOV burnout vector, Earth-fixed and rotated by GMST y0=H−1(xins,tins)y_0 = \mathcal H^{-1}(x_{\mathrm{ins}}, t_{\mathrm{ins}}) by equation (2); BeffB_{\mathrm{eff}} and AGOM priors of 0.01 m²/kg, or a prior set's
First fit An early ephemeris, SDS $OEM fit with the first set as prior
Batch One parent state and its objects The batch-joint fit below

From the $LAM uncertainties of perigee and apogee height, argument of latitude and node, the first set's sigmas for a near-circular insertion are

σa=12σhp2+σha2,σe=σa/a,σλ≈σu,σΩ=σRAAN.(17)\sigma_a = \tfrac12\sqrt{\sigma_{h_p}^2 + \sigma_{h_a}^2},\qquad \sigma_e = \sigma_a/a,\qquad \sigma_\lambda \approx \sigma_u,\qquad \sigma_\Omega = \sigma_{\mathrm{RAAN}}. \tag{17}

A deployment releases objects from a parent state x0x_0 at t0t_0, object kk with a separation impulse Δvk\Delta\mathbf v_k and its own BkB_k. Its set is the map (12) of the parent set with Δvk\Delta\mathbf v_k, plus element offsets under a tight prior (about 100 m of position). The fit estimates the parent's elements, the shared τc\tau_c and τs\tau_s and the batch mean Bˉ\bar B, and per object Δvk\Delta\mathbf v_k and BkB_k, under

Bk∼N(Bˉ,σshrink2),Δvk∼N(0,σsep2I),Bˉ∼N(Bprior,σBˉ2),(18)B_k \sim N(\bar B, \sigma_{\mathrm{shrink}}^2),\qquad \Delta\mathbf v_k \sim N(\mathbf 0, \sigma_{\mathrm{sep}}^2 I),\qquad \bar B \sim N(B_{\mathrm{prior}}, \sigma_{\bar B}^2), \tag{18}

the hierarchical prior of Stein shrinkage49,50, with σsep=1\sigma_{\mathrm{sep}} = 1 m/s. The normal matrix is an arrowhead, the parent block coupled to one block per object, and its Schur complement solves it in time linear in the number of objects. Each object's along-track offset from the parent follows Clohessy–Wiltshire51 plus differential drag,

sk(τ)=4ΔvV,knsin⁡nτ−3ΔvV,k τ+2ΔvU,kn(cos⁡nτ−1)+34 n ∣a˙∣ ΔBkB τ2,τ=t−t0,(19)s_k(\tau) = \frac{4\Delta v_{V,k}}{n}\sin n\tau - 3\Delta v_{V,k}\,\tau + \frac{2\Delta v_{U,k}}{n}(\cos n\tau - 1) + \frac34\,n\,\lvert\dot a\rvert\,\frac{\Delta B_k}{B}\,\tau^2,\qquad \tau = t - t_0, \tag{19}

and the objects are associated with later catalog sets by sorting both by along-track position.

Test Truth Result (days 1 / 2 / 3, median, km)
First set One low insertion, FFM-1 0.0000 m from the insertion state at its epoch, from $LAM and from $BOV; day 1 1.019
First fits of a new batch 27 Starlinks, the states of the operator's first files52 6 h fit: 1.5 / 6.1 / 15.3; 12 h: 1.4 / 6.9 / 16.6; 24 h: 0.4 / 0.9 / 0.8. BeffB_{\mathrm{eff}} from 6 h is within 1 % of its 24 h value
Batch-joint against per-object fits, separations of 1 m/s per axis 54 objects in two batches from one exact parent orbit, FFM-1 6 h: 0.8 / 5.4 / 15.1 against 3.4 / 19.0 / 50.8; 12 h: 1.4 / 6.4 / 15.1 against 1.8 / 8.6 / 20.6; 24 h: 0.9 / 3.4 / 7.6 against 0.9 / 3.4 / 7.5; 54 of 54 associated
The same, 0.25 m/s per axis 54 objects in two batches, FFM-1 6 h: 1.8 / 8.7 / 21.3 against 2.0 / 9.5 / 23.4; 12 h (one batch, the other's joint fit failed): 0.3 / 0.4 / 0.7 against 0.4 / 1.6 / 4.7; 24 h: 1.2 / 5.0 / 12.9 against 1.2 / 4.9 / 12.6
Six objects from a 300 km insertion, separations up to 30 cm/s per axis, 6 h arcs FFM-1 Separations relative to the batch mean within 9.6 mm/s; 6 of 6 associated; 2.12 / 10.43 / 25.96 against 1.08 / 5.21 / 12.84 for per-object fits

11 Configuration through $PCF

Each method takes one SDS $PCF35 on its required configuration port. THEORY selects SGP4, SGP4XP or SDNAP, and each method reads its own tables:

Method Tables
propagate, maneuver MEAN_ELEMENT, SEGMENTS, OUTPUT, FORCES
fit FIT, MEAN_ELEMENT, SEGMENTS, FORCES
detect_maneuvers MEAN_ELEMENT, MANEUVER_DETECTION
reentry REENTRY, MEAN_ELEMENT, FORCES
launch_set, launch_batch LAUNCH, MEAN_ELEMENT

The truncations of section 3, the kernel of section 4.2, the empirical terms of section 4.4, the segment rules of section 6, the span rule of section 7, the detection threshold of section 8, the criteria and window of section 9 and the launch priors of section 10 are fields of these tables, so the configuration of a run names every choice that shaped its result. A field set to a value the module cannot apply is refused by name, as "TABLE.FIELD: reason", never silently replaced.

12 Verification

12.1 Conformance of the SGP4XP mode

A seeded corpus of 10,200 synthetic element sets, 1,700 per regime, is propagated to eight times over 7 days by the module and by the US Space Force's Sgp4Prop library, version 9.9, run as a black box3. Differences are 3D positions at the times both answer:

Regime Corpus: mean motion (rev/day), ee, ii (°) Samples Median Within 1 m Maximum
LEO 14.8 to 16.2; 0 to 0.02 (0.002 above 15.8 rev/day); 20 to 90 13,044 49 µm 99.03 % 28.7 m
SSO 14.2 to 15.4; 0 to 0.005; 96.5 to 99.5 13,600 4.9 µm 99.54 % 3.58 m
MEO 1.7 to 6.5; 0 to 0.02; 0 to 70 13,600 0.18 µm 98.56 % 26.9 m
GEO 0.99 to 1.01; 0 to 0.003; 0 to 15 13,600 0.25 µm 96.19 % 35.2 m
HEO 1.95 to 2.05, 0.6 to 0.75, 62 to 65; or 2.2 to 2.4, 0.70 to 0.73, 5 to 30 13,530 0.19 µm 99.19 % 954 m
Long-period 0.07 to 0.9; 0.1 to 0.8; 0 to 90 13,600 0.24 µm 99.04 % 116 m
All 80,974 0.37 µm 98.59 % 954 m

Where both refuse a decayed set, the two refusal epochs agree within 1 % of the elapsed lifetime (164 of 164). Every module output is digested with SHA-256, so a rebuilt module is checked bit for bit against a recorded run.

12.2 Two-runtime parity and determinism

The module53 is compiled once, with clang for wasm32-wasip1-threads and without exception handling, and the same module.wasm runs in the browser host and in native WasmEdge 0.16.454. propagate returns identical $OEM bytes in both. Batch propagation returns the same bytes at any thread count, and no state depends on the order of requests: the checkpoints of section 2.2 and the kernel grids of section 4.2 are keyed by time and environment alone.

12.3 Held-out accuracy

Windows are registered in a frozen plan before scoring55. Each fits the first 24 h of its truth (30 days for cruise, 14 days for the halo orbit) under the space weather of GFZ and NOAA SWPC and IERS Earth orientation, with s=0s = 0 and no ballistic prior, and is scored on the days that follow. A cell is the median over windows of each day's 3D RMS, in km:

Regime Truth Windows Fit Day 1 Day 2 Day 3
LEO, Starlink shells FFM-1 propagation of fits to the operator's ephemerides52, same density model 239 0.069 0.171 0.458 0.993
LEO, ISS NASA trajectory files56 14 0.060 0.279 0.888 1.562
LEO, laser-ranged satellites ILRS orbits39 98 0.047 0.081 0.153 0.164
LEO, laser-ranged spheres, October 2026 ILRS rapid orbits via CDDIS57 51 0.047 0.086 0.211 0.473
MEO, GPS, GLONASS and Galileo ESA final orbits58 60 0.013 0.055 0.117 0.178
MEO, GNSS, October 2026 GFZ rapid orbits59 48 0.013 0.048 0.089 0.128
MEO, laser-ranged (LAGEOS, Etalon, LARES 2) ILRS orbits 77 0.025 0.041 0.068 0.084
MEO, laser-ranged, October 2026 ILRS orbits via CDDIS 44 0.025 0.041 0.078 0.105
IGSO, BeiDou and QZSS GFZ MGEX rapid orbits 120 0.014 0.056 0.120 0.187
IGSO, October 2026 GFZ rapid orbits 29 0.012 0.053 0.096 0.194
GEO, BeiDou and QZSS GFZ MGEX rapid orbits 84 of 90 0.018 0.045 0.086 0.135
GEO, October 2026 GFZ rapid orbits 5 0.012 0.035 0.067 0.100
HEO, THEMIS and Chandra NAIF reconstructions60 50 0.026 0.233 0.706 1.334
HEO, TESS, 13.7-day orbit (segment set) TESS definitive ephemeris, MAST61 39 0.121 0.203 0.473 1.104
Moon, LRO, about 90 km NAIF reconstruction 44 0.139 0.456 0.909 1.526
Moon, Danuri, about 130 km JPL Horizons62 30 of 31 0.134 0.598 1.452 3.435
Cislunar, CAPSTONE near-rectilinear halo orbit JPL Horizons 50 0.415 1.872 4.972 9.833
Heliocentric cruise, Psyche JPL Horizons 20 0.016 0.065 0.180 0.294
Heliocentric cruise, Lucy JPL Horizons reconstruction 15 0.005 0.029 0.054 0.085
Heliocentric cruise, Juno JPL Horizons 22 0.013 0.057 0.121 0.223

The Starlink truth shares the theory's density model and weather, so that row measures the theory's own approximations against full-force integration; the other rows measure the real atmosphere and the real spacecraft. Further out, the halo orbit's segmented error is 17.2, 23.1, 36.4 and 48.4 km at days 4 to 7, and at days 7 and 15 of cruise it is 1.4 and 5.6 km for Psyche, 0.6 and 4.3 km for Lucy and 0.9 and 5.8 km for Juno (720 h fits).

12.4 Cost

Quantity Value
SDNAP rate evaluation, every term 3.26 µs
SDNAP output state, every term 2.11 µs
SDNAP memory per object 4.64 KiB
Shared density kernel, 10.7 days 6.3 MiB
SDNAP element set, SDS $OMM 648 bytes, 10 fitted parameters
24 h fit of a Starlink truth 2.6 s, median
Moon-centered 24 h fit at degree 70 4.6 to 6.1 s
Cislunar or heliocentric segment fit 0.3 to 0.4 s per window
SGP4XP mode: memory; 60 s step; 1-day and 7-day jumps 3.47 KiB; 1.14 µs; 57.7 and 310 µs

Times are one thread of the WebAssembly module on a desktop workstation.

References

R1

Hoots, F. R., Roehrich, R. L. (1980). Models for propagation of NORAD element sets. Spacetrack Report No. 3, Aerospace Defense Command.

R2

Hoots, F. R., Schumacher, P. W., Glover, R. A. (2004). History of analytical orbit modeling in the U.S. space surveillance system. Journal of Guidance, Control, and Dynamics 27(2), 174–185.

R3

US Space Force. Astrodynamics Standards: the Sgp4Prop library and its release notes, version 8.0 and later (the public description of SGP4-XP).

R4

Broucke, R. A., Cefola, P. J. (1972). On the equinoctial orbit elements. Celestial Mechanics 5, 303–310.

R5

Kutta, W. (1901). Beitrag zur näherungsweisen Integration totaler Differentialgleichungen. Zeitschrift für Mathematik und Physik 46, 435–453.

R6

Brouwer, D. (1959). Solution of the problem of artificial satellite theory without drag. Astronomical Journal 64, 378–397.

R7

Jacchia, L. G. (1970). New static models of the thermosphere and exosphere with empirical temperature profiles. Smithsonian Astrophysical Observatory Special Report 313.

R8

NOAA, NASA, US Air Force (1976). U.S. Standard Atmosphere, 1976. U.S. Government Printing Office, Washington, D.C.

R9

Abramowitz, M., Stegun, I. A. (1964). Handbook of Mathematical Functions. National Bureau of Standards, Applied Mathematics Series 55.

R10

Escobal, P. R. (1965). Methods of Orbit Determination. John Wiley & Sons.

R11

Kaula, W. M. (1962). Development of the lunar and solar disturbing functions for a close satellite. Astronomical Journal 67, 300–303.

R12

Kaula, W. M. (1966). Theory of Satellite Geodesy. Blaisdell.

R13

Allan, R. R. (1967). Resonance effects due to the longitude dependence of the gravitational field of a rotating primary. Planetary and Space Science 15, 53–76.

R14

Walker, M. J. H., Ireland, B., Owens, J. (1985). A set of modified equinoctial orbit elements. Celestial Mechanics 36, 409–419.

R15

IAU SOFA Board. IAU SOFA Software Collection, and ERFA: Essential Routines for Fundamental Astronomy. ERFA

R16

Trefethen, L. N., Weideman, J. A. C. (2014). The exponentially convergent trapezoidal rule. SIAM Review 56(3), 385–458.

R17

Walter, H. G. (1967). Conversion of osculating orbital elements into mean elements. Astronomical Journal 72, 994–997.

R18

Lemoine, F. G., et al. (1998). The development of the joint NASA GSFC and the National Imagery and Mapping Agency (NIMA) geopotential model EGM96. NASA/TP-1998-206861, Goddard Space Flight Center.

R19

Pavlis, N. K., Holmes, S. A., Kenyon, S. C., Factor, J. K. (2012). The development and evaluation of the Earth Gravitational Model 2008 (EGM2008). Journal of Geophysical Research 117, B04406.

R20

Danielson, D. A., Sagovac, C. P., Neta, B., Early, L. W. (1995). Semianalytic satellite theory. Naval Postgraduate School, NPS-MA-95-002.

R21

Holmes, S. A., Featherstone, W. E. (2002). A unified approach to the Clenshaw summation and the recursive computation of very high degree and order normalised associated Legendre functions. Journal of Geodesy 76, 279–299.

R22

Hansen, P. A. (1855). Entwickelung des Products einer Potenz des Radius Vectors mit dem Sinus oder Cosinus eines Vielfachen der wahren Anomalie in Reihen. Abhandlungen der Königlich Sächsischen Gesellschaft der Wissenschaften 4, 182–281.

R23

Murray, C. D., Dermott, S. F. (1999). Solar System Dynamics. Cambridge University Press.

R24

Picone, J. M., Hedin, A. E., Drob, D. P., Aikin, A. C. (2002). NRLMSISE-00 empirical model of the atmosphere: statistical comparisons and scientific issues. Journal of Geophysical Research 107(A12), 1468.

R25

Tapping, K. F. (2013). The 10.7 cm solar radio flux (F10.7). Space Weather 11, 394–406.

R26

Matzka, J., Stolle, C., Yamazaki, Y., Bronkalla, O., Morschhauser, A. (2021). The geomagnetic Kp index and derived indices of geomagnetic activity. Space Weather 19, e2020SW002641.

R27

Marcos, F. A., Kendra, M. J., Griffin, J. M., Bass, J. N., Larson, D. R., Liu, J. J. F. (1998). Precision low Earth orbit determination using atmospheric density calibration. Journal of the Astronautical Sciences 46(4).

R28

Casali, S. J., Barker, W. N. (2002). Dynamic calibration atmosphere (DCA) tool for the high accuracy satellite drag model (HASDM). AIAA 2002-4888.

R29

Colombo, O. L. (1989). The dynamics of Global Positioning System orbits and the determination of precise ephemerides. Journal of Geophysical Research 94(B7), 9167–9182.

R30

Wu, S. C., Yunck, T. P., Thornton, C. L. (1991). Reduced-dynamic technique for precise orbit determination of low earth satellites. Journal of Guidance, Control, and Dynamics 14(1), 24–30.

R31

Park, R. S., Folkner, W. M., Williams, J. G., Boggs, D. H. (2021). The JPL planetary and lunar ephemerides DE440 and DE441. Astronomical Journal 161, 105.

R32

Kozai, Y. (1962). Secular perturbations of asteroids with high inclination and eccentricity. Astronomical Journal 67, 591–598.

R33

Lidov, M. L. (1962). The evolution of orbits of artificial satellites of planets under the action of gravitational perturbations of external bodies. Planetary and Space Science 9, 719–759.

R34

Lemoine, F. G., et al. (2013). High-degree gravity models from GRAIL primary mission data. Journal of Geophysical Research: Planets 118, 1676–1698.

R35

Space Data Standards, release 1.264.0: the $OMM, $OEM, $MNV, $RDM, $LAM, $BOV, $SPW, $PRW, $DCL and $PCF schemas. Space Data Standards

R36

CCSDS (2023). Orbit Data Messages. Recommended Standard CCSDS 502.0-B-3, Blue Book.

R37

Levenberg, K. (1944). A method for the solution of certain non-linear problems in least squares. Quarterly of Applied Mathematics 2, 164–168.

R38

Marquardt, D. W. (1963). An algorithm for least-squares estimation of nonlinear parameters. Journal of the Society for Industrial and Applied Mathematics 11(2), 431–441.

R39

Pearlman, M. R., Degnan, J. J., Bosworth, J. M. (2002). The International Laser Ranging Service. Advances in Space Research 30(2), 135–143.

R40

Robbins, H. M. (1966). An analytical study of the impulsive approximation. AIAA Journal 4(8), 1417–1423.

R41

Hampel, F. R. (1974). The influence curve and its role in robust estimation. Journal of the American Statistical Association 69, 383–393.

R42

Willsky, A. S., Jones, H. L. (1976). A generalized likelihood ratio approach to the detection and estimation of jumps in linear systems. IEEE Transactions on Automatic Control 21(1), 108–112.

R43

Wilks, S. S. (1938). The large-sample distribution of the likelihood ratio for testing composite hypotheses. Annals of Mathematical Statistics 9(1), 60–62.

R44

Space Data Network. FFM-1, the full-force numerical propagator: propagator/ffm. Source

R45

Gumbel, E. J. (1958). Statistics of Extremes. Columbia University Press.

R46

King-Hele, D. G. (1987). Satellite Orbits in an Atmosphere: Theory and Applications. Blackie.

R47

Emmert, J. T., Warren, H. P., Segerman, A. M., Byers, J. M., Picone, J. M. (2017). Propagation of atmospheric density errors to satellite orbits. Advances in Space Research 59(1), 147–165.

R48

CCSDS (2019). Re-entry Data Message. Recommended Standard CCSDS 508.1-B-1, Blue Book.

R49

James, W., Stein, C. (1961). Estimation with quadratic loss. Proceedings of the Fourth Berkeley Symposium on Mathematical Statistics and Probability 1, 361–379.

R50

Efron, B., Morris, C. (1975). Data analysis using Stein's estimator and its generalizations. Journal of the American Statistical Association 70, 311–319.

R51

Clohessy, W. H., Wiltshire, R. S. (1960). Terminal guidance system for satellite rendezvous. Journal of the Aerospace Sciences 27(9), 653–658.

R52

SpaceX. Starlink satellite ephemerides: operator predictions, reissued about every 8 h.

R53

Space Data Network. The SDN-AP propagator: propagator/sdn-ap, Apache-2.0. Source

R54

WasmEdge runtime, version 0.16.4. WasmEdge

R55

Space Data Network. Held-out accuracy of SDN-AP: the frozen plan, windows, truth and results of the experiment sdn-gp-starlink-ffm-match. Repository

R56

NASA Johnson Space Center, Flight Operations Directorate. ISS trajectory data, CCSDS orbit ephemeris messages.

R57

Noll, C. E. (2010). The Crustal Dynamics Data Information System: a resource to support scientific analysis using space geodesy. Advances in Space Research 45(12), 1421–1440.

R58

Johnston, G., Riddell, A., Hausler, G. (2017). The International GNSS Service. In Teunissen, P. J. G., Montenbruck, O. (eds.), Springer Handbook of Global Navigation Satellite Systems, 967–982. Springer.

R59

Montenbruck, O., et al. (2017). The Multi-GNSS Experiment (MGEX) of the International GNSS Service (IGS): achievements, prospects and challenges. Advances in Space Research 59(7), 1671–1697.

R60

Acton, C. H. (1996). Ancillary data services of NASA's Navigation and Ancillary Information Facility. Planetary and Space Science 44(1), 65–70.

R61

Ricker, G. R., et al. (2015). Transiting Exoplanet Survey Satellite. Journal of Astronomical Telescopes, Instruments, and Systems 1(1), 014003.

R62

Giorgini, J. D., et al. (1996). JPL's on-line solar system data service. Bulletin of the American Astronomical Society 28(3), 1158.