nmrglue.process.proc_base.fft

nmrglue.process.proc_base.fft(data)[source]

Fourier transform, NMR ordering of results.

There are a number of definitions of the discrete Fourier transform the version used in this function is as follows.

\[A_k = \sum_{m=0}^{n-1} a_m \exp\left\{-2\pi i{mk \over n} \right\}\qquad k = 0,\ldots,n-1.\]

With the inverse DFT in the ifft() function defined as follows.

\[a_m = \frac{1}{n} \sum_{k=0}^{n-1} A_k \exp \left\{2\pi i{mk\over n} \right\}\qquad n = 0,\ldots,n-1.\]

Two alternative definitions are also supported by nmrglue. One in which both the sum in the fft and ifft are multiplied by \(\frac{1}{\sqrt{n}}\) which results in a pair of transforms in which the total power contained in the the signals before and after the transforms are equal. This is the type transforms used in the Rowland NMR Toolkit. This type of transform is performed by the fft_norm() and ifft_norm() functions.

The second definition changes the sign of the exponent to be positive while keeping the normalization factors the same. This type of transform is performed by the NMRPipe processing package and the functions fft_positive() and ifft_positive().

All of the Fourier transforms perfromed by nmrglue return results in ‘NMR order’, in which the two half of the spectrum have been swapped and reversed.

Parameters
datandarray

Array of NMR data.

Returns
ndatandarray

Fourier transform of NMR data in ‘NMR order’.

See also

ifft

Inversion Fourier transform.

fft_norm

Norm (power) conserving Fourier transform.

fft_positive

Forier transform with a positive exponential.