第三章 线性方程组的迭代解法
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
其中
v x (0) = ( x1(0) , x2 (0) ,…, xn (0) )
是迭代初值。 是迭代初值。
写成矩阵形式: 写成矩阵形式: 矩阵形式
A=
D
U
v v Ax = b ⇔ ⇔ ⇔
v v (D + L + U )x = b v v v Dx = −( L + U ) x + b v v v −1 −1 x = −D (L + U )x + D b
( ( a 111 ) a 121 ) ... a 1( 1 ) n
A
( ( ( a ij2 ) = a ij1 ) − m i 1 a 1 1j ) (2) b i = b i( 1 ) − m i 1 b1( 1 ) ( i , j = 2 , ..., n )
− 共进行 n ?1 步
(1 ( ( a12) ... a11) x1 b11) n b( 2) ( 2) ( 2) a22 ... a2n x2 2 . . = . ... . . . . . . ( n) (n ann) xn bn
… … …
…
( ( ( ( ( xnk +1) = 1 (−an1 x1k +1) − an 2 x2k +1) − an3 x3k +1) − L − ann−1 xnk +1) + bn ) −1 ann v v ( k +1) v ( k +1) v (k ) −1 −1 写成矩阵形式 矩阵形式: 写成矩阵形式: x = − D ( Lx + Ux ) + D b v (k +1) v (k ) v ⇔ (D + L)x = −U x + b v v ( k +1 ) −1 v ( k ) −1 ⇔ x = − ( D + L ) Ux + ( D + L ) b v Gauss-Seidel B vf v ( k + 1) v(k ) 迭代阵
(k = 0,1,2,L)
计算结果可列表如下
k 0 2 3 4 5 6
( ( ( x ( k ) = ( x1 k ) , x 2k ) , x 3k ) )T (0 0 0) T
1 (0.30000 1.56000 2.68400) T (0.88040 1.94448 2.95387) T (0.98428 1.99224 2.99375) T (0.99782 1.99894 2.99914) T (0.99970 1.99985 2.99988) T (0.99996 1.99998 2.99998) T
§3.3 超松弛迭代法
( k 1) (k ) ri(k+1) = bi − ∑ a ij x j + − ∑ a ij x j j<i j≥i
残余误差
下面令 x = x 速收敛,这就是松弛法 称作松弛 松弛因子 速收敛,这就是松弛法 (或SOR法)。 ω称作松弛因子。 法
( k +1) i (k ) i
T
取初始向量 x 时迭代终止。 时迭代终止。
= (0,0,0) ,要求 max x
|
1≤ i ≤ 3
( k +1) i
−
x
(k ) i
|≤ 10
−3
Gauss- Seidel迭代格式为 迭代格式为: 解: Gauss- Seidel迭代格式为:
( x 1k +1 ) = 0.2 x (2k ) + 0.1 x (3k ) + 0.3 ( x (2k +1 ) = 0.2 x 1k +1 ) + 0.1 x ( k ) + 1.5 3 ( ( x3k +1 ) = 0.2 x 1k +1 ) + 0.4 x (2k +1 ) + 2
1 ( k +1) x1 = ( − a12 x2( k ) − ... − a1n xn ( k ) + b1 ) a11 1 ( k +1) x2 = ( − a21 x1( k ) − ... − a2 n xn ( k ) + b2 ) a22 ... ... ... ... 1 ( k +1) = xn ( − an1 x1( k ) − ... − ann −1 xn−1( k ) + bn ) ann
L
写成迭代法形式
v v ( k +1) v (k ) −1 −1 x = −D ( L + U ) x + D b
v ( k +1) v(k ) v 即 x = Bx + f
−1
v v −1 其中 B = − D ( L + U ), f = D b
B称为 称为Jacobi 迭代阵 称为
高斯-赛德尔 赛德尔(Gauss - Seidel )迭代法 §3.2 高斯 赛德尔 迭代法
ri( k + 1 ) +ω a ii
定理3.3.1 (Kahan 必要条件)设 A 可逆,且 aii ≠ 0,则松 定理 必要条件) 可逆, ,
w 弛法 从任意 x ( 0 ) 出发都收敛 ⇒ 0 < ω < 2 。
证明: 证明:省略
§3.4 迭代法的收敛性
v ( k +1 ) v (k ) v x = Bx + f 的收敛条件
第三章 线性方程组的解法
v v ,有迭代法和直接法 求解 A x = b
先介绍迭代法
v v ,将 思 与解 f (x)=0 的不动点迭代相似 …… v A x = bv等价v v v v ( k +1) = B x( k ) + f 。 形式, 改写为 x = B x + f 形式,建立迭代 x 路 v v x ( 0 )出发,得到序列 { x ( k ) }。 出发, 从初值
( ( ( ( ( x1k +1) = 1 ( −a12 x2k ) − a13 x3k ) − a14 x4k ) − L − a1n xnk ) + b1 ) a11 ( ( ( ( ( x2k +1) = 1 ( −a21 x1k +1) − a23 x3k ) − a24 x4k ) − L − a2n xnk ) + b2 ) a22 ( ( ( ( ( x3k +1) = 1 (−a31 x1k +1) − a32 x2k +1) − a34 x4k ) − L − a3n xnk ) + b3 ) a33
(充分条件) 定理3.4.2 充分条件)若存在一个矩阵范数使得 || B || = q < 1, 定理 则迭代收敛,且有下列误差估计: 迭代收敛,且有下列误差估计: v v (k ) v ( k ) v ( k −1) q || x − x || ① || x * − x || ≤ 1−q
v v (k ) v (1 ) v ( 0 ) qk ② || x * − x || ≤ || x − x || 1−q
x1 = 1 (− a12 x 2 − ... − a1 n x n + b1 ) a11 x 2 = 1 (− a 21 x1 − ... − a 2 n x n + b2 ) a 22 ... ... ... ... x n = 1 (− a n1 x1 − ... − a nn −1 x n −1 + bn ) a nn
v v (k ) v v v v v v ( k +1 ) v ( k +1 ) v = ( Bx + f ) − ( Bx * + f ) = B( x ( k ) − x*) = Be ( k ) e =x − x*
定理3.4.1(迭代法基本定理 迭代法基本定理) 定理 迭代法基本定理
v v v v 设 x = B x + f 存在唯一解,则从任意 x ( 0 ) 出发, 存在唯一解, 出发, v ( k +1) v (k ) v = B x + f 收敛 ⇔ ρ ( B ) < 1 迭代 x
即x
= Bx
+ f.
Gauss-Seidel迭代法求解方程组 例3.2.1 用Gauss-Seidel迭代法求解方程组
10 − 2 − 1 −2 10 −2
(0)
− 1 x 1 3 x − 1 2 = 15 5 x 3 10
雅可比(Jacobi )迭代法 §3.1 雅可比 迭代法
a11x1 +a12x2 +...+a1nxn = b1 a21x1 +a22x2 +...+a2n xn = b2 aii ≠ 0 ... ... ... ... an1x1 +an2 x2 +...+annxn = bn
( 为近似解, 因为 | x (i 6 ) − x (i 5 ) |≤ 10 −3 ( i = 1 ,2 ,3 ), 故 x 6)为近似解,即 x 1 ≈ 0.99996 , x 2 ≈ 1.99998 , x 3 ≈ 2.99998
注:1. 未必Seidel方法一定比Jacobi方法好。 未必Seidel方法一定比Jacobi方法好。 Seidel方法一定比Jacobi方法好 二种方法都存在收敛性问题 收敛性问题。 2. 二种方法都存在收敛性问题。 有例子表明:Gauss-Seidel法收敛时, 有例子表明:Gauss-Seidel法收敛时, 法收敛时 Jacobi法可能不收敛; Jacobi法可能不收敛; 法可能不收敛 而Jacobi法收敛时, Gauss-Seidel法也 Jacobi法收敛时, Gauss-Seidel法也 法收敛时 可能不收敛。 可能不收敛。
(k ) (k ) (k ) 第k步:设 a kk ≠ 0 计算因子 mik = aik / akk ( i = k + 1, ..., n) 步 ,
( ( ( a ijk + 1 ) = a ijk ) − m ik a kjk ) 且计算 ( k + 1 ) ( bi = b i( k ) − m ik b k k ) (1 a11) ( i , j = k + 1, ..., n )
v v 严格对角占优阵, (充分条件) 定理3.4.3 充分条件)若A 为严格对角占优阵 则解 A x = b 定理 的Jacobi 和 Gauss - Seidel 迭代均收敛。 迭代均收敛。
证明:省略。 证明:省略。
§3.5 高斯消去法
或叫高斯消元法,是一个古老的求解线性方程组的直接法。 或叫高斯消元法,是一个古老的求解线性方程组的直接法。 高斯消元法 首先通过消元将A化为上三角阵 化为上三角阵, 思 首先通过消元将 化为上三角阵,再回代求解 。 路
定义3.4.1 设A=(aij)n×n, 如果 定义 ×
| aii | >
j = 1, j ≠ i
∑
n
| aij | ( i = 1, 2,...n),
即主对角线上的元素绝对值大于同行其它元素的 绝对值之和,那么称矩阵A是严格对角占优阵 是严格对角占优阵。 绝对值之和,那么称矩阵 是严格对角占优阵。
=
b 1( 1 ) v . = b = . . (1 ) bn
v 消元 记 A ( 1 ) = A = ( a ( 1 ) ) , b ( 1 ) ij n× n
(1) (1) (1) m 第一步: 第一步:设a11 ≠ 0 ,计算因子 i 1 = ai 1 / a11 ( i = 2, ..., n) 将增广矩阵第 i 行 − mi1 × 第1行,得到 将增广矩阵第
ri( k 1 ),希望通过选取合适的 ω 来加 +ω a ii
+
0<ω<1
低松弛法 Gauss - Seidel 法 (渐次 超松弛法 渐次)超松弛法 渐次
ω=1
1<ω <2
写成矩阵形式: 写成矩阵形式: 矩阵形式
x i( k + 1 ) = x i( k )
v ( k +1 ) v (k ) v ( k +1 ) v (k ) v −1 x = (1 − ω ) x + ω D [− Lx − Ux + b ] v v ( k +1 ) v (k ) −1 −1 x = ( D + ω L) [(1 − ω ) D − ω U ] x + ( D + ω L) ω b v Hω f 松弛迭代阵