Gromacs
2026.0-dev-20250217-60d5e5b
|
#include "gmxpre.h"
#include "config.h"
#include <assert.h>
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <algorithm>
#include "gromacs/domdec/domdec.h"
#include "gromacs/domdec/domdec_network.h"
#include "gromacs/domdec/domdec_struct.h"
#include "gromacs/math/vec.h"
#include "gromacs/mdlib/gmx_omp_nthreads.h"
#include "gromacs/mdtypes/forcerec.h"
#include "gromacs/mdtypes/state.h"
#include "gromacs/nbnxm/atomdata.h"
#include "gromacs/nbnxm/grid.h"
#include "gromacs/nbnxm/nbnxm.h"
#include "gromacs/utility/fatalerror.h"
#include "gromacs/utility/gmxassert.h"
#include "gromacs/utility/gmxmpi.h"
#include "domainpaircomm.h"
#include "domdec_internal.h"
#include "ga2la.h"
#include "haloexchange.h"
#include "utility.h"
Implements the setup() method for the HaloCommunication class.
Functions | |
template<typename T > | |
void | gmx::anonymous_namespace{haloexchangesetup.cpp}::ddSendReceive (const DomainCommBackward &domainCommBackward, const DomainCommForward &domainCommForward, const int direction, const T *sendBuffer, const int numElementsToSend, T *receiveBuffer, const int numElementsToReceive, const HaloMpiTag tag) |
Move data of type T forward or backward between zones. More... | |
IVec | gmx::anonymous_namespace{haloexchangesetup.cpp}::pbcDDCoord (const IVec &ddCoord, const IVec &numDDCells) |
Returns ddCoord with each value within (0, numDDCells[] - 1) by applying modulo. | |
bool | gmx::anonymous_namespace{haloexchangesetup.cpp}::isMissingALink (const ArrayRef< const int > &links, const gmx_ga2la_t &ga2la) |
std::vector< bool > | gmx::anonymous_namespace{haloexchangesetup.cpp}::flagCellsForBondcomm (const gmx_domdec_t &dd, const ArrayRef< const int32_t > atinfo, const nonbonded_verlet_t &nbv) |
Return a list of of bools for grid cells, which tell if a cell has non-local bonded interactions. | |
void | gmx::anonymous_namespace{haloexchangesetup.cpp}::ddSetAtominfo (ArrayRef< const int > globalAtomIndices, const int atomStart, int atomEnd, t_forcerec *fr) |
Sets the atom info structures. | |
IVec | gmx::anonymous_namespace{haloexchangesetup.cpp}::getDomainCommunicationRange (const gmx_domdec_t &dd) |
Returns the maximum domain communication range, indexed by DD dimension index. | |