MADNESS 0.10.1
Public Member Functions | Public Attributes | List of all members
madness::ScalingFunctionFunctor< 1 > Struct Reference

#include <mw.h>

Inheritance diagram for madness::ScalingFunctionFunctor< 1 >:
Inheritance graph
[legend]
Collaboration diagram for madness::ScalingFunctionFunctor< 1 >:
Collaboration graph
[legend]

Public Member Functions

 ScalingFunctionFunctor ()=default
 
 ScalingFunctionFunctor (double L, Level n, Translation l, int k)
 
double operator() (const coord_1d &r) const final
 
virtual Level special_level () const final
 Override this to change the minimum level of refinement at special points (default is 6)
 
virtual std::vector< Vector< double, 1 > > special_points () const final
 Override this to return list of special points to be refined more deeply.
 
- Public Member Functions inherited from madness::FunctionFunctorInterface< double, 1 >
 FunctionFunctorInterface ()
 
virtual ~FunctionFunctorInterface ()
 
virtual coeffT coeff (const keyT &) const
 
virtual void operator() (const Vector< double *, 1 > &xvals, double *fvals, int npts) const
 
virtual void operator() (const Vector< double *, 2 > &xvals, double *fvals, int npts) const
 
virtual void operator() (const Vector< double *, 3 > &xvals, double *fvals, int npts) const
 
virtual void operator() (const Vector< double *, 4 > &xvals, double *fvals, int npts) const
 
virtual void operator() (const Vector< double *, 5 > &xvals, double *fvals, int npts) const
 
virtual void operator() (const Vector< double *, 6 > &xvals, double *fvals, int npts) const
 
virtual double 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 Attributes

int k = -1
 
double L = -1
 
Translation l
 
Level n = -1
 
double one_over_sqrttwoL
 
double one_over_twoL
 
double one_over_twon
 
double sqrt_twon
 
Translation twon
 
- Public Attributes inherited from madness::FunctionFunctorInterface< double, 1 >
Level special_level_
 

Additional Inherited Members

- Public Types inherited from madness::FunctionFunctorInterface< double, 1 >
typedef GenTensor< double > coeffT
 
typedef Key< NDIMkeyT
 
typedef double value_type
 

Constructor & Destructor Documentation

◆ ScalingFunctionFunctor() [1/2]

madness::ScalingFunctionFunctor< 1 >::ScalingFunctionFunctor ( )
default

◆ ScalingFunctionFunctor() [2/2]

madness::ScalingFunctionFunctor< 1 >::ScalingFunctionFunctor ( double  L,
Level  n,
Translation  l,
int  k 
)
inline

References k, L, and MADNESS_ASSERT.

Member Function Documentation

◆ operator()()

double madness::ScalingFunctionFunctor< 1 >::operator() ( const coord_1d r) const
inlinefinal

◆ special_level()

virtual Level madness::ScalingFunctionFunctor< 1 >::special_level ( ) const
inlinefinalvirtual

Override this to change the minimum level of refinement at special points (default is 6)

Reimplemented from madness::FunctionFunctorInterface< double, 1 >.

◆ special_points()

virtual std::vector< Vector< double, 1 > > madness::ScalingFunctionFunctor< 1 >::special_points ( ) const
inlinefinalvirtual

Override this to return list of special points to be refined more deeply.

Reimplemented from madness::FunctionFunctorInterface< double, 1 >.

References L.

Member Data Documentation

◆ k

◆ L

double madness::ScalingFunctionFunctor< 1 >::L = -1

◆ l

◆ n

◆ one_over_sqrttwoL

double madness::ScalingFunctionFunctor< 1 >::one_over_sqrttwoL

◆ one_over_twoL

double madness::ScalingFunctionFunctor< 1 >::one_over_twoL

◆ one_over_twon

double madness::ScalingFunctionFunctor< 1 >::one_over_twon

◆ sqrt_twon

double madness::ScalingFunctionFunctor< 1 >::sqrt_twon

◆ twon


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