MADNESS 0.10.1
madness::FunctionInterface< T, NDIM, opT > Class Template Reference

FunctionInterface implements a wrapper around any class with the operator()(). More...

#include <function_interface.h>

Inheritance diagram for madness::FunctionInterface< T, NDIM, opT >:
Collaboration diagram for madness::FunctionInterface< T, NDIM, opT >:

Public Member Functions

 FunctionInterface (const opT &op)
T operator() (const coordT &coord) const
 You should implement this to return f(x).
bool provides_coeff () const
 does this functor directly provide sum coefficients? or only function values?
Public Member Functions inherited from madness::FunctionFunctorInterface< T, NDIM >
 FunctionFunctorInterface ()
virtual ~FunctionFunctorInterface ()
virtual coeffT coeff (const keyT &) const
virtual void operator() (const Vector< double *, 1 > &, T *, int) const
virtual void operator() (const Vector< double *, 2 > &, T *, int) const
virtual void operator() (const Vector< double *, 3 > &, T *, int) const
virtual void operator() (const Vector< double *, 4 > &, T *, int) const
virtual void operator() (const Vector< double *, 5 > &, T *, int) const
virtual void operator() (const Vector< double *, 6 > &, T *, int) const
virtual bool screened (const Vector< double, NDIM > &, const Vector< double, NDIM > &) 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 Level special_level () const
 Override this to change the minimum level of refinement at special points (default is 6).
virtual std::vector< Vector< double, NDIM > > special_points () const
 Override this to return list of special points to be refined more deeply.
virtual bool supports_vectorized () const
 Does the interface support a vectorized operator()?
virtual coeffT values (const keyT &, const Tensor< double > &) const

Private Types

typedef GenTensor< T > coeffT
typedef Vector< double, NDIM > coordT
 Type of vector holding coordinates.

Private Attributes

const opT op

Additional Inherited Members

Public Types inherited from madness::FunctionFunctorInterface< T, NDIM >
typedef GenTensor< T > coeffT
typedef Key< NDIM > keyT
typedef T value_type
Public Attributes inherited from madness::FunctionFunctorInterface< T, NDIM >
Level special_level_

Detailed Description

template<typename T, size_t NDIM, typename opT>
class madness::FunctionInterface< T, NDIM, opT >

FunctionInterface implements a wrapper around any class with the operator()().

Member Typedef Documentation

◆ coeffT

template<typename T, size_t NDIM, typename opT>
typedef GenTensor<T> madness::FunctionInterface< T, NDIM, opT >::coeffT
private

◆ coordT

template<typename T, size_t NDIM, typename opT>
typedef Vector<double, NDIM> madness::FunctionInterface< T, NDIM, opT >::coordT
private

Type of vector holding coordinates.

Constructor & Destructor Documentation

◆ FunctionInterface()

template<typename T, size_t NDIM, typename opT>
madness::FunctionInterface< T, NDIM, opT >::FunctionInterface ( const opT & op)
inline

References op.

Member Function Documentation

◆ operator()()

template<typename T, size_t NDIM, typename opT>
T madness::FunctionInterface< T, NDIM, opT >::operator() ( const coordT & x) const
inlinevirtual

You should implement this to return f(x).

Implements madness::FunctionFunctorInterface< T, NDIM >.

References op.

◆ provides_coeff()

template<typename T, size_t NDIM, typename opT>
bool madness::FunctionInterface< T, NDIM, opT >::provides_coeff ( ) const
inlinevirtual

does this functor directly provide sum coefficients? or only function values?

Reimplemented from madness::FunctionFunctorInterface< T, NDIM >.

Member Data Documentation

◆ op

template<typename T, size_t NDIM, typename opT>
const opT madness::FunctionInterface< T, NDIM, opT >::op
private

Referenced by FunctionInterface(), and operator()().


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