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

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

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

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

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

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

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

所以方程就是:

这个额外的系数可以叫做[latex]\theta[/latex].

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

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

发表回复

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