This is an old revision of the document!
Open Table or Figure or Plot with initial data and use
Processing → Fast Fourier Transform menu item to perform FFT.
Fast Fourier transform algorithm compute discrete Fourier transform exactly and is used to considerably speed up the calculations.
Note that FFT is not an approximate method of calculation.
MagicPlot uses the algorithm of FFT that does not require the number of points N to be the integer power of 2. Though the evaluation time of the FFT algorithm is much less if N is the integer power of 2. MagicPlot uses jfftpack library (a Java version of fftpack).
MagicPlot uses 'electrical engineering' convention to set the sign of the exponential phase factor of FFT as follows from the table below. 1)
| Normalize Forward |
| Forward Transform |
| Inverse Transform
Here cn are complex signal components and Cn are complex spectrum components, n = 1…N.
The only difference is in the sign of exponential phase factor and 1/N multiplier.
Note: If you expect to get the original data when doing a inverse FFT of forward FFT set the
Normalize Forward Transform and
Center Zero Frequency check boxes identically for forward and inverse transforms.
Because of using atan2 function the phase is unwrapped and is in range (−π, π].
| Center Zero |
|Sampling Column Values|
Here Δt is given sampling interval of initial data.
Fourier transform implies that the original samples are uniformly distributed in time (for forward transform) of frequency (for inverse transform).
|Sampling Interval|| Sampling interval of original data Δt is used to compute the data in resulting sampling column. If
Note that using of discrete Fourier transform implies that the samples in your original data are equally spaced in time/frequency, i.e. the sampling interval is constant. If the sampling interval is varying or real and/or imaginary data contains empty cells in the middle, the result of discrete Fourier transform will be incorrect.
| Real, |
| Columns with real and imaginary components of data.
If your data is only real, select
| Forward / |
|Transform direction (here Inverse equals to Backward)|
|Normalize forward transform||Divide forward transform result by number of points N (see table). If your original data is real, you may want to additionally multiply the result by 2 to get the true amplitudes of real signal|
|Center zero frequency||If selected, after forward Fourier transform the two parts of spectrum will be rearranged so that the lower frequency components are in the center; the opposite rearrangement of spectrum will be done before inverse transform if any.|