EBCoarToCoarRedist Class Reference

#include <EBCoarToCoarRedist.H>

Collaboration diagram for EBCoarToCoarRedist:

Collaboration graph

List of all members.

Detailed Description

A EBCoarToCoarRedist handles all the data choreography for coarse to coarse redistribution ("re-redistribution").

Public Member Functions

 EBCoarToCoarRedist ()
 ~EBCoarToCoarRedist ()
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 a_redistRad=1)
void define (const EBLevelGrid &a_eblgFine, const EBLevelGrid &a_eblgCoar, const int &a_nref, const int &a_nvar, const int &a_redistRad)
void setToZero ()
void increment (const BaseIVFAB< Real > &a_coarMass, const DataIndex &a_fineDataIndex, const Interval &a_variables)
void resetWeights (const LevelData< EBCellFAB > &a_modifier, const int &a_ivar)
void redistribute (LevelData< EBCellFAB > &a_coarSolution, const Interval &a_variables)
bool isDefined () const

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
LevelData< BaseIVFAB< Real > > m_regsCoar
LayoutData< IntVectSetm_setsCoar
EBISLayout m_ebislFine
EBISLayout m_ebislCoar
LayoutData< BaseIVFAB
< VoFStencil > > 
LayoutData< BaseIVFAB
< VoFStencil > > 
LayoutData< BaseIVFAB
< VoFStencil > > 
LevelData< EBCellFABm_densityCoar

Private Member Functions

void operator= (const EBCoarToCoarRedist &)
 EBCoarToCoarRedist (const EBCoarToCoarRedist &)


class EBFluxRegister

Constructor & Destructor Documentation

EBCoarToCoarRedist::EBCoarToCoarRedist (  ) 

Default constructor. Leaves object undefined.

EBCoarToCoarRedist::~EBCoarToCoarRedist (  ) 

EBCoarToCoarRedist::EBCoarToCoarRedist ( const EBCoarToCoarRedist  )  [inline, private]

References MayDay::Error().

Member Function Documentation

void EBCoarToCoarRedist::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  a_redistRad = 1 

Full define function. \ 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. \ coarStencil: The redistribution stencil for this level.

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

potentially faster define function, especially with large numbers of boxes.

void EBCoarToCoarRedist::setToZero (  ) 

Initialize values of registers to zero.

void EBCoarToCoarRedist::increment ( const BaseIVFAB< Real > &  a_coarMass,
const DataIndex a_fineDataIndex,
const Interval a_variables 

Increments the register with data from coarseMass. This is the full redistribution mass. Internally the class figures out what actually gets re-redistributed.

void EBCoarToCoarRedist::resetWeights ( const LevelData< EBCellFAB > &  a_modifier,
const int &  a_ivar 

void EBCoarToCoarRedist::redistribute ( LevelData< EBCellFAB > &  a_coarSolution,
const Interval a_variables 

Reredistribute the data contained in the internal buffers.

bool EBCoarToCoarRedist::isDefined (  )  const

void EBCoarToCoarRedist::setDefaultValues (  )  [protected]

void EBCoarToCoarRedist::defineDataHolders (  )  [protected]

void EBCoarToCoarRedist::operator= ( const EBCoarToCoarRedist  )  [inline, private]

References MayDay::Error().

Friends And Related Function Documentation

friend class EBFluxRegister [friend]

Member Data Documentation

int EBCoarToCoarRedist::m_nComp [protected]

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

Generated on Tue Apr 14 14:23:10 2009 for Chombo + EB by  doxygen 1.5.5