Gromacs
2026.0-dev-20250217-60d5e5b
|
#include <vector>
#include "gromacs/math/vectypes.h"
#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"
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.
Classes | |
class | gmx::DomainCommBackward |
Setup for selecting halo atoms to be sent and sending coordinates to another domain. More... | |
struct | gmx::DomainCommBackward::ColumnInfo |
Struct for collecting information on grid columns. 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, GridCounts, gmx::HaloMpiTag::GridColumns, gmx::HaloMpiTag::GridDimensions, gmx::HaloMpiTag::AtomIndices } |
MPI tags for non-blocking x and f communication. More... | |