function [f]=lelk(s,m,j,k)
%input s=[s1..sn], m=[m1..m(n+1), j tra 1 e n+1 e k
% costruisce a e b di leslie-lotka
% output vettore delle j-esime componenti dei vettori generati da k passi 
% del metodo delle potenze a partire da vettore tutto 1
[nnn,nnm]=size(s);
[nn,nm]=size(m);
% controlliamo che s ed m siano vettori colonna di dimensioni corrette
if nnm ~= 1, error('Solo per vettori s colonna'); end
if nm ~= 1, error('Solo per vettori m colonna'); end
if nnn+1 ~= nn, error('Dimensione di m deve essere dimensione di s +1'); end
n=nnn;
if ~isscalar(j), error('j deve essere un numero intero'); end
j=round(j);
if (j < 0)||(j > n+1), error('j deve stare tra 1 e la dimensione di m'); end
% nota che se k e' un vettore, viene preso solo il primo elemento
a=[m';diag(s),zeros(n,1)];
gamma=sum(m);
b=a/gamma;
c=ones(n+1,1);
f(1)=1;
for q=1:k
   c=b*(c/norm(c));
   f(q+1)=c(j);
end

end