MATLAB: Please help, I wrote a matlab code for the Simple Subspace Iteration. But the iteration does not to stop

Here is the algorithm
Start: Choose an initial system of vectors X_{0}
Iterate: Until convergence do,
(a)X_{k}=AX_{k-1}
(b)X_{k}=QR the QR factorization of X_{k} and set X_{k}=Q
Here is my code
function [v,lamda] = SSI(A,tol) n=size(A,1); v=rand(n,1); res=1; while (res > tol) W= A*v; [Q,R]=qr(W); lamda=Q end

Best Answer

You have to calculate res in the while loop for it to end at some point.
Related Question