42 #include "NamespaceHeader.H" 61 bool a_kappaWeighted);
77 const Box& a_ghostedBox,
108 bool a_homogeneousBC,
145 const Real & a_dxCoar,
146 const int& a_refToFine,
147 const int& a_refToCoar,
148 const bool& a_hasFine,
149 const bool& a_hasCoar,
150 const bool& a_hasMGObjects,
151 const bool& a_layoutChanged,
157 const IntVect& a_ghostCellsPhi,
158 const IntVect& a_ghostCellsRHS,
159 const int& a_relaxType);
169 bool a_homogeneousPhysBC=
false);
185 const bool& a_homogeneousPhysBC,
186 const bool& a_homogeneousCFBC);
198 bool a_homogeneousPhysBC);
209 const int& a_refRat);
249 const Real& a_scale);
324 bool a_homogeneousBC,
333 bool a_homogeneousBC);
342 bool a_homogeneousBC,
350 bool a_homogeneousBC);
394 const bool& a_homogeneous,
399 const bool& a_homogeneous,
494 const Box& a_faceBox,
503 bool a_homogeneousCFBC);
514 const bool& a_lowOrder);
524 const bool& a_lowOrder);
549 #include "NamespaceFooter.H" LayoutData< BaseIVFAB< Real > > m_betaDiagWeight
Definition: slowEBCO.H:432
Real m_beta
Definition: slowEBCO.H:428
virtual void setAlphaAndBeta(const Real &a_alpha, const Real &a_beta)
RefCountedPtr< ConductivityBaseDomainBC > m_domainBC
Definition: slowEBCO.H:417
LayoutData< VoFIterator > m_vofIterDomLo[CH_SPACEDIM]
Definition: slowEBCO.H:454
virtual void relaxGauSai(LevelData< EBCellFAB > &a_e, const LevelData< EBCellFAB > &a_residual, int a_iterations)
EBLevelGrid m_eblgCoarMG
Definition: slowEBCO.H:414
EBLevelGrid m_eblgFine
Definition: slowEBCO.H:412
virtual void prolongIncrement(LevelData< EBCellFAB > &a_phiThisLevel, const LevelData< EBCellFAB > &a_correctCoarse)
void reflux(LevelData< EBCellFAB > &a_residual, const LevelData< EBCellFAB > &a_phiFine, const LevelData< EBCellFAB > &a_phi, AMRLevelOp< LevelData< EBCellFAB > > *a_finerOp)
EBFastFR-A class to encapsulate a levels worth of flux registers.
Definition: EBFastFR.H:39
void incrementFRCoar(EBFastFR &a_fluxReg, const LevelData< EBCellFAB > &a_phiFine, const LevelData< EBCellFAB > &a_phi)
LayoutData< RefCountedPtr< EBStencil > > m_opEBStencil
Definition: slowEBCO.H:445
bool m_hasCoar
Definition: slowEBCO.H:437
int m_refToFine
Definition: slowEBCO.H:433
#define CH_SPACEDIM
Definition: SPACE.H:52
void levelJacobi(LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > &a_rhs)
Definition: slowEBCO.H:49
LayoutData< VoFIterator > m_vofIterDomHi[CH_SPACEDIM]
Definition: slowEBCO.H:455
A class to facilitate interaction with physical boundary conditions.
Definition: ProblemDomain.H:130
EBISLayout m_ebislCoarMG
Definition: slowEBCO.H:476
Definition: FaceIndex.H:28
RefCountedPtr< EBQuadCFInterp > m_quadCFIWithCoar
Definition: slowEBCO.H:409
Data that maintains a one-to-one mapping of T to the boxes in a BoxLayout.
Definition: LayoutData.H:46
EBLevelGrid m_eblgCoar
Definition: slowEBCO.H:413
virtual void AMRUpdateResidual(LevelData< EBCellFAB > &a_residual, const LevelData< EBCellFAB > &a_correction, const LevelData< EBCellFAB > &a_coarseCorrection)
virtual Real norm(const LevelData< EBCellFAB > &a_rhs, int a_ord)
EBMGInterp m_ebInterp
Definition: slowEBCO.H:442
Definition: EBLevelGrid.H:30
slowEBCO(const slowEBCO &a_opin)
Definition: slowEBCO.H:537
virtual void AMROperatorNF(LevelData< EBCellFAB > &a_LofPhi, const LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > &a_phiCoarse, bool a_homogeneousBC)
virtual void incr(LevelData< EBCellFAB > &a_lhs, const LevelData< EBCellFAB > &a_x, Real a_scale)
Real m_dxFine
Definition: slowEBCO.H:420
Real m_alpha
Definition: slowEBCO.H:427
virtual void AMRProlong(LevelData< EBCellFAB > &a_correction, const LevelData< EBCellFAB > &a_coarseCorrection)
void getOpVoFStencil(VoFStencil &a_stencil, const EBISBox &a_ebisbox, const VolIndex &a_vof)
virtual void createCoarsened(LevelData< EBCellFAB > &a_lhs, const LevelData< EBCellFAB > &a_rhs, const int &a_refRat)
virtual void setVal(LevelData< EBCellFAB > &a_lhs, const Real &a_value)
EBMGAverage m_ebAverage
Definition: slowEBCO.H:440
Definition: EBFaceFAB.H:28
virtual void AMRRestrict(LevelData< EBCellFAB > &a_resCoarse, const LevelData< EBCellFAB > &a_residual, const LevelData< EBCellFAB > &a_correction, const LevelData< EBCellFAB > &a_coarseCorrection)
void gsrbColor(LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > &a_lph, const LevelData< EBCellFAB > &a_rhs, const IntVect &a_color)
virtual void fillGrad(const LevelData< EBCellFAB > &a_phi)
a leveltgaism
Definition: slowEBCO.H:65
Piecewise constant interpolation.
Definition: EBMGInterp.H:33
virtual void axby(LevelData< EBCellFAB > &a_lhs, const LevelData< EBCellFAB > &a_x, const LevelData< EBCellFAB > &a_y, Real a_a, Real a_b)
virtual void applyOpNoBoundary(LevelData< EBCellFAB > &a_opPhi, const LevelData< EBCellFAB > &a_phi)
virtual function called by LevelTGA
void applyOpIrregular(EBCellFAB &a_lhs, const EBCellFAB &a_phi, const bool &a_homogeneous, const DataIndex &a_datInd)
const int SpaceDim
Definition: SPACE.H:39
Definition: AMRMultiGrid.H:35
virtual void getFlux(EBFluxFAB &a_flux, const LevelData< EBCellFAB > &a_data, const Box &a_grid, const DataIndex &a_dit, Real a_scale)
a leveltgaism
int m_relaxType
Definition: slowEBCO.H:405
void AMROperatorNC(LevelData< EBCellFAB > &a_LofPhi, const LevelData< EBCellFAB > &a_phiFine, const LevelData< EBCellFAB > &a_phi, bool a_homogeneousBC, AMRLevelOp< LevelData< EBCellFAB > > *a_finerOp)
Real m_dx
Definition: slowEBCO.H:421
VoF-centered stencil.
Definition: Stencils.H:59
Vector< IntVect > m_colors
Definition: slowEBCO.H:479
const IntVect m_ghostCellsRHS
Definition: slowEBCO.H:407
void getFaceCenteredFluxStencil(VoFStencil &a_fluxStencil, const FaceIndex &a_face, const DataIndex &a_dit)
const IntVect m_ghostCellsPhi
Definition: slowEBCO.H:406
virtual int refToCoarser()
void AMRResidualNC(LevelData< EBCellFAB > &a_residual, const LevelData< EBCellFAB > &a_phiFine, const LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > &a_rhs, bool a_homogeneousBC, AMRLevelOp< LevelData< EBCellFAB > > *a_finerOp)
A EBFaceFAB-like container for edge-centered fluxes.
Definition: EBFluxFAB.H:25
void applyHomogeneousCFBCs(LevelData< EBCellFAB > &a_phi)
void incrOpRegularDir(EBCellFAB &a_lhs, const EBCellFAB &a_phi, const bool &a_homogeneous, const int &a_dir, const DataIndex &a_datInd)
Definition: EBCellFAB.H:29
virtual void setToZero(LevelData< EBCellFAB > &a_lhs)
LayoutData< VoFIterator > m_vofIterMulti
Definition: slowEBCO.H:452
double Real
Definition: REAL.H:33
EBLevelGrid m_eblg
Definition: slowEBCO.H:411
Real AMRNorm(const LevelData< EBCellFAB > &a_coarResid, const LevelData< EBCellFAB > &a_fineResid, const int &a_refRat, const int &a_ord)
virtual void preCond(LevelData< EBCellFAB > &a_opPhi, const LevelData< EBCellFAB > &a_phi)
virtual ~slowEBCO()
Definition: slowEBCO.H:86
A BoxLayout that has a concept of disjointedness.
Definition: DisjointBoxLayout.H:31
Real m_dxCoar
Definition: slowEBCO.H:422
virtual void scale(LevelData< EBCellFAB > &a_lhs, const Real &a_scale)
RefCountedPtr< LevelData< EBFluxFAB > > m_bcoef
Definition: slowEBCO.H:424
LoHiSide
Definition: LoHiSide.H:27
bool m_hasInterpAve
Definition: slowEBCO.H:436
int m_refToCoar
Definition: slowEBCO.H:434
LayoutData< BaseIVFAB< Real > > m_alphaDiagWeight
Definition: slowEBCO.H:430
void getDivFStencil(VoFStencil &a_vofStencil, const VolIndex &a_vof, const DataIndex &a_dit)
EBLevelGrid m_eblgCoarsenedFine
Definition: slowEBCO.H:415
static void Error(const char *const a_msg=m_nullString, int m_exitCode=CH_DEFAULT_ERROR_CODE)
Print out message to cerr and exit with the specified exit code.
virtual void restrictResidual(LevelData< EBCellFAB > &a_resCoarse, LevelData< EBCellFAB > &a_phiFine, const LevelData< EBCellFAB > &a_rhsFine)
void operator=(const slowEBCO &a_opin)
Definition: slowEBCO.H:542
DisjointBoxLayout m_dblCoarMG
Definition: slowEBCO.H:475
bool m_hasMGObjects
Definition: slowEBCO.H:470
virtual void AMRResidual(LevelData< EBCellFAB > &a_residual, const LevelData< EBCellFAB > &a_phiFine, const LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > &a_phiCoarse, const LevelData< EBCellFAB > &a_rhs, bool a_homogeneousBC, AMRLevelOp< LevelData< EBCellFAB > > *a_finerOp)
virtual void createCoarser(LevelData< EBCellFAB > &a_coarse, const LevelData< EBCellFAB > &a_fine, bool a_ghosted)
virtual void diagonalScale(LevelData< EBCellFAB > &a_rhs, bool a_kappaWeighted)
void getOpFaceStencil(VoFStencil &a_stencil, const Vector< VolIndex > &a_allMonotoneVofs, const EBISBox &a_ebisbox, const VolIndex &a_vof, int a_dir, const Side::LoHiSide &a_side, const FaceIndex &a_face, const bool &a_lowOrder)
A Rectangular Domain on an Integer Lattice.
Definition: Box.H:465
void calculateRelaxationCoefficient()
virtual void relax(LevelData< EBCellFAB > &a_e, const LevelData< EBCellFAB > &a_residual, int a_iterations)
LayoutData< VoFIterator > m_vofIterIrreg
Definition: slowEBCO.H:451
Definition: DataIndex.H:112
static bool s_turnOffBCs
Definition: slowEBCO.H:403
void getFluxStencil(VoFStencil &a_fluxStencil, const FaceIndex &a_face, const DataIndex &a_dit)
LevelData< EBCellFAB > m_relCoef
Definition: slowEBCO.H:447
ProblemDomain m_domainCoarMG
Definition: slowEBCO.H:477
Piecewise constant interpolation.
Definition: EBMGAverage.H:31
virtual Real dotProduct(const LevelData< EBCellFAB > &a_1, const LevelData< EBCellFAB > &a_2)
LayoutData< CFIVS > m_hiCFIVS[SpaceDim]
Definition: slowEBCO.H:461
An integer Vector in SpaceDim-dimensional space.
Definition: CHArray.H:42
Definition: FArrayBox.H:44
RefCountedPtr< LevelData< BaseIVFAB< Real > > > m_bcoIrreg
Definition: slowEBCO.H:425
virtual void create(LevelData< EBCellFAB > &a_lhs, const LevelData< EBCellFAB > &a_rhs)
virtual void divideByIdentityCoef(LevelData< EBCellFAB > &a_rhs)
slowEBCO()
Definition: slowEBCO.H:90
Volume of Fluid Index.
Definition: VolIndex.H:31
bool m_layoutChanged
Definition: slowEBCO.H:471
virtual void residual(LevelData< EBCellFAB > &a_residual, const LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > &a_rhs, bool a_homogeneousPhysBC=false)
void applyCFBCs(LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > *const a_phiCoarse, bool a_homogeneousCFBC)
EBMGInterp m_ebInterpMG
Definition: slowEBCO.H:474
virtual void assign(LevelData< EBCellFAB > &a_lhs, const LevelData< EBCellFAB > &a_rhs)
virtual void applyOp(LevelData< EBCellFAB > &a_opPhi, const LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > *const a_phiCoarse, const bool &a_homogeneousPhysBC, const bool &a_homogeneousCFBC)
Definition: EBISLayout.H:39
void incrementFRFine(EBFastFR &a_fluxReg, const LevelData< EBCellFAB > &a_phiFine, const LevelData< EBCellFAB > &a_phi, AMRLevelOp< LevelData< EBCellFAB > > *a_finerOp)
virtual void relaxPoiJac(LevelData< EBCellFAB > &a_e, const LevelData< EBCellFAB > &a_residual, int a_iterations)
virtual void AMROperator(LevelData< EBCellFAB > &a_LofPhi, const LevelData< EBCellFAB > &a_phiFine, const LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > &a_phiCoarse, bool a_homogeneousBC, AMRLevelOp< LevelData< EBCellFAB > > *a_finerOp)
EBMGAverage m_ebAverageMG
Definition: slowEBCO.H:473
RefCountedPtr< ConductivityBaseEBBC > m_ebBC
Definition: slowEBCO.H:418
virtual void AMRResidualNF(LevelData< EBCellFAB > &a_residual, const LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > &a_phiCoarse, const LevelData< EBCellFAB > &a_rhs, bool a_homogeneousBC)
EBFastFR m_fastFR
Definition: slowEBCO.H:464
LayoutData< CFIVS > m_loCFIVS[SpaceDim]
Definition: slowEBCO.H:460
bool m_hasFine
Definition: slowEBCO.H:435
RefCountedPtr< LevelData< EBCellFAB > > m_acoef
Definition: slowEBCO.H:423