![]() |
QMCPACK
|
class to match ST real spline with BsplineSet::ValueType (real) SPOs More...
Public Member Functions | |
SplineR2R (const std::string &my_name) | |
SplineR2R (const SplineR2R &in) | |
virtual std::string | getClassName () const override |
return class name More... | |
virtual std::string | getKeyword () const override |
bool | isComplex () const override |
bool | isRotationSupported () const override |
return true if this SPOSet can be wrappered by RotatedSPO 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 | storeParamsBeforeRotation () override |
Store an original copy of the spline coefficients for orbital rotation. More... | |
void | applyRotation (const ValueMatrix &rot_mat, bool use_stored_copy) override |
apply rotation to all the orbitals More... | |
void | resizeStorage (size_t n, size_t nvals) |
void | bcast_tables (Communicate *comm) |
void | gather_tables (Communicate *comm) |
template<typename GT , typename BCT > | |
void | create_spline (GT &xyz_g, BCT &xyz_bc) |
void | flush_zero () |
void | set_spline (SingleSplineType *spline_r, SingleSplineType *spline_i, int twist, int ispline, int level) |
bool | read_splines (hdf_archive &h5f) |
bool | write_splines (hdf_archive &h5f) |
int | convertPos (const PointType &r, PointType &ru) |
convert position in PrimLattice unit and return sign More... | |
void | assign_v (int bc_sign, const vContainer_type &myV, ValueVector &psi, int first, int last) const |
void | evaluateValue (const ParticleSet &P, const int iat, ValueVector &psi) override |
evaluate the values of this single-particle orbital set More... | |
void | evaluateDetRatios (const VirtualParticleSet &VP, ValueVector &psi, const ValueVector &psiinv, std::vector< TT > &ratios) override |
void | assign_vgl (int bc_sign, ValueVector &psi, GradVector &dpsi, ValueVector &d2psi, int first, int last) const |
void | assign_vgl_from_l (int bc_sign, ValueVector &psi, GradVector &dpsi, ValueVector &d2psi) |
assign_vgl_from_l can be used when myL is precomputed and myV,myG,myL in cartesian More... | |
void | evaluateVGL (const ParticleSet &P, const int iat, ValueVector &psi, GradVector &dpsi, ValueVector &d2psi) override |
evaluate the values, gradients and laplacians of this single-particle orbital set More... | |
void | assign_vgh (int bc_sign, ValueVector &psi, GradVector &dpsi, HessVector &grad_grad_psi, int first, int last) const |
void | evaluateVGH (const ParticleSet &P, const 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 | assign_vghgh (int bc_sign, ValueVector &psi, GradVector &dpsi, HessVector &grad_grad_psi, GGGVector &grad_grad_grad_psi, int first=0, int last=-1) const |
void | evaluateVGHGH (const ParticleSet &P, const 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... | |
![]() | |
BsplineSet (const std::string &my_name) | |
auto & | getHalfG () const |
void | init_base (int n) |
int | remap_kpoints () |
remap kpoints to group general kpoints & special kpoints More... | |
void | setOrbitalSetSize (int norbs) override |
set the OrbitalSetSize 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 | 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 | 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 &gradphi) 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... | |
virtual void | evaluateDetRatios (const VirtualParticleSet &VP, ValueVector &psi, const ValueVector &psiinv, std::vector< ValueType > &ratios) |
evaluate determinant ratios for virtual moves, e.g., sphere move for nonlocalPP More... | |
virtual void | evaluateValue (const ParticleSet &P, int iat, ValueVector &psi)=0 |
evaluate the values of this single-particle orbital set More... | |
virtual void | evaluateVGH (const ParticleSet &P, int iat, ValueVector &psi, GradVector &dpsi, HessVector &grad_grad_psi) |
evaluate the values, gradients and hessians of this single-particle orbital set More... | |
virtual void | evaluateVGHGH (const ParticleSet &P, int iat, ValueVector &psi, GradVector &dpsi, HessVector &grad_grad_psi, GGGVector &grad_grad_grad_psi) |
evaluate the values, gradients, hessians, and grad hessians of this single-particle orbital set More... | |
virtual void | evaluateVGL (const ParticleSet &P, int iat, ValueVector &psi, GradVector &dpsi, ValueVector &d2psi)=0 |
evaluate the values, gradients and laplacians of this single-particle orbital set More... | |
virtual void | finalizeConstruction () |
finalize the construction of SPOSet More... | |
virtual 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 |
evaluate determinant ratios for virtual moves, e.g., sphere move for nonlocalPP, of multiple walkers More... | |
virtual 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 |
evaluate the values, gradients and laplacians of this single-particle orbital sets of multiple walkers More... | |
virtual 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 |
evaluate the values, gradients and laplacians of this single-particle orbital sets and determinant ratio and grads of multiple walkers. More... | |
virtual void | acquireResource (ResourceCollection &collection, const RefVectorWithLeader< SPOSet > &spo_list) const |
acquire a shared resource from collection More... | |
virtual void | createResource (ResourceCollection &collection) const |
initialize a shared resource and hand it to collection More... | |
virtual void | releaseResource (ResourceCollection &collection, const RefVectorWithLeader< SPOSet > &spo_list) const |
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 | isOptimizable () const |
Query if this SPOSet is optimizable. More... | |
virtual void | extractOptimizableObjectRefs (UniqueOptObjRefs &opt_obj_refs) |
extract underlying OptimizableObject references More... | |
virtual void | checkOutVariables (const opt_variables_type &active) |
check out variational optimizable variables More... | |
virtual bool | isOMPoffload () const |
Query if this SPOSet uses OpenMP offload. More... | |
virtual bool | hasIonDerivs () const |
Query if this SPOSet has an explicit ion dependence. More... | |
virtual void | checkObject () const |
check a few key parameters before putting the SPO into a determinant More... | |
virtual void | evaluateDerivatives (ParticleSet &P, const opt_variables_type &optvars, Vector< ValueType > &dlogpsi, Vector< ValueType > &dhpsioverpsi, const int &FirstIndex, const int &LastIndex) |
Parameter derivatives of the wavefunction and the Laplacian of the wavefunction. More... | |
virtual void | evaluateDerivativesWF (ParticleSet &P, const opt_variables_type &optvars, Vector< ValueType > &dlogpsi, int FirstIndex, int LastIndex) |
Parameter derivatives of the wavefunction. More... | |
virtual 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) |
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... | |
virtual 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) |
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... | |
virtual void | evaluateDetRatios (const VirtualParticleSet &VP, ValueVector &psi, const ValueVector &psiinv, std::vector< ValueType > &ratios) |
evaluate determinant ratios for virtual moves, e.g., sphere move for nonlocalPP 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 | 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) |
Determinant ratios and parameter derivatives of the wavefunction for virtual moves. More... | |
virtual 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 |
evaluate determinant ratios for virtual moves, e.g., sphere move for nonlocalPP, of multiple walkers More... | |
virtual void | evaluateVGL_spin (const ParticleSet &P, int iat, ValueVector &psi, GradVector &dpsi, ValueVector &d2psi, ValueVector &dspin) |
evaluate the values, gradients and laplacians and spin gradient of this single-particle orbital set More... | |
virtual void | mw_evaluateValue (const RefVectorWithLeader< SPOSet > &spo_list, const RefVectorWithLeader< ParticleSet > &P_list, int iat, const RefVector< ValueVector > &psi_v_list) const |
evaluate the values this single-particle orbital sets of multiple walkers More... | |
virtual 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 |
evaluate the values, gradients and laplacians of this single-particle orbital sets of multiple walkers More... | |
virtual 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 |
evaluate the values, gradients and laplacians and spin gradient of this single-particle orbital sets of multiple walkers More... | |
virtual 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 |
evaluate the values, gradients and laplacians of this single-particle orbital sets and determinant ratio and grads of multiple walkers. More... | |
virtual 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 |
evaluate the values, gradients and laplacians of this single-particle orbital sets and determinant ratio and grads of multiple walkers. More... | |
virtual void | evaluate_spin (const ParticleSet &P, int iat, ValueVector &psi, ValueVector &dpsi) |
evaluate the values of this single-particle orbital set 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 void | createResource (ResourceCollection &collection) const |
initialize a shared resource and hand it to collection More... | |
virtual void | acquireResource (ResourceCollection &collection, const RefVectorWithLeader< SPOSet > &spo_list) const |
acquire a shared resource from collection More... | |
virtual void | releaseResource (ResourceCollection &collection, const RefVectorWithLeader< SPOSet > &spo_list) const |
return a shared resource to collection 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... | |
Protected Attributes | |
CrystalLattice< ST, 3 > | PrimLattice |
primitive cell More... | |
vContainer_type | myV |
intermediate result vectors More... | |
vContainer_type | myL |
gContainer_type | myG |
hContainer_type | myH |
ghContainer_type | mygH |
![]() | |
size_t | MyIndex |
Index of this adoptor, when multiple adoptors are used for NUMA or distributed cases. More... | |
size_t | first_spo |
first index of the SPOs this Spline handles More... | |
size_t | last_spo |
last index of the SPOs this Spline handles More... | |
TinyVector< int, D > | HalfG |
sign bits at the G/2 boundaries More... | |
std::vector< bool > | MakeTwoCopies |
flags to unpack sin/cos More... | |
std::vector< SPOSet::PosType > | kPoints |
kpoints for each unique orbitals. More... | |
aligned_vector< int > | BandIndexMap |
remap splines to orbitals More... | |
std::vector< int > | offset |
band offsets used for communication More... | |
![]() | |
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... | |
Private Attributes | |
bool | IsGamma |
Tensor< ST, 3 > | GGt |
![]() | |
std::shared_ptr< MultiBspline< ST > > | SplineInst |
multi bspline set More... | |
std::shared_ptr< std::vector< ST > > | coef_copy_ |
Copy of original splines for orbital rotation. More... | |
Matrix< TT > | ratios_private |
thread private ratios for reduction when using nested threading, numVP x numThread More... | |
Friends | |
template<class BSPLINESPO > | |
class | SplineSetReader |
struct | BsplineReader |
Additional Inherited Members | |
![]() | |
static const int | D = DIM |
class to match ST real spline with BsplineSet::ValueType (real) SPOs
ST | precision of spline |
Requires temporage storage and multiplication of the sign of the real part of the phase Internal storage ST type arrays are aligned and padded.
Definition at line 34 of file SplineR2R.h.
Definition at line 38 of file SplineR2R.h.
using DataType = ST |
Definition at line 39 of file SplineR2R.h.
using gContainer_type = VectorSoaContainer<ST, 3> |
Definition at line 50 of file SplineR2R.h.
using ghContainer_type = VectorSoaContainer<ST, 10> |
Definition at line 52 of file SplineR2R.h.
using hContainer_type = VectorSoaContainer<ST, 6> |
Definition at line 51 of file SplineR2R.h.
using PointType = TinyVector<ST, 3> |
Definition at line 40 of file SplineR2R.h.
using SingleSplineType = UBspline_3d_d |
Definition at line 41 of file SplineR2R.h.
using SplineType = typename bspline_traits<ST, 3>::SplineType |
Definition at line 37 of file SplineR2R.h.
using TT = typename BsplineSet::ValueType |
Definition at line 43 of file SplineR2R.h.
using vContainer_type = Vector<ST, aligned_allocator<ST> > |
Definition at line 49 of file SplineR2R.h.
|
inline |
Definition at line 79 of file SplineR2R.h.
|
overridevirtual |
apply rotation to all the orbitals
Reimplemented from SPOSet.
Definition at line 106 of file SplineR2R.cpp.
References qmcplusplus::syclBLAS::copy_n(), and BLAS::gemm().
|
inline |
Definition at line 152 of file SplineR2R.cpp.
References omptarget::min().
void assign_vgh | ( | int | bc_sign, |
ValueVector & | psi, | ||
GradVector & | dpsi, | ||
HessVector & | grad_grad_psi, | ||
int | first, | ||
int | last | ||
) | const |
Definition at line 310 of file SplineR2R.cpp.
References omptarget::min(), and qmcplusplus::v_m_v().
void assign_vghgh | ( | int | bc_sign, |
ValueVector & | psi, | ||
GradVector & | dpsi, | ||
HessVector & | grad_grad_psi, | ||
GGGVector & | grad_grad_grad_psi, | ||
int | first = 0 , |
||
int | last = -1 |
||
) | const |
Definition at line 394 of file SplineR2R.cpp.
References omptarget::min(), qmcplusplus::t3_contract(), and qmcplusplus::v_m_v().
|
inline |
Definition at line 226 of file SplineR2R.cpp.
References omptarget::min(), and qmcplusplus::SymTrace().
|
inline |
assign_vgl_from_l can be used when myL is precomputed and myV,myG,myL in cartesian
Definition at line 268 of file SplineR2R.cpp.
|
inline |
Definition at line 120 of file SplineR2R.h.
References qmcplusplus::comm, and SplineR2R< ST >::SplineInst.
convert position in PrimLattice unit and return sign
Definition at line 153 of file SplineR2R.h.
References BsplineSet::D, qmcplusplus::floor(), BsplineSet::HalfG, SplineR2R< ST >::PrimLattice, and CrystalLattice< T, D >::toUnit().
|
inline |
Definition at line 134 of file SplineR2R.h.
References qmcplusplus::app_log(), qmcplusplus::dot(), CrystalLattice< T, D >::G, SplineR2R< ST >::GGt, SplineR2R< ST >::myV, SplineR2R< ST >::PrimLattice, Vector< T, Alloc >::size(), SplineR2R< ST >::SplineInst, and qmcplusplus::transpose().
|
override |
Definition at line 183 of file SplineR2R.cpp.
References ParticleSet::activeR(), qmcplusplus::C2C::assign_v(), qmcplusplus::simd::dot(), FairDivideAligned(), VirtualParticleSet::getTotalNum(), omp_get_num_threads(), and omp_get_thread_num().
|
overridevirtual |
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 166 of file SplineR2R.cpp.
References ParticleSet::activeR(), qmcplusplus::C2C::assign_v(), FairDivideAligned(), omp_get_num_threads(), and omp_get_thread_num().
|
overridevirtual |
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 373 of file SplineR2R.cpp.
References ParticleSet::activeR(), FairDivideAligned(), omp_get_num_threads(), and omp_get_thread_num().
|
overridevirtual |
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 551 of file SplineR2R.cpp.
References ParticleSet::activeR(), FairDivideAligned(), omp_get_num_threads(), and omp_get_thread_num().
|
overridevirtual |
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 289 of file SplineR2R.cpp.
References ParticleSet::activeR(), qmcplusplus::C2C::assign_vgl(), FairDivideAligned(), omp_get_num_threads(), and omp_get_thread_num().
|
inline |
Definition at line 144 of file SplineR2R.h.
References SplineR2R< ST >::SplineInst.
|
inline |
Definition at line 122 of file SplineR2R.h.
References qmcplusplus::comm, FairDivideLow(), gatherv(), BsplineSet::kPoints, BsplineSet::offset, Communicate::size(), and SplineR2R< ST >::SplineInst.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
return true if this SPOSet can be wrappered by RotatedSPO
Reimplemented from SPOSet.
Definition at line 85 of file SplineR2R.h.
|
inlineoverridevirtual |
make a clone of itself every derived class must implement this to have threading working correctly.
Implements BsplineSet.
Definition at line 87 of file SplineR2R.h.
bool read_splines | ( | hdf_archive & | h5f | ) |
Definition at line 39 of file SplineR2R.cpp.
References hdf_archive::readEntry().
|
inline |
Definition at line 107 of file SplineR2R.h.
References BsplineSet::HalfG, BsplineSet::init_base(), SplineR2R< ST >::IsGamma, SplineR2R< ST >::myG, SplineR2R< ST >::mygH, SplineR2R< ST >::myH, SplineR2R< ST >::myL, SplineR2R< ST >::myV, qmcplusplus::n, VectorSoaContainer< T, D, Alloc >::resize(), and Vector< T, Alloc >::resize().
|
inline |
Definition at line 29 of file SplineR2R.cpp.
|
overridevirtual |
Store an original copy of the spline coefficients for orbital rotation.
Reimplemented from SPOSet.
Definition at line 57 of file SplineR2R.cpp.
References qmcplusplus::syclBLAS::copy_n().
bool write_splines | ( | hdf_archive & | h5f | ) |
Definition at line 48 of file SplineR2R.cpp.
References hdf_archive::writeEntry().
|
friend |
Definition at line 216 of file SplineR2R.h.
|
friend |
Definition at line 215 of file SplineR2R.h.
|
private |
Copy of original splines for orbital rotation.
Definition at line 62 of file SplineR2R.h.
|
private |
, transformation for tensor in LatticeUnit to CartesianUnit, e.g. Hessian
Definition at line 57 of file SplineR2R.h.
Referenced by SplineR2R< ST >::create_spline().
|
private |
Definition at line 55 of file SplineR2R.h.
Referenced by SplineR2R< ST >::resizeStorage().
|
protected |
Definition at line 74 of file SplineR2R.h.
Referenced by SplineR2R< ST >::resizeStorage().
|
protected |
Definition at line 76 of file SplineR2R.h.
Referenced by SplineR2R< ST >::resizeStorage().
|
protected |
Definition at line 75 of file SplineR2R.h.
Referenced by SplineR2R< ST >::resizeStorage().
|
protected |
Definition at line 73 of file SplineR2R.h.
Referenced by SplineR2R< ST >::resizeStorage().
|
protected |
intermediate result vectors
Definition at line 72 of file SplineR2R.h.
Referenced by SplineR2R< ST >::create_spline(), and SplineR2R< ST >::resizeStorage().
|
protected |
primitive cell
Definition at line 70 of file SplineR2R.h.
Referenced by SplineR2R< ST >::convertPos(), and SplineR2R< ST >::create_spline().
thread private ratios for reduction when using nested threading, numVP x numThread
Definition at line 65 of file SplineR2R.h.
|
private |
multi bspline set
Definition at line 59 of file SplineR2R.h.
Referenced by SplineR2R< ST >::bcast_tables(), SplineR2R< ST >::create_spline(), SplineR2R< ST >::flush_zero(), and SplineR2R< ST >::gather_tables().