我使用三次样条核和一个简单的非迭代压力求解器实现了一个相当简单的 SPH 模拟,如等式 9中的 PDF中所述。我遵循了该论文的算法 1(包括重力)。
由此产生的粒子行为肯定是类似流体的(具有相当多的可压缩性,正如这种简单的压力求解器所预期的那样)。然而,正如您在此屏幕截图中看到的那样,粒子在平衡时并没有均匀分布,而是排列成大约 3 个粒子的小簇。
这是正常行为吗?这对我来说似乎很奇怪,所以我想确保这是正确的,或者有人会知道这里可能出了什么问题。
截图显示了所谓的配对不稳定性,这是 SPH 计算中最常见的不稳定性问题之一。
配对不稳定性是应用具有太大平滑半径的钟形核函数的结果。由于至少三阶多项式核函数具有感染点,因此彼此靠得太近的粒子会经历越来越低的排斥力并逐渐粘在一起。这可以通过选择合适的平滑半径来克服,从而产生相当最佳的邻居数量,这取决于应用的核函数,但通常在 2D 中约为 25。
您可以在此处了解 SPH 模拟的配对不稳定性和其他问题。第 9 页简要讨论了配对不稳定性。