结构网格生成流程概述

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

问题描述与分析

我国汽车工业正在飞速发展,保有量逐年上升,大量的汽车不仅消耗大量石油资源,更增加了环境负担。在节能环保的时代背景下,汽车节能降耗需求急迫。汽车所消耗的能源很大部分是为了克服其在行驶过程中受到的空气阻力,这使汽车空气动力学成为研究热点之一。应用基于计算流体力学的数值仿真对汽车外流场进行研究越来越普遍,相比传统的风洞试验,其具有成本低,周期短等优势。

本文以汽车外部流动为例,讲解三维结构网格的生成方法,读者在学习过程中应掌握以下知识点: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按钮,观察主窗口自动生成的点和线。


Step4、创建Part
右击模型树Model→Parts→Create Part,在Part文本框中输入CAR,单击“Create Part by Selection”,然后单击Entities文本框后的箭头,在Select geometry面板单击×选择所有的几何元素(包含显示的和隐藏的),单击鼠标中键确定。

创建外部流场

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按钮确定,创建结果如下图所示。


缩小看:



注意:本操作创建长方体,长方体尺寸由Entities栏选中的几何模型尺寸及缩放比例(X factor、Y factor、 Z factor)决定。
Step6、定义Part
采用Step4的方法,参考下图定义各个Part,定义完成后各Part显示不同的颜色,模型树的变化如图所示。

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

汽车的几何模型仅取了一半,当前汽车模型位于外部远场的中心位置,需将其调整至外流场的对称面位置。
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)


注意:本操作通过定义X、Y、Z轴平移量定义平移方向和距离。
Step9、保存几何模型
选择File→Geometry→Save Geometry As,保存当前的几何模型为CAR_3D.tin。

创建Block

分析Block生成策略

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

初始化Block

Step11、初始化Block
单击Blocking标签栏Create Block,弹出Create Block面板,在Part下拉列表框中定义Block的名称为FLUID,单击Initialize Blocks,在Type下拉列表框中定义Block类型为3D Bounding Box,勾选Initialize with setting,然后单击Apply按钮,在主窗口创建初始Block。

划分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。

Step13、沿Y方向划分Block
采用Step12的方法,以P_A点为基准,沿Y方向划分Block,结果如图所示。

Step14、沿Z方向划分Block
采用Step12的方法,以P_A和P_E点为基准,沿Z方向划分Block,结果如图所示。

移动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,显示简洁,便于后续操作。
未调整前:

调整后:


注意: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映射关系后,结果如图所示。


Step17、显示YZ平面
将鼠标置于主窗口X轴附近,当显示“+X”或“-X”时单击鼠标左键,显示YZ平面,如图所示。观察平面内的Edge,发现汽车附近Vertex的调整导致部分Edge倾斜,引起Block变形,不利于生成高质量的网格。


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按钮确定。


注意:本操作可批量移动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的位置。

创建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按钮。


Step21、删除Block
单击Blocking标签栏Delete Block,在Delete Block面板单击箭头,在主窗口选择如图所示的Block并删除。

注意:创建外部O-Block引起Block的畸变,需调整Vertex。
Step22、调整Vertex位置
采用Step18的方法,选择图中所示的Edge和Vertex,分别在XZ和XY平面调整Vertex的位置。



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坐标。

注意:本操作根据参考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,单击鼠标中键确定。


注意:生成二维结构网格时需将所有边线处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按钮确定。

Step27、定义其余Edge网格参数
按照Step26的方法,使用下表中数据定义其余各条Edge的节点分布情况。



Step28、保存Block
选择File→Blocking→Save Blocking As,保存当前块文件为Car_3D.blk。

生成网格

Step29、预览网格
勾选模型树Model→Blocking→Pre-Mesh,预览网格生成情况。



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

Step31、检查网格质量
单击Blocking标签栏Pre-Mesh Quality Histograms检查网格质量。在Criterion下拉列表框中选择Determinant 2×2×2 作为网格质量的判定标准,其余采用默认设置,单击Apply按钮,所有网格的Determinant 2×2×2 值大于0.60,可以认为网格质量满足要求。

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按钮完成。

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

  1. 《FLUENT 14.0超级学习手册》——3.3 ANSYS ICEM CFD 14.0的应用

    本节书摘来自异步社区<FLUENT 14.0超级学习手册>一书中的第3章,第3.3节,作者: 唐家鹏 更多章节内容可以访问云栖社区"异步社区"公众号查看. 3.3 AN ...

  2. ansys icem cfd网格划分技术实例详解_新软速递极简的CFD软件in:Flux

    非常时期闲得无聊,无意中发现个新玩意儿in:Flux,很是有点儿意思. 关于该软件的简单介绍,下面内容翻译自其自带的软件文档. 1.in:Flux是什么? in:Flux是一个用于分析复杂几何模型内通 ...

  3. ANSYS ICEM CFD非结构壳/面网格生成实例——周期性流动和传热(以一个简单的例子为例)

    壳/面网格生成流程 1.定义壳/面网格全局参数,包括网格类型.网格生成方法及相关选项: 2.分别定义各个Part的网格尺寸: 3.定义曲面的网格尺寸: 4.定义线的网格尺寸: 5.生成线网格,通常此步 ...

  4. ANSYS ICEM CFD三维非结构网格生成实例——教室吊顶空调送回风

    教室(小教室)尺寸: 长为5.5m,宽为5米,高2.8米. 教室所用空调为格力中央空调,末端是吊顶式风机盘管. 风机盘管尺寸为840x840x290mm,整个面板尺寸是950×950×290mm,参考 ...

  5. ansys icem cfd网格划分技术实例详解_详解航空燃油滑油3D打印热交换器设计流程...

    长期以来,传统的建模方式和无法实现复杂几何形状的制造工艺,制约着热交换器设计与效率的突破,而面向增材制造的高性能复杂几何结构,以及高强度铝合金3D打印材料,为热交换器设计的突破带来了新的可能性. 3D ...

  6. ANSYS FLUENT三维结构网格数值计算及后处理——汽车外流

    用ANSYS ICEM CFD划分网格的网格步骤在这篇文章中:ANSYS ICEM CFD三维结构网格生成实例--汽车外流 读入网格 Step1.打开FLUENT 打开FLUENT软件 Step2.定 ...

  7. Ansys·Icem·T型喷管的网格生成

    Ansys·Icem·T型喷管的网格生成 一.题目 生成T型喷管的网格,并检验网格质量. 二.引入几何模型 1.改变工作环境file->change work directory 2.导入几何模 ...

  8. linux执行icemcfd脚本,Workbench中直接调用ICEM CFD进行网格划分

    自从ANSYS 12.0之后,ICEM CFD就从Workbench中被分离出去,作为一个独立的程序使用了.取而代之的是Meshing模块.最新版本13.0的meshing模块功能已经相当强大,足够应 ...

  9. 《精通CFD工程仿真与案例实战---FLUENT GAMBIT ICEM CFD Tecplot(第2版)》—— 导读...

    https://yqfile.alicdn.com/a78540151429a7d5b72de80f552c0683dc76c7cf.png" > 前言 计算流体力学(Computat ...

  10. pointwise 18.4R3 cfd前处理网格生成软件

    pointwise 18.4R3是一款非常专业的cfd前处理网格生成软件,提供了人性化的操作界面,典型的平面菜单结构和标准的键盘热键设计和用户个性化设计,可以生成多块结构网格.非结构网格和混合网格,大 ...

最新文章

  1. python装饰器作用-理解python中的装饰器
  2. hibernate操作mysql中文乱码
  3. Lua移植到arm上 并实现在arm上 可以让lua脚本调c语言,C语言调用lua脚本
  4. C#委托使用详解(Delegates)
  5. bilibili怎么设置弹幕数量_python爬虫:bilibili弹幕爬取+词云生成
  6. VTK:可视化之RenderLargeImage
  7. spring-boot注解详解(五)
  8. 采用MiniProfiler监控EF与.NET MVC项目
  9. 【书摘】三毛最深情的二十句话
  10. 银河麒麟WPS表格打开TXT文件的方法
  11. 详解C++学习方向和就业方向!
  12. adb devices只显示List of devices attached解决方案(手机已打开调试或无其他问题情况)
  13. 行人重识别+人脸识别+商品识别(新商品库对比)
  14. JavaScript正则表达式验证手机号码
  15. 拍立得软件测试初学者,轻奢主义时尚入门之选 富士X-T100评测
  16. Diary for simple things.
  17. 服务器意外断电的数据恢复过程
  18. IDC FutureScape:2023年中国未来数字创新十大预测
  19. Latex之图片排版
  20. 笔记摘抄div+css

热门文章

  1. 回程静态路由及trunk简单链路
  2. mysql开发中遇到的坑_mysql中间件开发遇到的坑之权能标志CLIENT_DEPRECATE_EOF
  3. Handing time
  4. linux 执行 ktr脚本,kettle在linux下面用于shell脚本执行:转换或者作业
  5. 计算机文件一点右键就内存突增,电脑内存占用忽然升高怎么解决
  6. 推荐系列论文三:Word2vec
  7. 小僧尽知他的备细出 水浒
  8. 学计算机好还是学数学好,大学专业学计算机好还是学数学好
  9. ESP8266制作创意时钟(DS1302+TM1637)
  10. mysql embeded 用法_Embedded Mysql | 学步园