【问题标题】:problem in finding eigenvectors of a matrix in MATLAB在MATLAB中查找矩阵的特征向量的问题
【发布时间】:2011-08-16 00:05:28
【问题描述】:

我有一个包含元素A=[8.8191,0,1.0261; 0,3,0; 1.0261,0,3.1809]; 的对称矩阵 我在MATLAB中使用了eig(A)函数,给出了特征值和特征向量:

eigvect =

0.1736         0    0.9848
     0   -1.0000         0
-0.9848         0    0.1736


eigval =

3.0000         0         0
     0    3.0000         0
     0         0   9.0000    

特征值是正确的,但特征向量不是我所期望的,因为我认为其中 2 个应该相等。 MATLAB 是否正确计算了特征向量?

【问题讨论】:

    标签: matlab eigenvector eigenvalue


    【解决方案1】:

    特征值的定义可以在web的任何地方找到

    A*v = lam*v
    

    v 为特征向量,其对应的特征值为 lam。

    所以测试你的结果:

    i =1;
    A*eigvect (:,i)-eigval(i,i)*eigvect(:,i) %which should be approx [0;0;0]
    

    【讨论】:

    • 非常感谢拉斯曼,它为 3 个特征值提供了 [0;0;0],因此特征向量是正确的。但是为什么矩阵有 3 个不同的特征向量呢?两个特征向量不应该相等吗,因为只有 2 个不同的特征值?
    • @Lesley :不。确定系统维度的是特征向量。例如,3x3 单位矩阵具有三个不同的特征向量,但只有一个特征值。
    【解决方案2】:

    每个重复的特征值都没有必要有其(独立的)关联的特征向量。这意味着,一个特征值重复多次的 nxn 矩阵具有小于或等于 n 个线性无关的特征向量。

    示例 1: 矩阵 2 0; 0 2 有特征值 2(重复两次),但它有两个与特征值 2 相关的线性独立特征向量

    示例 2:矩阵 A= 1 1 1 -2; 0 1 0 -1; 0 0 1 1; 0 0 0 1

    具有特征值 1(重复四次),但它只有两个与特征值 1 相关联的独立特征向量。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-11-30
      • 1970-01-01
      • 2017-10-21
      • 1970-01-01
      • 1970-01-01
      • 2018-10-12
      • 1970-01-01
      相关资源
      最近更新 更多