矩阵论:若尔当标准型
线性变换既然有矩阵表示,我们希望其应用到向量上得到的象能方便得到,即我们希望线性变换对应的矩阵尽量简单,比如能变为对角矩阵。为此,我们首先引入线性变换的特征值和特征向量,它和普通方阵类似。
特征值与特征向量
定义 1 设 $T: V \to V$ 是一个线性变换,如果存在 $\lambda_0 \in K$,使得存在非零向量 $x \in V$ 满足:
$$ T x = \lambda_0 x$$
那么我们称 $\lambda_0$ 是 $T$ 的特征值,$x$ 是 $T$ 属于 $\lambda_0$ 的特征向量。
定义 2 设 $\boldsymbol{A} = (a_{ij}){n\times n}$ 是数域 $K$ 上的 $n$ 阶矩阵,$\lambda$ 是参数,$\boldsymbol{A}$ 的特征矩阵 $\lambda I - A$ 的行列式:
$$
\det (\lambda I-A) = \begin{vmatrix}
\lambda-a{11} & -a_{12} & \cdots & -a_{1n} \
-a_{21} & \lambda-a_{22} & \cdots & -a_{2n} \
\vdots & \vdots & \ddots & \vdots \
-a_{n1} & -a_{n2} & \cdots & \lambda-a_{nn}
\end{vmatrix}
$$
称为矩阵 $\boldsymbol{A}$ 的特征多项式,记为 $\varphi(\lambda)$。它的根 $\lambda_0$ 称为 $\boldsymbol{A}$ 的特征值,而对应的非零解向量 $(\xi_1, \xi_2, \dots, \xi_n)^T$ 称为 $\boldsymbol{A}$ 的属于特征值 $\lambda_0$ 的特征向量。
最小多项式
定义 3 设 $\boldsymbol{A}$ 的首项系数为 $1$,次数最小,且以 $\boldsymbol{A}$ 为根的 $\lambda$ 的多项式,称为 $\boldsymbol{A}$ 的最小多项式,记为 $m(\lambda)$。
最小多项式与特征多项式的关系
定理 1 设矩阵 $\boldsymbol{A}$ 的最小多项式 $m(\lambda)$ 可整除以 $\boldsymbol{A}$ 为根的任一首 $1$ 多项式 $\psi(\lambda)$,且 $m(\lambda)$ 是唯一的。
定理 2 矩阵 $\boldsymbol{A}$ 的最小多项式 $m(\lambda)$ 与其特征多项式 $\varphi(\lambda)$ 的零点相同(不计重数)。
定理 3 设 $n$ 阶矩阵 $\boldsymbol{A}$ 的特征多项式为 $\varphi(\lambda)$,特征矩阵 $\lambda I - A$ 的全体 $n-1$ 阶子式的最大公因式为 $d(\lambda)$,则 $\boldsymbol{A}$ 的最小多项式为:
$$ m(\lambda) = \frac{\varphi(\lambda)}{d(\lambda)} $$
Jordan 标准型
定义 4 设矩阵 $\boldsymbol{J}$ 由以下 Jordan 块构成:
$$
\boldsymbol{J} = \begin{bmatrix}
\boldsymbol{J}_1(\lambda_1) & & & \
& \boldsymbol{J}_2(\lambda_2) & & \
& & \ddots & \
& & & \boldsymbol{J}_s(\lambda_s)
\end{bmatrix}
$$
其中,Jordan 块的形式如下:
$$
\boldsymbol{J}_i(\lambda_i) =
\begin{bmatrix}
\lambda_i & 1 & 0 & \cdots & 0 \
0 & \lambda_i & 1 & \cdots & 0 \
0 & 0 & \lambda_i & \cdots & 0 \
\vdots & \vdots & \vdots & \ddots & 1 \
0 & 0 & 0 & \cdots & \lambda_i
\end{bmatrix}
$$
称 $\boldsymbol{J}$ 为矩阵 $\boldsymbol{A}$ 的Jordan 标准型。
计算 Jordan 标准型的步骤
-
求矩阵 $\boldsymbol{A}$ 的初等因子组,设为:
$$ (\lambda - \lambda_1)^{m_1}, (\lambda - \lambda_2)^{m_2}, \dots, (\lambda - \lambda_s)^{m_s} $$
且 $m_1 + m_2 + \cdots + m_s = n$。 -
写出每个初等因子对应的 Jordan 块。
-
构造 Jordan 标准型:
$$ \boldsymbol{J} = \begin{bmatrix}
\boldsymbol{J}_1(\lambda_1) & & & \
& \boldsymbol{J}_2(\lambda_2) & & \
& & \ddots & \
& & & \boldsymbol{J}_s(\lambda_s)
\end{bmatrix}$$
计算工具
在实际计算中,Python 提供了强大的 NumPy
和 SymPy
库,可以用于快速计算 Jordan 标准型。