Solved

what are butterfly's in DSP

Posted on 2004-08-18
7
1,752 Views
Last Modified: 2008-03-06

Ive noticed in many DCT and FFT 'C' source codes there are references to
something called butterfly, can someone explain what this is.
Im a self taught programmer, so dont understand math jargon too well,
so if you could explain it's purpose in english that would be great.

thankyou
0
Comment
Question by:apakian
7 Comments
 
LVL 84

Expert Comment

by:ozo
ID: 11836444
0
 
LVL 84

Expert Comment

by:ozo
ID: 11836448
0
 

Author Comment

by:apakian
ID: 11836541

In english, assume Im a really dummy please :-)
some pseudo code would help.
0
Master Your Team's Linux and Cloud Stack!

The average business loses $13.5M per year to ineffective training (per 1,000 employees). Keep ahead of the competition and combine in-person quality with online cost and flexibility by training with Linux Academy.

 
LVL 18

Expert Comment

by:JR2003
ID: 11841658
A butterfly is a simple operation on a complex number.
Part of the process of an FFT is having an network of these butterflies to achieve it's algorithmic aims.
You may notice that the end product of the network of butterflies there is bit reversal, a phenomina of the FFT.
Don't worry if you don't understand it very easily. The FFT is one of mankinds greatest algorithmic achievements and requires a reasonable background in mathematics to understand it. It's just not easy.
0
 

Author Comment

by:apakian
ID: 11842104

I understand fft,dct and signal processing, as far as how to code them,
but the math jargon i dont understand, so if you can explain butterflies
in the form of C code for something other than DSP, that would
do the trick...
0
 
LVL 7

Expert Comment

by:Xxavier
ID: 11849553
apakian, Unless you are hot stuff on the old maths stuff you are not going to understand the subtleties of the FFT and DCT. You do not need complex numbers for the DCT and they really are not required for the FFT but it is a nightmare without them.
0
 
LVL 27

Accepted Solution

by:
d-glitch earned 100 total points
ID: 11852283
Here is a C language implementation of the Cooley-Tookey FFT algorithm with the butterflies calculations.

                           http://www.science.uva.nl/pub/computer-systems/ias/groen/aim/aim/fft1.c

Butterflies are just a way of scrambling the inputs in an organized way.
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Introduction On a scale of 1 to 10, how would you rate our Product? Many of us have answered that question time and time again. But only a few of us have had the pleasure of receiving a stack of the filled out surveys and being asked to do somethi…
Complex Numbers are funny things.  Many people have a basic understanding of them, some a more advanced.  The confusion usually arises when that pesky i (or j for Electrical Engineers) appears and understanding the meaning of a square root of a nega…
This is a video describing the growing solar energy use in Utah. This is a topic that greatly interests me and so I decided to produce a video about it.
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…

810 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question