library: libFFTW
#include "TFFTRealComplex.h"

TFFTRealComplex


class description - header file - source file - inheritance tree (.pdf)

class TFFTRealComplex : public TVirtualFFT

Inheritance Chart:
TObject
<-
TVirtualFFT
<-
TFFTRealComplex

    protected:
UInt_t MapFlag(Option_t* flag) public:
TFFTRealComplex() TFFTRealComplex(Int_t n, Bool_t inPlace) TFFTRealComplex(Int_t ndim, Int_t* n, Bool_t inPlace) TFFTRealComplex(const TFFTRealComplex&) virtual ~TFFTRealComplex() static TClass* Class() virtual Int_t* GetN() const virtual Int_t GetNdim() const virtual void GetPointComplex(Int_t ipoint, Double_t& re, Double_t& im, Bool_t fromInput = kFALSE) const virtual void GetPointComplex(const Int_t* ipoint, Double_t& re, Double_t& im, Bool_t fromInput = kFALSE) const virtual Double_t GetPointReal(Int_t ipoint, Bool_t fromInput = kFALSE) const virtual Double_t GetPointReal(const Int_t* ipoint, Bool_t fromInput = kFALSE) const virtual void GetPoints(Double_t* data, Bool_t fromInput = kFALSE) const virtual void GetPointsComplex(Double_t* re, Double_t* im, Bool_t fromInput = kFALSE) const virtual void GetPointsComplex(Double_t* data, Bool_t fromInput = kFALSE) const virtual Double_t* GetPointsReal(Bool_t fromInput = kFALSE) const virtual Int_t GetSign() const virtual Int_t GetSize() const virtual Option_t* GetTransformFlag() const virtual Option_t* GetType() const virtual void Init(Option_t* flags, Int_t, const Int_t*) virtual TClass* IsA() const virtual Bool_t IsInplace() const TFFTRealComplex& operator=(const TFFTRealComplex&) virtual void SetPoint(Int_t ipoint, Double_t re, Double_t im = 0) virtual void SetPoint(const Int_t* ipoint, Double_t re, Double_t im = 0) virtual void SetPointComplex(Int_t ipoint, TComplex& c) virtual void SetPoints(const Double_t* data) virtual void SetPointsComplex(const Double_t* re, const Double_t* im) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) virtual void Transform()

Data Members


    protected:
void* fIn input array void* fOut output array void* fPlan fftw plan (the plan how to compute the transform) Int_t fNdim number of dimensions Int_t fTotalSize total size of the transform Int_t* fN transform sizes in each dimension Option_t* fFlags transform flags

Class Description

TFFTRealComplex()
default
TFFTRealComplex(Int_t n, Bool_t inPlace)
For 1d transforms
Allocates memory for the input array, and, if inPlace = kFALSE, for the output array
TFFTRealComplex(Int_t ndim, Int_t *n, Bool_t inPlace)
For ndim-dimensional transforms
Second argurment contains sizes of the transform in each dimension
~TFFTRealComplex()
Destroys the data arrays and the plan. However, some plan information stays around
until the root session is over, and is reused if other plans of the same size are
created
void Transform()
Computes the transform, specified in Init() function
void GetPoints(Double_t *data, Bool_t fromInput)
Fills the array data with the computed transform.
Only (roughly) a half of the transform is copied (exactly the output of FFTW),
the rest being Hermitian symmetric with the first half
Double_t GetPointReal(Int_t ipoint, Bool_t fromInput)
Returns the real part of the point #ipoint from the output or the point #ipoint
from the input
Double_t GetPointReal(const Int_t *ipoint, Bool_t fromInput)
Returns the real part of the point #ipoint from the output or the point #ipoint
from the input
void GetPointComplex(Int_t ipoint, Double_t &re, Double_t &im, Bool_t fromInput)
Returns the point #ipoint.
For 1d, if ipoint > fN/2+1 (the point is in the Hermitian symmetric part), it is still
returned. For >1d, only the first (roughly)half of points can be returned
For 2d, see function GetPointComplex(Int_t *ipoint,...)
void GetPointComplex(const Int_t *ipoint, Double_t &re, Double_t &im, Bool_t fromInput)
For multidimensional transforms. Returns the point #ipoint.
In case of transforms of more than 2 dimensions,
only points from the first (roughly)half are returned, the rest being Hermitian symmetric
Double_t* GetPointsReal(Bool_t fromInput)
Returns the input array// One of the interface classes to the FFTW package, can be used directly
 or via the TVirtualFFT class. Only the basic interface of FFTW is implemented.
void GetPointsComplex(Double_t *re, Double_t *im, Bool_t fromInput)
Fills the argument arrays with the real and imaginary parts of the computed transform.
Only (roughly) a half of the transform is copied, the rest being Hermitian
symmetric with the first half
void GetPointsComplex(Double_t *data, Bool_t fromInput)
Fills the argument arrays with the real and imaginary parts of the computed transform.
Only (roughly) a half of the transform is copied, the rest being Hermitian
symmetric with the first half
void SetPoints(const Double_t *data)
Set all input points
void SetPointComplex(Int_t ipoint, TComplex &c)
Sets the point #ipoint (only the real part of the argument is taken)
UInt_t MapFlag(Option_t *flag)
allowed options:
"ES"
"M"
"P"
"EX"
TFFTRealComplex()
Int_t GetSize()
Int_t GetNdim()
Int_t GetSign()
Bool_t IsInplace()
void SetPoint(Int_t ipoint, Double_t re, Double_t im = 0)
void SetPoint(const Int_t *ipoint, Double_t re, Double_t im = 0)
void SetPointsComplex(const Double_t *re, const Double_t *im)

Author: Anna Kreshuk 07/4/2006
Last update: root/fft:$Name: $:$Id: TFFTRealComplex.cxx,v 1.3 2006/04/11 12:50:04 rdm Exp $
Copyright (C) 1995-2006, Rene Brun and Fons Rademakers. *


ROOT page - Class index - Class Hierarchy - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.