givens.m
来自「这是我从一本基于MATLAB实现的数值分析算法的书中自带的光盘程序」· 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 + -
显示快捷键?