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$ Commented Sep 1, 2020 at 14:14
  • $\begingroup$ In another source, it is given X = ifft(fft(x).').';. Which one is correct? $\endgroup$
    – MaxFrost
    Commented Sep 1, 2020 at 14:54
  • $\begingroup$ Both must give the same results. Do you see it different ? $\endgroup$ Commented 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 you have read our privacy policy.

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