第八节 雅可比迭代法与高斯—塞德尔迭代法
一 雅可比迭代法
设线性方程组
Ax?b (1) a,a,...,ann均不为零,令
的系数矩阵A可逆且主对角元素1122 并将A分解成
D?diag?a11,a22,...,ann?
A?从而(1)可写成
?A?D??D (2) ?D?A?x?b
Dx?令
x?B1x?f1 ?1?1B?I?DA,f?Db. (3) 1其中1以
B1为迭代矩阵的迭代法(公式)
x?k?1??B1x?k??f1 (4)
称为雅可比(Jacobi)迭代法(公式),用向量的分量来表示,(4)为
???x(k?1)i1?aiiT?bi??aijx(jk)j?1j?in? (5)
i?1,2,...n,k?0,1,2,...?0??0??0??0???x?x,x,...x12n其中
为初始向量.
由此看出,雅可比迭代法公式简单,每迭代一次只需计算一次矩阵和向量的乘法.在电算时需
?k??k?1?要两组存储单元,以存放x及x. 例1 例1 用雅可比迭代法求解下列方程组
?10x1?x2?2x3?7.2???x1?10x2?2x3?8.3??x?x?5x?4.223?1
解 将方程组按雅可比方法写成
?0?x取初始值
?x1?0.1x2?0.2x3?0.72???0.2x3?0.83?x2?0.1x1?x3?0.2x1?0.2x2?0.84??
TT?0???x1?0?,x2,x3?0????0,0,0,?按迭代公式
?k??x1?k?1??0.1x2?0.2x3?k??0.72???k?1??k??0.2x3?k??0.83?x2?0.1x1??k?1??k??k?x?0.2x?0.2x?0.84312??
进行迭代,其计算结果如表1所示
表1
3 k 0 0 0 0 1 0.72 0.83 0.84 2 0.971 1.070 1.150 4 5 1.0951 1.1951 1.2941 6 1.0983 1.1983 1.2980 7 … … … x1?k? ?k?x2 1.057 1.0853 1.1571 1.2482 1.2828 1.1853 x3?k? 二 高斯—塞德尔迭代法
由雅可比迭代公式可知,在迭代的每一步计算过程中是用x?k?的全部分量来计算x?k?1??k?1?的所
x有分量,显然在计算第i个分量ik?1次近似x?k?1??k?1?没有被利
用,从直观上看,最新计算出的分量可能比旧的分量要好些.因此,对这些最新计算出来的第
的分量
x时,已经计算出的最新分量1,...,xi?1?k?1?xj?k?1?加以利用,就得到所谓解方程组的高斯—塞德(Gauss-Seidel)
迭代法.
把矩阵A分解成
A?D?L?U (6)
D?diag?a11,a22,...,ann?,?L,?U分别为A的主对角元除外的下三角和上三角其中
部分,于是,方程组(1)便可以写成 即 其中
?D?L?x?Ux?b
x?B2x?f2
B2??D?L?U,?1f2??D?L?b (7)
?1以
B2为迭代矩阵构成的迭代法(公式)
x?k?1??B2x?k??f2 (8)
称为高斯—塞德尔迭代法(公式),用 量表示的形式为
???x(k?1)ii?1n1(k?1)??bi??aijxj??aijx(jk)j?1j?i?1aii? (9)
i?1,2,?n,?k?1?k?0,1,2,...?k?由此看出,高斯—塞德尔迭代法的一个明显的优点是,在电算时,只需一组存储单元(计算出
xi?k?1?x后i?k?x不再使用,所以用ix冲掉i,以便存放近似解.
例2 例2 用高斯——塞德尔迭代法求解例1.
x解 取初始值
?0???x??,x??,x?????0,0,0,?010203TT,按迭代公式
进行迭代,其计算结果如下表2 表2 0 1 2 k ?k??x1?k?1??0.1x2?0.2x3?k??0.72??k?1??k?1??k?x?0.1x?0.2x?0.83?213?x?k?1??0.2x?k?1??0.2x?k?1??0.8412?3
3 1.09313 1.19572 1.29777 4 5 6 7 x1?k? ?k?x2 0 0 0 0.72 1.04308 1.09913 1.09989 1.09999 1.1 1.19947 1.19993 1.19999 1.2 1.29972 1.29996 1.3 1.3 0.902 1.16719 1.1644 1.28205 x3?k? 从此例看出,高斯—塞德尔迭代法比雅可比迭代法收敛快(达到同样的精度所需迭代次数少),但这个结论,在一定条件下才是对的,甚至有这样的方程组,雅可比方法收敛,而高斯—塞德尔迭代法却是发散的.
三 迭代收敛的充分条件
定理1 在下列任一条件下,雅可比迭代法(5)收敛.
nB1①
??max?iaijaiiaijaii?1;
j?1j?iB1②
1?max?j?1T?n?1;
ni?1j?iI?DA③ 定理2 设
?max?ji?1i?jaijajj?1
B1,B2分别为雅可比迭代矩阵与高斯—塞德尔迭代矩阵,则
B2??B1? (10)
从而,当
B1??max?inaijaii?1
j?1j?i时,高斯—塞德尔迭代法(8)收敛. 证明 由
B1,B2的定义,它们可表示成
B2??D?L?U??I?D?1L?D?1U
?1?1B1?D?1?L?U?
T1,1,...,1?用e表示n维向量e??,则有不等式
B1e?B1?e