Bonjour,
J'ai un signal périodique et je souhaite récupérer la fréquence fondamentale pour pouvoir découper ce signal en cycles (sur Matlab).
ici sur Mathworks, j'ai trouvé comment faire : https://fr.mathworks.com/help/matlab...=doc_srchtitle (grâce à l'exemple)
Ca marche très bien sur mon signal, cependant je ne comprends pas une partie. Pouvez vous m'expliquer ce que je comprends moins bien?
Y = fft(X);
Compute the two-sided spectrum P2. Then compute the single-sided spectrum P1 based on P2 and the even-valued signal length L.
P2 = abs(Y/L); % Pourquoi doit on diviser par la longueur du signal?
P1 = P2(1:L/2+1); Que fait-on ici? A quoi cela sert-il?
P1(2:end-1) = 2*P1(2:end-1);Que fait-on ici? A quoi cela sert-il?
Define the frequency domain f and plot the single-sided amplitude spectrum P1. The amplitudes are not exactly at 0.7 and 1, as expected, because of the added noise. On average, longer signals produce better frequency approximations.
f = Fs*(0 : (L/2))/L; Que fait-on ici? A quoi cela sert-il?
plot(f,P1)
title('Single-Sided Amplitude Spectrum of X(t)')
xlabel('f (Hz)')
ylabel('|P1(f)|')
Merci beaucoup pour votre aide
-----