当前位置:文档之家› 完整版有限差分方法概述.doc

完整版有限差分方法概述.doc

有限差分法( Finite Difference Method,简称FDM)是数值方法中最经典的方法,也是计算机数值模拟最早采用的方法,至今仍被广泛运用。

该方法将求解域划分为差分网格,用有限个网格节点代替连续的求解域。

有限差分法以Taylor级数展开等方法,把控制方程中的导数用网格节点上的函数值的差商代替进行离散,从而建立以网格节点上的值为未知数的代数方程组。

该方法是一种直接将微分问题变为代数问题的近似数值解法,数学概念直观,表达简单,是发展较早且比较成熟的数值方法。

对于有限差分格式,从格式的精度来划分,有一阶格式、二阶格式和高阶格式。

从差分的空间形式来考虑,可分为中心格式和逆风格式。

考虑时间因子的影响,差分格式还可以分为显格式、隐格式、显隐交替格式等。

目前常见的差分格式,主要是上述几种形式的组合,不同的组合构成不同的差分格式。

差分方法主要适用于有结构网格,网格的步长一般根据实际地形的情况和柯朗稳定条件来决定。

构造差分的方法有多种形式,目前主要采用的是泰勒级数展开方法。

其基本的差分表达式主要有三种形式:一阶向前差分、一阶向后差分、一阶中心差分和二阶中心差分等,其中前两种格式为一阶计算精度,后两种格式为二阶计算精度。

通过对时间和空间这几种不同差分格式的组合,可以组合成不同的差分计算格式。

下面我们从有限差分方法的基本思想、技术要点、应用步骤三个方面来深入了解一下有限差分方法。

1.基本思想有限差分算法的基本思想是把连续的定解区域用有限个离散点构成的网格来代替,这些离散点称作网格的节点;把连续定解区域上的连续变量的函数用在网格上定义的离散变量函数来近似;把原方程和定解条件中的微商用差商来近似,积分用积分和来近似,于是原微分方程和定解条件就近似地代之以代数方程组,即有限差分方程组,解此方程组就可以得到原问题在离散点上的近似解。

然后再利用插值方法便可以从离散解得到定解问题在整个区域上的近似解。

在采用数值计算方法求解偏微分方程时,再将每一处导数由有限差分近似公式替代,从而把求解偏微分方程的问题转换成求解代数方程的问题,即所谓的有限差分法。

2.技术要点如何根据问题的特点将定解区域作网格剖分;如何把原微分方程离散化为差分方程组以及如何解此代数方程组。

此外为了保证计算过程的可行性和计算结果的正确性,还需从理论上分析差分方程组的性态,包括解的唯一性、存在性和差分格式的相容性、收敛性和稳定性。

对于一个微分方程建立的各种差分格式,为了有实用意义,一个基本要求是它们能够任意逼近微分方程,这就是相容性要求。

另外,一个差分格式是否有用,最终要看差分方程的精确解能否任意逼近微分方程的解,这就是收敛性的概念。

此外,还有一个重要的概念必须考虑,即差分格式的稳定性。

因为差分格式的计算过程是逐层推进的,在计算第n+1 层的近似值时要用到第 n 层的近似值,直到与初始值有关。

前面各层若有舍入误差,必然影响到后面各层的值,如果误差的影响越来越大,以致差分格式的精确解的面貌完全被掩盖,这种格式是不稳定的,相反如果误差的传播是可以控制的,就认为格式是稳定的。

只有在这种情形,差分格式在实际计算中的近似解才可能任意逼近差分方程的精确解。

关于差分格式的构造一般有以下 3 种方法。

最常用的方法是数值微分法,比如用差商代替微商等。

另一方法叫积分插值法,因为在实际问题中得出的微分方程常常反映物理上的某种守恒原理,一般可以通过积分形式来表示。

此外还可以用待定系数法构造一些精度较高的差分格式。

3.基本步骤有限差分法求解偏微分方程的步骤如下:① 区域离散化,即把所给偏微分方程的求解区域细分成由有限个格点组成的网格;② 近似替代,即采用有限差分公式替代每一个格点的导数;③ 逼近求解。

换而言之,这一过程可以看作是用一个插值多项式及其微分来代替偏微分方程的解的过程。

换而言之,这一过程可以看作是用一个插值多项式及其微分来代替偏微分方程的解的过程。

在第一步中,我们通过所谓的网络分割法,将函数定义域分成大量相邻而不重合的子区域。

通常采用的是规则的分割方式。

这样可以便于计算机自动实现和减少计算的复杂性。

网络线划分的交点称为节点。

若与某个节点 P 相邻的节点都是定义在场域内的节点,则 P 点称为正则节点;反之,若节点 P 有处在定义域外的相邻节点,则 P 点称为非正则节点。

在第三步中,数值求解的关键就是要应用适当的计算方法,求得特定问题在所有这些节点上的离散近似值。

差分方程,又叫做差分格式,从格式的精度来划分,有一阶格式、二阶格式和高阶格式;从差分的空间形式来考虑,可分为中心格式和逆风格式;考虑时间因子的影响,差分格式还可以分为显格式、隐格式、显隐交替格式等。

目前常见的差分格式,主要是上述几种形式的组合,不同的组合构成不同的差分格式。

向前差分 (forword difference):i 1ix x i 1 x i向后差分 (backword difference):i i 1x x i x i 1中心差分 (cential difference):i 1i 1x x i 1 x i 1下面以一个例子解释其他差分格式:设求解区域内一个节点A,坐标x j, t n。

根据微商定义和中值定理,把偏微分方程写成差分格式。

对流方程:ua u0(2-1)t x或u t a u x0 可以将其化为三种不同的差分方程:1)时间前差、空间中心差u n j 1 u n j u n j 1 u n j 1a2 0t x或u n j1 r u nj 1 u n j 1 t 1u n j, r a2x2)时间前差、空间前差unj1u nja u nj 1u njtx或u n j 1u n j r u nj 1 u n j3)时间前差、空间后差u n j 1 u n ja u n j u n j 1 0tx或u n j 1u n j r unjunj 1差分方程的时间微商采用前差, 称为显式差分格式; 时间微商采用后差,称为隐式差分格式。

显式差分方程可以直接求解,隐式差分方程需要迭代求解。

除此之外,它还可以构造其他形式的差分格式。

不同的差分格式具有不同的计算精度。

用差分方程代替偏微分方程时必然有误差, 称为截断误差,用 R n j 表示。

差分方程的截断误差等于各项差商逼近微商时所产生误差的总和。

用差分方程的定解条件来代替偏微分方程的定解条件也会产生误差,称为定解条件的截断误差,用 r j n 来表示。

差分方程的截断误差可以用 Taylor 展开法得到。

如上述例子中时间前差、空间中心差分格式,通过 Taylor 展开可得:unj1u n j u n j 1 u n j 1utax t2 n2unu 1tt 2aj2jxn1 3 ux 2 j3! x 3u a utxn O t, x 2j它的截断误差为: R n j O t , x 2 ,即时间上是一节精度,空间上是二阶精度。

构造差分的方法有多种形式, 直接差分逼近法、 Taylor 级数展开法、控制体积元法和积分方法等。

目前主要采用的是泰勒级数展开方法。

其基本的差分表达式主要有三种形式:一阶向前差分、一阶向后差分、 一阶中心差分和二阶中心差分等, 其中前两种格式为一阶计算精度, 后两种格式为二阶计算精度。

通过对时间和空间这几种不同差分格式的组合,可以组合成不同的差分计算格式。

首先讨论 Taylor 级数展开法:给定任意连续方程u x,对于u xx ,令步长 x h ,可写出 Taylor 级数展开式:u x h u x hu h 22uh 33uh n nuh nnux2! x 23! x 3n!x nn 0n!x n给出有限差分表达式是反过来: 对有限的 x h 给出 u的近似表达式:x记 u j 1 u x x ,由 Taylor 级数表达式可得u表达式xu u x h u x h2 uh 2 3ux h 2! x 2 3! x 3对于上述提到的对流方程 2-1 ,Taylor 展开法是将 u n j 1 在 u n j 点上进行展开,再利用方程把u、22u、3u3变换为 u 、2u 2、tttx x3u 3 ,并把u 、 2u 2、3u 3 用差商表示,就可以得到各种不同 xxxx的差分方程。

对式 2-1 首先将 u n j 1在 u n j 点上进行 Taylor 展开,可得:unj1u jnutn1 2u ntt 2 O t3j2 t 2j(2-2)利用原方程关系:u a u,2u a2 2utxt 2x 2将上式代入式 2-2,得到:n 1n 1n n 12nn nu ju j r u j 1uj 1ruj 12u juj 12 2其中, r at,这就是著名的 Lax-Wendroff 差分方程。

x直接差分逼近法由微商定义:ulim u n j 1u n jttt 0u lim u n j 1 u n jxxx 0和中值定理得到:n 1nn2 ntu ju ju 1 t utt j 2 t 2 j u j n 1 u n ju n1 2u nxxx2x2jjxnnn2n4nu j 12u j u j 1 u 1 x 2 ux 2x 2j12x 4 j x其中, 为 0 1之间的常数。

把这些表达式代入到对流方程式 2-1 中,取一阶近似,并略去 R j n的小量得到相应的差分方程。

如上式可得: unj1u j nu n j 1 u n juan tn t2uuana x 2untxtj2 t2jxj2x 2jx略去等式右边 R n j 项后,得到差分方程:时间前差、空间前差:u n j 1 u n j r u n j 1u n j其中, r at。

采用相同的差分逼近法,也可以得到其它差分方程。

x例如:时间前差、空间后差:时间前差、空间中心差:积分方法u n j 1 u n j r u n j u n j 1u n j 1 u n j1r u n j 1 u n j 12计分方法是把偏微分方程在一定的控制体内进行积分,得到相应的差分方程。

以对流方程 2-1 为例,在矩形网格的控制体单元d内,对时间和空间取前差,并从 t n到 t n t ,从 x j到 x j x 进行积分:u t au x dxdt 0通过积分运算:x j x t n t t n t x j xx j t n u t dtdx a t n x j u x dxdt 0 则得到 ;x j xu n t ntu n 1 dx a n u j 1 u j dt 0x j t把上式用数值积分近似表示,整理后可得:u n j1u n j r u n j 1u n j其中, r a t 。

x差分方程的有效性分析一个偏微分方程可以得到不同的差分方程。

相关主题