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

Piecewise constant interpolation. More...

#include <EBMGAverage.H>

Public Member Functions

 EBMGAverage ()
 
 ~EBMGAverage ()
 
 EBMGAverage (const DisjointBoxLayout &a_dblFine, const DisjointBoxLayout &a_dblCoar, const EBISLayout &a_ebislFine, const EBISLayout &a_ebislCoar, const ProblemDomain &a_domainCoar, const int &a_nref, const int &a_nvar, const EBIndexSpace *ebisPtr, const IntVect &a_ghostCellsRHS, const bool &a_layoutChanged=true)
 
void define (const DisjointBoxLayout &dblFine, const DisjointBoxLayout &dblCoar, const EBISLayout &ebislFine, const EBISLayout &ebislCoar, const ProblemDomain &domainCoar, const int &nref, const int &nvar, const EBIndexSpace *ebisPtr, const IntVect &ghostCellsRHS, const bool &a_layoutChanged=true)
 
bool isDefined () const
 
void average (LevelData< EBCellFAB > &a_coarData, const LevelData< EBCellFAB > &a_fineData, const Interval &a_variables)
 
void averageMG (LevelData< EBCellFAB > &a_coarData, const LevelData< EBCellFAB > &a_fineData, const Interval &a_variables)
 

Protected Member Functions

void averageFAB (EBCellFAB &a_coar, const Box &a_box, const EBCellFAB &a_refCoar, const DataIndex &a_datInd, const Interval &a_variables) const
 
void setDefaultValues ()
 
void defineStencils ()
 

Protected Attributes

bool m_isDefined
 
IntVect m_ghost
 
DisjointBoxLayout m_coarGrids
 
DisjointBoxLayout m_fineGrids
 
DisjointBoxLayout m_refinedCoarseGrids
 
Copier m_copier
 
ProblemDomain m_coarDomain
 
ProblemDomain m_fineDomain
 
EBISLayout m_coarEBISL
 
EBISLayout m_fineEBISL
 
int m_refRat
 
int m_nComp
 
bool m_layoutChanged
 
bool m_coarsenable
 
DisjointBoxLayout m_buffGrids
 
EBISLayout m_buffEBISL
 
LayoutData< RefCountedPtr< EBStencil > > m_averageEBStencil
 

Private Member Functions

 EBMGAverage (const EBMGAverage &ebcin)
 
void operator= (const EBMGAverage &fabin)
 

Detailed Description

Piecewise constant interpolation.

Finedata += coarse data.

Constructor & Destructor Documentation

◆ EBMGAverage() [1/3]

EBMGAverage::EBMGAverage ( )

Default constructor. User must subsequently call define().

◆ ~EBMGAverage()

EBMGAverage::~EBMGAverage ( )

◆ EBMGAverage() [2/3]

EBMGAverage::EBMGAverage ( const DisjointBoxLayout a_dblFine,
const DisjointBoxLayout a_dblCoar,
const EBISLayout a_ebislFine,
const EBISLayout a_ebislCoar,
const ProblemDomain a_domainCoar,
const int &  a_nref,
const int &  a_nvar,
const EBIndexSpace ebisPtr,
const IntVect a_ghostCellsRHS,
const bool &  a_layoutChanged = true 
)

◆ EBMGAverage() [3/3]

EBMGAverage::EBMGAverage ( const EBMGAverage ebcin)
inlineprivate

References MayDay::Error().

Member Function Documentation

◆ define()

void EBMGAverage::define ( const DisjointBoxLayout dblFine,
const DisjointBoxLayout dblCoar,
const EBISLayout ebislFine,
const EBISLayout ebislCoar,
const ProblemDomain domainCoar,
const int &  nref,
const int &  nvar,
const EBIndexSpace ebisPtr,
const IntVect ghostCellsRHS,
const bool &  a_layoutChanged = true 
)

Defines this object. Existing information is overriden.

{ Arguments:}\ dblFine, dblCoar: The fine and coarse layouts of the data.\ ebislFine, ebislCoar: The fine and coarse layouts of the geometric description.\ nref: The refinement ratio between the two levels. \ nvar: The number of variables contained in the data at each VoF.

◆ isDefined()

bool EBMGAverage::isDefined ( ) const

Returns true if this object was created with the defining constructor or if define() has been called.

◆ average()

void EBMGAverage::average ( LevelData< EBCellFAB > &  a_coarData,
const LevelData< EBCellFAB > &  a_fineData,
const Interval a_variables 
)

Piecewise constant interpolation function FineData += coarseData

◆ averageMG()

void EBMGAverage::averageMG ( LevelData< EBCellFAB > &  a_coarData,
const LevelData< EBCellFAB > &  a_fineData,
const Interval a_variables 
)

Piecewise constant interpolation function for unchanged layouts (no agglomeration) there are no copies here FineData += coarseData

◆ averageFAB()

void EBMGAverage::averageFAB ( EBCellFAB a_coar,
const Box a_box,
const EBCellFAB a_refCoar,
const DataIndex a_datInd,
const Interval a_variables 
) const
protected

◆ setDefaultValues()

void EBMGAverage::setDefaultValues ( )
protected

◆ defineStencils()

void EBMGAverage::defineStencils ( )
protected

◆ operator=()

void EBMGAverage::operator= ( const EBMGAverage fabin)
inlineprivate

References MayDay::Error().

Member Data Documentation

◆ m_isDefined

bool EBMGAverage::m_isDefined
protected

◆ m_ghost

IntVect EBMGAverage::m_ghost
protected

◆ m_coarGrids

DisjointBoxLayout EBMGAverage::m_coarGrids
protected

◆ m_fineGrids

DisjointBoxLayout EBMGAverage::m_fineGrids
protected

◆ m_refinedCoarseGrids

DisjointBoxLayout EBMGAverage::m_refinedCoarseGrids
protected

◆ m_copier

Copier EBMGAverage::m_copier
protected

◆ m_coarDomain

ProblemDomain EBMGAverage::m_coarDomain
protected

◆ m_fineDomain

ProblemDomain EBMGAverage::m_fineDomain
protected

◆ m_coarEBISL

EBISLayout EBMGAverage::m_coarEBISL
protected

◆ m_fineEBISL

EBISLayout EBMGAverage::m_fineEBISL
protected

◆ m_refRat

int EBMGAverage::m_refRat
protected

◆ m_nComp

int EBMGAverage::m_nComp
protected

◆ m_layoutChanged

bool EBMGAverage::m_layoutChanged
protected

◆ m_coarsenable

bool EBMGAverage::m_coarsenable
protected

◆ m_buffGrids

DisjointBoxLayout EBMGAverage::m_buffGrids
protected

◆ m_buffEBISL

EBISLayout EBMGAverage::m_buffEBISL
protected

◆ m_averageEBStencil

LayoutData<RefCountedPtr<EBStencil> > EBMGAverage::m_averageEBStencil
protected

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