基于转换模板的三维实体全六面体网格生成方法
- 格式:pdf
- 大小:324.17 KB
- 文档页数:6
收稿日期:20032042081基金项目:国家自然科学基金(10002006);973国家重点基础研究专项(G 1999032805)联合资助1作者简介:关振群3(19692),男,副教授,硕士;单菊林(19762),男,硕士;顾元宪(19542),男,教授,博士生导师1第22卷第1期2005年2月 计算力学学报 Ch i nese Journa l of Co m puta tiona l M echan icsV o l .22,N o .1Feb ruary 2005文章编号:100724708(2005)0120032206基于转换模板的三维实体全六面体网格生成方法关振群3, 单菊林, 顾元宪(大连理工大学工程力学系工业装备结构分析国家重点实验室,辽宁大连116024)摘 要:以四面体2六面体基本转换模板为基础,提出一系列具有伸缩性的扩展转换模板,可根据需要选择不同模板及其组合,将四面体分解为不同数量、不同密度过渡形式的六面体单元。
这样,初始四面体网格不需要划分得很细,生成的六面体单元数量也可以通过采用不同规格的扩展转换模板而得到控制。
提出了基于CAD 几何造型的边界节点坐标修正方法,从而使边界网格更好地拟合几何模型边界。
关键词:有限元;网格生成;六面体;模板法中图分类号:T P 391.7 文献标识码:A1 引 言有限元法是一种以变分原理为基础的求解场问题的数值方法,核心思想是将待求解场离散化为有限网格并分片插值以逼近原问题的解。
场的离散化,亦即网格生成,是有限元方法在实际应用中的一个主要困难。
六面体单元因其求解精度高的特点在很多有限元分析领域中都是一种十分重要的单元。
在某些情况下,如当用有限体积法与边界适应坐标系统求解复杂形体的控制守恒方程时,只能采用六面体单元进行有限元分析[1]。
对任意复杂三维实体实现可靠、高质量的全六面体网格自动生成一直是CAD CA E 领域内的一个难点。
目前,实现六面体有限元网格生成的算法主要有以下几种:(1)映射法。
该方法在商业CA E 软件包中获得最为广泛的应用,其基本思想是:用手工或半自动方法将全局域分解成几何形状规则的子域,然后在每个子域内进行网格剖分。
映射法的优点是速度快、网格质量高、密度可控制,但同时也有两个严重缺陷:复杂三维域自动分解问题和网格密度过渡问题。
近年来,一些研究者采用中面法[2]进行子域自动分解,但对于复杂的几何形体难以实现全自动分区。
(2)扫描法[3,4]。
即由二维四边形有限元网格通过旋转、扫描、拉伸等操作而形成六面体网格。
这种方法难度较低、较容易实现,在当今大多数的商用CAD 软件或CAD 前置处理软件中均有这种功能。
但是,这种方法只能适用于形状简单的三维物体,且依靠人机交互来实现,自动化程度低。
(3)修正八叉树法[5]。
主要思想是:递归地分解一个包围目标实体的空间区域使得空间尽可能地接近目标实体从而生成单元。
优点是网格密度可控制,易于进行自适应分析。
缺点是网格生成的方向固定,不能满足边界面优先的要求,因此实体边界处单元质量不高并可能有大量四面体单元。
(4)扩展A FT 方法。
如T au tges 和B lacker 提出的编须算法(W h isker W eaving )[6],B lacker 和M eyers 提出的粘贴算法(P lastering )[7]。
编须算法首先生成的并不是六面体网格,而是它的对偶形式2空间缠绕连续集。
一种典型的算法[6]是:首先求得待剖分域表面四边形网格的对偶曲线环;通过对这些对偶曲线环进行拓扑操作使得环与环之间的交点数量减少;当一条曲线环不再与其它曲线环相交时就收缩为一点;当所有对偶曲线环均收缩成一点时算法结束。
粘贴算法是Paving 方法的一种扩展,它基于几何测试来推进网格,但是对于复杂的几何体很难连接内部网格之间的关系。
与粘贴算法形成对比,编须算法基于与全局对偶密切相关的连接信息进行网格推进,边界处几何判据处于次要地位。
该类算法生成的六面体网格质量(尤其是边界单元的质量)是所有算法中最好的,同时它们的实现也具有最高难度。
(5)四面体转换法。
即把一个四节点直边四面体单元分解为四个六面体单元[8,9]。
由于四面体网格的自动划分算法已经很成熟,在自动生成四面体网格后,可以把四面体网格自动地转化为非结构化的六面体网格。
然而这种方法有两个主要的缺点:(1)为了较好地逼近复杂物体的曲面边界,需要生成较多的直边四面体单元,因而得到数量极多的六面体单元。
(2)得到的六面体网格的质量不高。
左旭等[9]采用十节点曲边四面体转换为六面体网格、采用非线性约束优化算法提高了六面体单元的质量,但只是部分地克服了上述两个缺点。
针对上述问题,本文以四面体2六面体基本转换模板为基础,提出了一系列具有伸缩性的扩展转换模板,可将四面体分解为不同数量、不同密度过渡形式的六面体单元;提出了基于几何造型的边界节点坐标修正方法,使边界网格能够更好地拟合几何模型边界。
2 四面体2六面体扩展转换模板四面体2六面体基本转换模板的形式如图2所示。
该模板在工程应用中是有效的,但也存在如前所述的两个主要缺点:网格疏密过渡不灵活和生成单元质量不高,因而该单元的应用并不广泛。
实际上基于该模板可以扩展出一系列更为有效的转换模板。
(1)1~4转换模板它是其它转换模板的基本形式,也称为基本转换模板。
为了叙述方便,本文称之为核。
图1待剖分的目标四面体F ig .1T etrahedron to be subdivided图2基本转换模板Fig .2Basic temp late(2)1~7转换模板如图3所示。
相当于基本转换模板与目标四面体(见图1)有三个面共面的情况。
(3)1~10转换模板图31~7转换模板F ig .31to 7temp late如图4所示。
相当于基本转换模板与目标四面体(见图1)有两个面共面的情况。
图41~10转换模板F ig .41to 10temp late(4)1~12转换模板如图5所示。
相当于基本转换模板与目标四面体(见图1)有两个面共面的情况,但连接方式与1~10转换模板不同。
图51~12转换模板F ig .51to 12temp late(5)1~13转换模板如图6所示。
相当于基本转换模板与目标四面体(见图1)有一个面共面的情况。
图61~13转换模板F ig .61to 13temp late(6)1~20转换模板如图7所示。
相当于基本转换模板与目标四面体(见图1)有一个面共面的情况,但连接方式与1~・33・ 第1期关振群,等:基于转换模板的三维实体全六面体网格生成方法13转换模板不同。
图71~20转换模板F ig .71to 20temp late(7)1~28转换模板如图8所示。
相当于基本转换模板完全在目标四面体(见图1)内部的情况。
图81~28转换模板F ig .81to 28temp late以上转换模板可以组合使用,以完成网格的不同形式的疏密过渡。
转换后的网格还可以进行再细化,例如将一个六面体网格细化为八个小六面体。
3 基本几何操作3.1 三维实体的边界表示几何模型的表面信息是进行曲面网格剖分与边界网格拟合处理的基础。
在大多数实体造型系统中,实体模型的机内表达由构造实体几何(CSG )树和边界表示(B 2R ep )数据共同完成。
通过边界表示数据,可得到对实体模型的几何拓扑信息的层次化的描述。
该描述含盖了组成形体边界的所有几何对象(边界曲面、边界环、边界曲线、顶点等)及它们之间的邻接和归属关系。
本文采用A u toCAD 作为研究开发平台。
A u toCAD 能提供三维实体造型功能,可以将基本体素如圆柱、圆台、圆球、圆锥、楔形体、方体等做并、交、差运算,构造出复杂的三维实体模型。
A u toCAD 提供的开发工具O b ject A RX 在功能上相当完整,可利用它的A c B r 类库[10]来提取三维实体的表面信息,包括几何信息和拓扑信息两个方面。
下面简述提取实体表面信息程序的一般框架:Step 1:建立一个A c B rB rep 对象;Step 2:以读的方式打开A u toCAD 实体,利用A c B rB rep 类的set 方法将A c B rB rep 对象指针指向该实体,获得实体边界表示顶层对象2体对象;Step 3:建立体2面穿梭器,并用set 方法将Step 2中得到的体对象赋给穿梭器,将其初始化;Step 4:用Step 3建立的该穿梭器遍历体对象中包含的所有下层边界表示对象(面对象)。
用穿梭器的get 方法获取穿梭器当前指向的面对象,用nex t 方法使穿梭器指针后移至体对象中包含的下一个面对象;Step 5:提取面对象的相关信息。
若提取边对象或点对象的信息,可将Step 2体对象替换为包含该边或点的面对象或边对象,然后类似地进行3、4、5步操作。
经过上述步骤,就可以得到三维实体模型的外表面的全部信息。
3.2 物理空间与参数空间之间的转换O b ject A RX 的A cGe 类库提供了相当全面的几何操作方法,特别是物理空间与参数空间之间的转换方法在曲面网格生成算法中是不可或缺的。
对于三维曲面,可以用A cGeSu rface 类中p aramO f 方法取得三维曲面上任意点的参数坐标,又可以用A cGeSu rface 类中evalPo in t 方法返回参数坐标所对应的物理坐标;对于三维曲线,相应的类是A cGeCu rve ,物理坐标和参数坐标之间的转换方法与A cGeSu rface 类类似。
4 算法总体流程与边界节点坐标修正方法4.1 三维实体表面网格生成算法的扩展三维实体表面是由若干个面域组合而成的。
这些面域通过公共边界拼合在一起,构成一张连续的、形状复杂的大曲面,称为组合曲面。
图9给出了组合曲面的一个示例,该曲面由六个性质单一的面域拼合而成的,其中包括四个平面、一个圆柱面和一个圆锥面。
组合曲面的有限元网格生成的步骤是[11]:将其分解为一系列性质单一的面域;将各个面域分别映射到各自参数空间;在参数空间上生成有限元网格;将网格反向映射回物理空间;将这些网格剖分结果拼合起来,形成整个组合曲面的网格。
・43・计算力学学报 第22卷 图9组合曲面剖分过程示意F ig .9.T he p rocess of m esh ing 3D com bined surfaces 为了实现后期的六面体网格表面节点的坐标修正,需对现有算法[11]进行扩展。
具体地,在生成实体表面三角形网格时,对网格的节点赋予额外的三个属性:节点的定位类型、所在的曲面(Su rface )或边(Edge ),以及节点参数坐标。
节点的定位类型有4种:02在实体内部;12在曲面内;22在参数边界上;32在两个曲面的交线上。