matlab如何求矩阵特征根

2024-11-27 06:16:56
推荐回答(4个)
回答1:

求矩阵的特征
J =
1 0 0
0 2 0

0 0 3
poly(J)

得到系数结果
ans =
1 -6 11 -6

转化就是:
x^3-6x^2+11x-6=0

求特征值:
eig(J)
ans =
1
2
3

---------------------------------------------------------------------------------------

(1) E=eig(A):求矩阵A的全部特征值,构成向量E。
(2) [V,D]=eig(A):求矩阵A的全部特征值,构成对角阵D,并求A的特征向量构成V的列向量。
(3) [V,D]=eig(A,'nobalance'):与第2种格式类似,但第2种格式中先对A作相似变换后求矩阵A的特征值和特征向量,而格式3直接求矩阵A的特征值和特征向量。
(4) E=eig(A,B):由eig(A,B)返回N×N阶方阵A和B的N个广义特征值,构成向量E。
(5) [V,D]=eig(A,B):由eig(A,B)返回方阵A和B的N个广义特征值,构成N×N阶对角阵D,其对角线上的N个元素即为相应的广义特征值,同时将返回相应的特征向量构成N×N阶满秩矩阵,且满足AV=BVD。eig
Find eigenvalues and eigenvectors
Syntax
d = eig(A)
d = eig(A,B)
[V,D] = eig(A)
[V,D] = eig(A,'nobalance')
[V,D] = eig(A,B)
[V,D] = eig(A,B,flag)

d = eig(A)和 [V,D] = eig(A)最为常用 注意,第一列为对应第一个特征值的特征向量,比如:
B=rand(4)
B =
0.5653 0.7883 0.1365 0.9749
0.2034 0.5579 0.3574 0.6579
0.5070 0.1541 0.9648 0.0833
0.5373 0.7229 0.3223 0.3344
>> [a,b]=eig(B)
a =
-0.6277 -0.3761 -0.7333 0.7110
-0.4304 -0.5162 0.2616 -0.2155
-0.4297 0.1563 0.6049 -0.6471
-0.4859 0.7534 -0.1672 0.1713
b =
1.9539 0 0 0
0 -0.3623 0 0
0 0 0.3937 0
0 0 0 0.4370
则1.9539对应的特征向量为:
-1.2265
-0.8410
-0.8396
-0.9494

回答2:

[V,x]=eig(A),可求矩阵A的特征值及特征向量。
V特征值
x特征向量

回答3:

你可以用符号解法。
例如:
a=sym([1 2;5 9]);
[v d]=eig(a);
这就ok 了,。

回答4:

有一种可能是两者特征值的顺序不一样,一个是从大到小排列的,而另一个是从小到大排列的,其实两者的答案一样。你可以查查看。