The Periodogram

I’ve been reviewing a lot of technical papers lately and I’m noticing that it is becoming common to assert that the limiting form of the periodogram is the power spectral density or that the limiting form of the cyclic periodogram is the spectral correlation function. This isn’t true. These functions do not become less random (erratic) as the amount of data that is processed increases without limit. On the contrary, they always have large variance. Some form of averaging (temporal or spectral) is needed to permit the periodogram to converge to the power spectrum or the cyclic periodogram to converge to the spectral correlation function (SCF).

In particular, I’ve been seeing things like this:

\displaystyle S_x^\alpha(f) = \lim_{T\rightarrow\infty} \frac{1}{T} X_T(f+\alpha/2) X_T^*(f-\alpha/2), \hfill (1)

where X_T(f+\alpha/2) is the Fourier transform of x(t) on t \in [-T/2, T/2]. In other words, the usual cyclic periodogram we talk about here on the CSP blog. See, for example, The Literature [R71], Equation (3).

Similarly, I see asserted:

\displaystyle S_x^0(f) = S_x(f) = \lim_{T\rightarrow\infty} \frac{1}{T} \left| X_T(f) \right|^2. \hfill (2)

In (1), the quantity

\displaystyle  \frac{1}{T} X_T(f+\alpha/2) X_T^*(f-\alpha/2) \hfill (3)

is the non-conjugate cyclic periodogram, and in (2), the quantity

\displaystyle \frac{1}{T} \left| X_T(f) \right|^2 \hfill (4)

is the conventional periodogram. The conjugate cyclic periodogram is given by

\displaystyle  \frac{1}{T} X_T(f+\alpha/2) X_T(\alpha/2 - f). \hfill (5)

But (1) and (2) are not true. Standard textbooks on spectral analysis typically establish the fact that the asymptotic (T is large) variance of the periodogram for random inputs is equal to the square of the true power spectral density (PSD) value. See The Literature [R70] for example.

If the periodogram is smoothed over frequency, say by convolving it with a pulse-like function g_{\Delta}(f) having unit area, then the theoretical spectral correlation function can be obtained by first letting the Fourier transform length (the data-block length) T approach \infty, and then letting the width of the smoothing function \Delta approach zero, in that order. We discussed this in previous posts, see also The Literature [R1].

Here is some numerical evidence. First, let’s just look at the periodogram (\alpha = 0, non-conjugate SCF) and the frequency-smoothed periodogram estimate of the power spectrum. The data is a simulated textbook BPSK signal in additive white Gaussian noise. The BPSK signal has a bit rate of 1/5 = 0.2 (I’m using normalized frequencies here), and a carrier offset frequency of 0.05. The pulse function is rectangular (similar to our old friend), the signal power is unity and the noise spectral density is also unity. I show below a sequence of graphs that correspond to successively larger processed data blocks, with length T samples, drawn from a single very long simulated data file. Each data block is taken from the data file starting with the first sample, so that, for example, all the data points for T=8192 are also included in the data block for T=16384. So this set-up is consistent with the right sides of (1) and (2) above.

Periodogram and Frequency-Smoothed Periodogram PSD Estimate (FSM)

First the periodogram:


which looks quite erratic, and which has a higher variance where the PSD is larger (near 0.05), as expected. If we zoom in near zero frequency, we obtain the following plot:


which clearly shows that the sequence of periodograms is not converging as T increases. On the other hand, the frequency-smoothed periodograms result in power-spectrum estimates that do converge as T grows:


Not only do they converge, but the erratic nature of the estimate decreases with increasing T.

Non-Conjugate Cyclic Periodogram and Frequency-Smoothed Cyclic Periodogram (SCF)

Now here are the non-conjugate cyclic periodogram magnitudes for a non-conjugate cycle frequency equal to the bit rate of 0.2:


and its zoomed version:


Again, highly erratic and no convergence. Here is the frequency-smoothed non-conjugate cyclic periodogram for the bit-rate cycle frequency:


Conjugate Cyclic Periodogram and Frequency-Smoothed Cyclic Periodogram (SCF)

Finally, for completeness, let’s do the same thing for the conjugate cyclic periodogram and conjugate spectral correlation function, using the doubled-carrier cycle frequency equal to 0.1:




What is the Periodogram Good For?

It is a good detector for periodic signals such as sine waves. The Fourier transform is representing its input in terms of the complex-valued coefficients of basis functions that are complex sine-waves, so when the input data contains a sine-wave component, a single Fourier coefficient (neglecting spectral leakage here) becomes very large and the rest are small. So even when the periodic function is embedded in random noise, a simple peak detector can easily find the signal, leading to good amplitude, phase, and frequency estimation. For example, if we repeat the experiment above by replacing the BPSK signal with a tone, we obtain the following periodograms and power spectra:



The rectangular appearance of the impulse arising from the tone is due to the shape of the frequency-smoothing window g_{\Delta}(f) I used, which is a rectangle.

So that’s it. I hope it is clear that the periodogram and the cyclic periodogram do not converge to the power spectrum and spectral correlation functions, respectively, no matter how much data is processed when we are dealing with random signals and noise such as those encountered in communication systems.

As always, let me know if you see an errors in the post, disagree, or have links to relevant websites.

2 thoughts on “The Periodogram

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s