Fft avec matlab

Fermé
choui - 11 févr. 2010 à 01:30
amida09 Messages postés 1 Date d'inscription lundi 6 septembre 2010 Statut Membre Dernière intervention 9 décembre 2010 - 9 déc. 2010 à 15:53
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

2 réponses

amida09 Messages postés 1 Date d'inscription lundi 6 septembre 2010 Statut Membre Dernière intervention 9 décembre 2010 5
9 déc. 2010 à 15:53
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
4
Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 660
11 févr. 2010 à 04:45
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
2