有限元设计软件生成网格的PAVING算法.docx

有限元设计软件生成网格的PAVING算法.docx

ID:62029048

大小:791.99 KB

页数:25页

时间:2021-04-15

有限元设计软件生成网格的PAVING算法.docx_第1页
有限元设计软件生成网格的PAVING算法.docx_第2页
有限元设计软件生成网格的PAVING算法.docx_第3页
有限元设计软件生成网格的PAVING算法.docx_第4页
有限元设计软件生成网格的PAVING算法.docx_第5页
资源描述:

《有限元设计软件生成网格的PAVING算法.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、优选有限元设计软件生成网格的PAVING算法一、简介使用有限元软件分析计算几何体的物理性质,其计算的过程可以划分为几个大的模块,输入几何体区域→为该区域生成一个网格→对生成的网格施加一个干扰→从受到干扰的网格开发分析数据→确定几何体的物理行为。分析计算流程图如图1所示。图1有限元分析的模块在有限元分析的前处理模块中,网格生成时很重要的一个步骤。生成网格的质量会影响后处理计算结果的精度。当前,行业内流行多种网格生成的算法,各有各自的特点,该部分内容在本文国内外研究现状一节中已经详细阐述。其中paving算法健壮性良好,计算

2、速度快,而且生成的网格质量好。本节主要阐述采用C++语言实现paving算法的实现过程。如图2所示,采用paving算法生成网格的算法流程图,从输入边界数据到最后输出划分好的网格,其中主要有生成新行,平滑处理,缝合处理,边界相交处理等几个子模块。25/25优选图2Flowchartofpavingalgorithm为了清晰理解上述paving算法的流程,以图3所示为例,图a当中为输入的原始外边界数据,围成待划分网格的区域。选择边界上的一行节点为基础,添加生成一行新的浮动节点,生成顺序为沿着外边界按逆时针方向进行。对新生成

3、的浮动节点进行平滑处理,使节点围成的单元的internalangle以及aspectratio变得更为合理,单元更趋近于规则四边形。对剩余的待划分网格区域进行缝合,检查单元是否相交,对相交的单元进行处理,对单元进行调整,直到整个区域生成高质量的网格为止。图3paving算法铺筑单元示意图依据图2所示流程图,生成相应的伪代码:DoRowchoiseWhileaddrowisnotplete25/25优选AddrowportionSmoothrowportionSeamboundaryIfintersectionoccurs

4、thenConnectoverlapsSeamboundaryEndifRowadjustmentIfintersectionoccursConnectoverlapsSeamboundaryEndifWhile(closurecheckisnegative)Clean-upmesh二、分部详细说明1.输入边界数据根据算法的流程图中,首先要输入待划分网格的边界数据,确定区域的内边界和外边界。明确得到边界节点数据之后,逐个对每个节点进行分析对对其进行分类,计算流程如图7所示。对节点分类的依据是该节点的内角,如图6所示。根据

5、节点内角的大小,将其划分为四类,分别为边节点,角节点,回转节点和端节点。25/25优选图5平面区域的内边界和外边界图6节点相关的几个概念图7获取边界节点信息计算流程依据上图所示流程图,可以得到获取边界节点信息的伪代码:fstreamfread(boundary.txt);25/25优选do{GetnodeinnerangleInputangletolerancea1a2a3a4a4a6Classifythenode3}While(nodeclassifyisnotpleted)Determinewhetherasimpl

6、eorprimitiveshapeexistPropagatesuccessivelyinwardfromthepermanentboundaries2.闭合检查每次确定待划分的面域之后都要对该面域进行一次闭合检查。检查区域边界上的节点总数;边界节点总数是否大于6,如果大于6,则选择一行节点,分别对每一行边界接点进行生成新节点;如果等于6,则对面域进行闭合,根据待闭合面域的形状形成两个、三个或者四个四边形单元;如图8所示;如果等于4,则插入一个四边形单元对面域进行闭合如果等于2,进行一次缝合,即可将面域闭合如果等于0,铺

7、筑工作结束25/25优选图8六个节点面域的闭合方法闭合检查的计算流程图如图所示:图9检查闭合的计算流程根据图9所示的流程图,可以生成其伪代码:Getthenumberofnodesremaininginthepavingboundary25/25优选Switchnodenumber{Case0PavingispleteBreakCase2SeamtheboundaryBreakCase4InsertaquadrilateralelementbreakCase6Form2,3,4newquadrilateralelemen

8、tsBreak}3.新增行接口:上面一步进行闭合检查,如果待划分的面域,边界上的节点数大于6,则进行生成新行节点。首先选定的一行固定边界节点,根据该行节点分类,生成新的一行节点。具体生成新行节点的计算流程图如图10所示.25/25优选图10生成新的浮动边界节点的计算流程根据其计算流程图,可以生成的伪代码为:选择一行已

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。