Gromacs  2025.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Public Attributes
gmx::PairSearch Class Reference

#include <gromacs/nbnxm/pairsearch.h>

Description

Main pair-search struct, contains the grid(s), not the pair-list(s)

Public Member Functions

void putOnGrid (const matrix box, int ddZone, const rvec lowerCorner, const rvec upperCorner, const UpdateGroupsCog *updateGroupsCog, Range< int > atomRange, const int numAtomsWithoutFillers, const real atomDensity, ArrayRef< const int32_t > atomInfo, ArrayRef< const RVec > x, const int *move, nbnxn_atomdata_t *nbat)
 Puts the atoms in ddZone on the grid and copies the coordinates to nbat.
 
void setNonLocalGrid (int gridIndex, int zone, const GridDimensions &gridDimensions, ArrayRef< const std::pair< int, int >> columns, ArrayRef< const int32_t > atomInfo, ArrayRef< const RVec > x, nbnxn_atomdata_t *nbat)
 
 PairSearch (PbcType pbcType, bool doTestParticleInsertion, const IVec *numDDCells, const DomdecZones *zones, PairlistType pairlistType, bool haveFep, bool localAtomOrderMatchesNbnxmOrder, int maxNumThreads, PinningPolicy pinningPolicy)
 Constructor. More...
 
void setLocalAtomOrder ()
 Sets the order of the local atoms to the order grid atom ordering.
 
const GridSet & gridSet () const
 Returns the set of search grids.
 
ArrayRef< const PairsearchWorkwork () const
 Returns the list of thread-local work objects.
 
ArrayRef< PairsearchWorkwork ()
 Returns the list of thread-local work objects.
 

Public Attributes

SearchCycleCounting cycleCounting_
 Cycle counting for measuring components of the search.
 

Constructor & Destructor Documentation

gmx::PairSearch::PairSearch ( PbcType  pbcType,
bool  doTestParticleInsertion,
const IVec numDDCells,
const DomdecZones *  zones,
PairlistType  pairlistType,
bool  haveFep,
bool  localAtomOrderMatchesNbnxmOrder,
int  maxNumThreads,
PinningPolicy  pinningPolicy 
)

Constructor.

Parameters
[in]pbcTypeThe periodic boundary conditions
[in]doTestParticleInsertionWhether test-particle insertion is active
[in]numDDCellsThe number of domain decomposition cells per dimension, without DD nullptr should be passed
[in]zonesThe domain decomposition zone setup, without DD nullptr should be passed
[in]pairlistTypeThe type of the pair list
[in]haveFepTells whether non-bonded interactions are perturbed
[in]localAtomOrderMatchesNbnxmOrderWhether the local atom order should match the NBNxM order
[in]maxNumThreadsThe maximum number of threads used in the search
[in]pinningPolicySets the pinning policy for all buffers used on the GPU

The documentation for this class was generated from the following files: