![]() |
QMCPACK
|
Public Member Functions | |
Backflow_eI_spin (ParticleSet &ions, ParticleSet &els) | |
~Backflow_eI_spin () override | |
void | addFunc (int source_g, FT *afunc, int target_g) |
std::unique_ptr< BackflowFunctionBase > | makeClone (ParticleSet &tqp) const override |
void | reportStatus (std::ostream &os) override |
void | resetParameters (const opt_variables_type &active) override |
void | checkInVariables (opt_variables_type &active) override |
void | checkOutVariables (const opt_variables_type &active) override |
bool | isOptimizable () override |
int | indexOffset () override |
void | acceptMove (int iat, int UpdateMode) override |
void | restore (int iat, int UpdateType) override |
void | registerData (WFBufferType &buf) override |
void | evaluate (const ParticleSet &P, ParticleSet &QP) override |
calculate quasi-particle coordinates only More... | |
void | evaluate (const ParticleSet &P, ParticleSet &QP, GradVector &Bmat, HessMatrix &Amat) |
void | evaluate (const ParticleSet &P, ParticleSet &QP, GradMatrix &Bmat_full, HessMatrix &Amat) override |
calculate quasi-particle coordinates, Bmat and Amat More... | |
void | evaluatePbyP (const ParticleSet &P, ParticleSet::ParticlePos &newQP, const std::vector< int > &index) override |
calculate quasi-particle coordinates after pbyp move More... | |
void | evaluatePbyP (const ParticleSet &P, int iat, ParticleSet::ParticlePos &newQP) override |
calculate quasi-particle coordinates after pbyp move More... | |
void | evaluatePbyP (const ParticleSet &P, ParticleSet::ParticlePos &newQP, const std::vector< int > &index, HessMatrix &Amat) override |
calculate quasi-particle coordinates and Amat after pbyp move More... | |
void | evaluatePbyP (const ParticleSet &P, int iat, ParticleSet::ParticlePos &newQP, HessMatrix &Amat) override |
calculate quasi-particle coordinates and Amat after pbyp move More... | |
void | evaluatePbyP (const ParticleSet &P, ParticleSet::ParticlePos &newQP, const std::vector< int > &index, GradMatrix &Bmat_full, HessMatrix &Amat) override |
calculate quasi-particle coordinates, Bmat and Amat after pbyp move More... | |
void | evaluatePbyP (const ParticleSet &P, int iat, ParticleSet::ParticlePos &newQP, GradMatrix &Bmat_full, HessMatrix &Amat) override |
calculate quasi-particle coordinates, Bmat and Amat after pbyp move More... | |
void | evaluateBmatOnly (const ParticleSet &P, GradMatrix &Bmat_full) override |
calculate only Bmat This is used in pbyp moves, in updateBuffer() More... | |
void | evaluateWithDerivatives (const ParticleSet &P, ParticleSet &QP, GradMatrix &Bmat_full, HessMatrix &Amat, GradMatrix &Cmat, GradMatrix &Ymat, HessArray &Xmat) override |
calculate quasi-particle coordinates, Bmat and Amat calculate derivatives wrt to variational parameters More... | |
![]() | |
BackflowFunctionBase (ParticleSet &ions, ParticleSet &els) | |
void | resize (int NT, int NC) |
virtual | ~BackflowFunctionBase () |
int | setParamIndex (int n) |
void | updateBuffer (WFBufferType &buf) |
void | copyFromBuffer (WFBufferType &buf) |
Public Attributes | |
bool | Spin |
Matrix< FT * > | RadFunc |
Matrix< int > | Fmask |
Matrix< int > | offsetPrms |
std::vector< int > | s_offset |
index offset for the source particles More... | |
std::vector< int > | t_offset |
index offset for the target particles More... | |
![]() | |
ParticleSet & | CenterSys |
Reference to the center. More... | |
int | NumCenters |
number of centers, e.g., ions More... | |
int | NumTargets |
number of quantum particles More... | |
int | numParams |
int | indexOfFirstParam |
std::vector< TinyVector< RealType, 3 > > | derivs |
Matrix< PosType > | UIJ |
Vector< PosType > | UIJ_temp |
HessMatrix | AIJ |
HessVector | AIJ_temp |
GradMatrix | BIJ |
GradVector | BIJ_temp |
RealType * | FirstOfU |
RealType * | LastOfU |
RealType * | FirstOfA |
RealType * | LastOfA |
RealType * | FirstOfB |
RealType * | LastOfB |
bool | uniqueFunctions |
opt_variables_type | myVars |
Private Attributes | |
const int | myTableIndex_ |
distance table index More... | |
Additional Inherited Members | |
![]() | |
enum | { DIM = OHMMS_DIM } |
enum | { ORB_PBYP_RATIO, ORB_PBYP_ALL, ORB_PBYP_PARTIAL, ORB_WALKER, ORB_ALLWALKER } |
enum for a update mode More... | |
using | Walker_t = ParticleSet::Walker_t |
using | WFBufferType = Walker_t::WFBuffer_t |
using | RealType = OHMMS_PRECISION |
using | IndexType = int |
using | PosType = TinyVector< RealType, DIM > |
using | GradType = TinyVector< RealType, DIM > |
using | HessType = Tensor< RealType, DIM > |
using | IndexVector = Vector< IndexType > |
using | GradVector = Vector< GradType > |
using | GradMatrix = Matrix< GradType > |
using | HessVector = Vector< HessType > |
using | HessMatrix = Matrix< HessType > |
using | HessArray = Array< HessType, 3 > |
Definition at line 25 of file Backflow_eI_spin.h.
|
inline |
Definition at line 51 of file Backflow_eI_spin.h.
References Backflow_eI_spin< FT >::Fmask, ParticleSet::groups(), ParticleSet::last(), BackflowFunctionBase::NumCenters, BackflowFunctionBase::NumTargets, Backflow_eI_spin< FT >::offsetPrms, Backflow_eI_spin< FT >::RadFunc, Matrix< T, Alloc >::resize(), BackflowFunctionBase::resize(), qmcplusplus::Units::time::s, Backflow_eI_spin< FT >::s_offset, Matrix< T, Alloc >::size(), and Backflow_eI_spin< FT >::t_offset.
|
inlineoverride |
Definition at line 72 of file Backflow_eI_spin.h.
References Backflow_eI_spin< FT >::RadFunc, and Matrix< T, Alloc >::size().
|
inlineoverridevirtual |
Implements BackflowFunctionBase.
Definition at line 175 of file Backflow_eI_spin.h.
References BackflowFunctionBase::AIJ, BackflowFunctionBase::AIJ_temp, BackflowFunctionBase::BIJ, BackflowFunctionBase::BIJ_temp, Matrix< T, Alloc >::cols(), BackflowFunctionBase::ORB_PBYP_ALL, BackflowFunctionBase::ORB_PBYP_PARTIAL, BackflowFunctionBase::ORB_PBYP_RATIO, BackflowFunctionBase::UIJ, and BackflowFunctionBase::UIJ_temp.
|
inline |
Definition at line 79 of file Backflow_eI_spin.h.
References APP_ABORT, qmcplusplus::app_log(), Matrix< T, Alloc >::cols(), Backflow_eI_spin< FT >::Fmask, Backflow_eI_spin< FT >::RadFunc, and Backflow_eI_spin< FT >::Spin.
|
inlineoverridevirtual |
Implements BackflowFunctionBase.
Definition at line 143 of file Backflow_eI_spin.h.
References Backflow_eI_spin< FT >::Fmask, Backflow_eI_spin< FT >::RadFunc, and Matrix< T, Alloc >::size().
|
inlineoverridevirtual |
Implements BackflowFunctionBase.
Definition at line 151 of file Backflow_eI_spin.h.
References Backflow_eI_spin< FT >::Fmask, Backflow_eI_spin< FT >::RadFunc, and Matrix< T, Alloc >::size().
|
inlineoverridevirtual |
calculate quasi-particle coordinates only
Implements BackflowFunctionBase.
Definition at line 243 of file Backflow_eI_spin.h.
References APP_ABORT.
|
inline |
Definition at line 270 of file Backflow_eI_spin.h.
References APP_ABORT.
|
inlineoverridevirtual |
calculate quasi-particle coordinates, Bmat and Amat
Implements BackflowFunctionBase.
Definition at line 309 of file Backflow_eI_spin.h.
References APP_ABORT.
|
inlineoverridevirtual |
calculate only Bmat This is used in pbyp moves, in updateBuffer()
Implements BackflowFunctionBase.
Definition at line 461 of file Backflow_eI_spin.h.
References APP_ABORT.
|
inlineoverridevirtual |
calculate quasi-particle coordinates after pbyp move
Implements BackflowFunctionBase.
Definition at line 348 of file Backflow_eI_spin.h.
Referenced by Backflow_eI_spin< FT >::evaluatePbyP().
|
inlineoverridevirtual |
calculate quasi-particle coordinates after pbyp move
Implements BackflowFunctionBase.
Definition at line 358 of file Backflow_eI_spin.h.
References APP_ABORT.
|
inlineoverridevirtual |
calculate quasi-particle coordinates and Amat after pbyp move
Implements BackflowFunctionBase.
Definition at line 379 of file Backflow_eI_spin.h.
References Backflow_eI_spin< FT >::evaluatePbyP().
|
inlineoverridevirtual |
calculate quasi-particle coordinates and Amat after pbyp move
Implements BackflowFunctionBase.
Definition at line 387 of file Backflow_eI_spin.h.
References APP_ABORT.
|
inlineoverridevirtual |
calculate quasi-particle coordinates, Bmat and Amat after pbyp move
Implements BackflowFunctionBase.
Definition at line 415 of file Backflow_eI_spin.h.
References Backflow_eI_spin< FT >::evaluatePbyP().
|
inlineoverridevirtual |
calculate quasi-particle coordinates, Bmat and Amat after pbyp move
Implements BackflowFunctionBase.
Definition at line 424 of file Backflow_eI_spin.h.
References APP_ABORT.
|
inlineoverridevirtual |
calculate quasi-particle coordinates, Bmat and Amat calculate derivatives wrt to variational parameters
Implements BackflowFunctionBase.
Definition at line 490 of file Backflow_eI_spin.h.
References APP_ABORT.
|
inlineoverridevirtual |
Implements BackflowFunctionBase.
Definition at line 166 of file Backflow_eI_spin.h.
References Backflow_eI_spin< FT >::Fmask, Backflow_eI_spin< FT >::RadFunc, and Matrix< T, Alloc >::size().
|
inlineoverridevirtual |
Implements BackflowFunctionBase.
Definition at line 158 of file Backflow_eI_spin.h.
References Backflow_eI_spin< FT >::Fmask, Backflow_eI_spin< FT >::RadFunc, and Matrix< T, Alloc >::size().
Referenced by Backflow_eI_spin< FT >::reportStatus().
|
inlineoverridevirtual |
Implements BackflowFunctionBase.
Definition at line 104 of file Backflow_eI_spin.h.
References BackflowFunctionBase::CenterSys, qmcplusplus::clone, BackflowFunctionBase::derivs, BackflowFunctionBase::indexOfFirstParam, BackflowFunctionBase::NumCenters, BackflowFunctionBase::numParams, BackflowFunctionBase::NumTargets, Backflow_eI_spin< FT >::offsetPrms, Backflow_eI_spin< FT >::RadFunc, Matrix< T, Alloc >::rows(), and Backflow_eI_spin< FT >::Spin.
|
inlineoverridevirtual |
Implements BackflowFunctionBase.
Definition at line 228 of file Backflow_eI_spin.h.
References PooledMemory< T_scalar, Alloc >::add(), BackflowFunctionBase::AIJ, BackflowFunctionBase::BIJ, BackflowFunctionBase::FirstOfA, BackflowFunctionBase::FirstOfB, BackflowFunctionBase::FirstOfU, BackflowFunctionBase::LastOfA, BackflowFunctionBase::LastOfB, BackflowFunctionBase::LastOfU, BackflowFunctionBase::NumCenters, BackflowFunctionBase::NumTargets, OHMMS_DIM, and BackflowFunctionBase::UIJ.
|
inlineoverridevirtual |
Implements BackflowFunctionBase.
Definition at line 128 of file Backflow_eI_spin.h.
References Backflow_eI_spin< FT >::isOptimizable(), Backflow_eI_spin< FT >::myTableIndex_, Backflow_eI_spin< FT >::offsetPrms, Backflow_eI_spin< FT >::RadFunc, and Matrix< T, Alloc >::size().
|
inlineoverridevirtual |
Implements BackflowFunctionBase.
Definition at line 136 of file Backflow_eI_spin.h.
References Backflow_eI_spin< FT >::Fmask, Backflow_eI_spin< FT >::RadFunc, and Matrix< T, Alloc >::size().
|
inlineoverridevirtual |
Implements BackflowFunctionBase.
Definition at line 221 of file Backflow_eI_spin.h.
References BackflowFunctionBase::AIJ_temp, BackflowFunctionBase::BIJ_temp, and BackflowFunctionBase::UIJ_temp.
Matrix<int> Fmask |
Definition at line 34 of file Backflow_eI_spin.h.
Referenced by Backflow_eI_spin< FT >::addFunc(), Backflow_eI_spin< FT >::Backflow_eI_spin(), Backflow_eI_spin< FT >::checkInVariables(), Backflow_eI_spin< FT >::checkOutVariables(), Backflow_eI_spin< FT >::indexOffset(), Backflow_eI_spin< FT >::isOptimizable(), and Backflow_eI_spin< FT >::resetParameters().
|
private |
distance table index
Definition at line 29 of file Backflow_eI_spin.h.
Referenced by Backflow_eI_spin< FT >::reportStatus().
Matrix<int> offsetPrms |
Definition at line 35 of file Backflow_eI_spin.h.
Referenced by Backflow_eI_spin< FT >::Backflow_eI_spin(), Backflow_eI_spin< FT >::makeClone(), and Backflow_eI_spin< FT >::reportStatus().
Matrix<FT*> RadFunc |
Definition at line 33 of file Backflow_eI_spin.h.
Referenced by Backflow_eI_spin< FT >::addFunc(), Backflow_eI_spin< FT >::Backflow_eI_spin(), Backflow_eI_spin< FT >::checkInVariables(), Backflow_eI_spin< FT >::checkOutVariables(), Backflow_eI_spin< FT >::indexOffset(), Backflow_eI_spin< FT >::isOptimizable(), Backflow_eI_spin< FT >::makeClone(), Backflow_eI_spin< FT >::reportStatus(), Backflow_eI_spin< FT >::resetParameters(), and Backflow_eI_spin< FT >::~Backflow_eI_spin().
std::vector<int> s_offset |
index offset for the source particles
The loop over the particles is replaced by a double loop as for(int sg=0;sg<F.rows();++sg) for(int s=s_offset[sg]; s<s_offset[sg+1];++s)
Definition at line 42 of file Backflow_eI_spin.h.
Referenced by Backflow_eI_spin< FT >::Backflow_eI_spin().
bool Spin |
Definition at line 32 of file Backflow_eI_spin.h.
Referenced by Backflow_eI_spin< FT >::addFunc(), and Backflow_eI_spin< FT >::makeClone().
std::vector<int> t_offset |
index offset for the target particles
The loop over the particles is replaced by a double loop as for(int tg=0;tg<F.cols();++tg) for(int t=t_offset[tg]; t<t_offset[tg+1];++t)
Definition at line 49 of file Backflow_eI_spin.h.
Referenced by Backflow_eI_spin< FT >::Backflow_eI_spin().