2.3 布尔操作
ANSYS 14有限元分析自学手册
2.3.1 布尔运算操作
可以使用求交、相减或其他布尔操作来雕刻实体模型。通过布尔操作,可以直接用较高级的图元生成复杂的形体,如图2-21所示。布尔运算对于通过自底向上或自顶向下方法生成的图元均有效。
创建模型时要用到布尔操作,ANSYS 具有以下布尔操作功能。
加:把相同的几个体素(点、线、面、体)合在一起形成一个体素。
减:从相同的几个体素(点、线、面、体)中去掉相同的另外几个体素。
粘接:操作将两个图元连接到一起,并保留各自边界,如图2-22所示。
考虑到网格划分,由于网格划分器划分几个小部件比划分一个大部件更加方便,因此粘接常常比加操作更加适合。
叠分:操作与粘接功能基本相同,不同的是叠分操作输入的图元具有重叠的区域。
分解: 将一个图元分解为两个图元,但两者之间保持连接。可用于将一个复杂体修剪剖切为多个规则体,为网格划分带来方便。
分解操作的“剖切工具”可以是工作平面、面或线。
相交:是把相重叠的图元形成一个新的图元。
无论是自顶向下还是自底向上构造的实体模型,都可以对它进行布尔运算操作。需注意的是,凡是通过连接生成的图元对布尔运算无效,对退化的图元也不能进行某些布尔运算。通常,完成布尔运算之后,紧接着就是实体模型的加载和单元属性的定义,如果用布尔运算修改了已有的模型,需注意重新进行单元属性和加载的定义。
2.3.2 布尔运算的设置
对两个或多个图元进行布尔运算时,可以通过以下的方式确定是否保留原始图元,如 图2-23所示。
命令:BOPTN
GUI:Main Menu > Preprocessor > Modeling > Operate > Booleans > Settings
一般来说,对依附于高级图元的低级图元进行布尔运算是允许的,但不能对已划分网格的图元进行布尔操作,必须在执行布尔操作之前将网格清除。
2.3.3 布尔运算之后的图元编号
ANSYS的编号程序会对布尔运算输出的图元依据其拓扑结构和几何形状进行编号。例如:面的拓扑信息包括定义的边数,组成面的线数(即三边形面或四边形面),面中的任何原始线(在布尔操作之前存在的线)的线号,任意原始关键点的关键点号等。面的几何信息包括形心的坐标、端点和其他相对于一些任意的参考坐标系的控制点。控制点是由NURBS定义的描述模型的参数。
编号程序首先给输出图元分配按其拓扑结构唯一识别的编号(以下一个有效数字开始),任何剩余图元按几何编号。但需注意的是,按几何编号的图元顺序可能会与优化设计的顺序不一致,特别是在多重循环中几何位置发生改变的情况下。
2.3.4 交运算
布尔交运算的命令及GUI菜单路径如表2-4所示。
2.3.5 两两相交
两两相交时由图元集叠加而形成的一个新的图元集。就是说,两两相交表示至少任意两个原图元的相交区域。比如,线集的两两相交可能是一个关键点(或关键点的集合),或是一条线(或线的集合)。
布尔两两相交运算的命令及GUI菜单路径如表2-5所示。
2.3.6 相加
加运算的结果是得到一个包含各个原始图元所有部分的新图元,这样形成的新图元是一个单一的整体,没有接缝。在ANSYS程序中,只能对三维实体或二维共面的面进行加操作,面相加可以包含有面内的孔即内环。
加运算形成的图元在网格划分时通常不如搭接形成的图元。
布尔相加运算的命令及GUI菜单路径如表2-6所示。
2.3.7 相减
如果从某个图元(E1)减去另一个图元(E2),其结果可能有两种情况:一是生成一个新图元E3(E1-E2=E3),E3和E1有同样的维数,且与E2无搭接部分;另一种情况是E1与E2的搭接部分是个低维的实体,其结果是将E1分成两个或多个新的实体(E1-E2=E3,E4)。布尔相减运算的命令及GUI菜单路径如表2-7所示。
2.3.8 利用工作平面作减运算
工作平面可以用来作减运算将一个图元分成两个或多个图元。可以将线、面或体利用命令或相应的GUI路径用工作平面去减。对于以下的每个减命令,SEPO用来确定生成的图元有公共边界或者独立但恰好重合的边界,KEEP用来确定保留或者删除图元,而不管BOPTN命令(GUI:Main Menu > Preprocessor > Modeling > Operate > Booleans > Settings)的设置如何。
利用工作平面进行减运算的命令及GUI菜单路径如表2-8所示。
2.3.9 搭接
搭接命令用于连接两个或多个图元,以生成3个或更多新的图元的集合。搭接命令除了在搭接域周围生成了多个边界外,与加运算非常类似。也就是说,搭接操作生成的是多个相对简单的区域,加运算生成一个相对复杂的区域。因而,搭接生成的图元比加运算生成的图元更容易划分网格。
搭接区域必须与原始图元有相同的维数。
布尔搭接运算的命令及GUI菜单路径如表2-9所示。
2.3.10 分割
分割命令用于连接两个或多个图元,以生成3个或更多的新图元。如果分割区域与原始图元有相同的维数,那么分割结果与搭接结果相同。但是分割操作与搭接操作不同的是,没有参加分割命令的图元将不被删除。
布尔分割运算的命令及GUI菜单路径如表2-10所示。
2.3.11 粘接(或合并)
粘接命令与搭接命令类似,只是图元之间仅在公共边界处相关,且公共边界的维数低于原始图元的维数。这些图元之间在执行粘接操作后仍然相互独立,只是在边界上连接。
布尔粘接运算的命令及GUI菜单路径如表2-11所示。
2.3.12 布尔操作实例
1.设定分析作业名和标题
(1)执行菜单栏中的Utility Menu:File > Change Jobname命令,将打开“Change Jobname”对话框,如图2-33所示。
(2)在“Enter new jobname”文本框中输入文字“rivet”,作为本分析实例的数据库文件名。单击“OK”按钮,完成文件名的修改。
2.建立实体模型
(1)创建一个球。
① 从主菜单中选择Main Menu:Preprocessor > Modeling > Create > Volumes > Sphere > Solid Sphere。
② 在文本框中输入“X=0, Y=3, Radius= 7.5”,单击“OK”按钮,如图2-34所示。
(2)将工作平面旋转90°。
① 从应用菜单中选择Utility Menu:WorkPlane > Offset WP by Increments。
② 在“XY,YZ,ZX Angles”文本框中输入“0,90,0”,单击“OK”按钮,如图2-35所示。
(3)用工作平面分割球。
① 从主菜单中选择Main Menu:Preprocessor > Modeling > Operate > Booleans > Divide > Volu by WorkPlane。
② 选择刚刚建立的球,单击“OK”按钮,如图2-36所示。
(4)删除上半球。
① 从主菜单中选择Main Menu:Preprocessor > Modeling > Delete > Volume and Below。
② 选择球的上半部分,单击“OK”按钮,如图2-37所示。
所得结果如图2-38所示。
(5)创建一个圆柱体。
① 从主菜单中选择Main Menu:Preprocessor > Modeling > Create > Volumes > Cylinder > Solid Cylinder。
② WP X输入0,WP Y输入0,Radius输入3,Depth输入-10,单击“OK”按钮。生成一个圆柱体,如图2-39所示。
(6)偏移工作平面到总坐标系的某一点。
① 从应用菜单中选择Utility Menu:WorkPlane > Offset WP to > XYZ Locations +,如图2-40所示。
② 在“Global Cartesian”文本框中输入“0,10,0”,单击“OK”按钮,如图2-41所示。
(7)创建另一个圆柱体。
① 从主菜单中选择Main Menu:Preprocessor > Modeling > Create > Volumes > Cylinder > Solid Cylinder。
② WP X输入0,WP Y输入0,Radius输入1.5,Depth输入4,单击“OK”按钮,生成另一个圆柱体。
(8)从大圆柱体中“减”去小圆柱体。
① 从主菜单中选择Main Menu:Preprocessor > Modeling > Operate > Booleans > Subtract > Volumes。
② 拾取大圆柱体,作为布尔“减”操作的母体,单击“Apply”按钮,如图2-40所示。
③ 拾取刚刚建立的小圆柱体作为“减”去的对象,单击“OK”按钮。
④ 从大圆柱体中“减”去小圆柱体的结果如图2-42所示。
(9)从大圆柱体中“减”去小圆柱体的结果与下半球相加。
① 从主菜单中选择Main Menu:Preprocessor > Modeling > Operate > Booleans > Add > Volumes。
② 单击“Pick All”按钮,如图2-43所示。
(10)存储数据库ANSYS。单击快捷工具条中的“SAVE_DB”按钮。