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 在次要区域内部挖空单元或主要区域边上的区域单元生成洞
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库嵌套网格教程在线全文阅读。
相关推荐: