Highly Efficient FFT for Exascale: HeFFTe v2.4
|
Template algorithm for the Sine and Cosine transforms. More...
#include <heffte_r2r_executor.h>
Public Member Functions | |
template<typename index > | |
real2real_executor (typename backend::device_instance< typename backend::buffer_traits< fft_backend_tag >::location >::stream_type cstream, box3d< index > const box, int dimension) | |
Construct a plan for batch 1D transforms. | |
template<typename index > | |
real2real_executor (typename backend::device_instance< typename backend::buffer_traits< fft_backend_tag >::location >::stream_type cstream, box3d< index > const, int, int) | |
Construct a plan for batch 2D transforms, not implemented currently. | |
template<typename index > | |
real2real_executor (typename backend::device_instance< typename backend::buffer_traits< fft_backend_tag >::location >::stream_type cstream, box3d< index > const) | |
Construct a plan for a single 3D transform, not implemented currently. | |
template<typename scalar_type > | |
void | forward (scalar_type data[], scalar_type workspace[]) const |
Forward transform. | |
template<typename scalar_type > | |
void | backward (scalar_type data[], scalar_type workspace[]) const |
Inverse transform. | |
template<typename precision > | |
void | forward (precision const[], std::complex< precision >[]) const |
Placeholder for template type consistency, should never be called. | |
template<typename precision > | |
void | backward (std::complex< precision > indata[], precision outdata[]) const |
Placeholder for template type consistency, should never be called. | |
int | box_size () const override |
Returns the size of the box. | |
size_t | workspace_size () const override |
Returns the size of the box. | |
virtual void | forward (float data[], float *workspace) const override |
Forward r2r, single precision. | |
virtual void | forward (double data[], double *workspace) const override |
Forward r2r, double precision. | |
virtual void | backward (float data[], float *workspace) const override |
Backward r2r, single precision. | |
virtual void | backward (double data[], double *workspace) const override |
Backward r2r, double precision. | |
virtual void | forward (float[], float *) const |
Will not be used, suppresses compiler warnings. | |
virtual void | forward (double[], double *) const |
Will not be used, suppresses compiler warnings. | |
virtual void | forward (std::complex< float >[], std::complex< float > *) const |
Will not be used, suppresses compiler warnings. | |
virtual void | forward (std::complex< double >[], std::complex< double > *) const |
Will not be used, suppresses compiler warnings. | |
virtual void | forward (float const [], std::complex< float >[], std::complex< float > *) const |
Will not be used, suppresses compiler warnings. | |
virtual void | forward (double const [], std::complex< double >[], std::complex< double > *) const |
Will not be used, suppresses compiler warnings. | |
virtual void | backward (float[], float *) const |
Will not be used, suppresses compiler warnings. | |
virtual void | backward (double[], double *) const |
Will not be used, suppresses compiler warnings. | |
virtual void | backward (std::complex< float >[], std::complex< float > *) const |
Will not be used, suppresses compiler warnings. | |
virtual void | backward (std::complex< double >[], std::complex< double > *) const |
Will not be used, suppresses compiler warnings. | |
virtual void | backward (std::complex< float >[], float[], std::complex< float > *) const |
Will not be used, suppresses compiler warnings. | |
virtual void | backward (std::complex< double >[], double[], std::complex< double > *) const |
Will not be used, suppresses compiler warnings. | |
![]() | |
virtual | ~executor_base ()=default |
Virtual destructor. | |
virtual int | complex_size () const |
Return the size of the complex-box (r2c executors). | |
Template algorithm for the Sine and Cosine transforms.
fft_backend_tag | indicate the FFT backend to use, e.g., fftw or cufft. |
prepost_processor | a collection of methods for pre-post processing the data before/after applying the FFT |
|
inlineoverridevirtual |
Returns the size of the box.
Reimplemented from heffte::executor_base.
|
inlineoverridevirtual |
Returns the size of the box.
Reimplemented from heffte::executor_base.
|
inlineoverridevirtual |
Forward r2r, single precision.
Reimplemented from heffte::executor_base.
|
inlineoverridevirtual |
Forward r2r, double precision.
Reimplemented from heffte::executor_base.
|
inlineoverridevirtual |
Backward r2r, single precision.
Reimplemented from heffte::executor_base.
|
inlineoverridevirtual |
Backward r2r, double precision.
Reimplemented from heffte::executor_base.
Will not be used, suppresses compiler warnings.
Reimplemented from heffte::executor_base.
Will not be used, suppresses compiler warnings.
Reimplemented from heffte::executor_base.
|
inlinevirtual |
Will not be used, suppresses compiler warnings.
Reimplemented from heffte::executor_base.
|
inlinevirtual |
Will not be used, suppresses compiler warnings.
Reimplemented from heffte::executor_base.
|
inlinevirtual |
Will not be used, suppresses compiler warnings.
Reimplemented from heffte::executor_base.
|
inlinevirtual |
Will not be used, suppresses compiler warnings.
Reimplemented from heffte::executor_base.
Will not be used, suppresses compiler warnings.
Reimplemented from heffte::executor_base.
Will not be used, suppresses compiler warnings.
Reimplemented from heffte::executor_base.
|
inlinevirtual |
Will not be used, suppresses compiler warnings.
Reimplemented from heffte::executor_base.
|
inlinevirtual |
Will not be used, suppresses compiler warnings.
Reimplemented from heffte::executor_base.
|
inlinevirtual |
Will not be used, suppresses compiler warnings.
Reimplemented from heffte::executor_base.
|
inlinevirtual |
Will not be used, suppresses compiler warnings.
Reimplemented from heffte::executor_base.