![]() |
QMCPACK
|
A numerical functor. More...
Public Types | |
using | value_type = RT |
typedef for the value_type More... | |
using | FNIN = OptimizableFunctorBase |
typedef of the source functor More... | |
using | grid_type = OneDimGridBase< real_type > |
typedef for the grid More... | |
![]() | |
using | real_type = optimize::VariableSet::real_type |
typedef for real values More... | |
using | opt_variables_type = optimize::VariableSet |
typedef for variableset: this is going to be replaced More... | |
Public Member Functions | |
CubicSplineSingle () | |
constructor More... | |
CubicSplineSingle (const CubicSplineSingle &old) | |
OptimizableFunctorBase * | makeClone () const override |
create a clone of this object More... | |
CubicSplineSingle (FNIN *in_, grid_type *agrid) | |
constructor with arguments More... | |
CubicSplineSingle (FNIN *in_, real_type rc, int npts) | |
constructor with arguments More... | |
void | setInFunc (FNIN *in_) |
set the input, analytic function More... | |
void | reportStatus (std::ostream &os) override |
print the state, e.g., optimizables More... | |
bool | isOptimizable () |
real_type | evaluate (real_type r, real_type &dudr, real_type &d2udr2, real_type &d3udr3) |
evaluate everything: value, first, second and third derivatives More... | |
real_type | evaluate (real_type r, real_type &dudr, real_type &d2udr2) |
evaluate everything: value, first and second derivatives More... | |
real_type | evaluate (real_type r) |
evaluate value only More... | |
real_type | evaluate (real_type r, real_type rinv) |
evaluate value only More... | |
real_type | evaluateAll (real_type r, real_type rinv) |
evaluate everything: value, first and second derivatives More... | |
real_type | f (real_type r) override |
implement the virtual function of OptimizableFunctorBase More... | |
real_type | df (real_type r) override |
implement the virtual function of OptimizableFunctorBase More... | |
real_type | evaluateV (const int iat, const int iStart, const int iEnd, const real_type *restrict _distArray, real_type *restrict distArrayCompressed) const |
void | evaluateVGL (const int iat, const int iStart, const int iEnd, const real_type *distArray, real_type *restrict valArray, real_type *restrict gradArray, real_type *restrict laplArray, real_type *restrict distArrayCompressed, int *restrict distIndices) const |
bool | put (xmlNodePtr cur) override |
process xmlnode and registers variables to optimize 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 the input/output function More... | |
void | print (std::ostream &os) |
void | initialize (FNIN *in_, grid_type *agrid) |
set the input, analytic function More... | |
void | initialize (FNIN *in_, real_type rmax, int npts) |
void | reset () override |
reset function More... | |
![]() | |
OptimizableFunctorBase (const std::string &name="") | |
default constructor More... | |
virtual | ~OptimizableFunctorBase ()=default |
virtual destrutor More... | |
void | getIndex (const opt_variables_type &active) |
virtual void | setDensity (real_type n) |
empty virtual function to help builder classes More... | |
virtual void | setCusp (real_type cusp) |
empty virtual function to help builder classes More... | |
virtual void | setPeriodic (bool periodic) |
empty virtual function to help builder classes More... | |
virtual bool | evaluateDerivatives (real_type r, std::vector< qmcplusplus::TinyVector< real_type, 3 >> &derivs) |
virtual bool | evaluateDerivatives (real_type r, std::vector< real_type > &derivs) |
virtual void | setGridManager (bool willmanage) |
virtual void | checkInVariablesExclusive (opt_variables_type &active)=0 |
check in variational parameters to the global list of parameters used by the optimizer. More... | |
virtual void | resetParametersExclusive (const opt_variables_type &active)=0 |
reset the parameters during optimizations More... | |
![]() | |
OptimizableObject (const std::string &name) | |
const std::string & | getName () const |
bool | isOptimized () const |
void | setOptimization (bool state) |
virtual void | writeVariationalParameters (hdf_archive &hout) |
Write the variational parameters for this object to the VP HDF file. More... | |
virtual void | readVariationalParameters (hdf_archive &hin) |
Read the variational parameters for this object from the VP HDF file. More... | |
Static Public Member Functions | |
static void | mw_evaluateV (const int num_groups, const CubicSplineSingle *const functors[], const int n_src, const int *grp_ids, const int num_pairs, const int *ref_at, const RT *mw_dist, const int dist_stride, RT *mw_vals, Vector< char, OffloadPinnedAllocator< char >> &transfer_buffer) |
evaluate sum of the pair potentials FIXME More... | |
Public Attributes | |
int | NumParams |
FNIN * | InFunc |
FNOUT | OutFunc |
int | NumGridPoints |
real_type | Rmax |
real_type | GridDelta |
real_type | Y |
real_type | dY |
real_type | d2Y |
![]() | |
real_type | cutoff_radius = 0.0 |
maximum cutoff More... | |
opt_variables_type | myVars |
set of variables to be optimized More... | |
A numerical functor.
implements interfaces to be used for Jastrow functions and replaces CubicBsplineSingle. Template parameters
Definition at line 38 of file SplineFunctors.h.
using FNIN = OptimizableFunctorBase |
typedef of the source functor
Definition at line 43 of file SplineFunctors.h.
using grid_type = OneDimGridBase<real_type> |
typedef for the grid
Definition at line 45 of file SplineFunctors.h.
using value_type = RT |
typedef for the value_type
Definition at line 41 of file SplineFunctors.h.
|
inline |
|
inline |
Definition at line 60 of file SplineFunctors.h.
References CubicSplineSingle< RT, FNOUT >::InFunc, CubicSplineSingle< RT, FNOUT >::initialize(), OptimizableFunctorBase::makeClone(), CubicSplineSingle< RT, FNOUT >::NumGridPoints, CubicSplineSingle< RT, FNOUT >::NumParams, and CubicSplineSingle< RT, FNOUT >::Rmax.
|
inline |
constructor with arguments
Definition at line 73 of file SplineFunctors.h.
References CubicSplineSingle< RT, FNOUT >::initialize().
|
inline |
constructor with arguments
Definition at line 75 of file SplineFunctors.h.
References CubicSplineSingle< RT, FNOUT >::initialize().
|
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 174 of file SplineFunctors.h.
References OptimizableFunctorBase::checkInVariablesExclusive(), and CubicSplineSingle< RT, FNOUT >::InFunc.
|
inlineoverridevirtual |
check out variational optimizable variables
active | a super set of optimizable variables |
Implements OptimizableFunctorBase.
Definition at line 180 of file SplineFunctors.h.
References OptimizableFunctorBase::checkOutVariables(), and CubicSplineSingle< RT, FNOUT >::InFunc.
implement the virtual function of OptimizableFunctorBase
Implements OptimizableFunctorBase.
Definition at line 119 of file SplineFunctors.h.
References CubicSplineSingle< RT, FNOUT >::OutFunc.
evaluate everything: value, first, second and third derivatives
Definition at line 88 of file SplineFunctors.h.
References CubicSplineSingle< RT, FNOUT >::OutFunc.
evaluate everything: value, first and second derivatives
Definition at line 97 of file SplineFunctors.h.
References CubicSplineSingle< RT, FNOUT >::OutFunc.
evaluate value only
Definition at line 101 of file SplineFunctors.h.
References CubicSplineSingle< RT, FNOUT >::OutFunc.
evaluate value only
Function required for SphericalBasisSet
Definition at line 107 of file SplineFunctors.h.
References CubicSplineSingle< RT, FNOUT >::OutFunc, and CubicSplineSingle< RT, FNOUT >::Y.
evaluate everything: value, first and second derivatives
Function required for SphericalBasisSet
Definition at line 113 of file SplineFunctors.h.
References CubicSplineSingle< RT, FNOUT >::d2Y, CubicSplineSingle< RT, FNOUT >::dY, CubicSplineSingle< RT, FNOUT >::OutFunc, and CubicSplineSingle< RT, FNOUT >::Y.
|
inline |
Definition at line 126 of file SplineFunctors.h.
|
inline |
Definition at line 153 of file SplineFunctors.h.
implement the virtual function of OptimizableFunctorBase
Implements OptimizableFunctorBase.
Definition at line 116 of file SplineFunctors.h.
References CubicSplineSingle< RT, FNOUT >::OutFunc.
set the input, analytic function
Definition at line 204 of file SplineFunctors.h.
References CubicSplineSingle< RT, FNOUT >::initialize(), OneDimGridBase< T, CT >::rmax(), and OneDimGridBase< T, CT >::size().
Referenced by CubicSplineSingle< RT, FNOUT >::CubicSplineSingle(), and CubicSplineSingle< RT, FNOUT >::initialize().
Definition at line 206 of file SplineFunctors.h.
References CubicSplineSingle< RT, FNOUT >::GridDelta, CubicSplineSingle< RT, FNOUT >::InFunc, CubicSplineSingle< RT, FNOUT >::NumGridPoints, CubicSplineSingle< RT, FNOUT >::reset(), and CubicSplineSingle< RT, FNOUT >::Rmax.
|
inline |
Definition at line 84 of file SplineFunctors.h.
|
inlineoverridevirtual |
create a clone of this object
Implements OptimizableFunctorBase.
Definition at line 70 of file SplineFunctors.h.
|
inlinestatic |
evaluate sum of the pair potentials FIXME
Definition at line 139 of file SplineFunctors.h.
|
inline |
Definition at line 196 of file SplineFunctors.h.
References CubicSplineSingle< RT, FNOUT >::GridDelta, CubicSplineSingle< RT, FNOUT >::NumGridPoints, and CubicSplineSingle< RT, FNOUT >::OutFunc.
|
inlineoverridevirtual |
process xmlnode and registers variables to optimize
cur | xmlNode for a functor |
Implements OptimizableFunctorBase.
Definition at line 166 of file SplineFunctors.h.
References CubicSplineSingle< RT, FNOUT >::InFunc, OptimizableFunctorBase::put(), and qmcplusplus::Units::time::s.
|
inlineoverridevirtual |
print the state, e.g., optimizables
Reimplemented from OptimizableObject.
Definition at line 79 of file SplineFunctors.h.
|
inlineoverridevirtual |
reset function
Implements OptimizableFunctorBase.
Definition at line 215 of file SplineFunctors.h.
References APP_ABORT, OptimizableFunctorBase::df(), OptimizableFunctorBase::f(), CubicSplineSingle< RT, FNOUT >::GridDelta, CubicSplineSingle< RT, FNOUT >::InFunc, CubicSplineSingle< RT, FNOUT >::NumGridPoints, CubicSplineSingle< RT, FNOUT >::OutFunc, and CubicSplineSingle< RT, FNOUT >::Rmax.
Referenced by CubicSplineSingle< RT, FNOUT >::initialize(), and CubicSplineSingle< RT, FNOUT >::resetParametersExclusive().
|
inlineoverridevirtual |
reset the input/output function
Implements OptimizableObject.
Definition at line 187 of file SplineFunctors.h.
References CubicSplineSingle< RT, FNOUT >::InFunc, CubicSplineSingle< RT, FNOUT >::reset(), and OptimizableFunctorBase::resetParametersExclusive().
|
inline |
set the input, analytic function
Definition at line 77 of file SplineFunctors.h.
References CubicSplineSingle< RT, FNOUT >::InFunc.
real_type d2Y |
Definition at line 56 of file SplineFunctors.h.
Referenced by CubicSplineSingle< RT, FNOUT >::evaluateAll().
real_type dY |
Definition at line 55 of file SplineFunctors.h.
Referenced by CubicSplineSingle< RT, FNOUT >::evaluateAll().
real_type GridDelta |
Definition at line 53 of file SplineFunctors.h.
Referenced by CubicSplineSingle< RT, FNOUT >::initialize(), CubicSplineSingle< RT, FNOUT >::print(), and CubicSplineSingle< RT, FNOUT >::reset().
FNIN* InFunc |
Definition at line 49 of file SplineFunctors.h.
Referenced by CubicSplineSingle< RT, FNOUT >::checkInVariablesExclusive(), CubicSplineSingle< RT, FNOUT >::checkOutVariables(), CubicSplineSingle< RT, FNOUT >::CubicSplineSingle(), CubicSplineSingle< RT, FNOUT >::initialize(), CubicSplineSingle< RT, FNOUT >::put(), CubicSplineSingle< RT, FNOUT >::reset(), CubicSplineSingle< RT, FNOUT >::resetParametersExclusive(), and CubicSplineSingle< RT, FNOUT >::setInFunc().
int NumGridPoints |
Definition at line 51 of file SplineFunctors.h.
Referenced by CubicSplineSingle< RT, FNOUT >::CubicSplineSingle(), CubicSplineSingle< RT, FNOUT >::initialize(), CubicSplineSingle< RT, FNOUT >::print(), and CubicSplineSingle< RT, FNOUT >::reset().
int NumParams |
Definition at line 48 of file SplineFunctors.h.
Referenced by CubicSplineSingle< RT, FNOUT >::CubicSplineSingle().
FNOUT OutFunc |
Definition at line 50 of file SplineFunctors.h.
Referenced by CubicSplineSingle< RT, FNOUT >::df(), CubicSplineSingle< RT, FNOUT >::evaluate(), CubicSplineSingle< RT, FNOUT >::evaluateAll(), CubicSplineSingle< RT, FNOUT >::f(), CubicSplineSingle< RT, FNOUT >::print(), and CubicSplineSingle< RT, FNOUT >::reset().
real_type Rmax |
Definition at line 52 of file SplineFunctors.h.
Referenced by CubicSplineSingle< RT, FNOUT >::CubicSplineSingle(), CubicSplineSingle< RT, FNOUT >::initialize(), and CubicSplineSingle< RT, FNOUT >::reset().
Definition at line 54 of file SplineFunctors.h.
Referenced by CubicSplineSingle< RT, FNOUT >::evaluate(), and CubicSplineSingle< RT, FNOUT >::evaluateAll().