CN117240717B - 分片结构网格处理方法及优化方法和存储介质、设备 - Google Patents
分片结构网格处理方法及优化方法和存储介质、设备 Download PDFInfo
- Publication number
- CN117240717B CN117240717B CN202311500928.1A CN202311500928A CN117240717B CN 117240717 B CN117240717 B CN 117240717B CN 202311500928 A CN202311500928 A CN 202311500928A CN 117240717 B CN117240717 B CN 117240717B
- Authority
- CN
- China
- Prior art keywords
- grid
- division
- dividing
- sub
- sliced
- 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
- 238000000034 method Methods 0.000 title claims abstract description 90
- 238000003860 storage Methods 0.000 title claims abstract description 18
- 238000012545 processing Methods 0.000 title claims description 23
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 35
- 238000003672 processing method Methods 0.000 claims abstract description 17
- 230000008569 process Effects 0.000 claims description 60
- 239000012634 fragment Substances 0.000 claims description 59
- 238000005192 partition Methods 0.000 claims description 12
- 238000009826 distribution Methods 0.000 claims description 11
- 238000000638 solvent extraction Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 abstract description 22
- 238000004891 communication Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 7
- 238000005457 optimization Methods 0.000 description 6
- 238000013459 approach Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- HPTJABJPZMULFH-UHFFFAOYSA-N 12-[(Cyclohexylcarbamoyl)amino]dodecanoic acid Chemical compound OC(=O)CCCCCCCCCCCNC(=O)NC1CCCCC1 HPTJABJPZMULFH-UHFFFAOYSA-N 0.000 description 1
- 240000006927 Foeniculum vulgare Species 0.000 description 1
- 235000004204 Foeniculum vulgare Nutrition 0.000 description 1
- 241001229889 Metis Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及分片结构网格处理方法及优化方法和存储介质、设备,基于图划分算法,在简单划分、粗划分、细划分步骤下,给出负载更加均衡的网格划分结果,同时尽可能保持较小的通信量,提高了后续并行计算的效率。本申请的关键技术点为,提出了一个自动划分分片网格的处理方法,在给定分片网格和计算核心数后,根据网格大小和其拓扑结构,遍历可行空间,自动生成网格划分,在划分片数最小的前提下,使得每个计算核心对应的子网格大小尽可能一致。
Description
技术领域
本发明涉及工业制造领域,特别是涉及一种分片结构网格的处理方法。
背景技术
随着工业模型外形日益复杂,网格规模日益扩大,同时高精度格式需要巨大的计算开销,传统单处理器的串行求解将很难满足实际需求,因此CAE(Computer AidedEngineering的简称,是用计算机辅助求解复杂工程和产品结构强度、刚度、屈曲稳定性、动力响应、热传导、三维多体接触、弹塑性等力学性能的分析计算以及结构性能的优化设计等问题的一种近似数值分析方法)实际应用往往需要在高算力的计算集群上进行,以及与之配套的高性能的并行计算方法。
常用的并行编程模型主要包括OpenMP、CUDA等共享存储模型和MPI等分布式存储模型。在CAE应用中,由于网格单元之间的求解是耦合的,所以直接使用OpenMP等共享存储模型其并行效率很低;同时对于大规模网格,单机内存可能无法存储所有网格数据。而,MPI等分布式存储模型配合负载均衡的网格划分,将整体网格的求解划分到多个进程中,通过MPI函数实现进程之间的通信。
可见,这种分布式存储的方式更适合现在CAE的并行计算需求。为此需要将计算网格进行尽可能均匀地划分,将子网格上的计算任务分配给可以同时进行计算的计算核心上。
另一方面,由若干片结构网格拼接形成的分片结构网格,可以很好的描述常见工业模型,如风洞中的飞机,发动机内腔,发电机中的螺旋桨等由若干规则工业零件组合形成的复杂几何体。
因此对分片结构网格进行划分在CAE应用中是必不可缺的,如何优化该划分过程,是该领域亟待解决的技术问题。
发明内容
为解决上述技术问题,本发明提供一种基于图划分的分片结构网格处理方法,包括:
图划分算法为:以给定分片结构网格、给定划分比例为输入,k划分结果为输出,使得顶点权重的分布接近给定划分比例,且被分割的边权重和小;
预处理:确定待分析产品的分片结构网格,并生成图、确定划分的容许条件和进程数;
判断待分析产品的分片结构网格的分片数是否等于1;
若等于1,则将待分析产品的分片结构网格直接采用结构网格划分,得到k划分结果为待分析产品的分片结构网格处理结果;此时,k=进程数;
若不等于1,则将待分析产品的分片结构网格,先输入图划分算法划分为子分片结构网格,再将各子分片结构网格输入图划分算法,得到各子分片结构网格的k划分结果;汇总各子分片结构网格的k划分结果为待分析产品的分片结构网格处理结果。
进一步地,将待分析产品的分片结构网格,先输入图划分算法划分为子分片结构网格,包括:
计算进程数的约数;
按照从大到小的顺序,遍历进程数的约数,以待分析产品的分片结构网格为给定分片结构网格、根据进程数的约数确定给定划分比例,输入图划分算法,得到k划分结果;此时k=当前遍历的进程数的约数;
评估当前划分结果是否满足容许条件,若是则结束;若否则继续;直到找到满足容许条件的最大容许约数,得到子分片结构网格。
进一步地,将各子分片结构网格输入图划分算法,得到各子分片结构网格的k划分结果,包括:
以各子分片结构网格为给定分片结构网格、根据进程数与最大容许约数的比值确定给定划分比例,输入图划分算法,得到各子分片结构网格的k划分结果;此时k=进程数与最大容许约数的比值。
进一步地,若最大容许约数等于1,则以子分片结构网格为给定分片结构网格、根据二划分确定给定划分比例,输入图划分算法,得到子分片结构网格的二划分结果;若当前划分满足容许条件,则以二划分结果得到的子分片结构网格为给定分片结构网格、根据进程数除2的上下取整数确定给定划分比例,输入图划分算法,得到各子分片结构网格的k划分结果;此时k=进程数除2的上下取整数;汇总各分片结构网格的k划分结果为待分析产品的分片结构网格处理结果;
若当前划分不满足容许条件,则根据图划分结果,找到满足预设条件的最大分片,将最大分片沿长边分割为若干个小分片,得到更细致的分片结构网格,对更细致的分片结构网格重新进行二划分,得到两个子分片结构网格,并以二划分得到的子分片结构网格、根据进程数/2的上下取整数确定给定划分比例,输入图划分算法,得到各子分片结构网格的k划分结果;此时,k=进程数/2的上下取整数;汇总各分片结构网格的k划分结果为待分析产品的分片结构网格处理结果。
进一步地,根据待分析产品的分片结构网格生成图,包括:
分片结构网格G的相关定义为:G由L个分片构成,L为分片结构网格的分片数,每个分片记为D_ s;
图G(V,E)的相关定义为:V代表顶点集合,E代表边集合,其上任意一条边,表示为e_ij,为边集合E中的元素,表示连接顶点v_i和顶点v_j的连线;顶点v_i和顶点v_j的权重,分别表示为w(v_i)、w(v_j),是顶点权重向量W(v)中的元素;边e_ij的权重,表示为w(e_ij),是边权重向量W(e)中的元素;
分片结构网格G与图G(V,E)的对应关系为:分片结构网格G的每个分片D_s对应图G(V,E)中的顶点v_s,且顶点权重w(v_s)=|D_s|;边e_ij=(v_i, v_j)当且仅当D_i与D_j相邻时存在,且边权重 w(e_ij)=网格大小;其中,1≤s≤L,1≤i≤L,1≤j≤L。
进一步地,容许条件为:确定网格大小容许参数k1、k2,其中k1<1<k2,使得每个进程上分配的子网格总大小落在[k1*Na,k2*Na];其中,Na为进程平均网格大小,等于总网格大小除以进程数;
另一方面,还提供一种产品结构的优化方法,包括:
设计初始产品图;
采用上述任意的分片结构网格处理方法,生成产品图的分片网格划分结果,进行并行CAE计算,根据计算结果迭代优化产品图。
进一步地,初始产品图为飞机初始模型;以飞机初始模型为输入,生成产品图的分片网格划分结果,进行风洞模拟仿真试验,进行并行CAE计算,根据计算结果分析受力情况,找到当前模型缺陷,迭代更新优化模型。
另一方面,本发明还提供一种计算机存储介质,存储有可执行程序代码;所述可执行程序代码,用于执行上述任意的分片结构网格处理方法,或上述任意的优化方法。
另一方面,本发明还提供一种终端设备,包括存储器和处理器;所述存储器存储有可被处理器执行的程序代码;所述程序代码用于执行上述任意的分片结构网格处理方法,或上述任意的产品结构的优化方法。
本发明提供的分片结构网格处理方法及优化方法和存储介质、设备,基于图划分算法,在简单划分、粗划分、细划分步骤下,以“求解k划分,使得顶点权重的分布接近给定划分比例,且被分割的边权重和小”为目标,使得尽可能等比例对应计算过程中的负载更加均衡,被分割的边权重对应通信量,使通信量更小。根据对分片数的判断、后续进程数的判断、最大容许约数的求解、以及最大容许约数的判断,使得本发明的分片结构网格的处理方法,能够适用于任意分片数、进程数的情况,而对其没有任何限制和约束,可以在进程数小于分片数,或者分片大小相差过大时,通过每个进程负责多个分片的方法,给出负载更加均衡的网格划分结果,同时尽可能保持较小的通信量,提高了后续并行计算的效率。本申请的关键技术点为,提出了一个自动划分分片网格的处理方法,在给定分片网格和计算核心数后,根据网格大小和其拓扑结构,遍历可行空间,自动生成网格划分,在划分片数最小的前提下,使得每个计算核心对应的子网格大小尽可能一致。
附图说明
图1为本发明分片结构网格处理方法一个实施例的流程图;
图2为一个实施例的飞机图的分片结构网格示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明,若本发明实施例中有涉及方向性指示,诸如上、下、左、右、前、后……,则该方向性指示仅用于解释在某一特定姿态下,各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。另外,若本发明实施例中有涉及“第一、第二”、“S1、S2”、“步骤一、步骤二”等的描述,则该类描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量或者表明方法的执行顺序等,本领域技术人员可以理解的凡是在发明技术构思下,不违背其发明要点的,都应该列入本发明的保护范围。
名词解释:
PETSc——Portable, Extensible Toolkit for Scientific Computation的缩写,中文名是科学计算可移植扩展工具包。
Hypre——一个高性能预处理器和求解器的软件库,用于在大规模并行计算机上求解大型稀疏线性方程组。
METIS——一组串行程序,用于划分图、划分有限元网格以及为稀疏矩阵生成填充减少排序。
如图1 所示,本发明提供一种基于图划分的分片结构网格处理方法,包括:
图划分算法为:以给定分片结构网格G、给定划分比例R(k)为输入,k划分结果为输出,使得顶点权重的分布接近给定划分比例,且被分割的边权重和小。具体的,该图划分算法,可采用现有技术的任意形式,本发明的关键点在于,如何根据待分析产品的当前实际,而如何应用该图划分算法,将待分析产品的分片结构网格进行划分,具体的目标要求即为:使得顶点权重的分布接近给定划分比例,且被分割的边权重和小,即在可能的范围内使得顶点权重的分布无限接近、尽可能接近给定划分比例,且被分割的边权重和尽可能小;即降低顶点权重的分布与给定划分比例的差距,甚至等于,但是有时候可能无法达到等于,则只能无限靠近;而边权重和甚至等于0,但是有时候可能无法达到等于0,则只能无限的小。
具体的:
1、给定分片结构网格G,可选但不仅限于以风洞中的飞机、发动机内腔、发电机中的螺旋桨等由若干规则工业零件组合形成的复杂几何体为例,根据其产品图确定为给定分片结构网格G,如图2所示为某飞机图的分片结构网格示意图。
2、给定划分比例R(k)=(r_1,r_2,…,r_k),k表示划分数。示例的,对于初始输入,k一般就是进程数P;对于二划分,k=2。更为具体的,若无特别说明,可选但不仅限于为均匀划分,即r_1, r_2, …, r_k=1/k,此时只需输入划分数k即可,而无需给出具体的划分比例,当然也不限定一定为均匀划分,若不为均匀划分,则可自定义各r_1,r_2,…,r_k,以输入给定划分比例。
3、问题描述为:求解k划分结果,使得顶点权重的分布尽可能接近给定划分比例,且被分割的边权重和尽可能小;即:顶点权重的分布与给定划分比例的差最小,被分割的边权重和最小,这也是图划分算法的宗旨,以及所能得到的结果。
S2:预处理:根据分片结构网格G生成图G(V,E),确定划分的容许条件和进程数P;
具体的:
1、分片结构网格G,可选但不仅限于根据其拓扑结构以定义生成图G(V,E)。
示例的:分片结构网格G的相关定义如下: G由L个分片构成,L为分片结构网格的分片数,每个分片记为D_ s。以三维分片结构网格为例,大小记为|D_ s | =x_ s×y_ s×z_ s,不失一般性,可选但不仅限于假设x_ s≤y_ s≤z_ s。若D_i与D_j相邻,则其公共边界为2维矩形网格,定义矩形网格的大小为|D_i∩D_j|。更为具体,分片数L由产品图的几何结构而确定。
图G(V,E)的相关定义如下:V代表顶点集合,E代表边集合,其上任意一条边,可选但不仅限于表示为e_ij,为E中的元素,表示连接顶点v_i和顶点v_j的连线;该顶点v_i和顶点v_j的权重,可分别表示为w(v_i)、w(v_j),是顶点权重向量W(v)中的元素;该边e_ij的权重,可表示为w(e_ij),是边权重向量W(e)中的元素。
分片结构网格G与图G(V,E)的对应关系如下:分片结构网格G的每个分片D_s对应图G(V,E)中的顶点v_s,且顶点权重w(v_s)=|D_s|。边e_ij=(v_i, v_j)当且仅当D_i与D_j相邻时存在,且边权重 w(e_ij)=网格大小,以三维为例即等于矩形网格的大小,|D_i∩D_j|;其中,1≤s≤L,1≤i≤L,1≤j≤L。
2、在实际划分前,可选但不仅限于由产品设计师、用户等,根据实际问题需求,给出实际应用实例中,分片结构网格划分的容许条件。
示例的,提供确定网格大小容许参数k1、k2的具体数值,其中k1<1<k2,使得每个进程上分配的子网格总大小尽可能落在[k1*Na,k2*Na];其中,Na为进程平均网格大小,即为总网格大小N除以进程数P。
3、进程数P,同样的可由本领域技术人员根据实际需求任意设定。优选的,从实际应用出发,可选但不仅限于假设进程数P只有2,3,5这三个质因子,其约数只有1和其本身,这样算法描述会相对简单一些。实际上稍作修改便可以处理其他进程数的情况。
在上述基础上,本发明分片结构网格处理方法,划分步骤可选但不仅限于根据待分析产品的分片结构网格的分片数而确定,分为三个阶段:简单划分;粗划分、细化分(复杂划分),将复杂问题逐步拆解成若干个简单问题进行求解,这也是本发明处理方法的核心。
S3:判断待分析产品的分片结构网格的分片数是否等于1;
A:简单划分:
S4:若分片结构网格G(此时转化成了图G(V,E)),的分片数L等于1,则此时为结构网格,即可直接采用结构网格划分,得到k划分结果为待分析产品的分片结构网格处理结果。具体的,将该分片结构网格G的划分问题转化为结构网格的划分问题,可选但不仅限于采用现有技术的任意结构网格划分方法,如PETSc的划分方案来解决。
B:若分片结构网格G的分片数L不等于1,则进行复杂划分:
S5:将待分析产品的分片结构网格,先输入图划分算法划分为子分片结构网格,再将各子分片结构网格输入图划分算法,得到各子分片结构网格的k划分结果;汇总各子分片结构网格的k划分结果为待分析产品的分片结构网格处理结果。
更为具体的,该复杂划分,后续又可以划分为S51:粗划分和S52:细化分。
具体的:找到满足容许条件划分前提下的最大容许约数p。后续根据约数p的大小,进行下一步判断,采用S51:粗划分或S52:细划分:
若分片结构网格G的分片数L不等于1,按照从大到小的顺序,遍历进程数P的约数p,使用图划分算法,确定分片结构网格G的p划分,并评估当前划分是否满足容许条件,若是则结束;若否则继续;直到找到满足容许条件的划分为止。优选的:该p划分,可选但不仅限于为均匀划分。
示例的,以进程数P=5为例,其约数包括1和5。那么按照从大到小的顺序,遍历该进程数5的约数1和5,即从5开始,使用图划分算法,将分片结构网格G均匀划分成5份,若当前划分满足预先设定的容许条件,则结束;若当前划分不满足预先设定的容许条件,则取出比5小一级的约数,即1。而p=1时,自然满足容许条件。
所以,按照从大到小的顺序,遍历进程数P的约数p,进行该递归判断,必然能找到容许条件划分前提下的最大容许约数p。值得注意的,上述以进程数P=5为例进行示例说明,但并不以此为限。示例的,对于进程数P=6,其约数包括1,2,3,6,则从大到小依次判断,按照p=6时均匀划分,是否满足预先设定条件,若满足则结束,若不满足,则按照p=3是否满足……,如不满足则接着p=2、p=1,直到找到满足容许条件的前提下的最大容许约数。
更为具体的,该图划分算法,实际应用中,可选但不仅限于采用METIS、RandomHash,Linear Deterministic Greedy partitioning (LDG),Fennel分割等求解。
C:进一步根据满足容许条件的前提下的最大容许约数p的大小,进行递归求解;
C1:若p>1,则进行粗划分,步骤S51:
S51:若p>1,则直接递归:记划分得到的子分片结构网格为Gk, k =1,2,…,p;以每个(Gk, P/p)为输入,输入图划分算法,对p个子分片结构网格Gk进行划分,将分别得到的划分结果汇总,得到最终的划分结果。
C2:若p=1,则说明粗划分不够精细,此时需要采用后续细划分手段进行处理,则进行细划分,步骤S52:
S52:若p=1,则细化分后递归:若p=1,设划分比例为(r_1=ceil(P/2)/P, r_2=floor(P/2)/P),先进行二划分,其中,r_1,r_2为划分比例,由于P可能为奇数,不被2整除,所以进行取整处理,ceil表示向下取整,floor表示向上取整;若当前划分满足容许条件,则记划分得到的两个子分片结构网格为G1、G2,并以(G1, ceil(P/2))和(G2, floor(P/2))为输入,输入图划分算法对子分片结构网格G1、G2进行划分,将分别得到的划分汇总,得到最终的划分结果。
若当前划分不满足容许条件,则进行下一步。根据图划分结果,找到满足预设条件的最大分片D_i。
具体的,该预设条件,可选但不仅限于为:
D_i存在相邻分片D_j,D_i和D_j所在划分不同。
D_i所在划分Gq的比例高于预期划分比例r_q。
具体的,可选但不仅限于采用穷举方式,即遍历所有分片一一验证,寻找满足上述条件的最大分片。
将最大分片D_i沿长边分割为若干个小分片,得到更细致的分片结构网格G’ ,对G’重新进行二划分,得到两个子分片结构网格G1’ 、G2’,并以(G1’, ceil(P/2))和(G2’,floor(P/2))为输入,输入图划分算法,对2个子分片结构网格G1’ 、G2’进行划分,将分别得到的划分汇总,得到最终的划分结果。
以三维为例,则将分片D_i沿长边分割为z_i个大小x_i × y_i × 1的小分片,重新得到更为细致的分片结构网格G’ ,对分片结构网格G’ 重新进行上述二划分,得到两个子分片结构网格G1’ 、G2’。
在该实施例中,给出了本发明分片结构网格的处理方法,基于图划分算法,在简单划分、粗划分、细划分步骤下,以“求解k划分,使得顶点权重的分布尽可能接近给定划分比例,且被分割的边权重和尽可能小”为目标,使得尽可能等比例对应计算过程中的负载更加均衡,被分割的边权重对应通信量。因此,可以在进程数小于分片数,或者分片大小相差过大时,通过每个进程负责多个分片的方法,给出负载更加均衡的网格划分结果,同时尽可能保持较小的通信量,提高了后续并行计算的效率。本申请的关键技术点为,提出了一个自动划分分片网格的处理方法,在给定分片网格和计算核心数后,根据网格大小和其拓扑结构,遍历可行空间,自动生成网格划分,在划分片数最小的前提下,使得每个计算核心对应的子网格大小尽可能一致;而且对于分片结构网格的分片数、进程数都没有任何限定,能够适用于任意情况。
在此基础上,本发明还提供一种产品结构的优化方法,包括:
P1:设计初始产品图;
P2:采用上述任意的分片结构网格处理方法,生成产品图的分片网格划分结果,进行并行CAE计算,根据计算结果迭代优化产品图。
具体的,上述CAE计算、迭代优化产品等步骤,可选但不仅限于采用现有技术中的任意方式,本发明的核心在于,对产品图,即输入数据进行处理,以快速精准的得到k划分结果,是的顶点权重的分布尽可能接近给定划分比例,且被分割的边权重和尽可能小,使得尽可能等比例对应计算过程中的负载更加均衡,被分割的边权重对应通信量,是的通信量更小,以简化提升后续CAE计算、迭代优化产品的过程。
更为具体的,以设计飞机模型为例,可选但不仅限于以飞机初始模型为输入,采用本发明的分片结构网格的处理方法,生成飞机的分片网格划分结果,进行风洞模拟仿真等试验,进行并行CAE计算,根据计算结果分析其受力情况等,找到当前设计模型缺陷,迭代更新优化其模型结构,完善飞机模型。
另一方面,本发明还提供一种计算机存储介质,存储有可执行程序代码;所述可执行程序代码,用于执行上述任意的分片结构网格的处理方法。
另一方面,本发明还提供一种终端设备,包括存储器和处理器;所述存储器存储有可被处理器执行的程序代码;所述程序代码用于执行上述任意的分片结构网格的处理方法。
示例性的,所述程序代码可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述程序代码在终端设备中的执行过程。
所述终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。终端设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,终端设备还可以包括输入输出设备、网络接入设备、总线等。
所述处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器 (Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器可以是终端设备的内部存储单元,例如硬盘或内存。所述存储器也可以是终端设备的外部存储设备,例如终端设备上配备的插接式硬盘,智能存储卡(SmartMedia Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器还可以既包括终端设备的内部存储单元也包括外部存储设备。所述存储器用于存储所述程序代码以及终端设备所需的其他程序和数据。所述存储器还可以用于暂时地存储已经输出或者将要输出的数据。
上述产品结构的优化方法、计算机存储介质和终端设备基于上述分片结构网格处理方法而创造,其技术作用和有益效果在此不再赘述,以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (4)
1.一种基于图划分的分片结构网格处理方法,其特征在于,包括:
定义图划分算法为:以给定分片结构网格、给定划分比例为输入,k划分结果为输出,使得顶点权重的分布接近给定划分比例,且被分割的边权重和小;
预处理为:确定待分析产品的分片结构网格,并生成图、确定划分的容许条件和进程数;
判断待分析产品的分片结构网格的分片数是否等于1;
若等于1,则将待分析产品的分片结构网格直接采用结构网格划分,得到k划分结果为待分析产品的分片结构网格处理结果;此时,k=进程数;
若不等于1,则将待分析产品的分片结构网格,先输入图划分算法划分为子分片结构网格,再将各子分片结构网格输入图划分算法,得到各子分片结构网格的k划分结果;汇总各子分片结构网格的k划分结果为待分析产品的分片结构网格处理结果;
其中,将待分析产品的分片结构网格,先输入图划分算法划分为子分片结构网格,包括:
计算进程数的约数;
按照约数从大到小的顺序,遍历进程数的约数,以待分析产品的分片结构网格为给定分片结构网格、根据进程数的约数确定给定划分比例,输入图划分算法,得到k划分结果;此时k=当前遍历的进程数的约数;
评估当前划分结果是否满足容许条件,若是则结束;若否则继续;直到找到满足容许条件的最大容许约数,得到子分片结构网格;
将各子分片结构网格输入图划分算法,得到各子分片结构网格的k划分结果,包括:
以各子分片结构网格为给定分片结构网格、根据进程数与最大容许约数的比值确定给定划分比例,输入图划分算法,得到各子分片结构网格的k划分结果;此时k=进程数与最大容许约数的比值;
若最大容许约数等于1,则以子分片结构网格为给定分片结构网格、根据二划分确定给定划分比例,输入图划分算法,得到子分片结构网格的二划分结果;若当前划分满足容许条件,则以二划分结果得到的子分片结构网格为给定分片结构网格、根据进程数除2的上下取整数确定给定划分比例,输入图划分算法,得到各子分片结构网格的k划分结果;此时k=进程数除2的上下取整数;汇总各分片结构网格的k划分结果为待分析产品的分片结构网格处理结果;
若当前划分不满足容许条件,则根据图划分结果,找到满足预设条件的最大分片,将最大分片沿长边分割为若干个小分片,得到更细致的分片结构网格,对更细致的分片结构网格重新进行二划分,得到两个子分片结构网格,并以二划分得到的子分片结构网格、根据进程数/2的上下取整数确定给定划分比例,输入图划分算法,得到各子分片结构网格的k划分结果;此时,k=进程数/2的上下取整数;汇总各分片结构网格的k划分结果为待分析产品的分片结构网格处理结果;
即,根据对分片数、进程数、最大容许约数的判断,给出负载均衡的网格划分结果。
2.根据权利要求1所述的分片结构网格处理方法,其特征在于,容许条件为:确定网格大小容许参数k1、k2,其中k1<1<k2,使得每个进程上分配的子网格总大小落在[k1*Na,k2*Na];其中,Na为进程平均网格大小,等于总网格大小除以进程数。
3.一种计算机存储介质,其特征在于,存储有可执行程序代码;所述可执行程序代码,用于执行权利要求1-2任意一项所述的分片结构网格处理方法。
4.一种终端设备,其特征在于,包括存储器和处理器;所述存储器存储有可被处理器执行的程序代码;所述程序代码用于执行权利要求1-2任意一项所述的分片结构网格处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311500928.1A CN117240717B (zh) | 2023-11-13 | 2023-11-13 | 分片结构网格处理方法及优化方法和存储介质、设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311500928.1A CN117240717B (zh) | 2023-11-13 | 2023-11-13 | 分片结构网格处理方法及优化方法和存储介质、设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117240717A CN117240717A (zh) | 2023-12-15 |
CN117240717B true CN117240717B (zh) | 2024-02-13 |
Family
ID=89098718
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311500928.1A Active CN117240717B (zh) | 2023-11-13 | 2023-11-13 | 分片结构网格处理方法及优化方法和存储介质、设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117240717B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021480A (zh) * | 2016-05-19 | 2016-10-12 | 福建农林大学 | 一种基于网格划分的并行空间划分方法及其系统 |
CN114332409A (zh) * | 2021-12-20 | 2022-04-12 | 杭州电子科技大学 | 一种基于分片参数化的保特征表面结构网格生成方法 |
CN114341859A (zh) * | 2019-08-27 | 2022-04-12 | 西门子工业软件有限公司 | 使用粗略几何单元和高分辨率网格单元的对象设计处理 |
CN115512075A (zh) * | 2022-09-23 | 2022-12-23 | 杭州电子科技大学 | 一种基于拓扑有向图的四边形网格保特征重划分方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7043621B2 (en) * | 2003-05-16 | 2006-05-09 | Hewlett-Packard Development Company, L.P. | Sharding method and apparatus using directed graphs |
-
2023
- 2023-11-13 CN CN202311500928.1A patent/CN117240717B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021480A (zh) * | 2016-05-19 | 2016-10-12 | 福建农林大学 | 一种基于网格划分的并行空间划分方法及其系统 |
CN114341859A (zh) * | 2019-08-27 | 2022-04-12 | 西门子工业软件有限公司 | 使用粗略几何单元和高分辨率网格单元的对象设计处理 |
CN114332409A (zh) * | 2021-12-20 | 2022-04-12 | 杭州电子科技大学 | 一种基于分片参数化的保特征表面结构网格生成方法 |
CN115512075A (zh) * | 2022-09-23 | 2022-12-23 | 杭州电子科技大学 | 一种基于拓扑有向图的四边形网格保特征重划分方法 |
Also Published As
Publication number | Publication date |
---|---|
CN117240717A (zh) | 2023-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20160147914A1 (en) | Technique for generating approximate design solutions | |
US10180996B2 (en) | Multi-component computational fluid dynamics simulations | |
US20150127301A1 (en) | Updating A CAD Model To Reflect Global Or Local Shape Changes | |
Zhao et al. | Power grid analysis with hierarchical support graphs | |
US10860767B1 (en) | Systems and methods for transient simulation of circuits with mutual inductors | |
Wu et al. | FPGA accelerated parallel sparse matrix factorization for circuit simulations | |
EP2058740A1 (en) | High-speed calculation process method of combination equation based on finite element method and boundary element method | |
CN116070584A (zh) | 电路仿真方法、装置、电子设备及计算机可读存储介质 | |
Larwood et al. | Domain decomposition approach for parallel unstructured mesh generation | |
CN113850917B (zh) | 三维模型体素化方法、装置、电子设备及存储介质 | |
CN112231863B (zh) | 太阳翼电池阵基板建模方法、装置、设备及存储介质 | |
CN103218493B (zh) | 一种基于多重网格的快速等几何分析数值模拟方法 | |
CN117240717B (zh) | 分片结构网格处理方法及优化方法和存储介质、设备 | |
US20240143885A1 (en) | Multiply-Instantiated Block Modeling For Circuit Component Placement In Integrated Circuit | |
US11960868B2 (en) | Branch objects for dependent optimization problems | |
CN112560386B (zh) | 一种大规模复杂版图电阻提取加速方法 | |
US11210440B1 (en) | Systems and methods for RLGC extraction based on parallelized left-looking incomplete inverse fast multipole operations | |
CN114757113A (zh) | 一种加力燃烧室的流场分析方法、装置及终端设备 | |
US10042962B2 (en) | Mid-surface extraction for finite element analysis | |
Rouigueb et al. | Integration of polynomials over n-dimensional simplices | |
CN111340215A (zh) | 一种网络模型推理加速方法、装置、存储介质和智能设备 | |
Bedregal et al. | A study on size-optimal longest edge refinement algorithms | |
EP4446927A1 (en) | Efficient modeling of assemblies using generative design | |
Lin et al. | Performance of a massively parallel higher-order method of moments code using thousands of CPUs | |
Paszyńska et al. | Heuristic algorithm to predict the location of C^{0} separators for efficient isogeometric analysis simulations with direct solvers |
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 |