FLIP 的隐式集成?

计算科学 流体动力学 隐式方法
2021-12-04 09:50:39

我在 FLIP 模拟中遇到体积损失问题。

不幸的是,当使用显式积分方法(在我的例子中为 RK2)使用流体隐式粒子方法推进粒子位置时,必须遵守 CFL 条件,否则流体体积会随着时间的推移而丢失(模拟变得不稳定)。

事实证明,在我的情况下,每帧进行几次子迭代并遵守 CFL 条件非常昂贵。

我认为体积损失的问题可以通过使用隐式积分方法来解决,这将使流体无条件稳定,并允许我在不遵守 CFL 条件和执行代价高昂的子迭代的情况下采取更大的时间步长。

FLIP 的这种隐含公式是否存在?如果没有,是否有另一种方法可以减轻(或完全消除)FLIP(CFL 除外)中的音量损失?

1个回答

在计算机图形学界,存在许多通过粒子追踪以某种方式隐含在时间上的方法来逼近具有无条件稳定性的 Navier-Stokes 或 Euler 方程的平流算子。基本思想是使用负时间步长,因此在时间上向后追踪粒子。在速度样本所在的网格点处,对粒子进行积分以找到粒子起源的位置,并使用和插值的速度进行更新。Stam 1将这个概念引入了计算机图形社区,尽管这个概念之前可能已经出现在其他地方。朱和布里德森2使用 FLIP 进行不可压缩的流动,但据我所知,使用显式积分进行粒子跟踪(正时间步长)。也许可以将12中的方法结合起来得到一个无条件稳定的FLIP积分器。

但是,我不知道这是否会导致体积守恒的提高。另请注意,我的经验是更高的 CFL 数字意味着准确度(速度场)的显着降低,并且可能还会导致体积损失。

[1] Stam, J. 稳定流体。SIGGRAPH 诉讼,1999,121-128

[2] 朱毅;Bridson, R. 将沙子动画化为流体 ACM Trans。图表,ACM,2005