GADGET-4
pm_mpi_fft Class Reference

#include <pm_mpi_fft.h>

Inherits setcomm.

Inherited by pm_nonperiodic.

Classes

struct  fft_plan
 

Public Member Functions

 pm_mpi_fft (MPI_Comm comm)
 
void my_slab_based_fft_init (fft_plan *plan, int NgridX, int NgridY, int NgridZ)
 
void my_slab_based_fft (fft_plan *plan, void *data, void *workspace, int forward)
 
void my_slab_based_fft_free (fft_plan *plan)
 
void my_column_based_fft_init (fft_plan *plan, int NgridX, int NgridY, int NgridZ)
 
void my_column_based_fft (fft_plan *plan, void *data, void *workspace, int forward)
 
void my_column_based_fft_free (fft_plan *plan)
 
void my_slab_transposeA (fft_plan *plan, fft_real *field, fft_real *scratch)
 
void my_slab_transposeB (fft_plan *plan, fft_real *field, fft_real *scratch)
 
void my_fft_swap23 (fft_plan *plan, fft_real *data, fft_real *out)
 
void my_fft_swap13 (fft_plan *plan, fft_real *data, fft_real *out)
 
void my_fft_swap23back (fft_plan *plan, fft_real *data, fft_real *out)
 
void my_fft_swap13back (fft_plan *plan, fft_real *data, fft_real *out)
 
- Public Member Functions inherited from setcomm
 setcomm (MPI_Comm Comm)
 
 setcomm (const char *str)
 
void initcomm (MPI_Comm Comm)
 
void mpi_printf (const char *fmt,...)
 
void determine_compute_nodes (void)
 

Additional Inherited Members

- Public Attributes inherited from setcomm
MPI_Comm Communicator
 
int NTask
 
int ThisTask
 
int PTask
 
int ThisNode
 
int NumNodes = 0
 
int TasksInThisNode
 
int RankInThisNode
 
int MinTasksPerNode
 
int MaxTasksPerNode
 
long long MemoryOnNode
 
long long SharedMemoryOnNode
 

Detailed Description

Definition at line 26 of file pm_mpi_fft.h.

Constructor & Destructor Documentation

◆ pm_mpi_fft()

pm_mpi_fft ( MPI_Comm  comm)
inline

Definition at line 29 of file pm_mpi_fft.h.

Member Function Documentation

◆ my_column_based_fft()

void my_column_based_fft ( fft_plan plan,
void *  data,
void *  workspace,
int  forward 
)

◆ my_column_based_fft_free()

void my_column_based_fft_free ( fft_plan plan)

◆ my_column_based_fft_init()

void my_column_based_fft_init ( fft_plan plan,
int  NgridX,
int  NgridY,
int  NgridZ 
)

◆ my_fft_swap13()

void my_fft_swap13 ( fft_plan plan,
fft_real *  data,
fft_real *  out 
)

◆ my_fft_swap13back()

void my_fft_swap13back ( fft_plan plan,
fft_real *  data,
fft_real *  out 
)

◆ my_fft_swap23()

void my_fft_swap23 ( fft_plan plan,
fft_real *  data,
fft_real *  out 
)

◆ my_fft_swap23back()

void my_fft_swap23back ( fft_plan plan,
fft_real *  data,
fft_real *  out 
)

◆ my_slab_based_fft()

void my_slab_based_fft ( fft_plan plan,
void *  data,
void *  workspace,
int  forward 
)

◆ my_slab_based_fft_free()

void my_slab_based_fft_free ( fft_plan plan)

◆ my_slab_based_fft_init()

void my_slab_based_fft_init ( fft_plan plan,
int  NgridX,
int  NgridY,
int  NgridZ 
)

◆ my_slab_transposeA()

void my_slab_transposeA ( fft_plan plan,
fft_real *  field,
fft_real *  scratch 
)

◆ my_slab_transposeB()

void my_slab_transposeB ( fft_plan plan,
fft_real *  field,
fft_real *  scratch 
)

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