,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,3,时间导数项的差分,在时间坐标上,一个显著的特点是只有一阶导数项,没有高阶导数项,考虑定常二维边界层方程,其中在 方向也只有一阶导数,可称 为类时间坐标,此处的讨论同样适用于有类时间坐标的问题。,时间导数项 在控制容积 上积分,得,(,45,),这里假定 、在整个控制容积中是均匀的,网格不随时间而变,在时间导数项的差分式子中,包含了两个时间层(在类时间坐标上是两个截面)的参数值,与此相对应,其它坐标方向的对流项、扩散项以及源项中的参数,在时间层上可以有不同的取法,因而可以得到显式、隐式和克兰克,-,尼科尔森(,Crank-Nicholson,),格式,1,)显式差分格式,(,46,),2,)隐式差分格式,(,47,),3,)克兰克,-,尼科尔森格式,若对流项、扩散项和源项中的参数都取两个时间层上的算术平均值,可得差分方程,(,48,),克兰克,-,尼科尔森格式的差分方程也需要与其它结点的差分方程联立求解。当时间步长较小时,其精度比隐式格式高。,4,、源项的差分,设源项在控制容积内均匀,并等于中心点的值,则有,(,49,),微分方程离散化后得到的是一个拟线性代数方程,但源项往往是参数的非线性函数,为能够用解线性代数方程的方法求解差分方程,需要将源项线性化,源项线性化有两种办法,:,一是用前一时刻的参数代入源项,算得的值作为常数参加下一时刻(或下一循环)的计算;二是假定源项与参数 的函数关系可以近似用式子,(,50,),表示,代入差分方程得,(,51,),其中,Sc,和,Sp,可能也是 的函数,因此式,(,50,),也是拟线性关系。,第二种办法优于第一种办法,为了使拟线性代数方程组收敛,得到有意义的解,,Sc,和,Sp,必须满足,(,52,),在满足条件,(,52,),的基础上,和 的确定有一定的任意性。一个方便的办法是用切线使其线性化,即令,(,53,),这时 ,,按照切线法得到的 和 往往很复杂,而且不一定满足条件,(,52,),比较多的是用经验办法来确定,五、代表方程组的求解,1,、概述,采用有限容积法在已生成的网格上将所求解变量的控制方程离散后,就形成了各求解变量的代数方程组,求解离散化所得的代数方程组是流动与燃烧过程数值计算的最后一个环节,求解的方法有两大类:直接解法与迭代法,迭代法的研究主要是研究收敛性以及如何加快收敛速度,求解代数方程的解法包括,Gauss,消元法、三对角阵,(,TDMA,),算法、五对角阵,(,PDMA,),算法等,现有文献中求解由,QUICK,等高阶格式形成的代数方程组时多采用,TDMA,方法求解,,TDMA,算法是,Gauss,消元法的一种特例(每一行上仅三个非零元素),2,.Gauss,消元法,3,.TDMA,算法,对图,1,中,S-N,方向的网格线进行计算时,差分方程需重新整理为,(,56,),方程右端各项是邻近网格线上的结点值(或源项),取前一循环得到的值,故为已知值,每个节点的代数方程中最多只包含三个节点的未知值,可以认为其它节点上未知值的系数均为零,如果把上述有限差分离散方程组写成矩阵的形式,其系数阵是一个三对角阵,仅对角元素及其上下邻位上的元素不为零,而其它元素均为零,把,Gauss,消元法应用于这种情形,便构成了称为三对角阵算法的有效求解方法,简记为,TDMA,(,Tridiagonal,Matrix Algorithm,),(,57,),对于这种系数矩阵为三对角线矩阵的方程组,,TDMA,求解的具体步骤是:,(,1,)第一个方程的各项除以,B,1,,得 ,。第二个方程减去化简后的第一个方程乘以,A,2,,并将所得新方程的各项除以(),最后得,对第三个以后的每个方程都作同样的处理,得到方程组系数的通式为:,(,58,),(,2,)自下而上的解方程,解的通式为,(,59,),若有两个或三个坐标是椭圆型的,则需对各椭圆型方向都进行逐线迭代扫描,对两个或三个方向各作了一次逐线计算,称为进行了一次双重或三重扫描,也叫一个迭代循环,重复多重扫描,直至两次相继迭代得出的值差别不大为止。把最后结果作为,n,时间层的值,对每条网格线进行计算时,边界条件很快传入流场内部,因此收敛速率比逐点迭代快得多。隐式差分方程的逐线迭代解法对时间步长也无限制,因此在实际中得到广泛的应用,六、压力和速度之间的耦合,1,、引言,若知道流场中压力的分布,则动量方程的求解与其它方程完全一样,不会产生困难,但是压力值一般都是预先不知道的,在可压流中,压力与密度间的关系由状态方程确定,需通过连续方程和状态方程确定,在不可压流中,流场中的压力分布对速度场有很强的影响,压力梯度以源项形式出现在动量方程中,但压力却没有独立的控制方程,在计算流体力学的发展过程中,提出了多种不同的方法,来解决在以速度、压力为求解变量的原始变量法中的这个问题,大致可分为:涡量,-,流函数方法、压力修正方法、压力与速度之间的迭代算法等几种。以压力修正方法中的,SIMPLE,系列方法应用最为广泛,2,压力修正方法的基本思想,在求解不可压缩流体的流场问题时,如果我们把从动量方程与连续性方程离散得到的代数方程组联立起来直接求解,就可以得到各速度分量及相应的压力值,这样的直接解法要占用大量的计算机内存,对于目前大多数工程应用场合还不适用,如果采用分离式的迭代求解方法,(,segregated method,),,即先求解,u,速度场,再求解,v,速度场,则对压力场因其无独立的方程而无法对其求解(或无法改进其原先的假定值),另一方面,上述分离式求解过程中只利用了,u,v,动量方程的离散形式而未用到连续性方程,要解决的问题,:,如何使得用质量守恒方程假定的压力场能不断地随迭代过程的进行而得到改进,这就是所谓的压力修正算法,压力修正算法源于,1972,年由,Patankar,与,Spalding,提出的,SIMPLE,算法,16,,在,20,世纪,80,年代初期,又相继提出了,SIMPLER,与,SIMPLEC,等方法,并由此形成了,SIMPLE,系列算法,3,SIMPLE,算法,以二维直角坐标中的对流换热求解为例,其控制方程为,(,60,),(,61,),(,62,),在交错网格(图,3,)上动量离散方程为:,(,63,),(,64,),质量守恒方程为,(,65,),采用,SIMPLE,算法来求解时计算步骤如下:,(,1,)假定一个速度场,记为,u,(0),,,v,(0),,由此计算,a,e,,,a,n,,,a,nb,及,b,;,(,2,)假定一个压力场,记为 ;,(,3,)求解动量离散方程(,63,)、(,64,),得 ;,(,4,)计算压力的修正值 ,要求与 相对应的 、能满足连续性方程,(,5,)计算速度的修正值 。要求 仍满足线性化了的动量方程,即,与式(,63,)相减,得,(,69,),此式表明,要据 值确定 ,需要解一个代数方程组。为能利用 值显式地求解 ,此处略去式(,69,)右端第一项,于是得,(,70,),(,6,)将 、作为本迭代层次之解,开始下一层次的计算,重复,15,步直到流场收敛,即所解得之流速能同时满足连续性方程及动量方程为止,SIMPLE,算法中引入了以下假定或简化处理:,(,1,)速度场的假定(,u,(,0,),,,v,(,0,),)与压力场的假定()是相互独立地进行的,,u,(0),,,v,(0),与 间没有任何联系;,(,2,)在导出速度修正值计算式(,70,)时,未计及邻点速度修正值的影响;,(,3,)动量离散方程中的,b(,控制容积,P,的剩余质量流量,),在速度修正前后保持不变;,(,4,)由式(,63,)、(,64,)解出的 满足动量守恒但未必满足质量守恒,而由式(,69,)解出的 决定 时,保证 、满足质量守恒,但动量守恒则未必满足。注意,虽然在导出式(,69,)过程中曾要求 、满足线性化了的动量方程,但由于以后略去了式(,69,)中的 ,因而所得的 ,就未必可使 、满足上述动量守恒方程。,以上四条假设或近似处理,是,SIMPLE,算法提出之后所出现的一些改进方案的着眼之处。,4,、,SIMPLER,算法,SIMPLER,(,1980,),算法主要用以改进,SIMPLE,方法中的第一项近似处理方法。一旦速度场给定,压力场就可以从动量离散方程中予以求解,而不再任意假定,其主要计算步骤如下:,(,1,)假定一个速度场,记为,u,(0),,,v,(0),,由此计算动量离散方程系数,a,e,,,a,n,,,a,nb,,,b,及 ,:,(,71,),注意,引入 ,后,动量离散方程便可写为,(,72,),(,2,)据 计算相应的压力场 。为此,将式(,72,)代入质量守恒方程的离散形式(,65,),得,(,73,),其中,,a,nb,及,b,的计算式形式上与,SIMPLE,算法中的方程的一样,只要将 代替 即可。,(,3,)求解动量离散方程,得替 。,(,4,)求解压力修正方程,得 。,(,5,)用 修正速度得 (但不修正压力)。,(,6,)用 ,开始下一层次的迭代,重复,15,步直到收敛。为有利于非线性迭代的收敛,,SIMPLER,算法中流速应予以亚松弛,但 及,p,则不作亚松弛。,5,、,SIMPLEC,算法,6,SIMPLEX,算法,7,、,SIMPLET,算法,8,SIMPLE,系列算法小结,SIMPLE,,,SIMPLEC,,,SIMPLER,,,SIMPLET,及,SIMPLEX,的主要计算步骤可以归纳为:,(,1,)由假定的或上一次计算得到的速度,u,(0),,,v,(0),确定动量离散方程的系数及常数项;,(,2,)确定压力场:对于,SIMPLE,,,SIMPLEC,,,SIMPLET,及,SIMPLEX,采用假定的或用上一次的计算值 ;对于,SIMPLER,则由已知的速度场通过求解压力,Poisson,方程而获得;,(,3,)求解动量离散方程以获得 ;,(,4,)求解压力修正值 方程,要求与 相应的 能 使 、满足连续性方程。其中除,SIMPLET,外,其它算法只考虑压力修正值对 的影响,而,SIMPLET,中还考虑了温度修正对 的影响,该影响最后体现在方程的源项之中;,(,5,)确定速度修正值:,SIMPLE,,,SIMPLER,,,SIMPLET,:,邻点速度影响略去不计;,SIMPLEC,:,邻点速度修正值的影响已基本考虑在内;,SIMPLEX,:,,d,e,等是通过求解一个,Poisson,方程得出的,相当于考虑了邻点的影响。,(,6,)采用下列速度、压力值作为初值开始下一层次的迭代计算(设速度的亚松弛已组合在,u,,,v,的求解过程中):,SIMPLE,,,SIMPLET,:,SIMPLEC,,,SIMPLEX,:,SIMLER,:,以上计算过程可以大致分为两步:预估步(,1,),(,3,)及校正步(,4,),(,6,)。因而可以说上述五种算法都是两步算法(一步预估,一步校正)。,9,加速迭代收敛的一些方法,1,)选择合适的松驰因子之值,对于正交的网格以及虽非正交但网格倾斜不是严重的情况,建议,a,u,与,a,p,的取值应满足以下关系:,(,76,),式中常数,c,取为,1,23,或,1.1,24,,同时,a,u,之值应尽可能地取得大,一般可取,0.70.8,。上述取值原则对交错网格、同位网格、正交网格与非正交网格原则上都适用,但对网格严重倾斜的情况,,a,p,之值应小于按式(,76,)得出之值,。,2,)其它加速迭代收敛的方法,迭代循环方式对收敛速率的影响,描述燃烧过程的是一组互相耦合的方程组,在用迭代法求解时,迭代循环方式对收敛速率有很大的影响,可将流体力学方程(动量和修正压力方程)和其它标量方程(能量、湍流量方程等)一起迭代,另一种选择是将流体力学方程首先迭代若干次,然后把其它标量方程(能量、湍流量方程等)一起迭代;流体力学方程首先迭代若干次,然后把其它标量方程再加进去一起循环,两者的收敛速