目录
第二十二节课: 动画与模拟-续集
① 单粒子模拟
• 显式欧拉法
• 不稳定和改进
② 刚体模拟
③ 流体模拟
单粒子模拟
首次研究单个粒子的运动
• 稍后,推广到大量粒子
首先,假设粒子的运动由速度矢量场确定,该矢量场是位置和时间的函数:
Velocity vector field indicated by arrows: 用箭头表示速度矢量场
Path traveled by particle in velocity field: 粒子在速度场中经过的路径
常微分方程 (ODE)
计算粒子随时间的位置需要求解一阶微分方程:
“一阶”是指所取的一阶导数
“常”表示没有“偏”导数,即 x 只是 t 的函数, 不是常数
求解粒子位置
在给定初始粒子位置 x0 的情况下,我们可以通过使用正向数值积分来求解 ODE
欧拉法
欧拉方法(又名正向欧拉,显式欧拉)
用上一帧的数据(位置,速度,加速度)算出下一帧的数据.
• 简单的迭代方法 • 常用
• 很不准确 • 常常不稳定
欧拉方法 - 误差
通过数值积分,误差会累积, 欧拉积分特别差
Solution path(需要模拟的路线)
Euler estimate with small time step : 步长小 Euler estimate with large time step : 步长大
(步长)特别小, 越精确模拟.