10 #include <AMReX_Geometry.H>
11 #include <AMReX_DistributionMapping.H>
12 #include <AMReX_BoxArray.H>
14 #include <AMReX_EB2.H>
15 #include <AMReX_EBFabFactory.H>
47 void define (
int const& a_level,
49 amrex::Geometry
const& a_geom,
50 amrex::BoxArray
const& a_grids,
51 amrex::DistributionMapping
const& a_dmap,
52 amrex::Vector<int>
const& a_ngrow,
53 amrex::EBFArrayBoxFactory
const* a_factory);
61 [[nodiscard]]
const amrex::MultiFab&
getVolFrac ()
const;
63 [[nodiscard]]
const amrex::MultiFab&
getCentroid ()
const;
65 [[nodiscard]]
const amrex::MultiFab&
getBndryArea ()
const;
67 [[nodiscard]]
const amrex::MultiFab&
getBndryCent ()
const;
72 [[nodiscard]] amrex::Array<const amrex::MultiFab*, AMREX_SPACEDIM>
getAreaFrac ()
const;
74 [[nodiscard]] amrex::Array<const amrex::MultiFab*, AMREX_SPACEDIM>
getFaceCent ()
const;
85 std::unique_ptr<amrex::FabArray<amrex::EBCellFlagFab>>
m_cellflags;
92 amrex::Array<std::unique_ptr<amrex::MultiFab>,AMREX_SPACEDIM>
m_areafrac;
93 amrex::Array<std::unique_ptr<amrex::MultiFab>,AMREX_SPACEDIM>
m_facecent;
Stores face-centered EB geometry reconstructed from a cell-centered factory.
Definition: ERF_EBAux.H:24
const amrex::MultiFab & getBndryCent() const
Return the reconstructed EB boundary centroids.
Definition: ERF_EBAux.cpp:1173
amrex::Array< const amrex::MultiFab *, AMREX_SPACEDIM > getAreaFrac() const
Return reconstructed area fractions for all coordinate directions.
Definition: ERF_EBAux.cpp:1187
eb_aux_()
Construct an undefined auxiliary EB factory.
Definition: ERF_EBAux.cpp:17
amrex::Array< std::unique_ptr< amrex::MultiFab >, AMREX_SPACEDIM > m_areafrac
Definition: ERF_EBAux.H:92
amrex::Array< const amrex::MultiFab *, AMREX_SPACEDIM > getFaceCent() const
Return reconstructed face centroids for all coordinate directions.
Definition: ERF_EBAux.cpp:1194
~eb_aux_()=default
Destroy the auxiliary EB factory; the owned geometry is released by its unique_ptrs.
std::unique_ptr< amrex::MultiFab > m_bndrynorm
Definition: ERF_EBAux.H:90
const amrex::MultiFab & getBndryNormal() const
Return the reconstructed EB boundary normals.
Definition: ERF_EBAux.cpp:1180
void define(int const &a_level, int const &a_idim, amrex::Geometry const &a_geom, amrex::BoxArray const &a_grids, amrex::DistributionMapping const &a_dmap, amrex::Vector< int > const &a_ngrow, amrex::EBFArrayBoxFactory const *a_factory)
Define face-centered EB geometry for one staggered direction.
Definition: ERF_EBAux.cpp:24
void set_verbose()
Enable verbose diagnostic output during factory construction.
Definition: ERF_EBAux.H:56
std::unique_ptr< amrex::MultiFab > m_bndrycent
Definition: ERF_EBAux.H:89
std::unique_ptr< amrex::FabArray< amrex::EBCellFlagFab > > m_cellflags
Definition: ERF_EBAux.H:85
int m_verbose
Definition: ERF_EBAux.H:78
const amrex::MultiFab & getVolFrac() const
Return the reconstructed volume fractions.
Definition: ERF_EBAux.cpp:1152
std::unique_ptr< amrex::MultiFab > m_bndryarea
Definition: ERF_EBAux.H:88
amrex::Array< std::unique_ptr< amrex::MultiFab >, AMREX_SPACEDIM > m_facecent
Definition: ERF_EBAux.H:93
const amrex::MultiFab & getBndryArea() const
Return the reconstructed EB boundary areas.
Definition: ERF_EBAux.cpp:1166
const amrex::FabArray< amrex::EBCellFlagFab > & getMultiEBCellFlagFab() const
Return the reconstructed EB cell flags.
Definition: ERF_EBAux.cpp:1145
std::unique_ptr< amrex::MultiFab > m_volcent
Definition: ERF_EBAux.H:87
const amrex::MultiFab & getCentroid() const
Return the reconstructed volume centroids.
Definition: ERF_EBAux.cpp:1159
std::unique_ptr< amrex::MultiFab > m_volfrac
Definition: ERF_EBAux.H:86