Gromacs
2026.0-dev-20250123-1eb81f7
|
#include <gromacs/domdec/domainpaircomm.h>
Setup for receiving halo coordinates from another domain and sending halo forces.
This object is used for communicating with a domain that resides in forward direction along the domain decomposition grid. The coordinates are received in place in the coordinate vector on this rank. The forces to send are read directly from the force buffer on this rank.
Public Member Functions | |
DomainCommForward (int rank, int zone, MPI_Comm mpiCommAll) | |
Constructor. More... | |
void | setup (const DomainCommBackward &send, int offsetInCoordinateBuffer) |
Sets up the forward communication, receiving the count from a remote send . More... | |
int | rank () const |
Return the remote rank we communicate with. | |
int | zone () const |
Return the zone this domain pair resides in. | |
ArrayRef< const std::pair< int, int > > | columnsReceived () const |
Returns the list of pairs of column indices and cell counts that we receive. | |
int | numAtoms () const |
The number of atoms to receive. | |
Range< int > | atomRange () const |
The atom range we store received coordinates in and send forces from. | |
MPI_Comm | mpiCommAll () const |
The MPI communicator for halo exchange. | |
gmx::DomainCommForward::DomainCommForward | ( | int | rank, |
int | zone, | ||
MPI_Comm | mpiCommAll | ||
) |
Constructor.
[in] | rank | The MPI rank we communicate with |
[in] | zone | The domain decomposition zone this pair of domains belongs to |
[in] | mpiCommAll | MPI communicator for all PP ranks |
void gmx::DomainCommForward::setup | ( | const DomainCommBackward & | send, |
int | offsetInCoordinateBuffer | ||
) |
Sets up the forward communication, receiving the count from a remote send
.
[in] | send | The send data we need to send foward |
[in] | offsetInCoordinateBuffer | The offset in the coordinate buffer for receiving coordinates |