Games201_lecture7_混合欧拉-拉格朗日视角
Games201_lecture7_混合欧拉-拉格朗日视角
1 拉格朗日和欧拉视角的复习
拉格朗日视角:随时时刻都在问你的位置和速度是多少,随着材料的移动一起移动,随波逐流
欧拉视角:对于我的位置随时时刻问的另外一个问题:对于经过我的材料,他的速度是啥?位置重来不移动,岿然不动
传统的拉格朗日视角会用一粒子
传统的欧拉视角大家会用mesh
那个更好呢?
物理:动量守恒,角动量守恒,体积守恒,能量守恒。
性能:计算上是否并行,时间和空间上是否局部
复杂性
2 混合欧拉-拉格朗日视角
1 为什么要混合
advection:对流
欧拉适合projection,但是他会有能量和几何的损失。
拉格朗日适合advection,但是粒子空间分布是不规则的,不知道如何定义旁边的粒子,不好离散化,需要复杂的数据结构进行邻居的查找。
如何结合呢?
2 混合欧拉-拉格朗日步骤
拉格朗日是第一
欧拉是第二,附属
因为信息都存在拉格朗日粒子中。
首先讲粒子传到网格,然后再网格中进行projection等,然后再将网格传回粒子,然后再对粒子操作。
但是会导致计算量的损失。
3 Particle-in-cell
1 概念
2 核函数的选择
用的linear 和quadratic
linear不光滑,会导致模拟系统不稳定,所以quadratic用的最多。
流体中会用linear
处理权重大于零的,去掉权重
能量耗散比较严重,大家都很少用这个
演示如下:
剪切,旋转,拉伸不能保持。因为能量消耗
只有translation是好的。
原因如下:因为网格上有18个自由度,到粒子上后变成两个自由度了。
解决方案如下:
4 APIC
数学推导复杂,但是实现起来很简单!
效果不错
5 polyPIC
6 FLIP
多了个patricle to particle的信息。
刚开始建议使用APIC,
FLIP实现起来多开一个grip,实现起来复杂点。
3 MPM
这节课最终极的目标就是讲这个。
最近比较火,
MPM为啥这么流行呢?
4 MLS-MPM
C矩阵