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);
358 bool a_skip_res =
false );
395 const bool& a_homogeneous,
400 const bool& a_homogeneous,
496 const Box& a_faceBox,
505 bool a_homogeneousCFBC);
516 const bool& a_lowOrder);
526 const bool& a_lowOrder);
551 #include "NamespaceFooter.H" LayoutData< BaseIVFAB< Real > > m_betaDiagWeight
Definition: slowEBCO.H:433
Real m_beta
Definition: slowEBCO.H:429
virtual void setAlphaAndBeta(const Real &a_alpha, const Real &a_beta)
RefCountedPtr< ConductivityBaseDomainBC > m_domainBC
Definition: slowEBCO.H:418
LayoutData< VoFIterator > m_vofIterDomLo[CH_SPACEDIM]
Definition: slowEBCO.H:456
virtual void relaxGauSai(LevelData< EBCellFAB > &a_e, const LevelData< EBCellFAB > &a_residual, int a_iterations)
EBLevelGrid m_eblgCoarMG
Definition: slowEBCO.H:415
EBLevelGrid m_eblgFine
Definition: slowEBCO.H:413
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)
bool m_hasCoar
Definition: slowEBCO.H:438
int m_refToFine
Definition: slowEBCO.H:434
#define CH_SPACEDIM
Definition: SPACE.H:51
void levelJacobi(LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > &a_rhs)
Definition: slowEBCO.H:49
LayoutData< VoFIterator > m_vofIterDomHi[CH_SPACEDIM]
Definition: slowEBCO.H:457
A class to facilitate interaction with physical boundary conditions.
Definition: ProblemDomain.H:141
EBISLayout m_ebislCoarMG
Definition: slowEBCO.H:478
Definition: FaceIndex.H:28
RefCountedPtr< EBQuadCFInterp > m_quadCFIWithCoar
Definition: slowEBCO.H:410
Data that maintains a one-to-one mapping of T to the boxes in a BoxLayout.
Definition: BoxLayout.H:26
EBLevelGrid m_eblgCoar
Definition: slowEBCO.H:414
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:443
Definition: EBLevelGrid.H:30
slowEBCO(const slowEBCO &a_opin)
Definition: slowEBCO.H:539
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:421
Real m_alpha
Definition: slowEBCO.H:428
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:441
Definition: EBFaceFAB.H:28
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:38
Definition: AMRMultiGrid.H:39
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:406
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:422
VoF-centered stencil.
Definition: Stencils.H:60
Vector< IntVect > m_colors
Definition: slowEBCO.H:481
const IntVect m_ghostCellsRHS
Definition: slowEBCO.H:408
void getFaceCenteredFluxStencil(VoFStencil &a_fluxStencil, const FaceIndex &a_face, const DataIndex &a_dit)
const IntVect m_ghostCellsPhi
Definition: slowEBCO.H:407
virtual int refToCoarser()
virtual void AMRRestrict(LevelData< EBCellFAB > &a_resCoarse, const LevelData< EBCellFAB > &a_residual, const LevelData< EBCellFAB > &a_correction, const LevelData< EBCellFAB > &a_coarseCorrection, bool a_skip_res=false)
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:454
double Real
Definition: REAL.H:33
EBLevelGrid m_eblg
Definition: slowEBCO.H:412
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:30
Real m_dxCoar
Definition: slowEBCO.H:423
virtual void scale(LevelData< EBCellFAB > &a_lhs, const Real &a_scale)
RefCountedPtr< LevelData< EBFluxFAB > > m_bcoef
Definition: slowEBCO.H:425
LoHiSide
Definition: LoHiSide.H:27
bool m_hasInterpAve
Definition: slowEBCO.H:437
int m_refToCoar
Definition: slowEBCO.H:435
LayoutData< BaseIVFAB< Real > > m_alphaDiagWeight
Definition: slowEBCO.H:431
void getDivFStencil(VoFStencil &a_vofStencil, const VolIndex &a_vof, const DataIndex &a_dit)
EBLevelGrid m_eblgCoarsenedFine
Definition: slowEBCO.H:416
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:544
DisjointBoxLayout m_dblCoarMG
Definition: slowEBCO.H:477
bool m_hasMGObjects
Definition: slowEBCO.H:472
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:453
Definition: DataIndex.H:112
LayoutData< BaseIVFAB< VoFStencil > > m_opStencil
Definition: slowEBCO.H:447
static bool s_turnOffBCs
Definition: slowEBCO.H:404
void getFluxStencil(VoFStencil &a_fluxStencil, const FaceIndex &a_face, const DataIndex &a_dit)
LevelData< EBCellFAB > m_relCoef
Definition: slowEBCO.H:449
ProblemDomain m_domainCoarMG
Definition: slowEBCO.H:479
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:463
An integer Vector in SpaceDim-dimensional space.
Definition: CHArray.H:42
Definition: FArrayBox.H:45
RefCountedPtr< LevelData< BaseIVFAB< Real > > > m_bcoIrreg
Definition: slowEBCO.H:426
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:473
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:476
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:475
RefCountedPtr< ConductivityBaseEBBC > m_ebBC
Definition: slowEBCO.H:419
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:466
LayoutData< CFIVS > m_loCFIVS[SpaceDim]
Definition: slowEBCO.H:462
bool m_hasFine
Definition: slowEBCO.H:436
RefCountedPtr< LevelData< EBCellFAB > > m_acoef
Definition: slowEBCO.H:424