givens.m

来自「利用MATLAB进行程序C7_3 QR方法的算法」· M 代码 · 共 18 行

M
18
字号
function [K,L]=givens(H,n,eig1)
J=eye(n,n);
c=zeros(n,n);
s=zeros(n,n);
for i=2:n-1
    for j=1:n
        if H(i,j)*H(i,i)+H(i+1,j)*H(i+1,i)~=0
        c(i,i)=H(i,j)*eig1(i,1)/(H(i,j)*H(i,i)+H(i+1,j)*H(i+1,i));
        s(i,j)=H(i+1,j)*eig1(i,1)/(H(i,j)*H(i,i)+H(i+1,j)*H(i+1,i));
        J(i,i)=c(i,i);
        J(i,j)=s(i,j);
        J(i+1,i)=s(i,j);
        J(i+1,j)=c(i,i);
        end
    end
end
K=J*H
L=eig(J)

⌨️ 快捷键说明

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