function [lambda,v]=invpot(A,x0,mu)
%
% [lambda,v]=invpot(A,x0)
%
% Finner egenverdien lambda nærmest mu, og tilhørende egenvektor v til A, 
% ved hjelp av forskøvet invers potensmetode. 
%
if nargin <3
    mu = 0;
end

r1=0; r2=0; % For Aitken akselrasjon (se s. 363)
v = x0; 
lambda = 0;

As = A-mu*eye(length(x0));
[L,U]=lu(As);

y = U\(L\v);
[tmp,ind]=max(abs(y));

for i=1:20
    y = U\(L\v);
    r = y(ind)/v(ind);
    v = y/y(ind);
    if i>2
        lambda = r-(r-r1)^2/(r-2*r1+r2);  % Aitken. 
    end
    r2=r1;
    r1=r;
end
lambda = 1/lambda+mu;
    
   