数值分析 第五版 李庆扬 第6章 解线性方程组的迭代法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
j 1
i 1
j i 1
(k ) a x ij j bi (i 1,2,, n).
n
即当aii0时,有
i 1 n 1 ( k 1) (k ) (k ) xi ( aij x j aij x j bi ) ( i 1,2,, n). aii j 1 j i 1
上页
下页
对于给定方程组x=Bx+f,设有唯一解x*,则 x*=Bx*+f . (1.5) 又设x(0)为任取的初始向量, 按下述公式构造向量序列 x(k+1)=Bx(k)+f , k=0,1,2,. (1.6) 其中k表示迭代次数. 定义1 (1)对于给定的方程组x=Bx+f , 用公式(1.6) 逐步代入求近似解的方法称为迭代法(或称为一阶定 常迭代法,这里B与k无关). B称为迭代矩阵.
上页 下页
0 a11 a 21 0 a 22 A a n 1 ,1 a n 1 , 2 0 a nn a n 2 a n , n 1 0 a n1 0 a12 a1,n1 a1n 0 a 2 , n 1 a 2 n 0 a n 1, n 0 D LU.
方程组的精确解是x*=(3,2,1)T. 现将改写为
上页
下页
1 3 x 2 2 x 3 20), x1 8 ( 1 x 3 33), x 2 ( 4 x1 11 1 36). x 3 12 ( 6 x1 3 x 2
或写为x=B0x+f,其中
上页 下页
下面给出雅可比迭代法(2.5)的分量计算公式, 记
x
(k )
( x ,, x ,, x ) ,
(k ) 1 (k ) i (k ) T n
由雅可比迭代法(2.5)有
Dx( k 1) ( L U ) x ( k ) b,
每一个分量写出来为
aii xi( k 1) aij x (jk )
lim x ( k ) x
k
对于任何一个方程组x=Bx+f(由Ax=b变形得到的 等价方程组),由迭代法产生的向量序列x(k)是否一定 逐步逼近方程组的解x*呢?回答是不一定. 请同学们 考虑用迭代法解下述方程组
x1 2 x2 5, x2 3 x1 5.
但 x(k)并不是 所有的都收 敛到解x*!
0 an 2
0 a12 0 U
a1n a2 n 0
上页 下页
6.2.1 雅可比(Jacobi)迭代法 设aii0 (i=1,2,,n),选取M为A的对角元素部分, 即选取M=D(对角阵),A=D-N,由(2.3)式得到解方 程组Ax=b的雅可比(Jacobi)迭代法. 又称简单迭代法.
其中 aii(i)0 (i=1,2,,n)
上页
下页
建立的雅可比迭代格式为
( k 1) 1 (k) (k) (k) ( a12 x2 a13 x3 a1n xn b1 ) x1 a11 x ( k 1) 1 ( a x ( k ) (k) (k) a x a x 2 21 1 23 3 2 n n b2 ) a22 x ( k 1) 1 ( a x ( k ) a (k) xn 1 bn ) n n 1 1 n n 1 ann
(1.4)
简写为
x(k+1)=B0x(k) +f,
其中k表示迭代次数(k=0,1,2,). 迭代到第10次有
x
(10)
(3.000032, 1.999838, 0.999813) ;
T
(10)
0.000187 ( (10) x (10) x ).
上页 下页
从此例看出,由迭代法产生的向量序列x(k)逐步 逼近方程组的精确解是x*=(3,2,1)T. 即有
( k 1) 1 (k) (k) (k) x ( a x a x a x b ) 1 12 2 13 3 1 n n 1 a 11 x ( k 1) 1 ( a x ( k 1) a x ( k ) a x ( k ) b ) 21 1 23 3 2n n 2 2 a 22 x ( k 1) 1 ( a x ( k 1) a x ( k 1) bn ) n n1 1 n n1 n1 a nn
(0) (1) (k ) x1 x1 x1 ( 0 ) (1) (1) (k ) x 2 , x x 2 , , x ( k ) x 2 , (0) (1) (k ) x3 x3 x3
3 20 2 0 8 8 8 4 33 1 B0 11 0 , f 11 . 11 6 3 0 36 12 12 12
(1.3)
上页
下页
我们任取初始值,例如取x(0)=(0, 0, 0)T. 将这些值
上页 下页
或缩写为
i 1 n 1 ( k 1) ( k 1) (k ) xi ( aij x j aij x j bi ) (i 1,2,, n). aii j 1 j i 1
称为高斯—塞德尔(Gauss — Seidel)迭代法.
于是高斯—塞德尔迭代法可写为矩阵形式
( k ) B ( k 1) B k ( 0 ) .
要考察{x(k)}的收敛性,就要研究B在什么条件下 有limε(k)=0 (k→∞),亦即要研究B满足什么条件时有 Bk→0(零向量) (k→∞) .
上页 下页
6.2 基本迭代法
设线性方程组 Ax=b, (2.1) 其中,A=(aij)∈Rn×n为非奇异矩阵,下面研究任何建 立Ax=b的各种迭代法. 将A分裂为 A=M-N. (2.2) 其中,M为可选择的非奇异矩阵,且使Mx=d容易求 解,一般选择A的某种近似,称M为分裂矩阵.
代入(1.3)式右边(若(1.3)式为等式即求得方程组的解, 但一般不满足),得到新的值 x(1)=(x1(1), x2(1), x3(1))T =(3.5, 3, 3)T ,再将x(1)分量代入(1.3)式右边得到 x(2), 反复利用这个计算程序,得到一向量序列和一般的计
算公式(迭代公式)
x (0)
x ( k 1) ( D L) 1Ux ( k ) ( D L) 1 b
上页 下页
即由方程组Ax=b得到的 等 价 方 程 组
1 a12 x2 a1n xn b1 ] x1 a [ 11 1 x2 [ a21 x1 a2 n xn b2 ] a22 1 [ an1 x1 an 2 x2 bn ] xn ann
x ( 0 ) (初始向量), ( k 1) (k ) x Bx f ( k 0,1, , ),
( 2.5)
其中B=I-D-1A=D-1(L+U)=J, f=D-1b. 称J为解Ax=b的 雅可比迭代法的迭代矩阵.
上页
下页
于是雅可比迭代法可写为矩阵形式
x ( k 1 ) D 1 ( L U ) x ( k ) D 1 b
上页 下页
例1 求解方程组
8 x1 3 x2 2 x3 20, 4 x1 11 x2 x3 33, 6 x 3 x 12 x 36. 2 3 1
记为Ax=b,其中
(1.2)
x1 8 3 2 30 A 4 11 1 , x x2 , b 33 . x 6 3 12 36 3
第 6章
• 6.1 引言
解线性方程组的迭代方法
• 6.2 基本迭代法
• 6.3 迭代法的收敛性
• 6.4* 分块迭代法
上页
下页
6.1 引
对线性方程组
言
Ax=b, (1.1) 其中A为非奇异矩阵, 当A为低阶稠密矩阵时, 第5 章讨论的选主元消去法是有效的. 但对于大型稀 疏矩阵方程组(A的阶数n很大,但零元素较多), 利 用迭代法求解是合适的. 本章将介绍迭代法的一些基本理论及雅可比 迭代法,高斯-赛德尔迭代法,超松弛迭代法,而 超松弛迭代法应用很广泛。 下面举简例,以便了解迭代法的思想.
( 2.6)
由(2.6)式可知,雅可比迭代法计算公式简单, 每迭代一次只需计算一次矩阵和向量的乘法且计算 过程中原始矩阵A始终不变.
上页 下页
6.2.2 高斯-赛德尔迭代法
在 Jacobi 迭代中,计算 xi(k+1)(2 i n)时,使用 xj(k+1)代替xj(k) (1 j i-1),即有 建 立 迭 代 格 式
上页
下页
于是,解Ax=b的雅可比迭代法的计算公式为
(0) (0) (0) T x ( x , , x 1 n ) , n ( k 1) (k ) (bi a ij x j ) / a ii , xi j 1 ji ( i 1,2, , n) ( k 0,1, 表示迭代次数).
上页
下页
( k 1) (k ) (k ) x1 ( 3 x2 2 x3 20) / 8, ( k 1) (k ) (k ) x ( 4 x x 2 1 3 33) / 11, ( k 1) (k ) (k ) ( 6 x1 3 x2 36) / 12. x3
其Jacobi迭代矩阵为
0 a21 1 BJ D ( L U ) a22 an1 a nn
a12 a11 0 an 2 ann
a1n a11 a2 n a22 0
上页 下页
即
A=D-L-U
a11 a 21 A a n1 0 a L 21 a n1
a12 a22 an 2
a1n a2 n ann 0
a11 D
a22
ann
(2) 如果limx(k) (k→∞)存在(记为x*), 称此迭代法
收敛, 显然x*就是方程组的解, 否则称此迭代法发散.
上页 下页
由上述讨论,需要研究{x(k)}的收敛性. 引进误 差向量
递推得
( k 1)
x
( k 1)
来自百度文库x ,
由(1.6)减去(1.5)式,得ε(k+1)=Bε(k)(k=0,1,2,),
上页
下页
于是,求解Ax=b转化为求解Mx=Nx+b ,即求解
Ax b 求解 x M 1 Nx M 1b.
可构造一阶定常迭代法
x ( 0 ) (初始向量), ( k 1) (k ) x Bx f ( k 0,1, , ),
( 2.3)
其中 B=M-1N=M-1(M-A)=I-M-1A , f=M-1b. 称 B=I-M-1A为迭代法的迭代矩阵,选取M矩阵,就得 到解Ax=b的各种迭代法. 设aii0 (i=1,2,,n),并将A写成三部分
i 1
j i 1
(k ) a x ij j bi (i 1,2,, n).
n
即当aii0时,有
i 1 n 1 ( k 1) (k ) (k ) xi ( aij x j aij x j bi ) ( i 1,2,, n). aii j 1 j i 1
上页
下页
对于给定方程组x=Bx+f,设有唯一解x*,则 x*=Bx*+f . (1.5) 又设x(0)为任取的初始向量, 按下述公式构造向量序列 x(k+1)=Bx(k)+f , k=0,1,2,. (1.6) 其中k表示迭代次数. 定义1 (1)对于给定的方程组x=Bx+f , 用公式(1.6) 逐步代入求近似解的方法称为迭代法(或称为一阶定 常迭代法,这里B与k无关). B称为迭代矩阵.
上页 下页
0 a11 a 21 0 a 22 A a n 1 ,1 a n 1 , 2 0 a nn a n 2 a n , n 1 0 a n1 0 a12 a1,n1 a1n 0 a 2 , n 1 a 2 n 0 a n 1, n 0 D LU.
方程组的精确解是x*=(3,2,1)T. 现将改写为
上页
下页
1 3 x 2 2 x 3 20), x1 8 ( 1 x 3 33), x 2 ( 4 x1 11 1 36). x 3 12 ( 6 x1 3 x 2
或写为x=B0x+f,其中
上页 下页
下面给出雅可比迭代法(2.5)的分量计算公式, 记
x
(k )
( x ,, x ,, x ) ,
(k ) 1 (k ) i (k ) T n
由雅可比迭代法(2.5)有
Dx( k 1) ( L U ) x ( k ) b,
每一个分量写出来为
aii xi( k 1) aij x (jk )
lim x ( k ) x
k
对于任何一个方程组x=Bx+f(由Ax=b变形得到的 等价方程组),由迭代法产生的向量序列x(k)是否一定 逐步逼近方程组的解x*呢?回答是不一定. 请同学们 考虑用迭代法解下述方程组
x1 2 x2 5, x2 3 x1 5.
但 x(k)并不是 所有的都收 敛到解x*!
0 an 2
0 a12 0 U
a1n a2 n 0
上页 下页
6.2.1 雅可比(Jacobi)迭代法 设aii0 (i=1,2,,n),选取M为A的对角元素部分, 即选取M=D(对角阵),A=D-N,由(2.3)式得到解方 程组Ax=b的雅可比(Jacobi)迭代法. 又称简单迭代法.
其中 aii(i)0 (i=1,2,,n)
上页
下页
建立的雅可比迭代格式为
( k 1) 1 (k) (k) (k) ( a12 x2 a13 x3 a1n xn b1 ) x1 a11 x ( k 1) 1 ( a x ( k ) (k) (k) a x a x 2 21 1 23 3 2 n n b2 ) a22 x ( k 1) 1 ( a x ( k ) a (k) xn 1 bn ) n n 1 1 n n 1 ann
(1.4)
简写为
x(k+1)=B0x(k) +f,
其中k表示迭代次数(k=0,1,2,). 迭代到第10次有
x
(10)
(3.000032, 1.999838, 0.999813) ;
T
(10)
0.000187 ( (10) x (10) x ).
上页 下页
从此例看出,由迭代法产生的向量序列x(k)逐步 逼近方程组的精确解是x*=(3,2,1)T. 即有
( k 1) 1 (k) (k) (k) x ( a x a x a x b ) 1 12 2 13 3 1 n n 1 a 11 x ( k 1) 1 ( a x ( k 1) a x ( k ) a x ( k ) b ) 21 1 23 3 2n n 2 2 a 22 x ( k 1) 1 ( a x ( k 1) a x ( k 1) bn ) n n1 1 n n1 n1 a nn
(0) (1) (k ) x1 x1 x1 ( 0 ) (1) (1) (k ) x 2 , x x 2 , , x ( k ) x 2 , (0) (1) (k ) x3 x3 x3
3 20 2 0 8 8 8 4 33 1 B0 11 0 , f 11 . 11 6 3 0 36 12 12 12
(1.3)
上页
下页
我们任取初始值,例如取x(0)=(0, 0, 0)T. 将这些值
上页 下页
或缩写为
i 1 n 1 ( k 1) ( k 1) (k ) xi ( aij x j aij x j bi ) (i 1,2,, n). aii j 1 j i 1
称为高斯—塞德尔(Gauss — Seidel)迭代法.
于是高斯—塞德尔迭代法可写为矩阵形式
( k ) B ( k 1) B k ( 0 ) .
要考察{x(k)}的收敛性,就要研究B在什么条件下 有limε(k)=0 (k→∞),亦即要研究B满足什么条件时有 Bk→0(零向量) (k→∞) .
上页 下页
6.2 基本迭代法
设线性方程组 Ax=b, (2.1) 其中,A=(aij)∈Rn×n为非奇异矩阵,下面研究任何建 立Ax=b的各种迭代法. 将A分裂为 A=M-N. (2.2) 其中,M为可选择的非奇异矩阵,且使Mx=d容易求 解,一般选择A的某种近似,称M为分裂矩阵.
代入(1.3)式右边(若(1.3)式为等式即求得方程组的解, 但一般不满足),得到新的值 x(1)=(x1(1), x2(1), x3(1))T =(3.5, 3, 3)T ,再将x(1)分量代入(1.3)式右边得到 x(2), 反复利用这个计算程序,得到一向量序列和一般的计
算公式(迭代公式)
x (0)
x ( k 1) ( D L) 1Ux ( k ) ( D L) 1 b
上页 下页
即由方程组Ax=b得到的 等 价 方 程 组
1 a12 x2 a1n xn b1 ] x1 a [ 11 1 x2 [ a21 x1 a2 n xn b2 ] a22 1 [ an1 x1 an 2 x2 bn ] xn ann
x ( 0 ) (初始向量), ( k 1) (k ) x Bx f ( k 0,1, , ),
( 2.5)
其中B=I-D-1A=D-1(L+U)=J, f=D-1b. 称J为解Ax=b的 雅可比迭代法的迭代矩阵.
上页
下页
于是雅可比迭代法可写为矩阵形式
x ( k 1 ) D 1 ( L U ) x ( k ) D 1 b
上页 下页
例1 求解方程组
8 x1 3 x2 2 x3 20, 4 x1 11 x2 x3 33, 6 x 3 x 12 x 36. 2 3 1
记为Ax=b,其中
(1.2)
x1 8 3 2 30 A 4 11 1 , x x2 , b 33 . x 6 3 12 36 3
第 6章
• 6.1 引言
解线性方程组的迭代方法
• 6.2 基本迭代法
• 6.3 迭代法的收敛性
• 6.4* 分块迭代法
上页
下页
6.1 引
对线性方程组
言
Ax=b, (1.1) 其中A为非奇异矩阵, 当A为低阶稠密矩阵时, 第5 章讨论的选主元消去法是有效的. 但对于大型稀 疏矩阵方程组(A的阶数n很大,但零元素较多), 利 用迭代法求解是合适的. 本章将介绍迭代法的一些基本理论及雅可比 迭代法,高斯-赛德尔迭代法,超松弛迭代法,而 超松弛迭代法应用很广泛。 下面举简例,以便了解迭代法的思想.
( 2.6)
由(2.6)式可知,雅可比迭代法计算公式简单, 每迭代一次只需计算一次矩阵和向量的乘法且计算 过程中原始矩阵A始终不变.
上页 下页
6.2.2 高斯-赛德尔迭代法
在 Jacobi 迭代中,计算 xi(k+1)(2 i n)时,使用 xj(k+1)代替xj(k) (1 j i-1),即有 建 立 迭 代 格 式
上页
下页
于是,解Ax=b的雅可比迭代法的计算公式为
(0) (0) (0) T x ( x , , x 1 n ) , n ( k 1) (k ) (bi a ij x j ) / a ii , xi j 1 ji ( i 1,2, , n) ( k 0,1, 表示迭代次数).
上页
下页
( k 1) (k ) (k ) x1 ( 3 x2 2 x3 20) / 8, ( k 1) (k ) (k ) x ( 4 x x 2 1 3 33) / 11, ( k 1) (k ) (k ) ( 6 x1 3 x2 36) / 12. x3
其Jacobi迭代矩阵为
0 a21 1 BJ D ( L U ) a22 an1 a nn
a12 a11 0 an 2 ann
a1n a11 a2 n a22 0
上页 下页
即
A=D-L-U
a11 a 21 A a n1 0 a L 21 a n1
a12 a22 an 2
a1n a2 n ann 0
a11 D
a22
ann
(2) 如果limx(k) (k→∞)存在(记为x*), 称此迭代法
收敛, 显然x*就是方程组的解, 否则称此迭代法发散.
上页 下页
由上述讨论,需要研究{x(k)}的收敛性. 引进误 差向量
递推得
( k 1)
x
( k 1)
来自百度文库x ,
由(1.6)减去(1.5)式,得ε(k+1)=Bε(k)(k=0,1,2,),
上页
下页
于是,求解Ax=b转化为求解Mx=Nx+b ,即求解
Ax b 求解 x M 1 Nx M 1b.
可构造一阶定常迭代法
x ( 0 ) (初始向量), ( k 1) (k ) x Bx f ( k 0,1, , ),
( 2.3)
其中 B=M-1N=M-1(M-A)=I-M-1A , f=M-1b. 称 B=I-M-1A为迭代法的迭代矩阵,选取M矩阵,就得 到解Ax=b的各种迭代法. 设aii0 (i=1,2,,n),并将A写成三部分