begin process at 2012 02 08 10:21:44
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Maths & Algorithmes

 > TRANSFORMÉE DE FOURIER CLASSIQUE

TRANSFORMÉE DE FOURIER CLASSIQUE


 Description

Décomposotion en sinus et cosinus pour le traitement du signal (/!\ ce n'est pas la FFT)

Source

  • bool CxImage::DFT(int dir,long m,double *x1,double *y1,double *x2,double *y2)
  • {
  • long i,k;
  • double arg;
  • double cosarg,sinarg;
  • for (i=0;i<m;i++) {
  • x2[i] = 0;
  • y2[i] = 0;
  • arg = - dir * 2.0 * 3.14159265358f * i / (double)m;
  • for (k=0;k<m;k++) {
  • cosarg = cos(k * arg);
  • sinarg = sin(k * arg);
  • x2[i] += (x1[k] * cosarg - y1[k] * sinarg);
  • y2[i] += (x1[k] * sinarg + y1[k] * cosarg);
  • }
  • }
  • /* Copy the data back */
  • if (dir == 1) {
  • for (i=0;i<m;i++) {
  • x1[i] = x2[i] / m;
  • y1[i] = y2[i] / m;
  • }
  • } else {
  • for (i=0;i<m;i++) {
  • x1[i] = x2[i];
  • y1[i] = y2[i];
  • }
  • }
  • return true;
  • }
bool CxImage::DFT(int dir,long m,double *x1,double *y1,double *x2,double *y2)
{
   long i,k;
   double arg;
   double cosarg,sinarg;
   
   for (i=0;i<m;i++) {
      x2[i] = 0;
      y2[i] = 0;
      arg = - dir * 2.0 * 3.14159265358f * i / (double)m;
      for (k=0;k<m;k++) {
         cosarg = cos(k * arg);
         sinarg = sin(k * arg);
         x2[i] += (x1[k] * cosarg - y1[k] * sinarg);
         y2[i] += (x1[k] * sinarg + y1[k] * cosarg);
      }
   }
   
   /* Copy the data back */
   if (dir == 1) {
      for (i=0;i<m;i++) {
         x1[i] = x2[i] / m;
         y1[i] = y2[i] / m;
      }
   } else {
      for (i=0;i<m;i++) {
         x1[i] = x2[i];
         y1[i] = y2[i];
      }
   }
   
   return true;
}



 Sources du même auteur

Source avec Zip COMMUNIQUER AVEC UN GPS (MFC)
COMMUNICATION SUR RS232 AVEC UN MICROCONTROLEUR
Source avec Zip UNE ONDELETTE POUR LE TRAITEMENT DU SIGNAL NUMÉRIQUE
Source avec Zip UN TUTORIAL POUR LA CRÉATION DE DLL SOUS VISUAL C++ 6.0
TESTER SI UN TABLEAU EST UNE PUISSANCE DE 2

 Sources de la même categorie

Source avec Zip UN EXAMPLE D'APPLICATION EN CUDA DE L'ALGORITHME DE SCAN POU... par oguzaras
Source avec Zip Source avec une capture CHIFFREMENT DE VIGENERE par lajouad
Source avec Zip Source avec une capture ANALYSE SYNTAXIQUE par lajouad
Source avec Zip Source avec une capture STRUCTURE D'UNE MATRICE PAR LES LISTE LINÉAIRE (NON CONTUGUS... par benzarabel
Source avec Zip Source avec une capture DESSINER UNE ARBRE BINAIRE( MODE CONSOLE): par benzarabel

Commentaires et avis

Commentaire de LordBob le 29/03/2004 18:37:45

tu n'avais pas deja deposé une source dans le meme style?

Commentaire de lpikachu58 le 30/03/2004 09:29:20

si mais cette transformée là est la décomposition classique en sinus cosinus et non la FFT avec l'algorithme du papillon

Commentaire de perig le 06/06/2004 11:43:37

Merci pour ce source mais
pour le prototype,
"bool CxImage::DFT(int dir,long m,double *x1,double *y1,double *x2,double *y2)"

m c'est le nb d'échantillons
x1 c'est le tab des x
y1 le tab des y

mais
C'est quoi dir ?
Et a quoi correspond x2 et y2 a la fin du prog?

Commentaire de perig le 07/06/2004 07:37:58

je crois avoir pigé,
dir c'est pour faire l'inverse ifft
c'est bien ca?

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,905 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales