function [VP,Niter]=AppVPdom(A,X,epsilon,k); 

% [VP,Niter] = AppVPdom(A,X,epsilon,k); 
%Calcule le vecteur propre approchant un vecteur propre associé au rayon
%spectral r d'une matrice A de taille (N,N)) (correspondant à une valeur
%propre réelle). L'algorithme est initié au vecteur X (de taille (N,1)). Le
%nombre d'itérations autorisées est k. La sortie Niter correspond au nombre
%d'itérations nécessaires avant que : 
% min(norm(VP(p+1)-VP(p)),norm(VP(p+1)+VP(p))) <=epsilon. 

VP=X/norm(X); %ligne modifiee (cf. rayonspectral1)   
err=2*epsilon; 
Niter=0; 
while (err>epsilon) && (Niter<k) 
    VPold=VP; %ligne modifiee (cf. rayonspectral1)
    y=A*VPold; %ligne modifiee (cf. rayonspectral1)  
    r=norm(y);
    VP=y/r; %ligne modifiee (cf. rayonspectral1)
    err=min(norm(VP-VPold),norm(VP+VPold)); %ligne modifiee (cf. rayonspectral1) 
    Niter=Niter+1; 
end 