Contents Previous Next Subchapters Current Chapters-> dft idft fft ifft dbldft idbldft lombft fft2d ifft2d dft2d idft2d fftshift Parent Chapters-> Omatrix6 filtering fourier ifft Search Tools-> contents reference index search

The Centered Finite Inverse Fourier Transform
 Syntax `ifft(`z`)` See Also fft , ifft2d , idft

Description
Returns a complex matrix containing the inverse centered finite Fourier transform of z, where z is an integer, real double-precision or complex matrix. If `N` is the number of rows in z, the (k,j)-th element of the return value is equal to ```        N      -----                  __      >      z   exp[+2 pi \/-1 (i - N/2 - 1) (k - N/2 - 1) / N]      -----   i,j      i = 1 ```for `k` between `1` and `N` and `j` between `1` and the number of columns in z.

Example
The inverse Fourier transform of a function `H(f)` is defined as follows: ```              +infinity             /                  __      h(t) = | H(f) exp(+2 pi \/-1 f t) df             /              -infinity ```If the function `H(f)` is defined by: ```             sin(2 pi T f)      H(f) = -------------                 pi f ```The inverse Fourier transform of `H(f)` is given by the following: ```             /  1, if -T < t < T      h(t) = {             \  0, otherwise ```The following program plots an approximation for the inverse transform that defines `h(t)`, where `T = 1/2`, there are `2^10` points in the finite Fourier transform, of which `2^6` points are between `-T` and `+T`. The names `dt` and `df` are used for the spacing in the time and frequency grids. (Note the index `N/2 +1` is a special case because `f = 0` at that index.) ``` clear N           = 2^10 M           = 2^6 T           = .5 dt          = 2 * T / M df          = 1. / (N * dt) t           = (seq(N) - N / 2 - 1) * dt f           = (seq(N) - N / 2 - 1) * df H           = sin(2 * pi * T * f) / (pi * f) H(N/2 + 1)  = 1 h   = ifft(H) * df gxaxis("linear", -1, +1, 4, 5) gtitle("Real Part of h(t)") gplot(t, double(h)) ```