
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% questo file carica un file di dati di cui si vuole 
% fare la carta di controllo EWMA per diversi valori di 
% lambda. Si richiama la function ewma.m che calcola i 
% punti da disegnare, la centerline e i limiti di controllo
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


load wafer3.txt %carico il file wafer3 che ha 2 colonne
T=wafer3;
n=length(T);
% for i=101:125
%     T(i)=T(i)+6;
% end

%%%%% verifico che i dati della fase I siano in controllo %%%%
TfaseI=T(:,1);
mT=mean(TfaseI); %centerline della carta X
sdT=std(TfaseI);

% for i=1:n-1
%     MR(i)=abs(TfaseI(i+1)-TfaseI(i));
% end
% sig=mean(MR); %nel caso si volesse usare la stima di sigma
                %dipendente dal moving range

UCL=mT+3*sdT; % UCL della carta  X
LCL=mT-3*sdT; % LCL della carta X
UCL=[UCL UCL];
LCL=[LCL LCL];
CL=[mT mT];
t1=[1,n];
nsam=1:n;
figure(1)
plot(nsam,TfaseI,t1,CL,'b',t1,UCL,'b',t1,LCL,'b');

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

lambda1=1; % prendo 4 diversi valori per lambda
lambda2=0.9;
lambda3=0.5;
lambda4=0.1;

L=3;

%%% richiamo 4 volte la function ewma.m

[Z1,CL,UCL1,LCL1]=ewmaw(T,lambda1,L,n);
[Z2,CL,UCL2,LCL2]=ewmaw(T,lambda2,L,n);
[Z3,CL,UCL3,LCL3]=ewmaw(T,lambda3,L,n);
[Z4,CL,UCL4,LCL4]=ewmaw(T,lambda4,L,n);

% disegno le 4 carte di controllo EWMA



CL=[CL,CL];
size(UCL1)

figure(2)
% clf
subplot(411); plot(nsam,Z1,'r',t1,CL,'g'); %axis([0 125 335 365]);
hold
stairs(nsam,UCL1);
stairs(nsam,LCL1);
title(['EWMA(',num2str(lambda1),')']);
subplot(412); plot(nsam,Z2,'r',t1,CL,'g'); %axis([0 125 335 365]);
hold
stairs(nsam,UCL2);
stairs(nsam,LCL2);
title(['EWMA(',num2str(lambda2),')']);
subplot(413); plot(nsam,Z3,'r',t1,CL,'g'); %axis([0 125 335 365]);
hold
stairs(nsam,UCL3);
stairs(nsam,LCL3);
title(['EWMA(',num2str(lambda3),')']);
subplot(414); plot(nsam,Z4,'r',t1,CL,'g'); %axis([0 125 335 365]);
hold
stairs(nsam,UCL4);
stairs(nsam,LCL4);
title(['EWMA(',num2str(lambda4),')']);
xlabel('sample n.');