aspose file tools
The moose likes Java in General and the fly likes Explain this FFT Radix 2 DIT java code line by line Big Moose Saloon
  Search | Java FAQ | Recent Topics
Register / Login


Win a copy of The Mikado Method this week in the Agile and other Processes forum!
JavaRanch » Java Forums » Java » Java in General
Reply Bookmark "Explain this FFT Radix 2 DIT java code line by line" Watch "Explain this FFT Radix 2 DIT java code line by line" New topic
Author

Explain this FFT Radix 2 DIT java code line by line

Piotr Orzech
Greenhorn

Joined: Sep 13, 2011
Posts: 3
Hello,
can someone explain me this java code line by line on the selected part of the code:



Here is the whole code:

Paul Clapham
Bartender

Joined: Oct 14, 2005
Posts: 16483
    
    2

Well, yes, but it would be a waste of time for both of us:

1. Assign zero to j.

2. Divide n by 2 and assign the result to n2.

And so on. I don't think that's what you were looking for. Could you perhaps produce a more practical question?
Piotr Orzech
Greenhorn

Joined: Sep 13, 2011
Posts: 3
I've read about fft and i found few steps how to do this. I don't know how to assign them to this code.

1.Prepare input data for summation — put them into convenient order;
2.For every summation level:
2.1For every exponent factor of the half-period:
2.2Calculate factor;
2.1.1For every sum of this factor:
2.1.2Calculate product of the factor and the second term of the sum;
2.1.3Calculate sum;
2.1.4Calculate difference.
Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 32654
    
    4
What's FFT and DIT? You should always explain abbreviations.
Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 32654
    
    4
. . . and welcome to the Ranch
Piotr Orzech
Greenhorn

Joined: Sep 13, 2011
Posts: 3
FFT - Fast Fourier Transfomate
DIT - Decimation In Time

There is some bit reverse (i dont know how it exacly works) and calculation called butterflies. I am begginer in programming and I need a little patiece :P
Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 32654
    
    4
Thank you.
Martin Vajsar
Bartender

Joined: Aug 22, 2010
Posts: 2329
    
    2

Piotr Orzech wrote:I am begginer in programming...

Do you understand the mathematics behind FFT and DIT? That is the hard part here. You need to get good grasp of this first and then to analyze code you didn't even write. Trying to understand the algorithm from a foreign code (possibly optimized using clever mathematical tricks, or - worse - even buggy) when you're a beginner in programming would certainly be a frustrating task.

Quick search for "FFT explained" gave me this.
Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 32654
    
    4
Lines 12-18 in the first code look like a standard method for swapping two elements in arrays, but there are two swaps.
 
I agree. Here's the link: http://zeroturnaround.com/jrebel - it saves me about five hours per week
 
subject: Explain this FFT Radix 2 DIT java code line by line
 
Similar Threads
want to display the following output?
Digital Signal Processing (DSP, FFT, Spectrum)
How do read a double datatype 2D array into your applet code from a text file
LinearProgramming in Java
Mine Sweeper( how to refresh the frame?)