NAMD
|
#include <HomePatch.h>
Classes | |
struct | checkpoint_t |
struct | RattleList |
Public Attributes | |
int | marginViolations |
bool | gridForceIdxChecked |
std::vector< int > | settleList |
std::vector< RattleList > | rattleList |
std::vector< RattleParam > | rattleParam |
std::vector< int > | noconstList |
bool | rattleListValid |
bool | rattleListValid_SOA |
std::vector< Vector > | velNew |
std::vector< Vector > | posNew |
int | checkpoint_task |
std::map< std::string, checkpoint_t * > | checkpoints |
int | exchange_dst |
int | exchange_src |
int | exchange_req |
ExchangeAtomsMsg * | exchange_msg |
LDObjHandle | ldObjHandle |
![]() | |
Lattice & | lattice |
Flags | flags |
Protected Member Functions | |
virtual void | boxClosed (int) |
void | doPairlistCheck () |
void | doGroupSizeCheck () |
void | doGroupSizeCheck_SOA () |
void | doMarginCheck () |
void | doMarginCheck_SOA () |
void | doAtomMigration () |
Friends | |
class | PatchMgr |
class | Sequencer |
class | SequencerCUDA |
class | ComputeGlobal |
Definition at line 329 of file HomePatch.h.
HomePatch::~HomePatch | ( | ) |
Definition at line 357 of file HomePatch.C.
References Patch::atomMapper, ResizeArray< Elem >::begin(), ResizeArray< Elem >::end(), and AtomMapper::unregisterIDsFullAtom().
void HomePatch::addForceToMomentum | ( | FullAtom *__restrict | atom_arr, |
const Force *__restrict | force_arr, | ||
const BigReal | dt, | ||
int | num_atoms | ||
) |
Definition at line 3315 of file HomePatch.C.
References Node::Object(), Node::simParameters, and simParams.
Referenced by Sequencer::addForceToMomentum().
void HomePatch::addForceToMomentum3 | ( | FullAtom *__restrict | atom_arr, |
const Force *__restrict | force_arr1, | ||
const Force *__restrict | force_arr2, | ||
const Force *__restrict | force_arr3, | ||
const BigReal | dt1, | ||
const BigReal | dt2, | ||
const BigReal | dt3, | ||
int | num_atoms | ||
) |
Definition at line 3344 of file HomePatch.C.
References Node::Object(), Node::simParameters, and simParams.
Referenced by Sequencer::addForceToMomentum3().
Definition at line 3774 of file HomePatch.C.
References Patch::f, Results::normal, Patch::numAtoms, outer(), and velNew.
Referenced by rattle1().
void HomePatch::addVelocityToPosition | ( | FullAtom *__restrict | atom_arr, |
const BigReal | dt, | ||
int | num_atoms | ||
) |
Definition at line 3383 of file HomePatch.C.
References Node::Object(), Node::simParameters, and simParams.
Referenced by Sequencer::addVelocityToPosition().
|
protectedvirtual |
Implements Patch.
Definition at line 370 of file HomePatch.C.
References Sequencer::awaken(), Patch::boxesOpen, DebugM, Patch::dEdaSumBox, Flags::doGBIS, Flags::doNonbonded, Patch::f, Patch::flags, ExtForce::force, OwnerBox< Owner, Data >::isOpen(), Results::maxNumForces, Results::normal, Patch::numAtoms, Node::Object(), Patch::patchID, Patch::psiSumBox, Node::simParameters, simParams, and ResizeArray< Elem >::size().
void HomePatch::buildRattleList | ( | ) |
Definition at line 3612 of file HomePatch.C.
References RattleParam::dsq, Patch::flags, getWaterModelGroupSize(), RattleParam::ia, RattleParam::ib, HomePatch::RattleList::icnt, HomePatch::RattleList::ig, NAMD_die(), noconstList, Patch::numAtoms, Node::Object(), Patch::patchID, posNew, rattleList, rattleParam, RattleParam::rma, RattleParam::rmb, settle1init(), settleList, Node::simParameters, simParams, Flags::step, SWM4, and velNew.
Referenced by rattle1().
void HomePatch::buildRattleList_SOA | ( | ) |
Definition at line 4516 of file HomePatch.C.
References RattleParam::dsq, Patch::flags, getWaterModelGroupSize(), PatchDataSOA::hydrogenGroupSize, RattleParam::ia, RattleParam::ib, HomePatch::RattleList::icnt, HomePatch::RattleList::ig, PatchDataSOA::mass, noconstList, Patch::numAtoms, Node::Object(), Patch::patchID, PatchDataSOA::pos_x, PatchDataSOA::pos_y, PatchDataSOA::pos_z, rattleList, rattleParam, PatchDataSOA::recipMass, PatchDataSOA::rigidBondLength, RattleParam::rma, RattleParam::rmb, settle1init(), Node::simParameters, simParams, Flags::step, and SWM4.
Referenced by depositMigration(), rattle1_SOA(), recvCheckpointLoad(), recvExchangeMsg(), and revert().
void HomePatch::buildSpanningTree | ( | void | ) |
Definition at line 715 of file HomePatch.C.
References ResizeArray< Elem >::begin(), compDistance(), ResizeArray< Elem >::end(), ResizeArray< Elem >::find(), NAMD_bug(), PatchMap::numNodesWithPatches(), PatchMap::numPatchesOnNode(), PatchMap::Object(), Patch::patchID, proxySpanDim, ResizeArray< Elem >::resize(), sendSpanningTree(), ResizeArray< Elem >::setall(), ResizeArray< Elem >::size(), and ResizeArray< Elem >::swap().
Referenced by ProxyMgr::buildProxySpanningTree().
void HomePatch::checkpoint | ( | void | ) |
Definition at line 5216 of file HomePatch.C.
References ResizeArray< Elem >::copy(), and Patch::lattice.
Referenced by Sequencer::algorithm().
void HomePatch::depositMigration | ( | MigrateAtomsMsg * | msg | ) |
Definition at line 5956 of file HomePatch.C.
References ResizeArray< Elem >::add(), Lattice::apply_transform(), Sequencer::awaken(), ResizeArray< Elem >::begin(), buildRattleList_SOA(), DebugM, ResizeArray< Elem >::end(), CompAtom::hydrogenGroupSize, CompAtomExt::id, inMigration, Patch::lattice, FullAtom::migrationGroupSize, MigrateAtomsMsg::migrationList, msgbuf, Lattice::nearest(), Patch::numAtoms, numMlBuf, Node::Object(), Patch::patchID, CompAtom::position, rattleListValid_SOA, Lattice::reverse_transform(), RIGID_NONE, Node::simParameters, simParams, ResizeArray< Elem >::size(), and FullAtom::transform.
Referenced by MigrateAtomsCombinedMsg::distribute(), and doAtomMigration().
|
protected |
Definition at line 5792 of file HomePatch.C.
References ResizeArray< Elem >::add(), Patch::atomMapper, ResizeArray< Elem >::begin(), DebugM, ResizeArray< Elem >::del(), depositMigration(), ResizeArray< Elem >::end(), Patch::getPatchID(), CompAtom::hydrogenGroupSize, CompAtomExt::id, inMigration, Patch::lattice, marginViolations, FullAtom::migrationGroupSize, MigrationInfo::mList, msgbuf, NAMD_EVENT_START_EX, NAMD_EVENT_STOP, NamdProfileEventStr, Patch::numAtoms, numMlBuf, PatchMgr::Object(), Patch::patchID, CompAtom::position, ResizeArray< Elem >::resize(), Lattice::scale(), PatchMgr::sendMigrationMsgs(), ResizeArray< Elem >::size(), Sequencer::suspend(), AtomMapper::unregisterIDsFullAtom(), Vector::x, Vector::y, and Vector::z.
Referenced by positionsReady(), and positionsReady_SOA().
|
protected |
Definition at line 5584 of file HomePatch.C.
References ResizeArray< Elem >::begin(), Flags::doNonbonded, ResizeArray< Elem >::end(), Patch::flags, CompAtom::hydrogenGroupSize, Flags::maxGroupRadius, NAMD_bug(), CompAtom::nonbondedGroupSize, Node::Object(), CompAtom::position, Node::simParameters, simParams, Vector::x, Vector::y, and Vector::z.
Referenced by positionsReady().
|
protected |
Definition at line 5531 of file HomePatch.C.
References Flags::doNonbonded, Patch::flags, PatchDataSOA::hydrogenGroupSize, Flags::maxGroupRadius, NAMD_bug(), PatchDataSOA::nonbondedGroupSize, Patch::numAtoms, Node::Object(), PatchDataSOA::pos_x, PatchDataSOA::pos_y, PatchDataSOA::pos_z, Node::simParameters, and simParams.
Referenced by positionsReady_SOA().
|
protected |
Definition at line 5715 of file HomePatch.C.
References Lattice::a(), Lattice::a_r(), Lattice::b(), Lattice::b_r(), ResizeArray< Elem >::begin(), Lattice::c(), Lattice::c_r(), ResizeArray< Elem >::end(), Patch::lattice, marginViolations, NAMD_die(), Node::Object(), CompAtom::position, Lattice::scale(), Node::simParameters, simParams, Vector::unit(), Vector::x, Vector::y, and Vector::z.
Referenced by positionsReady().
|
protected |
Definition at line 5633 of file HomePatch.C.
References Lattice::a(), Lattice::a_r(), Lattice::b(), Lattice::b_r(), Lattice::c(), Lattice::c_r(), Patch::lattice, marginViolations, NAMD_die(), Patch::numAtoms, Node::Object(), PatchDataSOA::pos_x, PatchDataSOA::pos_y, PatchDataSOA::pos_z, Lattice::scale(), Node::simParameters, simParams, Vector::unit(), Vector::x, Vector::y, and Vector::z.
Referenced by positionsReady_SOA().
|
protected |
Definition at line 5432 of file HomePatch.C.
References ResizeArray< Elem >::begin(), Patch::flags, Patch::getPatchID(), Patch::lattice, Vector::length2(), Flags::maxAtomMovement, NAMD_EVENT_START_EX, NAMD_EVENT_STOP, NamdProfileEventStr, Patch::numAtoms, Node::Object(), Patch::p, Flags::pairlistTolerance, CompAtom::position, ResizeArray< Elem >::resize(), Flags::savePairlists, Node::simParameters, simParams, Lattice::unscale(), Flags::usePairlists, Vector::x, Vector::y, and Vector::z.
Referenced by positionsReady(), and positionsReady_SOA().
void HomePatch::exchangeAtoms | ( | int | scriptTask | ) |
Definition at line 5364 of file HomePatch.C.
References ExchangeAtomsMsg::atoms, ResizeArray< Elem >::begin(), exchange_dst, exchange_msg, exchange_req, exchange_src, ExchangeAtomsMsg::lattice, Patch::lattice, ExchangeAtomsMsg::numAtoms, Patch::numAtoms, Node::Object(), PatchMgr::Object(), Patch::patchID, ExchangeAtomsMsg::pid, recvExchangeReq(), SCRIPT_ATOMRECV, SCRIPT_ATOMSEND, SCRIPT_ATOMSENDRECV, PatchMgr::sendExchangeReq(), Node::simParameters, and simParams.
Referenced by Sequencer::algorithm().
void HomePatch::exchangeCheckpoint | ( | int | scriptTask, |
int & | bpc | ||
) |
Definition at line 5257 of file HomePatch.C.
References checkpoint_task, Node::Object(), PatchMgr::Object(), Patch::patchID, PatchMgr::sendCheckpointReq(), Node::simParameters, and simParams.
Referenced by Sequencer::algorithm().
void HomePatch::gbisComputeAfterP1 | ( | ) |
Definition at line 4909 of file HomePatch.C.
References Patch::bornRad, Patch::flags, gbisP2Ready(), Patch::intRad, Patch::numAtoms, Node::Object(), Patch::pExt, Patch::psiFin, Patch::psiSum, Flags::sequence, Node::simParameters, and simParams.
Referenced by Sequencer::runComputeObjects().
void HomePatch::gbisComputeAfterP2 | ( | ) |
Definition at line 4937 of file HomePatch.C.
References Patch::bornRad, COULOMB, Patch::dEdaSum, Patch::dHdrPrefix, Patch::flags, gbisP3Ready(), Patch::intRad, Patch::numAtoms, Node::Object(), Patch::pExt, Patch::psiFin, Flags::sequence, Node::simParameters, and simParams.
Referenced by Sequencer::runComputeObjects().
void HomePatch::gbisP2Ready | ( | ) |
Definition at line 4981 of file HomePatch.C.
References ResizeArray< Elem >::begin(), ProxyGBISP2DataMsg::bornRad, Patch::bornRad, ProxyGBISP2DataMsg::destPe, Patch::flags, GB2_PROXY_DATA_PRIORITY, Patch::gbisP2Ready(), Patch::numAtoms, ProxyGBISP2DataMsg::origPe, ProxyGBISP2DataMsg::patch, PATCH_PRIORITY, Patch::patchID, PRIORITY_SIZE, Flags::sequence, SET_PRIORITY, and ResizeArray< Elem >::size().
Referenced by gbisComputeAfterP1().
void HomePatch::gbisP3Ready | ( | ) |
Definition at line 5001 of file HomePatch.C.
References ResizeArray< Elem >::begin(), ProxyGBISP3DataMsg::destPe, ProxyGBISP3DataMsg::dHdrPrefix, Patch::dHdrPrefix, ProxyGBISP3DataMsg::dHdrPrefixLen, Flags::doFullElectrostatics, Patch::flags, GB3_PROXY_DATA_PRIORITY, Patch::gbisP3Ready(), Patch::numAtoms, ProxyGBISP3DataMsg::origPe, ProxyGBISP3DataMsg::patch, PATCH_PRIORITY, Patch::patchID, PRIORITY_SIZE, Flags::sequence, SET_PRIORITY, and ResizeArray< Elem >::size().
Referenced by gbisComputeAfterP2().
|
inline |
Definition at line 528 of file HomePatch.h.
Referenced by ComputeGridForce::checkGridForceRatio(), ComputeGridForce::createGridForcedIdxList(), ComputeHomePatch::doWork(), dumpbench(), and ComputeLonepairsCUDA::updateAtoms().
|
inline |
Definition at line 530 of file HomePatch.h.
|
inline |
Definition at line 529 of file HomePatch.h.
int HomePatch::hardWallDrude | ( | const BigReal | timestep, |
Tensor * | virial, | ||
SubmitReduction * | ppreduction | ||
) |
Definition at line 3406 of file HomePatch.C.
References BOLTZMANN, Lattice::c(), endi(), iERROR(), iout, SubmitReduction::item(), Patch::lattice, Node::molecule, Patch::numAtoms, Node::Object(), Lattice::origin(), outer(), partition(), Node::simParameters, simParams, TIMEFACTOR, Vector::x, Tensor::xx, Vector::y, Tensor::yy, Vector::z, and Tensor::zz.
Referenced by Sequencer::hardWallDrude().
void HomePatch::loweAndersenFinish | ( | ) |
Definition at line 4875 of file HomePatch.C.
References DebugM, ResizeArray< Elem >::resize(), and Patch::v.
Referenced by Sequencer::runComputeObjects().
void HomePatch::loweAndersenVelocities | ( | ) |
Definition at line 4860 of file HomePatch.C.
References DebugM, Node::molecule, Patch::numAtoms, Node::Object(), ResizeArray< Elem >::resize(), Node::simParameters, simParams, and Patch::v.
Referenced by positionsReady(), and positionsReady_SOA().
Definition at line 4378 of file HomePatch.C.
References ResizeArray< Elem >::begin(), endi(), Patch::f, getWaterModelGroupSize(), iout, iWARN(), Node::molecule, NAMD_bug(), NAMD_die(), Results::normal, Patch::numAtoms, Node::Object(), outer(), settle2(), Node::simParameters, simParams, SWM4, TIMEFACTOR, TIP4, Vector::x, Vector::y, and Vector::z.
Referenced by Sequencer::newMinimizeDirection(), and Sequencer::submitMinimizeReductions().
void HomePatch::mollyAverage | ( | ) |
Definition at line 5079 of file HomePatch.C.
References average(), endi(), iout, iWARN(), Node::molecule, NAMD_die(), Patch::numAtoms, Node::Object(), Patch::p, Patch::p_avg, ResizeArray< Elem >::resize(), Node::simParameters, and simParams.
Referenced by positionsReady(), and positionsReady_SOA().
void HomePatch::mollyMollify | ( | Tensor * | virial | ) |
Definition at line 5153 of file HomePatch.C.
References Patch::f, Node::molecule, mollify(), NAMD_die(), Patch::numAtoms, Node::Object(), outer(), Patch::p_avg, ResizeArray< Elem >::resize(), Node::simParameters, simParams, and Results::slow.
Referenced by Sequencer::runComputeObjects().
void HomePatch::positionsReady | ( | int | doMigration = 0 | ) |
Definition at line 1895 of file HomePatch.C.
References ProxyDataMsg::avgPlLen, ProxyDataMsg::avgPositionList, Patch::avgPositionPtrBegin, Patch::avgPositionPtrEnd, ResizeArray< Elem >::begin(), CompAtom::charge, COULOMB, ProxyDataMsg::cudaAtomList, Patch::cudaAtomPtr, DebugM, ComputeNonbondedUtil::dielectric_1, doAtomMigration(), Flags::doGBIS, doGroupSizeCheck(), Flags::doLCPO, Flags::doLoweAndersen, doMarginCheck(), Flags::doMolly, doPairlistCheck(), ResizeArray< Elem >::end(), ProxyDataMsg::flags, Patch::flags, Patch::getPatchID(), gridForceIdxChecked, Patch::intRad, ProxyDataMsg::intRadList, Patch::lattice, Patch::lcpoType, ProxyDataMsg::lcpoTypeList, loweAndersenVelocities(), mollyAverage(), NAMD_EVENT_START, NAMD_EVENT_START_EX, NAMD_EVENT_STOP, NamdProfileEventStr, Patch::numAtoms, PatchMap::numNodesWithPatches(), PatchMap::numPatchesOnNode(), PatchMap::Object(), Sync::Object(), Node::Object(), ProxyMgr::Object(), Patch::p, Patch::p_avg, ProxyDataMsg::patch, PATCH_PRIORITY, Patch::patchID, Sync::PatchReady(), Patch::pExt, ProxyDataMsg::plExtLen, ProxyDataMsg::plLen, CompAtom::position, ProxyDataMsg::positionExtList, ProxyDataMsg::positionList, Patch::positionsReady(), PRIORITY_SIZE, PROXY_DATA_PRIORITY, proxySendSpanning, proxySpanDim, qmSwapAtoms(), rattleListValid, ResizeArray< Elem >::resize(), ComputeNonbondedUtil::scaling, ProxyMgr::sendProxyAll(), ProxyMgr::sendProxyData(), Flags::sequence, SET_PRIORITY, setGBISIntrinsicRadii(), setLcpoType(), Node::simParameters, simParams, ResizeArray< Elem >::size(), sortAtomsForCUDA(), CompAtomExt::sortOrder, Lattice::unscale(), Patch::v, ProxyDataMsg::velocityList, Patch::velocityPtrBegin, Patch::velocityPtrEnd, ProxyDataMsg::vlLen, Vector::x, Vector::y, and Vector::z.
Referenced by Sequencer::runComputeObjects().
void HomePatch::positionsReady_GPU | ( | int | doMigration = 0 , |
int | startup = 0 |
||
) |
void HomePatch::positionsReady_SOA | ( | int | doMigration = 0 | ) |
Definition at line 971 of file HomePatch.C.
References ASSERT, PatchDataSOA::atomFixed, ProxyDataMsg::avgPlLen, ProxyDataMsg::avgPositionList, Patch::avgPositionPtrBegin, Patch::avgPositionPtrEnd, ResizeArray< Elem >::begin(), PatchDataSOA::charge, COULOMB, ProxyDataMsg::cudaAtomList, Patch::cudaAtomPtr, DebugM, ComputeNonbondedUtil::dielectric_1, doAtomMigration(), Flags::doGBIS, doGroupSizeCheck_SOA(), Flags::doLCPO, Flags::doLoweAndersen, doMarginCheck_SOA(), Flags::doMolly, doPairlistCheck(), ResizeArray< Elem >::end(), PatchDataSOA::exclId, ProxyDataMsg::flags, Patch::flags, Patch::getPatchID(), PatchDataSOA::groupFixed, PatchDataSOA::hydrogenGroupSize, CompAtomExtCopy::id, PatchDataSOA::id, LocalID::index, Patch::intRad, ProxyDataMsg::intRadList, PatchDataSOA::isWater, Patch::lattice, Patch::lcpoType, ProxyDataMsg::lcpoTypeList, AtomMap::localID(), loweAndersenVelocities(), mollyAverage(), NAMD_ATOM_FIXED_MASK, NAMD_EVENT_START, NAMD_EVENT_START_EX, NAMD_EVENT_STOP, NAMD_GROUP_FIXED_MASK, NamdProfileEventStr, PatchDataSOA::nonbondedGroupSize, Patch::numAtoms, PatchMap::numNodesWithPatches(), PatchMap::numPatchesOnNode(), PatchMap::Object(), AtomMap::Object(), Sync::Object(), Node::Object(), ProxyMgr::Object(), Patch::p, Patch::p_avg, partition(), PatchDataSOA::partition, ProxyDataMsg::patch, PATCH_PRIORITY, Patch::patchID, Sync::PatchReady(), Patch::pExt, LocalID::pid, ProxyDataMsg::plExtLen, ProxyDataMsg::plLen, PatchDataSOA::pos_x, PatchDataSOA::pos_y, PatchDataSOA::pos_z, ProxyDataMsg::positionExtList, ProxyDataMsg::positionList, Patch::positionsReady(), PRIORITY_SIZE, PROXY_DATA_PRIORITY, proxySendSpanning, proxySpanDim, CudaAtom::q, qmSwapAtoms(), rattleListValid, rattleListValid_SOA, ResizeArray< Elem >::resize(), ComputeNonbondedUtil::scaling, ProxyMgr::sendProxyAll(), ProxyMgr::sendProxyData(), Flags::sequence, SET_PRIORITY, setGBISIntrinsicRadii(), setLcpoType(), PatchDataSOA::sigId, Node::simParameters, simParams, ResizeArray< Elem >::size(), sortAtomsForCUDA_SOA(), CompAtomExtCopy::sortOrder, PatchDataSOA::sortOrder, Lattice::unscale(), PatchDataSOA::unsortOrder, Patch::v, PatchDataSOA::vdwType, ProxyDataMsg::velocityList, Patch::velocityPtrBegin, Patch::velocityPtrEnd, ProxyDataMsg::vlLen, CudaAtom::x, Vector::x, CudaAtom::y, Vector::y, CudaAtom::z, and Vector::z.
Referenced by Sequencer::runComputeObjects_SOA().
void HomePatch::qmSwapAtoms | ( | ) |
Definition at line 907 of file HomePatch.C.
References ResizeArray< Elem >::begin(), CompAtom::charge, SortedArray< Elem >::find(), Molecule::get_numQMAtoms(), Molecule::get_qmAtmChrg(), Molecule::get_qmAtmIndx(), Molecule::get_qmAtomGroup(), CompAtomExt::id, lssSubs(), Node::molecule, LSSSubsDat::newCharge, LSSSubsDat::newID, LSSSubsDat::newVdWType, Patch::numAtoms, Node::Object(), Node::simParameters, simParams, and CompAtom::vdwType.
Referenced by positionsReady(), and positionsReady_SOA().
int HomePatch::rattle1 | ( | const BigReal | timestep, |
Tensor * | virial, | ||
SubmitReduction * | ppreduction | ||
) |
Definition at line 3784 of file HomePatch.C.
References addRattleForce(), buildRattleList(), endi(), iERROR(), iout, iWARN(), LINCS(), MSHAKEIterate(), noconstList, Patch::numAtoms, Node::Object(), posNew, rattle1old(), rattleList, rattleListValid, rattleN(), rattlePair< 1 >(), rattleParam, settle1_SIMD< 1 >(), settle1_SIMD< 2 >(), settleList, Node::simParameters, simParams, TIMEFACTOR, TIP3, velNew, Vector::x, Vector::y, and Vector::z.
Referenced by Sequencer::minimize(), Sequencer::minimizeMoveDownhill(), Sequencer::newMinimizePosition(), and Sequencer::rattle1().
int HomePatch::rattle1_SOA | ( | const BigReal | dt, |
Tensor * | virial, | ||
SubmitReduction * | ppreduction | ||
) |
Definition at line 4653 of file HomePatch.C.
References buildRattleList_SOA(), endi(), PatchDataSOA::f_normal_x, PatchDataSOA::f_normal_y, PatchDataSOA::f_normal_z, PatchDataSOA::hydrogenGroupSize, iERROR(), iout, iWARN(), LINCS(), PatchDataSOA::mass, MSHAKEIterate(), noconstList, Patch::numAtoms, Node::Object(), PatchDataSOA::pos_x, PatchDataSOA::pos_y, PatchDataSOA::pos_z, PatchDataSOA::posNew_x, PatchDataSOA::posNew_y, PatchDataSOA::posNew_z, rattleList, rattleListValid_SOA, rattleN(), rattlePair< 1 >(), rattleParam, settle1_SOA(), Node::simParameters, simParams, PatchDataSOA::vel_x, PatchDataSOA::vel_y, PatchDataSOA::vel_z, PatchDataSOA::velNew_x, PatchDataSOA::velNew_y, PatchDataSOA::velNew_z, Tensor::xx, Tensor::xy, Tensor::xz, Tensor::yx, Tensor::yy, Tensor::yz, Tensor::zx, Tensor::zy, and Tensor::zz.
Referenced by Sequencer::rattle1_SOA().
int HomePatch::rattle1old | ( | const BigReal | timestep, |
Tensor * | virial, | ||
SubmitReduction * | ppreduction | ||
) |
Definition at line 3975 of file HomePatch.C.
References Lattice::c(), endi(), Patch::f, getWaterModelGroupSize(), iERROR(), iout, SubmitReduction::item(), iWARN(), Patch::lattice, Node::molecule, NAMD_die(), Results::normal, Patch::numAtoms, Node::Object(), Lattice::origin(), outer(), partition(), settle1(), settle1init(), Node::simParameters, simParams, SWM4, TIMEFACTOR, TIP4, Vector::x, Tensor::xx, Vector::y, Tensor::yy, Vector::z, and Tensor::zz.
Referenced by rattle1().
Definition at line 4245 of file HomePatch.C.
References endi(), getWaterModelGroupSize(), iout, iWARN(), Node::molecule, NAMD_bug(), NAMD_die(), Patch::numAtoms, Node::Object(), outer(), settle2(), Node::simParameters, simParams, SWM4, TIMEFACTOR, TIP4, Vector::x, Vector::y, and Vector::z.
void HomePatch::receiveResult | ( | ProxyGBISP1ResultMsg * | msg | ) |
Definition at line 5024 of file HomePatch.C.
References Sequencer::awaken(), Patch::boxesOpen, Flags::doNonbonded, Patch::flags, Patch::psiFin, ProxyGBISP1ResultMsg::psiSum, ProxyGBISP1ResultMsg::psiSumLen, and ResizeArray< Elem >::size().
Referenced by ProxyMgr::recvResult().
void HomePatch::receiveResult | ( | ProxyGBISP2ResultMsg * | msg | ) |
Definition at line 5051 of file HomePatch.C.
References Sequencer::awaken(), Patch::boxesOpen, ProxyGBISP2ResultMsg::dEdaSum, ProxyGBISP2ResultMsg::dEdaSumLen, Patch::dHdrPrefix, Flags::doNonbonded, Patch::flags, and ResizeArray< Elem >::size().
void HomePatch::receiveResults | ( | ProxyResultVarsizeMsg * | msg | ) |
Definition at line 837 of file HomePatch.C.
References OwnerBox< Owner, Data >::clientClose(), OwnerBox< Owner, Data >::clientOpen(), DebugM, Results::f, ProxyResultVarsizeMsg::flLen, ProxyResultVarsizeMsg::forceArr, Patch::forceBox, ProxyResultVarsizeMsg::isZero, Results::maxNumForces, ProxyResultVarsizeMsg::node, and Patch::patchID.
Referenced by ProxyMgr::recvResults().
void HomePatch::receiveResults | ( | ProxyResultMsg * | msg | ) |
Definition at line 861 of file HomePatch.C.
References ResizeArray< Elem >::begin(), OwnerBox< Owner, Data >::clientClose(), OwnerBox< Owner, Data >::clientOpen(), DebugM, ResizeArray< Elem >::end(), Results::f, Patch::f, Patch::forceBox, ProxyResultMsg::forceList, Results::maxNumForces, ProxyResultMsg::node, and Patch::patchID.
void HomePatch::receiveResults | ( | ProxyCombinedResultRawMsg * | msg | ) |
Definition at line 878 of file HomePatch.C.
References OwnerBox< Owner, Data >::clientClose(), OwnerBox< Owner, Data >::clientOpen(), DebugM, Results::f, Patch::f, ProxyCombinedResultRawMsg::flLen, ProxyCombinedResultRawMsg::forceArr, Patch::forceBox, ProxyCombinedResultRawMsg::isForceNonZero, Results::maxNumForces, ProxyCombinedResultRawMsg::nodeSize, Patch::patchID, Vector::x, Vector::y, and Vector::z.
void HomePatch::recvCheckpointAck | ( | ) |
Definition at line 5359 of file HomePatch.C.
Referenced by PatchMgr::recvCheckpointAck(), and recvCheckpointLoad().
void HomePatch::recvCheckpointLoad | ( | CheckpointAtomsMsg * | msg | ) |
Definition at line 5295 of file HomePatch.C.
References Patch::atomMapper, CheckpointAtomsMsg::atoms, ResizeArray< Elem >::begin(), CheckpointAtomsMsg::berendsenPressure_count, Sequencer::berendsenPressure_count, buildRattleList_SOA(), checkpoint_task, ResizeArray< Elem >::end(), CheckpointAtomsMsg::key, CheckpointAtomsMsg::lattice, Patch::lattice, NAMD_bug(), CheckpointAtomsMsg::numAtoms, Patch::numAtoms, Node::Object(), PatchMgr::Object(), Patch::patchID, CheckpointAtomsMsg::pe, CheckpointAtomsMsg::pid, rattleListValid, rattleListValid_SOA, recvCheckpointAck(), AtomMapper::registerIDsFullAtom(), CheckpointAtomsMsg::replica, ResizeArray< Elem >::resize(), RIGID_NONE, SCRIPT_CHECKPOINT_FREE, SCRIPT_CHECKPOINT_LOAD, SCRIPT_CHECKPOINT_STORE, SCRIPT_CHECKPOINT_SWAP, PatchMgr::sendCheckpointStore(), Node::simParameters, simParams, and AtomMapper::unregisterIDsFullAtom().
Referenced by PatchMgr::recvCheckpointLoad().
void HomePatch::recvCheckpointReq | ( | int | task, |
const char * | key, | ||
int | replica, | ||
int | pe | ||
) |
Definition at line 5265 of file HomePatch.C.
References CheckpointAtomsMsg::atoms, HomePatch::checkpoint_t::atoms, ResizeArray< Elem >::begin(), CheckpointAtomsMsg::berendsenPressure_count, HomePatch::checkpoint_t::berendsenPressure_count, checkpoints, CheckpointAtomsMsg::lattice, HomePatch::checkpoint_t::lattice, NAMD_die(), CheckpointAtomsMsg::numAtoms, HomePatch::checkpoint_t::numAtoms, PatchMgr::Object(), Patch::patchID, CheckpointAtomsMsg::pe, CheckpointAtomsMsg::pid, CheckpointAtomsMsg::replica, SCRIPT_CHECKPOINT_FREE, SCRIPT_CHECKPOINT_LOAD, SCRIPT_CHECKPOINT_SWAP, PatchMgr::sendCheckpointAck(), and PatchMgr::sendCheckpointLoad().
Referenced by PatchMgr::recvCheckpointReq().
void HomePatch::recvCheckpointStore | ( | CheckpointAtomsMsg * | msg | ) |
Definition at line 5345 of file HomePatch.C.
References CheckpointAtomsMsg::atoms, HomePatch::checkpoint_t::atoms, ResizeArray< Elem >::begin(), CheckpointAtomsMsg::berendsenPressure_count, HomePatch::checkpoint_t::berendsenPressure_count, checkpoints, CheckpointAtomsMsg::key, CheckpointAtomsMsg::lattice, HomePatch::checkpoint_t::lattice, CheckpointAtomsMsg::numAtoms, HomePatch::checkpoint_t::numAtoms, PatchMgr::Object(), Patch::patchID, CheckpointAtomsMsg::pe, CheckpointAtomsMsg::replica, ResizeArray< Elem >::resize(), and PatchMgr::sendCheckpointAck().
Referenced by PatchMgr::recvCheckpointStore().
void HomePatch::recvExchangeMsg | ( | ExchangeAtomsMsg * | msg | ) |
Definition at line 5396 of file HomePatch.C.
References Patch::atomMapper, ExchangeAtomsMsg::atoms, ResizeArray< Elem >::begin(), buildRattleList_SOA(), ResizeArray< Elem >::end(), ExchangeAtomsMsg::lattice, Patch::lattice, ExchangeAtomsMsg::numAtoms, Patch::numAtoms, Node::Object(), rattleListValid, rattleListValid_SOA, AtomMapper::registerIDsFullAtom(), ResizeArray< Elem >::resize(), RIGID_NONE, Node::simParameters, simParams, and AtomMapper::unregisterIDsFullAtom().
Referenced by PatchMgr::recvExchangeMsg().
void HomePatch::recvExchangeReq | ( | int | req | ) |
Definition at line 5385 of file HomePatch.C.
References exchange_dst, exchange_msg, exchange_req, PatchMgr::Object(), and PatchMgr::sendExchangeMsg().
Referenced by exchangeAtoms(), and PatchMgr::recvExchangeReq().
void HomePatch::recvNodeAwareSpanningTree | ( | ProxyNodeAwareSpanningTreeMsg * | msg | ) |
Definition at line 671 of file HomePatch.C.
Referenced by ProxyMgr::recvNodeAwareSpanningTreeOnHomePatch().
void HomePatch::recvSpanningTree | ( | int * | t, |
int | n | ||
) |
Definition at line 677 of file HomePatch.C.
References proxySpanDim, ResizeArray< Elem >::resize(), sendSpanningTree(), and ResizeArray< Elem >::size().
Referenced by ProxyMgr::recvSpanningTreeOnHomePatch().
void HomePatch::registerProxy | ( | RegisterProxyMsg * | msg | ) |
Definition at line 443 of file HomePatch.C.
References ResizeArray< Elem >::add(), ResizeArray< Elem >::begin(), OwnerBox< Owner, Data >::clientAdd(), DebugM, Patch::forceBox, RegisterProxyMsg::node, Patch::patchID, Random::reorder(), and ResizeArray< Elem >::size().
Referenced by ProxyMgr::recvRegisterProxy().
void HomePatch::replaceForces | ( | ExtForce * | f | ) |
void HomePatch::revert | ( | void | ) |
Definition at line 5226 of file HomePatch.C.
References Patch::atomMapper, ResizeArray< Elem >::begin(), buildRattleList_SOA(), ResizeArray< Elem >::copy(), ResizeArray< Elem >::end(), Patch::lattice, Patch::numAtoms, Node::Object(), rattleListValid, rattleListValid_SOA, AtomMapper::registerIDsFullAtom(), RIGID_NONE, Node::simParameters, simParams, ResizeArray< Elem >::size(), and AtomMapper::unregisterIDsFullAtom().
Referenced by Sequencer::algorithm().
void HomePatch::runSequencer | ( | void | ) |
void HomePatch::saveForce | ( | const int | ftag = Results::normal | ) |
Definition at line 2315 of file HomePatch.C.
References Patch::f, Patch::numAtoms, and ResizeArray< Elem >::resize().
Referenced by Sequencer::saveForce().
void HomePatch::sendNodeAwareSpanningTree | ( | ) |
Definition at line 672 of file HomePatch.C.
void HomePatch::sendProxies | ( | ) |
Definition at line 509 of file HomePatch.C.
References ResizeArray< Elem >::begin(), ProxyMgr::Object(), Patch::patchID, ProxyMgr::sendProxies(), NodeProxyMgr::sendProxyList(), and ResizeArray< Elem >::size().
Referenced by ProxyMgr::buildProxySpanningTree2().
void HomePatch::sendSpanningTree | ( | ) |
Definition at line 700 of file HomePatch.C.
References ResizeArray< Elem >::copy(), ProxySpanningTreeMsg::node, ProxyMgr::Object(), ProxySpanningTreeMsg::patch, Patch::patchID, ProxyMgr::sendSpanningTree(), ResizeArray< Elem >::size(), and ProxySpanningTreeMsg::tree.
Referenced by buildSpanningTree(), and recvSpanningTree().
void HomePatch::setGBISIntrinsicRadii | ( | ) |
Definition at line 4894 of file HomePatch.C.
References Patch::intRad, MassToRadius(), MassToScreen(), Node::molecule, Patch::numAtoms, Node::Object(), ResizeArray< Elem >::resize(), ResizeArray< Elem >::setall(), Node::simParameters, and simParams.
Referenced by positionsReady(), and positionsReady_SOA().
void HomePatch::setLcpoType | ( | ) |
Definition at line 4883 of file HomePatch.C.
References Molecule::getLcpoParamType(), Patch::lcpoType, Node::molecule, Patch::numAtoms, Node::Object(), Patch::pExt, and ResizeArray< Elem >::resize().
Referenced by positionsReady(), and positionsReady_SOA().
void HomePatch::submitLoadStats | ( | int | timestep | ) |
Definition at line 5422 of file HomePatch.C.
References Patch::numAtoms, LdbCoordinator::Object(), Patch::patchID, and LdbCoordinator::patchLoad().
Referenced by Sequencer::rebalanceLoad().
void HomePatch::unregisterProxy | ( | UnregisterProxyMsg * | msg | ) |
Definition at line 457 of file HomePatch.C.
References ResizeArray< Elem >::begin(), OwnerBox< Owner, Data >::clientRemove(), ResizeArray< Elem >::del(), Patch::forceBox, and UnregisterProxyMsg::node.
Referenced by ProxyMgr::recvUnregisterProxy().
void HomePatch::updateAtomBuffers | ( | ) |
void HomePatch::updateAtomCount | ( | const int | n, |
const int | reallocate | ||
) |
void HomePatch::useSequencer | ( | Sequencer * | sequencerPtr | ) |
Definition at line 301 of file HomePatch.C.
|
friend |
Definition at line 336 of file HomePatch.h.
|
friend |
Definition at line 330 of file HomePatch.h.
|
friend |
Definition at line 331 of file HomePatch.h.
|
friend |
Definition at line 334 of file HomePatch.h.
int HomePatch::checkpoint_task |
Definition at line 501 of file HomePatch.h.
Referenced by exchangeCheckpoint(), and recvCheckpointLoad().
std::map<std::string,checkpoint_t*> HomePatch::checkpoints |
Definition at line 508 of file HomePatch.h.
Referenced by recvCheckpointReq(), and recvCheckpointStore().
int HomePatch::exchange_dst |
Definition at line 514 of file HomePatch.h.
Referenced by exchangeAtoms(), and recvExchangeReq().
ExchangeAtomsMsg* HomePatch::exchange_msg |
Definition at line 517 of file HomePatch.h.
Referenced by exchangeAtoms(), and recvExchangeReq().
int HomePatch::exchange_req |
Definition at line 516 of file HomePatch.h.
Referenced by exchangeAtoms(), and recvExchangeReq().
int HomePatch::exchange_src |
Definition at line 515 of file HomePatch.h.
Referenced by exchangeAtoms().
bool HomePatch::gridForceIdxChecked |
Definition at line 402 of file HomePatch.h.
Referenced by ComputeGridForce::doForce(), and positionsReady().
|
protected |
Definition at line 569 of file HomePatch.h.
Referenced by depositMigration(), and doAtomMigration().
LDObjHandle HomePatch::ldObjHandle |
Definition at line 554 of file HomePatch.h.
Referenced by LdbCoordinator::initialize(), Sequencer::Sequencer(), Sequencer::suspend(), and Sequencer::terminate().
int HomePatch::marginViolations |
Definition at line 401 of file HomePatch.h.
Referenced by doAtomMigration(), doMarginCheck(), doMarginCheck_SOA(), Sequencer::multigratorPressure(), Sequencer::submitReductions(), and Sequencer::submitReductions_SOA().
|
protected |
Definition at line 571 of file HomePatch.h.
Referenced by depositMigration(), and doAtomMigration().
std::vector<int> HomePatch::noconstList |
Definition at line 451 of file HomePatch.h.
Referenced by buildRattleList(), buildRattleList_SOA(), rattle1(), and rattle1_SOA().
|
protected |
Definition at line 570 of file HomePatch.h.
Referenced by depositMigration(), and doAtomMigration().
std::vector<Vector> HomePatch::posNew |
Definition at line 458 of file HomePatch.h.
Referenced by buildRattleList(), and rattle1().
std::vector<RattleList> HomePatch::rattleList |
Definition at line 449 of file HomePatch.h.
Referenced by buildRattleList(), buildRattleList_SOA(), rattle1(), and rattle1_SOA().
bool HomePatch::rattleListValid |
Definition at line 453 of file HomePatch.h.
Referenced by positionsReady(), positionsReady_SOA(), rattle1(), recvCheckpointLoad(), recvExchangeMsg(), and revert().
bool HomePatch::rattleListValid_SOA |
Definition at line 454 of file HomePatch.h.
Referenced by depositMigration(), positionsReady_SOA(), rattle1_SOA(), recvCheckpointLoad(), recvExchangeMsg(), and revert().
std::vector<RattleParam> HomePatch::rattleParam |
Definition at line 450 of file HomePatch.h.
Referenced by buildRattleList(), buildRattleList_SOA(), rattle1(), and rattle1_SOA().
std::vector<int> HomePatch::settleList |
Definition at line 448 of file HomePatch.h.
Referenced by buildRattleList(), and rattle1().
std::vector<Vector> HomePatch::velNew |
Definition at line 457 of file HomePatch.h.
Referenced by addRattleForce(), buildRattleList(), and rattle1().