欢迎来到矩阵(Matrices)的世界!
在这一章,我们要探索矩阵。你可以把矩阵想像成一个强大的“数学电子表格”或者一个整齐的数字盒子。虽然它们乍看之下只是一堆行与列,但它们实际上是计算机图形、电子游戏引擎,甚至是 GPS 地图在你转弯时随之旋转的背后秘密语言。
我们将学习如何操作这些数字盒子,更重要的是,学习它们如何对图形进行变换(Transformations)——在二维和三维空间中进行翻转、旋转和拉伸。如果一开始觉得规则太多,别担心;一旦你看懂了其中的规律,它就会变成数学中最具逻辑性和直观的部分!
1. 矩阵基础:加法、减法与标量乘法
在移动图形之前,我们需要先学会如何处理这些“盒子”本身。
矩阵运算
要对两个矩阵进行加减运算,它们必须是可相容的(conformable)。这是一个比较正式的说法,意思就是它们必须拥有相同的维度(大小)(即行数和列数必须完全相同)。
- 加法/减法:直接将对应位置的数字相加或相减。这就像是把两份购物清单合在一起一样简单!
- 标量乘法(Scalar Multiplication):这是指将整个矩阵乘以一个单独的数(称为标量)。你只需要将矩阵内每一个数字都乘以该标量即可。
特殊矩阵
- 零矩阵(\(\mathbf{0}\)):所有元素皆为 0 的矩阵。任何矩阵加上零矩阵都不会改变。
- 单位矩阵(\(\mathbf{I}\)):这是矩阵版本的数字“1”。它的主对角线(从左上角到右下角)全为 1,其余位置皆为 0。对于 2x2 矩阵:\(\mathbf{I} = \begin{pmatrix} 1 & 0 \\ 0 & 1 \end{pmatrix}\)。
相等
两个矩阵只有在维度相同且每一个对应的元素都完全相同时,才被视为相等。
重点复习:只有维度相同的矩阵才能相加减。乘上标量会“拉伸”盒子里的每一个数字。
2. 矩阵乘法:“行乘以列”规则
矩阵相乘与普通数字相乘大不相同。这是一个将第一个矩阵的行与第二个矩阵的列进行结合的过程。
记忆小撇步:记住 “RC”(就像遥控车 Remote Control 或可乐 Coca-Cola)。我们永远是先看行(Row)再看列(Column)。
运作步骤:
1. 选取矩阵 A 的第一行(Row)与矩阵 B 的第一列(Column)。
2. 将对应的元素两两相乘,然后将结果加总。
3. 这个总和就是答案矩阵中第一行第一列的数值。
重要规则:
- 不可交换性(Non-Commutative):在普通数学中,\(2 \times 3 = 3 \times 2\)。但在矩阵中,\(\mathbf{AB}\) 通常不等于 \(\mathbf{BA}\)。顺序至关重要!
- 结合律(Associative):你可以自由分组:\(\mathbf{A(BC) = (AB)C}\)。
- 大小匹配:要进行 \(\mathbf{A}\) 与 \(\mathbf{B}\) 的乘法,\(\mathbf{A}\) 的列数必须等于 \(\mathbf{B}\) 的行数。
核心观念:顺序很重要!交换矩阵相乘的顺序就像是你先把鞋子穿上再穿袜子一样——结果根本行不通。
3. 二维空间的线性变换
这是矩阵最令人兴奋的地方。一个 2x2 矩阵可以作为一套指令,将任何点 \((x, y)\) 移动到新的位置。
单位向量技巧
寻找变换矩阵最简单的方法,是观察单位向量 \(\mathbf{i} = \begin{pmatrix} 1 \\ 0 \end{pmatrix}\) 和 \(\mathbf{j} = \begin{pmatrix} 0 \\ 1 \end{pmatrix}\) 的变动情况。
如果 \(\mathbf{i}\) 移动到 \(\begin{pmatrix} a \\ c \end{pmatrix}\),而 \(\mathbf{j}\) 移动到 \(\begin{pmatrix} b \\ d \end{pmatrix}\),那么变换矩阵就是 \(\begin{pmatrix} a & b \\ c & d \end{pmatrix}\)。
常见变换:
- 反射(Reflection):沿着 \(x\) 轴、\(y\) 轴,或直线 \(y = x\) 和 \(y = -x\) 进行翻转。
- 旋转(Rotation):绕原点旋转。逆时针旋转角度 \(\theta\) 的矩阵为:\(\begin{pmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{pmatrix}\)。(注意:顺时针旋转对应负角度!)
- 放大(Enlargement):以原点为中心,按比例因子 \(k\) 进行缩放。矩阵为:\(\begin{pmatrix} k & 0 \\ 0 & k \end{pmatrix}\)。
- 拉伸(Stretch):仅在一个方向(平行于 \(x\) 轴或 \(y\) 轴)上拉伸图形。
- 错切(Shear):在保持一条轴不动的情况下,将图形倾斜。
你知道吗?在三维变换中,我们通常处理如 \(x=0\)(即 \(yz\) 平面)的反射,以及绕 \(x\)、\(y\) 或 \(z\) 轴旋转 \(90^\circ\) 或 \(180^\circ\)。其逻辑与二维完全相同!
4. 连续变换
如果你想先旋转一个图形,然后再对它进行反射,该怎么做?这称为连续变换(Successive Transformations)。
如果变换 \(\mathbf{T}\) 由矩阵 \(\mathbf{M}\) 表示,变换 \(\mathbf{U}\) 由矩阵 \(\mathbf{N}\) 表示,则组合变换“先做 T 再做 U”由矩阵乘积 \(\mathbf{NM}\) 表示。
常见错误:学生常会按照发生的顺序写成 MN。但矩阵运算是由右向左进行的。最靠近向量的矩阵才是先作用的那个!
核心观念:变换矩阵的书写顺序应与变换发生的顺序相反。
5. 行列式(Determinant):缩放比例因子
矩阵的行列式(写作 \(\det\mathbf{M}\) 或 \(|\mathbf{M}|\))是一个单一的数值,它告诉我们关于变换的许多信息。
如何计算:
- 对于 2x2 矩阵 \(\begin{pmatrix} a & b \\ c & d \end{pmatrix}\),行列式为 \(ad - bc\)。
- 对于 3x3 矩阵,你可以使用计算器,但你也必须学会如何手动通过“余子式(minor)”进行计算(沿着一行展开)。
行列式的意义:
- 面积/体积缩放因子:行列式的绝对值告诉你面积(二维)或体积(三维)被缩放了多少倍。如果 \(\det\mathbf{M} = 5\),图形就变成了原来的 5 倍大!
- 方向性(Orientation):如果行列式为负数,代表图形经过了翻转(如同镜像)。图形的“手性(handedness)”改变了。
- 奇异矩阵(Singular Matrices):如果 \(\det\mathbf{M} = 0\),该矩阵称为奇异矩阵。这意味着它会把整个图形压缩成一条线或一个点。奇异矩阵没有反矩阵!
6. 反矩阵:撤销按钮
反矩阵(Inverse Matrix)\(\mathbf{M}^{-1}\) 可以撤销原矩阵的效果。如果你将一个矩阵与其反矩阵相乘,会得到单位矩阵:\(\mathbf{MM}^{-1} = \mathbf{I}\)。
反矩阵的性质:
- 求解方法:对于 2x2 矩阵,交换 \(a\) 和 \(d\),变更 \(b\) 和 \(c\) 的符号,最后除以行列式。对于 3x3 矩阵,除非题目要求,否则通常建议使用计算器。
- 矩阵方程:要解 \(\mathbf{Ax} = \mathbf{B}\),请在等式两边的左侧同时乘以反矩阵:\(\mathbf{x} = \mathbf{A}^{-1}\mathbf{B}\)。
- 积的法则:这是经典的考试题!乘积的反矩阵等于各矩阵反矩阵的反序乘积:\((\mathbf{AB})^{-1} = \mathbf{B}^{-1}\mathbf{A}^{-1}\)。
类比:把积的法则想像成脱鞋子和袜子。要“撤销”穿上它们的过程(先穿袜子再穿鞋子),你必须按反向顺序操作(先脱鞋子再脱袜子)。
7. 不变性:保持静止
有时候,图形在变换过程中某些部分是不会变动的。
- 不变点(Invariant Point):在变换后位置完全不变的特定点 \((x, y)\)。原点 \((0, 0)\) 对所有线性变换而言都是不变点。
- 不变直线(Invariant Line):一条直线,上面所有的点变换后依然落在这条直线上(尽管这些点可能会沿着线滑动)。
- 不变点直线(Line of Invariant Points):一种特殊情况,即这条线上的每一个点在变换后都完全不动(例如反射变换中的镜像线)。
重点复习:不变直线就像火车轨道——火车沿着轨道移动,虽然会改变位置,但仍在轨道上。而不变点直线就像一辆冻结在轨道上的火车——什么都不会移动!
如果一开始觉得矩阵很抽象,别担心。保持练习“行乘以列”的乘法,并试着想像单位向量 \(\mathbf{i}\) 和 \(\mathbf{j}\) 的变动,很快你就会成为矩阵大师了!