13#ifndef CD_EBMGPROLONG_H
14#define CD_EBMGPROLONG_H
17#include <EBLevelGrid.H>
18#include <ProblemDomain.H>
23#include <CD_NamespaceHeader.H>
44 EBMGProlong(
const EBLevelGrid& a_eblgFine,
const EBLevelGrid& a_eblgCoar,
const int& a_refRat)
noexcept;
58 define(
const EBLevelGrid& a_eblgFine,
const EBLevelGrid& a_eblgCoar,
const int& a_refRat)
noexcept;
68 const LevelData<EBCellFAB>& a_coarData,
69 const Interval a_variables)
const noexcept;
114#include <CD_NamespaceFooter.H>
Class for prolongation of multigrid residual onto a finer grid.
Definition CD_EBMGProlong.H:31
EBLevelGrid m_eblgCoFi
Coarsened fine grids.
Definition CD_EBMGProlong.H:95
virtual void define(const EBLevelGrid &a_eblgFine, const EBLevelGrid &a_eblgCoar, const int &a_refRat) noexcept
Define function.
Definition CD_EBMGProlong.cpp:42
EBLevelGrid m_eblgCoar
Coarse grid.
Definition CD_EBMGProlong.H:90
Copier m_copier
Copier for making copying from eblgCoar to eblgCoFi go faster.
Definition CD_EBMGProlong.H:100
virtual ~EBMGProlong() noexcept
Destructor.
Definition CD_EBMGProlong.cpp:36
EBLevelGrid m_eblgFine
Fine grid.
Definition CD_EBMGProlong.H:85
bool m_isDefined
Defined or not.
Definition CD_EBMGProlong.H:75
LayoutData< BaseIVFAB< VoFStencil > > m_prolongStencils
Prolongion stencils near the EB.
Definition CD_EBMGProlong.H:106
int m_refRat
Refinement ratio.
Definition CD_EBMGProlong.H:80
LayoutData< VoFIterator > m_vofitFine
Iterator for iterating over cut-cells on the fine level.
Definition CD_EBMGProlong.H:111
virtual void prolongResidual(LevelData< EBCellFAB > &a_fineData, const LevelData< EBCellFAB > &a_coarData, const Interval a_variables) const noexcept
Prolong residual onto the coarse grid.
Definition CD_EBMGProlong.cpp:107
EBMGProlong() noexcept
Default constructor. User must subsequently call the define function.
Definition CD_EBMGProlong.cpp:23