Robert Bridson书中关于自由表面求解的笔记

Fluid Simulation for Computer Graphics第二版,8.2节。

在求解自由表面流体时,简单地把计算域划分为液体格和气体格,会导致artifact.如果能更精确地追踪表面,可以修改一下在水-气界面附近计算压强差的方式。

根据Gibou et al. 2002的ghost fluid方法,可以把更新流体速度节点\(u_{i+1/2,j,k}\)的方程写作

假设(i,j,k)在流体内部,而(i+1,j,k)在空气中,即\(\phi_{i,j,k}\leq 0<\phi_{i+1,j,k}\).认为流体表面处压强p=0。我们可以算出来一个

(注意其分子分母都是负数),界面位置在\((i+\theta)\Delta x,j,k)\)的地方。

然后,假设我们在(i+1,j,k)处有一个ghost pressure,可以求出来:

所以方程就是:

这个额外的系数可以叫做\(\theta\).

注意\(\phi{i,j,k}\)小的话,可能会把对角项搞得很大,但这没关系,这样更正定了,岂不美哉。

《Robert Bridson书中关于自由表面求解的笔记》有一个想法

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注