前面已经讨论过一维抛物型方程的几种差分格式。对于方程
将其中的时间项用前差形式表示,二阶空间导数项用中心差分近似,得到
令,将上式改写为
uni+1=r(uni+1+uni-1)+(1-2r)uni (1.8.1)这是显式格式,可由图1.8.1表示,在点(i,n+1)列出差分方程,只用到(i-1,n),(i,n)和(i+1,n)三个点。前文已证明,显式格式在满足情况下,格式是稳定的。
图1.8.1 显式格式
图1.8.2 隐式格式
若时间改用向后差分,空间仍采用中心差分,则得到差分方程式
将上式改写为
(1-2r)uni-r(uni+1+uni-1)=uni-1 (1.8.2)
这是隐式格式,可由图1.8.2表示,在点(i,n)列差分方程,用到(i-1,n),(i,n-1)和(i+1,n)三个点,前文已证明,这种格式无条件稳定。以下介绍另外几种典型格式。
1.六点格式(CrankNicolson格式)
在点(i,n+1/2)利用关于t的一阶中心差商,由Taylor公式,有
其中,η1=tn+1/2+θ1τ/2,η2=tn+1/2+θ2τ/2,0<θ1,θ2<1。于是
由此得
于是得到差分格式
或写为
由此可知,在点(i,n+1/2)列方程时,要用到第n+1层上的三个点以及第n层上的三个点,因此这一格式称为六点格式,也称做平均隐式格式,可以用图1.8.3来表示。这一格式也是隐式格式,但比隐式格式(1.8.2)更加逼近于原微分方程。必须指出,建立这一差分格式的一个很重要的思想是将微分方程中的项,用u(x,t)在第n层和第n+1层上关于x的二阶中心差商的算术平均值来逼近,这一思想已被广泛地应用于建立差分格式。与隐式格式(1.8.2)一样,这种格式也是无条件稳定的。
2.Richardson格式
在点(i,n)关于t的中心差商,关于x的二阶中心差商,可得
或写为
uni+1=2r(uni+1-2uni+uni-1)+uni-1 (1.8.4)
由此可知,在点(i,n)列差分方程,用到n-1,n和n+1层上的点。(www.daowen.com)
为了求得在n+1层上uni+1的值,需要先算出第n-1层和第n层上u的值,这种格式与前面的格式不同,Richardson格式是三层格式,如图1.8.4所示。可以证明,这种格式是恒不稳定的。
图1.8.3 六点格式
图1.8.4 Richardson格式
3.加权六点格式
在建立六点格式时已经知道,这种格式是在点(i,n+1)和(i,n)的中点(i,n+1/2)上建立的,利用了u(x,t)关于t的中心差商,特别是利用了u(x,t)在第n层和第n+1层上关于t的中心差商的算术平均值来逼近。现进一步推广这一方法,将差分格式建立在点(i,n+1)和(i,n)之间任意一点(i,n+θ)上,其中,θ为参数,且0≤θ≤1。由Taylor公式,有
以上两式相减,之后除以τ,得
据此,对作类似处理,有
于是
将上式左端的二阶偏导数以中心差商代替,有
由此得
其中,
当时,截断误差Rl,τ为O(τ+l2);当时,截断误差Rl,τ为O(τ2+l2)。略去截断误差,得到差分格式差分方程
或写为
-θrun+1i+1+(1+2θr)uni+1-θrun+1i-1=[1-2(1-θ)r]uni+(1-θ)runi+1+(1-θ)runi-1
加权六点格式也是一种隐式格式,如图1.8.5所示,在点(i,n+1)列方程时,用到第n层和第n+1层上的点。这种格式利用了u(x,t)在第n层和第n+1层关于x的二阶中心差商的加权平均值,故称为加权六点格式。当θ分别取0,1和时,可依次得到显式格式、隐式格式和六点格式,因此,这三种格式均为加权六点格式的特殊情形。
图1.8.5 加权六点格式
当时,无论取何值,加权六点格式都是稳定的;当时,加权六点格式的稳定条件是r满足
而当时,Von Neumann格式成为隐式格式,所以隐式格式无条件稳定。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。