关于matlab求矩阵的最大特征根的算法,

问题描述:

关于matlab求矩阵的最大特征根的算法,
你写的源代码:
%%想要最大特征值所对应的特征向量,只要将相应的max_x_*输出即可
A=[
1 1/3 1/5
3 1 1/3
5 3 1];
[x,lumda]=eig(A);
r=abs(sum(lumda));
n=find(r==max(r));
max_lumda_A=lumda(n,n) %最大特征根
max_x_A=x(:,n); %最大特征根所对应的特征向量
1个回答 分类:数学 2014-11-17

问题解答:

我来补答
[x,lumda]=eig(A);
这句是得到A的特征值和相应的特征向量.
会发现x是特征向量,是N*N的矩阵(N是A的大小),即3*3
而lumda也是一个3*3的矩阵,不过它只是对角线上有值.
只要找到对角线上绝对值最大的列.然后输出x相应的列就是最大特征根对应的特征值.
r=abs(sum(lumda)),先对lumda进行列求和.然后求绝对值,实际上就是求对角线元素的绝对值.
n=find(r==max(r)),首先先求出r中最大的值,然后再找到哪一列是最大的值.最后得到的n是最大特征值对应的列.
于是最大特征值为lumda中第n行第n列(lumda是方阵,其实就是求它的第n个对角元)
相应的特征向量,就是x中第n列.
 
 
展开全文阅读
剩余:2000
下一页:先解十一题