|
| FabSetT () noexcept=default |
| The default constructor – you must later call define(). More...
|
|
| FabSetT (const BoxArray &grids, const DistributionMapping &dmap, int ncomp) |
| Construct a FabSetT<MF> of specified number of components on the grids. More...
|
|
| ~FabSetT ()=default |
|
| FabSetT (FabSetT< MF > &&rhs) noexcept=default |
|
| FabSetT (const FabSetT< MF > &rhs)=delete |
|
FabSetT< MF > & | operator= (const FabSetT< MF > &rhs)=delete |
|
FabSetT< MF > & | operator= (FabSetT< MF > &&rhs)=delete |
|
void | define (const BoxArray &grids, const DistributionMapping &dmap, int ncomp) |
| Define a FabSetT<MF> constructed via default constructor. More...
|
|
FAB const & | operator[] (const MFIter &mfi) const noexcept |
|
FAB & | operator[] (const MFIter &mfi) noexcept |
|
FAB const & | operator[] (int i) const noexcept |
|
FAB & | operator[] (int i) noexcept |
|
Array4< value_type const > | array (const MFIter &mfi) const noexcept |
|
Array4< value_type > | array (const MFIter &mfi) noexcept |
|
Array4< value_type const > | array (int i) const noexcept |
|
Array4< value_type > | array (int i) noexcept |
|
Array4< value_type const > | const_array (const MFIter &mfi) const noexcept |
|
Array4< value_type const > | const_array (int i) const noexcept |
|
MultiArray4< value_type const > | arrays () const noexcept |
|
MultiArray4< value_type > | arrays () noexcept |
|
MultiArray4< value_type const > | const_arrays () const noexcept |
|
Box | fabbox (int K) const noexcept |
|
int | size () const noexcept |
|
const BoxArray & | boxArray () const noexcept |
|
const DistributionMapping & | DistributionMap () const noexcept |
|
MF & | multiFab () noexcept |
|
MF const & | multiFab () const noexcept |
|
int | nComp () const noexcept |
|
void | clear () |
|
FabSetT< MF > & | copyFrom (const FabSetT< MF > &src, int scomp, int dcomp, int ncomp) |
|
FabSetT< MF > & | copyFrom (const MF &src, int ngrow, int scomp, int dcomp, int ncomp, const Periodicity &period=Periodicity::NonPeriodic()) |
|
FabSetT< MF > & | plusFrom (const FabSetT< MF > &src, int scomp, int dcomp, int ncomp) |
|
FabSetT< MF > & | plusFrom (const MF &src, int ngrow, int scomp, int dcomp, int ncomp, const Periodicity &period=Periodicity::NonPeriodic()) |
|
void | copyTo (MF &dest, int ngrow, int scomp, int dcomp, int ncomp, const Periodicity &period=Periodicity::NonPeriodic()) const |
|
void | plusTo (MF &dest, int ngrow, int scomp, int dcomp, int ncomp, const Periodicity &period=Periodicity::NonPeriodic()) const |
|
void | setVal (value_type val) |
|
void | setVal (value_type val, int comp, int num_comp) |
| Linear combination: this := a*this + b*src (FabSetT<MF>s must be commensurate). More...
|
|
FabSetT< MF > & | linComb (value_type a, value_type b, const FabSetT< MF > &src, int scomp, int dcomp, int ncomp) |
| Linear combination: this := a*mfa + b*mfb. More...
|
|
FabSetT< MF > & | linComb (value_type a, const MF &mfa, int a_comp, value_type b, const MF &mfb, int b_comp, int dcomp, int ncomp, int ngrow) |
|
void | write (const std::string &name) const |
| Write (used for writing to checkpoint) More...
|
|
void | read (const std::string &name) |
| Read (used for reading from checkpoint) More...
|
|
template<typename MF>
class amrex::FabSetT< MF >
A FabSet is a group of FArrayBox's. The grouping is designed specifically to represent regions along the boundary of Box's, and are used to implement boundary conditions to discretized partial differential equations.
A FabSet is an array of pointers to FABs. The standard FAB operators, however, have been modified to be more useful for maintaining boundary conditions for partial differential equations discretized on boxes. Under normal circumstances, a FAB will be created for each face of a box. For a group of boxes, a FabSet will be the group of FABs at a particular orientation (ie. the lo-i side of each grid in a list).
Since a FabSet FAB will likely be used to bound a grid box, FArrayBox::resize() operations are disallowed. Also, to preserve flexibility in applicable boundary scenarios, intersecting FABs in the FabSet are not guaranteed to contain identical data–thus copy operations from a FabSet to any FAB-like structure may be order-dependent.
FabSets are used primarily as a data storage mechanism, and are manipulated by more sophisticated control classes.