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() [1/2]

EBCoarToFineRedist::EBCoarToFineRedist ( )

Default constructor. Leaves object undefined.

◆ ~EBCoarToFineRedist()

EBCoarToFineRedist::~EBCoarToFineRedist ( )

◆ EBCoarToFineRedist() [2/2]

EBCoarToFineRedist::EBCoarToFineRedist ( const EBCoarToFineRedist )
inlineprivate

References MayDay::Error().

Member Function Documentation

◆ setToZero()

void EBCoarToFineRedist::setToZero ( )

Initialize values of registers to zero.

◆ increment()

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.

◆ redistribute()

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

Redistribute the data contained in the internal buffers.

◆ isDefined()

bool EBCoarToFineRedist::isDefined ( ) const

◆ define() [1/2]

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.

◆ define() [2/2]

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.

◆ resetWeights()

void EBCoarToFineRedist::resetWeights ( const LevelData< EBCellFAB > &  a_modifierCoar,
const int &  a_ivar 
)

◆ setDefaultValues()

void EBCoarToFineRedist::setDefaultValues ( )
protected

◆ defineDataHolders()

void EBCoarToFineRedist::defineDataHolders ( )
protected

◆ operator=()

void EBCoarToFineRedist::operator= ( const EBCoarToFineRedist )
inlineprivate

References MayDay::Error().

Friends And Related Function Documentation

◆ EBFluxRegister

friend class EBFluxRegister
friend

Member Data Documentation

◆ m_isDefined

bool EBCoarToFineRedist::m_isDefined
protected

◆ m_redistRad

int EBCoarToFineRedist::m_redistRad
protected

◆ m_nComp

int EBCoarToFineRedist::m_nComp
protected

◆ m_refRat

int EBCoarToFineRedist::m_refRat
protected

◆ m_domainCoar

Box EBCoarToFineRedist::m_domainCoar
protected

◆ m_gridsFine

DisjointBoxLayout EBCoarToFineRedist::m_gridsFine
protected

◆ m_gridsCoar

DisjointBoxLayout EBCoarToFineRedist::m_gridsCoar
protected

◆ m_gridsCedFine

DisjointBoxLayout EBCoarToFineRedist::m_gridsCedFine
protected

◆ m_regsCoar

LevelData<BaseIVFAB<Real> > EBCoarToFineRedist::m_regsCoar
protected

◆ m_regsCedFine

LevelData<BaseIVFAB<Real> > EBCoarToFineRedist::m_regsCedFine
protected

◆ m_densityCedFine

LevelData<EBCellFAB> EBCoarToFineRedist::m_densityCedFine
protected

◆ m_stenCedFine

LayoutData<BaseIVFAB<VoFStencil> > EBCoarToFineRedist::m_stenCedFine
protected

◆ m_volumeStenc

LayoutData<BaseIVFAB<VoFStencil> > EBCoarToFineRedist::m_volumeStenc
protected

◆ m_standardStenc

LayoutData<BaseIVFAB<VoFStencil> > EBCoarToFineRedist::m_standardStenc
protected

◆ m_setsCedFine

LayoutData<IntVectSet> EBCoarToFineRedist::m_setsCedFine
protected

◆ m_setsCoar

LayoutData<IntVectSet> EBCoarToFineRedist::m_setsCoar
protected

◆ m_ebislFine

EBISLayout EBCoarToFineRedist::m_ebislFine
protected

◆ m_ebislCoar

EBISLayout EBCoarToFineRedist::m_ebislCoar
protected

◆ m_ebislCedFine

EBISLayout EBCoarToFineRedist::m_ebislCedFine
protected

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