![]() |
ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
|
heFFTe-backed implementation of the P3M FFT interface. More...
#include <P3MFFT.hpp>
Inheritance diagram for P3MFFTHeffte< FloatType, FFTConfig >:
Collaboration diagram for P3MFFTHeffte< FloatType, FFTConfig >:Public Types | |
| using | Base = P3MFFTBackend< FloatType, FFTConfig > |
| using | ComplexType = typename Base::ComplexType |
| using | RSpaceScalar = typename Base::RSpaceScalar |
Public Types inherited from P3MFFTBackend< FloatType, FFTConfig > | |
| using | ComplexType = std::complex< FloatType > |
| using | RSpaceScalar = FloatType |
| Real-space scalar type. | |
Public Member Functions | |
| P3MFFTHeffte (boost::mpi::communicator comm, Utils::Vector3i const &global_mesh, Utils::Vector3i const &rs_local_ld_index, Utils::Vector3i const &rs_local_ur_index, Utils::Vector3i const &node_grid) | |
| Utils::Vector3i | ks_local_ld_index () const override |
| Utils::Vector3i | ks_local_ur_index () const override |
| Utils::Vector3i | ks_local_size () const override |
| Utils::Vector3i | rs_local_size () const override |
| RSpaceScalar * | forward_input_buffer () override |
| void | forward (RSpaceScalar const *in, ComplexType *out) override |
| void | backward (ComplexType *in, RSpaceScalar *out) override |
Public Member Functions inherited from P3MFFTBackend< FloatType, FFTConfig > | |
| virtual | ~P3MFFTBackend ()=default |
heFFTe-backed implementation of the P3M FFT interface.
Thin adapter that exposes P3MFFT through the P3MFFTBackend virtual interface, so the solver can hold it interchangeably with other backends. This is the general backend, used for any rank count.
Definition at line 200 of file P3MFFT.hpp.
| using P3MFFTHeffte< FloatType, FFTConfig >::Base = P3MFFTBackend<FloatType, FFTConfig> |
Definition at line 201 of file P3MFFT.hpp.
| using P3MFFTHeffte< FloatType, FFTConfig >::ComplexType = typename Base::ComplexType |
Definition at line 202 of file P3MFFT.hpp.
| using P3MFFTHeffte< FloatType, FFTConfig >::RSpaceScalar = typename Base::RSpaceScalar |
Definition at line 203 of file P3MFFT.hpp.
|
inline |
Definition at line 205 of file P3MFFT.hpp.
|
inlineoverridevirtual |
Implements P3MFFTBackend< FloatType, FFTConfig >.
Definition at line 230 of file P3MFFT.hpp.
References P3MFFT< FloatType, Architecture, FFTConfig >::backward(), and stream.
|
inlineoverridevirtual |
Implements P3MFFTBackend< FloatType, FFTConfig >.
Definition at line 227 of file P3MFFT.hpp.
References P3MFFT< FloatType, Architecture, FFTConfig >::forward(), and stream.
|
inlineoverridevirtual |
Implements P3MFFTBackend< FloatType, FFTConfig >.
Definition at line 226 of file P3MFFT.hpp.
|
inlineoverridevirtual |
Implements P3MFFTBackend< FloatType, FFTConfig >.
Definition at line 214 of file P3MFFT.hpp.
References P3MFFT< FloatType, Architecture, FFTConfig >::ks_local_ld_index().
|
inlineoverridevirtual |
Implements P3MFFTBackend< FloatType, FFTConfig >.
Definition at line 220 of file P3MFFT.hpp.
References P3MFFT< FloatType, Architecture, FFTConfig >::ks_local_size().
|
inlineoverridevirtual |
Implements P3MFFTBackend< FloatType, FFTConfig >.
Definition at line 217 of file P3MFFT.hpp.
References P3MFFT< FloatType, Architecture, FFTConfig >::ks_local_ur_index().
|
inlineoverridevirtual |
Implements P3MFFTBackend< FloatType, FFTConfig >.
Definition at line 223 of file P3MFFT.hpp.
References P3MFFT< FloatType, Architecture, FFTConfig >::rs_local_size().