120 likes | 136 Views
UNIT-II. FAST FOURIER TRANSFORM ALGORITHMS. INTRODUCTION. All Periodic Waves Can be Generated by Combining Sin and Cos Waves of Different Frequencies Number of Frequencies may not be finite Fourier Transform Decomposes a Periodic Wave into its Component Frequencies. DFT Definition.
E N D
UNIT-II FAST FOURIER TRANSFORM ALGORITHMS
INTRODUCTION • All Periodic Waves Can be Generated by Combining Sin and Cos Waves of Different Frequencies • Number of Frequencies may not be finite • Fourier Transform Decomposes a Periodic Wave into its Component Frequencies
DFT Definition • Sample consists of n points, wave amplitude at fixed intervals of time:(p0,p1,p2, ..., pn-1) (n is a power of 2) • Result is a set of complex numbers giving frequency amplitudes for sin and cos components • Points are computed by polynomial:P(x)=p0+p1x+p2x2+ ... +pn-1xn-1
DFT Definition, continued • The complete DFT is given byP(1), P(w), P(w2), ... ,P(wn-1) • w Must be a Primitive nth Root of Unity • wn=1, if 0<i<n then wi ¹ 1
Divide and Conquer Method • Compute an n-point DFT using one or more n/2-point DFTs • Need to find Terms involving w2 in following polynomial • P(w)=p0+p1w+p2w2+p3w3+p4w4+ ... +pn-1wn-1 Even/Odd Separation • P(w)= P1(w)+P2(w) • P1(w)=p0+p2w2+p4w4+ ... +pn-2wn-2 • P1(w)=Pe (w2)=p0+p2w+p4w1+...+pn-2w(n-2)/2
Even/Odd Separation Contd. • P(w)= P1(w)+P2(w) • P1(w)=p0+p2w2+p4w4+ ... +pn-2wn-2 • P1(w)=Pe (w2)=p0+p2w+p4w1+...+pn-2w(n-2)/2 • P2(w)=p1w+p3w3+p5w5+ ... +pn-1wn-1 • P2(w)= w P3(w)=p1+p3w2+... +pn-1wn-2 • P3(w)=Po(w2)= p1+p3w+... +pn-1w(n-2)/2 • P(w)= Pe(w2)+ wPo(w2) • Pe & Po come from n/2 point FFTs
Fast Fourier Transform Algorithms • Consider DTFT • Basic idea is to split the sum into 2 subsequences of length N/2 and continue all the way down until you have N/2 subsequences of length 2 Log2(8) N
Radix-2 FFT Algorithms - Two point FFT • We assume N=2^m • This is called Radix-2 FFT Algorithms • Let’s take a simple example where only two points are given n=0, n=1; N=2 Butterfly FFT y0 y0 y1 Advantage: Less computationally intensive: N/2.log(N)
General FFT Algorithm • First break x[n] into even and odd • Let n=2m for even and n=2m+1 for odd • Even and odd parts are both DFT of a N/2 point sequence • Break up the size N/2 subsequent in half by letting 2mm • The first subsequence here is the term x[0], x[4], … • The second subsequent is x[2], x[6], …
Example Let’s take a simple example where only two points are given n=0, n=1; N=2 Same result
FFT Algorithms - Four point FFT First find even and odd parts and then combine them: The general form: