NewGeometryShop Class Reference

#include <NewGeometryShop.H>

Inheritance diagram for NewGeometryShop:

Inheritance graph
[legend]

List of all members.


Detailed Description

This is the base class for the workshop algorithm. It forms the interface between the shallow water workshop classes and the geometryservice class. If globalDim < 3, then this code will break

Public Member Functions

 NewGeometryShop (const BaseIF &a_baseIF, const RealVect &a_origin, const RealVect &a_vectDx, const ProblemDomain &a_domain, const int &a_order=GEOMETRY_ORDER, const int &a_degreeP=GEOMETRY_DEGREEP, const bool &a_useConstraints=GEOMETRY_CONSTRAINTS)
 ~NewGeometryShop ()
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 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
void settCurrIv (const IntVect &a_iv) const
void fillResiduals (int &a_degreeP) const
Real fillVolFrac () const
void fillArc (Vector< int > a_arc[SpaceDim], const int &a_hilo, const IntVectSet &a_ivsIrreg) const
void fillLoArc (Vector< int > a_loArc[SpaceDim], const IntVectSet &a_ivsIrreg) const
void fillHiArc (Vector< int > a_hiArc[SpaceDim], const IntVectSet &a_ivsIrreg) const
void fillAreaFrac (Vector< Real > a_AreaFrac[SpaceDim], const int &a_hilo) const
void fillLoAreaFrac (Vector< Real > a_loAreaFrac[SpaceDim]) const
void fillHiAreaFrac (Vector< Real > a_hiAreaFrac[SpaceDim]) const
Real fillBndryArea () const
RealVect fillNormal () const
RealVect fillvolCentroid () const
RealVect fillBndryCentroid () const
void fillFaceCentroid (Vector< RealVect >a_loFaceCentroid[SpaceDim], const int &a_hilo) const
void fillLoFaceCentroid (Vector< RealVect >a_LOFaceCentroid[SpaceDim]) const
void fillHiFaceCentroid (Vector< RealVect >a_hiFaceCentroid[SpaceDim]) const
void clipComputedVal (Real &a_volFrac, Vector< Real > a_loAreaFrac[SpaceDim], Vector< Real > a_hiAreaFrac[SpaceDim], Real &a_bndryArea, RealVect &a_volCentroid, RealVect &a_bndryCentroid, Vector< RealVect > a_loFaceCentroid[SpaceDim], Vector< RealVect > a_hiFaceCentroid[SpaceDim], const IntVect &a_iv) const
RealVect convertIndexTM2RealVect (const IndexTM< Real, SpaceDim > &a_indexTm) const
IndexTM< Real, SpaceDimconvertRealVect2IndexTM (const RealVect &a_realVect) const
IntVect convertIndexTM2IntVect (const IndexTM< int, SpaceDim > &a_indexTm) const
IndexTM< int, SpaceDimconvertIntVect2IndexTM (const IntVect &a_intVect) const
RealVect convert2RelativeCoord (const RealVect &a_rVect) const
RealVect convert2RelativeCoord (const IndexTM< Real, SpaceDim > &a_rVect) const
void outputResidual (int &type, int &a_degreeP) const
void outputGradNormal () 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
int getNumCellsClipped ()
 NewGeometryShop ()
 NewGeometryShop (const NewGeometryShop &a_workshopin)
void operator= (const NewGeometryShop &a_workshopin)

Private Attributes

int m_numCellsClipped
Real m_threshold
RealVect m_origin
RealVect m_vectDx
RvgDim m_dxVect
int m_order
int m_degreeP
bool m_useConstraints
Real m_volScaleFactor
Real m_bndryAreaScaleFactor
FArrayBox m_residuals
FArrayBox m_gradNormal
IntVect m_currIv
ProblemDomain m_domain
const BaseIFm_baseIF
CutCellMoments< GLOBALDIM > m_cutCellMoments

Static Private Attributes

static bool s_verbose

Constructor & Destructor Documentation

NewGeometryShop::NewGeometryShop ( const BaseIF a_baseIF,
const RealVect a_origin,
const RealVect a_vectDx,
const ProblemDomain a_domain,
const int &  a_order = GEOMETRY_ORDER,
const int &  a_degreeP = GEOMETRY_DEGREEP,
const bool &  a_useConstraints = GEOMETRY_CONSTRAINTS 
)

Define the workshop using the local geometry description

NewGeometryShop::~NewGeometryShop (  ) 

NewGeometryShop::NewGeometryShop (  )  [inline, private]

References MayDay::Abort().

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

References MayDay::Abort().


Member Function Documentation

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

Reimplemented from GeometryService.

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

Reimplemented from GeometryService.

virtual void NewGeometryShop::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 NewGeometryShop::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

void NewGeometryShop::settCurrIv ( const IntVect a_iv  )  const

void NewGeometryShop::fillResiduals ( int &  a_degreeP  )  const

Real NewGeometryShop::fillVolFrac (  )  const

void NewGeometryShop::fillArc ( Vector< int >  a_arc[SpaceDim],
const int &  a_hilo,
const IntVectSet a_ivsIrreg 
) const

void NewGeometryShop::fillLoArc ( Vector< int >  a_loArc[SpaceDim],
const IntVectSet a_ivsIrreg 
) const

void NewGeometryShop::fillHiArc ( Vector< int >  a_hiArc[SpaceDim],
const IntVectSet a_ivsIrreg 
) const

void NewGeometryShop::fillAreaFrac ( Vector< Real a_AreaFrac[SpaceDim],
const int &  a_hilo 
) const

void NewGeometryShop::fillLoAreaFrac ( Vector< Real a_loAreaFrac[SpaceDim]  )  const

void NewGeometryShop::fillHiAreaFrac ( Vector< Real a_hiAreaFrac[SpaceDim]  )  const

Real NewGeometryShop::fillBndryArea (  )  const

RealVect NewGeometryShop::fillNormal (  )  const

RealVect NewGeometryShop::fillvolCentroid (  )  const

RealVect NewGeometryShop::fillBndryCentroid (  )  const

void NewGeometryShop::fillFaceCentroid ( Vector< RealVect a_loFaceCentroid[SpaceDim],
const int &  a_hilo 
) const

void NewGeometryShop::fillLoFaceCentroid ( Vector< RealVect a_LOFaceCentroid[SpaceDim]  )  const

void NewGeometryShop::fillHiFaceCentroid ( Vector< RealVect a_hiFaceCentroid[SpaceDim]  )  const

void NewGeometryShop::clipComputedVal ( Real a_volFrac,
Vector< Real a_loAreaFrac[SpaceDim],
Vector< Real a_hiAreaFrac[SpaceDim],
Real a_bndryArea,
RealVect a_volCentroid,
RealVect a_bndryCentroid,
Vector< RealVect a_loFaceCentroid[SpaceDim],
Vector< RealVect a_hiFaceCentroid[SpaceDim],
const IntVect a_iv 
) const

RealVect NewGeometryShop::convertIndexTM2RealVect ( const IndexTM< Real, SpaceDim > &  a_indexTm  )  const

IndexTM<Real,SpaceDim> NewGeometryShop::convertRealVect2IndexTM ( const RealVect a_realVect  )  const

IntVect NewGeometryShop::convertIndexTM2IntVect ( const IndexTM< int, SpaceDim > &  a_indexTm  )  const

IndexTM<int,SpaceDim> NewGeometryShop::convertIntVect2IndexTM ( const IntVect a_intVect  )  const

RealVect NewGeometryShop::convert2RelativeCoord ( const RealVect a_rVect  )  const

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

void NewGeometryShop::outputResidual ( int &  type,
int &  a_degreeP 
) const

void NewGeometryShop::outputGradNormal (  )  const

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

int NewGeometryShop::getNumCellsClipped (  )  [private]

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

References MayDay::Abort().


Member Data Documentation

int NewGeometryShop::m_order [private]

IntVect NewGeometryShop::m_currIv [mutable, private]

bool NewGeometryShop::s_verbose [static, private]


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

Generated on Thu Nov 23 03:43:07 2017 for Chombo + EB by  doxygen 1.5.5