掌桥专利:专业的专利平台
掌桥专利
首页

一种基于粒子的粘液类效果模拟方法

文献发布时间:2023-06-19 09:46:20


一种基于粒子的粘液类效果模拟方法

技术领域

本发明涉及基于粒子的流体模拟,尤其涉及一种基于粒子的粘液类效果模拟方法。

背景技术

流体模拟问题涵盖了计算流体力学、数学、计算机等多门学科,往往包含大量的物理性质和数学运算,需要进行合理准确的抽象和建模,并通过计算机高效准确地模拟仿真。

近年来,计算机图形学技术的研究得到了飞速的发展,已广泛应用于虚拟现实(VR)、增强现实(AR)、自然景象及灾害仿真模拟、游戏引擎研发和影视特效制作等领域,其中,对流体的模拟研究十分常见,但对粘性流体的模拟研究并不及流体模拟研究,比较缺乏。

粘性液体在影视制作中频频出现,但一些高难度的粘液类物质往往需要通过特效来实现,并且需要耗费大量的资金和人力成本。

例如,在计算机图形学中最有效的SPH方法是单独地对密度误差进行纠正来防止体积压缩。然而,大多数方法都忽略了对于不可压缩流体的连续性方程来说是要求散度为零的速度场的,尽管有些方法考虑了速度散度,但效果要么是效率低下要么是产生一个明显的密度波动。

例如,在实际中,进行粘性流体的模拟时,会存在计算资源的限制,当使用SPH方法模拟大规模复杂场景的粘性流体时,往往需要在计算时间成本和模拟效果这两者之间做出抉择,即当使用的SPH粒子数量越多,模拟效果会更精确真实,但往往花费的计算成本会更高。

发明内容

本发明的目的在于克服现有技术的步骤,提供一种基于粒子的粘液类效果模拟方法,该方法结合DFSPH(Divergence-free smoothed particle hydrodynamics,散度为零光滑粒子流体动力学)和ISPH(Incompressible smoothed particle hydrodynamics,不可压光滑粒子流体动力学)两种方法的优点,并在模拟的粘性流体的邻近表面处增加AGPs以消除粘液表面出现的伪影现象,将半拉格朗日法与隐式求解法相结合的方法,即隐式半拉格朗日法,该法能够确保在粘性流体的模拟过程中提高模拟效率,节约计算资源的同时并保持模拟的稳定性。本发明方法可以提高实现粘液类流体特效的仿真效率和真实感及降低其实现所需的资金和人力的成本。

本发明的技术方案如下:

一种基于粒子的粘液类效果模拟方法,其包括以下步骤:

1)将粘性流体离散成三种粒子:DFSPH粒子、APIC粒子、AGPs粒子,其中AGPs粒子是具有虚假质量的空气鬼力粒子;

开始时,通过累积求和APIC粒子的质量和APIC粒子与DFSPH粒子相互关联的weights得到DFSPH粒子的质量;然后根据动量守恒定律,由APIC粒子的动量及上一步求出的DFSPH粒子的质量得出DFSPH粒子的速度;APIC粒子下一时间步长的速度由其当前时间步长速度和时间步长计算求得;DFSPH粒子的下一时间步长的速度由APIC粒子下一时间步长的速度及APIC粒子与DFSPH粒子相互关联的weights计算求出;DFSPH粒子的下一时间步长的位置由当前时间步长所在位置和DFSPH粒子的下一时间步长的速度及时间步长计算得出;APIC粒子下一时间步长的位置由DFSPH粒子的下一时间步长的位置及APIC粒子与DFSPH粒子相互关联的weights累积求和求得;

2)将ISPH方法应用到粘性流体的模拟过程中,得到一个真实的且自由表面压力分布均匀的粘性流体的粘性运动效果;

3)引入隐式半拉格朗日框架到粘性流体的模拟过程中,在该框架下的半拉格朗日算法保证模拟过程的稳定性的基础上,增大时间步长,迭代地执行步骤1)和2)。

与现有技术相比,本发明所具有的有益效果是:

本发明结合了DFSPH和ISPH两种方法的优点,以DFSPH方法确保粘液类流体的物理属性(如密度、质量等)不变性;以ISPH方法确保粘液类流体体积及其表面的压力分布计算的精确性;

本发明在采用了步骤1)的DFSPH和步骤2)的ISPH结合的混合式的场景绘真实感制新算法的基础上,利用仿射粒子元胞法(Affine Particle-In-Cell,简称:APIC)在速度场上的计算优势,增加参与模拟的细粒度的APIC粒子数量。

本发明在模拟的粘性流体的邻近表面处增加AGP(Air ghost particles,即空气鬼力粒子),消除粘液表面出现的伪影现象,从而大大地提高了粘液类流体效果场景的真实度。

本发明引入隐式半拉格朗日计算框架到粘液类流体运动的仿真过程中,在该框架下的流体隐式粒子保证了粘液类流体整体运动上的稳定性,通过采用较大时间步长的条件,从而大大地提高了粘液类流体的仿真效率。

本发明采用的粘性流体模拟方法相比于传统的流体模拟方法具有仿真的效率更高、真实感更强、所耗费的人力和资金的成本更低的特点。

附图说明

图1是本发明的实现步骤展示图;

图2是创建AGPs图;

图3是本发明生成的面包上撒番茄酱效果图序列图;

图4是本发明生成的搅拌青汁面团效果图序列图;

图5是本发明生成的下滴的奶油冰淇淋效果图序列图。

图6是本发明生成的融化的巧克力过程序列图。

图7是本发明方法与传统的PBF(Position based fluids,基于位置流体)方法和PCISPH(Predictive-corrective incompressible smoothed particle hydrodynamics,预测校正不可压缩光滑粒子流体动力学)方法的实验结果对比图:蜂蜜下滴过程卷绕序列图;

图8是本发明方法与传统的WCSPH(Weakly compressible smoothed particlehydrodynamics,弱可压光滑粒子流体动力学)方法和PF(Projective Fluids,映射流体)方法的实验结果对比图:麦芽糖下滴屈曲过程序列图。

具体实施方式

下面结合具体实施方式对本发明做进一步阐述和说明。本发明中各个实施方式的技术特征在没有相互冲突的前提下,均可进行相应组合。

在计算机图形学中最有效的SPH方法是单独地对密度误差进行纠正来防止体积压缩。然而,大多数方法都忽略了对于不可压缩流体的连续性方程来说是要求散度为零的速度场的,尽管有些方法考虑了速度散度,但效果要么是效率低下要么是产生一个明显的密度波动。DFSPH方法应用于不可压缩粘性流体,必须满足散度为零的条件,即▽·v=0,在实际模拟中,只通过散度为零的速度场并不足以保持流体的不可压缩性,在数值积分过程中,不可避免地产生误差,从而导致密度偏差,且这种误差在整个模拟过程中会逐渐累积,为了修正数值密度误差,可结合连续性方程

DFSPH方法确保散度为零的推导过程为:

根据流体控制方程:

DFSPH方法确保密度恒定的推导过程为:

密度恒定的推导过程与以上的散度为零的推导过程类似,通过实现α

针对现有技术大多数方法忽略了对于不可压缩流体的连续性方程来说是要求散度为零的速度场的,以及部分方法考虑了速度散度,但效率低下或产生一个明显的密度波动的问题,本发明方法采用DFSPH方法应用于不可压缩粘性流体,其必须满足散度为零的条件,即▽·v=0,在实际模拟中,只通过散度为零的速度场并不足以保持流体的不可压缩性,在数值积分过程中,不可避免地产生误差,从而导致密度偏差,且这种误差在整个模拟过程中会逐渐累积,为了修正数值密度误差,可结合连续性方程

IPSH(不可压光滑粒子流体动力学)方法能够解决粘性流体的自由表面不稳定的问题,是由于ISPH能够通过求解压力泊松方程使得粘性流体的自由表面的压力分布均匀。

本发明在模拟粘性流运动效果的SPH粒子中增加不同维度的在速度上具有计算优势的细粒度的APIC粒子,丰富了粘性流体运动的细节。

在实际中,进行粘性流体的模拟时,会存在计算资源的限制,当使用SPH方法模拟大规模复杂场景的粘性流体时,往往需要在计算时间成本和模拟效果这两者之间做出抉择,即当使用的SPH粒子数量越多,模拟效果会更精确真实,但往往花费的计算成本会更高;针对以上问题,本发明提出在用于模拟的SPH粒子中增加不同维度的APIC粒子,即通过细粒度的APIC粒子来增强DFSPH方法计算获得的更加丰富精确的流体细节,在一定的可控制的计算时间成本下实现更加具体真实的粘性流体的细节。

为了解决质点网格法(particle in cell,PIC)法的数值消散和FLIP(fluid-implicit-PIC)法的不稳定的问题,本发明使用了混合的PIC和FLIP的APIC法,APIC法避免了PIC法数值消散缺点和FLIP法的不稳定的生成噪声的缺点,而保留了PIC法的保持稳定性优点和FLIP法的消除数值消散的优点,并且保持角动量守恒。

在标准的APIC方法中,由于APIC法保留了FLIP法的流体是通过质点的形式存在,而受力分析和速度积分迭代是在欧拉网格上完成,APIC法的时间步长要大于SPH法的时间步长,因而在粘性流体模拟过程中的计算时间资源和内存消耗上有很大的优势。由于本发明中的APIC粒子和SPH粒子是不同维度的粒子,因而不会发生如碰撞、混合等的直接接触。本发明方法使用细粒度APIC粒子是为了增强通过混合DFSPH方法和ISPH方法绘真实感制新算法在节约计算资源的同时获得更加真实丰富的粘性流体细节效果。

本发明提出了通过在粘性流体的邻近自由表面处创建一些具有虚假质量的AGPs以消除粘性流体表面出现的伪影的现象。

在原始的SPH方法中,由于在流体域内流体粒子与流体域外之间的空隙间缺少中间过渡部分,在自由表面粒子处会导致一些不稳定缺陷的生成,因而粘性流体的自由表面模拟显得不真实,本发明提出了通过在粘性流体的自由表面边界处创建一些虚假质量的AGPs(air ghost particles,空气鬼力粒子)来解决这个问题。

AGPs法主要受SSPs(Space potential particles,空间潜在粒子的启发,首先,在邻域搜索过程中,将二维内存在的邻域粒子数量少于28个的粒子或者在三维内存在的邻域粒子的数量少于160个的粒子标记为“自由表面粒子”;然后,受Marrone等提出的算法启示,重新确认二维空间上在每个粒子的法线方向上定义的半圆区域内那些没有粒子的粒子为“自由表面粒子”(在三维空间中以圆锥区域为准);最后,在前面两步确定的每个自由表面粒子的法线方向创建一个空气鬼力粒子。不断重复步骤第二步和第三步,直到粘性流体的所有自由表面粒子受影响的区域都填充了空气鬼力粒子,对于在本发明研究中的四次样条权重函数来说,有必要创建三层AGPs来达到最高的精确度的粘性流体的自由表面。据诺伊曼边界条件,自由表面粒子的速度场必须满足散度为零的条件,那么自由表面粒子相邻的目标空气鬼力粒子的速度就可简化为与目标自由表面粒子的速度相等。即:

在粘性流体运动模拟过程中引入隐式半拉格朗日计算框架,在该框架下确保稳定性的条件下,通过增大模拟的时间步长来提高模拟效率。

半拉格朗日法:拉格朗日法和欧拉法是描述流体运动的两种方法,其中拉格朗日方法主要着眼于流体中的每个质点的空间位置随时间的变化情况,而欧拉法主要关注的是某一时刻流经每一个空间点的流体质点的运动状态,着眼于空间固定点上流体运动随时间的变化情况及研究流体的宏观物理量(如速度场、加速度场等)的空间分布随时间的变化情况。欧拉方法能够保持网格的规则性,但是其为了保持稳定,需要较小的时间步长,而拉格朗日法可以不受稳定性的限制,允许更大的时间步长,本发明采用了一种半拉格朗日的方法,该方法结合了欧拉法的稳定性和拉格朗日法的支持大的时间步长的优点,从而在每个时间点,进行网格点值计算时沿着粒子的轨迹进行求解,半拉格朗日法就是使用拉格朗日法的思想求解对流项,然后在固定的网格上求解局部项,

隐式求解法:隐式求解和时间无关,其采用的是牛顿迭代法,可直接使用线性代数方程组求解线性问题,因而会导致生成一个迭代收敛的问题,如果出现了不收敛的问题,就不能得出计算结果,通过选择一个合适大小的时间步长,在确保粘性流体计算效率的同时解决不收敛性的问题,隐式求解法的最大优点是其具有无条件的稳定性,时间步长可以任意选择大小。

本发明主要使用了将半拉格朗日法与隐式求解法相结合的方法,即隐式半拉格朗日法,该法能够确保在粘性流体的模拟过程中提高模拟效率,节约计算资源的同时并保持模拟的稳定性。

参照图1、2,具体的,本实施例基于粒子的粘液类效果模拟方法具体实施方式如下:

1)将粘性流体离散成三种粒子:DFSPH粒子、APIC粒子、AGPs粒子,其中AGPs粒子是具有虚假质量的空气鬼力粒子;

开始时,通过累积求和APIC粒子的质量和APIC粒子与DFSPH粒子相互关联的weights得到DFSPH粒子的质量;然后根据动量守恒定律,由APIC粒子的动量及上一步求出的DFSPH粒子的质量得出DFSPH粒子的速度;APIC粒子下一时间步长的速度由其当前时间步长速度和时间步长计算求得;DFSPH粒子的下一时间步长的速度由APIC粒子下一时间步长的速度及APIC粒子与DFSPH粒子相互关联的weights计算求出;DFSPH粒子的下一时间步长的位置由当前时间步长所在位置和DFSPH粒子的下一时间步长的速度及时间步长计算得出;APIC粒子下一时间步长的位置由DFSPH粒子的下一时间步长的位置及APIC粒子与DFSPH粒子相互关联的weights累积求和求得;

2)将ISPH方法应用到粘性流体的模拟过程中,得到一个真实的且自由表面压力分布均匀的粘性流体的粘性运动效果;

3)引入隐式半拉格朗日框架到粘性流体的模拟过程中,在该框架下的半拉格朗日算法保证模拟过程的稳定性的基础上,增大时间步长,迭代地执行步骤1)和2)。

在本实施例中,步骤1)具体按如下过程执行:

将粘性流体离散成DFSPH粒子、APIC粒子、AGPs粒子三种粒子后,依次执行步骤1.1)至步骤1.9):

1.1)在当前时间步长n,初始化APIC粒子的质量

1.2)对每个DFSPH粒子ID,搜素粒子ID所处位置半径为h内所有APIC粒子(h表示采用的光滑核函数的光滑长度,同以下定义的步骤2.2)中的h);

1.3)根据步骤1.2)搜索得到的APIC粒子,通过累积求和APIC粒子的质量和APIC粒子与DFSPH粒子相互关联的weights得到DFSPH粒子ID的质量

其中,

1.4)根据动量守恒定律,由APIC粒子的动量及步骤1.3)求出的DFSPH粒子ID的质量得出DFSPH粒子ID当前时间步长的速度

1.5)在步骤1.4)的到的DFSPH粒子ID当前时间步长速度的基础上经过一个时间步长Δt的演变得到DFSPH粒子ID下一时间步长的速度:

1.6)通过DFSPH粒子ID下一时间步长的速度与DFSPH粒子和APIC粒子相互关联的weights累积求和得到APIC粒子下一时间步长的速度:

1.7)通过DFSPH粒子ID当前时间步长的位置与DFSPH粒子ID下一时间步长速度及一个时间步长Δt计算得到DFSPH粒子ID下一时间步长的位置

1.8)通过步骤1.7)得到的DFSPH粒子ID下一时间步长的位置

1.9)在模拟的粘性流体自由表面边界处创建三层AGPs粒子。

在本实施例中,步骤2)具体按如下过程执行:

2.1)采用ISPH方法,通过将粘性流体离散成一系列的点集,每个点集中的单个粒子的运动通过求解其核函数由其相邻粒子的运行插值计算得出;

2.2)选定一个核函数,核函数光滑后的离散形式为:

其中,x

将该核函数作用于粘性流体离散后的每个点集中的DFSPH粒子和APIC粒子,得到一个真实的粘性流体的整体运动过程;

2.3)在采用ISPH方法作用于粘性流体运动的模拟过程中,通过对粘性流体离散后的DFSPH粒子和APIC粒子求解压力泊松方程,得到一个压力分布均匀的粘性流体的自由表面。

在本实施例中,步骤3)具体按如下过程执行:

3.1)对粘性流体离散后的DFSPH粒子和APIC粒子采用半拉格朗日算法,该算法通过对当前粒子的速度场进行后向跟踪,最终的物理量场值是通过其所在网格点做插值计算得到,不会出现超出原量场的最大值和最小值的情况,且不会受限于Δtμ的大小,因而是无条件稳定的;

3.2)将粘性流体离散后的AGPs粒子的速度始终简化为与目标自由表面粒子的速度相等;

3.3)增大时间步长Δt,迭代地执行步骤1)和2),即增大的时间步长分别作用于粘性流体离散后的DFSPH粒子、APIC粒子和AGPs粒子的运动过程中,提高粘性流体实现粘性运动的模拟效率。

图3示出了本发明方法生成的面包上撒番茄酱效果图序列图;图4示出了本发明方法生成的搅拌青汁面团效果图序列图;图5示出了本发明方法生成的下滴的奶油冰淇淋效果图序列图。图6示出了本发明方法生成的融化的巧克力过程序列图。从图3-图6可以看出,由于本发明的混合式绘制新算法综合了DFSPH(散度为零光滑粒子流体动力学)和ISPH(不可压光滑粒子流体动力学)两种方法的优点,能保持密度恒定的前提下能够模拟出真实的不可压缩的粘性流体的粘性流动过程,并以仿射粒子元胞法(APIC)在速度场上的计算优势,通过增加参与模拟的APIC粒子数,并在模拟的粘性流体的自由表面边界上创建AGPs粒子,从而使得模拟的这几种粘性流体的运动场景显得真实而生动;

图7是本发明方法与传统的PBF(Position based fluids,基于位置流体)方法和PCISPH(Predictive-corrective incompressible smoothed particle hydrodynamics,预测校正不可压缩光滑粒子流体动力学)方法的实验结果对比图:蜂蜜下滴过程卷绕序列图;图7中,左列:PBF方法效果,中列:本发明方法效果;右列:PCISPH方法效果。从中可以看出,由于本发明的混合式绘制新算法综合了DFSPH(散度为零光滑粒子流体动力学)和ISPH(不可压光滑粒子流体动力学)两种方法的优点,能保持密度恒定的前提下能够模拟出真实的不可压缩的粘性流体的粘性流动过程,并以仿射粒子元胞法(APIC)在速度场上的计算优势,通过增加参与模拟的APIC粒子数和在粘性流体自由表面创建AGPs粒子以填充自由表面粒子来消除artifacts,从而相比PCISPH方法及PBF方法,提高了场景细节上的真实感;

图8是本发明方法与传统的WCSPH(Weakly compressible smoothed particlehydrodynamics,弱可压光滑粒子流体动力学)方法和PF(Projective Fluids,映射流体)方法的实验结果对比图:麦芽糖下滴屈曲过程序列图。从中可以看出,由于本发明采用的混合式绘制新算法综合了DFSPH(散度为零光滑粒子流体动力学)和ISPH(不可压光滑粒子流体动力学)两种方法的优点,能保持密度恒定的前提下能够模拟出真实的不可压缩的粘性流体的粘性流动过程,并以仿射粒子元胞法(APIC)在速度场上的计算优势,通过增加参与模拟的APIC粒子数及在粘性流体自由表面创建AGPs粒子以填充自由表面粒子来消除artifacts,从而相比WCSPH方法及PF方法,提高了模拟的场景细节上的真实感;

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

相关技术
  • 一种基于粒子的粘液类效果模拟方法
  • 五分类白细胞模拟物粒子、其制备方法以及含该模拟粒子的质控物和校准物
技术分类

06120112297452