Gromacs  2026.0-dev-20251109-f20ba35
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Enumerations
#include <vector>
#include "gromacs/nbnxm/grid.h"
#include "gromacs/utility/arrayref.h"
#include "gromacs/utility/defaultinitializationallocator.h"
#include "gromacs/utility/gmxassert.h"
#include "gromacs/utility/gmxmpi.h"
#include "gromacs/utility/vectypes.h"
+ Include dependency graph for domainpaircomm.h:
+ This graph shows which files directly or indirectly include this file:

Description

Declares classes for communication between domain pairs in the halo.

The DomainPairComm class is a holder for an object of type DomainPairCommBackward and an object of type DomainPairCommForward. The backward object is used to send coordinates backward along the DD grid and receive forces from the same rank/domain the coordinates were sent to. The forward object is used for receiving the coordinates and sending the forces in the other direction. Both objects couple to a ranks/domains with the same displacement vector in DD-grid coordinates but with opposite sign.

Author
Berk Hess hess@.nosp@m.kth..nosp@m.se

Classes

struct  gmx::ZoneCorners
 The upper corners of a zone, used for computing which halo clusters need to be sent. More...
 
class  gmx::DomainCommBackward
 Setup for selecting halo atoms to be sent and sending coordinates to another domain. More...
 
struct  gmx::DomainCommBackward::GridClusterRange
 Struct for storing a cluster range for a grid column. More...
 
class  gmx::DomainCommForward
 Setup for receiving halo coordinates from another domain and sending halo forces. More...
 
class  gmx::DomainPairComm
 Setup for communication between pairs of domains, both backward and forward along the DD grid. More...
 

Enumerations

enum  gmx::HaloMpiTag {
  gmx::HaloMpiTag::X, gmx::HaloMpiTag::F, gmx::HaloMpiTag::ZoneCorners, GridCounts,
  gmx::HaloMpiTag::GridColumns, gmx::HaloMpiTag::GridDimensions, gmx::HaloMpiTag::AtomIndices
}
 MPI tags for non-blocking x and f communication. More...