The Symplectic Finite Fourier Transform (SFFT) of a 2D periodized sequence $x[k,l]$ with periods $(M, N)$ is defined as

$$X[n,m] = \sum_{k=0}^{M-1} \sum_{l=0}^{N-1} x[k,l] e^{-j2\pi \left(\frac{mk}{M} - \frac{nl}{N}\right)}$$

Is the above expression equivalent to an FFT performed on the rows of $x$ and IFFT performed on the columns? If yes, does the following code justify the observation?

function [X] = SFFT(x)

% 1. transpose the sequence x to convert rows into columns
% 2. execute fft() command to compute fft of the columns (which are originally
% rows)
% 3. transpose the matrix back to original form
% 4. execute ifft on the columns

X = ifft(fft(x.').');        
  • 1
    $\begingroup$ Yes That right. $\endgroup$ Sep 1, 2020 at 14:14
  • $\begingroup$ In another source, it is given X = ifft(fft(x).').';. Which one is correct? $\endgroup$
    – MaxFrost
    Sep 1, 2020 at 14:54
  • $\begingroup$ Both must give the same results. Do you see it different ? $\endgroup$ Sep 13, 2020 at 2:18

1 Answer 1


This is the FFT

Y = ifft(fft(X).').';

While this is the inverse FFT

X = ifft(fft(Y.').'); 

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.