Main Page | Class List | Directories | File List | Class Members | File Members

ObitFFT.c File Reference

ObitFFT class function definitions. More...

#include <math.h>
#include "ObitFFT.h"
#include "ObitIOUVFITS.h"
#include "ObitIOUVAIPS.h"

Functions

void ObitFFTInit (gpointer in)
 Private: Initialize newly instantiated object.
void ObitFFTClear (gpointer in)
 Private: Deallocate members.
ObitFFTnewObitFFT (gchar *name, ObitFFTdir dir, ObitFFTtype type, gint rank, gint *dim)
 Public: Constructor.
gconstpointer ObitFFTGetClass (void)
 Public: ClassInfo pointer.
gint ObitFFTSuggestSize (gint length)
 Public: Suggest efficient size for a transform.
void ObitFFTR2C (ObitFFT *in, ObitFArray *inArray, ObitCArray *outArray)
 Public: Real to half Complex.
void ObitFFTC2R (ObitFFT *in, ObitCArray *inArray, ObitFArray *outArray)
 Public: Half Complex to Real.
void ObitFFTC2C (ObitFFT *in, ObitCArray *inArray, ObitCArray *outArray)
 Public: Full Complex to Complex.
void ObitFFTClassInit (void)
 Public: Class initializer.


Detailed Description

ObitFFT class function definitions.

This class is derived from the Obit base class and is based on FFTW.


Function Documentation

ObitFFT* newObitFFT gchar *  name,
ObitFFTdir  dir,
ObitFFTtype  type,
gint  rank,
gint *  dim
 

Public: Constructor.

Initializes class if needed on first call.

Parameters:
name An optional name for the object.
dir The direction of the transform OBIT_FFT_Forward (R2C) or OBIT_FFT_Reverse (C2R).
type Whether OBIT_FFT_FullComplex (full C2C) or OBIT_FFT_HalfComplex (R2C or C2R).
rank of matrix range [1,7]
dim dimensionality of each axis in column major (Fortran) order. If real/half complex is being used, then dim[0] should be the number of reals.
Returns:
the new object.

void ObitFFTC2C ObitFFT in,
ObitCArray inArray,
ObitCArray outArray
 

Public: Full Complex to Complex.

Must have been created with dir = OBIT_FFT_Reverse have same geometry as constructor call. Transform is in the direction specified in constructor call.

Parameters:
in Object with FFT structures.
inArray Array to be transformed (disturbed on output).
outArray Output array

void ObitFFTC2R ObitFFT in,
ObitCArray inArray,
ObitFArray outArray
 

Public: Half Complex to Real.

Must have been created with dir = OBIT_FFT_Reverse and type = OBIT_FFT_HalfComplex and have same geometry as constructor call. Note: FFT returned is not normalized.

Parameters:
in Object with FFT structures.
inArray Array to be transformed (disturbed on output).
outArray Output array

void ObitFFTClassInit void   ) 
 

Public: Class initializer.

void ObitFFTClear gpointer  inn  ) 
 

Private: Deallocate members.

Does (recursive) deallocation of parent class members.

Parameters:
inn Pointer to the object to deallocate. Actually it should be an ObitFFT* cast to an Obit*.

gconstpointer ObitFFTGetClass void   ) 
 

Public: ClassInfo pointer.

Returns:
pointer to the class structure.

void ObitFFTInit gpointer  inn  ) 
 

Private: Initialize newly instantiated object.

Parent classes portions are (recursively) initialized first

Parameters:
inn Pointer to the object to initialize.

void ObitFFTR2C ObitFFT in,
ObitFArray inArray,
ObitCArray outArray
 

Public: Real to half Complex.

Must have been created with dir = OBIT_FFT_Forward and type = OBIT_FFT_HalfComplex and have same geometry as constructor call.

Parameters:
in Object with FFT structures.
inArray Array to be transformed (undisturbed on output).
outArray Output array

gint ObitFFTSuggestSize gint  length  ) 
 

Public: Suggest efficient size for a transform.

Parameters:
length number of values to be transformed
Returns:
a number equal or larger than length that will have an efficient transform.


Generated on Fri Aug 31 22:13:05 2007 for Obit by  doxygen 1.3.9.1