Transformee de fourier discrete

Soyez le premier à donner votre avis sur cette source.

Snippet vu 12 240 fois - Téléchargée 30 fois

Contenu du snippet

Petit programme permettant de calculer la transformée de Fourier Discrète de la fonction
f(x) = x*(1-x).

N'hésiter pas à mettre des commentaires.

Source / Exemple :


#include <stdio.h>
#include <stdlib.h>
#include <math.h>

#define max 10
#define pi 3.1415926535897932385E0

int main(int argc, char *argv[])
{
  
  FILE *output;
  output=fopen("fourier.dat", "w");
  
  double h;
  double x;
  int i,j,k;
  double f[max+1]
  double imag, real;
  
    
  h = 1.0/(max-1); /* pas */
    
  // On calcul les valeurs de f(x)=x*(1-x) 
  // avec un pas de h
  for (i = 0; i < max; ++i)
  {
  
  x = h*i;
  f[i] = x*(1-x);
    
  }
  
  
   for (j=0; j<i; j++)			/* boucle pour l'index de frequence */
   {
      real=imag=0.0;			/* variables a zero */
      for (k=0; k<i; k++)		/* boucle pour la somme */
      {
         real+=f[k]*cos((2*pi*k*j)/i);
         imag+=f[k]*sin((2*pi*k*j)/i);
               
      }
      fprintf(output, "%d %f %f %f\n", j, real, real/i, imag/i );
   }
   printf("donnees sauvegardees dans fourier.dat.\n");
   
   fclose(output);
   
  system("PAUSE");	
  return 0;
}

A voir également

Ajouter un commentaire

Commentaires

Jarod1980
Messages postés
273
Date d'inscription
samedi 5 juillet 2003
Statut
Membre
Dernière intervention
31 mars 2015
1 -
Patience, Je suis en train d'y travailler dessus en ce moment.
luhtor
Messages postés
2023
Date d'inscription
mardi 24 septembre 2002
Statut
Membre
Dernière intervention
28 juillet 2008
4 -
Je serais preneur si tu fais un algo de FFT ^^ j'en aurais besoin un jour :)
cs_Lightness1024!
Messages postés
162
Date d'inscription
jeudi 15 mars 2001
Statut
Membre
Dernière intervention
1 avril 2005
-
ben non je ne connais pas vraiment de lib la dessus :(
je pensait aussi comme toi faire mes propres routines un jour où j'en aurait besoin.
(ca peut etre interressant, ne serait-ce que d'avoir le fondamental pour estimer la puissance d'un signal..)
cs_Lightness1024!
Messages postés
162
Date d'inscription
jeudi 15 mars 2001
Statut
Membre
Dernière intervention
1 avril 2005
-
ben non je ne connais pas vraiment de lib la dessus :(
je pensait aussi comme toi faire mes propres routines un jour où j'en aurait besoin.
(ca peut etre interressant, ne serait-ce que d'avoir le fondamental pour estimer la puissance d'un signal..)
Jarod1980
Messages postés
273
Date d'inscription
samedi 5 juillet 2003
Statut
Membre
Dernière intervention
31 mars 2015
1 -
Salut,
Merci pour tes commentaires et pour tes conseils. En ce qui concerne la FFT je suis en train d'y travailler.
J'ai vu qu'il y avait la lib FFTW mais pour le moment je ne sais pas trop comment l'utiliser. Donc je pense écrire ma propre routine. A moins que tu connaisses des tuto sur cette lib.
Merci pour tes commentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.