线性变换可视化 — 设计文档

← 返回模拟器   |   ← 返回首页

1. 概述

在线性代数中,一个 2×2 矩阵 本质上描述了一个线性变换——它将平面上的每个点映射到另一个点。理解线性变换的关键是:你只需要知道基向量 î 和 ĵ 被映射到哪里,整个变换就完全确定了

这个模拟器让基向量变得可拖拽——拖动箭头端点改变 î 和 ĵ 的位置,实时观察整个网格如何随之变形。矩阵的数值、行列式、特征值等性质同步更新。


2. 核心数学

2.1 矩阵与基向量

一个 2×2 矩阵的每一列就是该基向量在变换后的位置

\[ M = \begin{bmatrix} a & b \\ c & d \end{bmatrix} \qquad \Rightarrow\qquad \begin{aligned} \text{î} &\mapsto \begin{bmatrix} a \\ c \end{bmatrix} \\ \text{ĵ} &\mapsto \begin{bmatrix} b \\ d \end{bmatrix} \end{aligned} \]

任意点 \((x, y)\) 的变换结果:

\[ M \begin{bmatrix} x \\ y \end{bmatrix} = \begin{bmatrix} a & b \\ c & d \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix} = \begin{bmatrix} ax + by \\ cx + dy \end{bmatrix} = x \begin{bmatrix} a \\ c \end{bmatrix} + y \begin{bmatrix} b \\ d \end{bmatrix} \]

最后一行揭示了本质:变换后的点 = \(x \times\) 变换后的 î + \(y \times\) 变换后的 ĵ。网格的所有形变都来源于两个基向量的改变。

2.2 行列式 = 面积缩放因子

\[ \det(M) = ad - bc \]

行列式的几何意义是单位正方形变换后的有向面积

\(\det\)几何意义
\(\det > 0\)保持方向,面积放大 \(|\det|\) 倍
\(\det = 0\)退化——平面被压缩到一条线或一个点,不可逆
\(\det < 0\)翻转方向(镜像),面积放大 \(|\det|\) 倍
\(\det = 1\)面积不变(旋转、剪切属于此类)

2.3 特征值与特征向量

满足 \(M\mathbf{v} = \lambda\mathbf{v}\) 的向量 \(\mathbf{v}\) 称为特征向量,它在变换后方向不变(只被拉伸了 \(\lambda\) 倍)。

\[ \lambda = \frac{\operatorname{tr}(M) \pm \sqrt{\operatorname{tr}(M)^2 - 4\det(M)}}{2} \]

其中 \(\operatorname{tr}(M) = a + d\) 是迹。

2.4 变换类型速查

类型矩阵示例\(\det\)特征
恒等\(\begin{bmatrix}1&0\\0&1\end{bmatrix}\)1不变
旋转 \(\theta\)\(\begin{bmatrix}\cos\theta&-\sin\theta\\\sin\theta&\cos\theta\end{bmatrix}\)1复特征值
均匀缩放\(\begin{bmatrix}k&0\\0&k\end{bmatrix}\)\(k^2\)\(\lambda=k\)
剪切\(\begin{bmatrix}1&s\\0&1\end{bmatrix}\)1\(\lambda=1\)(二重)
X 轴反射\(\begin{bmatrix}-1&0\\0&1\end{bmatrix}\)-1\(\lambda=\pm1\)
投影到 X 轴\(\begin{bmatrix}1&0\\0&0\end{bmatrix}\)0退化

3. 交互与可视化

3.1 网格变形

模拟器绘制了两套网格:

每条原始竖线 \(x=k\) 变换为过点 \((ak, ck)\) 方向为 \((b, d)\) 的直线;每条原始横线 \(y=k\) 变换为过点 \((bk, dk)\) 方向为 \((a, c)\) 的直线。

3.2 交互设计

操作效果
拖拽 î 箭头(红)改变矩阵第一列
拖拽 ĵ 箭头(蓝)改变矩阵第二列
点击预设按钮跳转到特定变换(旋转/剪切/反射/投影等)
悬停箭头光标变为抓取状态

拖拽时坐标量化为 0.05 步长,方便精确控制基向量位置。

3.3 实时更新的量


4. 使用指南

4.1 基本操作

操作效果
拖拽 î 箭头(红)改变矩阵第一列,即变换后 î 基向量的位置
拖拽 ĵ 箭头(蓝)改变矩阵第二列,即变换后 ĵ 基向量的位置
点击预设按钮跳转到特定变换(旋转 / 剪切 / 反射 / 投影等)
悬停箭头光标变为抓取状态,提示可拖拽

4.2 实时观察的数学量

4.3 实验探索


5. 教学价值

  1. "矩阵就是变换":最核心的线性代数直觉——你不只是在操作数字,而是在拉伸和扭曲空间
  2. 行列式的几何意义:看到平行四边形面积随基向量变化,不再只是一个公式
  3. 退化(det=0):平面被压扁——直观理解为什么不可逆
  4. 特征向量的方向不变性:在网格中寻找那些"只被拉伸不改变方向"的线
  5. 基的任意性:理解 î 和 ĵ 不必正交,可以任意倾斜

这个模拟器的核心思想源自 Grant Sanderson(3Blue1Brown)的 Essence of Linear Algebra 系列——"线性代数的本质就是以基向量的变换来理解矩阵"。