Class TempLat::FFTWHermitianPartners
template <size_t NDim>
ClassList > TempLat > FFTWHermitianPartners
A class which holds all information about the redundancy in the complex values from a r2c fft. The redundancy comes from hermitian symmetry, so certain elements must be each other's complex conjugate. This class tells you which elements are each other's. More...
#include <fftwhermitianpartners.h>
Inherits the following classes: TempLat::HermitianPartners
Public Functions
| Type | Name |
|---|---|
| FFTWHermitianPartners () = delete |
Public Functions inherited from TempLat::HermitianPartners
See TempLat::HermitianPartners
| Type | Name |
|---|---|
| DEVICE_FUNCTION | HermitianPartners (const device::IdxArray< NDim > & initNGrid) |
| HermitianPartnersMode | getMode () const |
| DEVICE_FUNCTION HermitianValueAccounting | getNumberOfIndependentValues () const Compute the number of unique / independent real and imaginary floating point values in a memory layout. |
| DEVICE_FUNCTION HermitianRedundancy | putHermitianPartner (const Container1 & globalCoordinate, Container2 & target) const If the entry at your input globalCoordinate has a partner which is its hermitian conjugate, then return the coordinates to that partner. Otherwise return the input. No bounds checking! |
| DEVICE_FUNCTION HermitianRedundancy | qualify (const Container & globalCoordinate) const For testing purposes: track which entries in the layout carry redundant information, and if so, what information. The default implementation returns HermitianRedundancy::none , which you could (uselessly) use for configuration-space layouts. |
| void | setMode (HermitianPartnersMode new_mode) |
| std::string | toString () const |
Public Static Functions
| Type | Name |
|---|---|
| HermitianPartners< NDim > | create (const device::IdxArray< NDim > & globalSizes) Construct a std::shared_ptr to a new instance. |
Detailed Description
Unit test: ctest -R test-fftwhermitianpartners
Public Functions Documentation
function FFTWHermitianPartners
Public Static Functions Documentation
function create
Construct a std::shared_ptr to a new instance.
static inline HermitianPartners < NDim > TempLat::FFTWHermitianPartners::create (
const device::IdxArray< NDim > & globalSizes
)
The documentation for this class was generated from the following file cosmolatticeweb/tmp/code_source/templat/include/TempLat/fft/external/fftw/fftwhermitianpartners.h