#include <fft3d.hpp>

Public Member Functions | |
| FFT3D () | |
| ~FFT3D () | |
| auto & | setSizeBeforeTrans (int nx, int ny, int nz) |
| auto & | setSizeAfterTrans (int nx, int ny, int nz) |
| auto & | setGhostSizeBeforeTrans (std::vector< int > gh0, std::vector< int > gh1, std::vector< int > gh2) |
| auto & | setGhostSizeAfterTrans (std::vector< int > gh0, std::vector< int > gh1, std::vector< int > gh2) |
| auto & | setFirstDecomp (int axis_npr, int axis_npc) |
| auto & | setSecondDecomp (int axis_npr, int axis_npc) |
| auto & | setThirdDecomp (int axis_npr, int axis_npc) |
| auto & | setFirstFFTOp (int fft_type) |
| auto & | setSecondFFTOp (int fft_type) |
| auto & | setThirdFFTOp (int fft_type) |
| auto & | setFFTOp (int fft_type0, int fft_type1, int fft_type2) |
| auto & | setMPIDecomp (const int npr, const int npc) |
| std::pair< std::vector< int >, std::vector< int > > | getLocalIndexBeforeTrans () |
| std::pair< std::vector< int >, std::vector< int > > | getLocalIndexAfterTrans () |
| std::vector< int > | getSizeBeforeTrans () |
| std::vector< int > | getSizeAfterTrans () |
| std::vector< int > | getLocalSizeBeforeTrans () |
| std::vector< int > | getLocalSizeAfterTrans () |
| auto | getMaxBufferSize () |
| auto | getMPIComm () |
| void | Init () |
| void | ForwardTrans (auto *in, auto *out) |
| void | BackwardTrans (auto *in, auto *out) |
| void | RemoveGhost (auto *in, auto *out, std::vector< int > gh0, std::vector< int > gh1, std::vector< int > gh2, GhostFlag flag=GhostFlag::Before) |
| void | AddGhost (auto *in, auto *out, std::vector< int > gh0, std::vector< int > gh1, std::vector< int > gh2, GhostFlag flag=GhostFlag::Before) |
Private Member Functions | |
| void | _InitFFTAxisOrder () |
| void | _InitDecomp () |
| void | _InitDecompSize () |
| void | _InitFFTSizeBeforeTrans () |
| void | _InitFFTSizeAfterTrans () |
| void | _InitIsSameSize () |
| void | _InitTempArray () |
| void | _InitLocalIndex () |
Private Attributes | |
| Cart3DPencilDecomp< std::complex< T_real >, GroupID > | decomp0 |
| Cart3DPencilDecomp< std::complex< T_real >, GroupID2 > | decomp1 |
| Cart3DPencilDecomp< T_real, GroupID3 > | rdecomp0 |
| Cart3DPencilDecomp< T_real, GroupID4 > | rdecomp1 |
| bool | _is_same_size = false |
| int | _npr = 1 |
| int | _npc = 1 |
| size_t | _maxbuffersize = 0 |
| int | _size_before [3] = {0, 0, 0} |
| int | _size_after [3] = {0, 0, 0} |
| int | _size_decomp0 [3] = {0, 0, 0} |
| int | _size_decomp1 [3] = {0, 0, 0} |
| int | _axis_npr_list [3] = {kY, kX, kX} |
| int | _axis_npc_list [3] = {kZ, kZ, kY} |
| int | _fft_axis_order [3] = {kX, kY, kZ} |
| int | _fft_type_list [3] = {kNULL, kNULL, kNULL} |
| std::vector< std::vector< int > > | _fft_size_before = {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}} |
| std::vector< std::vector< int > > | _fft_size_after = {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}} |
| std::vector< std::vector< int > > | _local_index_before = {{0, 0, 0}, {0, 0, 0}} |
| std::vector< std::vector< int > > | _local_index_after = {{0, 0, 0}, {0, 0, 0}} |
| std::complex< T_real > * | ctemp0 = nullptr |
| std::complex< T_real > * | ctemp1 = nullptr |
| T_real * | rtemp0 = nullptr |
| T_real * | rtemp1 = nullptr |
Static Private Attributes | |
| static constexpr auto | GroupID2 = 2000000000 - GroupID |
| static constexpr auto | GroupID3 = 3000000000 - GroupID |
| static constexpr auto | GroupID4 = 4000000000 - GroupID |
|
inline |
|
inline |
|
private |
References tfft3d::CC, tfft3d::RC, and tfft3d::RR.
|
private |
References tfft3d::kDFTc2r, and tfft3d::kDFTr2c.
|
private |
|
private |
References tfft3d::CC.
|
private |
References tfft3d::CC, tfft3d::RC, and tfft3d::RR.
|
private |
|
private |
References tfft3d::CC, tfft3d::RC, and tfft3d::RR.
|
private |
References tfft3d::CC, tfft3d::Cart3DPencilDecomp< T, GroupID >::getMaxBufferSize(), quadpack::max(), tfft3d::RC, tfft3d::RR, and tfft3d::Cart3DPencilDecomp< T, GroupID >::setArraySize().

| void tfft3d::FFT3D< T_real, GroupID, TypeID >::AddGhost | ( | auto * | in, |
| auto * | out, | ||
| std::vector< int > | gh0, | ||
| std::vector< int > | gh1, | ||
| std::vector< int > | gh2, | ||
| GhostFlag | flag = GhostFlag::Before |
||
| ) |
| void tfft3d::FFT3D< T_real, GroupID, TypeID >::BackwardTrans | ( | auto * | in, |
| auto * | out | ||
| ) |
References tfft3d::CC, tfft3d::PencilDFTBackward(), tfft3d::RC, and tfft3d::RR.


| void tfft3d::FFT3D< T_real, GroupID, TypeID >::ForwardTrans | ( | auto * | in, |
| auto * | out | ||
| ) |
References tfft3d::CC, tfft3d::PencilDFTForward(), tfft3d::RC, and tfft3d::RR.


|
inline |
References tfft3d::FFT3D< T_real, GroupID, TypeID >::_local_index_after.

|
inline |
|
inline |
References tfft3d::FFT3D< T_real, GroupID, TypeID >::_fft_size_after.

|
inline |
|
inline |
References tfft3d::FFT3D< T_real, GroupID, TypeID >::_maxbuffersize.

|
inline |
|
inline |
|
inline |
| void tfft3d::FFT3D< T_real, GroupID, TypeID >::Init |
| void tfft3d::FFT3D< T_real, GroupID, TypeID >::RemoveGhost | ( | auto * | in, |
| auto * | out, | ||
| std::vector< int > | gh0, | ||
| std::vector< int > | gh1, | ||
| std::vector< int > | gh2, | ||
| GhostFlag | flag = GhostFlag::Before |
||
| ) |
|
inline |
References tfft3d::FFT3D< T_real, GroupID, TypeID >::setFirstFFTOp().

| auto & tfft3d::FFT3D< T_real, GroupID, TypeID >::setFirstDecomp | ( | int | axis_npr, |
| int | axis_npc | ||
| ) |
| auto & tfft3d::FFT3D< T_real, GroupID, TypeID >::setFirstFFTOp | ( | int | fft_type | ) |

| auto& tfft3d::FFT3D< T_real, GroupID, TypeID >::setGhostSizeAfterTrans | ( | std::vector< int > | gh0, |
| std::vector< int > | gh1, | ||
| std::vector< int > | gh2 | ||
| ) |
| auto& tfft3d::FFT3D< T_real, GroupID, TypeID >::setGhostSizeBeforeTrans | ( | std::vector< int > | gh0, |
| std::vector< int > | gh1, | ||
| std::vector< int > | gh2 | ||
| ) |
| auto & tfft3d::FFT3D< T_real, GroupID, TypeID >::setMPIDecomp | ( | const int | npr, |
| const int | npc | ||
| ) |
| auto & tfft3d::FFT3D< T_real, GroupID, TypeID >::setSecondDecomp | ( | int | axis_npr, |
| int | axis_npc | ||
| ) |
| auto & tfft3d::FFT3D< T_real, GroupID, TypeID >::setSecondFFTOp | ( | int | fft_type | ) |
| auto & tfft3d::FFT3D< T_real, GroupID, TypeID >::setSizeAfterTrans | ( | int | nx, |
| int | ny, | ||
| int | nz | ||
| ) |
| auto & tfft3d::FFT3D< T_real, GroupID, TypeID >::setSizeBeforeTrans | ( | int | nx, |
| int | ny, | ||
| int | nz | ||
| ) |

| auto & tfft3d::FFT3D< T_real, GroupID, TypeID >::setThirdDecomp | ( | int | axis_npr, |
| int | axis_npc | ||
| ) |
| auto & tfft3d::FFT3D< T_real, GroupID, TypeID >::setThirdFFTOp | ( | int | fft_type | ) |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
inlinestaticconstexprprivate |
|
inlinestaticconstexprprivate |
|
inlinestaticconstexprprivate |
|
private |
|
private |
|
private |
|
private |