# 0.8 The cooley-tukey fast fourier transform algorithm  (Page 8/8)

 Page 8 / 8

Next we take advantage of the symmetries of the sine and cosine as functions of the frequency index $k$ . Using these symmetries on [link] gives

$C\left(k\right)=\sum _{n=0}^{N/2-1}\left[{u}_{e}\phantom{\rule{0.166667em}{0ex}}cos+{v}_{o}\phantom{\rule{0.166667em}{0ex}}sin\right]+j\phantom{\rule{0.166667em}{0ex}}\left[{v}_{e}\phantom{\rule{0.166667em}{0ex}}cos-{v}_{o}\phantom{\rule{0.166667em}{0ex}}sin\right]$
$C\left(N-k\right)=\sum _{n=0}^{N/2-1}\left[{u}_{e}\phantom{\rule{0.166667em}{0ex}}cos-{v}_{o}\phantom{\rule{0.166667em}{0ex}}sin\right]+j\phantom{\rule{0.166667em}{0ex}}\left[{v}_{e}\phantom{\rule{0.166667em}{0ex}}cos+{v}_{o}\phantom{\rule{0.166667em}{0ex}}sin\right].$

for $k=0,1,2,\cdots ,N/2-1$ . This again reduces the number of operations by a factor of two, this time because it calculates two outputvalues at a time. The first reduction by a factor of two is always available. The second is possible only if both DFT values are needed. Itis not available if you are calculating only one DFT value. The above development has not dealt with the details that arise with the differencebetween an even and an odd length. That is straightforward.

## Further reductions if the length is even

If the length of the sequence to be transformed is even, there are further symmetries that can be exploited. There will be four data values that areall multiplied by plus or minus the same sine or cosine value. This means a more complicated pre-addition process which is a generalization of thesimple calculation of the even and odd parts in [link] and [link] will reduce the size of the order ${N}^{2}$ part of the algorithm by still another factor of two or four. It the length is divisible by 4, theprocess can be repeated. Indeed, it the length is a power of 2, one can show this process is equivalent to calculating the DFT in terms ofdiscrete cosine and sine transforms [link] , [link] with a resulting arithmetic complexity of order $N\phantom{\rule{0.166667em}{0ex}}log\left(N\right)$ and with a structure that is well suited to real data calculations and pruning.

If the flow-graph of the Cooley-Tukey FFT is compared to the flow-graph of the QFT, one notices both similarities and differences. Both progress instages as the length is continually divided by two. The Cooley-Tukey algorithm uses the periodic properties of the sine and cosine to give thefamiliar horizontal tree of butterflies. The parallel diagonal lines in this graph represent the parallel stepping through the data in synchronismwith the periodic basis functions. The QFT has diagonal lines that connect the first data point with the last, then the second with the nextto last, and so on to give a “star" like picture. This is interesting in that one can look at the flow graph of an algorithm developed by somecompletely different strategy and often find section with the parallel structures and other parts with the star structure. These must be usingsome underlying periodic and symmetric properties of the basis functions.

## Arithmetic complexity and timings

A careful analysis of the QFT shows that $2N$ additions are necessary to compute the even and odd parts of the input data. This is followed by thelength $N/2$ inner product that requires $4{\left(N/2\right)}^{2}={N}^{2}$ real multiplications and an equal number of additions. This is followed by thecalculations necessary for the simultaneous calculations of the first half and last half of $C\left(k\right)$ which requires $4\left(N/2\right)=2N$ real additions. This means the total QFT algorithm requires ${M}^{2}$ real multiplications and ${N}^{2}+4N$ real additions. These numbers along with those for the Goertzel algorithm [link] , [link] , [link] and the direct calculation of the DFT are included in the following table. Of the various order- ${N}^{2}$ DFT algorithms, the QFT seems to be the most efficient general method for anarbitrary length $N$ .

 Algorithm Real Mults. Real Adds Trig Eval. Direct DFT $4\phantom{\rule{0.166667em}{0ex}}{N}^{2}$ $4\phantom{\rule{0.166667em}{0ex}}{N}^{2}$ $2\phantom{\rule{0.166667em}{0ex}}{N}^{2}$ Mod. 2nd Order Goertzel ${N}^{2}+N$ $2\phantom{\rule{0.166667em}{0ex}}{N}^{2}+N$ $N$ QFT ${N}^{2}$ ${N}^{2}+4N$ $2N$

Timings of the algorithms on a PC in milliseconds are given in the following table.

 Algorithm $N=125$ $N=256$ Direct DFT 4.90 19.83 Mod. 2O. Goertzel 1.32 5.55 QFT 1.09 4.50 Chirp + FFT 1.70 3.52

These timings track the floating point operation counts fairly well.

## Conclusions

The QFT is a straight-forward DFT algorithm that uses all of the possible symmetries of the DFT basis function with no requirements on the lengthbeing composite. These ideas have been proposed before, but have not been published or clearly developed by [link] , [link] , [link] , [link] . It seems that the basic QFT is practical and useful as a general algorithmfor lengths up to a hundred or so. Above that, the chirp z-transform [link] or other filter based methods will be superior. For special cases and shorter lengths, methods based on Winograd's theories willalways be superior. Nevertheless, the QFT has a definite place in the array of DFT algorithms and is not well known. A Fortran program isincluded in the appendix.

It is possible, but unlikely, that further arithmetic reduction could be achieved using the fact that ${W}_{N}$ has unity magnitude as was done in second-order Goertzel algorithm. It is also possible that some way ofcombining the Goertzel and QFT algorithm would have some advantages. A development of a complete QFT decomposition of a DFT of length- ${2}^{M}$ shows interesting structure [link] , [link] and arithmetic complexity comparable to average Cooley-Tukey FFTs. It does seem better suited toreal data calculations with pruning.

do you think it's worthwhile in the long term to study the effects and possibilities of nanotechnology on viral treatment?
absolutely yes
Daniel
how to know photocatalytic properties of tio2 nanoparticles...what to do now
it is a goid question and i want to know the answer as well
Maciej
Abigail
Do somebody tell me a best nano engineering book for beginners?
what is fullerene does it is used to make bukky balls
are you nano engineer ?
s.
fullerene is a bucky ball aka Carbon 60 molecule. It was name by the architect Fuller. He design the geodesic dome. it resembles a soccer ball.
Tarell
what is the actual application of fullerenes nowadays?
Damian
That is a great question Damian. best way to answer that question is to Google it. there are hundreds of applications for buck minister fullerenes, from medical to aerospace. you can also find plenty of research papers that will give you great detail on the potential applications of fullerenes.
Tarell
what is the Synthesis, properties,and applications of carbon nano chemistry
Mostly, they use nano carbon for electronics and for materials to be strengthened.
Virgil
is Bucky paper clear?
CYNTHIA
so some one know about replacing silicon atom with phosphorous in semiconductors device?
Yeah, it is a pain to say the least. You basically have to heat the substarte up to around 1000 degrees celcius then pass phosphene gas over top of it, which is explosive and toxic by the way, under very low pressure.
Harper
Do you know which machine is used to that process?
s.
how to fabricate graphene ink ?
for screen printed electrodes ?
SUYASH
What is lattice structure?
of graphene you mean?
Ebrahim
or in general
Ebrahim
in general
s.
Graphene has a hexagonal structure
tahir
On having this app for quite a bit time, Haven't realised there's a chat room in it.
Cied
what is biological synthesis of nanoparticles
what's the easiest and fastest way to the synthesize AgNP?
China
Cied
types of nano material
I start with an easy one. carbon nanotubes woven into a long filament like a string
Porter
many many of nanotubes
Porter
what is the k.e before it land
Yasmin
what is the function of carbon nanotubes?
Cesar
I'm interested in nanotube
Uday
what is nanomaterials​ and their applications of sensors.
what is nano technology
what is system testing?
preparation of nanomaterial
Yes, Nanotechnology has a very fast field of applications and their is always something new to do with it...
what is system testing
what is the application of nanotechnology?
Stotaw
In this morden time nanotechnology used in many field . 1-Electronics-manufacturad IC ,RAM,MRAM,solar panel etc 2-Helth and Medical-Nanomedicine,Drug Dilivery for cancer treatment etc 3- Atomobile -MEMS, Coating on car etc. and may other field for details you can check at Google
Azam
anybody can imagine what will be happen after 100 years from now in nano tech world
Prasenjit
after 100 year this will be not nanotechnology maybe this technology name will be change . maybe aftet 100 year . we work on electron lable practically about its properties and behaviour by the different instruments
Azam
name doesn't matter , whatever it will be change... I'm taking about effect on circumstances of the microscopic world
Prasenjit
how hard could it be to apply nanotechnology against viral infections such HIV or Ebola?
Damian
silver nanoparticles could handle the job?
Damian
not now but maybe in future only AgNP maybe any other nanomaterials
Azam
Hello
Uday
I'm interested in Nanotube
Uday
this technology will not going on for the long time , so I'm thinking about femtotechnology 10^-15
Prasenjit
how did you get the value of 2000N.What calculations are needed to arrive at it
Privacy Information Security Software Version 1.1a
Good
Berger describes sociologists as concerned with
Got questions? Join the online conversation and get instant answers!