![]() |
QMCPACK
|
Public Member Functions | |
RotatedSPOs (const std::string &my_name, std::unique_ptr< SPOSet > &&spos) | |
~RotatedSPOs () override | |
std::string | getClassName () const override |
return class name More... | |
bool | isOptimizable () const override |
Query if this SPOSet is optimizable. More... | |
bool | isOMPoffload () const override |
Query if this SPOSet uses OpenMP offload. More... | |
bool | hasIonDerivs () const override |
Query if this SPOSet has an explicit ion dependence. More... | |
void | apply_rotation (const std::vector< ValueType > ¶m, bool use_stored_copy) |
void | applyDeltaRotation (const std::vector< ValueType > &delta_param, const std::vector< ValueType > &old_param, std::vector< ValueType > &new_param) |
void | applyRotationHistory () |
void | applyFullRotation (const std::vector< ValueType > &full_param, bool use_stored_copy) |
void | setRotationParameters (const std::vector< RealType > ¶m_list) |
For now, this takes the real optimizable parameters (real rotation coefficients) and converts them to ValueType parameter lists for internal consumption by the real and complex orb-opt code. More... | |
std::unique_ptr< SPOSet > | makeClone () const override |
make a clone of itself every derived class must implement this to have threading working correctly. More... | |
void | buildOptVariables (size_t nel) |
void | buildOptVariables (const RotationIndices &rotations, const RotationIndices &full_rotations) |
void | evaluateDerivatives (ParticleSet &P, const opt_variables_type &optvars, Vector< ValueType > &dlogpsi, Vector< ValueType > &dhpsioverpsi, const int &FirstIndex, const int &LastIndex) override |
Parameter derivatives of the wavefunction and the Laplacian of the wavefunction. More... | |
void | evaluateDerivativesWF (ParticleSet &P, const opt_variables_type &optvars, Vector< ValueType > &dlogpsi, int FirstIndex, int LastIndex) override |
Parameter derivatives of the wavefunction. More... | |
void | evaluateDerivatives (ParticleSet &P, const opt_variables_type &optvars, Vector< ValueType > &dlogpsi, Vector< ValueType > &dhpsioverpsi, const ValueType &psiCurrent, const std::vector< ValueType > &Coeff, const std::vector< size_t > &C2node_up, const std::vector< size_t > &C2node_dn, const ValueVector &detValues_up, const ValueVector &detValues_dn, const GradMatrix &grads_up, const GradMatrix &grads_dn, const ValueMatrix &lapls_up, const ValueMatrix &lapls_dn, const ValueMatrix &M_up, const ValueMatrix &M_dn, const ValueMatrix &Minv_up, const ValueMatrix &Minv_dn, const GradMatrix &B_grad, const ValueMatrix &B_lapl, const std::vector< int > &detData_up, const size_t N1, const size_t N2, const size_t NP1, const size_t NP2, const std::vector< std::vector< int >> &lookup_tbl) override |
Evaluate the derivative of the optimized orbitals with respect to the parameters this is used only for MSD, to be refined for better serving both single and multi SD. More... | |
void | evaluateDerivativesWF (ParticleSet &P, const opt_variables_type &optvars, Vector< ValueType > &dlogpsi, const QTFull::ValueType &psiCurrent, const std::vector< ValueType > &Coeff, const std::vector< size_t > &C2node_up, const std::vector< size_t > &C2node_dn, const ValueVector &detValues_up, const ValueVector &detValues_dn, const ValueMatrix &M_up, const ValueMatrix &M_dn, const ValueMatrix &Minv_up, const ValueMatrix &Minv_dn, const std::vector< int > &detData_up, const std::vector< std::vector< int >> &lookup_tbl) override |
Evaluate the derivative of the optimized orbitals with respect to the parameters this is used only for MSD, to be refined for better serving both single and multi SD. More... | |
void | table_method_eval (Vector< ValueType > &dlogpsi, Vector< ValueType > &dhpsioverpsi, const ParticleSet::ParticleLaplacian &myL_J, const ParticleSet::ParticleGradient &myG_J, const size_t nel, const size_t nmo, const ValueType &psiCurrent, const std::vector< RealType > &Coeff, const std::vector< size_t > &C2node_up, const std::vector< size_t > &C2node_dn, const ValueVector &detValues_up, const ValueVector &detValues_dn, const GradMatrix &grads_up, const GradMatrix &grads_dn, const ValueMatrix &lapls_up, const ValueMatrix &lapls_dn, const ValueMatrix &M_up, const ValueMatrix &M_dn, const ValueMatrix &Minv_up, const ValueMatrix &Minv_dn, const GradMatrix &B_grad, const ValueMatrix &B_lapl, const std::vector< int > &detData_up, const size_t N1, const size_t N2, const size_t NP1, const size_t NP2, const std::vector< std::vector< int >> &lookup_tbl) |
void | table_method_evalWF (Vector< ValueType > &dlogpsi, const size_t nel, const size_t nmo, const ValueType &psiCurrent, const std::vector< RealType > &Coeff, const std::vector< size_t > &C2node_up, const std::vector< size_t > &C2node_dn, const ValueVector &detValues_up, const ValueVector &detValues_dn, const ValueMatrix &M_up, const ValueMatrix &M_dn, const ValueMatrix &Minv_up, const ValueMatrix &Minv_dn, const std::vector< int > &detData_up, const std::vector< std::vector< int >> &lookup_tbl) |
void | extractOptimizableObjectRefs (UniqueOptObjRefs &opt_obj_refs) override |
extract underlying OptimizableObject references More... | |
void | checkInVariablesExclusive (opt_variables_type &active) override |
check in variational parameters to the global list of parameters used by the optimizer. More... | |
void | checkOutVariables (const opt_variables_type &active) override |
check out variational optimizable variables More... | |
void | resetParametersExclusive (const opt_variables_type &active) override |
reset More... | |
void | writeVariationalParameters (hdf_archive &hout) override |
Write the variational parameters for this object to the VP HDF file. More... | |
void | readVariationalParameters (hdf_archive &hin) override |
Read the variational parameters for this object from the VP HDF file. More... | |
void | setOrbitalSetSize (int norbs) override |
set the OrbitalSetSize More... | |
void | checkObject () const override |
check a few key parameters before putting the SPO into a determinant More... | |
void | evaluateValue (const ParticleSet &P, int iat, ValueVector &psi) override |
evaluate the values of this single-particle orbital set More... | |
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 More... | |
void | evaluateVGL_spin (const ParticleSet &P, int iat, ValueVector &psi, GradVector &dpsi, ValueVector &d2psi, ValueVector &dspin_psi) override |
evaluate the values, gradients and laplacians and spin gradient of this single-particle orbital set More... | |
void | evaluateDetRatios (const VirtualParticleSet &VP, ValueVector &psi, const ValueVector &psiinv, std::vector< ValueType > &ratios) override |
evaluate determinant ratios for virtual moves, e.g., sphere move for nonlocalPP More... | |
void | evaluateDerivRatios (const VirtualParticleSet &VP, const opt_variables_type &optvars, ValueVector &psi, const ValueVector &psiinv, std::vector< ValueType > &ratios, Matrix< ValueType > &dratios, int FirstIndex, int LastIndex) override |
Determinant ratios and parameter derivatives of the wavefunction for virtual moves. More... | |
void | evaluateVGH (const ParticleSet &P, int iat, ValueVector &psi, GradVector &dpsi, HessVector &grad_grad_psi) override |
evaluate the values, gradients and hessians of this single-particle orbital set More... | |
void | evaluateVGHGH (const ParticleSet &P, int iat, ValueVector &psi, GradVector &dpsi, HessVector &grad_grad_psi, GGGVector &grad_grad_grad_psi) override |
evaluate the values, gradients, hessians, and grad hessians of this single-particle orbital set More... | |
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,last) particles More... | |
void | evaluate_spin (const ParticleSet &P, int iat, ValueVector &psi, ValueVector &dspin_psi) override |
evaluate the values of this single-particle orbital set More... | |
void | evaluate_notranspose (const ParticleSet &P, int first, int last, ValueMatrix &logdet, GradMatrix &dlogdet, HessMatrix &grad_grad_logdet) override |
evaluate the values, gradients and hessians of this single-particle orbital for [first,last) particles More... | |
void | evaluate_notranspose (const ParticleSet &P, int first, int last, ValueMatrix &logdet, GradMatrix &dlogdet, HessMatrix &grad_grad_logdet, GGGMatrix &grad_grad_grad_logdet) override |
evaluate the values, gradients, hessians and third derivatives of this single-particle orbital for [first,last) particles More... | |
void | evaluateGradSource (const ParticleSet &P, int first, int last, const ParticleSet &source, int iat_src, GradMatrix &grad_phi) override |
evaluate the gradients of this single-particle orbital for [first,last) target particles with respect to the given source particle More... | |
void | evaluateGradSource (const ParticleSet &P, int first, int last, const ParticleSet &source, int iat_src, GradMatrix &grad_phi, HessMatrix &grad_grad_phi, GradMatrix &grad_lapl_phi) override |
evaluate the gradients of values, gradients, laplacians of this single-particle orbital for [first,last) target particles with respect to the given source particle More... | |
void | set_use_global_rotation (bool use_global_rotation) |
Use history list (false) or global rotation (true) More... | |
void | mw_evaluateDetRatios (const RefVectorWithLeader< SPOSet > &spo_list, const RefVectorWithLeader< const VirtualParticleSet > &vp_list, const RefVector< ValueVector > &psi_list, const std::vector< const ValueType *> &invRow_ptr_list, std::vector< std::vector< ValueType >> &ratios_list) const override |
evaluate determinant ratios for virtual moves, e.g., sphere move for nonlocalPP, of multiple walkers More... | |
void | mw_evaluateValue (const RefVectorWithLeader< SPOSet > &spo_list, const RefVectorWithLeader< ParticleSet > &P_list, int iat, const RefVector< ValueVector > &psi_v_list) const override |
evaluate the values this single-particle orbital sets of multiple walkers More... | |
void | mw_evaluateVGL (const RefVectorWithLeader< SPOSet > &spo_list, const RefVectorWithLeader< ParticleSet > &P_list, int iat, const RefVector< ValueVector > &psi_v_list, const RefVector< GradVector > &dpsi_v_list, const RefVector< ValueVector > &d2psi_v_list) const override |
evaluate the values, gradients and laplacians of this single-particle orbital sets of multiple walkers More... | |
void | mw_evaluateVGLWithSpin (const RefVectorWithLeader< SPOSet > &spo_list, const RefVectorWithLeader< ParticleSet > &P_list, int iat, const RefVector< ValueVector > &psi_v_list, const RefVector< GradVector > &dpsi_v_list, const RefVector< ValueVector > &d2psi_v_list, OffloadMatrix< ComplexType > &mw_dspin) const override |
evaluate the values, gradients and laplacians and spin gradient of this single-particle orbital sets of multiple walkers More... | |
void | mw_evaluateVGLandDetRatioGrads (const RefVectorWithLeader< SPOSet > &spo_list, const RefVectorWithLeader< ParticleSet > &P_list, int iat, const std::vector< const ValueType *> &invRow_ptr_list, OffloadMWVGLArray &phi_vgl_v, std::vector< ValueType > &ratios, std::vector< GradType > &grads) const override |
evaluate the values, gradients and laplacians of this single-particle orbital sets and determinant ratio and grads of multiple walkers. More... | |
void | mw_evaluateVGLandDetRatioGradsWithSpin (const RefVectorWithLeader< SPOSet > &spo_list, const RefVectorWithLeader< ParticleSet > &P_list, int iat, const std::vector< const ValueType *> &invRow_ptr_list, OffloadMWVGLArray &phi_vgl_v, std::vector< ValueType > &ratios, std::vector< GradType > &grads, std::vector< ValueType > &spingrads) const override |
evaluate the values, gradients and laplacians of this single-particle orbital sets and determinant ratio and grads of multiple walkers. More... | |
void | mw_evaluate_notranspose (const RefVectorWithLeader< SPOSet > &spo_list, const RefVectorWithLeader< ParticleSet > &P_list, int first, int last, const RefVector< ValueMatrix > &logdet_list, const RefVector< GradMatrix > &dlogdet_list, const RefVector< ValueMatrix > &d2logdet_list) const override |
void | createResource (ResourceCollection &collection) const override |
initialize a shared resource and hand it to collection More... | |
void | acquireResource (ResourceCollection &collection, const RefVectorWithLeader< SPOSet > &spo_list) const override |
acquire a shared resource from collection More... | |
void | releaseResource (ResourceCollection &collection, const RefVectorWithLeader< SPOSet > &spo_list) const override |
return a shared resource to collection More... | |
![]() | |
SPOSet (const std::string &my_name) | |
constructor More... | |
virtual | ~SPOSet ()=default |
destructor More... | |
int | size () const |
return the size of the orbital set Ye: this needs to be replaced by getOrbitalSetSize(); More... | |
void | basic_report (const std::string &pad="") const |
print basic SPOSet information More... | |
virtual void | report (const std::string &pad="") const |
print SPOSet information More... | |
int | getOrbitalSetSize () const |
return the size of the orbitals More... | |
virtual bool | isRotationSupported () const |
return true if this SPOSet can be wrappered by RotatedSPO More... | |
virtual void | storeParamsBeforeRotation () |
store parameters before getting destroyed by rotation. More... | |
virtual void | applyRotation (const ValueMatrix &rot_mat, bool use_stored_copy=false) |
apply rotation to all the orbitals More... | |
virtual void | evaluateDetSpinorRatios (const VirtualParticleSet &VP, ValueVector &psi, const std::pair< ValueVector, ValueVector > &spinor_multiplier, const ValueVector &invrow, std::vector< ValueType > &ratios) |
evaluate determinant ratios for virtual moves, specifically for Spinor SPOSets More... | |
virtual void | evaluateThirdDeriv (const ParticleSet &P, int first, int last, GGGMatrix &grad_grad_grad_logdet) |
evaluate the third derivatives of this single-particle orbital set More... | |
virtual void | evaluate_notranspose_spin (const ParticleSet &P, int first, int last, ValueMatrix &logdet, GradMatrix &dlogdet, ValueMatrix &d2logdet, ValueMatrix &dspinlogdet) |
evaluate the values, gradients and laplacians of this single-particle orbital for [first,last) particles, including the spin gradient More... | |
virtual void | evaluateGradSourceRow (const ParticleSet &P, int iel, const ParticleSet &source, int iat_src, GradVector &gradphi) |
Returns a row of d/dR_iat phi_j(r) evaluated at position r. More... | |
virtual PosType | get_k (int orb) |
access the k point related to the given orbital More... | |
virtual bool | transformSPOSet () |
Used only by cusp correction in AOS LCAO. More... | |
virtual void | finalizeConstruction () |
finalize the construction of SPOSet More... | |
const std::string & | getName () const |
return object name More... | |
![]() | |
OptimizableObject (const std::string &name) | |
const std::string & | getName () const |
bool | isOptimized () const |
virtual void | reportStatus (std::ostream &os) |
print the state, e.g., optimizables More... | |
void | setOptimization (bool state) |
Static Public Member Functions | |
static void | createRotationIndices (int nel, int nmo, RotationIndices &rot_indices) |
static void | createRotationIndicesFull (int nel, int nmo, RotationIndices &rot_indices) |
static void | constructAntiSymmetricMatrix (const RotationIndices &rot_indices, const std::vector< ValueType > ¶m, ValueMatrix &rot_mat) |
static void | extractParamsFromAntiSymmetricMatrix (const RotationIndices &rot_indices, const ValueMatrix &rot_mat, std::vector< ValueType > ¶m) |
static void | constructDeltaRotation (const std::vector< ValueType > &delta_param, const std::vector< ValueType > &old_param, const RotationIndices &act_rot_inds, const RotationIndices &full_rot_inds, std::vector< ValueType > &new_param, ValueMatrix &new_rot_mat) |
static void | exponentiate_antisym_matrix (ValueMatrix &mat) |
static void | log_antisym_matrix (const ValueMatrix &mat, ValueMatrix &output) |
Public Attributes | |
RotationIndices | m_act_rot_inds_ |
RotationIndices | m_full_rot_inds_ |
std::unique_ptr< SPOSet > | Phi_ |
size_t | nel_major_ |
the number of electrons of the majority spin More... | |
ParticleSet::ParticleGradient | myG_temp |
ParticleSet::ParticleGradient | myG_J |
ParticleSet::ParticleLaplacian | myL_temp |
ParticleSet::ParticleLaplacian | myL_J |
ValueMatrix | Bbar |
ValueMatrix | psiM_inv |
ValueMatrix | psiM_all |
GradMatrix | dpsiM_all |
ValueMatrix | d2psiM_all |
Static Private Member Functions | |
static RefVectorWithLeader< SPOSet > | extractPhiRefList (const RefVectorWithLeader< SPOSet > &spo_list) |
Private Attributes | |
bool | params_supplied_ |
true if SPO parameters (orbital rotation parameters) have been supplied by input More... | |
std::vector< ValueType > | params_ |
list of supplied orbital rotation parameters. More... | |
std::vector< ValueType > | myVarsFull_ |
Full set of rotation matrix parameters for use in global rotation method. More... | |
NewTimer & | apply_rotation_timer_ |
timer for apply_rotation More... | |
std::vector< std::vector< ValueType > > | history_params_ |
List of previously applied parameters. More... | |
bool | use_global_rot_ = true |
Use global rotation or history list. More... | |
Friends | |
std::vector< ValueType > & | testing::getMyVarsFull (RotatedSPOs &rot) |
std::vector< std::vector< ValueType > > & | testing::getHistoryParams (RotatedSPOs &rot) |
Additional Inherited Members | |
![]() | |
const std::string | my_name_ |
name of the object, unique identifier More... | |
IndexType | OrbitalSetSize |
number of Single-particle orbitals More... | |
opt_variables_type | myVars |
Optimizable variables. More... | |
Definition at line 28 of file RotatedSPOs.h.
using RotationIndices = std::vector<std::pair<int, int> > |
Definition at line 42 of file RotatedSPOs.h.
RotatedSPOs | ( | const std::string & | my_name, |
std::unique_ptr< SPOSet > && | spos | ||
) |
Definition at line 22 of file RotatedSPOs.cpp.
References SPOSet::OrbitalSetSize, and RotatedSPOs::Phi_.
|
override |
Definition at line 33 of file RotatedSPOs.cpp.
|
overridevirtual |
acquire a shared resource from collection
Reimplemented from SPOSet.
Definition at line 1729 of file RotatedSPOs.cpp.
References RotatedSPOs::extractPhiRefList().
void apply_rotation | ( | const std::vector< ValueType > & | param, |
bool | use_stored_copy | ||
) |
Definition at line 380 of file RotatedSPOs.cpp.
References RotatedSPOs::apply_rotation_timer_, RotatedSPOs::constructAntiSymmetricMatrix(), RotatedSPOs::exponentiate_antisym_matrix(), RotatedSPOs::m_act_rot_inds_, and RotatedSPOs::Phi_.
Referenced by RotatedSPOs::applyRotationHistory(), RotatedSPOs::buildOptVariables(), RotatedSPOs::resetParametersExclusive(), and qmcplusplus::TEST_CASE().
void applyDeltaRotation | ( | const std::vector< ValueType > & | delta_param, |
const std::vector< ValueType > & | old_param, | ||
std::vector< ValueType > & | new_param | ||
) |
Definition at line 401 of file RotatedSPOs.cpp.
References RotatedSPOs::apply_rotation_timer_, RotatedSPOs::constructDeltaRotation(), RotatedSPOs::m_act_rot_inds_, RotatedSPOs::m_full_rot_inds_, and RotatedSPOs::Phi_.
Referenced by RotatedSPOs::resetParametersExclusive(), and qmcplusplus::TEST_CASE().
void applyFullRotation | ( | const std::vector< ValueType > & | full_param, |
bool | use_stored_copy | ||
) |
Definition at line 448 of file RotatedSPOs.cpp.
References RotatedSPOs::constructAntiSymmetricMatrix(), RotatedSPOs::exponentiate_antisym_matrix(), RotatedSPOs::m_full_rot_inds_, and RotatedSPOs::Phi_.
Referenced by RotatedSPOs::readVariationalParameters().
void applyRotationHistory | ( | ) |
Definition at line 467 of file RotatedSPOs.cpp.
References RotatedSPOs::apply_rotation(), and RotatedSPOs::history_params_.
Referenced by RotatedSPOs::readVariationalParameters().
void buildOptVariables | ( | size_t | nel | ) |
Definition at line 274 of file RotatedSPOs.cpp.
References RotatedSPOs::createRotationIndices(), RotatedSPOs::createRotationIndicesFull(), SPOSet::myVars, RotatedSPOs::nel_major_, RotatedSPOs::Phi_, VariableSet::size(), and RotatedSPOs::use_global_rot_.
Referenced by MultiDiracDeterminant::buildOptVariables(), DiracDeterminant< DU_TYPE >::DiracDeterminant(), DiracDeterminantBatched< PL, VT, FPVT >::DiracDeterminantBatched(), and qmcplusplus::TEST_CASE().
void buildOptVariables | ( | const RotationIndices & | rotations, |
const RotationIndices & | full_rotations | ||
) |
Definition at line 302 of file RotatedSPOs.cpp.
References qmcplusplus::app_log(), RotatedSPOs::apply_rotation(), VariableSet::clear(), qmcplusplus::imag(), RotatedSPOs::m_act_rot_inds_, RotatedSPOs::m_full_rot_inds_, SPOSet::my_name_, SPOSet::myVars, RotatedSPOs::myVarsFull_, qmcplusplus::Units::force::N, RotatedSPOs::params_, RotatedSPOs::params_supplied_, RotatedSPOs::Phi_, VariableSet::print(), VariableSet::size(), and RotatedSPOs::use_global_rot_.
|
inlineoverridevirtual |
check in variational parameters to the global list of parameters used by the optimizer.
active | a super set of optimizable variables |
The existing checkInVariables implementation in WFC/SPO/.. are inclusive and it calls checkInVariables of its members class A: public SPOSet {} class B: public WFC { A objA; checkInVariables() { objA.checkInVariables(); } };
With OptimizableObject, class A: public OptimizableObject {} class B: public OptimizableObject { A objA; checkInVariablesExclusive() { // should not call objA.checkInVariablesExclusive() if objA has been extracted; } }; A vector of OptimizableObject, will be created by calling extractOptimizableObjects(). All the checkInVariablesExclusive() will be called through this vector and thus checkInVariablesExclusive implementation should only handle non-OptimizableObject members.
Implements OptimizableObject.
Definition at line 257 of file RotatedSPOs.h.
References VariableSet::insertFrom(), SPOSet::myVars, and VariableSet::size().
Referenced by qmcplusplus::TEST_CASE().
|
inlineoverridevirtual |
check a few key parameters before putting the SPO into a determinant
Reimplemented from SPOSet.
Definition at line 276 of file RotatedSPOs.h.
References RotatedSPOs::Phi_.
|
inlineoverridevirtual |
check out variational optimizable variables
active | a super set of optimizable variables |
Reimplemented from SPOSet.
Definition at line 263 of file RotatedSPOs.h.
References VariableSet::getIndex(), and SPOSet::myVars.
|
static |
Definition at line 76 of file RotatedSPOs.cpp.
References qmcplusplus::conj().
Referenced by RotatedSPOs::apply_rotation(), RotatedSPOs::applyFullRotation(), RotatedSPOs::constructDeltaRotation(), and qmcplusplus::TEST_CASE().
|
static |
Definition at line 415 of file RotatedSPOs.cpp.
References RotatedSPOs::constructAntiSymmetricMatrix(), RotatedSPOs::exponentiate_antisym_matrix(), RotatedSPOs::extractParamsFromAntiSymmetricMatrix(), BLAS::gemm(), and RotatedSPOs::log_antisym_matrix().
Referenced by RotatedSPOs::applyDeltaRotation(), and qmcplusplus::TEST_CASE().
|
overridevirtual |
initialize a shared resource and hand it to collection
Reimplemented from SPOSet.
Definition at line 1727 of file RotatedSPOs.cpp.
References RotatedSPOs::Phi_.
Referenced by qmcplusplus::TEST_CASE().
|
static |
Definition at line 48 of file RotatedSPOs.cpp.
Referenced by RotatedSPOs::buildOptVariables(), and qmcplusplus::TEST_CASE().
|
static |
Definition at line 55 of file RotatedSPOs.cpp.
Referenced by RotatedSPOs::buildOptVariables(), and qmcplusplus::TEST_CASE().
|
inlineoverridevirtual |
evaluate the values, gradients and laplacians of this single-particle orbital for [first,last) particles
[in] | P | current ParticleSet |
[in] | first | starting index of the particles |
[in] | last | ending index of the particles |
[out] | logdet | determinant matrix to be inverted |
[out] | dlogdet | gradients |
[out] | d2logdet | laplacians |
Implements SPOSet.
Definition at line 341 of file RotatedSPOs.h.
References RotatedSPOs::Phi_.
|
inlineoverridevirtual |
evaluate the values, gradients and hessians of this single-particle orbital for [first,last) particles
P | current ParticleSet |
first | starting index of the particles |
last | ending index of the particles |
logdet | determinant matrix to be inverted |
dlogdet | gradients |
grad_grad_logdet | hessians |
Reimplemented from SPOSet.
Definition at line 356 of file RotatedSPOs.h.
References RotatedSPOs::Phi_.
|
inlineoverridevirtual |
evaluate the values, gradients, hessians and third derivatives of this single-particle orbital for [first,last) particles
P | current ParticleSet |
first | starting index of the particles |
last | ending index of the particles |
logdet | determinant matrix to be inverted |
dlogdet | gradients |
grad_grad_logdet | hessians |
grad_grad_grad_logdet | third derivatives |
Reimplemented from SPOSet.
Definition at line 366 of file RotatedSPOs.h.
References RotatedSPOs::Phi_.
|
inlineoverridevirtual |
evaluate the values of this single-particle orbital set
P | current ParticleSet |
iat | active particle |
psi | values of the SPO |
Reimplemented from SPOSet.
Definition at line 351 of file RotatedSPOs.h.
References RotatedSPOs::Phi_.
Referenced by qmcplusplus::TEST_CASE().
|
overridevirtual |
Parameter derivatives of the wavefunction and the Laplacian of the wavefunction.
Reimplemented from SPOSet.
Definition at line 770 of file RotatedSPOs.cpp.
References qmcplusplus::Units::distance::A, B(), RotatedSPOs::Bbar, RotatedSPOs::d2psiM_all, qmcplusplus::dot(), RotatedSPOs::dpsiM_all, ParticleSet::G, BLAS::gemm(), qmcplusplus::Invert(), ParticleSet::L, RotatedSPOs::m_act_rot_inds_, RotatedSPOs::myG_J, RotatedSPOs::myG_temp, RotatedSPOs::myL_J, RotatedSPOs::myL_temp, SPOSet::myVars, RotatedSPOs::Phi_, RotatedSPOs::psiM_all, RotatedSPOs::psiM_inv, Vector< T, Alloc >::resize(), VariableSet::size(), and VariableSet::where().
|
overridevirtual |
Evaluate the derivative of the optimized orbitals with respect to the parameters this is used only for MSD, to be refined for better serving both single and multi SD.
Reimplemented from SPOSet.
Definition at line 888 of file RotatedSPOs.cpp.
References qmcplusplus::dot(), ParticleSet::first(), ParticleSet::G, ParticleSet::getTotalNum(), ParticleSet::L, ParticleSet::last(), RotatedSPOs::myG_J, RotatedSPOs::myG_temp, RotatedSPOs::myL_J, RotatedSPOs::myL_temp, SPOSet::myVars, RotatedSPOs::Phi_, VariableSet::recompute(), Vector< T, Alloc >::resize(), VariableSet::size(), Vector< T, Alloc >::size(), RotatedSPOs::table_method_eval(), and VariableSet::where().
|
overridevirtual |
Parameter derivatives of the wavefunction.
Reimplemented from SPOSet.
Definition at line 716 of file RotatedSPOs.cpp.
References qmcplusplus::Units::distance::A, RotatedSPOs::d2psiM_all, RotatedSPOs::dpsiM_all, BLAS::gemm(), qmcplusplus::Invert(), RotatedSPOs::m_act_rot_inds_, SPOSet::myVars, RotatedSPOs::Phi_, RotatedSPOs::psiM_all, RotatedSPOs::psiM_inv, VariableSet::size(), and VariableSet::where().
|
overridevirtual |
Evaluate the derivative of the optimized orbitals with respect to the parameters this is used only for MSD, to be refined for better serving both single and multi SD.
Reimplemented from SPOSet.
Definition at line 981 of file RotatedSPOs.cpp.
References ParticleSet::first(), ParticleSet::last(), SPOSet::myVars, RotatedSPOs::Phi_, VariableSet::recompute(), VariableSet::size(), RotatedSPOs::table_method_evalWF(), and VariableSet::where().
|
overridevirtual |
Determinant ratios and parameter derivatives of the wavefunction for virtual moves.
Reimplemented from SPOSet.
Definition at line 629 of file RotatedSPOs.cpp.
References qmcplusplus::Units::distance::A, RotatedSPOs::d2psiM_all, RotatedSPOs::dpsiM_all, BLAS::gemm(), VirtualParticleSet::getRefPS(), VirtualParticleSet::getTotalNum(), qmcplusplus::Invert(), RotatedSPOs::m_act_rot_inds_, SPOSet::myVars, RotatedSPOs::Phi_, RotatedSPOs::psiM_all, RotatedSPOs::psiM_inv, VirtualParticleSet::refPtcl, VariableSet::size(), and VariableSet::where().
|
inlineoverridevirtual |
evaluate determinant ratios for virtual moves, e.g., sphere move for nonlocalPP
VP | virtual particle set |
psi | values of the SPO, used as a scratch space if needed |
psiinv | the row of inverse slater matrix corresponding to the particle moved virtually |
ratios | return determinant ratios |
Reimplemented from SPOSet.
Definition at line 302 of file RotatedSPOs.h.
References RotatedSPOs::Phi_.
|
inlineoverridevirtual |
evaluate the gradients of this single-particle orbital for [first,last) target particles with respect to the given source particle
P | current ParticleSet |
first | starting index of the particles |
last | ending index of the particles |
iat_src | source particle index |
gradphi | gradients |
Reimplemented from SPOSet.
Definition at line 377 of file RotatedSPOs.h.
References RotatedSPOs::Phi_.
|
inlineoverridevirtual |
evaluate the gradients of values, gradients, laplacians of this single-particle orbital for [first,last) target particles with respect to the given source particle
P | current ParticleSet |
first | starting index of the particles |
last | ending index of the particles |
iat_src | source particle index |
gradphi | gradients of values |
grad_grad_phi | gradients of gradients |
grad_lapl_phi | gradients of laplacians |
Reimplemented from SPOSet.
Definition at line 387 of file RotatedSPOs.h.
References RotatedSPOs::Phi_.
|
inlineoverridevirtual |
evaluate the values of this single-particle orbital set
P | current ParticleSet |
iat | active particle |
psi | values of the SPO |
Implements SPOSet.
Definition at line 278 of file RotatedSPOs.h.
References SPOSet::OrbitalSetSize, and RotatedSPOs::Phi_.
|
inlineoverridevirtual |
evaluate the values, gradients and hessians of this single-particle orbital set
P | current ParticleSet |
iat | active particle |
psi | values of the SPO |
dpsi | gradients of the SPO |
grad_grad_psi | hessians of the SPO |
Reimplemented from SPOSet.
Definition at line 319 of file RotatedSPOs.h.
References SPOSet::OrbitalSetSize, and RotatedSPOs::Phi_.
|
inlineoverridevirtual |
evaluate the values, gradients, hessians, and grad hessians of this single-particle orbital set
P | current ParticleSet |
iat | active particle |
psi | values of the SPO |
dpsi | gradients of the SPO |
grad_grad_psi | hessians of the SPO |
grad_grad_grad_psi | grad hessians of the SPO |
Reimplemented from SPOSet.
Definition at line 330 of file RotatedSPOs.h.
References RotatedSPOs::Phi_.
|
inlineoverridevirtual |
evaluate the values, gradients and laplacians of this single-particle orbital set
P | current ParticleSet |
iat | active particle |
psi | values of the SPO |
dpsi | gradients of the SPO |
d2psi | laplacians of the SPO |
Implements SPOSet.
Definition at line 285 of file RotatedSPOs.h.
References SPOSet::OrbitalSetSize, and RotatedSPOs::Phi_.
|
inlineoverridevirtual |
evaluate the values, gradients and laplacians and spin gradient of this single-particle orbital set
P | current ParticleSet |
iat | active particle |
psi | values of the SPO |
dpsi | gradients of the SPO |
d2psi | laplacians of the SPO |
dspin | spin gradients of the SPO |
Reimplemented from SPOSet.
Definition at line 291 of file RotatedSPOs.h.
References SPOSet::OrbitalSetSize, and RotatedSPOs::Phi_.
|
static |
Definition at line 476 of file RotatedSPOs.cpp.
References qmcplusplus::copy_with_complex_cast(), qmcplusplus::exp(), BLAS::gemm(), LAPACK::heev(), qmcplusplus::imag(), qmcplusplus::Units::force::N, qmcplusplus::n, and BLAS::UPLO.
Referenced by RotatedSPOs::apply_rotation(), RotatedSPOs::applyFullRotation(), RotatedSPOs::constructDeltaRotation(), and qmcplusplus::TEST_CASE().
|
inlineoverridevirtual |
extract underlying OptimizableObject references
opt_obj_refs | aggregated list of optimizable object references |
Reimplemented from SPOSet.
Definition at line 255 of file RotatedSPOs.h.
References UniqueOptObjRefs::push_back().
|
static |
Definition at line 97 of file RotatedSPOs.cpp.
Referenced by RotatedSPOs::constructDeltaRotation(), and qmcplusplus::TEST_CASE().
|
staticprivate |
Definition at line 1743 of file RotatedSPOs.cpp.
References RefVectorWithLeader< T >::getCastedElement(), RefVectorWithLeader< T >::getCastedLeader(), and RotatedSPOs::Phi_.
Referenced by RotatedSPOs::acquireResource(), RotatedSPOs::mw_evaluate_notranspose(), RotatedSPOs::mw_evaluateDetRatios(), RotatedSPOs::mw_evaluateValue(), RotatedSPOs::mw_evaluateVGL(), RotatedSPOs::mw_evaluateVGLandDetRatioGrads(), RotatedSPOs::mw_evaluateVGLandDetRatioGradsWithSpin(), RotatedSPOs::mw_evaluateVGLWithSpin(), and RotatedSPOs::releaseResource().
|
inlineoverridevirtual |
|
inlineoverridevirtual |
Query if this SPOSet has an explicit ion dependence.
returns true if it does.
Reimplemented from SPOSet.
Definition at line 39 of file RotatedSPOs.h.
References RotatedSPOs::Phi_.
|
inlineoverridevirtual |
Query if this SPOSet uses OpenMP offload.
Reimplemented from SPOSet.
Definition at line 38 of file RotatedSPOs.h.
References RotatedSPOs::Phi_.
|
inlineoverridevirtual |
Query if this SPOSet is optimizable.
Reimplemented from SPOSet.
Definition at line 37 of file RotatedSPOs.h.
|
static |
Definition at line 542 of file RotatedSPOs.cpp.
References qmcplusplus::app_log(), qmcplusplus::Units::charge::e, LAPACK::geev(), BLAS::gemm(), qmcplusplus::imag(), qmcplusplus::log(), qmcplusplus::Units::force::N, and qmcplusplus::n.
Referenced by RotatedSPOs::constructDeltaRotation(), and qmcplusplus::TEST_CASE().
|
overridevirtual |
make a clone of itself every derived class must implement this to have threading working correctly.
Reimplemented from SPOSet.
Definition at line 1625 of file RotatedSPOs.cpp.
References RotatedSPOs::history_params_, RotatedSPOs::m_act_rot_inds_, RotatedSPOs::m_full_rot_inds_, SPOSet::my_name_, SPOSet::myVars, RotatedSPOs::myVarsFull_, RotatedSPOs::params_, RotatedSPOs::params_supplied_, RotatedSPOs::Phi_, and RotatedSPOs::use_global_rot_.
|
overridevirtual |
Reimplemented from SPOSet.
Definition at line 1714 of file RotatedSPOs.cpp.
References RotatedSPOs::extractPhiRefList().
|
overridevirtual |
evaluate determinant ratios for virtual moves, e.g., sphere move for nonlocalPP, of multiple walkers
spo_list | the list of SPOSet pointers in a walker batch |
vp_list | a list of virtual particle sets in a walker batch |
psi_list | a list of values of the SPO, used as a scratch space if needed |
invRow_ptr_list | a list of pointers to the rows of inverse slater matrix corresponding to the particles moved virtually |
ratios_list | a list of returning determinant ratios |
Reimplemented from SPOSet.
Definition at line 1640 of file RotatedSPOs.cpp.
References RotatedSPOs::extractPhiRefList().
|
overridevirtual |
evaluate the values this single-particle orbital sets of multiple walkers
spo_list | the list of SPOSet pointers in a walker batch |
P_list | the list of ParticleSet pointers in a walker batch |
iat | active particle |
psi_v_list | the list of value vector pointers in a walker batch |
Reimplemented from SPOSet.
Definition at line 1651 of file RotatedSPOs.cpp.
References RotatedSPOs::extractPhiRefList().
Referenced by qmcplusplus::TEST_CASE().
|
overridevirtual |
evaluate the values, gradients and laplacians of this single-particle orbital sets of multiple walkers
spo_list | the list of SPOSet pointers in a walker batch |
P_list | the list of ParticleSet pointers in a walker batch |
iat | active particle |
psi_v_list | the list of value vector pointers in a walker batch |
dpsi_v_list | the list of gradient vector pointers in a walker batch |
d2psi_v_list | the list of laplacian vector pointers in a walker batch |
Reimplemented from SPOSet.
Definition at line 1661 of file RotatedSPOs.cpp.
References RotatedSPOs::extractPhiRefList().
|
overridevirtual |
evaluate the values, gradients and laplacians of this single-particle orbital sets and determinant ratio and grads of multiple walkers.
Device data of phi_vgl_v must be up-to-date upon return
spo_list | the list of SPOSet pointers in a walker batch |
P_list | the list of ParticleSet pointers in a walker batch |
iat | active particle |
phi_vgl_v | orbital values, gradients and laplacians of all the walkers |
psi_ratio_grads_v | determinant ratio and grads of all the walkers |
Reimplemented from SPOSet.
Definition at line 1686 of file RotatedSPOs.cpp.
References RotatedSPOs::extractPhiRefList().
|
overridevirtual |
evaluate the values, gradients and laplacians of this single-particle orbital sets and determinant ratio and grads of multiple walkers.
Device data of phi_vgl_v must be up-to-date upon return. Includes spin gradients
spo_list | the list of SPOSet pointers in a walker batch |
P_list | the list of ParticleSet pointers in a walker batch |
iat | active particle |
phi_vgl_v | orbital values, gradients and laplacians of all the walkers |
ratios,ratios | of all walkers |
grads,spatial | gradients of all walkers |
spingrads,spin | gradients of all walkers |
Reimplemented from SPOSet.
Definition at line 1699 of file RotatedSPOs.cpp.
References RotatedSPOs::extractPhiRefList().
|
overridevirtual |
evaluate the values, gradients and laplacians and spin gradient of this single-particle orbital sets of multiple walkers
spo_list | the list of SPOSet pointers in a walker batch |
P_list | the list of ParticleSet pointers in a walker batch |
iat | active particle |
psi_v_list | the list of value vector pointers in a walker batch |
dpsi_v_list | the list of gradient vector pointers in a walker batch |
d2psi_v_list | the list of laplacian vector pointers in a walker batch |
mw_dspin | is a dual matrix of spin gradients [nw][norb] Note that the device side of mw_dspin is up to date |
Reimplemented from SPOSet.
Definition at line 1673 of file RotatedSPOs.cpp.
References RotatedSPOs::extractPhiRefList().
Referenced by qmcplusplus::TEST_CASE().
|
overridevirtual |
Read the variational parameters for this object from the VP HDF file.
The hin parameter should come from VariableSet::readFromHDF
By default the parameters are read in VariableSet::readFromHDF, and objects do not need to implement this function (yet).
Reimplemented from OptimizableObject.
Definition at line 188 of file RotatedSPOs.cpp.
References qmcplusplus::app_warning(), RotatedSPOs::applyFullRotation(), RotatedSPOs::applyRotationHistory(), SPOSet::getName(), hdf_archive::getShape(), RotatedSPOs::history_params_, hdf_archive::is_group(), SPOSet::myVars, RotatedSPOs::myVarsFull_, hdf_archive::pop(), hdf_archive::push(), hdf_archive::read(), and VariableSet::size().
Referenced by qmcplusplus::TEST_CASE().
|
overridevirtual |
return a shared resource to collection
Reimplemented from SPOSet.
Definition at line 1736 of file RotatedSPOs.cpp.
References RotatedSPOs::extractPhiRefList().
|
overridevirtual |
reset
Implements OptimizableObject.
Definition at line 112 of file RotatedSPOs.cpp.
References RotatedSPOs::apply_rotation(), RotatedSPOs::applyDeltaRotation(), qmcplusplus::syclBLAS::copy_n(), RotatedSPOs::history_params_, RotatedSPOs::m_act_rot_inds_, RotatedSPOs::m_full_rot_inds_, SPOSet::myVars, RotatedSPOs::myVarsFull_, VariableSet::size(), RotatedSPOs::use_global_rot_, and VariableSet::where().
Referenced by qmcplusplus::TEST_CASE().
|
inline |
Use history list (false) or global rotation (true)
Definition at line 403 of file RotatedSPOs.h.
References RotatedSPOs::use_global_rot_.
Referenced by qmcplusplus::TEST_CASE().
|
inlineoverridevirtual |
set the OrbitalSetSize
norbs | number of single-particle orbitals Ye: I prefer to remove this interface in the future. SPOSet builders need to handle the size correctly. It doesn't make sense allowing to set the value at any place in the code. |
Implements SPOSet.
Definition at line 274 of file RotatedSPOs.h.
References RotatedSPOs::Phi_.
void setRotationParameters | ( | const std::vector< RealType > & | param_list | ) |
For now, this takes the real optimizable parameters (real rotation coefficients) and converts them to ValueType parameter lists for internal consumption by the real and complex orb-opt code.
This will do something more non-trivial when bona fide complex orbital optimization is working.
Definition at line 36 of file RotatedSPOs.cpp.
References copy(), RotatedSPOs::params_, and RotatedSPOs::params_supplied_.
void table_method_eval | ( | Vector< ValueType > & | dlogpsi, |
Vector< ValueType > & | dhpsioverpsi, | ||
const ParticleSet::ParticleLaplacian & | myL_J, | ||
const ParticleSet::ParticleGradient & | myG_J, | ||
const size_t | nel, | ||
const size_t | nmo, | ||
const ValueType & | psiCurrent, | ||
const std::vector< RealType > & | Coeff, | ||
const std::vector< size_t > & | C2node_up, | ||
const std::vector< size_t > & | C2node_dn, | ||
const ValueVector & | detValues_up, | ||
const ValueVector & | detValues_dn, | ||
const GradMatrix & | grads_up, | ||
const GradMatrix & | grads_dn, | ||
const ValueMatrix & | lapls_up, | ||
const ValueMatrix & | lapls_dn, | ||
const ValueMatrix & | M_up, | ||
const ValueMatrix & | M_dn, | ||
const ValueMatrix & | Minv_up, | ||
const ValueMatrix & | Minv_dn, | ||
const GradMatrix & | B_grad, | ||
const ValueMatrix & | B_lapl, | ||
const std::vector< int > & | detData_up, | ||
const size_t | N1, | ||
const size_t | N2, | ||
const size_t | NP1, | ||
const size_t | NP2, | ||
const std::vector< std::vector< int >> & | lookup_tbl | ||
) |
Definition at line 1018 of file RotatedSPOs.cpp.
References qmcplusplus::Units::distance::A, BLAS::axpy(), B(), RotatedSPOs::Bbar, BLAS::copy(), Vector< T, Alloc >::data(), qmcplusplus::dot(), BLAS::gemm(), qmcplusplus::InvertWithLog(), RotatedSPOs::m_act_rot_inds_, RotatedSPOs::myG_J, RotatedSPOs::myL_J, SPOSet::myVars, Vector< T, Alloc >::resize(), qmcplusplus::Units::second, and VariableSet::where().
Referenced by RotatedSPOs::evaluateDerivatives().
void table_method_evalWF | ( | Vector< ValueType > & | dlogpsi, |
const size_t | nel, | ||
const size_t | nmo, | ||
const ValueType & | psiCurrent, | ||
const std::vector< RealType > & | Coeff, | ||
const std::vector< size_t > & | C2node_up, | ||
const std::vector< size_t > & | C2node_dn, | ||
const ValueVector & | detValues_up, | ||
const ValueVector & | detValues_dn, | ||
const ValueMatrix & | M_up, | ||
const ValueMatrix & | M_dn, | ||
const ValueMatrix & | Minv_up, | ||
const ValueMatrix & | Minv_dn, | ||
const std::vector< int > & | detData_up, | ||
const std::vector< std::vector< int >> & | lookup_tbl | ||
) |
Definition at line 1453 of file RotatedSPOs.cpp.
References qmcplusplus::Units::distance::A, BLAS::axpy(), RotatedSPOs::Bbar, BLAS::copy(), Vector< T, Alloc >::data(), BLAS::gemm(), qmcplusplus::InvertWithLog(), RotatedSPOs::m_act_rot_inds_, SPOSet::myVars, Vector< T, Alloc >::resize(), qmcplusplus::Units::second, and VariableSet::where().
Referenced by RotatedSPOs::evaluateDerivativesWF().
|
overridevirtual |
Write the variational parameters for this object to the VP HDF file.
The hout parameter should come from VariableSet::writeToHDF
Objects can use this function to store additional information to the file.
By default the parameters are saved in VariableSet::writeToHDF, and objects do not need to implement this function (yet).
Reimplemented from OptimizableObject.
Definition at line 144 of file RotatedSPOs.cpp.
References SPOSet::getName(), RotatedSPOs::history_params_, RotatedSPOs::m_act_rot_inds_, SPOSet::myVars, RotatedSPOs::myVarsFull_, hdf_archive::pop(), hdf_archive::push(), VariableSet::size(), RotatedSPOs::use_global_rot_, and hdf_archive::write().
Referenced by qmcplusplus::TEST_CASE().
|
friend |
|
friend |
|
private |
timer for apply_rotation
Definition at line 472 of file RotatedSPOs.h.
Referenced by RotatedSPOs::apply_rotation(), and RotatedSPOs::applyDeltaRotation().
ValueMatrix Bbar |
Definition at line 139 of file RotatedSPOs.h.
Referenced by RotatedSPOs::evaluateDerivatives(), RotatedSPOs::table_method_eval(), and RotatedSPOs::table_method_evalWF().
ValueMatrix d2psiM_all |
Definition at line 143 of file RotatedSPOs.h.
Referenced by RotatedSPOs::evaluateDerivatives(), RotatedSPOs::evaluateDerivativesWF(), and RotatedSPOs::evaluateDerivRatios().
GradMatrix dpsiM_all |
Definition at line 142 of file RotatedSPOs.h.
Referenced by RotatedSPOs::evaluateDerivatives(), RotatedSPOs::evaluateDerivativesWF(), and RotatedSPOs::evaluateDerivRatios().
|
private |
List of previously applied parameters.
Definition at line 475 of file RotatedSPOs.h.
Referenced by RotatedSPOs::applyRotationHistory(), qmcplusplus::testing::getHistoryParams(), RotatedSPOs::makeClone(), RotatedSPOs::readVariationalParameters(), RotatedSPOs::resetParametersExclusive(), and RotatedSPOs::writeVariationalParameters().
RotationIndices m_act_rot_inds_ |
Definition at line 54 of file RotatedSPOs.h.
Referenced by RotatedSPOs::apply_rotation(), RotatedSPOs::applyDeltaRotation(), RotatedSPOs::buildOptVariables(), RotatedSPOs::evaluateDerivatives(), RotatedSPOs::evaluateDerivativesWF(), RotatedSPOs::evaluateDerivRatios(), RotatedSPOs::makeClone(), RotatedSPOs::resetParametersExclusive(), RotatedSPOs::table_method_eval(), RotatedSPOs::table_method_evalWF(), and RotatedSPOs::writeVariationalParameters().
RotationIndices m_full_rot_inds_ |
Definition at line 57 of file RotatedSPOs.h.
Referenced by RotatedSPOs::applyDeltaRotation(), RotatedSPOs::applyFullRotation(), RotatedSPOs::buildOptVariables(), RotatedSPOs::makeClone(), and RotatedSPOs::resetParametersExclusive().
Definition at line 136 of file RotatedSPOs.h.
Referenced by RotatedSPOs::evaluateDerivatives(), and RotatedSPOs::table_method_eval().
ParticleSet::ParticleGradient myG_temp |
Definition at line 136 of file RotatedSPOs.h.
Referenced by RotatedSPOs::evaluateDerivatives().
Definition at line 137 of file RotatedSPOs.h.
Referenced by RotatedSPOs::evaluateDerivatives(), and RotatedSPOs::table_method_eval().
ParticleSet::ParticleLaplacian myL_temp |
Definition at line 137 of file RotatedSPOs.h.
Referenced by RotatedSPOs::evaluateDerivatives().
|
private |
Full set of rotation matrix parameters for use in global rotation method.
Definition at line 469 of file RotatedSPOs.h.
Referenced by RotatedSPOs::buildOptVariables(), qmcplusplus::testing::getMyVarsFull(), RotatedSPOs::makeClone(), RotatedSPOs::readVariationalParameters(), RotatedSPOs::resetParametersExclusive(), and RotatedSPOs::writeVariationalParameters().
size_t nel_major_ |
the number of electrons of the majority spin
Definition at line 127 of file RotatedSPOs.h.
Referenced by RotatedSPOs::buildOptVariables().
|
private |
list of supplied orbital rotation parameters.
Definition at line 466 of file RotatedSPOs.h.
Referenced by RotatedSPOs::buildOptVariables(), RotatedSPOs::makeClone(), and RotatedSPOs::setRotationParameters().
|
private |
true if SPO parameters (orbital rotation parameters) have been supplied by input
Definition at line 464 of file RotatedSPOs.h.
Referenced by RotatedSPOs::buildOptVariables(), RotatedSPOs::makeClone(), and RotatedSPOs::setRotationParameters().
std::unique_ptr<SPOSet> Phi_ |
Definition at line 119 of file RotatedSPOs.h.
Referenced by RotatedSPOs::apply_rotation(), RotatedSPOs::applyDeltaRotation(), RotatedSPOs::applyFullRotation(), RotatedSPOs::buildOptVariables(), RotatedSPOs::checkObject(), RotatedSPOs::createResource(), RotatedSPOs::evaluate_notranspose(), RotatedSPOs::evaluate_spin(), RotatedSPOs::evaluateDerivatives(), RotatedSPOs::evaluateDerivativesWF(), RotatedSPOs::evaluateDerivRatios(), RotatedSPOs::evaluateDetRatios(), RotatedSPOs::evaluateGradSource(), RotatedSPOs::evaluateValue(), RotatedSPOs::evaluateVGH(), RotatedSPOs::evaluateVGHGH(), RotatedSPOs::evaluateVGL(), RotatedSPOs::evaluateVGL_spin(), RotatedSPOs::extractPhiRefList(), RotatedSPOs::hasIonDerivs(), RotatedSPOs::isOMPoffload(), RotatedSPOs::makeClone(), RotatedSPOs::RotatedSPOs(), RotatedSPOs::setOrbitalSetSize(), and qmcplusplus::TEST_CASE().
ValueMatrix psiM_all |
Definition at line 141 of file RotatedSPOs.h.
Referenced by RotatedSPOs::evaluateDerivatives(), RotatedSPOs::evaluateDerivativesWF(), and RotatedSPOs::evaluateDerivRatios().
ValueMatrix psiM_inv |
Definition at line 140 of file RotatedSPOs.h.
Referenced by RotatedSPOs::evaluateDerivatives(), RotatedSPOs::evaluateDerivativesWF(), and RotatedSPOs::evaluateDerivRatios().
|
private |
Use global rotation or history list.
Definition at line 480 of file RotatedSPOs.h.
Referenced by RotatedSPOs::buildOptVariables(), RotatedSPOs::makeClone(), RotatedSPOs::resetParametersExclusive(), RotatedSPOs::set_use_global_rotation(), and RotatedSPOs::writeVariationalParameters().