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

Coarse to fine redistribution class. More...

#include <EBCoarToFineRedist.H>

Public Member Functions

 EBCoarToFineRedist ()
 
 ~EBCoarToFineRedist ()
 
void setToZero ()
 
void increment (const BaseIVFAB< Real > &a_coarseMass, const DataIndex &a_coarseDataIndex, const Interval &a_variables)
 
void redistribute (LevelData< EBCellFAB > &a_fineSolution, const Interval &a_variables)
 
bool isDefined () const
 
void define (const DisjointBoxLayout &a_dblFine, const DisjointBoxLayout &a_dblCoar, const EBISLayout &a_ebislFine, const EBISLayout &a_ebislCoar, const Box &a_domainCoar, const int &a_nref, const int &a_nvar, int redistRad, const EBIndexSpace *ebisPtr)
 ugly but general define fcn More...
 
void define (const EBLevelGrid &a_eblgFine, const EBLevelGrid &a_eblgCoar, const int &a_nref, const int &a_nvar, const int &a_redistRad)
 
void resetWeights (const LevelData< EBCellFAB > &a_modifierCoar, const int &a_ivar)
 

Protected Member Functions

void setDefaultValues ()
 
void defineDataHolders ()
 

Protected Attributes

bool m_isDefined
 
int m_redistRad
 
int m_nComp
 
int m_refRat
 
Box m_domainCoar
 
DisjointBoxLayout m_gridsFine
 
DisjointBoxLayout m_gridsCoar
 
DisjointBoxLayout m_gridsCedFine
 
LevelData< BaseIVFAB< Real > > m_regsCoar
 
LevelData< BaseIVFAB< Real > > m_regsCedFine
 
LevelData< EBCellFABm_densityCedFine
 
LayoutData< BaseIVFAB
< VoFStencil > > 
m_stenCedFine
 
LayoutData< BaseIVFAB
< VoFStencil > > 
m_volumeStenc
 
LayoutData< BaseIVFAB
< VoFStencil > > 
m_standardStenc
 
LayoutData< IntVectSetm_setsCedFine
 
LayoutData< IntVectSetm_setsCoar
 
EBISLayout m_ebislFine
 
EBISLayout m_ebislCoar
 
EBISLayout m_ebislCedFine
 

Private Member Functions

void operator= (const EBCoarToFineRedist &)
 
 EBCoarToFineRedist (const EBCoarToFineRedist &)
 

Friends

class EBFluxRegister
 

Detailed Description

Coarse to fine redistribution class.

Coarse to fine redistribution class.

Constructor & Destructor Documentation

EBCoarToFineRedist::EBCoarToFineRedist ( )

Default constructor. Leaves object undefined.

EBCoarToFineRedist::~EBCoarToFineRedist ( )
EBCoarToFineRedist::EBCoarToFineRedist ( const EBCoarToFineRedist )
inlineprivate

References MayDay::Error().

Member Function Documentation

void EBCoarToFineRedist::setToZero ( )

Initialize values of registers to zero.

void EBCoarToFineRedist::increment ( const BaseIVFAB< Real > &  a_coarseMass,
const DataIndex a_coarseDataIndex,
const Interval a_variables 
)

Increments the register with data from coarseMass. This is the full redistribution mass. Internally the class figures out what actually goes to the fine level.

void EBCoarToFineRedist::redistribute ( LevelData< EBCellFAB > &  a_fineSolution,
const Interval a_variables 
)

Redistribute the data contained in the internal buffers.

bool EBCoarToFineRedist::isDefined ( ) const
void EBCoarToFineRedist::define ( const DisjointBoxLayout a_dblFine,
const DisjointBoxLayout a_dblCoar,
const EBISLayout a_ebislFine,
const EBISLayout a_ebislCoar,
const Box a_domainCoar,
const int &  a_nref,
const int &  a_nvar,
int  redistRad,
const EBIndexSpace ebisPtr 
)

ugly but general define fcn

Full define function. Define the stencils with volume weights. If you want mass weights or whatever, use reset weights.

void EBCoarToFineRedist::define ( const EBLevelGrid a_eblgFine,
const EBLevelGrid a_eblgCoar,
const int &  a_nref,
const int &  a_nvar,
const int &  a_redistRad 
)

Interface that uses EBLevelGrid potentially can be much faster when the number of boxes gets large.

void EBCoarToFineRedist::resetWeights ( const LevelData< EBCellFAB > &  a_modifierCoar,
const int &  a_ivar 
)
void EBCoarToFineRedist::setDefaultValues ( )
protected
void EBCoarToFineRedist::defineDataHolders ( )
protected
void EBCoarToFineRedist::operator= ( const EBCoarToFineRedist )
inlineprivate

References MayDay::Error().

Friends And Related Function Documentation

friend class EBFluxRegister
friend

Member Data Documentation

bool EBCoarToFineRedist::m_isDefined
protected
int EBCoarToFineRedist::m_redistRad
protected
int EBCoarToFineRedist::m_nComp
protected
int EBCoarToFineRedist::m_refRat
protected
Box EBCoarToFineRedist::m_domainCoar
protected
DisjointBoxLayout EBCoarToFineRedist::m_gridsFine
protected
DisjointBoxLayout EBCoarToFineRedist::m_gridsCoar
protected
DisjointBoxLayout EBCoarToFineRedist::m_gridsCedFine
protected
LevelData<BaseIVFAB<Real> > EBCoarToFineRedist::m_regsCoar
protected
LevelData<BaseIVFAB<Real> > EBCoarToFineRedist::m_regsCedFine
protected
LevelData<EBCellFAB> EBCoarToFineRedist::m_densityCedFine
protected
LayoutData<BaseIVFAB<VoFStencil> > EBCoarToFineRedist::m_stenCedFine
protected
LayoutData<BaseIVFAB<VoFStencil> > EBCoarToFineRedist::m_volumeStenc
protected
LayoutData<BaseIVFAB<VoFStencil> > EBCoarToFineRedist::m_standardStenc
protected
LayoutData<IntVectSet> EBCoarToFineRedist::m_setsCedFine
protected
LayoutData<IntVectSet> EBCoarToFineRedist::m_setsCoar
protected
EBISLayout EBCoarToFineRedist::m_ebislFine
protected
EBISLayout EBCoarToFineRedist::m_ebislCoar
protected
EBISLayout EBCoarToFineRedist::m_ebislCedFine
protected

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