4#include <AMReX_Config.H>
61#ifdef AMREX_STRICT_MODE
73#ifdef AMREX_STRICT_MODE
116 [[nodiscard]]
int min (
int comp,
118 bool local =
false)
const;
131 [[nodiscard]]
int min (
const Box& region,
134 bool local =
false)
const;
148 [[nodiscard]]
int max (
int comp,
150 bool local =
false)
const;
163 [[nodiscard]]
int max (
const Box& region,
166 bool local =
false)
const;
177 [[nodiscard]]
Long sum (
int comp,
int nghost = 0,
bool local =
false)
const;
184 [[nodiscard]]
Long sum (
Box const& region,
int comp = 0,
bool local =
false)
const;
349 void negate (
int nghost = 0);
368 int nghost = 0)
const;
375 int nghost = 0)
const;
583#ifdef AMREX_STRICT_MODE
595#ifdef AMREX_STRICT_MODE
609std::unique_ptr<iMultiFab>
Assertion macros used across AMReX for runtime consistency checks.
Reduction helpers and utility algorithms for FabArray objects.
Distributed container of FAB objects plus copy and fill utilities.
Abstract base class for memory arenas.
Definition AMReX_Arena.H:153
Reference-counted collection of Boxes.
Definition AMReX_BoxArray.H:676
Default FabFactory that calls new / delete on the FAB type directly.
Definition AMReX_FabFactory.H:124
Calculates the distribution of FABs to MPI processes.
Definition AMReX_DistributionMapping.H:51
Base class for FabArray.
Definition AMReX_FabArrayBase.H:47
An Array of FortranArrayBox(FAB)-like Objects.
Definition AMReX_FabArray.H:356
Abstract factory interface for creating, aliasing, and destroying FAB objects.
Definition AMReX_FabFactory.H:73
This provides length of period for periodic domains. 0 means it is not periodic in that direction....
Definition AMReX_Periodicity.H:17
A Collection of IArrayBoxes.
Definition AMReX_iMultiFab.H:34
static void Initialize()
Definition AMReX_iMultiFab.cpp:210
IntVect maxIndex(int comp, int nghost=0) const
Definition AMReX_iMultiFab.cpp:581
static void Swap(iMultiFab &dst, iMultiFab &src, int srccomp, int dstcomp, int numcomp, int nghost)
Swap from src to dst including nghost ghost cells. The two iMultiFabs MUST have the same underlying B...
Definition AMReX_iMultiFab.cpp:74
void define(const BoxArray &bxs, const DistributionMapping &dm, int nvar, const IntVect &ngrow, const MFInfo &info=MFInfo(), const FabFactory< IArrayBox > &factory=DefaultFabFactory< IArrayBox >())
Definition AMReX_iMultiFab.cpp:264
int max(int comp, int nghost=0, bool local=false) const
Returns the maximum value contained in component comp of the iMultiFab. The parameter nghost determin...
Definition AMReX_iMultiFab.cpp:370
Long sum(int comp, int nghost=0, bool local=false) const
Returns the sum in component comp.
Definition AMReX_iMultiFab.cpp:454
static void Finalize()
Definition AMReX_iMultiFab.cpp:220
int min(int comp, int nghost=0, bool local=false) const
Returns the minimum value contained in component comp of the iMultiFab. The parameter nghost determin...
Definition AMReX_iMultiFab.cpp:286
iMultiFab() noexcept=default
Constructs an empty iMultiFab. Data can be defined at a later time using the define member functions ...
iMultiFab & operator=(iMultiFab &&rhs) noexcept=default
static void Subtract(iMultiFab &dst, const iMultiFab &src, int srccomp, int dstcomp, int numcomp, int nghost)
Subtract src from dst including nghost ghost cells. The two iMultiFabs MUST have the same underlying ...
Definition AMReX_iMultiFab.cpp:93
IntVect minIndex(int comp, int nghost=0) const
Definition AMReX_iMultiFab.cpp:573
iMultiFab(iMultiFab &&rhs) noexcept=default
void minus(const iMultiFab &mf, int strt_comp, int num_comp, int nghost)
This function subtracts the values of the cells in mf from the corresponding cells of this iMultiFab....
Definition AMReX_iMultiFab.cpp:589
static void Add(iMultiFab &dst, const iMultiFab &src, int srccomp, int dstcomp, int numcomp, int nghost)
Add src to dst including nghost ghost cells. The two iMultiFabs MUST have the same underlying BoxArra...
Definition AMReX_iMultiFab.cpp:24
static void Divide(iMultiFab &dst, const iMultiFab &src, int srccomp, int dstcomp, int numcomp, int nghost)
Divide dst by src including nghost ghost cells. The two iMultiFabs MUST have the same underlying BoxA...
Definition AMReX_iMultiFab.cpp:147
void plus(int val, int comp, int num_comp, int nghost=0)
Adds the scalar value val to the value of each cell in the specified subregion of the iMultiFab....
Definition AMReX_iMultiFab.cpp:607
void divide(const iMultiFab &mf, int strt_comp, int num_comp, int nghost)
This function divides the values of the cells in mf from the corresponding cells of this iMultiFab....
Definition AMReX_iMultiFab.cpp:598
static void Multiply(iMultiFab &dst, const iMultiFab &src, int srccomp, int dstcomp, int numcomp, int nghost)
Multiply dst by src including nghost ghost cells. The two iMultiFabs MUST have the same underlying Bo...
Definition AMReX_iMultiFab.cpp:120
void negate(int comp, int num_comp, int nghost=0)
Negates the value of each cell in the specified subregion of the iMultiFab. The subregion consists of...
Definition AMReX_iMultiFab.cpp:676
void mult(int val, int comp, int num_comp, int nghost=0)
Scales the value of each cell in the specified subregion of the iMultiFab by the scalar val (a[i] <- ...
Definition AMReX_iMultiFab.cpp:649
iMultiFab(const iMultiFab &rhs)=delete
static void Copy(iMultiFab &dst, const iMultiFab &src, int srccomp, int dstcomp, int numcomp, int nghost)
Copy from src to dst including nghost ghost cells. The two iMultiFabs MUST have the same underlying B...
Definition AMReX_iMultiFab.cpp:51
amrex_long Long
Definition AMReX_INT.H:30
Definition AMReX_Amr.cpp:50
MakeType
Definition AMReX_MakeType.H:7
std::unique_ptr< iMultiFab > OwnerMask(FabArrayBase const &mf, const Periodicity &period, const IntVect &ngrow)
Definition AMReX_iMultiFab.cpp:699
FabArray memory allocation information.
Definition AMReX_FabArray.H:73