如何求特征值和特征向量

如题所述

求特征值的传统方法是令特征多项式| AE-A| = 0,求出A的特征值,对于A的任一特征值h,特征方程( aE- A)X= 0的所有非零解X即为矩阵A的属于特征值N的特征向量两者的计算是分割的,一个是计算行列式,另一个是解齐次线性方程组,且计算量都较大。使用matlab可以方便的计算任何复杂的方阵的特征值和特征向量:

1、首先需要知道计算矩阵的特征值和特征向量要用eig函数,可以在命令行窗口中输入help eig,查看一下eig函数的用法,如下图所示:

2、在命令行窗口中输入a=[1 2 3;2 4 5;7 8 9],按回车键之后,输入[x,y]=eig(a),如下图所示:

3、按回车键之后,得到了x,y的值,其中x的每一列值表示矩阵a的一个特征向量,这里有3个特征向量,y的对角元素值代表a矩阵的特征值,如下图所示:

4、步如果我们要取y的对角元素值,可以使用diag(y),如下图所示:

5、按回车键之后,可以看到已经取出y的对角线元素值,也就是a矩阵的特征值,如下图所示:

6、第六步我们也可以在命令行窗口help diag,可以看到关于diag函数的用法,如下图所示:

注意事项:

特征值和特征向量的应用:

1、可以用在研究物理、化学领域的微分方程、连续的或离散的动力系统中。例如,在力学中,惯量的特征向量定义了刚体的主轴。惯量是决定刚体围绕质心转动的关键数据;

2、数学生态学家用来预测原始森林遭到何种程度的砍伐,会造成猫头鹰的种群灭亡;

3、著名的图像处理中的PCA方法,选取特征值最高的k个特征向量来表示一个矩阵,从而达到降维分析+特征显示的方法,还有图像压缩的K-L变换。再比如很多人脸识别,数据流模式挖掘分析等方面。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-10-01

想想特征向量的原始定义Ax= cx,你就恍然大悟了,看到了吗?cx是方阵A对向量x进行变换后的结果,但显然cx和x的方向相同),而且x是特征向量的话,ax也是特征向量(a是标 量且不为零),所以所谓的特征向量不是一个向量而是一个向量族, 另外,特征值只不过反映了特征向量在变换时的伸缩倍数而已

本回答被网友采纳
第2个回答  2020-12-09
第3个回答  2023-05-18

特征向量是指在矩阵与向量相乘时,所得到的向量与原向量在同一方向上的向量。而特征值表示当矩阵与特征向量相乘时,所得到的向量与原向量在同一方向上的倍数关系。下面是求解特征值和特征向量的步骤:1. 读入矩阵A。2. 计算方阵A的特征多项式$det\\left(\\lambda I-A\\right)$。3. 解特征多项式的根得到方阵A的特征值。4. 对于每特征值$\\lambda_i$,解出线性方程组$\\left(\\lambda_iI-A\\right)x=0$,得到特征向量。需要注意的是,对于特征向量来说,有无数个解,所以需要将其标准化为单位向量。在计算过程中,可以使用求解特征值和特征向量的工具函数或者适用于计算的数学软件,例如Matlab、Python等。