18 #ifndef QMCPLUSPLUS_PLANEWAVE_ORBITALSET_BLAS_H 19 #define QMCPLUSPLUS_PLANEWAVE_ORBITALSET_BLAS_H 50 std::string
getClassName()
const override {
return "PWOrbitalSet"; }
59 std::unique_ptr<SPOSet>
makeClone()
const override;
69 void addVector(
const std::vector<ComplexType>& coefs,
int jorb);
70 void addVector(
const std::vector<RealType>& coefs,
int jorb);
base class for Single-particle orbital sets
void resize(PWBasisPtr bset, int nbands, bool cleanup=false)
resize the orbital base
helper functions for EinsplineSetBuilder
void evaluate(const PosType &pos)
IndexType BasisSetSize
number of basis
Matrix< ValueType > Temp
temporary array to perform gemm operation
void addVector(const std::vector< ComplexType > &coefs, int jorb)
Builder class takes care of the assertion.
PosType TwistAngle
TwistAngle of this PWOrbitalSet.
ValueType evaluate(int ib, const PosType &pos)
std::unique_ptr< SPOSet > makeClone() const override
make a clone of itself every derived class must implement this to have threading working correctly...
void evaluate_notranspose(const ParticleSet &P, int first, int last, ValueMatrix &logdet, GradMatrix &dlogdet, ValueMatrix &d2logdet) override
evaluate the values, gradients and laplacians of this single-particle orbital for [first...
OrbitalSetTraits< ValueType >::ValueMatrix ValueMatrix
void evaluateVGL(const ParticleSet &P, int iat, ValueVector &psi, GradVector &dpsi, ValueVector &d2psi) override
evaluate the values, gradients and laplacians of this single-particle orbital set ...
OrbitalSetTraits< ValueType >::ValueVector ValueVector
ValueMatrix * C
pointer to matrix containing the coefficients
PWBasisPtr myBasisSet
My basis set.
OrbitalSetTraits< ValueType >::GradMatrix GradMatrix
std::string getClassName() const override
return class name
~PWOrbitalSet() override
delete BasisSet only it owns this
Specialized paritlce class for atomistic simulations.
static T dot(int n, const T *restrict a, const T *restrict b)
OHMMS_INDEXTYPE IndexType
define other types
void evaluateValue(const ParticleSet &P, int iat, ValueVector &psi) override
evaluate the values of this single-particle orbital set
OrbitalSetTraits< ValueType >::GradVector GradVector
PWOrbitalSet(const std::string &my_name)
default constructor
bool IsCloned
if true, do not clean up
LatticeGaussianProduct::ValueType ValueType
Declaration of Plane-wave basis set.
void setOrbitalSetSize(int norbs) override
set the OrbitalSetSize