Gromacs  2025.0-dev-20241014-f673b97
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Functions
grid.h File Reference
#include <cstdint>
#include <memory>
#include <vector>
#include "gromacs/gpu_utils/hostallocator.h"
#include "gromacs/math/vectypes.h"
#include "gromacs/utility/alignedallocator.h"
#include "gromacs/utility/arrayref.h"
#include "gromacs/utility/basedefinitions.h"
#include "gromacs/utility/range.h"
#include "gromacs/utility/real.h"
#include "boundingbox.h"
+ Include dependency graph for grid.h:
+ This graph shows which files directly or indirectly include this file:

Description

Declares the Grid class.

This class provides functionality for setting up and accessing atoms on a grid for one domain decomposition zone. This grid is used for generating cluster pair lists for computing non-bonded pair interactions. The grid consists of a regular array of columns along dimensions x and y. Along z the number of cells and their boundaries vary between the columns. Each cell can hold one or more clusters of atoms, depending on the grid geometry, which is set by the pair-list type.

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

Classes

struct  gmx::BoundingBox1D
 Bounding box for one dimension of a grid cell. More...
 
struct  gmx::GridDimensions
 The physical dimensions of a grid. More...
 
class  gmx::Grid
 A pair-search grid object for one domain decomposition zone. More...
 
struct  gmx::Grid::Geometry
 The cluster and cell geometry of a grid. More...
 

Functions

real gmx::generateAndFill2DGrid (Grid *grid, ArrayRef< GridWork > gridWork, HostVector< int > *cells, const rvec lowerCorner, const rvec upperCorner, const UpdateGroupsCog *updateGroupsCog, Range< int > atomRange, int numGridAtomsWithoutFillers, real *atomDensity, real maxAtomGroupRadius, ArrayRef< const RVec > x, int ddZone, const int *move, bool computeGridDensityRatio)
 Sets the 2D search grid dimensions puts the atoms on the 2D grid. More...