逐次超松弛迭代法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
定理 2 说明,若要 SOR 方法收敛,必须选取松弛因子 ,使 (0,2) .但当 (0,2) 时,未必
对任何线性方程组,SOR 方法都收敛.
定理 3 若线性方程组 Ax b 的系数矩阵 A 是对称正定的,则 0 2 当时,SOR 方法收敛.
(3.6)
det(T ) det((I L)1 ) det((1 )I U ) det((1 )I U ) (1 )n
7
从 (T ) 1 而,迭代矩阵了-的所有特征值之积等于 (1 )n .因此有 (T ) 1
据定理 1,若 SOR 方法收敛,则 (T ) 1,因此 1 1.由于。取实数,故有 0 2
§3 逐次超松弛迭代法(SOR方法)
By alex
1
一般说来,Jacobi 迭代法收敛太慢,在实践中很少使用.在 Jacobi 迭代法收敛很慢的情 况下,Gauss-Seidel 迭代法也并不明显快一些.因此,欲对 Gauss-Seidel 迭代法作简单的修 改,以提高其收敛速度.
假设方程组 Ax b 的系数矩阵 A aij nn , aii 0(i 1, , n),b b1, ,bn T .我们用下面的迭代格式来建
对 i 1,2, , n
x0i xi
step5 输出(‘Maximun number of iterations exceeded,);
停机.
6
3.2 SOR方法的收敛性 现在,我们来讨论逐次超松弛迭代法的收敛性问题.
定理 1 设方程组 Ax b 的系数矩阵 A 的主对角元素 aij 0,i 1, , n ,则 SOR 方法
图表6.2
5
从表6.2得到
x6 x 5.56 104 算法6.3 应用SOR方法解方程组 Ax b
输人 方程组的阶数 n ; A 的元素 aij (i, j 1, , n) ;b 的分量 bi (i 1, , n) ;初始向量 x0 的分量
x0i (i 1, , n) ;参数 ;容限TOL;最大迭代次数 m
立解方程组 Ax b 的遥次超松弛迭代法(SOR 方法)
~xi(k)
1 aii
(bi
i 1
aij
x
(k j
)
j 1
n
a x (k 1) ij j
j i1
xi(k )
x (k 1) i
(~xi(k )
x (k 1) i
)
(3.1)
i 1,2, , n
这里,引入一个中间量
~xi(k ) 和一个加速收敛的参数
x1(k )
1 (4 5
x (k 1) 2
x (k 1) 3
x4(k 1) )
x2(k )
1 10
(12
x1(k
)
x (k 1) 3
x (k 1) 4
)
x3(k )
1 (8 5
x1(k )
x2(k )
x4(k 1) )
x4(k )
1 (34 10
x1(k )
x2(k )
x3(k ) )
k 1,2,
其中
Tw (I L)1 ((1 )I U ) (3.5)
它是 SOR 方法的迭代矩阵.特别,若取 1,则 T1 (I L)1U 是 Gauss-Seidel 迭代法的
迭代矩阵.
若将矩阵 A 分裂成
A 1 (D DL) 1 ((1 )D DU ), 0
按§1 所述的建立相容迭代法的方法,立即可得 SOR 方法.因此,SOR 方法与方程组 Ax b 是完
4
取初始向量 x0 0,0,0,0T ,迭代六次得结果见表 6.1.
从表 6.1 得到 x6 x 1.022103
图表6.1
应用 SOR 方法(取 O=1.2)的迭代公式为
x1(k )
0.2x1(k 1)
0.24
x
(k 2
1)
0.24 x3(k 1)
0.24 x4(k 1)
0.96
x2(k ) 0.12 x1(k ) 0.2x2(k1) 0.12 x3(k1) 0.12 x4(k1) 1.44
(限于实数),称。为松弛因子
x (k ) i
可
以看作是
x (k 1) i
和 ~xi(k )
的加权平均.当
1时(3.1)就是
Gauss-Seidel
迭代法.
1时,
(3.1)称为逐次超松弛迭代法; 1时,(3.1)称为逐次低松弛迭代法.通常,统称为逐次超
松弛迭代法,或简称为 SOR 迭代法.
2
我们把(3.1)式中的中间 ~xi(k) 消去,则有
输出 近似解 x1, x2 , xn 或迭代次数超过 m 的信息.
step 1 对 k 1, , n 做 step2—4.
step 2 对 i 1,2, , n
step 3 step 4
i 1
n
(bi aij x j aij xoj
xi (1 )x0i
j 1
j i 1
若 x x0 TOL ,则输出 (x1, , xn ) ;停机.
收敛的充分必要条件为
(T ) 1 其中 T 是 SOR 方法的迭代矩阵.
定理 2 设方程组 Ax b 的系数矩阵 A 的主对角元素 aij 0,i 1, , n ,则 SOR 方法 的迭代矩阵了。的谱半径大于等于 1 ,即
(T ) 1
且 SOR 方法收敛的必要条件是
0 2
证明 由(3.5)式,有
x3(k )
0.24 x1(k )
0.24 x2(k )
0.2x3(k 1)
0.24
xΒιβλιοθήκη Baidu
(k 4
1)
1.92
x4(k ) 0.12 x1(k ) 0.12 x2(k ) 0.12 x3(k ) 0.2x4(k1) 4.08
k 1,2
取初始得量 x0 0,0,0,0T ,迭代六次得结果见表 6.2.
~xi(k)
aii
(bi
i 1
aij
x
(k j
)
j 1
n
aij
x
(k j
1)
)
(1
)
xi(
k
1)
j i1
i 1,2, , n, k 1,2
上式的矩阵表示形式是
(3.2)
或者
xk (Lxk Ux k1 D 1b) (1 )xk1 (3.3)
xk T xk1 (I L)1 D 1b (3.4)
全相容的.
3
例1 方程组
5x1 x2 x3 x4 4
x
10x2 x3 x1 x2 5x3
x4 x4
12 8
x1 x2 x3 10x4 34
有唯一解 x 1,2,3,4.我们应用 Gauss-Seidel 迭代法和 SOR 方法(取 1,2 来解这个方程
组.Gauss—Seidel 迭代公式为
对任何线性方程组,SOR 方法都收敛.
定理 3 若线性方程组 Ax b 的系数矩阵 A 是对称正定的,则 0 2 当时,SOR 方法收敛.
(3.6)
det(T ) det((I L)1 ) det((1 )I U ) det((1 )I U ) (1 )n
7
从 (T ) 1 而,迭代矩阵了-的所有特征值之积等于 (1 )n .因此有 (T ) 1
据定理 1,若 SOR 方法收敛,则 (T ) 1,因此 1 1.由于。取实数,故有 0 2
§3 逐次超松弛迭代法(SOR方法)
By alex
1
一般说来,Jacobi 迭代法收敛太慢,在实践中很少使用.在 Jacobi 迭代法收敛很慢的情 况下,Gauss-Seidel 迭代法也并不明显快一些.因此,欲对 Gauss-Seidel 迭代法作简单的修 改,以提高其收敛速度.
假设方程组 Ax b 的系数矩阵 A aij nn , aii 0(i 1, , n),b b1, ,bn T .我们用下面的迭代格式来建
对 i 1,2, , n
x0i xi
step5 输出(‘Maximun number of iterations exceeded,);
停机.
6
3.2 SOR方法的收敛性 现在,我们来讨论逐次超松弛迭代法的收敛性问题.
定理 1 设方程组 Ax b 的系数矩阵 A 的主对角元素 aij 0,i 1, , n ,则 SOR 方法
图表6.2
5
从表6.2得到
x6 x 5.56 104 算法6.3 应用SOR方法解方程组 Ax b
输人 方程组的阶数 n ; A 的元素 aij (i, j 1, , n) ;b 的分量 bi (i 1, , n) ;初始向量 x0 的分量
x0i (i 1, , n) ;参数 ;容限TOL;最大迭代次数 m
立解方程组 Ax b 的遥次超松弛迭代法(SOR 方法)
~xi(k)
1 aii
(bi
i 1
aij
x
(k j
)
j 1
n
a x (k 1) ij j
j i1
xi(k )
x (k 1) i
(~xi(k )
x (k 1) i
)
(3.1)
i 1,2, , n
这里,引入一个中间量
~xi(k ) 和一个加速收敛的参数
x1(k )
1 (4 5
x (k 1) 2
x (k 1) 3
x4(k 1) )
x2(k )
1 10
(12
x1(k
)
x (k 1) 3
x (k 1) 4
)
x3(k )
1 (8 5
x1(k )
x2(k )
x4(k 1) )
x4(k )
1 (34 10
x1(k )
x2(k )
x3(k ) )
k 1,2,
其中
Tw (I L)1 ((1 )I U ) (3.5)
它是 SOR 方法的迭代矩阵.特别,若取 1,则 T1 (I L)1U 是 Gauss-Seidel 迭代法的
迭代矩阵.
若将矩阵 A 分裂成
A 1 (D DL) 1 ((1 )D DU ), 0
按§1 所述的建立相容迭代法的方法,立即可得 SOR 方法.因此,SOR 方法与方程组 Ax b 是完
4
取初始向量 x0 0,0,0,0T ,迭代六次得结果见表 6.1.
从表 6.1 得到 x6 x 1.022103
图表6.1
应用 SOR 方法(取 O=1.2)的迭代公式为
x1(k )
0.2x1(k 1)
0.24
x
(k 2
1)
0.24 x3(k 1)
0.24 x4(k 1)
0.96
x2(k ) 0.12 x1(k ) 0.2x2(k1) 0.12 x3(k1) 0.12 x4(k1) 1.44
(限于实数),称。为松弛因子
x (k ) i
可
以看作是
x (k 1) i
和 ~xi(k )
的加权平均.当
1时(3.1)就是
Gauss-Seidel
迭代法.
1时,
(3.1)称为逐次超松弛迭代法; 1时,(3.1)称为逐次低松弛迭代法.通常,统称为逐次超
松弛迭代法,或简称为 SOR 迭代法.
2
我们把(3.1)式中的中间 ~xi(k) 消去,则有
输出 近似解 x1, x2 , xn 或迭代次数超过 m 的信息.
step 1 对 k 1, , n 做 step2—4.
step 2 对 i 1,2, , n
step 3 step 4
i 1
n
(bi aij x j aij xoj
xi (1 )x0i
j 1
j i 1
若 x x0 TOL ,则输出 (x1, , xn ) ;停机.
收敛的充分必要条件为
(T ) 1 其中 T 是 SOR 方法的迭代矩阵.
定理 2 设方程组 Ax b 的系数矩阵 A 的主对角元素 aij 0,i 1, , n ,则 SOR 方法 的迭代矩阵了。的谱半径大于等于 1 ,即
(T ) 1
且 SOR 方法收敛的必要条件是
0 2
证明 由(3.5)式,有
x3(k )
0.24 x1(k )
0.24 x2(k )
0.2x3(k 1)
0.24
xΒιβλιοθήκη Baidu
(k 4
1)
1.92
x4(k ) 0.12 x1(k ) 0.12 x2(k ) 0.12 x3(k ) 0.2x4(k1) 4.08
k 1,2
取初始得量 x0 0,0,0,0T ,迭代六次得结果见表 6.2.
~xi(k)
aii
(bi
i 1
aij
x
(k j
)
j 1
n
aij
x
(k j
1)
)
(1
)
xi(
k
1)
j i1
i 1,2, , n, k 1,2
上式的矩阵表示形式是
(3.2)
或者
xk (Lxk Ux k1 D 1b) (1 )xk1 (3.3)
xk T xk1 (I L)1 D 1b (3.4)
全相容的.
3
例1 方程组
5x1 x2 x3 x4 4
x
10x2 x3 x1 x2 5x3
x4 x4
12 8
x1 x2 x3 10x4 34
有唯一解 x 1,2,3,4.我们应用 Gauss-Seidel 迭代法和 SOR 方法(取 1,2 来解这个方程
组.Gauss—Seidel 迭代公式为