MADNESS 0.10.1
|
#include <electronicstructureapp.h>
Public Member Functions | |
AtomicBasisFunctor (const AtomicBasisFunction &aofunc) | |
AtomicBasisFunctor (const AtomicBasisFunction &aofunc, double kx, double ky, double kz) | |
AtomicBasisFunctor (const AtomicBasisFunction &aofunc, double R, bool periodic, const KPoint kpt) | |
Q | operator() (const coord_3d &x) const |
double_complex | operator() (const coord_3d &x) const |
std::complex< double > | operator() (const coordT &x) const |
Level | special_level () |
Override this change level refinement for special points (default is 6) | |
std::vector< coord_3d > | special_points () const |
Override this to return list of special points to be refined more deeply. | |
std::vector< coord_3d > | special_points () const |
Override this to return list of special points to be refined more deeply. | |
virtual std::vector< coordT > | special_points () const |
Override this to return list of special points to be refined more deeply. | |
Public Member Functions inherited from madness::FunctionFunctorInterface< Q, 3 > | |
FunctionFunctorInterface () | |
virtual | ~FunctionFunctorInterface () |
virtual coeffT | coeff (const keyT &) const |
virtual void | operator() (const Vector< double *, 1 > &xvals, Q *fvals, int npts) const |
virtual void | operator() (const Vector< double *, 2 > &xvals, Q *fvals, int npts) const |
virtual void | operator() (const Vector< double *, 3 > &xvals, Q *fvals, int npts) const |
virtual void | operator() (const Vector< double *, 4 > &xvals, Q *fvals, int npts) const |
virtual void | operator() (const Vector< double *, 5 > &xvals, Q *fvals, int npts) const |
virtual void | operator() (const Vector< double *, 6 > &xvals, Q *fvals, int npts) const |
virtual Q | operator() (const Vector< double, NDIM > &x) const=0 |
You should implement this to return f(x) | |
virtual bool | provides_coeff () const |
does this functor directly provide sum coefficients? or only function values? | |
virtual bool | screened (const Vector< double, NDIM > &c1, const Vector< double, NDIM > &c2) const |
Can we screen this function based on the bounding box information? | |
void | set_length_scale (double lo) |
adapt the special level to resolve the smallest length scale | |
virtual bool | supports_vectorized () const |
Does the interface support a vectorized operator()? | |
virtual coeffT | values (const keyT &key, const Tensor< double > &tensor) const |
Public Member Functions inherited from madness::FunctionFunctorInterface< double_complex, 3 > | |
FunctionFunctorInterface () | |
virtual | ~FunctionFunctorInterface () |
virtual coeffT | coeff (const keyT &) const |
virtual void | operator() (const Vector< double *, 1 > &xvals, double_complex *fvals, int npts) const |
virtual void | operator() (const Vector< double *, 2 > &xvals, double_complex *fvals, int npts) const |
virtual void | operator() (const Vector< double *, 3 > &xvals, double_complex *fvals, int npts) const |
virtual void | operator() (const Vector< double *, 4 > &xvals, double_complex *fvals, int npts) const |
virtual void | operator() (const Vector< double *, 5 > &xvals, double_complex *fvals, int npts) const |
virtual void | operator() (const Vector< double *, 6 > &xvals, double_complex *fvals, int npts) const |
virtual double_complex | operator() (const Vector< double, NDIM > &x) const=0 |
You should implement this to return f(x) | |
virtual bool | provides_coeff () const |
does this functor directly provide sum coefficients? or only function values? | |
virtual bool | screened (const Vector< double, NDIM > &c1, const Vector< double, NDIM > &c2) const |
Can we screen this function based on the bounding box information? | |
void | set_length_scale (double lo) |
adapt the special level to resolve the smallest length scale | |
virtual bool | supports_vectorized () const |
Does the interface support a vectorized operator()? | |
virtual coeffT | values (const keyT &key, const Tensor< double > &tensor) const |
Private Attributes | |
std::vector< coordT > | _specialpts |
const AtomicBasisFunction | aofunc |
const KPoint | kpt |
double | kx |
double | ky |
double | kz |
const bool | periodic |
const double | R |
coordT | r |
const double | rangesq |
std::vector< coord_3d > | specialpt |
Vector< std::complex< double >, 2 *NTRANS+1 > | tx |
Vector< std::complex< double >, 2 *NTRANS+1 > | ty |
Vector< std::complex< double >, 2 *NTRANS+1 > | tz |
Additional Inherited Members | |
Public Types inherited from madness::FunctionFunctorInterface< Q, 3 > | |
typedef GenTensor< Q > | coeffT |
typedef Key< NDIM > | keyT |
typedef Q | value_type |
Public Types inherited from madness::FunctionFunctorInterface< double_complex, 3 > | |
typedef GenTensor< double_complex > | coeffT |
typedef Key< NDIM > | keyT |
typedef double_complex | value_type |
Public Attributes inherited from madness::FunctionFunctorInterface< Q, 3 > | |
Level | special_level_ |
Public Attributes inherited from madness::FunctionFunctorInterface< double_complex, 3 > | |
Level | special_level_ |
|
inline |
|
inline |
|
inline |
References AtomicBasisFunctor< Q >::_specialpts, AtomicBasisFunctor< Q >::aofunc, AtomicBasisFunction::get_coords(), KPoint::k, AtomicBasisFunctor< Q >::kpt, NTRANS, AtomicBasisFunctor< Q >::R, AtomicBasisFunctor< Q >::r, AtomicBasisFunctor< Q >::tx, AtomicBasisFunctor< Q >::ty, and AtomicBasisFunctor< Q >::tz.
|
inline |
References AtomicBasisFunctor< Q >::aofunc.
|
inline |
|
inline |
References AtomicBasisFunctor< Q >::aofunc, e(), KPoint::k, AtomicBasisFunctor< Q >::kpt, NTRANS, AtomicBasisFunctor< Q >::periodic, AtomicBasisFunctor< Q >::R, AtomicBasisFunctor< Q >::r, AtomicBasisFunctor< Q >::rangesq, AtomicBasisFunctor< Q >::tx, AtomicBasisFunctor< Q >::ty, and AtomicBasisFunctor< Q >::tz.
|
inlinevirtual |
Override this change level refinement for special points (default is 6)
Reimplemented from madness::FunctionFunctorInterface< Q, 3 >.
|
inlinevirtual |
Override this to return list of special points to be refined more deeply.
Reimplemented from madness::FunctionFunctorInterface< Q, 3 >.
References AtomicBasisFunctor< Q >::aofunc, and madness::AtomicBasisFunction::get_coords_vec().
|
inlinevirtual |
Override this to return list of special points to be refined more deeply.
Reimplemented from madness::FunctionFunctorInterface< Q, 3 >.
References AtomicBasisFunctor< Q >::specialpt.
|
inlinevirtual |
Override this to return list of special points to be refined more deeply.
Reimplemented from madness::FunctionFunctorInterface< Q, 3 >.
References AtomicBasisFunctor< Q >::_specialpts.
|
private |
|
private |
|
private |
Referenced by AtomicBasisFunctor< Q >::AtomicBasisFunctor(), and AtomicBasisFunctor< Q >::operator()().
|
private |
Referenced by AtomicBasisFunctor< Q >::operator()().
|
private |
Referenced by AtomicBasisFunctor< Q >::operator()().
|
private |
Referenced by AtomicBasisFunctor< Q >::operator()().
|
private |
Referenced by AtomicBasisFunctor< Q >::operator()().
|
private |
Referenced by AtomicBasisFunctor< Q >::AtomicBasisFunctor(), and AtomicBasisFunctor< Q >::operator()().
|
private |
|
private |
Referenced by AtomicBasisFunctor< Q >::operator()().
|
private |
|
private |
Referenced by AtomicBasisFunctor< Q >::AtomicBasisFunctor(), and AtomicBasisFunctor< Q >::operator()().
|
private |
Referenced by AtomicBasisFunctor< Q >::AtomicBasisFunctor(), and AtomicBasisFunctor< Q >::operator()().
|
private |
Referenced by AtomicBasisFunctor< Q >::AtomicBasisFunctor(), and AtomicBasisFunctor< Q >::operator()().