myGully.com

myGully.com (https://mygully.com/index.php)
-   Schule, Studium, Ausbildung & Beruf (https://mygully.com/forumdisplay.php?f=400)
-   -   (Fast) Fourier Transformation - Komplexe Zahlen (https://mygully.com/showthread.php?t=3090416)

Madddin_89 10.11.13 00:28

(Fast) Fourier Transformation - Komplexe Zahlen
 
Hallo zusammen,

ist vielleicht nicht das beste Forum dafür,
doch hoffe ich, dass ein paar schlaue Leute was zu diesem Thema sagen können :).

Im Moment versuche ich die im Titel erwähnte Transformation in C/C++ zu implementieren,
allerdings hapert es schon an der Mathematik. Deshalb meine ersten zwei Frage (andere ergeben sich evtl. aus dem Thread-Verlauf):
Muss ich den realen und imaginären Teil seperat berechnen?
Welche Wirkung hat das (-) bei e^(-i) ?

Hoffe ihr könnt mir dadurch vielleicht einen Denkanstoß geben.
Fall ich im falschen Bereich bin, bitte ich um Verschiebung.

Gruß
Madddin_89

eitch100 10.11.13 10:15

Zitat:

Zitat von Madddin_89 (Beitrag 25024568)
Welche Wirkung hat das (-) bei e^(-i) ?

[Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...]

Ansonsten bist du mit deinem Problem vielleicht besser in der Programmierabteilung aufgehoben...
[Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...]

Odatas 10.11.13 11:57

e^-i ist das gleiche wie 1/(e^i). Vielleicht hilft dir das ja schon.

Madddin_89 10.11.13 12:09

stimmt, daran hatte ich gar nicht gedacht

danke euch beiden

Madddin_89 10.11.13 22:21

Habe noch ein wenig recherchiert und löse es im Moment so,
falls es noch jemand interessiert:
(Hatte übrigens vergessen zu erwähnen, dass es sich in meinem Fall um die
2 dimensionale Fourier Transformation handelt)

Real-Teil: cos(-2*PI*((u*x)/M+(v*y)/N))
Imaginärer-Teil: sin(-2*PI*((u*x)/M+(v*y)/N))

Zusätzlich sei gesagt, dass folgende Implementierung sehr rechenintensiv ist.
Die effizientere Variante ist nur die in der Überschrift gezeigte "FFT" (fast Fourier Transformation)

Edit: Weitere Fragen diesbezüglich kann ich mittlerweile sicherlich auch beantworten, da ich mit dem Thema jetzt schon einige Stunden verbracht habe :)

aggi987 12.11.13 21:07

Also bei jedem halbwegs aktuellen C++ Compiler sollte die Klasse <complex> in der std-Library
existieren, in der alle wichtigen Funktionen für komplexe Zahlen definiert sind, siehe:
[Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...]
Zur FFT in C gibt es 2 Kapitel in den Numerical Recipes, da steht schon einiges dazu drin:
[Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...]
Die pdfs direkt von der Seite brauchen neuerdings ein Reader-Plugin zum öffnen, aber die schwirren
auch unter z.B. ch12-0.pdf (für Kapitel 12.0) in der älteren Version im Netz rum, einfach mal suchen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:28 Uhr.

Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.