15 #ifndef QMCPLUSPLUS_REALSPACE_POSITIONS_H 16 #define QMCPLUSPLUS_REALSPACE_POSITIONS_H 34 std::unique_ptr<DynamicCoordinates>
makeClone()
override {
return std::make_unique<RealSpacePositions>(*this); }
48 const std::vector<PosType>& new_positions,
49 const std::vector<bool>& isAccepted)
const override 52 for (
size_t iw = 0; iw < isAccepted.size(); iw++)
54 coords_list[iw].setOneParticlePos(new_positions[iw], iat);
DynamicCoordinateKind
enumerator for DynamicCoordinates kinds
PosVectorSoa RSoA
particle positions in SoA layout
void mw_acceptParticlePos(const RefVectorWithLeader< DynamicCoordinates > &coords_list, size_t iat, const std::vector< PosType > &new_positions, const std::vector< bool > &isAccepted) const override
overwrite the positions of particles with a uniform id in all the walkers upon acceptance.
Introduced to handle virtual moves and ratio computations, e.g.
helper functions for EinsplineSetBuilder
QTBase::RealType RealType
quantum variables of all the particles
Soa Container for D-dim vectors.
SoA adaptor class for Vector<TinyVector<T,D> >
Attaches a unit to a Vector for IO.
size_type size() const
return the current size
const PosVectorSoa & getAllParticlePos() const override
all particle position accessor
void setOneParticlePos(const PosType &pos, size_t iat) override
overwrite the position of one the particle.
void copyIn(const Vector< TinyVector< T, D >> &in)
AoS to SoA : copy from Vector<TinyVector<>>
PosType getOneParticlePos(size_t iat) const override
one particle position accessor
QMCTraits::RealType RealType
void resize(size_t n) override
resize internal storages based on the number of particles
std::unique_ptr< DynamicCoordinates > makeClone() override
ParticleAttrib< SingleParticlePos > ParticlePos
size_t size() const override
return the number of particles
void setAllParticlePos(const ParticlePos &R) override
overwrite the positions of all the particles.
void resize(size_type n)
resize myData
size_type size() const
return the physical size