我们将讨论四种特征分解,或者说四种与矩阵A相似的矩阵,它们在解决特征问题时更为简便。第一种是对角形式,仅在存在n个独立特征向量时才存在。第二种是约当形式,它将对角形式推广到所有矩阵。它可能非常病态(实际上,它可能会不连续变化),因此对于数值计算,我们通常使用第三种,即舒尔形式,它在计算上更经济且更稳定。我们简要提及第四种,我们称之为约当-舒尔形式1,它与舒尔形式一样稳定,但计算了约当形式提供的关于不变子空间的一些详细信息。
定义 \Lambda = {\rm diag}(\lambda_1 ,\ldots, \lambda_n)。 如果存在n个独立的右特征向量 x_1,\ldots,x_n, 我们定义 X = [x_1,\ldots,x_n]。 X被称为A的特征向量矩阵。 n个等式 A x_i = \lambda_i x_i 对于 i=1,\ldots,n 也可以写成 AX = X \Lambda 或 A = X \Lambda X^{-1}。如下分解
如果我们取X的k列(例如 \hat{X}= X(:,[2,3,5]) = 第2、3和5列),这些列张成了A的一个不变子空间。 如果我们取相应的子矩阵 \hat{\Lambda}= {\rm diag}(\lambda_2 , \lambda_3 , \lambda_5) 从\Lambda中,以及X^{-1}的相应三行(例如 \hat{Y}^* = X^{-1}([2,3,5],:)), 我们可以写出相应的部分对角形式为 A \hat{X}= \hat{X}\hat{\Lambda} 或 \hat{Y}^* A \hat{X}= \hat{\Lambda}。如果\hat{X}中的列被张成同一不变子空间的k个不同向量替换,我们得到 一个不同的部分特征分解 A \check{X}= \check{X}\check{A}, 其中\check{A}是一个k乘k矩阵,其特征值与\hat{\Lambda}相同,尽管 \check{A}可能不是对角的。下面讨论的其他特征分解也可以通过类似的过程产生部分特征分解。
如果所有的\lambda_i都是不同的,那么一定存在n个独立的特征向量, 对角形式存在。这是最简单和最常见的情况。 例如,如果随机选择一个矩阵2,特征值不同的概率是1。
(2.3)式中矩阵 A(0) 的对角形式不存在,因为它只有一个独立的特征向量。 相反,我们可以计算它的约当形式,它是如下分解
不幸的是,约当形式通常不适用于数值计算。以下是两个原因。首先,它可能随着A的变化而不连续变化。例如,矩阵J对于A(\epsilon), \epsilon \neq 0 是 {\rm diag}(+ \epsilon , - \epsilon),但对于A(0),J=A(0)本身。其次,特征向量矩阵X 可能非常病态,即难以准确求逆。 在A(\epsilon)的情况下,X的条件数增长为1/\epsilon。
因此,我们更常用形式为
最后,我们考虑约当-舒尔形式。 它相当复杂,因此我们只在这里总结其性质。与舒尔形式一样,它只使用酉(正交)变换,因此可以稳定地计算。 与约当形式一样,它明确显示了约当块的大小,并为比舒尔形式更多的不变子空间提供了明确的基。
许多教科书给出了在约当形式的A的基础上计算指数矩阵e^A等问题的明确解[114]。 这些方法在数值上应避免,因为计算约当形式相当困难。 几乎所有这些问题都有基于舒尔形式或某些情况下的约当-舒尔形式的替代解决方案。