线性方程组有解的判别定理

合集下载

线性代数第三章线性方程组第4节线性方程组解的结构

线性代数第三章线性方程组第4节线性方程组解的结构

c1
1 0
c2
0 1
k1
1 1
k2
2 2
1
0
0
1
得 c1 k2
cc12
k1 k1
2k2 2k2
c1 k2
即 c1 k2 0
cc12
k1 k1
2k2 2k2
0 0
c1 k2 0
解得 c1 k2,c2 k2,k1 k2.

k2 k 0,
则方程组(Ⅰ)、(Ⅱ)的公共解为
(kk21
(k1 k2 )
k2 k2
)0 0
解之得到
k1 k2.
当k1 k2 0时,向量
k1(0,1,1, 0)T k2 (1, 2, 2,1)T k2[(0,1,1, 0)T (1, 2, 2,1)T
满足方程组(Ⅰ).
k2 (1,1,1,1)T
并且它也是方程组(Ⅱ)的解,故它是方程组(Ⅰ)与(Ⅱ)的 公共解.
定理3.17 若0是非齐次线性方程组AX=b的一个解,则方程组 AX=b的任意一个解 都可以表示为 0 其中 是其导出组AX=0的某个解,0称为方程组
AX=b的一个特解.
例7 求线性方程组
x1 2x2 3x3 x4 3x5 5
3x1
2x1 4x2
x2 2x4 6x5 1 5x3 6x4 3x5
0 0
x1 5x2 6x3 8x4 6x5 0
的一个基础解系.并求方程组的通解.
解 方程组中方程个数小于未知量的个数,所以方程组有 无穷多解.
对方程组的系数矩阵施以初等行变换,化为简化的阶 梯形矩阵:
3 1 6 4 2
A 2
2
3 5
3
1 5 6 8 6

线性代数及其应用第5节线性方程组的解

线性代数及其应用第5节线性方程组的解

x1
c1,r1
c1n
d1
xr
xr1
k1
cr,r1
1
knr
crn
0
dr
0
xn
0
1
0
可表示线性方程组的任一解,称之为线性方程组
的通解.
下面我们利用线性方程组有解的判别定理研究 线性方程组的解法.
由定理8的证明过程易得线性方程组的求解步 骤,现归纳如下:
Step1 对于非齐次线性方程组,把它的增广 矩阵 B 化成行阶梯形矩阵,从中可同时看出 R(A) 和R(B) . 若 R(A) < R(B) ,则方程组无解.
Step2 若 R(A) = R(B) ,则进一步把 B 化成行 最简形矩阵. 而对于齐次线性方程组,则把系数矩 阵 A化成行最简形矩阵.
0 1 2 2 6 3
0 0
0 0
0 0
0 0
0 0
b
a
2
例14 求下列齐次线性方程组的通解
x1 x2 x3 4x4 3x5 0,
2x1x1xx2 233xx3 352x4x45xx55
0, 0,
3x1 x2 5x3 6x4 7x5 0.

本若请本本若若请请本若请节想本单若请节节想想本单单若请节想本单若内请结节击想本单若内内请结结节击击想本单若内请结节击想本容单若束内请返结节击想本容容单若束束内请返返结节击想本容单若束内请返结节已击想本本容单若回束内请返结节已已击想本 本本容单若回 回束内请返结节已击想本本容单若回束内结请返结堂节已击想按本本容单若回束内结结请返结堂 堂节已击想按 按本本容单若回束内结请返结堂节已击想按本本容束单若回束课内结请返结钮堂节已击想按本本容束束单若回束课 课内结请返结钮 钮堂节已击想按本本容束单若回束课内结请返结本钮堂若节已击想按本,请本 本 本容束单若 若 若回束课.内结!请 请 请返结钮堂节已击想按本,,容束单回束课..内结!!返结钮堂节已击想按本,容束单回束节课.想内结!返结钮堂单节 节节已击想 想 想按本,容束单 单单回束课.内结!返结钮堂已击按本,容束回束课.内结!返结钮堂已击按本内,结容束回束课.击内 内内!结返结 结 结钮堂已击 击击按本,容束回束.课结!返钮堂已按本,容束回束课.结!返钮堂容束已按本,返容容 容束回束 束 束课.结!返返 返钮堂已按本,束回课.结!钮堂已按本,束回课.已本结!钮堂回已 已已按本本本,束回 回回课.结!钮堂按,束课.结!钮堂按,结堂束课.按结结结!钮堂堂堂按按按,束课.!钮,束课.!钮束课,钮束束束课课课.!钮钮钮,.!,.,!.,,,!...!!!

2.6线性方程组解的一般理论

2.6线性方程组解的一般理论

x4
0
,
1
,
0
x5 0 0 1
2 2 6
1
1
5
1
1
,2
0
,3
0
0
1
0
0
0
1
一般解 c11 c22 c33
(c1, c2, c3为任意常数.)
8
三、非齐次线性方程组解的结构
x11 x22 xnn (I) 0 (II)
第二章 线性方程组 §2.6 线性方程组解的一般理论
一、线性方程组有解的判定定理 二、齐次线性方程组解的结构 三、非齐次线性方程组解的结构
1
一、线性方程组有解的判定定理
定理1 线性方程组 x11 x22 xnn (I) 有解
r( A) r( A) 推论1 线性方程组(I)无解 r(A) r( A) 推论2 线性方程组(I)有唯一解 r(A) r(A) n 推论3 线性方程组(I)有无穷多解 r(A) r(A) n
方程组的三个解向量 1,2 ,3满足
1
0
1
1 2 2, 2 3 1, 3 1 0
3
1
1
求 非 齐 次 线 性 方 程 组 一 的 般 解.
19
解 A是m 3矩阵, r(A) 1,
导出组的基础解系中有 含3 1 2个线性无关的解向量.
令1 2 a, 2 3 b, 3 1 c,则
其中k1 , k 2为任意实数.
21
A
2 1
3 0
1 2
1 2
3 6
0 0
0 0
1 0
1 0
1 0
5 0
0
0
4
5
3

线性方程组与矩阵秩的若干问题

线性方程组与矩阵秩的若干问题

引理4 对任意 ( AB)、( BC ),有
0 r BC AB B
r ( AB) r ( BC r (( I ( BC )( BC ) ) B( I ( AB) ( AB))) r ( B) r ( ABC )
定理2 在Frobenius不等式中,对任意 ( AB) 、
( BC ),有
r ( ABC ) r ( AB) r ( BC ) r ( B) ( I ( BC )( BC ) ) B( I ( AB) ( AB)) 0
参考文献
[1] 陈志杰. 高等代数与解析几何[M]. 北京: 高等教育出 版社, 2000. [2] 丘维声. 高等代数(第二版) [M]. 北京: 高等教育出版 社, 2002. [3] 胡付高. 关于一类矩阵秩的恒等式注记[J]. 武汉科技 大学学报, 2004, 27(3): 322-323. [4] 吕登峰, 刘 琼等. 矩阵秩的Sylvester与Frobenius 等式问题[J]. 孝感学院学报, 2006, 26(6): 62-65.
Sylvester不等式:
r ( A) r ( B) n 剟r ( AB) min(r ( A), r ( B))
Frobenius不等式:
r ( AB) r ( BC ) r ( B) „ r ( ABC )
问题:
在这两个不等式中等号成立的条件是什么?
即以下等式成立的条件分别是什么?
这样, L1 与 L2 的位置关系取决于线性方程组
a1 x b1 y c1 z d1 0 a x b y c z d 0 2 2 2 2 a3 x b3 y c3 z d 3 0 a4 x b4 y c4 z d 4 0

4.1 线性方程组有解的条件

4.1 线性方程组有解的条件

(1) 0, 3, R( A) R(B) 3, 方程组有唯一解; 故: (2) 0, R( A) 1, R(B) 2, 方程组无解;
(3) 3, R( A) R(B) 2, 方程组有无限多个解。
1 1 2 3 1 0 1 1
此时
B
r
0
3
3
6
r
0
1
1
2
,
0 0 0 0 0 0 0 0
x1 1 1 1 2
x2 x3
c1
1
0
c2
0
2
0
1 2
, c1
, c2
R.
x4 0 1 0
例4
对于线性方程组
(1 x1
)
(1
x1
)
x2 x2
x3 x3
0, 3,
书本P112,T6
x1 x2 (1 )x3 ,
问取何值时,有解?有无穷多个解? 并求无穷多解的通解。
c1n d1
c2n
d2
M M
crn
dr
0 0
d
r 1
0
M M
0 0
初等变换不改变矩阵的秩,故有:R( A) R( A) r,
增广矩阵B 通过初等行 变换化为阶
梯型矩阵B
R(B)
R(B)
r, r
1,
当dr1 0, 当dr1 0.
故:
方程组(1)有解的充分必要条件为 dr1 0 ,此时R(A)=R(B)。
令 x3 c1, x4 c2,把它写成通常的参数形式
x1
21
4 3
c2
,
x3 c1,
x4
c2 ,
5

高等代数3.5 线性方程组有解判别定理

高等代数3.5 线性方程组有解判别定理

1 , 2 , …, r 也是 1 , 2 , …, r , 的一个级大线 性无关组,因此向量 可以经 1 , 2 , …, r 线性 表出,它当然可以经1 , 2 , …, n 线性表出.
因此,方程组 (1) 有解.
证毕
这个判别条件与消元法的关系
三、一般线性方程组的解法
同解.
当 r = n 时,由克拉默法则,方程组(4)有唯一
解,也就是方程组 (1) 有唯一解.
当 r < n 时,将方程组 (4) 改写为
a11x1 a1r xr b1 a1,r1xr1 a1nxn ,
a21x1 a2r xr
b2 a x 2,r1 r1 a2nxn ,
程组的增广矩阵化为行阶梯形
1 1 1 1 1 0
A

2

3 1
2 3 1
1 0 2
0 1 1 初等行变换
1 1
2 0
1 1

1 1 1 1 1 0 0 0 3 2 1 1

0 0
0 0
0 0
0 0
0 0
00
因为系数矩阵和增广矩阵的秩均为 2 ,所以方
a11 a12 a1n
A


a21 as1
a22 as2

a2n
asn

与增广矩阵
a11 a12 a1n b1
A


a21 as1
a22 as2

a2n asn
b2
bs

有相同的秩.
证明 先证必要性. 设线性方程组 (1) 有解,
就是说, 可以经向量组 1 , 2 , …, n 线性表出. 由此立即推出,向量组1 , 2 , …, n 与1 , 2 , …, n , 等价,因而有相同的秩. 这两个向量组分别

4.2线性方程组有无解的判定

4.2线性方程组有无解的判定
1


1
Q r ( A) = r ( A ) = 3, ∴ 原方程组有惟一解:x1 = −
λ
, x2 =
2
λ
, x3 =
λ −1 . λ
当λ
1 1 − 2 − 3 1 0 − 1 − 1 = −3 时, A → 0 − 3 3 6 → 0 1 − 1 − 2(行简化阶梯形矩阵) 0 0 0 0) 0 0 0 0
是否有解线性方程组的线性组合不是且表出方式不惟一的线性组合为何值时且表出方式惟一的线性组合为何值时的线性组合不能表为为何值时的线性组合不能表为方程组有惟一解故惟一线性表出为可由行简化阶梯形矩阵阶梯形矩阵方程组有无穷多解其一般解为且表出方式不惟一
§4.2 线性方程组有无解的判定 线性方程组的一般形式:
同解方程组为
5 5 x1 − x3 + x4 = 0 3 3 x + 7 x − 1 x = 1, 2 3 3 3 4
故一般解为
5 5 x1 = x3 − x4 3 3 ( x3 , x 4为自由未知量 ). x = 1− 7 x + 1 x , 3 4 2 3 3
1 −1 1 3 1 −1 2 −1 M 3 1 −1 2 −1 MM 3 →0 0 −5 2 −6 解(1) A = 4 −4 3 −2 M 6 → 0 0 −5 2 MM −6 = 4 1 −1 −3 1 M 1 0 0 −5 0 MM −2 0 0 0 2 (阶梯形矩阵)
⇔ r ( A) = r ( A ) = n,
有无穷多解 ⇔ r ( A) = r ( A ) < n.
解线性方程组的步骤: (1)利用矩阵的初等行变换将方程组的增广矩阵化 为阶梯形矩阵,判断是否有解. (2)有解时,继续利用矩阵的初等行变换将阶梯形 矩阵化为行简化阶梯形矩阵. (3)根据行简化阶梯形矩阵,写出方程组的解.

线性方程组解的判定与解的结构

线性方程组解的判定与解的结构

***学院数学分析课程论文线性方程组解的判定与解的结构院系数学与统计学院专业数学与应用数学(师范)姓名*******年级 2009级学号200906034***指导教师 ** 2011年6月线性方程组解的判定与解的结构姓名******(重庆三峡学院数学与计算机科学学院09级数本?班)摘 要:线性方程组是否有解,用系数矩阵和增广矩阵的秩来刻画.在方程组有解且有 多个解的情况下,解的结构就是了解解与解之间的关系. 关键词:矩阵; 秩; 线性方程组; 解引言通过系数矩阵和增广矩阵的秩是否相同来给出判定线性方程组的解的判别条件.在了解了线性方程组的判别条件之后,我们进一步讨论解的结构.对于齐次线性方程组,解的线性组合还是方程组的解.在线性方程组有无穷个解时可用有限多个解表示出来.另外以下还涉及到线性方程组通解的表达方式.1 基本性质下面我们分析一个线性方程组的问题,导出线性方程组有解的判别条件. 对于线性方程组11112211211222221122n n n n s s sn n sa x a x a xb a x a x a x b a x a x a x b ++⋅⋅⋅+=⎧⎪++⋅⋅⋅+=⎪⎨⋅⋅⋅⎪⎪++⋅⋅⋅+=⎩ (1)引入向量112111s αααα⎡⎤⎢⎥⎢⎥=⎢⎥⋅⋅⋅⎢⎥⎣⎦,122222s αααα⎡⎤⎢⎥⎢⎥=⎢⎥⋅⋅⋅⎢⎥⎣⎦,…12n n nsn αααα⎡⎤⎢⎥⎢⎥=⎢⎥⋅⋅⋅⎢⎥⎣⎦,12s b b b β⎡⎤⎢⎥⎢⎥=⎢⎥⋅⋅⋅⎢⎥⎣⎦ 方程(1)可以表示为1122n n x x x αααβ++⋅⋅⋅+=性质 线性方程组⑴有解的充分必要条件为向量β可以表成向量组α1,α2,…,αn 的线性组合.定理1 线性方程组⑴有解的充分必要条件为它的系数矩阵111212122212n n s s sn a a a a a a A a a a ⋅⋅⋅⎛⎫⎪⋅⋅⋅⎪= ⎪⋅⋅⋅ ⎪⋅⋅⋅⎝⎭与增广矩阵A =⎛⎝111212122212n ns s sna a a a a a a a a ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 12s b b b ⎫⎪⎪⎪⎪⎭有相同的秩.证明 先证必要性,设线性方程组(1)有解,就说说,β可以经过向量组1α,2α,⋅⋅⋅nα线性表出.由此立即推出,向量组1α,2α,⋅⋅⋅n α与向量组1α,2α,⋅⋅⋅n α,β等价,因而有相同的秩,这两个向量组分别是矩阵A 与A 的列向量组.因此矩阵A 与A 有相同的秩. 再证充分性,设矩阵A 与A 有相同的秩,就是说,它们的列向量1α,2α,⋅⋅⋅n α与1α,2α,⋅⋅⋅n α,β有相同的秩,令它们的秩为r. 1α,2α,⋅⋅⋅n α中的极大线性无关组是由r个向量组成,无妨设1α,2α,⋅⋅⋅r α是它的一个极大线性无关组.显然1α,2α,⋅⋅⋅r α也是向量组1α,2α,⋅⋅⋅n α,β的一个极大线性无关组,因此向量β可以经1α,2α,⋅⋅⋅r α线性表出,既然β可以经1α,2α,⋅⋅⋅r α线性表出,当然它可以经1α,2α,⋅⋅⋅n α线性表出.因此,方程组(1)有解.证毕定理2 对于线性方程组⑴,若()()R A R A r ==,则当r= n 时,有唯一解;当r< n 时,有无穷多解.证明 设D 是矩阵A 的一个不为零的r 级子式(当然它也是A 的一个不为零的子式),为了方便起见,不妨设D 位于A 的左上角.显然, A 的前r 行就是一个极大线性无关组,第r +1,…,s 行都可以经它们线性表出.因此,方程组⑴与11112211211222221122n n n n r r rn n ra x a x a xb a x a x a x b a x a x a x b ++⋅⋅⋅+=⎧⎪++⋅⋅⋅+=⎪⎨⋅⋅⋅⎪⎪++⋅⋅⋅+=⎩ (2)同解.当r =n 时,由克兰姆法则,方程组(2)有唯一解,即方程组⑴有唯一解.当r ﹤n 时,将方程组(2)改写为111122111,111211222222,1121122,11r r r r n n r r r r n nr r rr r r r r r rn n a x a x a x b a x a x a x a x a x b a x a x a x a x a x b a x a x ++++++++⋅⋅⋅+=--⋅⋅⋅-⎧⎪++⋅⋅⋅+=--⋅⋅⋅-⎪⎨⋅⋅⋅⎪⎪++⋅⋅⋅+=--⋅⋅⋅-⎩(3)(3)作为12,r x x x ⋅⋅⋅的一个方程组,它的系数行列式D≠0.由克兰姆法则,对于12,r x x x ⋅⋅⋅的任意一组值,方程组(3),也就是方程组⑴,都有唯一的解.由于自由未知量12,r x x x ⋅⋅⋅可任意取值,所以方程组(1)有无穷多个解. 证毕在解决了线性方程组有解的判别条件之后,我们进一步探讨线性方程组解的结构.所谓解的结构问题就是解与解之间的关系问题.上面我们提到,n 元线性方程组的解是n 维向量,在解不是唯一的情况下,作为方程组的解的这些问题之间有什么关系呢?我们先看齐次方程组的情形.设111122121122221122000n n n ns s sn n a x a x a x a x a x a x a x a x a x ++⋅⋅⋅+=⎧⎪++⋅⋅⋅+=⎪⎨⋅⋅⋅⎪⎪++⋅⋅⋅+=⎩ (4)是一齐次线性方程组,它的解所成的集合具有下面两个重要性质:性质1 两个解的和还是方程组的解.设()12,,,n k k k ⋅⋅⋅与()12,,,n l l l ⋅⋅⋅是方程组(4)的两个解.这就是说,把它们代入方程组,每个方程成恒等式,即10nij jj a k==∑ (i=1,2,...,s ), 10nij jj a l==∑ (i=1,2,...,s ), 把两个就解的和()1122,,,n n k l k l k l ++⋅⋅⋅+(5)代入方程组,得11()00n nijjijjj j a ck c a kc ====⋅=∑∑ (i=1,2,...,s )这说明(5)也是方程组的解. 证毕性质2 一个解的倍数还是方程组的解.设()12,,,n k k k ⋅⋅⋅是(4)的一个解,不难看出()12,,,n ck ck ck ⋅⋅⋅还是方程组的解,因为11()00n nijjijjj j a ck c a kc ====⋅=∑∑ (i=1,2,...,s )由性质1和性质2得:性质3 方程组(4)的解的任一线性组合还是(4)的解.2 基础解系定义 齐次线性方程组(4)的一组解,若满足 1) 12,,,r ηηη⋅⋅⋅线性无关;2)(4)的任一解可由12,,,r ηηη⋅⋅⋅线性表出. 则称12,,,r ηηη⋅⋅⋅为(4)的一个基础解系.3 基础解系的存在性定理1 在齐次线性方程组有非零解的情况下,它有基础解系,并且基础解系所含解向量的个数等于n r -,其中)(A R r =()r R A =.证:若()R A r n =<,不防设1112121222120r r r r rra a a a a a a a a ⋅⋅⋅⋅⋅⋅≠⋅⋅⋅⋅⋅⋅2,则方程组(4)与方程组11112211,11121122222,1121122,11r r r r n n r r r r n nr r rr r r r r rn n a x a x a x a x a x a x a x a x a x a x a x a x a x a x a x ++++++++⋅⋅⋅+=--⋅⋅⋅-⎧⎪++⋅⋅⋅+=--⋅⋅⋅-⎪⎨⋅⋅⋅⎪⎪++⋅⋅⋅+=--⋅⋅⋅-⎩(6) 同解,用n r -组数 (1,0,…,0), (0,1,…,0), …, (0,0,…,1)代入自由未知量11(,,,)r r n x x x ++⋯⋯,就得到(6)的解,也就是(4)的n r -个解()()()111121221222,1,2,,,,,1,0,,0,,,,0,1,,0,,,,0,0,,1r r n rn r n r n r r c c c c c c c cc ηηη----=⋅⋅⋅⋅⋅⋅⎧⎪=⋅⋅⋅⋅⋅⋅⎪⎨⋅⋅⋅⎪⎪=⋅⋅⋅⋅⋅⋅⎩则12,,,n r ηηη-⋅⋅⋅为方程组(4)的一个基础解系. ⅰ) 12,,,n r ηηη-⋅⋅⋅线性无关事实上,若11220n r n r k k k ηηη--+⋅⋅⋅+=,即1122n r n r k k k ηηη--+⋅⋅⋅+=()()12*,,*,,,,0,,0,0,0,,0n r k k k -⋅⋅⋅⋅⋅⋅=⋅⋅⋅⋅⋅⋅比较最后n r -个分量,得 120n r k k k -==⋅⋅⋅==. 因此, 12,,,n r ηηη-⋅⋅⋅线性无关.ⅱ) 任取方程组(4)的一个解()12,,,n c c c η=⋅⋅⋅,η可由12,,,n r ηηη-⋅⋅⋅线性表出. 事实上,由12,,,n r ηηη-⋅⋅⋅是方程组(4)的解知:1122r r n n r c c c ηηη++-+⋅⋅⋅+也为(4)的解,又1122r r n n r c c c ηηη++-+⋅⋅⋅+=(n r c c ,,,*,*,1 +)它与η的最后n r -个分量相同,即自由未知量的值相同,所以它们为 同一个解,即11r n n r c c ηηη+-=++…….由ⅰ) ⅱ)知,12,,,n r ηηη-⋅⋅⋅为(4)的一个基础解系. 证毕推论 任一与方程组(4)的某一基础解系等价的线性无关的向量组都是方程组(4)的基础解系.证明:12,,,t ηηη⋅⋅⋅为(4)的一个基础解系,12,,,s ααα⋅⋅⋅线性无关,且与12,,,t ηηη⋅⋅⋅等价,则s t =,且i α可由12,,,t ηηη⋅⋅⋅线性表出,即i α也为(4)的解向量.任取方程组(4)的一个解向量η,则η可由12,,,t ηηη⋅⋅⋅线性表出,从而η可由12,,,t ααα⋅⋅⋅线性表出.又12,,,t ααα⋅⋅⋅线性无关,所以12,,,t ααα⋅⋅⋅也是基础解系. 证毕4 基础解系的求法我们只要找到齐次线性方程组的n r -个自由未知量,就可以获得它的基础解系.具体地说,我们先通过初等行变换把系数矩阵化为阶梯形,那么阶梯形的非零行数就是系数矩阵的秩.把每一个非零行最左端的未知量保留在方程组的左端,其余n r -个未知量移到等式右端,再令右端n r -个未知量其中的一个为1,其余为零,这样可以得到n r -个解向量12,,,n r ηηη-⋅⋅⋅,这n r -个解向量12,,,n r ηηη-⋅⋅⋅构成了方程组的基础解系. 方程组(4)的任一解即通解可表为 1112,,,,t k k k k k P ηηη=+⋅⋅⋅+⋅⋅⋅∈例1 求齐次线性方程组1245123412345123453020426340242470x x x x x x x x x x x x x x x x x x +--=⎧⎪-+-=⎪⎨-++-=⎪⎪+-+-=⎩ 的一个基础解系.解 用初等行变换把系数矩阵化为阶梯形:1103111031112100222142634000312424700000----⎡⎤⎡⎤⎢⎥⎢⎥-----⎢⎥⎢⎥→⎢⎥⎢⎥---⎢⎥⎢⎥--⎣⎦⎣⎦, 于是r 3)(=A ,基础解系中有-n r=5-3=2个向量. "于是()3r A =,基础解系中有532n r -=-=个向量." 阶梯形矩阵所对应的方程组为124523454530222030x x x x x x x x x x +--=⎧⎪---=⎨⎪-=⎩ 移项,得1245245534532223x x x x x x x x x x x+-=⎧⎪-=+⎨⎪=⎩ 取351,0x x ==,得一个解向量 1(1,1,1,0,0)η=-; 取350,1x x ==,得另一解向量2751(,,0,,1)663η=.取351,0x x ==得一个解向量1(1,1,1,0,0)η=-; 取350,1x x ==得一个解向量1751(,,0,,1)663η=.12,ηη即为方程组的一个基础解系,方程组的全部解可表示为)(212221P k k k k ∈+ηη对于非齐次线性方程组解11112211211222221122n n n n r r rn n ra x a x a xb a x a x a x b a x a x a x b ++⋅⋅⋅+=⎧⎪++⋅⋅⋅+=⎪⎨⋅⋅⋅⎪⎪++⋅⋅⋅+=⎩ (7)令0,1,,i i s ==⋅⋅⋅,得111122121122221122000n n n ns s sn n a x a x a x a x a x a x a x a x a x ++⋅⋅⋅+=⎧⎪++⋅⋅⋅+=⎪⎨⋅⋅⋅⎪⎪++⋅⋅⋅+=⎩ (8) 称(8)为(7)的导出组.5 解的性质性质1 设12,ξξ为方程组(7)的两个解,则12ξξ-为其导出组(8) 的解.证明 ()112,,,n k k k ξ=⋅⋅⋅,()212,,,n l l l ξ=⋅⋅⋅是方程组(7)的两个 解,即11,, 1,2,...,nnij ji ij j i j j a kb a l b i s =====∑∑它们的差是12ξξ- =()1122,,,n n k l k l k l --⋅⋅⋅-, 显然有111()0, 1,2,...,nn nij jj ij j ij j i i j j j a kl a k a l b b i s ===-=-=-==∑∑∑即12ξξ-=()1122,,,n n k l k l k l --⋅⋅⋅-是导出组(8)的一个解. 证毕性质2 设ξ为方程组(7)的一个解,η为其导出组(8)的解,则ξη+仍为方程组(7)的解.证明 设ξ=()12,,,n k k k ⋅⋅⋅是方程组(7)的一个解,即1(1,2,)nij ji j a kb i s ===⋅⋅⋅∑又设η=()12,,,n l l l ⋅⋅⋅是导出组(8)的一个解, 即10(1,2,)nij jj a li s ===⋅⋅⋅∑显然111()0(1,2,)nnnij jj ij j ij j i i j j j a kl a k a l b b i s ===+=+=+==⋅⋅⋅∑∑∑.证毕6 解的结构定理 若0γ为(7)的一个特解,则方程组(7)的任一解γ皆可表成0γγη=+,其中η为其导出组(8)的一个解.从而有:方程组(7)的一般解为011n r n r k k γγηη--=++⋅⋅⋅+其中0γ为(7)的一个特解,12,,,n r ηηη-⋅⋅⋅为导出组(8)的一个基础解系.证明 显然00()γγγγ=+-,有性质1知,0γγ-是导出组(4)的一个解,令0γγη-=,则 0γγη=+.证毕推论 方程组(7)在有解的条件下,有唯一解⇔(7)的导出组(8)只有零解.7 求非齐次线性方程组(7)的一般解的步骤1)求出其导出组的基础解系12,,,t ηηη⋅⋅⋅ 2)求出其一个特解0γ3)方程组(7)的一般解为011t t k k γγηη=++⋅⋅⋅+. 例2 求解方程组1234123412340311232x x x x x x x x x x x x ⎧⎪--+=⎪-+-=⎨⎪⎪--+=-⎩ 解:221323112.0.5111101111011011/2111310024100021/211231/200121/200000r r r r r r r r r A -+-+------⎛⎫⎛⎫⎛⎫ ⎪ ⎪ ⎪=--−−−→-−−−→- ⎪ ⎪ ⎪ ⎪ ⎪ ⎪-----⎝⎭⎝⎭⎝⎭可见()()R A R A =,方程组有解,并有1243412212x x x x x =++⎧⎨=+⎩取240x x ==,则131/2x x == ,即得原方程组的一个特解0(1/2,0,1/2,0)γ=0(12,0,12,0)γ=.下面求导出组的基础解系: 导出组与 124342x x x x x =+⎧⎨=⎩同解.取241,0x x ==,得1(1,1,0,0)η=; 取240,1x x ==,得2(1,0,2,1)η=. 于是原方程组的通解为0112212,(,)k k k k R γγηη=++∈.参考文献1 北京大学数学系几何与代数小组教研室.高等代数(第三版)[M]. 北京:高等教育出版社,19642 同济大学数学教研室编.线性代数[M].第三版,北京:高等教育出版社,19993 谢帮杰.线性代数[M].北京:人民教育出版社,1978.4 北京大学力学系.高等代数[M].北京:人民教育出版社,19795 邓建中,刘之行.计算方法[M].西安:西安交通大学出版社,20016 赵德修, 孙清华.线性代数题解精选[M].武汉:华中科技大学出版社,2001The Determinant and Structure of Solution ofLinear equationsXingming ****(Class one of Grand 2009, Mathematics and Application Mathematics, College of Maths and Computering Science, Chongqing Three Goreges University )Abstract:Making use of the rank of coefficient matrix and augmented matrix to judge the solution of linear equations. The equations have to solve and a number of cases, the solution of the structure is to understand the relationship between work and solutions.Keywords:matrix; rank ; linear equations; solvement10。

第三章-线性方程组的解

第三章-线性方程组的解

线性代数——第 3章
所以方程组的通解为
x1 1 0 1 2 x2 = c 1 + c 0 + 0 . x3 2 0 4 2 1 2 其中c2 ,c4 任意. 0 1 0 x4
可写成矩阵方程:
Ax b
B ( A, b)
线性代数——第 3章

1 2 2 1 1 0 2 4 8 2 设A , b 3 2 4 2 3 3 6 0 6 4
求矩阵A及矩阵B ( A b)的秩.
线性代数——第 3章
定理1 (1) (2) (3)
n元线性方程组Ax=b
无解的充分必要条件是R(A)<R(A,b); 有唯一解的充分必要条件是R(A)=R(A,b)=n; 有无穷多个解的充分必要条件是R(A)=R(A,b)<n;
线性代数——第 3章
1 0 0 ~ B0 0 0 x1
5 x1 2c2 3 c2 , x 2c 4 c , 2 2 3 2 x c , 3 1 x4 c 2 ,
线性代数——第 3章
2、非齐次线性方程组 增广矩阵化成行阶梯形矩阵,便可判断其是否有 解.若有解,化成行最简形矩阵,便可写出其通解. 例2 求解非齐次线性方程组
线性代数——第 3章

对系数矩阵 A 施行初等行变换:
1 2 2 1 1 2 2 1 r2 2r1 A 2 1 2 2 0 3 6 4 1 1 4 3 r3 r1 0 3 6 4
d d

线性方程组有解

线性方程组有解

⎛1 ⎜ ⎜0 ⎜0 ⎜ ⎜0 ⎜0 ⎝ ⎛1 ⎜ 0 ( −1) r4 + r3 ⎜ → ⎜0 ⎜ ⎜0 ⎜0 ⎝
0 0 1 0 0 0
0 0 1 1 0 0
0 0 1 0 0 1 0 0
−2 5 ⎞ ⎛1 r + ⎟ (2−21) rr21+ r3 ⎜ 0 1 1 ⎟ ( −2) r2 + r4 ⎜ 1 −2 ⎟ → ⎜ 0 ⎜ ⎟ 2 −5 ⎟ ⎜0 ⎜0 ⎟ ⎝ 0 0⎠ ⎛1 0 0 7 ⎞ ⎟ r2 ↔ r3 ⎜ 0 1 1 1 ⎟ r3 ↔ r4 ⎜ 0 4 ⎟ → ⎜0 0 ⎜ ⎟ ⎜0 0 0 −7 ⎟ ⎜0 0 ⎟ ⎝ 0 0 ⎠
故秩A=秩 A 。
第三章 线性方程组
充分性。若秩A=秩 A, 于是向量组 α 1 , α 2 , , α n 与向量组 α 1 , α 2 , , α n , β 有相同的秩,设为 r。不妨设 α 1 , α 2 , , α r 是 α 1 , α 2 , , α n 的一个极大线性无关组。显然 α 1 , α 2 , , α r 也是
, amn )′, β = ( b1 , b2 , + xnα n = β
, bm )′ 是增广矩阵
—(3.5.2)
于是方程组(3.5.1)可表为: 的列向量,
x1α 1 + x2α 2 +
必要性。若方程组(3.5.1)有解, 由(3.5.2)知β可由
α 1 , α 2 , , α n 线性表示,因此向量组 α 1 , α 2 , , α n 与向量组 α 1 , α 2 , , α n , β 等价。 α 1 , α 2 , , α n 是A的列向量组, 1 , α 2 , α , α n , β 是 A 的列向量组,由于等价的向量组有相同的秩,

线性方程组的解

线性方程组的解

x1 x 2 xn
故方程组有唯一解, 故方程组有唯一解
= d1 , = d2 , M = dn ,
~ 3. 若R(A) =R(B)= r <n,则B中的 r+1= 0 中的d 则 中的 ~ 不出现),于是B对应的方程组 ),于是 对应的方程组B (或dr+1不出现),于是 对应的方程组
d1 d2 M dr d r +1 0 M 0
1. 若R(A)<R(B), 则r+1行对应矛盾方程 行对应矛盾方程0=1, < 行对应矛盾方程 故方程组无解. 故方程组无解 2. 若R(A) =R(B)= r = n,则B中的 r+1=0(或dr+1 中的d 则 ~中的 ( ~ 不出现), ),且 都不出现,于是B对应方程组 不出现),且bij都不出现,于是 对应方程组
由于参数c 可取任意值, 由于参数 1,···, cn-r可取任意值, 故方程组有 无限多个解.证毕. 无限多个解.证毕. 称为线性方程组的通解. 解(6)称为线性方程组的通解 称为线性方程组的通解
(6)
由定理4容易得出线性方程组理论中两个最 由定理 容易得出线性方程组理论中两个最 基本的定理: 基本的定理 定理5 定理5 n 元非齐次线性方程组 Am×n x = b 有解
的充分必要条件是系数 矩阵 A 的秩等于增广矩 阵 B = ( A, b ) 的秩.
定理6 定理 n 元齐次线性方程组 Am×n x = 0 有非零解
的充分必要条件是系数 矩阵的秩 R( A) < n.
下面把定理5推广到矩阵方程 下面把定理 推广到矩阵方程 定理7 矩阵方程AX=B有解的充分必要条件是 定理 矩阵方程 有解的充分必要条件是 R(A) =R(A, B) . 矩阵, 矩阵, 证 设A为m×n矩阵 X为n×l矩阵 则B为m×l 为 × 矩阵 为 × 矩阵 为 × 矩阵. 按列分块, 矩阵 把X和B按列分块 记为 和 按列分块

线性方程组有解的判别定理

线性方程组有解的判别定理

非齐次线性方程组同解的讨论摘要 本文主要讨论两个非齐次线性方程组有相同解的条件,即如何判定这两个非齐次线性方程组有相同的解.关键词 非齐次线性方程组 同解 陪集 零空间引言 无论是解齐次线性方程组,还是解非齐次线性方程组.所用的方法都是消元法,即对其系数矩阵或增广矩阵施以行的初等变换,而得到比较简单的同解方程组.用矩阵理论来说,就是系数矩阵或增广矩阵左乘以可逆矩阵后所得线性方程组与原线性方程组据有相同的解.这仅为问题的一面,而问题的反面是,如果两个非齐次线性方程组同解,则它们的系数矩阵或增广矩阵之间是否存在一个可逆矩阵?答案是肯定的,此即是本文主要解决的问题。

下面是一个非齐次线性方程组,我们用矩阵的形式写出11121121222212n n m m mn ma x a x a xb a x a x a x b a x a x a x b +++=⎧⎪+++=⎪⎨⎪⎪+++=⎩ 令 A= 111212122212n n m m mn a a a a a a a a a ⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦ ,b= 12m b b b ⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦。

即非齐次线性方程组可写成Ax b =。

一 、线性方程组同解的性质引理 1 如果非齐次线性方程组Ax b =与Bx d =同解,则矩阵[]A b 与[]B d 的秩相等.证明 设非齐次线性方程组Ax b =的导出组的基础解系为111,,,r ξξξ ,其中1r 为矩阵[]A b 的秩,再设非齐次线性方程组Bx=d 的导出组的基础解系为212,,,r ηηη ,其中2r 为矩阵[]B d 的秩,如果*η是非齐次线性方程组Ax=b 与Bx=d 特解,由于这两个方程组同解,所以向量组1*11,,,,r ξξξη 与向量组2*12,,,,r ηηηη 等价。

从而这两个线性无关的向量组所含的向量个数相等,于是有12,r r =则矩阵[]A b 与[]B d 的秩相等.引理[1]2 设A 、B 为m n ⨯矩阵,则齐次线性方程组0Ax =与0Bx =同解的充要条件是存在可逆矩阵P 使得PA B =.证明 充分性显然成立。

3.2 线性方程组解情况的判定

3.2 线性方程组解情况的判定

3
第三章 线性方程组
§3.2 线性方程组解情况的判定
阶梯阵的形状与线性方程组的解. ~ ~ [A, b] Ax = b 解的数目 Ax = b 2x1+3x2 x3 = 1 2x2+x3 = 2 0=1 x1x2+2x3 = 8 2x2 +x3 = 1 x3 = 5 x1+2x2+x3 + x4 = 2 x3+4x4 = 3 0=0 无解
Nanjing College of Information and Technology
13
第三章 线性方程组
§3.2 线性方程组解情况的判定
定理2 设(1) 所对应的齐次线性方程组的系数
矩阵为A , 则: (1) 当 R( A) n 时, 齐次线性方程组只有零解;
(2) 当 R( A) n 时, 齐次线性方程组有非零解, 且通解中含有 n R( A) 个自由未知量.
特别地, 若齐次线性方程组中方程的个数少于 未知量个数时, 必有非零解.
进行初等行变换,将其化成阶梯形矩阵:
cii 0
(2)
Nanjing College of Information and Technology
6
第三章 线性方程组
§3.2 线性方程组解情况的判定
或:
c11 0 0 0 0 c1, s 1 0 0 0 0 c1 s c1,t 1 c2 s c2,t 1 0 0 0 0 0 0 c1t c1n c2 t c2 n crt 0 0 crn 0 0 d1 d2 dr d r 1 0
a12 a22

线性方程组有解的判定定理

线性方程组有解的判定定理

设 RA RB rr n,
则 B 的行阶梯形矩阵中含 r 个非零行,
把这 r 行的第一个非零元所对应的未知量作为 非自由未知量,
其余n - r个作为自由未知量,
并令 n - r个自由未知量全取0,
即可得方程组的一个解.
证毕
小结 RA RB n Ax b有唯一解
RA RB n Ax b有无穷多解.
-5 3 4
3
0 0 0 0
即得与原方程组同解的方程组
x1 x2
2 2
x3 x3
5
3 4
3
x4 x4
0, 0,
由此即得
x1 x2
2
x3
5 3
x4
,
-2
x3
-
4 3
x4
,
( x3 , x4 可任意取值).
令 x3 c1, x4 c2,把它写成通常的参数形式
x1
2c1
5 3
解 对增广矩阵B进行初等变换,
1 - 2 3 - 1 1 B 3 -1 5 - 3 2
2 1 2 - 2 3
1 - 2 3 - 1 1
0 5 - 4 0 -1
0 50 -04 0 12
显然,R( A) 2, R(B) 3, 故方程组无解.
例3 求解非齐次方程组的通解
x1 x1
c2 ,
x2
-2c1
-
4 3
c2 ,
x3 c1,
x4
c2
,
5
x1 x2 x3 x4
c1
2 -2 1 0
c2
3 -4
3 0
1
.
例2 求解非齐次线性方程组
x1 3 x1

线性方程组解的判别与解的结构

线性方程组解的判别与解的结构

线性⽅程组解的判别与解的结构⼀.线性⽅程组求解定理1.线性⽅程组有解判别定理线性⽅程组a11 x1 + a12 x2 + … + a1n x n = b1 ,a21 x1 + a22 x2 + … + a2n x n = b2 , ......................................................as1 x1 + as2 x2 + … + asn x n = bs有解的充分必要条件是 : 它的系数矩阵与增⼴矩阵有相同的秩 .2. 齐次线性⽅程组a11 x1 + a12 x2 + … + a1n x n = 0,a21 x1 + a22 x2 + … + a2n x n = 0, ......................................................as1 x1 + as2 x2 + … + asn x n = 0有⾮零解的充分必要条件是: 它的系数矩阵的秩r ⼩于未知量个数n .齐次线性⽅程组求解⼀般步骤: 1.把系数矩阵通过初等变换,变换成阶梯形矩阵. 2.判断阶梯形矩阵中⾮零⾏的个数秩(r),以及计算⾃由元个数m=n-r. 3.确定⾃由元位置,然后以次为它们赋值1,0... 4.求解出⽅程组的基础解系. 5.⽤基础解系表⽰出⽅程全解.⾮齐次线性⽅程组求解,与齐次线性⽅程组求解过程基本⼀致,只需要再求出⼀个特解。

⼆.如何⽤C语⾔计算线性⽅程组的解 那么如何⽤算法求出线性⽅程组的解呢? 就是根据上⾯⽅程组求解⼀般步骤来的, 1.矩阵的初等变换(在上次⾏列式计算的基础上,这个很好实现). 2.求出矩阵的秩/⾃由元个数,然后确定⾃由元的位置(我认为这是⼀个难点) 3.初始化⾃由元(1,0,..),计算变量,最终求出基础解系 4.⾮齐次线性⽅程 4.1.先求出齐次线性⽅程组的基础解系 4.2.再利⽤上⾯步骤求⼀个特解即可1.矩阵的初等变换//初等⾏变换void primaryRowChange(int s, int n, double **array){int i,j,k,ii,kk,flag;double temp;for(i=0,j=0;i<s-1;i++,j++)//s⾏,最外围只需要变换s-1{ii=i;//如果⾏的⾸元为0,向下查找⼀个不为0的,然后换⾏if(*(*(array+i)+j) == 0){{if(*(*(array+k)+j)!=0)//第k⾏与第i⾏交换{for(kk=j;kk<n;kk++){temp=*(*(array+k)+kk);*(*(array+k)+kk) = *(*(array+i)+kk);*(*(array+i)+kk) = temp;}flag =1;break;}}//判断是交换成功,如果没有成功,则i--if(!flag){i--;continue;}i--;j--;continue;}for(;ii<s-1;ii++){if(*(*(array+ii+1)+j)==0)continue;temp =-*(*(array+ii+1)+j) / *(*(array+i)+j);for(k=j;k<n;k++)*(*(array+ii+1)+k) += *(*(array+i)+k) * temp;}}}2.计算矩阵的秩//计算矩阵的秩int getRank(int s, int n, double **array){int flag;int i,j,r=s;//判断⾮零⾏个数for(i=0;i<s;i++){flag=0;for(j=0;j<n;j++){if(*(*(array+i)+j)!=0 && (*(*(array+i)+j)>0.01 || *(*(array+i)+j) <-0.01))//排除很⼩数, {flag=1;break;}}if(!flag)//当前⾏全为零,则r为i;{r=i;break;}}return r;}3.确定⾃由元位置 ⾃由元确定需要考虑两种情况: 1).系数梯形矩阵最后⼀⾏只有⼀个⾮零元素. 2) 系数梯形矩阵中某⾏的个数等于⾃由元的个数.//获取⾃由元信息int* getFreeElement(int r, int n, double **array, int **matrixPrimary, double **matrixCalc) {int i,j,k,o,p,q;int m=n-1-r;//n-1:int *freeElement =(int*)malloc(m*sizeof(int));j=-1;//判断是否有为0的变量q=0;//如果当前⾏⾮零个数与⾃由元个数相等,则标记为1,⾃由元选择起始位置左移⼀位if(*(*(matrixPrimary+i)+1)==1)//说明第i⾏只有⼀个变量,如果是齐次⽅程它的解⼀定为0 {j=*(*(matrixPrimary+i)+0);for(k=0;k<r;k++)*(*(matrixCalc+k)+j)=*(*(array+k)+n-1) / *(*(array+k)+j);}else if(n-1-matrixPrimary[i][0]==m){q=1;}else if(n-1-matrixPrimary[i][0]>m){o=matrixPrimary[i][0];//当前⾏的⾸元位置p=0;//次数for(k=n-2-q;k>=o;k--)//从后向前查找⾃由元位置{if(k==j)continue;freeElement[p++]=k;if(p==m)//说明已经找到 m个⾃由元return freeElement;}}}return freeElement;}求解⽰例图:1> p148-例42> 2.7(1)-13> 2.7(2)-1.14> 2.7(2)-1.25> 2.7(2)-1.36> 2.7(3)-1.17> 2.7(3)-1.28> 2.7(3)-1.39> 2.7(3)-1.410> p155-例6以下是C语⾔求解的全部源代码#include <stdio.h>#include <stdlib.h>double undefined=-999;//标志位void main(){int i,j,s,n;int res;double **array,*temp,**result;//tempdouble t1[6]={1,1,1,1,1,0};double t2[6]={3,2,1,0,-3,0};double t3[6]={0,1,2,3,6,0};double t4[6]={5,4,3,2,6,0};int homogeneous=1;//标识⽅程是否是齐次⽅程void primaryRowChange(int s, int n, double **array);void printfDouble1Dimension(int n, double *array);void printfDouble2Dimension(int s, int n, double **array);int homogeneousResolve(int s, int n, int homogeneous, double **array, double **result); int nonHomegeneousResolve(int s, int n, double **array, double **result,double *special); //void printfInt2Dimension(int s, int n, int ** array);//int* getPrimary(int n,double *temp);//输⼊说明printf("输⼊说明:⾏数代表S个线性⽅程,N代表未知数及常数项.\n");printf("例如⽅程如下:\n");printf("1x-2y+3z=4\n");printf("-2x-4y+5z=10\n");printf("如下输⼊2⾏,4列:\n");printf("1 -2 3 4\n");printf("-2 -4 5 10\n\n");//开始printf("输⼊⾏数:");scanf("%d",&s);printf("输⼊列数:");scanf("%d",&n);//s=4;//n=6;//动态分配内存空间array =(double**)malloc(s*sizeof(double*));result =(double**)malloc(s*sizeof(double*));special =(double*)malloc(n*sizeof(double));for(i=0;i<s;i++){temp=(double*)malloc(n*sizeof(double));printf("请输⼊第%d⾏数组:",i+1);for(j=0;j<n;j++)scanf("%lf",temp+j);/*switch(i){case 0:temp=t1;//{1,1,1,1,1,0};break;case 1:temp=t2;//{3,2,1,0,-3,0};break;case 2:temp=t3;//{0,1,2,3,6,0};break;case 3:temp=t4;//{5,4,3,2,6,0};break;}*/array[i]=temp;}//打印数组printf("初等⾏列变换之前:\n");printfDouble2Dimension(s,n,array);//判断⽅程是否是齐次⽅程for(i=0;i<s;i++){if(*(*(array+i)+n-1)!=0)//如果最后⼀列,有不为0的说明⽅程为⾮齐次⽅程{homogeneous=0;break;}}primaryRowChange(s,n,array);printf("初等⾏列变换之后:\n");printfDouble2Dimension(s,n,array);if(homogeneous)//齐次{switch (res){case -1:printf("⽅程⽆解.\n");break;case0:printf("⽅程只有零解.\n");break;default:printf("⽅程的基础解系如下:\n");printfDouble2Dimension(res,n-1,result);break;}}else//⾮齐次{res=nonHomegeneousResolve(s,n,array,result,special);if(res==-1)printf("⽅程⽆解.\n");else{printf("⽅程的基础解系如下:\n");printfDouble2Dimension(res,n-1,result);printf("⽅程的特解如下:\n");printfDouble1Dimension(n-1,special);}}system("pause");}//初等⾏变换void primaryRowChange(int s, int n, double **array){int i,j,k,ii,kk,flag;double temp;for(i=0,j=0;i<s-1;i++,j++)//s⾏,最外围只需要变换s-1{ii=i;//如果⾏的⾸元为0,向下查找⼀个不为0的,然后换⾏if(*(*(array+i)+j) == 0){flag=0;for(k=i+1;k<s;k++){if(*(*(array+k)+j)!=0)//第k⾏与第i⾏交换{for(kk=j;kk<n;kk++){temp=*(*(array+k)+kk);*(*(array+k)+kk) = *(*(array+i)+kk);*(*(array+i)+kk) = temp;}flag =1;break;}}//判断是交换成功,如果没有成功,则i--if(!flag){i--;continue;}i--;j--;continue;}for(;ii<s-1;ii++){if(*(*(array+ii+1)+j)==0)continue;temp =-*(*(array+ii+1)+j) / *(*(array+i)+j);for(k=j;k<n;k++)*(*(array+ii+1)+k) += *(*(array+i)+k) * temp;}}}//⾮齐次⽅程解的情况int nonHomegeneousResolve(int s, int n, double **array, double **result, double *special) {int i,j,k,l;int r1,r2;//系数矩阵/增⼴矩阵的秩int getRank(int s, int n, double **array);int homogeneousResolve(int s, int n, int homogeneous, double **array, double **result);r1=getRank(s,n-1,array);r2=getRank(s,n,array);if(r1!=r2)return -1;//⽆解//特解temp =(double**)malloc(r1*sizeof(double*));homogeneousResolve(r1,n,0,array,temp);for(i=0;i<n;i++)*(special+i)=*(*(temp)+i);return homogeneousResolve(r1,n,1,array,result);}//齐次⽅程解的情况int homogeneousResolve(int s, int n, int homogeneous, double **array, double **result){int i,j,k,l,o,p,flag;int r;//秩rankint m;//⾃由元个数int f;//最后⼀个⾮零⾏⾸元的位置double sum1=0,sum2=0;double *temp = (double*)malloc(n*sizeof(double));//临时⾏指针int **matrixPrimary;//存储矩阵⾸元位置及⾮零元个数double **matrixCalc;//计算基础解系int *freeElement;//⾃由元位置double **matrixTemp;//声明函数void printfDouble2Dimension(int s, int n, double **array);void printfInt2Dimension(int s, int n, int **array);int** getPrimary(int s, int n, double **array);int getRank(int s, int n, double **array);double** initMatrixCalc(int s, int n);int* getFreeElement(int r, int n,double **array, int **matrixPrimary, double **matrixCalc);void printfInt1Dimension(int n, int *array);void getPrimarySolution(int r, int n, int homogeneous, double **array, int **matrixPrimary, double **matrixCalc ,int *freeElement, double **result); //秩rankr = getRank(s,n,array);//判断解的情况m=n-1-r;if(m<0)return -1;//⽆解else if(m==0)return0;//只有零解else{//初始化计算矩阵matrixCalc = initMatrixCalc(r,n);//获取矩阵⾸元信息matrixPrimary = getPrimary(r,n,array);/*printf("打印计算矩阵:\n");printfDouble2Dimension(r,n,matrixCalc);printf("打印矩阵⾸元信息:\n");printfInt2Dimension(r,2,matrixPrimary);*/freeElement = getFreeElement(r, n, array, matrixPrimary,matrixCalc);//打印⾃由元位置//printf("打印⾃由元位置:\n");//printfInt1Dimension(m, freeElement);//计算基础解系getPrimarySolution(r, n, homogeneous, array, matrixPrimary, matrixCalc, freeElement ,result);//printfDouble2Dimension(m,n,result);return m;}}//init Matrix calcdouble** initMatrixCalc(int s, int n){int i,j;double **array=(double**)malloc(s*sizeof(double*));for(i=0;i<s;i++){array[i] =(double*)malloc(n*sizeof(double));*(*(array+i)+n-1)=1;{*(*(array+i)+j)=undefined;}}return array;}//计算矩阵的秩int getRank(int s, int n, double **array){int flag;int i,j,r=s;//判断⾮零⾏个数for(i=0;i<s;i++){flag=0;for(j=0;j<n;j++){if(*(*(array+i)+j)!=0 && (*(*(array+i)+j)>0.01 || *(*(array+i)+j) <-0.01))//排除很⼩数, {flag=1;break;}}if(!flag)//当前⾏全为零,则r为i;{r=i;break;}}return r;}//查找某⾏⾮零个数及⾸元位置int** getPrimary(int s, int n, double **array){int i,j;int num=0,index=0;int **result=(int**)malloc(s*sizeof(int*));int *temp;for(i=0;i<s;i++){temp =(int*)malloc(2*sizeof(int));num=0;index=0;for(j=0;j<n;j++){if(*(*(array+i)+j)!=0){if(num==0)index=j;num+=1;}}temp[0]=index;temp[1]=num;result[i]=temp;}return result;}//获取⾃由元信息int* getFreeElement(int r, int n, double **array, int **matrixPrimary, double **matrixCalc){int i,j,k,o,p,q;int m=n-1-r;//n-1:int *freeElement =(int*)malloc(m*sizeof(int));j=-1;//判断是否有为0的变量q=0;//如果当前⾏⾮零个数与⾃由元个数相等,则标记为1,⾃由元选择起始位置左移⼀位for(i=r-1;i>=0;i--)//查找⾃由元,及位置为0的{if(*(*(matrixPrimary+i)+1)==1)//说明第i⾏只有⼀个变量,如果是齐次⽅程它的解⼀定为0 {j=*(*(matrixPrimary+i)+0);for(k=0;k<r;k++)*(*(matrixCalc+k)+j)=*(*(array+k)+n-1) / *(*(array+k)+j);}else if(n-1-matrixPrimary[i][0]==m){q=1;}else if(n-1-matrixPrimary[i][0]>m)o=matrixPrimary[i][0];//当前⾏的⾸元位置p=0;//次数for(k=n-2-q;k>=o;k--)//从后向前查找⾃由元位置{if(k==j)continue;freeElement[p++]=k;if(p==m)//说明已经找到 m个⾃由元return freeElement;}}}return freeElement;}//计算基础解系void getPrimarySolution(int r, int n, int homogeneous, double **array, int **matrixPrimary, double **matrixCalc ,int *freeElement, double **result) {int i,j,k,l,p;int m=n-1-r;//⾃由元double sum1,sum2;double *temp,**matrixTemp;//计算基础解系for(i=0;i<m;i++){matrixTemp=(double**)malloc(r*sizeof(double*));//复制数组for(j=0;j<r;j++){temp =(double*)malloc(n*sizeof(double));for(k=0;k<n;k++)*(temp+k)=*(*(matrixCalc+j)+k);matrixTemp[j]=temp;}//设置⾃由元为0或1for(j=0;j<r;j++){*(*(matrixTemp+j)+freeElement[i])=1;//⾃由元为1for(k=0;k<m;k++){if(k!=i)*(*(matrixTemp+j)+freeElement[k])=0;//⾃由元为0}}//printfDouble2Dimension(r,n,matrixTemp);//计算for(j=r-1;j>=0;j--){p=*(*(matrixPrimary+j));//当前⾏起始位置for(k=p;k<n;k++){if(*(*(matrixTemp+j)+k)==undefined)//如果等于标志位,它可能是未知变量{sum1=sum2=0;for(l=p;l<n;l++){if(l==n-1){sum1=*(*(array+j)+l) * *(*(matrixTemp+j)+l);}else if(l!=k){sum2+=*(*(array+j)+l) * *(*(matrixTemp+j)+l);}}for(l=0;l<r;l++)*(*(matrixTemp+l)+k)=((homogeneous?0:sum1)-sum2)/ *(*(array+j)+k);//如果齐次sum1=0;//break;}}}result[i]=matrixTemp[0];//printfDouble2Dimension(r,n,matrixTemp);}}void printfDouble2Dimension(int s, int n, double **array) {//printf("%d,%d",s,n);int i,j;for(i=0;i<s;i++){for(j=0;j<n;j++){printf("%6.2lf",*(*(array+i)+j));}printf("\n");}}void printfDouble1Dimension(int n, double *array){int i;for(i=0;i<n;i++){printf("%6.2lf",*(array+i));}printf("\n");}//打印⼆维数组void printfInt2Dimension(int s, int n, int **array){int i,j;for(i=0;i<s;i++){for(j=0;j<n;j++){printf("%4d",*(*(array+i)+j));}printf("\n");}}//打印⼀维数组void printfInt1Dimension(int n, int *array){int i;for(i=0;i<n;i++){printf("%4d",*(array+i));}printf("\n");}View Code。

线性方程组有解的条件

线性方程组有解的条件

1 c1,r1 c1,r2 1 c2,r1 c2,r2ຫໍສະໝຸດ 1 cr,r1 cr,r2
00
0
00
0
c1n d1
c2n
d2


crn dr .
0 0


0 0
(2)
x1 2 x1
x2 2x3 x4 5, 3x2 x3 2x4 2,
4x1 5x2 3x3
7.
定理6.3 设含有n个未知量的线性方程组
(6.1)有解,其系数矩阵的秩为r.那么
(i) 当r = n 时,方程组有唯一解;
(ii) 当 r<n 时,方程组有无穷多个解.
6.2 线性方程组有解的条件
定理6.2(线性方程组有解判别定理) 线性方程组(6.1)有解的充分必要条件 是 其系数矩阵与增广矩阵有相同的秩.
例6.4 判断下列线性方程组是否有解
(1)
x1 x2 2x3 x4 3x5 1, 2x1 x2 2x32x46x52,
3x12x24x33x49x53;
推论6.3.1 齐次线性方程组有非零解的充分 必要条件是其系数矩阵的秩r小于未知量的个数n.
推论6.3.2 含有n个未知量n个方程的齐次线 性方程组有非零解的充分必要条件是其系数行列式 等于零.
推论6.3.3 如果在一个齐次线性方程组中,方
程的个数m小于未知量的个数n,那么这个方程组必
有非零解.
1 1 1 1 A行 1 1 0 0 0 0

线性方程组有解判别定理

线性方程组有解判别定理

x1 2bx2 x3 4
何时有解?何时无解?
在有解的时候求出它的一般解.
例2 讨论线性方程组是否有解?
x1 x2 x3 1
aa
ax1 bx2 2 x1 b2 x2 3 x1 b3 x2
cx3 d c2 x3 d c3 x3 d
2 3
a,b,c,d 各不相同.
四、作业 P
一、有解的判别定理
a11 x1 a12 x 2 L a1n xn b1
设线性方程组
aa2s11Lxx11L
a22 x2 L LLLL as2 x2 L
a2n xn LLLL asn xn
b2 bs
(1)
其系数矩阵A和增广矩阵 A 分别为
a11 a12 L
A
a21 L
a22 L
a1r L 0, arr
a11 x1 a12 x 2 L a1n xn b1
a21 x1 LL
ar1 x1
a22 x2 L LLLL ar2 x2 L
a2n xn LLLL arn xn
b2 br
例1 讨论线性方程组
ax1 x2 x1 bx2
x3 x3
4 3
所以,方程组(1)有解.
总之,线性方程组(1)有解 R( A) R( A).
并且,若 R( A) R(则A)(1)n有, 唯一解;
若 R( A) R(则A)(1)n有无穷多个解.

a11 L
若R( A) R( A) r, 且 r 级子式 L L
ar1 L
则方程组(1)与下面的方程组是同解的.
所以 R( A) R( A).
反过来,若 R( A) R( A),则
rank{1,2 ,L ,n } rank{1,2,L ,n, } 设 i1 ,i2 ,L ,ir 为1,2 ,L ,n 的一个极大无关组, 则 i1 ,i2 ,L ,ir 也为1,2 ,L ,n , 的极大无关组, ∴向量组 1,2 ,L ,n 与 1,2 ,L ,n , 等价, 从而 可由向量组 1,2 ,L ,n 线性表出,
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
§3-5 线性方程组有解的判别定理
用向量和矩阵的理论分析讨论线性方程 组是否有解的问题
设非齐次线性方程组
a11x1 a12x2 a1n xn b1
a2
1x1
a2
2x2
a2n xn

b2
(2)
as1x1 as2x2 asnxn bs

b2
as1 x1 as2 x2 asn xn bs
中, 如果方程式的个数大于未知元的个数
方程组是否无解?
2.对齐次线性方程组你能得到什么结论?
思考题答案
• 1.方程式的个数不能决定系数矩阵和增 广矩阵的秩,不能由此得到有关解的结 论.
• 2.齐次线性方程组恒有解,当系数矩阵的 秩小于未知元的个数时,线性方程组有无 穷多组解(非零解).
0
dr1

0 0 0 0
当dr1 0 时 R(A) R(A)线性方程组有解; 当dr1 0 时 R(A) R(A)线性方程组没有解。 当R(A) R(A)=r 时,线性方程组1( )独立 方程式的个数为 r,不妨设线性方程组1)( 同解与线性方程组
a11x1 a12x2 a1n xn b1
量方程
x1 1 x 2 2 x n n ,
则线性方程组有解的充
分必要条件是
向量 可以表示成向量组 线性组合。


1

2




n
记系数矩阵 为
a11 a12 a1n
A

a 21

a

s1
a 22 a 2n
a s 2 a sn

增广矩阵为
a11 a12 a1n b1
A

a 21

a

s1
a 22 a 2n b2
a s 2 a sn bs

用矩阵秩 可以得到
线性方程组有解判断定理:线性方程组有解的充分 必要条件是系数矩阵的秩与增广矩阵的秩相同,即
R(A)R(A)
证明:必要性
设线性方程组有解,就 有 c1 , c 2 , , c n
使得 c1 1 c 2 2 c n n
所以,向量组


12Fra bibliotek,,n

向量组




1

2,,
n
等价,
从而其向量组构成的矩 阵有相同的秩,
即 R ( A)= R ( A);
充分性:
如果 R ( A ) R ( A ),它们的列向量组
2 1 0 1
0 0
0 6 1 1 ; 0 1
性方程组没有解
.
R (A) 2,R (A ) 3
思考题
a11 x1 a12 x2 a1n xn b1
1.线

方程组a
21 x1

a22 x2
a2n xn
-4 0
-2 -4 9-
=(
1-

)2 - -
4
-2 9-
=( 1- )( - 1)( - 10 )
10 1时,线性方程组有唯一
解;
当 = 1时
A


1 2
2 4
- 2 - 4
-2 -4
1 1 2 0
4 - 2 0
a21x1 a22x2 a2n xn b2




ar1x1 ar2x2 arn xn br
a11 a1r 其中 0根据Crame法r 则,
ar1 arr 当r n时,线性方程组有解 唯; 一 当r n时,线性方程组可成 改写
a11x1a12x2a1rxr b1a1r1xr1a1nxn a21 x1a22x 2a2r xr b2a2r1xr1a2nxn ar1x1ar2x2arnxr br arr1xr1arnxn


1

2 ,



n


1

2 ,



n

的秩相同,令
R(A) R(A ) r,
不妨设


1

2 ,


r
是向量组


1

2 ,


的一个极大线性无关组
n

则它也是向量组


1

2 ,
,

n

极大线性无关组,
可由它线性表示
从而
可由


1

2 ,


线性表示
n
线性方程组有解。
作为 x1,x2,,xr的方程组,xr+ 任 1, 取xn 方程组1)(都有唯一解,性从方而程线 组的通解n中 r有 个自由未知量。
齐次线性方程组中系数矩阵的秩等于增广 矩阵的秩,所以齐次线性方程组总是有解.
EXAMPLE
( 2 - ) x 1 2 x 2 2 x 3 1 ,
引入向量
a 11
a 12
a 1 n
b1
1


a 21
a s1

,


2


a a
22

s2

,


,
n


a 2n
a sn

,



b2

b

s

则线性方程组可写成向
1.


2
x
1

(5

)x2

4 x3

2,


2 x1

4x2

(5

)x3


1
问 为何值时线性方程组有
解?
2- 2 - 2
2- 0 - 2
解: 2 5- - 4 = 2 1- - 4
- 2 - 4 5- - 2 1- 5-
2- 0 = 2 1-
• 用此定理进行线性方程组有没有解的讨 论时,一般用矩阵的初等行变换把线性 方程组的增广矩阵化成阶梯形矩阵
c11 c12 c1r c1n d1
0 c22 c2r c2n d2
A 初 等行变换




0 0 crr crn dr

0
0

0
2 - 2 1 0 0 0 0 0 0
R ( A ) R ( A ) 1 , 线性方程组有无穷多组
解,
当 = 10 时,
8 2 2 1 2 5 4 2 A 2 5 4 2 0 1 1 1
2 4 5 11 0 2 2 1
相关文档
最新文档