MADNESS 0.10.1
|
factory for generating TwoElectronInterfaces More...
#include <function_factory.h>
Public Member Functions | |
TwoElectronFactory (World &world) | |
TwoElectronFactory & | BSH () |
return the BSH operator | |
TwoElectronFactory & | dcut (double dcut) |
the smallest length scale to be represented (aka lo) | |
TwoElectronFactory & | f12 () |
return the operator (1 - exp(-gamma x) / (2 gamma) | |
TwoElectronFactory & | gamma (double g) |
the exponent of a slater function | |
InterfacePtr | get_functor () const |
return the functor; override this if the functor needs deferred construction | |
TwoElectronFactory & | self () |
TwoElectronFactory & | set_info (const OperatorInfo info1) |
return the BSH operator | |
TwoElectronFactory & | slater () |
return the operator (1 - exp(-gamma x) / (2 gamma) | |
TwoElectronFactory & | thresh (double thresh) |
the requested precision | |
Public Member Functions inherited from madness::FunctionFactory< T, NDIM > | |
FunctionFactory (World &world) | |
virtual | ~FunctionFactory () |
FunctionFactory & | autorefine () |
FunctionFactory & | compressed (bool value=true) |
FunctionFactory & | empty () |
FunctionFactory & | f (T(*f)(const coordT &)) |
FunctionFactory & | fence (bool fence=true) |
template<typename opT > | |
std::enable_if< std::is_base_of< FunctionFunctorInterface< T, NDIM >, opT >::value, FunctionFactory & >::type | functor (const opT &op) |
pass in a functor that is derived from FunctionFunctorInterface | |
template<typename opT > | |
std::enable_if< notstd::is_base_of< FunctionFunctorInterface< T, NDIM >, opT >::value, FunctionFactory & >::type | functor (const opT &op) |
pass in a functor that is not derived from FunctionFunctorInterface | |
FunctionFactory & | functor (const std::shared_ptr< FunctionFunctorInterface< T, NDIM > > &f) |
int | get_k () const |
double | get_thresh () const |
World & | get_world () const |
FunctionFactory & | initial_level (int initial_level) |
virtual FunctionFactory & | is_on_demand () |
virtual FunctionFactory & | k (int k) |
FunctionFactory & | max_refine_level (int max_refine_level) |
FunctionFactory & | no_functor () |
FunctionFactory & | noautorefine () |
FunctionFactory & | nofence () |
FunctionFactory & | norefine (bool norefine=true) |
FunctionFactory & | notruncate_on_project () |
FunctionFactory & | pmap (const std::shared_ptr< WorldDCPmapInterface< Key< NDIM > > > &pmap) |
FunctionFactory & | refine (bool refine=true) |
FunctionFactory & | self () |
implement this in all derived classes for correct chaining | |
FunctionFactory & | special_level (int special_level) |
FunctionFactory & | special_points (std::vector< Vector< double, NDIM > > &special_points) |
FunctionFactory & | truncate_mode (int truncate_mode) |
FunctionFactory & | truncate_on_project () |
Protected Types | |
typedef std::shared_ptr< FunctionFunctorInterface< T, NDIM > > | InterfacePtr |
Protected Attributes | |
BoundaryConditions< NDIM > | bc_ |
OperatorInfo | info |
InterfacePtr | interface_ |
the interface providing the actual coefficients | |
Protected Attributes inherited from madness::FunctionFactory< T, NDIM > | |
bool | _autorefine |
bool | _empty |
bool | _fence |
int | _initial_level = FunctionDefaults<NDIM>::get_initial_level() |
int | _k |
int | _max_refine_level |
std::shared_ptr< WorldDCPmapInterface< Key< NDIM > > > | _pmap |
bool | _refine |
int | _special_level = FunctionDefaults<NDIM>::get_special_level() |
std::vector< Vector< double, NDIM > > | _special_points |
double | _thresh |
TreeState | _tree_state |
int | _truncate_mode |
bool | _truncate_on_project |
World & | _world |
factory for generating TwoElectronInterfaces
|
protected |
|
inline |
|
inline |
return the BSH operator
References madness::TwoElectronFactory< T, NDIM >::info, madness::OT_BSH, madness::TwoElectronFactory< T, NDIM >::self(), and madness::OperatorInfo::type.
|
inline |
the smallest length scale to be represented (aka lo)
References dcut, madness::TwoElectronFactory< T, NDIM >::info, madness::OperatorInfo::lo, and madness::TwoElectronFactory< T, NDIM >::self().
Referenced by madness::MP2::compute_energy(), compute_energy(), test_Kcommutator(), and test_U_el().
|
inline |
return the operator (1 - exp(-gamma x) / (2 gamma)
References madness::TwoElectronFactory< T, NDIM >::info, madness::OT_F12, madness::TwoElectronFactory< T, NDIM >::self(), and madness::OperatorInfo::type.
Referenced by test_Kcommutator(), and test_multiply().
|
inline |
the exponent of a slater function
References madness::g, madness::TwoElectronFactory< T, NDIM >::info, madness::OperatorInfo::mu, and madness::TwoElectronFactory< T, NDIM >::self().
Referenced by test_Kcommutator(), and test_multiply().
|
inlinevirtual |
return the functor; override this if the functor needs deferred construction
Reimplemented from madness::FunctionFactory< T, NDIM >.
References madness::TwoElectronFactory< T, NDIM >::info, and madness::TwoElectronFactory< T, NDIM >::interface_.
|
inline |
Referenced by madness::TwoElectronFactory< T, NDIM >::BSH(), madness::TwoElectronFactory< T, NDIM >::dcut(), madness::TwoElectronFactory< T, NDIM >::f12(), madness::TwoElectronFactory< T, NDIM >::gamma(), madness::TwoElectronFactory< T, NDIM >::set_info(), madness::TwoElectronFactory< T, NDIM >::slater(), and madness::TwoElectronFactory< T, NDIM >::thresh().
|
inline |
return the BSH operator
References madness::TwoElectronFactory< T, NDIM >::info, and madness::TwoElectronFactory< T, NDIM >::self().
|
inline |
return the operator (1 - exp(-gamma x) / (2 gamma)
References madness::TwoElectronFactory< T, NDIM >::info, madness::OT_SLATER, madness::TwoElectronFactory< T, NDIM >::self(), and madness::OperatorInfo::type.
|
inlinevirtual |
the requested precision
Reimplemented from madness::FunctionFactory< T, NDIM >.
References madness::TwoElectronFactory< T, NDIM >::info, madness::TwoElectronFactory< T, NDIM >::self(), thresh, and madness::OperatorInfo::thresh.
Referenced by test_Kcommutator(), and test_multiply().
|
protected |
|
protected |
Referenced by madness::TwoElectronFactory< T, NDIM >::TwoElectronFactory(), madness::TwoElectronFactory< T, NDIM >::BSH(), madness::TwoElectronFactory< T, NDIM >::dcut(), madness::TwoElectronFactory< T, NDIM >::f12(), madness::TwoElectronFactory< T, NDIM >::gamma(), madness::TwoElectronFactory< T, NDIM >::get_functor(), madness::TwoElectronFactory< T, NDIM >::set_info(), madness::TwoElectronFactory< T, NDIM >::slater(), and madness::TwoElectronFactory< T, NDIM >::thresh().
|
protected |
the interface providing the actual coefficients
Referenced by madness::TwoElectronFactory< T, NDIM >::get_functor().