FFT avec complexe - réel
Répondre à la discussion
Affichage des résultats 1 à 4 sur 4

FFT avec complexe - réel



  1. #1
    keul

    Bonjour

    J'ai une fonction en PHP qui permet de calculer la FFT sur des echantiloons de signaux, mais les echantllons sont en complexe (1 + 2i) or, mon signal est un signal carré (les echantillons ont donc la valeur 0 ou 1) et je ne sais pas comment faire por passer de l'un à l'autre
    si je met i=0, le resultat voulu n'est pas obtenu
    (le script PHP est sur http://www.mathewbinkley.org/fft.php pour ceux que ca interesse)

    sinon, si vous savez coment faire une FFT sur des echantillon (1024 ou 4096) binaires sans utiliser des intégrales (juste avec sinus, consinus et boufles for... )?

    -----

  2. #2
    azt

    Il y a la méthode de Tukey et Cooley pour effectuer des FFT.
    Voilà un bout de programme montrant une application de cet algorithme :
    [code:1:6fcc86d63f]void fft ( int n, complex<long double> X[], complex<long double> RES[])
    // n est une puissance de 2
    { complex<long double> * pair, *impair, *U, *V ;
    int i, i1;
    long double alphai, alpha;
    if(n == 1) RES[0] = X[0];
    else{
    pair = new complex<long double> [n/2];
    impair = new complex<long double> [n/2];
    U = new complex<long double> [n/2];
    V = new complex<long double> [n/2];
    for( i = 0; i<n/2 ; ++i){
    pair[i] = X[2*i];i
    impair[i] = X[2*i+1];
    }
    fft( n/2, pair, U);
    fft( n/2, impair, V);
    alpha = 2*pi/n;
    for( i= 0;i<= n-1; ++i){
    alphai = alpha*i;
    i1 = i % ( n/2 );
    complex<long double>tau (cosl(alphai), sinl(alphai));
    RES[i]= U[i1] + tau * V[i1];
    }
    delete pair;
    delete impair;
    delete U;
    delete V;
    }
    }
    [/code:1:6fcc86d63f]

    Il n'est pas de moi, je vais rechercher le site d'ou il vient. Le temps que je retourne tous mes fichiers...

  3. #3
    azt

    J'ai retrouvé rapidement, voilà le site interessant :
    http://brassens.upmf-grenoble.fr/IMS...r/Fourier.html

    si vous savez coment faire une FFT sur des echantillon (1024 ou 4096) binaires sans utiliser des intégrales (juste avec sinus, consinus et boufles for... )?
    Ben la FFT c'est sans intégrale, c'est pour cela qu'elle est rapide, il n'y a que des additions et des multiplications.

  4. #4
    keul

    Wah kooool

    merci BEAUCOUP

  5. A voir en vidéo sur Futura

Discussions similaires

  1. complexe: réel, imaginaire pur, nul
    Par invitef5f04fa4 dans le forum Mathématiques du collège et du lycée
    Réponses: 10
    Dernier message: 13/06/2010, 10h45
  2. nombre réel avec CC5X
    Par invitebf47a06a dans le forum Électronique
    Réponses: 16
    Dernier message: 02/11/2007, 22h16
  3. Complexe réel
    Par aNyFuTuRe- dans le forum Mathématiques du supérieur
    Réponses: 12
    Dernier message: 09/09/2007, 22h40
  4. quelle puissance pour passer de complexe à réel ?
    Par invite0fadfa80 dans le forum Mathématiques du collège et du lycée
    Réponses: 13
    Dernier message: 16/03/2007, 20h13
  5. indice de refraction: complexe ou reel
    Par invite37ecd276 dans le forum Physique
    Réponses: 2
    Dernier message: 05/05/2005, 20h50