第一章行列式-1.行列式计算

125 阅读2分钟

1.引子

讲解行列式之前,我们先引入矩阵,向量,线性变换等概念。本章节先大概讲解涉及的概念,后续章节会单独补充线性变换等章节。

1.1 向量

1.1.1 向量基本性质总结

运算代数形式几何意义关键性质
向量加法(ui)+(vi)=(ui+vi)(u_i) + (v_i) = (u_i + v_i)位移合成(三角形/平行四边形)交换律、结合律、有零向量
向量数乘k(ui)=(kui)k(u_i) = (k u_i)沿原方向伸缩(可能反向)分配律、结合律、产生共线向量

1.1.2 线性组合

核心思想:用一组向量,通过“缩放然后相加”的方式,构造出新的向量。

定义: 给定向量组 v₁, v₂, ..., vₖ 和一组标量(实数)c₁, c₂, ..., cₖ,表达式: c₁v₁ + c₂v₂ + ... + cₖvₖ 称为向量 v₁, v₂, ..., vₖ 的一个线性组合

直观理解: 想象你有几个基础方向(向量)。线性组合允许你:

  • 在每个方向上走任意远(缩放,乘以标量)。
  • 把所有走过的路径加起来(向量加法)。
  • 最终到达的位置(得到的新向量)就是这些向量的一个线性组合。

例子: 在二维平面上,设 i = (1, 0)j = (0, 1)

  • 向量 (3, 2) = 3(1, 0) + 2(0, 1) = 3i + 2j**。所以 (3, 2){i, j} 的一个线性组合。
  • 向量 (5, -1) = 5i + (-1)j 也是一个线性组合。

1.1.3 基向量

当我们用数字描述向量时,它都依赖于我们正在使用的基,当你把坐标看成标量时,基向量实际上就是这些标量缩放的对象 核心思想:用来“无冗余”、“唯一确定”地构建整个空间的最小向量组。

定义: 向量空间 V 的一个是满足以下两个条件的向量组 {b₁, b₂, ..., bₙ}

  1. 线性无关(这些向量彼此不能互相线性表示,没有“冗余”)。
  2. 张成整个空间 V(即 V = Span{b₁, b₂, ..., bₙ})。

直观理解

  • 基就像构建一个空间的“最小、最经济的标准工具箱”。
  • “最小”意味着没有多余的工具(线性无关)。
  • “标准”意味着用这套工具,你能造出空间里的任何东西(张成空间),并且造法唯一

唯一表示定理: 如果 {b₁, b₂, ..., bₙ} 是空间 V 的一组基,那么 V 中的每一个向量 v,都可以唯一地表示为: v = c₁b₁ + c₂b₂ + ... + cₙbₙ 这里的标量 (c₁, c₂, ..., cₙ) 称为向量 v 相对于这组基的坐标

例子

  1. 标准基:对于 (二维实向量空间),最常用的基是 {e₁=(1,0), e₂=(0,1)}。向量 (3, 2) 在这组基下的坐标就是 (3, 2)。
  2. 另一组基{ (1,1), (1,-1) } 也是 的一组基。向量 (3, 2) 在这组新基下的坐标是多少? 设 (3, 2) = a*(1,1) + b*(1,-1),解得 a=2.5, b=0.5。所以坐标是 (2.5, 0.5)同一个向量,在不同基下有不同的坐标表示
  3. 不是基的例子
    • {(1,0), (2,0)}:线性相关,不是最小集。
    • {(1,0)}:只能张成x轴,不能张成整个平面。

1.1.4 总结

空间中的任意一向量都可以表示为这些基向量线性组合

1.2 线性变换

1.2.1 线性变换的直观理解

一个“变换”就是一个函数,输入一个向量,输出另一个向量。

image.png

线性变换是其中一种性质特别好的变换,它使得向量空间中的线性关系在变换前后保持不变。

你提到的两点几何性质:

  1. 直线性:直线变换后依然是直线(不会弯曲成曲线)。
  2. 原点固定性:零向量变换后还是零向量(原点不动)。

这是从几何上判断一个变换是否为线性的直观方法。

1.2.2 更精确的代数定义

在代数上,一个变换 T 是线性的,当且仅当它满足以下两条:

  1. 可加性
    T(v+w)=T(v)+T(w)T(\vec{v} + \vec{w}) = T(\vec{v}) + T(\vec{w}) 意味着变换不改变向量的加法关系

  2. 齐次性(数乘不变性)
    T(cv)=cT(v)T(c\vec{v}) = c \, T(\vec{v}),其中 cc 是标量
    意味着变换不改变向量的缩放关系

1.2.3 几何性质与代数定义的对应

  • 原点固定
    c=0c = 0,齐次性给出 T(0v)=0T(v)T(0 \cdot \vec{v}) = 0 \cdot T(\vec{v}),即 T(0)=0T(\vec{0}) = \vec{0}

  • 直线不变
    直线可表示为 p+td\vec{p} + t\vec{d}(点+参数×方向向量)。
    线性变换后:

    T(p+td)=T(p)+tT(d)T(\vec{p} + t\vec{d}) = T(\vec{p}) + t\,T(\vec{d})

    结果仍然是“点+参数×方向向量”的形式,所以仍是直线。

  • 网格线保持平行且等距分布

    • 想象原本的网格由 i\mathbf{i} [1,0][1, 0] , j\mathbf{j} [0,1][0, 1] 张成(正方形格子);
    • 经过线性变换后,i\mathbf{i} 被拉到 [1,0][1, 0]j\mathbf{j} 被拉到[1/3,1][1/\sqrt{3},1]
    • 整个平面随之“变形”,但保持直线仍是直线,原点不动,网格平行性不变

image.png

1.2.4 线性变换例子

常见线性变换的例子

  • 旋转:保持原点固定,直线仍为直线。
  • 缩放(包括拉伸):网格线保持平行。
  • 投影到一条过原点的直线/平面
  • 反射:关于过原点的直线/平面对称。
  • 剪切:将正方形推成平行四边形。

不是线性变换的例子

  • 平移:原点移动了(除非平移量为0),所以不是线性变换(是仿射变换)。
  • 将向量长度平方:不满足线性性,直线可能变曲线。
  • 非线性函数(如 T(x,y)=(x2,y)T(x, y) = (x^2, y))。

1.2.5 总结要点

  • 线性变换 = 几何上“保持网格线平行且等距、原点不动”的变换。
  • 线性变换 = 代数上“满足可加性和齐次性”的变换。

1.3 矩阵

1.3.1 与线性变换的联系

已知一向量,求一个线性变换后的向量坐标是多少?,由空间中的任意一向量都可以表示为这些基向量线性组合原理,以及线性变换的性质

一个线性变换 T:R2R2T: \mathbb{R}^2 \to \mathbb{R}^2 满足两个性质:

  • T(u+v)=T(u)+T(v)T(\mathbf{u} + \mathbf{v}) = T(\mathbf{u}) + T(\mathbf{v})
  • T(cv)=cT(v)T(c\mathbf{v}) = c\,T(\mathbf{v})

正因为这两个性质,只要知道变换后基向量的位置,就能确定整个变换,也即求出变换后的向量坐标!

设:

  • T(i)=[ac]T(\mathbf{i}) = \begin{bmatrix}a \\ c\end{bmatrix}
  • T(j)=[bd]T(\mathbf{j}) = \begin{bmatrix}b \\ d\end{bmatrix}

那么对任意 v=xi+yj\mathbf{v} = x\mathbf{i} + y\mathbf{j},有:

T(v)=xT(i)+yT(j)=x[ac]+y[bd]=[ax+bycx+dy]T(\mathbf{v}) = x\,T(\mathbf{i}) + y\,T(\mathbf{j}) = x\begin{bmatrix}a \\ c\end{bmatrix} + y\begin{bmatrix}b \\ d\end{bmatrix} = \begin{bmatrix}ax + by \\ cx + dy\end{bmatrix}

如果知道线性变换后的基向量坐标T(i)、T(j)使用已知向量去组合新的基向量坐标(可加,齐次),即可得到线性变换后的向量坐标,变换后的基向量坐标

上面的线性变换由变换后基向量的坐标决定,由此可提取归纳为矩阵。并得到如下结论:

任何线性变换(在有限维向量空间中)都可以用一个矩阵来表示,变换矩阵的列,就是基向量变换后的坐标

例子(二维)
假设在标准坐标系中,
线性变换 TTi^=[10]\hat{i} = \begin{bmatrix}1\\0\end{bmatrix} 变成 [ac]\begin{bmatrix}a\\c\end{bmatrix},将 j^=[01]\hat{j} = \begin{bmatrix}0\\1\end{bmatrix} 变成 [bd]\begin{bmatrix}b\\d\end{bmatrix}

那么这个变换对应的矩阵就是:

A=[abcd]A = \begin{bmatrix} a & b \\ c & d \end{bmatrix}

且对任意向量 x=[x1x2]\vec{x} = \begin{bmatrix}x_1\\x_2\end{bmatrix}

T(x)=AxT(\vec{x}) = A\vec{x}

一般的二维线性变换是:

T(x,y)=(ax+by,  cx+dy)T(x, y) = (a x + b y,\; c x + d y)

其中 a,b,c,da, b, c, d 是实数参数。

这对应矩阵:

A=[abcd]A = \begin{bmatrix} a & b \\ c & d \end{bmatrix}

常见例子对比

变换类型一般形式矩阵说明
坐标轴缩放T(x,y)=(ax,by)T(x, y) = (a x, b y)[a00b]\begin{bmatrix}a&0\\0&b\end{bmatrix}你举的例子
旋转T(x,y)=(xcosθysinθ,  xsinθ+ycosθ)T(x, y) = (x\cos\theta - y\sin\theta,\; x\sin\theta + y\cos\theta)[cosθsinθsinθcosθ]\begin{bmatrix}\cos\theta & -\sin\theta \\ \sin\theta & \cos\theta\end{bmatrix}也是线性变换
剪切T(x,y)=(x+my,  y)T(x, y) = (x + m y, \; y)[1m01]\begin{bmatrix}1&m\\0&1\end{bmatrix}保持一边固定,另一边倾斜
投影到 x 轴T(x,y)=(x,0)T(x, y) = (x, 0)[1000]\begin{bmatrix}1&0\\0&0\end{bmatrix}将平面压扁到一条直线

1.4 总结

  • 线性变换 = 对基向量的重新定位
  • 变换后的任意向量 = 原坐标 × 新基向量的线性组合
  • 这个过程等价于左乘一个 2×2 矩阵
  • 矩阵的列 = 变换后的基向量
  • 矩阵乘法 = 线性组合的紧凑表示

2.行列式

2.1 行列式计算方法


1. 二阶行列式

对于 2×22 \times 2 矩阵:

A=(abcd)A = \begin{pmatrix} a & b \\ c & d \end{pmatrix}

其行列式为:

det(A)=adbc\det(A) = ad - bc

记忆:主对角线a×d( a \times d )减去副对角线b×c( b \times c )


2. 三阶行列式

三阶行列式的计算主要有两种常用方法:对角线法则(沙路法/Sarrus Rule)代数余子式展开法(拉普拉斯展开)

假设有一个三阶行列式 DD

D=a11a12a13a21a22a23a31a32a33D = \begin{vmatrix} a_{11} & a_{12} & a_{13} \\ a_{21} & a_{22} & a_{23} \\ a_{31} & a_{32} & a_{33} \end{vmatrix}
方法一:对角线法则(沙路法)

这是计算三阶行列式最直观、最常用的方法,仅适用于二阶和三阶行列式

步骤:

  1. 复制前两列:将行列式的前两列写在第三列的右侧,形成一个 3×53 \times 5 的矩阵辅助记忆。
    a11a12a13a11a12a21a22a23a21a22a31a32a33a31a32\begin{matrix} a_{11} & a_{12} & a_{13} & a_{11} & a_{12} \\ a_{21} & a_{22} & a_{23} & a_{21} & a_{22} \\ a_{31} & a_{32} & a_{33} & a_{31} & a_{32} \end{matrix}
  2. 计算主对角线方向(从左上到右下)的乘积之和(取正号):
    • a11a22a33a_{11}a_{22}a_{33}
    • a12a23a31a_{12}a_{23}a_{31}
    • a13a21a32a_{13}a_{21}a_{32}
    • 和为:S1=a11a22a33+a12a23a31+a13a21a32S_1 = a_{11}a_{22}a_{33} + a_{12}a_{23}a_{31} + a_{13}a_{21}a_{32}
  3. 计算副对角线方向(从右上到左下)的乘积之和(取负号):
    • a13a22a31a_{13}a_{22}a_{31}
    • a11a23a32a_{11}a_{23}a_{32}
    • a12a21a33a_{12}a_{21}a_{33}
    • 和为:S2=a13a22a31+a11a23a32+a12a21a33S_2 = a_{13}a_{22}a_{31} + a_{11}a_{23}a_{32} + a_{12}a_{21}a_{33}
  4. 最终结果D=S1S2D = S_1 - S_2

公式总结:

D=  a11a22a33+a12a23a31+a13a21a32a13a22a31a11a23a32a12a21a33\begin{aligned} D = \;& a_{11}a_{22}a_{33} + a_{12}a_{23}a_{31} + a_{13}a_{21}a_{32} \\ &- a_{13}a_{22}a_{31} - a_{11}a_{23}a_{32} - a_{12}a_{21}a_{33} \end{aligned}
方法二:代数余子式展开法

这种方法适用于任意阶行列式,对于三阶行列式,通常选择0元素较多的那一行或那一列进行展开,以简化计算。

步骤: 任选一行(例如第一行),行列式的值等于该行各元素与其对应的代数余子式乘积之和。

D=a11A11+a12A12+a13A13D = a_{11}A_{11} + a_{12}A_{12} + a_{13}A_{13}

其中 AijA_{ij} 是元素 aija_{ij}代数余子式,定义为: Aij=(1)i+jMijA_{ij} = (-1)^{i+j} M_{ij}

  • MijM_{ij}余子式:划去第 ii 行和第 jj 列后,剩下的二阶行列式。
  • (1)i+j(-1)^{i+j} 是符号位。

具体展开(按第一行):

  1. 第一项a11(1)1+1a22a23a32a33=a11(a22a33a23a32)a_{11} \cdot (-1)^{1+1} \begin{vmatrix} a_{22} & a_{23} \\ a_{32} & a_{33} \end{vmatrix} = a_{11}(a_{22}a_{33} - a_{23}a_{32})
  2. 第二项a12(1)1+2a21a23a31a33=a12(a21a33a23a31)a_{12} \cdot (-1)^{1+2} \begin{vmatrix} a_{21} & a_{23} \\ a_{31} & a_{33} \end{vmatrix} = -a_{12}(a_{21}a_{33} - a_{23}a_{31})
  3. 第三项a13(1)1+3a21a22a31a32=a13(a21a32a22a31)a_{13} \cdot (-1)^{1+3} \begin{vmatrix} a_{21} & a_{22} \\ a_{31} & a_{32} \end{vmatrix} = a_{13}(a_{21}a_{32} - a_{22}a_{31})

将这三项相加即可得到结果。此方法展开后的结果与方法一完全一致。

2.2 行列式的几何本质

线性变换,有的将空间拉伸,有的将空间挤压。有件事对理解线性变换非常有用,就是测量变换对空间有多少拉伸和挤压。更具体一点,就是测量一个给定区域面积的增大或减少的比例。由任何线性变换(在有限维向量空间中)都可以用一个矩阵来表示,变换矩阵的列,就是基向量变换后的坐标原理可知:变换矩阵行列式的绝对值,精确地定义了该变换将任意区域面积(二维)或体积(高维)放大或缩小的比例因子。若行列式为负,则意味着在缩放的同时还发生了空间定向的翻转。

“想象线性变换是在揉捏空间:有的部分被拉长,有的部分被压扁。要衡量这种形变的剧烈程度,最核心的指标就是看它如何改变区域的‘大小’。由于线性变换完全由基向量的去向(即矩阵的列)决定,因此,矩阵行列式的绝对值,就是这把衡量空间伸缩比例的‘标尺’。它告诉我们要将一个单位正方形(或立方体)变换后,其面积(或体积)变成了原来的多少倍。”

比如说这样一个以(3,0)和(0,2)为列的矩阵,它将i帽伸长为原来的3倍,将j帽伸长为原来的2倍,现在如果我们关注以i帽为底边,以j帽为左边的1x1方形,在变换之后,它会变成一个2x3的矩形。因为这个区域初始面积为1,最终面积为6,所以我们说这个线性变换将它的面积变为6倍。

2.2.1 二维情形:为什么 |det| = 面积缩放比例?
几何推导
  1. 起点:单位正方形由标准基向量 i^=(1,0)\hat{i}=(1,0), j^=(0,1)\hat{j}=(0,1) 张成,面积 = 1
  2. 变换后:矩阵 M=[abcd]M = \begin{bmatrix} a & b \\ c & d \end{bmatrix} 将基向量映射为:
    • i^(a,c)\hat{i} \to (a, c)(第一列)
    • j^(b,d)\hat{j} \to (b, d)(第二列)
  3. 新图形:这两个向量张成一个平行四边形
  4. 面积计算
    面积=v1×v2=adbc=det(M)\text{面积} = \left| \vec{v_1} \times \vec{v_2} \right| = |a \cdot d - b \cdot c| = |\det(M)|

二阶行列式 det(abcd)=adbc\det \begin{pmatrix} a & b \\ c & d \end{pmatrix} = ad - bc 的几何意义是:由列向量 u=(ac)\vec{u} = \begin{pmatrix} a \\ c \end{pmatrix}v=(bd)\vec{v} = \begin{pmatrix} b \\ d \end{pmatrix} 所张成的平行四边形的有向面积

其推导过程主要有两种经典方法:几何割补法(最直观)和向量叉积法(最简洁)。


方法一:几何割补法(Box Method)

这是最基础的推导方式,通过计算包围平行四边形的大矩形面积,减去周围多余的三角形和矩形面积来得到结果。

1. 设定坐标 假设两个向量都在第一象限(其他象限同理,最终取绝对值即可),且 a,b,c,d>0a,b,c,d > 0

  • 向量 u\vec{u} 的终点为 A(a,c)A(a, c)
  • 向量 v\vec{v} 的终点为 B(b,d)B(b, d)
  • 平行四边形的第四个顶点为 C(a+b,c+d)C(a+b, c+d)
  • 原点为 O(0,0)O(0,0)

2. 构造外接矩形 我们要计算平行四边形 OACBOACB 的面积。 构造一个大的矩形,其四个顶点分别为 (0,0),(a+b,0),(a+b,c+d),(0,c+d)(0,0), (a+b, 0), (a+b, c+d), (0, c+d)。 这个大矩形的宽是 a+ba+b,高是 c+dc+dS大矩形=(a+b)(c+d)=ac+ad+bc+bdS_{\text{大矩形}} = (a+b)(c+d) = ac + ad + bc + bd

3. 扣除周围区域 大矩形内部除了中间的平行四边形外,还包含四个直角三角形和两个小矩形(或者更简单地看作两对全等的直角三角形和两个矩形区域,具体取决于 a,b,c,da,b,c,d 的相对大小,但代数结构一致)。

为了通用性,我们通常将大矩形内的“空白”部分分解为:

  • 下方三角形和左方三角形
    • 一个底为 aa、高为 cc 的直角三角形(在 u\vec{u} 下方),面积 12ac\frac{1}{2}ac
    • 一个底为 bb、高为 dd 的直角三角形(在 v\vec{v} 左方/下方),面积 12bd\frac{1}{2}bd
  • 上方三角形和右方三角形
    • 一个底为 aa、高为 cc 的直角三角形(在 u\vec{u} 上方),面积 12ac\frac{1}{2}ac
    • 一个底为 bb、高为 dd 的直角三角形(在 v\vec{v} 右方/上方),面积 12bd\frac{1}{2}bd
  • 两个矩形(长𝑏宽𝑐):面积共𝑏𝑐

想象一个大矩形,宽 W=a+bW = a+b,高 H=c+dH = c+d。 平行四边形面积 = 大矩形面积 - 4个直角三角形面积 - 2个小矩形面积 = (ac+ad+bc+bd)ac/2ac/2bd/2bd/22bc(ac+ad+bc+bd)-ac/2-ac/2-bd/2-bd/2-2bc = adbcad-bc

方法二:线性变换与公理化定义法(抽象代数视角)

如果我们回到行列式最本质的定义:对于二阶方阵,行列式代表两个列向量张成的平行四边形的有向面积

设两个列向量为:

u=(ac),v=(bd)\mathbf{u} = \begin{pmatrix} a \\ c \end{pmatrix}, \quad \mathbf{v} = \begin{pmatrix} b \\ d \end{pmatrix}

我们想找一个函数 f(u,v)f(\mathbf{u}, \mathbf{v}) 来表示它们的"有向面积",通常记为 det(u,v)\det(\mathbf{u}, \mathbf{v})

这个函数必须满足三条核心性质(这些性质完全由"面积"的直觉决定):

  1. 单位正方形规则(规范化):

    det(i,j)=det(1001)=1\det(\mathbf{i}, \mathbf{j}) = \det\begin{pmatrix}1&0\\0&1\end{pmatrix} = 1

    即两个标准基向量围成的正方形面积为 1。

  2. 反对称性/交错性(方向感):

    det(v,u)=det(u,v)\det(\mathbf{v}, \mathbf{u}) = -\det(\mathbf{u}, \mathbf{v})

    也就是说,如果交换两个向量,方向反转,面积变号。 推论:如果两个向量相同(共线),面积为 0。det(u,u)=0\det(\mathbf{u}, \mathbf{u}) = 0

  3. 双线性性(线性缩放):

    det(ku,v)=kdet(u,v)\det(k\mathbf{u}, \mathbf{v}) = k\det(\mathbf{u}, \mathbf{v})
    det(u+w,v)=det(u,v)+det(w,v)\det(\mathbf{u}+\mathbf{w}, \mathbf{v}) = \det(\mathbf{u}, \mathbf{v}) + \det(\mathbf{w}, \mathbf{v})

    意思是::如果向量长度变为 k 倍,面积也变为 k 倍。

推导过程

由双线性性,我们可以展开:

det(u,v)=det(ai+cj, bi+dj)=adet(i,bi+dj)+cdet(j,bi+dj)=a[bdet(i,i)+ddet(i,j)]+c[bdet(j,i)+ddet(j,j)]\begin{align*} \det(\mathbf{u}, \mathbf{v}) &= \det(a\mathbf{i} + c\mathbf{j}, \ b\mathbf{i} + d\mathbf{j}) \\ &= a\det(\mathbf{i}, b\mathbf{i} + d\mathbf{j}) + c\det(\mathbf{j}, b\mathbf{i} + d\mathbf{j}) \\ &= a\left[ b\det(\mathbf{i}, \mathbf{i}) + d\det(\mathbf{i}, \mathbf{j}) \right] + c\left[ b\det(\mathbf{j}, \mathbf{i}) + d\det(\mathbf{j}, \mathbf{j}) \right] \end{align*}

由反对称性:

det(i,i)=0,det(j,j)=0,det(j,i)=det(i,j)\det(\mathbf{i}, \mathbf{i}) = 0, \quad \det(\mathbf{j}, \mathbf{j}) = 0, \quad \det(\mathbf{j}, \mathbf{i}) = -\det(\mathbf{i}, \mathbf{j})

代入规范化 det(i,j)=1\det(\mathbf{i}, \mathbf{j}) = 1

det(u,v)=a(0+d1)+c(b1+0)=adbc\det(\mathbf{u}, \mathbf{v}) = a(0 + d\cdot 1) + c( -b\cdot 1 + 0) = ad - bc

结论: 只要承认上述三条几何性质,(ad - bc) 是唯一可能的表达式。它不是数学家随意定的,而是从"有向面积"的直观中严格推导出来的必然结果。

2.2.2 三维情形:为什么 |det| = 体积缩放比例?
几何推导
  1. 起点:单位立方体由 i^,j^,k^\hat{i}, \hat{j}, \hat{k} 张成,体积 = 1
  2. 变换后MM 的三列向量 v1,v2,v3\vec{v_1}, \vec{v_2}, \vec{v_3} 张成平行六面体
  3. 体积计算
    体积=v1(v2×v3)=det(M)\text{体积} = \left| \vec{v_1} \cdot (\vec{v_2} \times \vec{v_3}) \right| = |\det(M)|
    (标量三重积 = 行列式绝对值)
方法一:几何向量法(混合积推导)

我们可以通过向量的**混合积(Scalar Triple Product)**来直观推导这个公式。

设三个列向量为 a=(a1,a2,a3)T\mathbf{a} = (a_1, a_2, a_3)^T, b=(b1,b2,b3)T\mathbf{b} = (b_1, b_2, b_3)^T, c=(c1,c2,c3)T\mathbf{c} = (c_1, c_2, c_3)^T

第一步:底面积与高

平行六面体的体积 VV 等于 底面积 ×\times

  • 底面:由向量 b\mathbf{b}c\mathbf{c} 张成的平行四边形。
  • 底面积:根据向量叉积(Cross Product)的定义,b×c\mathbf{b} \times \mathbf{c} 的模长 b×c|\mathbf{b} \times \mathbf{c}| 等于该平行四边形的面积,且方向垂直于底面。
  • :向量 a\mathbf{a} 在法向量方向上的投影长度。即 a\mathbf{a} 在单位法向量 b×cb×c\frac{\mathbf{b} \times \mathbf{c}}{|\mathbf{b} \times \mathbf{c}|} 上的投影。 h=acosθ=a(b×c)b×ch = |\mathbf{a}| \cdot |\cos \theta| = \frac{|\mathbf{a} \cdot (\mathbf{b} \times \mathbf{c})|}{|\mathbf{b} \times \mathbf{c}|}
第二步:体积公式(混合积)

将底面积和高相乘: V=Area×h=b×c×a(b×c)b×c=a(b×c)V = \text{Area} \times h = |\mathbf{b} \times \mathbf{c}| \times \frac{|\mathbf{a} \cdot (\mathbf{b} \times \mathbf{c})|}{|\mathbf{b} \times \mathbf{c}|} = |\mathbf{a} \cdot (\mathbf{b} \times \mathbf{c})| 这里 a(b×c)\mathbf{a} \cdot (\mathbf{b} \times \mathbf{c}) 被称为标量三重积(或混合积)。 注:如果不取绝对值,得到的是有向体积。当 a,b,c\mathbf{a}, \mathbf{b}, \mathbf{c} 符合右手定则时为正,左手定则为负。

第三步:展开为行列式形式

现在我们将混合积用坐标表示出来,看看它如何变成行列式。

  1. 计算叉积 b×c\mathbf{b} \times \mathbf{c}b×c=ijkb1b2b3c1c2c3=(b2c3b3c2)i(b1c3b3c1)j+(b1c2b2c1)k\mathbf{b} \times \mathbf{c} = \begin{vmatrix} \mathbf{i} & \mathbf{j} & \mathbf{k} \\ b_1 & b_2 & b_3 \\ c_1 & c_2 & c_3 \end{vmatrix} = (b_2c_3 - b_3c_2)\mathbf{i} - (b_1c_3 - b_3c_1)\mathbf{j} + (b_1c_2 - b_2c_1)\mathbf{k}

  2. 计算点积 a(b×c)\mathbf{a} \cdot (\mathbf{b} \times \mathbf{c})a(b×c)=a1(b2c3b3c2)a2(b1c3b3c1)+a3(b1c2b2c1)\mathbf{a} \cdot (\mathbf{b} \times \mathbf{c}) = a_1(b_2c_3 - b_3c_2) - a_2(b_1c_3 - b_3c_1) + a_3(b_1c_2 - b_2c_1)

  3. 观察行列式的展开: 让我们写出以 a,b,c\mathbf{a}, \mathbf{b}, \mathbf{c} 为列向量的三阶行列式,并按第一列(即 a\mathbf{a})展开: det(a,b,c)=a1b1c1a2b2c2a3b3c3\det(\mathbf{a}, \mathbf{b}, \mathbf{c}) = \begin{vmatrix} a_1 & b_1 & c_1 \\ a_2 & b_2 & c_2 \\ a_3 & b_3 & c_3 \end{vmatrix} 按第一列展开公式为: =a1b2c2b3c3a2b1c1b3c3+a3b1c1b2c2= a_1 \begin{vmatrix} b_2 & c_2 \\ b_3 & c_3 \end{vmatrix} - a_2 \begin{vmatrix} b_1 & c_1 \\ b_3 & c_3 \end{vmatrix} + a_3 \begin{vmatrix} b_1 & c_1 \\ b_2 & c_2 \end{vmatrix} =a1(b2c3b3c2)a2(b1c3b3c1)+a3(b1c2b2c1)= a_1(b_2c_3 - b_3c_2) - a_2(b_1c_3 - b_3c_1) + a_3(b_1c_2 - b_2c_1)

结论:体积 V=det(a,b,c)V = |\det(\mathbf{a}, \mathbf{b}, \mathbf{c})|(混合积的代数表达式V与行列式的按列展开式完全一致)

为什么是“有向”体积?

行列式的值可以是负数,而物理体积通常是正数。

  • 当三个向量构成右手系(大拇指指向 a\mathbf{a},食指 b\mathbf{b},中指 c\mathbf{c} 能自然张开)时,行列式为正,代表正向体积。
  • 当交换任意两列(例如交换 b\mathbf{b}c\mathbf{c}),相当于改变了手性(变成左手系),几何上平行六面体没变,但定向反转了,所以行列式变号。
  • 因此,平行六面体的几何体积 = det(a,b,c)|\det(\mathbf{a}, \mathbf{b}, \mathbf{c})|(行列式的绝对值)。
另一种视角:线性变换的缩放比例

从线性代数的更高层视角来看:

  • 单位立方体由标准基向量 e1,e2,e3\mathbf{e}_1, \mathbf{e}_2, \mathbf{e}_3 组成,其体积为 1。
  • 矩阵 A=[a,b,c]A = [\mathbf{a}, \mathbf{b}, \mathbf{c}] 可以看作是一个线性变换,它将单位立方体映射到了由 a,b,c\mathbf{a}, \mathbf{b}, \mathbf{c} 张成的平行六面体。
  • 行列式的本质定义就是线性变换对体积的缩放因子(Scaling Factor)。
  • 既然原体积是 1,那么变换后的体积就是 1×det(A)=det(A)1 \times \det(A) = \det(A)
总结

三阶行列式公式之所以代表平行六面体体积,是因为:

  1. 几何推导:通过“底面积(叉积)× 高(投影)”导出的混合积公式,在代数展开后与行列式的定义完全吻合。
  2. 变换意义:行列式天然描述了线性变换对空间体积的缩放倍数
方法二:线性变换与公理化定义法(抽象代数视角)

这种方法不依赖具体的坐标计算,而是从“体积”这一概念必须满足的公理出发,证明行列式是唯一满足这些公理的函数。

1. 体积函数的公理 定义一个函数 D(v1,v2,v3)D(\mathbf{v}_1, \mathbf{v}_2, \mathbf{v}_3) 表示由这三个向量构成的平行六面体的有向体积,它必须满足:

  • 规范性 (Normalization):单位立方体的体积为 1。即 D(e1,e2,e3)=1D(\mathbf{e}_1, \mathbf{e}_2, \mathbf{e}_3) = 1
  • 多重线性 (Multilinearity)
    • 若某一边长拉伸 kk 倍,体积变为 kk 倍:D(kv1,v2,v3)=kD(v1,v2,v3)D(k\mathbf{v}_1, \mathbf{v}_2, \mathbf{v}_3) = k D(\mathbf{v}_1, \mathbf{v}_2, \mathbf{v}_3)
    • 若某一边是两个向量之和,体积可加:D(u+w,v2,v3)=D(u,v2,v3)+D(w,v2,v3)D(\mathbf{u}+\mathbf{w}, \mathbf{v}_2, \mathbf{v}_3) = D(\mathbf{u}, \mathbf{v}_2, \mathbf{v}_3) + D(\mathbf{w}, \mathbf{v}_2, \mathbf{v}_3)
  • 反对称性 (Alternating):交换任意两个向量,图形形状不变但定向反转(右手系变左手系),体积符号取反。即 D(v2,v1,v3)=D(v1,v2,v3)D(\mathbf{v}_2, \mathbf{v}_1, \mathbf{v}_3) = -D(\mathbf{v}_1, \mathbf{v}_2, \mathbf{v}_3)
    • 推论:若有两个向量相同(共面),体积为 0。

2. 唯一性定理 在线性代数中有一个著名定理:满足上述三条性质的函数是唯一的。

3. 行列式的性质匹配 回顾行列式的定义性质:

  • det(I)=1\det(I) = 1 (满足规范性)
  • 行列式对每一列都是线性的 (满足多重线性)
  • 交换两列,行列式变号 (满足反对称性)

结论:既然“有向体积”和“行列式”都满足完全相同的三条公理,且满足这三条公理的函数唯一,那么有向体积函数必然等于行列式函数Volumesigned(a,b,c)=det(a,b,c)\text{Volume}_{signed}(\mathbf{a}, \mathbf{b}, \mathbf{c}) = \det(\mathbf{a}, \mathbf{b}, \mathbf{c})

三阶行列式 det(a,b,c)\det(\mathbf{a}, \mathbf{b}, \mathbf{c}) 的绝对值等于由列向量 a,b,c\mathbf{a}, \mathbf{b}, \mathbf{c} 张成的平行六面体的体积。这个结论可以通过多种数学视角进行推导和证明。

2.3 只有方阵(行数等于列数的矩阵)才有行列式

结论先行:

  1. 只有方阵(行数等于列数的矩阵)才有行列式。
  2. 如果一个线性变换是从 3 维空间映射到 2 维空间(T:R3R2T: \mathbb{R}^3 \to \mathbb{R}^2),它对应的矩阵是一个 2×32 \times 3 的矩阵(非方阵),因此这个变换本身没有行列式
2.3.1 为什么只有方阵才有行列式?

从定义上讲,行列式(Determinant)是定义为 n×nn \times n 矩阵(即方阵)的一个标量值。

  • 代数角度:行列式的计算公式(如莱布尼茨公式或拉普拉斯展开)依赖于行数和列数相等,以便进行排列组合(permutations)。如果行数 mm 不等于列数 nn,这些定义无法直接应用。
  • 几何角度:行列式的几何意义是**“体积缩放比例”**。
    • 一个 n×nn \times n 的矩阵代表一个从 nn 维空间到 nn 维空间的线性变换(RnRn\mathbb{R}^n \to \mathbb{R}^n)。
    • 它将 nn 维空间中的一个单位超立方体变换为另一个 nn 维的平行多面体。行列式的值就是这个新形状体积与原体积的比值(带符号,表示方向是否翻转)。
    • 如果维度发生了变化(比如从 3 维变 2 维),你无法比较“3 维体积”和“2 维面积”,因为它们量纲不同,不存在一个单一的标量能描述这种跨维度的“缩放”。
2.3.2 关于从 3 维到 2 维的线性变换

假设有一个线性变换 T:R3R2T: \mathbb{R}^3 \to \mathbb{R}^2

  • 矩阵形式:它的标准矩阵 AA 的大小是 2×32 \times 3(2 行 3 列)。 A=(a11a12a13a21a22a23)A = \begin{pmatrix} a_{11} & a_{12} & a_{13} \\ a_{21} & a_{22} & a_{23} \end{pmatrix}
  • 是否有行列式? 没有。因为 232 \neq 3det(A)\det(A) 无定义。

矩阵 AA 中:

  • 每一列(Column):代表基向量变换后的结果

    • 第 1 列是:输入空间的第 1 个基向量 (1,0,0)T(1,0,0)^T 变换后变成了什么?
    • 因为输出空间是 2 维 的,所以变换后的向量必须是 2 维 的(只有 2 个分量)。
    • 因此,矩阵的每一列必须有 2 个元素(2 行),而不是 3 个。
  • 列的数量:代表输入空间的维度

    • 输入是 3 维的,有 3 个基向量 (1,0,0),(0,1,0),(0,0,1)(1,0,0), (0,1,0), (0,0,1)
    • 我们需要知道这 3 个基向量分别变成了什么。
    • 因此,矩阵必须有 3 列。
这种情况下我们看什么?

虽然没有行列式,但我们可以通过其他概念来理解这个变换的性质:

  1. 秩 (Rank): 这是最重要的指标。对于 2×32 \times 3 矩阵,其秩最大为 2。

    • 如果秩为 2,说明变换将 3 维空间“压扁”成了一个 2 维平面(满秩映射到目标空间)。
    • 如果秩为 1,说明被压扁成了一条线。
    • 如果秩为 0,说明所有点都映射到了原点。
    • 由于是从高维到低维,根据秩 - 零化度定理(Rank-Nullity Theorem),其**核(Kernel)**的维度至少为 32=13-2=1。这意味着必然有非零向量被映射为零向量(信息丢失,不可逆)。
  2. 奇异值 (Singular Values): 虽然不能算行列式,但我们可以做奇异值分解 (SVD)。对于 2×32 \times 3 矩阵,会有 2 个非零奇异值(假设满秩)。这两个奇异值的乘积 σ1σ2\sigma_1 \sigma_2 可以理解为:单位球体(3维)被投影并变换后,在 2 维平面上形成的椭圆的面积。但这通常不被称为该矩阵的“行列式”。

  3. 柯西 - 比内公式 (Cauchy-Binet Formula): 如果你非常想通过某种方式得到类似行列式的值,数学上有一个推广。对于 AA (m×nm \times n, m<nm < n),我们可以计算所有 m×mm \times m 子矩阵行列式的平方和。 (all 2×2 minors)2\sum (\text{all } 2\times2 \text{ minors})^2 这个值的平方根与变换后的“面积”有关,但它依然不是传统意义上的单一行列式值。

总结
  • 行列式存在的条件:必须是方阵 (n×nn \times n)。
  • 物理/几何含义:描述同维度空间变换下的有向体积缩放率
  • 3 维 \to 2 维的情况
    • 矩阵是非方阵 (2×32 \times 3)。
    • 没有行列式
    • 该变换必然不可逆(因为有信息丢失,多个输入对应同一个输出)。
    • 我们通常用奇异值来分析这类变换。

3.参考文献

本文参考: 3Blue1Brown的《线性代数的本质》视频讲解,以及DeepSeek,同义千问回答。