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