diff --git a/examples/case04/Readme.html b/examples/case04/Readme.html new file mode 100644 index 0000000..0cdc45e --- /dev/null +++ b/examples/case04/Readme.html @@ -0,0 +1,294 @@ + + + + + +case04 — 日地月三体系统 + + + + + +
+ +

case04 — 日地月三体系统 稳定轨道版本

+

太阳、地球、月球三体系统,采用真实比例的质量和万有引力模拟,地球和月球维持稳定椭圆轨道。

+ +
+ Python 引擎 + 万有引力 + 3 粒子 | leapfrog 算法 | 稳定轨道 +
+ +

一、物理系统概览

+ +
+

本案例模拟真实的日-地-月三体系统:

+ +

原子间万有引力由 gravity_strength 缩放控制,$F = G \dfrac{m_1 m_2}{r^2}$。

+
+ +

二、天体真实参数

+ +

2.1 质量

+ + + + + + +
天体质量 / kg与地球质量之比
太阳$1.989 \times 10^{30}$$333\,000$
地球$5.972 \times 10^{24}$$1$
月球$7.35 \times 10^{22}$$0.0123 \;(1/81.3)$
+ +
+ 质量比:$M_\odot : M_\oplus : M_\text{moon} \approx 27\,100\,000 : 81.3 : 1$ +
+ +

2.2 轨道参数

+ + + + + +
轨道半长轴 $a$偏心率 $e$半短轴 $b$周期
地球绕太阳$1.4960 \times 10^8$ km (1 AU)$0.0167$$1.4958 \times 10^8$ km365.25 天
月球绕地球$3.844 \times 10^5$ km$0.0549$$3.838 \times 10^5$ km27.32 天
+ +
+ 比例:$R_{\text{日地}} : R_{\text{地月}} \approx 389 : 1$
+ 地月距离约为日地距离的 $1/389$。 +
+ +

三、轨道力学

+ +

3.1 偏心率定义

+ +
+

偏心率 $e$ 描述椭圆轨道偏离正圆的程度:

+
+ $$e = \frac{c}{a}$$ +
+

其中 $c = ea$ 为偏心距(焦点到椭圆中心的距离),$a$ 为半长轴。

+
+ + + + + + + +
$e$ 值轨道形状说明
$e = 0$正圆形速度恒定,距离恒定
$0 < e < 1$椭圆近日点速度最大,远日点速度最小
$e = 1$抛物线逃逸轨道,速度恰好达到逃逸速度
$e > 1$双曲线飞越轨道,速度超过逃逸速度
+ +

3.2 半长轴与半短轴的关系

+ +
+
+ $$b = a\sqrt{1 - e^2}$$ +
+

当 $e \ll 1$ 时,$b \approx a\left(1 - \dfrac{e^2}{2}\right)$,椭圆度非常微小。

+
+ +

3.3 近日点与远日点

+ +
+

近日点(距太阳最近)和远日点(距太阳最远)的距离分别为:

+
+ $$r_{\text{peri}} = a(1 - e), \qquad r_{\text{ap}} = a(1 + e)$$ +
+

在近日点轨道速度最大,在远日点轨道速度最小:

+
+ $$v_{\text{peri}} = \sqrt{\frac{GM(1+e)}{a(1-e)}}, \qquad + v_{\text{ap}} = \sqrt{\frac{GM(1-e)}{a(1+e)}}$$ +
+
+ +

3.4 开普勒三大定律

+ +
    +
  1. 椭圆定律:行星轨道是椭圆,太阳位于椭圆的一个焦点上。
  2. +
  3. 面积定律:行星与太阳的连线在相等时间内扫过相等的面积。
  4. +
  5. 周期定律:公转周期的平方与半长轴的立方成正比:$T^2 \propto a^3$。
  6. +
+ +
+ 验证:在本模拟中,你可以通过轨迹图观察面积定律是否成立——地球在近日点移动更快,远日点移动更慢。 +
+ +

四、模拟参数

+ +

4.1 缩放说明

+ +

真实尺度无法直接用于模拟(日地距离 1.5 亿 km),因此采用缩放参数。当前 case04 的配置为教学演示而简化:

+ + + + + + + + +
参数说明
gravity_strength100.0万有引力强度(已缩放)
box_a20.0盒子半边长
methodleapfrog蛙跳法(辛积分器,能量守恒)
T_total10.0 s总模拟时间
NSTEP2抽帧间隔(密采帧)
+ +

4.2 初始构型

+ + + + + + +
天体质量位置 $(x,y,z)$速度 $(v_x,v_y,v_z)$固定约束
太阳1$(0,0,0)$$(0,0,0)$全部固定
地球1$(4,0,0)$$(0,0,4)$
月球0.1$(5,0,0)$$(0,0,6)$
+ +

地球在 $z$ 方向获得初速度,产生绕太阳的轨道运动;月球在地球基础上获得额外的 $z$ 方向速度,形成绕地球的轨道。

+ +

五、使用方法

+ +
+ + # 进入 case04 目录并运行
+ cd examples/case04
+ python run_dynamics.py

+ # 仅输出轨迹图,跳过动画
+ python run_dynamics.py --no-plot +
+

配置文件:input/input.txt(物理参数)、input/coord.txt(初始位置/速度)。

+
+ +

六、与 case03 的对比

+ + + + + + +
case03(失败案例)case04(成功案例)
轨道状态轨道发散或碰撞稳定椭圆轨道
关键差异初始速度或质量比不恰当合理的初值和参数
教学意义展示参数选择的重要性展示正确的三体运动
+ +
+ 教学建议:先运行 case03 观察失稳,再运行 case04 对比稳定轨道,理解初始条件对数值模拟的关键影响。 +
+ +

七、已知局限

+ + + +
+ + diff --git a/examples/case09/input/input.txt b/examples/case09/input/input.txt index e34d1a5..d3bf0ad 100644 --- a/examples/case09/input/input.txt +++ b/examples/case09/input/input.txt @@ -1,6 +1,6 @@ # 物理模拟参数配置 # 格式:YAML -# 用法:python run_dynamics.py +# 用法:python run_dynamics.py # ── 流程控制 ────────────────────────────────── # 每步用 0/1 单独开关,1=执行,0=跳过