简单初识 Material Point Method(MPM)
简单初识 Material Point Method(MPM)
Material Point Method(MPM)是一种结合Eulerian和Lagrangian方法的混合物理模拟技术,特别适合处理大变形问题。本文将从基础的Eulerian和Lagrangian方法开始,逐步介绍MPM的核心概念、数学原理及其优缺点。
1. 基础知识
介绍Eulerian和Lagrangian
物理模拟主要有两种方式:Eulerian网格和Lagrangian粒子。
- Lagrangian方法:跟踪一个物体以确定其属性。
- Eulerian方法:观察流体属性作为时间和空间的函数。
形象理解如下图所示:
- Eulerian方法:只跟踪网格格点的状态,会被初始化的网格所限定,因此一些奇怪的、不规则的形状很难被规整的网格所计算(需要大量的计算,把网格变得很小才能贴近物体边界)。
- Lagrangian方法:初始化是初始化不同数量的粒子,可以很容易跟踪物体边界。
- Lagrangian视角跟随单个流体微团在空间和时间中的运动。Eulerian视角关注特定空间位置的流体流动。
- Lagrangian坐标系随流体微团移动,适合追踪轨迹、变形和旋转。Eulerian坐标系固定在空间中,更适合分析流动、速度和加速度。
2. Material Point Method (MPM)
MPM是一种混合的(Hybrid),结合Eulerian和Lagrangian的方法。
定义:MPM是Eulerian-Lagrangian的混合方法,使用移动的材料点和固定的计算网格。这种方法特别适用于大变形场景,因为网格畸变通常会产生不现实或不理想的结果。
两种表示:
- 粒子
- 网格节点
- Lagrangian:认为粒子带有材质属性。
- Eulerian:使用网格来做数值积分。
- 交互:粒子将属性传递给网格,网格执行更新,然后插值回粒子。
示意图注释:
- 左上图:粒子将属性传递给网格
- 右上图:在网格节点上计算运动方程,更新点的运动学
- 右下图:将网格点的运动学插值回粒子
- 左下图:更新粒子本身
p2g2p具体数学公式解释
1. P2G(粒子转移到网格):粒子将①质量、②动量和③应力贡献的冲量传递到其邻近的网格节点公式
公式①-质量传递:
目标:负责将粒子的质量转移到网格节点上,以构建网格上的质量分布。将粒子的质量传递到网格节点上。核函数N的使用,确保了只有相邻的粒子对网格节点有影响,从而保持了计算的局部性和效率。
公式②-动量转移和应力贡献的冲量:
目标:这个公式将粒子的应力和动量通过应力贡献的冲量转移到网格节点上,使得网格上的动量分布不仅反映粒子的运动,还考虑了粒子内部的应力分布。
MPM的优势
相比有限元法(FEM):MPM不需要周期性的重新网格化步骤,也不需要重新映射状态变量,因此更适合大材料变形的建模。在MPM中,颗粒(粒子)而非网格节点存储所有计算状态的信息。因此,每个计算周期后网格返回到其初始位置时不会产生数值误差,也不需要重新网格化算法。
相比纯粒子方法:
- 由于在MPM中,节点保持固定在规则网格上,梯度计算变得十分简单。
- 在具有两个或更多相的模拟中,检测实体之间的接触相对容易,因为颗粒可以通过网格与同一物体内的其他颗粒、其他固体或流体相互作用。
“1. MPM是一种基于物理的离散化方法,可以通过守恒定律的弱形式推导出来。这种基于物理的方法使得模拟结果更容易与真实世界实验相匹配。
2. MPM在现代硬件架构上易于并行化,可以在GPU上运行。
3. 由于计算成本较高,MPM通常用于建模而不是网格基方法,因为MPM可以自然处理大变形和(自)碰撞。
4. 模拟连续体(如流体或柔软物体)运动时,系统中的势能函数是光滑且可微的(即它的导数存在且连续)。这种可微性使得在优化或求解系统时,可以对该系统进行微分(如计算梯度),从而可以使用优化算法来调整系统的状态。软体对象的碰撞也纳入了这个框架中,因为它们的相互作用(如碰撞时产生的力)也可以通过可微的势能函数来描述。因此,整个系统的行为,包括碰撞的影响,都可以通过这些可微函数进行计算和优化。(多软体对象的碰撞是可以的)”
MPM的劣势
- 存储:MPM在存储方面比其他方法更昂贵,因为MPM同时使用了网格和粒子数据。
- 计算:MPM在计算方面也比有限元法(FEM)更为昂贵,因为每个MPM计算步骤结束时必须重置网格,并在下一步开始时重新初始化。
- 当粒子穿过网格边界时,MPM中可能会出现虚假振荡,尽管通过使用广义插值法(GIMP)可以最小化这一影响。在MPM中,和FEM一样,网格的大小和方向会影响计算结果:例如,在MPM中,已知应变局部化对网格细化特别敏感。MPM中存在一个FEM中没有的稳定性问题,即单元交叉误差和零空间误差,这是因为单元内的积分点(材料点)的数量不是恒定的。
参考资料
- Hu Y, Liu J, Spielberg A, Tenenbaum JB, Freeman WT, Wu J, Rus D, Matusik W. Chainqueen: A real-time differentiable physical simulator for soft robotics. In2019 International conference on robotics and automation (ICRA) 2019 May 20 (pp. 6265-6271). IEEE.
- 超级无敌安利的参考资料:https://www.math.ucla.edu/~cffjiang/research/mpmcourse/mpmcourse.pdf
关于上面的pdf有个知乎也不错:模拟连续介质的物质点法 - 知乎 - 一些详细的公式和笔记也可以参考这篇详细的文章:图形学笔记(二十)粒子、刚体、流体的模拟—— 欧拉方法、Errors 和 Instability、中点法、自适应步长、隐式欧拉方法、Runge-Kutta方法、刚体与流体模拟(质点法、网格法、MPM)_隐式mpm-CSDN博客