# Help with fft

Hello, im a physics engineering student and i need a little help with fft function. I wrote the following code everything works, but when i get the fft. I was supose to obtain a sinc function and if you take a close look, it is a sinc, but in the wrong points, can anyone help me with this?

if you dont know/remember what a sinc function looks like:

x0=0;
y0=0;
dx=5;
dy=5;
px=0.05;
py=0.05;
dxx=1;
dyy=1;
n=dx/px+1;
m=dy/py+1;

xx=-dx/2:px:dx/2;
yy=-dy/2:py:dy/2;

[X,Y]=meshgrid(xx,yy);

Z=zeros(n,m);

%w=X.^2+Y.^2;

for i=1:n
for j=1:m
if X(i,j)>=x0-dxx/2 && X(i,j)<=x0+dxx/2 && Y(i,j)>=y0-dyy/2 && Y(i,j)<=y0+dyy/2
Z(i,j)=1;
end
end
end

A=fft(Z);
B=A.*conj(A);

figure(1)
surf(X,Y,Z)
colormap jet
colorbar

figure(2)
surf(X,Y,B)
colormap jet
colorbar

Also, how i make sure that Z, has always the size of the matrixs X and Y?

vela
Staff Emeritus
Homework Helper
It would help if you explained what your code is supposed to be doing.

it is suppose to plot the fft of a square function which is the sinc function. if you take a look a the photo i've just uploaded, the second one should be a sinc function.

#### Attachments

• Sem Título.png
58.3 KB · Views: 398
vela
Staff Emeritus
Homework Helper
I don't understand the second plot. You're doing a two-dimensional FFT, right? Why do you have a one-dimensional power spectrum?

its 2d too...

vela
Staff Emeritus
Homework Helper
Really? I don't see depth in the second plot, unlike the first one.

vela
Staff Emeritus
Homework Helper
I'm assuming this is MATLAB code. According to the documentation, the routine fft doesn't do a two-dimensional DFT. It only acts on the first non-singleton dimension.

EDIT: It looks like the function you want is fft2.

humm ok, and how do i center it?

vela
Staff Emeritus