EBPWQuadFillPatch Class Reference

#include <EBPWQuadFillPatch.H>

Collaboration diagram for EBPWQuadFillPatch:

Collaboration graph
[legend]

List of all members.


Detailed Description

Fills one layer of fine level ghost cells by piecewise quadratic interpolation from the coarse level.

Public Member Functions

 EBPWQuadFillPatch ()
 ~EBPWQuadFillPatch ()
 EBPWQuadFillPatch (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 int &a_radius)
void define (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 int &a_radius, const EBIndexSpace *const a_eb=Chombo_EBIS::instance())
bool isDefined () const
void interpolate (LevelData< EBCellFAB > &a_fineData, const LevelData< EBCellFAB > &a_coarDataOld, const LevelData< EBCellFAB > &a_coarDataNew, const Real &a_coarTimeOld, const Real &a_coarTimeNew, const Real &a_fineTime, const Interval &a_variables)

Protected Member Functions

void interpolateFAB (EBCellFAB &a_fine, const EBCellFAB &a_coarOld, const EBCellFAB &a_coarNew, const Real &a_coarTimeOld, const Real &a_coarTimeNew, const Real &a_fineTime, const DataIndex &a_datInd, const Interval &a_variables) const
void makeStencils ()
void setDefaultValues ()
bool extractFromSten (Real &a_value, const VoFStencil &a_vofsten, const EBCellFAB &a_coarData, const int &ivar) const
Real computeDMinMod (const BaseIVFAB< VoFStencil > &a_lostenBF, const BaseIVFAB< VoFStencil > &a_histenBF, const VolIndex &a_coarVoF, const EBCellFAB &a_coarData, const int &ivar, const IntVectSet &loInterpSet, const IntVectSet &hiInterpSet, const IntVectSet &ceInterpSet) const

Protected Attributes

bool m_isDefined
ProblemDomain m_coarDomain
DisjointBoxLayout m_coarsenedFineGrids
DisjointBoxLayout m_fineGrids
DisjointBoxLayout m_coarGrids
EBISLayout m_coarsenedFineEBISL
EBISLayout m_fineEBISL
LevelData< EBCellFABm_coarsenedFineData
LevelData< EBCellFABm_coarOnFDataOld
LevelData< EBCellFABm_coarOnFDataNew
int m_refRat
int m_nComp
int m_radius
int m_coarGhostRad
LayoutData< IntVectSetm_irregRegionsFine
LayoutData< BaseIVFAB
< VoFStencil > > 
m_hiStencils [SpaceDim]
LayoutData< BaseIVFAB
< VoFStencil > > 
m_loStencils [SpaceDim]
LayoutData< IntVectSetm_coarCeInterp [SpaceDim]
LayoutData< IntVectSetm_coarLoInterp [SpaceDim]
LayoutData< IntVectSetm_coarHiInterp [SpaceDim]
CornerCopier m_cornerCopier

Private Member Functions

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

Constructor & Destructor Documentation

EBPWQuadFillPatch::EBPWQuadFillPatch (  ) 

Default constructor. User must subsequently call define().

EBPWQuadFillPatch::~EBPWQuadFillPatch (  ) 

EBPWQuadFillPatch::EBPWQuadFillPatch ( 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 int &  a_radius 
)

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

{ 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.\ radius: the total number of ghost cells filled.

EBPWQuadFillPatch::EBPWQuadFillPatch ( const EBPWQuadFillPatch ebcin  )  [inline, private]

References MayDay::Error().


Member Function Documentation

void EBPWQuadFillPatch::define ( 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 int &  a_radius,
const EBIndexSpace *const   a_eb = Chombo_EBIS::instance() 
)

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. radius: the total number of ghost cells filled.

bool EBPWQuadFillPatch::isDefined (  )  const

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

void EBPWQuadFillPatch::interpolate ( LevelData< EBCellFAB > &  a_fineData,
const LevelData< EBCellFAB > &  a_coarDataOld,
const LevelData< EBCellFAB > &  a_coarDataNew,
const Real a_coarTimeOld,
const Real a_coarTimeNew,
const Real a_fineTime,
const Interval a_variables 
)

Interpolate the fine data from the coarse data over the intersection of the fine layout with the refined coarse layout. \ { Arguments:}\ coarDataOld: The data over the coarse layout at coarse time old.\ coarDatanew: The data over the coarse layout at coarse time new.\ fineData: The data over the fine layout. \ Error occurs unless coarTimeOld <= fineTime <= coarTimeNew \ Fine and coarse data must have the same number of variables.\ variables: The variables to interpolate. Those not in this range will be left alone. This range of variables must be in both the coarse and fine data.

void EBPWQuadFillPatch::interpolateFAB ( EBCellFAB a_fine,
const EBCellFAB a_coarOld,
const EBCellFAB a_coarNew,
const Real a_coarTimeOld,
const Real a_coarTimeNew,
const Real a_fineTime,
const DataIndex a_datInd,
const Interval a_variables 
) const [protected]

void EBPWQuadFillPatch::makeStencils (  )  [protected]

void EBPWQuadFillPatch::setDefaultValues (  )  [protected]

bool EBPWQuadFillPatch::extractFromSten ( Real a_value,
const VoFStencil a_vofsten,
const EBCellFAB a_coarData,
const int &  ivar 
) const [protected]

Real EBPWQuadFillPatch::computeDMinMod ( const BaseIVFAB< VoFStencil > &  a_lostenBF,
const BaseIVFAB< VoFStencil > &  a_histenBF,
const VolIndex a_coarVoF,
const EBCellFAB a_coarData,
const int &  ivar,
const IntVectSet loInterpSet,
const IntVectSet hiInterpSet,
const IntVectSet ceInterpSet 
) const [protected]

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

References MayDay::Error().


Member Data Documentation

int EBPWQuadFillPatch::m_refRat [protected]

int EBPWQuadFillPatch::m_nComp [protected]

int EBPWQuadFillPatch::m_radius [protected]


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

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