QMCPACK
MultiWalkerTalker Class Reference
+ Collaboration diagram for MultiWalkerTalker:

Public Member Functions

 MultiWalkerTalker (const std::string &name, int walkers)
 
void registerVector (ListenerVector< Real > &listener_vector)
 
void reportVector ()
 

Private Attributes

std::vector< ListenerVector< Real > > listener_vectors_
 
const std::string name_ {"Talker"}
 
int walkers_
 

Detailed Description

Definition at line 26 of file test_PerParticleHamiltonianLogger.cpp.

Constructor & Destructor Documentation

◆ MultiWalkerTalker()

MultiWalkerTalker ( const std::string &  name,
int  walkers 
)
inline

Member Function Documentation

◆ registerVector()

void registerVector ( ListenerVector< Real > &  listener_vector)
inline

Definition at line 35 of file test_PerParticleHamiltonianLogger.cpp.

References MultiWalkerTalker::listener_vectors_.

35 { listener_vectors_.push_back(listener_vector); }
std::vector< ListenerVector< Real > > listener_vectors_

◆ reportVector()

void reportVector ( )
inline

Definition at line 36 of file test_PerParticleHamiltonianLogger.cpp.

References Vector< T, Alloc >::begin(), Vector< T, Alloc >::end(), MultiWalkerTalker::listener_vectors_, MultiWalkerTalker::name_, and MultiWalkerTalker::walkers_.

37  {
38  Vector<Real> vec_part(4);
39 
40  for (auto& listener : listener_vectors_)
41  for (int iw = 0; iw < walkers_; ++iw)
42  {
43  std::iota(vec_part.begin(), vec_part.end(), iw * walkers_);
44 
45  listener.report(iw, name_, vec_part);
46  }
47  }
std::vector< ListenerVector< Real > > listener_vectors_

Member Data Documentation

◆ listener_vectors_

std::vector<ListenerVector<Real> > listener_vectors_
private

◆ name_

const std::string name_ {"Talker"}
private

◆ walkers_

int walkers_
private

The documentation for this class was generated from the following file: