FFT, kleines Problem

Gast #1114406
Lesenswert?

Hallo ihr!
Ich versuche gerade ein ganz simples  Programm zu schreiben, dass die 
FFT zu einem gegeben Signal berechnet. Leider ist das Ergebnis dies 
Algorithmus ziemlicher murks ;-)

Ich mache das ganze so:
ich teile die signalfolge rekursiv in gerade und ungerade Indizes auf, 
und füge diese dann von unten nach oben wieder zusammen. Und genau da 
liegt das Problem. Ich bin mir nicht ganz sicher, wie das zusammenfügen 
gemacht werden soll. Leider bin ich auch nach 2 Tagen 
Internet/Literaturrecherche nicht ganz schlau geworden....

Hier mal meine Zusammen-Füge Funktion (ganz simpel) (in C#):

// Füge die zwei arrays (gerade und ungerade indizes) v1 und v2 der 
Länge size/2 zu einem array (target) der Länge size zusammen

private void buildFFT(double[] target, double[] v1, double[] v2, int 
size)
        {
            int hSize = size / 2;
            for (int k = 0; k < hSize; k++)
            {
                double exp = Math.Exp(-2.0 * Math.PI * k / size);

                target[k]         = v1[k] + v2[k]*exp;
                target[k + hSize] = v1[k] - v2[k]*exp;
            }//end for
        }//end buildFFT

Mache ich da was falsch? Ist bestimmt ein blöder Fehler, aber leider 
finde ich keine Informationen dazu... :-(

Danke für eure Hilfe!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren