Catégories
Algorithme Matlab projet matlab

Matlab #14: La Transformée de Fourier

Objectifs

  • Savoir calculer la FFT d’un signal quelconque
  • Se familiariser avec la FFT avec Matlab
  • Savoir les caractéristiques d’un sinal
  • Ex1: Signal bande étroite: sin(x)
  • Ex2: Signal large bande: sinc(x)
  • Etc.

Programme Matlab

Exemples transformée de fourier

clear all; close all; clc

%% Objectifs:
% 1. Savoir calculer la FFT d'un signal quelconque
% 2. Se familiariser avec la FFT avec Matlab
% 3. Savoir les caractéristiques d'un signal
% 4. Ex1: Signal bande étroite: sin(x)
% Ex2: Signal large bande: sinc(x)
% 5. Etc.

%%

% Signal temporel
f0=1; t0=1/f0; N=1e3;
t=linspace(-5*t0,5*t0,N);

s_t=sin(2*pi*f0*t); % Ex.1
% s_t=sin(2*pi*f0*t)+0.3*sin(2*pi*3*f0*t)+0.1*sin(2*pi*5*f0*t); % Ex.2
% s_t=sinc(2*pi*f0*t);% Ex.3
% s_t=10*sinc(2*pi*f0*t)+sin(2*pi*f0*t)+sin(2*pi*3*f0*t);% Ex.4

% Affichage
figure;
plot(t,s_t,'linewidth',2); grid on;

% FFT
ts=t(2)-t(1); fs=1/ts;
N_fft=2^12;
s_fft=fft(s_t,N_fft);
f=linspace(-fs/2,fs/2, N_fft);

% Affichage
figure;
plot(f,real(fftshift(s_fft)),'linewidth',2);grid on;hold on;
plot(f,imag(fftshift(s_fft)),'r','linewidth',2);
plot(f,abs(fftshift(s_fft)),'k','linewidth',2);grid on;
xlabel('Fréquence'); ylabel('Amplitude');
xlim([-3*f0 3*f0]);

Retour à l’accueil Matlab

 

Laisser un commentaire