MATLAB中的FFT(我需要帮助)

时间:2009-10-14 19:09:45

标签: math matlab fft

有人可以告诉我是否可以在MATLAB中使用FFT进行这种集成?怎么样? 请尽快回复详细信息。

假设存在2个矩形平面,比如inputx1y1个变量访问,并且生成的平面由output tetax访问tetay {1}}变量。

这是伪代码中的积分:

output(tetax,tetay)=double integral of [input(x1,y1)*exp(-j*k*((tetax*x1)+(tetay*y1)))](dx1)(dy1)

其中:-1<= x1 <= 1 and -1<= y1 <= 1

tetaxtetay应该更改,以便它们可以跨越最终的矩形平面。

我非常感谢及时详细的回答。

2 个答案:

答案 0 :(得分:3)

由于这看起来像家庭作业,我只是给出一些提示。诀窍是重写积分,使其看起来像函数的普通二维傅里叶积分。

有两个问题:

1)你需要将k和你的tetax结合起来,看起来像正常的波数(并以适当的方式补偿)。

2)你需要处理范围(-1,1)内的限制,而傅里叶积分需要它们在范围内(-inf,+ inf)。要做到这一点,选择一个函数进入傅里叶积分,这将使这项工作。

然后很明显如何在Matlab中做到这一点。这是一个可爱的问题,我希望这不会破坏它(如果人们认为这样做,请告诉我,我会删除这个答案,或者如果可以的话就删除它)。

答案 1 :(得分:0)

您的问题看起来像是Fourier transform,而不是discrete Fourier transform (DFT)。 FFT计算后一种类型的变换。

简而言之,傅立叶变换涉及积分,而DFT涉及总和。