aiuto problemi con MatLab ----- Trasf. Fourier

Messaggioda jhonbon » 21/08/2009, 18:26

salve a tutti
Ho un problema con delle trasformazioni in matlab.
eseguendo la fft del segnale d (delta_dirac) che così ho definito:

d=A*(abs(t==0));
%plot(t,d); %disegna l'impulso

e trasformandolo.....:


N=length(d); %definisco il numero di campioni
D=fftshift(fft(d))*dt; %eseguo la trasf usando la funzione shift
df=1/(N*dt); %ecco il quanto di frequenza
f=[-(N-1)/2+[0:N-1]]*df; %ecco il vettore che uso per graficare

nella visualizzazione non ritrovo ciò che prevedo analiticamente.


ecco il file completo:


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%trasformata delta_dirac


A=3;
lim=10;
dt=0.001;
t=-lim:dt:lim;

d=A*(abs(t==0));
plot(t,d);
axis([-lim+to lim+to -A/2 3/2*A]);

%faccio sta ca*** di trasformata

N=length(d);
D=fftshift(fft(d))*dt;
df=1/(N*dt);
f=[-(N-1)/2+[0:N-1]]*df;


%subplot(1,2,1),plot(f,imag(D));

plot(f,real(D),'r');
%ma sarà correta????????????????????????'
Avatar utente
jhonbon
Starting Member
Starting Member
 
Messaggio: 4 di 8
Iscritto il: 21/08/2009, 15:54
Località: Padova (PD), Catania (CT)

Torna a Ingegneria

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite