大家好,又见面了,我是你们的朋友全栈君。
声明与简介
线性代数行列式计算之降阶法一般针对于行列是0元素较多的情况,它的核心思想是对某行(列)能方便的进行行列式展开,即某行(列)元素与其代数余子式的乘积,而该行(列)元素为0的较多,对应的代数余子式又比较简单的求出(比如三角形的行列式)。
降阶法
代数余子式展开
计算n阶行列式:
过程详解
#1 思路
Step1 先观察行列式的特点,再整理思路
Step2 以第1列为轴,不难发现它对应的代数余子式是个对角形。
Step3 思路形成,以第1列对应的两个元素a和b分别乘以对应的代数余子式得到该行列式。
# 实操
Step1:有上述思路所以,行列式D的计算方式转换为a乘其代数余子式加上b乘其代数余子式。这里a的代数余子式为
Step2:而针对b展开时,需要分两步,展开时系数为
b的代数余子式系数类似a即为0,结果为
step3:所以最终结果为:
附录是元素b对应的余子式。
行列临位错位相减
计算n阶行列式
过程详解
#1 思路
Step1 先观察行列式的特点,再整理思路
Step2 观察行列式不难发现如下规律:出现了大量重复的a和d(尽管有系数上的差距)。这时优先考虑消除a,因为每一行(列)里的a是固定的,而d是动态(随元素位置变化)的。进而通过隔行(列)消除d,最终在余子式里化成三角形。
#2 实操
Step1:以行操作为例,第n-1行的-1倍加到第n行上去(等同于第n行减去第n-1行,一般我们用符合行列式性质的说法去描述,尽管有些绕口),同理第n-2行的-1倍加到第n-1行上去,直至第2行的-1倍加到第1行上去,最终第1行没法类似操作,即保留不动。
结果为:
Step2: 针对上式,以列方式观察第1行第1列的余子式,不难发现除第1列的其它列含大量重复的d(共n-1个),仅有一处元素对应位置不同,即第一列某处是d而其它列对应位置是-(n-1)d。
处理方法,将第1列的-1倍加到第2、3…n列上去。
结果为:
Step3:针对Step3,需要把第1列的d给消除掉,这时需要第2、3…n列的1/n倍加到第1列上去。
结果为:
Step4:针对行列式第1行第1列的余子式,不难发现是三角型的,这里我们用行列式的定义即可求出。如下图这个框起来的子行列式(记住E)每个元素都是-nd,这里我们以列作为正序数取,即列为1,2,3…来取b。
那么得到行列式E(n-1阶的)对角线元素对应的序号为
(n-1)1、(n-2)2、(n-3)3…1(n-1)
针对上述的逆序数,不能得出代数余子式系数: (n-1+1)(n-1)/2,而对象线相乘得
Step5:整理后最终结果为:
行列临位错位相乘
计算n阶行列式
过程详解
#1 思路
Step1 先观察行列式的特点,再整理思路
Step2 观察行列式不难发现如下规律:
行列的第1列提取公因子之后和其它列对应元素有个倍数差,利用这点可以实现清0。
#2 实操
Step1:提取第1列公因子 ,并将第1列的负倍加到其它各列上去,其中i从2到n。
结果为:
Step2再基于行列式展开式,对第n行元素展开,再结合三角形性质得最终结果:
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/126945.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...