基于sph方法的多组分固体和流体模拟方法及系统的制作方法

文档序号:10594283阅读:348来源:国知局
基于sph方法的多组分固体和流体模拟方法及系统的制作方法
【专利摘要】本发明公开一种基于SPH方法的多组分固体和流体模拟方法及系统,能模拟固体,多组分流体,固体和多组分流体的耦合,多孔介质流以及溶解。方法包括:将多组分流体的动量守恒公式中加入固体的偏应力张量的散度部分,保留压强部分,计算每个粒子的整体压强;利用标准的多组分流体计算方法更新体积分数,根据空间中固体和流体的体积分数以及相对速度计算出每个粒子所有组分的速度梯度;根据所述速度梯度利用固体的本构方程计算固体的偏应力张量,并根据屈服准则修正所述偏应力张量;利用固体的体积分数修正所述偏应力张量;计算不同粒子之间的粘滞力大小;根据所述偏应力张量和粘滞力大小,利用所述动量守恒公式进行多组分物理模拟。
【专利说明】
基于SPH方法的多组分固体和流体模拟方法及系统
技术领域
[0001] 本发明设及计算机图形学物理模拟与擅染技术领域,具体设及一种基于SKl方法 的多组分固体和流体模拟方法及系统。
【背景技术】
[0002] 近十年来,设及流体和固体的基于物理的模拟在图形学界越来越流行。而流体和 固体之间的相互作用也是图形学领域的一个值得研究的难点之一。
[0003] 之前的工作设及流体和固体的相互禪合,如N. Akinci等人发表的论文"Versati Ie rigid-fluid coupling for incompressible SPH."处理了流体和刚体的相互作用,之后 他们发表的"Coupling elastic solids with SPH fluids."将方法扩展到弹性体。 T.Lenaerts等人发表论文"Mixing fluids and granular materials."处理了沙子和水之 间的多孔介质流问题。他们的方法只能对应特定的场景而没有一个统一的框架来处理运些 所有的情况。此外,对于溶解等需要体积分数或质量分数来表述的效果也很难进行模拟。
[0004] 对于多组分流体,B.Ren等人发表的论文"Multiple-fluid SPH simulation using a mix化re model"利用混合模型,可W处理可混与不可混的流体的模拟。T. Yang等 人利用能量的方法可W模拟类似萃取,特征匹配W及流动性混合等效果。但是他们只考虑 了流体,对于固体的模拟他们都没有设及。
[0005] 总的来说,之前的方法要么场景过于特定,要么虽然能处理可混与不可混之间的 流体,但是没有扩展到固体的情况。

【发明内容】

[0006] 本发明需要解决的技术问题是,如何模拟固体和流体之间的相互作用的模拟,主 要设及的固体有弹塑性体和颗粒物质。此外,本技术保持了一个统一的框架,使得固体、多 组分流体、固体和多组分流体的禪合、多孔介质流、溶解的模拟,W及固体和流体组分之间 的可混与不可混的模拟在一个统一的框架下都可W进行,具有鲁棒性,且易于实现。
[0007] -方面,本发明实施例提出一种基于SPH方法的多组分固体和流体模拟方法,包 括:
[000引S1、将多组分流体的动量守恒公式中加入固体的偏应力张量的散度部分,保留压 强部分,并计算每个粒子的整体压强;
[0009] S2、利用标准的多组分流体计算方法更新体积分数,根据空间中固体和流体的体 积分数W及相对速度计算出每个粒子所有组分的速度梯度;
[0010] S3、根据所述速度梯度利用固体的本构方程计算固体的偏应力张量,并根据屈服 准则修正所述偏应力张量;
[0011] S4、利用固体的体积分数修正所述偏应力张量;
[0012] S5、计算不同粒子之间的粘滞力大小;
[0013] S6、根据所述偏应力张量和粘滞力大小,利用所述动量守恒公式进行多组分物理 模拟。
[0014] 另一方面,本发明实施例提出一种基于SPH方法的多组分固体和流体模拟系统,包 括:
[0015] 第一计算单元,用于将多组分流体的动量守恒公式中加入固体的偏应力张量的散 度部分,保留压强部分,并计算每个粒子的整体压强;
[0016] 第二计算单元,用于利用标准的多组分流体计算方法更新体积分数,根据空间中 固体和流体的体积分数W及相对速度计算出每个粒子所有组分的速度梯度;
[0017] 第=计算单元,用于根据所述速度梯度利用固体的本构方程计算固体的偏应力张 量,并根据屈服准则修正所述偏应力张量;
[0018] 第一修正单元,用于利用固体的体积分数修正所述偏应力张量;
[0019] 第二修正单元,用于计算不同粒子之间的粘滞力大小;
[0020] 模拟单元,用于根据所述偏应力张量和粘滞力大小,利用所述动量守恒公式进行 多组分物理模拟。
[0021] 本发明实施例提供的基于SPH方法的多组分固体和流体模拟方法及系统,基于物 理模型中的质量守恒、动量守恒和固体的本构,可W模真实世界中的固体,多组分流体W及 多组分流体和固体之间的相互作用,在模拟固体时只需要设置粒子中固体的体积分数为1 即可,而多组分流体和固体之间的相互作用的模拟包括固体和多组分流体的禪合、多孔介 质流的模拟,W及固体和流体组分之间的可混与不可混的模拟。对于溶解的模拟,只需要修 改扩散方程中的基于体积分数的扩散部分,约束使体积分数不超过饱和浓度即可。另外,本 发明因为只设及额外的偏应力张量,所W额外的开销也可W保证不会过大。
【附图说明】
[0022] 图1为本发明基于SPH方法的多组分固体和流体模拟方法一实施例的流程示意图;
[0023] 图2为本发明基于SPH方法的多组分固体和流体模拟系统一实施例的结构示意图。
【具体实施方式】
[0024] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明 一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有 做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0025] 如图1所示,本实施例公开一种基于SPH方法的多组分固体和流体模拟方法,包括:
[0026] S1、将多组分流体的动量守恒公式中加入固体的偏应力张量的散度部分,保留压 强部分,并计算每个粒子的整体压强;
[0027] S2、利用标准的多组分流体计算方法更新体积分数,根据空间中固体和流体的体 积分数W及相对速度计算出每个粒子所有组分的速度梯度;
[0028] S3、根据所述速度梯度利用固体的本构方程计算固体的偏应力张量,并根据屈服 准则修正所述偏应力张量;
[0029] S4、利用固体的体积分数修正所述偏应力张量;
[0030] S5、计算不同粒子之间的粘滞力大小;
[0031] S6、根据所述偏应力张量和粘滞力大小,利用所述动量守恒公式进行多组分物理 模拟。
[0032] 本发明首先针对混合流体的Navier-Stokes方程的动量守恒方程进行修改:
[0033]
[0034] 公式(1)是多组分流体的动量守恒方程,其中D/D(t)表示随体导数,Pm为组分的混 合密度,Um为混合速度,t为时间,P为压强,Tm为黏滞力张量,TDm为相对速度张量,g为重力加 速度。为了可W扩展到固体的模拟,同时为了保证多组分的压强的连续性,本发明保留了压 强分量,在等式右边加入一个类似黏滞张量的混合固体偏应力张量TSm,使得在计算各个组 分的相互作用的时候考虑内部的固体特性。运样整个动量守恒方程就变成了 :
[0035]
[0036] 对于运个混合固体偏应力张量TSm的计算,本发明针对弹塑性体和用来模拟颗粒物 质的模型一-亚塑性体模型的本构方程扩展并计算相应的偏应力张量。
[0037] 弹塑性体根据广义胡克定律得到相应的偏应力张量:
[00;3 引

[0039] 其中O是应力张量,G是剪切模量,CO为旋转张量,e为应变张量,eP为塑性应变张 量,符号表示a对时间求导,符号"b/"表示张量b的偏应力部分。e和O运两个张量都可 W通过速度梯度直接计算出来。对于塑性应力的部分,本方法直接采用von Mises准则对偏 应为自长县讲^了條.
[0040]
[0041] 其中Y是屈服半径。运样对于弹塑性体的偏应力部分,首先计算其弹性部分,再根 据von Mises准则进行修正从准确的得到弹塑性体的偏应力张量。
[0042] 亚塑性体根据亚塑性本构得到相应的偏应力张景:
[0043]

[0044] 其中,C1、C2和C3是人为设定的参数W调整颗粒物质的性质,TH)表示张量的迹, 利用Drucker-Prager准则对偏应力张量进行修正: )
[0046] 其中,叫和k。为人为设定的参数,用来调整屈服的性质。为(/的第二主不变 量。
[0047] 由于弹塑性体和亚塑性体的本构都需要利用到速度梯度,对于可混的SPH粒子,本 方法利用平均的方法来计算每个组分的速度梯度:
[004引 (7)
[0049]
[0050] 其中,i和j表示粒子下标,Uk为组分k的绝对速度,Qk为组分k的体积分数,1?为质 量,Pj表示粒子j的密度,Wi j为SPH的核函数,Umk为组分相对于粒子中屯、的相对速度,Um为粒 子中屯、的速度,Uk = Umk+Um。
[0化1 ] 为下稳巧忡,太力?巧伸巧族动最小二乘法进行离散;
[0化2]
(8)
[0053] XU为粒子i和粒子j的距离向量,运样计算得到的不同组分的偏应力张量只适合独 立组分的计算,在可混的情况下,计算混合偏应力张量的散度的时候,本方法同样需要根据 体积分数进行平均化:
[0化4]
[005引其中k遍历所有可能的组分,表示混合偏引力张量所对应的力,(化y表示第 k个组分算出来的偏应力张量。运样就计算得到了混合的偏应力张量的散度(本质上就是运 个偏应力张量的力形式:沪f s")。
[0056]对于整体的黏滞力计算,本方法针对可混组分和不可混组分进行单独分析,如果 两种物质是不可混的,那么需要加强黏滞力防止穿透,如果是可混的,利用平均的方法平均 黏滞力:
[0化7]
[005引 Hu为i粒子和j粒子的相互黏滞力,丫 b为不可混情况的粘滞系数,丫 k为可混情况 的组分k的粘滞系数,JTU为黏滞变量,它和两个粒子之间的距离成反比,和两个粒子之间的 相对速度成正比。
[0059] 对于溶解的模拟,本方法修改了扩散方程,使得扩散方程不会使得溶质的浓度超 过饱和浓度,并且对于速度梯度的加权平均的方式,本方法也设置为当固体的体积分数小 于饱和浓度的时候,其加权系数成为零:
[0060]
[0061] 表达式(10)是对扩散速度的修改,其中,化为组分k的扩散系数,故组分k的体积分 数和饱和浓度的最小者,即故=(Os,ak),其中Os为饱和浓度。
[0062] 对于用于速度梯度的体积分数的平均,本方法将公式(9)中於參改 为:
[0063]
[0064] 如果运个表达式中(Qk)I-Qs或者(a〇广as小于零,那么就另表达式(11)变成零。
[0065] 本发明根据物理学的守恒方程得到,可W在一个统一的框架下模拟弹塑性体,颗 粒物质,多组分流体,固体和多组分流体的禪合,多孔介质流体W及溶解等现象。本方法可 W扩展多个组分并且保证了鲁棒性并且不需要非常大的开销。
[0066] 本发明实施例提供的基于SPH方法的多组分固体和流体模拟方法,基于物理模型 中的质量守恒、动量守恒和固体的本构,可W模真实世界中的固体,多组分流体W及多组分 流体和固体之间的相互作用,在模拟固体时只需要设置粒子中固体的体积分数为1即可,而 多组分流体和固体之间的相互作用的模拟包括多组分流体的禪合和多孔介质流的模拟。对 于溶解的模拟,只需要修改扩散方程中的基于体积分数的扩散部分,约束使体积分数不超 过饱和浓度即可。
[0067] 可选地,在本发明基于SPH方法的多组分固体和流体模拟方法的另一实施例中,所 述Sl,包括:
[0068] 通过标准SKl的状态方程计算每个粒子的整体压强。
[0069] 可选地,在本发明基于SPH方法的多组分固体和流体模拟方法的另一实施例中,所 述S2,包括:
[0070] 根据SPH粒子中的每个组分相对于粒子总体速度的相对速度加上粒子的总体速度 得到的每个组分的绝对速度,W及固体的体积分数利用移动最小二乘法计算组分的速度梯 度。
[0071] 可选地,在本发明基于SPH方法的多组分固体和流体模拟方法的另一实施例中,所 述S3,包括:
[0072] 根据每个组分的速度梯度,利用弹塑性体的本构方程计算得到应力张量,之后求 解所述应力张量的偏量部分,得到弹塑性体每个组分的偏应力张量,最后使用von Mises准 则对所述弹塑性体每个组分的偏应力张量进行修正;或者
[0073] 根据每个组分的速度梯度,利用亚塑性体的本构方程计算得到应力张量,之后求 解所述应力张量的偏量部分,得到颗粒物质每个组分的偏应力张量,最后使用化UCker- Prager准则对所述颗粒物质每个组分的偏应力张量进行修正。
[0074] 可选地,在本发明基于SPH方法的多组分固体和流体模拟方法的另一实施例中,所 述S4,包括:
[0075] 对于步骤S3得到的固体独有的偏应力张量,通过体积分数的加权平均得到SPH粒 子的偏应力张量。
[0076] 可选地,在本发明基于SPH方法的多组分固体和流体模拟方法的另一实施例中,所 述S5,包括:
[0077] 对于可混粒子,通过体积分数加权计算粒子之间的摩擦力和黏滞力;或者
[0078] 对于不可混粒子,直接使用设定好的粘滞系数计算粒子之间的摩擦力和黏滞力;
[0079] 其中,所述S6,包括:
[0080] 根据所述偏应力张量、摩擦力和粘滞力大小进行多组分物理模拟。
[0081] 如图2所示,本实施例公开一种基于SPH方法的多组分固体和流体模拟系统,包括:
[0082] 第一计算单元I,用于将多组分流体的动量守恒公式中加入固体的偏应力张量的 散度部分,保留压强部分,并计算每个粒子的整体压强;
[0083] 第二计算单元2,用于利用标准的多组分流体计算方法更新体积分数,根据空间中 固体和流体的体积分数W及相对速度计算出每个粒子所有组分的速度梯度;
[0084] 第=计算单元3,用于根据所述速度梯度利用固体的本构方程计算固体的偏应力 张量,并根据屈服准则修正所述偏应力张量;
[0085] 第一修正单元4,用于利用固体的体积分数修正所述偏应力张量;
[0086] 第二修正单元5,用于计算不同粒子之间的粘滞力大小;
[0087] 模拟单元6,用于根据所述偏应力张量和粘滞力大小,利用所述动量守恒公式进行 多组分物理模拟。
[0088] 虽然结合附图描述了本发明的实施方式,但是本领域技术人员可W在不脱离本发 明的精神和范围的情况下做出各种修改和变型,运样的修改和变型均落入由所附权利要求 所限定的范围之内。
【主权项】
1. 一种基于SPH方法的多组分固体和流体模拟方法,其特征在于,包括: 51、 将多组分流体的动量守丨旦公式中加入固体的偏应力张量的散度部分,保留压强部 分,并计算每个粒子的整体压强; 52、 利用标准的多组分流体计算方法更新体积分数,根据空间中固体和流体的体积分 数以及相对速度计算出每个粒子所有组分的速度梯度; 53、 根据所述速度梯度利用固体的本构方程计算固体的偏应力张量,并根据屈服准则 修正所述偏应力张量; 54、 利用固体的体积分数修正所述偏应力张量; 55、 计算不同粒子之间的粘滞力大小; 56、 根据所述偏应力张量和粘滞力大小,利用所述动量守恒公式进行多组分物理模拟。2. 根据权利要求1所述的基于SPH方法的多组分固体和流体模拟方法,其特征在于,所 述Sl,包括: 通过标准SPH的状态方程计算每个粒子的整体压强。3. 根据权利要求1所述的基于SPH方法的多组分固体和流体模拟方法,其特征在于,所 述S2,包括: 根据SPH粒子中的每个组分相对于粒子总体速度的相对速度加上粒子的总体速度得到 的每个组分的绝对速度,以及固体的体积分数利用移动最小二乘法计算组分的速度梯度。4. 根据权利要求1所述的基于SPH方法的多组分固体和流体模拟方法,其特征在于,所 述S3,包括: 根据每个组分的速度梯度,利用弹塑性体的本构方程计算得到应力张量,之后求解所 述应力张量的偏量部分,得到弹塑性体每个组分的偏应力张量,最后使用von Mises准则对 所述弹塑性体每个组分的偏应力张量进行修正;或者 根据每个组分的速度梯度,利用亚塑性体的本构方程计算得到应力张量,之后求解所 述应力张量的偏量部分,得到颗粒物质每个组分的的偏应力张量,最后使用Drucker-Prager准则对所述颗粒物质每个组分的偏应力张量进行修正。5. 根据权利要求1所述的基于SPH方法的多组分固体和流体模拟方法,其特征在于,所 述S4,包括: 对于步骤S3得到的固体独有的偏应力张量,通过体积分数的加权平均得到SPH粒子的 偏应力张量。6. 根据权利要求1所述的基于SPH方法的多组分固体和流体模拟方法,其特征在于,所 述S5,包括: 对于可混粒子,通过体积分数加权计算粒子之间的摩擦力和黏滞力;或者 对于不可混粒子,直接使用设定好的粘滞系数计算粒子之间的摩擦力和黏滞力; 其中,所述S6,包括: 根据所述偏应力张量、摩擦力和粘滞力大小,利用所述动量守恒公式进行多组分物理 模拟。7. -种基于SPH方法的多组分固体和流体模拟系统,其特征在于,包括: 第一计算单元,用于将多组分流体的动量守恒公式中加入固体的偏应力张量的散度部 分,保留压强部分,并计算每个粒子的整体压强; 第二计算单元,用于利用标准的多组分流体计算方法更新体积分数,根据空间中固体 和流体的体积分数以及相对速度计算出每个粒子所有组分的速度梯度; 第三计算单元,用于根据所述速度梯度利用固体的本构方程计算固体的偏应力张量, 并根据屈服准则修正所述偏应力张量; 第一修正单元,用于利用固体的体积分数修正所述偏应力张量; 第二修正单元,用于计算不同粒子之间的粘滞力大小; 模拟单元,用于根据所述偏应力张量和粘滞力大小,利用所述动量守恒公式进行多组 分物理模拟。
【文档编号】G06F17/50GK105956262SQ201610280000
【公开日】2016年9月21日
【申请日】2016年4月28日
【发明人】胡事民, 严枭, 江云涛, 李晨锋, 拉尔夫·罗伯特·马丁
【申请人】清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1