%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% file per costruire la carta u nel caso di campioni
% con diverso numero di unita' di ispezione
% i limiti di controllo sono ottenuti tramite
% l'approssimazione della Poisson con la normale
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

load tessuto.txt
x=tessuto(:,1);
ni=tessuto(:,2);
n=length(x);
u=x./ni;

% alpha=0.05; % livello di significativita' per il
%             % test di dispersione
% 
% %%%%%%% verifica della poissonianita' %%%%%%%%%%
% %%%%%%% test di dispersione  %%%%%%%%%%%%%%%%%%%
% 
% csi=(n-1)*var(x)/mean(x) % devo confrontare questo
%                          % valore con quelli delle
%                          % tavole
% liminf=chi2inv(alpha,n-1) % calcolo i limiti per la
% limsup=chi2inv(1-alpha,n-1) % verifica della poissonianita'
%                             % con livello di significativita'
%                             % alpha e n-1 gradi di liberta'
%  
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

ubar=sum(x)/sum(ni)

for i=1:n
    UCL(i)=ubar+3*sqrt(ubar/ni(i));
    LCL(i)=ubar-3*sqrt(ubar/ni(i));
end

t=[0,10];
t1=1:10;
cl=[ubar,ubar];

plot(t1,u,'-o',t,cl);
hold
stairs(t1,UCL);
stairs(t1,LCL);
xlabel('N. rotolo');
ylabel('Non conformità per unità');