13 #ifndef QMCPLUSPLUS_MOMENTUMDISTRIBUTION_H 14 #define QMCPLUSPLUS_MOMENTUMDISTRIBUTION_H 28 class MomentumDistributionTests;
a class that defines a supercell in D-dimensional Euclean space.
std::vector< T, aligned_allocator< T > > aligned_vector
helper functions for EinsplineSetBuilder
QMCTraits::RealType RealType
QTBase::RealType RealType
std::unique_ptr< OperatorEstBase > spawnCrowdClone() const override
standard interface
CrystalLattice< OHMMS_PRECISION, OHMMS_DIM > ParticleLayout
std::vector< ValueType > psi_ratios
wavefunction ratios
Vector< RealType > kdotp
nofK internal
Class that collects momentum distribution of electrons.
class to preserve access control in MomentumDistribution
void collect(const RefVector< OperatorEstBase > &operator_estimators) override
this allows the EstimatorManagerNew to reduce without needing to know the details of MomentumDistribu...
QTBase::ComplexType ComplexType
Matrix< ValueType > psi_ratios_all
wavefunction ratios all samples
CrystalLattice< OHMMS_PRECISION, OHMMS_DIM > lattice
void registerOperatorEstimator(hdf_archive &file) override
this allows the EstimatorManagerNew to reduce without needing to know the details of MomentumDistribu...
const RealType norm_nofK
normalization factor for n(k)
aligned_vector< RealType > nofK
nofK
QTBase::ValueType ValueType
std::vector< int > kWeights
weight of k-points (make use of symmetry)
An abstract class for gridded estimators.
std::vector< VectorSoaContainer< RealType, 2 > > phases_vPos
phases of vPos
const LatticeType Lattice
lattice vector
std::vector< PosType > vPos
std::vector< std::reference_wrapper< T > > RefVector
const PosType twist
twist angle
std::vector< PosType > kPoints
list of k-points in Cartesian Coordinates
const MomentumDistributionInput input_
input values
VectorSoaContainer< RealType, 2 > phases
phases
DataLocality
data locality with respect to walker buffer
MomentumDistribution(MomentumDistributionInput &&mdi, size_t np, const PosType &twist, const LatticeType &lattice, DataLocality dl=DataLocality::crowd)
Constructor for MomentumDistributionInput.
QMCTraits::ComplexType ComplexType
void startBlock(int steps) override
This allows us to allocate the necessary data for the DataLocality::queue.
Native representation for Momentum Distribution Estimators inputs.
void accumulate(const RefVector< MCPWalker > &walkers, const RefVector< ParticleSet > &psets, const RefVector< TrialWaveFunction > &wfns, const RefVector< QMCHamiltonian > &hams, RandomBase< FullPrecRealType > &rng) override
accumulate 1 or more walkers of MomentumDistribution samples
QMCTraits::ValueType ValueType