<< Chapter < Page Chapter >> Page >

A major application of the FFT is fast convolution or fast filtering where the DFT of the signal is multiplied term-by-term by the DFT ofthe impulse (helps to be doing finite impulse response (FIR) filtering) and the time-domain output is obtained by taking the inverse DFT ofthat product. What is less well-known is the DFT can be calculated by convolution. There are several different approaches to this,each with different application.

Rader's conversion of the dft into convolution

In this section a method quite different from the index mapping or polynomial evaluation is developed. Rather than dealingwith the DFT directly, it is converted into a cyclic convolution which must then be carried out by some efficient means. Those meanswill be covered later, but here the conversion will be explained. This method requires use of some number theory, which can befound in an accessible form in [link] or [link] and is easy enough to verify on one's own. A good general reference on numbertheory is [link] .

The DFT and cyclic convolution are defined by

C ( k ) = n = 0 N - 1 x ( n ) W n k
y ( k ) = n = 0 N - 1 x ( n ) h ( k - n )

For both, the indices are evaluated modulo N . In order to convert the DFT in [link] into the cyclic convolution of [link] , the n k product must be changed to the k - n difference. With real numbers, this can be done with logarithms, but it is more complicated when working in a finite set of integersmodulo N . From number theory [link] , [link] , [link] , [link] , it can be shown that if the modulus is a prime number, a base (called aprimitive root) exists such that a form of integer logarithm can be defined. This is stated in the following way. If N is a prime number, a number r called a primitive roots exists such that the integer equation

n = ( ( r m ) ) N

creates a unique, one-to-one map of the N - 1 member set m = { 0 , . . . , N - 2 } and the N - 1 member set n = { 1 , . . . , N - 1 } . This is because the multiplicative group of integers modulo a prime, p , is isomorphic to the additive group of integers modulo ( p - 1 ) and is illustrated for N = 5 below.

Table of Integers n = ( ( r m ) ) modulo 5, [* not defined]
r m= 0 1 2 3 4 5 6 7
1 1 1 1 1 1 1 1 1
2 1 2 4 3 1 2 4 3
3 1 3 4 2 1 3 4 2
4 1 4 1 4 1 4 1 4
5 * 0 0 0 * 0 0 0
6 1 1 1 1 1 1 1 1

[link] is an array of values of r m modulo N and it is easy to see that there are two primitiveroots, 2 and 3, and [link] defines a permutation of the integers n from the integers m (except for zero). [link] and a primitive root (usually chosen to be the smallest of those that exist) can be used to convert the DFT in [link] to the convolution in [link] . Since [link] cannot give a zero, a new length-(N-1) data sequence is defined from x ( n ) by removing the term with index zero. Let

n = r - m

and

k = r s

where the term with the negative exponent (the inverse) is defined as the integer that satisfies

( ( r - m r m ) ) N = 1

If N is a prime number, r - m always exists. For example, ( ( 2 - 1 ) ) 5 = 3 . [link] now becomes

C ( r s ) = m = 0 N - 2 x ( r - m ) W r - m r s + x ( 0 ) ,

for s = 0 , 1 , . . , N - 2 , and

C ( 0 ) = n = 0 N - 1 x ( n )

New functions are defined, which are simply a permutation in the order of the original functions, as

x ' ( m ) = x ( r - m ) , C ' ( s ) = C ( r s ) , W ' ( n ) = W r n

[link] then becomes

C ' ( s ) = m = 0 N - 2 x ' ( m ) W ' ( s - m ) + x ( 0 )

which is cyclic convolution of length N-1 (plus x ( 0 ) ) and is denoted as

C ' ( k ) = x ' ( k ) * W ' ( k ) + x ( 0 )

Applying this change of variables (use of logarithms) to the DFT can best be illustrated from the matrix formulation of the DFT. [link] is written for a length-5 DFT as

Questions & Answers

what is chemistry
Terhemba Reply
what is the difference between ph and poh?
Abagaro Reply
chemical bond that results from the attractive force between shared electrons and nonmetals nucleus is what?
Abagaro
what is chemistry
Ayok
what is chemistry
ISIYAKA Reply
what is oxidation
Chidiebube Reply
calculate molarity of NaOH solution when 25.0ml of NaOH titrated with 27.2ml of 0.2m H2SO4
Gasin Reply
what's Thermochemistry
rhoda Reply
the study of the heat energy which is associated with chemical reactions
Kaddija
How was CH4 and o2 was able to produce (Co2)and (H2o
Edafe Reply
explain please
Victory
First twenty elements with their valences
Martine Reply
what is chemistry
asue Reply
what is atom
asue
what is the best way to define periodic table for jamb
Damilola Reply
what is the change of matter from one state to another
Elijah Reply
what is isolation of organic compounds
IKyernum Reply
what is atomic radius
ThankGod Reply
Read Chapter 6, section 5
Dr
Read Chapter 6, section 5
Kareem
Atomic radius is the radius of the atom and is also called the orbital radius
Kareem
atomic radius is the distance between the nucleus of an atom and its valence shell
Amos
Read Chapter 6, section 5
paulino
Bohr's model of the theory atom
Ayom Reply
is there a question?
Dr
when a gas is compressed why it becomes hot?
ATOMIC
It has no oxygen then
Goldyei
read the chapter on thermochemistry...the sections on "PV" work and the First Law of Thermodynamics should help..
Dr
Which element react with water
Mukthar Reply
Mgo
Ibeh
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Fast fourier transforms. OpenStax CNX. Nov 18, 2012 Download for free at http://cnx.org/content/col10550/1.22
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Fast fourier transforms' conversation and receive update notifications?

Ask