# 1.12 The fft algorithm

 Page 1 / 1
The FFT, an efficient way to compute the DFT, is introduced and derived throughout this module.

FFT
(Fast Fourier Transform) An efficient computational algorithm for computing the DFT .

## The fast fourier transform fft

DFT can be expensive to compute directly $\forall k, 0\le k\le N-1\colon X(k)=\sum_{n=0}^{N-1} x(n)e^{-(i\times 2\pi \frac{k}{N}n)}$

For each $k$ , we must execute:

• $N$ complex multiplies
• $N-1$ complex adds
The total cost of direct computation of an $N$ -point DFT is
• $N^{2}$ complex multiplies
• $N(N-1)$ complex adds
How many adds and mults of real numbers are required?

This " $O(N^{2})$ " computation rapidly gets out of hand, as $N$ gets large:

 $N$ 1 10 100 1000 $10^{6}$ $N^{2}$ 1 100 10,000 $10^{6}$ $10^{12}$

The FFT provides us with a much more efficient way of computing the DFT. The FFT requires only " $O(N\lg N)$ " computations to compute the $N$ -point DFT.

 $N$ 10 100 1000 $10^{6}$ $N^{2}$ 100 10,000 $10^{6}$ $10^{12}$ $N\lg N$ 10 200 3000 $6E6$

How long is $10^{12}\mathrm{sec}$ ? More than 10 days! How long is $6E6\mathrm{sec}$ ?

The FFT and digital computers revolutionized DSP (1960 - 1980).

## How does the fft work?

• The FFT exploits the symmetries of the complex exponentials ${W}_{N}^{(kn)}=e^{-(i\frac{2\pi }{N}kn)}$
• ${W}_{N}^{(kn)}$ are called " twiddle factors "

## Complex conjugate symmetry

${W}_{N}^{(k(N-n))}={W}_{N}^{-(kn)}=\overline{{W}_{N}^{(kn)}}$ $e^{-(i\times 2\pi \frac{k}{N}(N-n))}=e^{i\times 2\pi \frac{k}{N}n}=\overline{e^{-(i\times 2\pi \frac{k}{N}n)}}$

## Periodicity in n and k

${W}_{N}^{(kn)}={W}_{N}^{(k(N+n))}={W}_{N}^{((k+N)n)}$ $e^{-(i\frac{2\pi }{N}kn)}=e^{-(i\frac{2\pi }{N}k(N+n))}=e^{-(i\frac{2\pi }{N}(k+N)n)}$ ${W}_{N}=e^{-(i\frac{2\pi }{N})}$

## Decimation in time fft

• Just one of many different FFT algorithms
• The idea is to build a DFT out of smaller and smaller DFTs by decomposing $x(n)$ into smaller and smaller subsequences.
• Assume $N=2^{m}$ (a power of 2)

## Derivation

$N$ is even , so we can complete $X(k)$ by separating $x(n)$ into two subsequences each of length $\frac{N}{2}$ . $x(n)\to \begin{cases}\frac{N}{2} & \text{if n=\mathrm{even}}\\ \frac{N}{2} & \text{if n=\mathrm{odd}}\end{cases}$ $\forall k, 0\le k\le N-1\colon X(k)=\sum_{n=0}^{N-1} x(n){W}_{N}^{(kn)}$ $X(k)=\sum_{n=2r} x(n){W}_{N}^{(kn)}+\sum_{n=2r+1} x(n){W}_{N}^{(kn)}$ where $0\le r\le \frac{N}{2}-1$ . So

$X(k)=\sum_{r=0}^{\frac{N}{2}-1} x(2r){W}_{N}^{(2kr)}+\sum_{r=0}^{\frac{N}{2}-1} x(2r+1){W}_{N}^{((2r+1)k)}=\sum_{r=0}^{\frac{N}{2}-1} x(2r){W}_{N}^{2}^{(kr)}+{W}_{N}^{k}\sum_{r=0}^{\frac{N}{2}-1} x(2r+1){W}_{N}^{2}^{(kr)}$
where ${W}_{N}^{2}=e^{-(i\frac{2\pi }{N}\times 2)}=e^{-(i\frac{2\pi }{\frac{N}{2}})}={W}_{\frac{N}{2}}$ . So $X(k)=\sum_{r=0}^{\frac{N}{2}-1} x(2r){W}_{\frac{N}{2}}^{(kr)}+{W}_{N}^{k}\sum_{r=0}^{\frac{N}{2}-1} x(2r+1){W}_{\frac{N}{2}}^{(kr)}$ where $\sum_{r=0}^{\frac{N}{2}-1} x(2r){W}_{\frac{N}{2}}^{(kr)}$ is $\frac{N}{2}$ -point DFT of even samples ( $G(k)$ ) and $\sum_{r=0}^{\frac{N}{2}-1} x(2r+1){W}_{\frac{N}{2}}^{(kr)}$ is $\frac{N}{2}$ -point DFT of odd samples ( $H(k)$ ). $\forall k, 0\le k\le N-1\colon X(k)=G(k)+{W}_{N}^{k}H(k)$ Decomposition of an $N$ -point DFT as a sum of 2 $\frac{N}{2}$ -point DFTs.

Why would we want to do this? Because it is more efficient!

Cost to compute an $N$ -point DFT is approximately $N^{2}$ complex mults and adds.
But decomposition into 2 $\frac{N}{2}$ -point DFTs + combination requires only $\left(\frac{N}{2}\right)^{2}+\left(\frac{N}{2}\right)^{2}+N=\frac{N^{2}}{2}+N$ where the first part is the number of complex mults and adds for $\frac{N}{2}$ -point DFT, $G(k)$ . The second part is the number of complex mults and adds for $\frac{N}{2}$ -point DFT, $H(k)$ . The third part is the number of complex mults and adds for combination. And the total is $\frac{N^{2}}{2}+N$ complex mults and adds.

## Savings

For $N=1000$ , $N^{2}=10^{6}$ $\frac{N^{2}}{2}+N=\frac{10^{6}}{2}+1000$ Because 1000 is small compared to 500,000, $\frac{N^{2}}{2}+N\approx \frac{10^{6}}{2}$

So why stop here?! Keep decomposing. Break each of the $\frac{N}{2}$ -point DFTs into two $\frac{N}{4}$ -point DFTs, etc. , ....

We can keep decomposing: $\frac{N}{2^{1}}=\{\frac{N}{2}, \frac{N}{4}, \frac{N}{8}, , \frac{N}{2^{(m-1)}}, \frac{N}{2^{m}}\}=1$ where $m=\log_{2}N=\text{times}$

Computational cost: $N$ -pt DFTtwo $\frac{N}{2}$ -pt DFTs. The cost is $N^{2}\to 2\left(\frac{N}{2}\right)^{2}+N$ . So replacing each $\frac{N}{2}$ -pt DFT with two $\frac{N}{4}$ -pt DFTs will reduce cost to $2(2\left(\frac{N}{4}\right)^{2}+\frac{N}{2})+N=4\left(\frac{N}{4}\right)^{2}+2N=\frac{N^{2}}{2^{2}}+2N=\frac{N^{2}}{2^{p}}+pN$ As we keep going $p=\{3, 4, , m\}$ , where $m=\log_{2}N$ . We get the cost $\frac{N^{2}}{2^{\log_{2}N}}+N\log_{2}N=\frac{N^{2}}{N}+N\log_{2}N=N+N\log_{2}N$ $N+N\log_{2}N$ is the total number of complex adds and mults.

For large $N$ , $\mathrm{cost}\approx N\log_{2}N$ or " $O(N\log_{2}N)$ ", since $(N\log_{2}N, N)$ for large $N$ .

Weird order of time samples

where we get a research paper on Nano chemistry....?
what are the products of Nano chemistry?
There are lots of products of nano chemistry... Like nano coatings.....carbon fiber.. And lots of others..
learn
Even nanotechnology is pretty much all about chemistry... Its the chemistry on quantum or atomic level
learn
da
no nanotechnology is also a part of physics and maths it requires angle formulas and some pressure regarding concepts
Bhagvanji
Preparation and Applications of Nanomaterial for Drug Delivery
revolt
da
Application of nanotechnology in medicine
what is variations in raman spectra for nanomaterials
I only see partial conversation and what's the question here!
what about nanotechnology for water purification
please someone correct me if I'm wrong but I think one can use nanoparticles, specially silver nanoparticles for water treatment.
Damian
yes that's correct
Professor
I think
Professor
Nasa has use it in the 60's, copper as water purification in the moon travel.
Alexandre
nanocopper obvius
Alexandre
what is the stm
is there industrial application of fullrenes. What is the method to prepare fullrene on large scale.?
Rafiq
industrial application...? mmm I think on the medical side as drug carrier, but you should go deeper on your research, I may be wrong
Damian
How we are making nano material?
what is a peer
What is meant by 'nano scale'?
What is STMs full form?
LITNING
scanning tunneling microscope
Sahil
how nano science is used for hydrophobicity
Santosh
Do u think that Graphene and Fullrene fiber can be used to make Air Plane body structure the lightest and strongest. Rafiq
Rafiq
what is differents between GO and RGO?
Mahi
what is simplest way to understand the applications of nano robots used to detect the cancer affected cell of human body.? How this robot is carried to required site of body cell.? what will be the carrier material and how can be detected that correct delivery of drug is done Rafiq
Rafiq
if virus is killing to make ARTIFICIAL DNA OF GRAPHENE FOR KILLED THE VIRUS .THIS IS OUR ASSUMPTION
Anam
analytical skills graphene is prepared to kill any type viruses .
Anam
Any one who tell me about Preparation and application of Nanomaterial for drug Delivery
Hafiz
what is Nano technology ?
write examples of Nano molecule?
Bob
The nanotechnology is as new science, to scale nanometric
brayan
nanotechnology is the study, desing, synthesis, manipulation and application of materials and functional systems through control of matter at nanoscale
Damian
Is there any normative that regulates the use of silver nanoparticles?
what king of growth are you checking .?
Renato
What fields keep nano created devices from performing or assimulating ? Magnetic fields ? Are do they assimilate ?
why we need to study biomolecules, molecular biology in nanotechnology?
?
Kyle
yes I'm doing my masters in nanotechnology, we are being studying all these domains as well..
why?
what school?
Kyle
biomolecules are e building blocks of every organics and inorganic materials.
Joe
how did you get the value of 2000N.What calculations are needed to arrive at it
Privacy Information Security Software Version 1.1a
Good
Got questions? Join the online conversation and get instant answers!