python求秩函数 python求矩阵方程( 二 )


线性代数之矩阵秩的求法
K阶子式的定义
在m×n的矩阵A中,任取k行、k列(k小于等于m、k小于等于n),位于这些行和列交叉处的 个元素,在不改变原有次序的情况下组成的矩阵叫做矩阵A的k阶子式 。
不难发现矩阵A有个
?
个k阶子式 。
比如有矩阵A
?
比如取第1行,第3行,第1列,第4列交叉上的元素组成的子式即为其一个2阶子式 。即按照如下划线操作 :
?
即其中的一个2阶子式是:
矩阵秩的定义
设在m×n的矩阵A中有一个不等于0的r阶子式D,且所有r+1阶子式全等于0,则D是该矩阵的最高阶非零子式 。非零子式的最高阶数即叫做矩阵的秩 记作R(A) r是rank的缩写 。不难发现矩阵的秩有如下特点:
R(A)大于等于0小于等于min{m,n} 。
r(A) = m 取了所有的行,叫行满秩
r(A) = n 取了所有的列 , 叫列满秩
r(A)min{m,n}则叫做降秩
A是方阵,A满秩的充要条件是A是可逆的(转换为A的行列式不等于0,所以可逆)
r(A) = r的充要条件是有一个r阶子式不为0,所有r+1阶子式为0
矩阵A(m乘n阶)左乘m阶可逆矩阵P,右乘n阶可逆矩阵Q,或者左右乘可逆矩阵PAQ不改变其秩 。
对矩阵实施(行、列)初等变换不改变矩阵的秩
阶梯形矩阵的秩 r(A)等于非零行的行数 。
A的秩等于A转置的秩
任意矩阵乘可逆矩阵,秩不变
矩阵秩的求法
定义法
该方法是根据矩阵的秩的定义来求,如果找到k阶子式为0,而k-1阶不为0,那么k-1即该矩阵的秩 。
#Sample1(示例一),求下列矩阵的秩:
A=
针对矩阵A , 我们先找它的一个3阶子式看看是否为0,比如我们找的是
很显然该三阶子式等于-1≠0,所以该矩阵的秩是3 。
因为当前矩阵没有4阶子式子,所以3是该矩阵的最高阶 。
#Sample2(示例二):已知矩阵A
,如果R(A)3,求a 。
Step1:这种已知矩阵的秩求参数的题目需要借助秩的定义 。因为当前矩阵A是3阶的,而R(A)又小于3,那么A的三阶子式(即A本身)为0 。
Step2:可按照行(列)将第2、3行(列)都加到第1行(列)上去 , 然后提取公因子a+2,
Step3:再以第1行(列)为轴,消除其它行(列)进而得到
Step4:(a+2)
=0 所以a=-2或者a=1 。
类似的,#Sample3(示例三)如果如下的矩阵A的秩R(A)等于3那么k等多少呢python求秩函数?
思路:该题的思路跟上例类似,不过这里解出的k(k=1或者k=-3)需要带回原矩阵里核验下,而k=1时R(A)=1和题目的条件冲突,所以k只能为-3 。
阶梯型数非零行数
分两步:
第一步先将原矩阵化简成阶梯型矩阵
第二步数新矩阵的非零行行数 , 该函数即对应原矩阵的秩 。
#Sample4(示例四):示例 , 求如下矩阵A的秩
Step1:第1行的-2倍加到第2行上去、第1行的1倍加到第三行上去,于是得到
Step2:针对上述矩阵 , 将第2行加到第3行上去,于是得到
Step3:此时我们已经能输出非0行的函数即2,所以矩阵A的秩是2 。
阶梯型画台阶
我们可以借助阶梯的图形化方式勾出台阶数,见下图示例#Sample5(示例五):
注:1 画阶梯(台阶下的元素全为0)数台阶 , 台阶水平方向可跨多列,垂直(列)方向不能跨多行(即一次只能有1个台阶) 。
2 该方法本质上属于阶梯型,只是操作时以图形化数台阶的方式 。
发布者:全栈程序员栈长,转载请注明出处:原文链接:
本文参与 腾讯云自媒体分享计划 ,欢迎热爱写作的你一起参与!

推荐阅读