![]() |
QMCPACK
|
Functions | |
int | addObservables (ParticleSet &P) |
add each term to the PropertyList for averages More... | |
void | registerObservables (std::vector< ObservableHelper > &h5desc, hdf_archive &file) const |
register obsevables so that their averages can be dumped to hdf5 More... | |
void | registerCollectables (std::vector< ObservableHelper > &h5desc, hdf_archive &file) const |
register collectables so that their averages can be dumped to hdf5 More... | |
static void | mw_registerKineticListener (QMCHamiltonian &ham_leader, ListenerVector< RealType > listener) |
Listener Registration This must be called on a QMCHamiltonian that has acquired multiwalker resources. More... | |
static void | mw_registerLocalEnergyListener (QMCHamiltonian &ham_leader, ListenerVector< RealType > listener) |
static void | mw_registerLocalPotentialListener (QMCHamiltonian &ham_leader, ListenerVector< RealType > listener) |
static void | mw_registerLocalIonPotentialListener (QMCHamiltonian &ham_leader, ListenerVector< RealType > listener) |
void | informOperatorsOfListener () |
Some Hamiltonian components need to be informed that they are in a per particle reporting situation so additional state can be added either to them or the objects they are strongly coupled with. More... | |
int | startIndex () const |
retrun the starting index More... | |
int | sizeOfObservables () const |
return the size of observables More... | |
int | sizeOfCollectables () const |
return the size of collectables More... | |
RealType | getObservable (int i) const |
return the value of the i-th observable More... | |
int | getObservable (std::string Oname) const |
return the value of the observable with a set name if it exists More... | |
std::string | getObservableName (int i) const |
return the name of the i-th observable More... | |
template<class IT , typename = std::enable_if_t<std::is_same<std::add_pointer<FullPrecRealType>::type, IT>::value>> | |
void | saveProperty (IT first) |
save the values of Hamiltonian elements to the Properties More... | |
int addObservables | ( | ParticleSet & | P | ) |
add each term to the PropertyList for averages
add a number of properties to the ParticleSet
plist | a set of properties to which this Hamiltonian add the observables add each term to P.PropertyList and P.mcObservables |
P | particle set to which observables are added |
P | ParticleSet to which multiple columns to be added |
QMCHamiltonian can add any number of properties to a ParticleSet. Hindex contains the index map to the ParticleSet::PropertyList. This enables assigning the properties evaluated by each OperatorBase object to the correct property column.
Definition at line 223 of file QMCHamiltonian.cpp.
References RecordNamedProperty< T >::add(), qmcplusplus::app_log(), QMCHamiltonian::auxH, PooledData< T >::clear(), ParticleSet::Collectables, QMCHamiltonian::H, QMCHamiltonian::myIndex, QMCHamiltonian::numCollectables, QMCHamiltonian::Observables, ParticleSet::PropertyList, PooledData< T >::rewind(), and PooledData< T >::size().
Referenced by QMCHamiltonian::resetObservables(), and qmcplusplus::TEST_CASE().
|
inline |
return the value of the i-th observable
Definition at line 172 of file QMCHamiltonian.h.
References QMCHamiltonian::Observables.
Referenced by QMCMain::executeCMCSection(), WaveFunctionTester::printEloc(), ForwardWalking::putSpecial(), WaveFunctionTester::runDerivCloneTest(), WaveFunctionTester::runDerivNLPPTest(), WaveFunctionTester::runDerivTest(), WaveFunctionTester::runGradSourceTest(), WaveFunctionTester::runRatioTest(), WaveFunctionTester::runRatioTest2(), and qmcplusplus::TEST_CASE().
|
inline |
return the value of the observable with a set name if it exists
Definition at line 174 of file QMCHamiltonian.h.
References QMCHamiltonian::Observables.
|
inline |
return the name of the i-th observable
Definition at line 185 of file QMCHamiltonian.h.
References QMCHamiltonian::Observables.
Referenced by LocalEnergyEstimator::add2Record(), RMCLocalEnergyEstimator::add2Record(), CSEnergyEstimator::CSEnergyEstimator(), QMCMain::executeCMCSection(), WaveFunctionTester::printEloc(), ForwardWalking::putSpecial(), WaveFunctionTester::runDerivCloneTest(), WaveFunctionTester::runDerivNLPPTest(), WaveFunctionTester::runDerivTest(), WaveFunctionTester::runGradSourceTest(), WaveFunctionTester::runRatioTest(), WaveFunctionTester::runRatioTest2(), and qmcplusplus::TEST_CASE().
void informOperatorsOfListener | ( | ) |
Some Hamiltonian components need to be informed that they are in a per particle reporting situation so additional state can be added either to them or the objects they are strongly coupled with.
This includes evalation of hamiltonian components constants on a per particle basis and informing a components attached particle set that it needs to store per particle values for StructFact. This is a reason that the coupling between Hamiltonian components and particle sets can strong and must be correct.
This is not desirable and hopefully this state transformation message can be removed.
Definition at line 303 of file QMCHamiltonian.cpp.
References QMCHamiltonian::H.
Referenced by QMCDriverNew::initializeQMC(), and qmcplusplus::TEST_CASE().
|
static |
Listener Registration This must be called on a QMCHamiltonian that has acquired multiwalker resources.
Definition at line 277 of file QMCHamiltonian.cpp.
References QMCHamiltonian::mw_res_handle_.
Referenced by qmcplusplus::TEST_CASE().
|
static |
Definition at line 283 of file QMCHamiltonian.cpp.
References QMCHamiltonian::mw_res_handle_.
Referenced by PerParticleHamiltonianLogger::registerListeners(), and qmcplusplus::TEST_CASE().
|
static |
Definition at line 297 of file QMCHamiltonian.cpp.
References QMCHamiltonian::mw_res_handle_.
Referenced by qmcplusplus::TEST_CASE().
|
static |
Definition at line 291 of file QMCHamiltonian.cpp.
References QMCHamiltonian::mw_res_handle_.
Referenced by qmcplusplus::TEST_CASE().
void registerCollectables | ( | std::vector< ObservableHelper > & | h5desc, |
hdf_archive & | file | ||
) | const |
register collectables so that their averages can be dumped to hdf5
h5desc | has observable_helper for each h5 group |
gid | h5 group id to which the observable groups are added. |
Add observable_helper information for the data stored in ParticleSet::mcObservables.
Definition at line 270 of file QMCHamiltonian.cpp.
References QMCHamiltonian::auxH.
Referenced by CollectablesEstimator::registerObservables().
void registerObservables | ( | std::vector< ObservableHelper > & | h5desc, |
hdf_archive & | file | ||
) | const |
register obsevables so that their averages can be dumped to hdf5
h5desc | has observable_helper for each h5 group |
gid | h5 group id to which the observable groups are added. |
Definition at line 262 of file QMCHamiltonian.cpp.
References QMCHamiltonian::auxH, and QMCHamiltonian::H.
Referenced by LocalEnergyEstimator::registerObservables().
|
inline |
save the values of Hamiltonian elements to the Properties
This creates a hard dependence on Walker using WalkerProperties to index its Properties. It also assumes no one else is sticking things into Walker's Properties and that It can access into it as if it were a raw FullPrecRealType array.
Definition at line 195 of file QMCHamiltonian.h.
References copy(), QMCHamiltonian::KineticEnergy, QMCHamiltonian::LocalEnergy, QMCHamiltonian::myIndex, and QMCHamiltonian::Observables.
Referenced by SOVMCUpdateAll::advanceWalker(), DMCUpdateAllWithRejection::advanceWalker(), SODMCUpdatePbyPWithRejectionFast::advanceWalker(), VMCUpdateAll::advanceWalker(), VMCUpdatePbyP::advanceWalker(), DMCUpdatePbyPWithRejectionFast::advanceWalker(), SOVMCUpdatePbyP::advanceWalker(), DMCUpdatePbyPL2::advanceWalker(), DMCUpdateAllWithKill::advanceWalker(), VMCBatched::advanceWalkers(), RMCUpdatePbyPWithDrift::advanceWalkersRMC(), RMCUpdateAllWithDrift::advanceWalkersRMC(), RMCUpdatePbyPWithDrift::advanceWalkersVMC(), RMCUpdateAllWithDrift::advanceWalkersVMC(), QMCDriverNew::initialLogEvaluation(), RMCUpdateAllWithDrift::initWalkers(), QMCUpdateBase::initWalkers(), QMCUpdateBase::initWalkersForPbyP(), WaveFunctionTester::runRatioTest(), WaveFunctionTester::runRatioTest2(), and qmcplusplus::TEST_CASE().
|
inline |
return the size of collectables
Definition at line 170 of file QMCHamiltonian.h.
References QMCHamiltonian::numCollectables.
Referenced by CollectablesEstimator::CollectablesEstimator(), and EstimatorManagerBase::put().
|
inline |
return the size of observables
Definition at line 168 of file QMCHamiltonian.h.
References QMCHamiltonian::Observables.
Referenced by CSEnergyEstimator::CSEnergyEstimator(), EstimatorManagerNew::EstimatorManagerNew(), QMCMain::executeCMCSection(), LocalEnergyEstimator::LocalEnergyEstimator(), WaveFunctionTester::printEloc(), EstimatorManagerNew::put(), EstimatorManagerBase::put(), ForwardWalking::putSpecial(), RMCLocalEnergyEstimator::resizeBasedOnHamiltonian(), WaveFunctionTester::runDerivCloneTest(), WaveFunctionTester::runDerivNLPPTest(), WaveFunctionTester::runDerivTest(), WaveFunctionTester::runGradSourceTest(), WaveFunctionTester::runRatioTest(), WaveFunctionTester::runRatioTest2(), and qmcplusplus::TEST_CASE().
|
inline |
retrun the starting index
Definition at line 166 of file QMCHamiltonian.h.
References QMCHamiltonian::myIndex.
Referenced by CSEnergyEstimator::CSEnergyEstimator(), LocalEnergyEstimator::LocalEnergyEstimator(), ForwardWalking::putSpecial(), and RMCLocalEnergyEstimator::resizeBasedOnHamiltonian().