QMCPACK
DriftModifierBase Class Referenceabstract

this class implements drift modification More...

+ Inheritance diagram for DriftModifierBase:
+ Collaboration diagram for DriftModifierBase:

Public Types

using RealType = QMCTraits::RealType
 
using PosType = QMCTraits::PosType
 
using GradType = QMCTraits::GradType
 
using ComplexType = QMCTraits::ComplexType
 

Public Member Functions

virtual void getDrift (RealType tau, const GradType &qf, PosType &drift) const =0
 evaluate a drift with a real force More...
 
virtual void getDrift (RealType tau, const ComplexType &qf, ParticleSet::Scalar_t &drift) const =0
 
virtual void getDrifts (RealType tau, const std::vector< GradType > &qf, std::vector< PosType > &) const =0
 
virtual void getDrifts (RealType tau, const std::vector< ComplexType > &qf, std::vector< ParticleSet::Scalar_t > &) const =0
 
template<CoordsType CT>
void getDrifts (const TauParams< RealType, CT > &taus, const TWFGrads< CT > &qf, MCCoords< CT > &drifts) const
 
virtual bool parseXML (xmlNodePtr cur)
 
virtual ~DriftModifierBase ()
 

Protected Attributes

std::string ClassName
 

Detailed Description

this class implements drift modification

Definition at line 26 of file DriftModifierBase.h.

Member Typedef Documentation

◆ ComplexType

Definition at line 32 of file DriftModifierBase.h.

◆ GradType

Definition at line 31 of file DriftModifierBase.h.

◆ PosType

Definition at line 30 of file DriftModifierBase.h.

◆ RealType

Definition at line 29 of file DriftModifierBase.h.

Constructor & Destructor Documentation

◆ ~DriftModifierBase()

virtual ~DriftModifierBase ( )
inlinevirtual

Definition at line 54 of file DriftModifierBase.h.

54 {}

Member Function Documentation

◆ getDrift() [1/2]

virtual void getDrift ( RealType  tau,
const GradType qf,
PosType drift 
) const
pure virtual

◆ getDrift() [2/2]

virtual void getDrift ( RealType  tau,
const ComplexType qf,
ParticleSet::Scalar_t drift 
) const
pure virtual

Implemented in DriftModifierUNR.

◆ getDrifts() [1/3]

virtual void getDrifts ( RealType  tau,
const std::vector< GradType > &  qf,
std::vector< PosType > &   
) const
pure virtual

◆ getDrifts() [2/3]

virtual void getDrifts ( RealType  tau,
const std::vector< ComplexType > &  qf,
std::vector< ParticleSet::Scalar_t > &   
) const
pure virtual

Implemented in DriftModifierUNR.

◆ getDrifts() [3/3]

void getDrifts ( const TauParams< RealType, CT > &  taus,
const TWFGrads< CT > &  qf,
MCCoords< CT > &  drifts 
) const

Definition at line 62 of file DriftModifierBase.h.

References DriftModifierBase::getDrifts(), and qmcplusplus::POS_SPIN.

63 {
64  getDrifts(taus.tauovermass, qf.grads_positions, drifts.positions);
65  if constexpr (CT == CoordsType::POS_SPIN)
66  getDrifts(taus.spin_tauovermass, qf.grads_spins, drifts.spins);
67 }
virtual void getDrifts(RealType tau, const std::vector< GradType > &qf, std::vector< PosType > &) const =0

◆ parseXML()

virtual bool parseXML ( xmlNodePtr  cur)
inlinevirtual

Reimplemented in DriftModifierUNR.

Definition at line 52 of file DriftModifierBase.h.

Referenced by QMCDriver::process().

52 { return true; }

Member Data Documentation

◆ ClassName

std::string ClassName
protected

Definition at line 58 of file DriftModifierBase.h.


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