一种用于复杂结构体的流体仿真方法与流程
未命名
07-22
阅读:109
评论:0
1.本发明属于流体物理测试领域,尤其涉及一种用于复杂结构体的流体仿真方法。
背景技术:
2.在利用格子玻尔兹曼方法(lattice boltzmann method,lbm)方法处理流体问题时,经常会遇到复杂边界,即边界具有较为复杂的几何结构。研究者们提出了多种方法去处理具有复杂结构边界的流固耦合问题,如浸入边界法、基于bb(bounce-back)方法的sbb(simple bounce-back)和ibb(interpolated bounce-back)方法等。但对于涉及到动边界的流体流动问题,大多数的边界方法都会由于边界的运动而引起流体质量的不守恒,进而导致虚假压力波动,最终影响lbm的数值模拟精度。针对上述情况,研究者们提出了一些可以提高动边界问题模拟精度的边界方法,如psm(partially saturated method)和基于浸入边界法的imb(immersed moving boundary)。其思路是通过引入网格的固含率对格子玻尔兹曼方程中的碰撞项进行修正,以保证流体的质量守恒,避免流体的虚假压力波动,进而提高lbm的数值模拟精度。
3.如上文所述,在采用psm、imb等方法处理边界问题时,必须要确定每个流体网格的固含率。对于一些形状较为简单的边界,如二维空间中的圆形边界,可直接计算出固含率的理论值。而对于几何结构更为复杂的固体边界,研究人员过去多是采用数值积分方法计算网格的固含率,但相关研究的几何结构仍然较为简单,如三维空间中的球形边界。上述现象与数值积分方法的计算效率较低有关,导致涉及到边界几何结构十分复杂的lbm数值模拟的计算效率较难接受。
4.学术文献fast computation of accurate sphere-cube intersection volume[j].engineering computations,1984.该文献公开了多种用于计算大球形颗粒的体积映射到具体较小网格单元的笛卡尔网格中,还提出了一种更有效的线性关系,并将其包含在此比较中从而优化了计算过程。但是文中所公开的所有估计方法都是存在较大的误差,且针对每个边界处都需要重复进行迭代计算,从而需要消耗大量时间。
[0005]
学术文献a coupled 3-dimensional bonded discrete element and lattice boltzmann method for fluid-solid coupling in cohesive geomaterials[j].international journal for numerical and analytical methods in geomechanics,2018,42.该文献一种三维结合离散元和晶格玻尔兹曼方法,用于求解岩土材料中复杂的流-固耦合问题。为了在理论和应用之间建立桥梁,提出了一种三维浸入式移动边界格式算法来求解流体-颗粒相互作用。但该方法在求解边界过程中仍需要重复计算,由于每个点的结果都是独立迭代计算获得,因此最终结果的准确度并不高。
技术实现要素:
[0006]
本发明的目的是在于找到一种可以准确、高效求解出复杂结构体与长方体网格相交部分的体积的算法。
[0007]
为了实现本发明的发明目的,本发明提供了一种用于复杂结构体的流体仿真方法,包括以下步骤:
[0008]
针对复杂结构体,构建由多个三角面单元构成的多面体模型。
[0009]
将所述多面体模型放置于由多个方形网格组成的流体测试空间中,并判断所述多面体模型与流体测试空间的位置关系,以获得与单一方形网格体积相等的第一相交体和与单一方形网格部分相交的第二相交体。
[0010]
针对所述第二相交体,构建由多个三角面单元构成的相交多面体以及所述相交多面体中所有三角面单元的外法线方向。
[0011]
基于预设的投影基面,以同一投影方向对所有相交多面体中的三角面单元进行投影操作,获得每个三角面单元对应的五面体。
[0012]
根据所述外法线与投影方向对所有五面体进行合并处理,以获得所有相交多面体的估计体积。
[0013]
根据所述第一相交体的体积与所述估计体积相加,以获得所述复杂结构体的空间体积参数,并在所述流体测试空间中对所述复杂结构体进行流体仿真,以获得对应的仿真结果。
[0014]
本发明通过判断相交体各面的位置关系,将原来复杂的相交多面体转换为更为简单的五面体进行计算,从而在简化体积估计过程同时保证最终结果的准确度。
[0015]
具体的,所述相交多面体基于多面体模型与方形网格面形成的横截面,以及与方形网格面相交的多个相交面组成。
[0016]
具体的,所述横截面的获取过程包括以下步骤:
[0017]
首先确定方形网格面与多面体模型各面相交后所形成的边,选择其中一条边作为第一横截面边,并以所述第一横截面边的两个端点为a、b,随后选择包含端点b且不与边第一横截面边重合的边bc边作为横截面的第二条横截面边,重复连接找点和连接过程直至获得完整的横截面。
[0018]
具体的,所述多个相交面的获取过程包括以下步骤:
[0019]
首先任意选择相交面的一条边作为第一相交面边,随后将所述第一相交面边的一个端点与相交面的其他顶点相连,并确定每条连线与第一相交面边的夹角,即夹角越小则顶点的顺序越靠前,按顺序将相交面所有顶点依次相连即可确定相交面的形状。
[0020]
具体的,所述合并处理具体包括:
[0021]
当投影方向与外法线方向的夹角小于阈值,则对应三角面的五面体体积为正值。
[0022]
当投影方向与外法线方向的夹角大于阈值,则对应三角面的五面体体积为负值。
[0023]
当投影方向与外法线方向的夹角等于阈值,则对应三角面的五面体体积为零。
[0024]
具体的,所述阈值为90度。
[0025]
具体的,若相交多面体的三角面与方形网格单面相交,则仅需对投影基面的相对面进行投影获得对应的五面体体积。
[0026]
具体的,若相交多面体为中空结构,则需要判断三角面的内心与多面体模型的位置关系:
[0027]
若所述内心位于多面体模型中则三角面的五面体积为正值。
[0028]
若所述内心位于多面体模型外则三角面的五面体积为负值。
[0029]
与现有技术相比,本发明的有益效果:
[0030]
通过判断相交体各面的位置关系,将原来复杂的相交多面体转换为更为简单的五面体进行计算,从而解决了复杂结构与长方体网格相交时如何准确、高效地求解相交体体积的问题,可在保证计算精度的同时大幅提升计算效率。
附图说明
[0031]
图1为求解复杂结构与长方体网格相交时相交体体积的算法流程图;
[0032]
图2为实施例1中四面体与长方体网格相交示意图;
[0033]
图3为实施例1中相交体上的三角面投影示意图;
[0034]
图4为实施例2中球与长方体网格相交的示意图;
[0035]
图5为实施例3中汽车后视镜模型示意图;
[0036]
图6为实施例3中本算法与数值积分法所计算体积比偏差对比图;
[0037]
图7为实施例4中圆柱绕流示意图;
[0038]
图8为实施例4中雷诺数re=10时的速度分布云图;
[0039]
图9为实施例4中雷诺数re=70时的速度分布云图;
[0040]
图10为实施例4中雷诺数re=100时的速度分布云图;
[0041]
图11为实施例5中曳力系数对比图。
具体实施方式
[0042]
为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,以下实施结合附图对本发明一种求解复杂结构与长方体网格相交体积的算法具体阐述。
[0043]
如图1所述,一种用于复杂结构体的流体仿真方法,包括以下步骤:
[0044]
将复杂结构体转换为由三角面单元构成的多面体模型。
[0045]
判断该多面体模型与方体网格的位置关系,若网格在多面体模型外,则相交体的体积为0,若网格在多面体内,则相交体的体积即为网格的体积;若网格与多面体相交,则通过下述投影法得到该相交体的体积。
[0046]
相交体的面可分为两种情况,第一种为基于多面体模型中单个三角面所获得的相交面,包括三角面与长方体网格相交所形成的面以及完全在网格内的三角面;另一种为基于网格单个面所获得的横截面,包括网格单个面与多面体相交所形成的面以及完全在多面体内的横截面。
[0047]
基于多面体模型中单个三角面所获得的相交面:其判断过程为:首先判断原多面体模型的每个三角面与网格的位置关系,若三角面在网格外,则不予考虑。
[0048]
若三角面在网格内,则该三角面即为相交体的一个面;若三角面与网格相交,则需确定相交面的形状。
[0049]
对于相交的情况,首先任意选择相交面的一条边;随后,将该边的一个端点与相交面的其他顶点相连,并确定每条连线与这条边的夹角,夹角越小则顶点的顺序越靠前,最后按顺序将相交面所有顶点依次相连即可确定相交面的形状。
[0050]
基于网格单个面所获得的横截面:首先判断网格的面与多面体的位置关系,若网格面在多面体外,则不予考虑。
[0051]
若网格面在多面体内,则该网格面即为相交体的一个面。
[0052]
若网格面与多面体相交则需确定相交面的形状,对于相交的情况,首先确定网格面与多面体各面相交后所形成的边,选择其中的一条边为相交面的第一条边,并假设这条边两个端点分别为a、b;随后,选择包含端点b且不与边ab重合的边bc作为相交面的第二条边;接着,重复上述步骤确定相交面的其他边,如与边ab和边bc均不重合的边cd为相交面的第三条边;最后,将所有的边按上述顺序相连,即可确定相交面的形状。这里需要注意,上述步骤完成后可能还存在未被上述相交面所包含的边,这表明此网格面与多面体相交产生多个相交面,此时还需确定其他的相交面形状,其确定过程与上述基于多面体模型中单个三角面所获得的相交面的步骤相同,此处不再赘述。
[0053]
将相交体重新划分成新的由三角面单元组成的多面体,并得到所有三角面单元的外法线方向。
[0054]
将所有的三角面单元向长方体网格的一个面进行投影,该投影面视为网格的底面,其与该底面相对的网格面被称作网格的顶面。
[0055]
三角面单元向网格底面做投影,其投影体为一个五面体。求出五面体的体积,将所有三角面单元投影得到的五面体的体积相加,即为相交体体积。
[0056]
为了更改好的说明上述的技术方案,故此处通过四面体与长方体网格相交的情况进一步说明。
[0057]
实施例1
[0058]
如图2和图3所示,其中图2(a)为四面体amnq与长方体网格相交的示意图,图2(b)为二者相交后得到的相交体。相交体的面可分为两类,第一类是基于原多面体中的单个三角面所获得的面,包括四面体中的面amn与网格相交后得到的面acde,即图3(a)所示;四面体中的面amq与网格相交后得到的面aefh,即图3(b)所示;四面体中的面anq与网格相交后所得到的面acbh,即如图3(c)所示。第二类是基于长方体网格的单个面所获得的面,如图3(d)所示,由网格的上表面与四面体amnq相交后得到的面bgfh。
[0059]
对于第一类相交的多边形面(见图3(a)~(c)),首先将多边形划分成三角面,如图3(a)将相交得到的多边形acde划分成三角面acd与三角面ade,图3(b)将相交得到的多边形aefh划分成三角面aef与三角面afh,图3(c)将相交得到的多边形acbh划分为三角面acb与三角面abh,并确定每个面的外法向量n。将这些三角面往网格的底面做投影,计算投影方向与这个面的外法向量n的夹角,若夹角小于90度,则三角面的投影体积为负,如图3(a)所示;若夹角大于90度,则面的投影体积为正,如图3(b)、(c)所示。
[0060]
对于第二类相交的多边形面(见图3(d)),同样先将多边形面划分成三角面,即三角面gfh和三角面ghb,随后判断三角面内心的位置,此案例中三角面gfh和三角面ghb的内心都在四面体的内部,所以两个三角面的投影体积均为正。最后,将图3所有的投影体体积相加即为相交体的体积。
[0061]
实施例2
[0062]
如图4所示,为长方体网格与球体相交的示意图,图中相交体的体积均可直接计算出其理论值,如图4(a)和(b)相交体的体积均可通过球缺体积公式求得、图4(c)的相交体积为球体积的四分之一,随后把其理论值与数值解进行对比以验证本算法的精度。图4(a)、图4(b)、图4(c)中相交体占网格的体积比的理论值分别为0.081812、0.441776、0.065450,本
发明所提出的算法计算得到的体积比分别为0.081806、0.441771、0.065447。通过对比可以看出,本算法所得到的解与理论值间存在一定的误差,这主要是因为在本算法中复杂结构均是由三角形面元组合而成,因此本算法中的球形结构始终都会与真实的球形结构间存在一定的偏差,进而引起上述误差。但就总体而言,本算法所得到的数值解相对于理论值的误差都非常小,其相对误差均小于0.001%,可以忽略不计。综上所述,本发明所提出的算法对于求解复杂结构与长方体网格相交时相交体的体积具有非常高的精度。
[0063]
实施例3
[0064]
为测试本发明中数值算法的计算效率,并进一步测试其在处理复杂结构时的计算精度,此案例选择了具有复杂几何结构的汽车后视镜进行进一步验证。
[0065]
如图5所示,其中图5(a)为汽车后视镜模型,图5(b)为用9
×
15
×
15个长方体网格对后视镜模型划分的示意图。
[0066]
随后,我们分别通过数值积分法与本发明所提出的算法计算每个长方体网格中后视镜模型所占的体积比,选用的开发应用平台为vc++、硬件平台的处理器型号为:inter(r)core(tm)i7-8565u cpu@1.80ghz。
[0067]
结果如图6所示,展现具有相交体积的网格通过两种算法计算对体积比的偏差结果,两种方法所获得的结果基本一致,两者的平均偏差仅为0.0037%、最大偏差仅为0.0423%。但两种算法的计算效率存在明显的差异,数值积分法所需的计算时间约为157秒,而本算法仅需约20秒。综上所述,本算法可在保证计算精度的同时大幅提升计算效率。
[0068]
实施例4
[0069]
将本发明中所提出的数值算法应用到计算流体力学领域经典绕流实验中,如图7所示,以此进一步验证本算法在计算流体力学中的应用。
[0070]
首先,分别采用雷诺数re=10、70、100的圆柱绕流进行定性模拟,模拟结果如图8~10所示,模拟结果与实际的绕流结果基本一致。
[0071]
在实际的绕流现象中,流体绕流所形成的漩涡与流场的雷诺数re有着密切关联。
[0072]
如图8所示,当雷诺数re=10时,圆柱前后没有出现较大的漩涡,流场运动以层流为主,绕流形态大致呈对称分布,在障碍物圆柱背风侧出现流动分离现象,有少部分死水区域。
[0073]
如图9所示,在re=70时,障碍物圆柱背后的流动分离现象更加明显,死水区域拉长。分离后的流体在障碍物的下游进行汇合并形成一条清晰稳定的涡迹带。
[0074]
如图10所示,在re=100时,沿障碍物表面流动的流体在流动分离后很快在死水区域形成漩涡,低雷诺数时的涡迹带消失不见,转变成一个个交错排列的漩涡所形成的卡门涡街。
[0075]
实施例5
[0076]
上述的圆柱绕流模拟试验通过对流场的速度云图结果进行定性分析,初步验证了本算法在流场模拟应用中的可行性。本案例将进一步通过计算流场内不同形状的障碍物(球、椭球、立方体)绕流所产生的曳力系数cd来定量的验证其在流场计算中的准确性,绕流过程的障碍物体积都为1m3,椭球的长短半径的比值为2。通过本算法所改进的psm方法模拟得到的不同雷诺数下的曳力系数值与实际的理论值进行对比验证。
[0077]
具体结果如图11所示,从图中的结果可知在不同形状下,本算法在模拟绕流过程
时的曳力系数结果都与实际的理论值非常接近,符合模拟流体的实际情况。
[0078]
本文结合说明书附图和具体实施例进行阐述只是用于帮助理解本发明的方法和核心思想。本发明所述的方法并不限于具体实施方式中所述的实施例,本领域技术人员依据本发明的方法和思想得出的其他实施方式,同样属于本发明的技术创新范围。本说明书内容不应理解为对本发明的限制。
技术特征:
1.一种用于复杂结构体的流体仿真方法,其特征在于,包括以下步骤:针对复杂结构体,构建由多个三角面单元构成的多面体模型;将所述多面体模型放置于由多个方形网格组成的流体测试空间中,并判断所述多面体模型与流体测试空间的位置关系,以获得与单一方形网格体积相等的第一相交体和与单一方形网格部分相交的第二相交体;针对所述第二相交体,构建由多个三角面单元构成的相交多面体以及所述相交多面体中所有三角面单元的外法线方向;基于预设的投影基面,以同一投影方向对所有相交多面体中的三角面单元进行投影操作,获得每个三面单元对应的五面体;根据所述外法线与投影方向对所有五面体进行合并处理,以获得所有相交多面体的估计体积;根据所述第一相交体的体积与所述估计体积相加,以获得所述复杂结构体的空间体积参数,并在所述流体测试空间中对所述复杂结构体进行流体仿真,以获得对应的仿真结果。2.根据权利要求1所述的用于复杂结构体的流体仿真方法,其特征在于,所述相交多面体基于多面体模型与方形网格面形成的横截面,以及与方形网格面相交的多个相交面组成。3.根据权利要求2所述的用于复杂结构体的流体仿真方法,其特征在于,所述横截面的获取过程包括以下步骤:首先确定方形网格面与多面体模型各面相交后所形成的边,选择其中一条边作为第一横截面边,并以所述第一横截面边的两个端点为a、b,随后选择包含端点b且不与边第一横截面边重合的边bc边作为横截面的第二条横截面边,重复连接找点和连接过程直至获得完整的横截面。4.根据权利要求2所述的用于复杂结构体的流体仿真方法,其特征在于,所述多个相交面的获取过程包括以下步骤:首先任意选择相交面的一条边作为第一相交面边,随后将所述第一相交面边的一个端点与相交面的其他顶点相连,并确定每条连线与第一相交面边的夹角,即夹角越小则顶点的顺序越靠前,按顺序将相交面所有顶点依次相连即可确定相交面的形状。5.根据权利要求1所述的用于复杂结构体的流体仿真方法,其特征在于,所述合并处理具体包括:当投影方向与外法线方向的夹角小于阈值,则对应三角面的五面体体积为正值;当投影方向与外法线方向的夹角大于阈值,则对应三角面的五面体体积为负值;当投影方向与外法线方向的夹角等于阈值,则对应三角面的五面体体积为零。6.根据权利要求5所述的用于复杂结构体的流体仿真方法,其特征在于,所述阈值为90度。7.根据权利要求5所述的用于复杂结构体的流体仿真方法,其特征在于,若相交多面体的三角面与方形网格单面相交,则仅需对投影基面的相对面进行投影获得对应的五面体体积。8.根据权利要求5所述的用于复杂结构体的流体仿真方法,其特征在于,若相交多面体为中空结构,则需要判断三角面的内心与多面体模型的位置关系:
若所述内心位于多面体模型中则三角面的五面体积为正值;若所述内心位于多面体模型外则三角面的五面体积为负值。
技术总结
本发明公开了一种用于复杂结构体的流体仿真方法,包括以下步骤:将复杂结构体转换为由三角面单元构成的多面体模型;判断该多面体模型与长方体网格的位置关系;将相交体重新划分成新的由三角面单元组成的多面体,并得到所有三角面单元的外法线方向;将所有的三角面单元向长方体网格的一个面进行投影;三角面单元向网格底面做投影,其投影体为一个五面体,将所有三角面单元投影得到的五面体的体积相加,即为相交体体积。本发明的方法用于解决复杂结构与长方体网格相交时如何准确、高效地求解相交体体积的问题,可在保证计算精度的同时大幅提升计算效率。提升计算效率。提升计算效率。
技术研发人员:李响 佟庆 赵永志 周犊 马华庆 刘子寒 汪志雄
受保护的技术使用者:中广核核电运营有限公司
技术研发日:2023.04.25
技术公布日:2023/7/21
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
