Parkinson Disease Database

mathutil
Class FFT

java.lang.Object
  extended by mathutil.FFT

public class FFT
extends java.lang.Object

Třída počítá Fourierovu transformaci z vektoru komplexních čísel.

Copyright: Copyright (c) 2005 Jan Dolezel

Company: ČVUT FEL, Prague


Constructor Summary
private FFT()
           
 
Method Summary
static ComplexVector fft(ComplexVector data)
          Vypocita Fourierovu transformaci vektoru komplexnich cisel.
static ComplexVector fft(ComplexVector data, int numSamples)
          Vypocita Fourierovu transformaci vektoru komplexnich cisels danym poctem vzorku.
static ComplexVector fft(ComplexVector data, int numSamples, boolean inverseTransform)
          jadro provadejici Fourierovu tranformaci (i zpetnou) vstupem je skutecny pocet vzorku, rnumSamples o jaky typ transformace se jedna true = zpetna
static ComplexVector ifft(ComplexVector data)
          Vypocita inverzni Fourierovu transformaci vektoru komplexnich cisel.
(package private) static int numberOfBitsNeeded(int num)
          vypocita ze zadaneho vstupu, nejblizsi mocninu cisla 2
private static int reverseBits(int index, int numBits)
          vypocita nove umisteni prvku pole s urcitym indexem pouziva interne fft - (vzorky se rozmistuji na nova mista algoritmus pouziva paradigma rozdel a panuj)
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FFT

private FFT()
Method Detail

fft

public static ComplexVector fft(ComplexVector data)
Vypocita Fourierovu transformaci vektoru komplexnich cisel. Pocet vzorku je nejblizsi vyssi mocnina dvou.

Parameters:
data - ComplexVector
Returns:
ComplexVector

fft

public static ComplexVector fft(ComplexVector data,
                                int numSamples)
Vypocita Fourierovu transformaci vektoru komplexnich cisels danym poctem vzorku.

Parameters:
data - ComplexVector
numSamples - int
Returns:
ComplexVector

ifft

public static ComplexVector ifft(ComplexVector data)
Vypocita inverzni Fourierovu transformaci vektoru komplexnich cisel. Pocet vzorku je nejblizsi vyssi mocnina dvou.

Parameters:
data - ComplexVector
Returns:
ComplexVector

fft

public static ComplexVector fft(ComplexVector data,
                                int numSamples,
                                boolean inverseTransform)
jadro provadejici Fourierovu tranformaci (i zpetnou) vstupem je skutecny pocet vzorku, rnumSamples o jaky typ transformace se jedna true = zpetna

Parameters:
data - ComplexVector vstupni data
numSamples - int pocet vzorku
inverseTransform - boolean urcuje jestli budeme delat FFT nebo IFFT
Returns:
ComplexVector

numberOfBitsNeeded

static int numberOfBitsNeeded(int num)
vypocita ze zadaneho vstupu, nejblizsi mocninu cisla 2

Parameters:
num - int cislo jehoz nejblizsi vetsi mocninu 2 chceme zjistit
Returns:
int nejblizsi mocnina

reverseBits

private static int reverseBits(int index,
                               int numBits)
vypocita nove umisteni prvku pole s urcitym indexem pouziva interne fft - (vzorky se rozmistuji na nova mista algoritmus pouziva paradigma rozdel a panuj)

Parameters:
index - int jaky prvek
numBits - int jaky rozsah
Returns:
int nove umisteni

Parkinson Disease Database