Chombo + EB + MF  3.2
Public Member Functions | Private Attributes | List of all members
EBISLayout Class Reference

#include <EBISLayout.H>

Public Member Functions

const EBISBoxoperator[] (const DataIndex &a_index) const
 
void setMaxRefinementRatio (const int &a_maxRefine, const EBIndexSpace *const a_ebisPtr)
 
void setMaxCoarseningRatio (const int &a_maxCoarsen, const EBIndexSpace *const a_ebisPtr)
 
int getGhost () const
 
 EBISLayout ()
 
const BoxLayoutgetGrownLayout () const
 
const DisjointBoxLayoutgetDisjointLayout () const
 
 ~EBISLayout ()
 
VolIndex coarsen (const VolIndex &a_vof, const int &a_ratio, const DataIndex &a_datInd) const
 
Vector< VolIndexrefine (const VolIndex &a_vof, const int &a_ratio, const DataIndex &a_datInd) const
 
Vector< FaceIndexrefine (const FaceIndex &a_face, const int &a_ratio, const DataIndex &a_datInd) const
 
int getMaxCoarseningRatio () const
 
int getMaxRefinementRatio () const
 
void define (const ProblemDomain &a_domain, const DisjointBoxLayout &a_grids, const int &a_nghost, const LevelData< EBGraph > &a_graph, const LevelData< EBData > &a_data)
 
bool isDefined () const
 
const EBIndexSpacegetEBIS () const
 
void setEBIS (const EBIndexSpace *const a_ebisPtr)
 
int refCount () const
 
const ProblemDomaingetDomain () const
 

Private Attributes

RefCountedPtr< EBISLayoutImplemm_implem
 
int m_nghost
 

Detailed Description

EBISLayout represents the geometric information on a union of rectangles. This is another ref-counted pointer object so copying it is cheap but has the ref-counted pointer semantic.

Constructor & Destructor Documentation

◆ EBISLayout()

EBISLayout::EBISLayout ( )

Referenced by getGhost().

◆ ~EBISLayout()

EBISLayout::~EBISLayout ( )

Referenced by getGhost().

Member Function Documentation

◆ operator[]()

const EBISBox& EBISLayout::operator[] ( const DataIndex a_index) const

Access the { EBISBox} associated with the input DataIndex. Only constant access is permitted.

◆ setMaxRefinementRatio()

void EBISLayout::setMaxRefinementRatio ( const int &  a_maxRefine,
const EBIndexSpace *const  a_ebisPtr 
)

Sets the maximum level of refinement that this { EBISLayout} will have to perform. Creates and holds new { EBISLayout}s at intermediate levels of refinement. Default is one (no refinement done).

Referenced by EBISLayoutImplem::getDisjointLayout(), and EBLevelGrid::setMaxRefinementRatio().

◆ setMaxCoarseningRatio()

void EBISLayout::setMaxCoarseningRatio ( const int &  a_maxCoarsen,
const EBIndexSpace *const  a_ebisPtr 
)

Sets the maximum level of coarsening that this { EBISLayout} will have to perform. Creates and holds new { EBISLayout}s at intermediate levels of refinement. Default is one (no coarsening done).

Referenced by EBISLayoutImplem::getDisjointLayout(), and EBLevelGrid::setMaxCoarseningRatio().

◆ getGhost()

int EBISLayout::getGhost ( ) const
inline

◆ getGrownLayout()

const BoxLayout& EBISLayout::getGrownLayout ( ) const

Returns the ghosted layout associated with the ebisl.

Referenced by getGhost().

◆ getDisjointLayout()

const DisjointBoxLayout& EBISLayout::getDisjointLayout ( ) const

Returns the disjoint layout that was sent in.

Referenced by BaseIVFactory< T >::BaseIVFactory(), and getGhost().

◆ coarsen()

VolIndex EBISLayout::coarsen ( const VolIndex a_vof,
const int &  a_ratio,
const DataIndex a_datInd 
) const

Returns the index of the VoF corresponding to coarsening the input VoF by the input ratio. It is an error if the ratio is greater than the maximum coarsening ratio or if the vof does not exist at the input data index.

Referenced by EBISLayoutImplem::getDisjointLayout(), and getGhost().

◆ refine() [1/2]

Vector<VolIndex> EBISLayout::refine ( const VolIndex a_vof,
const int &  a_ratio,
const DataIndex a_datInd 
) const

Returns the indices of the VoFs corresponding to refining the input VoF by the input ratio. It is an error if the ratio is greater than the maximum refinement ratio or if the vof does not exist at the input data index.

Referenced by EBISLayoutImplem::getDisjointLayout(), and getGhost().

◆ refine() [2/2]

Vector<FaceIndex> EBISLayout::refine ( const FaceIndex a_face,
const int &  a_ratio,
const DataIndex a_datInd 
) const

Returns the indices of the Faces corresponding to refining the input Face by the input ratio. It is an error if the ratio is greater than the maximum refinement ratio or if the face does not exist at the input data index.

◆ getMaxCoarseningRatio()

int EBISLayout::getMaxCoarseningRatio ( ) const

◆ getMaxRefinementRatio()

int EBISLayout::getMaxRefinementRatio ( ) const

◆ define()

void EBISLayout::define ( const ProblemDomain a_domain,
const DisjointBoxLayout a_grids,
const int &  a_nghost,
const LevelData< EBGraph > &  a_graph,
const LevelData< EBData > &  a_data 
)

◆ isDefined()

bool EBISLayout::isDefined ( ) const

Referenced by getGhost().

◆ getEBIS()

const EBIndexSpace* EBISLayout::getEBIS ( ) const

Referenced by getGhost().

◆ setEBIS()

void EBISLayout::setEBIS ( const EBIndexSpace *const  a_ebisPtr)

Referenced by getGhost().

◆ refCount()

int EBISLayout::refCount ( ) const
inline

◆ getDomain()

const ProblemDomain& EBISLayout::getDomain ( ) const

Referenced by refCount().

Member Data Documentation

◆ m_implem

RefCountedPtr<EBISLayoutImplem> EBISLayout::m_implem
private

Referenced by refCount().

◆ m_nghost

int EBISLayout::m_nghost
private

Referenced by getGhost().


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