PSCF v1.1
Public Member Functions | List of all members
Pscf::Pspg::FFTBatched< D > Class Template Reference

Fourier transform wrapper for real data. More...

#include <FFTBatched.h>

Public Member Functions

 FFTBatched ()
 Default constructor. More...
 
virtual ~FFTBatched ()
 Destructor. More...
 
void setup (RDField< D > &rDField, RDFieldDft< D > &kDField)
 Check and setup grid dimensions if necessary. More...
 
void forwardTransform (RDField< D > &in, RDFieldDft< D > &out)
 Compute forward (real-to-complex) Fourier transform. More...
 
void inverseTransform (RDFieldDft< D > &in, RDField< D > &out)
 Compute inverse (complex-to-real) Fourier transform. More...
 
const IntVec< D > & meshDimensions () const
 Return the dimensions of the grid for which this was allocated. More...
 

Detailed Description

template<int D>
class Pscf::Pspg::FFTBatched< D >

Fourier transform wrapper for real data.

Definition at line 36 of file FFTBatched.h.

Constructor & Destructor Documentation

◆ FFTBatched()

template<int D>
Pscf::Pspg::FFTBatched< D >::FFTBatched

Default constructor.

Definition at line 46 of file FFTBatched.tpp.

◆ ~FFTBatched()

template<int D>
Pscf::Pspg::FFTBatched< D >::~FFTBatched
virtual

Destructor.

Definition at line 59 of file FFTBatched.tpp.

Member Function Documentation

◆ setup()

template<int D>
void Pscf::Pspg::FFTBatched< D >::setup ( RDField< D > &  rDField,
RDFieldDft< D > &  kDField 
)

Check and setup grid dimensions if necessary.

Parameters
rDFieldreal data on r-space grid (device mem)
kDFieldcomplex data on k-space grid (device mem)

Definition at line 73 of file FFTBatched.tpp.

References Pscf::Pspg::RDField< D >::meshDimensions(), Pscf::Pspg::RDFieldDft< D >::meshDimensions(), and UTIL_CHECK.

◆ forwardTransform()

template<int D>
void Pscf::Pspg::FFTBatched< D >::forwardTransform ( RDField< D > &  in,
RDFieldDft< D > &  out 
)

Compute forward (real-to-complex) Fourier transform.

Parameters
inarray of real values on r-space grid (device mem)
outarray of complex values on k-space grid (device mem)

Definition at line 248 of file FFTBatched.tpp.

References Pscf::Pspg::DField< Data >::capacity(), Pscf::Pspg::DField< Data >::cDField(), Pscf::Pspg::ThreadGrid::setThreadsLogical(), and UTIL_CHECK.

◆ inverseTransform()

template<int D>
void Pscf::Pspg::FFTBatched< D >::inverseTransform ( RDFieldDft< D > &  in,
RDField< D > &  out 
)

Compute inverse (complex-to-real) Fourier transform.

Parameters
inarray of complex values on k-space grid (device mem)
outarray of real values on r-space grid (device mem)

Definition at line 326 of file FFTBatched.tpp.

References Pscf::Pspg::DField< Data >::cDField().

◆ meshDimensions()

template<int D>
const IntVec< D > & Pscf::Pspg::FFTBatched< D >::meshDimensions
inline

Return the dimensions of the grid for which this was allocated.

Definition at line 123 of file FFTBatched.h.


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