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

#include <gromacs/mdlib/mdatoms.h>

Description

Contains a C-style t_mdatoms while managing some of its memory with C++ vectors with allocators.

Todo:
The group-scheme kernels needed a plain C-style t_mdatoms, so this type combines that with the memory management needed for efficient PME on GPU transfers. The mdatoms_ member should be removed.

Public Member Functions

t_mdatomsmdatoms ()
 Getter.
 
const t_mdatomsmdatoms () const
 Const getter.
 
void resizeChargeA (int newSize)
 Resizes memory for charges of FEP state A. More...
 
void resizeChargeB (int newSize)
 Resizes memory for charges of FEP state B. More...
 
void reserveChargeA (int newCapacity)
 Reserves memory for charges of FEP state A. More...
 
void reserveChargeB (int newCapacity)
 Reserves memory for charges of FEP state B. More...
 

Friends

std::unique_ptr< MDAtomsmakeMDAtoms (FILE *fp, const gmx_mtop_t &mtop, const t_inputrec &ir, bool rankHasPmeGpuTask)
 Builder function.
 

Member Function Documentation

void gmx::MDAtoms::reserveChargeA ( int  newCapacity)

Reserves memory for charges of FEP state A.

Exceptions
std::bad_allocIf out of memory.
void gmx::MDAtoms::reserveChargeB ( int  newCapacity)

Reserves memory for charges of FEP state B.

Exceptions
std::bad_allocIf out of memory.
void gmx::MDAtoms::resizeChargeA ( int  newSize)

Resizes memory for charges of FEP state A.

Exceptions
std::bad_allocIf out of memory.
void gmx::MDAtoms::resizeChargeB ( int  newSize)

Resizes memory for charges of FEP state B.

Exceptions
std::bad_allocIf out of memory.

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