漫步线性代数二十四——行列式应用

本文探讨了线性代数中的四大核心计算问题:计算矩阵的逆、求解线性方程组Ax=b、计算盒子体积以及主元公式。通过具体实例和公式推导,详细介绍了伴随矩阵在矩阵逆中的应用、克拉姆法则求解线性方程组、行列式与几何体积的关系以及主元公式的消元法等关键概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本篇文章介绍四个应用: A 的逆,求解Ax=b,盒子的体积以及主元。他们都是线性代数里面非常关键的计算,而行列式给出了这些答案的公式。

1、计算 A1 2×2 矩阵展示了伴随矩阵如何表示 A1

[acbd]1=1adbc[dcba]

伴随矩阵还需乘以行列式,当 detA 非零时, A 是可逆的。C11=d a 的代数余子式,C12=c b 的代数余子式(注意负号),而C12放在了第二行第一列!

a,b 分别和 C11,C12 相乘得到 adbc ,这是 detA 的代数余子式展开式,也是我们需要的线索: A1 就是用伴随矩阵除以 detA

A1=CTdetA(A1)ij=CijdetA(1)

我们的目标是验证这个公式,另外由此我们还看出为何 ACT=(detA)I

a11an1a1nannC11C1nCn1Cnn=detA0detA(2)

第一列 C11,,C1n 乘以 a11,,a1n 得到对角元素 detA A 的每一行乘以它的代数余子式都得到detA

那么关键问题是:为什么对角线外的元素都是零呢?如果我们将第一行的元素 a1j 和第二行的代数余子式 C2j 进行组合,为什么结果是零呢?

a11C21+a12C22++a1nC2n=0(3)

答案就是:我们在计算一个新矩阵 B 的行列式。A的第一行复制到第二行得到矩阵 B ,那么矩阵B就有相同的两行, detB=0 。方程(3)是沿着第二行得到 detB 展开式,其中 B 和矩阵A有相同的代数余子式(因为在求解代数余子式时需丢掉第二行),这个非凡的矩阵乘法(2)是完全正确的。

乘法 ACT=(detA)I 直接得出 A1 ,记住去掉矩阵 A i行第 j 列的代数余子式放到CT的第 j 行第i列,然后除以 detA (不能等于0)就得到 A1=CT/detA

例1:和矩阵的逆是微分矩阵:

A=100110111A1=CTdetA=100110011

因为代数余子式包含 (1)i+j ,所以会有符号。

2、求解 Ax=b x=A1b 仅仅就是 CTb 除以 detA ,这里介绍一个非常出名的求 (x1,,xn) 的方法:

克拉姆法则: x=A1b 的第 j 个元素是比值

xj=detBjdetA, Bj=a11an1a12an2b1bna1nann

证明:对 detB 按第 j 列展开成代数余子式的形式,因为代数余子式不考虑该列,所以detBj CTb 的第 j 个元素:

detBj=b1C1j+b2C2j++bnCnj

然后用它除以 detA 就得到 xj x 的每个元素都是两个行列式的比值。

例2:下面方程组

x1+3x2=0

2x2+4x2=0

的解 x1 需要将第一列换成0,6, x2 需要将第二列换成0,6:

x1=06341234=182=9,x2=12061234=62=3,

分母总是 detA ,如果有1000个方程,那么根据克莱姆法则,需要1001个行列式。

3、盒子的体积。当所有角都是直角——此时边互相垂直,行列式和体积的联系就非常紧密,此时的盒子的形状是矩形的,从而体积就是边长的乘积: volumn=12n

当盒子的边长是 A 的行时,我们想从detA中得到同样的 12n 。在直角的情况下,这些行是正交的, AAT 是对角矩阵:

AAT=row 1row nrow1rown=21002n

i 是行(边)的长度,因为行是正交的,所以对角线外的元素都是零。利用乘法和转置法则:

21222n=det(AAT)=(detA)(detAT)=(detA)2

这个方程的平方根说明了行列式等于体积。而 detA 的符号暗示了是使用右手坐标(也就是通常的 xyz ),还是左手坐标(像 yxz )。

如果角度不是 90 ,那么体积就不是长度的乘积。在平面上(如图1),平行四边形的“体积”等于底边 乘以高 h ,向量bp就是第二行 b=(a21,a22) 减去它在第一行上的投影 p ,关键点是:根据5,用第一行的倍数减去第二行时detA不变,我们可以将平行四边形变成一个矩形。


这里写图片描述
图1

对于 n 维的情况,将盒子变成矩形需要很长时间,但是思路就是如此,如果我们从每行减去它在前面行所生成空间的投影,体积和行列式都不变,通过格拉姆-施密特过程产生正交的行,这时体积=行列式,所以对于开始的行这个等式同样成立。

现在我们介绍完了体积和行列式之间的关系,但是很有必要回过头来看看最简单的情况,我们知道

det[1001]=1,det[1c01]=1

这些行列式给出了体积——或者面积(因为这是在二维空间),如图2所示,平行四边形底和高都是1,所以面积也是1。


这里写图片描述
图2

4、主元公式。最后我们讨论一下消元,此时考虑不需要行交换的情况。观察的要点是第 k 个主元完全由A的左上角子矩阵 Ak 确定, A 的其余行和列对它没有影响:

A=acgbdhefia0gb(adbc)/ahe(afec)/ai

第一个主元只取决于第一行和第一列,第二个主元 (adbc)/a 值取决于 2×2 的子矩阵 A2 A 的其余部分不会影响到它。实际上,不仅仅是主元,整个左上角矩阵的L,D,U都只取决于 A 的左上角:

A=LDU=1c/a11a(adbc)/a1b/a11

从上例我们看出,前两行和两列就是子矩阵 A2 的分解,如果没有行交换的前提下,这条规则恒成立。

4、如果 A 分解为LDU,那么左上角满足 Ak=LkDkUk

证明的关键在于进行其他行的消元之前,先将左上角的确定下来,或者使用块乘法规则:

LDU=[LkB0C][Dk00E][Uk0FG]=[LkDkUkBDkUkLkDkFBDkF+CEG]

将最后的矩阵和 A 进行比较,我们发现LkDkUk Ak 是一致的,那么:

detAk=detLkdetDkdetUk=detDk=d1d2dk

k 个主元的乘积是Ak的行列式,这和我们已知的整个矩阵的规则一致。因为 Ak1 的行列式由 d1d2dk1 给出,所以我们用行列式比值的方式分离每个主元 dk

detAkdetAk1=d1d2dkd1d2dk1=dk(4)

对于上面的例子,第二个主元就是比值 (adbc)/a ,也就是 A2 的行列式除以 A1 的行列式(约定 A0=1 ,这样的话第一个主元就是 a/1=a )。将所有主元相乘就回到我们的行列式:

d1d2dn=detA1detA0detA2detA1detAndetAn1=detAndetA0=detA

根据方程(5)我们可以得出一个结论:当 detAk 都不为零时,主元也都不为零。

5、当且仅当子矩阵 A1,A2,,An 都是非奇异时,消元法不需要行交换(所以 P=I,A=LU )。

现在考虑一个问题,行交换的次数会一直是奇数或偶数吗?如果是,那么根据2行列式要么为+1,要么为-1。

考虑 (3,2,1) ,我们可以只交换3,1就得到正序列 (1,2,3) ,交换3与2,然后3与1,最后2与1同样得到正序列,对于这两种方式,交换的次数都是奇数,这里得出的论断就是:偶数次的交换不可能从 (3,2,1) 得出正序列。

这里给出它的一个证明。观察置换中的每对数,我们用 N 表示大数在前的对数。这样的话N=0表示正序列 (1,2,3) 。而 (3,2,1) N 为3,因为所以数对(3,2),(3,1),(2,1)都是大数在前,接下来我们将展示用奇数次变换来改变 N ,直到N=0为止。

当相邻发生交换时, N 要么+1,要么-1。所有交换都可以用奇数次的邻域交换实现,考虑一个例子,我们要交换第一和第四个元素,可以通过五次交换完成:

(2,1,4,3)(1,2,4,3)(1,4,2,3)(1,4,3,2)(1,3,4,2)(3,1,4,2)

我们需要 k 次邻域交换将 k 位置上的元素放到 上,然后 k1 次交换将原来 (现在在 1 位置上)位置上的数放到 k 位置上。因为(k)+(k1) 是奇数,至此证明完成。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值