NAMD
Public Member Functions | List of all members
CudaPmeAtomStorage Class Reference
Inheritance diagram for CudaPmeAtomStorage:
PmeAtomStorage

Public Member Functions

 CudaPmeAtomStorage (const bool useIndex)
 
 ~CudaPmeAtomStorage ()
 
- Public Member Functions inherited from PmeAtomStorage
 PmeAtomStorage (const bool useIndex)
 
virtual ~PmeAtomStorage ()
 
int addAtoms (const int natom, const CudaAtom *src, const std::vector< float *> &lambdaArrays)
 
int addAtomsWithIndex (const int natom, const CudaAtom *src, const int *index, const std::vector< float *> &lambdaArrays)
 
void finish ()
 
void clear ()
 
CudaAtomgetAtoms ()
 
float * getAtomElecFactors (unsigned int iGrid)
 
void setupAlch (const SimParameters &simParams)
 
int * getPatchPos ()
 
int getNumPatches ()
 
int getNumAtoms ()
 
int * getAtomIndex ()
 

Additional Inherited Members

- Protected Attributes inherited from PmeAtomStorage
CudaAtomatom
 
int * atomIndex
 
CudaAtomoverflowAtom
 
int * overflowAtomIndex
 
std::vector< float * > atomElecFactorArrays
 
std::vector< float * > overflowAtomElecFactorArrays
 
std::vector< int > overflowAtomElecFactorCapacities
 
std::vector< bool > enabledGrid
 
unsigned int totalFactorArrays
 
bool alchOn
 
bool alchFepOn
 
bool alchDecouple
 

Detailed Description

Definition at line 45 of file ComputePmeCUDAMgr.C.

Constructor & Destructor Documentation

◆ CudaPmeAtomStorage()

CudaPmeAtomStorage::CudaPmeAtomStorage ( const bool  useIndex)
inline

Definition at line 47 of file ComputePmeCUDAMgr.C.

47 : PmeAtomStorage(useIndex) {}
PmeAtomStorage(const bool useIndex)

◆ ~CudaPmeAtomStorage()

CudaPmeAtomStorage::~CudaPmeAtomStorage ( )
inline

Definition at line 48 of file ComputePmeCUDAMgr.C.

References PmeAtomStorage::alchOn, PmeAtomStorage::atom, PmeAtomStorage::atomElecFactorArrays, PmeAtomStorage::atomIndex, PmeAtomStorage::overflowAtom, PmeAtomStorage::overflowAtomElecFactorArrays, PmeAtomStorage::overflowAtomIndex, and PmeAtomStorage::totalFactorArrays.

48  {
49  if (atom != NULL) dealloc_((void *)atom);
50  if (atomIndex != NULL) dealloc_((void *)atomIndex);
51  if (overflowAtom != NULL) dealloc_((void *)overflowAtom);
52  if (overflowAtomIndex != NULL) dealloc_((void *)overflowAtomIndex);
53  if (alchOn) {
54  for (unsigned int i = 0; i < totalFactorArrays; ++i) {
55  if (atomElecFactorArrays[i] != NULL) dealloc_((void *)(atomElecFactorArrays[i]));
56  if (overflowAtomElecFactorArrays[i] != NULL) dealloc_((void *)(overflowAtomElecFactorArrays[i]));
57  }
58  }
59  }
CudaAtom * overflowAtom
unsigned int totalFactorArrays
std::vector< float * > overflowAtomElecFactorArrays
std::vector< float * > atomElecFactorArrays

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