Upload
wesley-mccullough
View
124
Download
0
Embed Size (px)
DESCRIPTION
第七讲 线性代数方程组的解法(上). 第七讲主要知识点. 直接方法(高斯简单消去法 、选主 元消去法 、高斯 — 约当消去法 、三角分解法 ). 引 言. 求解线性方程组的另一类重要方法是直接法。直接法利用一系列递推公式计算有限步能直接得到方程组的精确解。当然,实际计算结果仍有误差,譬如舍入误差。舍入误差的积累有时甚至会严重影响解的精度。 求解线性方程组最基本的一种直接法是消去法。这是一个众所周知的古老方法,但用在现代电子计算机上仍然十分有效。. 约当消去法. - PowerPoint PPT Presentation
Citation preview
1
第七讲第七讲线性代数方程组的解法线性代数方程组的解法
(上)(上)
2
第七讲主要知识点第七讲主要知识点
直接方法(高斯简单消去法 、选主 元消
去法 、高斯—约当消去法 、三角分解法 )
3
引 言引 言 求解线性方程组的另一类重要方法是直接法。直接法利用一系列递推公式计算有限步能直接得到方程组的精确解。当然,实际计算结果仍有误差,譬如舍入误差。舍入误差的积累有时甚至会严重影响解的精度。
求解线性方程组最基本的一种直接法是消去法。这是一个众所周知的古老方法,但用在现代电子计算机上仍然十分有效。
4
约当消去法约当消去法 消去法的基本思想是,通过将一个方程乘或除以某个常数,以及将两个方程相加减这两种手续,逐步减少方程中的变元的数目,最终使每个方程仅含一个变元,从而得出所求的解。
所谓约当消去法 ,其特点是,它的每一步仅在一个方程中保留某个变元,而从其它的各个方程中消去该变元,这样经过反复消元后,所给方程组中的每个方程最终被加工成仅含一个变元的形式,从而得出所求的解。
5
高斯消去法高斯消去法 高斯消去法是约当消去法的一种改进。
高斯消去法的求解过程分为消元过程和回代过程两个环节。消元过程将所给的方程组加工成上三角方程组。所归结的方程成组再通过回代过程得出它的解。
高斯消去法由于添加了回代的过程,算法结构稍复杂,但这种算法的改进明显减少了计算量。
6
选主元素选主元素kx
l 1 1maxk klk ik
k i na a
k
l 1kkka
klk
我们在高斯消去法的消元过程中检查方程组中变元 的各系数,从中挑选出最大者,称之为第 步的主元素。
设主元素在第 个方程,即
若 不等于 ,则我们先将第 个方程与第 个互易位置,使新的 成为主元素,这一手续称为选主元素。
7
解线性代数方程组的直接方法解线性代数方程组的直接方法
11 1 12 2 1 1
21 1 22 2 2 2
1 1 2 2
n n
n n
n n nn n n
n
a x a x a x ba x a x a x b
a x a x a x b
阶线性方程组:
[ ] , X ,1 1
T
n nij
AX b
TA n n , , ) , , )(x (bx ba b
矩阵表示记为
这里
8
解线性方程组的直接方法(续解线性方程组的直接方法(续 11 ))
35
det( ) 0,
det( ) ( 1, 2, , )
det( )
1
( 1) !
30, 2.38 10
ii
A
Ax i n
A
n n n
n n n
n
n
如果线性方程组的系数行列式不为零,即则该方程组有唯一解。由克莱姆(cramer)法则,其解为
这种方法需要计算 个 阶行列式并作 次除法,而每个阶行列式计算需作 次乘法,计算量十分惊人。
如 需 次乘法。可见其在理论上是绝对正确,但在 较大时,在实际计算中确实不可行的。
9
解线性方程组的直接方法(续解线性方程组的直接方法(续 22 ))
解线性方程组的两类方法:
直接法 : 经过有限次运算后可求得方程组精确
解的方法 ( 不计舍入误差 !)
迭代法:从解的某个近似值出发,通过构造一
个无穷序列去逼近精确解的方法。
(一般有限步内得不到精确解)
10
Gauss Gauss 消去法消去法
11 1 12 2 1 1
22 2 2 2
n n
n n
nn n n
gb x b x b xgb x b x
gb x
转化为等价的(同解)的三角形方程组。
11 1 12 2 1 1
21 1 22 2 2 2
1 1 2 2
n n
n n
n n nn n n
n
a x a x a x ba x a x a x b
a x a x a x b
对 阶线性方程组:
1 1 , , ,n nx x x 称消元过程。逐次计算出 称回代过程。
11
→ → 11
bbaa)(
ii
)(
ijij , 统一记号:
1 1 11 1 1 1 1
T( ) ( ) ( )( ) ( )
ij( ) ( ) X : [ ] ,
n( , , )b a bA A b b 原方程
)( → )(
:0≠ 1
111
21
)1(11
新第二行(第一行)第二行
若
aa
a)()(
)( → )()( 111
131 新第三行第一行第三行 aa )()(
)n(n aa)()(
n 行新第(第一行)行第 → )(
1
11
1
1
相当于第 i个方程 -第一个方程×数→新的第 i方程—同解!第一方程不动!
一、一、 Gauss Gauss 消去法计算过程消去法计算过程
12
Gauss Gauss 消去法计算过程消去法计算过程
(1) (1) (1) (1) (1)
11 1 12 2 13 3 1 1
(2) (2) (2) (2)
22 2 23 3 2 2
(2) (2) (2) (2)
32 2 33 3 3 3
(2) (2)
2 2 3 3
n n
n n
n n
n n
a x a x a x a x ba x a x a x ba x a x a x b
a x a x
(2) (2)
nn n na x b
上述消元过程除第一个方程不变以外 ,第 2—第
n 个方程全消去了变量 1 ,而系数和常数项全得到
新值:
13
Gauss Gauss 消去法计算过程(续消去法计算过程(续11 ))
b
bb
b
aa
aaaaa
A
nnnn
n
n
)2(
)2(
2
)1(
1
(2)
)2()2(
2
)2(
2
)2(
22
)1(
1
)1(
12
)1(
11
)2(
0
0
,其中
22 x bA ( )( )得到新同解方程组:
aamamaa)()(
ii
)(
ji
)(
ij
)(
ij
1
11
1
11
1
11
12 这里
14
Gauss Gauss 消去法计算过程(续消去法计算过程(续 22 ))(2)
22 0 a 第二步消元: 若 ,对除第一行第一列外
的子阵作上计算:
3 2 2
2 23 4,( ) ( ) ( )
i i i , , ,n i jb b b m
(3) (2) (2) (2) (2)
i2 2 i2 2 22
ij ij j ia a m a m a a
00
00
0
)3(
)3(
3
)2(
2
)1(
1
(3)
)3()3(
3
)3(
3
)3(
33
)2(
2
)2(
23
)2(
22
)1(
1
)1(
13
)1(
12
)1(
11
)3(
b
bbb
b
aa
aaaaaaaaa
A
nnnn
n
n
n
,
15
Gauss Gauss 消去法计算过程(续消去法计算过程(续33 ))
bxA )()( 33 =得到同解方程组
行下去。则此消去过程可依次进,若 0 333 ≠a )(
(1) (1) (1) (1) (1)
11 1 12 2 13 3 1 1
(2) (2) (2) (2)
22 2 23 3 2 2
(3) (3) (3)
33 3 3 3
(3
3
n
n
n
n
a x a x a x a ba x a x a b
a x a b
) (3) (3)
3 nn na x a b
16
Gauss Gauss 消去法计算过程(续消去法计算过程(续44 ))
( )( )
1
nn
n
x bA
第 步消去过程后,得到等价三角方程组。
(1) (1) (1) (1) (1)
11 1 12 2 13 3 1 1
(2) (2) (2) (2)
22 2 23 3 2 2
(3) (3) (3)
33 3 3 3
n n
n n
n n
a x a x a x a x ba x a x a x b
a x a x b
( ) ( )
n n
nn n na x b
17
Gauss Gauss 消去法计算过程(续消去法计算过程(续55 ))
(1) (1) (1) (1) (1)
11 12 13 1 1(2) (2) (2) (2)
22 23 2 2(n)( ) (3) (3) (3)
33 3 3
( ) ( )
0
0 0
0 0 0
b
n
nn
n
n n
nn n
a a a a ba a a b
A a a b
a b
,
系数矩阵与常数项:
的过程称消去过程。,计算出 bA )n()n(
18
消去过程算法消去过程算法(1) (1) (1)
11 1 1
( ) ( ) ( ) ( )
1
n
k k k k
kk kk kn k
a a b
a a a b
( 1) ( 1) 0
0 k 1 i,j n
k k
ij ja b
ni,j≤ ) k(
)(
aabbb
aaaaa(k)
kk
(k)
ik
(k)
k
(k)
i
)(k
i
(k)
kk
(k)
ik
(k)
kj
(k)
ij
)(k
ij
11
1
( )0 k 1 i n
k
ika 1n , ,2 ,1 k
19
回代过程算法回代过程算法(1) (1) (1) (1)
11 1 1 1 1
( ) ( ) ( )
( 1) ( 1) ( 1)
1 1 1 1 1
i i n n
i i i
ii i in n i
n n n
n n n n n n n
a x a x a x b
a x a x b
a x a x b
( ) ( )
n n
nn n na x b
abx )n(
nn
)n(
nn =
( ) ( ) ( )
1
( ) i n 1 , n 2 , , 1n
i i i
i i ij j iij i
x b a x a
20
例题分析例题分析
1 2 3
2 3
1 2 3
1 3 3 2 3 3
6;
4 5;
2 2 1.
1 1 1 6 1 1 1 6
| 0 4 1 5 0 4 1 5
2 2 1 1 0 4 1 11
1 1 1 6
0 4 1 5
0 0 2 6
( 2) ,
x x x
x x
x x x
A b
r r r r r r
例1:用消去法解方程组
解:用增广矩阵表示求解过程
21
消去第一列的 n-1 个系数要计算
n*(n-1 ) 个乘法。 1 2 2 )n()*(n-n 二
)n(n
k)k ( n
k1
3∑ 2
1
2
总计
1
1
1
2
n
k
n(n ) k
除法 1
2
n(n )
回代总计算量
32 1
( 30, 9890)3 3
n nn n 总乘除法共 为
二、二、 GaussGauss 消去法乘法计算量消去法乘法计算量
22
(2) (1)(2) (1)
1 1
1 121
1 1 11311
1
,
1
1
0 1 2 3
0 0 1
L( ) ( )
i i
n
i , , ,n
b bA L A L
mm a am
m
记:
其中
每一步消去过程相当于左乘初等变换矩阵 Lk
三、三、 GaussGauss 消去法的矩阵表示消去法的矩阵表示
23
Gauss Gauss 消去法的矩阵表示消去法的矩阵表示(3) (2)(3) (2)
2 2
2 2
2 2 22322
2
,
1
0 1
0 1 3 4
0 0 1
L( ) ( )
i i
n
i , , ,n
b bA L A L
m a am
m
记:
(3) (1)(3) (1)
2 1 2 1 , b bA L L A L L
24
Gauss Gauss 消去法计算过程消去法计算过程-1
i iL L与
1
1 2 1
1
1 2 1
(n) ( )
n n
(n) ( )
n n
A L L L Ab bL L L
-1
i1,
1,
11
0 10 1
11
0 10 1
0 10 1
i
ii i
i i
nini
L Lm m
m m
列 i列
25
LULU 形式形式1 1 1 1
1 2 1
( ) (n) (n)
nL LUA L L L A A
1
1
1
21
21
mm
m
nn
L
1
1
1
10
10
1
10
1
1
2231
21
2231
21
mmm
mmm =
26
例题分析例题分析
( )
( )
21 31 32
1
1 1 1 6 1 1 1 6
| 0 4 1 5 0 4 1 5
2 2 1 1 0 4 1 11
1 1 1 6
0 4 1 5
0 0 2 6
( 1, , )
0, 2, 1,
kik
kikkk
A b
am i k na
m m m
例2:对于例 ,由增广矩阵表示消元过程有
由
故有
1 0 0 1 1 1
0 1 0 0 4 1 .
2 1 1 0 0 2
A LU
27
( ) ( )
ik
( ) ( )
( ) ( )
max{ , i,j k, k 1 , , n}
max{ , i k,
k k
ik ik kk
k k
kk ij
k k
kk ik
Gauss
m a a ma a
a a
为避免此种情况的发生,可通过交换方程的次序,选取绝对值大的元素作主元。基于这种想法导出了主元素法。
时避免 很小,从而只要取
称主元素 消去法;
或 k 1 , , n}
Gauss
称列主元 消去法。
高斯主元素消去法高斯主元素消去法( )
( )
0
0
kkk
kkk
a
a
在高斯法消元过程中可能出现 的情况,这时消去法
将无法进行;即使主元素 但很小,用其作除数,也会
导致其他元素数量级的严重增长和舍入误差的扩散。
28
例题分析例题分析
1
2
3
*
0.001 2.000 3.000 1.000
3 1.000 3.712 4.623 2.000
2.000 1.072 5.643 3.000
( 0.4904, 0.05104,0.3675)
1
0.001 2.000 3.000 1.000
| 1.000
T
x
x
x
x
A b
例 :阶方程组
四位有效数字精确解为解:()高斯消去法
21
22
32
10002000
1.997
3.712 4.623 2.000
2.000 1.072 5.643 3.000
0.001 2.000 3.000 1.000 0.001 2.000 3.000 1.000
0 2004 3005 1002 0 2004 3005 1002
0 4001 6006 2003 0 0 5.000 2.000
( 0.
mm
m
x
400, 0.09989,0.4000)T
29
例题分析例题分析(续)(续)
21
22
0.50000.0005
2
2.000 1.072 5.643 3.000
| 1.000 3.712 4.623 2.000
0.001 2.000 3.000 1.000
2.000 1.072 5.643 3.000
0 3.712 1.801 0.500
0 2.001 3.003 1.002
mm
A b
( )交换行,避免绝对值小的主元作除数。(列主元素法)
32 0.6300
2.000 1.072 5.643 3.000
0 3.712 1.801 0.500
0 0 1.868 0.687
( 0.4900, 0.05113,0.3678)
m
Tx
30
高斯列主元素消去法高斯列主元素消去法 .
, ,
, det .
1. det 1
1, 2, , 1 7
2
max .
3. 0, det 0,
4. 5
( ,
k
k
k
ij ij
i k ikk i n
i k
k
kj i j
Ax b
A m a x
b
k n
a a
a
i k
a a j k
算法:(列主元素消去法)设消元结果冲掉 乘数 冲掉 计算解
冲掉常数项 行列式值存放在
对于 做到第 步。.按列选主元素
如果 则 计算停止。
如果 则转 , 否则换行:1, , ), ,
det detkk ik n b b
。
31
高斯列主元素消去法高斯列主元素消去法(续)(续)
1
5. :
/ ( 1, , ) ( 1)
6.
( , 1, , )
( 1, , )
7. det det .
8.
/ ;
( ) / ( 1, 2, ,1).
9.
ik
ik ik ik kk ik
ij ij ik kj
i i ik k
kk
n n nn
n
i i ij iij i
m
a m a a i k n m
a a m a i j k n
b b m b i k n
a
b b a
b b a a i n n
计算乘数
消元计算:
回代求解:
det det .nna
32
高斯—若当消去法高斯—若当消去法
3
2
Gauss Jordan
A
n
消去对角线下方和上方的元素,此方法称消去法。G- J方法将 约化为单位矩阵,计算解就在常数项
得到,无需回代求解。计算量大约需 次乘除法,要比高
斯消去法大。G- J方法主要用途是求一个矩阵的逆矩阵。
1
1 2 3
5 G-J 2 4 5 .
3 5 6
1 2 3 1 0 0 3 5 6 0 0 1
| 2 4 5 0 1 0 2 4 5 0 1 0
3 5 6 0 0 1 1 2 3 1 0 0n
A A
A I
例 :用 法求 的逆矩阵
解:
33
高斯—若当消去法高斯—若当消去法(续)(续)
1
1 5 / 3 2 0 0 1/ 3
0 2 / 3 1 0 1 2 / 3
0 1/ 3 1 1 0 1/ 3
1 0 1/ 2 0 5 / 2 2
0 1 3/ 2 0 3/ 2 1
0 0 1/ 2 1 1/ 2 0
1 0 0 1 3 2
0 1 0 3 3 1 | .
0 0 1 2 1 0nI A
34
高斯消去法的变形高斯消去法的变形一、一、 LU LU 分解分解
1 1 1 1
1 2 1
( ) (n) (n)
nL LUA L L L A A
1
1
1
21
21
mm
m
nn
L
(1) (1) (1) (1) (1)
11 12 13 1 1(2) (2) (2) (2)
22 23 2 2(n)( ) (3) (3) (3)
33 3 3
( ) ( )
0
0 0
0 0 0
b
n
nn
n
n n
nn n
a a a a ba a a b
A a a b
a b
,
35
LU LU 分解分解设 A 为 n 阶方阵,若 A 的顺序主子式 Ai 均不为零,则矩阵存在唯一的 LU(Doolittle 杜利特尔)分解。
11 12 1n
21 22 2n
31 32
1 2 ( 1) nn
(
1
1
1 U
1n n n n
Gauss LU
A LU
L
u u ul u ul l
l l l u
由 消去法加上列主元 或全主元)有 分解:
36
直接计算 直接计算 A A 的 的 LU LU 分解分解(( 例例 ))
000
00
0
1
01
001
0001
44
3433
442322
14131211
434241
3231
21
44434241
34333231
24232221
14131211
uuuuuuuuuu
lllll
l
aaaaaaaaaaaaaaaa
uulululululululululuululuululululul
uuluuluululuuuu
44344324421441334323421341224212411141
34243214313323321331223212311131
2414212313212212211121
14131211
++++++
+++++
+++
37
直接计算 直接计算 A A 的 的 LU LU 分解分解 (( 例例 ) ) (续)(续)
uulululululululululuululuululululul
uuluuluululuuuu
44344324421441334323421341224212411141
34243214313323321331223212311131
2414212313212212211121
14131211
++++++
+++++
+++
n. , 3,i -
; - , - 2
n, 2,j , -
; - , - , - u2
n,2,i , ; , , 1
n, 1,j , ; , , , 1
2212i22i2
22124142422212313232
12122j
142124241321232312212222
111i1114141113131112121
11j1414131312121111
uulaluulaluulal
ulauulauulauulau
ualualualualauauauauau
)(
)()(l
l
u
i
jj
i
j
列
行列
行
38
一般计算公式一般计算公式
n , 2,i ,
n, 1,j ,
111i1
11
==
==
ualau
i
jj
n , , 1ki )/ (
n , ,k j
, ,3 ,2
kk
1-k
1mimik
1-k
1mkmkj
∑
∑
uulal
ulau
mkik
mjkj
nk 计算对
计算量与 Gauss 消去法同 .
39
LU LU 分解求解线性方程组分解求解线性方程组
1 1
2 221
31 32
1 2 ( 1)
1 111 12 1n
2 222 2n
nn
1
1
1
1
UX
n nn n n n
n n
y b
y b
LY b
y b
x y
x y
Y
x y
ll l
l l lu u u
u u
u
LY b , UX Y AX b
40
LU LU 分解求解线性方程组(续分解求解线性方程组(续11 ))
11
-1
1
, 2, 3, ,
1, Y
i
i iji jj
i n
y b
y yb l
解 :
1
ij ii ,
i n 1, , 1
2, x
nnn n
i
i jij n
yx u
yx u x u
解 :
41
LU LU 分解求解线性方程组(续分解求解线性方程组(续22 ))
1
2
3
1 2 3 14
2 5 2 18
3 1 5 20
1 0 0 1 2 3
2 1 0 0 1 4 .
3 5 1 0 0 24
(14,18,20) (14, 10, 72) ,
(14, 10, 72) (1,2,3) .
T T
T T
x
x
x
A LU
Ly y
Ux x
例:用直角三角分解法解
解:用分解计算公式得
求解
42
本讲结束本讲结束 !! 谢谢大家谢谢大家 ! !
再见再见 !!