Block-Structured AMR Software Framework
Loading...
Searching...
No Matches
amrex::MultiCutFab Class Reference

FabArray façade that only allocates cut-cell Fabs (skipping regular cells). More...

#include <AMReX_MultiCutFab.H>

Public Member Functions

 MultiCutFab ()
 MultiCutFab (const BoxArray &ba, const DistributionMapping &dm, int ncomp, int ngrow, const FabArray< EBCellFlagFab > &cellflags)
 ~MultiCutFab ()
 MultiCutFab (MultiCutFab &&rhs) noexcept=default
 MultiCutFab (const MultiCutFab &rhs)=delete
MultiCutFab & operator= (const MultiCutFab &rhs)=delete
MultiCutFab & operator= (MultiCutFab &&rhs)=delete
void define (const BoxArray &ba, const DistributionMapping &dm, int ncomp, int ngrow, const FabArray< EBCellFlagFab > &cellflags)
const CutFab & operator[] (const MFIter &mfi) const noexcept
 Access the CutFab for mfi.
CutFab & operator[] (const MFIter &mfi) noexcept
const CutFab & operator[] (int global_box_index) const noexcept
 Access by global box index (used outside MFIter loops).
CutFab & operator[] (int global_box_index) noexcept
Array4< Real > array (const MFIter &mfi) noexcept
 Array4 accessors (mutable and const) matching MFIter order.
Array4< Real const > array (const MFIter &mfi) const noexcept
Array4< Real const > const_array (const MFIter &mfi) const noexcept
MultiArray4< Real > arrays () noexcept
MultiArray4< Real const > arrays () const noexcept
MultiArray4< Real const > const_arrays () const noexcept
bool ok (const MFIter &mfi) const noexcept
 Is it OK to call operator[] with this MFIter?
bool ok (int global_box_index) const noexcept
 Is it OK to call operator[] with this global box index?
void setVal (Real val)
 Fill every stored CutFab with a constant val.
FabArray< CutFab > & data () noexcept
const FabArray< CutFab > & data () const noexcept
const BoxArray & boxArray () const noexcept
const DistributionMapping & DistributionMap () const noexcept
int nComp () const noexcept
int nGrow () const noexcept
void ParallelCopy (const MultiCutFab &src, int scomp, int dcomp, int ncomp, int sng, int dng, const Periodicity &period=Periodicity::NonPeriodic())
 Copy overlapping data from src.
MultiFab ToMultiFab (Real regular_value, Real covered_value) const
 Materialize the cut-cell data into a dense MultiFab.

Detailed Description

FabArray façade that only allocates cut-cell Fabs (skipping regular cells).

Constructor & Destructor Documentation

◆ MultiCutFab() [1/4]

amrex::MultiCutFab::MultiCutFab ( )
default

◆ MultiCutFab() [2/4]

amrex::MultiCutFab::MultiCutFab ( const BoxArray & ba,
const DistributionMapping & dm,
int ncomp,
int ngrow,
const FabArray< EBCellFlagFab > & cellflags )

◆ ~MultiCutFab()

amrex::MultiCutFab::~MultiCutFab ( )
default

◆ MultiCutFab() [3/4]

amrex::MultiCutFab::MultiCutFab ( MultiCutFab && rhs)
defaultnoexcept

◆ MultiCutFab() [4/4]

amrex::MultiCutFab::MultiCutFab ( const MultiCutFab & rhs)
delete

Member Function Documentation

◆ array() [1/2]

Array4< Real const > amrex::MultiCutFab::array ( const MFIter & mfi) const
noexcept

◆ array() [2/2]

Array4< Real > amrex::MultiCutFab::array ( const MFIter & mfi)
noexcept

Array4 accessors (mutable and const) matching MFIter order.

◆ arrays() [1/2]

MultiArray4< Real const > amrex::MultiCutFab::arrays ( ) const
inlinenoexcept

◆ arrays() [2/2]

MultiArray4< Real > amrex::MultiCutFab::arrays ( )
inlinenoexcept

◆ boxArray()

const BoxArray & amrex::MultiCutFab::boxArray ( ) const
inlinenoexcept

◆ const_array()

Array4< Real const > amrex::MultiCutFab::const_array ( const MFIter & mfi) const
noexcept

◆ const_arrays()

MultiArray4< Real const > amrex::MultiCutFab::const_arrays ( ) const
inlinenoexcept

◆ data() [1/2]

const FabArray< CutFab > & amrex::MultiCutFab::data ( ) const
inlinenoexcept

◆ data() [2/2]

FabArray< CutFab > & amrex::MultiCutFab::data ( )
inlinenoexcept

◆ define()

void amrex::MultiCutFab::define ( const BoxArray & ba,
const DistributionMapping & dm,
int ncomp,
int ngrow,
const FabArray< EBCellFlagFab > & cellflags )

◆ DistributionMap()

const DistributionMapping & amrex::MultiCutFab::DistributionMap ( ) const
inlinenoexcept

◆ nComp()

int amrex::MultiCutFab::nComp ( ) const
inlinenoexcept

◆ nGrow()

int amrex::MultiCutFab::nGrow ( ) const
inlinenoexcept

◆ ok() [1/2]

bool amrex::MultiCutFab::ok ( const MFIter & mfi) const
noexcept

Is it OK to call operator[] with this MFIter?

◆ ok() [2/2]

bool amrex::MultiCutFab::ok ( int global_box_index) const
noexcept

Is it OK to call operator[] with this global box index?

◆ operator=() [1/2]

MultiCutFab & amrex::MultiCutFab::operator= ( const MultiCutFab & rhs)
delete

◆ operator=() [2/2]

MultiCutFab & amrex::MultiCutFab::operator= ( MultiCutFab && rhs)
delete

◆ operator[]() [1/4]

const CutFab & amrex::MultiCutFab::operator[] ( const MFIter & mfi) const
noexcept

Access the CutFab for mfi.

◆ operator[]() [2/4]

CutFab & amrex::MultiCutFab::operator[] ( const MFIter & mfi)
noexcept

◆ operator[]() [3/4]

const CutFab & amrex::MultiCutFab::operator[] ( int global_box_index) const
noexcept

Access by global box index (used outside MFIter loops).

◆ operator[]() [4/4]

CutFab & amrex::MultiCutFab::operator[] ( int global_box_index)
noexcept

◆ ParallelCopy()

void amrex::MultiCutFab::ParallelCopy ( const MultiCutFab & src,
int scomp,
int dcomp,
int ncomp,
int sng,
int dng,
const Periodicity & period = Periodicity::NonPeriodic() )

Copy overlapping data from src.

◆ setVal()

void amrex::MultiCutFab::setVal ( Real val)

Fill every stored CutFab with a constant val.

◆ ToMultiFab()

MultiFab amrex::MultiCutFab::ToMultiFab ( Real regular_value,
Real covered_value ) const

Materialize the cut-cell data into a dense MultiFab.


The documentation for this class was generated from the following files: