Algorithms of fast Fourier transform FFT (fast Fourier transform). Principle of construction

Lecture



Content
  • Introduction
  • Time sampling. Discrete signal spectrum
  • The repetition of the signal in time. Discrete Fourier Transform
  • Inverse Discrete Fourier Transform
  • Indexing spectral samples. Rearrangement of spectral samples
  • findings
Introduction
Fourier analysis today is without doubt the most common analysis tool that is used in all branches of science and technology. However, before the advent of computers, the discrete Fourier transform (DFT) was rarely used, since the calculation of the DFT of 32 samples requires 1024 operations of complex multiplication and addition, which in manual count for quite a long time. However, the first mention of the fast Fourier transform algorithm refers to the work of Gauss, in which he used the periodicity properties of trigonometric functions to calculate the DFT. However, no one paid attention to this work for a long time, until personal computers were widely used.
The first software implementation of the FFT algorithm was carried out in the early 60s of the 20th century by John Cooley at the IBM computer center under the supervision of Tesca John Tukey, and in 1965 they themselves published an article on the Fast Fourier Transform algorithm. From this moment begins the real FFT-mania. Thousands of papers devoted to the FFT algorithm are published, monographs are published one by one, programmers compete in the efficiency of the algorithm implementation. FFT becomes the main tool for spectral analysis of signals.
The principle of construction of algoritm FFT
What gave impetus to this rapid development? Consider the expression for the discrete Fourier transform:
Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction . (one)
DFT Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction signal readings Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction (generally complex) puts in compliance Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction complex spectrum readings Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction , and to calculate a single spectral reference is required Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction operations of complex multiplication and addition. Thus, the computational complexity of the DFT algorithm is Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction complex multiplications and additions. In this case, it can be noted that if one DFT on Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction points (counts) to replace the calculation of two DFT on Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction points, this will reduce the number of operations by 2 times. Replacement Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction -point DFT two Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction -point presented in Figure 1.
Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction
Figure 1: Replacing the N-point DFT with two N / 2-point DFT
In addition, each of Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction - point DFT can also be calculated by replacing Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction -point DFT for two Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction -point. In this case, the number of computational operations is equal to Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction . In this way, it is possible to continue splitting the source sequence as long as it is possible to divide the sequence into two. Obviously, if Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction , Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction - positive integer, we can split the sequence in half Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction time. For Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction ( Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction ) such a partition is presented in Figure 2.
Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction
Figure 2: Splitting and combining sequences with N = 8
Each partition divides the sequence into two half-lengths (red and blue), and each join “assembles” one of the doubled lengths from the two sequences.
FFT algorithms that use length samples Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction are called “base 2 FFT algorithms”. These algorithms are the most common, due to the fact that in machine arithmetic Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction is a “round” number. Further, we will consider only the algorithms for base 2.
Obviously, it is possible to divide the sequence into two differently, but it depends on whether we can get an undistorted signal spectrum when combined and what it will cost us in terms of computational costs. It can be said that the efficiency of the FFT algorithm depends entirely on the method of splitting and combining the sequence, since if we disregard the operations on splitting-combining, then to calculate the spectrum is required Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction calculate the DFT times by 2 points, as a result, the total number of computational operations will be Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction , that is, the number of operations linearly depends on the size of the sample.
We consider two ways of splitting - combining: thinning by time and thinning by frequency. An example of software implementation and use of the FFT algorithm will also be given.
Before considering the methods of splitting - combining, we need to consider the inverse discrete Fourier transform (IDFT):
Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction , (2)
which puts in line Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction complex spectrum readings Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction , Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of constructionAlgorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction complex signal values Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction , Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction .
Inverse Fast Fourier Transform
Having an FFT calculation algorithm, I would very much like to use it for the inverse transformation. To do this, pay attention to the fact that:
Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction . (3)
In other words, the complex exponentials in the expression for the direct and inverse DFT are complex conjugate (the bar above means complex conjugation). Now consider two complex numbers Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction and Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction .
Consider the product Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction on complex conjugate Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction :
Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction . (four)
Now consider the product of complex conjugate Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction on Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction :
Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction . (five)
Comparing (4) and (5) we can conclude:
Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction . (6)
With reference to the expression of IDFT, you can write:
Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction (7)
Thus, a complex conjugate spectrum is taken. Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction the direct DFT is performed and the result is subjected to complex conjugation. Calculation of ODP with the use of DFT is shown in Figure 3.
Algorithms of fast Fourier transform FFT (fast Fourier transform).  Principle of construction
Figure 3: Calculation of the inverse DFT through direct
If instead of the DFT we use the FFT, then we obtain the inverse fast Fourier transform (OBFT). In this case, to perform complex conjugation, it is only necessary to change the sign in front of the imaginary part of the spectrum before calling the FFT function and the result after the FFT.
findings
Thus, we considered the way of acceleration of calculations in the calculation of the DFT, and also reduced the IDFT to a direct one. Now it is necessary to consider partitioning methods — unions that provide a significant reduction in computations. In the following articles, we will examine in detail the FFT algorithms for base two with decimation by time and frequency by frequency.

Comments


To leave a comment
If you have any suggestion, idea, thanks or comment, feel free to write. We really value feedback and are glad to hear your opinion.
To reply

Digital signal processing

Terms: Digital signal processing