Block-Structured AMR Software Framework
 
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Loading...
Searching...
No Matches
amrex::EB2 Namespace Reference

Namespaces

namespace  detail
 
namespace  IIF_detail
 
namespace  Type
 
namespace  UIF_detail
 

Classes

class  AllRegularIF
 
class  BoxIF
 
struct  Cell
 
class  ChkptFile
 
class  ChkptFileLevel
 
class  ComplementIF
 
class  CylinderIF
 
class  DevicePtrIF
 
class  DifferenceIF
 
struct  Edge
 
class  EllipsoidIF
 
class  ExtrusionIF
 
struct  Face
 
class  GeometryShop
 
class  GFab
 
class  GShopLevel
 
class  IndexSpace
 
class  IndexSpaceChkptFile
 
class  IndexSpaceImp
 
class  IndexSpaceSTL
 
class  IntersectionIF
 
struct  IsGPUable
 
struct  IsGPUable< ComplementIF< F >, std::enable_if_t< IsGPUable< F >::value > >
 
struct  IsGPUable< D, std::enable_if_t< std::is_base_of_v< GPUable, D > > >
 
struct  IsGPUable< DifferenceIF< F, G >, std::enable_if_t< IsGPUable< F >::value &&IsGPUable< G >::value > >
 
struct  IsGPUable< ExtrusionIF< F >, std::enable_if_t< IsGPUable< F >::value > >
 
struct  IsGPUable< IntersectionIF< F >, std::enable_if_t< IsGPUable< F >::value > >
 
struct  IsGPUable< IntersectionIF< Head, Tail... >, std::enable_if_t< IsGPUable< Head >::value > >
 
struct  IsGPUable< LatheIF< F >, std::enable_if_t< IsGPUable< F >::value > >
 
struct  IsGPUable< RotationIF< F >, std::enable_if_t< IsGPUable< F >::value > >
 
struct  IsGPUable< ScaleIF< F >, std::enable_if_t< IsGPUable< F >::value > >
 
struct  IsGPUable< TranslationIF< F >, std::enable_if_t< IsGPUable< F >::value > >
 
struct  IsGPUable< UnionIF< F >, std::enable_if_t< IsGPUable< F >::value > >
 
struct  IsGPUable< UnionIF< Head, Tail... >, std::enable_if_t< IsGPUable< Head >::value > >
 
class  LatheIF
 
class  Level
 
class  MultiGFab
 
struct  Neighbor
 
class  ParserIF
 
class  PlaneIF
 
class  PolyIF
 
class  PolynomialIF
 
class  PolyTerm
 
class  RotationIF
 
class  ScaleIF
 
class  SphereIF
 
class  SplineIF
 
class  STLLevel
 
class  TorusIF
 
class  TranslationIF
 
class  UnionIF
 
struct  Vertex
 

Typedefs

using VertexID = std::pair< IntVect, int >
 
using Type_t = uint32_t
 
using Graph = std::unordered_map< IntVect, Vector< Vertex >, IntVect::hasher >
 

Functions

void Initialize ()
 
void Finalize ()
 
bool ExtendDomainFace ()
 
int NumCoarsenOpt ()
 
const IndexSpaceTopIndexSpaceIfPresent () noexcept
 
void Build (const Geometry &geom, int required_coarsening_level, int max_coarsening_level, int ngrow, bool build_coarse_level_by_coarsening, bool a_extend_domain_face, int a_num_coarsen_opt)
 
void addFineLevels (int num_new_fine_levels)
 
void addRegularCoarseLevels (int num_new_coarse_levels)
 
void BuildFromChkptFile (std::string const &fname, const Geometry &geom, int required_coarsening_level, int max_coarsening_level, int ngrow, bool build_coarse_level_by_coarsening, bool a_extend_domain_face)
 
int maxCoarseningLevel (const Geometry &geom)
 
int maxCoarseningLevel (IndexSpace const *ebis, const Geometry &geom)
 
void useEB2 (bool)
 
const IndexSpaceTopIndexSpace () noexcept
 
template<typename G >
void Build (const G &gshop, const Geometry &geom, int required_coarsening_level, int max_coarsening_level, int ngrow=4, bool build_coarse_level_by_coarsening=true, bool extend_domain_face=ExtendDomainFace(), int num_coarsen_opt=NumCoarsenOpt())
 
int build_faces (Box const &bx, Array4< EBCellFlag > const &cell, Array4< Type_t > const &fx, Array4< Type_t > const &fy, Array4< Real > const &levset, Array4< Real const > const &interx, Array4< Real const > const &intery, Array4< Real > const &apx, Array4< Real > const &apy, Array4< Real > const &fcx, Array4< Real > const &fcy, GpuArray< Real, AMREX_SPACEDIM > const &dx, GpuArray< Real, AMREX_SPACEDIM > const &problo, bool cover_multiple_cuts, int &nsmallfaces) noexcept
 
void build_cells (Box const &bx, Array4< EBCellFlag > const &cell, Array4< Type_t > const &fx, Array4< Type_t > const &fy, Array4< Real > const &apx, Array4< Real > const &apy, GpuArray< Real, AMREX_SPACEDIM > const &dx, Array4< Real > const &vfrac, Array4< Real > const &vcent, Array4< Real > const &barea, Array4< Real > const &bcent, Array4< Real > const &bnorm, Array4< Real > const &levset, Real small_volfrac, Geometry const &geom, bool extend_domain_face, int &nsmallcells, int const nmulticuts) noexcept
 
void set_connection_flags (Box const &bxg1, Array4< EBCellFlag > const &cell, Array4< Type_t > const &fx, Array4< Type_t > const &fy) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_eb2_build_types (Box const &tbx, Box const &bxg2, Array4< Real const > const &s, Array4< EBCellFlag > const &cell, Array4< Type_t > const &fx, Array4< Type_t > const &fy)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int check_mvmc (int i, int j, int, Array4< Real const > const &fine)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int coarsen_from_fine (int i, int j, Box const &bx, int ngrow, Array4< Real > const &cvol, Array4< Real > const &ccent, Array4< Real > const &cba, Array4< Real > const &cbc, Array4< Real > const &cbn, Array4< Real > const &capx, Array4< Real > const &capy, Array4< Real > const &cfcx, Array4< Real > const &cfcy, Array4< Real > const &cecx, Array4< Real > const &cecy, Array4< EBCellFlag > const &cflag, Array4< Real const > const &fvol, Array4< Real const > const &fcent, Array4< Real const > const &fba, Array4< Real const > const &fbc, Array4< Real const > const &fbn, Array4< Real const > const &fapx, Array4< Real const > const &fapy, Array4< Real const > const &ffcx, Array4< Real const > const &ffcy, Array4< Real const > const &fecx, Array4< Real const > const &fecy, Array4< EBCellFlag const > const &fflag)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void build_cellflag_from_ap (int i, int j, Array4< EBCellFlag > const &cflag, Array4< Real const > const &apx, Array4< Real const > const &apy)
 
int build_faces (Box const &bx, Array4< EBCellFlag > const &cell, Array4< Type_t > const &fx, Array4< Type_t > const &fy, Array4< Type_t > const &fz, Array4< Type_t const > const &ex, Array4< Type_t const > const &ey, Array4< Type_t const > const &ez, Array4< Real > const &levset, Array4< Real const > const &interx, Array4< Real const > const &intery, Array4< Real const > const &interz, Array4< Real > const &apx, Array4< Real > const &apy, Array4< Real > const &apz, Array4< Real > const &fcx, Array4< Real > const &fcy, Array4< Real > const &fcz, Array4< Real > const &m2x, Array4< Real > const &m2y, Array4< Real > const &m2z, GpuArray< Real, AMREX_SPACEDIM > const &dx, GpuArray< Real, AMREX_SPACEDIM > const &problo, bool cover_multiple_cuts) noexcept
 
void build_cells (Box const &bx, Array4< EBCellFlag > const &cell, Array4< Type_t > const &fx, Array4< Type_t > const &fy, Array4< Type_t > const &fz, Array4< Real > const &apx, Array4< Real > const &apy, Array4< Real > const &apz, Array4< Real const > const &fcx, Array4< Real const > const &fcy, Array4< Real const > const &fcz, Array4< Real const > const &m2x, Array4< Real const > const &m2y, Array4< Real const > const &m2z, GpuArray< Real, AMREX_SPACEDIM > const &dx, Array4< Real > const &vfrac, Array4< Real > const &vcent, Array4< Real > const &barea, Array4< Real > const &bcent, Array4< Real > const &bnorm, Array4< EBCellFlag > const &ctmp, Array4< Real > const &levset, Real small_volfrac, Geometry const &geom, bool extend_domain_face, bool cover_multiple_cuts, int &nsmallcells, int &nmulticuts) noexcept
 
void set_connection_flags (Box const &bx, Box const &bxg1, Array4< EBCellFlag > const &cell, Array4< EBCellFlag > const &ctmp, Array4< Type_t > const &fx, Array4< Type_t > const &fy, Array4< Type_t > const &fz) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_eb2_build_types (Box const &tbx, Box const &bxg2, Array4< Real const > const &s, Array4< EBCellFlag > const &cell, Array4< Type_t > const &fx, Array4< Type_t > const &fy, Array4< Type_t > const &fz, Array4< Type_t > const &ex, Array4< Type_t > const &ey, Array4< Type_t > const &ez)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int coarsen_from_fine (int i, int j, int k, Box const &bx, int ngrow, Array4< Real > const &cvol, Array4< Real > const &ccent, Array4< Real > const &cba, Array4< Real > const &cbc, Array4< Real > const &cbn, Array4< Real > const &capx, Array4< Real > const &capy, Array4< Real > const &capz, Array4< Real > const &cfcx, Array4< Real > const &cfcy, Array4< Real > const &cfcz, Array4< Real > const &cecx, Array4< Real > const &cecy, Array4< Real > const &cecz, Array4< EBCellFlag > const &cflag, Array4< Real const > const &fvol, Array4< Real const > const &fcent, Array4< Real const > const &fba, Array4< Real const > const &fbc, Array4< Real const > const &fbn, Array4< Real const > const &fapx, Array4< Real const > const &fapy, Array4< Real const > const &fapz, Array4< Real const > const &ffcx, Array4< Real const > const &ffcy, Array4< Real const > const &ffcz, Array4< Real const > const &fecx, Array4< Real const > const &fecy, Array4< Real const > const &fecz, Array4< EBCellFlag const > const &fflag)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void build_cellflag_from_ap (int i, int j, int k, Array4< EBCellFlag > const &cflag, Array4< Real const > const &apx, Array4< Real const > const &apy, Array4< Real const > const &apz)
 
void intercept_to_edge_centroid (AMREX_D_DECL(Array4< Real > const &excent, Array4< Real > const &eycent, Array4< Real > const &ezcent), AMREX_D_DECL(Array4< Type_t const > const &fx, Array4< Type_t const > const &fy, Array4< Type_t const > const &fz), Array4< Real const > const &levset, GpuArray< Real, AMREX_SPACEDIM > const &dx, GpuArray< Real, AMREX_SPACEDIM > const &problo) noexcept
 
template<class F , std::enable_if_t< IsGPUable< F >::value > * FOO = nullptr>
AMREX_GPU_HOST_DEVICE Real IF_f (F const &f, GpuArray< Real, AMREX_SPACEDIM > const &p) noexcept
 
template<class F >
AMREX_GPU_HOST_DEVICE Real BrentRootFinder (GpuArray< Real, AMREX_SPACEDIM > const &lo, GpuArray< Real, AMREX_SPACEDIM > const &hi, int rangedir, F const &f) noexcept
 
template<class F >
GeometryShop< std::decay_t< F > > makeShop (F &&f)
 
template<class F , class R >
GeometryShop< std::decay_t< F >, std::decay_t< R > > makeShop (F &&f, R &&r)
 
template<class F >
constexpr ComplementIF< std::decay_t< F > > makeComplement (F &&f)
 
template<class F , class G >
constexpr DifferenceIF< std::decay_t< F >, std::decay_t< G > > makeDifference (F &&f, G &&g)
 
template<class F >
constexpr ExtrusionIF< std::decay_t< F > > extrude (F &&f, int direction)
 
template<class... Fs>
constexpr IntersectionIF< std::decay_t< Fs > ... > makeIntersection (Fs &&... fs)
 
template<class F >
constexpr LatheIF< std::decay_t< F > > lathe (F &&f)
 
template<class F >
constexpr RotationIF< std::decay_t< F > > rotate (F &&f, const Real angle, const int dir)
 
template<class F >
constexpr ScaleIF< std::decay_t< F > > scale (F &&f, const RealArray &scalefactor)
 
template<class F >
constexpr TranslationIF< std::decay_t< F > > translate (F &&f, const RealArray &offset)
 
template<class... Fs>
constexpr UnionIF< std::decay_t< Fs > ... > makeUnion (Fs &&... fs)
 

Variables

AMREX_EXPORT int max_grid_size = 64
 
AMREX_EXPORT bool extend_domain_face = true
 
AMREX_EXPORT int num_coarsen_opt = 0
 

Typedef Documentation

◆ Graph

using amrex::EB2::Graph = typedef std::unordered_map<IntVect, Vector<Vertex>, IntVect::hasher>

◆ Type_t

using amrex::EB2::Type_t = typedef uint32_t

◆ VertexID

using amrex::EB2::VertexID = typedef std::pair<IntVect,int>

Function Documentation

◆ addFineLevels()

void amrex::EB2::addFineLevels ( int  num_new_fine_levels)

◆ addRegularCoarseLevels()

void amrex::EB2::addRegularCoarseLevels ( int  num_new_coarse_levels)

◆ amrex_eb2_build_types() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::EB2::amrex_eb2_build_types ( Box const &  tbx,
Box const &  bxg2,
Array4< Real const > const &  s,
Array4< EBCellFlag > const &  cell,
Array4< Type_t > const &  fx,
Array4< Type_t > const &  fy 
)

◆ amrex_eb2_build_types() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::EB2::amrex_eb2_build_types ( Box const &  tbx,
Box const &  bxg2,
Array4< Real const > const &  s,
Array4< EBCellFlag > const &  cell,
Array4< Type_t > const &  fx,
Array4< Type_t > const &  fy,
Array4< Type_t > const &  fz,
Array4< Type_t > const &  ex,
Array4< Type_t > const &  ey,
Array4< Type_t > const &  ez 
)

◆ BrentRootFinder()

template<class F >
AMREX_GPU_HOST_DEVICE Real amrex::EB2::BrentRootFinder ( GpuArray< Real, AMREX_SPACEDIM > const &  lo,
GpuArray< Real, AMREX_SPACEDIM > const &  hi,
int  rangedir,
F const &  f 
)
noexcept

◆ Build() [1/2]

template<typename G >
void amrex::EB2::Build ( const G &  gshop,
const Geometry geom,
int  required_coarsening_level,
int  max_coarsening_level,
int  ngrow = 4,
bool  build_coarse_level_by_coarsening = true,
bool  extend_domain_face = ExtendDomainFace(),
int  num_coarsen_opt = NumCoarsenOpt() 
)

◆ Build() [2/2]

void amrex::EB2::Build ( const Geometry geom,
int  required_coarsening_level,
int  max_coarsening_level,
int  ngrow,
bool  build_coarse_level_by_coarsening,
bool  a_extend_domain_face,
int  a_num_coarsen_opt 
)

◆ build_cellflag_from_ap() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::EB2::build_cellflag_from_ap ( int  i,
int  j,
Array4< EBCellFlag > const &  cflag,
Array4< Real const > const &  apx,
Array4< Real const > const &  apy 
)

◆ build_cellflag_from_ap() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::EB2::build_cellflag_from_ap ( int  i,
int  j,
int  k,
Array4< EBCellFlag > const &  cflag,
Array4< Real const > const &  apx,
Array4< Real const > const &  apy,
Array4< Real const > const &  apz 
)

◆ build_cells() [1/2]

void amrex::EB2::build_cells ( Box const &  bx,
Array4< EBCellFlag > const &  cell,
Array4< Type_t > const &  fx,
Array4< Type_t > const &  fy,
Array4< Real > const &  apx,
Array4< Real > const &  apy,
GpuArray< Real, AMREX_SPACEDIM > const &  dx,
Array4< Real > const &  vfrac,
Array4< Real > const &  vcent,
Array4< Real > const &  barea,
Array4< Real > const &  bcent,
Array4< Real > const &  bnorm,
Array4< Real > const &  levset,
Real  small_volfrac,
Geometry const &  geom,
bool  extend_domain_face,
int nsmallcells,
int const  nmulticuts 
)
noexcept

◆ build_cells() [2/2]

void amrex::EB2::build_cells ( Box const &  bx,
Array4< EBCellFlag > const &  cell,
Array4< Type_t > const &  fx,
Array4< Type_t > const &  fy,
Array4< Type_t > const &  fz,
Array4< Real > const &  apx,
Array4< Real > const &  apy,
Array4< Real > const &  apz,
Array4< Real const > const &  fcx,
Array4< Real const > const &  fcy,
Array4< Real const > const &  fcz,
Array4< Real const > const &  m2x,
Array4< Real const > const &  m2y,
Array4< Real const > const &  m2z,
GpuArray< Real, AMREX_SPACEDIM > const &  dx,
Array4< Real > const &  vfrac,
Array4< Real > const &  vcent,
Array4< Real > const &  barea,
Array4< Real > const &  bcent,
Array4< Real > const &  bnorm,
Array4< EBCellFlag > const &  ctmp,
Array4< Real > const &  levset,
Real  small_volfrac,
Geometry const &  geom,
bool  extend_domain_face,
bool  cover_multiple_cuts,
int nsmallcells,
int nmulticuts 
)
noexcept

◆ build_faces() [1/2]

int amrex::EB2::build_faces ( Box const &  bx,
Array4< EBCellFlag > const &  cell,
Array4< Type_t > const &  fx,
Array4< Type_t > const &  fy,
Array4< Real > const &  levset,
Array4< Real const > const &  interx,
Array4< Real const > const &  intery,
Array4< Real > const &  apx,
Array4< Real > const &  apy,
Array4< Real > const &  fcx,
Array4< Real > const &  fcy,
GpuArray< Real, AMREX_SPACEDIM > const &  dx,
GpuArray< Real, AMREX_SPACEDIM > const &  problo,
bool  cover_multiple_cuts,
int nsmallfaces 
)
noexcept

◆ build_faces() [2/2]

int amrex::EB2::build_faces ( Box const &  bx,
Array4< EBCellFlag > const &  cell,
Array4< Type_t > const &  fx,
Array4< Type_t > const &  fy,
Array4< Type_t > const &  fz,
Array4< Type_t const > const &  ex,
Array4< Type_t const > const &  ey,
Array4< Type_t const > const &  ez,
Array4< Real > const &  levset,
Array4< Real const > const &  interx,
Array4< Real const > const &  intery,
Array4< Real const > const &  interz,
Array4< Real > const &  apx,
Array4< Real > const &  apy,
Array4< Real > const &  apz,
Array4< Real > const &  fcx,
Array4< Real > const &  fcy,
Array4< Real > const &  fcz,
Array4< Real > const &  m2x,
Array4< Real > const &  m2y,
Array4< Real > const &  m2z,
GpuArray< Real, AMREX_SPACEDIM > const &  dx,
GpuArray< Real, AMREX_SPACEDIM > const &  problo,
bool  cover_multiple_cuts 
)
noexcept

◆ BuildFromChkptFile()

void amrex::EB2::BuildFromChkptFile ( std::string const &  fname,
const Geometry geom,
int  required_coarsening_level,
int  max_coarsening_level,
int  ngrow,
bool  build_coarse_level_by_coarsening,
bool  a_extend_domain_face 
)

◆ check_mvmc()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int amrex::EB2::check_mvmc ( int  i,
int  j,
int  k,
Array4< Real const > const &  fine 
)

◆ coarsen_from_fine() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int amrex::EB2::coarsen_from_fine ( int  i,
int  j,
Box const &  bx,
int  ngrow,
Array4< Real > const &  cvol,
Array4< Real > const &  ccent,
Array4< Real > const &  cba,
Array4< Real > const &  cbc,
Array4< Real > const &  cbn,
Array4< Real > const &  capx,
Array4< Real > const &  capy,
Array4< Real > const &  cfcx,
Array4< Real > const &  cfcy,
Array4< Real > const &  cecx,
Array4< Real > const &  cecy,
Array4< EBCellFlag > const &  cflag,
Array4< Real const > const &  fvol,
Array4< Real const > const &  fcent,
Array4< Real const > const &  fba,
Array4< Real const > const &  fbc,
Array4< Real const > const &  fbn,
Array4< Real const > const &  fapx,
Array4< Real const > const &  fapy,
Array4< Real const > const &  ffcx,
Array4< Real const > const &  ffcy,
Array4< Real const > const &  fecx,
Array4< Real const > const &  fecy,
Array4< EBCellFlag const > const &  fflag 
)

◆ coarsen_from_fine() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int amrex::EB2::coarsen_from_fine ( int  i,
int  j,
int  k,
Box const &  bx,
int  ngrow,
Array4< Real > const &  cvol,
Array4< Real > const &  ccent,
Array4< Real > const &  cba,
Array4< Real > const &  cbc,
Array4< Real > const &  cbn,
Array4< Real > const &  capx,
Array4< Real > const &  capy,
Array4< Real > const &  capz,
Array4< Real > const &  cfcx,
Array4< Real > const &  cfcy,
Array4< Real > const &  cfcz,
Array4< Real > const &  cecx,
Array4< Real > const &  cecy,
Array4< Real > const &  cecz,
Array4< EBCellFlag > const &  cflag,
Array4< Real const > const &  fvol,
Array4< Real const > const &  fcent,
Array4< Real const > const &  fba,
Array4< Real const > const &  fbc,
Array4< Real const > const &  fbn,
Array4< Real const > const &  fapx,
Array4< Real const > const &  fapy,
Array4< Real const > const &  fapz,
Array4< Real const > const &  ffcx,
Array4< Real const > const &  ffcy,
Array4< Real const > const &  ffcz,
Array4< Real const > const &  fecx,
Array4< Real const > const &  fecy,
Array4< Real const > const &  fecz,
Array4< EBCellFlag const > const &  fflag 
)

◆ ExtendDomainFace()

bool amrex::EB2::ExtendDomainFace ( )

◆ extrude()

template<class F >
constexpr ExtrusionIF< std::decay_t< F > > amrex::EB2::extrude ( F &&  f,
int  direction 
)
constexpr

◆ Finalize()

void amrex::EB2::Finalize ( )

◆ IF_f()

template<class F , std::enable_if_t< IsGPUable< F >::value > * FOO = nullptr>
AMREX_GPU_HOST_DEVICE Real amrex::EB2::IF_f ( F const &  f,
GpuArray< Real, AMREX_SPACEDIM > const &  p 
)
noexcept

◆ Initialize()

void amrex::EB2::Initialize ( )

◆ intercept_to_edge_centroid()

void amrex::EB2::intercept_to_edge_centroid ( AMREX_D_DECL(Array4< Real > const &excent, Array4< Real > const &eycent, Array4< Real > const &ezcent)  ,
AMREX_D_DECL(Array4< Type_t const > const &fx, Array4< Type_t const > const &fy, Array4< Type_t const > const &fz)  ,
Array4< Real const > const &  levset,
GpuArray< Real, AMREX_SPACEDIM > const &  dx,
GpuArray< Real, AMREX_SPACEDIM > const &  problo 
)
noexcept

◆ lathe()

template<class F >
constexpr LatheIF< std::decay_t< F > > amrex::EB2::lathe ( F &&  f)
constexpr

◆ makeComplement()

template<class F >
constexpr ComplementIF< std::decay_t< F > > amrex::EB2::makeComplement ( F &&  f)
constexpr

◆ makeDifference()

template<class F , class G >
constexpr DifferenceIF< std::decay_t< F >, std::decay_t< G > > amrex::EB2::makeDifference ( F &&  f,
G &&  g 
)
constexpr

◆ makeIntersection()

template<class... Fs>
constexpr IntersectionIF< std::decay_t< Fs > ... > amrex::EB2::makeIntersection ( Fs &&...  fs)
constexpr

◆ makeShop() [1/2]

template<class F >
GeometryShop< std::decay_t< F > > amrex::EB2::makeShop ( F &&  f)

◆ makeShop() [2/2]

template<class F , class R >
GeometryShop< std::decay_t< F >, std::decay_t< R > > amrex::EB2::makeShop ( F &&  f,
R &&  r 
)

◆ makeUnion()

template<class... Fs>
constexpr UnionIF< std::decay_t< Fs > ... > amrex::EB2::makeUnion ( Fs &&...  fs)
constexpr

◆ maxCoarseningLevel() [1/2]

int amrex::EB2::maxCoarseningLevel ( const Geometry geom)

◆ maxCoarseningLevel() [2/2]

int amrex::EB2::maxCoarseningLevel ( IndexSpace const *  ebis,
const Geometry geom 
)

◆ NumCoarsenOpt()

int amrex::EB2::NumCoarsenOpt ( )

◆ rotate()

template<class F >
constexpr RotationIF< std::decay_t< F > > amrex::EB2::rotate ( F &&  f,
const Real  angle,
const int  dir 
)
constexpr

◆ scale()

template<class F >
constexpr ScaleIF< std::decay_t< F > > amrex::EB2::scale ( F &&  f,
const RealArray scalefactor 
)
constexpr

◆ set_connection_flags() [1/2]

void amrex::EB2::set_connection_flags ( Box const &  bx,
Box const &  bxg1,
Array4< EBCellFlag > const &  cell,
Array4< EBCellFlag > const &  ctmp,
Array4< Type_t > const &  fx,
Array4< Type_t > const &  fy,
Array4< Type_t > const &  fz 
)
noexcept

◆ set_connection_flags() [2/2]

void amrex::EB2::set_connection_flags ( Box const &  bxg1,
Array4< EBCellFlag > const &  cell,
Array4< Type_t > const &  fx,
Array4< Type_t > const &  fy 
)
noexcept

◆ TopIndexSpace()

const IndexSpace * amrex::EB2::TopIndexSpace ( )
inlinenoexcept

◆ TopIndexSpaceIfPresent()

const IndexSpace * amrex::EB2::TopIndexSpaceIfPresent ( )
noexcept

◆ translate()

template<class F >
constexpr TranslationIF< std::decay_t< F > > amrex::EB2::translate ( F &&  f,
const RealArray offset 
)
constexpr

◆ useEB2()

void amrex::EB2::useEB2 ( bool  )

Variable Documentation

◆ extend_domain_face

AMREX_EXPORT bool amrex::EB2::extend_domain_face = true

◆ max_grid_size

AMREX_EXPORT int amrex::EB2::max_grid_size = 64

◆ num_coarsen_opt

AMREX_EXPORT int amrex::EB2::num_coarsen_opt = 0