QMCPACK
HybridRepReal< SPLINEBASE > Class Template Reference

hybrid representation orbitals combining B-spline orbitals on a grid and atomic centered orbitals. More...

+ Inheritance diagram for HybridRepReal< SPLINEBASE >:
+ Collaboration diagram for HybridRepReal< SPLINEBASE >:

Public Types

using SplineBase = SPLINEBASE
 
using HYBRIDBASE = HybridRepCenterOrbitals< typename SPLINEBASE::DataType >
 
using ST = typename SPLINEBASE::DataType
 
using DataType = typename SPLINEBASE::DataType
 
using PointType = typename SPLINEBASE::PointType
 
using SingleSplineType = typename SPLINEBASE::SingleSplineType
 
using RealType = typename SPLINEBASE::RealType
 

Public Member Functions

 HybridRepReal (const std::string &my_name)
 
bool isRotationSupported () const override
 
void storeParamsBeforeRotation () override
 
void applyRotation (const ValueMatrix &rot_mat, bool use_stored_copy) override
 
std::string getClassName () const final
 
std::string getKeyword () const final
 
bool isOMPoffload () const final
 
std::unique_ptr< SPOSetmakeClone () const override
 
void bcast_tables (Communicate *comm)
 
void gather_tables (Communicate *comm)
 
bool read_splines (hdf_archive &h5f)
 
bool write_splines (hdf_archive &h5f)
 
void evaluateValue (const ParticleSet &P, const int iat, ValueVector &psi) override
 
void evaluateDetRatios (const VirtualParticleSet &VP, ValueVector &psi, const ValueVector &psiinv, std::vector< ValueType > &ratios) override
 
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 final
 
void evaluateVGL (const ParticleSet &P, const int iat, ValueVector &psi, GradVector &dpsi, ValueVector &d2psi) override
 
void mw_evaluateVGL (const RefVectorWithLeader< SPOSet > &sa_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 final
 
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 final
 
void evaluateVGH (const ParticleSet &P, const int iat, ValueVector &psi, GradVector &dpsi, HessVector &grad_grad_psi) override
 
void evaluateVGHGH (const ParticleSet &P, const int iat, ValueVector &psi, GradVector &dpsi, HessVector &grad_grad_psi, GGGVector &grad_grad_grad_psi) override
 
void evaluate_notranspose (const ParticleSet &P, int first, int last, ValueMatrix &logdet, GradMatrix &dlogdet, ValueMatrix &d2logdet) final
 

Private Types

enum  Region
 
- Private Types inherited from HybridRepCenterOrbitals< SPLINEBASE::DataType >
enum  Region
 
using PointType = typename AtomicOrbitals< SPLINEBASE::DataType >::PointType
 
using RealType = typename DistanceTable::RealType
 
using PosType = typename DistanceTable::PosType
 

Private Attributes

ValueVector psi_AO
 
ValueVector d2psi_AO
 
GradVector dpsi_AO
 
Matrix< ST, aligned_allocator< ST > > multi_myV
 
HYBRIDBASE::LocationSmoothingInfo info
 

Friends

template<class BSPLINESPO >
class HybridRepSetReader
 
template<class BSPLINESPO >
class SplineSetReader
 
struct BsplineReader
 

Additional Inherited Members

- Private Member Functions inherited from HybridRepCenterOrbitals< SPLINEBASE::DataType >
 HybridRepCenterOrbitals ()
 
void storeParamsBeforeRotation ()
 
void applyRotation (const VM &rot_mat, bool use_stored_copy)
 
void set_info (const ParticleSet &ions, ParticleSet &els, const std::vector< int > &mapping)
 
void resizeStorage (size_t Nb)
 
void bcast_tables (Communicate *comm)
 
void gather_atomic_tables (Communicate *comm, std::vector< int > &offset)
 
void flush_zero ()
 
bool read_splines (hdf_archive &h5f)
 
bool write_splines (hdf_archive &h5f)
 
int get_bc_sign (const PointType &r, const PointType &r_image, const Cell &PrimLattice, TinyVector< int, D > &HalfG) const
 
void evaluate_v (const ParticleSet &P, const int iat, VV &myV, LocationSmoothingInfo &info)
 
bool is_VP_batching_safe (const VirtualParticleSet &VP) const
 
void evaluateValuesC2X (const VirtualParticleSet &VP, VM &multi_myV, LocationSmoothingInfo &info)
 
void evaluateValuesR2R (const VirtualParticleSet &VP, const Cell &PrimLattice, TinyVector< int, D > &HalfG, VM &multi_myV, SV &bc_signs, LocationSmoothingInfo &info)
 
void evaluate_vgl (const ParticleSet &P, const int iat, VV &myV, GV &myG, VV &myL, LocationSmoothingInfo &info)
 
void evaluate_vgh (const ParticleSet &P, const int iat, VV &myV, GV &myG, HT &myH, LocationSmoothingInfo &info)
 
void interpolate_buffer_v (VV &psi, const VV &psi_AO, const RealType f) const
 
void interpolate_buffer_vgl (VV &psi, GV &dpsi, VV &d2psi, const VV &psi_AO, const GV &dpsi_AO, const VV &d2psi_AO, const LocationSmoothingInfo &info) const
 
- Static Private Attributes inherited from HybridRepCenterOrbitals< SPLINEBASE::DataType >
static const int D
 

Detailed Description

template<typename SPLINEBASE>
class qmcplusplus::HybridRepReal< SPLINEBASE >

hybrid representation orbitals combining B-spline orbitals on a grid and atomic centered orbitals.

Template Parameters
SPLINEBASEB-spline orbital class.

Only works with SPLINEBASE class containing real splines

Definition at line 33 of file HybridRepReal.h.

Member Typedef Documentation

◆ DataType

using DataType = typename SPLINEBASE::DataType

Definition at line 39 of file HybridRepReal.h.

◆ HYBRIDBASE

using HYBRIDBASE = HybridRepCenterOrbitals<typename SPLINEBASE::DataType>

Definition at line 37 of file HybridRepReal.h.

◆ PointType

using PointType = typename SPLINEBASE::PointType

Definition at line 40 of file HybridRepReal.h.

◆ RealType

using RealType = typename SPLINEBASE::RealType

Definition at line 42 of file HybridRepReal.h.

◆ SingleSplineType

using SingleSplineType = typename SPLINEBASE::SingleSplineType

Definition at line 41 of file HybridRepReal.h.

◆ SplineBase

using SplineBase = SPLINEBASE

Definition at line 36 of file HybridRepReal.h.

◆ ST

using ST = typename SPLINEBASE::DataType

Definition at line 38 of file HybridRepReal.h.

Member Enumeration Documentation

◆ Region

enum Region
strongprivate

Definition at line 479 of file HybridRepCenterOrbitals.h.

480  {
481  INSIDE, // within the buffer shell
482  BUFFER, // in the buffer region
483  INTER // interstitial area
484  };

Constructor & Destructor Documentation

◆ HybridRepReal()

HybridRepReal ( const std::string &  my_name)
inline

Definition at line 70 of file HybridRepReal.h.

70 : SPLINEBASE(my_name) {}

Member Function Documentation

◆ applyRotation()

void applyRotation ( const ValueMatrix &  rot_mat,
bool  use_stored_copy 
)
inlineoverride

Definition at line 78 of file HybridRepReal.h.

References HybridRepCenterOrbitals< ST >::applyRotation().

79  {
80  SPLINEBASE::applyRotation(rot_mat, use_stored_copy);
81  HYBRIDBASE::applyRotation(rot_mat, use_stored_copy);
82  }
void applyRotation(const VM &rot_mat, bool use_stored_copy)

◆ bcast_tables()

void bcast_tables ( Communicate comm)
inline

Definition at line 90 of file HybridRepReal.h.

References HybridRepCenterOrbitals< ST >::bcast_tables(), and qmcplusplus::comm.

91  {
92  SPLINEBASE::bcast_tables(comm);
94  }

◆ evaluate_notranspose()

void evaluate_notranspose ( const ParticleSet P,
int  first,
int  last,
ValueMatrix &  logdet,
GradMatrix &  dlogdet,
ValueMatrix &  d2logdet 
)
inlinefinal

Definition at line 241 of file HybridRepReal.h.

References BsplineSet::evaluate_notranspose().

247  {
248  // bypass SPLINEBASE::evaluate_notranspose
249  BsplineSet::evaluate_notranspose(P, first, last, logdet, dlogdet, d2logdet);
250  }
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...
Definition: BsplineSet.h:121

◆ evaluateDetRatios()

void evaluateDetRatios ( const VirtualParticleSet VP,
ValueVector psi,
const ValueVector psiinv,
std::vector< ValueType > &  ratios 
)
inlineoverride

Definition at line 126 of file HybridRepReal.h.

References qmcplusplus::C2C::assign_v(), qmcplusplus::simd::dot(), HybridRepReal< SPLINEBASE >::evaluateValue(), HybridRepCenterOrbitals< ST >::evaluateValuesR2R(), HybridRepCenterOrbitals< ST >::LocationSmoothingInfo::f, VirtualParticleSet::getTotalNum(), HybridRepReal< SPLINEBASE >::info, HybridRepCenterOrbitals< ST >::interpolate_buffer_v(), HybridRepCenterOrbitals< ST >::is_VP_batching_safe(), VirtualParticleSet::isOnSphere(), HybridRepReal< SPLINEBASE >::multi_myV, HybridRepReal< SPLINEBASE >::psi_AO, and HybridRepCenterOrbitals< ST >::LocationSmoothingInfo::region.

130  {
131  if (VP.isOnSphere() && HYBRIDBASE::is_VP_batching_safe(VP))
132  {
133  // resize scratch space
134  psi_AO.resize(psi.size());
135  if (multi_myV.rows() < VP.getTotalNum())
136  multi_myV.resize(VP.getTotalNum(), myV.size());
137  std::vector<int> bc_signs(VP.getTotalNum());
138  HYBRIDBASE::evaluateValuesR2R(VP, PrimLattice, HalfG, multi_myV, bc_signs, info);
139  for (int iat = 0; iat < VP.getTotalNum(); ++iat)
140  {
141  if (info.region == Region::INTER)
142  SPLINEBASE::evaluateValue(VP, iat, psi);
143  else if (info.region == Region::INSIDE)
144  {
145  Vector<ST, aligned_allocator<ST>> myV_one(multi_myV[iat], myV.size());
146  SPLINEBASE::assign_v(bc_signs[iat], myV_one, psi, 0, myV.size());
147  }
148  else
149  {
150  Vector<ST, aligned_allocator<ST>> myV_one(multi_myV[iat], myV.size());
151  SPLINEBASE::assign_v(bc_signs[iat], myV_one, psi_AO, 0, myV.size());
152  SPLINEBASE::evaluateValue(VP, iat, psi);
154  }
155  ratios[iat] = simd::dot(psi.data(), psiinv.data(), psi.size());
156  }
157  }
158  else
159  for (int iat = 0; iat < VP.getTotalNum(); ++iat)
160  {
161  evaluateValue(VP, iat, psi);
162  ratios[iat] = simd::dot(psi.data(), psiinv.data(), psi.size());
163  }
164  }
void evaluateValuesR2R(const VirtualParticleSet &VP, const Cell &PrimLattice, TinyVector< int, D > &HalfG, VM &multi_myV, SV &bc_signs, LocationSmoothingInfo &info)
HYBRIDBASE::LocationSmoothingInfo info
Definition: HybridRepReal.h:60
bool is_VP_batching_safe(const VirtualParticleSet &VP) const
T dot(const T *restrict a, const T *restrict b, int n, TRES res=TRES())
dot product
Matrix< ST, aligned_allocator< ST > > multi_myV
Definition: HybridRepReal.h:59
void assign_v(ST x, ST y, ST z, TT *restrict results_scratch_ptr, const ST *restrict offload_scratch_ptr, const ST *restrict myKcart_ptr, size_t myKcart_padded_size, size_t first_spo, int index)
void interpolate_buffer_v(VV &psi, const VV &psi_AO, const RealType f) const
void evaluateValue(const ParticleSet &P, const int iat, ValueVector &psi) override

◆ evaluateValue()

void evaluateValue ( const ParticleSet P,
const int  iat,
ValueVector psi 
)
inlineoverride

Definition at line 106 of file HybridRepReal.h.

References ParticleSet::activeR(), qmcplusplus::C2C::assign_v(), HybridRepCenterOrbitals< ST >::evaluate_v(), HybridRepCenterOrbitals< ST >::LocationSmoothingInfo::f, HybridRepCenterOrbitals< ST >::get_bc_sign(), HybridRepReal< SPLINEBASE >::info, HybridRepCenterOrbitals< ST >::interpolate_buffer_v(), HybridRepReal< SPLINEBASE >::psi_AO, HybridRepCenterOrbitals< ST >::LocationSmoothingInfo::r_image, and HybridRepCenterOrbitals< ST >::LocationSmoothingInfo::region.

Referenced by HybridRepReal< SPLINEBASE >::evaluateDetRatios().

107  {
108  HYBRIDBASE::evaluate_v(P, iat, myV, info);
109  if (info.region == Region::INTER)
110  SPLINEBASE::evaluateValue(P, iat, psi);
111  else if (info.region == Region::INSIDE)
112  {
113  int bc_sign = HYBRIDBASE::get_bc_sign(P.activeR(iat), info.r_image, PrimLattice, HalfG);
114  SPLINEBASE::assign_v(bc_sign, myV, psi, 0, myV.size());
115  }
116  else
117  {
118  psi_AO.resize(psi.size());
119  int bc_sign = HYBRIDBASE::get_bc_sign(P.activeR(iat), info.r_image, PrimLattice, HalfG);
120  SPLINEBASE::assign_v(bc_sign, myV, psi_AO, 0, myV.size());
121  SPLINEBASE::evaluateValue(P, iat, psi);
123  }
124  }
HYBRIDBASE::LocationSmoothingInfo info
Definition: HybridRepReal.h:60
int get_bc_sign(const PointType &r, const PointType &r_image, const Cell &PrimLattice, TinyVector< int, D > &HalfG) const
void assign_v(ST x, ST y, ST z, TT *restrict results_scratch_ptr, const ST *restrict offload_scratch_ptr, const ST *restrict myKcart_ptr, size_t myKcart_padded_size, size_t first_spo, int index)
void evaluate_v(const ParticleSet &P, const int iat, VV &myV, LocationSmoothingInfo &info)
void interpolate_buffer_v(VV &psi, const VV &psi_AO, const RealType f) const

◆ evaluateVGH()

void evaluateVGH ( const ParticleSet P,
const int  iat,
ValueVector psi,
GradVector &  dpsi,
HessVector &  grad_grad_psi 
)
inlineoverride

Definition at line 216 of file HybridRepReal.h.

References ParticleSet::activeR(), APP_ABORT, HybridRepCenterOrbitals< ST >::evaluate_vgh(), HybridRepCenterOrbitals< ST >::get_bc_sign(), HybridRepReal< SPLINEBASE >::info, HybridRepCenterOrbitals< ST >::LocationSmoothingInfo::r_image, and HybridRepCenterOrbitals< ST >::LocationSmoothingInfo::region.

221  {
222  APP_ABORT("HybridRepReal::evaluateVGH not implemented!");
223  HYBRIDBASE::evaluate_vgh(P, iat, myV, myG, myH, info);
224  if (info.region == Region::INTER)
225  SPLINEBASE::assign_vgh(HYBRIDBASE::get_bc_sign(P.activeR(iat), info.r_image, PrimLattice, HalfG), psi, dpsi,
226  grad_grad_psi, 0, myV.size());
227  else
228  SPLINEBASE::evaluateVGH(P, iat, psi, dpsi, grad_grad_psi);
229  }
HYBRIDBASE::LocationSmoothingInfo info
Definition: HybridRepReal.h:60
int get_bc_sign(const PointType &r, const PointType &r_image, const Cell &PrimLattice, TinyVector< int, D > &HalfG) const
void evaluate_vgh(const ParticleSet &P, const int iat, VV &myV, GV &myG, HT &myH, LocationSmoothingInfo &info)
#define APP_ABORT(msg)
Widely used but deprecated fatal error macros from legacy code.
Definition: AppAbort.h:27

◆ evaluateVGHGH()

void evaluateVGHGH ( const ParticleSet P,
const int  iat,
ValueVector psi,
GradVector &  dpsi,
HessVector &  grad_grad_psi,
GGGVector &  grad_grad_grad_psi 
)
inlineoverride

Definition at line 231 of file HybridRepReal.h.

References APP_ABORT.

237  {
238  APP_ABORT("HybridRepCplx::evaluateVGHGH not implemented!");
239  }
#define APP_ABORT(msg)
Widely used but deprecated fatal error macros from legacy code.
Definition: AppAbort.h:27

◆ evaluateVGL()

void evaluateVGL ( const ParticleSet P,
const int  iat,
ValueVector psi,
GradVector &  dpsi,
ValueVector d2psi 
)
inlineoverride

Definition at line 175 of file HybridRepReal.h.

References ParticleSet::activeR(), HybridRepReal< SPLINEBASE >::d2psi_AO, HybridRepReal< SPLINEBASE >::dpsi_AO, HybridRepCenterOrbitals< ST >::evaluate_vgl(), HybridRepCenterOrbitals< ST >::get_bc_sign(), HybridRepReal< SPLINEBASE >::info, HybridRepCenterOrbitals< ST >::interpolate_buffer_vgl(), HybridRepReal< SPLINEBASE >::psi_AO, HybridRepCenterOrbitals< ST >::LocationSmoothingInfo::r_image, and HybridRepCenterOrbitals< ST >::LocationSmoothingInfo::region.

176  {
177  HYBRIDBASE::evaluate_vgl(P, iat, myV, myG, myL, info);
178  if (info.region == Region::INTER)
179  SPLINEBASE::evaluateVGL(P, iat, psi, dpsi, d2psi);
180  else if (info.region == Region::INSIDE)
181  SPLINEBASE::assign_vgl_from_l(HYBRIDBASE::get_bc_sign(P.activeR(iat), info.r_image, PrimLattice, HalfG), psi,
182  dpsi, d2psi);
183  else
184  {
185  psi_AO.resize(psi.size());
186  dpsi_AO.resize(psi.size());
187  d2psi_AO.resize(psi.size());
188  int bc_sign = HYBRIDBASE::get_bc_sign(P.activeR(iat), info.r_image, PrimLattice, HalfG);
189  SPLINEBASE::assign_vgl_from_l(bc_sign, psi_AO, dpsi_AO, d2psi_AO);
190  SPLINEBASE::evaluateVGL(P, iat, psi, dpsi, d2psi);
192  }
193  }
HYBRIDBASE::LocationSmoothingInfo info
Definition: HybridRepReal.h:60
void interpolate_buffer_vgl(VV &psi, GV &dpsi, VV &d2psi, const VV &psi_AO, const GV &dpsi_AO, const VV &d2psi_AO, const LocationSmoothingInfo &info) const
int get_bc_sign(const PointType &r, const PointType &r_image, const Cell &PrimLattice, TinyVector< int, D > &HalfG) const
void evaluate_vgl(const ParticleSet &P, const int iat, VV &myV, GV &myG, VV &myL, LocationSmoothingInfo &info)

◆ gather_tables()

void gather_tables ( Communicate comm)
inline

Definition at line 96 of file HybridRepReal.h.

References qmcplusplus::comm, and HybridRepCenterOrbitals< ST >::gather_atomic_tables().

97  {
98  SPLINEBASE::gather_tables(comm);
99  HYBRIDBASE::gather_atomic_tables(comm, SPLINEBASE::offset);
100  }
void gather_atomic_tables(Communicate *comm, std::vector< int > &offset)

◆ getClassName()

std::string getClassName ( ) const
inlinefinal

Definition at line 84 of file HybridRepReal.h.

84 { return "Hybrid" + SPLINEBASE::getClassName(); }

◆ getKeyword()

std::string getKeyword ( ) const
inlinefinal

Definition at line 85 of file HybridRepReal.h.

85 { return "Hybrid" + SPLINEBASE::getKeyword(); }

◆ isOMPoffload()

bool isOMPoffload ( ) const
inlinefinal

Definition at line 86 of file HybridRepReal.h.

86 { return false; }

◆ isRotationSupported()

bool isRotationSupported ( ) const
inlineoverride

Definition at line 72 of file HybridRepReal.h.

72 { return SPLINEBASE::isRotationSupported(); }

◆ makeClone()

std::unique_ptr<SPOSet> makeClone ( ) const
inlineoverride

Definition at line 88 of file HybridRepReal.h.

88 { return std::make_unique<HybridRepReal>(*this); }

◆ mw_evaluateDetRatios()

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
inlinefinal

Definition at line 166 of file HybridRepReal.h.

References SPOSet::mw_evaluateDetRatios().

171  {
172  BsplineSet::mw_evaluateDetRatios(spo_list, vp_list, psi_list, invRow_ptr_list, ratios_list);
173  }
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 ...
Definition: SPOSet.cpp:69

◆ mw_evaluateVGL()

void mw_evaluateVGL ( const RefVectorWithLeader< SPOSet > &  sa_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
inlinefinal

Definition at line 195 of file HybridRepReal.h.

References SPOSet::mw_evaluateVGL().

201  {
202  BsplineSet::mw_evaluateVGL(sa_list, P_list, iat, psi_v_list, dpsi_v_list, d2psi_v_list);
203  }
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 walker...
Definition: SPOSet.cpp:93

◆ mw_evaluateVGLandDetRatioGrads()

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
inlinefinal

Definition at line 205 of file HybridRepReal.h.

References SPOSet::mw_evaluateVGLandDetRatioGrads().

212  {
213  BsplineSet::mw_evaluateVGLandDetRatioGrads(spo_list, P_list, iat, invRow_ptr_list, phi_vgl_v, ratios, grads);
214  }
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 ra...
Definition: SPOSet.cpp:126

◆ read_splines()

bool read_splines ( hdf_archive h5f)
inline

Definition at line 102 of file HybridRepReal.h.

References HybridRepCenterOrbitals< ST >::read_splines().

102 { return HYBRIDBASE::read_splines(h5f) && SPLINEBASE::read_splines(h5f); }

◆ storeParamsBeforeRotation()

void storeParamsBeforeRotation ( )
inlineoverride

Definition at line 73 of file HybridRepReal.h.

References HybridRepCenterOrbitals< ST >::storeParamsBeforeRotation().

74  {
75  SPLINEBASE::storeParamsBeforeRotation();
77  }

◆ write_splines()

bool write_splines ( hdf_archive h5f)
inline

Definition at line 104 of file HybridRepReal.h.

References HybridRepCenterOrbitals< ST >::write_splines().

104 { return HYBRIDBASE::write_splines(h5f) && SPLINEBASE::write_splines(h5f); }

Friends And Related Function Documentation

◆ BsplineReader

friend struct BsplineReader
friend

Definition at line 256 of file HybridRepReal.h.

◆ HybridRepSetReader

friend class HybridRepSetReader
friend

Definition at line 253 of file HybridRepReal.h.

◆ SplineSetReader

friend class SplineSetReader
friend

Definition at line 255 of file HybridRepReal.h.

Member Data Documentation

◆ d2psi_AO

ValueVector d2psi_AO
private

Definition at line 57 of file HybridRepReal.h.

Referenced by HybridRepReal< SPLINEBASE >::evaluateVGL().

◆ dpsi_AO

GradVector dpsi_AO
private

Definition at line 58 of file HybridRepReal.h.

Referenced by HybridRepReal< SPLINEBASE >::evaluateVGL().

◆ info

◆ multi_myV

Matrix<ST, aligned_allocator<ST> > multi_myV
private

Definition at line 59 of file HybridRepReal.h.

Referenced by HybridRepReal< SPLINEBASE >::evaluateDetRatios().

◆ psi_AO


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