System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 可判别碰撞的高效非结构重叠网格自动装配方法及系统技术方案_技高网

可判别碰撞的高效非结构重叠网格自动装配方法及系统技术方案

技术编号:41211884 阅读:2 留言:0更新日期:2024-05-09 23:34
本发明专利技术提供了一种可判别碰撞的高效非结构重叠网格自动装配方法及系统,包括:获取部件网格在子进程上的当地分区网格信息;利用射线法挖去背景笛卡尔网格上的洞内点;确定重叠网格区域;利用二叉树搜索技术,查找一套网格位于重叠区域上的网格点在其他网格上的贡献单元或点;标记网格点的属性,网格点的属性包括洞内点、受体点和计算点;对于静态重叠网格和动态重叠网格两种情况,判定部件之间是否发生碰撞;根据不同网格单元的参数坐标,利用牛顿迭代法,获得插值权重,并将贡献单元或点上的流场解插值到受体点,完成高效非结构重叠网格自动装配。应用本发明专利技术的技术方案,以解决现有技术中非结构重叠网格处理效率低及容易发生误判碰撞的技术问题。

【技术实现步骤摘要】

本专利技术涉及计算流体力学cfd(computational fluid dynamics)数值模拟,尤其涉及一种可判别碰撞的高效非结构重叠网格自动装配方法及系统


技术介绍

1、有相对运动的多体分离问题是航空、航天和武器系统中一类常见的复杂非定常流动问题,包括火箭的级间分离、保护罩分离、外挂物投放、座椅弹射、子母弹分离等诸多场景。在多体分离问题中,往往存在强烈的气动干扰,使得流场呈现出高度非线性和非定常的特征,流场特性十分复杂。目前,采用重叠网格技术,解决多体分离cfd数值模拟问题,为实际工程设计提供有力数据参考,已逐渐成长为主流的设计方案。

2、重叠网格又称嵌套网格、迭合网格等,是允许各个网格子区域相互重叠,嵌套或覆盖并在各个子网格间通过插值传递流场信息的一种网格处理技术,其网格与相邻的子网格具有重叠的公共区域。重叠网格的每个部件网格是独立生成的,在开始流场计算之前需要处理好各个子网格的关系以及它们的重叠区大小、位置等。重叠网格技术主要是将网格点进行分类,包括洞内点(不参与流场计算)、受体点(进行网格间信息交换)、计算点(正常进行流场计算)。“挖洞”、“寻点”、“插值”是重叠网格技术中的三个关键技术。早期重叠网格技术对变化多样的复杂外形适应能力较弱,需要较多的人工干预。发展与几何外形无关、无需人工干预的通用、高自动化、高准确度、高效率的重叠网格技术,也是目前研究的热点问题。

3、另外,针对目前国内外现有的重叠网格装配方法,在处理部件网格的壁面间隙过小的问题时,往往会发生误判碰撞的情况,这会导致程序无法正常继续进行计算。因此有必要改进部件网格的碰撞识别机制,尽量减少误判情况,使其更符合实际需要。


技术实现思路

1、本专利技术提供了一种可判别碰撞的高效非结构重叠网格自动装配方法及系统,能够解决现有技术中非结构重叠网格处理效率低及容易发生误判碰撞的技术问题。

2、根据本专利技术的一方面,提供了一种可判别碰撞的高效非结构重叠网格自动装配方法,高效非结构重叠网格自动装配方法包括:获取部件网格在子进程上的当地分区网格信息,在子进程上可以存在一套或多套部件网格;在每一个进程上标记网格上的壁面点,根据整套网格的壁面信息,确定洞内区域,利用射线法挖去背景笛卡尔网格上的洞内点;通过方向包围盒的分离轴理论,确定重叠网格区域;利用二叉树搜索adt技术,查找一套网格位于重叠区域上的网格点在其他网格上的贡献单元或点;标记网格点的属性,网格点的属性包括洞内点、受体点和计算点;对于静态重叠网格和动态重叠网格两种情况,判定部件之间是否发生碰撞;根据不同网格单元的参数坐标,利用牛顿迭代法,获得插值权重,并将贡献单元或点上的流场解插值到受体点,完成高效非结构重叠网格自动装配。

3、进一步地,在每一个进程上标记网格上的壁面点,根据整套网格的壁面信息,确定洞内区域,利用射线法挖去背景笛卡尔网格上的洞内点具体包括:根据各进程获得的每个部件的壁面点信息,生成可完全包裹住壁面的方向包围盒obb并创建笛卡尔背景网格;根据射线法,判断网格点是否在洞区域内,若是,则将网格点所在的整个网格单元均挖去。

4、进一步地,利用二叉树搜索adt技术,查找一套网格位于重叠区域上的网格点在其他网格上的贡献单元或点具体包括:根据各进程的部件网格分区信息,还原每套部件网格的所有网格点,并生成方向包围盒obb,创建笛卡尔背景网格;依据判断三维obb相交的分离轴理论,获得部件网格之间的相交点信息,即重叠区域网格点;利用二叉树搜索adt技术,查找一套网格位于重叠区域上的网格点在其它网格上的贡献单元或点。

5、进一步地,洞内点为被挖去的不参与流场计算的点,洞内点上的流场解由邻近网格单元的平均值确定;受体点为位于洞边缘的点或者位于重叠网格边界上的点,用于部件之间交换流场信息,受体点上的流场解由所对应的其他网格上的贡献单元/点插值得到;计算点为流场正常计算的点。

6、进一步地,对于静态重叠网格,判定部件之间是否发生碰撞具体包括:利用零间隙方法,以每套部件网格的壁面点为起点,向外推进一层或几层网格,判断是否有壁面点被识别为洞内点,若有,则碰撞发生,程序终止;若无,则未发生碰撞,正常计算静态重叠网格流场。

7、进一步地,对于动态重叠网格,判定部件之间是否发生碰撞具体包括:根据壁面点被识别为洞内点的总个数,确定为当前计算步的碰撞面积,如果碰撞面积在5个时间步内或更多发生持续增长,则认为确实发生了碰撞,程序将终止;若无碰撞或者存在碰撞面积但碰撞面积未持续增加,正常计算动态重叠网格流场。

8、根据本专利技术的另一方面,提供了一种可判别碰撞的高效非结构重叠网格自动装配系统,可判别碰撞的高效非结构重叠网格自动装配系统使用如上所述的可判别碰撞的高效非结构重叠网格自动装配方法进行高效非结构重叠网格自动装配。

9、进一步地,高效非结构重叠网格自动装配系统包括:网格注册模块,用于并行注册网格,将部件网格分区数据按照部件编号及单元类型进行分类注册;挖洞模块,用于将位于壁面内部的网格单元或点挖去;寻点模块,用于获取位于重叠区域的受体点的贡献单元或点;点属性标记模块,用于标记网格点的属性,区分洞内点、受体点及计算点;碰撞判别模块,用于静态重叠网格和动态重叠网格部件网格之间是否发生碰撞的判别;若判定发生碰撞,则程序终止;若未发生碰撞,将继续执行插值过程和流场计算;插值模块,用于将贡献单元或点上的流场解进行插值,得到受体点的流场解。

10、进一步地,寻点模块用于利用二叉树搜索adt技术,查找一套网格位于重叠区域上的网格点在其他网格上的贡献单元或点。

11、进一步地,插值模块用于根据网格单元类型,利用牛顿迭代法,可获得贡献单元的参数坐标,从而获得插值权重;当参数坐标取值均在0和1之间,则插值点位于贡献单元内部,否则将选择合适的邻居单元作为下一个计算对象,直到为受体点找到合适的贡献单元,以进行插值计算。

12、根据本专利技术的又一方面,提供了一种计算机可读的存储介质,该存储介质存储计算机指令,该指令可以令计算机执行时实现所述如上所述可判别碰撞的高效非结构重叠网格自动装配方法的步骤。

13、应用本专利技术的技术方案,提供了一种可判别碰撞的高效非结构重叠网格自动装配方法,该方法具有高自动化、高适应性的特点,能够处理任意复杂的、具有多种网格单元类型的非结构网格;具有高度并行化、高效性的特点,能够采用与流体求解器同样的并行通在子进程上允许包括一套或者多套部件网格,适应网格能力强;碰撞判别机制更加合理,针对静态重叠网格和动态重叠网格,碰撞判别方式做了区分,面对静态重叠网格中零间隙问题,做了进一步的设计改进;面对动态重叠网格问题,采用碰撞面积是否持续增加的方式来判断碰撞,一定程度上避免了程序误判。

本文档来自技高网...

【技术保护点】

1.一种可判别碰撞的高效非结构重叠网格自动装配方法,其特征在于,所述高效非结构重叠网格自动装配方法包括:

2.根据权利要求1所述的可判别碰撞的高效非结构重叠网格自动装配方法,其特征在于,在每一个进程上标记网格上的壁面点,根据整套网格的壁面信息,确定洞内区域,利用射线法挖去背景笛卡尔网格上的洞内点具体包括:

3.根据权利要求2所述的可判别碰撞的高效非结构重叠网格自动装配方法,其特征在于,利用二叉树搜索ADT技术,查找一套网格位于重叠区域上的网格点在其他网格上的贡献单元或点具体包括:

4.根据权利要求3所述的可判别碰撞的高效非结构重叠网格自动装配方法,其特征在于,所述洞内点为被挖去的不参与流场计算的点,所述洞内点上的流场解由邻近网格单元的平均值确定;所述受体点为位于洞边缘的点或者位于重叠网格边界上的点,用于部件之间交换流场信息,所述受体点上的流场解由所对应的其他网格上的贡献单元/点插值得到;所述计算点为流场正常计算的点。

5.根据权利要求1至4中任一项所述的可判别碰撞的高效非结构重叠网格自动装配方法,其特征在于,对于静态重叠网格,判定部件之间是否发生碰撞具体包括:利用零间隙方法,以每套部件网格的壁面点为起点,向外推进一层或几层网格,判断是否有壁面点被识别为洞内点,若有,则碰撞发生,程序终止;若无,则未发生碰撞,正常计算静态重叠网格流场。

6.根据权利要求1至4中任一项所述的可判别碰撞的高效非结构重叠网格自动装配方法,其特征在于,对于动态重叠网格,判定部件之间是否发生碰撞具体包括:根据壁面点被识别为洞内点的总个数,确定为当前计算步的碰撞面积,如果碰撞面积在5个时间步内或更多发生持续增长,则认为确实发生了碰撞,程序将终止;若无碰撞或者存在碰撞面积但碰撞面积未持续增加,正常计算动态重叠网格流场。

7.一种可判别碰撞的高效非结构重叠网格自动装配系统,其特征在于,所述可判别碰撞的高效非结构重叠网格自动装配系统使用如权利要求1至6中任一项所述的可判别碰撞的高效非结构重叠网格自动装配方法进行高效非结构重叠网格自动装配。

8.根据权利要求7所述的可判别碰撞的高效非结构重叠网格自动装配系统,其特征在于,所述高效非结构重叠网格自动装配系统包括:

9.根据权利要求8所述的可判别碰撞的高效非结构重叠网格自动装配系统,其特征在于,所述寻点模块用于利用二叉树搜索ADT技术,查找一套网格位于重叠区域上的网格点在其他网格上的贡献单元或点。

10.根据权利要求9所述的可判别碰撞的高效非结构重叠网格自动装配系统,其特征在于,所述插值模块用于根据网格单元类型,利用牛顿迭代法,可获得贡献单元的参数坐标,从而获得插值权重;当参数坐标取值均在0和1之间,则插值点位于贡献单元内部,否则将选择合适的邻居单元作为下一个计算对象,直到为受体点找到合适的贡献单元,以进行插值计算。

11.一种计算机可读的存储介质,该存储介质存储计算机指令,该指令可以令计算机执行时实现所述权利要求1-6任一项所述可判别碰撞的高效非结构重叠网格自动装配方法的步骤。

...

【技术特征摘要】

1.一种可判别碰撞的高效非结构重叠网格自动装配方法,其特征在于,所述高效非结构重叠网格自动装配方法包括:

2.根据权利要求1所述的可判别碰撞的高效非结构重叠网格自动装配方法,其特征在于,在每一个进程上标记网格上的壁面点,根据整套网格的壁面信息,确定洞内区域,利用射线法挖去背景笛卡尔网格上的洞内点具体包括:

3.根据权利要求2所述的可判别碰撞的高效非结构重叠网格自动装配方法,其特征在于,利用二叉树搜索adt技术,查找一套网格位于重叠区域上的网格点在其他网格上的贡献单元或点具体包括:

4.根据权利要求3所述的可判别碰撞的高效非结构重叠网格自动装配方法,其特征在于,所述洞内点为被挖去的不参与流场计算的点,所述洞内点上的流场解由邻近网格单元的平均值确定;所述受体点为位于洞边缘的点或者位于重叠网格边界上的点,用于部件之间交换流场信息,所述受体点上的流场解由所对应的其他网格上的贡献单元/点插值得到;所述计算点为流场正常计算的点。

5.根据权利要求1至4中任一项所述的可判别碰撞的高效非结构重叠网格自动装配方法,其特征在于,对于静态重叠网格,判定部件之间是否发生碰撞具体包括:利用零间隙方法,以每套部件网格的壁面点为起点,向外推进一层或几层网格,判断是否有壁面点被识别为洞内点,若有,则碰撞发生,程序终止;若无,则未发生碰撞,正常计算静态重叠网格流场。

6.根据权利要求1至4中任一项所述的可判别碰撞的高效非结构重叠网格自动装配方法,其特征在于,对于动态重叠网格,判定...

【专利技术属性】
技术研发人员:方存宋绪光刘政许灵芝郭洋戴梧叶
申请(专利权)人:北京空天技术研究所
类型:发明
国别省市:

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

1