有限元网格自动生成的并行区域划分算法束紧器

2022-07-04 07:40

有限元网格自动生成的并行区域划分算法

有限元网格自动生成的并行区域划分算法 2011年12月04日 来源: 摘 要:提出了一种基于网格生成递归法的并行区域划分算法,该算法依据网格生成代价的估算分析,采用迭代分解法对区域进行并行划分。在曙光1000A 系统上的运行结果表明,该网格算法的效率和加速比均优于串行递归算法。关键词:有限元网格;并行区域划分算法;网格生成代价;迭代分解法基于网络生成递归法[1~3],本文提出了一种并行区域划分算法,该算法满足以下四个基本原则:a. 任务平衡性原则。能生成平衡的子区域集,即在各子区域中生成网格的时间大致相等。b. 边界最简原则。子区域的边界结构简单,边界处理所需时间短,处理器间消息传递的费用低。c. 网格均匀原则。并行生成的最终网格形状均匀,无奇异单元。d. 区域划分代价最小原则。区域划分算法本身的代价尽可能小。1、基本思想及相关算法在网格生成递归法中,如果每个子区域都包含相同的单元数,就比较容易实现任务平衡。因此,首先按照单元数估算待处理区域的网格生成代价,然后根据当前参与并行处理的处理器数N对区域进行分解,并对分解所得子区域进行边界处理,最终获得相互之间既平衡又独立的N个并行子任务。1.1 网格生成代价的估算算法网格生成代价与分布于待处理区域中的单元数目紧密相关,而单元数目是由该区域的总面积S和区域内单元分布密度决定的。估算公式如下:G=S/Stri, (1)Stri=[L2/(2M2)]sin60°,(2)M=Σ2li/(di1+di2) (i=1, 2, …, n), (3)式中,G表示三维平面区域 (含有n条边) 的网格生成代价;S表示该区域的面积;Stri 是对区域内单个三角形单元平均面积的粗略估算值;L表示区域的周长;M表示区域边界上总的离散段数;li表示第i条边的长度;di1和di2 分别表示第i条边前端点和后端点处的单元边长。据以上公式,网格生成代价的估算算法步骤如下。步骤 1 依次计算区域各边界的长度和离散段数,根据式(2)和(3)计算Stri;步骤 2 应用三角累加算法计算S,根据式(1)求得G。三角累加算法步骤如下:a. 置变量S为0;b. 选取区域的任意一个顶点作为V1,按顺时针 (或逆时针) 方向取与V1 依次相邻的两个点为V2和V3;c. 计算由V1, V2 和 V3 组成的三角形的面积,累加入变量S;d. 以V3为新的V2,按顺时针 (或逆时针) 方向取与V2相邻的第一个点为新的V3,若V3=V1,则算法停止;否则转 c。1.2 区域划分算法估算出整个区域的网格生成代价后,区域划分算法的任务就是:寻找N-1条分割线,将区域分割为N个子区域,使得各个子区域的网格生成代价大致相等。由于无法精确确定子区域中的单元数目,因此允许各子区域的网格生成代价在G/N附近有一个δ误差,亦即所产生的子区域的网格生成代价都属于[G/N-δ, G/N+δ]区间。根据原则 b,任何一条分割线的两端点都定位在区域的边界上,而不落在区域中。在图 1 (a) 中,任何一个子域都只通过一条完整的分割线与其他子域相邻;而在图1(b) 中,子域3与子域1和2之间的相邻关系不便于边界处理。

(a) (b)图 1 区域划分效果图

根据原则c,多条分割线不交于同一点,因为这种分割在N较大的情况下会导致极点现象——在多条分割线的交点处出现小内角的长薄单元,影响网格形状。本文采用迭代分解法划分区域,步骤如下。步骤 1 记待分解的区域为 D;步骤 2 循环执行以下步骤N-2次:a. 在D中找一条分割线将区域分为两个子域D1和D2,使D1的网格生成代价约等于G/N;b. 将D1从D中去掉,以D2为新的D,转步骤 a;步骤 3 在D中找一条分割线将区域分为两个子域D1和D2,使D1和D2的网格生成代价均属于 [G/N-δ,G/N+δ]。本算法中,寻找分割线的方法是:先在区域中找到一个合适的顶点作为分割线的前端点X,然后从这个顶点出发,沿顺时针(或逆时针)方向按对半查找法在区域的边界上寻找分割线的后端点Y。对半查找算法步骤如下:步骤 1 从X点出发,按顺时针(或逆时针)方向取与X依次相邻的两个点为R和Y;步骤 2 计算分割线XY左侧 (或右侧) 子域的网格生成代价g;步骤 3 若g∈[G/N-δ,G/N+δ],则算法停止;若g > G/N+δ,则令T=Y,以T与R的中点为新的Y,转步骤2;若g R,就变换X。图 2 是对区域ABCDEF作6次划分的示意图。在图2(a)中,R取值为2,寻找第5条分割线时,因为∠CHI比∠HIE大,X原应定位在H点,但由于已有两条分割线经过H点,因此如果这次还选取H作为前端点, 那么共点率r增为3,超过预定义的R值,于是,改选I点为X;而在图2(b)中,因为R取值为3,所以,H仍可作为第5条分割线的前端点。

(a) R=2 (b) R=3图 2 共点控制

该区域划分算法的特点是:并行任务的负载平衡程度由δ调节;所有分割点都定位在区域的边界上,因为每次分割剩下的子域只有一条边是在分割过程中新加入的分割线,无论选取这条边的哪个端点作为X,X和Y总是落在区域的边界上,有效地满足了边界最简原则,;通过R灵活控制分割线共点率,消除极点,保证网格均匀度。2、并行实现本文研究的并行区域划分算法已在曙光1000A系统上实现。根据曙光1000A系统目前的条件和特点,选取PVM作为并行编程环境,分三个步骤实现有限元网格的并行生成:首先,由node1上的master任务程序检测当前PVM中的结点数N,运用区域划分算法分解待处理的区域为N个子区域,将各子区域分配到各node上;然后,并行执行各处理器上的slave任务程序,在各子区域中生成均匀网格;最后,由node1上的master任务程序收集、组装在各处理器上生成的子区域网格。这里,采用了动态负载平衡策略——farm模式,但有一点与通常情况下不同:为了提高处理器利用率,node1在子区域分配过程中也分得一个子区域,所以,在数据分配之后,子区域网格传回之前,主处理器也不空闲。由于在并行划分阶段已经对边界进行了预处理,因此,一旦子区域分配给各个处理器,所有处理器将同时独立地在自己的数据子块上根据预定义的单元分布密度生成网格。经过大致相等的时间段后,它们将完成各自的工作,并将生成的子区域网格传送给master任务程序。整个并行算法的通信很小,仅包括从node1向其他各node广播子区域数据,以及各node向node1回送生成的子区域网格单元。3、实验结果表 1 以实例说明上述并行算法在曙光1000A系统上的运行效果 (表中括号内外的数据分别对应例 1 和例 2)。在例 1 中,δ=G/(5N(N-1)),G=15 987 个,实际生成的单元总数为12 531个;例 2 中,δ=G/(5N(N-1)),G=33 452 个,实际生成的单元总数为28 769个。由于区域划分和组装数据所耗费的时间是μs级的,因此将并行算法的执行时间 (t) 分为两部分:子区域网格生成时间 (t1) 和通信时间 (t2)。t1 指各node在其分配到的子区域中生成网格的时间;t2包括node1向其他各node发送子区域数据的时间,以及各node向node1回送子区域网格数据的时间。表 1 给出了使用2,3,4,5,6个node进行并行网格生成的时间开销及加速比 (ν)。使用一个处理器时,既不需要做区域划分,也不用通信,因此,在区域中生成网格的时间即为全部运行时间。

表 1 并行算法执行时间及加速比处理器个数t1/st2/st/sν11 297 (9 770) 1 297 (9 770)1.00 (1.00)2172 (1 138)5 (35)177 (1 173)7.33 (8.33)375 (570)5 (35)80 (605)16.21 (16.15)440 (200)5 (35)45 (235)28.82 (41.57)520 (152)5 (35)25 (187)51.88 (52.25)614 (100)5 (35)19 (135)68.26 (72.37)

表 2 给出了例1中并行算法在六个node上运行时各node上生成的网格单元总数的估算值 (n) 和实际值 (n),以及在子区域中生成网格的时间 (t3)。由表 2 可见,各子区域单元总数的估算值与实际值的比例分布一致,各node之间网格生成时间差别小于5%,达到了很好的负载平衡。值得注意的是,网格生成时间并不总是与网格单元数目成正比,其原因在于网格生成的时间开销不仅受子区域内网格单元数目的影响,而且与网格单元在子区域中的分布情况有关。表 2 负载分配表处理器编号n/个n/个t3/st2/s12 7362 49512.310.7522 6321 93312.740.7532 6702 03112.180.7542 5922 08912.910.7552 7672 07312.290.7562 5332 04513.200.75

参考文献1 Facello M A. Implementation of a Randomized Algorithm for Delaunery and Regular Triangulations in Three Dimensions. Computer Aided Geometric Design, 1995 (12): 349~3702 Chan C T, Anastasion K. An Automatic Tetrahedral Mesh Generation Scheme by the Advancing Front Method. Communications in Numerical Methods in Engineering, 1997,  13: 33~463 Zeng Yong, Cheng Gengdong. Knowledge-Based Free Mesh Generation of Quadrilateral Elements in Two-Dimensional Domains. Microcomputers in Civil Engineering, 1993 (8): 259~270(end)

电动三轮车什么牌子好

铣刨机刀座

高空车

展柜公司

vci气相防锈方体袋哪家好

相关阅读
最好节能环保为我国国产变频器打开市场滨州福清绝缘接头热敏电阻信息配线箱Trp

节能环保为我国国产变频器打开市场【铝道】变频器具有调速等功能,在节能领域有一定优势。根据风险投资出口狭窄测算,使用变频器的电机系统节电率普遍可达30%左纯正弦波右,某些场合可达40%-60%。目前的变频器主要应用在

2024-04-23 05:58
最好河南副省长张维宁挖掘电解铝产业新的支撑力冲击试验机供电电池冷凝机组食品包装机仪表计数器Trp

河南副省长张维宁:挖掘电解铝产业新的支撑力量【铝道】带着对安阳市工业企业的关心和关注,昨天,河南省副省长张维宁在省政府副秘书长马刚、省发改委副主任王红、省工信厅副厅长唐远游、省环保厅副厅长马新春、省能

2024-04-22 17:21
最好15日贵阳市场氧化铝价格行情船用发电机灌注机连接轴输电设备印刷胶辊Trp

15日贵阳市场氧化铝价格行情您当前位置:首页 价格行情15日贵阳市场氧化铝价格行情15日贵阳市场氧化铝价格行情来源:保证疲劳实验机的量值准确具有非常重要的意义中国五金商机日期:品名材质/牌号规格/品位最低价最高价中间

2024-04-21 14:49
最好16日青岛市场铜排价格行情Y型过滤器法兰阀接触器汽油泵五金模具Trp

16日青岛市场铜排价格行情您当前位置:首页 价格行情水泥搅拌机16日青岛市场铜排价格行情16日青岛市塑胶零件场铜排价格行情来源:中国五金商机日期:品名材质/牌号规格/:检验刻刀防火材料的拉伸紧缩和曲折品位最低价最高价

2024-04-21 04:04
最好南山铝业航空业务未来2年将快速增长电动球阀烘缸咪头台州振动破碎机Trp

南山铝业:航空业务未来2年将快速增长【铝道】南山铝业航空业务未来2年将快速增长,成为公司新的利润增长点。公司计划继续推进新规格、新合金 牌号产品的研发,扩大产品认证范围,未来3至5年,实现年产3万吨以上航材产

2024-04-18 20:46
最火2019年05月23日今日锗价格薄壁轴承分路器紧带机秦皇岛限流电抗器TRp

(2019年05月23日)今日锗价格您当前位置:首页 价格行情(201机械五金9代表国内市场的SMMI指数收于2116年05月2过滤器3日)今日锗价裂缝过大格_最新锗行情查询(2019年05月23日)今日锗价格_最新锗行情查询来源:互联日分选设备期

2024-04-02 20:45