ANSYS ICEM CFD三维结构网格生成实例——汽车外流

结构网格生成流程概述

ICEM中生成结构网格(二维和三维)的方法基于多块理论,因此网格的生成过程可以大致分为以下步骤:
1)创建整体Block。
2)分析几何模型,得到基本的分块思想,并划分Block。
3)删除Block,如合并Vertex、合并Block、改变Block的类型等。
4)删除多余的Block。
5)根据具体问题对Block进行操作,如镜像、平移、缩放等。
6)建立映射关系,根据需要移动Vertex。
7)定义Edge上网格参数。
8)生成网格。
9)检查网格质量,光顺网格。
10)导出网格计算。

问题描述与分析

我国汽车工业正在飞速发展,保有量逐年上升,大量的汽车不仅消耗大量石油资源,更增加了环境负担。在节能环保的时代背景下,汽车节能降耗需求急迫。汽车所消耗的能源很大部分是为了克服其在行驶过程中受到的空气阻力,这使汽车空气动力学成为研究热点之一。应用基于计算流体力学的数值仿真对汽车外流场进行研究越来越普遍,相比传统的风洞试验,其具有成本低,周期短等优势。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
本文以汽车外部流动为例,讲解三维结构网格的生成方法,读者在学习过程中应掌握以下知识点:a)Block分析方法;b)创建外流场方法;c)外部O-Block生成方法;d)控制Block显示方法。

修改几何模型

选择汽车模型

Step1、定义工作目录
选择File→Change Working Dir,定义工作目录。
Step2、打开几何模型
选择File→Import Geometry→CATIA V4或者File→Import Model,选择Car_3D.model。
Step3、建立拓扑
单击Geometry标签栏Repair Geometry,在Repair Geometry面板单击Build Diagnostic Topology,在Tolerance文本框中输入3,其余采用默认设置,单击Apply按钮,观察主窗口自动生成的点和线。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
Step4、创建Part
右击模型树Model→Parts→Create Part,在Part文本框中输入CAR,单击“Create Part by Selection”,然后单击Entities文本框后的箭头,在Select geometry面板单击×选择所有的几何元素(包含显示的和隐藏的),单击鼠标中键确定。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流

创建外部流场

Step5、创建外部流场
如图所示,单击Geometry标签栏Creat/Modify Surface,弹出Creat/Modify Surface面板,取消勾选Inherit Part,在Part文本框中输入FAR_FIELD;单击Standard Shapes,在Create Std Geometry栏中单击Box创建标准几何图形;在Merhod栏选中Entity bounds,单击Entities文本框后的箭头,在Select geometry选项板上选Select items in a part,选择Step4中定义的Part;在Scale栏定义X factor=10、Y factor=5、Z factor=10,单击Apply按钮确定,创建结果如下图所示。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
缩小看:
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
注意:本操作创建长方体,长方体尺寸由Entities栏选中的几何模型尺寸及缩放比例(X factor、Y factor、 Z factor)决定。
Step6、定义Part
采用Step4的方法,参考下图定义各个Part,定义完成后各Part显示不同的颜色,模型树的变化如图所示。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流

调整汽车在计算域中的位置

汽车的几何模型仅取了一半,当前汽车模型位于外部远场的中心位置,需将其调整至外流场的对称面位置。
Step7、测量P_A和P_B的距离
单击工具栏Measure Distance,然后在主窗口依次选择P_A和P_B,在信息窗口显示信息“1:Distance:24436.09024766028;Components:23400 -2000 -6750.0004882813”,即AB的模为24436.09024766028,AB(x,y,z)=AB(23400,-2000,-6750.0004882813),A点与对称面Y方向的距离为2000。
Step8、调整汽车在计算域中的位置
单击Geometry标签栏Transform Geometry,弹出Transformation Tools面板,单击Select文本框的箭头,选择Part(CAR);单击Translate Geometry,然后在Method下拉列表框中选择Explicit,根据Step7的测量结果定义Y Offset=-2000、X Offset=Z Offset=0,将汽车移动至对称面,平移前后对比如图所示,至此完成所有几何模型修改工作。
原本在正中间的变为以Y轴为对称的,(且X、Z的坐标轴变为了0)
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
注意:本操作通过定义X、Y、Z轴平移量定义平移方向和距离。
Step9、保存几何模型
选择File→Geometry→Save Geometry As,保存当前的几何模型为CAR_3D.tin。

创建Block

分析Block生成策略

Step10、分析模型几何特点
Y方向视图集中体现了汽车的几何模型轮廓,是创建Block的难点。可在X-Y方向逐次划分Block以体现汽车的拓扑结构;然后在汽车外部创建O-Block,以便于生成理想的边界层网络,如下图所示。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流

初始化Block

Step11、初始化Block
单击Blocking标签栏Create Block,弹出Create Block面板,在Part下拉列表框中定义Block的名称为FLUID,单击Initialize Blocks,在Type下拉列表框中定义Block类型为3D Bounding Box,勾选Initialize with setting,然后单击Apply按钮,在主窗口创建初始Block。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流

划分Block

Step12、沿X方向划分Block
单击Blocking标签栏Split Block,弹出Split Block面板,单击Split Block,在Block Select栏选中Visible,在Split Method下拉列表框中选择Prescribed point,单击Edge文本框后的箭头,在主窗口选择X方向Edge,单击Point文本框后的箭头,在主窗口中依次选择如图所示的P_A、P_B、P_C和P_D,沿X方向划分Block。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
Step13、沿Y方向划分Block
采用Step12的方法,以P_A点为基准,沿Y方向划分Block,结果如图所示。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
Step14、沿Z方向划分Block
采用Step12的方法,以P_A和P_E点为基准,沿Z方向划分Block,结果如图所示。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流

移动Vertex至合适位置

Step15、调整Block的显示
三维Block交线很多,给准确调整Vertex位置造成干扰,因此要调整Block的显示,仅显示待调整的Block。右击模型树Model→Blocking→Index Control,单击“↑”和“↓”调整I、J、K的最大值和最小值。调整前如图所示,汽车附近Block全部显示,Edge很多;设置I_Min=5、I_Max=5、J_Min=0、J_Max=2、K_Min=2、K_Max=3,调整后(如图所示)仅显示汽车的Block,显示简洁,便于后续操作。
未调整前:
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
调整后:
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
注意:Index Control用于控制Block的显示。在复杂问题中,Edge非常杂乱,给建立映射、移动Vertex带来诸多困难,使用Index Control可以仅显示需要的Block及包含元素。对话框中各参数具体意义为:I、J、K栏表明沿X、Y、Z方向划分的Block;03、04、05等表示划分的O-Block;Min和Max表示沿某个方向显示Block的范围。单击“↑”和“↓”可以调大或调小,也可以输入数值后按enter键调整数值;或者通过单击Select corners按钮选择一个或多个Block体对角线上两个Vertex以控制显示。
Step16、调整Vertex
单击Blocking标签栏Associate,在Edit Associations栏单击Associate Vertex,在Entity栏选中Point,建立Vertex到Point的映射关系。单击Vertex文本框后的箭头,选择图中标示的任一Vertex,单击Point文本框后的箭头,选择与Vertex对应的Point,单击鼠标中键确定。建立所有Vertex映射关系后,结果如图所示。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
Step17、显示YZ平面
将鼠标置于主窗口X轴附近,当显示“+X”或“-X”时单击鼠标左键,显示YZ平面,如图所示。观察平面内的Edge,发现汽车附近Vertex的调整导致部分Edge倾斜,引起Block变形,不利于生成高质量的网格。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
Step18、在XZ平面调整Vertex位置
单击Blocking标签栏Move Vertex,弹出Move Vertex面板,单击Align Vertices面板,单击Along Edge Direction文本框后的箭头,在主窗口中选择标示Edge,单击Reference vertex文本框后的箭头,选择主窗口标示Vertex;在Coordinate system下拉列表框中选择Cartesian,选择笛卡尔坐标系;在Move in plane栏选中XZ,即调整Vertex的X坐标和Z坐标,单击Apply按钮确定。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
注意:本操作可批量移动Vertex。参考下图学习本操作,若选中图中标示Edge作为Along Edge Direction,则位于该Edge及其延长线上的Vertex均为被调整Vertex;若选图中标示的平面作为Move in plane,则将移动被调整Vertex与参考Vertex在该平面的投影重合;应选择Along Edge Direction的端点处Vertex作为参考Vertex。该操作不仅调整Along Edge Direction及其延长线上的Vertex,而且批量移动Vertex,如图中Reference位于I=1,则将以所有I=1,则将以所有I=1截面的Vertex为参考调整其他截面(I=2、I=3)的Vertex位置。
Step19、在XY平面调整Vertex的位置
采用Step18的方法选择图中所示Edge和Vertex,在Move in plane栏选中XY,在XY平面调整Vertex的位置。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流

创建O-Block

Step20、创建O-Block
单击Blocking标签栏Split Block,弹出Split Block面板;单击Ogrid Block创建O-Block,单击Select Block(s)栏“+箭头”,在主窗口选择标示的Block;勾选Around Block(s),并定义Offset=0.3,单击Apply按钮。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
Step21、删除Block
单击Blocking标签栏Delete Block,在Delete Block面板单击箭头,在主窗口选择如图所示的Block并删除。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
注意:创建外部O-Block引起Block的畸变,需调整Vertex。
Step22、调整Vertex位置
采用Step18的方法,选择图中所示的Edge和Vertex,分别在XZ和XY平面调整Vertex的位置。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
Step23、调整Vertex位置
单击Blocking标签栏Move Vertex,弹出Move Vertices面板,单击Set Location,在Method下拉列表框中选择Set Position,定义Reference From Vertices;在Coordinate system下拉列表框中选择Cartesian,勾选Modify Z;单击Ref.Vertex文本框后的箭头,在主窗口选择参考Vertex,单击Vertices to Set文本框后的箭头,在主窗口选择待调整Vertex,单击Apply按钮确定。采用上述方法调节Vertex的Z坐标和Y坐标。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流

注意:本操作根据参考Vertex坐标调节其余Vertex位置。移动被调整Vertex的Z坐标及Y坐标与参考Vertex相同;

建立映射关系

Step24、建立映射关系
首先调整Block的显示,右击模型树Model→Blocking→Index Control,调整O3_Min=1,其余采用默认设置,仅显示汽车附近Edge。单击Blocking标签栏Associate,在Edit Associations栏单击Associate Edge to Curve,勾选Project vertices,单击Edge文本框后的箭头,选择主窗口中标示的Edge;单击Curve文本框后的箭头,选择主窗口中标示Curve,单击鼠标中键确定。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
注意:生成二维结构网格时需将所有边线处Edge建立与对应Curve的映射关系,但是生成三维网格时无此要求。
Step25、建立其余Edge的映射关系
采用Step24的方法,建立汽车附近其余Edge的映射关系。

生成网格

定义网格参数

Step26、定义I_1网格参数
单击Blocking标签栏Pre-Mesh Params,进入设置节点参数操作。在Pre-Mesh Params面板单击Edge Params,然后单击Edge文本框后的箭头,选择主窗口Edge(I_1),在Nodes文本框中定义网格节点数为30,在Mesh Law下拉列表框中选择BiGeometric,定义Spacing 1=150、Ratio 1=1.2、Spacing 2=0,勾选Copy Parameters,在Method下拉列表框中选择To All Parallel Edge,单击Apply按钮确定。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
Step27、定义其余Edge网格参数
按照Step26的方法,使用下表中数据定义其余各条Edge的节点分布情况。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
Step28、保存Block
选择File→Blocking→Save Blocking As,保存当前块文件为Car_3D.blk。

生成网格

Step29、预览网格
勾选模型树Model→Blocking→Pre-Mesh,预览网格生成情况。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
ANSYS ICEM CFD三维结构网格生成实例——汽车外流

Step30、观察内部的网格
首先仅显示Edge,隐藏其余的几何元素和块元素;右击模型树Model→Blocking→Pre-Mesh,选择Scan planes,在弹出的面板中,勾选Solid,单击Select按钮。分别选择主窗口中标示的两条Edge,观察内部网格分布情况。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流

Step31、检查网格质量
单击Blocking标签栏Pre-Mesh Quality Histograms检查网格质量。在Criterion下拉列表框中选择Determinant 2×2×2 作为网格质量的判定标准,其余采用默认设置,单击Apply按钮,所有网格的Determinant 2×2×2 值大于0.60,可以认为网格质量满足要求。
ANSYS ICEM CFD三维结构网格生成实例——汽车外流
Step32、保存网格
右击模型树Model→Blocking→Pre-Mesh,选择Convert to Unstruct Mesh,ICEM将自动生成网格文件hex.uns,并保存在工作目录下。

导出网格

Step33、定义求解器
选择Output Mesh标签栏,单击select solve选择求解器。在Output Solver下拉列表框中选择FLUENT,单击Apply按钮确定。
Step34、导出网格
单击Output Mesh标签栏Write input,保存FBC文件为默认名,在随后弹出的窗口中选择Step32保存的hex.uns,在弹出对话框的Grid dimension栏选中3D,即输出三维网格;在Output file文本框内定义导出网格名为Car_3D.msh,单击Done按钮完成。

上一篇:啦啦啦啦啦


下一篇:python---使用字典来实现链接表图