第三章 线性方程组的解法 3 .3 lu 分解与矩阵求逆
DESCRIPTION
第三章 线性方程组的解法 3 .3 LU 分解与矩阵求逆. 3 .3 LU 分解与矩阵求逆问题. 3.3.1 LU 分解. Gauss 消去法的消元过程矩阵描述 : 消元的每一步等价于左乘初等下三角矩阵,即: k =1, 有. 行变换相 当于左乘 初等矩阵. 其中. 第 k 次消元. 有. 即. 从而. 因此 , 消元完成后 , 有. U=A (n-1) (3-6). 故. 即. 顺序主元. 且. - PowerPoint PPT PresentationTRANSCRIPT
1
ii
n
ijjiji
i u
xub
x
1
nnnn
n
n
aaa
aaaaaa
A
21
22221
11211
bAx
第三章 线性方程组的解法 3.3 LU 分解与矩阵求逆
2
3.3 LU 分解与矩阵求逆问题
),( )1()1( bA
)1()1()1(2
)1(2
)1(2
)1(22
)0(1
)0(1
)0(12
)0(11
0
0
nnnn
n
n
baa
baabaaa
3.3.1 LU 分解
行变换相行变换相当于左乘当于左乘初等矩阵初等矩阵
Gauss 消去法的消元过程矩阵描述 : 消元的每一步等价于左乘初等下三角矩阵,即: k=1, 有),( )0()0(
1 bAL
其中
1
11
1
211
nl
lL
niaal i
i ,,3,2)0(
11
)0(1
1
3
1
11
1
,
,1
kn
kkk
l
lL
第 k 次消元
有 ),( )1()1( kkk bAL ),( )()( kk bA
1,,3,2,1 nk
)1( kk AL)(kA即
4
),( )0()0( bA121 LLLn
),( )1()1( nn bA
因此 , 消元完成后 , 有
A故
为上三角矩阵。 1 )n(AU , L 为单位下三角矩阵其中:
)1(11
12
11
nn ALLL 7)-(3 LU
从而 AL 1 2L 1nL )1( nA
)1()1(
)1(2
)1(2
)1(22
)0(1
)0(1
)0(12
)0(11
nn
nnn
n
n
ba
baabaaa
U=AU=A(n-1) (n-1) (3-6)(3-6)
8)(3 11
12
11
nLLLL
5
11
11
1
1,3,2,1,
2,12,11,1
3231
21
nnnnn
nnn
lllllll
lll
L
即
)1(
)1(2
)1(22
)0(1
)0(12
)0(11
nnn
n
n
a
aaaaa
)(nAU
且 UdetAdet 顺序主元
n
i
iiia
1
)(
6
定义定义 .. 称 A=LU ( 3 - 7 )式为矩阵 A 的 LU 分解或三角分解。当 L 为单位下三角矩阵时,称为 Doolittle 分解。当 U 为上三角矩阵时,称为 Crout 分解。
解解 :: 由上述分析不难得到
nnnkn
knkkk
nk
aaa
aaa
aaa
A
1
1
1111
1
1
1
1
1
nkn
k
ll
l
)(
)()(
)1(1
)1(1
)1(11
nnn
kkn
kkk
nk
a
aa
aaa
阶顺序主子式k
kA
, kkk ULA kAdet kUdet
k
i
iiia
1
)(
kL kU
问题问题:矩阵 A 存在 LU 分解(即 Gauss 消去法可以执行)的条件是什么?
7
nkAk
,,2,10det
nia iii
,,2,10)(
Gauss 消去法可以执行
定理定理 3.13.1
0,det AD子式n A若 阶方阵 的顺序主 kk
nk ,,2,1 .且唯一. A LU则 的 分解存在
[[ 证证 ]] 存在性证明见前;唯一性证明(略) .
8
3.3.2 基本的三角分解法 (Doolittle 法 )
0,D的顺序主子式)(an A若 阶方阵 knnij Adet k nk ,,2,1 即,一A LU的 分解存在且唯,则由上节可知
nnnkn1
knkkk1
1n1k11
aaa
aaa
aaa
A
1ll
1l
1
nkn1
k1
)(nnn
)(kkn
)(kkk
)(1n
)(1k
)(11
a
aa
aaa
1
11
000
LU
9
1
1
1
1
1
nrn
r
ll
l
nn
rnrr
nr
u
uu
uuu
1111
nnnrn
rnrrr
nr
aaa
aaa
aaa
A
1
1
1111
上式可记为
为的第一行元素根据矩阵的乘法原理 jaA 1,njua jj ,,2,111
为元素以右行元素主对角线的第 ),,("" nrjarA rj
r
kkjrkrj ula
1 n,,2,1 r
, , ( )j r n j r
导出 U
10
1
1
1
1
1,1
nrn
r
ll
l
nn
rnrr
nr
u
uu
uuu
1111
nnnrn
rr
rnrrr
nr
aaa
aaaa
aaa
A
1
,1
1
1111
同样 , 由
为素列元素主对角线以下元的第可知 ),,1( nriarA ir
r
kkrikir ula
1 1,,2,1 nr
nri ,,1
1111,1, ular ii 时显然 ni ,,3,2
导出 L
11
综合以上分析 , 有njua jj ,,2,111
r
kkjrkrj ula
1 nr ,,2,1
nrj ,,
r
kkrikir ula
1 1,,2,1 nr
nri ,,1
1111 ula ii ni ,,3,2
因此可以推导出ju1 ja1 nj ,,2,1 U 的第一行
11
11 ual i
i ni ,,3,2 L 的第一列
rj
r
kkjrkrj uula
11
1rrir
r
kkrikir ulula
1
1
------(3.9)
------(3.10)
U L
12
1
1
r
kkjrkrjrj ulau nr ,,2,1
nrj ,,U 的第 r 行 ------(3.11)( 逐行算出 )
rr
r
kkrikir
ir u
ulal
1
11,,2,1 nr
nri ,,1L 的第 r 列 ------(3.12)( 逐列算出 )
称上述 (3.9) ~ (3.12) 式所表示的分解过程为 Doolittle 分解
.(3.12) ~ (3.9),,
式的表达式请找出类似于分解表示为单位上三角阵的
表示为下三角阵中的如果将CroutU
LLUA思考思考
13
对于线性方程组 bAx
系数矩阵非奇异 , 经过 Doolittle 分解后 LUA
Ax=L(Ux)=b 可化为下面两个三角形方程组 1)-13-(3 bLy
2)-13-(3 yUx
为中间未知量向量其中 y:
1
11
1
321
3231
21
nnn lll
lll
nn
nnnn
n
n
uuu
uuuuuuu
U,11,1
,22322
,1131211
消去回代
nn b
bb
y
yy
2
1
2
1
L=
14
11 by
1
1
r
jjrjrr ylby
)143(,,3,2
nr
12122 ylby
的解的解便得到再由 bAxyUx
nn
nn u
yx
rr
n
rjjrjr
r u
xuyx
1
1,2,,2,1)153(
nnr
1
11
1
321
3231
21
nnn lll
lll
nn
n,nn,n
n,
n,
uuu
uuuuuuu
111
22322
1131211
上述解线性方程组的方法称为三角 (LU) 分解的 Doolittle 法 .
nn y
yy
x
xx
2
1
2
1
nn b
bb
y
yy
2
1
2
1
15
1jj au 1
11
11 ual i
i
Doolittle 法的特点 : 紧凑 ( 无中间过程 ); 内积计算 ( 精度高 )
例例 3. 3 用 Doolittle 法解方程组
1391444321
13124330102
4
3
2
1
xxxx
72510
解解 :: 由 Doolittle 分解 14131211 uuuu 30102
Tlll 4131211 T25.05.11
逐行算出 U 的元素逐列算出 L 的元素
16
2423220 uuu 5.812110
Tll 423210 T11/611/310
343300 uu 11/211/300
Tl43100 T9100
44000 u 4000
得解 ,bLy
Tyyyy 4321 T1611/172010
1
1
r
kkjrkrjrj ulau
rr
r
kkrikir
ir u
ulal
1
1
11 by
1
1
r
jjrjrr ylby
逐行算出 U 的元素逐列算出 L 的元素
17
得解 ,yUx
Txxxx 4321 T4321
nn
nn u
yx
rr
n
rjjrjr
r u
xuyx
1
Doolittle 法在计算机上容易实现 , 但若按上述流程运算需要较大的存储空间 :
;)1(11 的存储位置即不再需要后的第一行求出 jauU jj
的存储位置即不再需要后的第一列求出 )2(11 ialL ii
的存储位置即不再需要后行的第求出 )( rjaurU rjrj
的存储位置即不再需要后列的第求出 )1( rialrL irir
A,b,x,L,U,y 都需要单独存储 , 而从 lij,uij 的计算过程知 :
18
因此可按下列方法存储数据 :
nrrjua rjrj ,,2,1),(
1,,2,1),1( nrrila irir
有如下特点:时解三角形方程组同样 ,, bLy
的存储位置即不再需要后求出 11 by
的存储位置即不再需要后求出 )2( iby ii
19
niyb ii ,,2,1,
空出的存储位置的存储可以使用因此 )1( iby ii
直接三角分解的 Doolittle 法可以用以下过程表示 :
4
3
2
1
44434241
34333231
24232221
14131211
bbbb
aaaaaaaaaaaaaaaa
45
35
25
15
44434241
34333231
24232221
14131211
aaaa
aaaaaaaaaaaaaaaa
20
4
3
2
1
44434241
34333231
24232221
141312111
bbby
aaalaaalaaaluuuu
r
4
3
2
1
44434241
34333231
24232221
141312112
bbyy
aallaalluuuluuuu
r
4
3
2
1
44434241
34333231
24232221
141312113
byyy
allluulluuuluuuu
r
4
3
2
1
44434241
34333231
24232221
141312114
yyyy
ullluulluuuluuuu
r
yUL ,,可知从上式最后一个矩阵中
yUx 然后解线性方程组
存储单元 ( 位置 )
21
算法的数据组织算法的数据组织
)(by
)(by)(by)(by
)(au)(al)(al)(al
)(au
)(au
)(al
)(al)(au)(au)(au)(al)(au)(au)(au)(au
nn
33
22
11
nnnnn3n3n2n2n1n1
3n3n333332323131
2n2n232322222121
2n1n131312121111
计算 (3-9)~(3-14) 得出的元素可按下框排列 :
其中 () 为老值 (A,b), 外为新值 (LU,y). 计算顺序逐框进行 : 逐行算出 U 的元素 uij; 逐列算出 L 的元素 lij. 该分解又称为 LU 分解的紧凑格式 (Doolittle 分解 ).
22
例例 3.43.4 用紧凑格式的 Doolittle 法解方程组 ( 例例 3.33.3 ) 解解 ::
45
35
25
15
44434241
34333231
24232221
14131211
aaaa
aaaaaaaaaaaaaaaa
A
72510
1391444321
13124330102
7
2
5
10
139142
43221
1312423
30102
1r
ju1 ja1
11
11 ual i
i
1
1
r
kkjrkrjrj ulau
rr
r
kkrikir
ir u
ulal
1
111 by
1
1
r
jjrjrr ylby
23
7
2
20
10
1391162
43113
21
21712112
330102
2r
1
1
r
kkjrkrjrj ulau
rr
r
kkrikir
ir u
ulal
1
1
7111720
10
1391162
112
113
113
21
21712112
330102
3r
11 by
1
1
r
jjrjrr ylby
24
16111720
10
491162
112
113
113
21
21712112
330102
4r
L
x
U
4
3
2
1
491162
112
113
113
21
21712112
330102
yUx解
4
3
2
1
x
x
x
x
x
4
3
2
1
所以所以
y
U
nn
nn u
yx
rr
n
rjjrjr
r u
xuyx
1
25
问题 : 在 Doolittle 法 ( 包括 LU 分解紧凑格式 ) 中 , 会反复用到公式
1
1
r
kkjrkrjrj ulau
rr
r
kkrikir
ir u
ulal
1
1
仍有可能为小主元做除数 ?)r(
rrrr aGaussu 1法的列主元相当于显然
法的列主元为仍然称 Doolittleurr
为此 , 也应考虑在算法中加入选取列主元即紧凑格式的Doolittle 列主元法 ( 略 ).
26
Doolittle 法的特点 : 紧凑 ( 无中间过程 ); 内积计算 ( 精度高 )
说明说明 :: 若计算没有舍入误差 , 用 Gauss 消去法和 Doolittle 法求得的结果应相同 . 但在计算机上计算 , 能产生不同的结果 . 按矩阵三角分解法 (Doolittle) 的公式 (3-9)~(3-12)中有内积计算 Σxiyi, 可以用双精度运算 . 当完成内积计算后再舍入成单精度 .
27
3.3.3 矩阵求逆问题常使用 LU分解求解系列方程组
( 1, ), , (3-16)nj j j jAx b j m x b R
求解时分两步 :
1. 分解 : A=LU
2. 对 j=1,…,m, 解 :
njjjj Ry,x),byL m1,(j
Tnjjj )x,...,x(x),xyU 1 m1,(j
比较 : 用 Gauss 消去法解 (3-16), 计算量约 O(1/3mn3); 用 LU分解求解计算量约 O(1/3n3+mn2); 后者优于前者 .
28
当 A 可逆 , 有 AA-1=I. 若记 A-1=(X1,X2,…,Xn), I= (e1,e2,…,en), (Xi€Rn) 有 AXi=ei , (i=1,…,n) (3-17)
即 A-1=( X1,X2,…,Xn) 可从 n 个 AXi=ei 的解得到 . (3-17) 系数阵相同 ,右端项不同 . 利用 LU 分解求解 A-1 是 很好的方法 . 实际中应尽量避免求逆矩阵的问题 .
如 : 算 A-1 b 可化为 Ax=b 的求解问题 .例 3.5 不用求逆计算
111
431212321
)101(
1
29
本节习题① 用 LU 分解法求解 pp.89,1 题