![]() |
QMCPACK
|
Wrappers for dispatching to ParticleSet single walker APIs or mw_ APIs. More...
Collaboration diagram for PSdispatcher:Public Types | |
| using | Walker_t = ParticleSet::Walker_t |
| using | SingleParticlePos = ParticleSet::SingleParticlePos |
| using | Scalar_t = ParticleSet::Scalar_t |
Public Member Functions | |
| PSdispatcher (bool use_batch) | |
| void | flex_loadWalker (const RefVectorWithLeader< ParticleSet > &p_list, const RefVector< Walker_t > &walkers, const std::vector< bool > &recompute, bool pbyp) const |
| void | flex_update (const RefVectorWithLeader< ParticleSet > &p_list, bool skipSK=false) const |
| template<CoordsType CT> | |
| void | flex_makeMove (const RefVectorWithLeader< ParticleSet > &p_list, int iat, const MCCoords< CT > &displs) const |
| template<CoordsType CT> | |
| void | flex_accept_rejectMove (const RefVectorWithLeader< ParticleSet > &p_list, int iat, const std::vector< bool > &isAccepted, bool forward_mode=true) const |
| void | flex_saveWalker (const RefVectorWithLeader< ParticleSet > &p_list, const RefVector< Walker_t > &walkers) const |
| void | flex_donePbyP (const RefVectorWithLeader< ParticleSet > &p_list) const |
Private Attributes | |
| bool | use_batch_ |
Wrappers for dispatching to ParticleSet single walker APIs or mw_ APIs.
This should be only used by QMC drivers. member function names must match mw_ APIs in TrialWaveFunction
Definition at line 24 of file PSdispatcher.h.
| using Scalar_t = ParticleSet::Scalar_t |
Definition at line 29 of file PSdispatcher.h.
Definition at line 28 of file PSdispatcher.h.
| using Walker_t = ParticleSet::Walker_t |
Definition at line 27 of file PSdispatcher.h.
| PSdispatcher | ( | bool | use_batch | ) |
Definition at line 17 of file PSdispatcher.cpp.
| void flex_accept_rejectMove | ( | const RefVectorWithLeader< ParticleSet > & | p_list, |
| int | iat, | ||
| const std::vector< bool > & | isAccepted, | ||
| bool | forward_mode = true |
||
| ) | const |
| void flex_donePbyP | ( | const RefVectorWithLeader< ParticleSet > & | p_list | ) | const |
Definition at line 73 of file PSdispatcher.cpp.
References ParticleSet::mw_donePbyP(), qmcplusplus::pset, and PSdispatcher::use_batch_.
| void flex_loadWalker | ( | const RefVectorWithLeader< ParticleSet > & | p_list, |
| const RefVector< Walker_t > & | walkers, | ||
| const std::vector< bool > & | recompute, | ||
| bool | pbyp | ||
| ) | const |
Definition at line 19 of file PSdispatcher.cpp.
References ParticleSet::mw_loadWalker(), PSdispatcher::use_batch_, and qmcplusplus::hdf::walkers.
| void flex_makeMove | ( | const RefVectorWithLeader< ParticleSet > & | p_list, |
| int | iat, | ||
| const MCCoords< CT > & | displs | ||
| ) | const |
Definition at line 46 of file PSdispatcher.cpp.
References ParticleSet::mw_makeMove(), qmcplusplus::POS_SPIN, and PSdispatcher::use_batch_.
| void flex_saveWalker | ( | const RefVectorWithLeader< ParticleSet > & | p_list, |
| const RefVector< Walker_t > & | walkers | ||
| ) | const |
Definition at line 82 of file PSdispatcher.cpp.
References ParticleSet::mw_saveWalker(), PSdispatcher::use_batch_, and qmcplusplus::hdf::walkers.
| void flex_update | ( | const RefVectorWithLeader< ParticleSet > & | p_list, |
| bool | skipSK = false |
||
| ) | const |
Definition at line 36 of file PSdispatcher.cpp.
References ParticleSet::mw_update(), qmcplusplus::pset, and PSdispatcher::use_batch_.
|
private |
Definition at line 54 of file PSdispatcher.h.
Referenced by PSdispatcher::flex_accept_rejectMove(), PSdispatcher::flex_donePbyP(), PSdispatcher::flex_loadWalker(), PSdispatcher::flex_makeMove(), PSdispatcher::flex_saveWalker(), and PSdispatcher::flex_update().