人人范文网 范文大全

嵌套网格教程

发布时间:2020-03-03 17:26:23 来源:范文大全 收藏本文 下载本文 手机版

CFD-FASTRAN中Chimera帮助

鉴于群里面有一些成员里面有一些嵌套网格初学者,因此应该写一些帮助来提供参考。对于已经掌握嵌套网格的人,可以继续补充和修正一下我的文章。

1 理论基础

使用嵌套方法主要有两个目的:(1)考虑运动体的计算;(2)减少复杂外形网格生成时间。嵌套网格可以相对其它网格独立运动,而不会干扰其它区域的网格,对非定常流场仿真时可以得到较精确的结果。而且嵌套区域可独立生成网格,将复杂的结构网格生成过程简单化。

嵌套方法的基本步骤如下:

(1) 在每个区域搜寻确认嵌套区域的边界单元。嵌套边界既可以是区域外边界也可以是内部集合体相邻边界。

(2) 在每个嵌套区域进行挖洞。是否挖洞取决于该区域是否与边界或者其它区域的壁面嵌套。

(3) 对嵌套区域边界单元进行插值。将背景区域的边界单元变量信息插值到嵌套区域的边界单元。

1.1 搜寻确认过程

采用嵌套方法需要寻找到每个网格嵌套区域单元,这个过程一直进行,直到仿真结束。交替数字树(Alternating Digital Tree,简称ADT)算法可以优化这个搜寻过程。ADT以树形结构方式传播的网格单元信息,如网格单元中心坐标,网格边框坐标等。当ADT搜寻到网格与所给的嵌套网格一致时,ADT算法能快速将信息传递到目标单元。当维数为3时,ADT算法与八叉树特别相似。CFD-FASTRAN中的ADT将每个区域的边框坐标信息储存到6维的矩阵中。

1.2 挖洞过程

挖洞过程就是将每个区域的壁面边界部分挖空,用嵌套区域网格部分来代替。在这个过程中同时进行网格信息的获取,并将每个流体变量从一个区域插值到另一个区域中。

要进行单元挖空的区域是主要区域,有壁面边界穿过单元的区域是次要区域。如果在嵌套区域中有穿过壁面边界的单元,则这个单元既属于主要区域又属于次要区域,见图1.1。ADT算法首先寻找并确认这样区域的单元。如果在壁面边界中有网格边穿过,ADT算法就在主要区域中找到那些网格边的两个端点,见图1.2。接下来再确认网格边上的网格节点是在壁面边界内部还是外部。如果节点有一部分在内部,区域单元就标记成为切除单元(cut-cell),见图1.3。随后把在壁面边界内部的节点也标记出来,见图1.4。挖空单元和切除单元区域合起来就是嵌套网格洞,见图1.5。洞周围的主要区域中的单元就

是嵌套边界单元,见图1.6。然后就可以将主要区域单元信息向次要区域单元进行插值。

在嵌套网格洞的外层通常是缓冲层(Buffer Layer),用来进行信息插值,这样可以避免主要区域的流体变量离壁面太进而无法进行插值。如果用了不止一层的缓冲层,插值就离次要区域的壁面边界相应单元层数开始进行,同时为此采用了边缘层。

1.3 插值过程

以上确认嵌套网格边界和嵌套网格挖洞过程中运用到了ADT算法。在找到嵌套网格边界后,由信息单元节点向边界相邻的单元进行信息传递。这些信息单元节点是次要区域单元中挖洞后新生成的网格点。这个信息传递过程进行三次线性插值,将主要区域中的信息传给嵌套网格边界单元。

在嵌套边界区域内确认孤立网格。孤立网格是那些经过ADT计算后没有信息的嵌套边界单元。这主要是因为在进行挖洞时两个网格体的表面很近导致在进行ATD运算时找不到提供信息的单元。而这些孤立网格单元的信息通常由邻近网格的信息来代替。为了减少或避免孤立网格出现,有相互重叠网格区域网格层数至少为5层。

图1.1 挖洞算法的例子

实线网格区域是主要区域,虚线网格区域是嵌套区域,黑色实体是次要区域的壁面边界。

图1.2 穿过壁面边界网格边的端点状态

图1.3 主要区域中的切除单元

图1.4 次要区域内壁面边界内部的节点

图1.5 在次要区域内部挖空单元或主要区域边上的区域单元生成洞

图1.6 主要区域的嵌套边界单元

2 实际运用

下面介绍一个机翼下挂载弹体的例子,来看看在CFD-FSATRAN中是如何运用嵌套网格的。

在CFD-FSATRAN的程序中会进行,对嵌套网格的搜索、差值和挖洞三个步骤,因此我们要做的就是建立出一套合适的嵌套网格来让CFD-FSATRAN进行以上的三个步骤。

2.1建立一个背景区域

机翼周围生成“H”型结构网格。整个背景计算流场区域为矩形。整个流场一共划分了12个区域,总的网格数量为843500个,并且做了近壁边界处理,同时满足嵌套网格要求。机翼周围网格情况如图2.1所示。如果要进行投弹过程模拟时,在运动的区域内要增加适当的网格数量以便插值时流场信息传递准确。

图2.1 背景区域中机翼根部界面的网格

2.2 建立背景区域内的另一网格

在弹体圆柱型周围采用“O”型网格,弹体尾翼周围采用“H”型网格,弹体两端部分也采用“H”型网格。整个嵌套区域一共划分了26个区域,总的网格数量为244500个。图2.2为嵌套网格区域弹体网格的截面视图,分别为轴向截面和径向截面。图2.3为整个嵌套区域外层网格视图。

(a)轴向截面

(b)径向截面

图2.2 嵌套区域的截面网格图

图2.3 嵌套区域外边界网格

2.3 形成嵌套网格

在分别对机翼区域和弹区域建立网格之后,进行网格嵌套来达到接近真实的流场,操作步骤参见附录。其具体情况见图2.4,深颜色的线条为嵌套区域外边界。在进行嵌套网格生成时最重要的是控制两个边界间的网格数量。在CFD-FASTRAN中计算的嵌套网格时需要在两个壁面之间必须有大于5层网格,这样才能使网格挖洞和插值计算顺利进行,不出现异常情况。图2.5为机翼和弹体之间的网格层数情况。图中内部区域的弹体与背景区域中的机翼之间的网格层数大于5层。

2.4 在背景区域中的嵌套区域

图2.5 在弹体与机翼之间的网格

在这个例子中可以看到背景网格和内部网格都进行了挖洞处理,因此两个网格内都会出现主要区域和次要区域,于是就要进行差值计算,注意网格壁面之间的网格数量要求。

形成了嵌套网格之后就可以在CFD-FASTRAN进行计算了。

附录

利用GEOM建立嵌套式网格的方法常用的方法有两种:在同一文件下利用levels生成层和在不同文件下利用复制粘贴功能。这两种方法都可以实现网格的嵌套。自己可以根据个人习惯选择。

方法一:利用levels功能。 步骤:1.建立levels。 2004版本在下面,

2008版本在上面

2.在levels中建立内部网格体

3.在另一个levels中建立背景网格

注意:在此时需要激活这个levels。

以上就建立好了一个嵌套式网格。

利用以上方法建立的网格可以隐藏或显示每一个层,并且修改会很方便。 方法二:利用复制粘贴功能。

步骤:1.在一个文件中建立需要的嵌套网格

2.在另一个文件中建立背景网格

3.将嵌套网格复制粘贴到背景网格中

利用Ctrl+A,Ctrl+C,复制要嵌套的网格,在背景网格Ctrl+V将其粘贴过来就可以了。

以上就建立好嵌套网格了。

不过还要定义一下边界条件,将边界的名称和属性定义一下。

注释:个人比较喜好2004版本的geom,所以以上图片是2004版本的,不过2008版本的操作基本相同。另外,在画网格时一定要注意,背景网格的实体边界不要与嵌套网格的实体边界重合,这样会导致无法计算。

如果外形比较复杂或是3D模型,可以利用其他类软件(如Gridgen,Icem等)在划分好网格后,导出为Plot3D格式,然后在Geom中读入,再进行网格嵌套。不过仍是按照以上几个步骤进行。 在要挖洞的四周,不论背景网格还是嵌套式网格都要保证有3层以上的网格。白圈圈的地方是要挖洞的区域都要又3层以上的网格才行。

参考文献

1 CFD-FASTRAN_V2008.2_User_Manual.2 COMPUTATIONAL FLUID DYNAMICS ANALYSIS OF STORE SEPARATION.3《有关嵌套网格计算的帮助文章》。

For循环的嵌套

AI网格工具绘制写实美女教程

VB的循环嵌套教案

AI鼠绘教程:运用网格绘制写实人物

关于51系列单片机中断嵌套

Excel中IF函数的嵌套用法

PHP跟html混编,PHP中嵌套html

msp430的中断优先级和中断嵌套

实验5 数据库的嵌套查询实验

复杂记叙文之嵌套式结构教师版

嵌套网格教程
《嵌套网格教程.doc》
将本文的Word文档下载到电脑,方便编辑。
推荐度:
点击下载文档
相关专题 嵌套网格 嵌套
点击下载本文文档