ICEM多个周期的非结构化网格划分方法
2017-02-21 by:CAE仿真在线 来源:互联网
1.首先划分好一个周期内的非结构化网格,在此网格内定义有周期性边界的part,如果该part名称定义为periodic,为了后续工作的顺利,建议修改,否则读入fluent中会出错。
2.选择Edit mesh 中的transform
mesh
,rotate 按钮,如下图所示:
,rotate 按钮,如下图所示:
面板中可以选择复制的个数,rotate轴,旋转的角度,需要把merge node和delete duplicate elements选项勾上,merge node建议用Automatic.点击确定即可。
3.导出mesh,导入fluent中时,旋转时的周期性边界会生成一个中间截面,fluent默认为wall,修改为interior即可使用。
注意事项:
1.ICEM网格中分为体网格和边界网格,旋转时不可以分别旋转,可以通过显示体网格以及所有的边界网格来实现,但网格较大时不推荐,可以将所有part和mesh隐藏起来,选择使用工具条上的第4个按钮,选择全部element)。
2.旋转时merge
node的tolerance如果ICEM的默认值不合适,会造成周期性边界无法完全重合,因此ICEM导出网格时会出现not
referenced by grid的错误,直接skipping 周期性边界的part,例如如下错误:
Warning: found face with periodic
nodes near node 183, but no twin face.
Warning: found face with periodic
nodes near node 62, but no twin face.
Checking mesh:
interior faces : 318864
interior walls : 3024
boundary faces : 8672
Creating face section for 330560
faces.
318864 faces of part
FLUID.
698 faces of part
INLET.
684 faces of part
OUTLET.
Skipping part PP (not referenced by
grid).
4266 faces of part
WALL.
自然无法导入到FLUENT中,FLUENT提示的错误为:
Building...
mesh
Cell Centroid is xc -96.902191 yc 105.333557
zc 59.888897
WARNING: cell 5 of thread 9 has NULL face pointer 3.
Clearing
partially read grid.
Error: Build Grid: Aborted due to critical error.
Error Object: #f
解决此类错误的方法为:
重新加密周期性上的网格或者向反方向旋转同样的角度,总之使ICEM能够采用默认的tolerance,进而正确输出周期性边界的part即可。
经过上述步骤后,导入fluent中的结果为:
Reading "D:\fluent.msh"...
135351 nodes.
775908 tetrahedral cells, zone 10.
1534710 triangular interior faces, zone 11.
1816 triangular
velocity-inlet faces, zone 12.
1810 triangular
pressure-outlet faces, zone 13.
9390 triangular wall faces,
zone 14.
15897 triangular wall faces,
zone 15.
Building...
mesh
Note: Separating wall zone 15 into zones 15 and
2.
pp -> pp (15) and pp:002
(2)
Note: Slitting wall zone 2 into a coupled
wall.
materials,
interface,
domains,
zones,
pp:002-shadow
pp:002
pp
wall
outlet
inlet
int_fluid
fluid
Done.
fluent中将pp这个part(原先为periodic)定义为wall,并包含了一个pp:002的part,pp:002该part可以定义为interior,但是pp这个part的边界类型为wall,因为两个周期性的面定义为pp一个part,所以也无法通过fluent中make-periodic的命令来实现。
至此,思路转换为将周期性面分别定义为两个part。期间尝试过在原先网格上将周期面定义为PP1和PP2。现在最终确定为旋转之后新的周期面的两个面为PP1和PP2(下同)。但在ICEM修改之后,在fluent中是无法识别PP1和PP2的两个part,不旋转时导入fluent只识别一个PP1或者PP2。旋转之后网格根本无法导入fluent,提示出各种错误。期间想过各种解决方法,主要包括:
1.导入到gambit中进行重新定义周期性边界条件,这个方法一开始就可行,但是gambit不支持超大网格的读取操作,放弃该方法。
2.ICEM导出CFX的格式,在CFX-PRE中进行设置,CFX中可以重新定义PP1和PP2截面,但是在保存为def文件之后,import到fluent中会发现PP1和PP2的边界上的网格面竟然会不一样多,自然make-periodic的方法不能用。不知为何,放弃该方法!
3.看到流体在线博主写的方法(http://blog.sina.com.cn/s/blog_6221146d01018an5.html),对该方法进行了尝试,发现三维情况下,fuse和merge时,针对面都是不成功的。只是复制了两个zone,放弃该方法。
4.同时想到是否可以在CFX-PRE里面进行网格的旋转,但由于对CFX不是很熟,放弃!
5.最终的解决方法:ICEM导出CGNS格式,导出时,选择Face
elements。这样输出的cgns格式中包含了PP1和PP2两个part,fluent读入之后可以通过make-periodic的方法定义周期性,问题最终解决。
开放分享:优质有限元技术文章,助你自学成才
相关标签搜索:ICEM多个周期的非结构化网格划分方法 ICEM网格划分培训 icem培训课程 icem学习 icem视频教程 icem技术学习教程 icem软件教程 icem资料下载 icem代做 ICem基础知识 Fluent、CFX流体分析 HFSS电磁分析 Ansys培训
编辑