数值计算方法与算法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
常用迭代方法: 雅可比迭代,高斯-赛德尔迭代,松弛迭代等。
6.1 雅可比迭代
6.1.1 雅可比迭代格式 • 迭代格式
线性方程组 Ax = y,即
a11x1 a12 x2 a21x1 a22 x2 an1x1 an2 x2
a1n xn y1 a2nxn y2
x* Bx *g x* (I D1A)x * D1y, Ax* y, i.e. x * is a solution of Ax y.
•迭代格式的收敛性
引理6.1 (线性代数定理) 设矩阵序列 I , M , M 2, , M k , 则 lim x(k) 0 (M ) 1.
xn bn1x1 bn2 x2 b x n,n1 n1
gn
写成矩阵形式
x1 0 b12 b13
x2 x3
b21 b31
0 b32
b23 0
xn bn1 bn2 bn3
b1n x1 g1
(6.2)
(6.2)是称为简单迭代或雅可比迭代。
• 雅可比迭代矩阵 记
a11
D
a22
diag(a11,a22 , ann
,ann ),
A D A D, From Ax y, we have (D A D)x y Dx (D A)x y
0
lim M
k
k 1
lim k1 k
lim( x(k1) k
x*)
0, 0.
i.e. lim M k1 0.From Lemma 6.1, we have (M ) 1. k
充分性()设ρ(M)<1,证{x(k)}收敛。
如果ρ(M)<1 ,则I-M为非奇异矩阵。事实上,因为
ρ(M)<1,λi<1,因此λ=1不是M的特征值,即
|1 I M || I M | 0.
所以方程组 (I-M)x = f 有惟一解x*,满足(I-M)x* = f ,即
x*=Mx* + f 。于是
x(k) x* M (x(k1) x*) M 2 (x(k2) x*)
求解线性方程组 Ax = y,可用直接法。当 A 为稀疏矩阵 时,直接法将破坏矩阵 A 的稀疏性。
我们可以对线性方程组进行等价变换,构造出等价方程 组 x = Mx+g,由此构造迭代关系式
x(k1) Mx(k) g, k 0,1, 2,
例如,分解A=N-P,则 (N P)x y Nx Px y, x N 1Px N 1y Mx g(M N 1P, g N 1y),
k
(证明见关治和陈景良编《数值计算方法》P410~412)
定理6.1 设迭代格式为
x(k1) Mx(k) g, k 0,1, 2,
(6.3)
由初始向量x(0)产生的向量序列{x(k)}收敛的充分必
要条件是 (M ) 1. 证明 必要性()设 lim x(k) x*, 则由(6.3)得
Take
any
initial
vector
x(0)
(
x(0) 1
,
x2(0) ,
,
x(0) n
)
T
,
we obtain iterative sequences x(1), x(2),
This is the iterative method to be discussed.
迭代法:构造一个向量序列 {x(k)} ,使其收敛到某个极限向 量 x*,即 x(k) x*, 则x*就是线性方程组的解。
x D1(D A)x D 1 y (I D 1A)x D 1 y.
所以 B (I D 1A), 称为雅可比迭代矩阵,
g D 1 y 是常数项向量。
如果通过(6.2)构造的迭代序列{x(k)}收敛,即 lim x(k) x*, k
则 x*为 Ax = y的解,即 Ax*= y。事实上,对(6.2)取极限得
xn
an1 ann
x1
an2 ann
x2
an,n1 ann
xn1
yn ann
记 bij aij / aii , gi yi / aii , 则
x1
b12 x2 b13x3
x2
b21x1
b23x3
b1n xn g1 b2n xn g 2
b2n b3n
x2 x3
g g
2 3
0 xn gn
或简记为
x Bx g.
对任意初始向量
x(0)
(
x(0) 1
,
x(0) 2
,
ห้องสมุดไป่ตู้
,
x(0) n
),
构造迭代格式:
x(k1) Bx(k) g, k 0,1, 2,
M k (x(0) x*) M k 0.
由引理6.1知,
If (M )<1, then lim M k 0, lim( x(k) x*) 0, i.e.
k
k
lim x(k) x *.
k
This completes the proof.
例6.1 设系数矩阵为
k
x* Mx *g.
(6.4)
(6.3)-(6.4)得
x(k1) x* (Mx(k) g) (Mx * g) M (x(k) x*)
设第k次迭代的误差记为 k x(k) x*, thus
k1 M k M 2 k1 M k1 0 ,
ann xn yn
(6.1)
若aii≠0, i = 1,2,…,n ,(6.1)可变为
x1 x2
a21 a22
x1
a12 a11
x2
a13 a11
x3
a23 a22
x3
a1n a11
xn
y1 a11
a2n a22
xn
y2 a22
6.1 雅可比迭代
6.1.1 雅可比迭代格式 • 迭代格式
线性方程组 Ax = y,即
a11x1 a12 x2 a21x1 a22 x2 an1x1 an2 x2
a1n xn y1 a2nxn y2
x* Bx *g x* (I D1A)x * D1y, Ax* y, i.e. x * is a solution of Ax y.
•迭代格式的收敛性
引理6.1 (线性代数定理) 设矩阵序列 I , M , M 2, , M k , 则 lim x(k) 0 (M ) 1.
xn bn1x1 bn2 x2 b x n,n1 n1
gn
写成矩阵形式
x1 0 b12 b13
x2 x3
b21 b31
0 b32
b23 0
xn bn1 bn2 bn3
b1n x1 g1
(6.2)
(6.2)是称为简单迭代或雅可比迭代。
• 雅可比迭代矩阵 记
a11
D
a22
diag(a11,a22 , ann
,ann ),
A D A D, From Ax y, we have (D A D)x y Dx (D A)x y
0
lim M
k
k 1
lim k1 k
lim( x(k1) k
x*)
0, 0.
i.e. lim M k1 0.From Lemma 6.1, we have (M ) 1. k
充分性()设ρ(M)<1,证{x(k)}收敛。
如果ρ(M)<1 ,则I-M为非奇异矩阵。事实上,因为
ρ(M)<1,λi<1,因此λ=1不是M的特征值,即
|1 I M || I M | 0.
所以方程组 (I-M)x = f 有惟一解x*,满足(I-M)x* = f ,即
x*=Mx* + f 。于是
x(k) x* M (x(k1) x*) M 2 (x(k2) x*)
求解线性方程组 Ax = y,可用直接法。当 A 为稀疏矩阵 时,直接法将破坏矩阵 A 的稀疏性。
我们可以对线性方程组进行等价变换,构造出等价方程 组 x = Mx+g,由此构造迭代关系式
x(k1) Mx(k) g, k 0,1, 2,
例如,分解A=N-P,则 (N P)x y Nx Px y, x N 1Px N 1y Mx g(M N 1P, g N 1y),
k
(证明见关治和陈景良编《数值计算方法》P410~412)
定理6.1 设迭代格式为
x(k1) Mx(k) g, k 0,1, 2,
(6.3)
由初始向量x(0)产生的向量序列{x(k)}收敛的充分必
要条件是 (M ) 1. 证明 必要性()设 lim x(k) x*, 则由(6.3)得
Take
any
initial
vector
x(0)
(
x(0) 1
,
x2(0) ,
,
x(0) n
)
T
,
we obtain iterative sequences x(1), x(2),
This is the iterative method to be discussed.
迭代法:构造一个向量序列 {x(k)} ,使其收敛到某个极限向 量 x*,即 x(k) x*, 则x*就是线性方程组的解。
x D1(D A)x D 1 y (I D 1A)x D 1 y.
所以 B (I D 1A), 称为雅可比迭代矩阵,
g D 1 y 是常数项向量。
如果通过(6.2)构造的迭代序列{x(k)}收敛,即 lim x(k) x*, k
则 x*为 Ax = y的解,即 Ax*= y。事实上,对(6.2)取极限得
xn
an1 ann
x1
an2 ann
x2
an,n1 ann
xn1
yn ann
记 bij aij / aii , gi yi / aii , 则
x1
b12 x2 b13x3
x2
b21x1
b23x3
b1n xn g1 b2n xn g 2
b2n b3n
x2 x3
g g
2 3
0 xn gn
或简记为
x Bx g.
对任意初始向量
x(0)
(
x(0) 1
,
x(0) 2
,
ห้องสมุดไป่ตู้
,
x(0) n
),
构造迭代格式:
x(k1) Bx(k) g, k 0,1, 2,
M k (x(0) x*) M k 0.
由引理6.1知,
If (M )<1, then lim M k 0, lim( x(k) x*) 0, i.e.
k
k
lim x(k) x *.
k
This completes the proof.
例6.1 设系数矩阵为
k
x* Mx *g.
(6.4)
(6.3)-(6.4)得
x(k1) x* (Mx(k) g) (Mx * g) M (x(k) x*)
设第k次迭代的误差记为 k x(k) x*, thus
k1 M k M 2 k1 M k1 0 ,
ann xn yn
(6.1)
若aii≠0, i = 1,2,…,n ,(6.1)可变为
x1 x2
a21 a22
x1
a12 a11
x2
a13 a11
x3
a23 a22
x3
a1n a11
xn
y1 a11
a2n a22
xn
y2 a22