
Having troubles getting a rect function ussing fft and the sinc function
18 views (last 30 days)
Show older comments
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

but then when I do:
plot(x, fft(y))
I get

any help would be apprecaited
0 Comments
Answers (1)
Star Strider
on 2 Apr 2019
Edited: Star Strider
on 2 Apr 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:

0 Comments
See Also
Categories
Find more on Fourier Analysis and Filtering in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!