Fft avec matlab
choui
-
amida09 Messages postés 1 Statut Membre -
amida09 Messages postés 1 Statut Membre -
Bonjour,
voila g un petit souci concernant la fonction fft avec matlab. Je veux représenter le spectre d'un sinus, voici le programme que j'utilise sous matlab:
t=0:0.1:10;
f=(-50:50);
signal=sin(2*pi*10*t);
spectre=fft(signal);
plot(f,(spectre),'r');
cependant le résultat me donne un peu n'importe quoi, car normalement je devrait voir seulement une raie à 10 hz.
Je sais que le bug vient du plot, mais je n'ai jamais utilisé le plot pour une représentation fréquentielle!
Quelqu'un pourrait-il me corriger??
Merci
voila g un petit souci concernant la fonction fft avec matlab. Je veux représenter le spectre d'un sinus, voici le programme que j'utilise sous matlab:
t=0:0.1:10;
f=(-50:50);
signal=sin(2*pi*10*t);
spectre=fft(signal);
plot(f,(spectre),'r');
cependant le résultat me donne un peu n'importe quoi, car normalement je devrait voir seulement une raie à 10 hz.
Je sais que le bug vient du plot, mais je n'ai jamais utilisé le plot pour une représentation fréquentielle!
Quelqu'un pourrait-il me corriger??
Merci
Configuration: Windows XP
2 réponses
-
c'est normal que tu auras en graphique du n'importe quoi. Ici ta variable définie spectre est complexe et tu dois visualiser le module donc tu fais plot(f,abs(spectre)) et en principe ça doit marcher
-
bonjour,
rappelez vous que la transformée de Fourier donne une fonction complexe de la fréquence. Ce qu'on appelle le spectre est le module de la transformée de Fourier.
Cdlt