qrtran.m
来自「在对矩阵进行拟上三角化的基础上利用带双步位移的QR分解法求解矩阵的特征值」· M 代码 · 共 19 行
M
19 行
function A=qrtran(m,A)
%功能:对矩阵A的左上角的m阶对角块作QR变换:先用Givens变换作QR分解A=QR,
%再作相似变换A:=Q'AQ=RQ.
%输入: n阶HessenbergA,其中A(m+1,m)=0,m>2.
%输出: 变换后的Hessenberg形矩阵A.
Q=diag(ones(1,m));
for i=1:m-1
xi=A(i,i);
xk=A(i+1,i);
if xk~=0
d=sqrt(xi^2+xk^2);
c=xi/d;
s=xk/d;
J=[c, s;-s,c];
A(i:i+1,i:m)=J*A(i:i+1,i:m);
Q(1:m,i:i+1)=Q(1:m,i:i+1)*J';
end
end
A(1:m,1:m)=A(1:m,1:m)*Q;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?