#include <GeometryShop.H>
Public Member Functions | |
GeometryShop (const BaseIF &a_localGeom, int a_verbosity, RealVect a_vectDx) | |
~GeometryShop () | |
bool | twoEdgeIntersections (edgeMo a_edges[4]) const |
bool | isRegular (const Box &a_region, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx) const |
bool | isCovered (const Box &a_region, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx) const |
virtual bool | isIrregular (const Box &a_region, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx) const |
virtual InOut | InsideOutside (const Box &a_region, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx) const |
virtual bool | canGenerateMultiCells () const |
virtual void | fillGraph (BaseFab< int > &a_regIrregCovered, Vector< IrregNode > &a_nodes, const Box &a_validRegion, const Box &a_ghostRegion, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx) const |
void | computeVoFInternals (Real &a_volFrac, Vector< int > a_loArc[SpaceDim], Vector< int > a_hiArc[SpaceDim], Vector< Real > a_loAreaFrac[SpaceDim], Vector< Real > a_hiAreaFrac[SpaceDim], Real &a_bndryArea, RealVect &a_normal, RealVect &a_volCentroid, RealVect &a_bndryCentroid, Vector< RealVect > a_loFaceCentroid[SpaceDim], Vector< RealVect > a_hiFaceCentroid[SpaceDim], const IntVectSet &a_ivsIrreg, const VolIndex &a_vof, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx, const RealVect &a_vectDx, const IntVect &a_iv) const |
Public Attributes | |
int | m_phase |
Private Member Functions | |
bool | isRegularEveryPoint (const Box &a_region, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx) const |
bool | isCoveredEveryPoint (const Box &a_region, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx) const |
virtual bool | isIrregularEveryPoint (const Box &a_region, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx, const Real &a_originVal) const |
void | edgeData3D (edgeMo a_edges[4], bool &a_faceCovered, bool &a_faceRegular, bool &a_faceDontKnow, const int a_hiLoFace, const int a_faceNormal, const Real &a_dx, const RealVect &a_vectDx, const IntVect &a_coord, const ProblemDomain &a_domain, const RealVect &a_origin) const |
void | edgeData2D (edgeMo a_edges[4], bool &a_faceCovered, bool &a_faceRegular, bool &a_faceDontKnow, const Real &a_dx, const RealVect &a_vectDx, const IntVect &a_coord, const ProblemDomain &a_domain, const RealVect &a_origin) const |
void | edgeType (bool &a_regular, bool &a_covered, bool &a_dontKnow, Real &a_signHi, Real &a_signLo) const |
Real | BrentRootFinder (const RealVect &a_x1, const RealVect &a_x2, const int &a_range) const |
Real | PrismoidalAreaCalc (RealVect &a_xVec, RealVect &a_yVec) const |
int | getNumCellsClipped () |
Real | Min (const Real x, const Real y) const |
GeometryShop () | |
GeometryShop (const GeometryShop &a_workshopin) | |
void | operator= (const GeometryShop &a_workshopin) |
Private Attributes | |
int | m_numCellsClipped |
int | m_verbosity |
Real | m_threshold |
RealVect | m_vectDx |
const BaseIF * | m_implicitFunction |
Static Private Attributes | |
static bool | s_verbose |
Define the workshop using the local geometry description
GeometryShop::~GeometryShop | ( | ) |
GeometryShop::GeometryShop | ( | ) | [inline, private] |
References MayDay::Error().
GeometryShop::GeometryShop | ( | const GeometryShop & | a_workshopin | ) | [inline, private] |
References MayDay::Error().
bool GeometryShop::twoEdgeIntersections | ( | edgeMo | a_edges[4] | ) | const |
bool GeometryShop::isRegular | ( | const Box & | a_region, | |
const ProblemDomain & | a_domain, | |||
const RealVect & | a_origin, | |||
const Real & | a_dx | |||
) | const [virtual] |
Return true if every cell in region is regular at the refinement described by dx.
Implements GeometryService.
bool GeometryShop::isCovered | ( | const Box & | a_region, | |
const ProblemDomain & | a_domain, | |||
const RealVect & | a_origin, | |||
const Real & | a_dx | |||
) | const [virtual] |
Return true if every cell in region is covered at the refinement described by dx.
Implements GeometryService.
virtual bool GeometryShop::isIrregular | ( | const Box & | a_region, | |
const ProblemDomain & | a_domain, | |||
const RealVect & | a_origin, | |||
const Real & | a_dx | |||
) | const [virtual] |
Reimplemented from GeometryService.
virtual InOut GeometryShop::InsideOutside | ( | const Box & | a_region, | |
const ProblemDomain & | a_domain, | |||
const RealVect & | a_origin, | |||
const Real & | a_dx | |||
) | const [virtual] |
Reimplemented from GeometryService.
virtual bool GeometryShop::canGenerateMultiCells | ( | ) | const [inline, virtual] |
Reimplemented from GeometryService.
virtual void GeometryShop::fillGraph | ( | BaseFab< int > & | a_regIrregCovered, | |
Vector< IrregNode > & | a_nodes, | |||
const Box & | a_validRegion, | |||
const Box & | a_ghostRegion, | |||
const ProblemDomain & | a_domain, | |||
const RealVect & | a_origin, | |||
const Real & | a_dx | |||
) | const [virtual] |
Define the internals of the input ebisRegion.
Implements GeometryService.
void GeometryShop::computeVoFInternals | ( | Real & | a_volFrac, | |
Vector< int > | a_loArc[SpaceDim], | |||
Vector< int > | a_hiArc[SpaceDim], | |||
Vector< Real > | a_loAreaFrac[SpaceDim], | |||
Vector< Real > | a_hiAreaFrac[SpaceDim], | |||
Real & | a_bndryArea, | |||
RealVect & | a_normal, | |||
RealVect & | a_volCentroid, | |||
RealVect & | a_bndryCentroid, | |||
Vector< RealVect > | a_loFaceCentroid[SpaceDim], | |||
Vector< RealVect > | a_hiFaceCentroid[SpaceDim], | |||
const IntVectSet & | a_ivsIrreg, | |||
const VolIndex & | a_vof, | |||
const ProblemDomain & | a_domain, | |||
const RealVect & | a_origin, | |||
const Real & | a_dx, | |||
const RealVect & | a_vectDx, | |||
const IntVect & | a_iv | |||
) | const |
bool GeometryShop::isRegularEveryPoint | ( | const Box & | a_region, | |
const ProblemDomain & | a_domain, | |||
const RealVect & | a_origin, | |||
const Real & | a_dx | |||
) | const [private] |
Return true if every cell in region is regular at the refinement described by dx.
bool GeometryShop::isCoveredEveryPoint | ( | const Box & | a_region, | |
const ProblemDomain & | a_domain, | |||
const RealVect & | a_origin, | |||
const Real & | a_dx | |||
) | const [private] |
Return true if every cell in region is covered at the refinement described by dx.
virtual bool GeometryShop::isIrregularEveryPoint | ( | const Box & | a_region, | |
const ProblemDomain & | a_domain, | |||
const RealVect & | a_origin, | |||
const Real & | a_dx, | |||
const Real & | a_originVal | |||
) | const [private, virtual] |
void GeometryShop::edgeData3D | ( | edgeMo | a_edges[4], | |
bool & | a_faceCovered, | |||
bool & | a_faceRegular, | |||
bool & | a_faceDontKnow, | |||
const int | a_hiLoFace, | |||
const int | a_faceNormal, | |||
const Real & | a_dx, | |||
const RealVect & | a_vectDx, | |||
const IntVect & | a_coord, | |||
const ProblemDomain & | a_domain, | |||
const RealVect & | a_origin | |||
) | const [private] |
void GeometryShop::edgeData2D | ( | edgeMo | a_edges[4], | |
bool & | a_faceCovered, | |||
bool & | a_faceRegular, | |||
bool & | a_faceDontKnow, | |||
const Real & | a_dx, | |||
const RealVect & | a_vectDx, | |||
const IntVect & | a_coord, | |||
const ProblemDomain & | a_domain, | |||
const RealVect & | a_origin | |||
) | const [private] |
void GeometryShop::edgeType | ( | bool & | a_regular, | |
bool & | a_covered, | |||
bool & | a_dontKnow, | |||
Real & | a_signHi, | |||
Real & | a_signLo | |||
) | const [private] |
Real GeometryShop::BrentRootFinder | ( | const RealVect & | a_x1, | |
const RealVect & | a_x2, | |||
const int & | a_range | |||
) | const [private] |
int GeometryShop::getNumCellsClipped | ( | ) | [private] |
void GeometryShop::operator= | ( | const GeometryShop & | a_workshopin | ) | [inline, private] |
References MayDay::Error().
int GeometryShop::m_numCellsClipped [private] |
int GeometryShop::m_verbosity [private] |
Real GeometryShop::m_threshold [private] |
RealVect GeometryShop::m_vectDx [private] |
const BaseIF* GeometryShop::m_implicitFunction [private] |
bool GeometryShop::s_verbose [static, private] |