⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 givens.asv

📁 矩阵论中比较重要的一种算法givens矩阵变换算法 自己编写的 调试通过
💻 ASV
字号:
clc;
clear;

%%%%Givens旋转法求解对称阵的所有特征值和对应的特征向量

N=50;%矩阵阶数
v=[100 1:1:(N-1)];
A=toeplitz(v);
T=zeros(N,N);
B=zeros(1,N);
eigenvector=eye(N,N);%特征向量
eigenvalue=zeros(1,N);%特征值  

%迭代过程
while(1)
     for k=1:N;
         B(k)=A(k,k);
     end;  
     DA=sum(B.^2);%主对角线元素的平方和
     SA=sum(sum(A.^2))-DA;%非主对角线元素的平方和 
     if SA>10^(-6)%设置精度
        for m=2:N;
            for n=1:(m-1);
                T(m,n)=A(m,n);
            end;
        end;   
        [max,irow,jrow]=maxreturn(T);

        i=jrow;
        j=irow;
        theta=atan(2*A(i,j)/(A(i,i)-A(j,j)))/2;
        G=eye(N,N);
        G(i,i)=cos(theta);
        G(j,j)=cos(theta);
        G(i,j)=sin(theta);
        G(j,i)=-sin(theta);

        A=G*A*G'; 
        eigenvector=eigenvector*G';

        else
            break;
     end; 
end;

for i=1:N;
    eigenvalue(i)=A(i,i);
end;


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -