Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- clear all;
- close all;
- %% 1- Gйnйration d'un signal numйrique
- %%Cosinusoпde de 1Khz avec N йchantillons йchantillonnйe а 8Khz
- % f0 = 1e3; %frйquence de la cosinusoпde
- % fe = 8e3; %frйquence d'йchantillonage
- % N = 64; %nombre d'йchantillons
- % Te = 1/fe; %pйriode d'йchantillonnage
- % t = [0:Te:(N-1)*Te]; %incrйment temporel
- % y =cos(2*pi*f0*t); %signal cosinusoпdal
- %
- % %Affichage du signal avec le temps en abscisse
- % plot(t,y, 'k -o');
- % grid;
- % title('Signal 1Khz йchantillonй а 8Khz');
- % xlabel('Temps');
- % ylabel('Amplitude');
- %
- % %Calcul de l'йnergie du signal
- % E = sum(abs(y).^2)/N
- %% 2- Transformation de Fourier Discrиte
- % f0 = 1e3; %frйquence de la cosinusoпde
- % fe = 8e3; %frйquence d'йchantillonage
- % N1 = 32; %nombre d'йchantillons
- % N2 = 64; %nombre d'йchantillons
- % Te = 1/fe; %pйriode d'йchantillonnage
- % t1 = [0:Te:(N1-1)*Te]; %incrйment temporel
- % t2 = [0:Te:(N2-1)*Te]; %incrйment temporel
- % f1 = [0:fe/N1:(N1-1)*(fe/N1)]; %incrйment frйquentiel
- % f2 = [0:fe/N2:(N2-1)*(fe/N2)]; %incrйment frйquentiel
- % Y1 = cos(2*pi*f0*t1); %signal cosinusoпdal
- % Y2 = cos(2*pi*f0*t2); %signal cosinusoпdal
- %
- % %TFD N1
- % for k1 = 1:N1
- % X1=0;
- % for n1 = 1:N1
- % X1 = X1 + (Y1(n1) * exp ((-2*pi*1i*(n1-1)*(k1-1))/N1));
- % end
- % Xk1(k1)=X1;
- % end
- %
- % %TFD N2
- % for k2 = 1:N2
- % X2=0;
- % for n2 = 1:N2
- % X2 = X2 + (Y2(n2) * exp ((-2*pi*1i*(n2-1)*(k2-1))/N2));
- % end
- % Xk2(k2)=X2;
- % end
- %
- % %Affichage
- % plot(f1,abs(Xk1),'b-o');
- % hold on;
- % plot(f2,abs(Xk2),'r-x');
- % grid;
- % title('TFD du signal de 1Khz');
- % xlabel('Frйquence');
- % ylabel('Amplitude');
- %
- % %Calcul de l'йnergie du spectre
- % E = sum(abs(Xk1.^2))/(N1.^2)
- %% 3- Transtormation de Fourier Rapide
- % f0 = 1e3; %frйquence de la cosinusoпde
- % fe = 8e3; %frйquence d'йchantillonage
- % N = 64; %nombre d'йchantillons
- % Te = 1/fe; %pйriode d'йchantillonnage
- % t = [0:Te:(N-1)*Te]; %incrйment temporel
- % f = [0:fe/N:(N-1)*(fe/N)]; %incrйment frйquentiel
- % Y =cos(2*pi*f0*t); %signal cosinusoпdal
- %
- % %TFD N
- % for k = 1:N
- % X=0;
- % for n = 1:N
- % X = X + (Y(n) * exp ((-2*pi*1i*(n-1)*(k-1))/N));
- % end
- % Xk(k)=X;
- % end
- %
- % %FFT
- % Xfft=fft(Y);
- %
- % %Affichage
- % plot(f,abs(Xk),'b -o');
- % hold on;
- % plot(f,abs(Xfft),'r -x');
- % grid;
- % title('FFT versus TFD');
- % xlabel('Frйquence');
- % ylabel('Amplitude');
- %% 4- Transformation de Fourier Inverse - Reconstruction
- f0 = 1e3; %frйquence de la cosinusoпde
- fe = 8e3; %frйquence d'йchantillonage
- N = 64; %nombre d'йchantillons
- Te = 1/fe; %pйriode d'йchantillonnage
- t = [0:Te:(N-1)*Te]; %incrйment temporel
- f = [0:fe/N:(N-1)*(fe/N)]; %incrйment frйquentiel
- Y =cos(2*pi*f0*t); %signal cosinusoпdal
- %FFT
- X = fft(Y);
- %FFT inverse
- X_r = ifft(X);
- grid;
- subplot(2,2,1);
- plot(t,Y); %signal 1khz
- subplot(2,2,2);
- plot(f,abs(X)/N); %spectre du signal
- subplot(2,2,3);
- plot(t,X_r,'r'); %signal reconstitu?
- subplot(2,2,4);
- plot(t,Y,'r--*',t,X_r,'b--o'); %comparaison signal et reconstitution
- %% 5- Thйorиme de Shannon
- %% 6- Filtre anti-repliement
- %% 7- Exercice d'approfondissement
Add Comment
Please, Sign In to add comment