IntersectionIF Class Reference

#include <IntersectionIF.H>

Inheritance diagram for IntersectionIF:

Inheritance graph
[legend]
Collaboration diagram for IntersectionIF:

Collaboration graph
[legend]

List of all members.


Detailed Description

This implicit function is the maximum of two (of more) implicit functions with which it is constructed. This results in an implicit function whose interior is the intersection of the interiors of the given implicit functions.

Public Member Functions

 IntersectionIF (const BaseIF &a_impFunc1, const BaseIF &a_impFunc2)
 IntersectionIF (const Vector< BaseIF * > &a_impFuncs)
 IntersectionIF (const IntersectionIF &a_inputIF)
 Copy constructor.
virtual ~IntersectionIF ()
 Destructor.
virtual Real value (const RealVect &a_point) const
virtual Real value (const IndexTM< Real, GLOBALDIM > &a_point) const
virtual IndexTM< Real, GLOBALDIM > normal (const IndexTM< Real, GLOBALDIM > &a_point) const
virtual Vector< IndexTM< Real,
GLOBALDIM > > 
gradNormal (const IndexTM< Real, GLOBALDIM > &a_point) const
virtual BaseIF * newImplicitFunction () const
void findClosest (const IndexTM< Real, GLOBALDIM > &a_point, int &closestIF) const
virtual bool fastIntersection (const RealVect &a_low, const RealVect &a_high) const
virtual GeometryService::InOut InsideOutside (const RealVect &a_low, const RealVect &a_high) const

Protected Attributes

int m_numFuncs
Vector< BaseIF * > m_impFuncs

Private Member Functions

 IntersectionIF ()
void operator= (const IntersectionIF &a_inputIF)

Constructor & Destructor Documentation

IntersectionIF::IntersectionIF ( const BaseIF &  a_impFunc1,
const BaseIF &  a_impFunc2 
)

Constructor specifying two implicit functions as inputs.

IntersectionIF::IntersectionIF ( const Vector< BaseIF * > &  a_impFuncs  ) 

Constructor specifying any number of implicit functions as inputs.

IntersectionIF::IntersectionIF ( const IntersectionIF &  a_inputIF  ) 

Copy constructor.

virtual IntersectionIF::~IntersectionIF (  )  [virtual]

Destructor.

IntersectionIF::IntersectionIF (  )  [inline, private]

References MayDay::Error().


Member Function Documentation

virtual Real IntersectionIF::value ( const RealVect &  a_point  )  const [virtual]

Return the value of the function at a_point.

Implements BaseIF.

virtual Real IntersectionIF::value ( const IndexTM< Real, GLOBALDIM > &  a_point  )  const [virtual]

Return the value of the function at a_point (of type INdexTM).

Reimplemented from BaseIF.

virtual IndexTM<Real,GLOBALDIM> IntersectionIF::normal ( const IndexTM< Real, GLOBALDIM > &  a_point  )  const [virtual]

Return the normalized gradient of the function at a_point. The gradients and normals are based on value, which yields outward-pointing normals (which is different the computational computation elsewhere in Chombo).

Reimplemented from BaseIF.

virtual Vector< IndexTM<Real,GLOBALDIM> > IntersectionIF::gradNormal ( const IndexTM< Real, GLOBALDIM > &  a_point  )  const [virtual]

Return the gradient of the normal at a_point.

Reimplemented from BaseIF.

virtual BaseIF* IntersectionIF::newImplicitFunction (  )  const [virtual]

Return a newly allocated derived class. The responsibility for deleting the memory is left to the calling function.

Implements BaseIF.

void IntersectionIF::findClosest ( const IndexTM< Real, GLOBALDIM > &  a_point,
int &  closestIF 
) const

virtual bool IntersectionIF::fastIntersection ( const RealVect &  a_low,
const RealVect &  a_high 
) const [virtual]

Reimplemented from BaseIF.

virtual GeometryService::InOut IntersectionIF::InsideOutside ( const RealVect &  a_low,
const RealVect &  a_high 
) const [virtual]

Reimplemented from BaseIF.

void IntersectionIF::operator= ( const IntersectionIF &  a_inputIF  )  [inline, private]

References MayDay::Error().


Member Data Documentation

int IntersectionIF::m_numFuncs [protected]


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

Generated on Tue Apr 14 14:23:38 2009 for Chombo + EB by  doxygen 1.5.5