线性代数 · 行列式

行列式

2×2矩阵的行列式是它的两列张成的平行四边形的有向面积:det A = ad − bc。平面上所有的面积都乘以|det A|,负号表示平面翻了个面。

行列式与本页画面

2 × 2矩阵A = (a b; c d)是平面上的一个线性变换。它把î和ĵ送到自己的两列a₁ = (a, c)和a₂ = (b, d),于是单位正方形变成以a₁、a₂为边的平行四边形。A的行列式就是这个平行四边形的有向面积。

公式,以及本页默认的矩阵
det⁡A=∣abcd∣=ad−bcdet⁡(2−111)=2⋅1−(−1)⋅1=3\begin{gathered} \det A = \begin{vmatrix} a & b \\ c & d \end{vmatrix} = ad - bc \\[0.6ex] \det \begin{pmatrix} 2 & -1 \\ 1 & 1 \end{pmatrix} = 2\cdot 1 - (-1)\cdot 1 = 3 \end{gathered}

图上画的是A作用前后的平面:标准网格是淡色虚线,A把它变成的网格是墨色细线,单位正方形的像是黄色的平行四边形。原点附近的黄色小弧从a₁沿较近的一边转到a₂。旗子是跟着一起变换的图形,虚线是它原来的位置,实线是A把它放到的位置。

行列式说的不只是单位正方形。网格的每一个小方格都变成同样的平行四边形,所以由方格拼成的区域,面积都乘上|det A|。把网格加密也一样。圆盘这样的图形,能用越来越小的方格填得越来越满,所以它们的面积也乘上|det A|。选“圆”时,面积为π的单位圆变成面积为|det A|·π的椭圆;det A = 0时,它压成一条线段或一个点。

所有的面积都乘同一个数
面积(A(S))=∣det⁡A∣⋅面积(S)\text{面积}\bigl(A(S)\bigr) = \lvert \det A \rvert \cdot \text{面积}(S)

符号说明平面有没有被翻过来。从a₁沿较近的一边转到a₂,如果是逆时针,就像从î转到ĵ那样,A保持平面的定向,det A > 0。如果是顺时针,A就反转了平面的定向:旗子朝向反了,黄色填充变成斜线,det A < 0。行列式随矩阵的元素连续变化,不能从正数一下跳到负数。把a₂拖过a₁所在的直线,平行四边形会先压成一条线段,这时det A = 0,然后才翻过去。

det A = 0时,两列落在同一条直线上,A把整个平面压到这条线上;A是零矩阵时,就压成原点O这一个点。于是不同的点会落到同一个地方,这一步没法还原,所以A没有逆矩阵。

为什么是ad − bc?打开“剪切构造”推一推。剪切是把平行四边形的一条边沿另一条边所在的直线滑动。底和高都没变,面积也就没变。det A ≠ 0且|a|不小于|c|时,先把a₂沿a₁推,推到竖直的(0, h),这里h = d − bc/a。再把a₁沿这条竖边推,推到x轴上的(a, 0)。结果是边长为|a|和|h|的长方形,有向面积a·h = ad − bc。|c|比|a|大时,页面换一个方向推成长方形,有向面积同样是ad − bc。如果det A = 0,平行四边形是扁的,推不成长方形。

两次剪切把平行四边形推成面积相同的长方形
a2→a2−ba a1=(0, h),h=d−bcaa⋅h=a(d−bca)=ad−bc\begin{gathered} a_2 \to a_2 - \tfrac{b}{a}\,a_1 = (0,\ h), \quad h = d - \tfrac{bc}{a} \\[0.6ex] a\cdot h = a\Bigl(d - \tfrac{bc}{a}\Bigr) = ad - bc \end{gathered}

把一列的倍数加到另一列上,正是这样一次剪切,所以行列式不会变。

值得注意

  • 打开“剪切构造”时,A并没有变。被推动的是黄色的副本,A自己的平行四边形留成一个淡淡的虚线轮廓。
  • det A = 0而A不是零矩阵时,实线是整个平面落到的那条线,虚线是落到O的那些点。两条线可能是同一条,比如A = (1 −1; 1 −1)。

相关概念