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

#include <MollifyIF.H>

Inheritance diagram for MollifyIF:
Inheritance graph
[legend]

Public Member Functions

 MollifyIF (const BaseIF &a_impFunc, const BaseIF &a_mollifier, const Real &a_min, const Real &a_max, const int &a_numPts)
 
 MollifyIF (const MollifyIF &a_inputIF)
 Copy constructor. More...
 
virtual ~MollifyIF ()
 Destructor. More...
 
virtual Real value (const RealVect &a_point) const
 
virtual Real value (const IndexTM< Real, GLOBALDIM > &a_point) const
 
virtual BaseIFnewImplicitFunction () 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 Real value (const IndexTM< int, GLOBALDIM > &a_partialDerivative, const IndexTM< Real, GLOBALDIM > &a_point) const
 
virtual bool fastIntersection (const Box &a_region, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx) const
 
virtual bool fastIntersection (const RealVect &a_low, const RealVect &a_high) const
 
virtual GeometryService::InOut InsideOutside (const Box &a_region, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx) const
 
virtual GeometryService::InOut InsideOutside (const RealVect &a_low, const RealVect &a_high) const
 
virtual void print (ostream &out) const
 

Protected Attributes

BaseIFm_impFunc
 
BaseIFm_mollifier
 
Real m_min
 
Real m_max
 
int m_numPts
 
Real m_dx
 
Box m_sampleBox
 
Real m_mollifierSum
 
FArrayBox m_sampledMollifier
 

Private Member Functions

 MollifyIF ()
 
void operator= (const MollifyIF &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 mollifies on implicit function using another implicit function (e.g., "GaussianSphereIF"). Basically, the IF being mollified is sampled in a small (specified) neighborhood of a point and convolved with the mollifying function in this neighborhood.

Constructor & Destructor Documentation

◆ MollifyIF() [1/3]

MollifyIF::MollifyIF ( const BaseIF a_impFunc,
const BaseIF a_mollifier,
const Real a_min,
const Real a_max,
const int &  a_numPts 
)

Constructor specifying the implicit function to mollify (a_impFunc), the mollifier (a_mollifier), a neighorhood to use (a_min, a_max) is each dimension, and a sampling (a_numPts).

◆ MollifyIF() [2/3]

MollifyIF::MollifyIF ( const MollifyIF a_inputIF)

Copy constructor.

◆ ~MollifyIF()

virtual MollifyIF::~MollifyIF ( )
virtual

Destructor.

◆ MollifyIF() [3/3]

MollifyIF::MollifyIF ( )
inlineprivate

References MayDay::Abort().

Member Function Documentation

◆ value() [1/2]

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

Return the value of the function at a_point.

Implements BaseIF.

◆ value() [2/2]

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

Return the value of the function at a_point.

Reimplemented from BaseIF.

◆ newImplicitFunction()

virtual BaseIF* MollifyIF::newImplicitFunction ( ) const
virtual

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

Implements BaseIF.

◆ boxLayoutChanged()

virtual void MollifyIF::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(), m_impFunc, and m_mollifier.

◆ operator=()

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

References MayDay::Abort().

Member Data Documentation

◆ m_impFunc

BaseIF* MollifyIF::m_impFunc
protected

Referenced by boxLayoutChanged().

◆ m_mollifier

BaseIF* MollifyIF::m_mollifier
protected

Referenced by boxLayoutChanged().

◆ m_min

Real MollifyIF::m_min
protected

◆ m_max

Real MollifyIF::m_max
protected

◆ m_numPts

int MollifyIF::m_numPts
protected

◆ m_dx

Real MollifyIF::m_dx
protected

◆ m_sampleBox

Box MollifyIF::m_sampleBox
protected

◆ m_mollifierSum

Real MollifyIF::m_mollifierSum
mutableprotected

◆ m_sampledMollifier

FArrayBox MollifyIF::m_sampledMollifier
mutableprotected

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