M11
辛积分器与非辛积分器在开普勒/三体问题上的长期能量漂移标度律:修正方程预测的定量检验
1 · 研究问题
对 Störmer–Verlet 等辛积分器(symplectic integrator)与 RK4 等经典方法,长期能量误差随时间与步长的增长规律,是否与后向误差分析(backward error analysis)给出的修正方程(modified equation)预测在测量精度内一致?进一步:自适应步长破坏辛性后,能量漂移速率随容差参数如何标度?
2 · 研究背景与空白
哈密顿系统的数值积分中,辛积分器不精确守恒能量,但能量误差长期有界振荡;非辛方法(如 RK4)则出现线性漂移。后向误差分析给出机制:辛方法精确积分的是一个邻近的修正哈密顿量,能量误差在指数长时间内 O(hp) 有界(Hairer–Lubich–Wanner,《Geometric Numerical Integration》)。
已有工作非常成熟:理论证明完整;天体力学界对自适应步长破坏辛性的现象有明确研究(Preto & Tremaine 1999 提出时间变换保辛方案;近期工作证明可逆步长自适应可消除长期漂移,arXiv:2301.06253)。文献给出的多为定理与个例演示,参数通常只覆盖单一问题、单一偏心率。
空白在评价维度与系统性:把"漂移速率 vs 步长/容差/偏心率"作为被测对象,在同一套自建管线里跨方法、跨问题族做系统扫描并与修正方程逐项对照的公开复现研究很少。方法全公开、解析参照充足(开普勒问题有精确解)、结论正负都成立,适合一年期学生课题。
3 · 可检验假设
- H1 Störmer–Verlet 在偏心率 e ≤ 0.9 的开普勒问题上,能量误差振幅随步长按 h² 标度(双对数拟合指数与 2 的偏差 ≤ 5%),且在 10⁷ 步内无可测线性漂移(漂移率与零的偏差在自助法置信区间内);RK4 的能量漂移率随 h 按 h⁴ 标度。
- H2 采用"每步按当前半径调步长"的朴素自适应策略后,Verlet 出现线性能量漂移,漂移率随容差 ε 按幂律标度,幂指数可测且在偏心率 0.3–0.9 范围内稳定(变化 ≤ 20%)。
4 · 量化验收标准
- 方法学校验(硬门槛):自建 Verlet/RK4 管线在有精确解的开普勒问题(e=0.5)上复现轨道,一个周期后位置误差的收敛阶实测值与理论阶(2 与 4)偏差 ≤ 3%;并复现 Hairer 等教科书图 I.1.4 型能量曲线的定性形态。不过关则后续全部结论无效。
- 每个(方法, h, e)参数点积分 ≥ 10⁶ 周期步;能量漂移率用分段线性拟合 + 自助抽样给 95% 置信区间。
- 标度指数拟合同时用双对数最小二乘与稳健回归(Theil–Sen)交叉验证,两者差异 > 1σ 时必须报告并解释。
- 用 sympy 符号推导 Verlet 对单摆/开普勒的修正哈密顿量至 h⁴ 项,数值验证:数值轨道对修正哈密顿量的守恒精度比对原哈密顿量高至少 2 个数量级。
- 全部脚本开源,第三方一键重跑生成全部图表。
5 · 数据与工具
| 用途 | 来源 / 工具 |
|---|---|
| 积分器实现 | 自建 Python(numpy):Verlet、RK4、leapfrog 各 ~30 行;scipy.integrate.solve_ivp 内置 RK45/DOP853/Radau,不内置辛方法,辛方法必须自建(这正是贡献的一部分) |
| 修正方程符号推导 | sympy(泰勒展开、泊松括号运算内置;BCH 级数需自行组织,量小) |
| 独立交叉校验 | Julia DifferentialEquations.jl 内置 VerletLeapfrog、KahanLi8 等辛方法(文档 SymplecticRK 页;具体算法清单需核实),仅用于校验与对比,不计入本项目贡献 |
| 长时高精度参照 | mpmath 任意精度积分小规模参照轨道 |
| 算力 | 10⁶–10⁸ 步/次,numpy 向量化单次运行秒–分钟级,全项目 CPU 总时长 < 20 小时 |
6 · 方法路径
- 装环境,自建 Verlet 与 RK4,跑通开普勒精确解校验(第 1 条验收)。
- 核实 Julia 辛积分器清单与 solve_ivp 能力边界,写成能力表。
- 对(方法 × h × e)网格做能量漂移扫描,提取振幅与漂移率。
- sympy 推导修正哈密顿量,逐项对照数值测得的误差结构。
- 实现朴素自适应步长与可逆自适应两种方案,测漂移率–容差标度律。
- 用 Julia 内置辛方法独立重算 3 个代表参数点交叉校验。
- 汇总为"何时必须用辛方法"的定量判据图。
7 · 新颖性边界
本课题不声称提出新积分器,也不声称发现新数学;辛方法长期能量行为的定理(Hairer–Lubich–Wanner)与自适应步长破坏辛性的现象(Preto & Tremaine 1999;arXiv:2301.06253 的可逆自适应)均已发表。已有文献完成了理论证明与个例演示。本项目的主结论是跨方法、跨偏心率、跨容差的系统标度测量及其与修正方程预测的逐项定量对照,并给出漂移率–容差幂指数这一文献中未见系统表列的量(检索 "adaptive step size symplectic energy drift scaling" 等未找到系统表列;未找到不等于不存在)。这类可复现性/定标贡献在计算数学界被承认,但定位必须写明,否则会被误读为重复教科书。若 H2 幂指数不稳定,"指数依赖偏心率"同样是有效结论,误差棒必须证明有能力分辨 20% 的变化。
8 · 决策门槛(go / no-go)
- 第 2 周末:第 1 条方法学校验必须通过;未通过则暂停扫描,先排查(这是纯编程问题,无科学风险)。
- 第 6 周末:sympy 推导修正哈密顿量到 h⁴ 是否可行。若符号复杂度失控,降级路径 A:只推导到 h² 项并用数值差分估计高阶项——主结论(标度对照)框架不变,仅对照精度降一档。
- 第 14 周末:自适应步长漂移信号是否可测(漂移率置信区间不含零)。若 10⁷ 步内测不出,降级路径 B:换更强椭圆轨道(e=0.95)或延长至 10⁸ 步(约增加 10 倍 CPU 时间,仍在笔记本范围);若仍不可测,把 H2 改述为"漂移率上界",框架保留。
- 预算裁剪顺序:先砍 Julia 交叉校验的参数点数(保 3 个最小集),再砍偏心率网格密度;两者都不影响主结论成立性。
- 适合对象:对编程有耐心、愿意读一章教科书理论的学生;本题几乎无"跑不出来"风险,是全组最稳基线。