BALL::TFFT1D< ComplexTraits > Class Template Reference
[Fast Fourier Transforms]
#include <BALL/MATHS/FFT1D.h>
List of all members.
Detailed Description
template<typename ComplexTraits>
class BALL::TFFT1D< ComplexTraits >
A class to perform Fast Fourier Transforms and inverse Fast Fourier Transforms on regularly spaced one dimensional data.
- This class makes use of the freely available library FFTW, which can be found at http://www.fftw.org coordinate system can be handled automatically. The normaliztion is chosen symmetrically.
Definition at line 36 of file FFT1D.h.
Member Typedef Documentation
template<typename ComplexTraits>
typedef std::complex<typename ComplexTraits::ComplexPrecision> BALL::TFFT1D< ComplexTraits >::Complex |
template<typename ComplexTraits>
Constructor & Destructor Documentation
template<typename ComplexTraits >
Default constructor.
Global assignment operator from FFT2D to TRegularData2D<Complex> Global assignment operator from FFT3D to TRegularData3D<float>. This operator assigns the real part of the complex FFT2D-data to the TRegularData2D<float> to.
Definition at line 284 of file FFT1D.h.
template<typename ComplexTraits>
template<typename ComplexTraits>
Detailed constructor.
- Parameters:
-
| ldn | The binary logarithm of the number of grid points (we use the logarithm to ensure that the number of points is a power of two, which is important for the FFT) |
| stepPhys | The step width in physical space |
| origin | The origin of the coordinate system |
| inFourierSpace | Flag to decide whether the data is assumed to be in physical or fourier space |
template<typename ComplexTraits>
Member Function Documentation
template<typename ComplexTraits>
virtual void BALL::TFFT1D< ComplexTraits >::clear |
( |
|
) |
[virtual] |
template<typename ComplexTraits>
virtual void BALL::TFFT1D< ComplexTraits >::destroy |
( |
|
) |
[virtual] |
Clear the contents and reset all attributes.
template<typename ComplexTraits>
Perform a single fast fourier transform on the data.
template<typename ComplexTraits>
Perform a single inverse fourier transform on the data.
template<typename ComplexTraits >
Returns the data at the grid position closest to pos , and automatically includes the correct phase factor and normalization.
- Exceptions:
-
Definition at line 459 of file FFT1D.h.
template<typename ComplexTraits >
Returns the maximal position of the grid in fourier space.
Definition at line 401 of file FFT1D.h.
template<typename ComplexTraits >
Returns the minimal position of the grid in fourier space.
Definition at line 395 of file FFT1D.h.
template<typename ComplexTraits >
Returns the step width in fourier space.
Definition at line 377 of file FFT1D.h.
template<typename ComplexTraits >
AR: Returns the grid coordinate corresponding to the position.
Definition at line 420 of file FFT1D.h.
template<typename ComplexTraits >
Returns the data at point pos. If pos is not a point on the grid, the data is linearly interpolated. This method automatically includes the correct phase factor and normalization.
- Exceptions:
-
Definition at line 482 of file FFT1D.h.
template<typename ComplexTraits >
AR: Return the largest grid position direction. This method returns the maximum position allowed in the grid. As the point in the origin has the indices 0, this method returns the number of points minus one.
Definition at line 407 of file FFT1D.h.
template<typename ComplexTraits >
Size BALL::TFFT1D< ComplexTraits >::getNumberOfInverseTransforms |
( |
|
) |
const [inline] |
AR: Return the number of inverse transforms that have been carried out using this class. This is an important factor for the normalization of the data.
Definition at line 413 of file FFT1D.h.
template<typename ComplexTraits >
Returns the maximal position of the grid in physical space.
Definition at line 389 of file FFT1D.h.
template<typename ComplexTraits >
Returns the minimal position of the grid in physical space.
Definition at line 383 of file FFT1D.h.
template<typename ComplexTraits >
Returns the step width in physical space.
Definition at line 371 of file FFT1D.h.
template<typename ComplexTraits >
AR: Returns true if the data is considered to be in Fourier space, false otherwise.
Definition at line 602 of file FFT1D.h.
template<typename ComplexTraits>
template<typename ComplexTraits >
Equality operator.
Definition at line 295 of file FFT1D.h.
template<typename ComplexTraits>
Access the (raw) data at Position pos. Const method.
- Exceptions:
-
Definition at line 214 of file FFT1D.h.
template<typename ComplexTraits>
Access the (raw) data at Position pos
- Exceptions:
-
Definition at line 205 of file FFT1D.h.
template<typename ComplexTraits >
Access the data at the grid position closest to pos . This function returns the "raw" data at that position.
- Exceptions:
-
Definition at line 564 of file FFT1D.h.
template<typename ComplexTraits >
Access the data at the grid position closest to pos . This function returns the "raw" data at that position.
- Exceptions:
-
Definition at line 537 of file FFT1D.h.
template<typename ComplexTraits >
Compute the phase factor. This computes the phase factor in fourier space that results if the origin of the coordinate system in physical space is not in the "lower left corner".
Definition at line 591 of file FFT1D.h.
template<typename ComplexTraits >
Sets the data point at the grid position closest to pos to the value val , and -- if called in fourier space -- automatically includes the correct phase factor and normalization.
- Exceptions:
-
Definition at line 515 of file FFT1D.h.
template<typename ComplexTraits>
void BALL::TFFT1D< ComplexTraits >::setNumberOfFFTTransforms |
( |
Size |
num |
) |
[inline] |
template<typename ComplexTraits>
void BALL::TFFT1D< ComplexTraits >::setNumberOfiFFTTransforms |
( |
Size |
num |
) |
[inline] |
template<typename ComplexTraits >
Set the step width in physical space to newWidth . The step width in fourier space is automatically adjusted accordingly. newWidth must be positive, otherwise the function does nothing and retuns false .
Definition at line 350 of file FFT1D.h.
template<typename ComplexTraits >
Translate the origin in physical space about transOrigin . If the result is out of bounds, the function does nothing and returns false .
Definition at line 329 of file FFT1D.h.
Member Data Documentation
template<typename ComplexTraits>
template<typename ComplexTraits>
template<typename ComplexTraits>
template<typename ComplexTraits>
template<typename ComplexTraits>
template<typename ComplexTraits>
template<typename ComplexTraits>
template<typename ComplexTraits>
template<typename ComplexTraits>
template<typename ComplexTraits>
template<typename ComplexTraits>
template<typename ComplexTraits>
template<typename ComplexTraits>
template<typename ComplexTraits>
template<typename ComplexTraits>