一种拉伸稳定的SPH流体仿真方法技术

技术编号:35689905 阅读:47 留言:0更新日期:2022-11-23 14:37
本发明专利技术涉及一种拉伸稳定的SPH流体仿真方法,可有效削弱SPH流体仿真过程中拉伸不稳定问题。本发明专利技术在SPH流体仿真过程中引入了两种新的粒子,即:作为压强场采样点的虚粒子,和具有速度属性且携带有流体质量的实粒子,并基于这两种粒子构建了基于SPH投影法的流体仿真技术方法。此外,本发明专利技术提供了两中虚粒子生成方法,以在不增加过多计算花销的前提下高效地生成虚粒子。本发明专利技术能够有效削弱原SPH流体仿真方法中的拉伸不稳定问题,显著提高流体仿真的稳定性、视觉质量和精确性。本发明专利技术不仅能够真实、精确地模拟处于拉伸状态下流体的薄层、细流、飞溅和液滴等形态,而且可实现无粘性流体的稳定模拟。的稳定模拟。的稳定模拟。

【技术实现步骤摘要】
一种拉伸稳定的SPH流体仿真方法


[0001]本专利技术属于计算机图形学领域,具体涉及一种拉伸稳定的SPH流体仿真方法。

技术介绍

[0002]光滑粒子流体动力学法(Smoothed Particle Hydrodynamics,简称SPH)是一种被广泛使用的流体仿真方法。该种流体仿真法在影视特效、游戏开发、计算机辅助工程、海洋工程等领域都有重要的应用。经过许多年的发展,这一方法已经能够在计算机上实现多种不同的流体材料以及多相流场景的快速、精确模拟。然而自1977年被专利技术直至今日,SPH流体仿真方法一直受到拉伸不稳定问题的困扰,这导致SPH流体仿真方法很难准确地模拟流体的拉伸状态,不能真实地模拟自由表面流的薄层、细丝、飞溅等细节特征。这一问题严重限制了基于SPH的仿真方法的应用。
[0003]SPH流体仿真方法中拉伸不稳定问题产生的原因主要有以下三个方面:(1)在SPH法中的粒子位置的更新计算是拉格朗日视角实现的,但粒子间相互作用的相关计算必须要使用到欧拉视角下的SPH核函数,这会导致一组带有负压强的粒子会随着相互距离的减小吸附力逐本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种拉伸稳定的SPH流体仿真方法,其特征在于,包括以下步骤:步骤1:在进行仿真之前的初始化阶段,首先生成代表流体的实粒子,每个实粒子均携带有流体的部分质量,具有密度和速度属性;步骤2:对实粒子施加粘性和体积力作用,更新实粒子的速度;步骤3:根据实粒子的位置生成虚粒子的位置,虚粒子只携带有压强属性,不能移动;步骤4:查找每个实粒子和虚粒子的邻域实粒子和邻域虚粒子;步骤5:使用虚粒子和实粒子及其邻域实粒子和邻域虚粒子离散化压强泊松方程,得到用于求解虚粒子压强的线性方程组,并求解出虚粒子的压强;步骤6:使用虚粒子和实粒子及其邻域实粒子和邻域虚粒子完成流体欧拉方程的离散化,再根据虚粒子的压强计算每个实粒子的压强梯度,然后使用实粒子的压强梯度更新实粒子的速度;步骤7:删除全部虚粒子,再基于实粒子的速度更新实粒子的位置;步骤8:重复步骤2

7,直到完成流体仿真任务。2.根据权利要求1中所述的拉伸稳定的SPH流体仿真方法,其特征在于:所述步骤3中,根据实粒子位置生成虚粒子,其中虚粒子位置的生成方式有两种,以下是第一种虚粒子位置生成方法的实现步骤:(1)对实粒子的位置数据进行深拷贝,深拷贝后的数据做为虚粒子的初始位置数据;(2)修正虚粒子的初始位置,使虚粒子的位置分布趋于均匀;以下是第二种虚粒子位置生成方法的实现步骤:(1)在仿真所在空间中划定正交、等间距的空间点,作为虚粒子生成的锚点;(2)在每个实粒子临近的锚点位置上生成虚粒子的候选点;(3)将全部的虚粒子的候选点转化为莫顿码并存储在一个数组A中;(4)对数组A进行排序;(5)对数组A进行去重操作,即:查找数组A中各元素是否与临近元素相同,如果相同则去除掉重复的元素;(6)将去重后的数组A中各元素转化为空间坐标,该空间坐标即为虚粒子的位置。3.根据权利要求1中所述的拉伸稳定的SPH流体仿真方法,其特征在于:所述步骤5中,使用虚粒子和实粒子及其邻域实粒子和邻域虚粒子离散化压强泊松方程,其中压强泊松方程的连续形式为:上式中,u
*
为施加粘性和体积力作用后流体的速度矢量场;p为流体的压强场;ρ为流体密度场,Δt为时间步长即两帧模拟的时间间隔;离散化后的压强泊松方程左端项的具体形式为:离散化...

【专利技术属性】
技术研发人员:刘树森何小伟王文成
申请(专利权)人:中国科学院软件研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1