只被拉伸的方向
想象一个变换作用在平面上。几乎每一支箭头都被旋转得偏离了原来所在的那条线。但对于某些特殊方向,箭头仍留在自己那条线上,只是变长、变短或翻转。这样的方向就是一个 特征向量,而那个告诉它缩放了多少的数,就是它的 特征值,记作 lambda。
A * v = lambda * v the matrix A acting on v gives the SAME direction v, just scaled by the number lambda
用特征方程把它们找出来
把 A*v = lambda*v 改写成 (A - lambda*I)*v = 0。要让某个非零的 v 被压成零,矩阵 (A - lambda*I) 就必须压垮空间——也就是说它的 行列式 为零。令 det(A - lambda*I) = 0,就得到 特征多项式,它的根就是特征值。
- 从 A = [[2,1],[0,3]] 开始,构造 A - lambda*I = [[2-lambda,1],[0,3-lambda]]。
- 取行列式:(2-lambda)(3-lambda) - 1*0 = (2-lambda)(3-lambda)。
- 令它为 0;根是 lambda = 2 与 lambda = 3——这两个就是特征值。
- 对 lambda = 2,解 (A - 2I)*v = 0 得到特征向量 (1,0);对 lambda = 3,得到 (1,1)。
一句老实话:并非每个矩阵都有实特征向量
特征向量是那些仍留在自己那条线上的方向。而纯旋转会把每一个方向都甩离它的线——这正是旋转的全部意义。所以在实数范围内,旋转根本没有特征向量,它的特征多项式也没有实根。
rotation by 90 degrees: A = [[0,-1],[1,0]] det(A - lambda*I) = lambda^2 + 1 = 0 no real solution (roots are imaginary) => no real eigenvector