一种格子玻尔兹曼演化计算中的迁移方法及相关装置与流程

摘要: 本技术涉及流体力学计算,尤其涉及一种格子玻尔兹曼演化计算中的迁移方法及相关装置。背景技术:1、随着精密铸造、增材制造等先进成形技术的发展,复杂构件内部流道及型腔...
一种格子玻尔兹曼演化计算中的迁移方法及相关装置与流程

本技术涉及流体力学计算,尤其涉及一种格子玻尔兹曼演化计算中的迁移方法及相关装置。

背景技术:

1、随着精密铸造、增材制造等先进成形技术的发展,复杂构件内部流道及型腔的充型过程数值模拟日益受到重视。格子玻尔兹曼方法凭借其天然的介观物理背景和并行计算优势,已成为模拟铸件充型过程中流体流动行为的重要工具。其中,格子玻尔兹曼演化计算中的迁移步骤,即分布函数在网格节点之间的传递过程,直接决定了整个模拟计算过程。因此,格子玻尔兹曼演化计算中的迁移方法显得尤为重要。

2、目前,通常需要为计算域中的所有网格节点分配存储空间,并通过遍历完整网格节点的结构数据直接确定相邻网格节点,以实现分布函数在网格节点之间的迁移。

3、但是,计算域内往往包含大量模具区域、固体区域或其他不参与流体演化计算的非流体区域,需要为非流体区域对应的网格节点分配存储空间,并在迁移计算过程中对完整计算域进行节点访问,导致大量无效存储和无效计算开销,导致格子玻尔兹曼演化计算的迁移效率较低、存储空间占用较大。

技术实现思路

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、借由上述技术方案,本技术提供的一种格子玻尔兹曼演化计算中的迁移方法及相关装置。该方法包括从计算域的多个网格节点中确定参与格子玻尔兹曼演化计算的至少一个流体节点,并获取各流体节点的稀疏索引及基于稀疏索引存储的分布函数;针对每个流体节点,基于稀疏索引和预设离散速度方向确定相邻网格节点的全局坐标;判断相邻网格节点的全局坐标是否对应任一流体节点的稀疏索引;若对应,则基于对应的稀疏索引对分布函数进行迁移。本技术通过重构数据存储与访问机制,仅针对有效流体节点进行精细化计算,有效减少了非流体区域的内存占用,提升了格子玻尔兹曼演化计算的迁移效率。