求矩阵最大特征值和对应特征向量A=[1,1/3,1/3,1/5,1/9; 3,1,1,1/2,1/3; 3,1,1,1/2,1/3; 5,2,2,1,1/2; 9,3,3,2,1]最好能告诉如何用matlab求的过程
来源:学生作业帮助网 编辑:作业帮 时间:2024/08/30 11:03:19
求矩阵最大特征值和对应特征向量A=[1,1/3,1/3,1/5,1/9; 3,1,1,1/2,1/3; 3,1,1,1/2,1/3; 5,2,2,1,1/2; 9,3,3,2,1]最好能告诉如何用matlab求的过程
求矩阵最大特征值和对应特征向量
A=[1,1/3,1/3,1/5,1/9;
3,1,1,1/2,1/3;
3,1,1,1/2,1/3;
5,2,2,1,1/2;
9,3,3,2,1]
最好能告诉如何用matlab求的过程
求矩阵最大特征值和对应特征向量A=[1,1/3,1/3,1/5,1/9; 3,1,1,1/2,1/3; 3,1,1,1/2,1/3; 5,2,2,1,1/2; 9,3,3,2,1]最好能告诉如何用matlab求的过程
>> A=[1,1/3,1/3,1/5,1/9;
3,1,1,1/2,1/3;
3,1,1,1/2,1/3;
5,2,2,1,1/2;
9,3,3,2,1];
[x,lumda]=eig(A);
r=abs(sum(lumda));
n=find(r==max(r));
max_lumda=lumda(n,n)
max_x=x(:,n)
输出结果:
max_lumda =
5.0097
max_x =
0.0875
0.2534
0.2534
0.4625
0.8063
--> X =
1. 2. 1. 1. 4. 3. 5.
0.5 1. 0.5 0.5 2. 1.5 2.5
1. 2. 1. 1. 4. 3. 5.
1. 2. 1. 1. 4. 3. 5.
0.25 0.5 0.25 0.25 1. 0.75 1.25
0.3333333 0.6666667 0.3333333 0.3333333 1...
全部展开
--> X =
1. 2. 1. 1. 4. 3. 5.
0.5 1. 0.5 0.5 2. 1.5 2.5
1. 2. 1. 1. 4. 3. 5.
1. 2. 1. 1. 4. 3. 5.
0.25 0.5 0.25 0.25 1. 0.75 1.25
0.3333333 0.6666667 0.3333333 0.3333333 1.3333333 1. 1.6666667
0.2 0.4 0.2 0.2 0.8 0.6 1.
D =
column 1 to 6
- 4.441D-16 0 0 0 0 0
0 7. 0 0 0 0
0 0 1.525D-16 + 2.397D-16i 0 0 0
0 0 0 1.525D-16 - 2.397D-16i 0 0
0 0 0 0 - 3.051D-16 0
0 0 0 0 0 6.400D-33
0 0 0 0 0 0
column 7
0
0
0
0
0
0
- 1.586D-31
V =
column 1 to 5
0.9674449 - 0.5373230 - 0.8466353 - 0.8466353 0.9555667
- 0.0806204 - 0.2686615 0.4152683 + 0.1785009i 0.4152683 - 0.1785009i - 0.1221300
- 0.1612408 - 0.5373230 - 0.0357581 - 0.1426365i - 0.0357581 + 0.1426365i - 0.1842023
- 0.1612408 - 0.5373230 - 0.0357581 - 0.1426365i - 0.0357581 + 0.1426365i - 0.1842023
- 0.0403102 - 0.1343308 - 0.0089395 - 0.0356591i - 0.0089395 + 0.0356591i - 0.0460506
- 0.0537469 - 0.1791077 - 0.124779 + 0.0861141i - 0.124779 - 0.0861141i - 0.0443707
- 0.0322482 - 0.1074646 0.0995420 - 0.0374869i 0.0995420 + 0.0374869i - 0.0051176
column 6 to 7
- 0.8445482 0.9036907
0.0663926 - 0.1755334
- 0.1967170 0.0954576
0.4885405 - 0.1375400
0.0275800 - 0.2289693
0.0591830 0.2581228
0.0264141 - 0.0738066
-->
收起
[x,y]=eig(A)
x的列对应于特征向量,y的对角线对应于特征值。
如果所有本征值都是实数,则本征值自动按从小到大排列,那么x的最后一列是最大特征值对应的特征向量,y的右下角的元素是最大特征值。
m,b/;
>> A=[1, 1/3,1/3,1/5,1/9;
3, 1, 1, 1/2,1/3;
3, 1, 1, 1/2,1/3;
5, 2, 2, 1, 1/2;
9, 3, 3, 2, 1]
A =
1.0000 0.3333 0.3333 0.2000 0.1111
3.0000 1.000...
全部展开
>> A=[1, 1/3,1/3,1/5,1/9;
3, 1, 1, 1/2,1/3;
3, 1, 1, 1/2,1/3;
5, 2, 2, 1, 1/2;
9, 3, 3, 2, 1]
A =
1.0000 0.3333 0.3333 0.2000 0.1111
3.0000 1.0000 1.0000 0.5000 0.3333
3.0000 1.0000 1.0000 0.5000 0.3333
5.0000 2.0000 2.0000 1.0000 0.5000
9.0000 3.0000 3.0000 2.0000 1.0000
>> [V,D]=eig(A)
V =
0.0875 0.0358 - 0.0160i 0.0358 + 0.0160i -0.1633 0.0358
0.2534 -0.1302 - 0.1203i -0.1302 + 0.1203i 0.0912 -0.7078
0.2534 -0.1302 - 0.1203i -0.1302 + 0.1203i 0.0721 0.6720
0.4625 -0.1709 + 0.5209i -0.1709 - 0.5209i 0.0000 -0.0000
0.8063 0.7969 0.7969 0.9797 -0.2147
D =
5.0097 0 0 0 0
0 -0.0049 + 0.2208i 0 0 0
0 0 -0.0049 - 0.2208i 0 0
0 0 0 0.0000 0
0 0 0 0 0.0000
收起
[a b]=eig([1, 1/3,1/3,1/5,1/9;
3,1, 1, 1/2,1/3;
3, 1, 1, 1/2,1/3;
5, 2, 2, 1, 1/2;
9, 3, 3, 2, 1]);
g=max(diag(b))
[c d]=find(b==g);
e=a(:,c)
程序如上,具有一般性,对于复矩阵同样...
全部展开
[a b]=eig([1, 1/3,1/3,1/5,1/9;
3,1, 1, 1/2,1/3;
3, 1, 1, 1/2,1/3;
5, 2, 2, 1, 1/2;
9, 3, 3, 2, 1]);
g=max(diag(b))
[c d]=find(b==g);
e=a(:,c)
程序如上,具有一般性,对于复矩阵同样正确。g是最大特征值,e是最大特征值对应的特征向量,matlab输出的特征向量都是标准化的,不需另作标准化。具体命令的用法你可以查看帮助。
假如,注意,我说是假如e不是标准化的,可以用下面命令进行标准化:f=e/norm(e)
matlab7.5.0(R2007b)默认输出为
g =
5.0097
e =
0.0875
0.2534
0.2534
0.4625
0.8063
收起