第五章 线性代数方程组的直接解法5
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
病态方程组对任何算法都将产生数值不稳定性
Def 2设 A Rnn为可逆阵, 为一种从属矩阵范
数,则称 cond( A) A A1 为矩阵A的条件数
若矩阵范数取2-范数,则得到谱条件数:
cond2( A)
A 2
A1 2
若矩阵范数取1-范数,则得到1-条件数:
cond1( A)
x
A
cond( A)
x x
A
实际的相对误差 与条件数的关系
证明:( A A)( x x) b A x A(x x) 0 x A1 A(x x)
x A1 A x x
A
cond( A)
x x
A
方程组 Ax b为病态(/*ill-conditioned*/)方程组, 称系数矩阵 A为关于求解方程组或求逆的病态矩阵;
反之,如果 A 和 b 微小时, x 也微小,则称
方程组 Ax b为良态(/*Well-conditioned*/)方程组,
称系数矩阵 A为关于求解方程组或求逆的良态矩阵。
A 2 F
n
2
aj 2
n
Ua j
2 2
UA 2 F
j 1
j 1
A AT UT AT (AU )T AU
F
F
F
F
F
设 1和 n 是 A 按模最大和最小的特征值,则
cond( A) 1 n
AT A 取 2-范数等号成立
Th5.19设 A Rnn为可逆阵,x 和 x x分别满
8
10
3.39E+10 3.54E+13
1.53E+10 1.60E+13
3.39E+10 3.54E+13
Th5.21 设A Rnn , b Rn , det( A) 0, b 0
x 是方程组 Ax b的精确解,x 是近似解,
r b Ax ,称之为剩余(或残余)向量
初始数据误差和方程组的近似解的误差之间关系
例12 考察方程组: 3 3.0001
1 1
x1 x2
4 4.0001
精确解为 x (1 1)T
设方程组存在扰动 3 2.9999
1 1
x1 x2
4 4.0002
其中 A PAQ; x Q1x;b Pb
可逆矩阵P 和 Q的选择要求满足:
cond(PAQ) cond( A)
采用某些特殊的数值方法求解; 重新寻找出现病态的原因,改变原问题的提法。
足方程组 Ax b和 ( A A)( x x) b b
其中 b 0 ,且 A 适当小,使得
A
1
A cond( A)
则 x cond( A) A b
( )
x 1 A1 A A
b
其中所用的是任意向量范数和从属于它的矩阵范数
证明:设 A1 , A A ( A A)
A 1
A1 1
若矩阵范数取 -范数,则得到 -条件数
cond ( A)
A
A1
条件数的性质(Th5.20)
设 A Rnn , det( A) 0 cond( A) 1;cond( A) cond( A1);
cond( A) cond(A), R, 0 如果 A是正交矩阵,则 cond2 ( A) 1
则有 1 r x x
r
源自文库
cond( A)
cond( A) b x
b
定理给出了相对误差的估计范围(与条件数有关)
证明: Ax b x A1b
b A x x A1 b
r b Ax A( x x) x x A1r
r A xx
x x A1 r
如果 A 0; b 0 ,则
x
b
cond( A)
x
b
如果 A 0; b 0 ,则
x cond( A) A (1 O( A ))
x
A
仅由 A或者 b引起的解的相对误差限可大致认为是
原始扰动的相对误差的倍数,倍数近似等于条件数。
如果 A 0; b 0 ,则
A1
( b A x )
1 A1 A
A1
x
( b A x )
1 A1 A
b
A
b A x ( A x
A x)
b
A
x cond( A) b A
( )
x 1 A1 A b
A
Corollary(推论) 在上述定理的条件下,
正交矩阵:AT A AAT I
如果 U 为正交矩阵,则 cond2 ( A) cond2( AU ) cond2(UA)
Lemma
设 A Rnn
,在正交变换下,谱范数
A 2
和F-范数 A 保持不变,即设U Rnn ,U TU I F
则有:
A AU UA
2
2
2
证明:
A AU UA
F
F
F
(1) AU A U A
2
2
2
2
A AUUT AU UT AU
2
2
2
2
2
同理可证 A UA
2
2
(2) 对 x Rn
Ux 2 (Ux)T (Ux) xTUTUx x 2
2
2
设 A [a1, a2 , , an ] UA [Ua1,Ua2 , ,Uan ]
元过程中出现很小的主元,可能为病态;
解方程组得到了一个很大的解,或者特征值相差大
数量级,可能为病态;
当系数矩阵的元素间数量级相差很大,且无一定
规则时,可能为病态。
求解病态方程组时,常用的几种处理原则 采用高精度的算术运算; 采用预处理方法;
Ax b PAQQ1x Pb Ax b
结论得证
例如: Hilbert矩阵就是一个著名的病态矩阵
1
1 2
1 3
11
1
Hn 2
3
4
11
1
n (n 1) (n 2)
1
n
1 (n 1)
对 称 正
定
矩
1
阵
(2n 1)
n
cond1(H ) cond2(H ) cond (H )
4 28375 15514 28375
6 2.9E+7 1. 5E+7 2.9E+7
3 0.0001
1 0
4 0.0002
精确解为 x
(2
10)T
上例说明该方程组的解对初始元素的扰动非常敏感。
设方程组为 Ax b
系数矩阵A 和常数向量 b 的扰动分别记为: A和 b
实际求解的方程组为 ( A A)x (b b)
Def 1 如果 A 和 b 很小,而 x 很大,则称
1 rr 1
x x
cond( A) b A A1 b
x
A1
r
A
r
cond( A)
b
b
结论得证
二、病态方程组求解时需要注意的问题
常用的几种判定方程组为病态的经验方法
当 det( A) 相对来说很小时,或者矩阵A 的某些
行(列)近似线性相关时,可能为病态;
矩阵在采用选主元消去法求解方程组时,在消
§5 直接法的误差分析/*Error Analysis of Direct Method */
一、扰动方程组的误差界/*Error Bound of Perturbed Systems */
由实际问题得到的方程组的系数矩阵或者常数 向量的元素,本身会存在一定的误差;这些初始数 据的误差在计算过程中就会向前传播,从而影响到 方程组的解。
A
由条件
1
A cond( A)
1
所以 A A可逆,且
A1
( A A)1
1 A1 A
如果 A1 且 A C , 1
则 C 可逆,且 C 1 (摄动定理) 1
方程组 ( A A)( x x) b b 有唯一解
x x ( A A)1(b b) x ( A A)1[(b b) ( A A)x]
( A A)1[ b ( A)x] x ( A A)1[ b ( A)x]
( A A)1 ( b A x )
Def 2设 A Rnn为可逆阵, 为一种从属矩阵范
数,则称 cond( A) A A1 为矩阵A的条件数
若矩阵范数取2-范数,则得到谱条件数:
cond2( A)
A 2
A1 2
若矩阵范数取1-范数,则得到1-条件数:
cond1( A)
x
A
cond( A)
x x
A
实际的相对误差 与条件数的关系
证明:( A A)( x x) b A x A(x x) 0 x A1 A(x x)
x A1 A x x
A
cond( A)
x x
A
方程组 Ax b为病态(/*ill-conditioned*/)方程组, 称系数矩阵 A为关于求解方程组或求逆的病态矩阵;
反之,如果 A 和 b 微小时, x 也微小,则称
方程组 Ax b为良态(/*Well-conditioned*/)方程组,
称系数矩阵 A为关于求解方程组或求逆的良态矩阵。
A 2 F
n
2
aj 2
n
Ua j
2 2
UA 2 F
j 1
j 1
A AT UT AT (AU )T AU
F
F
F
F
F
设 1和 n 是 A 按模最大和最小的特征值,则
cond( A) 1 n
AT A 取 2-范数等号成立
Th5.19设 A Rnn为可逆阵,x 和 x x分别满
8
10
3.39E+10 3.54E+13
1.53E+10 1.60E+13
3.39E+10 3.54E+13
Th5.21 设A Rnn , b Rn , det( A) 0, b 0
x 是方程组 Ax b的精确解,x 是近似解,
r b Ax ,称之为剩余(或残余)向量
初始数据误差和方程组的近似解的误差之间关系
例12 考察方程组: 3 3.0001
1 1
x1 x2
4 4.0001
精确解为 x (1 1)T
设方程组存在扰动 3 2.9999
1 1
x1 x2
4 4.0002
其中 A PAQ; x Q1x;b Pb
可逆矩阵P 和 Q的选择要求满足:
cond(PAQ) cond( A)
采用某些特殊的数值方法求解; 重新寻找出现病态的原因,改变原问题的提法。
足方程组 Ax b和 ( A A)( x x) b b
其中 b 0 ,且 A 适当小,使得
A
1
A cond( A)
则 x cond( A) A b
( )
x 1 A1 A A
b
其中所用的是任意向量范数和从属于它的矩阵范数
证明:设 A1 , A A ( A A)
A 1
A1 1
若矩阵范数取 -范数,则得到 -条件数
cond ( A)
A
A1
条件数的性质(Th5.20)
设 A Rnn , det( A) 0 cond( A) 1;cond( A) cond( A1);
cond( A) cond(A), R, 0 如果 A是正交矩阵,则 cond2 ( A) 1
则有 1 r x x
r
源自文库
cond( A)
cond( A) b x
b
定理给出了相对误差的估计范围(与条件数有关)
证明: Ax b x A1b
b A x x A1 b
r b Ax A( x x) x x A1r
r A xx
x x A1 r
如果 A 0; b 0 ,则
x
b
cond( A)
x
b
如果 A 0; b 0 ,则
x cond( A) A (1 O( A ))
x
A
仅由 A或者 b引起的解的相对误差限可大致认为是
原始扰动的相对误差的倍数,倍数近似等于条件数。
如果 A 0; b 0 ,则
A1
( b A x )
1 A1 A
A1
x
( b A x )
1 A1 A
b
A
b A x ( A x
A x)
b
A
x cond( A) b A
( )
x 1 A1 A b
A
Corollary(推论) 在上述定理的条件下,
正交矩阵:AT A AAT I
如果 U 为正交矩阵,则 cond2 ( A) cond2( AU ) cond2(UA)
Lemma
设 A Rnn
,在正交变换下,谱范数
A 2
和F-范数 A 保持不变,即设U Rnn ,U TU I F
则有:
A AU UA
2
2
2
证明:
A AU UA
F
F
F
(1) AU A U A
2
2
2
2
A AUUT AU UT AU
2
2
2
2
2
同理可证 A UA
2
2
(2) 对 x Rn
Ux 2 (Ux)T (Ux) xTUTUx x 2
2
2
设 A [a1, a2 , , an ] UA [Ua1,Ua2 , ,Uan ]
元过程中出现很小的主元,可能为病态;
解方程组得到了一个很大的解,或者特征值相差大
数量级,可能为病态;
当系数矩阵的元素间数量级相差很大,且无一定
规则时,可能为病态。
求解病态方程组时,常用的几种处理原则 采用高精度的算术运算; 采用预处理方法;
Ax b PAQQ1x Pb Ax b
结论得证
例如: Hilbert矩阵就是一个著名的病态矩阵
1
1 2
1 3
11
1
Hn 2
3
4
11
1
n (n 1) (n 2)
1
n
1 (n 1)
对 称 正
定
矩
1
阵
(2n 1)
n
cond1(H ) cond2(H ) cond (H )
4 28375 15514 28375
6 2.9E+7 1. 5E+7 2.9E+7
3 0.0001
1 0
4 0.0002
精确解为 x
(2
10)T
上例说明该方程组的解对初始元素的扰动非常敏感。
设方程组为 Ax b
系数矩阵A 和常数向量 b 的扰动分别记为: A和 b
实际求解的方程组为 ( A A)x (b b)
Def 1 如果 A 和 b 很小,而 x 很大,则称
1 rr 1
x x
cond( A) b A A1 b
x
A1
r
A
r
cond( A)
b
b
结论得证
二、病态方程组求解时需要注意的问题
常用的几种判定方程组为病态的经验方法
当 det( A) 相对来说很小时,或者矩阵A 的某些
行(列)近似线性相关时,可能为病态;
矩阵在采用选主元消去法求解方程组时,在消
§5 直接法的误差分析/*Error Analysis of Direct Method */
一、扰动方程组的误差界/*Error Bound of Perturbed Systems */
由实际问题得到的方程组的系数矩阵或者常数 向量的元素,本身会存在一定的误差;这些初始数 据的误差在计算过程中就会向前传播,从而影响到 方程组的解。
A
由条件
1
A cond( A)
1
所以 A A可逆,且
A1
( A A)1
1 A1 A
如果 A1 且 A C , 1
则 C 可逆,且 C 1 (摄动定理) 1
方程组 ( A A)( x x) b b 有唯一解
x x ( A A)1(b b) x ( A A)1[(b b) ( A A)x]
( A A)1[ b ( A)x] x ( A A)1[ b ( A)x]
( A A)1 ( b A x )