|
| ~EBPoissonOp () |
|
| EBPoissonOp () |
|
| EBPoissonOp (const EBLevelGrid &a_eblg, const EBLevelGrid &a_eblgCoarMG, const RefCountedPtr< BaseDomainBC > &a_domainBC, const RefCountedPtr< BaseEBBC > &a_ebBC, const RealVect &a_dx, const RealVect &a_origin, const bool &a_hasMGObjects, const int &a_numPreCondIters, const int &a_relaxType, const int &a_orderEB, const Real &a_alpha, const Real &a_beta, const IntVect &a_ghostCellsPhi, const IntVect &a_ghostCellsRHS) |
|
virtual void | residual (LevelData< EBCellFAB > &a_residual, const LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > &a_rhs, bool a_homogeneousPhysBC=false) |
|
virtual void | preCond (LevelData< EBCellFAB > &a_opPhi, const LevelData< EBCellFAB > &a_phi) |
|
virtual void | GSColorAllRegular (LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > &a_rhs, const IntVect &a_color, const Real &a_weight, const bool &a_homogeneousPhysBC) |
|
virtual void | GSColorAllIrregular (LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > &a_rhs, const IntVect &a_color, const bool &a_homogeneousPhysBC, int icolor) |
|
virtual void | applyOp (LevelData< EBCellFAB > &a_opPhi, const LevelData< EBCellFAB > &a_phi, bool a_homogeneousPhysBC, DataIterator &a_dit, bool do_exchange=true) |
|
virtual void | applyOp (LevelData< EBCellFAB > &a_opPhi, const LevelData< EBCellFAB > &a_phi, bool a_homogeneousPhysBC) |
|
virtual void | create (LevelData< EBCellFAB > &a_lhs, const LevelData< EBCellFAB > &a_rhs) |
|
virtual void | assign (LevelData< EBCellFAB > &a_lhs, const LevelData< EBCellFAB > &a_rhs) |
|
virtual Real | dotProduct (const LevelData< EBCellFAB > &a_1, const LevelData< EBCellFAB > &a_2) |
|
virtual void | incr (LevelData< EBCellFAB > &a_lhs, const LevelData< EBCellFAB > &a_x, Real a_scale) |
|
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 | scale (LevelData< EBCellFAB > &a_lhs, const Real &a_scale) |
|
virtual Real | norm (const LevelData< EBCellFAB > &a_rhs, int a_ord) |
|
virtual void | setToZero (LevelData< EBCellFAB > &a_lhs) |
|
virtual void | setVal (LevelData< EBCellFAB > &a_lhs, const Real &a_value) |
|
virtual void | createCoarser (LevelData< EBCellFAB > &a_coarse, const LevelData< EBCellFAB > &a_fine, bool a_ghosted) |
|
virtual void | relax (LevelData< EBCellFAB > &a_e, const LevelData< EBCellFAB > &a_residual, int a_iterations) |
|
virtual void | restrictResidual (LevelData< EBCellFAB > &a_resCoarse, LevelData< EBCellFAB > &a_phiFine, const LevelData< EBCellFAB > &a_rhsFine) |
|
virtual void | prolongIncrement (LevelData< EBCellFAB > &a_phiThisLevel, const LevelData< EBCellFAB > &a_correctCoarse) |
|
void | levelMulticolorGS (LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > &a_rhs) |
|
void | colorGS (LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > &a_rhs, const IntVect &color, int icolor) |
|
| MGLevelOp () |
| Constructor. More...
|
|
virtual | ~MGLevelOp () |
| Destructor. More...
|
|
virtual void | relaxNF (LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > *a_phiCoarse, const LevelData< EBCellFAB > &a_rhs, int a_iterations) |
| specialized no-fine relax function, useful for full-multigrid schemes, defaults to regular relax More...
|
|
virtual void | restrictResidual (LevelData< EBCellFAB > &a_resCoarse, LevelData< EBCellFAB > &a_phiFine, const LevelData< EBCellFAB > *a_phiCoarse, const LevelData< EBCellFAB > &a_rhsFine, bool homogeneous) |
| full-multigrid version of restrictResidual, useful for FAS-type schemes. Defaults to standard restriction More...
|
|
virtual void | restrictR (LevelData< EBCellFAB > &a_phiCoarse, const LevelData< EBCellFAB > &a_phiFine) |
| simple restriction function More...
|
|
void | addObserver (MGLevelOpObserver< LevelData< EBCellFAB > > *a_observer) |
|
virtual void | applyOpMg (LevelData< EBCellFAB > &a_lhs, LevelData< EBCellFAB > &a_phi, LevelData< EBCellFAB > *a_phiCoarse, bool a_homogeneous) |
| Apply an operator. More...
|
|
virtual void | residualNF (LevelData< EBCellFAB > &a_lhs, LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > *a_phiCoarse, const LevelData< EBCellFAB > &a_rhs, bool a_homogeneous=false) |
|
void | removeObserver (MGLevelOpObserver< LevelData< EBCellFAB > > *a_observer) |
|
void | addCoarserObserver (MGLevelOp< LevelData< EBCellFAB > > *a_operator, int a_coarseningFactor) |
|
void | notifyObserversOfChange () |
| This should be called whenever the operator's data is updated. More...
|
|
virtual void | finerOperatorChanged (const MGLevelOp< LevelData< EBCellFAB > > &a_operator, int a_coarseningFactor) |
|
int | numObservers () const |
| Returns the number of objects observing this operator. More...
|
|
virtual | ~LinearOp () |
|
virtual void | clear (LevelData< EBCellFAB > &a_lhs) |
|
virtual void | assignLocal (LevelData< EBCellFAB > &a_lhs, const LevelData< EBCellFAB > &a_rhs) |
|
virtual void | mDotProduct (const LevelData< EBCellFAB > &a_1, const int a_sz, const LevelData< EBCellFAB >a_2[], Real a_mdots[]) |
|
virtual Real | dx () const |
|
virtual void | write (const LevelData< EBCellFAB > *a, const char *filename) |
|
| MGLevelOpObserver () |
| Base level Constructor. Called by all subclasses. More...
|
|
virtual | ~MGLevelOpObserver () |
| Destructor. More...
|
|
virtual void | operatorChanged (const MGLevelOp< LevelData< EBCellFAB > > &a_operator) |
|
void | setObservee (MGLevelOp< LevelData< EBCellFAB > > *a_observee) |
|
void | clearObservee () |
|
|
void | getOpVoFStencil (VoFStencil &a_stencil, const EBISBox &a_ebisbox, const VolIndex &a_vof) |
|
void | getOpVoFStencil (VoFStencil &a_stencil, const int &a_dir, const Vector< VolIndex > &a_allMonotoneVoFs, const EBISBox &a_ebisbox, const VolIndex &a_vof, const bool &a_lowOrder) |
|
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) |
|
void | levelJacobi (LevelData< EBCellFAB > &a_phi, const LevelData< EBCellFAB > &a_rhs) |
|
void | applyOpRegular (int idir, Box *a_loBox, Box *a_hiBox, int *a_hasLo, int *a_hasHi, Box &a_curOpPhiBox, Box &a_curPhiBox, int a_nComps, BaseFab< Real > &a_curOpPhiFAB, const BaseFab< Real > &a_curPhiFAB, bool a_homogeneousPhysBC, const DataIndex &a_dit, const Real &a_beta) |
|
void | applyOpRegularAllDirs (Box *a_loBox, Box *a_hiBox, int *a_hasLo, int *a_hasHi, Box &a_curOpPhiBox, Box &a_curPhiBox, int a_nComps, BaseFab< Real > &a_curOpPhiFAB, const BaseFab< Real > &a_curPhiFAB, bool a_homogeneousPhysBC, const DataIndex &a_dit, const Real &a_beta) |
|
void | applyDomainFlux (Box *a_loBox, Box *a_hiBox, int *a_hasLo, int *a_hasHi, Box &a_curPhiBox, int a_nComps, BaseFab< Real > &a_phiFAB, bool a_homogeneousPhysBC, const DataIndex &a_dit, const Real &a_beta) |
|
void | getInvDiagRHS (LevelData< EBCellFAB > &a_lhs, const LevelData< EBCellFAB > &a_rhs) |
|
| EBPoissonOp (const EBPoissonOp &a_opin) |
|
void | operator= (const EBPoissonOp &a_opin) |
|
Operator to solve (alpha + beta lapl)phi = rhs. This follows the AMRLevelOp interface.