关于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
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/27 04:56:58
关于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
关于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); %最大特征根所对应的特征向量
关于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
[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列.