2.1.22.2.1.23 fft_fft_2d_real 
 
Description
Calculates the 2 dimensional discrete Fourier transforms or inverse 2 dimensional discrete Fourier transforms.
 
Syntax
int fft_fft_2d_real( int iSizeX, int iSizeY, double * vSigReal, double * vSigImag, FFT_SIGN iSign = FFT_FORWARD ) 
Parameters
-  iSizeX
 
- [input] the number of rows of the bivariate data sequence.
 
-  iSizeY
 
- [input] the number of columns of the bivariate data sequence.
 
-  vSigReal
 
- [modify] the real part of the complex data in input data, and the real part of the complex data in output data.
 
-  vSigImag
 
- [output] the imaginary part of the complex data in output data.
 
-  iSign
 
- [input] the transformation to carry out
 
-   = FFT_FORWARD: FFT (by default) 
 
-   = FFT_BACKWARD: IFFT.
  
Return
Returns 0 for success or error codes for failure.
 
Examples
EX1
 
#include <..\originlab\fft.h>
void fft_fft_2d_real_ex1()
{
    int nRows = 5;
    int nCols = 5;        
    matrix mReal(nRows, nCols), mImag(nRows, nCols);
    
    //Create matrix pages
    MatrixPage mPage1, mPage2,mPage3, mPage4, mPage5, mPage6;
    mPage1.Create("Origin");
    mPage2.Create("Origin");    
    mPage3.Create("Origin");
    mPage4.Create("Origin");    
    Matrix mat1(mPage1.GetName()),mat2(mPage2.GetName()), mat3(mPage3.GetName()), 
    mat4(mPage4.GetName());
    
    //Give the testing data into mReal and mImag
    for(int ii=0; ii<mReal.GetNumCols(); ii++)
        for(int jj = 0; jj<mReal.GetNumRows(); jj++)
        {
            mReal[jj][ii] = rnd();
        }        
    mImag = 0;    
    
    //Forward FFT
    fft_fft_2d_real(nRows, nCols, mReal, mImag, FFT_FORWARD);        
    mat1 = mReal;
    mat2 = mImag;
    
    //Backward FFT
    fft_fft_2d_real(nRows, nCols, mReal, mImag, FFT_BACKWARD);
    mat3 = mReal;
    mat4 = mImag;    
    
}
Remark
Calculates the 2 dimensional discrete Fourier transforms or inverse 2 dimensional
 discrete Fourier transforms of a sequence of iSizeX*iSizeY real data values. Then
 put the real part of result into vSigReal and put the imaginary part of result into
 vSigImag.
 
See Also
fft_fft_2d_complex
 
Header to Include
fft.h
 
Reference
             |