图形学笔记(十九)粒子、刚体、流体的模拟—— 欧拉方法、Errors 和 Instability、中点法、自适应步长、隐式欧拉方法、Runge-Kutta方法、刚体与流体模拟(质点法、网格法、MPM)
结束
1 Single Particle Simulation 单个粒子模拟
1.1 单个粒子的运动
首先研究一个粒子的运动然后泛化到大多数粒子。
我们线认为粒子的运动由速度场(velocity vector field)决定,这个速度场就是一个位置和时间的函数:
v ( x , t ) v(x,t) v(x,t)
计算粒子的位置(随时间变化)需要解一个一阶的常微分方程(不存在对其他变量的微分或导数First-order意味着只存在一阶导数),
d x d t = x ˙ = v ( x , t ) \frac{dx}{dt}=\dot{x}=v(x,t) dtdx=x˙=v(x,t)
1.2 Euler’s Method 欧拉方法
可以使用欧拉方法对给定初始位置和速度场的点求解经过时间t后所处的位置。
特点 欧拉方法是一种简单的迭代方法,经常被使用、不准确、大多数都不稳定。
x t + Δ t = x t + Δ t x ˙ t x ˙ t + Δ t = x ˙ t + Δ t x ¨ t x^{t+\Delta t}=x^t+\Delta t\dot{x}^t \newline \dot{x}^{t+\Delta t}= \dot x^t+\Delta t\ddot{x}^t xt+Δt=xt+Δtx˙tx˙t+Δt=x