1 #ifndef AMREX_EBFABFACTORY_H_
2 #define AMREX_EBFABFACTORY_H_
3 #include <AMReX_Config.H>
49 {
return m_ebdc->getMultiEBCellFlagFab(); }
64 return m_ebdc->getAreaFrac();
69 return m_ebdc->getFaceCent();
73 return m_ebdc->getEdgeCent();
86 [[nodiscard]]
bool hasEBInfo() const noexcept;
96 std::shared_ptr<EBDataCollection>
m_ebdc;
100 std::unique_ptr<EBFArrayBoxFactory>
106 std::unique_ptr<EBFArrayBoxFactory>
112 std::unique_ptr<EBFArrayBoxFactory>
#define AMREX_NODISCARD
Definition: AMReX_Extension.H:251
A collection of Boxes stored in an Array.
Definition: AMReX_BoxArray.H:549
Calculates the distribution of FABs to MPI processes.
Definition: AMReX_DistributionMapping.H:41
Definition: AMReX_EB2.H:26
Definition: AMReX_EB2_Level.H:33
Definition: AMReX_EBCellFlag.H:287
Definition: AMReX_EBFabFactory.H:22
EBSupport m_support
Definition: AMReX_EBFabFactory.H:94
AMREX_NODISCARD FArrayBox * create(const Box &box, int ncomps, const FabInfo &info, int box_index) const final
Definition: AMReX_EBFabFactory.cpp:27
std::shared_ptr< EBDataCollection > m_ebdc
Definition: AMReX_EBFabFactory.H:96
Array< const MultiCutFab *, AMREX_SPACEDIM > getFaceCent() const noexcept
Definition: AMReX_EBFabFactory.H:68
Geometry m_geom
Definition: AMReX_EBFabFactory.H:95
void destroy(FArrayBox *fab) const final
Definition: AMReX_EBFabFactory.cpp:57
const MultiCutFab & getBndryCent() const noexcept
Definition: AMReX_EBFabFactory.H:57
EB2::IndexSpace const * getEBIndexSpace() const noexcept
Definition: AMReX_EBFabFactory.cpp:84
Array< const MultiCutFab *, AMREX_SPACEDIM > getEdgeCent() const noexcept
Definition: AMReX_EBFabFactory.H:72
iMultiFab const * getCutCellMask() const noexcept
Definition: AMReX_EBFabFactory.H:90
bool isAllRegular() const noexcept
Definition: AMReX_EBFabFactory.cpp:78
const BoxArray & boxArray() const noexcept
Definition: AMReX_EBFabFactory.cpp:107
const Geometry & Geom() const noexcept
Definition: AMReX_EBFabFactory.H:84
EB2::Level const * getEBLevel() const noexcept
Definition: AMReX_EBFabFactory.H:78
Array< const MultiCutFab *, AMREX_SPACEDIM > getAreaFrac() const noexcept
Definition: AMReX_EBFabFactory.H:63
const MultiCutFab & getCentroid() const noexcept
Definition: AMReX_EBFabFactory.H:55
int maxCoarseningLevel() const noexcept
Definition: AMReX_EBFabFactory.cpp:90
const DistributionMapping & DistributionMap() const noexcept
Definition: AMReX_EBFabFactory.cpp:101
EB2::Level const * m_parent
Definition: AMReX_EBFabFactory.H:97
const MultiFab & getLevelSet() const noexcept
Definition: AMReX_EBFabFactory.H:51
const FabArray< EBCellFlagFab > & getMultiEBCellFlagFab() const noexcept
Definition: AMReX_EBFabFactory.H:48
EBFArrayBoxFactory()=delete
const MultiCutFab & getBndryNormal() const noexcept
Definition: AMReX_EBFabFactory.H:59
EBFArrayBoxFactory(EBFArrayBoxFactory &&) noexcept=default
const MultiFab & getVolFrac() const noexcept
Definition: AMReX_EBFabFactory.H:53
const MultiCutFab & getBndryArea() const noexcept
Definition: AMReX_EBFabFactory.H:61
AMREX_NODISCARD FArrayBox * create_alias(FArrayBox const &rhs, int scomp, int ncomp) const final
Definition: AMReX_EBFabFactory.cpp:43
bool hasEBInfo() const noexcept
Definition: AMReX_EBFabFactory.cpp:113
~EBFArrayBoxFactory() override=default
AMREX_NODISCARD EBFArrayBoxFactory * clone() const final
Definition: AMReX_EBFabFactory.cpp:72
EBFArrayBoxFactory(const EBFArrayBoxFactory &)=default
A Fortran Array of REALs.
Definition: AMReX_FArrayBox.H:229
An Array of FortranArrayBox(FAB)-like Objects.
Definition: AMReX_FabArray.H:344
Definition: AMReX_FabFactory.H:50
Rectangular problem domain geometry.
Definition: AMReX_Geometry.H:73
Definition: AMReX_MultiCutFab.H:81
A collection (stored as an array) of FArrayBox objects.
Definition: AMReX_MultiFab.H:38
Definition: AMReX_iMultiFab.H:32
Definition: AMReX_Amr.cpp:49
EBSupport
Definition: AMReX_EBSupport.H:7
std::unique_ptr< EBFArrayBoxFactory > makeEBFabFactory(const Geometry &a_geom, const BoxArray &a_ba, const DistributionMapping &a_dm, const Vector< int > &a_ngrow, EBSupport a_support)
Definition: AMReX_EBFabFactory.cpp:119
std::array< T, N > Array
Definition: AMReX_Array.H:24
Definition: AMReX_FabFactory.H:27