计算方法--第3章逐次逼近(线性方程组的迭代解法)
第三章 线性方程组的迭代解法
其中
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 ) 迭代阵
简述逐次逼近法的工作原理
简述逐次逼近法的工作原理
逐次逼近法是一种数值计算方法,用于求解近似解的近似值。
其主要工作原理如下:
1. 初始化:选择一个初始值作为近似解的初始近似值。
2. 迭代过程:根据某种规则进行迭代,每次迭代都会产生一个较接近真实解的近似值。
3. 收敛判断:判断近似解是否足够接近真实解。
如果接近程度满足预定的收敛准则,则输出近似解;否则返回第2步进行下一次迭代。
4. 输出结果:输出满足收敛准则的近似解作为最终结果。
逐次逼近法的核心思想是不断迭代,通过每一次迭代对近似解进行修正,逐渐接近真实解。
在迭代过程中,常用的方法有不动点迭代法、Newton-Raphson迭代法等等。
这些方法在每一步迭代中通过一定的数学计算方式来更新近似解,并不断逼近真实解。
逐次逼近法的优点是易于实现和理解,适用于一些求解复杂方程或函数的数值解问题。
然而,它的收敛速度可能很慢,对于某些问题可能无法得到满意的解。
因此,在应用中需要根据具体问题选择合适的迭代方法,以提高计算效率和准确性。
计算方法3_线性方程组迭代解法
计算方法3_线性方程组迭代解法线性方程组的迭代解法是解决线性方程组的一种常见方法,常用于大规模的线性方程组求解。
该方法通过不断迭代更新解的近似值,直到满足一定的收敛准则为止。
线性方程组的迭代解法有很多种,其中最经典的是雅可比迭代法、高斯-赛德尔迭代法和超松弛迭代法。
本文将分别介绍这三种迭代解法及其计算方法。
雅可比迭代法是一种比较简单的线性方程组迭代解法,它的基本思想是先将线性方程组转化为对角占优的形式,然后通过迭代求解逐渐接近精确解。
雅可比迭代法的迭代公式为:其中,x^(k+1)是第k+1次迭代的近似解,n是未知数的个数,a_ij 是系数矩阵A的元素,f_i是方程组的右端向量的元素。
雅可比迭代法的计算步骤如下:1.将线性方程组转化为对角占优的形式,即保证矩阵A的对角元素绝对值大于其它元素的绝对值。
2.初始化向量x^(0),设定迭代终止准则。
3.根据雅可比迭代公式,计算x^(k+1)。
4.判断迭代终止准则是否满足,如果满足,则停止迭代,返回近似解x^(k+1);否则,继续进行下一次迭代。
高斯-赛德尔迭代法是雅可比迭代法的改进方法,它的基本思想是在每次迭代计算x^(k+1)时,利用已经计算出的近似解作为x的一部分。
高斯-赛德尔迭代法的迭代公式为:其中,x^(k+1)_i是第k+1次迭代的近似解中第i个未知数的值,x^(k)_i是第k次迭代的近似解中第i个未知数的值。
高斯-赛德尔迭代法的计算步骤如下:1.将线性方程组转化为对角占优的形式。
2.初始化向量x^(0),设定迭代终止准则。
3.根据高斯-赛德尔迭代公式,计算x^(k+1)。
4.判断迭代终止准则是否满足,如果满足,则停止迭代,返回近似解x^(k+1);否则,继续进行下一次迭代。
超松弛迭代法是对高斯-赛德尔迭代法的一种改进方法,它引入了松弛因子ω,通过调整参数ω的值,可以加快迭代的收敛速度。
超松弛迭代法的迭代公式为:其中,0<ω<2,x^(k+1)_i是第k+1次迭代的近似解中第i个未知数的值,x^(k)_i是第k次迭代的近似解中第i个未知数的值。
第三章 解线性方程组的迭代法
(3 .4 )
, k 1, 2 , 3 ,
式(3.4)称为Gauss-Seidel迭代法,简称为G-S迭代法.
G-S迭代法也可记为
xi
( k 1)
1 a ii
( b i a ij x
j 1
i 1
( k 1)
j
a ij x
j i 1
n
(k )
j
)
, i 1, 2 , n , k 0 ,1, 2 ,
则有
A=D-L-U
于是线性方程组 Ax=b 可写成 (D-L-U)x=b 等价于 Dx=(L+U)x+b 或 x=D-1(L+U)x+D-1b
由此建立J迭代法迭代公式
x(k+1)=D-1(L+U)x(k)+D-1b 或写成
x(k+1)=Bx(k)+g 其中
1 B D (L U ) 0 a 21 a 22 a n1 a nn a 12 a 11 0 an2 a nn a1n a 11 a2n a 22 0
可见 ,J迭代法的迭代矩阵为
B 0 a 21 a 22 a n1 a nn
bn a nn )
T
a 12 a 11 0 a n2 a nn
a 1n a 11 a 2n a 22 0
若记
从而得迭代公式
a 13 ( k ) a 1n ( k ) a 12 ( k ) b1 ( k 1) x x2 x3 xn 1 a 11 a 11 a 11 a 11 a 23 ( k ) a 2n (k ) a 21 ( k ) b2 ( k 1) x1 x3 xn x 2 a 22 a 22 a 22 a 22 a n1 ( k ) a n2 (k ) a nn 1 ( k ) bn ( k 1) x1 x2 x n 1 x n a nn a nn a nn a nn
数值计算方法-第3章--线性方程组的解法PPT课件
个顺序主子式
a a (1)
(1)
11
12
Dk
a(1) 21
a(1) 22
a(1) 1k
a(1) 2k
0
(k 1, 2,..., n 1).
a a (1)
(1)
k1
k2
a(1) kk
.
13
顺序Gauss消去法计算过程中的 akk(k) 称为主元素,在 第k步消元时要用它作除数,则可能会出现以下几种情况
.
是原方程组 Ax=b 的解向量。
27
对于
Ly =b
1
由
l21
1
l31
l32 1
y1 b1
y2
b2
y3
b3
ln1 ln2 lnn1 1 yn bn
.
解得
y1 yk
b1 bk
k 1 i 1
lki
yi
,
k 2,3,, n
28
对于 Ux =y
u11 u12 u1n x1 y1
2x3 6
⑤
x1 6 (x2 x3 ) 1
x2 x3 5 / 4 2
x3 (6) / (2) 3
用x3, x2的值求x1 把x3的值代入②求x2
.
8
从下向上逐步求解
对应的增广矩阵的变化
1 1 1 6 1 1 1 6
( A | b) 0
4
1 5 0
4
1
5
2 2 1 1 0 4 1 11
0.8334
5.910
12.10
0.0120 0.0100 0.1670 0.6781
3200
1200
4.200 981.0
大连理工大学《矩阵与数值分析》学习指导与课后参考答案第三章、逐次逼近法
第三章 逐次逼近法1.1内容提要1、一元迭代法x n+1=φ(x n )收敛条件为:1)映内性x ∈[a,b],φ(x) ∈[a,b] 2)压缩性∣φ(x) -φ(y)∣≤L ∣x-y ∣其中L <1,此时φ为压缩算子,在不断的迭代中,就可以得到最终的不动点集。
由微分中值定理,如果∣φ’∣≤L <1,显然它一定满足压缩性条件。
2、多元迭代法x n+1=φ(x n )收敛条件为:1)映内性x n ∈Ω,φ(x n ) ∈Ω 2)压缩性ρ(▽φ)<1,其中▽φ为x n 处的梯度矩阵,此时φ为压缩算子,在不断的迭代中,就可以得到最终的不动点集。
3、当φ(x )= Bx+f 时,收敛条件为,ρ(B )<1,此时x n+1= Bx n +f ,在不断的迭代中,就可以得到线性方程组的解。
4、线性方程组的迭代解法,先作矩阵变换 U L D A --=Jacobi 迭代公式的矩阵形式 f Bx b D x U L D x n n n +=++=--+111)(Gauss-Seidel 迭代公式的矩阵形式 f Bx b L D Ux L D x n n n +=-+-=--+111)()(超松弛迭代法公式的矩阵形式f Bx b L D x U D L D x k k k +=-++--=--+ωωωωω111)(])1[()(三种迭代方法当1)(<B ρ时都收敛。
5、线性方程组的迭代解法,如果A 严格对角占优,则Jacob 法和Gauss-Seidel 法都收敛。
6、线性方程组的迭代解法,如果A 不可约对角占优,则Gauss-Seidel 法收敛。
7、Newton 迭代法,单根为二阶收敛 2211'''21lim)(2)(lim---∞→+∞→--=-==--k k k k k k k k x x x x f f c x x ξξαα8、Newton 法迭代时,遇到重根,迭代变成线性收敛,如果知道重数m , )()('1k k k k x f x f m x x -=+仍为二阶收敛 9、弦割法)()())((111--+---=k k k k k k k x f x f x x x f x x 的收敛阶为1.618,分半法的收敛速度为(b-a )/2n-110、Aitken 加速公式11211112)(),(),(+----+-+--+---+---===k k k k k k k k k k k x x x x x x x x x x x ϕϕ1.2 典型例题分析1、证明如果A 严格对角占优,则Jacob 法和Gauss-Seidel 法都收敛。
矩阵 逐次逼近法
第三章 逐次逼近法1.1内容提要1、一元迭代法x n+1=φ(x n )收敛条件为:1)映内性x ∈[a,b],φ(x) ∈[a,b] 2)压缩性∣φ(x) -φ(y)∣≤L ∣x-y ∣其中L <1,此时φ为压缩算子,在不断的迭代中,就可以得到最终的不动点集。
由微分中值定理,如果∣φ’∣≤L <1,显然它一定满足压缩性条件。
2、多元迭代法x n+1=φ(x n )收敛条件为:1)映内性x n ∈Ω,φ(x n ) ∈Ω 2)压缩性ρ(▽φ)<1,其中▽φ为x n 处的梯度矩阵,此时φ为压缩算子,在不断的迭代中,就可以得到最终的不动点集。
3、当φ(x )= Bx+f 时,收敛条件为,ρ(B )<1,此时x n+1= Bx n +f ,在不断的迭代中,就可以得到线性方程组的解。
4、线性方程组的迭代解法,先作矩阵变换 U L D A --= Jacobi 迭代公式的矩阵形式 f Bxb Dx U L Dx nn n +=++=--+111)(Gauss-Seidel 迭代公式的矩阵形式 f Bx b L D Ux L D x n n n +=-+-=--+111)()( 超松弛迭代法公式的矩阵形式f Bxb L D x U D L D xkk k +=-++--=--+ωωωωω111)(])1[()(三种迭代方法当1)(<B ρ时都收敛。
5、线性方程组的迭代解法,如果A 严格对角占优,则Jacob 法和Gauss-Seidel 法都收敛。
6、线性方程组的迭代解法,如果A 不可约对角占优,则Gauss-Seidel 法收敛。
7、Newton 迭代法,单根为二阶收敛 2211'''21lim)(2)(lim---∞→+∞→--=-==--k k k k k k k k x x x x f f c x x ξξαα8、Newton 法迭代时,遇到重根,迭代变成线性收敛,如果知道重数m , )()('1k k k k x f x f m x x -=+仍为二阶收敛 9、弦割法)()())((111--+---=k k k k k k k x f x f x x x f x x 的收敛阶为1.618,分半法的收敛速度为(b-a )/2n-110、Aitken 加速公式11211112)(),(),(+----+-+--+---+---===k k k k k k k k k k k x x x x x x x x x x x ϕϕ1.2 典型例题分析1、证明如果A 严格对角占优,则Jacob 法和Gauss-Seidel 法都收敛。
第三章 线性方程组的迭代解法
定理3.2 若 ||B|| =q<1,则由迭代格式x(k+1)=Bx(k)+f 和任意初始 向量x(0)产生的迭代序列x(k)收敛于准确解x*. 本定理是迭代法收敛的充分条件,它只能判别收敛的情况,当 ||B|| ≥1时,不能断定迭代不收敛.但由于||B||,特别是||B|| 1和||B|| ∞ 的计算比较容易,也不失为一种判别收敛的方法。 同时当||B|| <1时可以用来估计迭代的次数,或用来设置退出 计算的条件. 这时有定理3.3和定理3.4 定理3.3 若||B|| =q<1,则迭代格式x(k+1) =Bx(k)+f产生的向量序 k 列 {x(k)}中 q (k ) * (0) (1 )
3.2 几种常用的迭代法公式 3.2.1 Jacobi迭代法
先看一个算例:
10 x 1 2 x 2 x 3 3 例1 2 x 10 x x 15 1 2 3 x 2 x 5 x 10 1 2 3
从以上三个方程中分别解出x1, x2, x3
|| x x || 1 q || x x || ( 3 . 17 )
利用此定理可以在只计算出x(1)时,就估计迭代次数k,但估 计偏保守,次数偏大. 称为事前误差估计. 13 结束
x2
x3
0
0
可见它对这一方程组比Jacobi迭代法收敛快一些。
Gauss-Seidel迭代法的公式如下:
xi
( k 1)
bi a ii
1 i 1 a ij x (j k 1 ) a ii j 1
n
a ij x j
(k )
j i 1
i 1, 2 , n k 0 ,1, 2 ,
3线性方程组的迭代解法
三、逐次超松弛法(SOR方法)
逐次超松弛法(Successive Over Relaxation Method)可 看成是Gauss-Seidel方法的加速,Seidel迭代法是SOR方法的 特例。将Seidel方法的迭代公式
改写为
x(k1) i
1 aii
(bi
i 1
a x(k 1) ij j
k
0
1
2
3
4
5
6
x1
0
2.5000 2.9773 3.0098 2.9998 2.9999 3.0000
x2
0
2.0909 2.0289 1.9968 1.9997 2.0001 2.0000
x3
0
1.2273 1.0041 0.9959 1.0002 1.0001 1.0000
可见Gauss-Seidel迭代法比Jacobi迭代法收敛要快一些。
x(k 1) BJ x(k ) f J
0
其中
a21
a22
BJ D1(L U )
an1 ann
a12 a11 0
an2 ann
a13 a11
a23 a22
7
a1n1 a11
a2n1 a22
ann1 ann
a1n
a11
a2 n
a22 , fJ D1b
0
二、 Gauss-Seidel 迭代法
x(k ) i
xi(k )
x(k ) i
1 aii
bi
i 1
a x(k 1) ij j
j 1
n
aij
x(jk
)
j i
为加快收敛,在增量 xi(k ) 前加一个因子
计算方法(三)逐次逼近法
x
( k 1) i
n 1 (k ) bi aij x j aii j 1 j i
(i 1, 2, , n)(3-5)
( k 1) 1 (k ) (k ) x ( 20 3 x 2 x 2 3 ) 1 8 x18 3 x 2 2 x3 20 1 11x 2 ( kx (k 4 x 1) ) 3 33 (k ) 1 x ( 33 4 x x 2 1 3 ) 11 2 x1 x 2 4 x3 12 ( k 1) 1 (k ) (k ) ) x3 4 (12 2 x1 x2
x
( 5) 1
2.999843 ,
x
( 5) 2
(5) x 。 2.000072, 3 1.000061
终止条件为: x ( k 1) x ( k ) 10 5
将以上迭代格式写成分量形式,即
x
( k 1) i
i 1 n 1 bi aij x (jk 1) aij x (jk ) aii j 1 j i 1
0 0 a21 0 U 0 a j1 a jj 1 a n1 anj 1 ann 1 0
L
0 a12 a1 j a1n 0 a j 1 j a j 1n 0 a n 1n 0 0
x
x
(10 ) 2
1.999838
0.999881
T
x
( 2) 3
1 20 12 2 3 1 4 8
计算方法逐次逼近法
计算方法逐次逼近法逐次逼近法是一种用来求解方程近似解的方法。
它基于一个简单的思想,即通过不断逼近的过程,逐步接近方程的解。
假设我们要解一个方程f(x)=0,而我们对方程的解一无所知。
我们可以通过选定一个初始值x0,并使用逐次逼近法进行迭代计算,直到找到一个满足精度要求的近似解。
具体的迭代公式可以分为如下两种形式:1.不动点迭代法:设x1为方程f(x)=0的近似解,那么我们可以将等式两边进行一定的变形,得到x1与x0之间的关系式:x1=g(x0)其中g(x0)称为迭代函数。
我们通过反复使用这个关系式,将x0代入g(x0),得到x1的近似值。
然后再将x1代入g(x0)得到x2的近似值,以此类推。
在这种方法中,重点在于找到一个合适的迭代函数g(x),使得迭代过程在不断逼近方程的解。
2.牛顿迭代法:牛顿迭代法是逐次逼近法的一种特殊形式,也是最为常用的一种形式。
它的迭代公式为:x1=x0-f(x0)/f'(x0)其中f'(x0)表示函数f(x)在x0处的导数。
这个迭代公式的思路是,通过不断计算函数f(x)与其斜率f'(x)的交点,来逼近方程的解。
牛顿迭代法相较于不动点迭代法有一个显著的优势,就是能够更快地逼近方程的解。
然而,也有一些限制,比如需要求解导数,有时可能会出现迭代过程不收敛的情况。
无论是不动点迭代法还是牛顿迭代法,它们的迭代过程都会不断逼近方程的解,直到满足一定的精度要求。
需要注意的是,逐次逼近法只是一种数值近似解法,并不一定能够找到方程的精确解。
因此,在使用逐次逼近法时,我们需要根据具体问题来设定精度要求,以及选择合适的迭代函数。
逐次逼近法在科学计算中有着广泛的应用。
它能够用于求解非线性方程、求解线性代数方程组、求解微分方程等。
通过不断迭代,我们可以获得方程的近似解,进而解决实际的问题。
总结一下,逐次逼近法是一种近似解方程的方法,通过不断迭代的过程,逐步接近方程的解。
它包括了不动点迭代法和牛顿迭代法,它们都有各自的特点和应用场景。
第三章逐次逼近法
第三章 逐次逼近法1.11、一元迭代法x n+1=φ(x n )收敛条件为:1)映内性x ∈[a,b],φ(x) ∈[a,b] 2)压缩性∣φ(x) -φ(y)∣≤L ∣x-y ∣其中L <1,此时φ为压缩算子,在不断的迭代中,就可以得到最终的不动点集。
由微分中值定理,如果∣φ’∣≤L <1,显然它一定满足压缩性条件。
2、多元迭代法x n+1=φ(x n )收敛条件为:1)映内性x n ∈Ω,φ(x n ) ∈Ω 2)压缩性ρ(▽φ)<1,其中▽φ为x n 处的梯度矩阵,此时φ为压缩算子,在不断的迭代中,就可以得到最终的不动点集。
3、当φ(x )= Bx+f 时,收敛条件为,ρ(B )<1,此时x n+1= Bx n +f ,在不断的迭代中,就可以得到线性方程组的解。
4、线性方程组的迭代解法,先作矩阵变换 U L D A --= Jacobi 迭代公式的矩阵形式 f Bx b D x U L D x n n n +=++=--+111)(Gauss-Seidel 迭代公式的矩阵形式 f Bx b L D Ux L D x n n n +=-+-=--+111)()( 超松弛迭代法公式的矩阵形式f Bx b L D x U D L D x k k k +=-++--=--+ωωωωω111)(])1[()(三种迭代方法当1)(<B ρ时都收敛。
5、线性方程组的迭代解法,如果A 严格对角占优,则Jacob 法和Gauss-Seidel 法都收敛。
6、线性方程组的迭代解法,如果A 不可约对角占优,则Gauss-Seidel 法收敛。
7、Newton 迭代法,单根为二阶收敛 2211'''21lim)(2)(lim---∞→+∞→--=-==--k k k k k k k k x x x x f f c x x ξξαα8、Newton 法迭代时,遇到重根,迭代变成线性收敛,如果知道重数m , )()('1k k k k x f x f m x x -=+仍为二阶收敛 9、弦割法)()())((111--+---=k k k k k k k x f x f x x x f x x 的收敛阶为1.618,分半法的收敛速度为(b-a )/2n-110、Aitken 加速公式11211112)(),(),(+----+-+--+---+---===k k k k k k k k k k k x x x x x x x x x x x ϕϕ1.2 典型例题分析1、证明如果A 严格对角占优,则Jacob 法和Gauss-Seidel 法都收敛。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝
b1 ⎞ ⎟ a1 1 ⎟ b2 ⎟ ⎟ a 22 ⎟ M ⎟ ⎟ bn ⎟ ⎟ a nn ⎠
=
注意:
⎛ ⎜ 0 ⎜ ⎜ a21 ⎜− a ⎜ 22 ⎜ M ⎜ − an1 ⎜ a ⎝ nn
B
L L O L
D −1
a ⎞ − 1n ⎟ ann ⎟ a ⎟ − 2n ⎟ a22 ⎟ M ⎟ 0 ⎟ ⎟ ⎠ ⎛ b1 ⎞ ⎜ ⎟ a11 ⎟ ⎜ ⎜b ⎟ ⎜ 2 ⎟ ⎜ a22 ⎟ ⎜ M ⎟ ⎜ ⎟ ⎜ bn ⎟ ⎜ ⎟ ann ⎠ ⎝
迭代法(3-5)或(3-6)称为Jacobi迭代法。
例1 将线性方程组
⎧8 x1 − 3 x2 + 2 x3 = 20 ⇒ ⎪ ⎨4 x1 + 11x2 − x3 = 33 ⇒ ⎪2 x + x + 4 x = 12 ⇒ 3 ⎩ 1 2
解:写成Jacobi迭代格式(3-5):
1 (k ) (k ) x1 = (3 x2 − 2 x3 + 20) 8 ( k +1) 1 (k ) (k ) x2 = (− 4 x1 + x3 + 33) 11 ( k +1) 1 (k ) (k ) x3 = (− 2 x1 − x2 + 12) 4
x
( k +1) 3
−x
(k ) 2
)
x
( k +1) 3
(0) T 取初始向量 x = (0,0,0) ,得到
x1(1) = 2.5
( x21) = 3 − 0.363636 × 2.5 ≈ 2.0909091
( x31) = 3 − 0.5 × 2.5 − 0.25 × 2.0909091 ≈ 1.768939
第3章
逐次逼近法
求解线性方程组的迭代解法
本章主要介绍求解线性方程组、非线性方程 之 迭代解法
3.1 解线性方程组的迭代法
前面已经介绍了用直接法求解线性方程组:
Ax = b
n× n n n 其中 A ∈ R , b ∈ R , x ∈ R
(3-1)
在用直接法求解的过程中,我们发现系数矩阵A在不断 变动,如果A的阶数较大时,占用计算机的内存就很大,而 且程序较复杂,对程序设计的技巧要求也较高。 因此,我们希望找到一种在求解过程中系数矩阵不变, 且程序设计又不复杂的求解方法,这种方法就是迭代法。
20 = , 8
x
(1) 2
33 = = 3, 11
x
(1) 3
12 = =3; 4
( 2) 1
1 = (20 + 3 × 3 − 2 × 3) ≈ 2.875 …, x1(10 ) ≈ 3.00032 8
20 1⎛ ⎞ = ⎜ 33 + 4 × + 3 ⎟ ≈ 2.3636 …, 8 11 ⎝ ⎠
k = 0, 1, 2, L ;
(3-9)
i = 1, 2, L, n
称为Gauss-Seidel迭代法。
x
( k +1) i
⎛ ⎞ n 1⎜ (k ) ⎟ = ⎜ bi − ∑ aij x j ⎟ (i = 1, 2, L, n) Jacobi迭代法 aii ⎜ j =1 ⎟ j ≠i ⎝ ⎠
若记
也可写成
lim x ( k ) = x *
k →∞
即
lim xi( k ) = xi* , i = 1, 2, L , n k →∞
称该迭代法收敛,否则称迭代法发散。
由于
lim x
k→∞
( k +1)
= B lim x ( k ) + f
k →∞
x * ,满足 所以收敛迭代法的极限向量
x = Bx + f
Ax = b ⇔ ⇒
如果已导出(3-1)的等价方程组(3-2)后,计算(3-1) 的解就变成求序列的极限。 取初始向量
x
(0)
代入 x = Bx + f 的右端。
x
(1)
= Bx
(1)) 0
+f +f
x
x
( 2) ( 3)
= Bx + f Bx
((2 ) 1
= Bx
( 2)
M
其一般形式为
x
( k +1)
( x1(k +1) , x 2k +1) , L, xi(-k1+1)已经算出。一般说来,后面的 ( k +1) (k ) 计算值 xi 比前面的计算值 xi 要精确些。 故对
Jacobi迭代法(3-5)可作如下改进。
x
( k +1) 1
( x2k +1)
1 ( ( = (20 + 3 x2k ) − 2 x3k ) ) 8 ( = 1 (33 − 4 x(k ) + x3k ) ) 1 11
D −1
f
=
⎛ 1 ⎜ ⎜ a11 ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝
1 a22
⎞ ⎟ ⎟ ⎟ ⎟ ⎟ O ⎟ 1 ⎟ ann ⎟ ⎠
b ⎛ b1 ⎞ ⎜ ⎟ ⎜ b2 ⎟ ⎜M⎟ ⎜ ⎟ ⎜b ⎟ ⎝ n⎠
则Jacobi迭代法可写成为:
x
(k +1)
D −1 ( L + U ) x =
−1
(k )
+ D −1b
* *
即为方程组(3-2)的解,从而也是(3-1)的解。 因此,使用迭代法求解就是求向量序列 x ( 0 ) , x (1) , x ( 2 ) , L 的极限向量x*。
3.1.1 简单迭代法
简单迭代法也称基本迭代法,有些迭代法可以通过对基本迭 代法的加速或变形而得到。设线性方程组的一般形式为
a11 x1 + a12 x2 + L + a1n xn = b1 a21 x1 + a22 x2 + L + a2 n xn = b2
则
A = D − L −U
下面考察Jacobi迭代法和Gauss-Seidel迭代法的 收敛性。
观察Jacobi迭代法
x
( k +1) i
1 = − aii
aij x (jk ) + ∑
j =1 j ≠i
n
bi aii
(i = 1, 2, L , n)
则其矩阵的表示形式为:
⎛x ⎞ ⎜ ⎟ ⎜x ⎟ ⎜ M ⎟ ⎜ ⎟ ⎜ x(k +1) ⎟ ⎝ n ⎠
an1 x1 + an 2 x2 + L + ann xn = bn
M
其中矩阵A=(aij)n×n为非奇异, 且aii≠0 (i=1, 2, …, n)。 对上式移项和变形后可得等价的方程组:
1 x1 = ( b1 − a12 x2 − L − a1n xn ) a11 M 1 xi = ( bi − ai1 x1 − L − aii −1 xi −1 − aii +1 xi +1 − L − ain xn ) aii M 1 ( bn − an1 x1 − L − ann−1 xn−1 ) xn = ann
x
( 5) 1
≈ 2.999843 ,
x
(5) 2
( x35) ≈ 1.000061 。 ≈ 2.000072 ,
M
终止条件为: x ( k +1) − x ( k ) ≤ 10 −5
将迭代格式可写成如下的分量形式,即
x
(k +1) i
=
1 aii
i −1 n ⎛ ⎞ ( k +1) ⎜ bi − ∑ aij x j − ∑ aij x (jk ) ⎟ ⎜ ⎟ j =1 j = i +1 ⎝ ⎠
使用迭代法求解(3-1)时,首先要将它变形,变成如下形 状的等价方程组
x = Bx + f
其中
(3-2)
n
B∈R
n× n
, f ∈R ,x∈R
n
即 即(3-1)的解是(3-2)的解,反之,(3-2)的解也是 (3-1)的解。用不同的方法构造(3-2)就可得到不同的 (3-1) 迭代法。 (3-2)中的矩阵B称为迭代矩阵。
( k +1)
x
( k +1) i
⎛ ⎞ n 1⎜ (k ) ⎟ = ⎜ bi − ∑ aij x j ⎟ aii ⎜ j =1 ⎟ j ≠i ⎝ ⎠
(i = 1, 2, L, n) (3-5)
⎧ ( k +1) 1 + 3 ( k ) 20 ( xx −= x (20 2 x x2= − 2 x3k ) ) ⎪ ⎧8 1 1 3 8 2 + 3 ⎪ ⎪ ⎪ ( + 11 2 − x3 ( ⎨4 xk1+1) = 1x(33 − 4 x=k )33x3( k ) ) + ⎨ x2 1 ⎪2 x + x11+ 4 x = 12 ⎪ 2 3 ⎩ 1 ⎪ ( k +1) 1 (k ) (k ) ⎪ x3 = 4 (12 − 2 x1 − x2 ) ⎩
x ( 0) = (0,0,0)T ⎛ ⎞ n 1⎜ ( k +1) (k ) ⎟ = (1) ⎜ bi − ∑ aij x j (1⎟ 12 20xi 33 (1) x3 ) = =3; x1 = , x2aii= =j 31, = ⎜ 11 ⎟ 4 8 j ≠i ⎝ ⎠
取初始向量
x
x
x
(1) 1
= Bx
(k )
+f
( k = 0, 1, 2, L)
(3-3)
Hale Waihona Puke 通常称使用(3-3)式求解的方法为迭代法,也称迭代过 程或迭代格式。