Gromacs  2026.0-dev-20251105-11eb1db
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Public Attributes
gmx_pme_t Struct Reference

#include <gromacs/ewald/pme_internal.h>

Description

Main PME data structure.

Public Member Functions

 gmx_pme_t (const gmx::MpiComm *mpiComm)
 Constructor, can be called with nullptr, in that case a single rank comm is used.
 

Public Attributes

int ndecompdim
 
int nodeid
 
int nodeid_major
 
int nodeid_minor
 
int nnodes
 
int nnodes_major
 
int nnodes_minor
 
const gmx::MpiComm mpiCommSingleRank
 
const gmx::MpiComm & mpiComm_
 
MPI_Comm mpi_comm_d [2]
 
bool bUseThreads
 
int nthread
 
bool simulationIsParallel
 
bool haveDDAtomOrdering
 
bool bPPnode
 
bool doCoulomb
 
bool doLJ
 
bool bFEP
 
bool bFEP_q
 
bool bFEP_lj
 
int nkx
 
int nky
 
int nkz
 
bool bP3M
 
int pme_order
 
real ewaldcoeff_q
 
real ewaldcoeff_lj
 
real epsilon_r
 
int pmeGpuGridHalo = 0
 
real haloExtentForAtomDisplacement = .0
 
enum PmeRunMode runMode
 
PmeGpu * gpu
 
std::unique_ptr< EwaldBoxZScaler > boxScaler
 The scaling data Ewald uses with walls (set at pme_init constant for the entire run)
 
LongRangeVdW ljpme_combination_rule
 
int pmegrid_nx
 
int pmegrid_ny
 
int pmegrid_nz
 
int pmegrid_nz_base
 
int pmegrid_start_ix
 
int pmegrid_start_iy
 
int pmegrid_start_iz
 
std::unique_ptr< pme_spline_work > spline_work
 
std::shared_ptr< PmeGridsStorage > pmeGridsStorage
 
std::vector< PmeAndFftGridsgridsCoulomb
 
std::vector< PmeAndFftGridsgridsLJ
 
std::vector< GridsRef > gridsRefs
 
std::vector< t_complex * > cfftgrids
 
std::vector< int > nnx
 
std::vector< int > nny
 
std::vector< int > nnz
 
std::vector< realfshx
 
std::vector< realfshy
 
std::vector< realfshz
 
std::vector< PmeAtomComm > atc
 
matrix recipbox
 
real boxVolume
 
std::array< std::vector< real >
, DIM > 
bsp_mod
 
FastVector< reallb_buf1
 
FastVector< reallb_buf2
 
std::array< pme_overlap_t, 2 > overlap
 
std::unique_ptr< PmeAtomComm > atc_energy
 
std::vector< gmx::RVecbufv
 
std::vector< realbufr
 
std::unique_ptr< PmeSolvepmeSolve
 

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