function ma1(c,lambda,N)
% function ma1(c,lambda,N)
%
% Calcolo della covarianza e dello spettro di un processo MA(1)
% y(t) = w(t) + c w(t-1), w(·)~WN(0,lambda^2)
% Confronto con le grandezze campionarie calcolate su una
% realizzazione di N dati del processo

eta = randn(N,1)*lambda;
v = zeros(N,1);
v(1) = eta(1);
for t=2:N
  v(t) = eta(t)+c*eta(t-1);
end;

figure(1)
plot(v)
title('Realizzazione del processo MA(1)')

figure(2)

gamma = [0 0 0 c*(lambda^2) (1+c*c)*(lambda^2) c*(lambda^2) 0 0 0];
gamma0 = gamma(5);

gamma_camp = covf(v-mean(v),5);
gamma_camp0 = gamma_camp(1);
gamma_camp = [gamma_camp(5:-1:2) gamma_camp];

plot(-4:4,gamma/gamma0,-4:4,gamma/gamma0,'ob'),hold on,grid
plot(-4:4,gamma_camp/gamma_camp0,'xr'),hold off,grid
title('Covarianza (correlazione) normalizzata del processo MA(1)')
xlabel('covarianza = blu, covarianza campionaria = rosso')

figure(3)
G=spa(v-mean(v));
plot([-G(end:-1:2,1)' G(2:end,1)'],[G(end:-1:2,2)' G(2:end,2)'],'r')
hold on
w = -pi:0.01:pi;
plot(w,(1+c*c+2*c*cos(w))*(lambda^2))
ax = axis;
axis([-pi pi 0 ax(4)])
title('Densità spettrale di potenza del processo MA(1)')
xlabel('spettro = blu, spettro campionario = rosso')
text(-3.25,-0.075*ax(4),'-pi')
text(3.14,-0.075*ax(4),'pi')
hold off
