Their 1965 paper starts with the unassuming words "

*An efficient method for the calculation of the interactions of a 2^m factorial experiment was introduced by Yates and is widely known by his name.*" The paper does not use the word "fast" even once. But the algorithm described in that paper written by James Cooley and John Tukey[1] came to be known as the*Fast Fourier Transform*(FFT)*,*and turned out to be just what the world was waiting for. Overnight, in universities and laboratories around the world, scientists and engineers began writing code and building hardware to implement the FFT. Fifty years later, versions of that algorithm are routinely used, often tacitly assumed to be available to programmers. Any computation that requires (either as an end, or as an intermediate step) the unraveling of the frequency content of information carrying signals benefits from the enormous speedup offered by the FFT. Other than the speedup, the FFT does not offer any computational result that was not available before its discovery. However, were it not for this amazing algorithm, it would be practically impossible to filter cell-phone signals, to compress movie files, do spectroscopy, take magnetic resonance imaging scans, perform quantum computing, and solve differential equations, among other things. The Cooley-Tukey paper created a surge in products that suddenly became possible, and often even became practical to operate in real-time.
Although the idea behind FFT can be explained without using complex math (it involves complex numbers, so I guess that does make the math complex), no attempt to do so will be made here. Suffice it to say that the algorithm belongs to a class of mathematical calculations that can either be performed in a straightforward manner, or can be solved by dividing the calculations into smaller steps. Cooley and Tukey showed how the dividing could be done in a manner such that the total effort needed to compute the simpler steps is much less than the effort that would be needed to tackle the computation without such division. There is a wealth of deep mathematics underlying the FFT algorithm. But let us remember that John Tukey, ever the pragmatic engineer, is said to have declared “I wouldn’t want to fly in a plane whose design depended on whether a function was Riemann or Lebesgue integrable.”

For signals with a million samples, the gain in speed obtained by virtue of the magic of FFT can be upwards of 50,000. To appreciate this speedup ratio, consider some calculation that takes 1 second to complete on your computer. To most of us, this would seem sluggish. In today's world we expect our devices to be instantly responsive, but we might tolerate such slowness once in a while, say when we are applying some fancy effects to produce an irresistible cat video. Now, imagine that same computation being 50,000 times slower i.e. taking almost 14 hours to execute.

For decades, the FFT algorithm and its direct variants have ruled the world of signal processing. It is only recently that researchers[2] at MIT came up with an algorithm which takes advantage of a special property of real-life signals (sparsity) to achieve significantly faster performance. Although the speedup achieved (relative to the FFT,

*not*relative to the straightforward computation) is not as spectacular, it is still useful in many practical applications. For example, it has the potential to reduce the time patients spend inside a MRI machine from an agonizing one hour to a bearable 20 minutes. There are many other applications where increased efficiency of computing the spectrum leads to other benefits such as longer battery life.
My introduction to the FFT came via a classic textbook, Athanasios Papoulis's

*Signal Analysis*. In graduate school, I remember scribbling pages after pages of formulas as I worked to absorb the concept. When it all fell into place, the feeling was as exhilarating as though I had personally come up with the algorithm myself. Wonderful applications suggested themselves, and it seemed that the world could be saved by my new found understanding of the FFT.
I was to be humbled because I was soon introduced to an application made possible by the FFT. Transmultiplexers are computational devices that allow a single wire (or radio channel) to simultaneously transmit thousands of speech signals in a way that allows them to be separated by individual receivers. Remarkably, FFT figures into the calculations needed to pull off this feat. Unlike common applications I had encountered at that time where the input to the FFT is a sequence of samples of a single signal as it is generated in time, in the transmultiplexer calculations, the input to the FFT at each time step is the sequence formed by gathering samples of several independent speech signals at a given instant of time. It amazed me that you could, in a manner of speaking, meaningfully combine and take apart independent words uttered by a crowd at a given time instant. Now this is one application I could not have come up with.

I know that many engineers and scientists have their own personal story of their first encounter with the FFT. Well, we are nerds are we not? Can we share?

------------

[1] Cooley, James W.; Tukey, John W. (1965). "An algorithm for the machine calculation of complex Fourier series". Mathematics of Computation, 19: 297–301.

[2] Haitham Hassanieh, Piotr Indyk, Dina Katabi, Eric Price. (2012). "Simple and Practical Algorithm for Sparse Fourier Transform". ACM-SIAM Symposium on Discrete Algorithms, Kyoto Japan

A very nice article. I now know so many things about this topic.

ReplyDeleteVery nicely written. Is there any field which Tukey has left untouched :-)

ReplyDeleteUsually I do not read post on blogs, but I would like to say that this write-up very forced me to try and do it! Your writing style has been surprised me. Thanks, very nice article.

ReplyDeleteLinux Training in Chennai Guindy

This comment has been removed by a blog administrator.

ReplyDeleteAll are saying the same thing repeatedly, but in your blog I had a chance to get some useful and unique information, I love your writing style very much, I would like to suggest your blog in my dude circle, so keep on updates.

ReplyDeleteDigital Marketing Company in Chennai

I’ve been browsing on-line greater than three hours today, but I never discovered any attention-grabbing article like yours. It is beautiful worth sufficient for me. Personally, if all webmasters and bloggers made good content material as you did, the net will be a lot more helpful than ever before.

ReplyDeleteSMO Services Chennai

I have read your blog its very attractive and impressive. I like it your blog.

DeleteDigital Marketing Company in Chennai Digital Marketing Agency

I am expecting more interesting topics from you. And this was nice content and definitely it will be useful for many people.

ReplyDeleteDigital Marketing For Small Business in Chennai

Great information shared in this blog. Helps in gaining concepts about new information and concepts.Awsome information provided.Very useful for the beginners.

ReplyDeleteSEO Training in Chennai

I think this is interesting articles and Business ethics for new information's, and i like that kind of information.So the i like that post,because all of given information was very excellent

ReplyDeleteInformatica Training in Chennai

keep sharing your information regularly for my future reference. This content creates a new hope and inspiration with in me

ReplyDeleteBest Dot Net Training Institutes in Chennai

It's interesting that many of the bloggers to helped clarify a few things for me as well as giving.Most of ideas can be nice content.The people to give them a good shake to get your point and across the command.

ReplyDeleteDigital Marketing Course in Chennai

Great post!I am actually getting ready to across this information,i am very happy to this commands.Also great blog here with all of the valuable information you have.Well done,its a great knowledge.

ReplyDeleteNew Zealand Education Consultants in Chennai

Truely a very good article on how to handle the future technology. After reading your post,thanks for taking the time to discuss this, I feel happy about and I love learning more about this topic.keep sharing your information regularly for my future reference

ReplyDeleteBest Dental Clinic In Vellore

Great post! I am actually getting ready to across this information, It's very helpful for this blog.Also great with all of the valuable information you have Keep up the good work you are doing well.

ReplyDeleteFresher Jobs in Mumbai

Fresher Jobs in Pune

Fresher Jobs in Noida

Fresher Jobs in Hyderabad

Nice post....

ReplyDeleteBest Linux Training Center in Chennai

Red Hat Linux Training in Chennai

Red Hat Training

Rhce Training in Chennai

Great post! I am actually getting ready to across this information, It's very helpful for this blog.Also great with all of the valuable information you have Keep up the good work you are doing well.

ReplyDeleteManpower Services in Chennai

I am not sure the place you are getting your information, however good topic.I needs to spend some time studying more or understanding more.Thank you for wonderful information I was in search of this info for my mission.

ReplyDeleteManpower Consultancy in Bangalore

HR Consultancy in Bangalore

Recruitment Consultancy in Bangalore

HR Franchise in Bangalore

reat post! I am actually getting ready to across this information, It's very helpful for this blog.Also great with all of the valuable information you have Keep up the good work you are doing well.

ReplyDeleteDigital Marketing Company in Chennai

ReplyDeleteThis information is impressive; I am inspired with your post writing style & how continuously you describe this topic.

Payday loans in Alabama

Title loans in South Carolina

I’m sincerely suggesting your blog to all my friends… I’ve changed myself in many thing after reading your blog… Thanks and keep going.

ReplyDeleteBest Interior Designers in Chennai

Interior Designers in Chennai

ReplyDeleteIt is very helpful for me. Keep blogging like this.

Healthcare Analytics Company

Finance Analytics Company

Telecom Analytics Company

Retail Analytics Company

Analytics Company

US IT Staffing Agency

This information is impressive; I am inspired with your post writing style & how continuously you describe this topic.

ReplyDeletePawn Shop

Pawn Loans

Pawn Shops

Pawn Loan

Pawn Shop near me

This comment has been removed by the author.

ReplyDeleteThis blog is having the general information. Got a creative work and this is very different one.We have to develop our creativity mind.This blog helps for this.Thank you for this blog.This is very interesting and useful.

ReplyDeleteSelf Employment Tax

TaxPreparation Services

Tax Accountant

Tax Consultant

Tax Advisor

Thanks for sharing nice stuff really it. You might like read about

ReplyDeleteIntroduction to FFT

FFT in Matlab

DFT and IDFT in Matlab

This is extremely great information for these blog. And Very good work. It is very interesting to learn from to easy considered. Thank you for giving information.

ReplyDeleteBigdata Training in Chennai

Nice post really very interested to read this blog.

ReplyDeleteWeb development company in bangaloreWeb design company bangaloreI feel happy to have Spent my time in reading such a useful blog.....

ReplyDeleteSAP Training in Chennai

The Car featured content undergoes a thorough review process to ensure that it meets the highest standards in order to serve as the best car spare parts and fit the goals.

ReplyDeleteCar Accessories in OMR

Its really an Excellent post. I just stumbled upon your blog and wanted to say that I have really enjoyed reading your blog. Thanks for sharing....

ReplyDeleteRestaurant in OMR

Apartments in OMR

Villas in OMR

Resorts in OMR

ReplyDeleteBIG DATA Technologies provides you with a state of the art software which combines modern GPU technology (Graphic Processing Units) with the best practices in today’s Big Data platforms, providing up to 100x faster insights from data.

Bigdata Training in Chennai OMR

Testers can build, enhance, and maintain scripts to regression test their mobile applications. Hands-on instruction is provided for those who want to explore the power of using Appium. The course covers content from installation to execution and reporting . The focus is on the practical application of Appium to resolve common mobile automated testing challenges. This course focuses on getting started with Appium.

ReplyDeletecourse/appiumtraininginsholinganallur/