ifft in 2D : wrong reasoning ?
古いコメントを表示
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 件のコメント
Star Strider
2012 年 9 月 19 日
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.
採用された回答
その他の回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Creating and Concatenating Matrices についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!