具有不同指数的Matlab二维傅里叶变换

时间:2014-05-08 08:50:05

标签: matlab matrix 2d fft

我不知道如何正确解释问题。

我有一个矩阵,对应于2D笛卡尔系统。现在我必须进行Fouriertransformation,但exp函数的形式不是exp(-i(ux + vy))而是exp(-iA(ux + vy))。 其中A是10 ^ 15范围内的常数,输入矩阵的范围是0到10。

我想编程的确切公式是: 矩阵(u,v)=积分积分矩阵(x,y)exp(-iA(ux + vy))dx dy

我到目前为止看到的唯一解决方案是使用带有2个参数(x,y)的函数的integral2函数和u,v的句柄。 谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

如果您的问题是指数中的A,您只需进行变量转换即可。 那么你必须计算的积分是

     matrix(u,v) = A^-2 integral integral matrix(x,y) exp(-i(ux+vy))dx dy

这样做,您就可以使用fft2

    M_uv = A^-2 * fft2(M_xy)

其中M_xy是你的矩阵(x,y),而M_uv则是结果傅立叶变换矩阵(u,v)。