PCISPH
这里是原始论文:"Predictive-Corrective Incompressible SPH"
1.引言
在 SPH 的背景下,已经采用了两种不同的策略来建模不可压缩性:
- 使用刚性的状态方程(EOS)
- 标准 SPH:刚性较低,不真实
- WCSPH:刚性较高,时间步较小
- 求解压力泊松方程
- ISPH:速度慢
本文提出了一种不可压缩 SPH 方法,兼具 WCSPH 和 ISPH 的优点:
- PCISPH:计算成本低,时间步大
2. PCISPH 模型
2.1 基本 SPH / WCSPH 算法
位于位置 $x_i$ 的粒子 $i$ 的密度 $ ho_i$: $$ \rho_i = m_i\sum_j W(x_{ij}, h) $$
粒子 $i$ 的压力 $p_i$ 为: $$ p_i = \frac{k\rho_{0i}}{\gamma}\left(\left(\frac{\rho_i}{\rho_{0i}}\right)^\gamma - 1\right) $$
压力力为: $$ F_i^{p} = -\sum_{j}m_im_j \left(\frac{p_i}{\rho_i^2} + \frac{p_j}{\rho_j^2}\right)\nabla W(x_{ij}, h) $$
黏性力为: $$ F_i^{vis} = 2\nu(d+2)\sum_j \frac{m_im_j}{\rho_i\rho_j}\frac{v_{ij}\cdot x_{ij}}{\|x_{ij}\|^2+0.01h^2}\nabla W(x_{ij}, h) $$
2.2 PCISPH 算法
下面是完整算法:

,其中: $$ \rho_{err, i}^* = \rho_{i}^* - \rho_{0i} $$
$$ \tilde{p}_i = \delta \rho_{err, i}^* $$
为避免伪造数值,这里我们选择一个固定的 $\delta$,其值由一个拥有完整邻域的原型粒子进行评估:
$$ \delta = \frac{1}{\beta\left(\sum_j\nabla W_{ij}\cdot \sum_j\nabla W_{ij} + \sum_j \left(\nabla W_{ij}\cdot \nabla W_{ij}\right) \right)} $$
$$ \beta = \Delta t^2m^2\frac{2}{\rho_{0i}^2} $$
3. 结果
下面是不同黏性系数下的两相 PCISPH 结果:
