1#ifndef AMREX_EB_STL_UTILS_H_
2#define AMREX_EB_STL_UTILS_H_
4#include <AMReX_Config.H>
26 [[nodiscard]]
Real cent (
int d)
const
28 static_assert(
sizeof(
XDim3) ==
sizeof(
Real)*3);
29 return Real(1./3.)*((&v1.
x)[d] + (&v2.
x)[d] + (&v3.
x)[d]);
32 [[nodiscard]] std::pair<Real,Real> minmax (
int d)
const
34 static_assert(
sizeof(
XDim3) ==
sizeof(
Real)*3);
35 return std::minmax({(&v1.
x)[d], (&v2.
x)[d], (&v3.
x)[d]});
41 template <
int M,
int N>
45 std::numeric_limits<Real>::max(),
46 std::numeric_limits<Real>::max()),
48 std::numeric_limits<Real>::lowest(),
49 std::numeric_limits<Real>::lowest())};
50 STLtools::Triangle triangles[M];
53 std::int8_t ntriangles = 0;
54 std::int8_t nchildren = 0;
62 using Node = BVHNodeT<m_bvh_max_size,m_bvh_max_splits>;
74 Real outside_value = -1._rt,
Real inside_value = 1._rt)
const;
78 static constexpr bool isGPUable () noexcept {
return true; }
81 Box const& bounding_box)
const;
86 Box const& bounding_box)
const;
119 static void bvh_size (
int ntri, std::size_t& nnodes);
#define AMREX_D_DECL(a, b, c)
Definition AMReX_SPACE.H:171
A FortranArrayBox(FAB)-like object.
Definition AMReX_BaseFab.H:185
Rectangular problem domain geometry.
Definition AMReX_Geometry.H:74
A collection (stored as an array) of FArrayBox objects.
Definition AMReX_MultiFab.H:40
Dynamically allocated vector for trivially copyable data.
Definition AMReX_PODVector.H:308
A Box with real dimensions.
Definition AMReX_RealBox.H:26
amrex_real Real
Floating Point Type for Fields.
Definition AMReX_REAL.H:79
std::array< T, N > Array
Definition AMReX_Array.H:25
Definition AMReX_Amr.cpp:49
RunOn
Definition AMReX_GpuControl.H:69
__host__ __device__ Dim3 begin(BoxND< dim > const &box) noexcept
Definition AMReX_Box.H:2006
__host__ __device__ Dim3 end(BoxND< dim > const &box) noexcept
Definition AMReX_Box.H:2015
__host__ __device__ IntVectND< dim > scale(const IntVectND< dim > &p, int s) noexcept
Returns a IntVectND obtained by multiplying each of the components of this IntVectND by s.
Definition AMReX_IntVect.H:1016
Definition AMReX_Array4.H:61
Definition AMReX_Dim3.H:13
Real x
Definition AMReX_Dim3.H:13