关键词:
流体模拟
核函数
应力不稳定
表面张力
固壁边界
摘要:
流体模拟作为计算机图形学的一个重要分支,在诸如影视特效、军事模拟、动画制作以及医学等方面都有着广泛的应用。基于光滑粒子流体动力学(Smooth Particle Hydrodynamics,SPH)方法是流体模拟,尤其是液体模拟的一种主要方法。在SPH方法中,流体模拟的应力不稳定、液体表面张力以及固壁边界处理的研究是流体模拟研究的重要课题,研究上述问题有很强的实际应用价值。本文首先介绍了流体模拟应力不稳定、液体表面张力及固壁边界处理研究的历史背景和研究意义,以及国内外相关研究的历史沿革和现状,在此基础上,做了如下三个方面工作:针对流体模拟的应力不稳定问题,研究了该问题产生的原因,对已有的研究成果进行了仔细分析,提出了一种改进的核函数,既能解决压应力不稳定性又能提高计算效率;但仅依靠改进的核函数无法同时改善压应力不稳定和拉应力不稳定,为此对动量方程的离散形式进行改进,有效改善了拉应力不稳定。将改进的核函数和改进的动量方程的离散形式相结合,提出一种能同时改善压应力不稳定和拉应力的不稳定的方法。表面张力的模拟方法主要有两种,一种是连续表面力(continuum surface force,CSF)方法,另一种是粒子间相互作用力(inter-particle interaction force,IIF)方法。传统CSF方法以一种非对称的形式将力施加到SPH粒子上,导致流体的动量不再守恒,不能稳定和准确地模拟液体表面的效果;在模拟液体表面张力时,传统IIF表面张力处理算法不能够最小化表面曲率,导致液体表面不够光滑。因此,根据流体表面张力的物理性质,本文构造了一种符合物理规律的分子间作用力模型,并结合本文改进的动量方程,有效地克服了液体表面张力模拟过程中数值不稳定的不足。与传统的CSF方法和IIF方法相比,本文方法模拟的液体表面更光滑、更真实,且粒子间分布更均匀,计算更稳定。固壁边界处理一直是流体模拟中的重点和难点,常见的固壁边界处理方法主要有边界力法和虚粒子法。边界力法通过对靠近边界的流体粒子施加作用力防止流体粒子穿透边界,但边界力模型的参数较多,力的大小难以调控,并且在计算过程中会产生边界截断误差问题;虚粒子法通过在边界外生成虚粒子解决了边界截断误差问题,但在处理复杂边界时,边界外部的虚粒子的生成较困难,并且虚粒子分布不均,计算精度受到影响,出现粒子飞散的情况。针对上述两种方法存在的问题,本文提出了一种基于速度修正的固壁边界处理方法,无需求解边界力或者在边界外生成虚粒子,直接利用动量方程和计算速度耗损量求出流体粒子碰到边界后的反弹速度,大大降低了处理边界的复杂程度,也克服了边界力法和虚粒子法在边界拐角处粒子不均匀采样而导致的算法不稳定的问题。模拟仿真验证了本文方法在稳定性、计算效率等方面都比上述传统方法更好;随着粒子数的增加,本文方法的耗时增长也比上述两种方法慢,计算效率高的优势更明显,更适合模拟复杂边界处理。