207
第九章网格生成
数值计算把在连续空间定义的物理问题离散成在网格中的节点上定义,因此,网格生成是数值计算的基础。由于实际流动和热物理中的问题,大多数发生在复杂区域内,故不规则区域内网格生成显得格外重要。此前我们所讨论的问题多是在规则的区域上发生的,本章将主要针对非规则的复杂区域的网格生成进行讨论。首先从总体上介绍网格生成技术的概要情况,进而着重讲述贴体网格的生成技术,最后简要介绍一些自适应网格问题。
9.1网格生成技术概要
流动和热物理中复杂计算区域所采用的网格大体上分为结构网格和非结构网格两大类,如图9-1所示。
图9-1两类网格:(a)结构网格(b)非结构网格
结构网格的生成技术相对成熟,其特点是任意一个节点的位置都可通过一定的规则给予命名,它与其它相邻节点之间的联结关系固定不变且隐含在所生成的网格之中,故不必专门设置数据来确认网格点间的联系。一般数值计算中所采用的正交和非正交曲线坐标系所生成的网格都是结构网格。而贴体网格是结构网格中最为重要的一类,它把物理空间中的非规则区域变换到计算空间上的规则区域,生成方式基本上都是做一个特定的坐标转换。实现转换的方法包括保角变换法,代数方法和微分方程法:
(1)保角变换法根据复变函数中的保角变换理论,利用单一映射或连续映射得到物理域边界和计算域边界间的对应关系,进而利用边界上的对应关系生成计算域内的内部节点。这种方法可以保证物理平面上所生成的网格的正交性,但是仅适用于二维问题,且除了复变函数理论中的一些成熟的变换关系式可以利用,要想找到一般复杂区域到规则区域之间的变换关系往往是不可能的,通常只能将保角变换法和其它方法结合起来使用,有可能收到好的效果。本书将对此不再讨论,有兴趣的读者可参看相关文献[1,2]。
(2)代数法生成网格是通过一些代数关系式,把物理空间中不规则的区域转化为计算空间上规则区域。最简单的做法是,对给定的物理边界,采用一些初等函数变换即可达到目标,其物理与计算空间的边界和内部节点的对应关系均按这些初等变换式来确定。所谓边界规范化方法或剪切变换生成贴体网格就属这一类。一般情况则是规定边界值条件,再利用已知的边界值进行中间插值来生成内部网格。这需要在转换之前构思网格的形状,再引入插值公式,选择合适的数学表达式来联系物理空间和计算空间之间的换算关系。代数生成法要求生成的网格光滑,接近正交。这种方法简便灵活,耗机时很少,也可在一定范围内控制网格的形状和密度,目前已经发展得较为完善;但它通用性差,自动化程度不高,需要较多的人工干预,所生成的网格质量一般。
(3)微分方程法是通过求解偏微分方程来生成贴体网格。如果物理空间边界是封闭的,则采用椭圆型偏微分方程,其中Laplace方程和Poisson方程是最常用的两种;如果物理区
208
域是不封闭的,则可采用抛物型或双曲型的偏微分方程。用椭圆型偏微分方程生成贴体网格,适应性强,在整个区域内部网格比较光顺,在边界附近网格的正交性较其它方法为好,且可根据网格的疏密安排要求,通过调整Poisson方程的源项以实现人工控制,因此所生成的网格质量高,是当前应用最广泛的微分方程生成网格法。采用抛物型或双曲型的偏微分方程生成网格,因为是步进法求解,较椭圆型方程计算时间少得多,它们主要用于一些外流或内流问题计算中。但双曲型方程容易引起网格振荡;抛物性方程虽不会产生网格振荡,但求解中所需的参考网格点的生成及其行进步长的确定都相当费机时。
结构网格中,除了在整个计算区域内构建一种形式的网格外,还发展了一种称为块结构的网格,又称组合网格。这种网格根据实际问题的特点把整个求解域划分为几个小的区块,而在每一块上生成不同的结构网格。按照区块交界处联结方式,又区分为非重叠的拼接式网格和部分区域有重叠的搭接式网格两种。不同区块之间的联系和信息传递,通过设定一定的规则来确定[3]。采用块结构网格的好处在于,能够照顾到不同计算区域自身的特点,对复杂的物理空间有更好的适应性;网格生成相对容易;便于采用并行算法求解代数方程。因此,这种网格在流动和热物理问题计算中有着广泛的应用。
非结构网格是一种没有固定结构的网格,其节点的编号命名无一定规则甚至随意,每个节点的邻点个数也不是固定不变。它是基于这样假设而提出:二维和三维空间中最简单的形状分别是三角形和四面体,任何平面或空间区域都可被三角形或四面体填满。也就是说,任何二维或三维区域总可划分成任意的三角单元或四面体单元的网格所组成。由于这种网格结构上的无规性,除了每个单元及其节点的信息都必须存储外,与它相邻的单元的编号等也要存储起来作为彼此关联的信息,因此非结构网格的存储量