![]() |
QMCPACK
|
Inheritance diagram for CSVMCUpdateAllWithDrift:
Collaboration diagram for CSVMCUpdateAllWithDrift:Public Member Functions | |
| CSVMCUpdateAllWithDrift (MCWalkerConfiguration &w, std::vector< TrialWaveFunction *> &psi, std::vector< QMCHamiltonian *> &h, RandomBase< FullPrecRealType > &rg) | |
| Constructor. More... | |
| void | advanceWalker (Walker_t &thisWalker, bool recompute) override |
| move a walker More... | |
Public Member Functions inherited from CSUpdateBase | |
| CSUpdateBase (MCWalkerConfiguration &w, std::vector< TrialWaveFunction *> &psi, std::vector< QMCHamiltonian *> &h, RandomBase< FullPrecRealType > &rg) | |
| ~CSUpdateBase () override | |
| void | computeSumRatio (const std::vector< RealType > &logpsi, const std::vector< RealType > &avgNorm, std::vector< RealType > &sumratio) |
| void | computeSumRatio (const Matrix< RealType > &ratioij, std::vector< RealType > &sumratio) |
| void | computeSumRatio (const std::vector< RealType > &logpsi, const std::vector< RealType > &avgNorm, Matrix< RealType > &ratioij, std::vector< RealType > &sumratio) |
| void | updateRatioMatrix (const std::vector< RealType > &ratio_pbyp, Matrix< RealType > &ratioij) |
| void | resizeWorkSpace (int nw, int nptcls) |
| void | updateNorms () |
| void | updateAvgWeights () |
| void | initCSWalkers (WalkerIter_t it, WalkerIter_t it_end, bool resetNorms) |
| void | initCSWalkersForPbyP (WalkerIter_t it, WalkerIter_t it_end, bool resetNorms) |
| void | updateCSWalkers (WalkerIter_t it, WalkerIter_t it_end) |
Public Member Functions inherited from QMCUpdateBase | |
| QMCUpdateBase (MCWalkerConfiguration &w, TrialWaveFunction &psi, QMCHamiltonian &h, RandomBase< FullPrecRealType > &rg) | |
| Constructor. More... | |
| QMCUpdateBase (MCWalkerConfiguration &w, TrialWaveFunction &psi, TrialWaveFunction &guide, QMCHamiltonian &h, RandomBase< FullPrecRealType > &rg) | |
| Alt Constructor. More... | |
| virtual | ~QMCUpdateBase () |
| destructor More... | |
| RealType | acceptRatio () const |
| void | resetRun (BranchEngineType *brancher, EstimatorManagerBase *est, TraceManager *traces, const DriftModifierBase *driftmodifer) |
| reset the QMCUpdateBase parameters More... | |
| void | resetRun2 (BranchEngineType *brancher, EstimatorManagerBase *est, TraceManager *traces, WalkerLogCollector *wlog_collector_, const DriftModifierBase *driftmodifer) |
| RealType | getTau () |
| void | setTau (RealType t) |
| RealType | getSpinMass () |
| void | setSpinMass (RealType m) |
| void | getLogs (std::vector< RealType > &logs) |
| void | set_step (int step) |
| void | startRun (int blocks, bool record) |
| start a run More... | |
| void | stopRun () |
| stop a run More... | |
| void | stopRun2 () |
| void | startBlock (int steps) |
| prepare to start a block More... | |
| void | stopBlock (bool collectall=true) |
| stop a block More... | |
| void | setMultiplicity (WalkerIter_t it, WalkerIter_t it_end) |
| set the multiplicity of the walkers to branch More... | |
| void | setMultiplicity (Walker_t &awalker) const |
| virtual void | initWalkersForPbyP (WalkerIter_t it, WalkerIter_t it_end) |
| initialize Walker buffers for PbyP update More... | |
| virtual void | initWalkers (WalkerIter_t it, WalkerIter_t it_end) |
| initialize Walker for walker update More... | |
| virtual bool | put (xmlNodePtr cur) |
| process options More... | |
| void | accumulate (WalkerIter_t it, WalkerIter_t it_end) |
| virtual void | advanceWalkers (WalkerIter_t it, WalkerIter_t it_end, bool recompute) |
| advance walkers executed at each step More... | |
| virtual RealType | advanceWalkerForEE (Walker_t &w1, std::vector< PosType > &dR, std::vector< int > &iats, std::vector< int > &rs, std::vector< RealType > &ratios) |
| int | RMC_checkIndex (int N, int NMax) |
| void | RMC_checkWalkerBounds (WalkerIter_t &it, WalkerIter_t first, WalkerIter_t last) |
| RealType | logBackwardGF (const ParticleSet::ParticlePos &displ) |
Additional Inherited Members | |
Public Types inherited from QMCUpdateBase | |
| using | Walker_t = MCWalkerConfiguration::Walker_t |
| using | WalkerIter_t = MCWalkerConfiguration::iterator |
| using | BranchEngineType = SimpleFixedNodeBranch |
| using | mPosType = PosType |
| using | mTensorType = TensorType |
Public Types inherited from QMCTraits | |
| enum | { DIM = OHMMS_DIM, DIM_VGL = OHMMS_DIM + 2 } |
| using | QTBase = QMCTypes< OHMMS_PRECISION, DIM > |
| using | QTFull = QMCTypes< OHMMS_PRECISION_FULL, DIM > |
| using | RealType = QTBase::RealType |
| using | ComplexType = QTBase::ComplexType |
| using | ValueType = QTBase::ValueType |
| using | PosType = QTBase::PosType |
| using | GradType = QTBase::GradType |
| using | TensorType = QTBase::TensorType |
| using | IndexType = OHMMS_INDEXTYPE |
| define other types More... | |
| using | FullPrecRealType = QTFull::RealType |
| using | FullPrecValueType = QTFull::ValueType |
| using | PropertySetType = RecordNamedProperty< FullPrecRealType > |
| define PropertyList_t More... | |
| using | PtclGrpIndexes = std::vector< std::pair< int, int > > |
Public Attributes inherited from CSUpdateBase | |
| int | nPsi |
| bool | useDrift |
| std::vector< RealType > | logpsi |
| std::vector< RealType > | sumratio |
| std::vector< RealType > | invsumratio |
| std::vector< RealType > | avgNorm |
| std::vector< RealType > | avgWeight |
| std::vector< RealType > | logNorm |
| std::vector< RealType > | cumNorm |
| std::vector< RealType > | instRij |
| std::vector< RealType > | ratio |
| Matrix< RealType > | ratioIJ |
| std::string | useDriftOption |
| Matrix< RealType > | RatioIJ |
| CSEnergyEstimator * | multiEstimator |
| multiple estimator More... | |
| std::vector< QMCHamiltonian * > | H1 |
| a list of QMCHamiltonians for multiple method More... | |
| std::vector< TrialWaveFunction * > | Psi1 |
| a list of TrialWaveFunctions for multiple method More... | |
| std::vector< ParticleSet::ParticleGradient * > | G1 |
| std::vector< ParticleSet::ParticleLaplacian * > | L1 |
| std::vector< GradType > | g1_old |
| std::vector< GradType > | g1_new |
Public Attributes inherited from QMCUpdateBase | |
| int | nSubSteps |
| number of steps per measurement More... | |
| DriverDebugChecks | debug_checks_ = DriverDebugChecks::ALL_OFF |
| determine additional checks for debugging purpose More... | |
| std::string | debug_checks_str_ |
| IndexType | MaxAge |
| MaxAge>0 indicates branch is done. More... | |
| IndexType | nAccept |
| counter for number of moves accepted More... | |
| IndexType | nReject |
| counter for number of moves rejected More... | |
| IndexType | nAllRejected |
| Total number of the steps when all the particle moves are rejected. More... | |
| IndexType | nNodeCrossing |
| Total number of node crossings per block. More... | |
| IndexType | NonLocalMoveAccepted |
| Total numer of non-local moves accepted. More... | |
| RealType | Tau |
| timestep More... | |
| RealType | spinMass |
| spin mass More... | |
| bool | UseDrift |
| use Drift More... | |
| RealType | csoffset |
| normalization offset for cs type runs. More... | |
| TraceManager * | Traces |
| traces More... | |
| WalkerLogCollector * | wlog_collector |
Protected Member Functions inherited from QMCUpdateBase | |
| RealType | getNodeCorrection (const ParticleSet::ParticleGradient &g, ParticleSet::ParticlePos &gscaled) |
| evaluate the ratio of scaled velocity and velocity More... | |
| QMCUpdateBase (const QMCUpdateBase &)=delete | |
| copy constructor (disabled) More... | |
Static Protected Member Functions inherited from QMCUpdateBase | |
| static void | checkLogAndGL (ParticleSet &pset, TrialWaveFunction &twf, const std::string_view location) |
| check logpsi and grad and lap against values computed from scratch More... | |
Protected Attributes inherited from QMCUpdateBase | |
| bool | UpdatePbyP |
| update particle-by-particle More... | |
| IndexType | NumPtcl |
| number of particles More... | |
| RealType | m_oneover2tau |
Time-step factor . More... | |
| RealType | m_sqrttau |
Time-step factor . More... | |
| RealType | m_tauovermass |
| tau/mass More... | |
| RealType | m_r2max |
| maximum displacement^2 More... | |
| MCWalkerConfiguration & | W |
| walker ensemble More... | |
| TrialWaveFunction & | Psi |
| trial function More... | |
| TrialWaveFunction & | Guide |
| guide function More... | |
| QMCHamiltonian & | H |
| Hamiltonian. More... | |
| RandomBase< FullPrecRealType > & | RandomGen |
| random number generator More... | |
| const BranchEngineType * | branchEngine |
| branch engine, stateless reference to the one in QMCDriver More... | |
| const DriftModifierBase * | DriftModifier |
| drift modifer, stateless reference to the one in QMCDriver More... | |
| EstimatorManagerBase * | Estimators |
| estimator More... | |
| ParameterSet | myParams |
| parameters More... | |
| std::vector< RealType > | MassInvS |
| 1/Mass per species More... | |
| std::vector< RealType > | MassInvP |
| 1/Mass per particle More... | |
| std::vector< RealType > | SqrtTauOverMass |
| sqrt(tau/Mass) per particle More... | |
| ParticleSet::ParticlePos | drift |
| temporary storage for drift More... | |
| ParticleSet::ParticlePos | deltaR |
| temporary storage for random displacement More... | |
| ParticleSet::ParticleScalar | deltaS |
| temporart storage for spin displacement More... | |
| ParticleSet::ParticleGradient | G |
| storage for differential gradients for PbyP update More... | |
| ParticleSet::ParticleGradient | dG |
| ParticleSet::ParticleLaplacian | L |
| storage for differential laplacians for PbyP update More... | |
| ParticleSet::ParticleLaplacian | dL |
Definition at line 47 of file CSVMCUpdateAll.h.
| CSVMCUpdateAllWithDrift | ( | MCWalkerConfiguration & | w, |
| std::vector< TrialWaveFunction *> & | psi, | ||
| std::vector< QMCHamiltonian *> & | h, | ||
| RandomBase< FullPrecRealType > & | rg | ||
| ) |
Constructor.
Definition at line 120 of file CSVMCUpdateAll.cpp.
References QMCUpdateBase::UpdatePbyP.
|
overridevirtual |
move a walker
Implements QMCUpdateBase.
Definition at line 129 of file CSVMCUpdateAll.cpp.
References Walker< t_traits, p_traits >::Age, qmcplusplus::assignDrift(), CSUpdateBase::avgNorm, CSUpdateBase::cumNorm, QMCUpdateBase::deltaR, qmcplusplus::Dot(), QMCUpdateBase::drift, qmcplusplus::exp(), ParticleSet::G, CSUpdateBase::G1, Walker< t_traits, p_traits >::getPropertyBase(), CSUpdateBase::H1, CSUpdateBase::invsumratio, ParticleSet::L, CSUpdateBase::L1, ParticleSet::loadWalker(), QMCUpdateBase::logBackwardGF(), CSUpdateBase::logpsi, qmcplusplus::makeGaussRandomWithEngine(), ParticleSet::makeMoveAllParticlesWithDrift(), QMCUpdateBase::MassInvP, QMCUpdateBase::MassInvS, Walker< t_traits, p_traits >::Multiplicity, QMCUpdateBase::nAccept, CSUpdateBase::nPsi, QMCUpdateBase::nReject, Walker< t_traits, p_traits >::Properties, CSUpdateBase::Psi1, ParticleSet::R, Walker< t_traits, p_traits >::R, Random, QMCUpdateBase::RandomGen, qmcplusplus::sqrt(), QMCUpdateBase::SqrtTauOverMass, CSUpdateBase::sumratio, QMCUpdateBase::Tau, and QMCUpdateBase::W.