MATLAB Answers


Is fftn() and ifftn() equivalent to a 3D Fourier Transform in this case?

Asked by J W
on 21 Jan 2016
Latest activity Commented on by J W
on 21 Jan 2016
I'm trying to solve the 3D Heat Equation with Fourier Transforms. I'll have a 3D matrix with solutions u(x,y,z,t_n) at each node (created with meshgrid()). I then wish to find the 3D fft of that solution matrix to get the associated Fourier coefficients (which will be functions of time). Then I wish to forward those coefficients in time, and take the 3D ifft to recover the solution u(x,y,z,t_n+1) at the next time step. Is fftn() and ifftn() equivalent to 3D Fourier Transforms in this case?


Sign in to comment.

1 Answer

Answer by David Young
on 21 Jan 2016
 Accepted Answer

fftn(X) and ifftn(X) carry out a 3-D FFT or a 3-D inverse FFT if length(size(X)) is equal to 3.


Perfect. My length(size(X)) = 3. I may post this as a separate question if it's inappropriate to ask here, but should I be worrying about using fftshift()? I've heard that fftn() returns values in a weird order.
Regardless, I'll be accepting your answer. Thanks very much

Sign in to comment.