计算流体力学4

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

4.2.1 使用普通网格计算流场时遇到的困难
对广义变量φ的输运方程的求解,因涉及到速度分量,因 此,必然涉及求解动量方程。但是,动量方程的源项包含有 压力,如果不做特殊处理,会带来相关的问题。下面对此予 以分析。 在使用有限体积法时,总是要先将计算域划分成若干个单 元,然后在各个单元及节点上离散相关的控制方程,即式 (3.1)、(3.2)和(3.3)。 在离散控制方程时,首先需要决定在哪个位臵上存储速度 分量值。表面看来,将速度与其他标量(如压力、温度、密度 等)在同一空间位臵处进行定义和存储是合情合理的。但是, 对于任意给定的一个控制体积,如果将速度与压力在同样的 节点上定义和存储,即把u、v、P均存于同一套网格的节点 上,则有可能出现以下情况:一个高度非均匀的压力场在离 散后的动量方程中的作用,与均匀压力场的作用一致。这可 以通过图3.2所示的一个二维棋盘形压力场来说明。
如果流动是可压的,我们可把密度ρ视作连续方程中 的独立变量进行求解,即以连续方程作为一个普通的关 于密度ρ的输运方程,而在方程(3.1)、(3.2)和(3.3)之外, 将能量方程作为另一个关于温度T的输运方程,从而按第 2-3章介绍的方法生成相对简单的离散方程组,求解关于 u、v、 ρ 、T共四个变量的方程组,而压力P根据气体 的状态方程P=P(ρ,T)来得到。 可是,对于不可压流动,如水的流动问题,密度是常 数,这样,就不可能将密度与压力相联系。因此,将密 度ρ作为基本未知量的方法不可行。 我们只能想办法找到确定压力场的方法。
第4章 基于SIMPLE算法的流场数值计算
前面建立了与控制方程相应的离散方程,即代数方程组。 但是,除了如已知速度场求温度分布这类简单的问题外,所 生成的离散方程不能直接用来求解,还必须对离散方程进行 某种调整,并且对各未知量(速度、压力、温度等)的求解顺序 及方式进行特殊处理。 为此,先对流场计算中的背景知识作一简要介绍,然后讨 论基于交错网格与同位网格的控制方程离散方式,最后详细 介绍工程上应用最广泛的流场计算方法——压力耦合方程组 的半隐式方法(SIMPLE算法),并讨论其各种修正方法,特别 是SIMPLEC算法。
压力修正法有多种实现方式,其中,压力耦合方程组 的半隐式方法(SIMPLE算法)应用最为广泛,也是各种商 用CFD软件普遍采纳的算法。 在这种算法中,流过每个单元面上的对流通量是根据 所谓的“猜测”速度来估算的。首先使用一个猜测的压 力场来解动量方程,得到速度场;接着求解通过连续方 程所建立的压力修正方程,得到压力场的修正值;然后 利用压力修正值更新速度场和压力场,最后检查结果是 否收敛,若不收敛,以得到的压力场作为新的猜测的压 力场,重复该过程。为了启动该迭代过程,需要提供初 始的、带有猜测性的压力场与速度场。随着迭代的进行, 这些猜测的压力场与速度场不断改善,所得到的压力与 速度分量值逐渐逼近真解。 SIMPLE算法及其改进算法将作为本章的核心来介绍。 由于这类算法—般要依赖于交错网格,因此,3.2节将 先讨论交错网格,然后讨论SIMPLE算法及其改进算法。
1.耦合式解法
耦合式解法同时求解离散化的控制方程组,联立解出各 变量(u,v,w,p),其求解过程如下: (1)假定初始压力和速度等变量,确定离散方程的系数及 常数项等。 (2)联立求解连续方程、动量方程、能量方程。 (3)求解湍流方程及其他标量方程。 (4) 判断当前时间步上的计算是否收敛。若不收敛,返回 到第(2)步,迭代计算。若收敛,重复上述步骤,计算下 一时间步的物理量。 耙合式解法可以分为所有变量整场联立求解(隐式解法)、 部分变量整场联立求解(显隐式解法)、在局部地区(如一 个单元上)对所有变量联立求解(显式解法)。对于第三种联 立求解方法,是在一个单元上求解所有变量后,逐一地在 其他单元上求解所有的未知量。这种方法在求解某个单元 时,要求相邻单元的变量都是已知的。
目前工程上使用最为广泛的流场数值计算方法是压力修 正法。 压力修正法的实质是迭代法。在每一时间步长的运算中, 先给出压力场的初始猜测值,据此求出猜测的速度场。再 求解根据连续方程导出的压力修正方程,对猜测的压力场 和速度场进行修正。如此循环往复,可得出压力场和速度 场的收敛解。其基本思路是: (1)假定初始压力场。 (2)利用压力场求解动量方程,得到速度场。 (3)利用速度场求解连续方程,使压力场得到修正。 (4)根据需要,求解湍流方程及其他标量方程。 (5)判断当前时间步上的计算是否收敛。若不收敛,返回 到第(2)步,迭代计算。若收敛,重复上述步骤,计算 下一时间步的物理量。
4.2 交错网格及其应用
所渭交错网格,是指将速度分量与压力在不同的网 格系统上离散。 使用交错网格的目的,是为了解决在普通网格上离 散控制方程时给计算带来的严重问题。 交错网格也是SIMPLE算法实现的基础。 本节将首先对使用普通网格所出现的问题进行分析, 引出使用交错网格的必要性,然后介绍交错网格的特 点,接着介绍在交错网格上建立离散方程的过程。在 3.3节将全面介绍基于交错网格的SIMPLE算法。
Baidu Nhomakorabea
原始变量法: 包含的解法比较多,常用的有解压力泊松方程法、 人为压缩法和压力修正法。 解压力泊松方程法需要采用对方程取散度等方法 将动量方程转变为泊松方程,然后对泊松方程进行 求解。与这种方法对应的是著名的MAC方法和分布 法。 人为压缩法主要是受可压的气体可以通过联立求 解速度分量与密度的方法来求解的启发,引入人为 压缩性和人为状态方程,以此对不可压流体的连续 方程施加干扰,将连续方程写为包含有人为密度的 项,而人为密度前有一个极小的系数,这样,方程 可转化为求解人为密度的基本方程。但是,这种方 法要求时间步长必须很小,因此,限制了它的广泛 应用。
4.1 流场数值解法概述
4.1.1 常规解法存在的主要问题
一个标量型变量(如温度T)的对流传输取决于当地速度场 的大小和方向。在前面,我们推导了通用微分方程所对应的 离散方程。可以设想,如果通用微分方程中的通用变量φ用 温度T替代。 在流场(u、v、w)已知的情况下,直接求解温度T的离散 方程组,可得到T的分布。但是,一般来讲速度场并不总是 己知的,有时会是我们求解的对象之一。 例如,对于工程界中典型的自然对流问题,流场的求解 与温度场的计算必须同时进行,因此.必须有专门的办法来 求解流场中的速度值。
中心节点P处的压力值没有出现在式(3.4)或(3.5)中。将图3.2 所示的压力场分布代入式(3.4)和(3.5),离散后的压力梯度在任 何节点处均为0,尽管实际上在空间两个方向上均存在明显的压 力振荡。这样,该压力场将导致在离散后的动量方程中,由压 力产生的源项为0,与均匀压力场所产生的结果完全一样。这显 然是不符合实际的。 同样,若在流场迭代求解过程的某一层次上,在压力场的当 前值中加上一个锯齿状的压力波,则动量方程的离散形式无法 把这一不合理的分量检测出来。它会一直保留到造迭代过程收 敛而且被作为正确的压力场输出(图3.3中的虚线)。
为了解决因压力所带来的流场求解难题,人们提出了若 干从控制方程中消去压力的方法。例如,在二维问题中,通 过交叉微分,从两个动量方程中可消去压力,然后可取涡量 和流函数作为变量来求解流场。 涡量—流函数方法成功地解决了直接求解压力所带来的 问题,且在某些边界上,可较容易地给定边界条件,但它也 存在一些明显的弱点,如壁面上的涡量值很难给定,计算量 及存储空间都很大,对于三维问题,自变量为6个,其复杂 性可能越过上述直接求解(u,v,p)的方程组。因此,这类方法 在目前工程中使用并不普遍,而使用最广泛的是求解原始变 量(u,v,p)的分离式解法。 基于原始变量的分离式(segregated)解法的主要思路是:顺 序地、逐个地求解各变量代数方程组,这是相对于联立求解 方程组的藕合式(coupled method)解法而言的。目前使用最 为广泛的是1972年由Patanker和Splding提出的SIMPLE算法。 这种方法将是本章重点介绍的方法。
2. 分离式解法
分离式解法不直接解联立方程,而是顺序地、逐个地求 解各变量代数方程组。 依据是否直接求解原始变量u,v,w和p,分离式解法分为 原始变量法和非原始变量法。 涡量—速度法与涡量—流函数法是两种典型的非原始变 量法。涡量—流函数法不直接求解原始变量u、v、w和P, 而是求解旋度和流函数。涡量-速度法不直接求解流场的 原始变量P,而是求解旋度 和速度u,v,w。 这两种方法的本质、求解过程和特点基本一致,共同优 点是:方程中不出现压力项,从而避免了因求压力带来的 问题。 这类非原始变量法的缺点是:不易扩展到三维情况,因 为三维水流不存在流函数;当需要得到压力场时,需要额 外的计算;对于固壁面边界,其上的旋度较难确定,没有 适宜的固体壁面上的边界条件,往往使涡量方程的数值解 发散或不合理。
4.1.2 流场数值计算的主要方法
流场计算的基本过程是在空间上用有限体积法或其他类似 方法将计算域离散成许多小的体积单元,在每个体积单元上 对离散后的控制方程组进行求解。 流场计算方法的本质就是对离散后的控制方程组的求解。 根据上面的分析,对离散后的控制方程组的求解可分为耦合 式解法(coupled method)和分离式解法(segregated method),归纳后如图3.1所示。
每个坐标方向上的速度分量的输运方程,即动量方程,可 通过在通用微分方程(1.19)中将变量φ分别用u,v,w代替 来得到。当然,速度场也必须满足连续方程。让我们来考察 一个二维层流稳定流动的基本控制方程。
在式(3.1)和式(3.2)中,压力梯度也应该在源项中,但由于其 在动量方程中占有重要位臵,为了下面讨论方便,我们将压力 梯度项从源项中分离出来,单独写出。 考虑到已经在第2-3章研究了通用微分方程离散化的过程,我 们容易想到,用求解温度T的离散方程的同样办法,来求解速度 未知量u和v。但事实上,事情并没有这样简单。若用数值方法 直接求解由式(3.1)、(3.2)和(3.3)所组成的控制方程,将会出现 如下两个主要问题: 第一,动量方程中的对流项包含非线性量,如方程(3.1)中的 第二项是ρuu对x的导数。 第二,由于每个速度分量既出现在动量方程中,又出现在连 续方程中,这样,导致各方程错综复杂地耦合在一起。同时, 更为复杂的是压力项的处理,它出现在两个动量方程中,但却 没有可用以直接求解压力的方程。
对于第一个问题,实际上我们可以通过迭代的办法加以解决。 迭代法是处理非线性问题经常采用的方法。从一个估计的速度 场开始,我们可以迭代求解动量方程,从而得到速度分量的收 敛解。 对于第二个问题,如果压力梯度己知,我们就可按标准过程 依据动量方程生成速度分量的离散方程,就如同第2-3章构造标 量(如温度T)的离散方程时的过程。 但一般情况下,压力场也是待求的未知量.在求解速度场之 前,P是不知道的。考虑到压力场间接地通过连续方程规定, 因此,最直接的想法是求解由动量方程与连续方程所推得的整 个离散方程组,这一离散方程组在形式上是关于(u,v,p)的复杂 方程组。这种方法虽然是可行的,但即便是单个因变量的离散 化方程组,也需要大量的内存及时间,因此,解如此大且复杂 的方程组,只有对小规模问题才可以使用。
当计算中流体的密度、能量、动量等参数存在相互依赖 关系时,采用耦合式解法具有很大优势,如在3.1.1节中提 到的求解关于u,v,w,p共4个变量的方程组。其主要应用包 括高速可压缩流动、有限速率反应模型等。 耦合式解法中,所有变量整场联立求解应用较普遍,求 解速度较快,而在局部对所有变量联立求解仅用于声变量 动态性极强的场合,如激波捕捉。 设计算区域内的节点数为N,则每一时间步内须求解4N 个方程构成的代数方程组(三个速度方程及一个压力或密 度方程)。总体而言,耦合式解法计算效率较低、内存消耗 大。
相关文档
最新文档