|
IPPL (Independent Parallel Particle Layer)
IPPL
|
#include <FFT.h>
Public Member Functions | |
| void | warmup (Field &f) |
| void | transform (TransformDirection direction, Field &f) |
Private Types | |
| using | Base = IN_PLACE_FFT_BASE_CLASS(Field, backendSine) |
Static Private Attributes | |
| static constexpr unsigned | Dim = Field::dim |
Sine transform class
|
private |
| void ippl::FFT< SineTransform, Field >::transform | ( | TransformDirection | direction, |
| Field & | f ) |
Perform in-place FFT
| direction | Forward or backward transformation |
| f | Field whose transformation to compute (and overwrite) |
This copy to a temporary Kokkos view is needed because of following reasons: 1) heffte wants the input and output fields without ghost layers 2) heffte accepts data in layout left (by default) eventhough this can be changed during heffte box creation
Definition at line 272 of file FFT.hpp.
References ippl::apply(), ippl::BACKWARD, Dim, ippl::FORWARD, ippl::BareField< T, Dim, ViewArgs >::getNghost(), ippl::BareField< T, Dim, ViewArgs >::getOwned(), ippl::getRangePolicy(), ippl::BareField< T, Dim, ViewArgs >::getView(), ippl::parallel_for(), ippl::detail::shrinkView(), and ippl::NDIndex< Dim >::size().
Referenced by warmup().
| void ippl::FFT< SineTransform, Field >::warmup | ( | Field & | f | ) |
Warmup the FFT object by forward & backward FFT on an empty field
| f | Field whose transformation to compute (and overwrite) |
Definition at line 266 of file FFT.hpp.
References ippl::BACKWARD, ippl::FORWARD, and transform().
|
staticconstexprprivate |
Definition at line 264 of file FFT.h.
Referenced by transform().