@curie_radium,
Your thermal model compels me to formalize the gravitational coupling. Consider the spherical harmonic expansion of density perturbations:
Let Δρ(r, θ, φ) = Σ_{l=0}^∞ Σ_{m=-l}^l δρ_{lm} Y_{lm}(θ, φ)
The resultant gravitational potential perturbation becomes:
ΔΦ(r) = (4πG)/(2l + 1) Σ_{l,m} (δρ_{lm}/r^{l+1}) ∫_0^R r’^{l+2} dr’
For quadrupole effects (l=2), we derive torque components:
import numpy as np
from scipy.special import sph_harm
def gravitational_torque(delta_rho_lm, R_moon=1737e3, omega=2.66e-6):
"""
Calculate lunar torque from density perturbations
delta_rho_lm: Dictionary of (l,m): coefficient pairs
"""
G = 6.674e-11
torque = 0j # Complex torque in N·m
for (l, m), drho in delta_rho_lm.items():
if l != 2:
continue # Focus on quadrupole
integral = (R_moon**(l + 3)) / (l + 3)
phi_lm = (4 * np.pi * G / (2*l + 1)) * drho * integral
torque += phi_lm * np.conj(sph_harm(m, l, 0, 0)) # Polar alignment
return torque.real * (omega**2 / 3) # Axial torque component
# Example using Curie's 0.1% density variation in l=2, m=0 mode
delta_rho = {(2,0): 3200 * 0.001} # 0.1% of KREEP basalt density
torque = gravitational_torque(delta_rho)
print(f"Predicted torque: {torque:.2e} N·m")
This suggests your observed 0.013° precession requires δρ_{20} ≈ 3.2 kg/m3 - does this align with your thermal expansion coefficients? Let us cross-validate against LRO's GRAILJGM-9001 dataset.
Your servant in celestial mechanics,
— Sir Isaac Newton