Download presentation
Presentation is loading. Please wait.
Published byΛάχεσις Σπανού Modified over 6 years ago
1
DFT and FFT By using the complex roots of unity, we can evaluate and interpolate a polynomial in O(n lg n) An example, here are the solutions to 8 = 1 The principal root is We often write these values in trigonometric form
2
Properties of Roots of Unity
The halving lemma is essential since it guarantees the recursive solutions of subproblems are only half as large
3
Discrete Fourier Transform
We wish to evaluate at the points We can assume n to be a power of 2 by adding high-order zero coefficients as necessary Assuming a = (a0, a1, …, an-1) we define This calculation is O(n2), but by using the complex roots of unity, it can be done in O(n lg n)
4
Fast Fourier Transform
We separate the even and odd index coefficients Our desired result is So to evaluate A(x) at the complex roots of unity
5
FFT - continued Due to the halving lemma, there are not n distinct values, rather only n/2 complex (n/2)th roots Since the solutions of the subproblems are of the same form as the original problem, these recursive solutions are also only half in size So we can solve an n-element DFTn computation by solving two n/2-element DFTn/2 computations In the following recursive FFT algorithm, we compute the DFT for the vector where n is a power of 2
6
FFT Algorithm - 1 Lines 2-3 handle the base case
Lines 4,5,13 update so that at lines we have Lines 6-7 define the coefficient vectors for the subpolynomials
7
FFT Algorithm - 2 Lines 8-9 solve the subproblems recursively
The algorithm complexity is
8
Interpolation The DFT can be written as the matrix product y = Vna
The DFTn-1 can be computed in O(n lg n) time too
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.