Chombo + EB  3.0
Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
EBLevelGrid Class Reference

#include <EBLevelGrid.H>

Public Member Functions

 EBLevelGrid ()
 
 ~EBLevelGrid ()
 
 EBLevelGrid (const DisjointBoxLayout &a_dbl, const ProblemDomain &a_domain, const int &a_numGhostEBISL, const EBIndexSpace *a_ebisPtr)
 
 EBLevelGrid (const DisjointBoxLayout &a_dbl, const EBISLayout &a_ebisl, const ProblemDomain &a_domain)
 
void define (const DisjointBoxLayout &a_dbl, const ProblemDomain &a_domain, const int &a_numGhostEBISL, const EBIndexSpace *a_ebisPtr)
 
void define (const DisjointBoxLayout &a_dbl, const EBISLayout &a_ebisl, const ProblemDomain &a_domain)
 
 EBLevelGrid (const EBLevelGrid &ebcin)
 
int getGhost () const
 
DisjointBoxLayout getDBL () const
 
EBISLayout getEBISL () const
 
RefCountedPtr< LayoutData
< IntVectSet > > 
getCFIVS () const
 
bool isDefined () const
 
const EBIndexSpacegetEBIS () const
 
const IntVectSetgetCoveringIVS () const
 
const ProblemDomaingetDomain () const
 
void setMaxRefinementRatio (const int &a_maxRefine)
 
void setMaxCoarseningRatio (const int &a_maxCoarsen, const EBIndexSpace *const a_ebisPtr)
 
int getMaxCoarseningRatio () const
 
int getMaxRefinementRatio () const
 
bool coarsenable (const int &a_ref) const
 

Protected Member Functions

void defineCoveringIVS ()
 
void setDefaultValues ()
 

Protected Attributes

bool m_isDefined
 
bool m_isCoveringIVSDefined
 
DisjointBoxLayout m_grids
 
EBISLayout m_ebisl
 
ProblemDomain m_domain
 
RefCountedPtr< LayoutData
< IntVectSet > > 
m_cfivs
 
IntVectSet m_coveringIVS
 
const EBIndexSpacem_ebisPtr
 
int m_nghost
 

Friends

void coarsen (EBLevelGrid &a_eblgCoar, const EBLevelGrid &a_eblgFine, const int &a_ref)
 
void refine (EBLevelGrid &a_eblgCoar, const EBLevelGrid &a_eblgFine, const int &a_ref)
 

Detailed Description

A structure to hold the various components of an EB calculation grid.

Constructor & Destructor Documentation

EBLevelGrid::EBLevelGrid ( )

Default constructor. User must subsequently call define().

EBLevelGrid::~EBLevelGrid ( )
EBLevelGrid::EBLevelGrid ( const DisjointBoxLayout a_dbl,
const ProblemDomain a_domain,
const int &  a_numGhostEBISL,
const EBIndexSpace a_ebisPtr 
)

Defining constructor. Constructs a valid object. Equivalent to default construction followed by define().

EBLevelGrid::EBLevelGrid ( const DisjointBoxLayout a_dbl,
const EBISLayout a_ebisl,
const ProblemDomain a_domain 
)
EBLevelGrid::EBLevelGrid ( const EBLevelGrid ebcin)

Member Function Documentation

void EBLevelGrid::define ( const DisjointBoxLayout a_dbl,
const ProblemDomain a_domain,
const int &  a_numGhostEBISL,
const EBIndexSpace a_ebisPtr 
)

Define function that generates EBISL and CFIVS

void EBLevelGrid::define ( const DisjointBoxLayout a_dbl,
const EBISLayout a_ebisl,
const ProblemDomain a_domain 
)

only generates cfivs. set EBISPtr = chombo_ebis::instance

int EBLevelGrid::getGhost ( ) const
inline

References CH_assert, m_isDefined, and m_nghost.

DisjointBoxLayout EBLevelGrid::getDBL ( ) const
inline
EBISLayout EBLevelGrid::getEBISL ( ) const
inline
RefCountedPtr<LayoutData<IntVectSet> > EBLevelGrid::getCFIVS ( ) const
inline

References CH_assert, m_cfivs, and m_isDefined.

bool EBLevelGrid::isDefined ( ) const
inline

References m_isDefined.

const EBIndexSpace* EBLevelGrid::getEBIS ( ) const
inline

References CH_assert, m_ebisPtr, and m_isDefined.

const IntVectSet& EBLevelGrid::getCoveringIVS ( ) const
inline
const ProblemDomain& EBLevelGrid::getDomain ( ) const
inline

References CH_assert, m_domain, and m_isDefined.

Referenced by EBAMRPoissonOp::getFlux().

void EBLevelGrid::setMaxRefinementRatio ( const int &  a_maxRefine)
inline

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

References CH_assert, m_ebisl, m_ebisPtr, m_isDefined, and EBISLayout::setMaxRefinementRatio().

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

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

References CH_assert, m_ebisl, m_isDefined, and EBISLayout::setMaxCoarseningRatio().

int EBLevelGrid::getMaxCoarseningRatio ( ) const
inline
int EBLevelGrid::getMaxRefinementRatio ( ) const
inline
bool EBLevelGrid::coarsenable ( const int &  a_ref) const
void EBLevelGrid::defineCoveringIVS ( )
protected

Referenced by getCoveringIVS().

void EBLevelGrid::setDefaultValues ( )
protected

Friends And Related Function Documentation

void coarsen ( EBLevelGrid a_eblgCoar,
const EBLevelGrid a_eblgFine,
const int &  a_ref 
)
friend

Coarsen eblgFine by a_ref

void refine ( EBLevelGrid a_eblgCoar,
const EBLevelGrid a_eblgFine,
const int &  a_ref 
)
friend

Member Data Documentation

bool EBLevelGrid::m_isDefined
protected
bool EBLevelGrid::m_isCoveringIVSDefined
protected

Referenced by getCoveringIVS().

DisjointBoxLayout EBLevelGrid::m_grids
protected

Referenced by getDBL().

EBISLayout EBLevelGrid::m_ebisl
protected
ProblemDomain EBLevelGrid::m_domain
protected

Referenced by getDomain().

RefCountedPtr<LayoutData<IntVectSet> > EBLevelGrid::m_cfivs
protected

Referenced by getCFIVS().

IntVectSet EBLevelGrid::m_coveringIVS
protected

Referenced by getCoveringIVS().

const EBIndexSpace* EBLevelGrid::m_ebisPtr
protected

Referenced by getEBIS(), and setMaxRefinementRatio().

int EBLevelGrid::m_nghost
protected

Referenced by getGhost().


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