Chombo + EB  3.0
Public Member Functions | Protected Attributes | List of all members
RefinementCriterion< dim > Class Template Reference

#include <RefinementCriterion.H>

Inheritance diagram for RefinementCriterion< dim >:
Inheritance graph
[legend]

Public Member Functions

 RefinementCriterion ()
 
 RefinementCriterion (const int &a_baseMaxNumberOfRefinements)
 
 RefinementCriterion (const RefinementCriterion< dim > &a_RefinementCriterion)
 
 ~RefinementCriterion ()
 
virtual bool baseDoRefine (IndexTM< int, dim > &a_refineInDir, const CutCellMoments< dim > &a_ccm, const int &a_numberOfRefinements)
 Should a cell be subdivided and in which directions. More...
 
virtual bool doRefine (IndexTM< int, dim > &a_refineInDir, const CutCellMoments< dim > &a_ccm, const int &a_numberOfRefinements)
 
void setConstrantSuccessStatus (const bool &a_status)
 
bool getConstrantSuccessStatus ()
 
void setBaseMaxNumberOfRefinements (const int &a_baseMaxNumberOfRefinements)
 
int getBaseMaxNumberOfRefinements ()
 
void print (ostream &a_out) const
 
void operator= (const RefinementCriterion &a_RefinementCriterion)
 

Protected Attributes

bool m_constraintsSucceeded
 
int m_baseMaxNumberOfRefinements
 

Detailed Description

template<int dim>
class RefinementCriterion< dim >

This is the base class for refinement criterion used for the subdivision of cells in geometry generation. If the result if "doRefine()" is true, the cell is subdivided in the directions in which "a_refineInDir" is non-zero. The results of this subdivision are then combined to get results for the original cell.

Constructor & Destructor Documentation

◆ RefinementCriterion() [1/3]

template<int dim>
RefinementCriterion< dim >::RefinementCriterion ( )
inline

◆ RefinementCriterion() [2/3]

template<int dim>
RefinementCriterion< dim >::RefinementCriterion ( const int &  a_baseMaxNumberOfRefinements)
inline

◆ RefinementCriterion() [3/3]

template<int dim>
RefinementCriterion< dim >::RefinementCriterion ( const RefinementCriterion< dim > &  a_RefinementCriterion)
inline

◆ ~RefinementCriterion()

template<int dim>
RefinementCriterion< dim >::~RefinementCriterion ( )
inline

Member Function Documentation

◆ baseDoRefine()

template<int dim>
virtual bool RefinementCriterion< dim >::baseDoRefine ( IndexTM< int, dim > &  a_refineInDir,
const CutCellMoments< dim > &  a_ccm,
const int &  a_numberOfRefinements 
)
inlinevirtual

Should a cell be subdivided and in which directions.

This method returns true if the current cell should be subdivided. The subdivsion should occur in all the directions where "a_refineInDir" is non-zero.

References RefinementCriterion< dim >::doRefine(), CutCellMoments< dim >::m_badNormal, RefinementCriterion< dim >::m_baseMaxNumberOfRefinements, and RefinementCriterion< dim >::m_constraintsSucceeded.

Referenced by ComputeCutCellMoments< dim >::computeMoments().

◆ doRefine()

template<int dim>
virtual bool RefinementCriterion< dim >::doRefine ( IndexTM< int, dim > &  a_refineInDir,
const CutCellMoments< dim > &  a_ccm,
const int &  a_numberOfRefinements 
)
inlinevirtual

◆ setConstrantSuccessStatus()

template<int dim>
void RefinementCriterion< dim >::setConstrantSuccessStatus ( const bool &  a_status)
inline

◆ getConstrantSuccessStatus()

template<int dim>
bool RefinementCriterion< dim >::getConstrantSuccessStatus ( )
inline

◆ setBaseMaxNumberOfRefinements()

template<int dim>
void RefinementCriterion< dim >::setBaseMaxNumberOfRefinements ( const int &  a_baseMaxNumberOfRefinements)
inline

◆ getBaseMaxNumberOfRefinements()

template<int dim>
int RefinementCriterion< dim >::getBaseMaxNumberOfRefinements ( )
inline

◆ print()

template<int dim>
void RefinementCriterion< dim >::print ( ostream &  a_out) const
inline

◆ operator=()

template<int dim>
void RefinementCriterion< dim >::operator= ( const RefinementCriterion< dim > &  a_RefinementCriterion)
inline

Member Data Documentation

◆ m_constraintsSucceeded

template<int dim>
bool RefinementCriterion< dim >::m_constraintsSucceeded
protected

◆ m_baseMaxNumberOfRefinements

template<int dim>
int RefinementCriterion< dim >::m_baseMaxNumberOfRefinements
protected

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