10.2. Solved exercises


Consider a zero-mean white Gaussian process P with the variance σp2 = 0.25, defined on 2,048 samples. Calculate its periodogram and find out the bias and the variance of this PSD estimate. The process is assumed ergodic.

Repeat the same procedure for 512, 1,024 and 4,096 samples.


% This function allows the signal periodogram to be calculated
function [PSD_periodogram,frequency] = simple_periodogram (x,N)
K = N;
sequence = x;
Y = fft(sequence,K);
PSD_periodogram = PSD/K;
PSD_periodogram = PSD_periodogram(1:1+K/2);
frequency=(0:N/2)/N;     % 0<V<0.5

% The function defined above is now applied to the signal
N = 2048;     % change then this value with 512, 1024, and 4096
x = randn(1,N)*sqrt(0.25);
[PSD_periodogram,frequency] = simple_periodogram(x,N);
semilogy(frequency, PSD_periodogram, ‘b’);
xlabel(‘normalized frequency’);
title(‘Periodogram of a zero-mean white Gaussian process’);

The bias and the variance of this estimate can be calculated as indicated below:

bias = mean(PSD_periodogram)-0.25 % estimate bias
variance = std(PSD_periodogram)*2 % estimate variance

Since the process is white, its power spectral density is constant and equal to its variance. It can be thus verified that the periodogram is a biased estimate and that its variance does not decrease when the observation time gets longer; thus, it is an inconsistent estimate.

Figure 10.2. Estimation of the white noise PSD using the periodogram ...

Get Digital Signal Processing Using Matlab now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.