ComputeHomePatches Class Reference

#include <ComputeHomePatches.h>

Inheritance diagram for ComputeHomePatches:

Compute ComputeEwald ComputeExt ComputeFmmSerial ComputeFullDirect ComputeGBISser ComputeGlobal ComputeMoa ComputeMsm ComputeMsmSerial ComputeQM ComputeTclBC OptPmeCompute List of all members.

Public Member Functions

 ComputeHomePatches (ComputeID c)
virtual ~ComputeHomePatches ()
virtual void initialize ()
virtual void atomUpdate ()
FlagsgetFlags (void)

Protected Attributes

int useAvgPositions
int hasPatchZero
ComputeHomePatchList patchList
PatchMappatchMap

Detailed Description

Definition at line 72 of file ComputeHomePatches.h.


Constructor & Destructor Documentation

ComputeHomePatches::ComputeHomePatches ( ComputeID  c  ) 

Definition at line 18 of file ComputeHomePatches.C.

References hasPatchZero, PatchMap::Object(), patchMap, and useAvgPositions.

00018                                                   : Compute(c) {
00019   patchMap = PatchMap::Object();
00020   useAvgPositions = 0;
00021   hasPatchZero = 0;
00022 }

ComputeHomePatches::~ComputeHomePatches (  )  [virtual]

Definition at line 24 of file ComputeHomePatches.C.

00025 {
00026   ;
00027 }


Member Function Documentation

void ComputeHomePatches::atomUpdate (  )  [virtual]

Reimplemented from Compute.

Definition at line 44 of file ComputeHomePatches.C.

References Compute::atomUpdate().

00045 {
00046   Compute::atomUpdate();
00047 }

Flags* ComputeHomePatches::getFlags ( void   )  [inline]

Definition at line 86 of file ComputeHomePatches.h.

References patchList.

00086 { return &(patchList[0].p->flags); }

void ComputeHomePatches::initialize (  )  [virtual]

Reimplemented from Compute.

Reimplemented in ComputeQM.

Definition at line 29 of file ComputeHomePatches.C.

References UniqueSortedArray< Elem >::add(), ResizeArrayIter< T >::begin(), ResizeArrayIter< T >::end(), hasPatchZero, PatchMap::homePatchList(), patchList, patchMap, ResizeArray< Elem >::resize(), Compute::setNumPatches(), ResizeArray< Elem >::size(), and useAvgPositions.

Referenced by ComputeQM::initialize().

00030 {
00031   HomePatchList *a = patchMap->homePatchList();
00032   ResizeArrayIter<HomePatchElem> ai(*a);
00033 
00034   patchList.resize(0);
00035 
00036   for ( ai = ai.begin(); ai != ai.end(); ai++ ) {
00037     patchList.add(PatchElem((*ai).patch, this, useAvgPositions));
00038     if ( (*ai).patch->getPatchID() == 0 ) hasPatchZero = 1;
00039   }
00040 
00041   setNumPatches(patchList.size());
00042 }


Member Data Documentation

int ComputeHomePatches::hasPatchZero [protected]

Definition at line 75 of file ComputeHomePatches.h.

Referenced by ComputeHomePatches(), ComputeTclBC::doWork(), ComputeGlobal::doWork(), and initialize().

ComputeHomePatchList ComputeHomePatches::patchList [protected]

Definition at line 77 of file ComputeHomePatches.h.

Referenced by OptPmeCompute::doWork(), ComputeTclBC::doWork(), ComputeQM::doWork(), ComputeMsmSerial::doWork(), ComputeMsm::doWork(), ComputeGlobal::doWork(), ComputeGBISser::doWork(), ComputeFmmSerial::doWork(), ComputeExt::doWork(), ComputeEwald::doWork(), OptPmeCompute::doWorkOnPeer(), getFlags(), initialize(), ComputeQM::processFullQM(), ComputeGlobal::recvResults(), ComputeQM::saveResults(), ComputeMsmSerial::saveResults(), ComputeMsm::saveResults(), ComputeGBISser::saveResults(), ComputeFmmSerial::saveResults(), ComputeExt::saveResults(), OptPmeCompute::sendPencils(), OptPmeCompute::ungridForces_compute(), and OptPmeCompute::ungridForces_finalize().

PatchMap* ComputeHomePatches::patchMap [protected]

Definition at line 79 of file ComputeHomePatches.h.

Referenced by ComputeHomePatches(), OptPmeMgr::initialize(), initialize(), OptPmeMgr::initialize_pencils(), and OptPmeMgr::ungridCalc().

int ComputeHomePatches::useAvgPositions [protected]

Definition at line 74 of file ComputeHomePatches.h.

Referenced by ComputeFullDirect::ComputeFullDirect(), ComputeHomePatches(), initialize(), and OptPmeCompute::OptPmeCompute().


The documentation for this class was generated from the following files:
Generated on Mon Nov 20 01:17:16 2017 for NAMD by  doxygen 1.4.7