Block-Structured AMR Software Framework
amrex::FabArrayBase Class Reference

Base class for FabArray. More...

#include <AMReX_FabArrayBase.H>

Inheritance diagram for amrex::FabArrayBase:
amrex::FabArray< BaseFab< GpuComplex< Real > > > amrex::FabArray< amrex::BaseFab< AtomicInt > > amrex::FabArray< TagBox > amrex::FabArray< amrex::BaseFab< PetscInt > > amrex::FabArray< amrex::EBCellFlagFab > amrex::FabArray< amrex::Mask > amrex::FabArray< amrex::BaseFab< HYPRE_Int > > amrex::FabArray< FArrayBox > amrex::FabArray< amrex::CutFab > amrex::FabArray< IArrayBox > amrex::LayoutData< amrex::PODVector< HYPRE_Int > > amrex::LayoutData< amrex::PODVector< Int > > amrex::LayoutData< HYPRE_Int > amrex::LayoutData< amrex::GpuArray< amrex::MLCellLinOpT::BCTL, 2 *AMREX_SPACEDIM > * > amrex::LayoutData< amrex::PODVector< int > > amrex::LayoutData< int > amrex::LayoutData< GFab > amrex::LayoutData< Int > amrex::LayoutData< PetscInt > amrex::LayoutData< amrex::Vector< amrex::Vector< amrex::BoundCond > > > amrex::LayoutData< amrex::Vector< RealTuple > > amrex::LayoutData< RealTuple > amrex::LayoutData< amrex::Vector< BCTuple > > amrex::FabArray< FAB > amrex::LayoutData< T >

Classes

struct  BDKey
 
struct  CacheStats
 
struct  CFinfo
 coarse/fine boundary More...
 
struct  CommMetaData
 
struct  CopyComTag
 Used by a bunch of routines when communicating via MPI. More...
 
struct  CPC
 parallel copy or add More...
 
struct  FabArrayStats
 
struct  FabComTag
 Used for collecting information used in communicating FABs. More...
 
struct  FB
 FillBoundary. More...
 
struct  FPinfo
 
struct  meminfo
 
struct  ParForInfo
 For ParallelFor(FabArray) More...
 
struct  PolarB
 Fill polar boundary in spherical coordinates. More...
 
struct  RB180
 Rotate Boundary by 180. More...
 
struct  RB90
 Rotate Boundary by 90. More...
 
struct  RegionTag
 
struct  TileArray
 Tiling. More...
 

Public Types

enum  CpOp { COPY = 0 , ADD = 1 }
 parallel copy or add More...
 
using CopyComTagsContainer = CopyComTag::CopyComTagsContainer
 
using MapOfCopyComTagContainers = CopyComTag::MapOfCopyComTagContainers
 
using FPinfoCache = std::multimap< BDKey, FabArrayBase::FPinfo * >
 
using FPinfoCacheIter = FPinfoCache::iterator
 
using CFinfoCache = std::multimap< BDKey, FabArrayBase::CFinfo * >
 
using CFinfoCacheIter = CFinfoCache::iterator
 
using TAMap = std::map< std::pair< IntVect, IntVect >, TileArray >
 
using TACache = std::map< BDKey, TAMap >
 
using FBCache = std::multimap< BDKey, FabArrayBase::FB * >
 
using FBCacheIter = FBCache::iterator
 
using CPCache = std::multimap< BDKey, FabArrayBase::CPC * >
 
using CPCacheIter = CPCache::iterator
 
using RB90Cache = std::multimap< BDKey, FabArrayBase::RB90 * >
 
using RB90CacheIter = RB90Cache::iterator
 
using RB180Cache = std::multimap< BDKey, FabArrayBase::RB180 * >
 
using RB180CacheIter = RB180Cache::iterator
 
using PolarBCache = std::multimap< BDKey, FabArrayBase::PolarB * >
 
using PolarBCacheIter = PolarBCache::iterator
 

Public Member Functions

 FabArrayBase ()=default
 
 ~FabArrayBase ()=default
 
 FabArrayBase (const BoxArray &bxs, const DistributionMapping &dm, int nvar, int ngrow)
 
 FabArrayBase (const BoxArray &bxs, const DistributionMapping &dm, int nvar, const IntVect &ngrow)
 
 FabArrayBase (FabArrayBase &&rhs) noexcept=default
 
 FabArrayBase (const FabArrayBase &rhs)=default
 
FabArrayBaseoperator= (const FabArrayBase &rhs)=default
 
FabArrayBaseoperator= (FabArrayBase &&rhs)=default
 
void define (const BoxArray &bxs, const DistributionMapping &dm, int nvar, int ngrow)
 
void define (const BoxArray &bxs, const DistributionMapping &dm, int nvar, const IntVect &ngrow)
 
int nGrow (int direction=0) const noexcept
 Return the grow factor that defines the region of definition. More...
 
IntVect nGrowVect () const noexcept
 
int nComp () const noexcept
 Return number of variables (aka components) associated with each point. More...
 
IndexType ixType () const noexcept
 Return index type. More...
 
bool empty () const noexcept
 
const BoxArrayboxArray () const noexcept
 Return a constant reference to the BoxArray that defines the valid region associated with this FabArray. More...
 
Box box (int K) const noexcept
 Return the Kth Box in the BoxArray. That is, the valid region of the Kth grid. More...
 
Box fabbox (int K) const noexcept
 Return the Kth FABs Box in the FabArray. That is, the region the Kth fab is actually defined on. More...
 
int size () const noexcept
 Return the number of FABs in the FabArray. More...
 
int local_size () const noexcept
 Return the number of local FABs in the FabArray. More...
 
const Vector< int > & IndexArray () const noexcept
 Return constant reference to indices in the FabArray that we have access. More...
 
int localindex (int K) const noexcept
 Return local index in the vector of FABs. More...
 
const DistributionMappingDistributionMap () const noexcept
 Return constant reference to associated DistributionMapping. More...
 
bool is_nodal () const noexcept
 This tests on whether the FabArray is fully nodal. More...
 
bool is_nodal (int dir) const noexcept
 This tests on whether the FabArray is nodal in direction dir. More...
 
bool is_cell_centered () const noexcept
 This tests on whether the FabArray is cell-centered. More...
 
void setMultiGhost (bool a_multi_ghost)
 
IntVect nGrowFilled () const noexcept
 
void setNGrowFilled (IntVect const &ng) noexcept
 
bool isFusingCandidate () const noexcept
 Is this a good candidate for kernel fusing? More...
 
BDKey getBDKey () const noexcept
 
void updateBDKey ()
 
void flushFPinfo (bool no_assertion=false) const
 
void flushCFinfo (bool no_assertion=false) const
 
const TileArraygetTileArray (const IntVect &tilesize) const
 
void clear ()
 
const std::vector< bool > & OwnerShip () const noexcept
 Return owenership of fabs. The concept of ownership only applies when UPC++ team is used. In that case, each fab is shared by team workers, with one taking the ownership. More...
 
bool isOwner (int li) const noexcept
 
void buildTileArray (const IntVect &tilesize, TileArray &ta) const
 
void flushTileArray (const IntVect &tilesize=IntVect::TheZeroVector(), bool no_assertion=false) const
 
void define_fb_metadata (CommMetaData &cmd, const IntVect &nghost, bool cross, const Periodicity &period, bool multi_ghost) const
 
const FBgetFB (const IntVect &nghost, const Periodicity &period, bool cross=false, bool enforce_periodicity_only=false, bool override_sync=false) const
 
void flushFB (bool no_assertion=false) const
 This flushes its own FB. More...
 
const CPCgetCPC (const IntVect &dstng, const FabArrayBase &src, const IntVect &srcng, const Periodicity &period, bool to_ghost_cells_only=false) const
 
void flushCPC (bool no_assertion=false) const
 This flushes its own CPC. More...
 
const RB90getRB90 (const IntVect &nghost, const Box &domain) const
 
void flushRB90 (bool no_assertion=false) const
 This flushes its own RB90. More...
 
const RB180getRB180 (const IntVect &nghost, const Box &domain) const
 
void flushRB180 (bool no_assertion=false) const
 This flushes its own RB180. More...
 
const PolarBgetPolarB (const IntVect &nghost, const Box &domain) const
 
void flushPolarB (bool no_assertion=false) const
 This flushes its own PolarB. More...
 
ParForInfo const & getParForInfo (const IntVect &nghost, int nthreads) const
 
void flushParForInfo (bool no_assertion=false) const
 
void clearThisBD (bool no_assertion=false) const
 clear BD count and caches associated with this BD, if no other is using this BD. More...
 
void addThisBD ()
 add the current BD into BD count database More...
 

Static Public Member Functions

static Long bytesOfMapOfCopyComTagContainers (const MapOfCopyComTagContainers &)
 
static void Initialize ()
 Initialize from ParmParse with "fabarray" prefix. More...
 
static void Finalize ()
 
static const FPinfoTheFPinfo (const FabArrayBase &srcfa, const FabArrayBase &dstfa, const IntVect &dstng, const BoxConverter &coarsener, const Geometry &fgeom, const Geometry &cgeom, const EB2::IndexSpace *)
 
static const CFinfoTheCFinfo (const FabArrayBase &finefa, const Geometry &finegm, const IntVect &ng, bool include_periodic, bool include_physbndry)
 
static void updateMemUsage (std::string const &tag, Long nbytes, Arena const *ar)
 
static void printMemUsage ()
 
static Long queryMemUsage (const std::string &tag=std::string("All"))
 
static Long queryMemUsageHWM (const std::string &tag=std::string("All"))
 
static void pushRegionTag (const char *t)
 
static void pushRegionTag (std::string t)
 
static void popRegionTag ()
 
static void flushTileArrayCache ()
 This flushes the entire cache. More...
 
static void flushFBCache ()
 This flushes the entire cache. More...
 
static void flushCPCache ()
 This flusheds the entire cache. More...
 
static void flushRB90Cache ()
 This flushes the entire cache. More...
 
static void flushRB180Cache ()
 This flushes the entire cache. More...
 
static void flushPolarBCache ()
 This flushes the entire cache. More...
 
static void flushParForCache ()
 
static bool getAllocSingleChunk ()
 

Public Attributes

BoxArray boxarray
 
DistributionMapping distributionMap
 
Vector< intindexArray
 
std::vector< bool > ownership
 
IntVect n_grow
 
int n_comp
 
BDKey m_bdkey
 
IntVect n_filled
 
bool m_multi_ghost = false
 

Static Public Attributes

static AMREX_EXPORT IntVect mfiter_tile_size
 Default tilesize in MFIter. More...
 
static AMREX_EXPORT int MaxComp
 The maximum number of components to copy() at a time. More...
 
static AMREX_EXPORT IntVect comm_tile_size
 communication tile size More...
 
static FPinfoCache m_TheFillPatchCache
 
static CacheStats m_FPinfo_stats
 
static CFinfoCache m_TheCrseFineCache
 
static CacheStats m_CFinfo_stats
 
static std::map< std::string, meminfom_mem_usage
 
static AMREX_EXPORT std::vector< std::string > m_region_tag
 
static TACache m_TheTileArrayCache
 
static CacheStats m_TAC_stats
 
static FBCache m_TheFBCache
 
static CacheStats m_FBC_stats
 
static CPCache m_TheCPCache
 
static CacheStats m_CPC_stats
 
static RB90Cache m_TheRB90Cache
 
static RB180Cache m_TheRB180Cache
 
static PolarBCache m_ThePolarBCache
 
static std::multimap< BDKey, ParForInfo * > m_TheParForCache
 
static std::map< BDKey, intm_BD_count
 Keep track of how many FabArrays are built with the same BDKey. More...
 
static AMREX_EXPORT FabArrayStats m_FA_stats
 
static AMREX_EXPORT bool m_alloc_single_chunk
 

Friends

class MFIter
 
template<class FAB >
void FillBoundary (Vector< FabArray< FAB > * > const &mf, const Periodicity &period)
 

Detailed Description

Base class for FabArray.

Not to be confused with FArrayBox or FAB shorthands. Can be read as FArrayBox-like Array Base.

Member Typedef Documentation

◆ CFinfoCache

◆ CFinfoCacheIter

using amrex::FabArrayBase::CFinfoCacheIter = CFinfoCache::iterator

◆ CopyComTagsContainer

◆ CPCache

◆ CPCacheIter

using amrex::FabArrayBase::CPCacheIter = CPCache::iterator

◆ FBCache

◆ FBCacheIter

using amrex::FabArrayBase::FBCacheIter = FBCache::iterator

◆ FPinfoCache

◆ FPinfoCacheIter

using amrex::FabArrayBase::FPinfoCacheIter = FPinfoCache::iterator

◆ MapOfCopyComTagContainers

◆ PolarBCache

◆ PolarBCacheIter

using amrex::FabArrayBase::PolarBCacheIter = PolarBCache::iterator

◆ RB180Cache

◆ RB180CacheIter

using amrex::FabArrayBase::RB180CacheIter = RB180Cache::iterator

◆ RB90Cache

◆ RB90CacheIter

using amrex::FabArrayBase::RB90CacheIter = RB90Cache::iterator

◆ TACache

◆ TAMap

using amrex::FabArrayBase::TAMap = std::map<std::pair<IntVect,IntVect>, TileArray>

Member Enumeration Documentation

◆ CpOp

parallel copy or add

Enumerator
COPY 
ADD 

Constructor & Destructor Documentation

◆ FabArrayBase() [1/5]

amrex::FabArrayBase::FabArrayBase ( )
default

◆ ~FabArrayBase()

amrex::FabArrayBase::~FabArrayBase ( )
default

◆ FabArrayBase() [2/5]

amrex::FabArrayBase::FabArrayBase ( const BoxArray bxs,
const DistributionMapping dm,
int  nvar,
int  ngrow 
)

◆ FabArrayBase() [3/5]

amrex::FabArrayBase::FabArrayBase ( const BoxArray bxs,
const DistributionMapping dm,
int  nvar,
const IntVect ngrow 
)

◆ FabArrayBase() [4/5]

amrex::FabArrayBase::FabArrayBase ( FabArrayBase &&  rhs)
defaultnoexcept

◆ FabArrayBase() [5/5]

amrex::FabArrayBase::FabArrayBase ( const FabArrayBase rhs)
default

Member Function Documentation

◆ addThisBD()

void amrex::FabArrayBase::addThisBD ( )

add the current BD into BD count database

◆ box()

Box amrex::FabArrayBase::box ( int  K) const
inlinenoexcept

Return the Kth Box in the BoxArray. That is, the valid region of the Kth grid.

◆ boxArray()

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

Return a constant reference to the BoxArray that defines the valid region associated with this FabArray.

◆ buildTileArray()

void amrex::FabArrayBase::buildTileArray ( const IntVect tilesize,
TileArray ta 
) const

◆ bytesOfMapOfCopyComTagContainers()

static Long amrex::FabArrayBase::bytesOfMapOfCopyComTagContainers ( const MapOfCopyComTagContainers )
static

◆ clear()

void amrex::FabArrayBase::clear ( )

◆ clearThisBD()

void amrex::FabArrayBase::clearThisBD ( bool  no_assertion = false) const

clear BD count and caches associated with this BD, if no other is using this BD.

◆ define() [1/2]

void amrex::FabArrayBase::define ( const BoxArray bxs,
const DistributionMapping dm,
int  nvar,
const IntVect ngrow 
)

◆ define() [2/2]

void amrex::FabArrayBase::define ( const BoxArray bxs,
const DistributionMapping dm,
int  nvar,
int  ngrow 
)

◆ define_fb_metadata()

void amrex::FabArrayBase::define_fb_metadata ( CommMetaData cmd,
const IntVect nghost,
bool  cross,
const Periodicity period,
bool  multi_ghost 
) const

◆ DistributionMap()

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

Return constant reference to associated DistributionMapping.

◆ empty()

bool amrex::FabArrayBase::empty ( ) const
inlinenoexcept

◆ fabbox()

Box amrex::FabArrayBase::fabbox ( int  K) const
noexcept

Return the Kth FABs Box in the FabArray. That is, the region the Kth fab is actually defined on.

◆ Finalize()

static void amrex::FabArrayBase::Finalize ( )
static

◆ flushCFinfo()

void amrex::FabArrayBase::flushCFinfo ( bool  no_assertion = false) const

◆ flushCPC()

void amrex::FabArrayBase::flushCPC ( bool  no_assertion = false) const

This flushes its own CPC.

◆ flushCPCache()

static void amrex::FabArrayBase::flushCPCache ( )
static

This flusheds the entire cache.

◆ flushFB()

void amrex::FabArrayBase::flushFB ( bool  no_assertion = false) const

This flushes its own FB.

◆ flushFBCache()

static void amrex::FabArrayBase::flushFBCache ( )
static

This flushes the entire cache.

◆ flushFPinfo()

void amrex::FabArrayBase::flushFPinfo ( bool  no_assertion = false) const

◆ flushParForCache()

static void amrex::FabArrayBase::flushParForCache ( )
static

◆ flushParForInfo()

void amrex::FabArrayBase::flushParForInfo ( bool  no_assertion = false) const

◆ flushPolarB()

void amrex::FabArrayBase::flushPolarB ( bool  no_assertion = false) const

This flushes its own PolarB.

◆ flushPolarBCache()

static void amrex::FabArrayBase::flushPolarBCache ( )
static

This flushes the entire cache.

◆ flushRB180()

void amrex::FabArrayBase::flushRB180 ( bool  no_assertion = false) const

This flushes its own RB180.

◆ flushRB180Cache()

static void amrex::FabArrayBase::flushRB180Cache ( )
static

This flushes the entire cache.

◆ flushRB90()

void amrex::FabArrayBase::flushRB90 ( bool  no_assertion = false) const

This flushes its own RB90.

◆ flushRB90Cache()

static void amrex::FabArrayBase::flushRB90Cache ( )
static

This flushes the entire cache.

◆ flushTileArray()

void amrex::FabArrayBase::flushTileArray ( const IntVect tilesize = IntVect::TheZeroVector(),
bool  no_assertion = false 
) const

◆ flushTileArrayCache()

static void amrex::FabArrayBase::flushTileArrayCache ( )
static

This flushes the entire cache.

◆ getAllocSingleChunk()

static bool amrex::FabArrayBase::getAllocSingleChunk ( )
inlinestatic

◆ getBDKey()

BDKey amrex::FabArrayBase::getBDKey ( ) const
inlinenoexcept

◆ getCPC()

const CPC& amrex::FabArrayBase::getCPC ( const IntVect dstng,
const FabArrayBase src,
const IntVect srcng,
const Periodicity period,
bool  to_ghost_cells_only = false 
) const

◆ getFB()

const FB& amrex::FabArrayBase::getFB ( const IntVect nghost,
const Periodicity period,
bool  cross = false,
bool  enforce_periodicity_only = false,
bool  override_sync = false 
) const

◆ getParForInfo()

ParForInfo const& amrex::FabArrayBase::getParForInfo ( const IntVect nghost,
int  nthreads 
) const

◆ getPolarB()

const PolarB& amrex::FabArrayBase::getPolarB ( const IntVect nghost,
const Box domain 
) const

◆ getRB180()

const RB180& amrex::FabArrayBase::getRB180 ( const IntVect nghost,
const Box domain 
) const

◆ getRB90()

const RB90& amrex::FabArrayBase::getRB90 ( const IntVect nghost,
const Box domain 
) const

◆ getTileArray()

const TileArray* amrex::FabArrayBase::getTileArray ( const IntVect tilesize) const

◆ IndexArray()

const Vector<int>& amrex::FabArrayBase::IndexArray ( ) const
inlinenoexcept

Return constant reference to indices in the FabArray that we have access.

◆ Initialize()

static void amrex::FabArrayBase::Initialize ( )
static

Initialize from ParmParse with "fabarray" prefix.

◆ is_cell_centered()

bool amrex::FabArrayBase::is_cell_centered ( ) const
noexcept

This tests on whether the FabArray is cell-centered.

◆ is_nodal() [1/2]

bool amrex::FabArrayBase::is_nodal ( ) const
noexcept

This tests on whether the FabArray is fully nodal.

◆ is_nodal() [2/2]

bool amrex::FabArrayBase::is_nodal ( int  dir) const
noexcept

This tests on whether the FabArray is nodal in direction dir.

◆ isFusingCandidate()

bool amrex::FabArrayBase::isFusingCandidate ( ) const
noexcept

Is this a good candidate for kernel fusing?

◆ isOwner()

bool amrex::FabArrayBase::isOwner ( int  li) const
inlinenoexcept

◆ ixType()

IndexType amrex::FabArrayBase::ixType ( ) const
inlinenoexcept

Return index type.

◆ local_size()

int amrex::FabArrayBase::local_size ( ) const
inlinenoexcept

Return the number of local FABs in the FabArray.

◆ localindex()

int amrex::FabArrayBase::localindex ( int  K) const
inlinenoexcept

Return local index in the vector of FABs.

◆ nComp()

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

Return number of variables (aka components) associated with each point.

◆ nGrow()

int amrex::FabArrayBase::nGrow ( int  direction = 0) const
inlinenoexcept

Return the grow factor that defines the region of definition.

◆ nGrowFilled()

IntVect amrex::FabArrayBase::nGrowFilled ( ) const
inlinenoexcept

◆ nGrowVect()

IntVect amrex::FabArrayBase::nGrowVect ( ) const
inlinenoexcept

◆ operator=() [1/2]

FabArrayBase& amrex::FabArrayBase::operator= ( const FabArrayBase rhs)
default

◆ operator=() [2/2]

FabArrayBase& amrex::FabArrayBase::operator= ( FabArrayBase &&  rhs)
default

◆ OwnerShip()

const std::vector<bool>& amrex::FabArrayBase::OwnerShip ( ) const
inlinenoexcept

Return owenership of fabs. The concept of ownership only applies when UPC++ team is used. In that case, each fab is shared by team workers, with one taking the ownership.

◆ popRegionTag()

static void amrex::FabArrayBase::popRegionTag ( )
static

◆ printMemUsage()

static void amrex::FabArrayBase::printMemUsage ( )
static

◆ pushRegionTag() [1/2]

static void amrex::FabArrayBase::pushRegionTag ( const char *  t)
static

◆ pushRegionTag() [2/2]

static void amrex::FabArrayBase::pushRegionTag ( std::string  t)
static

◆ queryMemUsage()

static Long amrex::FabArrayBase::queryMemUsage ( const std::string &  tag = std::string("All"))
static

◆ queryMemUsageHWM()

static Long amrex::FabArrayBase::queryMemUsageHWM ( const std::string &  tag = std::string("All"))
static

◆ setMultiGhost()

void amrex::FabArrayBase::setMultiGhost ( bool  a_multi_ghost)
inline

◆ setNGrowFilled()

void amrex::FabArrayBase::setNGrowFilled ( IntVect const &  ng)
inlinenoexcept

◆ size()

int amrex::FabArrayBase::size ( ) const
inlinenoexcept

Return the number of FABs in the FabArray.

◆ TheCFinfo()

static const CFinfo& amrex::FabArrayBase::TheCFinfo ( const FabArrayBase finefa,
const Geometry finegm,
const IntVect ng,
bool  include_periodic,
bool  include_physbndry 
)
static

◆ TheFPinfo()

static const FPinfo& amrex::FabArrayBase::TheFPinfo ( const FabArrayBase srcfa,
const FabArrayBase dstfa,
const IntVect dstng,
const BoxConverter coarsener,
const Geometry fgeom,
const Geometry cgeom,
const EB2::IndexSpace  
)
static

◆ updateBDKey()

void amrex::FabArrayBase::updateBDKey ( )

◆ updateMemUsage()

static void amrex::FabArrayBase::updateMemUsage ( std::string const &  tag,
Long  nbytes,
Arena const *  ar 
)
static

Friends And Related Function Documentation

◆ FillBoundary

template<class FAB >
void FillBoundary ( Vector< FabArray< FAB > * > const &  mf,
const Periodicity period 
)
friend

◆ MFIter

friend class MFIter
friend

Member Data Documentation

◆ boxarray

BoxArray amrex::FabArrayBase::boxarray
mutable

◆ comm_tile_size

AMREX_EXPORT IntVect amrex::FabArrayBase::comm_tile_size
static

communication tile size

To maximize thread efficiency we now can decompose things like intersections among boxes into smaller tiles. This sets their maximum size.

◆ distributionMap

DistributionMapping amrex::FabArrayBase::distributionMap

◆ indexArray

Vector<int> amrex::FabArrayBase::indexArray

◆ m_alloc_single_chunk

AMREX_EXPORT bool amrex::FabArrayBase::m_alloc_single_chunk
static

◆ m_BD_count

std::map<BDKey, int> amrex::FabArrayBase::m_BD_count
static

Keep track of how many FabArrays are built with the same BDKey.

◆ m_bdkey

BDKey amrex::FabArrayBase::m_bdkey
mutable

◆ m_CFinfo_stats

CacheStats amrex::FabArrayBase::m_CFinfo_stats
static

◆ m_CPC_stats

CacheStats amrex::FabArrayBase::m_CPC_stats
static

◆ m_FA_stats

AMREX_EXPORT FabArrayStats amrex::FabArrayBase::m_FA_stats
static

◆ m_FBC_stats

CacheStats amrex::FabArrayBase::m_FBC_stats
static

◆ m_FPinfo_stats

CacheStats amrex::FabArrayBase::m_FPinfo_stats
static

◆ m_mem_usage

std::map<std::string, meminfo> amrex::FabArrayBase::m_mem_usage
static

◆ m_multi_ghost

bool amrex::FabArrayBase::m_multi_ghost = false

◆ m_region_tag

AMREX_EXPORT std::vector<std::string> amrex::FabArrayBase::m_region_tag
static

◆ m_TAC_stats

CacheStats amrex::FabArrayBase::m_TAC_stats
static

◆ m_TheCPCache

CPCache amrex::FabArrayBase::m_TheCPCache
static

◆ m_TheCrseFineCache

CFinfoCache amrex::FabArrayBase::m_TheCrseFineCache
static

◆ m_TheFBCache

FBCache amrex::FabArrayBase::m_TheFBCache
static

◆ m_TheFillPatchCache

FPinfoCache amrex::FabArrayBase::m_TheFillPatchCache
static

◆ m_TheParForCache

std::multimap<BDKey,ParForInfo*> amrex::FabArrayBase::m_TheParForCache
static

◆ m_ThePolarBCache

PolarBCache amrex::FabArrayBase::m_ThePolarBCache
static

◆ m_TheRB180Cache

RB180Cache amrex::FabArrayBase::m_TheRB180Cache
static

◆ m_TheRB90Cache

RB90Cache amrex::FabArrayBase::m_TheRB90Cache
static

◆ m_TheTileArrayCache

TACache amrex::FabArrayBase::m_TheTileArrayCache
static

◆ MaxComp

AMREX_EXPORT int amrex::FabArrayBase::MaxComp
static

The maximum number of components to copy() at a time.

◆ mfiter_tile_size

AMREX_EXPORT IntVect amrex::FabArrayBase::mfiter_tile_size
static

Default tilesize in MFIter.

◆ n_comp

int amrex::FabArrayBase::n_comp

◆ n_filled

IntVect amrex::FabArrayBase::n_filled

◆ n_grow

IntVect amrex::FabArrayBase::n_grow

◆ ownership

std::vector<bool> amrex::FabArrayBase::ownership

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