DE440 並不是透過一個簡單的公式(像 F=ma 或橢圓軌道公式)直接算出來的。
它是一個巨大的數值模擬(Numerical Simulation)結果,這個過程結合了物理模型、觀測數據和數學優化算法。簡單來說,它是一個不斷「微調參數以符合真實觀測」的迭代過程。
JPL 生成 DE440 的核心流程可以分為四個步驟。
第一步:建立物理模型 (The Physical Model)
JPL 首先建立一個包含太陽系所有主要作用力的數學模型。這不僅僅是牛頓引力,還包含了極其複雜的細節:
1. N-體引力積分 (N-body Integration)
同時計算太陽、8大行星、月球、冥王星以及數百個大型小行星之間的相互引力。這不是兩兩計算,而是將它們視為一個互相影響的整體系統。
2. 廣義相對論 (General Relativity)
牛頓力學不足以解釋水星進動等現象。DE440 使用了 Einstein-Infeld-Hoffmann (EIH) 方程來計算點質量之間的相對論效應。這是高精度歷表的基石。
3. 小行星攝動 (Asteroid Perturbations)
這是 DE440 的一大亮點。火星的軌道極易受到小行星帶引力的干擾。DE440 單獨計算了 343 顆主要小行星的引力,並將剩餘的小行星簡化為一個環狀模型來計算其綜合引力。
4. 非球形引力場 (Figure Effects)
太陽和地球都不是完美的球體(有扁率)。模型中包含了太陽的四極矩(J2)以及地球和月球的非球形重力場對軌道的影響。
第二步:收集觀測數據 (Observational Data)
模型需要數據來驗證。DE440 匯總了過去幾百年(特別是最近幾十年)的數百萬條高精度觀測記錄。
DE440 相比舊版(DE430)的更新在於加入了最新的航天器數據:
行星軌道器測距 (Range Data)
- 火星: MRO, Odyssey, Mars Express 等火星衛星的數據(精度達米級)。
- 土星: Cassini 探測器的完整軌道數據(2004-2017)。
- 木星: Juno 探測器的數據(大大提高了木星軌道的精度)。
其他數據來源
- 月球激光測距 (LLR): 阿波羅任務留下的反射鏡數據,用於鎖定地月距離。
- 雷達天文學: 地面雷達對水星和金星表面的反射測距。
- 光學觀測 (CCD/Transit): 用於補充外行星(天王、海王)和歷史數據。
第三步:數值積分與最小二乘法擬合 (Integration & Fitting)
這是計算的核心「引擎」。
1. 設定初始條件
科學家選定一個初始時間點(Epoch,例如 J2000.0),並「猜測」所有天體在這個時間點的位置、速度、質量等參數。
2. 數值積分 (Numerical Integration)
電腦根據物理模型(第一步),從初始時間點開始,一步一步(Step-by-step)向過去和未來推算天體的運行軌跡。JPL 使用的是 亞當斯-莫爾頓 (Adams-Moulton-Bashforth) 預測-校正算法。
3. 計算殘差 (Residuals)
將「算出來的軌跡」與「真實觀測數據(第二步)」進行比對。
例如:模型算出 2020年1月1日 火星距離地球 1.5 億公里,但觀測數據顯示是 1.50000001 億公里。這個差值就是「殘差」。
4. 最小二乘法調整 (Least Squares Adjustment)
系統會分析這些殘差,反向推導出:「如果我要消除這個誤差,我需要如何微調初始的質量、位置或速度?」
這個過程會反覆迭代 (Iterate)。修改初始參數 → 重跑積分 → 比對數據 → 再修改。直到所有天體的計算軌跡與觀測數據的誤差總和達到最小(收斂)。
第四步:打包為柴比雪夫多項式 (Chebyshev Polynomials)
當超級電腦算出了幾百年內每一刻的精確位置後,數據量大到無法直接發布。為了讓使用者能方便調用,JPL 做了最後的「壓縮」與「擬合」:
- 分段 (Granularity): 將時間軸切成小段(例如水星是 8 天一段,木星是 32 天一段)。
- 擬合係數: 在每一小段時間內,使用 柴比雪夫多項式 (Chebyshev Polynomials) 來擬合天體的位置曲線。
- 生成 .bsp 文件: DE440 的二進制文件(.bsp)裡儲存的不是位置座標,而是這些多項式的係數。
當使用程式調用 DE440 查詢某個時間點的位置時,程式並不是去資料庫「查表」,而是拿出該時間段的係數,現場算出一條平滑的曲線方程代入時間 t。這保證了:
- 速度快: 計算多項式比數值積分快得多。
- 精度高: 柴比雪夫多項式能極好地保留原始積分的精度。
- 連續性: 可以計算任意時間點(甚至是秒與秒之間)的位置,不僅僅是整點數據。
總結
DE440 是「物理定律」與「海量觀測數據」的妥協產物。它是透過數值積分模擬出軌道,再利用最小二乘法強行將模擬軌道「壓」到觀測數據上,最後用數學多項式封裝起來供人類使用的結果。