chombo-discharge
Loading...
Searching...
No Matches
CD_EBMGRestrict.H
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2021-2026 SINTEF Energy Research
3 *
4 * SPDX-License-Identifier: GPL-3.0-or-later
5 */
6
13#ifndef CD_EBMGRESTRICT_H
14#define CD_EBMGRESTRICT_H
15
16// Chombo includes
17#include <EBLevelGrid.H>
18#include <ProblemDomain.H>
19#include <LevelData.H>
20#include <EBCellFAB.H>
21
22// Our includes
23#include <CD_NamespaceHeader.H>
24
31{
32public:
36 EBMGRestrict() noexcept;
37
44 EBMGRestrict(const EBLevelGrid& a_eblgFine, const EBLevelGrid& a_eblgCoar, const int& a_refRat) noexcept;
45
49 virtual ~EBMGRestrict() noexcept;
50
57 virtual void
58 define(const EBLevelGrid& a_eblgFine, const EBLevelGrid& a_eblgCoar, const int& a_refRat) noexcept;
59
68 virtual void
71 const Interval a_variables) const noexcept;
72
73protected:
78
83
88
93
98
103
108
113
119};
120
121#include <CD_NamespaceFooter.H>
122
123#endif
Class for restricting multigrid residual onto a coarser grid.
Definition CD_EBMGRestrict.H:31
EBLevelGrid m_eblgFine
Fine grid.
Definition CD_EBMGRestrict.H:92
Copier m_copier
Copier for making copying from the coarsened fine grids to the coarse grid go faster.
Definition CD_EBMGRestrict.H:107
IntVect m_ghostPhi
Number of ghost cells in data holders.
Definition CD_EBMGRestrict.H:87
bool m_isDefined
Defined or not.
Definition CD_EBMGRestrict.H:77
EBMGRestrict() noexcept
Default constructor. User must subsequently call the define function.
Definition CD_EBMGRestrict.cpp:23
virtual void define(const EBLevelGrid &a_eblgFine, const EBLevelGrid &a_eblgCoar, const int &a_refRat) noexcept
Define function.
Definition CD_EBMGRestrict.cpp:42
int m_refRat
Refinement ratio.
Definition CD_EBMGRestrict.H:82
LayoutData< VoFIterator > m_vofitCoar
Iterator for iterating over cut-cells on the coarse level.
Definition CD_EBMGRestrict.H:112
EBLevelGrid m_eblgCoar
Coarse grid.
Definition CD_EBMGRestrict.H:97
EBLevelGrid m_eblgCoFi
Coarsened fine grids.
Definition CD_EBMGRestrict.H:102
virtual ~EBMGRestrict() noexcept
Destructor.
Definition CD_EBMGRestrict.cpp:36
virtual void restrictResidual(LevelData< EBCellFAB > &a_coarData, const LevelData< EBCellFAB > &a_fineData, const Interval a_variables) const noexcept
Restrict residual onto the coarse grid.
Definition CD_EBMGRestrict.cpp:111
LayoutData< BaseIVFAB< VoFStencil > > m_restrictStencils
Restriction stencils near the EB.
Definition CD_EBMGRestrict.H:118
Base class for a tracer particle solver. This solver can advance particles in a pre-defined velocity ...
Definition CD_TracerParticleSolver.H:38