基于背景网格的多物理场耦合并行通信映射构建方法、装置、设备及介质与流程
- 国知局
- 2024-12-06 12:52:35
本发明涉及多学科耦合数值模拟,特别涉及基于背景网格的多物理场耦合并行通信映射构建方法、装置、设备及介质。
背景技术:
1、多学科耦合数值模拟是指联合多个学科求解器对复杂物理现象或者工程问题进行数值计算的过程,预测不同学科耦合后的物理现象及规律,探索不同物理场相互作用的机制和特性。为了实现不同学科之间的耦合模拟,不同求解器之间需要通过耦合面进行网格节点坐标和物理信息数据传递,传递的物理信息数据主要有结构位移、流动数据、运动速度及加速度等。多学科并行数值模拟的耦合数据传递及通信有两种实现方式:串行通信、并行通信。其中,并行通信采用了去中心化的设计思路,直接根据耦合面的映射关系在求解器的进程之间进行耦合面数据的传递和通信,不依赖主进程进行数据收集和分发,能够大幅降低多学科耦合数值模拟中数据通信延迟时间、提高数据通信的效率,避免超大规模网格数值模拟时通信成为制约整体计算效率的瓶颈,是当前多学科耦合模拟中数据通信发展的主要技术方向。
2、为了实现并行通信,需要根据各个求解器耦合面的分区和数据分布,建立求解器之间直接数据通信的通道和内容,即确定第一求解器的哪些计算节点需要和第二求解器的哪些计算节点开展通信,以及不同计算节点之间需要通信的内容。现有并行通信方法主要通过两种方式实现:一种是采用循环遍历,在插值域内逐个搜索对应的映射网格点,该方法直观简单、易实现,能够获得精准的映射关系,但搜索效率极低,仅在非常简单、计算量小的问题适用;一种是先使用矩形/长方体包络框确定耦合边界,缩小查找范围,再结合特殊的数据结构(例如r树,即向多维空间发展的另一种形式)和算法获得包络框内的映射网格点,该方法能够确定比较准确的耦合通讯内容,但由于采用了特殊的数据结构,程序设计及实现较为复杂,且当网格规模较大时,构建数据结构和查找也比较耗时。因此,如何提高求解器之间的通信效率是需要解决的。
技术实现思路
1、有鉴于此,本发明的目的在于提供基于背景网格的多物理场耦合并行通信映射构建方法、装置、设备及介质,能够提高求解器之间的通信效率,并降低并行通信构建的耗时。其具体方案如下:
2、第一方面,本技术公开了一种基于背景网格的多物理场耦合并行通信映射构建方法,包括:
3、获取用于通信耦合的第一求解器中各进程的第一耦合面,并基于预设数据映射方案中的支撑半径扩大所述第一耦合面的边界以得到扩大后耦合面边界;
4、根据预设背景网格设置指令和所述扩大后耦合面边界生成所述第一求解器中各进程对应的目标背景网格,并确定所述第一耦合面在所述目标背景网格上的近似耦合面;
5、将用于通信耦合的第二求解器中各进程的第二耦合面发送给所述第一求解器,并确定所述第二耦合面在所述近似耦合面上的第一位置信息;
6、基于所述第一位置信息建立所述第一求解器中各进程和所述第二求解器中各进程之间的进程通信映射,并基于所述进程通信映射进行所述第一求解器和所述第二求解器之间的并行通信。
7、可选的,所述基于预设数据映射方案中的支撑半径扩大所述第一耦合面的边界以得到扩大后耦合面边界,包括:
8、对所述第一求解器中各进程在第一耦合面上对应的耦合面节点进行遍历,并确定所述耦合面节点分别在两个坐标轴方向的最大值和最小值;
9、分别利用所述耦合面节点在两个坐标轴方向的最小值与预设数据映射方案中的第一半径值得到的数值差确定所述耦合面节点在两个坐标轴方向上对应的更新后最小值;
10、分别利用所述耦合面节点在两个坐标轴方向的最大值与所述预设数据映射方案中的第二半径值的数值和得到所述耦合面节点在两个坐标轴方向上对应的更新后最大值;
11、基于所述更新后最小值和所述更新后最大值扩大所述第一耦合面的边界以得到扩大后耦合面边界。
12、可选的,所述根据预设背景网格设置指令和所述扩大后耦合面边界生成所述第一求解器中各进程对应的目标背景网格,包括:
13、基于预设背景网格设置指令确定背景网格分别在两个坐标轴方向的节点数,并将所述扩大后耦合面边界的边界值代入至预设网格尺寸计算公式确定背景网格的目标网格尺寸;
14、基于所述节点数和所述目标网格尺寸确定所述第一求解器中各进程对应的目标背景网格。
15、可选的,所述确定所述第一耦合面在所述目标背景网格上的近似耦合面,包括:
16、对所述第一求解器中各进程耦合面的网格点进行遍历,并基于预设支撑域计算公式确定所述耦合面节点的目标支撑域;
17、基于所述目标支撑域的对角坐标和所述目标网格尺寸确定所述目标支撑域在所述目标背景网格的第二位置信息;
18、基于所述第二位置信息对所述目标背景网格进行标记以得到所述扩大后耦合面边界在所述目标背景网格上的近似耦合面。
19、可选的,所述确定所述第二耦合面在所述近似耦合面上的第一位置信息,包括:
20、通过所述第一求解器中各进程对所述第二耦合面上的各耦合面网格点进行遍历,并判断所述各耦合面网格点是否在扩大后耦合面边界内;
21、如果所述各耦合面网格点在所述扩大后耦合面边界内,则根据预设位置信息计算公式确定所述第二耦合面在所述近似耦合面上的第一位置信息。
22、可选的,所述基于所述第一位置信息建立所述第一求解器中各进程和所述第二求解器中各进程之间的进程通信映射,包括:
23、基于所述第一位置信息从所述第二耦合面确定位于所述第一求解器中目标进程对应的插值域内的目标节点;
24、基于所述目标节点对应的节点序号建立所述第一求解器中各进程和所述第二求解器中各进程之间的进程通信映射。
25、可选的,所述基于所述进程通信映射进行所述第一求解器和所述第二求解器之间的并行通信,包括:
26、基于所述第一耦合面的节点坐标和所述目标节点建立映射矩阵,并基于所述映射矩阵进行所述第一求解器和所述第二求解器之间的并行通信。
27、第二方面,本技术公开了一种基于背景网格的多物理场耦合并行通信映射构建装置,包括:
28、耦合面扩大模块,用于获取用于通信耦合的第一求解器中各进程的第一耦合面,并基于预设数据映射方案中的支撑半径扩大所述第一耦合面的边界以得到扩大后耦合面边界;
29、近似耦合面确定模块,用于根据预设背景网格设置指令和所述扩大后耦合面边界生成所述第一求解器中各进程对应的目标背景网格,并确定所述第一耦合面在所述目标背景网格上的近似耦合面;
30、位置信息确认模块,用于将用于通信耦合的第二求解器中各进程的第二耦合面发送给所述第一求解器,并确定所述第二耦合面在所述近似耦合面上的第一位置信息;
31、数据通信模块,用于基于所述第一位置信息建立所述第一求解器中各进程和所述第二求解器中各进程之间的进程通信映射,并基于所述进程通信映射进行所述第一求解器和所述第二求解器之间的并行通信。
32、第三方面,本技术公开了一种电子设备,包括:
33、存储器,用于保存计算机程序;
34、处理器,用于执行所述计算机程序以实现前述的基于背景网格的多物理场耦合并行通信映射构建方法。
35、第四方面,本技术公开了一种计算机可读存储介质,用于保存计算机程序,所述计算机程序被处理器执行时实现前述的基于背景网格的多物理场耦合并行通信映射构建方法。
36、可见,本技术中,获取用于通信耦合的第一求解器中各进程的第一耦合面,并基于预设数据映射方案中的支撑半径扩大所述第一耦合面的边界以得到扩大后耦合面边界;根据预设背景网格设置指令和所述扩大后耦合面边界生成所述第一求解器中各进程对应的目标背景网格,并确定所述第一耦合面在所述目标背景网格上的近似耦合面;将用于通信耦合的第二求解器中各进程的第二耦合面发送给所述第一求解器,并确定所述第二耦合面在所述近似耦合面上的第一位置信息;基于所述第一位置信息建立所述第一求解器中各进程和所述第二求解器中各进程之间的进程通信映射,并基于所述进程通信映射进行所述第一求解器和所述第二求解器之间的并行通信。即,通过背景网格映射关系,快速确定建立所述第一求解器中各进程和所述第二求解器中各进程之间的进程通信映射。这样一来,可以在提升通信效率的同时,极大降低并行通信构建的耗时。
本文地址:https://www.jishuxx.com/zhuanli/20241204/342900.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表