我认为这在很大程度上取决于您尝试建模的物理类型,即使对于某些问题,两种方法都是可行的。
拉格朗日与欧拉框架
对于某些问题,拉格朗日框架比它们的欧拉对应物更适合。例如,如果有人对研究海洋学中的当前模式或沉积问题感兴趣,那么进行拉格朗日粒子跟踪比求解浓度场更自然。特别是因为,至少对于某些此类问题,扩散将毫无意义,并且欧拉方法中固有的数值扩散会对结果产生不利影响。
另一方面,某些问题在欧拉框架中得到了更好的表述。这里最突出的例子可能是界面跟踪。使用拉格朗日框架(即前跟踪方法)的不断发展的接口很难实现,尤其是对于 3D 问题。这是因为单个粒子的运动不满足熵条件,并且经常导致“界面位置”的定义不明确。为了防止这种情况发生,必须为相邻点定义连通性,当接口发生拓扑变化时,这很难处理。然而,这类问题在欧拉框架中非常自然地表达,例如在水平集框架中。
优点和缺点
除了对于给定问题哪种表述更自然,这两种方法都有利有弊。
- 拉格朗日公式基本上是无扩散的。这可能被视为一种祝福或缺点,这取决于你在做什么。
- 拉格朗日公式是高度可并行化的,因为基本上所有粒子都是独立平流的。
- 拉格朗日公式本质上是无 CFL 的,因为它是沿着特性集成的。请注意,此属性也可以通过所谓的“半拉格朗日”方法在欧拉框架中被利用
- 欧拉框架更适合涉及接口的问题。它们可以非常自然地表达复杂的拓扑变化,例如水平集方法。此外,对于此类问题,如果界面产生冲击和/或稀疏扇形,则不能使用拉格朗日方法。
- 在拉格朗日框架中更容易开发高阶精确方法。
- 从单个粒子位置重建“集中场”是昂贵的,最终结果可能不是很顺利