2-1高斯(Gauss)消去法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2-1高斯(Gauss)消去法
一、消元过程
对线性方程组 Ax b 如果 det( A) 0
对其增广矩阵施行行初等变换:
A
(
A,
b)
记
(
A( 1 )
,
b(1)
)
a(1) 11
a(1) 21
a(1) 12
a(1) 22
a(1) n1
a(1) n2
a(1) 1n
a(1) 2n
b1(1) b2(1)
b( k 1) i
bi(k )
mik bk(k )
i, j k 1, , n i k 1, , n
当经过k n 1步后, ( A(1), b(1) )将化为
( A(1) , b(1) )
a(1) 11
( A(n) , b(n) )
由于 det( A) 0
a(1) 12
a(2) 22
a(1) 11
(
A(
2
)
,
b
(
2
)
)
0
a(1) 12
a(2) 22
0
a(2) n2
a(1) 1n
a(2) 2n
b1(1) b2( 2 )
a(2) nn
bn( 2
)
如果
a(1) 11
0
由于 det( A) 0
则 A的第一列中至少有一个 元素不为零
如
a(1) i11
0,则将( A(1) ,b(1) )的第一行与第i1行
n1
(n k )(n k 2)
k 1
全部回代过程需作乘除法的总次数为
n (n i 1) n2 n
i1
22
于是Gauss消去法的乘除法运算总的次数为
MD n3 n2 n n3 O(n2 )
3
33
当n很大时
MD n3 n2 n
3
3
n3
3
四、高斯消去算法
输入:
方程组的阶数 n;增广矩阵 A, b的元素aij ,1 i n,1 j n 1
S2 若ann 0,则输出方法失败的信息 ;停机. S3 置xn an,n1 / ann ;
对i n 1, n 2,...1,
n
ai,n1 aij x j
置xi
j i 1
aii
S4 输出x1, x2,..., xn ;停机.
作业:
P49 习题1
mik
a(k ) ik
a(k ) kk
i k 1, , n
第i行 第k行 mik ,则
a(k ) kk
a(k ) nk
Biblioteka Baidu
a(1) 1n
a(2) 2n
b(1) 1
b(2) 2
a(k ) kn
bk(
k
)
a(k ) nn
bn( k
)
a( k 1) ij
a(k ) ij
mik
a(k kj
)
输出
方程组的解 x1, x 2 ,
,
x
或方法失败的信息
n
步骤
S1 对 k=1,2,…,n-1 做 S11~S12 S11 若akk 0,则输出方法失败的信息 ;停机. S12 对i k 1,..., n
置aik aik / akk ; 对j k 1,..., n 1
置aij aij aik akj.
a(1) nn
bn(1)
假定
a(1) 11
0
定义行乘数
mi1
a(1) i1
a(1) 11
第i行 第1行 mi1 ,则
a(2) ij
a(1) ij
mi1a1(1j)
b(2) i
b(1) i
mi
b(1)
11
i 2,3, , n
i, j 2,3, , n i 2,3, , n
( A(1) , b(1) )
)
x
j
xi
j i 1
a(i) ii
i n 1, n 2, ,2,1
因此得到线性方程组 Ax b 的解
三、高斯消去法的计算量
作第k步消元时 乘法次数: (n k )(n k 1)次 除法次数: (n k )次
作第k步消元乘除法运算总次数为 (n k)(n k 2)次
完成全部n 1步消元需作乘除法运算总次数为
交换后消元
且
a(1) 11
0
a(1) 12
a(2) 22
a(1) 1n
a(2) 2n
b1(1) b2( 2 )
0
a(2) n2
a(2) nn
bn( 2
)
因此, 第k 1步后,( A(1) , b(1) )将化为
( A(1) , b(1) )
a(1) 11
a(1) 12
a(2) 22
( A(k ) , b(k ) )
a(1) 1n
a(2) 2n
b1(1) b2( 2 )
a(n) nn
bn( n )
可知
a(i) ii
0
i 1,2, , n
因此, 上三角形方程组 A(n)x b(n) 有唯一解
二、回代过程
由于
a(i) ii
0
i 1,2, , n
所以
xn
bn(n) a(n)
nn
b(i) i
n
a(i ij
一、消元过程
对线性方程组 Ax b 如果 det( A) 0
对其增广矩阵施行行初等变换:
A
(
A,
b)
记
(
A( 1 )
,
b(1)
)
a(1) 11
a(1) 21
a(1) 12
a(1) 22
a(1) n1
a(1) n2
a(1) 1n
a(1) 2n
b1(1) b2(1)
b( k 1) i
bi(k )
mik bk(k )
i, j k 1, , n i k 1, , n
当经过k n 1步后, ( A(1), b(1) )将化为
( A(1) , b(1) )
a(1) 11
( A(n) , b(n) )
由于 det( A) 0
a(1) 12
a(2) 22
a(1) 11
(
A(
2
)
,
b
(
2
)
)
0
a(1) 12
a(2) 22
0
a(2) n2
a(1) 1n
a(2) 2n
b1(1) b2( 2 )
a(2) nn
bn( 2
)
如果
a(1) 11
0
由于 det( A) 0
则 A的第一列中至少有一个 元素不为零
如
a(1) i11
0,则将( A(1) ,b(1) )的第一行与第i1行
n1
(n k )(n k 2)
k 1
全部回代过程需作乘除法的总次数为
n (n i 1) n2 n
i1
22
于是Gauss消去法的乘除法运算总的次数为
MD n3 n2 n n3 O(n2 )
3
33
当n很大时
MD n3 n2 n
3
3
n3
3
四、高斯消去算法
输入:
方程组的阶数 n;增广矩阵 A, b的元素aij ,1 i n,1 j n 1
S2 若ann 0,则输出方法失败的信息 ;停机. S3 置xn an,n1 / ann ;
对i n 1, n 2,...1,
n
ai,n1 aij x j
置xi
j i 1
aii
S4 输出x1, x2,..., xn ;停机.
作业:
P49 习题1
mik
a(k ) ik
a(k ) kk
i k 1, , n
第i行 第k行 mik ,则
a(k ) kk
a(k ) nk
Biblioteka Baidu
a(1) 1n
a(2) 2n
b(1) 1
b(2) 2
a(k ) kn
bk(
k
)
a(k ) nn
bn( k
)
a( k 1) ij
a(k ) ij
mik
a(k kj
)
输出
方程组的解 x1, x 2 ,
,
x
或方法失败的信息
n
步骤
S1 对 k=1,2,…,n-1 做 S11~S12 S11 若akk 0,则输出方法失败的信息 ;停机. S12 对i k 1,..., n
置aik aik / akk ; 对j k 1,..., n 1
置aij aij aik akj.
a(1) nn
bn(1)
假定
a(1) 11
0
定义行乘数
mi1
a(1) i1
a(1) 11
第i行 第1行 mi1 ,则
a(2) ij
a(1) ij
mi1a1(1j)
b(2) i
b(1) i
mi
b(1)
11
i 2,3, , n
i, j 2,3, , n i 2,3, , n
( A(1) , b(1) )
)
x
j
xi
j i 1
a(i) ii
i n 1, n 2, ,2,1
因此得到线性方程组 Ax b 的解
三、高斯消去法的计算量
作第k步消元时 乘法次数: (n k )(n k 1)次 除法次数: (n k )次
作第k步消元乘除法运算总次数为 (n k)(n k 2)次
完成全部n 1步消元需作乘除法运算总次数为
交换后消元
且
a(1) 11
0
a(1) 12
a(2) 22
a(1) 1n
a(2) 2n
b1(1) b2( 2 )
0
a(2) n2
a(2) nn
bn( 2
)
因此, 第k 1步后,( A(1) , b(1) )将化为
( A(1) , b(1) )
a(1) 11
a(1) 12
a(2) 22
( A(k ) , b(k ) )
a(1) 1n
a(2) 2n
b1(1) b2( 2 )
a(n) nn
bn( n )
可知
a(i) ii
0
i 1,2, , n
因此, 上三角形方程组 A(n)x b(n) 有唯一解
二、回代过程
由于
a(i) ii
0
i 1,2, , n
所以
xn
bn(n) a(n)
nn
b(i) i
n
a(i ij