4#include <AMReX_Config.H>
47 bool shared = false,
Arena* ar =
nullptr);
51 ~
TagBox () noexcept override = default;
84 [[nodiscard]]
Vector<
int>
tags () const noexcept;
128 void tags (const
Vector<
int>& ar, const
Box& tilebx) noexcept;
179 void mapPeriodicRemoveDuplicates (
const Geometry& geom);
202 bool hasTags (
Box const& bx)
const;
A virtual base class for objects that manage their own dynamic memory allocation.
Definition AMReX_Arena.H:127
A FortranArrayBox(FAB)-like object.
Definition AMReX_BaseFab.H:190
void setVal(char const &x, const Box &bx, int dcomp, int ncomp) noexcept
The setVal functions set sub-regions in the BaseFab to a constant value. This most general form speci...
Definition AMReX_BaseFab.H:1400
A collection of Boxes stored in an Array.
Definition AMReX_BoxArray.H:568
Calculates the distribution of FABs to MPI processes.
Definition AMReX_DistributionMapping.H:43
An Array of FortranArrayBox(FAB)-like Objects.
Definition AMReX_FabArray.H:349
Rectangular problem domain geometry.
Definition AMReX_Geometry.H:74
Dynamically allocated vector for trivially copyable data.
Definition AMReX_PODVector.H:308
An array of TagBoxes.
Definition AMReX_TagBox.H:151
TagBoxArray(const TagBoxArray &rhs)=delete
TagBoxArray(TagBoxArray &&rhs) noexcept=default
TagBox::TagType TagType
The type of each tag.
Definition AMReX_TagBox.H:155
Tagged cells in a Box.
Definition AMReX_TagBox.H:31
void get_itags(Vector< int > &ar, const Box &tilebx) const noexcept
Since a TagBox is a BaseFab<char>, we can use this utility function to allocate an integer array to h...
Definition AMReX_TagBox.cpp:180
void coarsen(const IntVect &ratio, const Box &cbox) noexcept
Coarsen the TagBox in-place and mark coarse cells as tagged if any fine cell was tagged.
Definition AMReX_TagBox.cpp:33
TagBox() noexcept=default
TagBox & operator=(const TagBox &rhs)=delete
char TagType
The type of each tag.
Definition AMReX_TagBox.H:35
Vector< int > tags() const noexcept
Returns Vector<int> of size domain.numPts() suitable for calling Fortran, with positions set to same ...
Definition AMReX_TagBox.cpp:124
TagVal
Possible values for each cell.
Definition AMReX_TagBox.H:38
@ SET
Definition AMReX_TagBox.H:38
@ CLEAR
Definition AMReX_TagBox.H:38
@ BUF
Definition AMReX_TagBox.H:38
void tags_and_untags(const Vector< int > &ar) noexcept
Set values as specified by ar, allowing both tagging and untagging.
Definition AMReX_TagBox.cpp:161
void buffer(const IntVect &a_nbuff, const IntVect &nwid) noexcept
Grow tags by a_nbuff cells, ignoring seed tags within nwid of the boundary.
Definition AMReX_TagBox.cpp:76
This class is a thin wrapper around std::vector. Unlike vector, Vector::operator[] provides bound che...
Definition AMReX_Vector.H:28
Definition AMReX_Amr.cpp:49
MakeType
Definition AMReX_MakeType.H:7
void * alloc(std::size_t sz) const noexcept
Definition AMReX_DataAllocator.H:16