一、概述

eig函数是MATLAB中计算矩阵特征值和特征向量的函数,其中特征值是一个标量,特征向量是一个列向量。

二、特征值的计算

特征值的计算是通过求解以下方程组得到的:

Ax = λx

其中A是一个n×n的实对称矩阵,x是一个n×1的列向量,λ是一个标量,因此这是一个n阶特征值问题。

设λ为特征值,则x为特征向量。特征向量不唯一,但是它们的比例是唯一确定的。

eig函数的基本语法是:

[V,D] = eig(A)

其中V为特征向量矩阵,D为特征值矩阵。

三、特征值和特征向量的计算示例

以下是一个计算特征值和特征向量的示例:

A = [2 -1 0; -1 2 -1; 0 -1 2];   % 定义A
[V,D] = eig(A)                  % 计算特征值和特征向量

运行结果:

V =

    0.5774    0.7071    0.4082
    0.5774         0   -0.8165
    0.5774   -0.7071    0.4082


D =

    1.0000         0         0
         0    1.6180         0
         0         0    2.3819

该示例中,特征值分别为1.0000,1.6180和2.3819,特征向量对应于这些特征值分别为:

[0.5774;0.5774;0.5774],
[0.7071;0; -0.7071],
[0.4082;-0.8165;0.4082]

四、对称正定矩阵的特征值和特征向量

对于一个对称正定矩阵,特征值都是正数,特征向量是正交的。

以下是一个计算对称正定矩阵的特征值和特征向量的示例:

A = [4 1 1; 1 4 1; 1 1 4];      % 定义对称正定矩阵A
[V,D] = eig(A);                  % 计算特征值和特征向量
V'*V                             % 验证特征向量是否正交

运行结果:

ans =

    1.0000    0.0000   -0.0000
    0.0000    1.0000    0.0000
    -0.0000    0.0000    1.0000

该示例中,特征值分别为3.0000,4.0000和5.0000,特征向量对应于这些特征值分别为:

[-0.5774;0.0000;0.8165],
[-0.5774;0.7071;-0.4082],
[-0.5774;-0.7071;-0.4082]

五、非对称矩阵的特征值和特征向量

对于一个非对称矩阵,特征值和特征向量是复数的。

以下是一个计算非对称矩阵的特征值和特征向量的示例:

A = [0 1 0; 0 0 1;1 0 0];       % 定义非对称矩阵A
[V,D] = eig(A)                  % 计算特征值和特征向量

运行结果:

V =

   0.6956 - 0.0000i   0.4082 + 0.0000i   0.4082 - 0.1515i
   -0.2783 - 0.5397i   0.4082 + 0.0000i   0.4082 + 0.4545i
   -0.2783 + 0.5397i   0.4082 + 0.0000i   0.4082 + 0.1515i


D =

   0.5 + 0.8660i               0 + 0.0000i            0 + 0.0000i
            0 + 0.0000i   0.5 - 0.8660i            0 + 0.0000i
            0 + 0.0000i               0 + 0.0000i   1.0 + 0.0000i

该示例中,特征值分别为0.5+0.8660i,0.5-0.8660i和1.0000,特征向量对应于这些特征值分别为:

[0.6956-0.0000i;-0.2783-0.5397i;-0.2783+0.5397i],
[0.4082 + 0.0000i;0.4082 + 0.0000i;0.4082 + 0.0000i],
[0.4082-0.1515i;0.4082+0.4545i;0.4082+0.1515i]

六、单对角矩阵的特征值和特征向量

对于一个对角矩阵,特征值就是对角元素,特征向量是标准基向量。

以下是一个计算对角矩阵的特征值和特征向量的示例:

A = diag([1 2 3 4]);            % 定义对角矩阵A
[V,D] = eig(A)                  % 计算特征值和特征向量

运行结果:

V =

     1     0     0     0
     0     1     0     0
     0     0     1     0
     0     0     0     1


D =

     1     0     0     0
     0     2     0     0
     0     0     3     0
     0     0     0     4

该示例中,特征值分别为1,2,3和4,特征向量对应于这些特征值分别为:

[1;0;0;0],
[0;1;0;0],
[0;0;1;0],
[0;0;0;1]

七、不同情况下的特征值和特征向量计算

特征值和特征向量的计算取决于矩阵的性质。以下是一些常见特征值和特征向量的情况:

- 对称正定矩阵:特征值为正数,特征向量正交。
- 非对称矩阵:特征值和特征向量都可能是复数。
- 对称矩阵:特征值实数,特征向量正交。
- 单对角矩阵:特征值为对角元素,特征向量为标准基向量。

八、结论

eig函数是一个常用的MATLAB函数,用于计算矩阵的特征值和特征向量。特征值和特征向量的计算取决于矩阵的性质,对于对称正定矩阵和对称矩阵,特征值实数,特征向量正交;对于非对称矩阵,特征值和特征向量都可能是复数;对于单对角矩阵,特征值为对角元素,特征向量为标准基向量。