1)相关数据的产生;
2)网格的实际生成。
在网格的生成过程中,还要考虑关的物理属性,与相应的几何项联系起来。一个网格的生成可以归结为将分析域分解为原始子域, 对每一个子域提供特征点、线、面、体。通过这些信息, 网格生成器产生有限单元网格以覆盖整个区域。实际上, 生成网格的过程还常常包括一个前处理过程,以便产生适用于网格生成器的信息。
2.1.3 网格划分的基本步骤
网格划分的过程一般包括以下几步:
1)了解计算分析任务,不同的任务对网格的要求不同。研究分析对象,对象包括几何模型、载荷、约束条件等;对几何模型进行分析简化;了解载荷的特征;分析约束等。
2)确定要选择的单元,包括单元类型、阶次和形状的确定。应考虑多方面的因素,如结构的复杂程度、应力和变形特点,载荷和约束条件等来选择单元,合适的单元选取可以提高计算效率,减少计算模型,反之则可能影响计算结果。
3)划分网格。有限元分析计算的精确度和效率与生成网格的质量有很大关系,所以划分网格时要充分考虑各种因素,如误差准则,以及网格划分的基本原则和方法,以减少产生质量差的网格。
4)检查网格质量,修改和编辑网格单元。要及时检查并修改存在问题的网格,通常采用手动操作,调整单元的节点位置尺寸大小等。修改操作通常是在己生成网格的基础上进行,不建议重新划分网格。
5)对网格的节点和单元进行优化。网格划分检查完成后,还要对网格的节点、单元的编号进行优化,因为这些标号会影响结构总刚度矩阵的带宽与波前数,从而影响计算的时间和存储空间的大小。合理的节点编号有利于提高计算速度和计算精度,这对于大型的复杂结构非常重要。
2.2 常用的网格生成的算法
迄今为止,提出并得到应用的有限元网格生成算法有很多,主要分为两类:结构化方法,非结构化方法。
结构化方法是指单元的节点之间只有有限的几种连接方式。生成的网格区域内所有的内部节点都具有相同数量的毗邻单元和相同数量的邻近结点。网格单元全是四边形单元(二文平面或三文曲面),或是优尔面体单元(三文实体)。
非结构化方法是指单元的节点之间可以以任意形式的方式连接,生成的网格区域内的内部节点不具有相同的毗邻单元,即与网格剖分区域内的不同内节点相连的网格数目是不同的。网格单元一般是三角形单元和四面体单元。
图2.1是如今常用的网格生成算法。本文主要关注的是非结构化方法中的Delaunay三角化算法。
下面简单介绍一下几种常用的算:
(1)八叉树法
八叉树法[4]最初是在CAD/CAM造型体系中产生并发展起来的。八叉树又分层树结构,该方法的基本思想:将待剖分的实体空间递归的划分成8个,每个部分称为节点,组成具有8个分支的树形,每个节点包含各自的信息点的状态信息,节点与其父节点及其子节点之间的关系。由指定的判断序断每个节点的状态信息,即节点与实体的位置关系:节点在实体空间外状态;节点在实体空间内状态为满;节点一部分在实体内一部分在实体外则状态空。如果节点的状态是空或者满,就不再划分该节点并使其成为叶子节点节点的状态是部分空,则使其成为父节点,并将其所在的实体空间划分成,每部分成为其子节点,重复操作此划分,直至待剖分的实体空间划分毕。
其实,八叉树法是一种基于栅格法(Grid一basedApProach)。基于栅格法的基步骤是,首先将包含待剖分区域的栅格(尺寸大小相同或不同)覆盖在目标区域,将完全或者部分落在待剖分区域内的栅格单元保留,而去除完全落在待剖分域外的栅格单元,并调整、剪裁或再分解与实体边界相交的栅格单元,以便其更精确的逼近待剖分区域,最后对内部的栅格和边界处的栅格做网格划分,并进行光滑技术处理,从而完成待剖分区域的有限元网格划分。 MATLAB+Delaunay三角剖分算法网格生成方法的研究(3):http://www.youerw.com/zidonghua/lunwen_9243.html