NAMD
|
#include <ComputePme.h>
Public Member Functions | |
ComputePme (ComputeID c, PatchID pid) | |
virtual | ~ComputePme () |
void | initialize () |
void | atomUpdate () |
int | noWork () |
void | doWork () |
void | doQMWork () |
void | ungridForces () |
void | setMgr (ComputePmeMgr *mgr) |
![]() | |
Compute (ComputeID) | |
int | type () |
virtual | ~Compute () |
void | setNumPatches (int n) |
int | getNumPatches () |
virtual void | patchReady (PatchID, int doneMigration, int seq) |
virtual void | finishPatch (int) |
int | sequence (void) |
int | priority (void) |
int | getGBISPhase (void) |
virtual void | gbisP2PatchReady (PatchID, int seq) |
virtual void | gbisP3PatchReady (PatchID, int seq) |
![]() | |
ComputePmeUtil () | |
~ComputePmeUtil () | |
Friends | |
class | ComputePmeMgr |
Additional Inherited Members | |
![]() | |
static void | select (void) |
![]() | |
const ComputeID | cid |
LDObjHandle | ldObjHandle |
LocalWorkMsg *const | localWorkMsg |
![]() | |
static int | numGrids |
static Bool | alchOn |
static Bool | alchFepOn |
static Bool | alchThermIntOn |
static Bool | alchDecouple |
static BigReal | alchElecLambdaStart |
static Bool | lesOn |
static int | lesFactor |
static Bool | pairOn |
static Bool | selfOn |
![]() | |
void | enqueueWork () |
![]() | |
int | computeType |
int | basePriority |
int | gbisPhase |
int | gbisPhasePriority [3] |
Definition at line 46 of file ComputePme.h.
Definition at line 2703 of file ComputePme.C.
References Compute::basePriority, DebugM, PmeGrid::dim2, PmeGrid::dim3, PmeGrid::K1, PmeGrid::K2, PmeGrid::K3, ComputePmeUtil::numGrids, Node::Object(), PmeGrid::order, PME_PRIORITY, Compute::setNumPatches(), Node::simParameters, and simParams.
|
virtual |
Definition at line 2976 of file ComputePme.C.
|
virtual |
Reimplemented from Compute.
Definition at line 2701 of file ComputePme.C.
void ComputePme::doQMWork | ( | ) |
Definition at line 3069 of file ComputePme.C.
References doWork(), Molecule::get_numQMAtoms(), Molecule::get_qmAtmChrg(), Molecule::get_qmAtmIndx(), Molecule::get_qmAtomGroup(), Patch::getCompAtomExtInfo(), Patch::getNumAtoms(), Node::molecule, and Node::Object().
|
virtual |
Reimplemented from Compute.
Definition at line 3127 of file ComputePme.C.
References ComputePmeMgr::a_data_dev, ComputePmeMgr::a_data_host, ComputePmeUtil::alchDecouple, ComputePmeUtil::alchOn, Compute::basePriority, ResizeArray< Elem >::begin(), PmeParticle::cg, CompAtom::charge, ComputePmeMgr::chargeGridReady(), Compute::cid, Box< Owner, Data >::close(), COMPUTE_HOME_PRIORITY, COULOMB, ComputePmeMgr::cuda_atoms_alloc, ComputePmeMgr::cuda_atoms_count, ComputePmeMgr::cuda_busy, cuda_errcheck(), ComputePmeMgr::cuda_lock, ComputePmeMgr::cuda_submit_charges(), ComputePmeMgr::cuda_submit_charges_deque, DebugM, deviceCUDA, ComputeNonbondedUtil::dielectric_1, Flags::doMolly, ComputeNonbondedUtil::ewaldcof, PmeRealSpace::fill_charges(), Patch::flags, DeviceCUDA::getDeviceID(), DeviceCUDA::getMasterPe(), Patch::getNumAtoms(), PmeGrid::K1, PmeGrid::K2, PmeGrid::K3, Flags::lattice, ComputePmeMgr::cuda_submit_charges_args::lattice, ComputePmeUtil::lesOn, ComputePmeMgr::cuda_submit_charges_args::mgr, NAMD_bug(), ComputePmeUtil::numGrids, Box< Owner, Data >::open(), PmeGrid::order, ComputePmeUtil::pairOn, CompAtom::partition, PATCH_PRIORITY, PME_OFFLOAD_PRIORITY, PME_PRIORITY, ComputePmeMgr::pmeComputes, CompAtom::position, ResizeArray< Elem >::resize(), scale_coordinates(), ComputeNonbondedUtil::scaling, ComputePmeUtil::selfOn, Compute::sequence(), ComputePmeMgr::cuda_submit_charges_args::sequence, PmeRealSpace::set_num_atoms(), ResizeArray< Elem >::size(), SQRT_PI, ComputePmeMgr::submitReductions(), TRACE_COMPOBJ_IDOFFSET, ungridForces(), PmeParticle::x, Vector::x, PmeParticle::y, Vector::y, PmeParticle::z, and Vector::z.
Referenced by doQMWork().
|
virtual |
Reimplemented from Compute.
Definition at line 2742 of file ComputePme.C.
References ComputePmeMgr::cuda_atoms_count, Patch::getNumAtoms(), NAMD_bug(), PatchMap::Object(), Patch::registerAvgPositionPickup(), Patch::registerForceDeposit(), and Patch::registerPositionPickup().
|
virtual |
Reimplemented from Compute.
Definition at line 3030 of file ComputePme.C.
References ResizeArray< Elem >::add(), Flags::doFullElectrostatics, Patch::flags, ComputePmeMgr::pmeComputes, ResizeArray< Elem >::size(), Box< Owner, Data >::skip(), and SubmitReduction::submit().
|
inline |
Definition at line 56 of file ComputePme.h.
void ComputePme::ungridForces | ( | ) |
Definition at line 4043 of file ComputePme.C.
References ADD_VECTOR_OBJECT, ComputePmeUtil::alchDecouple, ComputePmeUtil::alchFepOn, ComputePmeUtil::alchOn, ResizeArray< Elem >::begin(), Box< Owner, Data >::close(), PmeRealSpace::compute_forces(), endi(), Results::f, Patch::flags, Patch::getNumAtoms(), iERROR(), iout, Flags::lattice, ComputePmeUtil::lesFactor, ComputePmeUtil::lesOn, NAMD_bug(), ComputePmeUtil::numGrids, Node::Object(), Box< Owner, Data >::open(), ComputePmeUtil::pairOn, ResizeArray< Elem >::resize(), scale_forces(), ComputePmeUtil::selfOn, Compute::sequence(), Node::simParameters, simParams, Results::slow, Flags::step, Vector::x, Vector::y, and Vector::z.
Referenced by doWork().
|
friend |
Definition at line 58 of file ComputePme.h.