WrappedGShop Class Reference

#include <WrappedGShop.H>

Inheritance diagram for WrappedGShop:

Inheritance graph
[legend]

List of all members.


Detailed Description

This is a much simplified version of GeometryShop. Refinement has been taken out of the internals of computecutcellmoments and the constrained least squares stuff is gone alltogether. This is also done for isotropic dx and there is no more stuff about globaldim.

Public Member Functions

 WrappedGShop (const RefCountedPtr< BaseIF > &a_baseIF, const RealVect &a_origin, const Real &a_dx, const ProblemDomain &a_domain, int minNumberRefines, int maxNumberRefines)
bool checkNodeMoments (IrregNode &a_node, const Real &a_dx, const bool &a_bindMoments, const Real &a_tolerance) const
virtual const BaseIFgetBaseIFPtr () const
 ~WrappedGShop ()
virtual bool isRegular (const Box &a_region, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx) const
virtual 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 bool canGenerateMultiCells () const
bool onBoxBoundary (const IntVect &a_iv, const Box &a_box, const int &a_dir, const Side::LoHiSide &a_sd) 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 (IrregNode &a_node, const IntVectSet &a_ivsIrreg, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx, const IntVect &a_iv) const
bool needToRefine (IrregNode &a_node, const Real &a_dx, const int &a_numRefSoFar) const
void agglomerateMoments (IrregNode &a_node, const Vector< IrregNode > &a_refNodes, const Box &a_refBox, const Real &a_fineDx, const Real &a_coarDx) const
RealVect convert2RelativeCoord (const RealVect &a_rVect) const
RealVect convert2RelativeCoord (const IndexTM< Real, SpaceDim > &a_rVect) const
void fillNewNode (IrregNode &a_node, const IntVectSet &a_ivsIrreg, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx, const IntVect &a_iv) const
void setRefinementCriterion (const RefCountedPtr< WGSRefinementCriterion > &a_refCrit)

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
void fillArc (Vector< int > a_arc[SpaceDim], CutCellMoments< SpaceDim > &a_cutCellMoments, const int &a_hilo, const IntVectSet &a_ivsIrreg, const IntVect &a_curriv) const
 WrappedGShop ()
 WrappedGShop (const WrappedGShop &a_workshopin)
void operator= (const WrappedGShop &a_workshopin)

Private Attributes

RefCountedPtr
< WGSRefinementCriterion
m_refCrit
Real m_threshold
RealVect m_origin
int m_order
int m_degreeP
int m_minNumberRefines
int m_maxNumberRefines
ProblemDomain m_domain
RefCountedPtr< BaseIFm_baseIF

Static Private Attributes

static Real s_relativeTol

Constructor & Destructor Documentation

WrappedGShop::WrappedGShop ( const RefCountedPtr< BaseIF > &  a_baseIF,
const RealVect a_origin,
const Real a_dx,
const ProblemDomain a_domain,
int  minNumberRefines,
int  maxNumberRefines 
)

This class will refine a cell if it is between min and max refinements. If it violates bounds, that triggers refinement until max refinement.

WrappedGShop::~WrappedGShop (  )  [inline]

WrappedGShop::WrappedGShop (  )  [inline, private]

References MayDay::Abort().

WrappedGShop::WrappedGShop ( const WrappedGShop a_workshopin  )  [inline, private]

References MayDay::Abort().


Member Function Documentation

bool WrappedGShop::checkNodeMoments ( IrregNode a_node,
const Real a_dx,
const bool &  a_bindMoments,
const Real a_tolerance 
) const

This checks to see if moments are within sane bounds. If a_bindMoments = true, it enforces those bounds. Only returns true if the bounds are violated by the relative tolerance.

virtual const BaseIF* WrappedGShop::getBaseIFPtr (  )  const [inline, virtual]

virtual bool WrappedGShop::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.

virtual bool WrappedGShop::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 WrappedGShop::isIrregular ( const Box a_region,
const ProblemDomain a_domain,
const RealVect a_origin,
const Real a_dx 
) const [virtual]

Reimplemented from GeometryService.

virtual bool WrappedGShop::canGenerateMultiCells (  )  const [inline, virtual]

Reimplemented from GeometryService.

bool WrappedGShop::onBoxBoundary ( const IntVect a_iv,
const Box a_box,
const int &  a_dir,
const Side::LoHiSide a_sd 
) const

virtual void WrappedGShop::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 WrappedGShop::computeVoFInternals ( IrregNode a_node,
const IntVectSet a_ivsIrreg,
const ProblemDomain a_domain,
const RealVect a_origin,
const Real a_dx,
const IntVect a_iv 
) const

bool WrappedGShop::needToRefine ( IrregNode a_node,
const Real a_dx,
const int &  a_numRefSoFar 
) const

void WrappedGShop::agglomerateMoments ( IrregNode a_node,
const Vector< IrregNode > &  a_refNodes,
const Box a_refBox,
const Real a_fineDx,
const Real a_coarDx 
) const

RealVect WrappedGShop::convert2RelativeCoord ( const RealVect a_rVect  )  const

RealVect WrappedGShop::convert2RelativeCoord ( const IndexTM< Real, SpaceDim > &  a_rVect  )  const

void WrappedGShop::fillNewNode ( IrregNode a_node,
const IntVectSet a_ivsIrreg,
const ProblemDomain a_domain,
const RealVect a_origin,
const Real a_dx,
const IntVect a_iv 
) const

void WrappedGShop::setRefinementCriterion ( const RefCountedPtr< WGSRefinementCriterion > &  a_refCrit  )  [inline]

References m_refCrit.

bool WrappedGShop::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 WrappedGShop::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.

void WrappedGShop::fillArc ( Vector< int >  a_arc[SpaceDim],
CutCellMoments< SpaceDim > &  a_cutCellMoments,
const int &  a_hilo,
const IntVectSet a_ivsIrreg,
const IntVect a_curriv 
) const [private]

void WrappedGShop::operator= ( const WrappedGShop a_workshopin  )  [inline, private]

References MayDay::Abort().


Member Data Documentation

Referenced by setRefinementCriterion().

int WrappedGShop::m_order [private]

int WrappedGShop::m_degreeP [private]

Real WrappedGShop::s_relativeTol [static, private]


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

Generated on Sun Jun 25 03:27:29 2017 for Chombo + EB + MF by  doxygen 1.5.5