4.5 线性方程组解的结构
第4章 线性方程组解的结构
例1
回答所提问题.
x4 3 x5 0 x1 2 x 2 x1 2 x 2 x 3 3 x 4 8 x 5 0 2 x4 6 x5 0 2 x1 4 x 2 x 2x x 5x 2x 0 1 2 3 4 5
(向量形式)
其中,
j
( a 1 j , a 2 j , a mj ), j 1, , n .
-3-
定理4.1.1 对于非齐次方程组 A m n x b ( b 0 ) (4-1)
~ ~ ( 1 ) 有解 r ( A ) r ( A ) 无解 r ( A ) r ( A )
只要令
为三个线性无关的向量.
代入同解方程组(1)中求得
x1 , x 3
然后再拼成解向量.
必然是线性无关的, 从而也是基础解系.
由此得到下面关于齐次线性方程组的的解法二.
-17-
第一步: 同前(化系数矩阵为最简阶梯型) 第二步: 同前 第三步: 令
x1 2 x 2 x 4 3 x 5 x3 4 x4 5 x5
-19-
例2 : 求下列齐次方程组
x1 3 x1 2 x1 x1
解:A 1 3 2 1
2 6 5 2
2 x2 6 x2 5 x2 2 x2
3 10 7 4
第四章 线性方程组的解的结构
§1 线性方程组解的存在性定理
§2 齐次线性方程组解的结构 §3 非齐次线性方程组解的结构
§4 线性方程组在几何中的应用
1
§4.1 线性方程组解的存在性定理
4.5线性方程组解的结构
若R(A)=R(B)<n,无穷多解,转4)
3) 将增广矩阵的行阶梯形继续化为行最简形,并 据此写出同解方程组,进而求出方程组的唯一解 4) 将增广矩阵的行阶梯形继续化为行最简形,并据此 写出同解方程组,将n-R(A)个自由未知变量移到等式右边。 令自由未知变量全为0,求得AX=b的一个特解U0 ;求得相应 齐次线性方程组AX=0的基础解系V1,V2,…,Vn-R(A) 。则通解为 V= U0 +k1V1+k2V2+…+kn-R(A)Vn-R(A)
n元线性方程组 AX=0的求解步骤(先求通解再求基础解系):
1) 将系数矩阵A化为行阶梯形,求出R(A) 2) 若R(A)=n,则只有零解
若R(A)<n,转3) 3) 将系数矩阵的行阶梯形继续化为行最简形,并 据此写出同解方程组,将行最简形中每行的首非零元所 在列对应的未知数放在方程等式的左边,将其余的未知 数都移到方程等式的右边,并作为可任意取值的参数, 然后写出带参数的通解。
系,证明: 1 1 2 1 2 3也是方程组的基础解系。 证:令 1 1 , 2 1 2 , 3 1 2 3 .它们显然都
1 , 2 , 3 也是方程组 AX 0 是1 , 2 , 3的线性组合,所以,
的解向量,下面只需证明 1 , 2 , 3 线性无关即可。
n元线性方程组 AX=0的求解步骤(先求基础解系再求通解):
1) 将系数矩阵A化为行阶梯形,求出R(A)
2) 若R(A)=n,则只有零解
若R(A)<n,转下一步 3) 将系数矩阵的行阶梯形继续化为行最简形,并 据此写出同解方程组,将行最简形中每行的首非零元所 在列对应的未知数放在方程等式的左边,将其余的未知 数都移到方程等式的右边,这些未知数称为自由未知数, 自由未知数共有n-R(A)个。 n-R(A)个 4) 分别令自由未知数取值为 将它们依次代入方程组,求得n-R(A) 个线性无关的解V1,V2,…,Vn-R(A) ,
线性方程组的参数化形式和解的结构
线性方程组的参数化形式和解的结构线性方程组是高等数学中的一个重要概念,其在各种领域中都有广泛的应用,包括物理、工程、计算机科学等。
在研究线性方程组的参数化形式和解的结构时,我们需要掌握基本的概念及其相关的定理,同时还需要深刻理解它们之间的关系。
本文将探讨线性方程组的参数化形式及其解的结构。
一、线性方程组的基本概念首先,我们需要了解线性方程组的基本概念。
一般来说,一个线性方程组包含n个未知量x1,x2,…,xn,以及m个线性方程。
一般可以表示为:a11x1 + a12x2 + … + a1nxn = b1a21x1 + a22x2 + … + a2nxn = b2…am1x1 + am2x2 + … + amnxn = bm其中,a11,a12,…,anm是方程的系数,b1,b2,…,bm是常数,x1,x2,…,xn是未知量。
此外,方程组中的每个方程都是线性的,可以总结为以下两种基本形式:ai1x1 + ai2x2 + … + ainxn = biai1x1 + ai2x2 + … + ainxn = 0其中,第一种形式是常数项不为零的一般形式,第二种形式是常数项为零的齐次形式。
我们在研究线性方程组的参数化形式和解的结构时,主要关注齐次形式。
二、线性方程组的参数化形式对于一个线性齐次方程组,其形式为:a11x1 + a12x2 + … + a1nxn = 0a21x1 + a22x2 + … + a2nxn = 0…am1x1 + am2x2 + … + amnxn = 0我们将其表示为一个矩阵方程Ax=0,其中:A = (a11 a12 … ana21 a22 … an… … … …am1 am2 … amn)x = (x1 x2 … xn)T其中,T表示矩阵的转置。
我们可以看出,该矩阵是m行n列的矩阵,其秩为r(A)。
根据线性代数的基本定理,其零空间的维数为n-r(A)。
在此基础上,我们可以给出线性齐次方程组的参数化形式:x = c1α1 + c2α2 + … + cmαm其中,c1,c2,…,cm是任意常数,α1,α2,…,αm是满足Ax=0的n维列向量。
线性方程组解的结构
性质2 若 X v 为AX o 的解,c为实数,则
X cv 也是 AX o 的解.
证 因
Av o
A(cv ) cAv c o o
结论:若 v1 , v2 ,, vs 是齐次线性方程组
AX=o的解,则 v1 , v2 ,, vs 的线性组合
c1v1 c2v2 cs vs
r2 r1 r3 r1
1 1 1 1 0 0 2 4 0 0 1 2
1 r2 2 r3 r2
1 1 1 1 1 1 0 1 r1 r2 0 0 1 2 0 0 1 2 0 0 0 0 0 0 0 0
现对 xr 1 , , xn 取下列 n r 组数:
1 x r 1 xr 2 0 , 0 x n
0 1 , 0
0 0 , . 1
1 1 0 1 1 1 1 1 0 1 r2 2 r1 r2 0 0 1 2 1 0 0 1 2 r3 r2 2 0 0 0 0 0 0 0 0 0 可见r ( A) r ( A, b) 2, 故方程组有解, 并有
证
于是
Au1 b, Av1 o
A(u1 v1 ) Au1 Av1 b o b
所以, X u1 v1 是方程组 AX b的解.
定理2 若 v1 , v2 ,, vn r 为导出组AX=o的一个 基础解系, u1 为非齐次线性方程组AX=b X
的任意一个解,则A c1v1 c2v2 cn r v n r , (c1 , c2 , , cn r )
《线性代数》(四川大学原稿) §4.5 齐次线性方程组有非零解的条件及解的结构
x1 x4 20 x5 x x 5 x , 2 4 5 x 2 x 5 3
6
令x4 1, x5 0, 解得X1 1 1 0 1 0 ,
T
19
证 设X1 , X 2 ,
, X nr(I)为AX=0的一个基础解系.
( i ) 设1 , 2 ,
, t(II)为AX=0的任意一个基
础解系,则(I)与(II)皆线性无关且可以相互 线性表示,故t=n-r;
(ii ) AX=0的任意n-r+1个解可由含n-r个 向量的(I)线性表示,故线性相关;
... k1n
1 ... 0 k2,r 1 k2,r 2 ... k2 n ... ... ... ... ... ... ... 0 ... 1 0 ... 0 ... ... ... 0 ... 0 kr ,r 1 kr ,r 2 ... krn 0 ... 0 0 ... 0 ... ... ... 0 ... 0
设X=(c1 ,
, cr , cr+1 ,
, cn )为AX=0(BX=0)的 c n X n r , 0)
T
任意解,则 X-cr+1 X 1 c r+2 X 2 (d1 , d 2 , , d r , 0,0,
为B0
ax0ax0iiiax0ax0ax0nrax0是齐次线性方程组的基础解系所含向量个数故可考虑利用齐次线性方程组的解的由基础解系于是可由线性表示即是也为满秩矩阵所以所以的余子式也为零从而全部为零所以阶子式则知所有的是自由变量分别代入值1001解出基础解系
§5 齐次线性方程组有非零解的条件及解 的结构
线性代数—线性方程组解的结构
r ( A) = r ( A ) = 2 < n = 4 ,
为自由未知量, 所以有无穷多解。 所以有无穷多解。 选 x3 , x4 为自由未知量,
16
0 1 4 − 3 5 − 2 → 0 − 7 5 − 9 0 , 选 x3 , 5 0 0 0 0 0 0
为自由未知量, x4 为自由未知量,
第五节
1
回顾: 回顾:
线性方程组 Ax = b 有解的充分必要条件是
r(A = r(A) . )
其中 A = ( A, b) 为增广矩阵。 为增广矩阵。 在有解的情况下, 在有解的情况下,
当 r ( A) = n 时有唯一解; 时有唯一解;
时有无穷多解; 当 r ( A) < n 时有无穷多解;自由未知量个数为 n − r (A) .
1 2 1 −1 1 1 4 −3 5 −2 解 A = 3 − 2 1 − 3 4 → 0 −7 5 −9 5 1 4 − 3 5 − 2 0 −14 10 −18 10
1 4 − 3 5 − 2 →0 − 7 5 − 9 5 , 0 0 0 0 0
1 1 5 −9 导出组的基础解系: 导出组的基础解系: ξ 1 = , ξ 2 = , 7 0 0 7 6 7 −5 7 所以全部解为 x = ξ 0 + k 1ξ 1 + k 2ξ 2 , ξ 特解: 特解: 0 = , 0 k1 ,k2 任意。 任意。 0
1 3 A= 0 5
1 1 1
1 1 1 1 1 1 2 1 1 − 3 0 − 1 − 2 − 2 − 6 → 0 1 2 2 6 1 2 2 6 0 − 1 − 2 − 2 − 6 4 3 3 − 1
线性方程组解的结构(课堂PPT)
0
0
1.基础解系不惟一
x
k1
0 0
k2
4 1
k3
-5 0
2.但所含向量的 个数唯一且等于n-R(A)
0
0
1
1
2
3
1,2 ,3 是解吗? 1,2,3 线性无关吗?
任一解都 可由 1,2 ,3 表示吗? 1 ,2 ,3是基础解系吗?
基础解系所含向量的个数 = ?
-7-
例3 设 AmnBnl O ,证明 r( A) r(B) n 重要结论
证 记 B [1, 2 , , l ] 则由 AB O A i 0(i 1, , l) 说明 i (i 1, , l) 都是 Ax 0 的解 因此 r[1, 2 , , l ] r( N ( A)) n r( A)
齐次方程组解的结构定理
齐次方程组 Amn X 0 的基础解系所含向量个数为 n r ( r R( A) )
设一个基础解系为: 1 ,2 , ,n r 则通解为: x k11 k22 kn rn r (ki R)
例2.设n阶矩阵A的秩为n-1,A的每行元素之和 为零,写出AX=0的通解. 解: Ann X 0 的基础解系所含向量个数为 n R( A) 1
对于齐次方程组 Amn x 0
只有零解 r( A) n (有非零解即有无限多解 r( A) n)
-3-
第四章
线性方程组解的结构
§4.1 线性方程组解的存在性定理 §4.2 齐次线性方程组解的结构 §4.3 非齐次线性方程组解的结构 §4.4 线性方程组在几何中的应用
-4-
§4.2 齐次线性方程组解的结构
设 是(1)的一个解(固定), 则对(1)的任一解 x x 是 (2)的解,从而存在 ki 使得 x k11 k22 kn rn r x k11 k22 knrnr 其中1,2, ,nr为(2)的基础解系, 由此得:
线性方程组解的结构(1)
0
0
0
0
相应的同解方程组为:
相应的同解方程组为:
x1 x3
x2
4x5 x5
x 4 0
令自由未知量
x2 x5
1 0
,
0 1
,
得基础解系
1
4
1
0
0 , 1 ,
1
0
2 0
0
1
所以, 通解为= c11c22c1,c2R.
※ ※ 一般常用齐次线性方程组 AX=0 的基础解 系所含向量个数 n-r(A) 与系数矩A的秩的关系 证明矩阵的秩。
4 0 0
0
,
4
,
0
0 0 4
x1
9 4
x3
3 4
x4
1 4
x5
x2
3 4
x3
7 4
x4
5 4
x5
9
3
1
3
7
5
得基础系: 4 , 0 , 0
1
0
2
4
3
0
0
0
4
※ 求基础解系的两种方法: (1) 求出通解后写成向量形式找出基础解系; (2) 分别取自由变量为一组线性无关的向量,
其中 xr1,xr2, ,xn是自由未知量,分别取
xr1 1 0 0
x
r2
0
,
1
,
,
0
xn
0
0
1
得到方程组AX=0的 n r 个解:
n-r个 n-r维 向量。
b1r 1
b
2
r
1
b1r 2
b
2
r
2
线性方程组解的结构
例
x 1 − x 2 − x 3 + x 4 = 0, 求解方程组 x1 − x 2 + x 3 − 3 x 4 = 1, x − x − 2 x + 3 x = −1 2. 2 3 4 1
对增广矩阵作初等行变换
1 3 1 1 初等行变换 1 3 − 3 2 5 − 2 1 1
的基础解系及通解. 的基础解系及通解. 解
2 1 4 2 A= −1 − 2 0 0
23
1 0 0 0
2 0 0 0
0 1 0 0
0 0 1 0
2 − 1 0 0
(1)
x1 b a11 a12 L a1n 1 2 a21 a22 L a2n X = x2 , β = b 若记 A= M M , M M M x b a am2 L am n m n m1
5
二、齐次线性方程组的解
设有齐次线性方程组
+ a11x1 +a12x2 +L a1nxn = 0 a x +a x +L a x = 0 + 2n n 21 1 22 2 L L L L L L L L L L L L am1x1 +am2x2 +L amnxn = 0 +
1 − 1 − 1 1 1 1 − 1 − 1 r3 − 2 r2 r2 − 2 r1 4 A = 2 −5 3 2 r − 7r 0 − 7 5 1 3 1 7 − 14 10 8 r2 × ( − ) 7 − 7 3 1 7
21
x = k1ξ1 +k2ξ2 +L kn−rξn−r +η∗, +
线性方程组的解结构
通过迭代更新雅可比矩阵和常数项,逐步逼近方程的解。
03
线性方程组的解的结构
解的唯一性
唯一性定理
对于给定的线性方程组,如果其系数矩阵的行列式不为零,则该 方程组有唯一解。
唯一性条件
线性方程组有唯一解的充分必要条件是其系数矩阵的秩等于增广 矩阵的秩。
唯一性判定
可以通过计算系数矩阵的行列式值或比较系数矩阵与增广矩阵的 秩来判断线性方程组是否有唯一解。
03
其中 (a_1, a_2, ..., a_n) 是已知数,(x_1, x_2, ..., x_n) 是未知 数,b是常数项。
线性方程组解的存在性
无解
01
当方程组的系数矩阵的秩大于增广矩阵的秩时,方程组无解。
有唯一解
02
当方程组的系数矩阵的秩等于增广矩阵的秩时,方程组有唯一
解。
有无穷多解
03
当系数矩阵的秩小于增广矩阵的秩时,方程组有无数多个解。
VS
在物理学中,线性方程组还可以用来 描述波动现象、热传导、量子力学等 领域的问题。通过建立物理模型,将 实际问题转化为线性方程组,可以更 好地理解和解决物理问题。
在经济中的应用
在经济学中,线性方程组也被广泛应用,用 于描述各种经济现象和问题。例如,在微观 经济学中,线性方程组可以用来描述消费者 行为和生产者行为;在宏观经济学中,线性 方程组可以用来描述国民收入、货币供应量 等经济指标的变化规律。
在经济分析中,线性方程组还可以用来解决 最优决策、最优化资源配置等问题。通过建 立经济模型,将实际问题转化为线性方程组
,可以更好地理解和解决经济问题。
05
线性方程组解的数值稳定 性
解的误差分析
舍入误差
线性方程组解的判定与解的结构
***学院数学分析课程论文线性方程组解的判定与解的结构院系数学与统计学院专业数学与应用数学(师范)姓名*******年级 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。
线性代数课件4-5线性方程组解的结构
若
为方程 的
解,则
称为方程组的解向量,它也就是向量方程的解.
课件
2.齐次线性方程组解的性质
也是 的解.
(1)若 为 的解,则
证明
课件
(2)若 为 的解, 为实数,则 也是 的解.
课件 证明 非齐次线性方程组解的性质 证明
其中 为对应齐次线性方程组的通解, 为非齐次线性方程组的任意一个特解.
2.非齐次线性方程组的通解
非齐次线性方程组Ax=b的通解为
课件
3.线性方程组的解法
课件
特点:只适用于系数行列式不等于零的情形, 计算量大,容易出错,但有重要的理论价值,可 用来证明很多命题.
证明
由以上两个性质可知,方程组的全体解向量所组成的集合,对于加法和乘数运算是封闭的,因此构成一个向量空间,称此向量空间为齐次线性方程组 的解空间.
课件
二、基础解系及其求法
课件
基础解系的定义 注:方程组的基础解系也是方程组解空间的基底。
*
*
课件
2.线性方程组基础解系的求法
设齐次线性方程组的系数矩阵为 ,并不妨 设 的前 个列向量线性无关.
课件
第五节 线性方程组解的结构
单击此处添加文本
主要内容
04
03
01
课件
*
理解齐次线性方程组的基础解系、通解(全部解)和解空间的概念。掌握求齐次线性方程组的基础解系和通解的方法。
理解非齐次线性方程组的解的结构,掌握求非齐次线性方程组通解的方法。
一、齐次线性方程组解的性质
1.解向量的概念
设有齐次线性方程组
于是 的行最简形矩阵为
课件
课件 * 现对 取下列 组数:
问题:什么是线性方程组的解的结构?
基础解系的概念
定义:齐次线性方程组 Ax = 0 的一组解向量:ξ1, ξ2, ..., ξr 如果满足 ① ξ1,ξ2,...,ξr 线性无关; ②方程组中任意一个解都可以表示ξ1, ξ2, ..., ξr 的线性组合, 那么称这组解是齐次线性方程组的一个基础解系.
设 R(A) = r ,为叙述方便, 不妨设 A 行最简形矩阵为
称为方程组的解向量.
ξ11 ξ 21 ξ= M ξ n1
齐次线性方程组的解的性质
性质1:若 x = ξ1, x = ξ2 是齐次线性方程组 Ax = 0 的解, 则 x = ξ1 + ξ2 还是 Ax = 0 的解. 证明: A(ξ1 + ξ2 ) = Aξ1+ Aξ2 = 0 + 0 = 0 . 性质2:若 x = ξ 是齐次线性方程组 Ax = 0 的解,k 为实数, 则 x = kξ 还是 Ax = 0 的解. 证明: A( kξ ) = k ( Aξ ) = k 0 = 0 .
令
− b11 − b12 − b1,n− r M M M − br 1 − br 2 − br ,n − r ξ1 = 1 , ξ 2 = 1 ,L , ξ n − r = 0 0 0 0 M M M 0 0 1
齐次线性方 程组的通解
令 xr+1 = c1, xr+2 = c2, …, xn = cn-r ,则
− b11 − b12 − b1,n − r x1 − b11c1 − L − b1,n− r cn − r M M M M M − br 1 − br 2 − br ,n − r xr − br 1c1 − L − br ,n− r cn − r = = c1 1 + c1 1 + L + cn − r 0 xr +1 c1 0 0 0 M O M M M x c n− r n 0 0 1
线性代数线性方程组解的结构
例3.10 设
1 1 1 1 1
α1
0 2
,
α2
1 3
,
α3
1 a2
,
α4
2 4
, β
1
b 3
3
5
1
a
8
5
试问
(1) 当a,b取何值时, b不能由1,2,3,4线性
表示?
(2) 当a,b取何值时, b可由1,2,3,4唯一线
19
证明 如果方程组AX=0的系数矩阵的秩 为r, 可以通过交换系数矩阵中某些行的 位置,使得位于系数矩阵的左上角的r阶 子式不为零, 这样原方程组就等于下面的 方程组:
多解. 而解法二是用Cramer法则来考虑(1), 系数 行列式列和相等,而(2)和(3)的解法一样.
11
例3.12 试判断线性方程组
x1 x2 x3 1,
121xx11
2 x2 22 x2
3 x3 32 x3
4, 42 ,
13x1 23x2 33x3 43
是否有解, 其中1,2,3,4为互不相同的
性表示?
5
解 b能不能由1,2,3,4(唯一)线性表示,
就看是否存在(唯一的)一组数x1,x2,x3,x4使
得
x1
β
x1α1
x2α2
x3α3
x4α4
(α1
,
Байду номын сангаас
α2
,
α3
,
α4
)
x2 x3
x4
于是问题(1)就是a,b取何值时, 线性方程组
AX=b无解? 而问题(2)转化为a,b取何值时, AX=b有唯一解?其中A=(1,2,3,4)
4.4线性方程组解的结构(一)
特别地,1、若A为n阶方阵,则AX=0有非零解
detA=0 2、若AX=0,方程的个数小于未知量的个数 则齐次方程组必有非零解。 (即欠定齐次方程组必有非零解),
2、非齐次线性方程组解的存在性
a11 x1 a12 x2 a1n xn b1 a x a x a x b 21 1 22 2 2n n 2 —— 一般形式 am1 x1 am 2 x2 amn xn bm
x1 x3 x4 5x5 , x2 2 x3 2 x4 6 x5
基础解系为
1 2 ξ1 1 0 0
1 0 0 0
0 1 1 5 1 2 2 6 0 0 0 0 0 0 0 0
求解齐次线性方程组AX=0:
1、 A
行初等变换
B (行阶梯阵) 行初等变换 C
简化行阶梯阵
2、由C写出与AX=0同解的齐次方程组; (确定自由未知量)
3、求出基础解系1, 2, …, n-r (r = R(A)) ; 4、写出通解 X = k11+ … + kn-rn-r ,
其中k1 , …, kn-r为任意常数
性质2
若 为齐次方程组AX=0的解,则k 也
(齐次方程组的解对数乘封闭). 是AX=0的解。(k为任意实数)
, s 为 AX=0的解,则 由性质1,2得: 若 1,k2,
k11 k1 2 ks s 也是AX=0的解。
即
齐次方程组AX=0解向量的线性组合 仍为AX=0的解.
W { X R n AX 0} 则W 为 Rn 的一个子空间,称之为AX=0的解空间。 解空间的任一组基(即最大无关组)称为AX=0的 一组基础解系。
线性方程组解的判别与解的结构
线性⽅程组解的判别与解的结构⼀.线性⽅程组求解定理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、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
0 Ax 0
1
br1
br
,nr
0
0 0
0
0
xn
x1
b11 xr1 b1,nr xn
xr br1 xr1 br ,nr xn
为什么要取下列n-r组数?因为我们要得到线性无关的解
现对 xr1 , , xn 取下列 n r 组数:
xr1 1
B的列向量组只是解向量全体的部分向量组,故
R(B) R 1 2 L s n r
于是有 R(A) R(B) n
例6 设A为n阶方阵,证明(可当结论记住直接用)
n, 当 R A n,
R
A*
1,
当 R A n 1,
0, 当 R A n 1.
证(1)当 R A n时, A 0,
2020/5/6
三、应用-求通解
解:根据非齐次线性方程组的解的结构,可知本题 中 C、E是正确的
例5 证明 当 Amn Bns O时,R(A)+R(B) ≤n
(做题时可直接当结论用)
证明 AB=0,将B按列分块,有:
B 1 2 L s
则B的每一列均是线性方程组Ax=0的解。 若R(A)=r, 解向量的全体为S,则R(S)=n-r.
n R( A)=未知量的个数-系数矩阵的秩
(2)齐次线性方程组基础解系的几个重要特征 基础解系即Ax=0解向量全体的一个最大无关组。 基础解系中的向量共有__n_-_R_(_A_)_个; 基础解系中的向量一定线性_无____关; 基础解系的向量一定是_非__零___向量。 任意n-R(A)个线性无关的满足Ax=0的非零解向量, 都可以构成一个基础解系。
且当 c1, c2 ,L , ck 为任意常数时,
c11 c22 L ckk
称为Ax 0 的通解.
显然,方程组 Ax 0 的基础解系就是它的解的
全体组成的向量组S 的最大无关组.
定理1 若齐次线性方程组 Ax 0 的系数矩阵的 秩(未知量的个数)满足R(A) r n ,则方程组
Ax=0 的基础解系存在,且恰含有n-r个线性无关的
两个通解形式虽不一样,但都含有两个任意常数, 都表示了方程组的任一 解.
(方法二:先求通解,再得基础解系,推荐) 事实上,由以前的方程组求解方法,可直接得:
x1 x2 x4
1 1
x2 x3
x2 2 x4
得方程组的通解为
x
c1
1
0
c2
0 2
x4 x4
0 1
现在我们知道了:
的一个基础解系,并给出通解.
解 对系数矩阵施行初等行变换,化为行最简
形矩阵,有
1 1 1 1
1 1 0 1
A 1 1
1 1
1 2
3 3
r
0 0
0 0
1
2
0 0
(方法一:先求基础解系,再得通解)
便得同解方程组
x1 x2 x4
x3
2 x4
其中 x2 , x4为任意常数. 令
x2 x4
于是 A* A n1 0, R A* n.
(2)当 R A n 1时,由矩阵秩的定义知,
A中至少有一个n-1阶子式不为零,即 A* 中至少
有一个元素不为零,故R A* 1.
反过来,当R A n 1时,A 0,
则有 AA* A E 0, 故R A R A* n, 于是有 R A* n R A 1, 故 R A* 1.
2.齐次线性方程组基础解系的求法
设齐次线性方程组的系数矩阵为 A ,并不妨 设A的前 r 个列向量线性无关.于是 A 可化为
1 0 b11 b1,nr
0 A~
1
br1
br ,n r
0 0
0
0
1 0 b11 b1,nr x1 x2
第五节 线性方程组解的结构
一、齐次线性方程组解的结构
对于下面的齐次线性方程组,先讨论解的性质.
Amn x 0
性质1 若向量 x 1, x 2 是 Ax 0的解, 则 x 1 2 也是 Ax 0的解.
性质2 若向量 x 1 为 Ax 0 的解,k 为实数, 则 x k1 也是 Ax 0 的解.
1
1
1
1 0 0
及
2
0
12
即原方程组的基础解系。
关于Ax=0的基础解系的几点说明: 基础解系中的向量共有_n_-_R__(A__)_个; 基础解系中的每个向量均是Ax=0的解; 基础解系中的向量一定线性__无___关; 基础解系的向量一定是_非__零___向量。 例2
D
2,
总结(:1)齐次线性方程组解的结构 Ax=0的通解,可以表示为基础解系的线性组合。 注意 基础解系所含解向量的个数=自由未知量的个数
r1 1 r2 0 n 0
0
1
0
0
0
1
r 1 1 r22 L nnr
即 Ax 0的任一解都可以由 1,2 ,L ,nr 线性表示。
例1 求齐次线性方程组
x1 x2 x3 x4 0
x1
x2
x3
3x4
0
x1 x2 2x3 3x4 0
x1
b11 xr1 b1,nr xn
2 (b21r1 L b2,nrn )
LLLL
xr
br1 xr1
br ,nr xn
r
(br1r1 L
br,nrn )
r 1 =r 1
L
n =n
整理得
b11
b12
b1,nr
br
1
br
2
br
,nr
(3)当R A n 1时,由矩阵秩的定义知,
A中所有n-1阶子式即 A* 中所有元都为零,A* 0,
故R A* 0.
补充:两届期末考试试卷:
xr2
0
,
xn 0
0
0
1
,
,
0
.
0
1
分别代入上述方程组,依次得:
x1 b11 , xr br1
b12
,
br 2
b1,nr
, .
br
,n r
从而求得原方程组的 n r 个解:
b11
br 1
1 1 ,
1.基础解系的定义
定义1 设齐次线性方程组 Ax 0有非零解,如果它 的 k个解向量1,2 ,L ,k 满足: (1)1,2 ,L ,k 线性无关; (2)Ax 0 的任一个解 都可由 1,2 ,L ,k 线
性表示,即
c11 c22 L ckk .
则称 1,2 ,L ,k是方程组Ax 0 的基础解系,
x4
1 1
,
1
1
则得
x1 x3Βιβλιοθήκη 2 2,0 2
只需保证这两个
即可得不同的基础解系
向量线性无关
2
0
1
1 12
,
2
1
12
从而得通解
x1
2 0
x2 x3 x4
c11
c22
c1
1 12
c2
1
12
其中 c1, c2 是任意常数.
显然,向量组 1, 2与向量组1, 2 等价,
解向量.
对 n 元齐次线性方程组 Ax 0有: 1)当R(A) n 时,上述方程组只有零解, 无基础解系;
2)当 R A r n时,上述方程组有无穷多解
此时方程组的基础解系由 n r 个解向量组成.
其通解可以表示成
x k11 k22 L knr nr
其中 k1, k2 , L , knr为任意常数.
0
0
b12
b1,nr
br
2
br
,n r
2 0 , , nr 0 .
1
0
0
1
Why? (线性无关的向量组的加长向量组仍线性无关)
设x 1 r r1 n T 为上述
方程组的一个解. 将解代入原方程组,有:
1 (b11r1 L b1,nrn )
1
0
,
0
1
是最简单的两个
向量线性无关的 向量
代入原方程有
x1 x3
1
0
,
1
2
从而得基础解系
1
1
1
0 0
1
,2
0 12
故原方程组的通解为
1 1
c1
1
0
c2
0
2
c11
c22
0 1
其中 c1, c2是任意常数.
另外,由同解方程组,如果取
x2