CFD网格技术的发展成就
引言网格的合理设计和高质量生成是CFD计算的前提条件,是影响CFD计算结果的最主要的决定性因素之一,是CFD工作中人工工作量最大的部分,也是制约CFD工作效率的瓶颈问题之一。即使在CFD高度发展的国家,网格生成仍占整个CFD计算任务全部人力时间的70%~80%。CFD和网格生成的先驱者之一Steger 1991年指出“网格生成仍然是CFD走向大部分应用领域的一个关键步骤”,“复杂外形网格生成的工作需要专职队伍的投入”。网格生成是一项枯燥乏味的工作,对于构型复杂的航空航天飞行器来说,尤其如此。因此,设法简化网格生成、减少网格生成人工工作量、提高网格对复杂构型的适应能力和灵活性等,对于CFD的应用具有十分重要的意义。如果这个问题解决了,将会大大推动CFD在航空航天等领域中的普及应用。因此,网格生成受到世界各国CFD工作者和工业部门的重视。NASA在1992年为此成立了一个专门的委员会——NASA Surface Modeling and Grid Generation Steering Committee。1986年、1988年、1991年、1994年、1996年和1998年相继召开了六届国际网格生成会议,我国在1997年也召开了第一届计算网格生成方法研讨会。
以下对应用较多的结构网格、非结构网格、混合网格以及重叠网格的发展情况进行介绍。
一、结构网格和非结构网格概述计算网格按网格点之间的邻接关系可分为结构网格 (structured grid) 和非结构网格 (unstructured grid)。结构网格的网格点之间的邻接是有序、规则的,单元是二维的四边形、三维的六面体;非结构网格点之间的邻接是无序的、不规则的,每个网格点可以有不同的邻接网格数,单元有二维的三角形、四边形,三维的四面体、六面体、三棱柱和金字塔等多种形状。
以下对结构网格和非结构网格各自的优缺点进行详细分析。
1 结构网格
· 优点:结构网格的CFD计算方法先进、计算精度高、计算效率高、计算稳定性好、对计算机内存等硬件资源要求低,在同样的物理空间里,需要的网格点数比非结构网格要少。由于结构网格可以很容易生成长宽比很大的黏性网格,计算时也基本可以保证要求的精度,因此,可以精确、高效地模拟边界层等黏性区域。
· 缺点:结构网格的结构性、有序性限制了其对复杂几何构型的适应能力,其网格生成较困难,网格生成的人工工作量比非结构网格要多。目前,对于航空航天飞行器等复杂构型的流动问题,结构网格一般采用分区网格、重叠网格技术等方法克服其几何适应能力差的缺陷,但这又会带来分区网格各区间隐式边界条件难以实现、重叠网格各区间寻找变量传递对应点及变量插值不守恒性等一系列问题。
2 非结构网格
· 优点:非结构网格的最大优点是其几乎无所不能的几何适应能力,也就是对复杂构型强大的灵活性,其网格生成简单,尤其是网格生成的人工工作量少。非结构网格由于消除了结构网格中节点的结构性限制,节点和单元的分布可控性好,因而能较好地处理边界,容易控制网格的大小和节点的密度,它采用随机的数据结构有利于进行网格自适应以提高对间断(如激波等)的分辨率。一旦在边界上指定网格的分布,在边界之间可以自动生成网格,无需分块分区或用户的干预,总能生成整体网格、整体求解,而且不需要在子域之间传递信息,不存在像结构网格分区嵌套需要插值而损失精度。由于它随机的数据结构,使基于非结构网格的网格分区以及并行计算比结构网格要更加直接。
· 缺点:非结构网格的数据结构的随机性增加了寻址时间,网格的无方向性导致梯度项计算工作量的大量增大。而且,非结构网格的无序性使其很难像结构网格那样保证矩阵的对角占优、推进计算时邻近网格是最新修正后的流动变量,因而对于收敛性也有较大影响;在同样的物理空间单元,非结构网格需要的网格点数比结构网格要多(一个结构网格的长方体可以划分为2~5个非结构网格的四面体),尤其在黏性区里,非结构网格很难使用类似与结构网格的大长宽比网格,这就导致了在黏性区里必须在各个方向都布置很密的网格,对于三维高Re数流动问题,其计算量超过了目前的计算机水平。另外,CFD计算方法都是基于各类波有向传输的基本原理构造的,而非结构网格的随机方向性不易捕捉正确的流动结构,这将导致计算精度降低及计算稳定性下降。
二、非结构网格技术非结构网格上的CFD计算方法基本上是结构网格上CFD方法的移植,因此原理相同。但非结构网格上的CFD计算方法也存在一些特点,以下进行详细分析。
3 非结构网格格心型和格点型离散分析
非结构网格从流场变量的存储方式上可以分为两种:格心型和格点型。
· 格心型的未知量位于单元中心,控制体取网格单元本身,数值通量需要在网格单元的面上进行计算,因此格心型离散对应着基于面的数据结构。
· 格点型的未知量位于单元节点,控制体通常通过连接节点周围的单元中心和边的中点来构建,数值通量需要在由原网格的边构建的面上进行计算,因此格点型离散对应着基于边的数据结构。
对于同样的非结构网格,格心型离散比格点型离散包含更多的自由度,理论上会耗费更高的计算代价并获得更高的计算精度。然而另一方面,格心型的网格模板比格点型的网格模板稀疏,因此对于同样数目的未知量,格点型离散的数值精度又要高于格心型离散。
经过20多年的研究,这两种数值离散方法究竟孰优孰劣至今仍没有定论。Mavriplis在2003年进行的数值实验证明了,对于同样的计算网格,格心型离散的计算精度比格点型离散高,但计算效率却不如格点型。Levy和Thacker的研究证明,对于跨音速流动情况,如果将两种网格的表面网格变量数目进行匹配,那么两种离散方法将取得相近的计算精度。研究表明,造成这两种离散方法的比较迟迟得不到定论,很大一部分原因在于缺乏一致的离散和求解方法来进行这两种方法的比较;另外一部分原因在于,由于非结构网格生成方法仍不成熟,在相对粗糙的网格进行数值离散时精度会受到一定影响。
2 非结构网格空间离散方法
非结构网格的空间离散方法主要基于有限体积法。对于一阶精度格式的构造,非结构网格和结构网格的方法几乎没有任何区别。然而在向高阶格式的扩展中,非结构网格却遇到较大困难。这是因为在结构网格中,由于结构网格的有序性,其从一阶精度提高到二阶精度的过程——重构过程或称为限制函数构造过程,也就是计算无黏数值通量和黏性数值通量时需要的左右状态变量的取值过程,是非常直观自然的。但对于无序的非结构网格而言,却是非常困难的,直观上说,非结构网格界面没有严格的左右之分。这是非结构网格和结构网格CFD空间格式最大的不同,也是非结构网格空间格式构造的难点问题。
对此,非结构网格有限体积法在空间离散方面最早采用的是中心格式,为了消除“奇偶失联”现象,提高捕捉强间断的能力,在格式中引入人工黏性。但是,由于人工黏性给格式的推广应用带来较大的不便,Batina、Barth 和Frink 等在20世纪90年代初相继开展了迎风格式在非结构网格中的应用;然而以四面体为基本单元的非结构网格技术又给迎风格式下无黏通量的高阶重构带来了问题。为此,Barth 等提出了一种非结构网格的 k 阶重构方法,并由Mitchell和Walters 进一步改善。而Frink 等也提出了一种针对四面体网格更为简单的二阶重构方法,该法在今天仍被广泛应用。
三、混合网格从20世纪90年代开始,基于充分发挥结构网格和非结构网格各自优点的思想,出现了混合网格技术:非结构混合网格、结构/非结构混合网格。
1 结构/非结构混合网格
在物面附近的黏性作用区采用结构化网格、其他区域采用普通四面体网格的混合网格技术:先对多体问题的每一单体或复杂单体问题的每一子块生成贴体结构网格,而在体与体、块与块之间的交界区挖出一个洞,该洞由非结构网格来填充,实现相邻两网格间的通量守恒。这种技术实际上是重叠网格技术的一种发展,“拉链网格”(zip-per grid) 和“龙网格”(Dragon grid) 是其中的代表方法,如图1所示。
图1 龙网格示意图
2 非结构混合网格
在黏性作用区采用三棱柱形和金字塔形网格,在其他流场区域采用四面体非结构网格,这种方法充分利用了三棱柱和金字塔网格的高拉伸特性、可以达到类似结构网格的黏性模拟能力,因此,得到了较快的发展和应用。
四、重叠网格Benek 和Stege r等在1982年提出“重叠网格”(chimera grids) 的概念,将复杂的流动区域分成多个几何边界比较简单的子区域,各子区域中的计算网格独立生成,彼此存在着重叠、嵌套或覆盖关系,流场信息通过插值在重叠区边界进行匹配和耦合。
网格的重叠过程就是网格间插值关系的建立过程,是重叠网格技术的核心,下面将从挖洞、寻点及壁面重叠三个方面阐述重叠网格进展。
1 挖洞
若某重叠网格单元落入另一网格域的非可透面(如物面、对称面或人工指定的挖洞曲面)内,则应被标记“洞内点”,不参与流场的计算。这一过程被形象地称之为“挖洞”。挖洞的结果产生了紧密围绕在洞内点周围的洞边界面,用于插值传递不同区域流场解的信息,隶属于插值边界面。因此,挖洞的过程的数学实质等价于解决一个所谓“点与封闭曲面的相对位置关系”问题。
关于挖洞方法的研究,主要是如何提高挖洞过程的可靠性、效率和自动化程度。Steger 等主要利用网格曲面法向矢量与网格点相对位置矢量的点积结果判断网格点与曲面的关系。这种方法在存在内凹的挖洞曲面时容易出错,并且挖洞的效率与被测试的网格点数、决定挖洞曲面的点数成正比。因此,随后出现了各种改型方法,如将挖洞曲面进行分解,使得每个曲面都呈凸特性;用解析的组合外形,如球体、圆柱、长方体等简单几何外形的组合体,来代替网格面作为挖洞曲面。
射线求交方法通过求从点P出发的任意射线与封闭的挖洞曲面交点的个数判断点P的位置,若射线与曲面相交奇数次则该点在挖洞面内部,若相交偶数次则该点在曲面外部。该方法涉及求交运算,因此运算量比较大,但可以采用ADT树 (alternating digital tree) 提高挖洞效率。
Chiu 和Meakin 提出洞映射 (hole-map) 方法,该方法将挖洞曲面投射到辅助的直角笛卡儿网格中,从而得到由笛卡儿网格构成的近似挖洞面,并根据相对位置的不同将笛卡儿网格单元分为“洞内单元”、“洞外单元”和“边缘单元”,从而将点与曲面之间的关系转化为点与洞映射单元之间的简单关系。洞映射方法的效率和自动化程度都很高,并且对内存的需求很低,从而得到广泛的应用,如Pegasus 5程序。
Object X-ray method 是对hole-map 方法的改进,它通过建立挖洞曲面在坐标轴方向投影的二维笛卡儿网格取代hole-map 方法的三维笛卡儿网格。在二维笛卡儿网格中找到点的投影,与射线求交方法类似,获得投影点沿坐标轴方向的射线与挖洞面的相交的交点的个数,从而判断点为洞内点或者洞外点。该方法与hole-map方法相比具有更高的挖洞效率。
2 寻点
寻点所要解决的问题可以简化为:己知一物理空间点P 的坐标 (xp, yp, zp),求网格中能包围该点的网格单元的逻辑坐标 (i, j, k)。对于结构网格而言,即在离散空间中寻找一个六面体单元来包围一给定点的问题。寻点效率的高低及准确与否对整个重叠网格方法有很大的影响,有时甚至是重叠网格方法成败的关键。
一般将寻点过程分为两步:先寻找距离空间点最近的网格单元,然后在其附近寻找合适的网格单元将空间点包围住。
· 首先,采用好的数据结构,如二叉树、四叉树、八叉树、ADT树等结构的应用,找到距离空间点最近的可能的贡献单元的集合;
· 其次,利用点和贡献单元相对位置的几何判断方法在可能的贡献单元中寻找空间点的正确贡献单元,如通过位置矢量的点积运算判断网格点与贡献单元的关系;
· 最后,采用三线性插值的方法求解空间点的插值系数,若系数在 则该空间点找到合理的贡献单元;若系数在 范围之外,则以该贡献单元为初始单元采用stencil walk 方法做进一步搜索以找到合理的贡献单元。
3 壁面重叠技术
若物面结构非常复杂,无法实现空间拓扑,则希望在物面网格重叠的基础上取消空间网格的拓扑限制,从而减轻空间网格生成的难度。在重叠网格的生成过程中,各子网格可以独立生成而不必考虑其他网格的存在,若对物面网格进行分块再独立生成,则有可能因为各部分的网格在几何误差、曲面曲率分辨率和光滑程度等因素上的不同,重叠区内彼此描述的物面不唯一,即所谓的“物面失配”问题。
为了提高效率,范晶晶等先对每个物体的所有固壁建立壁面的ADT树,通过ADT树查找壁面插值点可能存在的贡献单元,然后再对可能的贡献单元用stencil walk 方法做进一步的判断,在判断中保持壁面法向恒定。用三线性插值求出x,y,z三个方向的插值系数ε,η,ξ,其中与壁面法向同方向的插值系数表示插值点到贡献单元包含壁面的距离,令该插值系数值等于零,以保证壁面插值点是从贡献单元的壁面4个点插值的,这样相当于将壁面插值点投影到贡献单元的壁面上,而插值点法向上的点均向壁面移动一定的距离,该距离等于壁面插值点投影的距离即与壁面法向同方向的插值系数值,从而保证壁面插值点及该插值点法向上插值点的合理插值单元。该方法只针对壁面上的插值点及插值点所在的法向上的网格进行操作,并在挖洞和寻点过程结束后对壁面的插值点进行系数的修正,方法简单,因为采用了ADT树结构,所以效率很高。
五、小结与展望计算网格是制约CFD发展的瓶颈问题之一,目前网格方面需要突破的是:
· 高效、精确、灵活、方便的复杂网格技术,包括重叠网格技术、混合网格技术、自适应网格技术、笛卡儿网格技术等;
· 实现复杂网格生成的自动化、高质量化;
· 设法突破CFD结果对网格的依赖性。
在整个重叠网格过程中,需要反复寻找贡献单元,因此好的单元搜索方法和数据结构能提高整个方法的效率。目前通用的方法是结合ADT树结构和stencil walk 方法以提高贡献单元的搜索效率。但是,stencil walk方法的成功依赖于合适的初值。一般情况下,当初值比较靠近真实值时,迭代法才收敛。在寻点问题中,通常以最近单元的中心点作为初始位置,若网格正交性很差,则最近单元有可能偏离合理单元很远,因此,stencil walk 方法很可能收敛不到合理单元而导致寻点失败。
重叠网格重叠区域间流场数据通过插值进行耦合,若网格匹配不合理,即各子域间网格相差很大,容易导致插值点处出现非物理解,当非物理解的点很多时容易导致计算发散,所以合理的插值方法是重叠网格技术面临的另一个缺陷。
(a) 网格重叠结果(b) 压力等值线图图2 重叠网格在类子母弹外形物体抛撒中的应用(a) 分离某时刻表面压力分布(b) 分离轨迹与实验对比图3 重叠网格在机翼挂载分离中的应用
重叠网格技术在复杂外形网格的生成中得到了广泛的应用,特别是工程上需要数值模拟多体相对运动的问题,如类子母弹外形物体抛撒(图2)、机载分离(图3)、火箭助推器分离等具有相对运动的问题。根据调查,国外重叠网格技术发展最成熟、应用功能最广泛的是SUGGAR程序。该程序的应用就是针对复杂物体的多体运动问题,它包括结构网格、非结构网格、多面体网格间的任意重叠,并将多个部件分成不同层次的子部件,从而实现了复杂物体的分层次重叠。
参考文献:
Mavriplis DJ. Aerodynamic drag prediction using unstructured mesh solvers.
In: CFD-Based Drag Prediction and Reduction. Deconoinck H, Sermus K, van
Dan C. eds. VKI Lecture Notes, Von Karman Inst.for Fluid Dynamics, Rhode-Saint-Genese, Belgium, Mar. 2003
Levy D W, Thacker M D. Comparison of unstructured cell and node-based schemes for the Euler equations. AIAA paper, 1999-3185, 1999
Batina J T. Three-dimensional flux-split Euler schemes in-volving unstructured dynamic meshes. AIAA paper, 1990-1649. 1990
Barth T J. A 3-D upwind Euler solver for unstructured meshes. AIAA paper, 1991-1548 for 1 991
Belk D M, Maple R C. Automated assembly of structured grids for moving body problems. AIAA paper 1995-1680 ,1995
来源:豪迈化工技术微信公众号(ID:himilehg),作者:黄振。
页:
[1]