NewGeometryShop Class Reference

#include <NewGeometryShop.H>

Inheritance diagram for NewGeometryShop:

Inheritance graph
[legend]
Collaboration diagram for NewGeometryShop:

Collaboration 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 ReferenceHeightIF &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, SpaceDim > convertRealVect2IndexTM (const RealVect &a_realVect) const
IntVect convertIndexTM2IntVect (const IndexTM< int, SpaceDim > &a_indexTm) const
IndexTM< int, SpaceDim > convertIntVect2IndexTM (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 ReferenceHeightIF * m_baseIF
CutCellMoments< GLOBALDIM > m_cutCellMoments

Static Private Attributes

static bool s_verbose

Constructor & Destructor Documentation

NewGeometryShop::NewGeometryShop ( const ReferenceHeightIF &  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::Error().

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

References MayDay::Error().


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::Error().


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 Tue Apr 14 14:23:49 2009 for Chombo + EB by  doxygen 1.5.5