|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité de passage
![]() Inscription : décembre 2011 Messages : 8 ![]() |
Bonjour a tous,
j’espère que vous allez pouvoir m'aider Je dois utiliser la transformée de Fourier discrète (TDF ou FFT) pour évaluer les coefficient du développement en série de Fourier d'un signal. La série de Fourier, ça va, la transformée de Fourier aussi, par contre je viens a peine de commencer Matlab ... donc j'ai le signal suivant : Code :
Code :
) j'arrive pas après au moment de calculer les coefficients.Je n'arrive pas a reproduire cette formule : ![]() Merci pour votre aide ! |
||||
|
|
00
|
|
|
#2 | |
![]() ![]() Jérôme Inscription : septembre 2009 Messages : 3 598 ![]() |
Bonjour,
Où est ton problème? L'application de la formule me semble bonne... As-tu vérifié la différence avec ce qui est retourné par la fonction FFT? Petite remarque: la ligne x(k + 1) = 0; est inutile vu que tu initialises x avec x = zeros(1, N);
__________________
Débutant en MATLAB? Vous voulez faire une Interface Graphique? Les Tutoriels et la FAQ sont là pour vous aider ![]() Une erreur? "Ça ne marche pas" n'est pas une réponse acceptable Expliquez clairement votre problème (erreurs, résultats non attendus...).Citation:
|
|
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : décembre 2011 Messages : 8 ![]() |
Merci déjà de m'aider
C'est vrai que j'ai pas fait gaffe pour le x(k + 1) = 0; Et bien je sais pas si tu peux regarder le résultat avec matlab, mais ça donne un truc assez ... étrange (je mets en pièce jointe au cas ou). J'atteins même pas f = 3 dans les axes des abscisses ... Edit : problème de pièce jointe La deuxième figure c'est ce que je trouve et la 3eme, ce qu'on obtient avec la fonction fft. |
|
|
00
|
|
|
#4 | |
![]() ![]() Jérôme Inscription : septembre 2009 Messages : 3 598 ![]() |
Avec ton code, je n'obtiens pas cela:
FFT.png Note: La partie rouge correspond à la sortie de la fonction FFT de MATLAB qui colle très bien à ce tu as fait. C'est normal que tu n'atteignes pas 3, tu es en fréquence normalisée.
__________________
Débutant en MATLAB? Vous voulez faire une Interface Graphique? Les Tutoriels et la FAQ sont là pour vous aider ![]() Une erreur? "Ça ne marche pas" n'est pas une réponse acceptable Expliquez clairement votre problème (erreurs, résultats non attendus...).Citation:
|
|
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : décembre 2011 Messages : 8 ![]() |
Moi ça va de 0 a 100 ... et le premier pic est a 1 en plus ![]() tu as bien fait un truc du genre y = fft(s1); Edit : OK ...c'est bon j'ai compris mon erreur. par contre tu peux me dire comment tu as fait le hold on sur le subplot ? En tout cas, merci de ton aide !!! |
|
|
00
|
|
|
#6 | |||
![]() ![]() Jérôme Inscription : septembre 2009 Messages : 3 598 ![]() |
Comme dit, je n'ai fait qu'utiliser ton code (mis à part la partie vérification avec la fonction FFT de MATLAB).
Si je ne me trompe, tu as plot(support, abs(x)); et plot(support, angle(x)); avec support rempli avec des k/N avec k variant de 0 à N-1, donc je vois mal comment tu peux avoir des valeurs supérieures à 1 ![]() Maintenant je remarque que tu as changé le plot en utilisant la fonction STEM... N'aurais-tu pas fait stem(abs(x)); au lieu de stem(support, abs(x));? Oui, rien de plus. [EDIT]Simplement avec: Code :
__________________
Débutant en MATLAB? Vous voulez faire une Interface Graphique? Les Tutoriels et la FAQ sont là pour vous aider ![]() Une erreur? "Ça ne marche pas" n'est pas une réponse acceptable Expliquez clairement votre problème (erreurs, résultats non attendus...).Citation:
|
|||
|
|
00
|
|
|
#7 | ||
|
Invité de passage
![]() Inscription : décembre 2011 Messages : 8 ![]() |
Ah ben voila ! Merci beaucoup !
j'avais ça mais ça marche pas on dirait ![]() Code :
|
||
|
|
00
|
|
|
#8 | |
![]() ![]() Jérôme Inscription : septembre 2009 Messages : 3 598 ![]() |
Attention à la position du hold on il s'applique sur l'Axes courant qui est DÉJÀ présent, ici tu le crées après
__________________
Débutant en MATLAB? Vous voulez faire une Interface Graphique? Les Tutoriels et la FAQ sont là pour vous aider ![]() Une erreur? "Ça ne marche pas" n'est pas une réponse acceptable Expliquez clairement votre problème (erreurs, résultats non attendus...).Citation:
|
|
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Inscription : décembre 2011 Messages : 8 ![]() |
Ah ben ca doit surement etre pour ca ...
![]() Je ferai gaffe la prochaine fois, merci. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com