ifft in 2D : wrong reasoning ?
Show older comments
Hi,
I am trying to have a grid in a temporal space from some points in a frequency space in 2D
For example, if I take the point (1,0) in the frequency space, by applying an Inverse Fourier Transform to the matrix representing the space, I should have some vertical lines in the temporal space with a frequency of 1 unit vertically.
Here is a very short code to show my idea :
N=100;
F=zeros(N,N);
F(1,10)=1;
FF=abs(ifft(F));
figure(1)
pcolor(FF)
As a result I have just one vertical line. Furthermore, when I try to change the point with (0,1) for example, I have also a vertical line... But I would like to have a horizontal line, because the periodicity is horizontal.
Could you help me with this problem ? I think the problem comes from my maths and not from matlab...
I have also another question : Is there any easy way to use a continuous space instead than a discrete space (I have a matrix of 100x100 here, I would like to have a continuous space)
Thank a lot.
1 Comment
Star Strider
on 19 Sep 2012
Change:
pcolor(FF)
to:
mesh(FF)
I believe you will find that you have what you expected.
If you have the Symbolic Math Toolbox, you can create a continuous — and analytical — representation of your function.
Accepted Answer
More Answers (0)
Categories
Find more on Creating and Concatenating Matrices 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!