Chombo + EB  3.2
Public Member Functions | Protected Attributes | Private Member Functions | List of all members
ComplementIF Class Reference

#include <ComplementIF.H>

Inheritance diagram for ComplementIF:
Inheritance graph
[legend]

Public Member Functions

 ComplementIF (const BaseIF &a_impFunc, const bool &a_complement=true)
 
 ComplementIF (const ComplementIF &a_inputIF, const bool &a_complement=true)
 Copy constructor with complement boolean (default = true) More...
 
virtual ~ComplementIF ()
 Destructor. More...
 
virtual void GetParams (bool &a_complement) const
 
virtual void SetParams (const bool &a_complement)
 
virtual Real value (const RealVect &a_point) const
 
virtual Real value (const IndexTM< Real, GLOBALDIM > &a_point) const
 
virtual Real value (const IndexTM< int, GLOBALDIM > &a_partialDerivative, const IndexTM< Real, GLOBALDIM > &a_point) const
 
virtual BaseIFnewImplicitFunction () 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
 
virtual void boxLayoutChanged (const DisjointBoxLayout &a_newBoxLayout, const RealVect &a_dx)
 
- Public Member Functions inherited from BaseIF
 BaseIF ()
 Default constructor. More...
 
virtual ~BaseIF ()
 Default destructor. More...
 
virtual IndMomSpaceDim getExactVolumeMoments (const VolIndex &a_vof, const Real &a_dx) const
 return int x^p dV for the vof More...
 
virtual IndMomSpaceDim getExactEBMoments (const VolIndex &a_vof, const Real &a_dx) const
 return int_eb x^p dA for the eb More...
 
virtual IndMomSpaceDim getExactEBNormalMoments (const VolIndex &a_vof, const Real &a_dx, const int &a_ni) const
 return int_eb x^p n_i dA for the eb More...
 
virtual IndMomSpaceDim getExactEBNormalPartialDerivs (const VolIndex &a_vof, const Real &a_dx, const int &a_ni) const
 
virtual IndMomSDMinOne getExactFaceMoments (const FaceIndex &a_face, const Real &a_dx) const
 return int x^p dA for the face More...
 
virtual Real derivative (const IntVect &a_deriv, const RealVect &a_point) const
 return the partial derivative at the point More...
 
virtual Real value (const IntVect &a_deriv, const RealVect &a_point) const
 
virtual bool fastIntersection (const Box &a_region, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx) const
 
virtual GeometryService::InOut InsideOutside (const Box &a_region, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx) const
 
virtual Real derivative (const IndexTM< int, GLOBALDIM > &a_deriv, const IndexTM< Real, GLOBALDIM > &a_point) const
 
virtual void print (ostream &out) const
 
virtual void makeGrids (const ProblemDomain &a_domain, DisjointBoxLayout &a_grids, const int &a_maxGridSize, const int &a_maxIrregGridSize)
 

Protected Attributes

bool m_complement
 
BaseIFm_impFunc
 

Private Member Functions

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

Additional Inherited Members

- Static Public Member Functions inherited from BaseIF
static void corners (const Box &a_region, const RealVect &a_origin, const Real &a_dx, RealVect &a_lo, RealVect &a_hi)
 

Detailed Description

This implicit function is the negative of the implicit function with which it is constructed. This results in an implicit function whose interior is the complement of the interior of the given implicit function (minus the the surface).

Constructor & Destructor Documentation

◆ ComplementIF() [1/3]

ComplementIF::ComplementIF ( const BaseIF a_impFunc,
const bool &  a_complement = true 
)

Constructor specifying the implicit function and whether to complement (default = true)

◆ ComplementIF() [2/3]

ComplementIF::ComplementIF ( const ComplementIF a_inputIF,
const bool &  a_complement = true 
)

Copy constructor with complement boolean (default = true)

◆ ~ComplementIF()

virtual ComplementIF::~ComplementIF ( )
virtual

Destructor.

◆ ComplementIF() [3/3]

ComplementIF::ComplementIF ( )
inlineprivate

References MayDay::Abort().

Member Function Documentation

◆ GetParams()

virtual void ComplementIF::GetParams ( bool &  a_complement) const
virtual

Return the parameter information

◆ SetParams()

virtual void ComplementIF::SetParams ( const bool &  a_complement)
virtual

Set the parameter information

◆ value() [1/3]

virtual Real ComplementIF::value ( const RealVect a_point) const
virtual

Return the value of the function at a_point.

Implements BaseIF.

◆ value() [2/3]

virtual Real ComplementIF::value ( const IndexTM< Real, GLOBALDIM > &  a_point) const
virtual

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

Reimplemented from BaseIF.

◆ value() [3/3]

virtual Real ComplementIF::value ( const IndexTM< int, GLOBALDIM > &  a_partialDerivative,
const IndexTM< Real, GLOBALDIM > &  a_point 
) const
virtual

Return the derivative of the function at a_point (of type IndexTM).

Reimplemented from BaseIF.

◆ newImplicitFunction()

virtual BaseIF* ComplementIF::newImplicitFunction ( ) const
virtual

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

Implements BaseIF.

◆ fastIntersection()

virtual bool ComplementIF::fastIntersection ( const RealVect a_low,
const RealVect a_high 
) const
inlinevirtual

Reimplemented from BaseIF.

References BaseIF::fastIntersection(), InsideOutside(), and m_impFunc.

◆ InsideOutside()

virtual GeometryService::InOut ComplementIF::InsideOutside ( const RealVect a_low,
const RealVect a_high 
) const
virtual

Reimplemented from BaseIF.

Referenced by fastIntersection().

◆ boxLayoutChanged()

virtual void ComplementIF::boxLayoutChanged ( const DisjointBoxLayout a_newBoxLayout,
const RealVect a_dx 
)
inlinevirtual

Pass this call onto the IFs contained in this IF class.

Reimplemented from BaseIF.

References BaseIF::boxLayoutChanged(), and m_impFunc.

◆ operator=()

void ComplementIF::operator= ( const ComplementIF a_inputIF)
inlineprivate

References MayDay::Abort().

Member Data Documentation

◆ m_complement

bool ComplementIF::m_complement
protected

◆ m_impFunc

BaseIF* ComplementIF::m_impFunc
protected

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