Class for prolongation of multigrid residual onto a finer grid.
More...
#include <CD_EBMGProlong.H>
|
|
| EBMGProlong () noexcept |
| | Default constructor. User must subsequently call the define function.
|
| |
| | EBMGProlong (const EBLevelGrid &a_eblgFine, const EBLevelGrid &a_eblgCoar, const int &a_refRat) noexcept |
| | Full constructor. Calls the define function.
|
| |
|
virtual | ~EBMGProlong () noexcept |
| | Destructor.
|
| |
| virtual void | define (const EBLevelGrid &a_eblgFine, const EBLevelGrid &a_eblgCoar, const int &a_refRat) noexcept |
| | Define function.
|
| |
| virtual void | prolongResidual (LevelData< EBCellFAB > &a_fineData, const LevelData< EBCellFAB > &a_coarData, const Interval a_variables) const noexcept |
| | Prolong residual onto the coarse grid.
|
| |
|
|
bool | m_isDefined |
| | Defined or not.
|
| |
|
int | m_refRat |
| | Refinement ratio.
|
| |
|
EBLevelGrid | m_eblgFine |
| | Fine grid.
|
| |
|
EBLevelGrid | m_eblgCoar |
| | Coarse grid.
|
| |
|
EBLevelGrid | m_eblgCoFi |
| | Coarsened fine grids.
|
| |
|
Copier | m_copier |
| | Copier for making copying from eblgCoar to eblgCoFi go faster.
|
| |
| LayoutData< BaseIVFAB< VoFStencil > > | m_prolongStencils |
| | Prolongion stencils near the EB.
|
| |
|
LayoutData< VoFIterator > | m_vofitFine |
| | Iterator for iterating over cut-cells on the fine level.
|
| |
Class for prolongation of multigrid residual onto a finer grid.
- Note
- This class only does constant prolongation. Using Chombos EBMGInterp with piecewise linear (bi/tri-linear) did not improve multigrid convergence.
◆ EBMGProlong()
| EBMGProlong::EBMGProlong |
( |
const EBLevelGrid & |
a_eblgFine, |
|
|
const EBLevelGrid & |
a_eblgCoar, |
|
|
const int & |
a_refRat |
|
) |
| |
|
noexcept |
Full constructor. Calls the define function.
- Parameters
-
| [in] | a_eblgFine | Fine level that we prolong to. |
| [in] | a_eblgCoar | Coarse level that we prolong from. |
| [in] | a_refRat | Refinement factor between levels. |
◆ define()
| void EBMGProlong::define |
( |
const EBLevelGrid & |
a_eblgFine, |
|
|
const EBLevelGrid & |
a_eblgCoar, |
|
|
const int & |
a_refRat |
|
) |
| |
|
virtualnoexcept |
Define function.
- Parameters
-
| [in] | a_eblgFine | Fine level that we prolong to. |
| [in] | a_eblgCoar | Coarse level that we prolong from. |
| [in] | a_refRat | Refinement factor between levels. |
◆ prolongResidual()
| void EBMGProlong::prolongResidual |
( |
LevelData< EBCellFAB > & |
a_fineData, |
|
|
const LevelData< EBCellFAB > & |
a_coarData, |
|
|
const Interval |
a_variables |
|
) |
| const |
|
virtualnoexcept |
Prolong residual onto the coarse grid.
- Parameters
-
| [in,out] | a_fineData | Fine-grid residual. |
| [in] | a_coarData | Coarse-grid residual |
| [in] | a_variables | Variables to prolong. |
◆ m_prolongStencils
| LayoutData<BaseIVFAB<VoFStencil> > EBMGProlong::m_prolongStencils |
|
protected |
Prolongion stencils near the EB.
The stencils are defined on the fine grid but their vofs reach into the coarse grid.
The documentation for this class was generated from the following files: