| kspaceFirstOrder3D-OMP 1.0 The C++ implementation of the k-wave toolbox for the time-domain simulation of acoustic wave fields in 3D

- Main Page
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes
TFFTWComplexMatrix Class Reference

Class implementing 3D Real-To-Complex and Complex-To-Real transforms using FFTW interface.

`#include <FFTWComplexMatrix.h>`

Inheritance diagram for TFFTWComplexMatrix:
[legend]
Collaboration diagram for TFFTWComplexMatrix:
[legend]

List of all members.

## Public Member Functions
| TFFTWComplexMatrix (struct TDimensionSizes DimensionSizes)
| Constructor.
virtual | ~TFFTWComplexMatrix ()
| Destructor.
void | CreateFFTPlan3D_R2C (TRealMatrix &InMatrix)
| Create FFTW plan for Real-to-Complex.
void | CreateFFTPlan3D_C2R (TRealMatrix &OutMatrix)
| Create FFTW plan for Complex-to-Real.
void | Compute_FFT_3D_R2C (TRealMatrix &InMatrix)
| Compute 3D FFT Real-to-Complex.
void | Compute_iFFT_3D_C2R (TRealMatrix &OutMatrix)
| Compute 3D FFT Complex-to-Real.
## Protected Member Functions
| TFFTWComplexMatrix ()
| Default constructor not allowed for public.
| TFFTWComplexMatrix (const TFFTWComplexMatrix &src)
| Copy constructor not allowed for public.
TFFTWComplexMatrix & | operator= (const TFFTWComplexMatrix &src)
| Operator = not allowed for public.
virtual void | AllocateMemory ()
| Allocate memory for the FFTW matrix.
virtual void | FreeMemory ()
| Free memory of the FFTW matrix.
## Protected Attributes
fftwf_plan | fftw_plan_R2C
| FFTW plan for the Real-to-Complex transform.
fftwf_plan | fftw_plan_C2R
| FFTW plan for the Complex-to-Real transform.
bool | fftw_plan_R2C_Created
| Flag of Real-to-Complex transform.
bool | fftw_plan_C2R_Created
| Flag of Complex-to-Real transform.
## Static Protected Attributes
static const unsigned | TFFTWComplexMatrix_FFT_FLAG = FFTW_MEASURE
| FFTW plan flag.

## Detailed Description

Definition at line 46 of file FFTWComplexMatrix.h.

## Constructor & Destructor Documentation

TFFTWComplexMatrix::TFFTWComplexMatrix | ( | struct TDimensionSizes | DimensionSizes | ) |

Constructor

Parameters:

  DimensionSizes | - Dimension sizes of the reduced complex matrix

Definition at line 54 of file FFTWComplexMatrix.cpp.

Here is the call graph for this function:

TFFTWComplexMatrix::~TFFTWComplexMatrix | ( |  | ) | `[virtual]`

Destructor

Definition at line 70 of file FFTWComplexMatrix.cpp.

Here is the call graph for this function:

## Member Function Documentation

void TFFTWComplexMatrix::AllocateMemory | ( |  | ) | `[protected, virtual]`

Allocate Memory using fftwf_malloc function to ensure correct alignment

Reimplemented from TBaseFloatMatrix.

Definition at line 159 of file FFTWComplexMatrix.cpp.

Here is the caller graph for this function:

void TFFTWComplexMatrix::Compute_FFT_3D_R2C | ( | TRealMatrix & | InMatrix | ) |

Computer forward 3D Real-to-Complex FFT.

Parameters:

  [in] | InMatrix | - Input Matrix

Definition at line 127 of file FFTWComplexMatrix.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void TFFTWComplexMatrix::Compute_iFFT_3D_C2R | ( | TRealMatrix & | OutMatrix | ) |

Compute inverse 3D Complex to Real FFT.

Parameters:

  [out] | OutMatrix |

Definition at line 142 of file FFTWComplexMatrix.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void TFFTWComplexMatrix::CreateFFTPlan3D_C2R | ( | TRealMatrix & | OutMatrix | ) |

Create FFTW plan for Complex-to-Real.

Parameters:

  [in,out] | OutMatrix | - RealMatrix of which to create the plan.

Warning:
  unless FFTW_ESTIMATE flag is specified, the content of the InMatrix will be destroyed!

Definition at line 108 of file FFTWComplexMatrix.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void TFFTWComplexMatrix::CreateFFTPlan3D_R2C | ( | TRealMatrix & | InMatrix | ) |

Create FFTW plan for Real-to-Complex.

Parameters:

  [in,out] | InMatrix | - RealMatrix of which to create the plan

Warning:
  unless FFTW_ESTIMATE flag is specified, the content of the InMatrix will be destroyed!

Definition at line 90 of file FFTWComplexMatrix.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void TFFTWComplexMatrix::FreeMemory | ( |  | ) | `[protected, virtual]`

Free memory using fftwf_free

Reimplemented from TBaseFloatMatrix.

Definition at line 189 of file FFTWComplexMatrix.cpp.

Here is the caller graph for this function:

The documentation for this class was generated from the following files:

- MatrixClasses/FFTWComplexMatrix.h
- MatrixClasses/FFTWComplexMatrix.cpp

All Classes Files Functions Variables Typedefs Enumerations