Richard
Richard

Reputation: 3

FFT in MATLAB ( I need help)

Could anybody please tell me whether I can perform this integration with FFT in MATLAB? How? Please answer as soon as possible with the details.

Suppose there exists 2 rectangular planes, say, input accessed by x1 and y1 variables and the resulting plane is output accessed by tetax and tetay variables.

This is the integral in pseudo-code:

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

where: -1<= x1 <= 1 and -1<= y1 <= 1

tetax and tetay should change so they can span the final rectangular plane.

I would really appreciate a prompt and detailed answer.

Upvotes: 0

Views: 1505

Answers (2)

tom10
tom10

Reputation: 69242

Since this looks like homework, I'll just give some hints. The trick is to rewrite the integral to look like a normal 2D Fourier integral of a function.

There are two issues:

1) You need to combine k and your tetax, tetay to look like a normal wavenumber (and compensate for this in the appropriate way).

2) You need to deal with the limits being in the range (-1,1) whereas the Fourier integral needs them in the range (-inf, +inf). To do this, pick a function to go inside the Fourier integral that will make this work.

Then it will be obvious how to do this in Matlab. It's a cute problem and I hope this doesn't ruin it (and if people think it does, let me know and I'll delete this answer, or delete it for me if you can).

Upvotes: 3

Managu
Managu

Reputation: 9039

Your problem looks like a Fourier transform, not a discrete Fourier transform (DFT). A FFT calculates the latter type of transform.

Briefly, a Fourier transform involves an integral, while a DFT involves a sum.

Upvotes: 0

Related Questions