二维三角形单元有限元自动剖分的一种新方法
程树康 林 元 (哈尔滨工业大学)
【摘 要】针对有限元数据处理的缺点,提出一种新的有限元自动剖分方法,即借助于Auto CAD软件进行有限元自动剖分。与通常的自动剖分方法相比,具有优越性和普遍适用性。
【叙 词】有限元法,/Auto,CAD,软件,/三角形单元剖分
1 引 言
有限元法由于网格剖分上较为灵活,有较大的适应性,可以较好地保证解的精度,目前在电机的分析研究设计计算中得到广泛应用。但是,有限元法的数据前处理极为麻烦,虽然人们提出许多自动剖分的有效途径和方法,可是,当求解区域几何形状变化时,原自动剖分程序往往失效。而当求解区域或介质分界面的几何形状很不规则时,自动剖分将极为困难。
本文针对有限元法数据前处理的这一弱点提出一种有效方法,这就是利用Auto CAD绘图软件来剖分求解区域,再从对应的图形交换文件中提取所需的数据,经过处理而形成能直接为有限元计算程序利用的数据文件。
2 方法的基本思路
本文采用三角形单元剖分,在ACAD支持下,先将求解区域用三角形单元剖分,再进行节点编号,从对应的图形数据库中提取有限元主程序所需要的各项数据。
2.1三角单元剖分
通常的三角形剖分大多是先用弧向线和径向线将区域分为网格状,再用对角线将网格分为三角形单元。本文所述方法只利用弧向线完成剖分。事实上,可沿任意二条曲线进行剖分,具有方便性。二条弧线间的部分由Auto LISP语言编写的DIVI程序实现,其框图示于图1。
本文所述方法中对三顶点一律采用逆时针排列,依次画 I、J、 m, 利用Auto CAD实体出现的先后次序功能,构成数据库。
在DIVI命令中,已考虑到第二类边界都在单元的同一条边,如IJ边上的要求。剖分单元的疏密度通过调整弧向线的疏密程度来保证。
考虑到电机中大多为圆形,因此编制了沿二条圆角线进行自动剖分的Auto LISP命令,图2是该程序GDIVI的框图。
2.2不同媒质的区分
不同媒质的区分是利用Auto CAD中的一个基本概念一层来完成的。不同媒质的区域作为实体放在不同层中。各层均使用同样的座标和放大系数,并使各层的实体位置完全对齐。某一层中的某一指定点精确地对准其他层的同一点。提取数据时可从单元位于那一层来判定它属于何种媒质。
2.3节点编号及边界处理
利用Auto LISP语言编制了一条ACAD命令实现节点编号,其程序框图示于图3。它是利用ACAD的辅助命令精确捕捉单元的顶点位置,并在其上画一点。ACAD图形库中,先画的实体的数据在前,因此可自然地确定出节点的编号顺序。
将上述NODE命令与ACAD中层的概念结合起来可输入不同边界的节点信息。即利用NODE命令将边界上的各节点标上点,不同类型边界上的标记点放在不同层中。在提取数据时,可从是否有标记点判别一个节点是否在边界上,而从标记点所在的层去判别节点所在边界的类型。
2.4图形数据的输出
Auto CAD的图形数据库是以一种很紧凑的格式存贮的,而不同机器上的Auto CAD对数据可能使用不同的内部格式,因此图形数据的直接读出是非常困难的。为了便于各ACAD问交换图形,定义了一种“图形交换”文件格式,利用图形编辑的DXFOUT命令可从当前图形文件生成这一格式下的图形交换文件。该文件包含着全部图形数据信息。
2.5数据的形成
用DXFOUT命令生成的图形交换文件分为四段,分别是
a.HEADER-包含有关图形的一般信息;
b.TABLES-包含命令项的定义;
c.BLOCK-包含描述组成图形中各块的实体的块定义实体;
d.ENTITIES-包含图形实体,包括任何块引用。
最后文件以EOF作为结束标志。
用PLINE命令画出的三角形剖分单元与用PoINT命令画出的标记点信息均在ENTIES段中,因此,只需提取实体段中的PLINE和POINT实体数据,并加以分析处理,就可形成所需要的全部剖分数据。这一工作由程序自动实现,程序框图如图4所示。可以看出,该程序还具有检查图形文件和剖分数据是否出错的功能。
图5是利用本文介绍的方法实施的示例。图5a为圆形区域,每层节点数可随意增减;图5b为凸极,极尖小圆弧可较好剖分;图5c是一个齿距梨形槽剖分图。
3 结语
实际使用表明,新的自动剖分方法,具有如下特点
a.适用于任意求解区域的自动剖分,因形状复杂而引起的额外工作量很小。
b.可在ACAD状态下直观显示和控制剖分的疏密度。
c.节省时间。
d.可用简单程序对剖分结果进行检查,并可在屏幕上输出出错位置,增加了可靠性。
e.为优化设计提供了基础程序。
|