Inscription / Connexion Nouveau Sujet
Niveau école ingénieur
Partager :

[SCILAB] Convolution et transformée de Fourier

Posté par
exes74
05-09-09 à 16:53

Bonjour,

je cherche actuellement à comparer le temps de calcul d'un produit de convolution en utilisant la convolution directe et en utilisant la convolution par transformées de Fourier. Le code que j'ai développé est ci-dessous, or il ne me donne pas la même courbe selon le type de convolution utilisée, je n'arrive pas à trouver mon erreur, quelqu'un peut m'aider ?

Citation :

//Initialisation
xdel(winsid());     // Fermeture des fenetres
clear               // Suppression des variables
clc                 // effacement des lignes de la console
lines(0);

// définition des constantes
N=300 ; //nombre de points,
Te=0.1e-3 ; // période d'échantillonange
F=100 ; // fréquence du signal

t=Te*(0:N-1);// description du vecteur temps

f1=cos(2*%pi*F*t);//description du vecteur signal f1
f2=sin(2*%pi*F*t);//description du vecteur signal f2


////////////////////////////////////////////////////////////////////////////
//Calcul par convolution directe
timer()

y = convol(f1, f2);

timer();

//Calcul par transformée de fourrier

timer()

z = fft( abs(fft(f1)) .* abs(fft(f2)) , 1);

timer();



// affichage sur la fenêtre 0
  xset('window',0); // sélection de la fenêtre 0
  xbasc(0); //effacer la fenetre 0
  xset("font size",4); //définition de la taille de la police
  xsetech([0, 0, 0.5,0.5]); // le haut gauche de la fenetre coupée en 4
  
  plot(f1) // affichage de s en fonction du rang
  xtitle('Sinusoide 1');

// affichage du module brut de forme
  xsetech([0,0.5,0.5,0.5]) ;// le bas gauche de la fenetre coupée en 4
  plot(f2) ;
  xtitle('Sinusoide 2');

// affichage du module corrigé de 0 à fe/2
  xsetech([0.5,0,0.5,0.5]) ; //le haut droit de la fenetre coupée en 4
  plot(y);
  xtitle('Convolution directe');

// zoom sur la raie, de la fréquence nulle à fe/5
  xsetech([0.5,0.5,0.5,0.5]) ; //le bas droit de la fenetre coupée en 4
  plot(z);
  xtitle('Convolution par transformées de Fourier');



Merci par avance !



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1675 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !