NAMD
|
#include <ComputeGridForce.h>
Public Member Functions | |
ComputeGridForce (ComputeID c, PatchID pid) | |
virtual | ~ComputeGridForce () |
void | doForce (FullAtom *p, Results *r) |
![]() | |
ComputeHomePatch (ComputeID c, PatchID pid) | |
virtual | ~ComputeHomePatch () |
virtual void | initialize () |
virtual void | atomUpdate () |
virtual void | doWork () |
![]() | |
Compute (ComputeID) | |
int | type () |
virtual | ~Compute () |
void | setNumPatches (int n) |
int | getNumPatches () |
virtual void | patchReady (PatchID, int doneMigration, int seq) |
virtual int | noWork () |
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) |
Public Attributes | |
SubmitReduction * | reduction |
![]() | |
const ComputeID | cid |
LDObjHandle | ldObjHandle |
LocalWorkMsg *const | localWorkMsg |
Protected Member Functions | |
template<class T > | |
void | do_calc (T *grid, int gridnum, FullAtom *p, int numAtoms, Molecule *mol, Force *forces, BigReal &energy, Force &extForce, Tensor &extVirial) |
int | checkGridForceRatio () |
if fewer than half the atoms in the patch need grid forces, use a list More... | |
void | createGridForcedIdxList (int numGridForcedAtoms) |
![]() | |
void | enqueueWork () |
Protected Attributes | |
bool | useIndexList |
std::vector< std::vector< int > > | gridForcedAtomIdxList |
bool | idxChecked |
![]() | |
int | numAtoms |
Patch * | patch |
HomePatch * | homePatch |
![]() | |
int | computeType |
int | basePriority |
int | gbisPhase |
int | gbisPhasePriority [3] |
Copyright (c) 1995, 1996, 1997, 1998, 1999, 2000 by The Board of Trustees of the University of Illinois. All rights reserved.
Definition at line 17 of file ComputeGridForce.h.
Definition at line 22 of file ComputeGridForce.C.
References idxChecked, ReductionMgr::Object(), reduction, REDUCTIONS_BASIC, and ReductionMgr::willSubmit().
|
virtual |
|
protected |
if fewer than half the atoms in the patch need grid forces, use a list
Definition at line 40 of file ComputeGridForce.C.
References ResizeArray< Elem >::begin(), HomePatch::getAtomList(), Patch::getNumAtoms(), ComputeHomePatch::homePatch, CompAtomExt::id, Molecule::is_atom_gridforced(), Node::molecule, ComputeHomePatch::numAtoms, Molecule::numGridforceGrids, and Node::Object().
Referenced by doForce().
|
protected |
Definition at line 57 of file ComputeGridForce.C.
References ResizeArray< Elem >::begin(), HomePatch::getAtomList(), Patch::getNumAtoms(), gridForcedAtomIdxList, ComputeHomePatch::homePatch, CompAtomExt::id, Molecule::is_atom_gridforced(), Node::molecule, ComputeHomePatch::numAtoms, Molecule::numGridforceGrids, and Node::Object().
Referenced by doForce().
|
protected |
Definition at line 89 of file ComputeGridForce.C.
References DebugM, endi(), Patch::flags, Molecule::get_gridfrc_params(), Patch::getPatchID(), gridForcedAtomIdxList, ComputeHomePatch::homePatch, CompAtomExt::id, iout, Molecule::is_atom_gridforced(), iWARN(), Transform::j, Transform::k, Patch::lattice, ComputeHomePatch::numAtoms, outer(), CompAtom::position, Lattice::reverse_transform(), Flags::step, FullAtom::transform, useIndexList, Vector::x, Vector::y, and Vector::z.
Referenced by doForce().
Implements ComputeHomePatch.
Definition at line 225 of file ComputeGridForce.C.
References ADD_TENSOR_OBJECT, ADD_VECTOR_OBJECT, checkGridForceRatio(), createGridForcedIdxList(), DebugM, do_calc(), endi(), Results::f, GridforceGrid::fits_lattice(), Patch::flags, GridforceGrid::get_center(), GridforceGrid::get_checksize(), GridforceGrid::get_e(), GridforceGrid::get_grid_type(), Molecule::get_gridfrc_grid(), GridforceGrid::get_scale(), Patch::getNumAtoms(), Patch::getPatchID(), GF_OVERLAPCHECK_FREQ, GridforceGrid::GridforceGridTypeFull, GridforceGrid::GridforceGridTypeLite, HomePatch::gridForceIdxChecked, ComputeHomePatch::homePatch, SubmitReduction::item(), Patch::lattice, Node::molecule, NAMD_bug(), NAMD_die(), Results::normal, ComputeHomePatch::numAtoms, Molecule::numGridforceGrids, Node::Object(), reduction, REDUCTION_MISC_ENERGY, Node::simParameters, simParams, Flags::step, SubmitReduction::submit(), useIndexList, Vector::x, Vector::y, and Vector::z.
|
protected |
Definition at line 24 of file ComputeGridForce.h.
Referenced by createGridForcedIdxList(), and do_calc().
|
protected |
Definition at line 27 of file ComputeGridForce.h.
Referenced by ComputeGridForce().
SubmitReduction* ComputeGridForce::reduction |
Definition at line 34 of file ComputeGridForce.h.
Referenced by ComputeGridForce(), doForce(), and ~ComputeGridForce().
|
protected |
Definition at line 23 of file ComputeGridForce.h.