Thanks mrzz for nicely explaining the basics, so I don't need to do it and can start from where you left.
The best way to understand the FT, the analog precursor of DFT (Discrete FT), is to draw a picture how Joseph Fourier understood it 200y ago.
FT is about decomposition of a signal (e.g. a time series of some value, where time runs on X axis and values are plotted on y axis) into a set of "perfect waves", i.e. the sine/cosine functions of a given amplitude, frequencies.
I found a decent picture here:
https://cdn.britannica.com/77/61777-004-EB9FB008.jpg
Therein you can see that a simple signal such as a step function (row 1) can be approximated by superposing several sine waves with different magnitude and frequencies. The picture shows only an approximation down to third harmonic, but you can imagine that by adding more and more tiny harmonics down to infinity you eventually arrive at perfect approximation of the input function (step function in this trivial case). Joseph proved that you can do such decomposition of every periodic input function. You can do it analytically for known periodic functions.
The only difference of FT and DFT is that the input signal of DFT is digital rather than analog, e.g. a time series of values, obtained by "sampling" the original analog signal at constant interval, e.g. every millisecond. So, instead of having a function, we have a series (many millions) of values and you can imagine the original function by connecting the neighbouring points in a series. No need to guess that everything is kept in such digital form today, e.g. audio signals, temperature history, images. The FFT is the ingenious algorithm that calculates DFT of any digital signal. FFT can run on single dimensional data, such as audio signal; or on multi-dimensional data; such as image (2D) or a scene in Euclidean space (3D).
I'm not going to explain the difference between FT and DFT calculation. I'll just mention that DFT calculation must be very efficient so that computers can perform it in reasonable time given large amount of input data (typically many million samples). That's why the ingenious FFT algorithm is called "fast". The output of FFT is series of frequencies, i.e. each point in the output data represents the magnitude of a sinus wave of a given frequency, where frequency is on the X axis and magnitude is on Y axis. E.g. for the simple step function in the picture above, the FFT output to the third approximation shown would include three points:
- 1Hz (X coordinate) and full amplitude, say 1 (Y coordinate), representing first harmonic
- 2Hz (X coordinate) and half full amplitude, say 1/2 (Y coordinate) representing second harmonic
- 4Hz (X coordinate) and full amplitude, say 1/4 (Y coordinate) representing third harmonic
More complex input would result in more complex picture (in frequency/amplitude) where points form some interesting images.
Why do we do such transform? Because complex signals are much easier to understand when viewed as a collection of frequencies. I'll give the most trivial example: analysis of music. As we know, music a collection of various tones played/sung in different pitches. The basic C7 major cord, consists of 4 tones: C1 E1 G1 C2 (in first octave)
each tone defined by its unique frequency, played at the same time. When you look at the superposition of sound waves resulting from C7 cord, you have no idea what the signal represents. However, when you do FFT of that signal you get just 4 points on a frequency line: from 32.70Hz (representing C1) to 65.41Hz (representing C2) and same amplitude (if played correctly). After such transform, the computer has much easier time recognising the input signal as C7 cord in first octave.
I could go on with many examples, from temperature analysis (such as T proxies obtained from ice cores in Antarctica), image enhancement, to data analysis of mass spectrometer, but sorry no time to do it here. Enough to say, every scientist in 21st century cannot call himself as such if s/he does not use FFT to analyse their data. E.g. the mentioned T proxies obtained from ice cores in Antarctica:
https://www.e-education.psu.edu/ear...du.earth104/files/Unit1/Mod4/earth104_pic.jpg
have been FFTed to find out the major harmonic frequencies of the signals. The output in frequency domain:
https://www.e-education.psu.edu/ear...psu.edu.earth104/files/Unit1/Mod5/vostok2.jpg
confirmed the 3 major periods of ~100ky, 40ky and 25ky, of perturbations of Earth orbit (the three peaks of the signal).
(I think these pictures from PSU have been assembled by my friend Michael Mann)
As we know, said perturbations are responsible for climate changes resulting in onsets of ice ages. This example alone teaches us that whatever field you work on and whatever data you have, if u want to analyse your data first thing you do is FFT, and the output will tell you a lot more about the nature (mainly periodicity) of your signal.