↓ 跳过正文

几何数值积分小记

·15 字·1 分钟
从0开始制作游戏物理引擎 - 这篇文章属于一个选集。
§ 10: 本文

注:本文未编写完成。因为相关理论我还没看完。

本文是《Geometric Numerical Integral》的小记。

计算机中的物理模拟,很大程度上就是想办法解微分方程(尤其是一阶微分方程$\dot{y} = f(x, y)$。

《数值分析》中介绍了一些数值积分法,比如显式/隐式欧拉积分,梯形/中点积分以及Runge-Kutta积分。但这些积分在用于物理时会带来明显的能量增加/减少,导致在长时间模拟下模拟结果错误。

而几何数值积分则是在这些积分法上,利用哈密顿力学的 刘维尔定理,在保证守恒量不变的情况下进行积分。这可以有效地将系统能量保持在一个区间内(严格来说是在某个区间内震荡),这增加了长期模拟的稳定性。

如果不想看冗长的理论,可以观看这个视频1来了解其原理。

“几何数值积分”则是介绍了一系列的保证守恒量的积分算法,以及分析了他们的阶数和误差。

TODO:

从0开始制作游戏物理引擎 - 这篇文章属于一个选集。
§ 10: 本文