Skip to content

Lyddane (1963): Singularity Fix

A concise 4-page paper that solves an essential problem: Brouwer’s 1959 formulas blow up for near-circular and near-equatorial orbits, which happen to describe most operational satellites. Lyddane’s fix is directly implemented in the SGP4 subroutine.

Brouwer’s analytical solution expresses results in Delaunay variables (L,G,H,l,g,h)(L, G, H, l, g, h). The resulting perturbation formulas contain two singularities:

  1. Zero eccentricity (e0e \to 0): Terms like δl/e\delta l / e and δg/e\delta g / e diverge.
  2. Zero inclination (I0I \to 0): Terms like δh/sinI\delta h / \sin I diverge.

These are not physical singularities — the satellite coordinates remain perfectly well-defined. The singularities are artifacts of the coordinate system: at zero eccentricity, the argument of perigee gg becomes undefined; at zero inclination, the ascending node hh becomes undefined.

Lyddane reformulates the problem using Poincare canonical variables instead of Delaunay variables:

x1=L,y1=l+g+h,x2=[2(LG)]1/2cos(g+h),y2=[2(LG)]1/2sin(g+h),x3=[2(GH)]1/2cosh,y3=[2(GH)]1/2sinh.\begin{aligned} x_1 &= L, & y_1 &= l + g + h, \\ x_2 &= [2(L-G)]^{1/2} \cos(g+h), & y_2 &= -[2(L-G)]^{1/2} \sin(g+h), \\ x_3 &= [2(G-H)]^{1/2} \cos h, & y_3 &= -[2(G-H)]^{1/2} \sin h. \end{aligned}

The perturbing potential is a power series in x2,x3,y2,y3x_2, x_3, y_2, y_3 that remains regular throughout their range. The key insight is that the determining function S~1\tilde{S}_1 and its derivatives are also regular, so the entire von Zeipel transformation can be carried out without encountering singular terms.

Rather than re-derive all of Brouwer’s work, Lyddane shows that the transformed Hamilton-Jacobi equations in Poincare variables reduce to exactly Brouwer’s equations in Delaunay variables. This means Brouwer’s solutions for FF^{**}, S1S_1, and S1S_1^* apply unchanged — only the final step of computing osculating elements from the transformed variables needs to change.

The output variables that replace the singular Delaunay elements:

Lyddane computesInstead ofSingular when
ecosle \cos l, esinle \sin lee, ll separatelye0e \to 0
sin(I/2)cosh\sin(I/2)\cos h, sin(I/2)sinh\sin(I/2)\sin hII, hh separatelyI0I \to 0
l+g+hl + g + hll, gg, hh separatelye0e \to 0 or I0I \to 0

By computing these combinations directly, the divisions by ee and sinI\sin I never occur. These are the “Lyddane variables” that appear in the SGP4 FORTRAN code.

Lyddane compared against Cowell numerical integration (10th-order, 60-second step, 12-hour spans, harmonics through J5J_5):

ee''Brouwer errorLyddane error
0undefined15 m
0.0081100 m15 m
0.016500 m15 m
0.032300 m15 m

The residual 15 m error is the expected magnitude of second-order short-period terms neglected by both theories. Brouwer’s error grows as 1/e\sim 1/e while Lyddane’s remains constant.

Lyddane identifies an error in O. K. Smith’s (1961) attempt to patch Brouwer’s formulas for small eccentricity. Smith’s constructed eccentricity es=[e(e+δe)]1/2e_s = [e''(e'' + \delta e)]^{1/2} should be es=e+δee_s = e'' + \delta e. With this correction, Smith’s formulas agree with Lyddane’s.

The Lyddane modification is directly implemented in the SGP4 subroutine from Spacetrack Report No. 3 (Hoots and Roehrich, 1980). After computing the Brouwer mean element perturbations, the osculating elements are recovered using Lyddane’s Equation 8 rather than Brouwer’s original formulas.

In the Vallado et al. (2006) Rev-1 paper, 5 of the 29 test satellites specifically exercise the Lyddane singularity fix:

  • 04632 — Low inclination
  • 14128 — Low inclination
  • 20413 — Low inclination
  • 23177 — Low inclination
  • 23599 — Near-circular, low inclination

The Rev-1 paper also documents a bug in the original STR#3 FORTRAN: the choice of using the original vs. perturbed inclination for the Lyddane threshold switch affected results.

DocumentRelationship
Brouwer 1959The parent theory. Lyddane’s modification is a change of output variables, not a change to the theory itself.
STR#3Implements Lyddane’s Eq. 8 in the SGP4 subroutine.
Hoots 1981Exhibits the singular long-period terms (δl/e\delta l/e, δh/sinI\delta h/\sin I) explicitly — exactly what Lyddane’s change of variables eliminates.
Vallado Rev-1Documents Lyddane-related bugs fixed in the corrected SGP4, provides 5 test satellites that exercise the fix.