Problemer med FFT og ifft

  • Thread starter lionelgreenstreet
  • Start date
L

lionelgreenstreet

Guest
Jeg har nogle problemer med dette script skrevet i mat alab ...
1) jeg en stikprøven sinusformet bølgeform (med stikprøven frekvens greather derefter to gange sinusformet frekvens), derefter bruge FFT kommando
2) skåret værdier, der opnås ved frekvensen greather derefter Nyquist-frekvens (jeg vil simulere et ideelt lavpasfilter
3) ifft
Jeg shoud opnå den samme bølgeform, men jeg fat i en bølgeform, der ikke forvrides, med samme frekvens, men ikke den samme amplitude ... Whai er problemet?
Dette er den kode

% samplign periode
Ts = 0,0001;
Fs = 1/Ts;
% signal periode
T = 1;
% antal prøver
N = T / TS;
% tid
t = (0: N-1) * Ts;
signal = sin (2 * pi * 10 * t);
% FFT
SIGNAL = fft (signal);
FREQ = (0: length (t) -1);
% Ifft
% afskæringsfrekvensen
cutoff = 100;
SIGNALFILTERED = padarray ((SIGNAL (1: afskæring)), [0 N-grænsefrekvens], 'post');
anti = real (ifft (SIGNALFILTERED));
anti2 = real (ifft (FFT (signal)));
tal (1)
plot (t, anti), hold on;
plot (t, anti2, 'r');
hold off;

Tak n forhånd

 
Husk, at produktionen af en kompleks FFT indeholder både positive og negative halvdele af spektret.Du har nulstillet-out for meget, og tabte hele negative frekvens halvdelen af spektret (og den negative frekvens halvdelen af dit signal).Prøv nulstilling fra indeks 101 ved 9.901 i stedet for fra 101 ved 10.000.

Jeg vidste ikke, om 'hold' kommandoen.Tak!

 

Welcome to EDABoard.com

Sponsor

Back
Top