搅拌仿真操作详细教程(二):模型的网格划分
先在文前进行一点声明:本文的划分工具,是早已落伍的Gambit。可能很多网友会问,目前这么多主流网格划分工具,HyperMesh、Fluent Meshing、ICEM CFD……为什么会用这个已经停更多年的工具呢?不仅因为笔者刚开始入门数值仿真的时候用的就是Gambit(Fluent当时用的版本是6.2),有更重要的一点原因,是因为现在软件的功能逐渐强大,之前需要很多步骤的操作,现在只要一步就搞定了。这无疑是好事情,使得前处理的时间大大缩短。但是从划分的理念上来讲,我个人认为,功能的完善反倒有时候某种程度上抑制了我们的思考,Gambit虽然繁琐,但是对于一些简单网格的划分,相对比较能体现出划分网格的思路。就像编程一样,思路比语法更重要,有思路的语法才是算法。在下面搅拌槽网格的划分步骤中,有很多看似繁琐的操作,其实是很提现划分思路的操作。当然,这是个人的观点。因为目前大多数时候我也是用Fluent Meshing来进行网格划分的。所以在这一系列的案例教程结束,还会将其他工具的划分情况另出一篇文章,以做对比。Gambit淘汰有他淘汰的道理,毕竟功能方面确实欠缺太多了。Gambit划不了很大的网格,数量过多会崩,而且经常会出现错误,如果没有随时存盘的习惯,很可能划了半天突然直接就退出去了。目前在市面上可能很少看到有用Gambit做教程演示的了吧?那今天,我们就用Gambit试一试划分搅拌槽网格,用这把锈迹斑斑的铁锅,炖一炖大鹅。话不多说,开始就搅拌模型的网格划分过程进行分步骤讲解。 首先进入Gambit,点击左上角的File,下拉菜单中点击Import,类型选择STEP(因为在用PROE建立模型时保存的类型是step格式)。如图所示,见识一下古老的界面吧~在弹出的对话框中,点击browse选择模型文件路径。这里需要说明的,也是Gambit很大的一个缺陷,不可以任意的选择路径文件。一开始Gambit打开的路径在哪里,它默认的路径就在哪里,如果你导入模型的时候选择了别的路径,在Gambit的列表里是显示不出来的。所以笔者用Gambit的时候都是把打开路径和文件路径都设置为桌面,这样一般不会有问题。可以看到对话框里出现了上篇文章保存的mixingtank,双击将模型导入。导入后的模型如图所示。要划分比较细致的网格,需要对这个搅拌槽的模型进行一下处理。在划分前,先将模型摆正,右键点击右下角第二排第一个图标,选择XZ面,如图所示。下面的操作比较重要,我们需要在搅拌桨叶附近区域画一个圆柱,之后要定义这一圆柱为旋转域,方法如下:在搅拌桨叶附近上下方各取一点,将这两点相连,旋转一周形成环面(圆柱的侧面),再将圆环上下形成为面(圆柱的底),听着比较抽象,看操作即懂,如图所示。右上方第二行的五个图标分别为点、线、面、体和组合的操作,先点击第一个图标点操作。注意两点的取值,下面的点坐标为(7,0,8),上面的点坐标为(7,0,13),具体点的坐标是根据模型的尺寸来确定的,你也可以取(6,0,9)、(6,0,12),只不过这个旋转域就相对小一点,也就是距离桨叶比较近。原则上近一些较好,但是这里为了能看的更清楚一点,取的稍微大一些。接着点击线操作,点击黄色高亮区域,按住shift键,分别选中两个点,点处于选中状态时颜色会变成红色和粉色(先选和后选的颜色不同),如图所示,点击apply将两点连线。点击面操作,右键点击第一个图标,选择最下面的旋转生成面操作,点击Edges高亮区域,选择刚才生成的线,线会变成红色表示被选中;Angle表示要旋转的角度,输入360。Axis是旋转轴,点击Define,因为此处只有一个坐标系,所以Coordinate Sys默认的是该坐标系。需要说明的是,在以后遇到的多坐标系存在的复杂模型中,需要在这里选择坐标系。默认绕Z轴正方向旋转。点击apply确定,生成环面如图所示。右键点击面操作,选择第一个图标,即由闭合曲线生成面,生成圆柱的两个底面,如图所示。将上下两个底面分别向上向下延伸(这一步是为了切割搅拌槽)。右键点击面操作,选择倒数第二个图标,即将线沿轨迹扫成面。点击第一个Edges高亮区域,选中上底面,点击第二个Edge高亮区域,选中任意竖直方向上的线,这里选择搅拌槽壁面线为轨迹线。上底面需要朝上延伸,但经常会出现选中的轨迹线沿相反方向,这里解决方法有两种:一是点击Edge下方的Reverse,二是在轨迹线附近点击鼠标中键(中键是一个很好用的功能),就会发现轨迹线上的箭头会变向。点击Apply生成面。以同样的方法将下底面同样沿数值方向扫一个圆柱面出来。接下来要用以上所生成的三个圆柱面和两个底面把这个圆柱体搅拌槽分割成几个体(方便分块划分网格)。方法是(这里操作比较重要,也比较容易错):点击体操作,点击第二行第二个图标Split Volume,即分割体。点击Volume高亮区域选中整个搅拌槽(此时应该是两个体,一个是搅拌桨,一个是被掏去一个搅拌桨的搅拌槽),搅拌槽会变成红色表示被选中,被分割类型选择Faces(Real),即利用实面进行分割。供我们选择的分割面是5个,分别是三个圆柱面和两个底面,因一些面的线是重合的所以往往会选到不需要的线,这里也提供两种方法:- 在选择到共线但不需要的面的时候,点击鼠标中键(又用到中键了),就会发现可以在共线面之间切换,可以轻松找到自己需要的面。
- 在这种面不是很多(5个)的情况下,把他们统统选中,然后在Faces List(点击下箭头进入)中进行筛选,全部选中(Picked)后所有的面成呈现粉色,在Picked栏中再选中面就会变成红色,这样也可以找到自己需要的面。不需要的可以选中后点击向左边移动的虚线箭头,将面移入到未选中区域(Available)。
这里首先我们要处理的是旋转域的小圆柱面和两个底面,把两个长圆柱面移走,如图所示。这里需要注意,在最下方的connected,此时是不选的(系统默认connected处于选中),这三个面都位于搅拌槽内部,与搅拌槽内的面没有直接接触,无需选择connected。点击Apply进行分割。然后再用同样的方法,用两个长圆柱面对体进行分割,此时需要选择connected,因为这两个面与搅拌槽的上下底面相交。补充一点干货,如果操作时选择connected,则划分网格时两部分的网格在结点处是连接的(不论两个体中的网格形状和间距是不是相同),而不选则可能出现节点错开的情况。若不选择connected选项,FLUENT会把面默认设为WALL。接下来用搅拌桨来分割旋转域所在的体,选中旋转域所在的体,分割类型选择Volume(Real),然后选择搅拌桨,点击Apply。现在的模型中,搅拌桨已经多余了(已经包含在另两个体中了),我们需要把这个体删除。点击体操作的最后一个图标,删除体。点击箭头可以看到所有的体。把搅拌桨体从未选中区域(Available)移到选中区域(Picked),点击Apply。再设置两个辅助平面。点击面操作的第二个图标,创建矩形平面。长宽均输入50(数值只要比搅拌槽直径大就可以),方向在XY面上,点击Apply。移动并复 制该平面。首先摆正坐标系。点击面操作第二行第一个图标,移动或复 制面。保证Move被选中,Global中的z里输入8,表示该平面朝z方向平移8个单位,点击Apply。选中Move旁的Copy,表示复 制,数字代表复 制的个数,z输入5,表示沿z方向将该平面复 制到距离5个单位处,点击Apply,如图所示。用这两个辅助平面分割搅拌槽。操作与之前利用实面分割体的操作相同,具体如图所示。再创建一个YZ方向的平面来分割搅拌槽,分别要切割5个体,也就是说分割完以后,算上搅拌域应该有11个体存在,如果不够的话说明操作错误,具体如图所示。分割后的搅拌槽模型如图所示,划分网格的前处理基本完成。我们要将旋转域单独拿出来划分网格,现需要将除搅拌桨以外的部分隐去(并不是删除,而是暂时使其不可见),具体操作是:点击右下角工具栏第二行的第二个图标,名为Specify Display Attributes,意思是指定显示。在第二行Volumes中,将除搅拌域外的所有部分选中(Picked),然后使Visible的状态为Off,表示除搅拌域外其他部分不可见,如图所示。再创建一个YZ向的平面来切割搅拌域的圆柱面。生成平面后,点击面操作第二行第二个图标,面分割。操作与体分割相同,分割后如图所示,下底面不要被该面分割。接下来就是划分网格。点击右上角最上方的第二个图标,网格操作,下方也会对应5个模块,分别为网格的点、线、面、体和组合操作,点击网格线操作。选中旋转域中的线,软件会自动给出划分节点个数,如果觉得不够好可以自行更改,这里的划分方式采用确定节点个数(就像ABAQUS中的布种一样),即选择Interval count,在旁边输入16,表示线上会有16个节点。需要划分相同节点个数的线可以同时选中进行操作。生成面网格。点击网格面操作第一个图标,选中已经划分好线网格的面,无需设置下面的size(因为面网格会根据线网格的节点进行划分,不需要再单独进行设置节点或者间距),点击Apply确认,效果如图所示。接下来划分搅拌域的体网格。将剩余线网格补充完整,点击体网格操作第一个图标,选中该旋转域,网格类型选择Tet/Hybird,点击Apply,如图所示。检查网格质量。点击右下角第二行最后一个像放大镜一样的图标,Display Type选择Range,将3D Element右边的剩余三个形状体都选中,它们都有可能出现。Quality Type默认为EquiSize Skew,点击Update。这里选择的网格质量指标是EquiSize Skew。如图,EquiSize Skew在0~0.78之间(lower-upper)的网格数占了99.99%,说明网格划分质量并不是很好,所以一般需要重新改一下节点个数进行划分,方法是一样的,这里就不再赘述。下面补充几个不同的单元质量评价指标,这里只说3D模型的:- Aspect Ratio: 长宽比,不同的网格单元有不同的计算方法,等于1是最好的单元,如正三角形,正四边形,正四面体,正六面体等;一般情况下不要超过5:1;
- Edge Ratio:长边与最短边长度之比,大于或等于1,最好等于1,解释同上。 EquiAngle Skew通过单元夹角计算的歪斜度,在0到1之间,0为质量最好,1为质量最差。最好是要控制在0到0.4之间。
- EquiSize Skew:通过单元大小计算的歪斜度,在0到1之间,0为质量最好,1为质量最差。2D质量好的单元该值最好在0.1以内,3D单元在0.4以内。
- Size Change:相邻单元大小之比,仅适用于3D单元,最好控制在2以内。
- Volume: 单元体积,仅适用于3D单元,划分网格时应避免出现负体积。
接下来要对旋转域设置边界条件,因网格的干扰,需要隐去网格。点击指定显示图标,将Mesh选项激活,选择Off,点击Apply,网格隐去。点击Operation的第三个图标,在Zones中先点击右边图标Specify Continuum Types,即指定区域类型,有两种,一个是流体(Fluid),一个是固体(Solid),也就是指定所计算的区域,可以不指定,去fluent里面改,这里我们统一用Gambit设置好。 点击Volumes高亮区域,选择旋转域整体,默认类型为Fluid,在Name中输入区域名称,我们输入rotar(旋转),点击Apply确认。点击Zones中左边的图标Specify Boundary Types,即指定边界类型,给所有面赋予边界条件。在旋转域中,圆柱面和两个底面属于交界面,如果不进行设置,计算时流体是流不过去的。分别选中圆柱面和两个底面,在边界类型中选择Interface,在Name中输入名称。需要注意!这三个交界面的名称很重要,在接下来定义搅拌槽的边界条件时,会有与之对应的三组交界面,那三组交界面的名称不能与旋转域中交界面的名称相同,因为说到底它们并不是一个面,而是重合在一起的两个面。但是名称之间需要构成联系,以便确认哪两个面之间是对应在一起的交界面,因为在导入Fluent计算时要设置这三组交界面,如果把不重合的交界面设置在一起,是无法进行计算的。这里说的比较抽象,接下来具体操作后会很容易理解。将三组交界面分别设置为in1,in2,in3,需要记住哪个名称对应的哪个交界面(in1是圆柱面,in2是上底面,in3是下底面)。余下的所有面都是桨叶部分,我们将桨叶设置为壁面边界条件Wall。但是桨叶面很多,一一选中很麻烦,而且有些细小的面容易漏掉。但是由于每个面只能被指定一种边界条件,所以我们可以选中所有的面,统一设置为Wall,而被设置过Interface的面已经不能被设置Wall了,所以只有余下的面被设置为Wall,输入名称blade,点击Apply。旋转域网格划分及边界条件设置完毕,现隐去旋转域,显示搅拌槽其他区域。搅拌槽形状规则,分块较为清晰,故不再一一对每条线每个面单独进行划分,点击体网格操作,选中所有部分,网格类型为Hex/Wedge,间距输入0.5,点击Apply确认。生成网格后检查网格质量,如图所示,可以发现此次生成的网格EquiSize Skew在0~0.47之间(lower-upper)的网格数占了99.99%,说明网格划分质量良好。下面对搅拌槽进行边界条件设置。点击Operation的第三个图标,在Zones中点击Specify Continuum Types,点击Volumes高亮区域,选中搅拌槽所有部分,默认类型为Fluid,在Name中输入stator(定子),点击Apply确认。点击Zones中左边的图标Specify Continuum Types,可以发现刚才定义旋转域的边界条件现在仍然看的到,所以隐去操作只是暂时不显示,所划分的网格和定义的边界条件依旧存在,不会丢失。下面是最重要的部分!定义搅拌槽部分与旋转域相对应的交界面。这里特别要注意名称不可以相同,但要与之对应。在旋转域中我们定义圆柱面为in1,所以搅拌槽内与之对应的交界面我们定义为in11,类型选择Interface。剩余两个底面设置类似,具体如图。接下来分别定义一下边界条件:轴shaft—Wall,搅拌槽外壁tankwall—Wall,搅拌槽底部bottom—Wall,搅拌槽顶部top—Symmetry,其余内部面interior—Interior。(设置内部面时与之前设置搅拌桨叶相同,在设置完其他边界条件后,选中所有面,那些已被定义边界的面不会再被赋予新的边界Interior),如图所示。边界条件定义完毕,显示所有网格。点击File—Export—Mesh导出网格。弹出的对话框中,将名字修改为mixingtank,别激活Export2-D(X-Y)Mesh,这个仅用于2D模型。状态栏内出现这句话表示生成网格文件成功,退出Gambit即可。退出Gambit后,可以看到工作目录下会保存有4个文件,分别是:mixingtank.msh,default_id.dbs,default_id.jou,default_id.trn。jou文件是gambit的命令记录文件,可以通过运行jou文件来批处理gambit命令;dbs文件是gambit默认的储存几何体和网格数据的文件;trn文件是记录gambit命令显示窗(transcript)信息的文件;msh文件即能被fluent求解器读取的文件。 4个文件缺一不可。虽然界面古老,程序复杂,但是用这口锈迹斑斑的铁锅炖了炖大鹅,倒是很有情怀。各位觉得呢?该部分结束,第三部分为——搅拌仿真操作详细教程(三):Fluent求解器设置。
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-12-12
最近编辑:4小时前