当前位置:首页 >> 数学 >>

第十章 偏微分方程数值解法


第十章 偏微分方程数值解法 偏微分方程问题,其求解十分困难。除少数特殊情况外,绝 大多数情况均难以求出精确解。因此,近似解法就显得更为重要。本章仅 介绍求解各类典型偏微分方程定解问题的差分方法。 §1 差分方法的基本概念 1.1 几类偏微分方程的定解问题 椭圆型方程:其最典型、最简单的形式是泊松(Poisson)方程

? 2u ? 2u ?u ? ? 2 ? f ( x, y) 2 ?x ?y
特别地,当 为调和方程

f ( x, y) ? 0 时,即为拉普拉斯(Laplace)方程,又称

? 2u ? 2u ?u ? 2 ? 2 ? 0 ?x ?y
Poisson 方程的第一边值问题为

? ? 2u ? 2u ? 2 ? 2 ? f ( x, y ) ?y ? ?x ?u ( x, y ) ( x , y )?? ? ? ( x, y ) ?
? ???
其中 为以

( x, y ) ? ? ? ? ??

? 为边界的有界区域, ? 为分段光滑曲线,

称为定解区域, , 续函数。 第二类和第三类边界条件可统一表示为

f ( x, y) ? ( x, y ) 分别为 ? , ? 上的已知连

? ?u ? ? ? ? n ?? u? ? ? ?
其中

( x , y )??

? ? ( x, y )

n

为边界

? 的外法线方向。当 ? ? 0 时为第二类边界条件,

? ? 0 时为第三类边界条件。
抛物型方程:其最简单的形式为一维热传导方程

? u ? 2u ?a ? 0 (a ? 0) 2 ? t ? x
方程可以有两种不同类型的定解问题: 初值问题

?? u ? 2u ? ?a 2 ?0 ?x ? ?t ?u ( x,0) ? ? ( x) ?
初边值问题

t ? 0,?? ? x ? ?? ? ? ? x ? ??

?? u ? 2u ? ? t ? a ? x2 ? 0 0 ? t ? T , 0 ? x ? l ? ? ?u ( x, 0) ? ? ( x) 0 ? x ? l ?u (0, t ) ? g (t ), u (l , t ) ? g (t ) 0 ? t ? T 1 2 ? ? ?
其中

? ( x) , g1 (t ) , g 2 (t ) 为已知函数,且满足连接条件

? (0) ? g1 (0),
边界条件 1 件。 第二类和第三类边界条件为

? (l ) ? g 2 (0)

u(0, t ) ? g (t ),u(l , t ) ? g 2 (t ) 称为第一类边界条

?? u ? ? ? x ? ?1 (t )u ? x ?0 ? g1 (t ) ? ? ?? u ? ? ? x ? ? 2 (t )u ? x ?l ? g 2 (t ) ? ?
0?t ?T 其中 ?1 (t ) ? 0 , ? 2 (t ) ? 0 。当 ?1 (t ) ? ?2 (t ) ? 0 时,为第二
类边界条件, 否则称为第三类边界条件。 双曲型方程: 最简单形式为一阶双曲型方程

?u ?u ?a ?0 ?t ?x
物理中常见的一维振动与波动问题可用二阶波动方程 2 2 2 2 2

? u ?a ?t

? u ?x

描述,它是双曲型方程的典型形式。方程的初值问题为

2 ? ? 2u 2 ? u ? 2 ?a 2 ? t ? x ? ? ?u ( x,0) ? ? ( x) ?? u ? t ?0 ? ? ( x) ? ? ?t

t ? 0, ? ? ? x ? ??

? ? ? x ? ??

边界条件一般也有三类,最简单的初边值问题为

2 ? ? 2u 2 ? u ? ? t 2 ? a ? x2 ? 0 0 ? t ? T , 0 ? x ? l ? ? ? u ? u ( x ,0) ? ? ( x ), ? ? ( x) 0 ? x ? l ? ? t t ?0 ? ?u (0, t ) ? g (t ), u (l , t ) ? g (t ) 0 ? t ? T 1 2 ? ? ?
1.2 差分方法的基本概念 差分方法又称为有限差分方法或网格法,是求偏微分方程定 解问题的数值解中应用最广泛的方法之一。 它的基本思想是:先对求解区域作网格剖分,将自变量的连 续变化区域用有限离散点(网格点)集代替;将问题中出现的连 续变量的函数用定义在网格点上离散变量的函数代替;通过用网 格点上函数的差商代替导数,将含连续变量的偏微分方程定解问 题化成只含有限个未知数的代数方程组(称为差分格式) 。如果 差分格式有解,且当网格无限变小时其解收敛于原微分方程定解 问题的解,则差分格式的解就作为原问题的近似解(数值解) 。 因此,用差分方法求偏微分方程定解问题一般需要解决以下问题: (1)选取网格; (2)对微分方程及定解条件选择差分近似,列出差分格式; (3)求解差分格式; (4)讨论差分格式解对于微分方程解的收敛性及误差估计。 下面,用一个简单的例子来说明用差分方法求解偏微分方程 问题的一般过程及差分方法的基本概念。

设有一阶双曲型方程初值问题。

?u ?? u ?0 ? ?a ?x ? ?t ?u( x,0) ? ? ( x) ?
(1) 选取网格:

t ? 0, ? ? ? x ? ??

-2h 首先对定解区域 分,最简单 常用一种网格是用两族分别平行于

-h

0

h

2h

3h

D ? {( x, t ) ? ? ? x ? ??, t ? 0} 作网格剖

x 轴与 t

轴的等距直线 ,

x ? xk ? kh
t ? t j ? j? (k ? 0, ?1, ?2
h

, j ? 0,1, 2, ) 将 D

分成许

多小矩形 区域。这些直线称为网格线,其交点称为网格点,也称为节点, 和

? 分别称作 x 方向和 t 方向的步长。这种网格称为矩形网格。

(2) 对微分方程及定解条件选择差分近似,列出差分格式: 如果用向前差商表示一阶偏导数,即

u ( xk ?1 , t j ) ? u ( xk , t j ) h ? u ? ? u?? ( xk ? ?1h, t j ) x2 ? x ( x ,t ) h 2
k j

u ( xk , t j ?1 ) ? u ( xk , t j ) ? ? u ? ? ut??2 ( xk , t j ? ? 2? ) ? t ( xk ,t j ) ? 2
其中

0 ? ?1 ,? 2 ? 1 。 ? u ? u ?a ?0 方程 ? t ? x
( x k , t j ) 处可表示为

在节点

u ( xk , t j ?1 ) ? u ( x k , t j )

?

?a

u ( xk ?1 , t j ) ? u ( xk , t j ) h

? ah ? ( x k ? ? 1 h, t j ) ? u t??2 ( x k , t j ? ? 2? ) ? u ? x2 2 2

? R( xk , t j )
其中

(k ? 0, ? 1, ? 2,?, j ? 0,1,2,?)

u( xk ,0) ? ? ( xk ) (k ? 0, ?1, ?2, ) 。由于当
足够小时,在式

h, ?

中略去

R( xk , t j ) ,就得到一个与方程相近似的差分方程

uk , j ?1 ?uk , j

?

?a

uk ?1, j ? uk , j h

?0

此处, 条件

u k , j 可看作是问题的解在节点 ( xk , t j ) 处的近似值。同初值

uk ,0 ? ? ( xk )

(k ? 0, ? 1, ? 2, ?)

结合,就得到求问题的数值解的差分格式。 式

? ah R( xk , t j ) ? ut??2 ( xk , t j ? ? 2? ) ? u ?x?2 ( xk ? ? 1h, t j ) 2 2 ? O(? ? h)
称为差分方程的截断误差。 如果一个差分方程的截断误差为 程对

R ? O(? q ? h p ) ,则称差分方

t



q

阶精度,对

x 是 p 阶精度的。显然,截断误差的阶数

越大,差分方程对微分方程的逼近越好。 若网格步长趋于 0 时,差分方程的截断误差也趋于 0,则称 差分方程与相应的微分方程是相容的。这是用差分方法求解偏微 分方程问题的必要条件。 如果当网格步长趋于 0 时,差分格式的解收敛到相应微分方 程定解问题的解,则称这种差分格式是收敛的。 §2 椭圆型方程第一边值问题的差分解法 本节以 Poisson 方程为基本模型讨论第一边值问题的差分方法。 2.1 差分格式的建立 考虑 Poisson 方程的第一边值问题

? ? 2u ? 2u ? 2 ? 2 ? f ( x, y ) ?y ? ?x ?u ( x, y ) ( x , y )?? ? ? ( x, y ) ?

( x, y ) ? ? ? ? ??

取 线

h, ?

分别为

x 方向和 y 方向的步长,如图所示,以两族平行

x ? xk ? kh , y ? y j ? j? (k , j ? 0, ?1, ?2, ) 将定
点 的 全 体 记 为

解区域剖分成矩形网 格 。 节

R ? {( xk , y j ) xk ? kh, y j ? j? , k , j为整数} 。定解区
域内部的节点称为内点,记内点集

R ? ? 为 ? h?

。边界

? 与网格

线的交点称为边界点,边界点全体记为

?h? 。与节点 ( xk , y j ) 沿 x 方

向或

y

方 向 只 差 一个 步长 的 点

( xk ?1 , y j ) 和 ( xk , y j ?1 ) 称 为 节 点

( xk , y j ) 的
相邻节点。如果一个内点的四个相邻节点均属于 则内点,正内点的全体记为

? ? ? ,称为正

? (1) ,至少有一个相邻节点不属于 ? ? ?

的内点称为非正则内点,非正则内点的全体记为 求出第一边值问题在全体内点上的数值解。

? ( 2) 。问题是要
u(k , j) ? u( xk , y j )


为 简 便 , 记

(k , j ) ? ( x k , y j )



f k , j ? f ( xk , y j ) 。对正则

内点 (k ,

j ) ? ?(1) ,由二阶中心差商公式 u (k ? 1, j ) ? u (k , j ) u (k , j ) ? u ( k ? 1, j ) ? 2 2 ?u h ( h h ? ? u ? x2 (k , j ) h 12 x

? 2u ? y2

(k , j )

u (k ? 1, j ) ? 2u (k , j ) ? u (k ? 1, j ) h 2 (4) ? ? u x4 ( x h2 12 u (k , j ? 1) ? 2u (k , j ) ? u ( k , j ? 1) ? 2 (4) ? ? u y 4 ( xk , y j 2 ? 12

Poisson 方 程

? 2u ? 2u ? ? f ( x, y ) 2 2 ?x ?y

在 点

( k , j ) 处可表示为

u (k ? 1, j ) ? 2u (k , j ) ? u (k ? 1, j ) u (k , j ? 1) ? 2u (k , j ) ? u (k , ? 2 h ?2
其中

h 2 ( 4) ? 2 ( 4) R(k , j ) ? u x4 ( xk ? ? 1h, y j ) ? u x4 ( xk , y j ? ? 2? ) ? O(h 2 ? ? 12 12
为其截断误差表示式,略去

R(k , j ) ,即得与方程相近似的差分方程

u k ?1, j ? 2u k , j ? u k ?1, j h
2

?

u k , j ?1 ? 2u k , j ? u k , j ?1

?

2

? f k, j

式中方程的个数等于正则内点的个数,而未知数 正则内点处解

u k , j 则除了包含

u 的近似值外,还包含一些非正则内点处 u 的近
u 值作为该点上 u 值的
点,则有

似值,因而方程个数少于未知数个数。在非正则内点处 Poisson 方程的差分近似不能按上式给出,需要利用边界条件得到。 边界条件的处理可以有各种方案,下面介绍较简单的两种。 (1)直接转移 用最接近非正则内点的边界点上的 近似,这就是边界条件的直接转移。 例如,点 P ( k ,

j ) 为非正则内点,其最接近的边界点为 Q

uk , j ? u(Q) ? ? (Q)
求出,其截断误差为 O( h 个数相等。 (2)线性插值

(k, j) ? ?(2)

上式可以看作是用零次插值得到非正则内点处

u 的近似值,容易

? ? ) 。将上式代入,方程个数即与未知数

这种方案是通过用同一条网格线上与点 内点作线性插值得到非正则内点 P ( k ,

P

相邻的边界点与 值的近似。由点

j) 处 u

R



T

的线性插值确定

u ( P) 的近似值 u k , j ,得
h d ? ? ( R) ? ? (T ) h?d h?d
2

uk , j
其中

d ? RP

,其截断误差为 O(h

) 。将其与方程相近似的差分

方 程联立,得到方程个数与未知数个数相等的方程组,求解此方程 组可得 Poisson 方程第一边值问题的数值解。 上面所给出的差分格式称为五点菱形格式,

u k ?1, j ? 2u k , j ? u k ?1, j h
实际计算时经常取

2

?

u k , j ?1 ? 2u k , j ? u k , j ?1

?

2

? f k, j

h ? ? ,此时五点菱形格式可化为

1 (uk ?1, j ? uk ?1, j ? uk , j ?1 ? uk , j ?1 ? 4uk , j ) ? f k , j 2 h
简记为

1 h2
其中◇



uk , j ? f k , j

uk , j ? uk ?1, j ? uk ?1, j ? uk , j ?1 ? uk , j ?1 ? 4uk , j 。
? ? 2u ? 2u ( x, y ) ? ? ? 2 ? 2 ? f ( x, y ) ?y ? ?x ?u ( x, y ) ? lg[(1 ? x) 2 ? y 2 ] ? ? ?? ? ?

例 1 用五点菱形格式求解拉普拉斯(Laplace)方程第一边值问题

} 。取 h ? ? ? 其中 ? ? {( x, y) 0 ? x, y ? 1

1 3



(0,0) (1,0) (2,0) (3,0) [解]网格中有四个内点,均为正则内点。由五点菱形格式,得方 程组

?1 ?h2 ? ?1 ?h2 ? ?1 ?h2 ?1 ? 2 ?h

(u 2,1 ? u 0,1 ? u1, 2 ? u1, 0 ? 4u1,1 ) ? 0 (u 3,1 ? u1,1 ? u 2, 2 ? u 2, 0 ? 4u 2,1 ) ? 0 (u 2, 2 ? u 0, 2 ? u1,3 ? u1,1 ? 4u1, 2 ) ? 0 (u 3, 2 ? u1, 2 ? u 2,3 ? u 2,1 ? 4u 2, 2 ) ? 0
代入边界条件

16 ? u ? lg , ? 1,0 9 ? ? u ? lg 10 , ? 0,1 9 ? ?u ? lg 25 , ? 1,3 9 ? 37 ?u3,1 ? lg , ? 9 ?
其解为

u2,0 ? lg

25 9 13 u0,2 ? lg 9 34 u2,3 ? lg 9 40 u3,2 ? lg 9


u1,1 ? 0.2756919 , u 2,1 ? 0.4603488
u1,2 ? 0.3467842 , u 2, 2 ? 0.5080467


h ??







1 (uk ?1, j ? uk ?1, j ? uk , j ?1 ? uk , j ?1 ? 4uk , j ) ? f k , j 2 h
利用点 ( k , 式,称为五点 矩形格式,简记为

j ) , (k ? 1, j ? 1) , (k ? 1, j ? 1) 构造的差分格

1 2h 2




uk , j ? f k , j




uk , j ? uk ?1, j ?1 ? uk ?1, j ?1 ? uk ?1, j ?1 ? uk ?1, j ?1 ? 4uk , j , 其
截断误差为

h 2 ? ? 4u ? 4u ? 4u ? 4 R(k , j ) ? ? ? 6 ? ? O ( h )?O ? 4 2 4 4 12 ? ? x ? x ? y ? y ?( k , j )
2 五点菱形格式与矩形格式的截断误差均为 ,称它们具有 二阶精度。如果用更多的点构造差分格式,其截断误差的阶数可 以提高,如利用菱形格式及矩形格式所涉及的所有节点构造出的 九点格式就是具有四阶精度的差分格式。

O(h )

§3 抛物型方程的差分解法 以一维热传导方程

?u ? 2u ?a 2 ?0 ?t ?x

(a ? 0)

为基本模型讨论适用于抛物型方程定解问题的几种差分格式。 3.1 差分格式的建立 首先对

xt 平面进行网格剖分。分别取 h, ? 为 x 方向与 t 方向
x ? xk ? kh (k ? 0, ?1, ?2, ) ,
, j ? 0,1,2 ) 。为


的步长,用两族平行直线

t ? t j ? j? ( j ? 0,1,2?) ,将 xt 平面剖分成矩形网格,节点


( xk , t j ) (k ? 0, ?1, ?2,


简 便 , 记

(k , j ) ? ( xk , t j )

u (k , j ) ? u ( x k , t j )

, ,

? k ? ? ( xk )

g1 j ? g1 (t j )

g2 j ? g2 (t j ), ?1 j ? ?1 (t j ), ?2 j ? ?2 (t j ) 。
(一)微分方程的差分近似 在网格内点 ( k , j ) 处,对

?u ?t

分别采用向前、向后及中心差商公式

? u ? t ? u ? t ? u ? t

?
(k , j )

u (k , j ? 1) ? u (k , j )

?
u (k , j ) ? u (k , j ? 1)

? O(? ) ? O(? )

?
(k , j )

?

?
(k , j )

u (k , j ? 1) ? u (k , j ? 1) ? O(? 2 ) 2?

一维热传导方程

?u ? 2u ?a ?0 2 ?t ?x
可分别表示为

(a ? 0)

u (k , j ? 1) ? u (k , j )

?

?a

u (k ? 1, j ) ? 2u (k , j ) ? u (k ? 1, j ) ? O(? ? h2

u (k , j ? 1) ? u (k , j ? 1) u (k ? 1, j ) ? 2u (k , j ) ? u (k ? 1, j ) ?a ? O(? ? ? h2

u (k , j ? 1) ? u (k , j ? 1) u (k ? 1, j ) ? 2u (k , j ) ? u (k ? 1, j ) 2 2 ?a ? O ( ? ? h 2? h2
由此得到一维热传导方程的不同差分近似

u k , j ?1 ? u k , j

?
u k , j ? u k , j ?1

?a

u k ?1, j ? 2u k , j ? u k ?1, j h
2

?0

?
uk , j ?1 ? uk , j ?1 2?

?a
?a

u k ?1, j ? 2u k , j ? u k ?1, j h
h
2

?0

uk ?1, j ? 2uk , j ? uk ?1, j
2

?0

上述差分方程所用到的节点各不相同。其截断误差分别为 O(

? ? h2 ) ,

O(? ? h 2 ) 和 O(? 2 ? h 2 ) 。因此,它们都与一维热传导方程相容。
如果将式

u (k , j ? 1) ? u (k , j ? 1) u (k ? 1, j ) ? 2u (k , j ) ? u (k ? 1, j ) 2 ?a ? O ( ? 2? h2

1 (u k , j ?1 ? u k , j ?1 ) 代替,则可得到又一种差分近似 中的 u k , j 用 2

u k , j ?1 ? u k , j ?1 2?

?a

u k ?1, j ? u k , j ?1 ? u k , j ?1 ? u k ?1, j h
2

?0

差分方程用到四个节点。由 Taylor 公式容易得出

uk, j ?

1 (u k , j ?1 ? u k , j ?1 ) ? O(? 2 ) 2
2

O(? 故其的截断误差为

?? 2 ? h ) ? O? ? h2 ?
2

? ? ? 。因而不是对任意的 ?

h,? ? 0 ,
此差分方程都能逼近热传导方程

?u ? 2u ?a ?0 2 ?t ?x
仅当

(a ? 0) ,

? ? o(h) 时,才成立。

综上可知,用不同的差商公式可以得到微分方程的不同的差 分近似。构造差分格式的关键在于使其具有相容性、收敛性和稳 定性。前面三个方程都具有相容性,而此方程则要在一定条件下 才具有相容性。 (二)初、边值条件的处理 为用差分方法求解定解问题初值问题

?? u ? 2u ? ?a 2 ?0 ?x ? ?t ?u ( x,0) ? ? ( x) ?
初边值问题

t ? 0,?? ? x ? ?? ? ? ? x ? ??

?? u ? 2u ? ? t ? a ? x2 ? 0 0 ? t ? T , 0 ? x ? l ? ? ?u ( x, 0) ? ? ( x) 0 ? x ? l ?u (0, t ) ? g (t ), u (l , t ) ? g (t ) 0?t ?T 1 2 ? ? ?
还需对定解条件进行离散化。 对初始条件及第一类边界条件,可直接得到

uk ,0 ? u( xk ,0) ? ? k
(k ? 0, ?1, 或 k ? 0,1, , n)

u 0, j ? u (0, t j ) ? g1 j u n , j ? u (l , t j ) ? g 2 j
( j ? 0,1, ?, m ? 1)

n ? 其中

l T ,m ? h ?
x ?0

对第二、三类边界条件

?? u ? ? ? ( t ) u 1 ?? x ? ? ? ?? u ? ? ? x ? ? 2 (t )u ? ? ?
0?t ?T

? g1 (t ) ? g 2 (t )

x ?l

需用差分近似。下面介绍两种较简单的处理方法。 (1) 在左边界 ( x 在右边界

? 0) 处用向前差商近似偏导数
?u ? x

?u ? x



( x ? l ) 处用向后差商近似
?u ?x ?u ?x ?
( 0, j )

,即

u (1, j ) ? u (0, j ) ? O ( h) h u (n, j ) ? u (n ? 1, j ) ? O ( h) h

?
( n, j )

( j ? 0,1,?, m)
则得边界条件的差分近似为

? u1, j ? u 0, j ? ?1 j u 0, j ? g1 j ? ? h ? ? u n , j ? u n ?1, j ? ? u 2 j n, j ? g 2 j ? h ?
( j ? 0,1, ?, m)
其截断误差为

O ( h) 。
?u ? x
,即

(2)用中心差商近似

? u u (1, j ) ? u (?1, j ) ? ? O( h 2 ) ? x (0, j ) 2h ? u u (n ? 1, j ) ? u (n ? 1, j ) ? ? O( h 2 ) ? x ( n, j ) 2h

( j ? 0,1,?, m)
则得边界条件的差分近似为

? u1, j ? u ?1, j ? ?1 j u 0, j ? g1 j ? ? 2h ? ? u n ?1, j ? u n ?1, j ? ? u 2 j n, j ? g 2 j ? h ?

( j ? 0,1,?, m)
其截断误差为 O(h 节点 ( ?1,
2

) 。误差的阶数提高了,但出现定解区域外的

j ) 和 (n ? 1, j ) ,这就需要将解拓展到定解区域外。可以通

过用内节点上的

u 值插值求出 u?1, j 和 u n?1, j ,也可以假定热传导方
u?1, j

程在边界上也成立,将差分方程扩展到边界节点上,由此消去



u n ?1, j 。
(三)几种常用的差分格式 以热传导方程的初边值问题

?? u ? 2u ? ? t ? a ? x2 ? 0 0 ? t ? T , 0 ? x ? l ? ? ?u ( x, 0) ? ? ( x) 0 ? x ? l ?u (0, t ) ? g (t ), u (l , t ) ? g (t ) 0?t ?T 1 2 ? ? ?
为例给出几种常用的差分格式。 (1)古典显式格式



r ?

a? h2





u k , j ?1 ? u k , j

?


?a

u k ?1, j ? 2u k , j ? u k ?1, j h


2


?0


uk , j ?1 ? ruk ?1, j ? (1 ? 2r )uk , j ? ruk ?1, j
将其与初始条件及第一类边界条件

uk ,0 ? u( xk ,0) ? ? k
(k ? 0, ?1, 或 k ? 0,1, , n)

u 0, j ? u (0, t j ) ? g1 j u n , j ? u (l , t j ) ? g 2 j
( j ? 0,1, ?, m ? 1)
结合,我们得到求解此问题的一种差分格式

?u k , j ?1 ? ru k ?1, j ? (1 ? 2r )u k , j ? ru k ?1, j (k ? 1,2,?, n ? 1, j ? 0,1,?, m ? ? (k ? 0,1,?, n) ?u k ,0 ? ? k ?u ? g , u ? g ( j ? 0,1,?, m) 1j n, j 2j ? 0, j
由于第 0 层

( j ? 0) 上节点处的 u 值已知 (uk ,0 ? ? k ) ,由此即可算出

u在
第一层

( j ? 1) 上节点处的近似值 u k ,1 。重复使用此式,可以逐层计

算出所有的

u k , j ,因此此差分格式称为古典显式格式。又因式中


只出现相邻两个时间层的节点,故此式是二层显式格式。 (2)古典隐式格式 将

u k , j ? u k , j ?1

?

?a

u k ?1, j ? 2u k , j ? u k ?1, j h
2

?0

整理并与初始条件及第一类边界条件式联立,得差分格式如下

?uk , j ?1 ? uk , j ? r (uk ?1, j ?1 ? 2uk , j ?1 ? uk ?1, j ?1 ) (k ? 1, 2, , n ? 1, j ? 0, ? (k ? 0,1, , n) ?uk ,0 ? ? k ?u ? g , u ? g ( j ? 0,1, , m) ? 0, j 1 j n, j 2 j
r ? 其中 a? h2

。虽然第 0 层上的

u

值仍为已知,但不能由上式直

接计算以上各层节点上的值

u k , j ,必须通过解下列线性方程组

uk , j ?1 ? r(uk ?1, j ?1 ? 2uk , j ?1 ? uk ?1, j ?1 ) ? ?ruk ?1, j ?1 ? (1? 2r)uk , j ?1 ? ruk ?1, j ?
?r ?1 ? 2r ? ?r 1 ? 2r ? ? ? ? ? ? ? 0 ? ? ? ? ?r 0 ? ? ? ? ? ? ? r 1 ? 2r ?r ? ?r 1 ? 2r ? ? 0

? u1, j ?1 ? ? u1, j ? rg ?u ? ? u2, j 2, j ? 1 ? ? ? ? ??? ? ? ? u un ? 2, ? n ? 2, j ?1 ? ? ? un ?1, j ?1 ? ?un ?1, j ? rg ? ? ?

( j ? 0,1,?, m ? 1)
才能由

u k , j 计算 u k , j ?1 ,故此差分格式称为古典隐式格式。此方程

组是三对角方程组,且系数矩阵严格对角占优,故解存在唯一。 (3)Richardson 格式 Richardson 格式是将式

uk , j ?1 ? uk , j ?1 2?

?a

uk ?1, j ? 2uk , j ? uk ?1, j h
2

?0

整理后与初始条件及第一类边界条件式联立。其计算公式为

?u k , j ?1 ? u k , j ?1 ? 2r (u k ?1, j ? 2u k , j ? u k ?1, j ) (k ? 1,2,?, n ? 1, ? (k ? 0,1,?, n) ?u k ,0 ? ? k ?u ? g , u ? g ( j ? 0,1,?, m) 1j n, j 2j ? 0, j

这种差分格式中所涉及的节点出现在

j ? 1, j, j ? 1 三层上,故为三层

显式格式。Richardson 格式是一种完全不稳定的差分格式,因此它在实际 计算中是不能采用的。 (4)杜福特-弗兰克尔(DoFort-Frankel)格式 DoFort-Frankel 格式也是三层显式格式,它是由式

u k , j ?1 ? u k , j ?1 2?

?a

u k ?1, j ? u k , j ?1 ? u k , j ?1 ? u k ?1, j h
2

?

与初始条件及第一类边界条件式结合得到的。具体形式如下:

2r 1 ? 2r ? ?u k , j ?1 ? 1 ? 2r (u k ?1, j ? u k ?1, j ) ? 1 ? 2r u k , j ?1 (k ? 1,2,?, n ? ? (k ? 0,1,?, n) ?u k ,0 ? ? k ?u ? g , u ? g ( j ? 0,1,?, m) n, j 2j ? 0, j 1 j ?
用这种格式求解时,除了第 0 层上的值

u k , 0 由初值条件得到,必

须先用二层格式求出第 1 层上的值

u k ,1 ,然后再按上式逐层计



uk , j ( j ? 2,3,?, m) 。
(5)六点隐式格式 对二阶中心差商公式

? 2u ? x2

?
(k , j )

u (k ? 1, j ) ? 2u ( k , j ) ? u ( k ? 1, j ) h2

如果用 均值

? 2u ? x2

在点

(k , j ? 1) 与点 ( k , j ) 处的二阶中心差商的平

近似

? 2u ? x2

1 ( k , j ? ) 处的值,即 在 2

? 2u ? x2
? u ?t

?
1 (k , j? ) 2

u k ?1, j ?1 ? 2u k , j ?1 ,?u k ?1, j ?1 ? u k ?1, j ? 2u k , j ? u 2h 2

同时

1 ( k , j ? ) 处的值也用中心差商近似,即 在点 2

1 (k , j? ) 2 这样又得到热传导方程的一种差分近似

?u ?x

?

uk , j ?1 ? uk , j

?

u k , j ?1 ? u k , j

?
其截断误差为 O(?
2

a ? 2 (u k ?1, j ?1 ? 2u k , j ?1 ,?u k ?1, j ?1 ? u k ?1, j ? 2u k , 2h
? h 2 ) ,将上式与初始条件及第一类边界条件式

联立并整理,得差分格式

r r ? u ? u ? ( u ? 2 u ? u ) ? (uk ?1, j ? 2uk , j ? uk k , j ?1 k ?1, j ?1 ? k , j ?1 k , j 2 k ?1, j ?1 2 ? ? (k ? 1, 2, , n ? 1, j ? 0,1, , m ? 1) ? ?uk ,0 ? ? k (k ? 0,1, , n) ? ( j ? 0,1, , m) ? ?u0, j ? g1 j , un , j ? g 2 j

此格式涉及到六个节点,它又是隐式格式,故称为六点隐式格式。与古典 隐式格式类似,用六点格式由第

j

层的值

u k , j 计算第 j ? 1

层的值

u k , j ?1 时,需求解三对角方程组
0 ? 1 ? r ?r / 2 ? ? ?r / 2 1 ? r ?r / 2 ? 0 ? ? ? ? ? ? ? ? ? ? ? ? 0 ? r / 2 1 ? r ? r / 2 ? ? ? ?r / 2 1 ? r ? ? ?
( j ? 0,1, ?, m ? 1)

? u1, j ?1 ? ?u ? 2, j ? 1 ? ? ? ? ? ? u ? n ?2, j ?1 ? ? un?1, j ?1 ? ? ?

此方程组的系数矩阵严格对角占优,故仍可用追赶法求解。 例 2 用古典显式格式求初边值问题

? ? u ? 2u ? ?0 0 ? t ? 3, 0 ? x ? 3 ? 2 ? ?t ? x ? 2 0? x?3 ?u ( x,0) ? x ?u (0, t ) ? 0, u (3, t ) ? 9 0?t ?3 ? ? ?
的数值解,取

h ? 1, ? ? 0.5 。
这 里

[ 解 ]

a? a ? 1, r ? 2 ? 0.5 h



? ( x) ? x 2



g1 (t ) ? 0, g 2 (t ) ? 9 。由格式

?u k , j ?1 ? ru k ?1, j ? (1 ? 2r )u k , j ? ru k ?1, j (k ? 1,2,?, n ? 1, ? (k ? 0,1,?, n) ?u k ,0 ? ? k ?u ? g , u ? g ( j ? 0,1,?, m) 1j n, j 2j ? 0, j
可得到

?u k , j ?1 ? 0.5(u k ?1, j ? u k ?1, j ) ? 2 2 ?u k ,0 ? xk ? k ?u ? 0, u ? 9 3, j ? 0, j
将初值

(k ? 1,2, j ? 0,1,?,5) (k ? 0,1,2,3) ( j ? 0,1,?,6)

u k , 0 代入上式,即可算出

u1,1 ? 0.5 ? (u2,0 ? u0,0 ) ? 0.5 ? (4 ? 0) ? 2 u2,1 ? 0.5 ? (u3,0 ? u1,0 ) ? 0.5 ? (9 ? 1) ? 5
将边界条件

u0,1 ? 0 , u3,1 ? 9 及上述结果代入又可求得

u0,2 ? 0, u1,2 ? 2.5, u2,2 ? 5.5, u3,2 ? 9
如此逐层计算,得全部节点上的数值解为

u0,3 ? 0, u1,3 ? 2.75, u2,3 ? 5.75, u3,3 ? 9, u0,4 ? 0,

§4 双曲型方程的差分解法 对二阶波动方程
2 ? 2u 2 ? u ?a 2 ?t ? x2

? u v ? 如果令 1 ? t




v2 ?

?u ? x ,则方程可化成一阶线性双曲型方程

? ? v1 2 ? v2 ? a ? ?t ?x ? ? ? ? v 2 ? ? v1 ? ?x ? ?t


v ? (v1 , v2 )T ,则方程组可表成矩阵形式
? v ?0 a 2 ? ? v ?v ?? ? A ? ? t ?1 0 ? ? x ?x

矩阵

A 有两个不同的特征值 ? ? ? a ,故存在非奇异矩阵 P ,使得
?a 0 ? PAP ? ? ??? 0 ? a ? ?
?1

作 变 换

w ? Pv ? (w1 , w2 )T

, 方 程 组 可 化 为

?w ?w ?? ?t ?x
方程组由二个独立的一阶双曲型方程联立而成。因此本节主要讨 论一阶双曲型方程的差分解法。

4.1 几种简单的差分格式 考虑一阶双曲型方程的初值问题

?u ?? u ? a ?0 ? ?x ? ?t ?u ( x,0) ? ? ( x) ?
将 网

t ? 0, ? ? ? x ? ?? ? ? ? x ? ??

xt 平面剖分成矩形网格,取 x 方向步长为 h, t 方向步长为 ? ,
格 线 为

x ? xk ? kh (k ? 0, ?1, ?2, )



t ? t j ? j? ( j ? 0,1,2?) 。为简便,记

(k , j) ? ( xk , t j ) , u(k , j) ? u( xk , t j ),? k ? ? ( xk ) 。
以不同的差商近似偏导数,可以得到方程的不同的差分近似

u k , j ?1 ? u k , j

?
u k , j ?1 ? u k , j

?a
?a

u k ?1, j ? u k , j
uk , j

h ? u k ?1, j
h

?0
?0

?

u k , j ?1 ? u k , j

?

?a

u k ?1, j ? u k ?1, j 2h

?0

截断误差分别为 , 与 化的初始条件,可以得到几种简单的差分格式

O(? ? h) O(? ? h) O(? ? h 2 ) 。结合离散

? ?u k , j ?1 ? u k , j ? ar(u k ?1, j ? u k , j ) ? ? ?u k ,0 ? ? k

(k ? 0,?1,?2,?, j ? 0,1,2,?)

? ?u k , j ?1 ? u k , j ? ar(u k , j ? u k ?1, j ) ? ? ?u k ,0 ? ? k

(k ? 0,?1,?2,?, j ? 0,1,2,?)

ar ? ?uk , j ?1 ? uk , j ? (uk ?1, j ? uk ?1, j ) (k ? 0, ?1, ?2, , j ? 0,1, 2, ) 2 ? ?uk ,0 ? ?k ?
r? 其中
可求出第

?
h 。如果已知第

j

层节点上的值

u k , j ,按上面三种格式就

j ? 1 层上的值 u k , j ?1 。因此,这三种格式都是显式格式。
?u ?t

如果对

?u 采用向后差商, ? x

采用向前差商,则方程可化成

u (k , j ) ? u (k , j ? 1) u (k ? 1, j ) ? u (k , j ) ?a ? O(? ? h) ? 0 ? h
相应的差分格式为

? ?u k , j ?1 ? u k , j ? ar(u k ?1, j ?1 ? u k , j ?1 ) ? ? ?u k ,0 ? ? k

(k ? 0,?1,?2,?, j ? 0,1,2,?)

此差分格式是一种隐式格式,必须通过解方程组才能由第

j 层节

点上的值

u k , j 求出第 j ? 1 层节点上的值 u k , j ?1 。
t ? 0, ? ? ? x ? ?? ? ? ? x ? ??
其 中

例对初值问题

?? u ? u ?0 ? ? ? ?t ? x ?u( x,0) ? ? ( x) ?

?1 x ? 0 ?1 ? ? ( x) ? ? x?0 ?2 ? ?0 x ? 0
用 差 分 格 式 求 其 数 值 解

uk , j ( j ? 1,2,3,4)

, 取

r ?

?
h

?

1 2



[解] 记

xk ? kh(k ? 0,?1,?2,?) ,由初始条件

?k

?1 k ? ?1,?2, ? ?1 ? ? ? ( xk ) ? ? k ?0 ?2 ? ?0 k ? 1,2, ?

按差分格式

? ?u k , j ?1 ? u k , j ? ar(u k ?1, j ? u k , j ) ? ? ?u k ,0 ? ? k

(k ? 0,?1,?2,?, j ? 0,1,2

计算公式为

u k , j ?1

3 1 ? u k , j ? u k ?1, j 2 2

计算结果略。 如果用差分格式

? ?u k , j ?1 ? u k , j ? ar(u k , j ? u k ?1, j ) ? ? ?u k ,0 ? ? k
求解,计算公式为

(k ? 0,?1,?2,?, j ? 0,1,2

u k , j ?1
计算结果见表略。

1 ? (u k , j ? u k ?1, j ) 2

与准确解

?1 x ? t ?1 ? u ( x, t ) ? ? x ?t ?2 ? ?0 x ? 0

比较知,按前一个差分格式所求得的数值解不收敛到初值问题 的解,而后一个差分格式的解收敛到原问题的解。


相关文章:
第十章 偏微分方程数值解法.doc
第十章 偏微分方程数值解法 偏微分方程问题,其求解十分困难。除少数特殊情况外,绝
偏微分方程的几种数值解法及其应用.pdf
偏微分方程的几种数值解法及其应用_数学_自然科学_专业资料。偏微分方程的几种数值解法 1 常微分方程及其数值解法 1.1 常微分方程概述在数学上,物质的运动和变化...
偏微分方程数值解法2014.10.24.ppt
偏微分方程数值解法2014.10.24_数学_自然科学_专业资料。偏微分方程数值解法(第...1. 常系数双曲型方程数值解法 典型方程: a 第四章 双曲型方程的差分方法 ...
偏微分方程的数值解法课后习题答案.doc
偏微分方程数值解法课后习题答案 - 第二章习题答案 q1 q2 a2 q1 a
偏微分方程数值解法答案.doc
偏微分方程数值解法答案_理学_高等教育_教育专区。偏微分方程数值解法的课后习题...第6章_偏微分方程数值解... 16页 2下载券 偏微分方程数值解法题解 35页...
偏微分方程数值解法(1)_图文.pdf
偏微分方程数值解法(1)_数学_自然科学_专业资料。偏微分方程数值解法(1),偏...第6章_偏微分方程数值解... 16页 2下载券 偏微分方程数值解法教学... ...
偏微分方程数值解法2014.11.05.ppt
偏微分方程数值解法2014.11.05_数学_自然科学_专业资料。偏微分方程数值解法(第四讲) 2014年11月05日星期三 1.一阶线性常系数双曲型方程组考虑一阶线性常系数...
偏微分方程数值解法.doc
二、 问题分析第一步 利用 Green 公式,求出方程的变分形式 1 变分形式为:...算法大全第20章 偏微分方... 30页 2下载券 偏微分方程数值解例题答... ...
偏微分方程的数值解法课后习题答案.doc
偏微分方程数值解法课后习题答案 - 第二章习题答案 六章 q1 q2 a2 六
偏微分方程数值解法.pdf
“十二五”国家重点图书出版规划项目 信息与计算科学丛书 67 偏微分方程数值解法...目 录 《信息与计算科学丛书》 序 前言 第 1 章 引言 . . . . . . ....
分析10-偏微方程数值解法_图文.ppt
分析10-偏微方程数值解法 - 第十章 偏微分方程数值解法 W Y 第十章 偏微分方程 数值解法 10-1 §1 差分方法的基本概念 1.1 偏微分方程的定解问题 1.2...
分析10-偏微方程数值解法_图文.ppt
分析10-偏微方程数值解法 - 第十章 偏微分方程数值解法 W Y 第十章 偏微分方程 数值解法 10-1 §1 差分方法的基本概念 1.1 偏微分方程的定解问题 1.2...
偏微分方程数值解_图文.ppt
偏微分方程数值解 - 第五章 Numerical Methods for Partial Differential Equations 偏微分方程数值解 5.1 偏微分方程简介 5.2 离...
偏微分方程数值解法(2).doc
第十章 偏微分方程数值解法 §3 抛物型方程的差分解法 抛物方程的最简单的是一维
计算方法5_偏微分方程数值解法.ppt
偏微分方程数值解法 Numerical Solutions to Partial Differential Equations 对象...第5章 计算方法解线性方... 36页 1下载券 专业计算方法第五章-解线.....
偏微分方程数值解_图文.ppt
偏微分方程数值解 - 偏微分数值解课件清华大学... 偏微分方程数值解_理学_高等教育_教育专区。偏微分数值解课件清华大学 偏微分方程数值解 (Numerical Solut...
偏微分方程数值解法.doc
偏微分方程数值解法_数学_自然科学_专业资料。《偏微分方程数值解法》 课程设计
第六章 微分方程数值解法.ppt
第6章§6.1 §6.2 常微分方程数值解法引 言 欧拉方法 §6.3 龙格库塔方法 §6.1 引言 微分方程数值解一般可分为:常微分方程数值解和偏微分 方程数值解...
偏微分方程数值解法期末考试题答案.doc
偏微分方程数值解法期末考试题答案_理学_高等教育_教育专区。偏微分方程数值解法期末考试题答案 期末考试试题答案及评分标准 学年学期: 专班课业: 级: 程: 数学与...
重视《偏微分方程数值解法》课程_论文.pdf
科技信息 量《 偏微分方程数值触法》 课程 中国民航飞行学院计算机 学院 王丽 [摘要] 本文针 对《 偏微 分方程数值 解法》 课程的 重要性 和特点 ,提出 了...
更多相关标签: