Contents Previous Next Subchapters

Inverse Fourier Transform of a Double-Precision Vector
Syntax idbldft(c)
See Also idft , dbldft

Description
Returns the column by column inverse discrete transform of c, where c is a double-precision matrix with an even number of rows. The numbers 2, 3, 5, and 7 must be the only prime factors of the number of rows in c. This routine is faster and uses less memory than the idft function but it only applies to the case where the vector c represents a complex vector that is conjugate symmetric. If N is half the number of rows in c and for all k between 2 and N, and all j is between 1 and the column dimension of c define the complex matrix z by
                      z(1, j) = c(1, j)
                  z(N + 1, j) = c(2, j)
     the real part of z(kj) = c(2 k - 1, j)
the imaginary part of z(kj) = c(2 kj)
            z(2 N + 2 - kj) = the complex conjugate of z(kj)
The return value of the idbldft function is the matrix w defined by
     w(kj) = (1 / (2 N)) * sum_{i=1}^{2 N}
          z(ij) exp[ 2 pi sqrt{-1} (i - 1) (k - 1) / (2 N)]
Thus w is the column by column inverse discrete Fourier transform of z (w is real because z is conjugate symmetric).

Example
If you enter
     c = double({0, 1, 0, 0})
only the term with i = 3 in the summation defining w is nonzero. Also note that N is 4 and element k of the inverse Fourier transform of c is given by
     w(k) = (1/4) exp[ pi sqrt{-1} (k - 1) ]
which is given by the following table
     w(1) = +1/4 
     w(2) = -1/4
     w(3) = +1/4
     w(4) = -1/4
(Note that all of the elements of w are real.) If you continue this example by entering
     idbldft(c)
O-Matrix will respond
     {
     .25
     -.25
     .25
     -.25
     }