a=0; nav=10; n=256; t1=[1:nav*256]*2*pi/8; a1=1; x=a1*exp(i*t1); sig=2; x=x+sig*randn(size(x))+i*sig*randn(size(x)); subplot(211); plot(real(x(1:256))); v=axis; axis([v(1) 256 v(3) v(4)]); title('Re(X) Time Series'); % now do nav scans, average and plot yav=zeros(1,256); start=1; stop=256; for j=1:nav y=fft(x(start:stop)); yav = yav + abs(y).*abs(y); start=start+256; stop=stop+256; end subplot(212); plot(log10(yav/nav)); v=axis; axis([v(1) n 2 7]); title(['Average of ',int2str(nav),' Log Periodograms with N=256 and sigma_Y = ',num2str(sqrt(2*sig))]); xlabel('Frequency Index j'); ylabel('LOG10'); nper=256/8; yav=[yav(1:nper),yav(nper+2:length(yav))]; avnoise=log10(mean(yav/nav)) gtext(['LOG10 average of noise-only squares: ',num2str(avnoise)]); print -deps pgram6