IPPL API Reference
Independent Parallel Particle Layer C++ API
Loading...
Searching...
No Matches
ippl::FFT< CCTransform, ComplexField > Class Template Reference

#include <FFT.h>

+ Inheritance diagram for ippl::FFT< CCTransform, ComplexField >:
+ Collaboration diagram for ippl::FFT< CCTransform, ComplexField >:

Public Types

using Complex_t = typename ComplexField::value_type
 

Public Member Functions

void warmup (ComplexField &f)
 
void transform (TransformDirection direction, ComplexField &f)
 

Detailed Description

template<typename ComplexField>
class ippl::FFT< CCTransform, ComplexField >

complex-to-complex FFT class

Member Function Documentation

◆ transform()

template<typename ComplexField >
void ippl::FFT< CCTransform, ComplexField >::transform ( TransformDirection  direction,
ComplexField &  f 
)

Perform in-place FFT

Parameters
directionForward or backward transformation
fField 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) even though this can be changed during heffte box creation

◆ warmup()

template<typename ComplexField >
void ippl::FFT< CCTransform, ComplexField >::warmup ( ComplexField &  f)

Warmup the FFT object by forward & backward FFT on an empty field

Parameters
fField whose transformation to compute (and overwrite)

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