|
IPPL (Independent Parallel Particle Layer)
IPPL
|
#include <FFT.h>
Public Types | |
| using | heffteBackend = Backend |
| using | workspace_t = typename FFT<heffteBackend>::template buffer_container<BufferType> |
| using | Layout_t = FieldLayout<Dim> |
Public Member Functions | |
| FFTBase (const Layout_t &layout, const ParameterList ¶ms) | |
| ~FFTBase ()=default | |
Protected Types | |
| template<typename FieldType> | |
| using | temp_view_type |
Protected Member Functions | |
| FFTBase ()=default | |
| void | domainToBounds (const NDIndex< Dim > &domain, std::array< long long, 3 > &low, std::array< long long, 3 > &high) |
| void | setup (const heffte::box3d< long long > &inbox, const heffte::box3d< long long > &outbox, const ParameterList ¶ms) |
Protected Attributes | |
| std::shared_ptr< FFT< heffteBackend, long long > > | heffte_m |
| workspace_t | workspace_m |
| temp_view_type< Field > | tempField |
Static Private Attributes | |
| static constexpr unsigned | Dim = Field::dim |
| using ippl::FFTBase< Field, FFT, Backend, BufferType >::heffteBackend = Backend |
| using ippl::FFTBase< Field, FFT, Backend, BufferType >::Layout_t = FieldLayout<Dim> |
|
protected |
| using ippl::FFTBase< Field, FFT, Backend, BufferType >::workspace_t = typename FFT<heffteBackend>::template buffer_container<BufferType> |
| ippl::FFTBase< Field, FFT, Backend, T >::FFTBase | ( | const Layout_t & | layout, |
| const ParameterList & | params ) |
Definition at line 32 of file FFT.hpp.
References domainToBounds(), ippl::FieldLayout< Dim >::getLocalNDIndex(), and setup().
|
default |
|
protecteddefault |
|
protected |
Static cast to detail::long long (uint64_t) is necessary, as heffte::box3d requires it like that.
Definition at line 46 of file FFT.hpp.
References Dim, first(), ippl::NDIndex< Dim >::first(), and ippl::NDIndex< Dim >::length().
Referenced by FFTBase().
|
protected |
setup performs the initialization necessary.
Definition at line 66 of file FFT.hpp.
References ippl::a2a, ippl::a2av, ippl::Comm, ippl::ParameterList::get(), heffte_m, ippl::p2p, ippl::p2p_pl, and workspace_m.
Referenced by FFTBase().
|
staticconstexprprivate |
Definition at line 145 of file FFT.h.
Referenced by domainToBounds().
|
protected |
|
protected |
|
protected |