Having troubles getting a rect function ussing fft and the sinc function

18 visualizaciones (últimos 30 días)
As the title says I am unable to get the rect function when I fft my sinc function
Heres my code to begin with:
x = linspace(-10, 10, 10000);
y = sinc(x);
Pretty simple stuff imo.
when I do:
plot(x, y)
I get
sinc.jpg
but then when I do:
plot(x, fft(y))
I get
fft.jpg
any help would be apprecaited

Respuestas (1)

Star Strider
Star Strider el 2 de Abr. de 2019
Editada: Star Strider el 2 de Abr. de 2019
You are not plotting your Fourier transform correctly.
Try this:
x = linspace(-10, 10, 10000);
y = sinc(x);
Fs = 1/mean(diff(x)); % Sampling Frequency
Fn = Fs/2; % Nyquist Frequency
Y = fft(y)/numel(y);
Ys = fftshift(Y);
Fv = linspace(-1, 1, fix(numel(Y)))*Fn;
figure
plot(Fv, abs(Ys)*2)
grid
xlim([-5 5])
EDIT — (2 Apr 2019 at 20:09)
Added plot figure:
Having troubles getting a rect function ussing fft and the sinc function- 2019 04 02.png

Categorías

Más información sobre Fourier Analysis and Filtering en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by