Gromacs  2026.0-dev-20250113-1a1a8db
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Attributes
PmeGpuAtomParams Struct Reference

#include <gromacs/ewald/pme_gpu_types.h>

Description

A GPU data structure for storing the PME data of the atoms, local to this process' domain partition. This only has to be updated every DD step.

Public Attributes

int nAtoms
 Number of local atoms.
 
DeviceBuffer< gmx::RVecd_coordinates
 Global GPU memory array handle with input rvec atom coordinates. The coordinates themselves change and need to be copied to the GPU for every PME computation, but reallocation happens only at DD.
 
DeviceBuffer< float > d_coefficients [2]
 Global GPU memory array handle with input atom charges in states A and B. The charges only need to be reallocated and copied to the GPU at DD step.
 
DeviceBuffer< gmx::RVecd_forces
 Global GPU memory array handle with input/output rvec atom forces. The forces change and need to be copied from (and possibly to) the GPU for every PME computation, but reallocation happens only at DD.
 
DeviceBuffer< int > d_gridlineIndices
 Global GPU memory array handle with ivec atom gridline indices. Computed on GPU in the spline calculation part.
 
DeviceBuffer< float > d_theta
 Global GPU memory array handle with B-spline values.
 
DeviceBuffer< float > d_dtheta
 Global GPU memory array handle with B-spline derivative values.
 

The documentation for this struct was generated from the following file: