<< Chapter < Page Chapter >> Page >

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 ( k ) = n = 0 N / 2 - 1 [ u e cos + v o sin ] + j [ v e cos - v o sin ]
C ( N - k ) = n = 0 N / 2 - 1 [ u e cos - v o sin ] + j [ v e cos + v o sin ] .

for k = 0 , 1 , 2 , , 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 log ( N ) 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 2 N 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 ( N / 2 ) 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 ( k ) which requires 4 ( N / 2 ) = 2 N real additions. This means the total QFT algorithm requires M 2 real multiplications and N 2 + 4 N 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 N 2 4 N 2 2 N 2
Mod. 2nd Order Goertzel N 2 + N 2 N 2 + N N
QFT N 2 N 2 + 4 N 2 N

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.

Questions & Answers

A golfer on a fairway is 70 m away from the green, which sits below the level of the fairway by 20 m. If the golfer hits the ball at an angle of 40° with an initial speed of 20 m/s, how close to the green does she come?
Aislinn Reply
cm
tijani
what is titration
John Reply
what is physics
Siyaka Reply
A mouse of mass 200 g falls 100 m down a vertical mine shaft and lands at the bottom with a speed of 8.0 m/s. During its fall, how much work is done on the mouse by air resistance
Jude Reply
Can you compute that for me. Ty
Jude
what is the dimension formula of energy?
David Reply
what is viscosity?
David
what is inorganic
emma Reply
what is chemistry
Youesf Reply
what is inorganic
emma
Chemistry is a branch of science that deals with the study of matter,it composition,it structure and the changes it undergoes
Adjei
please, I'm a physics student and I need help in physics
Adjanou
chemistry could also be understood like the sexual attraction/repulsion of the male and female elements. the reaction varies depending on the energy differences of each given gender. + masculine -female.
Pedro
A ball is thrown straight up.it passes a 2.0m high window 7.50 m off the ground on it path up and takes 1.30 s to go past the window.what was the ball initial velocity
Krampah Reply
2. A sled plus passenger with total mass 50 kg is pulled 20 m across the snow (0.20) at constant velocity by a force directed 25° above the horizontal. Calculate (a) the work of the applied force, (b) the work of friction, and (c) the total work.
Sahid Reply
you have been hired as an espert witness in a court case involving an automobile accident. the accident involved car A of mass 1500kg which crashed into stationary car B of mass 1100kg. the driver of car A applied his brakes 15 m before he skidded and crashed into car B. after the collision, car A s
Samuel Reply
can someone explain to me, an ignorant high school student, why the trend of the graph doesn't follow the fact that the higher frequency a sound wave is, the more power it is, hence, making me think the phons output would follow this general trend?
Joseph Reply
Nevermind i just realied that the graph is the phons output for a person with normal hearing and not just the phons output of the sound waves power, I should read the entire thing next time
Joseph
Follow up question, does anyone know where I can find a graph that accuretly depicts the actual relative "power" output of sound over its frequency instead of just humans hearing
Joseph
"Generation of electrical energy from sound energy | IEEE Conference Publication | IEEE Xplore" ***ieeexplore.ieee.org/document/7150687?reload=true
Ryan
what's motion
Maurice Reply
what are the types of wave
Maurice
answer
Magreth
progressive wave
Magreth
hello friend how are you
Muhammad Reply
fine, how about you?
Mohammed
hi
Mujahid
A string is 3.00 m long with a mass of 5.00 g. The string is held taut with a tension of 500.00 N applied to the string. A pulse is sent down the string. How long does it take the pulse to travel the 3.00 m of the string?
yasuo Reply
Who can show me the full solution in this problem?
Reofrir Reply
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