Skip to Content
📄 Fibonacci Laws — Read the paper
ReferenceFormulas

Calculation Formulas

This page provides formulas for calculating key values at any given year in the Holistic Universe Model. Sections 1–6 include Excel-compatible formulas (single input: MODEL_YEAR). Section 7 (planetary precession) uses Python due to the ~2,400-term complexity.

These formulas are derived from measurements. Every formula on this page was derived from values measured directly in the 3D Simulation  — not the other way around. The simulation produces raw data (year lengths, day lengths, precession periods, orbital parameters) using objective measurement functions; the analytical formulas here were then derived to reproduce that data. See Analysis & Export Tools for how measurements are taken.

How to use these formulas: Replace MODEL_YEAR with your target year (e.g., 2000, -10000, 50000). Negative years represent BCE dates. You can use an Excel translator  to translate formulas into your own language. Or try the Interactive Calculator to compute all values instantly in your browser.

MODEL_YEAR vs calendar year: MODEL_YEAR counts at the model’s mean tropical year (~365.2422 days). Versus the Gregorian calendar (365.2425 days/year, used post-1582 AD) drift is negligible (~0.0003 d/yr). Versus the proleptic Julian calendar (365.25 days/year, used for pre-1582 dates) drift is ~0.0078 d/yr — small per year, but accumulating over millennia. Example: MODEL_YEAR −302,652 ≈ Julian calendar year −302,646 (~6 years over ~300,000 years). All formulas expect MODEL_YEAR.

Contents

  1. Obliquity (Axial Tilt)
  2. Eccentricity
  3. Inclination to Invariable Plane
  4. Longitude of Perihelion — includes ERD definition
  5. Length of Days & Years — solar year, sidereal year, day length, solar year (seconds), sidereal day, stellar day
  6. Precession Durations — axial, perihelion, inclination (coin rotation paradox), anomalistic year (3-step formula)
  7. Planetary Precession Fluctuation — all 7 planets, observed & predictive formulas
  8. Canonical Climate Formula (L1 + L2 + L3) — paleoclimate proxies, per-regime fits, validity windows
  9. How the Formulas Connect
  10. Verification
  11. Dashboard and derivation

1. Obliquity (Axial Tilt)

Calculates Earth’s axial tilt in degrees at any given year.

Scientific Notation:

ε(t)=ε0Acos(2πtTI)+Acos(2πtTO)\varepsilon(t) = \varepsilon_0 - A \cos\left(\frac{2\pi t}{T_I}\right) + A \cos\left(\frac{2\pi t}{T_O}\right)

Where:

  • ε0\varepsilon_0 = 23.41354° — Mean obliquity
  • AA = 0.63604° — Amplitude of variation
  • TI=T_I = ~111,772 years — Inclination precession period (H/3)
  • TO=T_O = ~41,915 years — Obliquity cycle period (H/8)
  • tt = MODEL_YEAR + 302,635 — Time relative to anchor year (302,635 BC)

The conceptual 2-cosine form above captures the dominant behaviour (±A\pm A at H/3 vs H/8). The calculator uses the full 16-harmonic Fourier fit — every harmonic from H/2 to H/32 — with an additive constant εˉ=\bar{\varepsilon} = 23.453°. This pythagoreanMeanObliquity is the zero-frequency component of the 16-harmonic decomposition and differs slightly from meanObliquity (used in the simpler 2-cosine form) because the harmonic fit absorbs additional structure from the higher-order terms.

EXCEL FORMULA OBLIQUITY IN DEGREES (16-harmonic Fourier fit)
=23.453262-0.000003*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/2))-0.000062*COS(2*PI()*(MODEL_YEAR+302635)/(335317/2))+0.032098*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/3))-0.634890*COS(2*PI()*(MODEL_YEAR+302635)/(335317/3))-0.000078*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/5))-0.008146*COS(2*PI()*(MODEL_YEAR+302635)/(335317/5))+0.000449*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/6))-0.004044*COS(2*PI()*(MODEL_YEAR+302635)/(335317/6))-0.032069*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/8))+0.634911*COS(2*PI()*(MODEL_YEAR+302635)/(335317/8))+0.000009*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/9))-0.000055*COS(2*PI()*(MODEL_YEAR+302635)/(335317/9))-0.000897*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/11))+0.008090*COS(2*PI()*(MODEL_YEAR+302635)/(335317/11))-0.000002*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/13))+0.000042*COS(2*PI()*(MODEL_YEAR+302635)/(335317/13))-0.000027*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/14))+0.000164*COS(2*PI()*(MODEL_YEAR+302635)/(335317/14))+0.000448*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/16))-0.004045*COS(2*PI()*(MODEL_YEAR+302635)/(335317/16))-0.000001*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/17))+0.000004*COS(2*PI()*(MODEL_YEAR+302635)/(335317/17))+0.000027*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/19))-0.000164*COS(2*PI()*(MODEL_YEAR+302635)/(335317/19))+0.000001*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/22))-0.000005*COS(2*PI()*(MODEL_YEAR+302635)/(335317/22))-0.000009*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/24))+0.000055*COS(2*PI()*(MODEL_YEAR+302635)/(335317/24))-0.000001*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/27))+0.000004*COS(2*PI()*(MODEL_YEAR+302635)/(335317/27))+0.000000*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/32))-0.000001*COS(2*PI()*(MODEL_YEAR+302635)/(335317/32))

Components:

  • pythagoreanMeanObliquity — Additive constant (23.453°), the mean over one Earth Fundamental Cycle
  • Dominant harmonics: H/3 and H/8 with cos|\cos| coefficient ≈ 0.635 (amplitude matches earthInclAmplitude = 0.63604°)
  • Anchor offset (302,635) — added to MODEL_YEAR in the Excel formula to align time t with the start of the current Earth Fundamental Cycle (302,635 BC)

Example Values:

MODEL_YEARObliquity
2000 AD23.4393°
-10000 (10,000 BCE)24.5293°
+10000 (10,000 AD)22.6182°

Obliquity for Other Planets

The same two-component structure applies to every planet with an obliquity cycle. The formula uses the planet’s ICRF perihelion period (inclination component) and obliquity cycle period (obliquity component), with amplitude A=ψ/(d×m)A = \psi / (d \times \sqrt{m}) from Law 2:

εp(t)=εp,J2000Ap[cos(2πtTICRF)cos(2πt2000TICRF)]+Ap[cos(2πtTObliq)cos(2πt2000TObliq)]\varepsilon_p(t) = \varepsilon_{p,J2000} - A_p \left[\cos\left(\frac{2\pi t}{T_{\text{ICRF}}}\right) - \cos\left(\frac{2\pi t_{2000}}{T_{\text{ICRF}}}\right)\right] + A_p \left[\cos\left(\frac{2\pi t}{T_{\text{Obliq}}}\right) - \cos\left(\frac{2\pi t_{2000}}{T_{\text{Obliq}}}\right)\right]

The anchoring terms ensure εp(2000)=εp,J2000\varepsilon_p(2000) = \varepsilon_{p,J2000} exactly. Venus and Neptune have TObliq=TICRFT_{\text{Obliq}} = |T_{\text{ICRF}}| (auto-derived from their ecliptic periods; tidally damped), so the two cosine terms cancel exactly and the formula returns the static J2000 tilt.

PlanetTICRFT_{\text{ICRF}}TObliqT_{\text{Obliq}}Amplitude AAJ2000 tilt
Mercury28,844 yr894,179 yr±\pm0.386483°0.03°
Mars39,449 yr127,740 yr±\pm1.164232°25.19°
Jupiter41,270 yr167,659 yr±\pm0.021404°3.13°
Saturn15,873 yr111,772 yr±\pm0.065193°26.73°
Uranus33,532 yr167,659 yr±\pm0.023831°82.23°

Mean Obliquity (analytical, averaged over 8H)

The mean obliquity over the Solar System Resonance Cycle is computed analytically from the anchoring offsets (cosine terms average to zero over 8H):

εˉp=εp,J2000+Apcos(2πt2000TICRF)Apcos(2πt2000TObliq)\bar{\varepsilon}_p = \varepsilon_{p,J2000} + A_p \cos\left(\frac{2\pi t_{2000}}{T_{\text{ICRF}}}\right) - A_p \cos\left(\frac{2\pi t_{2000}}{T_{\text{Obliq}}}\right)
PlanetJ2000Mean (8H)
Mercury0.03°0.01°
Mars25.19°25.32°
Jupiter3.13°3.12°
Saturn26.73°26.80°
Uranus82.23°82.24°

2. Eccentricity

Calculates Earth’s orbital eccentricity at any given year.

Scientific Notation (law of cosines — Earth at distance ebasee_{\text{base}} from the wobble centre; perihelion point at distance AA from Earth; eccentricity e(t)e(t) is the distance between them):

e(t)=ebase2+A22ebaseAcosϕe(t) = \sqrt{e_{\text{base}}^{\,2} + A^2 - 2\,e_{\text{base}}\,A\,\cos\phi}

Where:

  • ϕ=2πtTP\phi = \frac{2\pi t}{T_P} — Phase angle
  • ebasee_{\text{base}} = 0.015386 — orbital radius of Earth’s perihelion point around the Sun
  • AA = 0.001356 — Earth’s orbital radius around its wobble center
  • TP=T_P = ~20,957 years — Perihelion precession period (H/16)
  • tt = MODEL_YEAR + 302,635 — Time relative to anchor year (302,635 BC)

Only 2 free parameters (ebasee_{\text{base}} and AA). Minimum (ϕ=0\phi = 0, both points on the same side) and maximum (ϕ=π\phi = \pi, opposite sides) eccentricities are exactly ebaseA|e_{\text{base}} - A| and ebase+Ae_{\text{base}} + A. The derived mean e0=ebase2+A2e_0 = \sqrt{e_{\text{base}}^2 + A^2} = 0.0154456 appears at ϕ=π/2\phi = \pi/2.

EXCEL FORMULA ORBITAL ECCENTRICITY (Change the MODEL_YEAR value)
=SQRT(0.015386^2+0.001356^2-2*0.015386*0.001356*COS(RADIANS(((MODEL_YEAR--302635)/(335317/16))*360)))

Components:

  • eccentricityBase — orbital radius of Earth’s perihelion point (0.015386)
  • eccentricityAmplitude — Earth’s orbital radius around its wobble center (0.001356)
  • SQRT(eccentricityBase²+eccentricityAmplitude²) — Derived mean eccentricity at ϕ=π/2\phi = \pi/2 (0.0154456)
  • H/16 — Perihelion precession cycle (H/16 = ~20,957 years)

Example Values:

MODEL_YEAREccentricity
2000 AD0.01671022
Minimum~0.0140
Maximum~0.0167

3. Inclination to Invariable Plane

Calculates Earth’s orbital inclination relative to the solar system’s invariable plane in degrees.

Scientific Notation:

I(t)=I0Acos(2πtTI)I(t) = I_0 - A \cos\left(\frac{2\pi t}{T_I}\right)

Where:

  • I0I_0 = 1.48113° — Mean inclination
  • AA = 0.63604° — Amplitude of variation (same as obliquity)
  • TI=T_I = ~111,772 years — Inclination precession period (H/3)
  • tt = MODEL_YEAR + 302,635 — Time relative to anchor year (302,635 BC)

Note: The inclination and obliquity share the same amplitude (AA = 0.63604°) because they are geometrically coupled — as Earth’s orbital plane tilts relative to the invariable plane, Earth’s axis maintains its orientation in inertial space, causing the obliquity (angle between axis and orbit normal) to change by the same amount.

EXCEL FORMULA INCLINATION TO THE INVARIABLE PLANE IN DEGREES (Change the MODEL_YEAR value)
=1.48113+(-0.63603*(COS(RADIANS(((MODEL_YEAR--302635)/(335317/3))*360))))

Components:

  • earthInclMean — Mean inclination (1.48113°)
  • earthInclAmplitude — Amplitude of variation (0.63604°)
  • H/3 — Inclination precession cycle (H/3 = ~111,772 years)

Example Values:

MODEL_YEARInclination
2000 AD~1.57869°
Maximum~2.117°
Minimum~0.845°

4. Longitude of Perihelion

Calculates the longitude of perihelion (direction of Earth’s closest approach to the Sun) in degrees. Analysis of Earth perihelion data revealed multiple harmonic terms that improve accuracy.

Scientific Notation:

ϖ(t)=ϖ0+ωPt+i[aisin(2πtTi)+bicos(2πtTi)]+c0\varpi(t) = \varpi_0 + \omega_P \cdot t + \sum_{i} \left[ a_i \sin\left(\frac{2\pi t}{T_i}\right) + b_i \cos\left(\frac{2\pi t}{T_i}\right) \right] + c_0

Note: The Excel formula below uses the full 25-harmonic Fourier fit — identical coefficients and periods to the Python/TypeScript implementation used by the Orbital Calculator.

EXCEL FORMULA LONGITUDE OF PERIHELION (25-harmonic Fourier fit)
=MOD(270+(MODEL_YEAR+302635)*(360/(335317/16))-0.131811*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/3))+0.007264*COS(2*PI()*(MODEL_YEAR+302635)/(335317/3))-0.003219*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/5))+0.000012*COS(2*PI()*(MODEL_YEAR+302635)/(335317/5))+0.120192*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/8))-0.007799*COS(2*PI()*(MODEL_YEAR+302635)/(335317/8))+0.011620*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/13))+0.000536*COS(2*PI()*(MODEL_YEAR+302635)/(335317/13))+4.835748*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/16))-0.021962*COS(2*PI()*(MODEL_YEAR+302635)/(335317/16))+0.000499*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/19))+0.000023*COS(2*PI()*(MODEL_YEAR+302635)/(335317/19))-0.003468*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/21))+0.000048*COS(2*PI()*(MODEL_YEAR+302635)/(335317/21))+0.130382*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/24))+0.006004*COS(2*PI()*(MODEL_YEAR+302635)/(335317/24))+0.001754*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/26))-0.000024*COS(2*PI()*(MODEL_YEAR+302635)/(335317/26))-0.130892*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/29))-0.006027*COS(2*PI()*(MODEL_YEAR+302635)/(335317/29))+2.659030*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/32))+0.247035*COS(2*PI()*(MODEL_YEAR+302635)/(335317/32))-0.005621*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/35))-0.000259*COS(2*PI()*(MODEL_YEAR+302635)/(335317/35))-0.000681*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/37))+0.000000*COS(2*PI()*(MODEL_YEAR+302635)/(335317/37))+0.016174*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/40))+0.000644*COS(2*PI()*(MODEL_YEAR+302635)/(335317/40))-0.010562*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/45))-0.000385*COS(2*PI()*(MODEL_YEAR+302635)/(335317/45))+0.218927*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/48))+0.019922*COS(2*PI()*(MODEL_YEAR+302635)/(335317/48))-0.000502*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/53))-0.000040*COS(2*PI()*(MODEL_YEAR+302635)/(335317/53))+0.006926*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/56))+0.000872*COS(2*PI()*(MODEL_YEAR+302635)/(335317/56))-0.006476*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/61))-0.000855*COS(2*PI()*(MODEL_YEAR+302635)/(335317/61))+0.070333*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/64))+0.012269*COS(2*PI()*(MODEL_YEAR+302635)/(335317/64))+0.001276*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/72))+0.000169*COS(2*PI()*(MODEL_YEAR+302635)/(335317/72))-0.000999*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/77))-0.000132*COS(2*PI()*(MODEL_YEAR+302635)/(335317/77))+0.010342*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/80))+0.001892*COS(2*PI()*(MODEL_YEAR+302635)/(335317/80))+0.002705*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/96))+0.000684*COS(2*PI()*(MODEL_YEAR+302635)/(335317/96))+0.000507*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/112))+0.000139*COS(2*PI()*(MODEL_YEAR+302635)/(335317/112))-0.259775,360)

Earth Rate Deviation (ERD)

The ERD is the derivative of the oscillation terms — it measures how Earth’s perihelion rate deviates from the mean rate. ERD is essential for accurate planetary precession calculations.

Scientific Notation:

ERD=dθEdtω0\text{ERD} = \frac{d\theta_E}{dt} - \omega_0

Where:

  • dθEdt\frac{d\theta_E}{dt} = Instantaneous Earth perihelion rate (°/year)
  • ω0\omega_0 = 360°/~20,957 = 0.017178°/year — Mean rate

Excel Formula (numerical derivative):

This formula calculates ERD from consecutive Longitude of Perihelion values, with angle wraparound correction at ±180°:

EXCEL FORMULA ERD (requires two consecutive years)
=IF(θ_E_current - θ_E_previous < -180, (θ_E_current - θ_E_previous + 360) / (MODEL_YEAR_current - MODEL_YEAR_previous), IF(θ_E_current - θ_E_previous > 180, (θ_E_current - θ_E_previous - 360) / (MODEL_YEAR_current - MODEL_YEAR_previous), (θ_E_current - θ_E_previous) / (MODEL_YEAR_current - MODEL_YEAR_previous) ) ) - 360/20957

Analytical ERD Formula (recommended):

The true derivative of the perihelion harmonics gives the mathematically correct instantaneous rate. For each harmonic term asin(ωt)+bcos(ωt)a \sin(\omega t) + b \cos(\omega t), the derivative is aωcos(ωt)bωsin(ωt)a \omega \cos(\omega t) - b \omega \sin(\omega t).

EXCEL FORMULA ERD (Analytical, 25-harmonic)
=-0.131811*(2*PI()/(335317/3))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/3))-0.007264*(2*PI()/(335317/3))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/3))-0.003219*(2*PI()/(335317/5))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/5))-0.000012*(2*PI()/(335317/5))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/5))+0.120192*(2*PI()/(335317/8))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/8))+0.007799*(2*PI()/(335317/8))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/8))+0.011620*(2*PI()/(335317/13))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/13))-0.000536*(2*PI()/(335317/13))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/13))+4.835748*(2*PI()/(335317/16))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/16))+0.021962*(2*PI()/(335317/16))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/16))+0.000499*(2*PI()/(335317/19))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/19))-0.000023*(2*PI()/(335317/19))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/19))-0.003468*(2*PI()/(335317/21))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/21))-0.000048*(2*PI()/(335317/21))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/21))+0.130382*(2*PI()/(335317/24))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/24))-0.006004*(2*PI()/(335317/24))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/24))+0.001754*(2*PI()/(335317/26))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/26))+0.000024*(2*PI()/(335317/26))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/26))-0.130892*(2*PI()/(335317/29))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/29))+0.006027*(2*PI()/(335317/29))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/29))+2.659030*(2*PI()/(335317/32))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/32))-0.247035*(2*PI()/(335317/32))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/32))-0.005621*(2*PI()/(335317/35))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/35))+0.000259*(2*PI()/(335317/35))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/35))-0.000681*(2*PI()/(335317/37))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/37))+0.000000*(2*PI()/(335317/37))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/37))+0.016174*(2*PI()/(335317/40))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/40))-0.000644*(2*PI()/(335317/40))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/40))-0.010562*(2*PI()/(335317/45))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/45))+0.000385*(2*PI()/(335317/45))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/45))+0.218927*(2*PI()/(335317/48))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/48))-0.019922*(2*PI()/(335317/48))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/48))-0.000502*(2*PI()/(335317/53))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/53))+0.000040*(2*PI()/(335317/53))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/53))+0.006926*(2*PI()/(335317/56))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/56))-0.000872*(2*PI()/(335317/56))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/56))-0.006476*(2*PI()/(335317/61))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/61))+0.000855*(2*PI()/(335317/61))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/61))+0.070333*(2*PI()/(335317/64))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/64))-0.012269*(2*PI()/(335317/64))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/64))+0.001276*(2*PI()/(335317/72))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/72))-0.000169*(2*PI()/(335317/72))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/72))-0.000999*(2*PI()/(335317/77))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/77))+0.000132*(2*PI()/(335317/77))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/77))+0.010342*(2*PI()/(335317/80))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/80))-0.001892*(2*PI()/(335317/80))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/80))+0.002705*(2*PI()/(335317/96))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/96))-0.000684*(2*PI()/(335317/96))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/96))+0.000507*(2*PI()/(335317/112))*COS(2*PI()*(MODEL_YEAR+302635)/(335317/112))-0.000139*(2*PI()/(335317/112))*SIN(2*PI()*(MODEL_YEAR+302635)/(335317/112))

This returns ERD in °/year (typically ~±0.0002 °/year).

Key Values:

MODEL_YEARLongitude
1246 AD90° (aligned with December solstice)
2000 AD102.947°
22,203 AD90° (next December solstice alignment)

ICRF Perihelion Longitude (J2000 epoch)

The ICRF perihelion longitude is the longitude measured against the fixed International Celestial Reference Frame, rather than the moving ecliptic of date. It precesses at a slower rate because the general precession (H/13H/13) is removed.

For Earth, the ICRF perihelion is the ecliptic longitude minus the general precession:

ϖICRF, Earth(t)=ϖecl, Earth(t)360°H/13(t2000)\varpi_{\text{ICRF, Earth}}(t) = \varpi_{\text{ecl, Earth}}(t) - \frac{360°}{H/13} \cdot (t - 2000)

For other planets, the ICRF rate is computed from the ecliptic perihelion period Tp,eclT_{p,\text{ecl}} minus the general precession:

1TICRF=1Tp,ecl1H/13\frac{1}{T_{\text{ICRF}}} = \frac{1}{T_{p,\text{ecl}}} - \frac{1}{H/13} ϖICRF,p(t)=ϖp,J2000+360°TICRF(t2000)\varpi_{\text{ICRF}, p}(t) = \varpi_{p,J2000} + \frac{360°}{T_{\text{ICRF}}} \cdot (t - 2000)

Earth is the only planet with prograde ICRF perihelion precession (period H/3=H/3 = ~111,772 years). All other planets have retrograde ICRF rates because their ecliptic rates are slower than the general precession.

Earth example: At J2000, ϖICRF, Earth=\varpi_{\text{ICRF, Earth}} = 102.947°. After one full H/3H/3 cycle (~111,772 years), it returns to the same value.


5. Length of Days & Years

Year-length variations are modelled as Fourier harmonic series around derived means. The means are computed from two model constants (the input mean tropical year and H); only the harmonic coefficients are empirical (fitted from 491 data points spanning ±25,000 years).

Fourier Harmonic Model

The sidereal and anomalistic year types follow this pattern directly:

Y(t)=Yˉ+i[sisin ⁣(2πtTi)+cicos ⁣(2πtTi)]Y(t) = \bar{Y} + \sum_i \left[ s_i \sin\!\left(\frac{2\pi t}{T_i}\right) + c_i \cos\!\left(\frac{2\pi t}{T_i}\right) \right]

Where t=MODEL_YEARAnchorYeart = \text{MODEL\_YEAR} - \text{AnchorYear}, with AnchorYear = -302,635.

The tropical (solar) year is technically computed by the calculator as the mean of 4 cardinal-point year lengths (each a 24-harmonic derivative of its Julian-Day harmonic series). For Excel use, the 12-harmonic Fourier approximation shown below agrees with the calculator’s 4-CP method to within ~0.04 seconds across the full ±100,000-year range — counterintuitively, the peak disagreement (~0.04 s) sits near J2000 where harmonic phases align unfavourably, while at ±100,000 years it falls to ~0.02 s. Either way: sub-second precision over the full Earth Fundamental Cycle.

Derived Means

All three mean year lengths derive from inputmeanlengthsolaryearindays = 365.2422 and H = 335,317:

Year typeFormulaMean (days)
Tropical (Yˉtrop\bar{Y}_{\text{trop}})ROUND(input × H/16) / (H/16)365.242203646102
Sidereal (Yˉsid\bar{Y}_{\text{sid}})Yˉtrop×HH13\bar{Y}_{\text{trop}} \times \frac{H}{H-13}365.2563630
Anomalistic (Yˉanom\bar{Y}_{\text{anom}})Yˉtrop×HH16\bar{Y}_{\text{trop}} \times \frac{H}{H-16}365.2596324

Solar Year (in days)

Dominant period: H/8 (obliquity cycle, ~41,915 years). Amplitude: ±1.8 seconds.

The Excel formula uses 12 harmonics; the table below shows the 3 dominant ones (H/8, H/3, H/16). The remaining 9 (H/5, H/6, H/9, H/11, H/14, H/19, H/22, H/24, H/32) each contribute < 0.1 second and are included in the formula for completeness.

HarmonicPeriodsin coeff (sis_i)cos coeff (cic_i)Amplitude
H/8~41,915 yr−1.299452e−05+2.227963e−041.93 s
H/3~111,772 yr+4.963656e−06−8.354141e−050.72 s
H/16~20,957 yr+6.560490e−07−6.416442e−060.56 s
EXCEL FORMULA LENGTH OF SOLAR YEAR IN DAYS (Fourier)
=LET(t, MODEL_YEAR+302635, H, 335317, mean, 365.242203646102, mean + (4.963655515994E-06)*SIN(2*PI()*t/(H/3)) + (-8.354140858289E-05)*COS(2*PI()*t/(H/3)) + (-1.645990068981E-08)*SIN(2*PI()*t/(H/5)) + (3.346788536693E-07)*COS(2*PI()*t/(H/5)) + (2.433753464246E-07)*SIN(2*PI()*t/(H/6)) + (-2.329695678249E-06)*COS(2*PI()*t/(H/6)) + (-1.299451587802E-05)*SIN(2*PI()*t/(H/8)) + (2.227963456434E-04)*COS(2*PI()*t/(H/8)) + (9.743882426511E-09)*SIN(2*PI()*t/(H/9)) + (-6.177071904623E-08)*COS(2*PI()*t/(H/9)) + (-8.831015131162E-07)*SIN(2*PI()*t/(H/11)) + (8.543316063918E-06)*COS(2*PI()*t/(H/11)) + (-4.515837982944E-08)*SIN(2*PI()*t/(H/14)) + (2.883165423683E-07)*COS(2*PI()*t/(H/14)) + (6.560490474823E-07)*SIN(2*PI()*t/(H/16)) + (-6.416442022713E-06)*COS(2*PI()*t/(H/16)) + (6.126554369035E-08)*SIN(2*PI()*t/(H/19)) + (-3.916922799144E-07)*COS(2*PI()*t/(H/19)) + (3.783127036528E-09)*SIN(2*PI()*t/(H/22)) + (-1.802048457974E-08)*COS(2*PI()*t/(H/22)) + (-2.612611973930E-08)*SIN(2*PI()*t/(H/24)) + (1.653905514523E-07)*COS(2*PI()*t/(H/24)) + (-2.964708323237E-09)*SIN(2*PI()*t/(H/32)) + (3.095269447075E-08)*COS(2*PI()*t/(H/32)))

Sidereal Year (in days)

Variations are 15× smaller than tropical — the orbital period is nearly constant.

The Excel formula uses 5 harmonics (H/3, H/5, H/8, H/16, H/32) matching the calculator’s SIDEREAL_YEAR_HARMONICS exactly. The table shows the 2 dominant ones.

HarmonicPeriodsin coeff (sis_i)cos coeff (cic_i)Amplitude
H/8~41,915 yr−1.059417e−06+1.713869e−090.092 s
H/3~111,772 yr+3.973165e−07−2.397135e−100.034 s
EXCEL FORMULA LENGTH OF SIDEREAL YEAR IN DAYS (Fourier)
=LET(t, MODEL_YEAR+302635, H, 335317, mean, 365.242203646102*(H/13)/((H/13)-1), mean + (3.973164944361E-07)*SIN(2*PI()*t/(H/3)) + (-2.397135263624E-10)*COS(2*PI()*t/(H/3)) + (3.745546829271E-10)*SIN(2*PI()*t/(H/5)) + (3.355989685870E-07)*COS(2*PI()*t/(H/5)) + (-1.059417380507E-06)*SIN(2*PI()*t/(H/8)) + (1.713869484534E-09)*COS(2*PI()*t/(H/8)) + (1.991940272716E-08)*SIN(2*PI()*t/(H/16)) + (-3.841448696173E-07)*COS(2*PI()*t/(H/16)) + (-3.885222338193E-09)*SIN(2*PI()*t/(H/32)) + (3.535868885074E-08)*COS(2*PI()*t/(H/32)))

Sidereal Year (in seconds)

Within the formula’s modern-era scope (±25,000 yr around J2000), the sidereal year in SI seconds is held at its J2000 snapshot value — the orbital period at this epoch:

Ysid(s)Y_{\text{sid}}^{\text{(s)}} = 31,558,149.77 SI seconds (J2000)

At deep time the value drifts via solar mass loss (Kepler’s third law: T2a3/MT^2 \propto a^3 / M) — see Expanding Resonance for the time-evolution layer.

Day Length (in SI seconds)

D=Ysid(s)Ysid(days)D = \frac{Y_{\text{sid}}^{\text{(s)}}}{Y_{\text{sid}}^{\text{(days)}}}
EXCEL FORMULA LENGTH OF DAY IN SI SECONDS
=LET(t, MODEL_YEAR+302635, H, 335317, sid_days, 365.242203646102*(H/13)/((H/13)-1) + (3.973164944361E-07)*SIN(2*PI()*t/(H/3)) + (-2.397135263624E-10)*COS(2*PI()*t/(H/3)) + (3.745546829271E-10)*SIN(2*PI()*t/(H/5)) + (3.355989685870E-07)*COS(2*PI()*t/(H/5)) + (-1.059417380507E-06)*SIN(2*PI()*t/(H/8)) + (1.713869484534E-09)*COS(2*PI()*t/(H/8)) + (1.991940272716E-08)*SIN(2*PI()*t/(H/16)) + (-3.841448696173E-07)*COS(2*PI()*t/(H/16)) + (-3.885222338193E-09)*SIN(2*PI()*t/(H/32)) + (3.535868885074E-08)*COS(2*PI()*t/(H/32)), 31558149.76/sid_days)

Solar Year (in seconds)

Ysolar(s)=Ysolar(days)×D(s)Y_{\text{solar}}(s) = Y_{\text{solar}}^{\text{(days)}} \times D(s)
EXCEL FORMULA SOLAR YEAR IN SI SECONDS
=LET(t, MODEL_YEAR+302635, H, 335317, sol_days, 365.242203646102 + (4.963655515994E-06)*SIN(2*PI()*t/(H/3)) + (-8.354140858289E-05)*COS(2*PI()*t/(H/3)) + (-1.645990068981E-08)*SIN(2*PI()*t/(H/5)) + (3.346788536693E-07)*COS(2*PI()*t/(H/5)) + (2.433753464246E-07)*SIN(2*PI()*t/(H/6)) + (-2.329695678249E-06)*COS(2*PI()*t/(H/6)) + (-1.299451587802E-05)*SIN(2*PI()*t/(H/8)) + (2.227963456434E-04)*COS(2*PI()*t/(H/8)) + (9.743882426511E-09)*SIN(2*PI()*t/(H/9)) + (-6.177071904623E-08)*COS(2*PI()*t/(H/9)) + (-8.831015131162E-07)*SIN(2*PI()*t/(H/11)) + (8.543316063918E-06)*COS(2*PI()*t/(H/11)) + (-4.515837982944E-08)*SIN(2*PI()*t/(H/14)) + (2.883165423683E-07)*COS(2*PI()*t/(H/14)) + (6.560490474823E-07)*SIN(2*PI()*t/(H/16)) + (-6.416442022713E-06)*COS(2*PI()*t/(H/16)) + (6.126554369035E-08)*SIN(2*PI()*t/(H/19)) + (-3.916922799144E-07)*COS(2*PI()*t/(H/19)) + (3.783127036528E-09)*SIN(2*PI()*t/(H/22)) + (-1.802048457974E-08)*COS(2*PI()*t/(H/22)) + (-2.612611973930E-08)*SIN(2*PI()*t/(H/24)) + (1.653905514523E-07)*COS(2*PI()*t/(H/24)) + (-2.964708323237E-09)*SIN(2*PI()*t/(H/32)) + (3.095269447075E-08)*COS(2*PI()*t/(H/32)), sid_days, 365.242203646102*(H/13)/((H/13)-1) + (3.973164944361E-07)*SIN(2*PI()*t/(H/3)) + (-2.397135263624E-10)*COS(2*PI()*t/(H/3)) + (3.745546829271E-10)*SIN(2*PI()*t/(H/5)) + (3.355989685870E-07)*COS(2*PI()*t/(H/5)) + (-1.059417380507E-06)*SIN(2*PI()*t/(H/8)) + (1.713869484534E-09)*COS(2*PI()*t/(H/8)) + (1.991940272716E-08)*SIN(2*PI()*t/(H/16)) + (-3.841448696173E-07)*COS(2*PI()*t/(H/16)) + (-3.885222338193E-09)*SIN(2*PI()*t/(H/32)) + (3.535868885074E-08)*COS(2*PI()*t/(H/32)), sol_days*31558149.76/sid_days)

Sidereal Day (in SI seconds)

Dsid=Ysolar(s)Ysolar(s)86400+1D_{\text{sid}} = \frac{Y_{\text{solar}}(s)}{\frac{Y_{\text{solar}}(s)}{86400} + 1}

The sidereal day is the time for one full rotation relative to the vernal equinox — slightly shorter than the solar day because Earth must rotate an extra ~1° per day to compensate for its orbital motion.

EXCEL FORMULA SIDEREAL DAY IN SI SECONDS
=LET(t, MODEL_YEAR+302635, H, 335317, sol_days, 365.242203646102 + (4.963655515994E-06)*SIN(2*PI()*t/(H/3)) + (-8.354140858289E-05)*COS(2*PI()*t/(H/3)) + (-1.645990068981E-08)*SIN(2*PI()*t/(H/5)) + (3.346788536693E-07)*COS(2*PI()*t/(H/5)) + (2.433753464246E-07)*SIN(2*PI()*t/(H/6)) + (-2.329695678249E-06)*COS(2*PI()*t/(H/6)) + (-1.299451587802E-05)*SIN(2*PI()*t/(H/8)) + (2.227963456434E-04)*COS(2*PI()*t/(H/8)) + (9.743882426511E-09)*SIN(2*PI()*t/(H/9)) + (-6.177071904623E-08)*COS(2*PI()*t/(H/9)) + (-8.831015131162E-07)*SIN(2*PI()*t/(H/11)) + (8.543316063918E-06)*COS(2*PI()*t/(H/11)) + (-4.515837982944E-08)*SIN(2*PI()*t/(H/14)) + (2.883165423683E-07)*COS(2*PI()*t/(H/14)) + (6.560490474823E-07)*SIN(2*PI()*t/(H/16)) + (-6.416442022713E-06)*COS(2*PI()*t/(H/16)) + (6.126554369035E-08)*SIN(2*PI()*t/(H/19)) + (-3.916922799144E-07)*COS(2*PI()*t/(H/19)) + (3.783127036528E-09)*SIN(2*PI()*t/(H/22)) + (-1.802048457974E-08)*COS(2*PI()*t/(H/22)) + (-2.612611973930E-08)*SIN(2*PI()*t/(H/24)) + (1.653905514523E-07)*COS(2*PI()*t/(H/24)) + (-2.964708323237E-09)*SIN(2*PI()*t/(H/32)) + (3.095269447075E-08)*COS(2*PI()*t/(H/32)), sid_days, 365.242203646102*(H/13)/((H/13)-1) + (3.973164944361E-07)*SIN(2*PI()*t/(H/3)) + (-2.397135263624E-10)*COS(2*PI()*t/(H/3)) + (3.745546829271E-10)*SIN(2*PI()*t/(H/5)) + (3.355989685870E-07)*COS(2*PI()*t/(H/5)) + (-1.059417380507E-06)*SIN(2*PI()*t/(H/8)) + (1.713869484534E-09)*COS(2*PI()*t/(H/8)) + (1.991940272716E-08)*SIN(2*PI()*t/(H/16)) + (-3.841448696173E-07)*COS(2*PI()*t/(H/16)) + (-3.885222338193E-09)*SIN(2*PI()*t/(H/32)) + (3.535868885074E-08)*COS(2*PI()*t/(H/32)), sol_s, sol_days*31558149.76/sid_days, sol_s/(sol_s/86400+1))

Stellar Day (in SI seconds)

Dstar=Dsid×(1+1PA×R)D_{\text{star}} = D_{\text{sid}} \times \left(1 + \frac{1}{P_A \times R}\right)

Where PAP_A is the axial precession period and R=Ysolar(s)/DsidR = Y_{\text{solar}}(s) / D_{\text{sid}} is rotations per year. The stellar day is ~9.12 ms longer than the sidereal day because the vernal equinox precesses westward, so Earth must rotate slightly more to reach the same fixed star.

EXCEL FORMULA STELLAR DAY IN SI SECONDS
=LET(t, MODEL_YEAR+302635, H, 335317, sol_days, 365.242203646102 + (4.963655515994E-06)*SIN(2*PI()*t/(H/3)) + (-8.354140858289E-05)*COS(2*PI()*t/(H/3)) + (-1.645990068981E-08)*SIN(2*PI()*t/(H/5)) + (3.346788536693E-07)*COS(2*PI()*t/(H/5)) + (2.433753464246E-07)*SIN(2*PI()*t/(H/6)) + (-2.329695678249E-06)*COS(2*PI()*t/(H/6)) + (-1.299451587802E-05)*SIN(2*PI()*t/(H/8)) + (2.227963456434E-04)*COS(2*PI()*t/(H/8)) + (9.743882426511E-09)*SIN(2*PI()*t/(H/9)) + (-6.177071904623E-08)*COS(2*PI()*t/(H/9)) + (-8.831015131162E-07)*SIN(2*PI()*t/(H/11)) + (8.543316063918E-06)*COS(2*PI()*t/(H/11)) + (-4.515837982944E-08)*SIN(2*PI()*t/(H/14)) + (2.883165423683E-07)*COS(2*PI()*t/(H/14)) + (6.560490474823E-07)*SIN(2*PI()*t/(H/16)) + (-6.416442022713E-06)*COS(2*PI()*t/(H/16)) + (6.126554369035E-08)*SIN(2*PI()*t/(H/19)) + (-3.916922799144E-07)*COS(2*PI()*t/(H/19)) + (3.783127036528E-09)*SIN(2*PI()*t/(H/22)) + (-1.802048457974E-08)*COS(2*PI()*t/(H/22)) + (-2.612611973930E-08)*SIN(2*PI()*t/(H/24)) + (1.653905514523E-07)*COS(2*PI()*t/(H/24)) + (-2.964708323237E-09)*SIN(2*PI()*t/(H/32)) + (3.095269447075E-08)*COS(2*PI()*t/(H/32)), sid_days, 365.242203646102*(H/13)/((H/13)-1) + (3.973164944361E-07)*SIN(2*PI()*t/(H/3)) + (-2.397135263624E-10)*COS(2*PI()*t/(H/3)) + (3.745546829271E-10)*SIN(2*PI()*t/(H/5)) + (3.355989685870E-07)*COS(2*PI()*t/(H/5)) + (-1.059417380507E-06)*SIN(2*PI()*t/(H/8)) + (1.713869484534E-09)*COS(2*PI()*t/(H/8)) + (1.991940272716E-08)*SIN(2*PI()*t/(H/16)) + (-3.841448696173E-07)*COS(2*PI()*t/(H/16)) + (-3.885222338193E-09)*SIN(2*PI()*t/(H/32)) + (3.535868885074E-08)*COS(2*PI()*t/(H/32)), sol_s, sol_days*31558149.76/sid_days, sid_day, sol_s/(sol_s/86400+1), prec, sid_days/(sid_days-sol_days), rot, sol_s/sid_day, sid_day*(1+1/(prec*rot)))

6. Precession Durations

With the help of the above formulas and the coin rotation paradox, we can calculate all precession durations.

Variables used throughout this section:

  • YsidY_{\text{sid}} = Sidereal year (days or seconds, context-dependent)
  • YsolarY_{\text{solar}} = Solar (tropical) year (days or seconds, context-dependent)
  • YanomY_{\text{anom}} = Anomalistic year (days or seconds, context-dependent) — defined below
  • D(s)D(s) = Day length in SI seconds
  • PAP_A = Axial precession period (years)
  • PPP_P = Perihelion precession period (years)
  • PIP_I = Inclination precession period (years)
  • H=H = 335,317 years = Earth Fundamental Cycle (J2000 anchor; H itself expands monotonically over geological time — see Expanding Resonance for the time-evolution layer)

The Axial precession only needs the sidereal and solar year lengths (Section 5). Perihelion and Inclination precession also need the Anomalistic year — so that one is defined first (in days, then in seconds), before the three precession-duration formulas.

Anomalistic Year (in days — Fourier)

The anomalistic year uses 8 harmonics, with H/24 and H/13 as the dominant terms:

HarmonicPeriodsin coeff (sis_i)cos coeff (cic_i)Amplitude
H/2413,972 yr−2.801670e−07+2.357807e−090.024 s
H/1917,648 yr+2.216796e−07−1.497201e−090.019 s
H/13~25,794 yr+1.517396e−07−6.519321e−100.013 s
H/16~20,957 yr+5.329737e−10+9.467577e−080.008 s
H/8~41,915 yr−9.335198e−08+2.725305e−100.008 s
H/1130,483 yr−1.906973e−10−6.507288e−080.006 s
H/5~67,063 yr−5.388601e−11−2.957320e−080.003 s
H/3~111,772 yr−1.036667e−12+2.896582e−12< 10⁻⁸ s (structural, negligible)
EXCEL FORMULA LENGTH OF ANOMALISTIC YEAR IN DAYS (Fourier)
=LET(t, MODEL_YEAR+302635, H, 335317, mean, 365.242203646102*(H/16)/((H/16)-1), mean + (-1.036666643334E-12)*SIN(2*PI()*t/(H/3)) + (2.896582452374E-12)*COS(2*PI()*t/(H/3)) + (-5.388600561351E-11)*SIN(2*PI()*t/(H/5)) + (-2.957320128182E-08)*COS(2*PI()*t/(H/5)) + (-9.335197976099E-08)*SIN(2*PI()*t/(H/8)) + (2.725304683341E-10)*COS(2*PI()*t/(H/8)) + (-1.906973375443E-10)*SIN(2*PI()*t/(H/11)) + (-6.507288400912E-08)*COS(2*PI()*t/(H/11)) + (1.517395717327E-07)*SIN(2*PI()*t/(H/13)) + (-6.519320976697E-10)*COS(2*PI()*t/(H/13)) + (5.329736788609E-10)*SIN(2*PI()*t/(H/16)) + (9.467576939646E-08)*COS(2*PI()*t/(H/16)) + (2.216796076052E-07)*SIN(2*PI()*t/(H/19)) + (-1.497200952707E-09)*COS(2*PI()*t/(H/19)) + (-2.801669607452E-07)*SIN(2*PI()*t/(H/24)) + (2.357806548736E-09)*COS(2*PI()*t/(H/24)))

Anomalistic Year (in seconds)

The anomalistic year in seconds is derived by multiplying the Fourier result (in days) by the current day length:

Yanom(s)=Yanom(days)×D(s)Y_{\text{anom}}(s) = Y_{\text{anom}}^{\text{(days)}} \times D(s)
EXCEL FORMULA ANOMALISTIC YEAR IN SI SECONDS
=LET(t, MODEL_YEAR+302635, H, 335317, sid_days, 365.242203646102*(H/13)/((H/13)-1) + (3.973164944361E-07)*SIN(2*PI()*t/(H/3)) + (-2.397135263624E-10)*COS(2*PI()*t/(H/3)) + (3.745546829271E-10)*SIN(2*PI()*t/(H/5)) + (3.355989685870E-07)*COS(2*PI()*t/(H/5)) + (-1.059417380507E-06)*SIN(2*PI()*t/(H/8)) + (1.713869484534E-09)*COS(2*PI()*t/(H/8)) + (1.991940272716E-08)*SIN(2*PI()*t/(H/16)) + (-3.841448696173E-07)*COS(2*PI()*t/(H/16)) + (-3.885222338193E-09)*SIN(2*PI()*t/(H/32)) + (3.535868885074E-08)*COS(2*PI()*t/(H/32)), anom_days, 365.242203646102*(H/16)/((H/16)-1) + (-1.036666643334E-12)*SIN(2*PI()*t/(H/3)) + (2.896582452374E-12)*COS(2*PI()*t/(H/3)) + (-5.388600561351E-11)*SIN(2*PI()*t/(H/5)) + (-2.957320128182E-08)*COS(2*PI()*t/(H/5)) + (-9.335197976099E-08)*SIN(2*PI()*t/(H/8)) + (2.725304683341E-10)*COS(2*PI()*t/(H/8)) + (-1.906973375443E-10)*SIN(2*PI()*t/(H/11)) + (-6.507288400912E-08)*COS(2*PI()*t/(H/11)) + (1.517395717327E-07)*SIN(2*PI()*t/(H/13)) + (-6.519320976697E-10)*COS(2*PI()*t/(H/13)) + (5.329736788609E-10)*SIN(2*PI()*t/(H/16)) + (9.467576939646E-08)*COS(2*PI()*t/(H/16)) + (2.216796076052E-07)*SIN(2*PI()*t/(H/19)) + (-1.497200952707E-09)*COS(2*PI()*t/(H/19)) + (-2.801669607452E-07)*SIN(2*PI()*t/(H/24)) + (2.357806548736E-09)*COS(2*PI()*t/(H/24)), anom_days*31558149.76/sid_days)

Axial Precession

Scientific Notation:

PA=YsidYsidYsolarP_A = \frac{Y_{\text{sid}}}{Y_{\text{sid}} - Y_{\text{solar}}}

This is the “coin rotation paradox” — the precession period equals the sidereal year divided by the difference between sidereal and solar years.

Mean value: PA=H13=P_A = \frac{H}{13} = ~25,794 years (range over one H cycle: ~25,22726,336 yr; currently 25,771 yr at J2000)

Example Values:

MODEL_YEARAxial Precession (yr)
2000 AD25,771
Minimum25,227
Maximum26,336
EXCEL FORMULA LENGTH OF AXIAL PRECESSION IN YEARS
=LET(t, MODEL_YEAR+302635, H, 335317, sol_days, 365.242203646102 + (4.963655515994E-06)*SIN(2*PI()*t/(H/3)) + (-8.354140858289E-05)*COS(2*PI()*t/(H/3)) + (-1.645990068981E-08)*SIN(2*PI()*t/(H/5)) + (3.346788536693E-07)*COS(2*PI()*t/(H/5)) + (2.433753464246E-07)*SIN(2*PI()*t/(H/6)) + (-2.329695678249E-06)*COS(2*PI()*t/(H/6)) + (-1.299451587802E-05)*SIN(2*PI()*t/(H/8)) + (2.227963456434E-04)*COS(2*PI()*t/(H/8)) + (9.743882426511E-09)*SIN(2*PI()*t/(H/9)) + (-6.177071904623E-08)*COS(2*PI()*t/(H/9)) + (-8.831015131162E-07)*SIN(2*PI()*t/(H/11)) + (8.543316063918E-06)*COS(2*PI()*t/(H/11)) + (-4.515837982944E-08)*SIN(2*PI()*t/(H/14)) + (2.883165423683E-07)*COS(2*PI()*t/(H/14)) + (6.560490474823E-07)*SIN(2*PI()*t/(H/16)) + (-6.416442022713E-06)*COS(2*PI()*t/(H/16)) + (6.126554369035E-08)*SIN(2*PI()*t/(H/19)) + (-3.916922799144E-07)*COS(2*PI()*t/(H/19)) + (3.783127036528E-09)*SIN(2*PI()*t/(H/22)) + (-1.802048457974E-08)*COS(2*PI()*t/(H/22)) + (-2.612611973930E-08)*SIN(2*PI()*t/(H/24)) + (1.653905514523E-07)*COS(2*PI()*t/(H/24)) + (-2.964708323237E-09)*SIN(2*PI()*t/(H/32)) + (3.095269447075E-08)*COS(2*PI()*t/(H/32)), sid_days, 365.242203646102*(H/13)/((H/13)-1) + (3.973164944361E-07)*SIN(2*PI()*t/(H/3)) + (-2.397135263624E-10)*COS(2*PI()*t/(H/3)) + (3.745546829271E-10)*SIN(2*PI()*t/(H/5)) + (3.355989685870E-07)*COS(2*PI()*t/(H/5)) + (-1.059417380507E-06)*SIN(2*PI()*t/(H/8)) + (1.713869484534E-09)*COS(2*PI()*t/(H/8)) + (1.991940272716E-08)*SIN(2*PI()*t/(H/16)) + (-3.841448696173E-07)*COS(2*PI()*t/(H/16)) + (-3.885222338193E-09)*SIN(2*PI()*t/(H/32)) + (3.535868885074E-08)*COS(2*PI()*t/(H/32)), sid_days/(sid_days-sol_days))

Perihelion Precession

Scientific Notation (coin rotation paradox):

PP=Yanom(s)Yanom(s)Ysolar(s)P_P = \frac{Y_{\text{anom}}(s)}{Y_{\text{anom}}(s) - Y_{\text{solar}}(s)}

Where YanomY_{\text{anom}}(s) and YsolarY_{\text{solar}}(s) are the anomalistic and solar years in seconds. This is the coin rotation paradox applied to the anomalistic and solar years — the perihelion precession period equals the anomalistic year (in seconds) divided by the difference between the anomalistic and solar years (in seconds).

Mean value: PP=H16=P_P = \frac{H}{16} = ~20,957 years (equivalent to PA1316P_A \cdot \frac{13}{16}; range over one H cycle: ~20,58221,312 yr; currently ~20,940 yr at J2000)

Example Values:

MODEL_YEARPerihelion Precession (yr)
2000 AD20,940
Minimum20,582
Maximum21,312
EXCEL FORMULA LENGTH OF PERIHELION PRECESSION IN YEARS (time-varying)
=LET(t, MODEL_YEAR+302635, H, 335317, sol_days, 365.242203646102 + (4.963655515994E-06)*SIN(2*PI()*t/(H/3)) + (-8.354140858289E-05)*COS(2*PI()*t/(H/3)) + (-1.645990068981E-08)*SIN(2*PI()*t/(H/5)) + (3.346788536693E-07)*COS(2*PI()*t/(H/5)) + (2.433753464246E-07)*SIN(2*PI()*t/(H/6)) + (-2.329695678249E-06)*COS(2*PI()*t/(H/6)) + (-1.299451587802E-05)*SIN(2*PI()*t/(H/8)) + (2.227963456434E-04)*COS(2*PI()*t/(H/8)) + (9.743882426511E-09)*SIN(2*PI()*t/(H/9)) + (-6.177071904623E-08)*COS(2*PI()*t/(H/9)) + (-8.831015131162E-07)*SIN(2*PI()*t/(H/11)) + (8.543316063918E-06)*COS(2*PI()*t/(H/11)) + (-4.515837982944E-08)*SIN(2*PI()*t/(H/14)) + (2.883165423683E-07)*COS(2*PI()*t/(H/14)) + (6.560490474823E-07)*SIN(2*PI()*t/(H/16)) + (-6.416442022713E-06)*COS(2*PI()*t/(H/16)) + (6.126554369035E-08)*SIN(2*PI()*t/(H/19)) + (-3.916922799144E-07)*COS(2*PI()*t/(H/19)) + (3.783127036528E-09)*SIN(2*PI()*t/(H/22)) + (-1.802048457974E-08)*COS(2*PI()*t/(H/22)) + (-2.612611973930E-08)*SIN(2*PI()*t/(H/24)) + (1.653905514523E-07)*COS(2*PI()*t/(H/24)) + (-2.964708323237E-09)*SIN(2*PI()*t/(H/32)) + (3.095269447075E-08)*COS(2*PI()*t/(H/32)), sid_days, 365.242203646102*(H/13)/((H/13)-1) + (3.973164944361E-07)*SIN(2*PI()*t/(H/3)) + (-2.397135263624E-10)*COS(2*PI()*t/(H/3)) + (3.745546829271E-10)*SIN(2*PI()*t/(H/5)) + (3.355989685870E-07)*COS(2*PI()*t/(H/5)) + (-1.059417380507E-06)*SIN(2*PI()*t/(H/8)) + (1.713869484534E-09)*COS(2*PI()*t/(H/8)) + (1.991940272716E-08)*SIN(2*PI()*t/(H/16)) + (-3.841448696173E-07)*COS(2*PI()*t/(H/16)) + (-3.885222338193E-09)*SIN(2*PI()*t/(H/32)) + (3.535868885074E-08)*COS(2*PI()*t/(H/32)), anom_days, 365.242203646102*(H/16)/((H/16)-1) + (-1.036666643334E-12)*SIN(2*PI()*t/(H/3)) + (2.896582452374E-12)*COS(2*PI()*t/(H/3)) + (-5.388600561351E-11)*SIN(2*PI()*t/(H/5)) + (-2.957320128182E-08)*COS(2*PI()*t/(H/5)) + (-9.335197976099E-08)*SIN(2*PI()*t/(H/8)) + (2.725304683341E-10)*COS(2*PI()*t/(H/8)) + (-1.906973375443E-10)*SIN(2*PI()*t/(H/11)) + (-6.507288400912E-08)*COS(2*PI()*t/(H/11)) + (1.517395717327E-07)*SIN(2*PI()*t/(H/13)) + (-6.519320976697E-10)*COS(2*PI()*t/(H/13)) + (5.329736788609E-10)*SIN(2*PI()*t/(H/16)) + (9.467576939646E-08)*COS(2*PI()*t/(H/16)) + (2.216796076052E-07)*SIN(2*PI()*t/(H/19)) + (-1.497200952707E-09)*COS(2*PI()*t/(H/19)) + (-2.801669607452E-07)*SIN(2*PI()*t/(H/24)) + (2.357806548736E-09)*COS(2*PI()*t/(H/24)), day_s, 31558149.76/sid_days, sol_s, sol_days*day_s, anom_s, anom_days*day_s, anom_s/(anom_s-sol_s))

Inclination Precession

Scientific Notation (coin rotation paradox):

PI=Yanom(s)Yanom(s)Ysid(s)P_I = \frac{Y_{\text{anom}}(s)}{Y_{\text{anom}}(s) - Y_{\text{sid}}(s)}

Where YanomY_{\text{anom}}(s) and YsidY_{\text{sid}}(s) are the anomalistic and sidereal years in seconds. This is the coin rotation paradox applied to the anomalistic and sidereal years — the inclination precession period equals the anomalistic year (in seconds) divided by the difference between the anomalistic and sidereal years (in seconds).

Mean value: PI=H3=P_I = \frac{H}{3} = ~111,772 years (equivalent to PA133P_A \cdot \frac{13}{3}; range over one H cycle: ~111,678111,859 yr — exceptionally narrow since the sidereal year is almost constant; currently ~111,699 yr at J2000)

Example Values:

MODEL_YEARInclination Precession (yr)
2000 AD111,699
Minimum111,678
Maximum111,859
EXCEL FORMULA LENGTH OF INCLINATION PRECESSION IN YEARS (time-varying)
=LET(t, MODEL_YEAR+302635, H, 335317, sid_days, 365.242203646102*(H/13)/((H/13)-1) + (3.973164944361E-07)*SIN(2*PI()*t/(H/3)) + (-2.397135263624E-10)*COS(2*PI()*t/(H/3)) + (3.745546829271E-10)*SIN(2*PI()*t/(H/5)) + (3.355989685870E-07)*COS(2*PI()*t/(H/5)) + (-1.059417380507E-06)*SIN(2*PI()*t/(H/8)) + (1.713869484534E-09)*COS(2*PI()*t/(H/8)) + (1.991940272716E-08)*SIN(2*PI()*t/(H/16)) + (-3.841448696173E-07)*COS(2*PI()*t/(H/16)) + (-3.885222338193E-09)*SIN(2*PI()*t/(H/32)) + (3.535868885074E-08)*COS(2*PI()*t/(H/32)), anom_days, 365.242203646102*(H/16)/((H/16)-1) + (-1.036666643334E-12)*SIN(2*PI()*t/(H/3)) + (2.896582452374E-12)*COS(2*PI()*t/(H/3)) + (-5.388600561351E-11)*SIN(2*PI()*t/(H/5)) + (-2.957320128182E-08)*COS(2*PI()*t/(H/5)) + (-9.335197976099E-08)*SIN(2*PI()*t/(H/8)) + (2.725304683341E-10)*COS(2*PI()*t/(H/8)) + (-1.906973375443E-10)*SIN(2*PI()*t/(H/11)) + (-6.507288400912E-08)*COS(2*PI()*t/(H/11)) + (1.517395717327E-07)*SIN(2*PI()*t/(H/13)) + (-6.519320976697E-10)*COS(2*PI()*t/(H/13)) + (5.329736788609E-10)*SIN(2*PI()*t/(H/16)) + (9.467576939646E-08)*COS(2*PI()*t/(H/16)) + (2.216796076052E-07)*SIN(2*PI()*t/(H/19)) + (-1.497200952707E-09)*COS(2*PI()*t/(H/19)) + (-2.801669607452E-07)*SIN(2*PI()*t/(H/24)) + (2.357806548736E-09)*COS(2*PI()*t/(H/24)), anom_s, anom_days*31558149.76/sid_days, anom_s/(anom_s-31558149.76))

7. Planetary Precession Fluctuation

Calculates the perihelion precession “fluctuation” for any planet — the difference between observed precession and Newtonian planetary perturbation predictions. In the Holistic Universe Model, this fluctuation arises from Earth’s changing reference frame, not from relativistic effects.

What this formula calculates: The “anomaly” traditionally attributed to General Relativity. The model interprets it as a geometric effect from the interaction between Earth’s effective perihelion cycle (~20,957 years) and each planet’s own perihelion cycle.

Key inputs used in this section:

  • ERD (Earth Rate Deviation) — measures how Earth’s perihelion rate deviates from its mean rate. Calculated as the analytical derivative of the 25-harmonic perihelion formula in Section 4: Longitude of Perihelion.

Generic Formula Structure

Simplified Approximation: This two-term formula shows the conceptual structure of planetary precession fluctuation. The actual unified system uses ~2,400 terms for all 7 planets (planet-specific counts 2,393–2,435), accounting for:

  • Frequency mixing between Earth and planetary cycles
  • ERD (Earth Rate Deviation) corrections
  • Triple interactions (ERD × periodic × angle terms)
  • Higher harmonics (2θ, 3θ, 4θ patterns)
  • Time-varying obliquity/eccentricity (critical for Saturn)

This generic formula illustrates the basic concept. See the Predictive Formulas section below for the complete implementations for all planets.

For any planet P, the fluctuation formula has two components:

fluct_P = A_E × cos(ω_E × (MODEL_YEAR + 302635) + φ_E) + A_P × cos(n × ω_P × (MODEL_YEAR + 302635) + φ_P) + C

Where:

  • ω_E = 360 / ~20,957 = 0.017178°/year — Earth’s effective perihelion rate (same for all planets)
  • ω_P = 360 / T_P — Planet’s perihelion precession rate
  • n = angle multiplier (typically 2 for double-angle pattern)
  • A_E = Earth term amplitude (planet-specific)
  • A_P = Planet term amplitude (planet-specific)
  • φ_E, φ_P = Phase offsets (planet-specific)
  • C = Offset constant (planet-specific)
  • 302,635 = Anchor year (Balanced Year, 302,635 BC)

Planetary Parameters

Planete (J2000)a (AU) †T_P (years)ω_P (°/year)Direction
Mercury0.205640.3871243,8670.001476Prograde
Venus0.006780.7233447,089-0.000805Ecliptic-retrograde
Earth0.016711.0000ICRF ~111,772; effective ~20,957*0.017178Prograde
Mars0.093391.523774,5150.004831Prograde
Jupiter0.048395.199668,7830.005234Prograde
Saturn0.053869.531041,270-0.008723Ecliptic-retrograde
Uranus0.0472619.1408111,7720.003221Prograde
Neptune0.0085929.9282670,6340.000537Prograde

*Earth has true perihelion period ~111,772 years, but effective period ~20,957 years due to axial precession interaction. † Semi-major axis derived from Kepler’s 3rd law (a = (T_planet / T_earth)^(2/3)) using the model’s orbital period and MEAN_SOLAR_YEAR_DAYS as the Earth reference. Earth = 1.0 AU by definition.

Amplitude Scaling

The amplitudes scale with each planet’s orbital characteristics:

A_E = 329 × (e / a) [Earth term amplitude, arcsec/century] A_P = 219 × e [Planet term amplitude, arcsec/century]

Observed-Angle Formulas (All 7 Planets)

The observed-angle formulas were developed during model fitting and require observational inputs (Earth perihelion, planetary perihelion, obliquity, eccentricity, ERD). They achieve R² ≈ 1.0000 for all 7 planets.

For predictions using only year as input (no observations required), see the Predictive Formulas below.


Predictive Formulas (Year-Only Input)

A key validation of the Holistic Model is that planetary precession can be predicted using only the year as input - no observations required. All parameters (Earth perihelion, obliquity, eccentricity, ERD, and the planet’s predicted perihelion) are computed from their respective formulas.

Why This Matters: Standard formulas require observed data (Earth perihelion position, planetary perihelion position, obliquity, eccentricity). The predictive formulas demonstrate that all these quantities are deterministic functions of time. Given only a year, we can compute all the necessary inputs from formulas and predict the precession fluctuation. This validates the model’s claim that observed precession “anomalies” are reference frame effects, not gravitational perturbations.

Predictive Perihelion Calculation

θP(t)=θ0+360°TP×(t2000)\theta_P(t) = \theta_0 + \frac{360°}{T_P} \times (t - 2000)

Where:

  • θ0\theta_0 = J2000 perihelion longitude (degrees)
  • TPT_P = Planet’s precession period
  • tt = MODEL_YEAR
PlanetPeriod (years)θ₀ (J2000)
Mercury243,86777.457°
Venus447,089131.577°
Mars74,515336.065°
Jupiter68,78314.707°
Saturn41,27092.128°
Uranus111,772170.731°
Neptune670,63445.801°

All planets use the same formula structure with their J2000 perihelion longitude as the reference point. For accuracy metrics (R², RMSE) of all 7 planets, see the Summary table below.

Mercury

Uses predicted Mercury perihelion: θ_M = 77.457° + (360°/243,867) × (MODEL_YEAR − 2000)

Baseline precession: 531.4″/century = 1,296,000″ ÷ 243,867 years × 100

Mercury Precession (Python)
from predict_precession import predict, predict_total year = 2026 fluctuation = predict(year, 'mercury') # Returns fluctuation only total = predict_total(year, 'mercury') # Returns baseline + fluctuation print(f"Mercury {year}: {total:+.2f} arcsec/century (fluctuation: {fluctuation:+.2f})")

Python Result: R² = 0.999999, RMSE = 0.0974″/century (2,421 unified terms with full precision coefficients)

Venus

Uses predicted Venus perihelion: θ_V = 131.577° + (360°/447,089) × (MODEL_YEAR − 2000)

Venus Precession (Python)
from predict_precession import predict, predict_total # Calculate Venus precession for any year year = 2026 fluctuation = predict(year, 'venus') # Returns fluctuation only total = predict_total(year, 'venus') # Returns baseline + fluctuation print(f"Venus {year}: {total:+.2f} arcsec/century (fluctuation: {fluctuation:+.2f})")

Result: R² = 0.999997, RMSE = 0.9160″/century (2,421 unified terms, analytical ERD)

Outer Planets (Mars, Jupiter, Saturn, Uranus, Neptune)

Outer Planet Precession (Python)
from predict_precession import predict_total, get_all_predictions year = 2026 # Calculate total observed precession for each planet (baseline + fluctuation) print(f"Mars {year}: {predict_total(year, 'mars'):+.2f} arcsec/century") print(f"Jupiter {year}: {predict_total(year, 'jupiter'):+.2f} arcsec/century") print(f"Saturn {year}: {predict_total(year, 'saturn'):+.2f} arcsec/century") print(f"Uranus {year}: {predict_total(year, 'uranus'):+.2f} arcsec/century") print(f"Neptune {year}: {predict_total(year, 'neptune'):+.2f} arcsec/century") # Or get all predictions at once: results = get_all_predictions(year) for planet, data in results.items(): print(f"{data['name']}: {data['total']:+.2f} arcsec/century")

Expected output at J2000:

PlanetTotal Precession (″/century)BaselineFluctuation
Mercury~+569+531.4~+38
Venus~+-65-289.9~+225
Mars~+1,620+1,739.2~-119
Jupiter~+1,735+1,884.2~-149
Saturn~-3,425-3,140.3~-285
Uranus~+1,072+1,159.5~-88
Neptune~+201+193.2~+8

Unified Feature Matrix Structure (~2,400 terms for all planets; planet-specific counts 2,393–2,435):

The unified feature matrix is organized into 25 groups:

GroupTermsDescription
118Angle terms (δ, Σ, harmonics)
26Obliquity/Eccentricity terms
312ERD terms (linear, quadratic, cubic)
422Periodic terms (11 periods × 2)
522ERD × Periodic
612ERD² × Periodic
724Periodic × Angle
816ERD × Periodic × Angle
916Periodic × 2δ
1012Periodic × Periodic
111Constant
124ERD × Sum-angle
1360Extended harmonics (3δ, beats)
1416Venus periodic terms
1512Time-varying obliq/ecc (critical for Saturn)
1620Venus fine-tuning
1714Greedy-selected periods (H/9, H/45, H/60, H/41, H/56, H/75, H/110)
1810Greedy-selected periods (H/39, H/37, H/96, H/112, H/7)
196Greedy-selected periods (H/18, H/38, H/31)
204Greedy-selected periods (H/35, H/128)
212Greedy-selected period (H/42)
2214ERD × Greedy periods
2314Angle × Greedy periods
2418Saturn high-frequency harmonics H/(8×34×n), n=1..9
2522Venus high-frequency triplets (carrier ±16 sidebands)

Where:

  • δ = θ_E − θ_P (difference angle between Earth and planet perihelia)
  • Σ = θ_E + θ_P (sum angle)
  • θ_E = Earth perihelion from 25-harmonic formula
  • θ_P = planet perihelion calculated from J2000 value and period

Saturn: Critical Obliquity/Eccentricity Coupling

Saturn’s perihelion period (H/8 = 41,270 years) equals the obliquity cycle, creating strong coupling with Earth’s obliquity/eccentricity variations. The GROUP 15 terms capture this coupling:

εosc(t)=cos(2πtTH/8),eosc(t)=cos(2πtTH/8)\varepsilon_{\text{osc}}(t) = \cos\left(\frac{2\pi t}{T_{H/8}}\right), \quad e_{\text{osc}}(t) = \cos\left(\frac{2\pi t}{T_{H/8}}\right)

where TH/8T_{H/8} = 41,270 years (Saturn’s perihelion period = obliquity cycle).

Saturn: The Obliquity Driver

Saturn is the only planet among all seven that requires the GROUP 15 time-varying obliquity/eccentricity terms to achieve accurate predictive modeling. Without these terms, Saturn accuracy degrades significantly. The GROUP 24 terms (H/(8×34×n) Saturn-Fibonacci harmonics) are a key driver of Saturn’s final accuracy (0.0977″/century).

This mathematical requirement strongly suggests that Saturn drives Earth’s obliquity cycle. The exact period match (Saturn precession = obliquity cycle = 41,270 years = H/8) is not coincidence—the model cannot achieve R² = 1.0000 for Saturn without explicitly including this coupling.

See Scientific Background: Milankovitch Theory for the physical interpretation.

Venus: Fine-Tuning for Large Fluctuations

Venus has very large fluctuations (up to ~1000 arcsec/century) compared to other planets. GROUPs 14, 16, and 25 provide Venus-specific fine-tuning — GROUP 25 adds high-frequency triplets (carrier ±16 sidebands at H/124–H/158) from Earth perihelion modulation, improving Venus accuracy to R² = 0.999997, RMSE = 0.9160″/century.

Summary: All Predictive Formulas (Unified 2400-Term System)

PlanetRMSE (″/century)TermsBaseline (″/century)Implementation
Mercury0.9999990.09742,421531.4Python
Venus0.9999970.91602,421-289.9Python
Mars0.9999990.09802,4351,739.2Python
Jupiter0.9999990.09752,4071,884.2Python
Saturn1.0000000.09772,407-3,140.3Python
Uranus0.9999980.10272,4071,159.5Python
Neptune0.9999850.09782,393193.2Python

Notes:

  • All 7 planets share the same unified ~2,400-term feature matrix (planet-specific term counts 2,393–2,435) with planet-specific coefficients
  • All formulas output total observed precession (baseline + fluctuation)
  • Saturn has negative baseline (ecliptic-retrograde precession)
  • All R² values > 0.99998

The predictive formulas require no observations whatsoever - only the year is needed as input. All parameters (Earth perihelion, obliquity, eccentricity, ERD) are computed from their respective formulas. This demonstrates that planetary precession patterns are deterministic consequences of Earth’s orbital parameters and time, validating the Holistic Model’s framework.

For the physical basis and complete derivation, see Scientific Background: Analytical Formula for Planetary Precession Fluctuation.


8. Canonical Climate Formula (L1 + L2 + L3)

Predicts paleoclimate proxy values (benthic δ¹⁸O, atmospheric δ¹³C, ice-core CO₂) at any age tt inside a fitted window. This is the formula plotted in the Climate Formula Explorer modal of the 3D Simulation , evaluated against the LR04 δ¹⁸O stack, Westerhold 2020 CENOGRID, Bereiter 2015 EPICA Dome C CO₂, and CenCO2PIP 2023 deep-time CO₂ records.

What this formula calculates: A three-layer decomposition of paleoclimate variance. L1 is the orbital-lattice contribution (32 fixed frequencies that are integer divisors of 8H = 2,682,536 yr), L2 is the carbon-cycle silicate-weathering thermostat (3 fixed periods at 405 / 202 / 135 kyr), and L3 is a set of Cenozoic boundary-condition transitions (6 Heaviside steps at major palaeo-events). The framework’s structure is fixed; only the amplitudes are fit, separately per data window (“regime”).

Validity window: Unlike Sections 1–7, this formula is only valid inside the regime window it was fit on. There are eight regimes (different proxy × different window). Outside the window the trend de-extrapolation drifts and the L3 transitions sit at the boundary — do not evaluate cross-regime without re-stitching. See the validity table below.

Scientific Notation

Cnorm(t)  =  c0+nNL1[ancos ⁣2πnt8H+bnsin ⁣2πnt8H](L1 — 32 lattice integers)+pPL2[αpcos ⁣2πtp+βpsin ⁣2πtp](L2 — 3 carbon-cycle lines)+iTL3γiH(tti)(L3 — up to 6 Cenozoic steps)\begin{aligned} C_{\text{norm}}(t) \;=\; & c_0 \\ &+ \sum_{n \in N_{L1}} \left[a_n \cos\!\frac{2\pi n t}{8H} + b_n \sin\!\frac{2\pi n t}{8H}\right] && \text{(L1 — 32 lattice integers)} \\ &+ \sum_{p \in P_{L2}} \left[\alpha_p \cos\!\frac{2\pi t}{p} + \beta_p \sin\!\frac{2\pi t}{p}\right] && \text{(L2 — 3 carbon-cycle lines)} \\ &+ \sum_{i \in T_{L3}} \gamma_i \cdot \mathcal{H}(t - t_i) && \text{(L3 — up to 6 Cenozoic steps)} \end{aligned}

Then de-normalize (the fit operates on a centred, detrended, unit-variance copy of each record):

C(t)  =  Cnorm(t)σy  +  μy  +  (mt+b)C(t) \;=\; C_{\text{norm}}(t) \cdot \sigma_y \;+\; \mu_y \;+\; \bigl(m \cdot t + b\bigr)

Where:

  • tt — Age in kyr before present (positive into the past). The simulation passes ages in years; divide by 1000 to get kyr.
  • 8H8H = 2,682,536 yr — Solar System Resonance Cycle (8 × H)
  • NL1N_{L1}, PL2P_{L2}, TL3T_{L3} — Fixed sets (listed below). Same for every regime.
  • c0,{an,bn},{αp,βp},{γi}c_0, \{a_n, b_n\}, \{\alpha_p, \beta_p\}, \{\gamma_i\} — Fitted coefficients. Regime-specific. Loaded from public/input/climate-formula-coefficients.json under regimes.<regime-key>.
  • σy\sigma_y, μy\mu_y — Standardization (y_std, y_mean) per regime
  • mm, bb — Pre-detrend slope and intercept (trend_slope, trend_intercept) per regime
  • H()\mathcal{H}(\cdot) — Heaviside step (= 1 when its argument is ≥ 0, else 0)

The fit is sequential ridge regression (L1 → L2 → L3, ridge λ = 1.0 on L1 to suppress L1↔L1 collinearity at short windows). L3 step terms are only included when the regime window crosses the transition age tit_i.

Layer 1 — Orbital lattice (NL1N_{L1}, 32 integers)

Every L1 frequency is an exact integer divisor of 8H8H. The set is fixed by the framework — if the data demanded peaks at non-integer-divisor frequencies, the framework would be falsified.

NL1  =  {  9,  12,  14,  16,  18,  20,  21,  22,25,  28,  30,  31,  35,  38,  39,  48,50,  53,  65,  66,  68,  73,  76,  96,107,  110,  113,  120,  134,  141,  152,  185  }\begin{aligned} N_{L1} \;=\; \{\;& 9,\;12,\;14,\;16,\;18,\;20,\;21,\;22, \\ & 25,\;28,\;30,\;31,\;35,\;38,\;39,\;48, \\ & 50,\;53,\;65,\;66,\;68,\;73,\;76,\;96, \\ & 107,\;110,\;113,\;120,\;134,\;141,\;152,\;185\;\} \end{aligned}

Composition: 25 canonical Berger / Mars–Jupiter integers + 6 precession-band sidebands + 1 quintet-completion integer surfaced by an all-integer MTM F-test scan. The three highest-amplitude entries in LR04 post-MPT are:

nnBeat / cyclePeriod =8H/n= 8H/n
65k+s3k + s_3 Earth obliquity41.27 kyr
28g4g5g_4 - g_5 Mars–Jupiter eccentricity beat95.8 kyr
25Mercury–Mars s1s4s_1 - s_4 nodal beat107.3 kyr

Layer 2 — Carbon-cycle thermostat (PL2P_{L2}, 3 lines)

Silicate-weathering thermostat fundamental + 2nd + 3rd harmonics (Walker–Hays–Kasting 1981). These periods are not integer divisors of 8H — they are climate-system internal resonances confirmed independently carbon-amplified across LR04, CENOGRID, EPICA, and CenCO2PIP.

pp (kyr)Label
404.5405-kyr (fundamental)
202.25202-kyr (2nd harmonic)
134.83135-kyr (3rd harmonic)

Layer 3 — Cenozoic boundary-condition steps (TL3T_{L3}, 6 transitions)

Heaviside step covariates at major Cenozoic palaeo-events. A regime includes only the transitions whose age tit_i falls inside its window (so e.g. lr04-post-mpt includes no L3 steps; cenogrid-d18o includes all six).

TransitionAge tit_i (Ma)
PETM (Paleocene–Eocene Thermal Maximum)56
EOT (Eocene–Oligocene Transition, Antarctic glaciation onset)34
Mi-1 (early Miocene glaciation)23
MMCT (Mid-Miocene Climate Transition)14
iNHG (intensification of Northern Hemisphere Glaciation)2.7
MPT (Mid-Pleistocene Transition)1.0

Validity Windows (per-regime fits)

Each regime is the formula restricted to one proxy on one window. Coefficients are not interchangeable across regimes — that is what “valid for a certain timeframe” means here.

Regime keyProxyWindownn samplesR2R^2 L1 aloneR2R^2 total
lr04-post-mptLR04 δ¹⁸O0 – 1 Ma1,0010.8700.874
lr04-inhg-mptLR04 δ¹⁸O1.0 – 2.7 Ma1,7010.7160.723
lr04-pre-inhgLR04 δ¹⁸O2.7 – 5.3 Ma2,6010.3810.430
lr04-fullLR04 δ¹⁸O0 – 5.3 Ma5,3030.2370.254
cenogrid-d18oWesterhold δ¹⁸O0 – 67 Mavaries0.0010.618
cenogrid-d13cWesterhold δ¹³C0 – 67 Mavaries0.0010.351
epica-co2EPICA Dome C CO₂0 – 800 kyrvaries0.8330.844
cenco2pipCenCO2PIP CO₂0 – 66 Mavaries0.1610.763

L1 carries Quaternary scales (post-MPT LR04 and EPICA — ~83–87% of variance from L1 alone). L3 step transitions carry deep-time variance — they explain ~60% of CENOGRID δ¹⁸O over 67 Myr.

Evaluating the Formula

The closed form has ≈ 77 coefficients per regime × 8 regimes ≈ 620 numbers total — too many to inline as Excel. Three options:

  1. Interactive — Open the 3D Simulation , Tools → Climate Formula Explorer. Eight tabs, layer toggles (L1 / L2 / L1+L2+L3), forward-projection markers.
  2. Programmatic — Read climate-formula-coefficients.json directly. Each regime block has the structure {label, regime, window_kyr, n_samples, intercept, L1[], L2[], L3[], denormalization, r2}. Evaluate per the formula above.
  3. Python reference implementation — Source at scripts/milankovitch_climate_formula.py. Reproduces the eight regime fits from the raw proxy records; output is the same JSON consumed by the modal.

Worked Numerical Walk-through (lr04-post-mpt at t=0t = 0, i.e. today)

Coefficients for the post-MPT regime (from the JSON):

  • c0c_0 = intercept ≈ 0.00121 (small residual after centring)
  • σy\sigma_y0.43131, μy\mu_y0 (centred), mm−8.68 × 10⁻⁵ ‰/kyr, bb4.192
  • L1, L2 amplitudes: 32 + 3 sinusoid pairs (see JSON)
  • L3: empty (window 0 – 1 Ma does not cross any tit_i)

At t=0t = 0: every cos(0)=1\cos(0) = 1, sin(0)=0\sin(0) = 0, H(ti)=0\mathcal{H}(-t_i) = 0, so:

Cnorm(0)  =  c0  +  nan  +  pαpC_{\text{norm}}(0) \;=\; c_0 \;+\; \sum_{n} a_n \;+\; \sum_{p} \alpha_p C(0)  =  Cnorm(0)σy  +  μy  +  bC(0) \;=\; C_{\text{norm}}(0) \cdot \sigma_y \;+\; \mu_y \;+\; b

Summing the JSON’s a (L1) and α (L2) coefficients for lr04-post-mpt gives Cnorm(0)0.34C_{\text{norm}}(0) \approx 0.34, which after de-normalization lands at C(0)4.34C(0) \approx 4.34 ‰ — the LR04 δ¹⁸O value at the Holocene (matches LR04’s modern benthic value of ~4.2 ‰ within the fit’s residual).

For a more thorough exploration including forward projection of the next natural glaciation onset (≈ +58 kyr) and interglacial peaks, use the modal’s LR04 · forward tab.

Closure & Falsifiability

Structural claim: Every L1 line is an exact integer divisor of 8H8H. If a peak appeared in the residual at a non-integer-divisor frequency — say n=43.5n = 43.5 — the framework would be falsified. A closure test fits all 200 integer divisors of 8H jointly to LR04 (R2=0.443R^2 = 0.443); the residual contains zero orphan peaks above the 95th-percentile noise threshold in empty lattice regions. Every residual peak sits between two adjacent integer divisors (the expected signature of cycle-length non-stationarity and spectral leakage).

MPT regime shift: The Mid-Pleistocene Transition is captured directly as one of the L3 steps, and LR04 is fit with three independent per-regime windows (pre-iNHG / iNHG-MPT / post-MPT) rather than a single conflated fit. This is what enables the formula to track the observed amplitude shifts across the MPT — obliquity-band amplitude shrinking to 0.72×, 100-kyr band growing 1.64×, climatic-precession band growing 2.19× — without invoking any new physics, by changing only which window’s coefficients are loaded.

For the full derivation including the pre-registered super-cycle null and 14 follow-up tests, see Doc 91 — Milankovitch Evidence & Hypothesis Tests  and Doc 92 — Climate Formula .


9. How the Formulas Connect

All formulas are interconnected through the Earth Fundamental Cycle (335,317 years) and its Fibonacci divisions:

CycleDivisorDuration (years)Used In
Earth Fundamental Cycle1335,317All calculations
Inclination Precession÷3~111,772Obliquity, Inclination
Obliquity Cycle÷8~41,915Obliquity
Axial Precession÷13~25,794Longitude of perihelion
Perihelion Precession÷16~20,957Eccentricity, Day/Year, Planetary Fluctuation
Mercury Perihelion×8/11243,867Mercury Precession Fluctuation
Venus Perihelion−8/6447,089 (ecliptic-retrograde)Venus Precession Fluctuation
Mars Perihelion×8/3574,515Mars Precession Fluctuation
Jupiter Perihelion÷568,783Jupiter Precession Fluctuation
Saturn Perihelion−1/841,270 (ecliptic-retrograde)Saturn Precession Fluctuation
Uranus Perihelion÷3111,772Uranus Precession Fluctuation
Neptune Perihelion×2670,634Neptune Precession Fluctuation

Note: All planet perihelion periods are Fibonacci-fraction multiples of the Earth Fundamental Cycle. Saturn’s period coincides with the obliquity cycle (H/8) and is ecliptic-retrograde; Venus is also ecliptic-retrograde (−8H/6). Uranus’s period coincides with inclination precession (H/3). Neptune is at 2H. Earth’s effective perihelion period (~20,957 years = H/16) is the common component for calculating fluctuations of ALL planets.

┌─────────────────────────────────────────────────────────────────┐ │ HOLISTIC-YEAR (H years) │ ├─────────────────────────────────────────────────────────────────┤ │ │ │ │ ÷3 = H/3 │ ÷13 = H/13 │ │ (Inclination Precession) │ (Axial Precession) │ │ │ │ │ │ │ ▼ │ ▼ │ │ Inclination │ Longitude of │ │ Formula │ Perihelion │ │ │ │ │ │ │ ▼ │ │ │ │ ÷8 = H/8 ◄─────┼──────────────┤ │ │ (Obliquity Cycle) │ │ │ │ │ │ ▼ │ │ ▼ │ ÷16 = H/16 │ │ Obliquity │ (Earth Effective Perihelion) │ │ Formula │ │ │ │ │ ├─────────────────► │ │ │ │ ALL PLANETS │ │ │ │ Fluctuation │ │ │ │ (Earth Term) │ │ │ ▼ │ │ │ Day Length, Year Lengths │ │ │ (Fourier harmonics at H/8, │ │ │ H/3, H/16, H/24) │ │ │ │ │ Planet-specific terms: ────┼──────────────────────────────────│ │ Mercury: H×8/11 │ Venus: -8H/6 (retrograde) │ │ Mars: H×8/35 │ Jupiter: H/5 │ │ Saturn: -H/8 (retrograde) │ Uranus: H/3 │ │ Neptune: H×2 │ │ └─────────────────────────────────────────────────────────────────┘

10. Verification

To verify these formulas, compare results against:

  1. J2000 Values (Year = 2000):

    • Obliquity: 23.4393° (IAU: 23.439291°) ✓
    • Eccentricity: 0.01671 (NASA: 0.01671022) ✓
    • Longitude of perihelion: 102.947° (NASA: 102.94719°) ✓
  2. Historical Values:

    • Obliquity at -10,000: 24.5293° (La2004: 24.1592°, Chapront: 24.3053°) — model agrees within ~0.37° at this epoch; near-term values match to within 0.001°. See Model vs La2004/Chapront comparison table for the full series.
    • Perihelion aligned with December solstice at 1246 AD ✓
  3. Mercury Precession Fluctuation (verified against 3D simulation output):

    “Model Data” in this table refers to values computed by the Holistic Model’s 3D simulation, which calculates planetary positions using the model’s geometric framework. The formula results are compared against these simulation outputs.

    MODEL_YEARFormula Result3D SimulationError
    191244.6″/century42.94″/century+1.7
    202340.1″/century38.36″/century+1.7
    26894.4″/century4.18″/century+0.2
    3244-25.3″/century-26.10″/century+0.8
    • Model baseline: 531.4″/century (Newtonian prediction from period)
    • At year 2023: fluctuation ≈ +38″/century
    • Observed total (Park et al. 2017): 575.31 ± 0.0015″/century
  4. Interactive Calculator:

    • Use the Orbital Calculator to compute all values for any year instantly — it shows J2000 reference values side-by-side with model output
  5. 3D Simulation:

    • Use the Interactive 3D Simulation to verify values visually
    • Console tests (F12) compare model values against IAU reference data

11. Dashboard and derivation

All formulas and calculated values are available in the Data Explorer dashboard  (click the PURPLE Data Button at the top of any page). For the detailed derivation — Fibonacci hierarchy, resonance analysis, per-planet coefficient breakdowns, and observed-angle formulas — see the Formula Derivation documentation  in the technical repository.


Return to Mathematical Foundations or explore the Appendix for reference data.

Last updated on: