有限元并行EBE方法及应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第24卷第17期岩石力学与工程学报V01.24
No.172005年9月
Chinese
Journalo,
.fRockMechanicsand
EngineeringSept.
2005
有限元并行EBE方法及应用
刘耀儒,周维垣,杨强
(清华大学水利水电工程系,北京
100084)
摘要。
结构开裂和破坏过程的三维有限元分析,对大规模数值计算提出了很高的要求。
基于Jacobi预处理共轭梯
度法,推导了适用于分布存储并行机的有限元并行方法。
在数据交换方面,采用一种按需收集、按需散发的数据
交换技术,使得该方法适合于分布内存的并行机,可极大降低数据交换量,提高并行计算效率。
同时,可避免形
成整体刚度矩阵,显著减少内存需求,并可自动实现计算任务的分配。
编制了有限元并行计算程序,采用悬臂梁算例对其进行了验证,并和普通有限元方法进行了对比,然后应用于拱坝的有限元数值分析和基于网格加密技术的四点弯曲梁开裂过程的数值模拟中。
指出该方法和区域分解方法的并行实现在本质上是相同的,但EBE方法更具有工程实用意义。
计算结果表明,对复杂的三维结构,该方法是一种很有效的并行计算方法。
关键词I岩土力学;有限元法;element-by—element;并行计算;拱坝;开裂中圈分类号:TU
443
文献标识码:A文章编号:1000—6915(2005)17—3023—06
PARALLELFINITE
ELEMENTANALYSISBASEDON
ELEMENT-BY.ELEMENTMETHODANDITSAPPLICATION
LIUYao—ru,ZHOU
Wei—yuan,YANGQiang
(DepartmentofHydraulicandHydropowerEngineering,TsinghuaUniversity,Beijing
100084,China)
Abstract:In3Dfiniteelementanalysisofstructurefailureprocess,largeSCalenumericalanalysishasincreasedthe
demandforhigh—performancecomputing.Theelement—by—element(EBE)methodfordistributedmemory
processors(DMP)isformulated
based
on
theJacobi—preconditionedconjugategradient(J—PCG)method.For
data
exchange,ascheme
whichonlygathersandscattersnecessarydataisadvisedtomakeEBEmethodavailablefor
distributed—memoryparallelcomputers.Inthisway,itwilldramaticallyreducedataexchangeandconsequentlyimproveefficiencyofparallelcomputing.Atthe
salIle
time,the
formation
ofglobalstiffnessmatrix
Can
beavoided;
greatlyreducingtherequirementforthestorage,andtheassignmentofjobsCanbe
doneautomatically.A3Dparallel
finiteelementcodeisdevelopedusing
MPICHandC/C++language.Numerical
tests
on
cantileverbeamindicatethat
theyarecorrect.Thenitisappfied
to
thefiniteelementanalysisofXiluoduarch
damprojectandnumericalanalysis
offractureprocessoffour-pointsheartestbased
on鲥drefiningtechnology.Itisthesame
in
essence
forEBE
methodanddomaindecompositionintask
allocation.Theresultsshowthatfortheanalysisof
the3Dirregularand
complicated
structures
likearch
dams,thefiniteelementEBEmethodiseffectiveandreliable.
Keywords:rockandsoilmechanics;finiteelementmethod:element-by—element;parallelcomputing;archdarn;
cracking
1引言
结构稳定和破坏过程的三维有限元分析,需要
加密网格和采用精细的荷载步长,对高性能并行计
算提出了很高的要求,其关键问题是计算任务的分配和大内存需求问题。
对有限元并行计算而言,传统方法是采用方程组求解并行和区域分解方法。
方
收藕日期I2005—02—24;修旬日期l
2005—05—08
基金项目I国家重点基础研究发展规划(973)项目(2002CB412708):中国博士后科学基金资助项目
作者■介t刘耀儒(1974一)。
男,博士,1998年毕业于清华大学水利水电工程系水工结构专业,主要从事并行计算、拱坝和岩石边坡静动力稳定方面的教学与研究工作。
E-mail:liuyaoru@tsinghua.edu.ca。
岩石力学与工程学报2005年
程组求解并行即只对方程组的求解采用并行方法,而对其他步骤仍采用传统的串行方法。
区域分解方法采用的是子结构的方法,每个计算节点承担其中一个子结构的计算。
文[1】采用方程组求解方法对结构的动力响应进行了并行计算,文[2,3】采用区域分解方法分别对平面锚固问题和地下洞室问题进行了有限元并行计算。
其中,方程组求解并行比较容易实现,但是当问题规模增大时,它会大大增加对内存的需求,可能会涉及到内外存交换技术,使得计算速度降低。
如果计算区域相对比较规则,剖分的子结构比较好,则采用区域分解方法可能会获得一个很高的并行计算效率。
但是对于三维问题而言,区域分解算法仍是一个没有得到很好解决的问题。
有限元EBE(element—by—element)方法则能很好的解决传统三维有限元并行计算所面临的问题。
该方法最初由文[4】提出,由于该方法可以大幅度减少对内存的需求,而且其并行性很好,因此得到了广泛的研究。
文【5]首先给出了基于EBE方法的共轭梯度法的实现算法,文[6】讨论了其在粗粒度并行机上的实现,文[7,8】将EBE方法和区域分解相结合,用于分布存储的并行机上,取得了很好的并行计算效率。
但是,上述研究主要针对共享存储并行机进行,或者是对基于EBE方法的预处理技术进行研究,而对于复杂结构的三维有限元问题在分布存储并行机上的应用研究则相对较少。
并行计算发展的趋势是分布存储并行计算,而EBE方法在这方面的文献相对较少。
本文基于Jacobi预处理共轭梯度法,给出了适用于分布存储并行机的有限元EBE并行计算算法。
对于数据交换,采用按需收集、按需散发的数据交换技术,以减少数据交换量。
根据该算法,采用MPICH和C,C++语言,编制了有限元并行计算程序PFEM(parallelfiniteelementmethod),并在清华大学计算机系高性能计算技术研究所的“可扩展高性能集群计算机系统”上实现。
在算例验证的基础上,应用于溪洛渡拱坝的有限元数值分析和四点弯曲梁的开裂数值模拟中。
2有限元EBE方法
有限元EBE方法的基本思想为:在求解过程中,不形成整体刚度矩阵,只保存单元刚度矩阵,所有计算在单元一级上进行。
并行实现时,该方法不涉及复杂的区域分解操作,和网络的拓扑结构无关。
方程组的求解一般采用预处理共轭梯度法(preconditionedconjugategradient,PCG)。
对于预处理技术,本文采用Jacobi预处理【引,即对角预处理。
预处理矩阵用一个向量m来保存,对EBE方法,可将其映射到每个单元上,记为m(e)。
在方程组求解前,m(e)可以由单元刚度矩阵的对角元素,通过相邻单元的数据交换来形成。
借助节点联系矩阵的概念‘51,可以得到基于Jacobi预处理的EBE—PCG算法‘101:
(1)初始化:
①给定初始值:戈(。
)=0,,.(8)=易(“。
②生成预处理矩阵:彬曲刊。
’。
量“’。
③求解方程组(m(“,Z,oe’)=ro'“。
④计剿瞄’。
磊挚。
和如=驴E))TS‘“,y=7/0。
⑤P‘8’=S‘“。
(2)计算U‘。
’=A‘8’P‘“,
吉2萎(p和’川扣))帆
(3)更新工(8)和,(e):x‘8’=x‘。
’+口P‘。
’,r(e):r(“一口M(“。
(4)求解方程组(m(“,zl。
)=《“,得到z{“。
(5)计剿曲掣。
J警“’∥曲妒))T弘,和‰。
=∑∥。
(6)如果托。
<eyo,则停止迭代。
(7)更新p‘“:p‘。
’=S‘。
’+(靠。
/r)p‘“,并令y=‰。
,转(2)。
在上面的算法中,o符号指所有单元(包括第e号单元)对第e号单元的所有节点的贡献的累加。
a两(P)表示所有与第e号单元相连接的单元。
对于迭代终止的准则,本文采用残余向量的二范数,即
护1}I:≤s|lr0|I:(1)式中:£为给定的精度,为一很小的值,本文取1.0×】0~。
第24卷第17期刘耀儒等.有限元并行EBE方法及应用・3025・3有限元EBE方法的并行实现
在分布存储并行机上进行计算时,每个处理器
只保存一部分单元信息,包括单元刚度矩阵和单元
荷载向量,并只进行与该部分单元有关的计算。
计
算流程如图1所示。
计算单元刚度矩阵Il计算单元刚度矩阵II计算单元刚度矩阵
计算单元荷载向量ll计算单元荷载向量l……I计算单元荷载向量
边界条件处理ll边界条件处理lj边界条件处理
EBE-PCG方法求解方程组(有数据交换)
单元节点位移单元节点位移单元节点位移
单元应力l单元应力单元应力
图1有限元并行EBE方法的计算流程图
Fig.1FlowchartofFEMbasedonEBE
policy
具体计算步骤如下:
(1)各个处理器并行计算单元刚度矩阵和相应的右端荷载向量,并施加边界条件。
(2)采用EBE.PCG算法求解方程组,得到单元节点位移。
(3)利用单元节点位移,各个处理器并行计算单元应变和应力。
(4)单元节点位移集成总体节点位移并输出。
其中,在步骤(2)中,各个处理器之间需要进行通信以交换数据。
具体实现时,可以只交换与边界节点(各处理器间有关联的节点)有关的数据,并且采用压缩形式进行传输。
这样,计算规模增大时,可保证处理器间交换的数据量不会增加太大。
4算例
基于上面算法,使用C/C++语言和MPI通信标准[10’11】,编制了PFEM程序,并在清华大学计算机系高性能计算科学研究所的“可扩展高性能集群计算机系统”中实现。
该系统由36个节点组成,每个节点由4路PIII至强700MHz处理器构成的SMP计算机。
节点间有3套网络互联系统(100MB快速以太网、Myrinet高速互连网以及清华大学自主开发的TH—GBNet互连网),均可单独工作。
系统峰值运算速度不低于2000亿次/s,网络端口传输速度大于2Gbps,网络通信延迟小于10“s。
在程序验证的基础上,应用于溪洛渡拱坝的三维有限元并行计算和四点弯曲梁的开裂数值模拟中。
4.1程序验证和计算效率
使用矩形截面悬臂梁,分别施加集中力和均布面力对程序进行了验证,计算结果如表1所示。
裹1PFEM穗序的计算精度
Table1CalculationprecisionofPFEMcode
和普通有限元的计算效率对比如表2所示,其中M衙为迭代次数,丁为计算时间。
JCG方法指基于Jacobi预处理的共轭梯度法。
CG和配G方法采用的是二维等带宽存储,并且采甩Cuthill—Mckee算法【12】进行了带宽优化。
由表2可知,与普通有限元方法相比,即使不采用任何预处理,EBE方法也能降低迭代次数。
这是因为共轭梯度法对舍入误差的影响是很敏感的,而EBE策略不集成整体刚度矩阵,在迭代过程中,不会对整体刚度矩阵中的零元素进行计算,在一定程度上消除了计算机舍入误差的影响。
衰2和蕾通有限元的计算效率对比
Table2ComparisonofcalculationefficiencybetweenEBEmethodandnormalFEM
另外,EBE方法由于存储的数据较少,使得计算量也大为减少,因而计算时间大幅度降低。
以一个860个节点、520个单元的拱坝一地基系统的网格为例,传统求解方法中的整体刚度矩阵采用二维等带宽存储,分别采用Cuthill—Mckee算法‘121和对
・3026・岩石力学与工程学报2005年
称Cuthill—Mckee算法进行了带宽优化,与EBE方法的内存需要量进行了比较,如表3所示。
单元类型为八节点六面体单元,每个单元刚度矩阵的存储量为300(只存储上三角矩阵)。
由表3可知,EBE方法的内存占有率只是传统整体刚度矩阵的内存需求量的24.5%和19.4%。
即使采用一维变带宽存储,其存储量仍然比EBE方法大很多。
襄3和普通有限元的内存需求对比Table3ComparisonofmemoryrequirementbetweenEBEmethodandnormalFEM
4.2溪洛渡拱坝一地基系统的并行计算
溪洛渡拱坝一地基系统的有限元网格包括24849个节点,21787个单元,单元类型采用八节点六面体单元和六节点五面体单元。
计算网格如图2所示。
图2溪洛渡拱坝的计算网格
Fig.2Calculation
meshofXiluoduarchdam
坝体和地基共包含28种材料,计算考虑了坝体的施工过程。
并行计算效率如表4所示。
衰4并行计算效率
Table4Parallelcalculationefficiency
由表4可知,即使对于拱坝一地基系统这样不规则的网格,而且其半带宽也比较大,当使用16个CPU进行计算时,并行计算效率仍然可以达到46%,说明EBE方法对于三维有限元的并行计算是非常有效的一种方法。
4.3开裂计算
在开裂计算中,假定材料的破坏过程主要是由于内部微裂纹的萌生和扩展造成,变形中的塑性变形部分相对很小。
当有限元分析的单元分得很小时,可以假定该单元具有弹脆性性质,即当单元的应力或者应变状态满足最大拉应力准则[131和Drucker-Prager准则时,单元发生拉裂和剪切开裂。
最大拉应力准则为
矿<五(单元不开裂’lf2)
仃。
≥五(单元开裂)
式中:仃。
为单元的最大主拉应力,.^为材料的抗拉强度。
Drucker-Prager准则为
f=t:rJl+,!坨一H=0(3)式中:,。
为应力第一不变量,,:为应力第二不变量。
当出现开裂单元后,将开裂单元的弹性模量修改为一个很小的值,即
Ef=sEo(4)式中:屋为开裂单元的弹性模量,昂为该单元的初始弹性模量,£为一个很小的值(PFEM程序取10-5)。
然后在外荷载不变的条件下,重新生成单元刚度矩阵、处理边界条件和外荷载,再次进行有限元的弹性计算,然后重新判断是否有新的开裂单元出现。
直到该加载步没有新的开裂单元出现或者结构破坏失敛为止。
采用PFEM程序,对四点弯曲梁试件的开裂进行了数值模拟。
计算示意图如图3所示。
JP
图3四点弯曲梁(单位:IIlⅡ1)
Fig.3Four—pointsheartestof
beam(unit:mm、
第24卷第17期刘耀儒等.有限元并行EBE方法及应用・3027・开裂过程如图4所示。
裂纹的计算结果和试验
结果的对比如图5所示【l引。
由于有限元EBE方法不
形成整体刚度矩阵,保存的是单元刚度矩阵,因
此,基于大规模数值计算和加密网格技术,采用连
续介质的力学的方法模拟裂纹的扩展过程时,在数
值的处理上是非常方便的。
图4四点弯曲梁的开裂过程
Fig.4Fractureprocessoffour-pointsheartest
计算效率的最优。
而EBE方法则不一定是最优的,
它需要交换的数据一般来说要比区域分解方法为
多,但是EBE方法的任务分配的实现和操作要方便
得多,在适当降低并行效率的情况下,获得一个实
际应用中方便操作的并行计算算法还是具有工程实
用意义的。
以上面的溪洛渡拱坝一地基系统的有限元网格
为例,PFEM程序是按照单元顺序依次将单元分配
到各个处理器的。
当采用4个CPu进行计算时,分
配到各个CPU上的单元组成的空间形状如图6所示。
(a)分配到cPu0上的单元组成的空间形状
(b)分配到cPul上的单元组成的空间形状
图5计算结果和试验结果的对比
Fig.5Comparisonofresultsbetweencalculationand
experiment(c)分配到CPU2上的单元组成的空间形状5有限元EBE方法的本质
实际上,EBE方法在本质上和区域分解方法是
相同的,都是子结构方法,不同的是,EBE方法是
建立在单元一级上的子结构方法。
并行计算时,EBE
方法按单元为计算单位进行随机分配,而区域分解
是按照某种剖分策略,对计算区域进行分解(每个处理器负责其中~部分区域的计算),目标是使得分解后的各处理器之间相关联的节点数目最少,以达到
(d)分配到cPu3上的单元组成的空间形状
图6采用4个CPU时的单元分配Fig.6
Elementdistributionwith4
processors
・3028・岩石力学与工程学报2005焦
由图6可知,每个处理器所承担的计算区域可
以不连续,可以有效解决区域分解算法在三维复杂
结果上应用的困难。
但这也同时造成了处理器间关
联的节点数目较多,交换的数据较多,因此会对计
算效率造成一定的影响。
6结论
有限元EBE方法对于三维有限元并行计算和基
于连续介质力学的开裂,尤其是不规则的网格数值
模拟来说,是一种非常好的并行方法。
另外,EBE
方法对结构的几何形状,网格中单元和节点的编号
没有任何限制,对于像拱坝这样的复杂三维有限元
分析和开裂的并行数值模拟,可避免区域分解中对
复杂计算区域进行分解所带来的问题,计算任务的
分配相对也比较简单。
对于基于大规模数值计算和
网格加密技术的开裂数值模拟,在数值处理上也是
相当方便的。
综上所述,三维有限元EBE方法是相
当有发展前途的一种并行计算方法。
参考文献(References):
【2】【3】李渊印,金先龙,李丽君,等.基于精细时程法的结构动力响应并
行分析系统【J】.岩石力学与工程学报,2005,24(1):18—22.(Li
Yuanyin,JinXianlong,LiLijun・eta1.Parallelanalysissystemfor
structuraldynamicresponsesbasedonhighaccuracydirectintegration
method[J].ChineseJournalofRockMechanicsandEngineering,
2005,24(1):18—22.(inChinese))
张友良,冯夏庭,茹忠亮.基于区域分解算法的岩土大规模高性
能并行有限元系统研究【J】.岩石力学与工程学报,2004,23(21):
3636—3641.(ZhangYouliang,FengXiating,RuZhongfiang.
Large—scalehighperformanceparallelfiniteelementsystembasedon
domaindecompositionmethodingeomechanics[J].ChineseJournalof
RockMechanicsandEngineering,2004,23(21):3636—3641.(in
Chinese))
茹忠亮,冯夏庭,张友良,等.地下工程锚固岩体有限元分析的并
行计算【J】.岩石力学与工程学报,2005,24(1):13—17.(Ru
Zhongliang,FengXiating,ZhangYouliang,eta1.Parallelfinite
elementanalysisofboltedrockmassinundergroundengineering[J].
ChineseJournalofRockMechanicsandEngineering,2005,24(1):
13—17.(inChinese))
(4】HughesTJR,LevitI,WingerJ.Anelement-by-elementsolution
algorithmforproblemsofstmctural
andsolidmechanics[J].Compumr
MethodsinAppliedMechanicsandEngineering,1983,36:241—254.
【5】LawKH.Aparallelfiniteelementsolutionmethod[J].Comput.
Street.,1986,23:845—858.
【6】6KingRB,Sonnadv.Implementationofanelemant-by・element
solutionalgorithmforthefiniteelementmethodonacoarge・grained
parallelcomputer[J].ComputerMethodsinAppliedMechanicsand
Engineering,1987,65:47—59.
【7】GullerudAS,DoddsRH.MPI—basedimplementationofaPCGsolver
using
anEBEarchitectureandprecondifionerforimplicit,3Dfinite
elementanalysis[J].ComputerMethodsinAppliedMechanicsand
Engineering,2001,79:553—575.
【8】BovaSW,CareyGEAdistributedmemoryparallel
element-by-elementschemeforsemiconductordevicesimulation[J].
Computer
MethodsinAppliedMechanicsandEngineering,1998,
181:加3—423
【9】KhanAI,ToppingBH.Parallelfiniteelementanalysisusing
Jacobi・conditionedconjugategradientalgorithm[J].Adv.Engrg.Soft,
1996,25:309—319.
【10】刘耀儒.三维有限元并行计算及其在水利工程中的应用【博士学位
论文】【D】.北京:清华大学,2003.(LiuYaom.Parallel3Dfinite
elementanalysisanditsapplicationtohydraulicengineering[Ph.D.
Thesis]【D】.Beijing:TsinghuaUniversity,2003.(inChinese))
[11】GroppW,LuskE,SkjellumA.UsingMPI:PortableParallel
ProgrammingwiththeMessage-passingInterface(SecondEdition)[M].
London:MITPress,1999.
【12】CuthillE,MckeeJ.Reducingthebandwidthofsparsesymmetric
matrices[A].In:ProceedingsofACMNationalConference,
AssociationforComputingMachinery【C1.NewYork:[S.n.】,1969.
157—172.
【131陈永强,郑小平,姚振汉.非均匀材料的应变软化及叠层复合材料
破坏过程的数值模拟【J】.计算物理,2003,20(1):14—20.(Chen
Yongqiang,ZhengXiaoping,YaoZhenhan.Explanationofstrain
softeningandnumericalmodelingtothefailureprocessoflaminated
compositematerial[J].ChineseJournalofComputationalPhysics,
2003,20(1):14—20.(inChinese))
【14]CarpintetiA,AliabadiM.ComputationalFractureMechanicsin
ConcreteTechnology[M].Southampton・UK:WPress,1999.。