MADNESS  version 0.9
Public Member Functions | List of all members
madness::SignedDFInterface< NDIM > Class Template Referenceabstract

The interface for a signed distance function (sdf). More...

#include <sdf_domainmask.h>

Public Member Functions

virtual double sdf (const Vector< double, NDIM > &x) const =0
 Returns the signed distance from the surface,. More...
 
virtual Vector< double, NDIMgrad_sdf (const Vector< double, NDIM > &x) const =0
 Returns the gradient of the signed distance from the surface (i.e., dsdf(x)/dx[i] ) More...
 
virtual ~SignedDFInterface ()
 

Detailed Description

template<std::size_t NDIM>
class madness::SignedDFInterface< NDIM >

The interface for a signed distance function (sdf).

A class implementing this interface will need to provide the sdf given a point in coordinate space, and also the gradient of the sdf at this point.

NDIM is the dimensionality of the coordinate space.

Constructor & Destructor Documentation

template<std::size_t NDIM>
virtual madness::SignedDFInterface< NDIM >::~SignedDFInterface ( )
inlinevirtual

Member Function Documentation

template<std::size_t NDIM>
virtual Vector<double,NDIM> madness::SignedDFInterface< NDIM >::grad_sdf ( const Vector< double, NDIM > &  x) const
pure virtual

Returns the gradient of the signed distance from the surface (i.e., dsdf(x)/dx[i] )

Parameters
[in]xThe coordinate
Returns
The gradient
template<std::size_t NDIM>
virtual double madness::SignedDFInterface< NDIM >::sdf ( const Vector< double, NDIM > &  x) const
pure virtual

Returns the signed distance from the surface,.

  • Positive is inside''
  • Negative isoutside''
Parameters
[in]xThe coordinate
Returns
The signed distance

Referenced by TipMolecule::operator()().


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