Bonjour et merci d'avance,

Dans le cadre d'un TP à distance en traitement de signal, je dois répondre aux questions suivantes : Nom : Capture.PNG
Affichages : 428
Taille : 43,3 KoNom : capture2.PNG
Affichages : 343
Taille : 162,5 Ko

N'ayant pas très bien compris le concept de transformée de fourier discrète, je me suis dirigé sur internet afin de trouver des exemples de codes, voici ainsi mon programme matlab :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
clear all;
A = [1,1,1,2,1,1,1,1];
F0 = [200,200,200,200,400,1000,1800,2200];
N = [1024,2048,2048,2048,2048,2048,2048,2048];
Fe = [1000,1000,2000,2000,2000,2000,2000,2000];
 
for i = 1:5
  t = 0:1/Fe(i):1;
  subplot(2,3,i);
  x = A(i)*cos(2*pi*F0(i)*t+pi/4);
  plot(t,x);
  xlabel("Temps (s)");
  ylabel("Amplitude");
  axis([0 0.05 -1 1 ]);
 
  Y = fft(x); %calcul de la transformee de fourirer discrete
  P2 = abs(Y/N(i));
  P1 = P2(1:N(i)/2+1);
  P1(2:end-1) = 2*P1(2:end-1);
  f = Fe(i)*(0:(N(i)/2))/N(i);
  plot(f,P1) 
  title('Single-Sided Amplitude Spectrum of S(t)')
  xlabel('f (Hz)')
  ylabel('|P1(f)|')
  axis([-300 300 -0.2 1 ]);
endfor
end
Cependant, j'ai bien l'impression que ce code n'affiche que le "pic" en f0 mais pas celui en -f0 :Nom : Capture3.PNG
Affichages : 341
Taille : 20,5 Ko , ainsi, n'ayant que partiellement compris la partie "transformée de fourier" je me demandais ce qu'il me fallait modifier pour afficher tous les modules.

Merci pour votre temps et votre compréhension.