ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
FFTBackendLegacy< FloatType > Class Template Reference

Historic FFT backend based on FFTW3. More...

#include <FFTBackendLegacy.hpp>

+ Inheritance diagram for FFTBackendLegacy< FloatType >:
+ Collaboration diagram for FFTBackendLegacy< FloatType >:

Public Member Functions

 FFTBackendLegacy (P3MLocalMesh const &local_mesh)
 
 ~FFTBackendLegacy () override
 
void init (P3MParameters const &params) override
 
void forward_fft (FloatType *rs_mesh) override
 
void backward_fft (FloatType *rs_mesh) override
 
int get_ca_mesh_size () const noexcept override
 
int get_ks_pnum () const noexcept override
 
std::array< int, 3u > constget_mesh_size () const override
 
std::array< int, 3u > constget_mesh_start () const override
 
- Public Member Functions inherited from FFTBackend< FloatType >
 FFTBackend (P3MLocalMesh const &local_mesh)
 
virtual ~FFTBackend ()=default
 

Additional Inherited Members

- Protected Attributes inherited from FFTBackend< FloatType >
P3MLocalMesh constlocal_mesh
 

Detailed Description

template<typename FloatType>
class FFTBackendLegacy< FloatType >

Historic FFT backend based on FFTW3.

The 3D FFT is split into three 1D FFTs.

Definition at line 45 of file FFTBackendLegacy.hpp.

Constructor & Destructor Documentation

◆ FFTBackendLegacy()

template<typename FloatType >
FFTBackendLegacy< FloatType >::FFTBackendLegacy ( P3MLocalMesh const local_mesh)

Definition at line 35 of file FFTBackendLegacy.cpp.

◆ ~FFTBackendLegacy()

template<typename FloatType >
FFTBackendLegacy< FloatType >::~FFTBackendLegacy ( )
overridedefault

Member Function Documentation

◆ backward_fft()

template<typename FloatType >
void FFTBackendLegacy< FloatType >::backward_fft ( FloatType *  rs_mesh)
overridevirtual

Implements FFTBackend< FloatType >.

Definition at line 56 of file FFTBackendLegacy.cpp.

References comm_cart.

◆ forward_fft()

template<typename FloatType >
void FFTBackendLegacy< FloatType >::forward_fft ( FloatType *  rs_mesh)
overridevirtual

Implements FFTBackend< FloatType >.

Definition at line 51 of file FFTBackendLegacy.cpp.

References comm_cart.

◆ get_ca_mesh_size()

template<typename FloatType >
int FFTBackendLegacy< FloatType >::get_ca_mesh_size ( ) const
inlineoverridevirtualnoexcept

Implements FFTBackend< FloatType >.

Definition at line 60 of file FFTBackendLegacy.hpp.

◆ get_ks_pnum()

template<typename FloatType >
int FFTBackendLegacy< FloatType >::get_ks_pnum ( ) const
inlineoverridevirtualnoexcept

Implements FFTBackend< FloatType >.

Definition at line 61 of file FFTBackendLegacy.hpp.

◆ get_mesh_size()

template<typename FloatType >
std::array< int, 3u > const & FFTBackendLegacy< FloatType >::get_mesh_size ( ) const
inlineoverridevirtual

Implements FFTBackend< FloatType >.

Definition at line 62 of file FFTBackendLegacy.hpp.

◆ get_mesh_start()

template<typename FloatType >
std::array< int, 3u > const & FFTBackendLegacy< FloatType >::get_mesh_start ( ) const
inlineoverridevirtual

Implements FFTBackend< FloatType >.

Definition at line 65 of file FFTBackendLegacy.hpp.

◆ init()

template<typename FloatType >
void FFTBackendLegacy< FloatType >::init ( P3MParameters const params)
overridevirtual

Implements FFTBackend< FloatType >.

Definition at line 44 of file FFTBackendLegacy.cpp.

References comm_cart, communicator, Communicator::node_grid, and params.


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