CN115796083B - 一种直升机流场仿真方法、装置、设备及可读存储介质 - Google Patents
一种直升机流场仿真方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN115796083B CN115796083B CN202310128486.6A CN202310128486A CN115796083B CN 115796083 B CN115796083 B CN 115796083B CN 202310128486 A CN202310128486 A CN 202310128486A CN 115796083 B CN115796083 B CN 115796083B
- Authority
- CN
- China
- Prior art keywords
- grid
- flow field
- helicopter
- control parameters
- processor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T90/00—Enabling technologies or technologies with a potential or indirect contribution to GHG emissions mitigation
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种直升机流场仿真方法、装置、设备及可读存储介质,属于流场仿真领域,用于对直升机的流场进行仿真。考虑到块自适应型的计算网格能够支持高阶离散格式的数值模拟,且支持多种分辨率的块自适应性计算网格能够更加精确的表达直升机流场中存在的涡系结构,因此本申请中首先为目标直升机构造块自适应型的计算网格,然后确定出各个计算网格的边界面属性参数,并获取目标直升机进行多学科仿真所需要的控制参数,最后便可根据属性参数以及控制参数,基于构造的计算网格对目标直升机的非定常流场进行高阶离散格式的数值模拟,能够得到目标直升机精度较高的非定常流场,有利于提升直升机飞行品质,从而提升安全性以及用户体验。
Description
技术领域
本发明涉及流场仿真领域,特别是涉及一种直升机流场仿真方法,本发明还涉及一种直升机流场仿真装置、设备及可读存储介质。
背景技术
直升机是一种以旋翼为动力、能够垂直起降和长时间空中悬停的飞行器,它以优良的机动性与安全性,在军事和民用领域得到了日趋广泛的应用,与固定翼飞机不同,直升机的旋翼与机身之间的相对运动在空间中诱导了更加复杂的非定常流场,特别是旋翼尾迹的演化过程直接影响着直升机飞行品质的提升,因此需要对直升机进行精确的流场仿真,然而现有技术中缺少一种精确的直升机流场的仿真方法,从而阻碍了直升机飞行品质的提升,降低了安全性以及用户体验。
因此,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。
发明内容
本发明的目的是提供一种直升机流场仿真方法,基于块自适应性的计算网格,本申请能够仿真得到目标直升机精度较高的非定常流场,有利于提升直升机飞行品质,从而提升安全性以及用户体验;本发明的另一目的是提供一种直升机流场仿真装置、设备及可读存储介质,基于块自适应性的计算网格,本申请能够仿真得到目标直升机精度较高的非定常流场,有利于提升直升机飞行品质,从而提升安全性以及用户体验。
为解决上述技术问题,本发明提供了一种直升机流场仿真方法,包括:
为目标直升机构造块自适应型的计算网格并确定各个所述计算网格的边界面的属性参数;
获取所述目标直升机进行多学科数值仿真所需要的控制参数;
根据所述属性参数以及所述控制参数,基于所述计算网格对所述目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的所述目标直升机的非定常流场。
优选地,所述计算网格包括贴体网格以及背景网格。
优选地,所述根据所述属性参数以及所述控制参数,基于所述计算网格对所述目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的所述目标直升机的非定常流场具体为:
将所述贴体网格以及所述背景网格进行剖分,得到计算单元数减小的所述贴体网格以及所述背景网格;
将所有的所述贴体网格以及所述背景网格,分配至计算集群提供的多个处理器中;
控制各个所述处理器根据所述属性参数以及所述控制参数,基于所述计算网格对所述目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的所述目标直升机的非定常流场。
优选地,所述将所述贴体网格以及所述背景网格进行剖分,得到计算单元数减小的所述贴体网格以及所述背景网格具体为:
利用复合区域分解法将所述贴体网格以及所述背景网格进行剖分,得到计算单元数减小的所述贴体网格以及所述背景网格。
优选地,所述控制各个所述处理器根据所述属性参数以及所述控制参数,基于所述计算网格对所述目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的所述目标直升机的非定常流场具体为:
控制所有所述处理器中的主处理器读入所述控制参数;
控制所述主处理器将所述控制参数压缩;
控制所述主处理器以广播的形式将压缩后的所述控制参数共享至其他所有所述处理器;
控制各个所述处理器根据所述控制参数以及自身被分配的所述计算网格的所述属性参数,使用高阶离散格式模拟自身被分配的所述计算网格在预设时长内的运动情况;
将所有所述计算网格在所述预设时长内的运动情况作为所述目标直升机的非定常流场。
优选地,所述控制所有所述处理器中的主处理器读入所述控制参数之后,所述控制所述主处理器将所述控制参数压缩之前,该直升机流场仿真方法还包括:
控制所述主处理器存储读入的所述控制参数,并根据各个所述控制参数的存储地址生成检索词与存储地址的对应关系;
所述控制所述主处理器将所述控制参数压缩具体为:
控制所述主处理器将所述控制参数以及所述对应关系进行压缩;
所述控制所述主处理器以广播的形式将压缩后的所述控制参数共享至其他所有所述处理器具体为:
控制所述主处理器以广播的形式将压缩后的所述控制参数以及所述对应关系共享至其他所有所述处理器,以便各个所述处理器根据检索词以及所述对应关系查询待用的所述控制参数。
优选地,所述控制各个所述处理器根据所述属性参数以及所述控制参数,基于所述计算网格对所述目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的所述目标直升机的非定常流场具体为:
控制各个所述处理器通过重叠网格装配技术将自身被分配的所述贴体网格以及所述背景网格均映射为多面体非结构网格;
控制各个所述处理器根据所述属性参数以及所述控制参数,基于所述多面体非结构网格对所述目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的所述目标直升机的非定常流场。
为解决上述技术问题,本发明还提供了一种直升机流场仿真装置,包括:
构造模块,用于为目标直升机构造块自适应型的计算网格并确定各个所述计算网格的边界面的属性参数;
获取模块,用于获取所述目标直升机进行多学科数值仿真所需要的控制参数;
数值模拟模块,用于根据所述属性参数以及所述控制参数,基于所述计算网格对所述目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的所述目标直升机的非定常流场。
为解决上述技术问题,本发明还提供了一种直升机流场仿真设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上所述直升机流场仿真方法的步骤。
为解决上述技术问题,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述直升机流场仿真方法的步骤。
本发明提供了一种直升机流场仿真方法,考虑到块自适应型的计算网格能够支持高阶离散格式的数值模拟,且支持多种分辨率的块自适应性计算网格能够更加精确的表达直升机流场中存在的涡系结构,因此本申请中首先为目标直升机构造块自适应型的计算网格,然后确定出各个计算网格的边界面属性参数,并获取目标直升机进行多学科仿真所需要的控制参数,最后便可根据属性参数以及控制参数,基于构造的计算网格对目标直升机的非定常流场进行高阶离散格式的数值模拟,能够得到目标直升机精度较高的非定常流场,有利于提升直升机飞行品质,从而提升安全性以及用户体验。
本发明还提供了一种直升机流场仿真装置、设备及计算机可读存储介质,具有如上直升机流场仿真方法相同的有益效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种直升机流场仿真方法的流程示意图;
图2为本发明提供的一种控制参数的存储结构与排序准则图;
图3为本发明提供的一种多学科数值分析模块的组合结构图;
图4为本发明提供的一种重叠网格装配模块的结构示意图;
图5为本发明提供的一种直升机流场仿真装置的结构示意图;
图6为本发明提供的一种直升机流场仿真设备的结构示意图。
具体实施方式
本发明的核心是提供一种直升机流场仿真方法,基于块自适应性的计算网格,本申请能够仿真得到目标直升机精度较高的非定常流场,有利于提升直升机飞行品质,从而提升安全性以及用户体验;本发明的另一核心是提供一种直升机流场仿真装置、设备及可读存储介质,基于块自适应性的计算网格,本申请能够仿真得到目标直升机精度较高的非定常流场,有利于提升直升机飞行品质,从而提升安全性以及用户体验。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明提供的一种直升机流场仿真方法的流程示意图,该直升机流场仿真方法包括:
S101:为目标直升机构造块自适应型的计算网格并确定各个计算网格的边界面的属性参数;
具体的,考虑到如上背景技术中的技术问题,又结合考虑到块自适应型的计算网格能够支持高阶离散格式的数值模拟,且支持多种分辨率的块自适应性计算网格能够更加精确的表达直升机流场中存在的涡系结构,因此本申请欲基于块自适应型计算网格对目标直升机的非定常流场进行仿真模拟,以提升模拟的直升机的非定常流场的精度,因此本步骤中首先可以为目标直升机构造块自适应型的计算网格,并确定各个计算网格的边界面的属性参数,以便将其作为后续步骤的数据基础进行直升机非定常流场的仿真。
其中,本发明实施例中的计算网格可以为多种类型,例如可以为笛卡尔网格等,本发明实施例在此不做限定。
S102:获取目标直升机进行多学科数值仿真所需要的控制参数;
具体的,因为直升机流场仿真过程需要多个学科计算模型的参与,涉及的控制参数较多,因此本发明实施例中可以获取目标直升机进行多学科数值仿真所需要的控制参数,以便将其作为后续步骤的数据基础进行直升机流场的精确仿真。
S103:根据属性参数以及控制参数,基于计算网格对目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的目标直升机的非定常流场。
具体的,在有了计算网格及其边界面的属性参数以及直升机多学科数值仿真所需的控制参数后,便可以根据属性参数以及控制参数,基于计算网格对目标直升机的非定常流场进行数值模拟,在这里,由于块自适应型的计算网格能够支持高阶离散格式的数值模拟,因此本步骤中进行高阶离散格式的数值模拟可以提升仿真精度。
其中,非定常流场指的是随着时间变化的流场,这也符合直升机流场的特性。
本发明提供了一种直升机流场仿真方法,考虑到块自适应型的计算网格能够支持高阶离散格式的数值模拟,且支持多种分辨率的块自适应性计算网格能够更加精确的表达直升机流场中存在的涡系结构,因此本申请中首先为目标直升机构造块自适应型的计算网格,然后确定出各个计算网格的边界面属性参数,并获取目标直升机进行多学科仿真所需要的控制参数,最后便可根据属性参数以及控制参数,基于构造的计算网格对目标直升机的非定常流场进行高阶离散格式的数值模拟,能够得到目标直升机精度较高的非定常流场,有利于提升直升机飞行品质,从而提升安全性以及用户体验。
在上述实施例的基础上:
作为一种优选的实施例,计算网格包括贴体网格以及背景网格。
具体的,考虑到贴体网格可以针对直升机上各部件表面附近的空气流动情况进行精确分析,而背景网格则可以针对直升机所占据的较大体积的空间内,距离直升机表面较远位置的空气流动情况进行表达,因此本发明实施例中的计算网格包括贴体网格以及背景网格两种,从而有利于对直升机流场进行更精确的仿真模拟。
具体的,构造贴体网格以及背景网格的具体步骤如下:
步骤11:在独立部件周围生成初始的贴体自适应网格。
步骤111:生成贴体自适应网格的基本模板。在直升机上具有相对运动关系的各个部件(如直升机机身、主旋翼与尾桨的各个叶片、起落架等)周围,本发明实施例构造一个或多个子区域作为网格的基本模板,不同子区域依对接关系组合在一起。为精确模拟直升机外流场的粘性效应与涡演化过程,本发明实施例使用几何尺度各向异性的子区域集合构造边界层区域的基本模板。
步骤112:在基本模板的每个子区域上生成初始的八叉树结构。在步骤111中,基本模板的每个子区域将作为局部几何自适应区域进行更细致的剖分以生成求解器所需的计算单元。设置剖分控制参数ns,将子区域的每个棱边等分为ns段。需要注意的是,ns必须为偶数,这在后续的几何自适应过程中能够避免悬挂网格点在对接边界交错出现的异常。首先遍历子区域全体,根据张量积运算,在其上生成初始计算单元。然后,使用只含根结点的八叉树结构存储计算单元的几何数据,基本模板上的八叉树集合即组成森林。
步骤113:计算并存储相邻子区域的对接关系。在贴体自适应网格的基本模板上,相邻子区域边界处的分割线走向在很多情况下是不一致的,而是存在置换关系,所以本发明实施例使用置换群结构对此进行存储。
步骤12:在用户设定的空间矩形体区域上生成初始的背景自适应网格。
步骤121:设定矩形体的空间覆盖范围。当步骤11完成后,本发明实施例设定一个足够大的矩形体区域覆盖直升机全体部件网格的基本模板,该矩形体各表面法向与坐标轴保持一致,其参数记为{xmin,ymin,zmin,xmax,ymax,zmax},即每个坐标方向上投影的上下界。在当前步骤中,“足够大”含有两方面的要求:(1)在直升机流场仿真过程中,矩形体需要完全包含各部件网格的空间运动轨迹。(2)不考虑地面效应时,矩形体各表面距离直升机质心足够远,它们皆作为远场边界条件;否则,进一步指定矩形体底面为固壁边界。
步骤122:生成背景自适应网格的基本模板。因为本发明实施例中,背景网格为单一的矩形区域,所以该计算模板上使用单一的八叉树结构进行内存管理。当前步骤下,在初始化根结点的基础上,继续生成若干层叶子结点,以使相应空间区域的几何尺度接近贴体网格基本模板上最小子区域的几何尺度。
步骤123:对步骤122中八叉树叶子结点对应的空间区域进行均匀切割。因为在步骤121中,对于具体的直升机仿真问题,用户指定的空间矩体在各坐标轴上的投影长度一般是不相等的,所以经过步骤122的剖分过程,每个基本模板即叶子结点子区域对应的空间尺度可以是各向异性的。在块自适应型笛卡尔网格模型中,用户指定3个剖分参数{nx,ny,nz},使子区域沿着坐标轴方向依次等分为nx,ny,nz段。如此,每个计算单元在各方向上的尺度趋于相等,这将有利于后续重叠网格插值精度的提升。与步骤112类似,当前步骤下的nx,ny,nz必须为偶数,这在后续的几何自适应过程中能够避免悬挂网格点在对接边界交错出现的异常。
当然,除了该种具体组成外,计算网格还可以为其他具体形式,本发明实施例在此不做限定。
作为一种优选的实施例,根据属性参数以及控制参数,基于计算网格对目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的目标直升机的非定常流场具体为:
将贴体网格以及背景网格进行剖分,得到计算单元数减小的贴体网格以及背景网格;
将所有的贴体网格以及背景网格,分配至计算集群提供的多个处理器中;
控制各个处理器根据属性参数以及控制参数,基于计算网格对目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的目标直升机的非定常流场。
具体的,考虑到最初构建的贴体网格以及背景网格所包含的的计算单元数量均较多,涉及到的数据量及其对应的计算量非常大,单一的处理器难以承担如此大的计算任务,为了顺利展开仿真模拟,并提升仿真速度,本发明实施例中可以将贴体网格以及背景网格进行剖分,得到计算单元数减小的贴体网格以及背景网格,然后将剖分得到的所有的贴体网格以及背景网格,分配至计算集群提供的多个处理器中,然后利用所有的处理器进行数值模拟,相当于将大任务剖分成了多个小任务,并将这些小任务由多个处理器分别执行,也即利用多个处理器执行数值模拟任务,提升了仿真效率。
作为一种优选的实施例,将贴体网格以及背景网格进行剖分,得到计算单元数减小的贴体网格以及背景网格具体为:
利用复合区域分解法将贴体网格以及背景网格进行剖分,得到计算单元数减小的贴体网格以及背景网格。
具体的,复合区域分解法具有效率高以及精度高的优点。
具体的,利用复合区域分解法剖分计算网格的过程具体可以为:
步骤21:预估各组网格对应的处理器数量。结合高性能计算集群提供的内存资源情况,设流场仿真所用的处理器总数为np,用户为nc个贴体部件网格依次指定p[0],p[1],...,p[nc-1]个处理器,同时为背景网格指定q个处理器,其中,np=p[0]+p[1]+p[nc-1]+q。设每个部件网格允许的计算单元上限依次为pe[0],pe[1],...,pe[nc-1],背景网格允许的计算单元上限为qe,那么预估准则为p[0]:p[1]: ... :p[nc-1]:q充分接近pe[0]:pe[1]: ... :pe[nc-1]:qe,本发明实施例在估算过程中对浮点运算结果进行取整处理。
步骤22:使用贪心算法执行贴体网格基本模板的初始分解。因为步骤11使用多块对接子区域生成自适应网格的基本模板,且每个子区域上初始计算单元总量相同,所以当前步骤仅以子区域为单位进行贪心分配,使每个处理器对应的子区域总量趋于平衡。每个处理器输出一个二进制文件,它们描述了当前处理器上需要存储的多块子区域以及当前处理器上相邻子区域之间、跨处理器相邻子区域之间的链接关系。对于第i个初始的贴体部件网格,贪心算法使之在编号连续的p[i]个处理器上达到负载平衡。
步骤23:结合空间填充曲线执行背景自适应网格的初始分解。在步骤12中,背景自适应网格的基本模板是由一个单独的根结点演化而来,本发明实施例使用空间填充曲线将八叉树存储结构的叶子结点进行整体排序,形成链表结构,结合步骤21中背景网格处理器参数q,使八叉树的叶子结点序列在编号连续的处理器上得以均匀分布。每个处理器对应一个二进制文件的输出,它们描述了当前处理器上需要存储的结点序列的几何数据以及各级子树之间的链接关系。对于初始的背景网格,空间填充曲线分解算法使之在编号连续的q个处理器上达到负载平衡。
当然,除了该方法外,还可以利用其它的方法对贴体网格以及背景网格进行剖分,本发明实施例在此不做限定。
作为一种优选的实施例,控制各个处理器根据属性参数以及控制参数,基于计算网格对目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的目标直升机的非定常流场具体为:
控制所有处理器中的主处理器读入控制参数;
控制主处理器将控制参数压缩;
控制主处理器以广播的形式将压缩后的控制参数共享至其他所有处理器;
控制各个处理器根据控制参数以及自身被分配的计算网格的属性参数,使用高阶离散格式模拟自身被分配的计算网格在预设时长内的运动情况;
将所有计算网格在预设时长内的运动情况作为目标直升机的非定常流场。
具体的,为了简化控制参数的写入方案,本发明实施例中可以首先控制所有处理器中的主处理器读入控制参数,然后控制主处理器将控制参数压缩,接着控制主处理器以广播的形式将压缩后的控制参数共享至其他所有处理器,传输方式较为简洁,且将控制参数进行压缩后进行广播,可以提高传输效率,接着每个处理器只需要根据控制参数以及自身被分配的计算网格的属性参数,使用高阶离散格式模拟自身被分配的计算网格在预设时长内的运动情况即可,最后便可以将所有计算网格在预设时长内的运动情况作为目标直升机的非定常流场。
当然,除了本发明实施例中提供的控制参数的写入方案外,还可以通过其他方式将控制参数分别写入每一个处理器中,本发明实施例在此不做限定。
作为一种优选的实施例,控制所有处理器中的主处理器读入控制参数之后,控制主处理器将控制参数压缩之前,该直升机流场仿真方法还包括:
控制主处理器存储读入的控制参数,并根据各个控制参数的存储地址生成检索词与存储地址的对应关系;
控制主处理器将控制参数压缩具体为:
控制主处理器将控制参数以及对应关系进行压缩;
控制主处理器以广播的形式将压缩后的控制参数共享至其他所有处理器具体为:
控制主处理器以广播的形式将压缩后的控制参数以及对应关系共享至其他所有处理器,以便各个处理器根据检索词以及对应关系查询待用的控制参数。
具体的,考虑到每个处理器在从自身存储的大量控制参数中寻找某个特定的控制参数时,一个好的查询方式能够在很大程度上提高整个仿真工作的效率,因此本发明实施例在控制主处理器读入控制参数后,将读入的控制参数存储起来,并根据各个控制参数的存储地址生成检索词与存储地址的对应关系,随后在广播控制参数的过程中一并将对应关系广播至其他所有处理器,如此一来,对于所有的处理器来说,在其调用某个待用的控制参数时,便可以根据待用的控制参数的检索词以及对应关系查询待用的控制参数,查询效率较高,提高了整体的仿真效率,例如在有了待用的控制参数的检索词后,便可以根据对应关系确定出检索词对应的存储地址,进而从该存储地址中直接获取待用的控制参数。
具体的,一种并行导入多学科数值仿真所需的控制参数的具体实施例为:
其中,因为直升机流场仿真过程需要多个学科计算模型的参与,涉及的控制参数较多。在分布式内存管理模式下,每个处理器上需要完成上述控制参数的存储以及快速查找操作。本发明首先使用主处理器(编号为0)读入控制参数并使用C++标准模板库中的向量容器进行二进制压缩存储,然后调用信息传递接口MPI广播通信接口实现数据共享,最后通过解码将控制参数存储在红黑树上排序,供后续数值模拟器的快速查找。
步骤31:控制参数的读入与存储。在流场仿真开始时,控制参数是以多个ASCII码文本形式存储的,它们的类型分为整型(int),单精度浮点型(float),双精度浮点型(double),字符串型(string)以及这些类型数据组成的数组。图2是本发明提供的一种控制参数的存储结构与排序准则图,它含有4个基本成员:(1)类型type,使用C++有符号整形变量描述(本发明设定int型,float型,型double型,string型参数对应的type值依次为0,1,2,3);(2)检索词word,使用C++字符串变量描述;(3)长度size,使用C++有符号整形变量描述;(4)数据data,使用C++字符数组加以存储。本发明中,直升机流场数值模拟器的主处理器每读入一个控制参数信息时,皆按照上述4个基本成员加以封装成为一个数据对象,这里记为T。本发明规定,控制参数与数据对象的检索词之间构成双射,图2中使用C++内部的字符串变量排序准则(函数对象)定义了数据对象的排序准则。在此条件下,数据对象首地址即可使用C++标准模板库STL中的集合容器set<T>dictionary加以有序存储,进而支持基于检索词的快速查询操作。
步骤32:控制参数的压缩与广播共享。
步骤321:在主处理器上,建立一个空的C++字符型动态容器vector<char>container。
步骤322:遍历步骤31中数据对象所在的集合容器dictionary,把每个数据对象的基本成员信息依次转化为二进制字符序列写入向量容器container中。
步骤323:主处理器上调用向量容器container的成员函数size(),记录其长度信息并用MPI广播函数通知其它处理器。其它处理器分别建立字符型向量容器container,并设定其长度与主处理器上的container保持一致。
步骤324:调用MPI广播函数将主处理器上的container数据分享到其它处理器上的container容器中。
步骤33:控制参数的还原。当步骤32完成后,每个处理器上皆有相同的数据压缩容器container。除主处理器外,各处理器上按照与步骤322相反的操作,依次解码container中的各个数据对象信息。封装后,使用集合容器dictionary对其首地址进行有序存储。当前步骤完成后,每个处理器上都含有相同的控制参数信息以及快速查询结构。
当然,除了该种具体方式外,还可以通过其他方式进行控制参数的查询,本发明实施例在此不做限定。
作为一种优选的实施例,控制各个处理器根据属性参数以及控制参数,基于计算网格对目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的目标直升机的非定常流场具体为:
控制各个处理器通过重叠网格装配技术将自身被分配的贴体网格以及背景网格均映射为多面体非结构网格;
控制各个处理器根据属性参数以及控制参数,基于多面体非结构网格对目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的目标直升机的非定常流场。
具体的,每个处理器在分析自身被分配的各个计算网格的运动情况时,实际上是利用高阶数值模拟器(也即利用高阶离散格式进行计算的模块)进行计算,为了进一步地提高计算效率,本发明实施例中还可以控制各个处理器通过重叠网格装配技术将自身被分配的贴体网格以及背景网格均映射为多面体非结构网格,然后控制各个处理器基于多面体非结构网格对目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的目标直升机的非定常流场,由于处理器在计算过程中能够对统一的“基于多面体非结构的网格”进行计算,因此使用一种高阶数值模拟器(也即同构的高阶求解器)便可以实现,简化了结构的同时提高了求解效率。
为了更好地对本发明实施例进行介绍,请参考图3以及图4,图3为本发明提供的一种多学科数值分析模块的组合结构图,图4为本发明提供的一种重叠网格装配模块的结构示意图,具体的,通过高阶离散格式对直升机非定常流场进行数值模拟的一种具体实施例为:
步骤41:各处理器同步读入网格数据且初始化当前流场。因为非定常仿真过程需要从一个符合物理规律的定常流场出发才能进行时间推进,所以本发明中的直升机流场仿真系统加入了流场续算功能。从步骤3中的控制参数查询系统中快速解析续算开关的状态(也即图3中的续算判断步骤),如果它处于打开状态,那么各处理器根据自身编号从相应文件中同步读入定常场状态下的几何数据以及流场数据(也即图3中的读入当前网格与流场数据);否则,各处理器根据自身编号从步骤2得到的分布式网格文件中读入初始状态下的几何数据并用自由来流条件完成流场初始化(也即图3中的读入初始网格并初始化流场)。
步骤42:(图3中的飞行动力学配平模块)在主处理器上加载直升机飞行动力学配平模型,并把数值计算结果共享到其它处理器上。配平模型主要功能包括旋翼气动性能快速预测、单独旋翼的操纵量配平、单旋翼带尾桨直升机的操纵量配平、复合式共轴刚性双旋翼直升机的操纵量配平,满足单独旋翼和直升机的悬停、前飞状态计算需求,一方面可以快速预测直升机气动性能,另一方面又为直升机CFD(Computational Fluid Dynamics,计算流体动力学)计算提供的必要的操纵量输入条件。
步骤43:(图3中的网格运动-变形-自适应模块)在每个处理器上加载动网格分析模块,数值模拟网格的刚性运动、网格变形以及网格自适应过程。
步骤431:贴体网格刚性运动分析。根据步骤3中用户设定的飞行动力学参数以及步骤42计算出的飞行部件操纵数据,对当前物理时间步上的贴体网格运动过程进行数值求解,得到下一时刻贴体网格所处的空间位置与姿态数据。在当前步骤下,背景网格所在的处理器分组上,网格刚性运动子模块保持静默状态。
步骤432:贴体网格变形分析。根据步骤3中用户设定的结构动力学参数以及部件上气动力数值积分结果,对当前物理时间步上的贴体网格变形过程进行数值求解,得到下一时刻贴体网格点的空间坐标序列。在当前步骤下,背景网格所在的处理器分组上,网格变形分析子模块保持静默状态。
步骤433:网格自适应分析。当步骤431与步骤432完成后,各贴体网格的几何形状、贴体网格之间的相对位置以及贴体网格与背景网格之间的相对位置都发生了改变,同时,当前物理时间步上也存在着流场状态的改变。本发明在每个处理器上,依次加载网格的物理场自适应模型、网格的几何自适应模型和网格的动态负载平衡模型。其中,网格几何自适应模型作用于贴体网格人工边界的邻域部分,它与背景网格与贴体网格皆具有空间交集。在此交集上,背景网格与贴体网格执行局部的几何自适应,以保证后续重叠网格物理场的插值精度。相对于传统的基于单一笛卡尔网格的流场仿真技术,本发明避免了平直计算单元与部件物面边界复杂的几何切割分析,使原始直升机模型的几何精度保持不变。不同于Helios等商用软件的内核系统,本发明在背景网格与贴体网格上同时应用了高阶离散格式,取得了更高的仿真精度。需要指出,网格的动态负载平衡模型的作用域是局部化的,它使每个部件网格以及背景网格在各自的处理器分组上具有大致均布的叶子结点。
步骤44:(图3中的重叠网格装配模块)在每个处理器上加载如图4所示的重叠网格装配模块。当步骤43完成后,贴体网格与背景网格上的单元尺度分布、不同部件贴体网格之间的相对位置以及每个贴体网格与背景网格之间的相对位置皆发生变化,而且需要确定不同网格之间物理场信息的传递位置与数据拟合。本发明使用附图4所示的重叠网格装配模块完成这一过程。
步骤441:在每个处理器上将自适应网格数据结构导入如图4的重叠网格装配模块。如图4所示,本发明的重叠网格装配模块针对贴体自适应网格与背景自适应网格数据结构的特点,分别提供了不同的接口。如果当前处理器上存储的是贴体网格,那么仅调用贴体自适应网格输入接口,否则仅调用背景自适应网格输入接口。在不同的处理器上,当前步骤的执行过程是同步的。
步骤442:在每个处理器上将自适应网格映射成多面体非结构网格。因为贴体网格与背景网格皆由八叉树结构进行存储,它为自动化的重叠挖洞与流场插值过程带来了极大的不便,所以本发明为两种网格类型设计了不同的图映射器。如附图4所示,如果当前处理器上存储的是贴体网格,那么仅调用贴体自适应网格图映射器,否则仅调用背景自适应网格图映射器。各处理器上同步执行图映射器后,贴体网格与背景网格叶子结点上的计算单元皆转化为多面体单元序列,数据结构表达方式完全一致。
步骤443:(由图4中的重叠网格几何分析模块)根据壁面距离准则执行重叠网格隐式挖洞过程。
步骤444:在每个处理器上,从流场数值模拟器提取当前流场数据,然后导入重叠网格装配模块中的物理场输入接口。与步骤441类似,背景网格与贴体网格对应着不同的接口函数,背景网格对应贴体格点物理场输入接口,贴体网格对应贴体格点物理场输入接口。
步骤445:(由图4中的重叠网格物理插值模块)执行重叠单元上的物理场插值过程。
步骤446:将数据拟合结果通过格心插值物理场输出接口导出,加载到流场数值模拟器上。
步骤45:(图3中的网格类型判断以及后续的贴体网格流场数值模拟器、背景网格流场数值模拟器)在每个处理器上加载准定常流场数值模拟器,同时根据重叠网格装配模块(通过单元BLANK信息输出接口)提供的BLANK信息,忽略无效单元(即洞内单元与插值单元)的物理场变化过程。
步骤46:(图3中的气动载荷输出模块)主处理器上通过MPI规约接口收集来自各个处理器上的气动载荷数据,并将其输出到二进制文件中。
步骤47:(图3中的结构动力学分析模块)在每个处理器上加载结构动力学分析模块,如果当前直升机运动状态达到动态平衡,那么执行步骤5,完成仿真过程;否则在经过“流固耦合分析模块”后执行步骤42(飞行动力学配平模块),执行下一个物理时间步上的仿真过程。
具体的,最后可以执行步骤5,也即在图3中的收敛判据模块判定计算收敛之后导出直升机流场数据文件并将其以流场动画的形式进行显示。
请参考图5,图5为本发明提供的一种直升机流场仿真装置的结构示意图,该直升机流场仿真装置包括:
构造模块51,用于为目标直升机构造块自适应型的计算网格并确定各个计算网格的边界面的属性参数;
获取模块52,用于获取目标直升机进行多学科数值仿真所需要的控制参数;
数值模拟模块53,用于根据属性参数以及控制参数,基于计算网格对目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的目标直升机的非定常流场。
对于本发明实施例提供的直升机流场仿真装置的介绍请参照前述的直升机流场仿真方法的实施例,本发明实施例在此不再赘述。
请参考图6,图6为本发明提供的一种直升机流场仿真设备的结构示意图,该直升机流场仿真设备包括:
存储器61,用于存储计算机程序;
处理器62,用于执行计算机程序时实现如前述实施例中直升机流场仿真方法的步骤。
对于本发明实施例提供的直升机流场仿真设备的介绍请参照前述的直升机流场仿真方法的实施例,本发明实施例在此不再赘述。
为解决上述技术问题,本发明还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如前述实施例中直升机流场仿真方法的步骤。
对于本发明实施例提供的计算机可读存储介质的介绍请参照前述的直升机流场仿真方法的实施例,本发明实施例在此不再赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。还需要说明的是,在本说明书中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (6)
1.一种直升机流场仿真方法,其特征在于,包括:
为目标直升机构造块自适应型的计算网格并确定各个所述计算网格的边界面的属性参数;
获取所述目标直升机进行多学科数值仿真所需要的控制参数;
根据所述属性参数以及所述控制参数,基于所述计算网格对所述目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的所述目标直升机的非定常流场;
所述计算网格包括贴体网格以及背景网格;
所述根据所述属性参数以及所述控制参数,基于所述计算网格对所述目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的所述目标直升机的非定常流场具体为:
将所述贴体网格以及所述背景网格进行剖分,得到计算单元数减小的所述贴体网格以及所述背景网格;
将所有的所述贴体网格以及所述背景网格,分配至计算集群提供的多个处理器中;
控制各个所述处理器根据所述属性参数以及所述控制参数,基于所述计算网格对所述目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的所述目标直升机的非定常流场;
所述控制各个所述处理器根据所述属性参数以及所述控制参数,基于所述计算网格对所述目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的所述目标直升机的非定常流场具体为:
控制所有所述处理器中的主处理器读入所述控制参数;
控制所述主处理器将所述控制参数压缩;
控制所述主处理器以广播的形式将压缩后的所述控制参数共享至其他所有所述处理器;
控制各个所述处理器根据所述控制参数以及自身被分配的所述计算网格的所述属性参数,使用高阶离散格式模拟自身被分配的所述计算网格在预设时长内的运动情况;
将所有所述计算网格在所述预设时长内的运动情况作为所述目标直升机的非定常流场;
所述控制所有所述处理器中的主处理器读入所述控制参数之后,所述控制所述主处理器将所述控制参数压缩之前,该直升机流场仿真方法还包括:
控制所述主处理器存储读入的所述控制参数,并根据各个所述控制参数的存储地址生成检索词与存储地址的对应关系;
所述控制所述主处理器将所述控制参数压缩具体为:
控制所述主处理器将所述控制参数以及所述对应关系进行压缩;
所述控制所述主处理器以广播的形式将压缩后的所述控制参数共享至其他所有所述处理器具体为:
控制所述主处理器以广播的形式将压缩后的所述控制参数以及所述对应关系共享至其他所有所述处理器,以便各个所述处理器根据检索词以及所述对应关系查询待用的所述控制参数。
2.根据权利要求1所述的直升机流场仿真方法,其特征在于,所述将所述贴体网格以及所述背景网格进行剖分,得到计算单元数减小的所述贴体网格以及所述背景网格具体为:
利用复合区域分解法将所述贴体网格以及所述背景网格进行剖分,得到计算单元数减小的所述贴体网格以及所述背景网格。
3.根据权利要求1至2任一项所述的直升机流场仿真方法,其特征在于,所述控制各个所述处理器根据所述属性参数以及所述控制参数,基于所述计算网格对所述目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的所述目标直升机的非定常流场具体为:
控制各个所述处理器通过重叠网格装配技术将自身被分配的所述贴体网格以及所述背景网格均映射为多面体非结构网格;
控制各个所述处理器根据所述属性参数以及所述控制参数,基于所述多面体非结构网格对所述目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的所述目标直升机的非定常流场。
4.一种直升机流场仿真装置,其特征在于,包括:
构造模块,用于为目标直升机构造块自适应型的计算网格并确定各个所述计算网格的边界面的属性参数;
获取模块,用于获取所述目标直升机进行多学科数值仿真所需要的控制参数;
数值模拟模块,用于根据所述属性参数以及所述控制参数,基于所述计算网格对所述目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的所述目标直升机的非定常流场;
所述计算网格包括贴体网格以及背景网格;
所述根据所述属性参数以及所述控制参数,基于所述计算网格对所述目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的所述目标直升机的非定常流场具体为:
将所述贴体网格以及所述背景网格进行剖分,得到计算单元数减小的所述贴体网格以及所述背景网格;
将所有的所述贴体网格以及所述背景网格,分配至计算集群提供的多个处理器中;
控制各个所述处理器根据所述属性参数以及所述控制参数,基于所述计算网格对所述目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的所述目标直升机的非定常流场;
所述控制各个所述处理器根据所述属性参数以及所述控制参数,基于所述计算网格对所述目标直升机的非定常流场进行高阶离散格式的数值模拟,得到模拟的所述目标直升机的非定常流场具体为:
控制所有所述处理器中的主处理器读入所述控制参数;
控制所述主处理器将所述控制参数压缩;
控制所述主处理器以广播的形式将压缩后的所述控制参数共享至其他所有所述处理器;
控制各个所述处理器根据所述控制参数以及自身被分配的所述计算网格的所述属性参数,使用高阶离散格式模拟自身被分配的所述计算网格在预设时长内的运动情况;
将所有所述计算网格在所述预设时长内的运动情况作为所述目标直升机的非定常流场;
所述控制所有所述处理器中的主处理器读入所述控制参数之后,所述控制所述主处理器将所述控制参数压缩之前,该直升机流场仿真装置还包括:
控制所述主处理器存储读入的所述控制参数,并根据各个所述控制参数的存储地址生成检索词与存储地址的对应关系;
所述控制所述主处理器将所述控制参数压缩具体为:
控制所述主处理器将所述控制参数以及所述对应关系进行压缩;
所述控制所述主处理器以广播的形式将压缩后的所述控制参数共享至其他所有所述处理器具体为:
控制所述主处理器以广播的形式将压缩后的所述控制参数以及所述对应关系共享至其他所有所述处理器,以便各个所述处理器根据检索词以及所述对应关系查询待用的所述控制参数。
5.一种直升机流场仿真设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至3任一项所述直升机流场仿真方法的步骤。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至3任一项所述直升机流场仿真方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310128486.6A CN115796083B (zh) | 2023-02-17 | 2023-02-17 | 一种直升机流场仿真方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310128486.6A CN115796083B (zh) | 2023-02-17 | 2023-02-17 | 一种直升机流场仿真方法、装置、设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115796083A CN115796083A (zh) | 2023-03-14 |
CN115796083B true CN115796083B (zh) | 2023-05-26 |
Family
ID=85431012
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310128486.6A Active CN115796083B (zh) | 2023-02-17 | 2023-02-17 | 一种直升机流场仿真方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115796083B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116522827B (zh) * | 2023-07-04 | 2023-10-20 | 北京凌云智擎软件有限公司 | 一种气动热环境计算的流动变量重构方法、设备及装置 |
CN116738892B (zh) * | 2023-08-08 | 2023-10-20 | 中国空气动力研究与发展中心计算空气动力研究所 | 一种流场数值模拟数据保护方法、系统、设备及介质 |
CN117195761B (zh) * | 2023-08-15 | 2024-02-13 | 中国船舶集团有限公司第七一九研究所 | 一种基于流场离散度自适应的计算加速方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108920811A (zh) * | 2018-06-28 | 2018-11-30 | 南京航空航天大学 | 一种用于直升机飞行仿真的模拟方法及系统 |
CN114996198A (zh) * | 2022-08-03 | 2022-09-02 | 中国空气动力研究与发展中心计算空气动力研究所 | 跨处理器数据传输方法、装置、设备及介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104881510B (zh) * | 2015-02-13 | 2018-06-05 | 南京航空航天大学 | 一种直升机旋翼/尾桨气动干扰数值仿真方法 |
WO2017084106A1 (zh) * | 2015-11-20 | 2017-05-26 | 田川 | 一种数值模拟飞行器流场的系统及方法 |
CN105808954A (zh) * | 2016-03-11 | 2016-07-27 | 中国航天空气动力技术研究院 | 一种适用于cfd数值模拟的周期非定常流场的预测方法 |
CN111489447B (zh) * | 2020-04-14 | 2022-04-29 | 西北工业大学 | 一种适用于格子Boltzmann方法的直角网格自适应建模方法 |
CN113689556B (zh) * | 2021-10-25 | 2021-12-24 | 中国空气动力研究与发展中心计算空气动力研究所 | 一种块自适应型笛卡尔网格快速图映射方法及系统 |
CN114036638A (zh) * | 2021-11-05 | 2022-02-11 | 南京航空航天大学 | 一种直升机旋翼桨-涡干扰流场和噪声高精度仿真方法 |
-
2023
- 2023-02-17 CN CN202310128486.6A patent/CN115796083B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108920811A (zh) * | 2018-06-28 | 2018-11-30 | 南京航空航天大学 | 一种用于直升机飞行仿真的模拟方法及系统 |
CN114996198A (zh) * | 2022-08-03 | 2022-09-02 | 中国空气动力研究与发展中心计算空气动力研究所 | 跨处理器数据传输方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115796083A (zh) | 2023-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115796083B (zh) | 一种直升机流场仿真方法、装置、设备及可读存储介质 | |
Mavriplis et al. | Large-scale parallel unstructured mesh computations for three-dimensional high-lift analysis | |
Park et al. | Unstructured grid adaptation: status, potential impacts, and recommended investments towards CFD 2030 | |
Roget et al. | Robust and efficient overset grid assembly for partitioned unstructured meshes | |
Chan | The overgrid interface for computational simulations on overset grids | |
US20170083003A1 (en) | Functional 3-d: optimized lattice partitioning of solid 3-d models to control mechanical properties for additive manufacturing | |
Haimes et al. | Multi-fidelity geometry-centric multi-disciplinary analysis for design | |
US20200327729A1 (en) | Systems and Methods for Preparing a Virtual Three-Dimensional (3D) Object for 3D Printing | |
CN109684743A (zh) | 基于ansys脚本语言的航空电子产品振动云仿真自动接口方法 | |
CN114201823A (zh) | 一种显式嵌套网格装配方法、装置及存储介质 | |
Shephard et al. | Parallel automatic adaptive analysis | |
Jude et al. | An Octree-based, Cartesian CFD Solver for Helios on CPU and GPU Architectures. | |
Walther et al. | Integration aspects of the collaborative aero-structural design of an unmanned aerial vehicle | |
CN115994197A (zh) | GeoSOT网格数据计算方法 | |
CN112184857A (zh) | 一种数据生成系统 | |
CN112270083B (zh) | 一种多分辨建模与仿真方法及系统 | |
CN111581839A (zh) | 一种模型的嵌套关系处理方法、装置及电子设备 | |
Sitaraman et al. | Parallel unsteady overset mesh methodology for a multi-solver paradigm with adaptive cartesian grids | |
LeDoux et al. | MDOPT-a multidisciplinary design optimization system using higher order analysis codes | |
Morton et al. | Relative motion simulations using an overset multi-mesh paradigm with kestrel v3 | |
Williams | Adaptive parallel meshes with complex geometry | |
CN116152451A (zh) | 多维参数化城市信息模型构建方法、系统及计算机设备 | |
CN115330971A (zh) | 一种面向渲染性能优化的几何模型轻量化方法 | |
Quammen | Scientific Data Analysis and Visualization with Python, VTK, and ParaView. | |
Biswas et al. | Global load balancing with parallel mesh adaption on distributed-memory systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |