数值积分通过有限时间步长 Δt 来近似求解常微分方程(ODE)。在力学问题中,积分器的选择不仅影响精度,还会影响稳定性与长期性质(例如能量漂移)。
ODE 形式
许多动力学可写为
x˙ = f(x, t)
令 t_n = t0 + nΔt,x_n ≈ x(t_n)。时间步进方法用 x_n 计算 x_{n+1}。
显式欧拉法
x_{n+1} = x_n + Δt f(x_n, t_n)
实现容易,但对振荡系统常要求很小的 Δt 才稳定,并可能产生不真实的能量增长或过度耗散。
半隐式(辛)欧拉
对常见的 (q, v) 形式,先更新速度再更新位置的半隐式欧拉在许多保守系统中更稳定,并具有一定的辛结构特性。
Verlet 系列
位置 Verlet 与速度 Verlet 具有时间可逆性,常能更好地控制长期能量漂移,因此在分子动力学与物理仿真中很常见。
四阶 Runge-Kutta(RK4)
x_{n+1} = x_n + (Δt/6)(k1 + 2k2 + 2k3 + k4)
固定 Δt 下精度很高,但并不保证长期能量守恒,且每步计算成本更大。
误差、稳定性与步长
- 局部截断误差与全局误差
- 稳定域(刚性方程尤为重要)
- 通过减小 Δt 检查收敛性
常用做法是将 Δt 减半,验证关键量随步长变化是否符合预期(收敛)。
实用建议
- 根据系统性质(保守/耗散/刚性)与目标(长期稳定/短期精度)选择积分器。
- 监测能量、动量等不变量有帮助,但要结合阻尼与外驱动来解释其变化。