对角矩阵是指在一个方阵中,只有主对角线上的元素可能非零,而其他位置的元素都是零的矩阵。形式化定义如下:
D=d100⋮00d20⋮000d3⋮0⋯⋯⋯⋱⋯000⋮dn其中 d1,d2,…,dn 是对角线上的元素,可以是任意实数。
如果把矩阵看作加工向量的机器,普通矩阵会把向量旋转 + 缩放,而对角阵非常纯粹:它 只做缩放,不旋转 。
对角矩阵的计算非常简单:
- 乘法极快:
- 两个对角阵相乘,只需要把对应的对角元素相乘即可。
- 对角阵和向量相乘,也只需要把向量的每个分量分别乘以对应的对角元素(看作不同坐标轴上缩放程度不一样)。这大大减少了计算量,尤其在高维空间中。
Dx=d100⋮00d20⋮000d3⋮0⋯⋯⋯⋱⋯000⋮dnx1x2x3⋮xn=d1x1d2x2d3x3⋮dnxn=i=1∑ndixiei
- 求幂简单:想求 D100?不需要乘一百次,直接把对角线上的每个数字求 100 次方。
- 行列式好算:det(D) 就是主对角线所有元素的乘积。
- 逆矩阵秒出:只要对角线上没有 0,逆矩阵 D−1 就是把对角线元素全部取倒数
- 特征值:对于对角阵,对角线上的数字直接就是它的特征值。
特征值={d1,d2,…,dn}