Framework for combining a signed distance function (sdf) with a domain mask to produce MADNESS functions.
More...
|
| | DomainMaskSDFFunctor (std::shared_ptr< DomainMaskInterface > mask, std::shared_ptr< SignedDFInterface< NDIM > > sdf) |
| | Constructor for mask/sdf functor. More...
|
| |
| | DomainMaskSDFFunctor (std::shared_ptr< DomainMaskInterface > mask, std::shared_ptr< SignedDFInterface< NDIM > > sdf, int _mswitch) |
| | Constructor for mask/sdf function specifying the desired function (mask, surface, etc.) More...
|
| |
| double | operator() (const Vector< double, NDIM > &x) const |
| | Uses the functor interface to make a MADNESS function. More...
|
| |
| void | setMaskFunction (int _mswitch) |
| | Toggles which function from DomainMaskInterface to use when making the MADNESS function. More...
|
| |
| virtual | ~DomainMaskSDFFunctor () |
| |
| 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? More...
|
| |
| virtual bool | supports_vectorized () const |
| | Does the interface support a vectorized operator()? More...
|
| |
| 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 std::vector< Vector
< double, NDIM > > | special_points () const |
| | Override this to return list of special points to be refined more deeply. More...
|
| |
| virtual Level | special_level () |
| | Override this change level refinement for special points (default is 6) More...
|
| |
| virtual | ~FunctionFunctorInterface () |
| |
| virtual coeffT | coeff (const keyT &) const |
| |
| virtual coeffT | values (const keyT &key, const Tensor< double > &tensor) const |
| |
| virtual bool | provides_coeff () const |
| | does this functor directly provide sum coefficients? or only function values? More...
|
| |
template<std::size_t NDIM>
class madness::DomainMaskSDFFunctor< NDIM >
Framework for combining a signed distance function (sdf) with a domain mask to produce MADNESS functions.
This interface provides functor functionality to produce MADNESS functions for
- the domain mask (given the sdf)
- the derivative of the domain mask
- the surface (given the sdf)
- the normal derivative of the surface layer
The functor defaults to the domain mask; however, member functions can toggle between the other options.