Programmer la transformée de Hilbert
Bonjour à toutes et à tous!
Voilà, comme l'intitulé l'indique, je suis une débutante et j'aimerais savoir comment faire pour programmer la transformée de Hilbert sur MATLAB.
J'ai essayé d'en programmer une d'après ce que j'ai compris de la transformée, mais rien n'y faire.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| t=0:0.1:10;
f=25;
x=cos(2*pi*f*t);
y=abs(hilbert(x)); % Pour comparer avec ma transformée de Hilbert.
plot(t,x), hold on, plot(t,y,'r')
a=zeros(1,101);
for t=1:1:10
for T=0:0.1:10
if t~=T
a(t)=a(t)+(cos(2*pi*f*T)/(t-T)); % Calculer l'intégrale qui se trouve dans la transformée de Hilbert.
end
end
end
A=a.*(1/pi); % Calcul de la transformée de Hilbert.
Abs=abs(A); % Calcul de l'enveloppe.
figure, plot(t,Abs) |
Pouvez-vous m'aider? Merci d'avance.