MADNESS  version 0.9
Classes | Namespaces

Implements the SignedDFInterface for common 3-D geometric objects.This file provides signed distance functions for common 3-D geometric objects: More...

#include <madness/mra/sdf_domainmask.h>
Include dependency graph for sdf_shape_3D.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  madness::SDFPlane
 A plane surface (3 dimensions) More...
 
class  madness::SDFSphere
 A spherical surface (3 dimensions) More...
 
class  madness::SDFCone
 A cone (3 dimensions) More...
 
class  madness::SDFParaboloid
 A paraboloid (3 dimensions) More...
 
class  madness::SDFBox
 A box (3 dimensions) More...
 
class  madness::SDFCube
 A cube (3 dimensions) More...
 
class  madness::SDFEllipsoid
 An ellipsoid (3 dimensions) More...
 
class  madness::SDFCylinder
 A cylinder (3 dimensions) More...
 

Namespaces

 madness
 Holds machinery to set up Functions/FuncImpls using various Factories and Interfaces.
 

Detailed Description

Implements the SignedDFInterface for common 3-D geometric objects.

This file provides signed distance functions for common 3-D geometric objects:

Note
The signed distance functions should be the shortest distance between a point and any point on the surface. This is hard to calculate in many cases, so we use contours here. The surface layer may not be equally thick around all points on the surface. Some surfaces (plane, sphere, paraboloid) use the exact signed distance functions. All others use the contours, which may be extremely problematic and cause excessive refinement. The sdf function of the sphere class outlines how to calculate the exact signed distance functions, if needed.