📄 qr1.m
字号:
function D=qr1(A,epsilon)%Input - A is a symmetric tridiagona nxn matrix% - epsilon is the tolerance%Output - D is the vector of eigenvalues% NUMERICAL METHODS: Matlab Programs% (c) 2004 by John H. Mathews and Kurtis D. Fink% Complementary Software to accompany the textbook:% NUMERICAL METHODS: Using Matlab, Fourth Edition% ISBN: 0-13-065248-2% Prentice-Hall Pub. Inc.% One Lake Street% Upper Saddle River, NJ 07458%Initialize parameters[n,n]=size(A);m=n;while (m>1) S=A(m-1:m,m-1:m); if abs(S(2,1))<epsilon A(m,m-1)=0; A(m-1,m)=0; else shift=eig(S); [j,k]=min([abs(A(m,m)-shift(1)) abs(A(m,m)-shift(2))]); end [Q,U]=qr(A-shift(k)*eye(n)); A=U*Q+shift(k)*eye(n); m=m-1;endD=diag(A);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -