Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

Arroyo::rfft_manager< T > Class Template Reference

#include <fft_manager.h>

List of all members.

Public Member Functions

 rfft_manager ()
 rfft_manager (const rfft_manager< T > &rfft_mgr)
 ~rfft_manager ()
rfft_manager< T > & operator= (const rfft_manager< T > &rfft_mgr)
void real_to_complex_fft (const vector< long > &in_array_dimens, bool estimate, bool in_place, T *in, T *out=NULL)
void real_to_complex_fft (const vector< long > &in_array_dimens, bool estimate, bool in_place, int howmany, T *in, int istride, int idist, T *out=NULL, int ostride=1, int odist=1)
void complex_to_real_fft (const vector< long > &in_array_dimens, bool estimate, bool in_place, T *in, T *out=NULL)
void complex_to_real_fft (const vector< long > &in_array_dimens, bool estimate, bool in_place, int howmany, T *in, int istride, int idist, T *out=NULL, int ostride=1, int odist=1)

Static Public Attributes

int verbose_level = 0
 A verbose_level for printing messages.


Detailed Description

template<class T>
class Arroyo::rfft_manager< T >

A template class to facilitate real to complex forward and backward fft's using fftw. This class aims to make arbitrary-dimensional fast fourier transforms relatively straightforward, and supports all the FFTW options


Constructor & Destructor Documentation

template<class T>
Arroyo::rfft_manager< T >::rfft_manager  ) 
 

Null constructor

template<class T>
Arroyo::rfft_manager< T >::rfft_manager const rfft_manager< T > &  rfft_mgr  ) 
 

Copy constructor

template<class T>
Arroyo::rfft_manager< T >::~rfft_manager  ) 
 

Destructor


Member Function Documentation

template<class T>
void Arroyo::rfft_manager< T >::complex_to_real_fft const vector< long > &  in_array_dimens,
bool  estimate,
bool  in_place,
int  howmany,
T *  in,
int  istride,
int  idist,
T *  out = NULL,
int  ostride = 1,
int  odist = 1
 

Perform a complex to real transform as above, with more options The "out" argument is optional - if you include it an out of place transform will be performed and the results will be stored there. See the FFTW documentation for a description of istride, idist, ostride and odist

template<class T>
void Arroyo::rfft_manager< T >::complex_to_real_fft const vector< long > &  in_array_dimens,
bool  estimate,
bool  in_place,
T *  in,
T *  out = NULL
 

Perform a complex to real transform input data should be sorted real, imag, real, imag... The "out" argument is optional - if you include it an out of place transform will be performed and the results will be stored there.

template<class T>
rfft_manager< T > & Arroyo::rfft_manager< T >::operator= const rfft_manager< T > &  rfft_mgr  ) 
 

Operator =

template<class T>
void Arroyo::rfft_manager< T >::real_to_complex_fft const vector< long > &  in_array_dimens,
bool  estimate,
bool  in_place,
int  howmany,
T *  in,
int  istride,
int  idist,
T *  out = NULL,
int  ostride = 1,
int  odist = 1
 

Perform a real to complex transform as above, with more options The "out" argument is optional - if you include it an out of place transform will be performed and the results will be stored there. See the FFTW documentation for a description of istride, idist, ostride and odist

template<class T>
void Arroyo::rfft_manager< T >::real_to_complex_fft const vector< long > &  in_array_dimens,
bool  estimate,
bool  in_place,
T *  in,
T *  out = NULL
 

Perform a real to complex transform input data should be sorted real, real, real... Some warnings are in order here: The transformed array requires slightly more storage than the original if the final axis is even, because of nyquist. See the FFTW home page for a discussion of this issue and for the output array format.


Member Data Documentation

template<class T>
int Arroyo::rfft_manager< T >::verbose_level = 0 [static]
 

A verbose_level for printing messages.


The documentation for this class was generated from the following file:
Generated on Thu Nov 29 17:16:34 2007 for arroyo by  doxygen 1.3.9.1