One of the most useful tools coming from calculus is the Fourier transform. Roughly speaking, the Fourier transform changes the representation, in a reversible way, of certain functions. This change of representation is particularly useful in dealing with signals represented as a function of time. In this instance, the Fourier transform takes the signal and represents it as a function of frequency; we might describe this as transforming from signal space to frequency space. This can be used to identify the frequencies present in a signal for identification and other processing. In practice, we will usually have a discrete sample of a signal, so we have to use the discrete Fourier transform to perform this kind of analysis. Fortunately, there is a computationally efficient algorithm, called the fast Fourier transform(FFT), for applying the discrete Fourier transform to a sample.
We will follow a common process for...