A BndryData stores and manipulates boundary data information on each side of each box in a BoxArray.
More...
|
| | BndryDataT () noexcept=default |
| | Default constructor.
|
| |
| | BndryDataT (const BoxArray &grids, const DistributionMapping &dmap, int ncomp, const Geometry &geom) |
| | constructor specifying number of components and box of physical domain (cell-centered)
|
| |
| | ~BndryDataT ()=default |
| | destructor
|
| |
| | BndryDataT (const BndryDataT< MF > &src)=delete |
| |
| | BndryDataT (BndryDataT< MF > &&rhs)=delete |
| |
| BndryDataT< MF > & | operator= (const BndryDataT< MF > &src)=delete |
| |
| BndryDataT< MF > & | operator= (BndryDataT< MF > &&rhs)=delete |
| |
| void | define (const BoxArray &grids, const DistributionMapping &dmap, int ncomp, const Geometry &geom) |
| | Allocate masks and boundary registers for the supplied grids.
|
| |
| const MultiMask & | bndryMasks (Orientation face) const noexcept |
| | Return the per-face mask built during define() for orientation face.
|
| |
| const FabSetT< MF > & | bndryValues (Orientation face) const noexcept |
| | Access the boundary values stored on orientation face.
|
| |
| const RealTuple & | bndryLocs (int igrid) const noexcept |
| | Return physical boundary locations for all faces owned by a grid.
|
| |
| const RealTuple & | bndryLocs (const MFIter &mfi) const noexcept |
| | Same as bndryLocs(int) but uses iterator mfi to reference the grid.
|
| |
| const Vector< Vector< BoundCond > > & | bndryConds (int igrid) const noexcept |
| | Return boundary type specifiers stored for a grid.
|
| |
| const Vector< Vector< BoundCond > > & | bndryConds (const MFIter &mfi) const noexcept |
| | Same as bndryConds(int) but locates the grid via iterator mfi.
|
| |
| int | nComp () const noexcept |
| | Return number of components this boundary data manages.
|
| |
| const Box & | getDomain () const noexcept |
| | Return domain used to define masks.
|
| |
| const Geometry & | getGeom () const noexcept |
| | Return geometry used to define masks.
|
| |
| void | setValue (Orientation face, int n, Real val) noexcept |
| | Set all components on boundary face face of grid n to scalar value val.
|
| |
| void | setBoundCond (Orientation face, int n, int comp, const BoundCond &bcn) noexcept |
| | Set boundary type at grid index n, component comp, and face face to bcn.
|
| |
| void | setBoundCond (Orientation face, const MFIter &mfi, int comp, const BoundCond &bcn) noexcept |
| | Set boundary type using MFIter mfi to identify the grid, component comp, and identifier bcn.
|
| |
| void | setBoundLoc (Orientation face, int n, value_type val) noexcept |
| | Set the physical boundary location val for grid index n and face face.
|
| |
| void | setBoundLoc (Orientation face, const MFIter &mfi, value_type val) noexcept |
| | Set the boundary location value val by MFIter mfi on face face.
|
| |
| const FabSetT< MF > & | operator[] (Orientation face) const noexcept |
| | Provide access to boundary registers for orientation face.
|
| |
| FabSetT< MF > & | operator[] (Orientation face) noexcept |
| | Provide mutable access to boundary registers for orientation face.
|
| |
| | BndryRegisterT () noexcept=default |
| | The default constructor.
|
| |
| | BndryRegisterT (const BoxArray &grids_, const DistributionMapping &dmap, int in_rad, int out_rad, int extent_rad, int ncomp) |
| | The constructor, given number of cells in/out, extent and number of components (assumes cell-centered boxes, and allocates cell-centered FABs)
|
| |
| | ~BndryRegisterT ()=default |
| | The destructor.
|
| |
| | BndryRegisterT (BndryRegisterT< MF > &&rhs) noexcept=default |
| |
| | BndryRegisterT (const BndryRegisterT< MF > &src)=delete |
| |
| BndryRegisterT & | operator= (const BndryRegisterT< MF > &src)=delete |
| |
| BndryRegisterT & | operator= (BndryRegisterT< MF > &&rhs)=delete |
| |
| void | define (const BoxArray &grids_, const DistributionMapping &dmap, int in_rad, int out_rad, int extent_rad, int ncomp) |
| | Allocate boundary FabSets for all faces.
|
| |
| void | define (Orientation face, IndexType typ, int in_rad, int out_rad, int extent_rad, int ncomp, const DistributionMapping &dm) |
| | Build FABs along a particular face orientation.
|
| |
| void | clear () |
| | Release all FABs and clear the associated BoxArray.
|
| |
| const BoxArray & | boxes () const noexcept |
| | Get box domain (as an array of boxes).
|
| |
| int | size () const noexcept |
| | Return the number of grids in this domain.
|
| |
| const FabSetT< MF > & | operator[] (Orientation face) const noexcept |
| | Return const set of FABs bounding the domain grid boxes on orientation face.
|
| |
| FabSetT< MF > & | operator[] (Orientation face) noexcept |
| | Return set of FABs bounding the domain grid boxes on orientation face.
|
| |
| void | setVal (value_type v) |
| | Set all boundary FABs to the scalar value v across every component.
|
| |
| BndryRegisterT< MF > & | operator+= (const BndryRegisterT< MF > &rhs) |
| | Accumulate another register with identical layout into this one.
|
| |
| BndryRegisterT< MF > & | plus (const BndryRegisterT< MF > &rhs) |
| | Convenience alias for operator+=.
|
| |
| BndryRegisterT< MF > & | copyFrom (const MF &src, int nghost, int src_comp, int dest_comp, int num_comp, const Periodicity &period=Periodicity::NonPeriodic()) |
| | Fill boundary FABs with num_comp components copied from src (component src_comp) into dest_comp, sampling nghost layers and honoring period.
|
| |
| BndryRegisterT< MF > & | plusFrom (const MF &src, int nghost, int src_comp, int dest_comp, int num_comp, const Periodicity &period=Periodicity::NonPeriodic()) |
| | Increment boundary FABs with num_comp components from src, using the same arguments as copyFrom().
|
| |
| BndryRegisterT< MF > & | linComb (value_type a, const MF &mfa, int a_comp, value_type b, const MF &mfb, int b_comp, int dest_comp, int num_comp, int n_ghost=0) |
| | Linear combination: this := a * mfa + b * mfb on the boundary, using components a_comp/b_comp and writing to dest_comp for num_comp entries with n_ghost layers.
|
| |
| void | setBoxes (const BoxArray &grids) |
| | Set the BoxArray domain to grids once prior to calling define().
|
| |
| const DistributionMapping & | DistributionMap () const noexcept |
| | Returns the DistributionMapping describing which MPI ranks own each boundary FAB.
|
| |
| void | write (const std::string &name, std::ostream &os) const |
| | Write all FabSets to disk (used for checkpoint data).
|
| |
| void | read (const std::string &name, std::istream &is) |
| | Read all FabSets from disk (used for checkpoint data).
|
| |
template<typename MF>
class amrex::BndryDataT< MF >
A BndryData stores and manipulates boundary data information on each side of each box in a BoxArray.
A BndryData contains a BndryRegister about each side of each grid in a Boxarray. These data are used to store information along the outer layer of each grid (at the same level of coarseness), such as the value of boundary conditions there. Also, for each boundary, this class maintains a BoundCond identifier and a location. This "location" often specifies where, in physical space, a value, which is stored in the boundary registers, will be applied by a solver (although interpretation of this information is application-specific).
In addition to boundary condition values, types and locations, and BndryDate object maintains a mask for each boundary value. Given a Geometry describing the physical "domain" of application, a BndryData object fills the mask arrays with a mask value to indicate if the node is outside the domain (outside_domain), or, if not, whether it lays within the valid region of an adjacent grid (covered), or not (not_covered). This mask data is created upon non-default class instantiation.