diff --git a/amrex/docs_html/_downloads/008eb6dbfab802633dff40122ece848c/amrex.pdf b/amrex/docs_html/_downloads/008eb6dbfab802633dff40122ece848c/amrex.pdf index a062c4afad..de7239fe4f 100644 Binary files a/amrex/docs_html/_downloads/008eb6dbfab802633dff40122ece848c/amrex.pdf and b/amrex/docs_html/_downloads/008eb6dbfab802633dff40122ece848c/amrex.pdf differ diff --git a/amrex/docs_html/doxygen/AMReX_8H.html b/amrex/docs_html/doxygen/AMReX_8H.html index 135678e891..06ed89a809 100644 --- a/amrex/docs_html/doxygen/AMReX_8H.html +++ b/amrex/docs_html/doxygen/AMReX_8H.html @@ -134,18 +134,18 @@ - - - - + + + +

Typedefs

typedef void(* amrex::PTR_TO_VOID_FUNC) ()
 
typedef void(* amrex::ErrorHandler) (const char *msg)
 
using amrex::PTR_TO_VOID_FUNC = void(*)()
 
using amrex::ErrorHandler = void(*)(const char *)
 
- + - + diff --git a/amrex/docs_html/doxygen/AMReX_8H.js b/amrex/docs_html/doxygen/AMReX_8H.js index d4b12f8f6d..16dc381e13 100644 --- a/amrex/docs_html/doxygen/AMReX_8H.js +++ b/amrex/docs_html/doxygen/AMReX_8H.js @@ -1,8 +1,8 @@ var AMReX_8H = [ [ "AMReX", "classamrex_1_1AMReX.html", "classamrex_1_1AMReX" ], - [ "ErrorHandler", "AMReX_8H.html#aa944154cc363fe5103f6638e3726d2ca", null ], - [ "PTR_TO_VOID_FUNC", "AMReX_8H.html#ace4078f79e7a204048a9fb654f6bd5d6", null ], + [ "ErrorHandler", "AMReX_8H.html#af6f45c130cacf67455811e9b4829f432", null ], + [ "PTR_TO_VOID_FUNC", "AMReX_8H.html#a364202ccae0ac53c5c0d1440b8c06dd2", null ], [ "Abort", "AMReX_8H.html#ab84b536be78c7500a973ff184511a3d7", null ], [ "Abort", "AMReX_8H.html#ad26f2328bf66aa9678347a6055a25431", null ], [ "Assert", "AMReX_8H.html#a346451f63cf84dc86251d9b8263655c8", null ], diff --git a/amrex/docs_html/doxygen/AMReX_8H_source.html b/amrex/docs_html/doxygen/AMReX_8H_source.html index c5d91e9331..212d64a452 100644 --- a/amrex/docs_html/doxygen/AMReX_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX_8H_source.html @@ -131,8 +131,8 @@
30 {
31  class AMReX;
32 
-
33  typedef void (*PTR_TO_VOID_FUNC)();
-
34  typedef void (*ErrorHandler) (const char* msg);
+
33  using PTR_TO_VOID_FUNC = void (*)();
+
34  using ErrorHandler = void (*)(const char*);
35 
36  namespace system
37  {
@@ -163,32 +163,32 @@
62  extern AMREX_EXPORT std::ostream* osout;
63  extern AMREX_EXPORT std::ostream* oserr;
64 
-
65  extern AMREX_EXPORT ErrorHandler error_handler;
+
65  extern AMREX_EXPORT ErrorHandler error_handler;
66  extern AMREX_EXPORT int abort_on_unused_inputs;
67  }
68 
70  [[nodiscard]] std::string Version ();
71 
72  // The returned AMReX* is non-owning! To delete it, call Finalize(AMReX*).
-
73  AMReX* Initialize (MPI_Comm mpi_comm,
+
73  AMReX* Initialize (MPI_Comm mpi_comm,
74  std::ostream& a_osout = std::cout,
75  std::ostream& a_oserr = std::cerr,
-
76  ErrorHandler a_errhandler = nullptr);
+
76  ErrorHandler a_errhandler = nullptr);
77 
78  // The returned AMReX* is non-owning! To delete it, call Finalize(AMReX*).
79  AMReX* Initialize (int& argc, char**& argv, bool build_parm_parse=true,
-
80  MPI_Comm mpi_comm = MPI_COMM_WORLD,
+
80  MPI_Comm mpi_comm = MPI_COMM_WORLD,
81  const std::function<void()>& func_parm_parse = {},
82  std::ostream& a_osout = std::cout,
83  std::ostream& a_oserr = std::cerr,
-
84  ErrorHandler a_errhandler = nullptr);
+
84  ErrorHandler a_errhandler = nullptr);
85 
91  [[nodiscard]] bool Initialized ();
92 
93  void Finalize (AMReX* pamrex);
94  void Finalize (); // Finalize the current top
-
101  void ExecOnFinalize (PTR_TO_VOID_FUNC);
-
102  void ExecOnInitialize (PTR_TO_VOID_FUNC);
+
101  void ExecOnFinalize (PTR_TO_VOID_FUNC);
+
102  void ExecOnInitialize (PTR_TO_VOID_FUNC);
103 
105  template <class... Ts>
106  AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
@@ -269,7 +269,7 @@
190 
196  void write_to_stderr_without_buffering (const char* str);
197 
-
198  void SetErrorHandler (ErrorHandler f);
+
198  void SetErrorHandler (ErrorHandler f);
199 
200  std::ostream& OutStream ();
201  std::ostream& ErrorStream ();
@@ -366,8 +366,8 @@
AMReX_GpuQualifiers.H
AMREX_GPU_HOST_DEVICE
#define AMREX_GPU_HOST_DEVICE
Definition: AMReX_GpuQualifiers.H:14
AMReX_ccse-mpi.H
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
MPI_COMM_WORLD
static constexpr int MPI_COMM_WORLD
Definition: AMReX_ccse-mpi.H:54
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
amrex::AMReX
Definition: AMReX.H:254
amrex::AMReX::empty
static bool empty() noexcept
Definition: AMReX.H:263
amrex::AMReX::size
static int size() noexcept
Definition: AMReX.H:265
@@ -409,6 +409,7 @@
amrex::Initialize
AMReX * Initialize(MPI_Comm mpi_comm, std::ostream &a_osout=std::cout, std::ostream &a_oserr=std::cerr, ErrorHandler a_errhandler=nullptr)
Definition: AMReX.cpp:308
amrex::ErrorStream
std::ostream & ErrorStream()
Definition: AMReX.cpp:812
amrex::Assert
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void Assert(const char *EX, const char *file, int line, const char *msg=nullptr)
Definition: AMReX.H:172
+
amrex::PTR_TO_VOID_FUNC
void(*)() PTR_TO_VOID_FUNC
Definition: AMReX.H:33
amrex::SetErrorHandler
void SetErrorHandler(ErrorHandler f)
Definition: AMReX.cpp:154
amrex::get_command_argument
std::string get_command_argument(int number)
Get command line arguments. The executable name is the zero-th argument. Return empty string if there...
Definition: AMReX.cpp:830
amrex::Error_host
void Error_host(const char *type, const char *msg)
Definition: AMReX.cpp:219
@@ -417,16 +418,15 @@
amrex::Finalize
void Finalize(AMReX *pamrex)
Definition: AMReX.cpp:678
amrex::ignore_unused
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void ignore_unused(const Ts &...)
This shuts up the compiler about unused variables.
Definition: AMReX.H:107
amrex::GccPlacater
void GccPlacater()
Definition: AMReX.H:220
-
amrex::ErrorHandler
void(* ErrorHandler)(const char *msg)
Definition: AMReX.H:34
amrex::Error
void Error(const std::string &msg)
Print out message to cerr and exit via amrex::Abort().
Definition: AMReX.cpp:201
amrex::Warning_host
void Warning_host(const char *msg)
Definition: AMReX.cpp:241
amrex::Verbose
int Verbose() noexcept
Definition: AMReX.cpp:150
-
amrex::PTR_TO_VOID_FUNC
void(* PTR_TO_VOID_FUNC)()
Definition: AMReX.H:33
amrex::Warning
void Warning(const std::string &msg)
Print out warning message to cerr.
Definition: AMReX.cpp:213
amrex::Abort
void Abort(const std::string &msg)
Print out message to cerr and exit via abort().
Definition: AMReX.cpp:207
amrex::Version
std::string Version()
Definition: AMReX_Version.cpp:9
amrex::OutStream
std::ostream & OutStream()
Definition: AMReX.cpp:806
amrex::ExecOnFinalize
void ExecOnFinalize(PTR_TO_VOID_FUNC)
We maintain a stack of functions that need to be called in Finalize(). The functions are called in LI...
Definition: AMReX.cpp:296
+
amrex::ErrorHandler
void(*)(const char *) ErrorHandler
Definition: AMReX.H:34
amrex::Initialized
bool Initialized()
Returns true if there are any currently-active and initialized AMReX instances (i....
Definition: AMReX.cpp:666
diff --git a/amrex/docs_html/doxygen/AMReX__Amr_8H_source.html b/amrex/docs_html/doxygen/AMReX__Amr_8H_source.html index 6dc712b075..987cd9ace0 100644 --- a/amrex/docs_html/doxygen/AMReX__Amr_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__Amr_8H_source.html @@ -127,7 +127,7 @@
34 class Amr
35  : public AmrCore
36 {
-
37  typedef std::multimap< std::pair<int, int>, double > BoundaryPointList;
+
37  using BoundaryPointList = std::multimap< std::pair<int, int>, double >;
38 
39 public:
41  Amr (LevelBld* a_levelbld /* One must pass LevelBld* as an argument now*/);
@@ -257,10 +257,10 @@
256 
257  static const Vector<BoxArray>& getInitialBA() noexcept;
258 
-
265  void setBoundaryGeometry(BoundaryPointList& IntersectLoX,
-
266  BoundaryPointList& IntersectHiX,
-
267  BoundaryPointList& IntersectLoY,
-
268  BoundaryPointList& IntersectHiY) noexcept
+
265  void setBoundaryGeometry(BoundaryPointList& IntersectLoX,
+
266  BoundaryPointList& IntersectHiX,
+
267  BoundaryPointList& IntersectLoY,
+
268  BoundaryPointList& IntersectHiY) noexcept
269  {
270  intersect_lox = IntersectLoX;
271  intersect_hix = IntersectHiX;
@@ -268,12 +268,12 @@
273  intersect_hiy = IntersectHiY;
274  }
275 
-
283  void setBoundaryGeometry(BoundaryPointList& IntersectLoX,
-
284  BoundaryPointList& IntersectHiX,
-
285  BoundaryPointList& IntersectLoY,
-
286  BoundaryPointList& IntersectHiY,
-
287  BoundaryPointList& IntersectLoZ,
-
288  BoundaryPointList& IntersectHiZ) noexcept
+
283  void setBoundaryGeometry(BoundaryPointList& IntersectLoX,
+
284  BoundaryPointList& IntersectHiX,
+
285  BoundaryPointList& IntersectLoY,
+
286  BoundaryPointList& IntersectHiY,
+
287  BoundaryPointList& IntersectLoZ,
+
288  BoundaryPointList& IntersectHiZ) noexcept
289  {
290  intersect_lox = IntersectLoX;
291  intersect_hix = IntersectHiX;
@@ -283,27 +283,27 @@
295  intersect_hiz = IntersectHiZ;
296  }
297 
-
298  BoundaryPointList& getIntersectLoX() noexcept
+
298  BoundaryPointList& getIntersectLoX() noexcept
299  {
300  return intersect_lox;
301  }
-
302  BoundaryPointList& getIntersectHiX() noexcept
+
302  BoundaryPointList& getIntersectHiX() noexcept
303  {
304  return intersect_hix;
305  }
-
306  BoundaryPointList& getIntersectLoY() noexcept
+
306  BoundaryPointList& getIntersectLoY() noexcept
307  {
308  return intersect_loy;
309  }
-
310  BoundaryPointList& getIntersectHiY() noexcept
+
310  BoundaryPointList& getIntersectHiY() noexcept
311  {
312  return intersect_hiy;
313  }
-
314  BoundaryPointList& getIntersectLoZ() noexcept
+
314  BoundaryPointList& getIntersectLoZ() noexcept
315  {
316  return intersect_loz;
317  }
-
318  BoundaryPointList& getIntersectHiZ() noexcept
+
318  BoundaryPointList& getIntersectHiZ() noexcept
319  {
320  return intersect_hiz;
321  }
@@ -453,12 +453,12 @@
478 #endif
479 
480 public:
-
481  BoundaryPointList intersect_lox;
-
482  BoundaryPointList intersect_loy;
-
483  BoundaryPointList intersect_loz;
-
484  BoundaryPointList intersect_hix;
-
485  BoundaryPointList intersect_hiy;
-
486  BoundaryPointList intersect_hiz;
+
481  BoundaryPointList intersect_lox;
+
482  BoundaryPointList intersect_loy;
+
483  BoundaryPointList intersect_loz;
+
484  BoundaryPointList intersect_hix;
+
485  BoundaryPointList intersect_hiy;
+
486  BoundaryPointList intersect_hiz;
487 
488  static bool first_smallplotfile;
489 
@@ -587,7 +587,6 @@
amrex::Amr::last_plotfile
int last_plotfile
Step number of previous plotfile.
Definition: AMReX_Amr.H:423
amrex::Amr::~Amr
~Amr() override
The destructor.
Definition: AMReX_Amr.cpp:713
amrex::Amr::ClearLevel
void ClearLevel(int) override
Delete level data.
Definition: AMReX_Amr.H:378
-
amrex::Amr::BoundaryPointList
std::multimap< std::pair< int, int >, double > BoundaryPointList
Definition: AMReX_Amr.H:37
amrex::Amr::isStatePlotVar
static bool isStatePlotVar(const std::string &name)
Is the string the name of a variable in state_plot_vars?
Definition: AMReX_Amr.cpp:549
amrex::Amr::plot_int
int plot_int
How often plotfile (# of time steps)
Definition: AMReX_Amr.H:425
amrex::Amr::gridlog
std::ofstream gridlog
Definition: AMReX_Amr.H:442
@@ -618,6 +617,7 @@
amrex::Amr::Plot_Files_Output
static bool Plot_Files_Output()
Write out plotfiles (True/False)?
Definition: AMReX_Amr.cpp:151
amrex::Amr::small_plot_per
Real small_plot_per
How often small plotfile (in units of time)
Definition: AMReX_Amr.H:429
amrex::Amr::regrid_grids_file
std::string regrid_grids_file
Grids file that will bypass regridding.
Definition: AMReX_Amr.H:407
+
amrex::Amr::BoundaryPointList
std::multimap< std::pair< int, int >, double > BoundaryPointList
Definition: AMReX_Amr.H:37
amrex::Amr::check_int
int check_int
How often checkpoint (# time steps).
Definition: AMReX_Amr.H:420
amrex::Amr::dtLevel
Real dtLevel(int level) const noexcept
Time step at specified level.
Definition: AMReX_Amr.H:96
amrex::Amr::fillDeriveSmallPlotVarList
static void fillDeriveSmallPlotVarList()
Definition: AMReX_Amr.cpp:655
diff --git a/amrex/docs_html/doxygen/AMReX__BLProfiler_8H_source.html b/amrex/docs_html/doxygen/AMReX__BLProfiler_8H_source.html index a05f583992..0d8cca3c1c 100644 --- a/amrex/docs_html/doxygen/AMReX__BLProfiler_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__BLProfiler_8H_source.html @@ -283,7 +283,7 @@
182 
183  static void AddCommStat(const CommFuncType cft, const int size,
184  const int pid, const int tag);
-
185  static void AddWait(const CommFuncType cft, const MPI_Request &reqs,
+
185  static void AddWait(const CommFuncType cft, const MPI_Request &reqs,
186  const MPI_Status &status, const bool bc);
187  static void AddWaitsome(const CommFuncType cft, const Vector<MPI_Request> &reqs,
188  const int completed, const Vector<MPI_Status> &status,
@@ -389,7 +389,7 @@
289  static int prevCallStackDepth;
290 
291  public:
-
292  typedef std::pair<Real, int> RIpair;
+
292  using RIpair = std::pair<Real, int>;
293  struct fTTComp {
294  bool operator()(const RIpair &lhs, const RIpair &rhs) const {
295  return lhs.first > rhs.first;
@@ -797,7 +797,7 @@
AMReX_REAL.H
AMReX_TinyProfiler.H
AMReX_Vector.H
-
MPI_Request
int MPI_Request
Definition: AMReX_ccse-mpi.H:51
+
MPI_Request
int MPI_Request
Definition: AMReX_ccse-mpi.H:50
amrex::BLProfiler
Definition: AMReX_BLProfiler.H:531
amrex::BLProfiler::BLProfiler
BLProfiler(const std::string &)
Definition: AMReX_BLProfiler.H:533
amrex::BLProfiler::start
void start()
Definition: AMReX_BLProfiler.H:539
@@ -819,7 +819,7 @@
amrex::ParallelDescriptor::Barrier
void Barrier(const std::string &)
Definition: AMReX_ParallelDescriptor.cpp:1164
amrex
Definition: AMReX_Amr.cpp:49
amrex::operator<<
std::ostream & operator<<(std::ostream &os, AmrMesh const &amr_mesh)
Definition: AMReX_AmrMesh.cpp:1035
-
MPI_Status
Definition: AMReX_ccse-mpi.H:50
+
MPI_Status
Definition: AMReX_ccse-mpi.H:51
diff --git a/amrex/docs_html/doxygen/AMReX__BaseFab_8H_source.html b/amrex/docs_html/doxygen/AMReX__BaseFab_8H_source.html index 29c22eb420..ee8ca89840 100644 --- a/amrex/docs_html/doxygen/AMReX__BaseFab_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__BaseFab_8H_source.html @@ -239,7 +239,7 @@
186 
187  template <class U> friend class BaseFab;
188 
-
189  typedef T value_type;
+
189  using value_type = T;
190 
192  BaseFab () noexcept = default;
193 
@@ -3904,6 +3904,7 @@
amrex::BaseFab::min
T min(const Box &subbox, int comp=0) const noexcept
Definition: AMReX_BaseFab.H:2414
amrex::BaseFab::minus
BaseFab< T > & minus(const BaseFab< T > &src, int srccomp, int destcomp, int numcomp=1) noexcept
Subtract src components (srccomp:srccomp+numcomp-1) to this FABs components (destcomp:destcomp+numcom...
Definition: AMReX_BaseFab.H:3280
amrex::BaseFab::dot
T dot(const BaseFab< T > &src, const Box &bx, SrcComp scomp, DestComp dcomp, NumComps ncomp) const noexcept
Dot product of two Fabs.
Definition: AMReX_BaseFab.H:4038
+
amrex::BaseFab::value_type
T value_type
Definition: AMReX_BaseFab.H:189
amrex::BaseFab::SetBoxType
void SetBoxType(const IndexType &typ) noexcept
Change the Box type without change the length.
Definition: AMReX_BaseFab.H:1277
amrex::BaseFab::mult
BaseFab< T > & mult(const BaseFab< T > &src, int srccomp, int destcomp, int numcomp=1) noexcept
Multiply src components (srccomp:srccomp+numcomp-1) with this FABs components (destcomp:destcomp+numc...
Definition: AMReX_BaseFab.H:3338
amrex::BaseFab::divide
BaseFab< T > & divide(const BaseFab< T > &src, const Box &subbox, int srccomp, int destcomp, int numcomp=1) noexcept
Same as above except division is restricted to intersection of subbox and src FAB....
Definition: AMReX_BaseFab.H:3404
@@ -3949,7 +3950,6 @@
amrex::BaseFab::plus
BaseFab< T > & plus(const BaseFab< T > &src, const Box &subbox, int srccomp, int destcomp, int numcomp=1) noexcept
Same as above except addition is restricted to intersection of subbox and src FAB....
Definition: AMReX_BaseFab.H:3206
amrex::BaseFab::operator/=
BaseFab< T > & operator/=(T const &val) noexcept
Definition: AMReX_BaseFab.H:3891
amrex::BaseFab::minmax
std::pair< T, T > minmax(int comp=0) const noexcept
Definition: AMReX_BaseFab.H:2482
-
amrex::BaseFab::value_type
T value_type
Definition: AMReX_BaseFab.H:189
amrex::BaseFab::negate
BaseFab< T > & negate(const Box &bx, DestComp dcomp, NumComps ncomp) noexcept
Definition: AMReX_BaseFab.H:3961
amrex::BaseFab::setVal
void setVal(T const &x, const Box &bx, int dcomp, int ncomp) noexcept
The setVal functions set sub-regions in the BaseFab to a constant value. This most general form speci...
Definition: AMReX_BaseFab.H:1835
amrex::BaseFab::smallEnd
const IntVect & smallEnd() const noexcept
Returns the lower corner of the domain See class Box for analogue.
Definition: AMReX_BaseFab.H:304
diff --git a/amrex/docs_html/doxygen/AMReX__BoxArray_8H_source.html b/amrex/docs_html/doxygen/AMReX__BoxArray_8H_source.html index 5b682bdf73..b30b4b9f53 100644 --- a/amrex/docs_html/doxygen/AMReX__BoxArray_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__BoxArray_8H_source.html @@ -186,10 +186,10 @@
96 
97  mutable IntVect crsn;
98 
-
99  typedef std::unordered_map< IntVect, std::vector<int>, IntVect::shift_hasher > HashType;
+
99  using HashType = std::unordered_map< IntVect, std::vector<int>, IntVect::shift_hasher > ;
100  //using HashType = std::map< IntVect,std::vector<int> >;
101 
-
102  mutable HashType hash;
+
102  mutable HashType hash;
103 
104  mutable bool has_hashmap = false;
105 
@@ -805,7 +805,7 @@
821 private:
823  void type_update ();
824 
-
825  [[nodiscard]] BARef::HashType& getHashMap () const;
+
825  [[nodiscard]] BARef::HashType& getHashMap () const;
826 
827  [[nodiscard]] IntVect getDoiLo () const noexcept;
828  [[nodiscard]] IntVect getDoiHi () const noexcept;
@@ -922,8 +922,8 @@
amrex::BARef::numboxarrays
static int numboxarrays
Definition: AMReX_BoxArray.H:106
amrex::BARef::total_hash_bytes
static Long total_hash_bytes
Definition: AMReX_BoxArray.H:110
amrex::BARef::BARef
BARef(BARef &&rhs)=delete
-
amrex::BARef::HashType
std::unordered_map< IntVect, std::vector< int >, IntVect::shift_hasher > HashType
Definition: AMReX_BoxArray.H:99
amrex::BARef::crsn
IntVect crsn
Definition: AMReX_BoxArray.H:97
+
amrex::BARef::HashType
std::unordered_map< IntVect, std::vector< int >, IntVect::shift_hasher > HashType
Definition: AMReX_BoxArray.H:99
amrex::BARef::total_hash_bytes_hwm
static Long total_hash_bytes_hwm
Definition: AMReX_BoxArray.H:111
amrex::BARef::resize
void resize(Long n)
Definition: AMReX_BoxArray.cpp:180
amrex::BARef::initialized
static bool initialized
Definition: AMReX_BoxArray.H:115
diff --git a/amrex/docs_html/doxygen/AMReX__BoxDomain_8H_source.html b/amrex/docs_html/doxygen/AMReX__BoxDomain_8H_source.html index fe7a6f196c..4813c03509 100644 --- a/amrex/docs_html/doxygen/AMReX__BoxDomain_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__BoxDomain_8H_source.html @@ -147,69 +147,70 @@
70 public:
71  friend class ClusterList;
72 
-
73  typedef BoxList::const_iterator const_iterator;
-
75  BoxDomain ();
-
76 
-
78  BoxDomain (const Box& bx);
-
79 
-
81  explicit BoxDomain (IndexType itype);
-
82 
-
84  void add (const Box& b);
-
85 
-
87  void add (const BoxList& bl);
-
88 
-
90  BoxDomain& rmBox (const Box& b);
-
91 
-
96  [[nodiscard]] bool ok () const;
-
97 
-
99  using BoxList::clear;
-
100 
-
102  using BoxList::size;
-
103 
-
105  using BoxList::isEmpty;
-
106 
-
108  using BoxList::isNotEmpty;
-
109 
-
111  using BoxList::minimalBox;
-
112 
-
114  using BoxList::ixType;
-
115 
-
117  using BoxList::simplify;
-
118 
-
120  using BoxList::begin;
-
121 
-
123  using BoxList::end;
-
124 
-
126  using BoxList::contains;
-
127 
-
129  using BoxList::shift;
-
130 
-
132  using BoxList::shiftHalf;
-
133 
-
135  [[nodiscard]] const BoxList& boxList () const;
-
136 
-
138  bool operator== (const BoxDomain& rhs) const;
-
139 
-
141  bool operator!= (const BoxDomain& rhs) const;
-
142 
-
144  BoxDomain& refine (int ratio);
-
145 
-
147  BoxDomain& coarsen (int ratio);
-
148 
-
150  BoxDomain& intersect (const Box& b);
-
151 
-
153  BoxDomain& accrete (int sz);
-
154 
-
156  BoxDomain& complementIn (const Box& b,
-
157  const BoxDomain& bl);
-
158 
-
159 private:
-
161  explicit BoxDomain (BoxList&& bl);
-
162 };
-
163 
-
164 }
-
165 
-
166 #endif /*BL_BOXDOMAIN_H*/
+
73  using const_iterator = BoxList::const_iterator;
+
74 
+
76  BoxDomain ();
+
77 
+
79  BoxDomain (const Box& bx);
+
80 
+
82  explicit BoxDomain (IndexType itype);
+
83 
+
85  void add (const Box& b);
+
86 
+
88  void add (const BoxList& bl);
+
89 
+
91  BoxDomain& rmBox (const Box& b);
+
92 
+
97  [[nodiscard]] bool ok () const;
+
98 
+
100  using BoxList::clear;
+
101 
+
103  using BoxList::size;
+
104 
+
106  using BoxList::isEmpty;
+
107 
+
109  using BoxList::isNotEmpty;
+
110 
+
112  using BoxList::minimalBox;
+
113 
+
115  using BoxList::ixType;
+
116 
+
118  using BoxList::simplify;
+
119 
+
121  using BoxList::begin;
+
122 
+
124  using BoxList::end;
+
125 
+
127  using BoxList::contains;
+
128 
+
130  using BoxList::shift;
+
131 
+
133  using BoxList::shiftHalf;
+
134 
+
136  [[nodiscard]] const BoxList& boxList () const;
+
137 
+
139  bool operator== (const BoxDomain& rhs) const;
+
140 
+
142  bool operator!= (const BoxDomain& rhs) const;
+
143 
+
145  BoxDomain& refine (int ratio);
+
146 
+
148  BoxDomain& coarsen (int ratio);
+
149 
+
151  BoxDomain& intersect (const Box& b);
+
152 
+
154  BoxDomain& accrete (int sz);
+
155 
+
157  BoxDomain& complementIn (const Box& b,
+
158  const BoxDomain& bl);
+
159 
+
160 private:
+
162  explicit BoxDomain (BoxList&& bl);
+
163 };
+
164 
+
165 }
+
166 
+
167 #endif /*BL_BOXDOMAIN_H*/
AMReX_BoxList.H
AMReX_Box.H
AMReX_IndexType.H
@@ -224,7 +225,7 @@
amrex::BoxDomain::BoxDomain
BoxDomain()
Construct an empty BoxDomain of IndexType::TheCellType().
Definition: AMReX_BoxDomain.cpp:99
amrex::BoxDomain::complementIn
BoxDomain & complementIn(const Box &b, const BoxDomain &bl)
Creates the complement of BoxDomain bl in Box b.
Definition: AMReX_BoxDomain.cpp:63
amrex::BoxDomain::intersect
BoxDomain & intersect(const Box &b)
Intersect this BoxDomain with Box b.
Definition: AMReX_BoxDomain.cpp:11
-
amrex::BoxDomain::const_iterator
BoxList::const_iterator const_iterator
Definition: AMReX_BoxDomain.H:73
+
amrex::BoxDomain::const_iterator
BoxList::const_iterator const_iterator
Definition: AMReX_BoxDomain.H:73
amrex::BoxDomain::boxList
const BoxList & boxList() const
Return a const reference to the underlying BoxList of this BoxDomain.
Definition: AMReX_BoxDomain.cpp:82
amrex::BoxDomain::ok
bool ok() const
Definition: AMReX_BoxDomain.cpp:180
amrex::BoxDomain::add
void add(const Box &b)
Add a Box to the domain.
Definition: AMReX_BoxDomain.cpp:121
@@ -237,11 +238,11 @@
amrex::BoxList::isNotEmpty
bool isNotEmpty() const noexcept
Is this BoxList not empty?
Definition: AMReX_BoxList.H:134
amrex::BoxList::shift
BoxList & shift(int dir, int nzones)
Applies Box::shift(int,int) to each Box in the BoxList.
amrex::BoxList::simplify
int simplify(bool best=false)
Merge adjacent Boxes in this BoxList. Return the number of Boxes merged. If "best" is specified we do...
-
amrex::BoxList::const_iterator
Vector< Box >::const_iterator const_iterator
Definition: AMReX_BoxList.H:59
amrex::BoxList::begin
iterator begin() noexcept
Definition: AMReX_BoxList.H:114
amrex::BoxList::shiftHalf
BoxList & shiftHalf(int dir, int num_halfs)
Applies Box::shiftHalf(int,int) to each Box in the BoxList.
amrex::BoxList::size
Long size() const noexcept
The number of Boxes in this BoxList.
Definition: AMReX_BoxList.H:110
amrex::BoxList::minimalBox
Box minimalBox() const
Returns smallest Box that contains all Boxes in this BoxList.
+
amrex::BoxList::const_iterator
Vector< Box >::const_iterator const_iterator
Definition: AMReX_BoxList.H:59
amrex::Box
A Rectangular Domain on an Integer Lattice.
Definition: AMReX_Box.H:38
amrex::ClusterList
A list of Cluster objects.
Definition: AMReX_Cluster.H:143
amrex::IndexType
Cell-Based or Node-Based Indices.
Definition: AMReX_IndexType.H:24
diff --git a/amrex/docs_html/doxygen/AMReX__BoxList_8H_source.html b/amrex/docs_html/doxygen/AMReX__BoxList_8H_source.html index 82328db0e7..3c2a2a5684 100644 --- a/amrex/docs_html/doxygen/AMReX__BoxList_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__BoxList_8H_source.html @@ -143,8 +143,8 @@
55 
56  friend class BoxDomain;
57 
-
58  typedef Vector<Box>::iterator iterator;
-
59  typedef Vector<Box>::const_iterator const_iterator;
+
58  using iterator = Vector<Box>::iterator;
+
59  using const_iterator = Vector<Box>::const_iterator;
60 
62  BoxList ();
63 
@@ -185,13 +185,13 @@
111 
112  [[nodiscard]] std::size_t capacity () const noexcept { return m_lbox.capacity(); }
113 
-
114  [[nodiscard]] iterator begin () noexcept { return m_lbox.begin(); }
-
115  [[nodiscard]] const_iterator begin () const noexcept { return m_lbox.cbegin(); }
-
116  [[nodiscard]] const_iterator cbegin () const noexcept { return m_lbox.cbegin(); }
+
114  [[nodiscard]] iterator begin () noexcept { return m_lbox.begin(); }
+
115  [[nodiscard]] const_iterator begin () const noexcept { return m_lbox.cbegin(); }
+
116  [[nodiscard]] const_iterator cbegin () const noexcept { return m_lbox.cbegin(); }
117 
-
118  [[nodiscard]] iterator end () noexcept { return m_lbox.end(); }
-
119  [[nodiscard]] const_iterator end () const noexcept { return m_lbox.cend(); }
-
120  [[nodiscard]] const_iterator cend () const noexcept { return m_lbox.cend(); }
+
118  [[nodiscard]] iterator end () noexcept { return m_lbox.end(); }
+
119  [[nodiscard]] const_iterator end () const noexcept { return m_lbox.cend(); }
+
120  [[nodiscard]] const_iterator cend () const noexcept { return m_lbox.cend(); }
126  [[nodiscard]] bool ok () const noexcept;
128  bool operator== (const BoxList& rhs) const;
130  bool operator!= (const BoxList& rhs) const;
@@ -312,7 +312,6 @@
amrex::BoxList::refine
BoxList & refine(int ratio)
Refine each Box in the BoxList by the ratio.
amrex::BoxList::maxSize
BoxList & maxSize(int chunk)
Forces each Box in the BoxList to have sides of length <= chunk.
amrex::BoxList::complementIn
BoxList & complementIn(const Box &b, BoxList &&bl)
-
amrex::BoxList::const_iterator
Vector< Box >::const_iterator const_iterator
Definition: AMReX_BoxList.H:59
amrex::BoxList::enclosedCells
BoxList & enclosedCells() noexcept
Applies Box::enclosedCells() to each Box in the BoxList.
amrex::BoxList::intersect
BoxList & intersect(const BoxList &bl)
Modify this BoxList to contain only its intersection with BoxList bl.
amrex::BoxList::coarsen
BoxList & coarsen(const IntVect &ratio)
Coarsen each Box in the BoxList by the ratio.
@@ -321,15 +320,16 @@
amrex::BoxList::push_back
void push_back(const Box &bn)
Append a Box to this BoxList.
Definition: AMReX_BoxList.H:94
amrex::BoxList::front
Box & front() noexcept
Definition: AMReX_BoxList.H:96
amrex::BoxList::data
const Vector< Box > & data() const noexcept
Returns a constant reference to the Vector<Box>.
Definition: AMReX_BoxList.H:214
-
amrex::BoxList::iterator
Vector< Box >::iterator iterator
Definition: AMReX_BoxList.H:58
amrex::BoxList::ordered_simplify
int ordered_simplify()
Assuming the boxes are nicely ordered.
amrex::BoxList::begin
iterator begin() noexcept
Definition: AMReX_BoxList.H:114
amrex::BoxList::shiftHalf
BoxList & shiftHalf(int dir, int num_halfs)
Applies Box::shiftHalf(int,int) to each Box in the BoxList.
amrex::BoxList::size
Long size() const noexcept
The number of Boxes in this BoxList.
Definition: AMReX_BoxList.H:110
amrex::BoxList::maxSize
BoxList & maxSize(const IntVect &chunk)
Forces each Box in the BoxList to have dimth side of length <= chunk[dim].
amrex::BoxList::minimalBox
Box minimalBox() const
Returns smallest Box that contains all Boxes in this BoxList.
+
amrex::BoxList::iterator
Vector< Box >::iterator iterator
Definition: AMReX_BoxList.H:58
amrex::BoxList::parallelComplementIn
BoxList & parallelComplementIn(const Box &b, const BoxList &bl)
amrex::BoxList::m_lbox
Vector< Box > m_lbox
The list of Boxes.
Definition: AMReX_BoxList.H:228
+
amrex::BoxList::const_iterator
Vector< Box >::const_iterator const_iterator
Definition: AMReX_BoxList.H:59
amrex::BoxList::accrete
BoxList & accrete(const IntVect &sz)
amrex::BoxList::join
void join(const Vector< Box > &barr)
Join the Array of Boxes to ourselves.
amrex::BoxList::join
void join(const BoxList &blist)
Join the BoxList to ourselves.
diff --git a/amrex/docs_html/doxygen/AMReX__Box_8H_source.html b/amrex/docs_html/doxygen/AMReX__Box_8H_source.html index 566592c3cd..e088a2ed67 100644 --- a/amrex/docs_html/doxygen/AMReX__Box_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__Box_8H_source.html @@ -125,7 +125,7 @@
24 
37 class Box
38 {
-
39  friend MPI_Datatype ParallelDescriptor::Mpi_typemap<Box>::type();
+
39  friend MPI_Datatype ParallelDescriptor::Mpi_typemap<Box>::type();
40  friend class BoxCommHelper;
41 
42 public:
@@ -1658,7 +1658,7 @@
AMREX_D_DECL
#define AMREX_D_DECL(a, b, c)
Definition: AMReX_SPACE.H:104
AMReX_Vector.H
AMReX_ccse-mpi.H
-
MPI_Datatype
int MPI_Datatype
Definition: AMReX_ccse-mpi.H:49
+
MPI_Datatype
int MPI_Datatype
Definition: AMReX_ccse-mpi.H:49
amrex::BoxCommHelper
Definition: AMReX_Box.H:1106
amrex::BoxCommHelper::p
int * p
Definition: AMReX_Box.H:1121
amrex::BoxCommHelper::data
int * data() &&=delete
diff --git a/amrex/docs_html/doxygen/AMReX__CArena_8H_source.html b/amrex/docs_html/doxygen/AMReX__CArena_8H_source.html index 488c06a984..0253a2f65c 100644 --- a/amrex/docs_html/doxygen/AMReX__CArena_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__CArena_8H_source.html @@ -204,11 +204,11 @@
147  MemStat* m_stat;
148  };
149 
-
154  typedef std::set<Node> NL;
+
154  using NL = std::set<Node>;
155 
157  std::vector<std::pair<void*,std::size_t> > m_alloc;
158 
-
163  NL m_freelist;
+
163  NL m_freelist;
164 
169 // NL m_busylist;
170  std::unordered_set<Node, Node::hash> m_busylist;
@@ -251,6 +251,7 @@
amrex::CArena::heap_space_actually_used
std::size_t heap_space_actually_used() const noexcept
Return the total amount of memory given out via alloc.
Definition: AMReX_CArena.cpp:307
amrex::CArena::heap_space_used
std::size_t heap_space_used() const noexcept
The current amount of heap space used by the CArena object.
Definition: AMReX_CArena.cpp:301
amrex::CArena::DefaultHunkSize
constexpr static std::size_t DefaultHunkSize
The default memory hunk size to grab from the heap.
Definition: AMReX_CArena.H:86
+
amrex::CArena::NL
std::set< Node > NL
The type of our freelist and blocklist. We use a set sorted from lo to hi memory addresses.
Definition: AMReX_CArena.H:154
amrex::CArena::m_hunk
std::size_t m_hunk
The minimal size of hunks to request from system.
Definition: AMReX_CArena.H:172
amrex::CArena::freeUnused
std::size_t freeUnused() final
Free unused memory back to the system. Return value is the amount memory freed.
Definition: AMReX_CArena.cpp:221
amrex::CArena::m_used
std::size_t m_used
The amount of heap space currently allocated.
Definition: AMReX_CArena.H:174
@@ -259,7 +260,6 @@
amrex::CArena::CArena
CArena(CArena &&rhs)=delete
amrex::CArena::free
void free(void *vp) final
Free up allocated memory. Merge neighboring free memory chunks into largest possible chunk.
Definition: AMReX_CArena.cpp:131
amrex::CArena::m_profiling_stats
std::map< std::string, MemStat > m_profiling_stats
Data structure used for profiling with TinyProfiler.
Definition: AMReX_CArena.H:180
-
amrex::CArena::NL
std::set< Node > NL
The type of our freelist and blocklist. We use a set sorted from lo to hi memory addresses.
Definition: AMReX_CArena.H:154
amrex::CArena::~CArena
~CArena() override
The destructor.
Definition: AMReX_CArena.cpp:28
amrex::CArena::m_do_profiling
bool m_do_profiling
If this arena is profiled by TinyProfiler.
Definition: AMReX_CArena.H:178
amrex::CArena::registerForProfiling
void registerForProfiling(const std::string &memory_name) final
Add this Arena to the list of Arenas that are profiled by TinyProfiler.
Definition: AMReX_CArena.cpp:292
diff --git a/amrex/docs_html/doxygen/AMReX__DenseBins_8H_source.html b/amrex/docs_html/doxygen/AMReX__DenseBins_8H_source.html index 62ffd199ca..19b34dc082 100644 --- a/amrex/docs_html/doxygen/AMReX__DenseBins_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__DenseBins_8H_source.html @@ -495,7 +495,7 @@
amrex::BinPolicy::GPU
static constexpr GPUBinPolicy GPU
Definition: AMReX_DenseBins.H:18
amrex::Gpu::Atomic::Add
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T Add(T *sum, T value) noexcept
Definition: AMReX_GpuAtomic.H:196
amrex::Gpu::copy
void copy(HostToDevice, InIter begin, InIter end, OutIter result) noexcept
A host-to-device copy routine. Note this is just a wrapper around memcpy, so it assumes contiguous st...
Definition: AMReX_GpuContainers.H:122
-
amrex::Gpu::exclusive_scan
OutIter exclusive_scan(InIter begin, InIter end, OutIter result)
Definition: AMReX_Scan.H:1358
+
amrex::Gpu::exclusive_scan
OutIter exclusive_scan(InIter begin, InIter end, OutIter result)
Definition: AMReX_Scan.H:1357
amrex::Gpu::deviceToDevice
static constexpr DeviceToDevice deviceToDevice
Definition: AMReX_GpuContainers.H:101
amrex::OpenMP::get_max_threads
constexpr int get_max_threads()
Definition: AMReX_OpenMP.H:22
amrex::SundialsUserFun::f
static int f(realtype t, N_Vector y_data, N_Vector y_rhs, void *user_data)
Definition: AMReX_SundialsIntegrator.H:40
diff --git a/amrex/docs_html/doxygen/AMReX__Derive_8H.html b/amrex/docs_html/doxygen/AMReX__Derive_8H.html index 4a19a74e80..fa84f5b08a 100644 --- a/amrex/docs_html/doxygen/AMReX__Derive_8H.html +++ b/amrex/docs_html/doxygen/AMReX__Derive_8H.html @@ -132,14 +132,14 @@

Functions

std::string amrex::Version ()
 
AMReX * amrex::Initialize (MPI_Comm mpi_comm, std::ostream &a_osout=std::cout, std::ostream &a_oserr=std::cerr, ErrorHandler a_errhandler=nullptr)
AMReX * amrex::Initialize (MPI_Comm mpi_comm, std::ostream &a_osout=std::cout, std::ostream &a_oserr=std::cerr, ErrorHandler a_errhandler=nullptr)
 
AMReX * amrex::Initialize (int &argc, char **&argv, bool build_parm_parse=true, MPI_Comm mpi_comm=MPI_COMM_WORLD, const std::function< void()> &func_parm_parse={}, std::ostream &a_osout=std::cout, std::ostream &a_oserr=std::cerr, ErrorHandler a_errhandler=nullptr)
AMReX * amrex::Initialize (int &argc, char **&argv, bool build_parm_parse=true, MPI_Comm mpi_comm=MPI_COMM_WORLD, const std::function< void()> &func_parm_parse={}, std::ostream &a_osout=std::cout, std::ostream &a_oserr=std::cerr, ErrorHandler a_errhandler=nullptr)
 
bool amrex::Initialized ()
 Returns true if there are any currently-active and initialized AMReX instances (i.e. one for which amrex::Initialize has been called, and amrex::Finalize has not). Otherwise false. More...
- - - - - - - - + + + + + + + +

Typedefs

typedef void(* amrex::DeriveFunc) (amrex::Real *data, AMREX_ARLIM_P(dlo), AMREX_ARLIM_P(dhi), const int *nvar, const amrex::Real *compdat, AMREX_ARLIM_P(compdat_lo), AMREX_ARLIM_P(compdat_hi), const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no)
 Type of extern "C" function called by DeriveRec to compute derived quantity. More...
 
typedef void(* amrex::DeriveFunc3D) (amrex::Real *data, const int *dlo, const int *dhi, const int *nvar, const amrex::Real *compdat, const int *clo, const int *chi, const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no)
 This is dimension agnostic. For example, dlo always has three elements. More...
 
typedef std::function< void(const amrex::Box &bx, amrex::FArrayBox &derfab, int dcomp, int ncomp, const amrex::FArrayBox &datafab, const amrex::Geometry &geomdata, amrex::Real time, const int *bcrec, int level)> amrex::DeriveFuncFab
 
using amrex::DeriveFunc = void(*)(amrex::Real *data, AMREX_ARLIM_P(dlo), AMREX_ARLIM_P(dhi), const int *nvar, const amrex::Real *compdat, AMREX_ARLIM_P(compdat_lo), AMREX_ARLIM_P(compdat_hi), const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no)
 Type of extern "C" function called by DeriveRec to compute derived quantity. More...
 
using amrex::DeriveFunc3D = void(*)(amrex::Real *data, const int *dlo, const int *dhi, const int *nvar, const amrex::Real *compdat, const int *clo, const int *chi, const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no)
 This is dimension agnostic. For example, dlo always has three elements. More...
 
using amrex::DeriveFuncFab = std::function< void(const amrex::Box &bx, amrex::FArrayBox &derfab, int dcomp, int ncomp, const amrex::FArrayBox &datafab, const amrex::Geometry &geomdata, amrex::Real time, const int *bcrec, int level)>
 
diff --git a/amrex/docs_html/doxygen/AMReX__Derive_8H.js b/amrex/docs_html/doxygen/AMReX__Derive_8H.js index 1df2d9851d..17aef6e767 100644 --- a/amrex/docs_html/doxygen/AMReX__Derive_8H.js +++ b/amrex/docs_html/doxygen/AMReX__Derive_8H.js @@ -3,7 +3,7 @@ var AMReX__Derive_8H = [ "DeriveRec", "classamrex_1_1DeriveRec.html", "classamrex_1_1DeriveRec" ], [ "StateRange", "structamrex_1_1DeriveRec_1_1StateRange.html", "structamrex_1_1DeriveRec_1_1StateRange" ], [ "DeriveList", "classamrex_1_1DeriveList.html", "classamrex_1_1DeriveList" ], - [ "DeriveFunc", "AMReX__Derive_8H.html#a046a83e139b61c9ec447bd89eed50967", null ], - [ "DeriveFunc3D", "AMReX__Derive_8H.html#abf838b25d605cefbf6150bc883f4741d", null ], - [ "DeriveFuncFab", "AMReX__Derive_8H.html#a193c40127f1734f83e3bb23cab534a24", null ] + [ "DeriveFunc", "AMReX__Derive_8H.html#ac7d6bf4b6824f474320123285acc5065", null ], + [ "DeriveFunc3D", "AMReX__Derive_8H.html#a008867a6f88e4144e28dfb6a738f5549", null ], + [ "DeriveFuncFab", "AMReX__Derive_8H.html#a7f6a90da175c5d3eb9612d6934849087", null ] ]; \ No newline at end of file diff --git a/amrex/docs_html/doxygen/AMReX__Derive_8H_source.html b/amrex/docs_html/doxygen/AMReX__Derive_8H_source.html index 1791b89fdd..9791eb7ff2 100644 --- a/amrex/docs_html/doxygen/AMReX__Derive_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__Derive_8H_source.html @@ -116,30 +116,30 @@
15 extern "C"
16 {
17 
-
43  typedef void (*DeriveFunc)(amrex::Real* data, AMREX_ARLIM_P(dlo), AMREX_ARLIM_P(dhi),
-
44  const int* nvar, const amrex::Real* compdat,
-
45  AMREX_ARLIM_P(compdat_lo), AMREX_ARLIM_P(compdat_hi),
-
46  const int* ncomp,
-
47  const int* lo, const int* hi,
-
48  const int* domain_lo, const int* domain_hi,
-
49  const amrex::Real* delta, const amrex::Real* xlo,
-
50  const amrex::Real* time, const amrex::Real* dt,
-
51  const int* bcrec,
-
52  const int* level, const int* grid_no) ;
+
43  using DeriveFunc = void (*)(amrex::Real* data, AMREX_ARLIM_P(dlo), AMREX_ARLIM_P(dhi),
+
44  const int* nvar, const amrex::Real* compdat,
+
45  AMREX_ARLIM_P(compdat_lo), AMREX_ARLIM_P(compdat_hi),
+
46  const int* ncomp,
+
47  const int* lo, const int* hi,
+
48  const int* domain_lo, const int* domain_hi,
+
49  const amrex::Real* delta, const amrex::Real* xlo,
+
50  const amrex::Real* time, const amrex::Real* dt,
+
51  const int* bcrec,
+
52  const int* level, const int* grid_no) ;
53 
-
77  typedef void (*DeriveFunc3D)(amrex::Real* data, const int* dlo, const int* dhi, const int* nvar,
-
78  const amrex::Real* compdat, const int* clo, const int* chi, const int* ncomp,
-
79  const int* lo, const int* hi,
-
80  const int* domain_lo, const int* domain_hi,
-
81  const amrex::Real* delta, const amrex::Real* xlo,
-
82  const amrex::Real* time, const amrex::Real* dt,
-
83  const int* bcrec,
-
84  const int* level, const int* grid_no) ;
+
77  using DeriveFunc3D = void (*)(amrex::Real* data, const int* dlo, const int* dhi, const int* nvar,
+
78  const amrex::Real* compdat, const int* clo, const int* chi, const int* ncomp,
+
79  const int* lo, const int* hi,
+
80  const int* domain_lo, const int* domain_hi,
+
81  const amrex::Real* delta, const amrex::Real* xlo,
+
82  const amrex::Real* time, const amrex::Real* dt,
+
83  const int* bcrec,
+
84  const int* level, const int* grid_no) ;
85 }
86 
-
87  typedef std::function<void(const amrex::Box& bx, amrex::FArrayBox& derfab, int dcomp, int ncomp,
-
88  const amrex::FArrayBox& datafab, const amrex::Geometry& geomdata,
-
89  amrex::Real time, const int* bcrec, int level)> DeriveFuncFab;
+
87 using DeriveFuncFab = std::function<void(const amrex::Box& bx, amrex::FArrayBox& derfab, int dcomp, int ncomp,
+
88  const amrex::FArrayBox& datafab, const amrex::Geometry& geomdata,
+
89  amrex::Real time, const int* bcrec, int level)>;
90 
91 class DescriptorList;
92 
@@ -150,7 +150,7 @@
107 
108 public:
109 
-
114  typedef std::function<Box(const Box&)> DeriveBoxMap;
+
114  using DeriveBoxMap = std::function<Box(const Box&)>;
115 
116  static Box TheSameBox (const Box& box) noexcept;
117 
@@ -169,11 +169,11 @@
141 
145  [[nodiscard]] IndexType deriveType () const noexcept;
146 
-
150  [[nodiscard]] DeriveFunc derFunc () const noexcept;
-
151  [[nodiscard]] DeriveFunc3D derFunc3D () const noexcept;
-
152  [[nodiscard]] DeriveFuncFab derFuncFab () const noexcept;
+
150  [[nodiscard]] DeriveFunc derFunc () const noexcept;
+
151  [[nodiscard]] DeriveFunc3D derFunc3D () const noexcept;
+
152  [[nodiscard]] DeriveFuncFab derFuncFab () const noexcept;
153 
-
157  [[nodiscard]] DeriveBoxMap boxMap () const noexcept;
+
157  [[nodiscard]] DeriveBoxMap boxMap () const noexcept;
158 
162  [[nodiscard]] Interpolater* interp () const noexcept;
163 
@@ -194,52 +194,52 @@
210  DeriveRec (std::string name,
211  IndexType result_type,
212  int nvar_derive,
-
213  DeriveFunc der_func,
-
214  DeriveBoxMap box_map,
+
213  DeriveFunc der_func,
+
214  DeriveBoxMap box_map,
215  Interpolater* interp = &pc_interp);
216 
217  DeriveRec (std::string name,
218  IndexType result_type,
219  int nvar_derive,
-
220  DeriveFunc3D der_func_3d,
-
221  DeriveBoxMap box_map,
+
220  DeriveFunc3D der_func_3d,
+
221  DeriveBoxMap box_map,
222  Interpolater* interp = &pc_interp);
223 
224  DeriveRec (std::string name,
225  IndexType result_type,
226  int nvar_derive,
-
227  DeriveFuncFab der_func_fab,
-
228  DeriveBoxMap box_map,
+
227  DeriveFuncFab der_func_fab,
+
228  DeriveBoxMap box_map,
229  Interpolater* interp = &pc_interp);
230 
231 
240  DeriveRec (std::string name,
241  IndexType result_type,
242  int nvar_derive,
-
243  DeriveRec::DeriveBoxMap box_map);
+
243  DeriveRec::DeriveBoxMap box_map);
244 
256  DeriveRec (std::string name,
257  IndexType result_type,
258  int nvar_derive,
259  Vector<std::string> const& var_names,
-
260  DeriveFunc der_func,
-
261  DeriveBoxMap box_map,
+
260  DeriveFunc der_func,
+
261  DeriveBoxMap box_map,
262  Interpolater* interp = &pc_interp);
263 
264  DeriveRec (std::string name,
265  IndexType result_type,
266  int nvar_derive,
267  Vector<std::string> const& var_names,
-
268  DeriveFunc3D der_func_3d,
-
269  DeriveBoxMap box_map,
+
268  DeriveFunc3D der_func_3d,
+
269  DeriveBoxMap box_map,
270  Interpolater* interp = &pc_interp);
271 
272  DeriveRec (std::string name,
273  IndexType result_type,
274  int nvar_derive,
275  Vector<std::string> const& var_names,
-
276  DeriveFuncFab der_func_fab,
-
277  DeriveBoxMap box_map,
+
276  DeriveFuncFab der_func_fab,
+
277  DeriveBoxMap box_map,
278  Interpolater* interp = &pc_interp);
279 
280  void addRange (const DescriptorList& d_list,
@@ -268,13 +268,13 @@
307 
309  int n_derive = 0;
310 
-
312  DeriveFunc func = nullptr;
-
313  DeriveFunc3D func_3d = nullptr;
-
314  DeriveFuncFab func_fab = nullptr;
+
312  DeriveFunc func = nullptr;
+
313  DeriveFunc3D func_3d = nullptr;
+
314  DeriveFuncFab func_fab = nullptr;
315 
317  Interpolater* mapper = nullptr;
318 
-
320  DeriveBoxMap bx_map = nullptr;
+
320  DeriveBoxMap bx_map = nullptr;
321 
323  int n_state = 0;
324 
@@ -306,52 +306,52 @@
382  void add (const std::string& name,
383  IndexType result_type,
384  int nvar_derive,
-
385  DeriveFunc der_func,
-
386  const DeriveRec::DeriveBoxMap& bx_map,
+
385  DeriveFunc der_func,
+
386  const DeriveRec::DeriveBoxMap& bx_map,
387  Interpolater* interp = &pc_interp);
388 
389  void add (const std::string& name,
390  IndexType result_type,
391  int nvar_derive,
-
392  DeriveFunc3D der_func_3d,
-
393  const DeriveRec::DeriveBoxMap& bx_map,
+
392  DeriveFunc3D der_func_3d,
+
393  const DeriveRec::DeriveBoxMap& bx_map,
394  Interpolater* interp = &pc_interp);
395 
396  void add (const std::string& name,
397  IndexType result_type,
398  int nvar_derive,
-
399  const DeriveFuncFab& der_func_fab,
-
400  const DeriveRec::DeriveBoxMap& bx_map,
+
399  const DeriveFuncFab& der_func_fab,
+
400  const DeriveRec::DeriveBoxMap& bx_map,
401  Interpolater* interp = &pc_interp);
402 
403 
412  void add (const std::string& name,
413  IndexType result_type,
414  int nvar_derive,
-
415  const DeriveRec::DeriveBoxMap& box_map = &DeriveRec::TheSameBox );
+
415  const DeriveRec::DeriveBoxMap& box_map = &DeriveRec::TheSameBox );
416 
428  void add (const std::string& name,
429  IndexType res_typ,
430  int nvar_derive,
431  Vector<std::string> const& vars,
-
432  DeriveFunc der_func,
-
433  const DeriveRec::DeriveBoxMap& bx_map,
+
432  DeriveFunc der_func,
+
433  const DeriveRec::DeriveBoxMap& bx_map,
434  Interpolater* interp = &pc_interp);
435 
436  void add (const std::string& name,
437  IndexType res_typ,
438  int nvar_derive,
439  Vector<std::string> const& vars,
-
440  DeriveFunc3D der_func_3d,
-
441  const DeriveRec::DeriveBoxMap& bx_map,
+
440  DeriveFunc3D der_func_3d,
+
441  const DeriveRec::DeriveBoxMap& bx_map,
442  Interpolater* interp = &pc_interp);
443 
444  void add (const std::string& name,
445  IndexType res_typ,
446  int nvar_derive,
447  Vector<std::string> const& vars,
-
448  const DeriveFuncFab& der_func_fab,
-
449  const DeriveRec::DeriveBoxMap& bx_map,
+
448  const DeriveFuncFab& der_func_fab,
+
449  const DeriveRec::DeriveBoxMap& bx_map,
450  Interpolater* interp = &pc_interp);
451 
461  void addComponent (const std::string& name,
@@ -413,9 +413,9 @@
amrex::DeriveRec::nsr
int nsr
Number of state ranges.
Definition: AMReX_Derive.H:326
amrex::DeriveRec::addRange
void addRange(const DescriptorList &d_list, int state_indx, int src_comp, int num_comp)
Definition: AMReX_Derive.cpp:222
amrex::DeriveRec::derive_name
std::string derive_name
Name of derived quantity.
Definition: AMReX_Derive.H:300
+
amrex::DeriveRec::DeriveBoxMap
std::function< Box(const Box &)> DeriveBoxMap
A pointer to function taking and returning a Box.
Definition: AMReX_Derive.H:114
amrex::DeriveRec::TheSameBox
static Box TheSameBox(const Box &box) noexcept
Definition: AMReX_Derive.cpp:10
amrex::DeriveRec::boxMap
DeriveBoxMap boxMap() const noexcept
Maps state data box to derived data box.
Definition: AMReX_Derive.cpp:178
-
amrex::DeriveRec::DeriveBoxMap
std::function< Box(const Box &)> DeriveBoxMap
A pointer to function taking and returning a Box.
Definition: AMReX_Derive.H:114
amrex::DeriveRec::DeriveRec
DeriveRec(DeriveRec &&)=delete
amrex::DeriveRec::DeriveRec
DeriveRec(DeriveRec const &)=delete
amrex::DeriveRec::der_type
IndexType der_type
Type of derived quantity.
Definition: AMReX_Derive.H:306
@@ -437,9 +437,9 @@
amrex::Interpolater
Virtual base class for interpolaters.
Definition: AMReX_Interpolater.H:23
amrex::Vector
This class is a thin wrapper around std::vector. Unlike vector, Vector::operator[] provides bound che...
Definition: AMReX_Vector.H:28
amrex
Definition: AMReX_Amr.cpp:49
-
amrex::DeriveFunc
void(* DeriveFunc)(amrex::Real *data, AMREX_ARLIM_P(dlo), AMREX_ARLIM_P(dhi), const int *nvar, const amrex::Real *compdat, AMREX_ARLIM_P(compdat_lo), AMREX_ARLIM_P(compdat_hi), const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no)
Type of extern "C" function called by DeriveRec to compute derived quantity.
Definition: AMReX_Derive.H:43
-
amrex::DeriveFuncFab
std::function< void(const amrex::Box &bx, amrex::FArrayBox &derfab, int dcomp, int ncomp, const amrex::FArrayBox &datafab, const amrex::Geometry &geomdata, amrex::Real time, const int *bcrec, int level)> DeriveFuncFab
Definition: AMReX_Derive.H:89
-
amrex::DeriveFunc3D
void(* DeriveFunc3D)(amrex::Real *data, const int *dlo, const int *dhi, const int *nvar, const amrex::Real *compdat, const int *clo, const int *chi, const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no)
This is dimension agnostic. For example, dlo always has three elements.
Definition: AMReX_Derive.H:77
+
amrex::DeriveFunc3D
void(*)(amrex::Real *data, const int *dlo, const int *dhi, const int *nvar, const amrex::Real *compdat, const int *clo, const int *chi, const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no) DeriveFunc3D
This is dimension agnostic. For example, dlo always has three elements.
Definition: AMReX_Derive.H:84
+
amrex::DeriveFuncFab
std::function< void(const amrex::Box &bx, amrex::FArrayBox &derfab, int dcomp, int ncomp, const amrex::FArrayBox &datafab, const amrex::Geometry &geomdata, amrex::Real time, const int *bcrec, int level)> DeriveFuncFab
Definition: AMReX_Derive.H:89
+
amrex::DeriveFunc
void(*)(amrex::Real *data, AMREX_ARLIM_P(dlo), AMREX_ARLIM_P(dhi), const int *nvar, const amrex::Real *compdat, AMREX_ARLIM_P(compdat_lo), AMREX_ARLIM_P(compdat_hi), const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no) DeriveFunc
Type of extern "C" function called by DeriveRec to compute derived quantity.
Definition: AMReX_Derive.H:52
amrex::pc_interp
PCInterp pc_interp
CONSTRUCT A GLOBAL OBJECT OF EACH VERSION.
Definition: AMReX_Interpolater.cpp:33
amrex::DeriveRec::StateRange
An element of a linked list to point to state quantities in AmrLevels.
Definition: AMReX_Derive.H:290
amrex::DeriveRec::StateRange::typ
int typ
Definition: AMReX_Derive.H:291
diff --git a/amrex/docs_html/doxygen/AMReX__DistributionMapping_8H_source.html b/amrex/docs_html/doxygen/AMReX__DistributionMapping_8H_source.html index 073ce9e3cc..7dff173ace 100644 --- a/amrex/docs_html/doxygen/AMReX__DistributionMapping_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__DistributionMapping_8H_source.html @@ -300,10 +300,10 @@
318  static void LeastUsedCPUs (int nprocs, Vector<int>& result);
323  static void LeastUsedTeams (Vector<int>& rteam, Vector<Vector<int> >& rworker, int nteams, int nworkers);
324 
-
326  typedef void (DistributionMapping::*PVMF)(const BoxArray &, int);
+
326  using PVMF = void (DistributionMapping::*)(const BoxArray &, int);
327 
329  static Strategy m_Strategy;
-
334  static PVMF m_BuildMap;
+
334  static PVMF m_BuildMap;
335 
336  struct Ref
337  {
@@ -403,7 +403,6 @@
amrex::DistributionMapping::operator!=
bool operator!=(const DistributionMapping &rhs) const noexcept
Are the distributions different?
Definition: AMReX_DistributionMapping.cpp:101
amrex::DistributionMapping::writeOn
std::ostream & writeOn(std::ostream &os) const
Definition: AMReX_DistributionMapping.cpp:2006
amrex::DistributionMapping::LeastUsedTeams
static void LeastUsedTeams(Vector< int > &rteam, Vector< Vector< int > > &rworker, int nteams, int nworkers)
rteam: Least used ordering of Teams rworker[i]: Least used ordering of team workers for Team i
Definition: AMReX_DistributionMapping.cpp:238
-
amrex::DistributionMapping::PVMF
void(DistributionMapping::* PVMF)(const BoxArray &, int)
A useful typedef.
Definition: AMReX_DistributionMapping.H:326
amrex::DistributionMapping::m_Strategy
static Strategy m_Strategy
Everyone uses the same Strategy – defaults to SFC.
Definition: AMReX_DistributionMapping.H:329
amrex::DistributionMapping::DistributionMapping
DistributionMapping() noexcept
The default constructor.
Definition: AMReX_DistributionMapping.cpp:302
amrex::DistributionMapping::Sort
static void Sort(std::vector< LIpair > &vec, bool reverse)
Definition: AMReX_DistributionMapping.cpp:176
@@ -429,6 +428,7 @@
amrex::DistributionMapping::RRSFC
@ RRSFC
Definition: AMReX_DistributionMapping.H:49
amrex::DistributionMapping::ROUNDROBIN
@ ROUNDROBIN
Definition: AMReX_DistributionMapping.H:49
amrex::DistributionMapping::SFC
@ SFC
Definition: AMReX_DistributionMapping.H:49
+
amrex::DistributionMapping::PVMF
void(DistributionMapping::*)(const BoxArray &, int) PVMF
A useful typedef.
Definition: AMReX_DistributionMapping.H:326
amrex::DistributionMapping::capacity
Long capacity() const noexcept
Definition: AMReX_DistributionMapping.H:106
amrex::DistributionMapping::m_BuildMap
static PVMF m_BuildMap
Pointer to one of the CreateProcessorMap() functions. Corresponds to the one specified by m_Strategy.
Definition: AMReX_DistributionMapping.H:334
amrex::DistributionMapping::readFrom
std::istream & readFrom(std::istream &is)
Definition: AMReX_DistributionMapping.cpp:1985
diff --git a/amrex/docs_html/doxygen/AMReX__ErrorList_8H.html b/amrex/docs_html/doxygen/AMReX__ErrorList_8H.html index a968691a14..4a306b5708 100644 --- a/amrex/docs_html/doxygen/AMReX__ErrorList_8H.html +++ b/amrex/docs_html/doxygen/AMReX__ErrorList_8H.html @@ -143,14 +143,14 @@ - - - - - - - - + + + + + + + +

Typedefs

typedef void(* amrex::ErrorFuncDefault) (int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level)
 Type of extern "C" function called by ErrorRec to do tagging of cells for refinement. More...
 
typedef void(* amrex::ErrorFunc2Default) (int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const int *level, const amrex::Real *avg)
 
typedef void(* amrex::ErrorFunc3DDefault) (int *tag, const int *tlo, const int *thi, const int *tagval, const int *clearval, amrex::Real *data, const int *data_lo, const int *data_hi, const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level)
 Dimension agnostic version that always has three elements. Note that this is only implemented for the ErrorFunc class, not ErrorFunc2. More...
 
using amrex::ErrorFuncDefault = void(*)(int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level)
 Type of extern "C" function called by ErrorRec to do tagging of cells for refinement. More...
 
using amrex::ErrorFunc2Default = void(*)(int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const int *level, const amrex::Real *avg)
 
using amrex::ErrorFunc3DDefault = void(*)(int *tag, const int *tlo, const int *thi, const int *tagval, const int *clearval, amrex::Real *data, const int *data_lo, const int *data_hi, const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level)
 Dimension agnostic version that always has three elements. Note that this is only implemented for the ErrorFunc class, not ErrorFunc2. More...
 
diff --git a/amrex/docs_html/doxygen/AMReX__ErrorList_8H.js b/amrex/docs_html/doxygen/AMReX__ErrorList_8H.js index b0cc595e0b..d6fa843bb3 100644 --- a/amrex/docs_html/doxygen/AMReX__ErrorList_8H.js +++ b/amrex/docs_html/doxygen/AMReX__ErrorList_8H.js @@ -7,8 +7,8 @@ var AMReX__ErrorList_8H = [ "AMRErrorTagInfo", "structamrex_1_1AMRErrorTagInfo.html", "structamrex_1_1AMRErrorTagInfo" ], [ "AMRErrorTag", "classamrex_1_1AMRErrorTag.html", "classamrex_1_1AMRErrorTag" ], [ "UserFunc", "structamrex_1_1AMRErrorTag_1_1UserFunc.html", "structamrex_1_1AMRErrorTag_1_1UserFunc" ], - [ "ErrorFunc2Default", "AMReX__ErrorList_8H.html#a712777d91904823bb5241758651b9709", null ], - [ "ErrorFunc3DDefault", "AMReX__ErrorList_8H.html#a198cab9c3268f289bedd23e83dd7e95d", null ], - [ "ErrorFuncDefault", "AMReX__ErrorList_8H.html#accd616989af467165f35b0b213ee2e1a", null ], + [ "ErrorFunc2Default", "AMReX__ErrorList_8H.html#a42bd26e7d0da54d65837c31f4d03576f", null ], + [ "ErrorFunc3DDefault", "AMReX__ErrorList_8H.html#ac3ef56858a7952a309061d5ddef6f86b", null ], + [ "ErrorFuncDefault", "AMReX__ErrorList_8H.html#aac98769d649c4292b78b3df51eae68ec", null ], [ "operator<<", "AMReX__ErrorList_8H.html#ab1b1f90152c1c5636d634b475056389e", null ] ]; \ No newline at end of file diff --git a/amrex/docs_html/doxygen/AMReX__ErrorList_8H_source.html b/amrex/docs_html/doxygen/AMReX__ErrorList_8H_source.html index 969c4e3984..4c9e6ced0d 100644 --- a/amrex/docs_html/doxygen/AMReX__ErrorList_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__ErrorList_8H_source.html @@ -120,31 +120,31 @@
19 extern "C"
20 {
21 
-
44  typedef void (*ErrorFuncDefault)(int* tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi),
-
45  const int* tagval, const int* clearval,
-
46  amrex::Real* data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi),
-
47  const int* lo, const int * hi, const int* nvar,
-
48  const int* domain_lo, const int* domain_hi,
-
49  const amrex::Real* dx, const amrex::Real* xlo,
-
50  const amrex::Real* prob_lo, const amrex::Real* time,
-
51  const int* level);
+
44  using ErrorFuncDefault = void (*)(int* tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi),
+
45  const int* tagval, const int* clearval,
+
46  amrex::Real* data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi),
+
47  const int* lo, const int * hi, const int* nvar,
+
48  const int* domain_lo, const int* domain_hi,
+
49  const amrex::Real* dx, const amrex::Real* xlo,
+
50  const amrex::Real* prob_lo, const amrex::Real* time,
+
51  const int* level);
52 
-
53  typedef void (*ErrorFunc2Default)(int* tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi),
-
54  const int* tagval, const int* clearval,
-
55  amrex::Real* data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi),
-
56  const int* lo, const int * hi, const int* nvar,
-
57  const int* domain_lo, const int* domain_hi,
-
58  const amrex::Real* dx, const int* level, const amrex::Real* avg);
+
53  using ErrorFunc2Default = void (*)(int* tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi),
+
54  const int* tagval, const int* clearval,
+
55  amrex::Real* data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi),
+
56  const int* lo, const int * hi, const int* nvar,
+
57  const int* domain_lo, const int* domain_hi,
+
58  const amrex::Real* dx, const int* level, const amrex::Real* avg);
59 
60 
-
84  typedef void (*ErrorFunc3DDefault)(int* tag, const int* tlo, const int* thi,
-
85  const int* tagval, const int* clearval,
-
86  amrex::Real* data, const int* data_lo, const int* data_hi,
-
87  const int* lo, const int * hi, const int* nvar,
-
88  const int* domain_lo, const int* domain_hi,
-
89  const amrex::Real* dx, const amrex::Real* xlo,
-
90  const amrex::Real* prob_lo, const amrex::Real* time,
-
91  const int* level);
+
84  using ErrorFunc3DDefault = void (*)(int* tag, const int* tlo, const int* thi,
+
85  const int* tagval, const int* clearval,
+
86  amrex::Real* data, const int* data_lo, const int* data_hi,
+
87  const int* lo, const int * hi, const int* nvar,
+
88  const int* domain_lo, const int* domain_hi,
+
89  const amrex::Real* dx, const amrex::Real* xlo,
+
90  const amrex::Real* prob_lo, const amrex::Real* time,
+
91  const int* level);
92 
93 }
94 
@@ -166,10 +166,10 @@
123  ErrorFunc ();
124 
130  // No explicit because some codes rely on it.
-
131  ErrorFunc (ErrorFuncDefault inFunc);
+
131  ErrorFunc (ErrorFuncDefault inFunc);
132 
138  // No explicit because some codes rely on it.
-
139  ErrorFunc (ErrorFunc3DDefault inFunc);
+
139  ErrorFunc (ErrorFunc3DDefault inFunc);
140 
145  [[nodiscard]] virtual ErrorFunc* clone () const;
146 
@@ -199,8 +199,8 @@
217  const int* level) const;
218  protected:
219 
-
220  ErrorFuncDefault m_func{nullptr};
-
221  ErrorFunc3DDefault m_func3D{nullptr};
+
220  ErrorFuncDefault m_func{nullptr};
+
221  ErrorFunc3DDefault m_func3D{nullptr};
222  };
223  class ErrorFunc2
224  {
@@ -209,7 +209,7 @@
230  ErrorFunc2 ();
231 
237  // No explicit because some codes rely on it.
-
238  ErrorFunc2 (ErrorFunc2Default inFunc);
+
238  ErrorFunc2 (ErrorFunc2Default inFunc);
239 
244  [[nodiscard]] virtual ErrorFunc2* clone () const;
245 
@@ -228,7 +228,7 @@
281  const Real* dx, const int* level, const Real* avg) const;
282  protected:
283 
-
284  ErrorFunc2Default m_func{nullptr};
+
284  ErrorFunc2Default m_func{nullptr};
285  };
286 
295  ErrorRec (std::string nm, int ng, ErrorType etyp,
@@ -499,9 +499,9 @@
amrex::SundialsUserFun::f
static int f(realtype t, N_Vector y_data, N_Vector y_rhs, void *user_data)
Definition: AMReX_SundialsIntegrator.H:40
amrex::detail::max
@ max
Definition: AMReX_ParallelReduce.H:17
amrex
Definition: AMReX_Amr.cpp:49
-
amrex::ErrorFunc3DDefault
void(* ErrorFunc3DDefault)(int *tag, const int *tlo, const int *thi, const int *tagval, const int *clearval, amrex::Real *data, const int *data_lo, const int *data_hi, const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level)
Dimension agnostic version that always has three elements. Note that this is only implemented for the...
Definition: AMReX_ErrorList.H:84
-
amrex::ErrorFunc2Default
void(* ErrorFunc2Default)(int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const int *level, const amrex::Real *avg)
Definition: AMReX_ErrorList.H:53
-
amrex::ErrorFuncDefault
void(* ErrorFuncDefault)(int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level)
Type of extern "C" function called by ErrorRec to do tagging of cells for refinement.
Definition: AMReX_ErrorList.H:44
+
amrex::ErrorFunc2Default
void(*)(int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const int *level, const amrex::Real *avg) ErrorFunc2Default
Definition: AMReX_ErrorList.H:58
+
amrex::ErrorFuncDefault
void(*)(int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level) ErrorFuncDefault
Type of extern "C" function called by ErrorRec to do tagging of cells for refinement.
Definition: AMReX_ErrorList.H:51
+
amrex::ErrorFunc3DDefault
void(*)(int *tag, const int *tlo, const int *thi, const int *tagval, const int *clearval, amrex::Real *data, const int *data_lo, const int *data_hi, const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level) ErrorFunc3DDefault
Dimension agnostic version that always has three elements. Note that this is only implemented for the...
Definition: AMReX_ErrorList.H:91
amrex::operator<<
std::ostream & operator<<(std::ostream &os, AmrMesh const &amr_mesh)
Definition: AMReX_AmrMesh.cpp:1035
amrex::AMRErrorTagInfo
Definition: AMReX_ErrorList.H:393
amrex::AMRErrorTagInfo::SetRealBox
AMRErrorTagInfo & SetRealBox(const amrex::RealBox &realbox) noexcept
Definition: AMReX_ErrorList.H:413
diff --git a/amrex/docs_html/doxygen/AMReX__FACopyDescriptor_8H_source.html b/amrex/docs_html/doxygen/AMReX__FACopyDescriptor_8H_source.html index 812b9f321b..4fb339b05c 100644 --- a/amrex/docs_html/doxygen/AMReX__FACopyDescriptor_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__FACopyDescriptor_8H_source.html @@ -198,13 +198,13 @@
106 template <class FAB>
107 class FabArrayCopyDescriptor
108 {
-
109  typedef std::multimap<int,FabCopyDescriptor<FAB>*> FCDMap;
+
109  using FCDMap = std::multimap<int,FabCopyDescriptor<FAB>*>;
110 
-
111  typedef typename FCDMap::value_type FCDMapValueType;
-
112  typedef typename FCDMap::iterator FCDMapIter;
-
113  typedef typename FCDMap::const_iterator FCDMapConstIter;
+
111  using FCDMapValueType = typename FCDMap::value_type;
+
112  using FCDMapIter = typename FCDMap::iterator;
+
113  using FCDMapConstIter = typename FCDMap::const_iterator;
114 
-
115  public:
+
115 public:
116 
117  FabArrayCopyDescriptor () = default;
118 
@@ -269,12 +269,12 @@
183  int numcomp,
184  bool bUseValidBox,
185  BoxDomain& unfilledBoxDomain);
-
189  typedef std::vector<FabArrayBase::FabComTag> FabComTagContainer;
+
189  using FabComTagContainer = std::vector<FabArrayBase::FabComTag>;
190 
-
191  typedef std::vector<FabComTagContainer::const_iterator> FabComTagIterContainer;
+
191  using FabComTagIterContainer = std::vector<FabComTagContainer::const_iterator>;
195  std::vector<FabArray<FAB>*> fabArrays;
196  std::vector<FCDMap> fabCopyDescList;
-
197  FabComTagContainer fabComTagList;
+
197  FabComTagContainer fabComTagList;
198  int nextFillBoxId{0};
199  bool dataAvailable{false};
200 };
@@ -289,7 +289,7 @@
209 
210  fabArrays.push_back(fabarray); /* Bump size() by one */
211 
-
212  fabCopyDescList.push_back(FCDMap());
+
212  fabCopyDescList.push_back(FCDMap());
213 
214  return result;
215 }
@@ -378,7 +378,7 @@
298  fabComTagList.push_back(fabComTag);
299  }
300 
-
301  fabCopyDescList[fabarrayid.Id()].insert(FCDMapValueType(fcd->fillBoxId,fcd));
+
301  fabCopyDescList[fabarrayid.Id()].insert(FCDMapValueType(fcd->fillBoxId,fcd));
302 
303  if (returnedUnfilledBoxes != nullptr)
304  {
@@ -518,7 +518,7 @@
438  if (ParallelDescriptor::NProcs() == 1) return;
439 
440 #ifdef BL_USE_MPI
-
441  typedef typename FAB::value_type value_type;
+
441  using value_type = typename FAB::value_type;
442 
443  BL_PROFILE("FabArrayCopyDescriptor::CollectData()");
444 
@@ -671,7 +671,7 @@
591  int* p = static_cast<int*>(amrex::The_Arena()->alloc(cnt*sizeof(int)));
592  md_send_data.push_back(p);
593 
-
594  const FabComTagIterContainer& tags = RcvTags[rank];
+
594  const FabComTagIterContainer& tags = RcvTags[rank];
595 
596  // initialized the data
597  int * md = p;
@@ -801,7 +801,7 @@
721 
722  BL_ASSERT(found != RcvTags.end());
723 
-
724  const FabComTagIterContainer& tags = found->second;
+
724  const FabComTagIterContainer& tags = found->second;
725 
726  for (auto const& it : tags)
727  {
@@ -883,7 +883,7 @@
803 {
804  BL_ASSERT(dataAvailable);
805 
-
806  FCDMapIter fmi = fabCopyDescList[faid.Id()].lower_bound(fillboxid.Id());
+
806  FCDMapIter fmi = fabCopyDescList[faid.Id()].lower_bound(fillboxid.Id());
807 
808  BL_ASSERT(fmi != fabCopyDescList[faid.Id()].end());
809 
@@ -960,13 +960,11 @@
amrex::FabArrayCopyDescriptor::nFabComTags
int nFabComTags() const
Definition: AMReX_FACopyDescriptor.H:169
amrex::FabArrayCopyDescriptor::clear
void clear()
Definition: AMReX_FACopyDescriptor.H:412
amrex::FabArrayCopyDescriptor::FillFab
void FillFab(FabArrayId faid, const FillBoxId &fillboxid, FAB &destFab)
Definition: AMReX_FACopyDescriptor.H:773
-
amrex::FabArrayCopyDescriptor::FCDMapConstIter
FCDMap::const_iterator FCDMapConstIter
Definition: AMReX_FACopyDescriptor.H:113
+
amrex::FabArrayCopyDescriptor::FCDMapConstIter
typename FCDMap::const_iterator FCDMapConstIter
Definition: AMReX_FACopyDescriptor.H:113
amrex::FabArrayCopyDescriptor::nextFillBoxId
int nextFillBoxId
Definition: AMReX_FACopyDescriptor.H:198
amrex::FabArrayCopyDescriptor::FabArrayCopyDescriptor
FabArrayCopyDescriptor()=default
amrex::FabArrayCopyDescriptor::CollectData
void CollectData()
Definition: AMReX_FACopyDescriptor.H:434
amrex::FabArrayCopyDescriptor::AddBox
FillBoxId AddBox(FabArrayId fabarrayid, const Box &destFabBox, BoxList *unfilledBoxes)
Definition: AMReX_FACopyDescriptor.H:391
-
amrex::FabArrayCopyDescriptor::FCDMapValueType
FCDMap::value_type FCDMapValueType
Definition: AMReX_FACopyDescriptor.H:111
-
amrex::FabArrayCopyDescriptor::FCDMapIter
FCDMap::iterator FCDMapIter
Definition: AMReX_FACopyDescriptor.H:112
amrex::FabArrayCopyDescriptor::fabComTagList
FabComTagContainer fabComTagList
Definition: AMReX_FACopyDescriptor.H:197
amrex::FabArrayCopyDescriptor::RegisterFabArray
FabArrayId RegisterFabArray(FabArray< FAB > *fabarray)
Definition: AMReX_FACopyDescriptor.H:204
amrex::FabArrayCopyDescriptor::CurrentNFabArrays
int CurrentNFabArrays() const
Definition: AMReX_FACopyDescriptor.H:167
@@ -974,13 +972,15 @@
amrex::FabArrayCopyDescriptor::AddBox
FillBoxId AddBox(FabArrayId fabarrayid, const Box &destFabBox, BoxList *unfilledBoxes, int srccomp, int destcomp, int numcomp)
Definition: AMReX_FACopyDescriptor.H:312
amrex::FabArrayCopyDescriptor::~FabArrayCopyDescriptor
~FabArrayCopyDescriptor()
Definition: AMReX_FACopyDescriptor.H:405
amrex::FabArrayCopyDescriptor::DataAvailable
bool DataAvailable() const
Definition: AMReX_FACopyDescriptor.H:163
-
amrex::FabArrayCopyDescriptor::FCDMap
std::multimap< int, FabCopyDescriptor< FAB > * > FCDMap
Definition: AMReX_FACopyDescriptor.H:109
+
amrex::FabArrayCopyDescriptor::FabComTagContainer
std::vector< FabArrayBase::FabComTag > FabComTagContainer
Definition: AMReX_FACopyDescriptor.H:189
amrex::FabArrayCopyDescriptor::AddBoxDoIt
void AddBoxDoIt(FabArrayId fabarrayid, const Box &destFabBox, BoxList *returnedUnfilledBoxes, int faindex, int srccomp, int destcomp, int numcomp, bool bUseValidBox, BoxDomain &unfilledBoxDomain)
Definition: AMReX_FACopyDescriptor.H:219
amrex::FabArrayCopyDescriptor::AddBox
FillBoxId AddBox(FabArrayId fabarrayid, const Box &destFabBox, BoxList *unfilledBoxes, int fabarrayindex, int srccomp, int destcomp, int numcomp, bool bUseValidBox=true)
Definition: AMReX_FACopyDescriptor.H:354
-
amrex::FabArrayCopyDescriptor::FabComTagContainer
std::vector< FabArrayBase::FabComTag > FabComTagContainer
Definition: AMReX_FACopyDescriptor.H:189
-
amrex::FabArrayCopyDescriptor::FabComTagIterContainer
std::vector< FabComTagContainer::const_iterator > FabComTagIterContainer
Definition: AMReX_FACopyDescriptor.H:191
+
amrex::FabArrayCopyDescriptor::FCDMapIter
typename FCDMap::iterator FCDMapIter
Definition: AMReX_FACopyDescriptor.H:112
+
amrex::FabArrayCopyDescriptor::FCDMapValueType
typename FCDMap::value_type FCDMapValueType
Definition: AMReX_FACopyDescriptor.H:111
amrex::FabArrayCopyDescriptor::FillFab
void FillFab(FabArrayId faid, const FillBoxId &fillboxid, FAB &destFab, const Box &destBox)
Definition: AMReX_FACopyDescriptor.H:799
+
amrex::FabArrayCopyDescriptor::FCDMap
std::multimap< int, FabCopyDescriptor< FAB > * > FCDMap
Definition: AMReX_FACopyDescriptor.H:109
amrex::FabArrayCopyDescriptor::fabCopyDescList
std::vector< FCDMap > fabCopyDescList
Definition: AMReX_FACopyDescriptor.H:196
+
amrex::FabArrayCopyDescriptor::FabComTagIterContainer
std::vector< FabComTagContainer::const_iterator > FabComTagIterContainer
Definition: AMReX_FACopyDescriptor.H:191
amrex::FabArrayId
Definition: AMReX_FACopyDescriptor.H:43
amrex::FabArrayId::Id
int Id() const
Definition: AMReX_FACopyDescriptor.H:50
amrex::FabArrayId::fabArrayId
int fabArrayId
Definition: AMReX_FACopyDescriptor.H:59
@@ -1028,7 +1028,7 @@
amrex::FillRemotely
@ FillRemotely
Definition: AMReX_FACopyDescriptor.H:16
amrex::Abort
void Abort(const std::string &msg)
Print out message to cerr and exit via abort().
Definition: AMReX.cpp:207
amrex::The_Arena
Arena * The_Arena()
Definition: AMReX_Arena.cpp:594
-
MPI_Status
Definition: AMReX_ccse-mpi.H:50
+
MPI_Status
Definition: AMReX_ccse-mpi.H:51
amrex::FabArrayBase::FabComTag
Used for collecting information used in communicating FABs.
Definition: AMReX_FabArrayBase.H:262
amrex::FabArrayBase::FabComTag::srcComp
int srcComp
Definition: AMReX_FabArrayBase.H:267
amrex::FabArrayBase::FabComTag::fabArrayId
int fabArrayId
Definition: AMReX_FabArrayBase.H:271
diff --git a/amrex/docs_html/doxygen/AMReX__FBI_8H_source.html b/amrex/docs_html/doxygen/AMReX__FBI_8H_source.html index fbb3a686b1..a043c7a294 100644 --- a/amrex/docs_html/doxygen/AMReX__FBI_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__FBI_8H_source.html @@ -175,7 +175,7 @@
74 fab_to_fab (Vector<Array4CopyTag<T0, T1> > const& copy_tags, int scomp, int dcomp,
75  int ncomp, F && f, Vector<Array4Tag<int> > const& masks)
76 {
-
77  typedef Array4MaskCopyTag<T0, T1> TagType;
+
77  using TagType = Array4MaskCopyTag<T0, T1>;
78  Vector<TagType> tags;
79  const int N = copy_tags.size();
80  tags.reserve(N);
@@ -377,7 +377,7 @@
276  if (N_locs == 0) return;
277  bool is_thread_safe = TheFB.m_threadsafe_loc;
278 
-
279  typedef Array4CopyTag<value_type> TagType;
+
279  using TagType = Array4CopyTag<value_type>;
280  Vector<TagType> loc_copy_tags;
281  loc_copy_tags.reserve(N_locs);
282 
@@ -438,7 +438,7 @@
337  if (N_locs == 0) return;
338  bool is_thread_safe = thecmd.m_threadsafe_loc;
339 
-
340  typedef Array4BoxTag<value_type> TagType;
+
340  using TagType = Array4BoxTag<value_type>;
341  Vector<TagType> loc_setval_tags;
342  loc_setval_tags.reserve(N_locs);
343 
@@ -466,7 +466,7 @@
365  auto const& RcvTags = *(thecmd.m_RcvTags);
366  bool is_thread_safe = thecmd.m_threadsafe_rcv;
367 
-
368  typedef Array4BoxTag<value_type> TagType;
+
368  using TagType = Array4BoxTag<value_type>;
369  Vector<TagType> rcv_setval_tags;
370 
371  for (auto it = RcvTags.begin(); it != RcvTags.end(); ++it) {
@@ -850,7 +850,7 @@
749  }
750 #endif
751 
-
752  typedef Array4CopyTag<BUF, value_type> TagType;
+
752  using TagType = Array4CopyTag<BUF, value_type>;
753  Vector<TagType> snd_copy_tags;
754  for (int j = 0; j < N_snds; ++j)
755  {
@@ -913,7 +913,7 @@
812  }
813 #endif
814 
-
815  typedef Array4CopyTag<value_type, BUF> TagType;
+
815  using TagType = Array4CopyTag<value_type, BUF>;
816  Vector<TagType> recv_copy_tags;
817  recv_copy_tags.reserve(N_rcvs);
818 
diff --git a/amrex/docs_html/doxygen/AMReX__FEIntegrator_8H_source.html b/amrex/docs_html/doxygen/AMReX__FEIntegrator_8H_source.html index 53ceb0e8af..107c937f98 100644 --- a/amrex/docs_html/doxygen/AMReX__FEIntegrator_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__FEIntegrator_8H_source.html @@ -112,7 +112,7 @@
11 class FEIntegrator : public IntegratorBase<T>
12 {
13 private:
-
14  typedef IntegratorBase<T> BaseT;
+
14  using BaseT = IntegratorBase<T>;
15 
16  amrex::Vector<std::unique_ptr<T> > F_nodes;
17 
@@ -178,7 +178,6 @@
AMReX_REAL.H
AMReX_Vector.H
amrex::FEIntegrator
Definition: AMReX_FEIntegrator.H:12
-
amrex::FEIntegrator::BaseT
IntegratorBase< T > BaseT
Definition: AMReX_FEIntegrator.H:14
amrex::FEIntegrator::FEIntegrator
FEIntegrator()
Definition: AMReX_FEIntegrator.H:24
amrex::FEIntegrator::F_nodes
amrex::Vector< std::unique_ptr< T > > F_nodes
Definition: AMReX_FEIntegrator.H:16
amrex::FEIntegrator::initialize_stages
void initialize_stages(const T &S_data)
Definition: AMReX_FEIntegrator.H:18
diff --git a/amrex/docs_html/doxygen/AMReX__FabArrayBase_8H_source.html b/amrex/docs_html/doxygen/AMReX__FabArrayBase_8H_source.html index e74fe174ca..4b63338dd4 100644 --- a/amrex/docs_html/doxygen/AMReX__FabArrayBase_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__FabArrayBase_8H_source.html @@ -270,17 +270,17 @@
200  //
201  // Some typedefs & helper functions used throughout the code.
202  //
-
203  typedef std::vector<CopyComTag> CopyComTagsContainer;
+
203  using CopyComTagsContainer = std::vector<CopyComTag>;
204 
-
205  typedef std::map<int,CopyComTagsContainer> MapOfCopyComTagContainers;
+
205  using MapOfCopyComTagContainers = std::map<int,CopyComTagsContainer>;
206  };
207  //
208  // Some useful typedefs.
209  //
-
210  typedef CopyComTag::CopyComTagsContainer CopyComTagsContainer;
-
211  typedef CopyComTag::MapOfCopyComTagContainers MapOfCopyComTagContainers;
+
210  using CopyComTagsContainer = CopyComTag::CopyComTagsContainer;
+
211  using MapOfCopyComTagContainers = CopyComTag::MapOfCopyComTagContainers;
212  //
-
213  static Long bytesOfMapOfCopyComTagContainers (const MapOfCopyComTagContainers&);
+
213  static Long bytesOfMapOfCopyComTagContainers (const MapOfCopyComTagContainers&);
214 
220  struct BDKey {
221  BDKey () noexcept = default;
@@ -374,10 +374,10 @@
319  Long m_nuse{0};
320  };
321 
-
322  typedef std::multimap<BDKey,FabArrayBase::FPinfo*> FPinfoCache;
-
323  typedef FPinfoCache::iterator FPinfoCacheIter;
+
322  using FPinfoCache = std::multimap<BDKey,FabArrayBase::FPinfo*>;
+
323  using FPinfoCacheIter = FPinfoCache::iterator;
324 
-
325  static FPinfoCache m_TheFillPatchCache;
+
325  static FPinfoCache m_TheFillPatchCache;
326 
327  static CacheStats m_FPinfo_stats;
328 
@@ -554,10 +554,10 @@
507  bool build_recv_tag);
508  };
509  //
-
510  typedef std::multimap<BDKey,FabArrayBase::FB*> FBCache;
-
511  typedef FBCache::iterator FBCacheIter;
+
510  using FBCache = std::multimap<BDKey,FabArrayBase::FB*>;
+
511  using FBCacheIter = FBCache::iterator;
512  //
-
513  static FBCache m_TheFBCache;
+
513  static FBCache m_TheFBCache;
514  static CacheStats m_FBC_stats;
515  //
516  const FB& getFB (const IntVect& nghost, const Periodicity& period,
@@ -604,10 +604,10 @@
558  };
559 
560  //
-
561  typedef std::multimap<BDKey,FabArrayBase::CPC*> CPCache;
-
562  typedef CPCache::iterator CPCacheIter;
+
561  using CPCache = std::multimap<BDKey,FabArrayBase::CPC*>;
+
562  using CPCacheIter = CPCache::iterator;
563  //
-
564  static CPCache m_TheCPCache;
+
564  static CPCache m_TheCPCache;
565  static CacheStats m_CPC_stats;
566  //
567  const CPC& getCPC (const IntVect& dstng, const FabArrayBase& src, const IntVect& srcng,
@@ -627,10 +627,10 @@
582  void define (const FabArrayBase& fa);
583  };
584  //
-
585  typedef std::multimap<BDKey,FabArrayBase::RB90*> RB90Cache;
-
586  typedef RB90Cache::iterator RB90CacheIter;
+
585  using RB90Cache = std::multimap<BDKey,FabArrayBase::RB90*>;
+
586  using RB90CacheIter = RB90Cache::iterator;
587  //
-
588  static RB90Cache m_TheRB90Cache;
+
588  static RB90Cache m_TheRB90Cache;
589  //
590  const RB90& getRB90 (const IntVect& nghost, const Box& domain) const;
591  //
@@ -648,10 +648,10 @@
604  void define (const FabArrayBase& fa);
605  };
606  //
-
607  typedef std::multimap<BDKey,FabArrayBase::RB180*> RB180Cache;
-
608  typedef RB180Cache::iterator RB180CacheIter;
+
607  using RB180Cache = std::multimap<BDKey,FabArrayBase::RB180*>;
+
608  using RB180CacheIter = RB180Cache::iterator;
609  //
-
610  static RB180Cache m_TheRB180Cache;
+
610  static RB180Cache m_TheRB180Cache;
611  //
612  const RB180& getRB180 (const IntVect& nghost, const Box& domain) const;
613  //
@@ -669,10 +669,10 @@
626  void define (const FabArrayBase& fa);
627  };
628  //
-
629  typedef std::multimap<BDKey,FabArrayBase::PolarB*> PolarBCache;
-
630  typedef PolarBCache::iterator PolarBCacheIter;
+
629  using PolarBCache = std::multimap<BDKey,FabArrayBase::PolarB*>;
+
630  using PolarBCacheIter = PolarBCache::iterator;
631  //
-
632  static PolarBCache m_ThePolarBCache;
+
632  static PolarBCache m_ThePolarBCache;
633  //
634  const PolarB& getPolarB (const IntVect& nghost, const Box& domain) const;
635  //
@@ -787,20 +787,18 @@
amrex::FabArrayBase
Definition: AMReX_FabArrayBase.H:32
amrex::FabArrayBase::flushTileArray
void flushTileArray(const IntVect &tilesize=IntVect::TheZeroVector(), bool no_assertion=false) const
amrex::FabArrayBase::nGrowVect
IntVect nGrowVect() const noexcept
Definition: AMReX_FabArrayBase.H:70
-
amrex::FabArrayBase::FBCache
std::multimap< BDKey, FabArrayBase::FB * > FBCache
Definition: AMReX_FabArrayBase.H:510
amrex::FabArrayBase::mfiter_tile_size
static AMREX_EXPORT IntVect mfiter_tile_size
Default tilesize in MFIter.
Definition: AMReX_FabArrayBase.H:279
amrex::FabArrayBase::Finalize
static void Finalize()
amrex::FabArrayBase::clearThisBD
void clearThisBD(bool no_assertion=false) const
clear BD count and caches associated with this BD, if no other is using this BD.
amrex::FabArrayBase::clear
void clear()
amrex::FabArrayBase::flushPolarB
void flushPolarB(bool no_assertion=false) const
This flushes its own PolarB.
+
amrex::FabArrayBase::FPinfoCache
std::multimap< BDKey, FabArrayBase::FPinfo * > FPinfoCache
Definition: AMReX_FabArrayBase.H:322
amrex::FabArrayBase::indexArray
Vector< int > indexArray
Definition: AMReX_FabArrayBase.H:436
amrex::FabArrayBase::FabArrayBase
FabArrayBase()=default
amrex::FabArrayBase::flushCPC
void flushCPC(bool no_assertion=false) const
This flushes its own CPC.
-
amrex::FabArrayBase::CopyComTagsContainer
CopyComTag::CopyComTagsContainer CopyComTagsContainer
Definition: AMReX_FabArrayBase.H:210
amrex::FabArrayBase::m_mem_usage
static std::map< std::string, meminfo > m_mem_usage
Definition: AMReX_FabArrayBase.H:393
amrex::FabArrayBase::getRB90
const RB90 & getRB90(const IntVect &nghost, const Box &domain) const
amrex::FabArrayBase::define_fb_metadata
void define_fb_metadata(CommMetaData &cmd, const IntVect &nghost, bool cross, const Periodicity &period, bool multi_ghost) const
-
amrex::FabArrayBase::PolarBCacheIter
PolarBCache::iterator PolarBCacheIter
Definition: AMReX_FabArrayBase.H:630
amrex::FabArrayBase::operator=
FabArrayBase & operator=(const FabArrayBase &rhs)=default
amrex::FabArrayBase::FabArrayBase
FabArrayBase(const BoxArray &bxs, const DistributionMapping &dm, int nvar, int ngrow)
amrex::FabArrayBase::m_bdkey
BDKey m_bdkey
Definition: AMReX_FabArrayBase.H:440
@@ -808,12 +806,13 @@
amrex::FabArrayBase::printMemUsage
static void printMemUsage()
amrex::FabArrayBase::setNGrowFilled
void setNGrowFilled(IntVect const &ng) noexcept
Definition: AMReX_FabArrayBase.H:142
amrex::FabArrayBase::getRB180
const RB180 & getRB180(const IntVect &nghost, const Box &domain) const
-
amrex::FabArrayBase::FPinfoCacheIter
FPinfoCache::iterator FPinfoCacheIter
Definition: AMReX_FabArrayBase.H:323
+
amrex::FabArrayBase::RB90CacheIter
RB90Cache::iterator RB90CacheIter
Definition: AMReX_FabArrayBase.H:586
amrex::FabArrayBase::m_FPinfo_stats
static CacheStats m_FPinfo_stats
Definition: AMReX_FabArrayBase.H:327
amrex::FabArrayBase::flushParForInfo
void flushParForInfo(bool no_assertion=false) const
amrex::FabArrayBase::updateBDKey
void updateBDKey()
amrex::FabArrayBase::m_TheParForCache
static std::multimap< BDKey, ParForInfo * > m_TheParForCache
Definition: AMReX_FabArrayBase.H:667
amrex::FabArrayBase::buildTileArray
void buildTileArray(const IntVect &tilesize, TileArray &ta) const
+
amrex::FabArrayBase::FBCacheIter
FBCache::iterator FBCacheIter
Definition: AMReX_FabArrayBase.H:511
amrex::FabArrayBase::flushRB180Cache
static void flushRB180Cache()
This flushes the entire cache.
amrex::FabArrayBase::getTileArray
const TileArray * getTileArray(const IntVect &tilesize) const
amrex::FabArrayBase::FabArrayBase
FabArrayBase(FabArrayBase &&rhs) noexcept=default
@@ -826,20 +825,17 @@
amrex::FabArrayBase::isFusingCandidate
bool isFusingCandidate() const noexcept
Is this a good candidate for kernel fusing?
amrex::FabArrayBase::flushCPCache
static void flushCPCache()
This flusheds the entire cache.
amrex::FabArrayBase::is_cell_centered
bool is_cell_centered() const noexcept
This tests on whether the FabArray is cell-centered.
-
amrex::FabArrayBase::RB180CacheIter
RB180Cache::iterator RB180CacheIter
Definition: AMReX_FabArrayBase.H:608
amrex::FabArrayBase::is_nodal
bool is_nodal() const noexcept
This tests on whether the FabArray is fully nodal.
amrex::FabArrayBase::isOwner
bool isOwner(int li) const noexcept
Definition: AMReX_FabArrayBase.H:429
amrex::FabArrayBase::flushTileArrayCache
static void flushTileArrayCache()
This flushes the entire cache.
-
amrex::FabArrayBase::CPCache
std::multimap< BDKey, FabArrayBase::CPC * > CPCache
Definition: AMReX_FabArrayBase.H:561
amrex::FabArrayBase::ixType
IndexType ixType() const noexcept
Return index type.
Definition: AMReX_FabArrayBase.H:76
-
amrex::FabArrayBase::FPinfoCache
std::multimap< BDKey, FabArrayBase::FPinfo * > FPinfoCache
Definition: AMReX_FabArrayBase.H:322
amrex::FabArrayBase::pushRegionTag
static void pushRegionTag(std::string t)
amrex::FabArrayBase::m_TheFBCache
static FBCache m_TheFBCache
Definition: AMReX_FabArrayBase.H:513
amrex::FabArrayBase::updateMemUsage
static void updateMemUsage(std::string const &tag, Long nbytes, Arena const *ar)
amrex::FabArrayBase::flushPolarBCache
static void flushPolarBCache()
This flushes the entire cache.
-
amrex::FabArrayBase::MapOfCopyComTagContainers
CopyComTag::MapOfCopyComTagContainers MapOfCopyComTagContainers
Definition: AMReX_FabArrayBase.H:211
amrex::FabArrayBase::size
int size() const noexcept
Return the number of FABs in the FabArray.
Definition: AMReX_FabArrayBase.H:100
amrex::FabArrayBase::flushCFinfo
void flushCFinfo(bool no_assertion=false) const
+
amrex::FabArrayBase::RB180Cache
std::multimap< BDKey, FabArrayBase::RB180 * > RB180Cache
Definition: AMReX_FabArrayBase.H:607
amrex::FabArrayBase::nGrowFilled
IntVect nGrowFilled() const noexcept
Definition: AMReX_FabArrayBase.H:141
amrex::FabArrayBase::flushFPinfo
void flushFPinfo(bool no_assertion=false) const
amrex::FabArrayBase::define
void define(const BoxArray &bxs, const DistributionMapping &dm, int nvar, int ngrow)
@@ -849,17 +845,20 @@
amrex::FabArrayBase::popRegionTag
static void popRegionTag()
amrex::FabArrayBase::OwnerShip
const std::vector< bool > & OwnerShip() const noexcept
Return owenership of fabs. The concept of ownership only applies when UPC++ team is used....
Definition: AMReX_FabArrayBase.H:428
amrex::FabArrayBase::TAMap
std::map< std::pair< IntVect, IntVect >, TileArray > TAMap
Definition: AMReX_FabArrayBase.H:449
-
amrex::FabArrayBase::RB90Cache
std::multimap< BDKey, FabArrayBase::RB90 * > RB90Cache
Definition: AMReX_FabArrayBase.H:585
amrex::FabArrayBase::nGrow
int nGrow(int direction=0) const noexcept
Return the grow factor that defines the region of definition.
Definition: AMReX_FabArrayBase.H:68
amrex::FabArrayBase::m_CFinfo_stats
static CacheStats m_CFinfo_stats
Definition: AMReX_FabArrayBase.H:372
amrex::FabArrayBase::m_TheRB180Cache
static RB180Cache m_TheRB180Cache
Definition: AMReX_FabArrayBase.H:610
+
amrex::FabArrayBase::CPCacheIter
CPCache::iterator CPCacheIter
Definition: AMReX_FabArrayBase.H:562
+
amrex::FabArrayBase::CopyComTagsContainer
CopyComTag::CopyComTagsContainer CopyComTagsContainer
Definition: AMReX_FabArrayBase.H:210
amrex::FabArrayBase::MaxComp
static AMREX_EXPORT int MaxComp
The maximum number of components to copy() at a time.
Definition: AMReX_FabArrayBase.H:282
+
amrex::FabArrayBase::FBCache
std::multimap< BDKey, FabArrayBase::FB * > FBCache
Definition: AMReX_FabArrayBase.H:510
amrex::FabArrayBase::queryMemUsage
static Long queryMemUsage(const std::string &tag=std::string("All"))
+
amrex::FabArrayBase::RB180CacheIter
RB180Cache::iterator RB180CacheIter
Definition: AMReX_FabArrayBase.H:608
amrex::FabArrayBase::getBDKey
BDKey getBDKey() const noexcept
Definition: AMReX_FabArrayBase.H:240
amrex::FabArrayBase::m_TheCPCache
static CPCache m_TheCPCache
Definition: AMReX_FabArrayBase.H:564
+
amrex::FabArrayBase::MapOfCopyComTagContainers
CopyComTag::MapOfCopyComTagContainers MapOfCopyComTagContainers
Definition: AMReX_FabArrayBase.H:211
amrex::FabArrayBase::m_TAC_stats
static CacheStats m_TAC_stats
Definition: AMReX_FabArrayBase.H:453
amrex::FabArrayBase::localindex
int localindex(int K) const noexcept
Return local index in the vector of FABs.
Definition: AMReX_FabArrayBase.H:109
-
amrex::FabArrayBase::RB90CacheIter
RB90Cache::iterator RB90CacheIter
Definition: AMReX_FabArrayBase.H:586
amrex::FabArrayBase::FabArrayBase
FabArrayBase(const FabArrayBase &rhs)=default
amrex::FabArrayBase::local_size
int local_size() const noexcept
Return the number of local FABs in the FabArray.
Definition: AMReX_FabArrayBase.H:103
amrex::FabArrayBase::n_grow
IntVect n_grow
Definition: AMReX_FabArrayBase.H:438
@@ -869,11 +868,12 @@
amrex::FabArrayBase::ownership
std::vector< bool > ownership
Definition: AMReX_FabArrayBase.H:437
amrex::FabArrayBase::m_TheCrseFineCache
static CFinfoCache m_TheCrseFineCache
Definition: AMReX_FabArrayBase.H:370
amrex::FabArrayBase::queryMemUsageHWM
static Long queryMemUsageHWM(const std::string &tag=std::string("All"))
+
amrex::FabArrayBase::CPCache
std::multimap< BDKey, FabArrayBase::CPC * > CPCache
Definition: AMReX_FabArrayBase.H:561
amrex::FabArrayBase::FabArrayBase
FabArrayBase(const BoxArray &bxs, const DistributionMapping &dm, int nvar, const IntVect &ngrow)
amrex::FabArrayBase::CFinfoCache
std::multimap< BDKey, FabArrayBase::CFinfo * > CFinfoCache
Definition: AMReX_FabArrayBase.H:367
amrex::FabArrayBase::empty
bool empty() const noexcept
Definition: AMReX_FabArrayBase.H:79
amrex::FabArrayBase::Initialize
static void Initialize()
Initialize from ParmParse with "fabarray" prefix.
-
amrex::FabArrayBase::FBCacheIter
FBCache::iterator FBCacheIter
Definition: AMReX_FabArrayBase.H:511
+
amrex::FabArrayBase::RB90Cache
std::multimap< BDKey, FabArrayBase::RB90 * > RB90Cache
Definition: AMReX_FabArrayBase.H:585
amrex::FabArrayBase::DistributionMap
const DistributionMapping & DistributionMap() const noexcept
Return constant reference to associated DistributionMapping.
Definition: AMReX_FabArrayBase.H:121
amrex::FabArrayBase::flushRB90Cache
static void flushRB90Cache()
This flushes the entire cache.
amrex::FabArrayBase::TheFPinfo
static const FPinfo & TheFPinfo(const FabArrayBase &srcfa, const FabArrayBase &dstfa, const IntVect &dstng, const BoxConverter &coarsener, const Geometry &fgeom, const Geometry &cgeom, const EB2::IndexSpace *)
@@ -896,18 +896,18 @@
amrex::FabArrayBase::distributionMap
DistributionMapping distributionMap
Definition: AMReX_FabArrayBase.H:435
amrex::FabArrayBase::fabbox
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.
amrex::FabArrayBase::getParForInfo
ParForInfo const & getParForInfo(const IntVect &nghost, int nthreads) const
+
amrex::FabArrayBase::FPinfoCacheIter
FPinfoCache::iterator FPinfoCacheIter
Definition: AMReX_FabArrayBase.H:323
amrex::FabArrayBase::FillBoundary
friend void FillBoundary(Vector< FabArray< FAB > * > const &mf, const Periodicity &period)
amrex::FabArrayBase::CFinfoCacheIter
CFinfoCache::iterator CFinfoCacheIter
Definition: AMReX_FabArrayBase.H:368
-
amrex::FabArrayBase::CPCacheIter
CPCache::iterator CPCacheIter
Definition: AMReX_FabArrayBase.H:562
+
amrex::FabArrayBase::PolarBCacheIter
PolarBCache::iterator PolarBCacheIter
Definition: AMReX_FabArrayBase.H:630
amrex::FabArrayBase::boxarray
BoxArray boxarray
Definition: AMReX_FabArrayBase.H:434
amrex::FabArrayBase::getPolarB
const PolarB & getPolarB(const IntVect &nghost, const Box &domain) const
-
amrex::FabArrayBase::PolarBCache
std::multimap< BDKey, FabArrayBase::PolarB * > PolarBCache
Definition: AMReX_FabArrayBase.H:629
amrex::FabArrayBase::nComp
int nComp() const noexcept
Return number of variables (aka components) associated with each point.
Definition: AMReX_FabArrayBase.H:73
+
amrex::FabArrayBase::PolarBCache
std::multimap< BDKey, FabArrayBase::PolarB * > PolarBCache
Definition: AMReX_FabArrayBase.H:629
amrex::FabArrayBase::m_FA_stats
static AMREX_EXPORT FabArrayStats m_FA_stats
Definition: AMReX_FabArrayBase.H:714
amrex::FabArrayBase::getFB
const FB & getFB(const IntVect &nghost, const Periodicity &period, bool cross=false, bool enforce_periodicity_only=false, bool override_sync=false) const
amrex::FabArrayBase::flushParForCache
static void flushParForCache()
amrex::FabArrayBase::m_BD_count
static std::map< BDKey, int > m_BD_count
Keep track of how many FabArrays are built with the same BDKey.
Definition: AMReX_FabArrayBase.H:676
-
amrex::FabArrayBase::RB180Cache
std::multimap< BDKey, FabArrayBase::RB180 * > RB180Cache
Definition: AMReX_FabArrayBase.H:607
amrex::FabArrayBase::m_TheTileArrayCache
static TACache m_TheTileArrayCache
Definition: AMReX_FabArrayBase.H:452
amrex::FabArray
Definition: AMReX_FabArray.H:324
amrex::Geometry
Rectangular problem domain geometry.
Definition: AMReX_Geometry.H:73
@@ -981,12 +981,12 @@
amrex::FabArrayBase::CopyComTag
Used by a bunch of routines when communicating via MPI.
Definition: AMReX_FabArrayBase.H:185
amrex::FabArrayBase::CopyComTag::sbox
Box sbox
Definition: AMReX_FabArrayBase.H:187
amrex::FabArrayBase::CopyComTag::CopyComTag
CopyComTag() noexcept=default
+
amrex::FabArrayBase::CopyComTag::CopyComTagsContainer
std::vector< CopyComTag > CopyComTagsContainer
Definition: AMReX_FabArrayBase.H:203
amrex::FabArrayBase::CopyComTag::operator<
bool operator<(const CopyComTag &rhs) const noexcept
Definition: AMReX_FabArrayBase.H:193
amrex::FabArrayBase::CopyComTag::srcIndex
int srcIndex
Definition: AMReX_FabArrayBase.H:189
amrex::FabArrayBase::CopyComTag::dbox
Box dbox
Definition: AMReX_FabArrayBase.H:186
-
amrex::FabArrayBase::CopyComTag::CopyComTagsContainer
std::vector< CopyComTag > CopyComTagsContainer
Definition: AMReX_FabArrayBase.H:203
amrex::FabArrayBase::CopyComTag::dstIndex
int dstIndex
Definition: AMReX_FabArrayBase.H:188
-
amrex::FabArrayBase::CopyComTag::MapOfCopyComTagContainers
std::map< int, CopyComTagsContainer > MapOfCopyComTagContainers
Definition: AMReX_FabArrayBase.H:205
+
amrex::FabArrayBase::CopyComTag::MapOfCopyComTagContainers
std::map< int, CopyComTagsContainer > MapOfCopyComTagContainers
Definition: AMReX_FabArrayBase.H:205
amrex::FabArrayBase::FB
FillBoundary.
Definition: AMReX_FabArrayBase.H:478
amrex::FabArrayBase::FB::m_multi_ghost
bool m_multi_ghost
Definition: AMReX_FabArrayBase.H:493
amrex::FabArrayBase::FB::m_nuse
Long m_nuse
Definition: AMReX_FabArrayBase.H:492
diff --git a/amrex/docs_html/doxygen/AMReX__FabArrayCommI_8H_source.html b/amrex/docs_html/doxygen/AMReX__FabArrayCommI_8H_source.html index 7f19daf09b..30e10e1f91 100644 --- a/amrex/docs_html/doxygen/AMReX__FabArrayCommI_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__FabArrayCommI_8H_source.html @@ -803,7 +803,7 @@
702  Vector<MPI_Request>& send_reqs,
703  int SeqNum)
704 {
-
705  MPI_Comm comm = ParallelContext::CommunicatorSub();
+
705  MPI_Comm comm = ParallelContext::CommunicatorSub();
706 
707  const auto N_snds = static_cast<int>(send_reqs.size());
708  for (int j = 0; j < N_snds; ++j)
@@ -876,7 +876,7 @@
775 
776  const auto nrecv = static_cast<int>(recv_from.size());
777 
-
778  MPI_Comm comm = ParallelContext::CommunicatorSub();
+
778  MPI_Comm comm = ParallelContext::CommunicatorSub();
779 
780  if (TotalRcvsVolume == 0)
781  {
@@ -1040,7 +1040,7 @@
939  // Otherwise sequence numbers will not match across MPI processes.
940  //
941  int SeqNum = ParallelDescriptor::SeqNum();
-
942  MPI_Comm comm = ParallelContext::CommunicatorSub();
+
942  MPI_Comm comm = ParallelContext::CommunicatorSub();
943 
944  if (N_locs == 0 && N_rcvs == 0 && N_snds == 0) return; // No work to do
945 
@@ -1256,7 +1256,7 @@
AMREX_GPU_DEVICE
#define AMREX_GPU_DEVICE
Definition: AMReX_GpuQualifiers.H:12
AMREX_LOOP_4D
#define AMREX_LOOP_4D(bx, ncomp, i, j, k, n, block)
Definition: AMReX_Loop.nolint.H:16
AMReX_PCI.H
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
MPI_REQUEST_NULL
static constexpr int MPI_REQUEST_NULL
Definition: AMReX_ccse-mpi.H:53
amrex::Arena::free
virtual void free(void *pt)=0
A pure virtual function for deleting the arena pointed to by pt.
amrex::Arena::alloc
virtual void * alloc(std::size_t sz)=0
diff --git a/amrex/docs_html/doxygen/AMReX__FabArray_8H_source.html b/amrex/docs_html/doxygen/AMReX__FabArray_8H_source.html index 44ed8a0105..fee331eec4 100644 --- a/amrex/docs_html/doxygen/AMReX__FabArray_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__FabArray_8H_source.html @@ -426,7 +426,7 @@
325 public:
326 
327  struct FABType {
-
328  typedef FAB value_type;
+
328  using value_type = FAB;
329  };
330 
331  /*
@@ -1169,7 +1169,7 @@
1301  bool SharedMemory () const noexcept { return shmem.alloc; }
1302 
1303 private:
-
1304  typedef typename std::vector<FAB*>::iterator Iterator;
+
1304  using Iterator = typename std::vector<FAB*>::iterator;
1305 
1306  void AllocFabs (const FabFactory<FAB>& factory, Arena* ar,
1307  const Vector<std::string>& tags);
@@ -1186,7 +1186,7 @@
1318 #ifdef BL_USE_MPI
1319 
1321  template <typename BUF=value_type>
-
1322  void PostRcvs (const MapOfCopyComTagContainers& RcvTags,
+
1322  void PostRcvs (const MapOfCopyComTagContainers& RcvTags,
1323  char*& the_recv_data,
1324  Vector<char*>& recv_data,
1325  Vector<std::size_t>& recv_size,
@@ -1196,7 +1196,7 @@
1329  int SeqNum) const;
1330 
1331  template <typename BUF=value_type>
-
1332  AMREX_NODISCARD TheFaArenaPointer PostRcvs (const MapOfCopyComTagContainers& RcvTags,
+
1332  AMREX_NODISCARD TheFaArenaPointer PostRcvs (const MapOfCopyComTagContainers& RcvTags,
1333  Vector<char*>& recv_data,
1334  Vector<std::size_t>& recv_size,
1335  Vector<int>& recv_from,
@@ -1205,7 +1205,7 @@
1338  int SeqNum) const;
1339 
1340  template <typename BUF=value_type>
-
1341  void PrepareSendBuffers (const MapOfCopyComTagContainers& SndTags,
+
1341  void PrepareSendBuffers (const MapOfCopyComTagContainers& SndTags,
1342  char*& the_send_data,
1343  Vector<char*>& send_data,
1344  Vector<std::size_t>& send_size,
@@ -1215,7 +1215,7 @@
1348  int ncomp) const;
1349 
1350  template <typename BUF=value_type>
-
1351  AMREX_NODISCARD TheFaArenaPointer PrepareSendBuffers (const MapOfCopyComTagContainers& SndTags,
+
1351  AMREX_NODISCARD TheFaArenaPointer PrepareSendBuffers (const MapOfCopyComTagContainers& SndTags,
1352  Vector<char*>& send_data,
1353  Vector<std::size_t>& send_size,
1354  Vector<int>& send_rank,
@@ -1920,7 +1920,7 @@
2089  MPI_Info_set(info, "alloc_shared_noncontig", "true");
2090  }
2091 
-
2092  const MPI_Comm& team_comm = ParallelDescriptor::MyTeam().get();
+
2092  const MPI_Comm& team_comm = ParallelDescriptor::MyTeam().get();
2093 
2094  BL_MPI_REQUIRE( MPI_Win_allocate_shared(bytes, sizeof(value_type),
2095  info, team_comm, &mfp, &shmem.win) );
@@ -3236,8 +3236,8 @@
3405 #endif
3406  {
3407  AMREX_ASSERT(thecmd.m_LocTags && thecmd.m_RcvTags);
-
3408  const CopyComTagsContainer& LocTags = *(thecmd.m_LocTags);
-
3409  const MapOfCopyComTagContainers& RcvTags = *(thecmd.m_RcvTags);
+
3408  const CopyComTagsContainer& LocTags = *(thecmd.m_LocTags);
+
3409  const MapOfCopyComTagContainers& RcvTags = *(thecmd.m_RcvTags);
3410  auto N_locs = static_cast<int>(LocTags.size());
3411 #ifdef AMREX_USE_OMP
3412 #pragma omp parallel for if (thecmd.m_threadsafe_loc)
@@ -3275,8 +3275,8 @@
3444  r[mfi] = 0;
3445  }
3446 
-
3447  const CopyComTagsContainer& LocTags = *(thecmd.m_LocTags);
-
3448  const MapOfCopyComTagContainers& RcvTags = *(thecmd.m_RcvTags);
+
3447  const CopyComTagsContainer& LocTags = *(thecmd.m_LocTags);
+
3448  const MapOfCopyComTagContainers& RcvTags = *(thecmd.m_RcvTags);
3449 
3450  auto N_locs = static_cast<int>(LocTags.size());
3451  for (int i = 0; i < N_locs; ++i) {
@@ -3487,7 +3487,7 @@
AMReX_Utility.H
AMReX_Vector.H
AMReX_ccse-mpi.H
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
if
if(!(yy_init))
Definition: amrex_iparser.lex.nolint.H:924
malloc
void * malloc(YYSIZE_T)
free
void free(void *)
@@ -3512,12 +3512,12 @@
amrex::FabArrayBase::nGrowVect
IntVect nGrowVect() const noexcept
Definition: AMReX_FabArrayBase.H:70
amrex::FabArrayBase::clear
void clear()
amrex::FabArrayBase::indexArray
Vector< int > indexArray
Definition: AMReX_FabArrayBase.H:436
-
amrex::FabArrayBase::CopyComTagsContainer
CopyComTag::CopyComTagsContainer CopyComTagsContainer
Definition: AMReX_FabArrayBase.H:210
amrex::FabArrayBase::operator=
FabArrayBase & operator=(const FabArrayBase &rhs)=default
amrex::FabArrayBase::boxArray
const BoxArray & boxArray() const noexcept
Return a constant reference to the BoxArray that defines the valid region associated with this FabArr...
Definition: AMReX_FabArrayBase.H:85
amrex::FabArrayBase::isFusingCandidate
bool isFusingCandidate() const noexcept
Is this a good candidate for kernel fusing?
-
amrex::FabArrayBase::MapOfCopyComTagContainers
CopyComTag::MapOfCopyComTagContainers MapOfCopyComTagContainers
Definition: AMReX_FabArrayBase.H:211
amrex::FabArrayBase::define
void define(const BoxArray &bxs, const DistributionMapping &dm, int nvar, int ngrow)
+
amrex::FabArrayBase::CopyComTagsContainer
CopyComTag::CopyComTagsContainer CopyComTagsContainer
Definition: AMReX_FabArrayBase.H:210
+
amrex::FabArrayBase::MapOfCopyComTagContainers
CopyComTag::MapOfCopyComTagContainers MapOfCopyComTagContainers
Definition: AMReX_FabArrayBase.H:211
amrex::FabArrayBase::DistributionMap
const DistributionMapping & DistributionMap() const noexcept
Return constant reference to associated DistributionMapping.
Definition: AMReX_FabArrayBase.H:121
amrex::FabArrayBase::CpOp
CpOp
parallel copy or add
Definition: AMReX_FabArrayBase.H:384
amrex::FabArrayBase::ADD
@ ADD
Definition: AMReX_FabArrayBase.H:384
@@ -3604,7 +3604,6 @@
amrex::FabArray::FillBoundaryAndSync_finish
void FillBoundaryAndSync_finish()
Definition: AMReX_FabArray.H:3136
amrex::FabArray::ParallelCopy_nowait
void ParallelCopy_nowait(const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, int src_nghost, int dst_nghost, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)
Definition: AMReX_FabArray.H:862
amrex::FabArray::SumBoundary_nowait
void SumBoundary_nowait(int scomp, int ncomp, IntVect const &src_nghost, IntVect const &dst_nghost, const Periodicity &period=Periodicity::NonPeriodic())
Definition: AMReX_FabArray.H:3241
-
amrex::FabArray::Iterator
std::vector< FAB * >::iterator Iterator
Definition: AMReX_FabArray.H:1304
amrex::FabArray::SumBoundary_nowait
void SumBoundary_nowait(int scomp, int ncomp, IntVect const &nghost, const Periodicity &period=Periodicity::NonPeriodic())
Definition: AMReX_FabArray.H:3234
amrex::FabArray::FillBoundary_nowait
void FillBoundary_nowait(bool cross=false)
Definition: AMReX_FabArray.H:3066
amrex::FabArray::FillBoundary
void FillBoundary(const Periodicity &period, bool cross=false)
Definition: AMReX_FabArray.H:3001
@@ -3630,6 +3629,7 @@
amrex::FabArray::m_factory
std::unique_ptr< FabFactory< FAB > > m_factory
Definition: AMReX_FabArray.H:1232
amrex::FabArray::Redistribute
void Redistribute(const FabArray< FAB > &src, int scomp, int dcomp, int ncomp, const IntVect &nghost)
Copy from src to this. this and src have the same BoxArray, but different DistributionMapping.
Definition: AMReX_FabArrayCommI.H:804
amrex::FabArray::setVal
void setVal(value_type val)
Set all components in the entire region of each FAB to val.
Definition: AMReX_FabArray.H:2427
+
amrex::FabArray::Iterator
typename std::vector< FAB * >::iterator Iterator
Definition: AMReX_FabArray.H:1304
amrex::FabArray::copy
void copy(const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)
Definition: AMReX_FabArray.H:783
amrex::FabArray::arrays
MultiArray4< typename FabArray< FAB >::value_type > arrays() noexcept
Definition: AMReX_FabArray.H:1615
amrex::FabArray::copyTo
void copyTo(FAB &dest, int nghost=0) const
Copy the values contained in the intersection of the valid + nghost region of this FabArray with the ...
Definition: AMReX_FabArray.H:2419
@@ -3789,7 +3789,7 @@
amrex::FabArrayBase::FB
FillBoundary.
Definition: AMReX_FabArrayBase.H:478
amrex::FabArrayBase::FabArrayStats::recordBuild
void recordBuild() noexcept
Definition: AMReX_FabArrayBase.H:692
amrex::FabArray::FABType
Definition: AMReX_FabArray.H:327
-
amrex::FabArray::FABType::value_type
FAB value_type
Definition: AMReX_FabArray.H:328
+
amrex::FabArray::FABType::value_type
FAB value_type
Definition: AMReX_FabArray.H:328
amrex::FabArray::ShMem
for shared memory
Definition: AMReX_FabArray.H:1252
amrex::FabArray::ShMem::ShMem
ShMem(ShMem &&rhs) noexcept
Definition: AMReX_FabArray.H:1266
amrex::FabArray::ShMem::ShMem
ShMem() noexcept=default
diff --git a/amrex/docs_html/doxygen/AMReX__FileSystem_8H_source.html b/amrex/docs_html/doxygen/AMReX__FileSystem_8H_source.html index 8b8c31fd66..56e4c06ac1 100644 --- a/amrex/docs_html/doxygen/AMReX__FileSystem_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__FileSystem_8H_source.html @@ -106,7 +106,7 @@
5 #include <string>
6 
7 #ifdef _WIN32
-
8 typedef unsigned short mode_t;
+
8 using mode_t = unsigned short;
9 #else
10 #include <sys/types.h> // for mode_t
11 #endif
diff --git a/amrex/docs_html/doxygen/AMReX__ForkJoin_8H_source.html b/amrex/docs_html/doxygen/AMReX__ForkJoin_8H_source.html index cc09fb2c60..70d4f0fa92 100644 --- a/amrex/docs_html/doxygen/AMReX__ForkJoin_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__ForkJoin_8H_source.html @@ -227,7 +227,7 @@
137  flag_invoked = true; // set invoked flag
138  const int io_rank = 0; // team's sub-rank 0 does IO
139  create_task_output_dir();
-
140  MPI_Comm task_comm = split_tasks();
+
140  MPI_Comm task_comm = split_tasks();
141  copy_data_to_tasks(); // move data to local tasks
142  ParallelContext::push(task_comm, task_me, io_rank);
143  set_task_output_file(get_io_filename());
@@ -282,7 +282,7 @@
199 
203  void copy_data_from_tasks ();
204 
-
206  MPI_Comm split_tasks ();
+
206  MPI_Comm split_tasks ();
207 
209  void create_task_output_dir ();
210 
@@ -296,7 +296,7 @@
AMREX_ASSERT
#define AMREX_ASSERT(EX)
Definition: AMReX_BLassert.H:38
AMReX_MultiFab.H
AMReX_ParallelContext.H
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
amrex::BoxArray
Definition: AMReX_BoxArray.H:529
amrex::DistributionMapping
Calculates the distribution of FABs to MPI processes.
Definition: AMReX_DistributionMapping.H:42
amrex::ForkJoin
Definition: AMReX_ForkJoin.H:12
diff --git a/amrex/docs_html/doxygen/AMReX__GpuReduce_8H_source.html b/amrex/docs_html/doxygen/AMReX__GpuReduce_8H_source.html index c7a245b3b7..53bedd5c5f 100644 --- a/amrex/docs_html/doxygen/AMReX__GpuReduce_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__GpuReduce_8H_source.html @@ -463,7 +463,7 @@
362 T blockReduceSum (T source) noexcept
363 {
364 #if defined(AMREX_USE_CUB)
-
365  typedef cub::BlockReduce<T,BLOCKDIMX> BlockReduce;
+
365  using BlockReduce = cub::BlockReduce<T,BLOCKDIMX>;
366  __shared__ typename BlockReduce::TempStorage temp_storage;
367  // __syncthreads() prior to writing to shared memory is necessary
368  // if this reduction call is occurring multiple times in a kernel,
@@ -472,7 +472,7 @@
371  __syncthreads();
372  return BlockReduce(temp_storage).Sum(source);
373 #elif defined(AMREX_USE_HIP)
-
374  typedef rocprim::block_reduce<T,BLOCKDIMX> BlockReduce;
+
374  using BlockReduce = rocprim::block_reduce<T,BLOCKDIMX>;
375  __shared__ typename BlockReduce::storage_type temp_storage;
376  __syncthreads();
377  BlockReduce().reduce(source, source, temp_storage, rocprim::plus<T>());
@@ -513,7 +513,7 @@
412 T blockReduceMin (T source) noexcept
413 {
414 #if defined(AMREX_USE_CUB)
-
415  typedef cub::BlockReduce<T,BLOCKDIMX> BlockReduce;
+
415  using BlockReduce = cub::BlockReduce<T,BLOCKDIMX>;
416  __shared__ typename BlockReduce::TempStorage temp_storage;
417  // __syncthreads() prior to writing to shared memory is necessary
418  // if this reduction call is occurring multiple times in a kernel,
@@ -522,7 +522,7 @@
421  __syncthreads();
422  return BlockReduce(temp_storage).Reduce(source, cub::Min());
423 #elif defined(AMREX_USE_HIP)
-
424  typedef rocprim::block_reduce<T,BLOCKDIMX> BlockReduce;
+
424  using BlockReduce = rocprim::block_reduce<T,BLOCKDIMX>;
425  __shared__ typename BlockReduce::storage_type temp_storage;
426  __syncthreads();
427  BlockReduce().reduce(source, source, temp_storage, rocprim::minimum<T>());
@@ -563,7 +563,7 @@
462 T blockReduceMax (T source) noexcept
463 {
464 #if defined(AMREX_USE_CUB)
-
465  typedef cub::BlockReduce<T,BLOCKDIMX> BlockReduce;
+
465  using BlockReduce = cub::BlockReduce<T,BLOCKDIMX>;
466  __shared__ typename BlockReduce::TempStorage temp_storage;
467  // __syncthreads() prior to writing to shared memory is necessary
468  // if this reduction call is occurring multiple times in a kernel,
@@ -572,7 +572,7 @@
471  __syncthreads();
472  return BlockReduce(temp_storage).Reduce(source, cub::Max());
473 #elif defined(AMREX_USE_HIP)
-
474  typedef rocprim::block_reduce<T,BLOCKDIMX> BlockReduce;
+
474  using BlockReduce = rocprim::block_reduce<T,BLOCKDIMX>;
475  __shared__ typename BlockReduce::storage_type temp_storage;
476  __syncthreads();
477  BlockReduce().reduce(source, source, temp_storage, rocprim::maximum<T>());
@@ -613,7 +613,7 @@
512 int blockReduceLogicalAnd (int source) noexcept
513 {
514 #if defined(AMREX_USE_CUB)
-
515  typedef cub::BlockReduce<int,BLOCKDIMX> BlockReduce;
+
515  using BlockReduce = cub::BlockReduce<int,BLOCKDIMX>;
516  __shared__ typename BlockReduce::TempStorage temp_storage;
517  // __syncthreads() prior to writing to shared memory is necessary
518  // if this reduction call is occurring multiple times in a kernel,
@@ -622,7 +622,7 @@
521  __syncthreads();
522  return BlockReduce(temp_storage).Reduce(source, amrex::LogicalAnd<int>());
523 #elif defined(AMREX_USE_HIP)
-
524  typedef rocprim::block_reduce<int,BLOCKDIMX> BlockReduce;
+
524  using BlockReduce = rocprim::block_reduce<int,BLOCKDIMX>;
525  __shared__ typename BlockReduce::storage_type temp_storage;
526  __syncthreads();
527  BlockReduce().reduce(source, source, temp_storage, amrex::LogicalAnd<int>());
@@ -661,7 +661,7 @@
560 int blockReduceLogicalOr (int source) noexcept
561 {
562 #if defined(AMREX_USE_CUB)
-
563  typedef cub::BlockReduce<int,BLOCKDIMX> BlockReduce;
+
563  using BlockReduce = cub::BlockReduce<int,BLOCKDIMX>;
564  __shared__ typename BlockReduce::TempStorage temp_storage;
565  // __syncthreads() prior to writing to shared memory is necessary
566  // if this reduction call is occurring multiple times in a kernel,
@@ -670,7 +670,7 @@
569  __syncthreads();
570  return BlockReduce(temp_storage).Reduce(source, amrex::LogicalOr<int>());
571 #elif defined(AMREX_USE_HIP)
-
572  typedef rocprim::block_reduce<int,BLOCKDIMX> BlockReduce;
+
572  using BlockReduce = rocprim::block_reduce<int,BLOCKDIMX>;
573  __shared__ typename BlockReduce::storage_type temp_storage;
574  __syncthreads();
575  BlockReduce().reduce(source, source, temp_storage, amrex::LogicalOr<int>());
diff --git a/amrex/docs_html/doxygen/AMReX__HypreABecLap2_8H_source.html b/amrex/docs_html/doxygen/AMReX__HypreABecLap2_8H_source.html index d505c17f6e..1cdc19346f 100644 --- a/amrex/docs_html/doxygen/AMReX__HypreABecLap2_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__HypreABecLap2_8H_source.html @@ -117,7 +117,7 @@
16 public:
17 
18  HypreABecLap2 (const BoxArray& grids, const DistributionMapping& dmap,
-
19  const Geometry& geom_, MPI_Comm comm_);
+
19  const Geometry& geom_, MPI_Comm comm_);
20  ~HypreABecLap2 () override;
21 
22  HypreABecLap2 (HypreABecLap2 const&) = delete;
@@ -149,7 +149,7 @@
48 
49 #endif
AMReX_Hypre.H
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
amrex::BndryDataT
A BndryData stores and manipulates boundary data information on each side of each box in a BoxArray.
Definition: AMReX_BndryData.H:41
amrex::BoxArray
Definition: AMReX_BoxArray.H:529
amrex::DistributionMapping
Calculates the distribution of FABs to MPI processes.
Definition: AMReX_DistributionMapping.H:42
diff --git a/amrex/docs_html/doxygen/AMReX__HypreABecLap3_8H_source.html b/amrex/docs_html/doxygen/AMReX__HypreABecLap3_8H_source.html index 90358cb4fc..1da66c6619 100644 --- a/amrex/docs_html/doxygen/AMReX__HypreABecLap3_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__HypreABecLap3_8H_source.html @@ -120,7 +120,7 @@
19 public:
20 
21  HypreABecLap3 (const BoxArray& grids, const DistributionMapping& dmap,
-
22  const Geometry& geom_, MPI_Comm comm_,
+
22  const Geometry& geom_, MPI_Comm comm_,
23  const iMultiFab* overset_mask = nullptr);
24  ~HypreABecLap3 () override;
25 
@@ -164,7 +164,7 @@
AMReX_HypreIJIface.H
AMReX_Hypre.H
AMReX_LayoutData.H
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
AMReX_iMultiFab.H
amrex::BndryDataT
A BndryData stores and manipulates boundary data information on each side of each box in a BoxArray.
Definition: AMReX_BndryData.H:41
amrex::BoxArray
Definition: AMReX_BoxArray.H:529
diff --git a/amrex/docs_html/doxygen/AMReX__HypreABecLap_8H_source.html b/amrex/docs_html/doxygen/AMReX__HypreABecLap_8H_source.html index ae6ce23337..5399c79673 100644 --- a/amrex/docs_html/doxygen/AMReX__HypreABecLap_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__HypreABecLap_8H_source.html @@ -123,7 +123,7 @@
22 public:
23 
24  HypreABecLap (const BoxArray& grids, const DistributionMapping& dmap,
-
25  const Geometry& geom_, MPI_Comm comm_);
+
25  const Geometry& geom_, MPI_Comm comm_);
26  ~HypreABecLap () override;
27 
28  HypreABecLap (HypreABecLap const&) = delete;
@@ -159,7 +159,7 @@
AMReX_LO_BCTYPES.H
AMReX_MultiFab.H
AMReX_ParmParse.H
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
amrex::BndryDataT
A BndryData stores and manipulates boundary data information on each side of each box in a BoxArray.
Definition: AMReX_BndryData.H:41
amrex::BoxArray
Definition: AMReX_BoxArray.H:529
amrex::DistributionMapping
Calculates the distribution of FABs to MPI processes.
Definition: AMReX_DistributionMapping.H:42
diff --git a/amrex/docs_html/doxygen/AMReX__HypreIJIface_8H_source.html b/amrex/docs_html/doxygen/AMReX__HypreIJIface_8H_source.html index f127dd6e91..8287b140c7 100644 --- a/amrex/docs_html/doxygen/AMReX__HypreIJIface_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__HypreIJIface_8H_source.html @@ -119,7 +119,7 @@
18  using HypreIntType = HYPRE_Int;
19  using HypreRealType = HYPRE_Real;
20 
-
21  HypreIJIface(MPI_Comm comm, HypreIntType ilower, HypreIntType iupper,
+
21  HypreIJIface(MPI_Comm comm, HypreIntType ilower, HypreIntType iupper,
22  int verbose);
23 
24  ~HypreIJIface();
@@ -167,7 +167,7 @@
72  void hybrid_solver_configure(const std::string& prefix);
73 
74 
-
75  MPI_Comm m_comm{MPI_COMM_NULL};
+
75  MPI_Comm m_comm{MPI_COMM_NULL};
76 
77  HYPRE_IJMatrix m_mat{nullptr};
78  HYPRE_IJVector m_rhs{nullptr};
@@ -234,7 +234,7 @@
146 
147 #endif /* AMREX_HYPREIJIFACE_H */
AMReX_MultiFab.H
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
MPI_COMM_NULL
static constexpr int MPI_COMM_NULL
Definition: AMReX_ccse-mpi.H:55
amrex::HypreIJIface
Definition: AMReX_HypreIJIface.H:16
amrex::HypreIJIface::m_write_files
bool m_write_files
Flag indicating whether to dump matrix files.
Definition: AMReX_HypreIJIface.H:139
diff --git a/amrex/docs_html/doxygen/AMReX__HypreNodeLap_8H_source.html b/amrex/docs_html/doxygen/AMReX__HypreNodeLap_8H_source.html index 5bf0c9dfb1..06e9b98078 100644 --- a/amrex/docs_html/doxygen/AMReX__HypreNodeLap_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__HypreNodeLap_8H_source.html @@ -125,7 +125,7 @@
24  HypreNodeLap (const BoxArray& grids_, const DistributionMapping& dmap_,
25  const Geometry& geom_, const FabFactory<FArrayBox>& factory_,
26  const iMultiFab& owner_mask_, const iMultiFab& dirichlet_mask_,
-
27  MPI_Comm comm_, MLNodeLinOp const* linop_, int verbose_,
+
27  MPI_Comm comm_, MLNodeLinOp const* linop_, int verbose_,
28  std::string options_namespace_);
29  ~HypreNodeLap ();
30 
@@ -155,7 +155,7 @@
54  FabFactory<FArrayBox> const* factory = nullptr;
55  iMultiFab const* owner_mask = nullptr;
56  iMultiFab const* dirichlet_mask = nullptr;
-
57  MPI_Comm comm = MPI_COMM_NULL;
+
57  MPI_Comm comm = MPI_COMM_NULL;
58  MLNodeLinOp const* linop = nullptr;
59  int verbose = 0;
60 
@@ -196,7 +196,7 @@
AMReX_LayoutData.H
AMReX_MultiFabUtil.H
AMReX_MultiFab.H
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
MPI_COMM_NULL
static constexpr int MPI_COMM_NULL
Definition: AMReX_ccse-mpi.H:55
AMReX_iMultiFab.H
amrex::BoxArray
Definition: AMReX_BoxArray.H:529
diff --git a/amrex/docs_html/doxygen/AMReX__HypreSolver_8H_source.html b/amrex/docs_html/doxygen/AMReX__HypreSolver_8H_source.html index 5a0e901270..416e63ebec 100644 --- a/amrex/docs_html/doxygen/AMReX__HypreSolver_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__HypreSolver_8H_source.html @@ -190,7 +190,7 @@
89  int m_verbose;
90  std::string m_options_namespace;
91 
-
92  MPI_Comm m_comm = MPI_COMM_NULL;
+
92  MPI_Comm m_comm = MPI_COMM_NULL;
93 
94  Vector<std::unique_ptr<iMultiFab>> m_owner_mask;
95  Vector<iMultiFab> m_local_id;
@@ -771,7 +771,7 @@
AMReX_Geometry.H
AMREX_GPU_DEVICE
#define AMREX_GPU_DEVICE
Definition: AMReX_GpuQualifiers.H:12
AMReX_HypreIJIface.H
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
MPI_COMM_NULL
static constexpr int MPI_COMM_NULL
Definition: AMReX_ccse-mpi.H:55
AMReX_iMultiFab.H
amrex::BoxArray
Definition: AMReX_BoxArray.H:529
diff --git a/amrex/docs_html/doxygen/AMReX__Hypre_8H.html b/amrex/docs_html/doxygen/AMReX__Hypre_8H.html index 519521f696..60e143ec9a 100644 --- a/amrex/docs_html/doxygen/AMReX__Hypre_8H.html +++ b/amrex/docs_html/doxygen/AMReX__Hypre_8H.html @@ -125,7 +125,7 @@

Functions

- +

Functions

std::unique_ptr< Hypre > amrex::makeHypre (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_, Hypre::Interface interface, const iMultiFab *overset_mask)
std::unique_ptr< Hypre > amrex::makeHypre (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_, Hypre::Interface interface, const iMultiFab *overset_mask)
 
diff --git a/amrex/docs_html/doxygen/AMReX__Hypre_8H_source.html b/amrex/docs_html/doxygen/AMReX__Hypre_8H_source.html index a665a6f74c..03b3b06baa 100644 --- a/amrex/docs_html/doxygen/AMReX__Hypre_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__Hypre_8H_source.html @@ -124,7 +124,7 @@
23  Hypre (const BoxArray& grids,
24  const DistributionMapping& dmap,
25  const Geometry& geom,
-
26  MPI_Comm comm_);
+
26  MPI_Comm comm_);
27 
28  virtual ~Hypre ();
29  Hypre (Hypre &&) noexcept = default;
@@ -174,7 +174,7 @@
73 
74 protected:
75 
-
76  MPI_Comm comm = MPI_COMM_NULL;
+
76  MPI_Comm comm = MPI_COMM_NULL;
77  Geometry geom;
78 
79  int verbose = 0;
@@ -201,7 +201,7 @@
100 
101 [[nodiscard]] std::unique_ptr<Hypre>
102 makeHypre (const BoxArray& grids, const DistributionMapping& dmap,
-
103  const Geometry& geom, MPI_Comm comm_, Hypre::Interface interface,
+
103  const Geometry& geom, MPI_Comm comm_, Hypre::Interface interface,
104  const iMultiFab* overset_mask = nullptr);
105 
106 }
@@ -213,7 +213,7 @@
AMREX_D_TERM
#define AMREX_D_TERM(a, b, c)
Definition: AMReX_SPACE.H:129
AMREX_D_DECL
#define AMREX_D_DECL(a, b, c)
Definition: AMReX_SPACE.H:104
BL_SPACEDIM
#define BL_SPACEDIM
Definition: AMReX_SPACE.H:15
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
MPI_COMM_NULL
static constexpr int MPI_COMM_NULL
Definition: AMReX_ccse-mpi.H:55
amrex::BndryDataT
A BndryData stores and manipulates boundary data information on each side of each box in a BoxArray.
Definition: AMReX_BndryData.H:41
amrex::BoxArray
Definition: AMReX_BoxArray.H:529
diff --git a/amrex/docs_html/doxygen/AMReX__Hypre_8cpp.html b/amrex/docs_html/doxygen/AMReX__Hypre_8cpp.html index 28cb9ca275..aaac63f86f 100644 --- a/amrex/docs_html/doxygen/AMReX__Hypre_8cpp.html +++ b/amrex/docs_html/doxygen/AMReX__Hypre_8cpp.html @@ -116,7 +116,7 @@ - +

Functions

std::unique_ptr< Hypre > amrex::makeHypre (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_, Hypre::Interface interface, const iMultiFab *overset_mask)
std::unique_ptr< Hypre > amrex::makeHypre (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_, Hypre::Interface interface, const iMultiFab *overset_mask)
 
diff --git a/amrex/docs_html/doxygen/AMReX__INT_8H_source.html b/amrex/docs_html/doxygen/AMReX__INT_8H_source.html index 99f69ba6b5..dd7237b415 100644 --- a/amrex/docs_html/doxygen/AMReX__INT_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__INT_8H_source.html @@ -118,11 +118,11 @@
17 #endif
18 
19 #if (INT_MAX == LONG_MAX)
-
20 typedef long long amrex_long;
-
21 typedef unsigned long long amrex_ulong;
+
20 typedef long long amrex_long; // NOLINT(modernize-use-using) // so that this can be a C header
+
21 typedef unsigned long long amrex_ulong; // NOLINT(modernize-use-using)
22 #else
-
23 typedef long amrex_long;
-
24 typedef unsigned long amrex_ulong;
+
23 typedef long amrex_long; // NOLINT(modernize-use-using)
+
24 typedef unsigned long amrex_ulong; // NOLINT(modernize-use-using)
25 #endif
26 
27 #ifdef __cplusplus
diff --git a/amrex/docs_html/doxygen/AMReX__InSituBridge_8H_source.html b/amrex/docs_html/doxygen/AMReX__InSituBridge_8H_source.html index bb9ede1eb8..1ea37f3cec 100644 --- a/amrex/docs_html/doxygen/AMReX__InSituBridge_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__InSituBridge_8H_source.html @@ -127,7 +127,7 @@
29  void operator=(const InSituBridge&) = delete;
30 
31 #if defined(BL_USE_MPI)
-
32  void setCommuniator(MPI_Comm acomm) { comm = acomm; }
+
32  void setCommuniator(MPI_Comm acomm) { comm = acomm; }
33 #endif
34 
49  void setEnabled(int aenabled) { enabled = aenabled; }
@@ -144,7 +144,7 @@
65 
66 protected:
67 #if defined(BL_USE_MPI)
-
68  MPI_Comm comm;
+
68  MPI_Comm comm;
69 #endif
70 #if defined(AMREX_USE_SENSEI_INSITU)
71  sensei::AnalysisAdaptor *analysis_adaptor;
@@ -160,7 +160,7 @@
81 
82 #endif
AMReX_Vector.H
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
amrex::InSituBridge
A base class for coupling to the SENSEI in situ library.
Definition: AMReX_InSituBridge.H:23
amrex::InSituBridge::setEnabled
void setEnabled(int aenabled)
Definition: AMReX_InSituBridge.H:49
amrex::InSituBridge::config
std::string config
Definition: AMReX_InSituBridge.H:73
diff --git a/amrex/docs_html/doxygen/AMReX__IndexType_8H_source.html b/amrex/docs_html/doxygen/AMReX__IndexType_8H_source.html index 7ba5dc1d0d..886e056bde 100644 --- a/amrex/docs_html/doxygen/AMReX__IndexType_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__IndexType_8H_source.html @@ -114,7 +114,7 @@
13 
23 class IndexType
24 {
-
25  friend MPI_Datatype ParallelDescriptor::Mpi_typemap<IndexType>::type();
+
25  friend MPI_Datatype ParallelDescriptor::Mpi_typemap<IndexType>::type();
26 
27 public:
29  enum CellIndex { CELL = 0, NODE = 1 };
@@ -202,7 +202,7 @@
AMREX_D_TERM
#define AMREX_D_TERM(a, b, c)
Definition: AMReX_SPACE.H:129
AMREX_D_DECL
#define AMREX_D_DECL(a, b, c)
Definition: AMReX_SPACE.H:104
AMReX_ccse-mpi.H
-
MPI_Datatype
int MPI_Datatype
Definition: AMReX_ccse-mpi.H:49
+
MPI_Datatype
int MPI_Datatype
Definition: AMReX_ccse-mpi.H:49
amrex::IndexType
Cell-Based or Node-Based Indices.
Definition: AMReX_IndexType.H:24
amrex::IndexType::toIntVect
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect toIntVect() const noexcept
Fill an IntVect of size AMREX_SPACEDIM with IndexTypes.
Definition: AMReX_IndexType.H:107
amrex::IndexType::test
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE bool test(int dir) const noexcept
True if IndexType is NODE based in direction dir.
Definition: AMReX_IndexType.H:57
diff --git a/amrex/docs_html/doxygen/AMReX__IntVect_8H_source.html b/amrex/docs_html/doxygen/AMReX__IntVect_8H_source.html index e0bd5d5245..67befb8276 100644 --- a/amrex/docs_html/doxygen/AMReX__IntVect_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__IntVect_8H_source.html @@ -136,7 +136,7 @@
35 
46 class IntVect
47 {
-
48  friend MPI_Datatype ParallelDescriptor::Mpi_typemap<IntVect>::type();
+
48  friend MPI_Datatype ParallelDescriptor::Mpi_typemap<IntVect>::type();
49 public:
50 
51  class shift_hasher {
@@ -756,7 +756,7 @@
AMREX_D_DECL
#define AMREX_D_DECL(a, b, c)
Definition: AMReX_SPACE.H:104
AMReX_Vector.H
AMReX_ccse-mpi.H
-
MPI_Datatype
int MPI_Datatype
Definition: AMReX_ccse-mpi.H:49
+
MPI_Datatype
int MPI_Datatype
Definition: AMReX_ccse-mpi.H:49
amrex::IntVect::shift_hasher
Definition: AMReX_IntVect.H:51
amrex::IntVect::shift_hasher::shift1
static constexpr unsigned shift1
Definition: AMReX_IntVect.H:53
amrex::IntVect::shift_hasher::shift2
static constexpr unsigned shift2
Definition: AMReX_IntVect.H:54
diff --git a/amrex/docs_html/doxygen/AMReX__IntegratorBase_8H_source.html b/amrex/docs_html/doxygen/AMReX__IntegratorBase_8H_source.html index 1b931dad6e..656c735ded 100644 --- a/amrex/docs_html/doxygen/AMReX__IntegratorBase_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__IntegratorBase_8H_source.html @@ -143,8 +143,8 @@
42  static void Saxpy (T& Y, const amrex::Real a, T& X)
43  {
44  // Calculate Y += a * X using a particle-level saxpy function supplied by the particle container T
-
45  typedef amrex::ParIter<T::NStructReal, T::NStructInt, T::NArrayReal, T::NArrayInt> TParIter;
-
46  typedef amrex::Particle<T::NStructReal, T::NStructInt> ParticleType;
+
45  using TParIter = amrex::ParIter<T::NStructReal, T::NStructInt, T::NArrayReal, T::NArrayInt>;
+
46  using ParticleType = amrex::Particle<T::NStructReal, T::NStructInt>;
47 
48  int lev = 0;
49  TParIter pty(Y, lev);
diff --git a/amrex/docs_html/doxygen/AMReX__Lazy_8H.html b/amrex/docs_html/doxygen/AMReX__Lazy_8H.html index b333bb0a43..69a9249753 100644 --- a/amrex/docs_html/doxygen/AMReX__Lazy_8H.html +++ b/amrex/docs_html/doxygen/AMReX__Lazy_8H.html @@ -119,10 +119,10 @@ - - - - + + + +

Typedefs

typedef std::function< void()> amrex::Lazy::Func
 
typedef std::vector< Func > amrex::Lazy::FuncQue
 
using amrex::Lazy::Func = std::function< void()>
 
using amrex::Lazy::FuncQue = std::vector< Func >
 
diff --git a/amrex/docs_html/doxygen/AMReX__Lazy_8H.js b/amrex/docs_html/doxygen/AMReX__Lazy_8H.js index 76b85e2ec5..0294de6354 100644 --- a/amrex/docs_html/doxygen/AMReX__Lazy_8H.js +++ b/amrex/docs_html/doxygen/AMReX__Lazy_8H.js @@ -1,7 +1,7 @@ var AMReX__Lazy_8H = [ - [ "Func", "AMReX__Lazy_8H.html#ac520a3dfdc05eaffb3b4eea05eea5668", null ], - [ "FuncQue", "AMReX__Lazy_8H.html#a17dde5bdf675b748b4cff2f01edd7fc5", null ], + [ "Func", "AMReX__Lazy_8H.html#a9fa958cc46c33768f0cf428f5fa6ca32", null ], + [ "FuncQue", "AMReX__Lazy_8H.html#ae96e9ce9ac81427802df6fd09989e0d5", null ], [ "EvalReduction", "AMReX__Lazy_8H.html#a0a2dd2d6e19976b8eaebb9d81a65718a", null ], [ "Finalize", "AMReX__Lazy_8H.html#a01ac7d4ed0bfab3839b45995cf260a05", null ], [ "QueueReduction", "AMReX__Lazy_8H.html#a48f09e6d45685ddcaa72f6424891b9e4", null ] diff --git a/amrex/docs_html/doxygen/AMReX__Lazy_8H_source.html b/amrex/docs_html/doxygen/AMReX__Lazy_8H_source.html index ea16b5cd08..996c7b262f 100644 --- a/amrex/docs_html/doxygen/AMReX__Lazy_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__Lazy_8H_source.html @@ -110,12 +110,12 @@
9 namespace amrex {
10 namespace Lazy
11 {
-
12  typedef typename std::function<void()> Func;
-
13  typedef typename std::vector<Func> FuncQue;
+
12  using Func = std::function<void()>;
+
13  using FuncQue = std::vector<Func>;
14 
-
15  extern FuncQue reduction_queue;
+
15  extern FuncQue reduction_queue;
16 
-
17  void QueueReduction (Func);
+
17  void QueueReduction (Func);
18  void EvalReduction ();
19 
20  void Finalize ();
@@ -125,10 +125,10 @@
24 #endif
amrex::Lazy::Finalize
void Finalize()
Definition: AMReX_Lazy.cpp:33
amrex::Lazy::EvalReduction
void EvalReduction()
Definition: AMReX_Lazy.cpp:19
-
amrex::Lazy::FuncQue
std::vector< Func > FuncQue
Definition: AMReX_Lazy.H:13
amrex::Lazy::QueueReduction
void QueueReduction(Func f)
Definition: AMReX_Lazy.cpp:7
+
amrex::Lazy::Func
std::function< void()> Func
Definition: AMReX_Lazy.H:12
amrex::Lazy::reduction_queue
FuncQue reduction_queue
Definition: AMReX_Lazy.cpp:5
-
amrex::Lazy::Func
std::function< void()> Func
Definition: AMReX_Lazy.H:12
+
amrex::Lazy::FuncQue
std::vector< Func > FuncQue
Definition: AMReX_Lazy.H:13
amrex
Definition: AMReX_Amr.cpp:49
diff --git a/amrex/docs_html/doxygen/AMReX__MFCopyDescriptor_8H.html b/amrex/docs_html/doxygen/AMReX__MFCopyDescriptor_8H.html index 018b37d14f..0fdeb2eccd 100644 --- a/amrex/docs_html/doxygen/AMReX__MFCopyDescriptor_8H.html +++ b/amrex/docs_html/doxygen/AMReX__MFCopyDescriptor_8H.html @@ -122,8 +122,8 @@

Functions

- - + +

Typedefs

typedef FabArrayId amrex::MultiFabId
 
using amrex::MultiFabId = FabArrayId
 
diff --git a/amrex/docs_html/doxygen/AMReX__MFCopyDescriptor_8H.js b/amrex/docs_html/doxygen/AMReX__MFCopyDescriptor_8H.js index 8b1d9a1563..cb97b66ce9 100644 --- a/amrex/docs_html/doxygen/AMReX__MFCopyDescriptor_8H.js +++ b/amrex/docs_html/doxygen/AMReX__MFCopyDescriptor_8H.js @@ -1,7 +1,7 @@ var AMReX__MFCopyDescriptor_8H = [ [ "MultiFabCopyDescriptor", "classamrex_1_1MultiFabCopyDescriptor.html", "classamrex_1_1MultiFabCopyDescriptor" ], - [ "MultiFabId", "AMReX__MFCopyDescriptor_8H.html#a270e267cbd0e472dd8297d46a9c76854", null ], + [ "MultiFabId", "AMReX__MFCopyDescriptor_8H.html#a55427a27e71c45e7066414b0accf4a9b", null ], [ "InterpAddBox", "AMReX__MFCopyDescriptor_8H.html#a4b0d01afec5218e25096773af48821bb", null ], [ "InterpFillFab", "AMReX__MFCopyDescriptor_8H.html#aabdb646a3159210a31ec8dc806eaf7bb", null ] ]; \ No newline at end of file diff --git a/amrex/docs_html/doxygen/AMReX__MFCopyDescriptor_8H_source.html b/amrex/docs_html/doxygen/AMReX__MFCopyDescriptor_8H_source.html index 23b4676690..8f1555771d 100644 --- a/amrex/docs_html/doxygen/AMReX__MFCopyDescriptor_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__MFCopyDescriptor_8H_source.html @@ -111,7 +111,7 @@
10 
11 class MultiFabCopyDescriptor;
12 
-
13 typedef FabArrayId MultiFabId;
+
13 using MultiFabId = FabArrayId;
14 
15 void InterpAddBox (MultiFabCopyDescriptor& fabCopyDesc,
16  BoxList* returnUnfilledBoxes,
@@ -179,7 +179,6 @@
amrex::MultiFab
A collection (stored as an array) of FArrayBox objects. This class is useful for storing floating poi...
Definition: AMReX_MultiFab.H:40
amrex::Vector
This class is a thin wrapper around std::vector. Unlike vector, Vector::operator[] provides bound che...
Definition: AMReX_Vector.H:28
amrex
Definition: AMReX_Amr.cpp:49
-
amrex::MultiFabId
FabArrayId MultiFabId
Definition: AMReX_MFCopyDescriptor.H:11
amrex::InterpAddBox
void InterpAddBox(MultiFabCopyDescriptor &fabCopyDesc, BoxList *returnUnfilledBoxes, Vector< FillBoxId > &returnedFillBoxIds, const Box &subbox, MultiFabId faid1, MultiFabId faid2, Real t1, Real t2, Real t, int src_comp, int dest_comp, int num_comp, bool extrap)
Definition: AMReX_MFCopyDescriptor.cpp:7
amrex::InterpFillFab
void InterpFillFab(MultiFabCopyDescriptor &fabCopyDesc, const Vector< FillBoxId > &fillBoxIds, MultiFabId faid1, MultiFabId faid2, FArrayBox &dest, Real t1, Real t2, Real t, int src_comp, int dest_comp, int num_comp, bool extrap)
Definition: AMReX_MFCopyDescriptor.cpp:71
diff --git a/amrex/docs_html/doxygen/AMReX__MLCellABecLap_8H_source.html b/amrex/docs_html/doxygen/AMReX__MLCellABecLap_8H_source.html index aeeedb8ab4..31fcf4071a 100644 --- a/amrex/docs_html/doxygen/AMReX__MLCellABecLap_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__MLCellABecLap_8H_source.html @@ -753,7 +753,7 @@
652  const DistributionMapping& dm = this->m_dmap[0].back();
653  const Geometry& geom = this->m_geom[0].back();
654  const auto& factory = *(this->m_factory[0].back());
-
655  MPI_Comm comm = this->BottomCommunicator();
+
655  MPI_Comm comm = this->BottomCommunicator();
656 
657  const int mglev = this->NMGLevels(0)-1;
658 
@@ -811,7 +811,7 @@
710  const DistributionMapping& dm = this->m_dmap[0].back();
711  const Geometry& geom = this->m_geom[0].back();
712  const auto& factory = *(this->m_factory[0].back());
-
713  MPI_Comm comm = this->BottomCommunicator();
+
713  MPI_Comm comm = this->BottomCommunicator();
714 
715  auto petsc_solver = makePetsc(ba, dm, geom, comm);
716 
@@ -871,7 +871,7 @@
AMReX_MLCellABecLap_K.H
AMReX_MLCellLinOp.H
AMREX_D_DECL
#define AMREX_D_DECL(a, b, c)
Definition: AMReX_SPACE.H:104
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
amrex::BoundCond
Maintain an identifier for boundary condition types.
Definition: AMReX_BoundCond.H:21
amrex::Box
A Rectangular Domain on an Integer Lattice.
Definition: AMReX_Box.H:38
amrex::Box::contains
AMREX_GPU_HOST_DEVICE bool contains(const IntVect &p) const noexcept
Returns true if argument is contained within Box.
Definition: AMReX_Box.H:217
diff --git a/amrex/docs_html/doxygen/AMReX__MLLinOp_8H_source.html b/amrex/docs_html/doxygen/AMReX__MLLinOp_8H_source.html index bc959aac9d..7f0498f1eb 100644 --- a/amrex/docs_html/doxygen/AMReX__MLLinOp_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__MLLinOp_8H_source.html @@ -425,11 +425,11 @@
527  Vector<Vector<std::unique_ptr<FabFactory<FAB> > > > m_factory;
528  Vector<int> m_domain_covered;
529 
-
530  MPI_Comm m_default_comm = MPI_COMM_NULL;
-
531  MPI_Comm m_bottom_comm = MPI_COMM_NULL;
+
530  MPI_Comm m_default_comm = MPI_COMM_NULL;
+
531  MPI_Comm m_bottom_comm = MPI_COMM_NULL;
532  struct CommContainer {
-
533  MPI_Comm comm;
-
534  CommContainer (MPI_Comm m) noexcept : comm(m) {}
+
533  MPI_Comm comm;
+
534  CommContainer (MPI_Comm m) noexcept : comm(m) {}
535  CommContainer (const CommContainer&) = delete;
536  CommContainer (CommContainer&&) = delete;
537  void operator= (const CommContainer&) = delete;
@@ -496,8 +496,8 @@
602 #else
603  [[nodiscard]] bool isBottomActive () const noexcept { return true; }
604 #endif
-
605  [[nodiscard]] MPI_Comm BottomCommunicator () const noexcept { return m_bottom_comm; }
-
606  [[nodiscard]] MPI_Comm Communicator () const noexcept { return m_default_comm; }
+
605  [[nodiscard]] MPI_Comm BottomCommunicator () const noexcept { return m_bottom_comm; }
+
606  [[nodiscard]] MPI_Comm Communicator () const noexcept { return m_default_comm; }
607 
608  void setCoarseFineBCLocation (const RealVect& cloc) noexcept { m_coarse_bc_loc = cloc; }
609 
@@ -571,7 +571,7 @@
677  static void makeAgglomeratedDMap (const Vector<BoxArray>& ba, Vector<DistributionMapping>& dm);
678  static void makeConsolidatedDMap (const Vector<BoxArray>& ba, Vector<DistributionMapping>& dm,
679  int ratio, int strategy);
-
680  [[nodiscard]] MPI_Comm makeSubCommunicator (const DistributionMapping& dm);
+
680  [[nodiscard]] MPI_Comm makeSubCommunicator (const DistributionMapping& dm);
681 
682  virtual void checkPoint (std::string const& /*file_name*/) const {
683  amrex::Abort("MLLinOp:checkPoint: not implemented");
@@ -1192,7 +1192,7 @@
1298 }
1299 
1300 template <typename MF>
-
1301 MPI_Comm
+
1301 MPI_Comm
1302 MLLinOpT<MF>::makeSubCommunicator (const DistributionMapping& dm)
1303 {
1304  BL_PROFILE("MLLinOp::makeSubCommunicator()");
@@ -1204,8 +1204,8 @@
1310  auto last = std::unique(newgrp_ranks.begin(), newgrp_ranks.end());
1311  newgrp_ranks.erase(last, newgrp_ranks.end());
1312 
-
1313  MPI_Comm newcomm;
-
1314  MPI_Group defgrp, newgrp;
+
1313  MPI_Comm newcomm;
+
1314  MPI_Group defgrp, newgrp;
1315  MPI_Comm_group(m_default_comm, &defgrp);
1316  if (ParallelContext::CommunicatorSub() == ParallelDescriptor::Communicator()) {
1317  MPI_Group_incl(defgrp, static_cast<int>(newgrp_ranks.size()), newgrp_ranks.data(), &newgrp);
@@ -1440,8 +1440,8 @@
AMREX_D_TERM
#define AMREX_D_TERM(a, b, c)
Definition: AMReX_SPACE.H:129
AMREX_D_PICK
#define AMREX_D_PICK(a, b, c)
Definition: AMReX_SPACE.H:151
AMREX_D_DECL
#define AMREX_D_DECL(a, b, c)
Definition: AMReX_SPACE.H:104
-
MPI_Group
int MPI_Group
Definition: AMReX_ccse-mpi.H:48
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Group
int MPI_Group
Definition: AMReX_ccse-mpi.H:48
MPI_COMM_NULL
static constexpr int MPI_COMM_NULL
Definition: AMReX_ccse-mpi.H:55
amrex::BoxArray
Definition: AMReX_BoxArray.H:529
amrex::BoxArray::SameRefs
static bool SameRefs(const BoxArray &lhs, const BoxArray &rhs)
whether two BoxArrays share the same data
Definition: AMReX_BoxArray.H:784
diff --git a/amrex/docs_html/doxygen/AMReX__MPMD_8H.html b/amrex/docs_html/doxygen/AMReX__MPMD_8H.html index 4c4316d3cf..ef3744ffd3 100644 --- a/amrex/docs_html/doxygen/AMReX__MPMD_8H.html +++ b/amrex/docs_html/doxygen/AMReX__MPMD_8H.html @@ -124,7 +124,7 @@

Functions

- + diff --git a/amrex/docs_html/doxygen/AMReX__MPMD_8H_source.html b/amrex/docs_html/doxygen/AMReX__MPMD_8H_source.html index b63b7f383c..aef6a277fc 100644 --- a/amrex/docs_html/doxygen/AMReX__MPMD_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__MPMD_8H_source.html @@ -111,7 +111,7 @@
10 
11 namespace amrex::MPMD {
12 
-
13 MPI_Comm Initialize (int argc, char* argv[]);
+
13 MPI_Comm Initialize (int argc, char* argv[]);
14 
15 void Finalize ();
16 
@@ -278,8 +278,8 @@
177 #endif
178 #endif
AMReX_FabArray.H
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
MPI_COMM_WORLD
static constexpr int MPI_COMM_WORLD
Definition: AMReX_ccse-mpi.H:54
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
MPI_REQUEST_NULL
static constexpr int MPI_REQUEST_NULL
Definition: AMReX_ccse-mpi.H:53
amrex::Arena::isManaged
virtual bool isManaged() const
Definition: AMReX_Arena.cpp:83
amrex::Arena::isDevice
virtual bool isDevice() const
Definition: AMReX_Arena.cpp:95
diff --git a/amrex/docs_html/doxygen/AMReX__MPMD_8cpp.html b/amrex/docs_html/doxygen/AMReX__MPMD_8cpp.html index c450d26716..0767b3524d 100644 --- a/amrex/docs_html/doxygen/AMReX__MPMD_8cpp.html +++ b/amrex/docs_html/doxygen/AMReX__MPMD_8cpp.html @@ -119,7 +119,7 @@

Functions

MPI_Comm amrex::MPMD::Initialize (int argc, char *argv[])
MPI_Comm amrex::MPMD::Initialize (int argc, char *argv[])
 
void amrex::MPMD::Finalize ()
 
- + diff --git a/amrex/docs_html/doxygen/AMReX__MultiCutFab_8H_source.html b/amrex/docs_html/doxygen/AMReX__MultiCutFab_8H_source.html index f3f398d419..ed5399e623 100644 --- a/amrex/docs_html/doxygen/AMReX__MultiCutFab_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__MultiCutFab_8H_source.html @@ -136,7 +136,7 @@
35  CutFab& operator= (const CutFab&) = delete;
36  CutFab& operator= (CutFab&&) = delete;
37 
-
38  template <RunOn run_on, typename BUF = CutFab::value_type>
+
38  template <RunOn run_on, typename BUF = CutFab::value_type>
39  std::size_t copyFromMem (const void* src) {
40  return copyFromMem<run_on, BUF>(box(), 0, nComp(), src);
41  }
@@ -254,9 +254,9 @@
AMReX_FArrayBox.H
AMReX_FabArray.H
amrex::Arena
A virtual base class for objects that manage their own dynamic memory allocation.
Definition: AMReX_Arena.H:87
+
amrex::BaseFab< Real >::value_type
Real value_type
Definition: AMReX_BaseFab.H:189
amrex::BaseFab< Real >::dptr
Real * dptr
The data pointer.
Definition: AMReX_BaseFab.H:1628
amrex::BaseFab< Real >::box
const Box & box() const noexcept
Returns the domain (box) where the array is defined.
Definition: AMReX_BaseFab.H:292
-
amrex::BaseFab< Real >::value_type
Real value_type
Definition: AMReX_BaseFab.H:189
amrex::BaseFab< Real >::nComp
int nComp() const noexcept
Returns the number of components.
Definition: AMReX_BaseFab.H:278
amrex::BoxArray
Definition: AMReX_BoxArray.H:529
amrex::Box
A Rectangular Domain on an Integer Lattice.
Definition: AMReX_Box.H:38
diff --git a/amrex/docs_html/doxygen/AMReX__MultiFab_8H.html b/amrex/docs_html/doxygen/AMReX__MultiFab_8H.html index ba255873db..ed173f87ad 100644 --- a/amrex/docs_html/doxygen/AMReX__MultiFab_8H.html +++ b/amrex/docs_html/doxygen/AMReX__MultiFab_8H.html @@ -128,8 +128,8 @@

Functions

MPI_Comm amrex::MPMD::Initialize (int argc, char *argv[])
MPI_Comm amrex::MPMD::Initialize (int argc, char *argv[])
 
void amrex::MPMD::Finalize ()
 
- - + +

Typedefs

typedef FabArray< BaseFab< float > > amrex::fMultiFab
 
using amrex::fMultiFab = FabArray< BaseFab< float > >
 
diff --git a/amrex/docs_html/doxygen/AMReX__MultiFab_8H.js b/amrex/docs_html/doxygen/AMReX__MultiFab_8H.js index 8dfe51b8ff..beed8bb217 100644 --- a/amrex/docs_html/doxygen/AMReX__MultiFab_8H.js +++ b/amrex/docs_html/doxygen/AMReX__MultiFab_8H.js @@ -1,6 +1,6 @@ var AMReX__MultiFab_8H = [ [ "MultiFab", "classamrex_1_1MultiFab.html", "classamrex_1_1MultiFab" ], - [ "fMultiFab", "AMReX__MultiFab_8H.html#a7dc0241934cfa7c24ab6afcbe41937bf", null ], + [ "fMultiFab", "AMReX__MultiFab_8H.html#a1df3d6c5876d88132d2b3793984a6b7d", null ], [ "GccPlacaterMF", "AMReX__MultiFab_8H.html#ad60aac176908ba51373d63ca49bef063", null ] ]; \ No newline at end of file diff --git a/amrex/docs_html/doxygen/AMReX__MultiFab_8H_source.html b/amrex/docs_html/doxygen/AMReX__MultiFab_8H_source.html index bd557565dc..a9bbd7023c 100644 --- a/amrex/docs_html/doxygen/AMReX__MultiFab_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__MultiFab_8H_source.html @@ -120,7 +120,7 @@
19 namespace amrex
20 {
21 
-
22 typedef FabArray<BaseFab<float> > fMultiFab;
+
22 using fMultiFab = FabArray<BaseFab<float> >;
23 
24 class iMultiFab;
25 
@@ -474,8 +474,8 @@
672 
673 private:
674  //
-
676  typedef FabArrayBase::CopyComTagsContainer CopyComTagsContainer;
-
677  typedef FabArrayBase::MapOfCopyComTagContainers MapOfCopyComTagContainers;
+
676  using CopyComTagsContainer = FabArrayBase::CopyComTagsContainer;
+
677  using MapOfCopyComTagContainers = FabArrayBase::MapOfCopyComTagContainers;
678 
679  void initVal ();
680 };
@@ -510,15 +510,14 @@
amrex::BoxArray
Definition: AMReX_BoxArray.H:529
amrex::Box
A Rectangular Domain on an Integer Lattice.
Definition: AMReX_Box.H:38
amrex::DistributionMapping
Calculates the distribution of FABs to MPI processes.
Definition: AMReX_DistributionMapping.H:42
-
amrex::FabArrayBase::CopyComTagsContainer
CopyComTag::CopyComTagsContainer CopyComTagsContainer
Definition: AMReX_FabArrayBase.H:210
-
amrex::FabArrayBase::MapOfCopyComTagContainers
CopyComTag::MapOfCopyComTagContainers MapOfCopyComTagContainers
Definition: AMReX_FabArrayBase.H:211
+
amrex::FabArrayBase::CopyComTagsContainer
CopyComTag::CopyComTagsContainer CopyComTagsContainer
Definition: AMReX_FabArrayBase.H:210
+
amrex::FabArrayBase::MapOfCopyComTagContainers
CopyComTag::MapOfCopyComTagContainers MapOfCopyComTagContainers
Definition: AMReX_FabArrayBase.H:211
amrex::FabArray
Definition: AMReX_FabArray.H:324
amrex::FabFactory< FArrayBox >
amrex::IntVect
Definition: AMReX_IntVect.H:47
amrex::MultiFab
A collection (stored as an array) of FArrayBox objects. This class is useful for storing floating poi...
Definition: AMReX_MultiFab.H:40
amrex::MultiFab::LinComb
static void LinComb(MultiFab &dst, Real a, const MultiFab &x, int xcomp, Real b, const MultiFab &y, int ycomp, int dstcomp, int numcomp, int nghost)
dst = a*x + b*y
Definition: AMReX_MultiFab.cpp:337
amrex::MultiFab::define
void define(const BoxArray &bxs, const DistributionMapping &dm, int nvar, int ngrow, const MFInfo &info=MFInfo(), const FabFactory< FArrayBox > &factory=FArrayBoxFactory())
Definition: AMReX_MultiFab.cpp:550
-
amrex::MultiFab::CopyComTagsContainer
FabArrayBase::CopyComTagsContainer CopyComTagsContainer
Some useful typedefs.
Definition: AMReX_MultiFab.H:676
amrex::MultiFab::invert
void invert(Real numerator, int comp, int num_comp, int nghost=0)
Replaces the value of each cell in the specified subregion of the MultiFab with its reciprocal multip...
Definition: AMReX_MultiFab.cpp:1300
amrex::MultiFab::minus
void minus(const MultiFab &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 MultiFab....
Definition: AMReX_MultiFab.cpp:1241
amrex::MultiFab::norm0
Real norm0(int comp=0, int nghost=0, bool local=false, bool ignore_covered=false) const
Returns the maximum absolute value contained in component comp of the MultiFab.
Definition: AMReX_MultiFab.cpp:1007
@@ -539,7 +538,6 @@
amrex::MultiFab::AverageSync
void AverageSync(const Periodicity &period=Periodicity::NonPeriodic())
Sync up nodal data via averaging.
Definition: AMReX_MultiFab.cpp:1410
amrex::MultiFab::norminf
Vector< Real > norminf(const Vector< int > &comps, int nghost=0, bool local=false, bool ignore_covered=false) const
Definition: AMReX_MultiFab.H:197
amrex::MultiFab::contains_inf
bool contains_inf(bool local=false) const
Are there any Infs in the MF? This may return false, even if the MF contains Infs,...
Definition: AMReX_MultiFab.cpp:691
-
amrex::MultiFab::MapOfCopyComTagContainers
FabArrayBase::MapOfCopyComTagContainers MapOfCopyComTagContainers
Definition: AMReX_MultiFab.H:677
amrex::MultiFab::norminf
Real norminf(int comp=0, int nghost=0, bool local=false, bool ignore_covered=false) const
Definition: AMReX_MultiFab.H:178
amrex::MultiFab::Xpay
static void Xpay(MultiFab &dst, Real a, const MultiFab &src, int srccomp, int dstcomp, int numcomp, int nghost)
dst = src + a*dst
Definition: AMReX_MultiFab.cpp:330
amrex::MultiFab::norm2
Real norm2(int comp=0) const
Returns the L2 norm of component "comp" over the MultiFab. No ghost cells are used.
Definition: AMReX_MultiFab.cpp:1037
@@ -568,7 +566,6 @@
amrex::iMultiFab
Definition: AMReX_iMultiFab.H:32
amrex
Definition: AMReX_Amr.cpp:49
amrex::MakeType
MakeType
Definition: AMReX_MakeType.H:7
-
amrex::fMultiFab
FabArray< BaseFab< float > > fMultiFab
Definition: AMReX_MultiFab.H:22
amrex::ignore_unused
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void ignore_unused(const Ts &...)
This shuts up the compiler about unused variables.
Definition: AMReX.H:107
amrex::FArrayBoxFactory
DefaultFabFactory< FArrayBox > FArrayBoxFactory
Definition: AMReX_FArrayBox.H:496
amrex::GccPlacaterMF
void GccPlacaterMF()
Definition: AMReX_MultiFab.H:683
diff --git a/amrex/docs_html/doxygen/AMReX__NVector__MultiFab_8H.html b/amrex/docs_html/doxygen/AMReX__NVector__MultiFab_8H.html index ab1cc310e1..ab76d423cf 100644 --- a/amrex/docs_html/doxygen/AMReX__NVector__MultiFab_8H.html +++ b/amrex/docs_html/doxygen/AMReX__NVector__MultiFab_8H.html @@ -120,8 +120,8 @@

Functions

- - + +

Typedefs

typedef struct N_VectorContent_MultiFab_notptrN_VectorContent_MultiFab
 
using N_VectorContent_MultiFab = N_VectorContent_MultiFab_notptr *
 
@@ -145,7 +145,7 @@ - + @@ -191,14 +191,14 @@

Functions

 
void N_VSpace_MultiFab (N_Vector v, sunindextype *lrw, sunindextype *liw)
 
N_VectorContent_MultiFab N_VGetContent_MultiFab (N_Vector v)
N_VectorContent_MultiFab N_VGetContent_MultiFab (N_Vector v)
 
MultiFab * N_VGetVectorPointer_MultiFab (N_Vector v)
 
 

Typedef Documentation

- -

◆ N_VectorContent_MultiFab

+ +

◆ N_VectorContent_MultiFab

- +
typedef struct N_VectorContent_MultiFab_notptr* N_VectorContent_MultiFabusing N_VectorContent_MultiFab = N_VectorContent_MultiFab_notptr*
@@ -487,7 +487,7 @@

- + diff --git a/amrex/docs_html/doxygen/AMReX__NVector__MultiFab_8H.js b/amrex/docs_html/doxygen/AMReX__NVector__MultiFab_8H.js index 1b9217175b..980c5412b0 100644 --- a/amrex/docs_html/doxygen/AMReX__NVector__MultiFab_8H.js +++ b/amrex/docs_html/doxygen/AMReX__NVector__MultiFab_8H.js @@ -1,7 +1,7 @@ var AMReX__NVector__MultiFab_8H = [ [ "N_VectorContent_MultiFab_notptr", "structN__VectorContent__MultiFab__notptr.html", "structN__VectorContent__MultiFab__notptr" ], - [ "N_VectorContent_MultiFab", "AMReX__NVector__MultiFab_8H.html#a6284583a7a39d02af336b4fb1b1a3033", null ], + [ "N_VectorContent_MultiFab", "AMReX__NVector__MultiFab_8H.html#abd74ded69b457e740f7ae23530d10bbc", null ], [ "N_VAbs_MultiFab", "AMReX__NVector__MultiFab_8H.html#ad09bcd4abf2160db152a0859e432a608", null ], [ "N_VAddConst_MultiFab", "AMReX__NVector__MultiFab_8H.html#ac01ff15c22f37417a4410b023021fe1c", null ], [ "N_VClone_MultiFab", "AMReX__NVector__MultiFab_8H.html#a99845c3cd975af5b30463e5e75a9ada5", null ], diff --git a/amrex/docs_html/doxygen/AMReX__NVector__MultiFab_8H_source.html b/amrex/docs_html/doxygen/AMReX__NVector__MultiFab_8H_source.html index 028dce91d6..c44446ba52 100644 --- a/amrex/docs_html/doxygen/AMReX__NVector__MultiFab_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__NVector__MultiFab_8H_source.html @@ -137,7 +137,7 @@
36  amrex::MultiFab *mf; /* wrapped MultiFab */
37 };
38 
- +
40 
41 /* -----------------------------------------------------------------
42  * Exported functions
@@ -152,11 +152,11 @@
51  sunindextype nGhost,
52  ::sundials::Context* sunctx = The_Sundials_Context());
53 N_Vector N_VMake_MultiFab(sunindextype vec_length,
- +
54  amrex::MultiFab *mf,
55  ::sundials::Context* sunctx = The_Sundials_Context());
56 sunindextype N_VGetLength_MultiFab(N_Vector v);
57 int N_VGetOwnMF_MultiFab(N_Vector v);
-
58 void N_VSetOwnMF_MultiFab(N_Vector v, int own_mf);
+
58 void N_VSetOwnMF_MultiFab(N_Vector v, int own_mf);
59 N_Vector N_VCloneEmpty_MultiFab(N_Vector w);
60 N_Vector N_VClone_MultiFab(N_Vector w);
61 void N_VDestroy_MultiFab(N_Vector v);
@@ -203,7 +203,6 @@ -
struct N_VectorContent_MultiFab_notptr * N_VectorContent_MultiFab
Definition: AMReX_NVector_MultiFab.H:39
Definition: AMReX_BoxArray.H:529
Calculates the distribution of FABs to MPI processes.
Definition: AMReX_DistributionMapping.H:42
diff --git a/amrex/docs_html/doxygen/AMReX__NVector__MultiFab_8cpp.html b/amrex/docs_html/doxygen/AMReX__NVector__MultiFab_8cpp.html index 308499980e..6129594328 100644 --- a/amrex/docs_html/doxygen/AMReX__NVector__MultiFab_8cpp.html +++ b/amrex/docs_html/doxygen/AMReX__NVector__MultiFab_8cpp.html @@ -134,7 +134,7 @@ - + diff --git a/amrex/docs_html/doxygen/AMReX__NeighborList_8H_source.html b/amrex/docs_html/doxygen/AMReX__NeighborList_8H_source.html index e19c1f7c68..475b29a4a9 100644 --- a/amrex/docs_html/doxygen/AMReX__NeighborList_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__NeighborList_8H_source.html @@ -646,7 +646,7 @@
void push_back(const T &a_value)
Definition: AMReX_PODVector.H:512
This class provides the user with a few print options.
Definition: AMReX_Print.H:35
void copyAsync(HostToDevice, InIter begin, InIter end, OutIter result) noexcept
A host-to-device copy routine. Note this is just a wrapper around memcpy, so it assumes contiguous st...
Definition: AMReX_GpuContainers.H:234
-
OutIter exclusive_scan(InIter begin, InIter end, OutIter result)
Definition: AMReX_Scan.H:1358
+
OutIter exclusive_scan(InIter begin, InIter end, OutIter result)
Definition: AMReX_Scan.H:1357
static constexpr DeviceToHost deviceToHost
Definition: AMReX_GpuContainers.H:100
void streamSynchronize() noexcept
Definition: AMReX_GpuDevice.H:239
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void * memcpy(void *dest, const void *src, std::size_t count)
Definition: AMReX_GpuUtility.H:198
diff --git a/amrex/docs_html/doxygen/AMReX__NeighborParticlesGPUImpl_8H_source.html b/amrex/docs_html/doxygen/AMReX__NeighborParticlesGPUImpl_8H_source.html index 1129bddbb9..9a3cf3a85d 100644 --- a/amrex/docs_html/doxygen/AMReX__NeighborParticlesGPUImpl_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__NeighborParticlesGPUImpl_8H_source.html @@ -439,7 +439,7 @@
This provides length of period for periodic domains. 0 means it is not periodic in that direction....
Definition: AMReX_Periodicity.H:17
std::vector< IntVect > shiftIntVect() const
Definition: AMReX_Periodicity.cpp:8
void copyAsync(HostToDevice, InIter begin, InIter end, OutIter result) noexcept
A host-to-device copy routine. Note this is just a wrapper around memcpy, so it assumes contiguous st...
Definition: AMReX_GpuContainers.H:234
-
OutIter exclusive_scan(InIter begin, InIter end, OutIter result)
Definition: AMReX_Scan.H:1358
+
OutIter exclusive_scan(InIter begin, InIter end, OutIter result)
Definition: AMReX_Scan.H:1357
static constexpr HostToDevice hostToDevice
Definition: AMReX_GpuContainers.H:99
void streamSynchronize() noexcept
Definition: AMReX_GpuDevice.H:239
void dtoh_memcpy_async(void *p_h, const void *p_d, const std::size_t sz) noexcept
Definition: AMReX_GpuDevice.H:267
diff --git a/amrex/docs_html/doxygen/AMReX__NeighborParticlesI_8H_source.html b/amrex/docs_html/doxygen/AMReX__NeighborParticlesI_8H_source.html index de62141e35..bfba7673fd 100644 --- a/amrex/docs_html/doxygen/AMReX__NeighborParticlesI_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__NeighborParticlesI_8H_source.html @@ -1306,7 +1306,7 @@
This class is a thin wrapper around std::vector. Unlike vector, Vector::operator[] provides bound che...
Definition: AMReX_Vector.H:28
Long size() const noexcept
Definition: AMReX_Vector.H:51
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T Add(T *sum, T value) noexcept
Definition: AMReX_GpuAtomic.H:196
-
OutIter exclusive_scan(InIter begin, InIter end, OutIter result)
Definition: AMReX_Scan.H:1358
+
OutIter exclusive_scan(InIter begin, InIter end, OutIter result)
Definition: AMReX_Scan.H:1357
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void * memcpy(void *dest, const void *src, std::size_t count)
Definition: AMReX_GpuUtility.H:198
void htod_memcpy_async(void *p_d, const void *p_h, const std::size_t sz) noexcept
Definition: AMReX_GpuDevice.H:253
int MyProc()
Definition: AMReX_MPMD.cpp:102
diff --git a/amrex/docs_html/doxygen/AMReX__NonLocalBCImpl_8H_source.html b/amrex/docs_html/doxygen/AMReX__NonLocalBCImpl_8H_source.html index 955975820f..f32a129040 100644 --- a/amrex/docs_html/doxygen/AMReX__NonLocalBCImpl_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__NonLocalBCImpl_8H_source.html @@ -263,7 +263,7 @@
186 template <class FAB, class DTOS, class Proj>
187 std::enable_if_t<IsBaseFab<FAB>() && IsCallableR<Dim3, DTOS, Dim3>() && IsFabProjection<Proj, FAB>()>
188 local_copy_cpu (FabArray<FAB>& dest, const FabArray<FAB>& src, int dcomp, int scomp, int ncomp,
-
189  FabArrayBase::CopyComTagsContainer const& local_tags, DTOS const& dtos, Proj const& proj) noexcept {
+
189  FabArrayBase::CopyComTagsContainer const& local_tags, DTOS const& dtos, Proj const& proj) noexcept {
190  const auto N_locs = static_cast<int>(local_tags.size());
191  if (N_locs == 0) return;
192 #ifdef AMREX_USE_OMP
@@ -1074,7 +1074,7 @@
virtual void free(void *pt)=0
A pure virtual function for deleting the arena pointed to by pt.
virtual void * alloc(std::size_t sz)=0
-
CopyComTag::CopyComTagsContainer CopyComTagsContainer
Definition: AMReX_FabArrayBase.H:210
+
CopyComTag::CopyComTagsContainer CopyComTagsContainer
Definition: AMReX_FabArrayBase.H:210
void copyAsync(HostToDevice, InIter begin, InIter end, OutIter result) noexcept
A host-to-device copy routine. Note this is just a wrapper around memcpy, so it assumes contiguous st...
Definition: AMReX_GpuContainers.H:234
static constexpr HostToDevice hostToDevice
Definition: AMReX_GpuContainers.H:99
void streamSynchronize() noexcept
Definition: AMReX_GpuDevice.H:239
diff --git a/amrex/docs_html/doxygen/AMReX__NonLocalBC_8H_source.html b/amrex/docs_html/doxygen/AMReX__NonLocalBC_8H_source.html index 1922c10427..87d3fc27bc 100644 --- a/amrex/docs_html/doxygen/AMReX__NonLocalBC_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__NonLocalBC_8H_source.html @@ -378,7 +378,7 @@
434 };
435 
436 #ifdef AMREX_USE_MPI
-
438 void PrepareCommBuffers(CommData& comm, const FabArrayBase::MapOfCopyComTagContainers& cctc,
+
438 void PrepareCommBuffers(CommData& comm, const FabArrayBase::MapOfCopyComTagContainers& cctc,
439  int n_components, std::size_t object_size, std::size_t align);
440 
442 void PostRecvs(CommData& recv, int mpi_tag);
@@ -427,7 +427,7 @@
491 template <class FAB, class DTOS = Identity, class Proj = Identity>
492 std::enable_if_t<IsBaseFab<FAB>() && IsCallableR<Dim3, DTOS, Dim3>() && IsFabProjection<Proj, FAB>()>
493 local_copy_cpu (FabArray<FAB>& dest, const FabArray<FAB>& src, int dcomp, int scomp, int ncomp,
-
494  FabArrayBase::CopyComTagsContainer const& local_tags, DTOS const& dtos = DTOS{},
+
494  FabArrayBase::CopyComTagsContainer const& local_tags, DTOS const& dtos = DTOS{},
495  Proj const& proj = Proj{}) noexcept;
496 
497 template <class FAB, class DTOS = Identity, class Proj = Identity>
@@ -441,7 +441,7 @@
505 template <class FAB, class DTOS = Identity, class Proj = Identity>
506 std::enable_if_t<IsBaseFab<FAB>() && IsCallableR<Dim3, DTOS, Dim3>() && IsFabProjection<Proj, FAB>()>
507 local_copy_gpu (FabArray<FAB>& dest, const FabArray<FAB>& src, int dcomp, int scomp, int ncomp,
-
508  FabArrayBase::CopyComTagsContainer const& local_tags, DTOS const& dtos = DTOS{},
+
508  FabArrayBase::CopyComTagsContainer const& local_tags, DTOS const& dtos = DTOS{},
509  Proj const& proj = Proj{}) noexcept;
510 
511 template <class FAB, class DTOS = Identity, class Proj = Identity>
@@ -468,7 +468,7 @@
535 template <typename FAB>
536 std::enable_if_t<IsBaseFab<FAB>::value>
537 LocalCopy (const PackComponents& components, FabArray<FAB>& dest, const FabArray<FAB>& src,
-
538  const FabArrayBase::CopyComTagsContainer& local_tags) {
+
538  const FabArrayBase::CopyComTagsContainer& local_tags) {
539 #ifdef AMREX_USE_GPU
540  if (Gpu::inLaunchRegion()) {
541  local_copy_gpu(dest, src, components.dest_component, components.src_component,
@@ -485,7 +485,7 @@
553 template <typename FAB>
554 std::enable_if_t<IsBaseFab<FAB>::value>
555 PrepareSendBuffers (const PackComponents& components, FabArray<FAB>& dest, const FabArray<FAB>& src,
- +
557  using T = typename FAB::value_type;
558  ignore_unused(dest, src);
559  PrepareCommBuffers(comm, cctc, components.n_components, sizeof(T), alignof(T));
@@ -494,7 +494,7 @@
563 template <typename FAB>
564 std::enable_if_t<IsBaseFab<FAB>::value>
565 PrepareRecvBuffers (const PackComponents& components, FabArray<FAB>& dest, const FabArray<FAB>& src,
- +
567  using T = typename FAB::value_type;
568  ignore_unused(dest, src);
569  PrepareCommBuffers(comm, cctc, components.n_components, sizeof(T), alignof(T));
@@ -552,7 +552,7 @@
628 template <typename FAB, typename DTOS, typename FabProj>
629 std::enable_if_t<IsBaseFab<FAB>::value>
-
631  const FabArray<FAB>& src, const FabArrayBase::CopyComTagsContainer& local_tags) {
+
631  const FabArray<FAB>& src, const FabArrayBase::CopyComTagsContainer& local_tags) {
632  static_assert(IsFabProjection<FabProj, FAB>(), "FabProj needs to be a projection for given FAB type.");
633 #ifdef AMREX_USE_GPU
634  if (Gpu::inLaunchRegion()) {
@@ -842,8 +842,8 @@
Calculates the distribution of FABs to MPI processes.
Definition: AMReX_DistributionMapping.H:42
A Fortran Array of REALs.
Definition: AMReX_FArrayBox.H:231
Definition: AMReX_FabArrayBase.H:32
-
CopyComTag::CopyComTagsContainer CopyComTagsContainer
Definition: AMReX_FabArrayBase.H:210
-
CopyComTag::MapOfCopyComTagContainers MapOfCopyComTagContainers
Definition: AMReX_FabArrayBase.H:211
+
CopyComTag::CopyComTagsContainer CopyComTagsContainer
Definition: AMReX_FabArrayBase.H:210
+
CopyComTag::MapOfCopyComTagContainers MapOfCopyComTagContainers
Definition: AMReX_FabArrayBase.H:211
bool empty() const noexcept
Definition: AMReX_FabArrayBase.H:79
Definition: AMReX_FabArray.H:324
static void pack_send_buffer_gpu(FabArray< FAB > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc)
diff --git a/amrex/docs_html/doxygen/AMReX__OpenBC_8H_source.html b/amrex/docs_html/doxygen/AMReX__OpenBC_8H_source.html index cac1e194ee..90dc16735c 100644 --- a/amrex/docs_html/doxygen/AMReX__OpenBC_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__OpenBC_8H_source.html @@ -116,7 +116,7 @@
15 
16  struct Moments
17  {
-
18  typedef GpuArray<Real,(M+2)*(M+1)/2> array_type;
+
18  using array_type = GpuArray<Real,(M+2)*(M+1)/2>;
20  Real x, y, z;
@@ -294,7 +294,7 @@
std::array< T, N > Array
Definition: AMReX_Array.H:23
Definition: AMReX_Array4.H:60
-
Definition: AMReX_Array.H:33
+
AMREX_GPU_DEVICE openbc::Moments::array_type * dataPtr() noexcept
Definition: AMReX_OpenBC.H:39
Definition: AMReX_GpuMemory.H:125
Definition: AMReX_MLLinOp.H:33
@@ -306,7 +306,6 @@
Definition: AMReX_OpenBC.H:17
Real z
Definition: AMReX_OpenBC.H:20
array_type mom
Definition: AMReX_OpenBC.H:19
-
GpuArray< Real,(M+2) *(M+1)/2 > array_type
Definition: AMReX_OpenBC.H:18
Orientation face
Definition: AMReX_OpenBC.H:21
Real y
Definition: AMReX_OpenBC.H:20
Real x
Definition: AMReX_OpenBC.H:20
diff --git a/amrex/docs_html/doxygen/AMReX__PCI_8H_source.html b/amrex/docs_html/doxygen/AMReX__PCI_8H_source.html index b0d8f67d6d..a2068b2521 100644 --- a/amrex/docs_html/doxygen/AMReX__PCI_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__PCI_8H_source.html @@ -193,7 +193,7 @@
92  if (N_locs == 0) return;
93  bool is_thread_safe = thecpc.m_threadsafe_loc;
94 
-
95  typedef Array4CopyTag<value_type> TagType;
+
95  using TagType = Array4CopyTag<value_type>;
96  Vector<TagType> loc_copy_tags;
97  loc_copy_tags.reserve(N_locs);
98 
diff --git a/amrex/docs_html/doxygen/AMReX__PETSc_8H.html b/amrex/docs_html/doxygen/AMReX__PETSc_8H.html index 390d333c55..2f18a23624 100644 --- a/amrex/docs_html/doxygen/AMReX__PETSc_8H.html +++ b/amrex/docs_html/doxygen/AMReX__PETSc_8H.html @@ -124,7 +124,7 @@
N_VectorContent_MultiFab N_VGetContent_MultiFab N_VectorContent_MultiFab N_VGetContent_MultiFab ( N_Vector  v)
 
void amrex::sundials::N_VSpace_MultiFab (N_Vector v, sunindextype *lrw, sunindextype *liw)
 
N_VectorContent_MultiFab amrex::sundials::N_VGetContent_MultiFab (N_Vector v)
N_VectorContent_MultiFab amrex::sundials::N_VGetContent_MultiFab (N_Vector v)
 
amrex::MultiFab *& amrex::sundials::getMFptr (N_Vector v)
 
- +

Functions

std::unique_ptr< PETScABecLap > amrex::makePetsc (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_)
std::unique_ptr< PETScABecLap > amrex::makePetsc (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_)
 

diff --git a/amrex/docs_html/doxygen/AMReX__PETSc_8H_source.html b/amrex/docs_html/doxygen/AMReX__PETSc_8H_source.html index 831abda5d0..d4f5682358 100644 --- a/amrex/docs_html/doxygen/AMReX__PETSc_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__PETSc_8H_source.html @@ -123,7 +123,7 @@
22 public:
23 
24  PETScABecLap (const BoxArray& grids, const DistributionMapping& dmap,
-
25  const Geometry& geom_, MPI_Comm comm_);
+
25  const Geometry& geom_, MPI_Comm comm_);
26 
27  ~PETScABecLap ();
28 
@@ -148,7 +148,7 @@
47  static constexpr PetscInt regular_stencil_size = 2*AMREX_SPACEDIM + 1;
48  static constexpr PetscInt eb_stencil_size = AMREX_D_TERM(3, *3, *3);
49 
-
50  MPI_Comm comm = MPI_COMM_NULL;
+
50  MPI_Comm comm = MPI_COMM_NULL;
51  Geometry geom;
52 
53  int verbose = 0;
@@ -182,7 +182,7 @@
81 
82 [[nodiscard]] std::unique_ptr<PETScABecLap>
83 makePetsc (const BoxArray& grids, const DistributionMapping& dmap,
-
84  const Geometry& geom, MPI_Comm comm_);
+
84  const Geometry& geom, MPI_Comm comm_);
85 
86 }
87 
@@ -193,7 +193,7 @@
#define AMREX_D_TERM(a, b, c)
Definition: AMReX_SPACE.H:129
#define BL_SPACEDIM
Definition: AMReX_SPACE.H:15
-
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
static constexpr int MPI_COMM_NULL
Definition: AMReX_ccse-mpi.H:55
A BndryData stores and manipulates boundary data information on each side of each box in a BoxArray.
Definition: AMReX_BndryData.H:41
Definition: AMReX_BoxArray.H:529
diff --git a/amrex/docs_html/doxygen/AMReX__PETSc_8cpp.html b/amrex/docs_html/doxygen/AMReX__PETSc_8cpp.html index 4c82328a47..54a91bf8f9 100644 --- a/amrex/docs_html/doxygen/AMReX__PETSc_8cpp.html +++ b/amrex/docs_html/doxygen/AMReX__PETSc_8cpp.html @@ -128,7 +128,7 @@ - +

Functions

std::unique_ptr< PETScABecLap > amrex::makePetsc (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_)
std::unique_ptr< PETScABecLap > amrex::makePetsc (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_)
 
diff --git a/amrex/docs_html/doxygen/AMReX__ParallelContext_8H.html b/amrex/docs_html/doxygen/AMReX__ParallelContext_8H.html index 9acede06d4..c521964dc4 100644 --- a/amrex/docs_html/doxygen/AMReX__ParallelContext_8H.html +++ b/amrex/docs_html/doxygen/AMReX__ParallelContext_8H.html @@ -126,10 +126,10 @@ - + - + @@ -147,10 +147,10 @@ - + - + @@ -184,9 +184,9 @@ - + - + diff --git a/amrex/docs_html/doxygen/AMReX__ParallelContext_8H_source.html b/amrex/docs_html/doxygen/AMReX__ParallelContext_8H_source.html index bceefce284..4532bbdff4 100644 --- a/amrex/docs_html/doxygen/AMReX__ParallelContext_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__ParallelContext_8H_source.html @@ -116,8 +116,8 @@
15 {
16 public:
17 
-
18  Frame (MPI_Comm c, int id, int io_rank);
-
19  explicit Frame (MPI_Comm c);
+
18  Frame (MPI_Comm c, int id, int io_rank);
+
19  explicit Frame (MPI_Comm c);
20  Frame (Frame const&) = delete;
21  Frame& operator= (Frame const&) = delete;
22  Frame& operator= (Frame &&) = delete;
@@ -136,8 +136,8 @@
35  void set_ofs_name (std::string filename);
36  std::ofstream * get_ofs_ptr ();
37 
-
39  MPI_Comm comm = MPI_COMM_NULL;
-
40  MPI_Group group = MPI_GROUP_NULL;
+
39  MPI_Comm comm = MPI_COMM_NULL;
+
40  MPI_Group group = MPI_GROUP_NULL;
41 
42 private:
43  int m_id = -1;
@@ -151,16 +151,16 @@
51 
52 extern AMREX_EXPORT Vector<Frame> frames;
53 
-
55 inline MPI_Comm CommunicatorAll () noexcept { return frames[0].comm; }
-
57 inline MPI_Group GroupAll () noexcept { return frames[0].group; }
+
55 inline MPI_Comm CommunicatorAll () noexcept { return frames[0].comm; }
+
57 inline MPI_Group GroupAll () noexcept { return frames[0].group; }
59 inline int NProcsAll () noexcept { return frames[0].NProcs(); }
61 inline int MyProcAll () noexcept { return frames[0].MyProc(); }
63 inline int IOProcessorNumberAll () noexcept { return frames[0].IOProc(); }
65 inline bool IOProcessorAll () noexcept { return MyProcAll() == IOProcessorNumberAll(); }
67 inline std::ofstream * OFSPtrAll () noexcept { return frames[0].get_ofs_ptr(); }
68 
-
70 inline MPI_Comm CommunicatorSub () noexcept { return frames.back().comm; }
-
72 inline MPI_Group GroupSub () noexcept { return frames.back().group; }
+
70 inline MPI_Comm CommunicatorSub () noexcept { return frames.back().comm; }
+
72 inline MPI_Group GroupSub () noexcept { return frames.back().group; }
74 inline int NProcsSub () noexcept { return frames.back().NProcs(); }
76 inline int MyProcSub () noexcept { return frames.back().MyProc(); }
78 inline int IOProcessorNumberSub () noexcept { return frames.back().IOProc(); }
@@ -183,8 +183,8 @@
99 inline void global_to_local_rank (int* local, const int* global, int n) noexcept
100  { Frame::global_to_local_rank(local, global, n); }
101 
-
102 inline void push (MPI_Comm c) { frames.emplace_back(c); }
-
103 inline void push (MPI_Comm c, int id, int io_rank) { frames.emplace_back(c, id, io_rank); }
+
102 inline void push (MPI_Comm c) { frames.emplace_back(c); }
+
103 inline void push (MPI_Comm c, int id, int io_rank) { frames.emplace_back(c, id, io_rank); }
104 inline void set_last_frame_ofs (const std::string & filename) {
105  frames.back().set_ofs_name(filename);
106 }
@@ -198,8 +198,8 @@
AMReX_Vector.H
AMReX_ccse-mpi.H
MPI_GROUP_NULL
static constexpr int MPI_GROUP_NULL
Definition: AMReX_ccse-mpi.H:56
-
MPI_Group
int MPI_Group
Definition: AMReX_ccse-mpi.H:48
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Group
int MPI_Group
Definition: AMReX_ccse-mpi.H:48
MPI_COMM_NULL
static constexpr int MPI_COMM_NULL
Definition: AMReX_ccse-mpi.H:55
amrex::ParallelContext::Frame
Definition: AMReX_ParallelContext.H:15
amrex::ParallelContext::Frame::comm
MPI_Comm comm
sub-communicator associated with frame
Definition: AMReX_ParallelContext.H:39
diff --git a/amrex/docs_html/doxygen/AMReX__ParallelDescriptor_8H.html b/amrex/docs_html/doxygen/AMReX__ParallelDescriptor_8H.html index d1a88ecafc..368ebab7a4 100644 --- a/amrex/docs_html/doxygen/AMReX__ParallelDescriptor_8H.html +++ b/amrex/docs_html/doxygen/AMReX__ParallelDescriptor_8H.html @@ -157,7 +157,7 @@ - + @@ -177,29 +177,29 @@ - + - + - + - + - + @@ -238,17 +238,17 @@ - + - + - + - + - + @@ -451,7 +451,7 @@ - + @@ -460,7 +460,7 @@ - + @@ -469,7 +469,7 @@ - + @@ -478,7 +478,7 @@ - + @@ -487,9 +487,9 @@ - + - + @@ -507,30 +507,30 @@ - + - + - + - + - + - + - + - + - +

Functions

MPI_Comm amrex::ParallelContext::CommunicatorAll () noexcept
MPI_Comm amrex::ParallelContext::CommunicatorAll () noexcept
 world communicator More...
 
MPI_Group amrex::ParallelContext::GroupAll () noexcept
MPI_Group amrex::ParallelContext::GroupAll () noexcept
 world group More...
 
int amrex::ParallelContext::NProcsAll () noexcept
std::ofstream * amrex::ParallelContext::OFSPtrAll () noexcept
 Pointer to ofstream. More...
 
MPI_Comm amrex::ParallelContext::CommunicatorSub () noexcept
MPI_Comm amrex::ParallelContext::CommunicatorSub () noexcept
 sub-communicator for current frame More...
 
MPI_Group amrex::ParallelContext::GroupSub () noexcept
MPI_Group amrex::ParallelContext::GroupSub () noexcept
 sub-group for current frame More...
 
int amrex::ParallelContext::NProcsSub () noexcept
 
void amrex::ParallelContext::global_to_local_rank (int *local, const int *global, int n) noexcept
 
void amrex::ParallelContext::push (MPI_Comm c)
void amrex::ParallelContext::push (MPI_Comm c)
 
void amrex::ParallelContext::push (MPI_Comm c, int id, int io_rank)
void amrex::ParallelContext::push (MPI_Comm c, int id, int io_rank)
 
void amrex::ParallelContext::set_last_frame_ofs (const std::string &filename)
 
const std::string amrex::ParallelDescriptor::Unnamed ("Unnamed")
 Used as default argument to ParallelDescriptor::Barrier(). More...
 
void amrex::ParallelDescriptor::StartParallel (int *argc=nullptr, char ***argv=nullptr, MPI_Comm mpi_comm=MPI_COMM_WORLD)
void amrex::ParallelDescriptor::StartParallel (int *argc=nullptr, char ***argv=nullptr, MPI_Comm mpi_comm=MPI_COMM_WORLD)
 Perform any needed parallel initialization. This MUST be the first routine in this class called from within a program. More...
 
void amrex::ParallelDescriptor::Initialize ()
int amrex::ParallelDescriptor::MyProc () noexcept
 return the rank number local to the current Parallel Context More...
 
int amrex::ParallelDescriptor::MyProc (MPI_Comm comm) noexcept
int amrex::ParallelDescriptor::MyProc (MPI_Comm comm) noexcept
 
int amrex::ParallelDescriptor::MinTag () noexcept
 
int amrex::ParallelDescriptor::MaxTag () noexcept
 
MPI_Comm amrex::ParallelDescriptor::Communicator () noexcept
MPI_Comm amrex::ParallelDescriptor::Communicator () noexcept
 
int amrex::ParallelDescriptor::NProcsPerNode () noexcept
 
int amrex::ParallelDescriptor::NProcs () noexcept
 return the number of MPI ranks local to the current Parallel Context More...
 
int amrex::ParallelDescriptor::NProcs (MPI_Comm comm) noexcept
int amrex::ParallelDescriptor::NProcs (MPI_Comm comm) noexcept
 
int amrex::ParallelDescriptor::IOProcessorNumber () noexcept
 
bool amrex::ParallelDescriptor::IOProcessor () noexcept
 Is this CPU the I/O Processor? To get the rank number, call IOProcessorNumber() More...
 
int amrex::ParallelDescriptor::IOProcessorNumber (MPI_Comm comm) noexcept
int amrex::ParallelDescriptor::IOProcessorNumber (MPI_Comm comm) noexcept
 
bool amrex::ParallelDescriptor::IOProcessor (MPI_Comm comm) noexcept
bool amrex::ParallelDescriptor::IOProcessor (MPI_Comm comm) noexcept
 
int amrex::ParallelDescriptor::TeamSize () noexcept
 
 
void amrex::ParallelDescriptor::Barrier (const std::string &)
 
void amrex::ParallelDescriptor::Barrier (const MPI_Comm &, const std::string &)
void amrex::ParallelDescriptor::Barrier (const MPI_Comm &, const std::string &)
 
Message amrex::ParallelDescriptor::Abarrier ()
 
Message amrex::ParallelDescriptor::Abarrier (const MPI_Comm &)
Message amrex::ParallelDescriptor::Abarrier (const MPI_Comm &)
 
void amrex::ParallelDescriptor::Test (MPI_Request &, int &, MPI_Status &)
void amrex::ParallelDescriptor::Test (MPI_Request &, int &, MPI_Status &)
 
void amrex::ParallelDescriptor::Test (Vector< MPI_Request > &, int &, Vector< MPI_Status > &)
void amrex::ParallelDescriptor::Test (Vector< MPI_Request > &, int &, Vector< MPI_Status > &)
 
void amrex::ParallelDescriptor::Comm_dup (MPI_Comm, MPI_Comm &)
void amrex::ParallelDescriptor::Comm_dup (MPI_Comm, MPI_Comm &)
 
void amrex::ParallelDescriptor::Abort (int errorcode=SIGABRT, bool backtrace=true)
 Abort with specified error code. More...
Message amrex::ParallelDescriptor::Asend (const T *, size_t n, int pid, int tag)
 
template<class T >
Message amrex::ParallelDescriptor::Asend (const T *, size_t n, int pid, int tag, MPI_Comm comm)
Message amrex::ParallelDescriptor::Asend (const T *, size_t n, int pid, int tag, MPI_Comm comm)
 
template<class T >
Message amrex::ParallelDescriptor::Asend (const std::vector< T > &buf, int pid, int tag)
Message amrex::ParallelDescriptor::Arecv (T *, size_t n, int pid, int tag)
 
template<class T >
Message amrex::ParallelDescriptor::Arecv (T *, size_t n, int pid, int tag, MPI_Comm comm)
Message amrex::ParallelDescriptor::Arecv (T *, size_t n, int pid, int tag, MPI_Comm comm)
 
template<class T >
Message amrex::ParallelDescriptor::Arecv (std::vector< T > &buf, int pid, int tag)
Message amrex::ParallelDescriptor::Send (const T *buf, size_t n, int dst_pid, int tag)
 
template<class T >
Message amrex::ParallelDescriptor::Send (const T *buf, size_t n, int dst_pid, int tag, MPI_Comm comm)
Message amrex::ParallelDescriptor::Send (const T *buf, size_t n, int dst_pid, int tag, MPI_Comm comm)
 
template<class T >
Message amrex::ParallelDescriptor::Send (const std::vector< T > &buf, int dst_pid, int tag)
Message amrex::ParallelDescriptor::Recv (T *, size_t n, int pid, int tag)
 
template<class T >
Message amrex::ParallelDescriptor::Recv (T *, size_t n, int pid, int tag, MPI_Comm comm)
Message amrex::ParallelDescriptor::Recv (T *, size_t n, int pid, int tag, MPI_Comm comm)
 
template<class T >
Message amrex::ParallelDescriptor::Recv (std::vector< T > &buf, int pid, int tag)
void amrex::ParallelDescriptor::Bcast (T *, size_t n, int root=0)
 
template<class T >
void amrex::ParallelDescriptor::Bcast (T *, size_t n, int root, const MPI_Comm &comm)
void amrex::ParallelDescriptor::Bcast (T *, size_t n, int root, const MPI_Comm &comm)
 
void amrex::ParallelDescriptor::Bcast (void *, int, MPI_Datatype, int, MPI_Comm)
void amrex::ParallelDescriptor::Bcast (void *, int, MPI_Datatype, int, MPI_Comm)
 
template<class T , class T1 >
void amrex::ParallelDescriptor::Scatter (T *, size_t n, const T1 *, size_t n1, int root)
void amrex::ParallelDescriptor::GatherLayoutDataToVector (const LayoutData< T > &sendbuf, Vector< T > &recvbuf, int root)
 Gather LayoutData values to a vector on root. More...
 
void amrex::ParallelDescriptor::Wait (MPI_Request &, MPI_Status &)
void amrex::ParallelDescriptor::Wait (MPI_Request &, MPI_Status &)
 
void amrex::ParallelDescriptor::Waitall (Vector< MPI_Request > &, Vector< MPI_Status > &)
void amrex::ParallelDescriptor::Waitall (Vector< MPI_Request > &, Vector< MPI_Status > &)
 
void amrex::ParallelDescriptor::Waitany (Vector< MPI_Request > &, int &, MPI_Status &)
void amrex::ParallelDescriptor::Waitany (Vector< MPI_Request > &, int &, MPI_Status &)
 
void amrex::ParallelDescriptor::Waitsome (Vector< MPI_Request > &, int &, Vector< int > &, Vector< MPI_Status > &)
void amrex::ParallelDescriptor::Waitsome (Vector< MPI_Request > &, int &, Vector< int > &, Vector< MPI_Status > &)
 
void amrex::ParallelDescriptor::ReadAndBcastFile (const std::string &filename, Vector< char > &charBuf, bool bExitOnError, const MPI_Comm &comm)
void amrex::ParallelDescriptor::ReadAndBcastFile (const std::string &filename, Vector< char > &charBuf, bool bExitOnError, const MPI_Comm &comm)
 
void amrex::ParallelDescriptor::IProbe (int, int, int &, MPI_Status &)
 
void amrex::ParallelDescriptor::IProbe (int, int, MPI_Comm, int &, MPI_Status &)
void amrex::ParallelDescriptor::IProbe (int, int, MPI_Comm, int &, MPI_Status &)
 
std::string amrex::ParallelDescriptor::mpi_level_to_string (int mtlev)
 
template<typename T >
void amrex::ParallelDescriptor::detail::DoAllReduce (T *r, MPI_Op op, int cnt)
void amrex::ParallelDescriptor::detail::DoAllReduce (T *r, MPI_Op op, int cnt)
 
template<typename T >
void amrex::ParallelDescriptor::detail::DoReduce (T *r, MPI_Op op, int cnt, int cpu)
void amrex::ParallelDescriptor::detail::DoReduce (T *r, MPI_Op op, int cnt, int cpu)
 
template<typename T , typename F >
MPI_Op amrex::ParallelDescriptor::Mpi_op ()
MPI_Op amrex::ParallelDescriptor::Mpi_op ()
 
diff --git a/amrex/docs_html/doxygen/AMReX__ParallelDescriptor_8H_source.html b/amrex/docs_html/doxygen/AMReX__ParallelDescriptor_8H_source.html index 43ef796b16..02cd92b587 100644 --- a/amrex/docs_html/doxygen/AMReX__ParallelDescriptor_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__ParallelDescriptor_8H_source.html @@ -156,11 +156,11 @@
58  public:
59 
60  Message () = default;
-
61  Message (MPI_Request req_, MPI_Datatype type_) :
+
61  Message (MPI_Request req_, MPI_Datatype type_) :
62  m_finished(false),
63  m_type(type_),
64  m_req(req_) {}
-
65  Message (MPI_Status stat_, MPI_Datatype type_) :
+
65  Message (MPI_Status stat_, MPI_Datatype type_) :
66  m_type(type_),
67  m_stat(stat_) {}
68  void wait ();
@@ -168,15 +168,15 @@
70  size_t count () const;
71  int tag () const;
72  int pid () const;
-
73  MPI_Datatype type () const { return m_type; }
-
74  MPI_Request req () const { return m_req; }
+
73  MPI_Datatype type () const { return m_type; }
+
74  MPI_Request req () const { return m_req; }
75  MPI_Status stat () const { return m_stat; }
76 
77  private:
78 
79  bool m_finished = true;
-
80  MPI_Datatype m_type = MPI_DATATYPE_NULL;
-
81  MPI_Request m_req = MPI_REQUEST_NULL;
+
80  MPI_Datatype m_type = MPI_DATATYPE_NULL;
+
81  MPI_Request m_req = MPI_REQUEST_NULL;
82  mutable MPI_Status m_stat{};
83  };
84 
@@ -196,7 +196,7 @@
98 
103  void StartParallel (int* argc = nullptr,
104  char*** argv = nullptr,
-
105  MPI_Comm mpi_comm = MPI_COMM_WORLD);
+
105  MPI_Comm mpi_comm = MPI_COMM_WORLD);
106 
107  void Initialize ();
108  void Finalize ();
@@ -215,7 +215,7 @@
127  return ParallelContext::MyProcAll();
128  }
129  inline int
-
130  MyProc (MPI_Comm comm) noexcept
+
130  MyProc (MPI_Comm comm) noexcept
131  {
132 #ifdef BL_USE_MPI
133  int r;
@@ -229,7 +229,7 @@
141 
143  struct ProcessTeam
144  {
-
145  typedef MPI_Comm team_t;
+
145  using team_t = MPI_Comm;
146 
148  void Barrier () const {
149  if (m_size > 1) {
@@ -266,11 +266,11 @@
182 #endif
183  }
184 
-
185  [[nodiscard]] const team_t& get() const {
+
185  [[nodiscard]] const team_t& get() const {
186  return m_team_comm;
187  }
-
189  [[nodiscard]] const MPI_Comm& get_team_comm() const { return m_team_comm; }
-
190  [[nodiscard]] const MPI_Comm& get_lead_comm() const { return m_lead_comm; }
+
189  [[nodiscard]] const MPI_Comm& get_team_comm() const { return m_team_comm; }
+
190  [[nodiscard]] const MPI_Comm& get_lead_comm() const { return m_lead_comm; }
191 
192  int m_numTeams;
193  int m_size;
@@ -279,8 +279,8 @@
196  int m_rankInTeam;
197  int m_do_team_reduce;
198 
-
199  MPI_Comm m_team_comm;
-
200  MPI_Comm m_lead_comm;
+
199  MPI_Comm m_team_comm;
+
200  MPI_Comm m_lead_comm;
201  };
202 
203  extern AMREX_EXPORT ProcessTeam m_Team;
@@ -289,8 +289,8 @@
206  inline int MinTag () noexcept { return m_MinTag; }
207  inline int MaxTag () noexcept { return m_MaxTag; }
208 
-
209  extern AMREX_EXPORT MPI_Comm m_comm;
-
210  inline MPI_Comm Communicator () noexcept { return m_comm; }
+
209  extern AMREX_EXPORT MPI_Comm m_comm;
+
210  inline MPI_Comm Communicator () noexcept { return m_comm; }
211 
212  extern AMREX_EXPORT int m_nprocs_per_node;
215  inline int NProcsPerNode () noexcept { return m_nprocs_per_node; }
@@ -307,7 +307,7 @@
227  }
228 
229  inline int
-
230  NProcs (MPI_Comm comm) noexcept
+
230  NProcs (MPI_Comm comm) noexcept
231  {
232 #ifdef BL_USE_MPI
233  int s;
@@ -331,13 +331,13 @@
259  }
260 
261  inline int
-
262  IOProcessorNumber (MPI_Comm comm) noexcept
+
262  IOProcessorNumber (MPI_Comm comm) noexcept
263  {
264  return (comm == ParallelDescriptor::Communicator()) ? ioProcessor : 0;
265  }
266 
267  inline bool
-
268  IOProcessor (MPI_Comm comm) noexcept
+
268  IOProcessor (MPI_Comm comm) noexcept
269  {
270  return MyProc(comm) == IOProcessorNumber(comm);
271  }
@@ -473,14 +473,14 @@
401  }
402 
403  void Barrier (const std::string& message = Unnamed);
-
404  void Barrier (const MPI_Comm &comm, const std::string& message = Unnamed);
+
404  void Barrier (const MPI_Comm &comm, const std::string& message = Unnamed);
405  Message Abarrier ();
-
406  Message Abarrier (const MPI_Comm &comm);
+
406  Message Abarrier (const MPI_Comm &comm);
407 
-
408  void Test (MPI_Request& request, int& flag, MPI_Status& status);
+
408  void Test (MPI_Request& request, int& flag, MPI_Status& status);
409  void Test (Vector<MPI_Request>& request, int& flag, Vector<MPI_Status>& status);
410 
-
411  void Comm_dup (MPI_Comm comm, MPI_Comm& newcomm);
+
411  void Comm_dup (MPI_Comm comm, MPI_Comm& newcomm);
413  void Abort (int errorcode = SIGABRT, bool backtrace = true);
415  const char* ErrorString (int errorcode);
417  double second () noexcept;
@@ -634,24 +634,24 @@
594  inline int SeqNum () noexcept { return ParallelContext::get_inc_mpi_tag(); }
595 
596  template <class T> Message Asend(const T*, size_t n, int pid, int tag);
-
597  template <class T> Message Asend(const T*, size_t n, int pid, int tag, MPI_Comm comm);
+
597  template <class T> Message Asend(const T*, size_t n, int pid, int tag, MPI_Comm comm);
598  template <class T> Message Asend(const std::vector<T>& buf, int pid, int tag);
599 
600  template <class T> Message Arecv(T*, size_t n, int pid, int tag);
-
601  template <class T> Message Arecv(T*, size_t n, int pid, int tag, MPI_Comm comm);
+
601  template <class T> Message Arecv(T*, size_t n, int pid, int tag, MPI_Comm comm);
602  template <class T> Message Arecv(std::vector<T>& buf, int pid, int tag);
603 
604  template <class T> Message Send(const T* buf, size_t n, int dst_pid, int tag);
-
605  template <class T> Message Send(const T* buf, size_t n, int dst_pid, int tag, MPI_Comm comm);
+
605  template <class T> Message Send(const T* buf, size_t n, int dst_pid, int tag, MPI_Comm comm);
606  template <class T> Message Send(const std::vector<T>& buf, int dst_pid, int tag);
607 
608  template <class T> Message Recv(T*, size_t n, int pid, int tag);
-
609  template <class T> Message Recv(T*, size_t n, int pid, int tag, MPI_Comm comm);
+
609  template <class T> Message Recv(T*, size_t n, int pid, int tag, MPI_Comm comm);
610  template <class T> Message Recv(std::vector<T>& buf, int pid, int tag);
611 
612  template <class T> void Bcast(T*, size_t n, int root = 0);
-
613  template <class T> void Bcast(T*, size_t n, int root, const MPI_Comm &comm);
-
614  void Bcast(void *buf, int count, MPI_Datatype datatype, int root, MPI_Comm comm);
+
613  template <class T> void Bcast(T*, size_t n, int root, const MPI_Comm &comm);
+
614  void Bcast(void *buf, int count, MPI_Datatype datatype, int root, MPI_Comm comm);
615 
616  template <class T, class T1> void Scatter(T*, size_t n, const T1*, size_t n1, int root);
617 
@@ -666,16 +666,16 @@
627  Vector<T>& recvbuf,
628  int root);
629 
-
630  void Wait (MPI_Request& req, MPI_Status& status);
+
630  void Wait (MPI_Request& req, MPI_Status& status);
631  void Waitall (Vector<MPI_Request>& reqs, Vector<MPI_Status>& status);
632  void Waitany (Vector<MPI_Request>& reqs, int &index, MPI_Status& status);
633  void Waitsome (Vector<MPI_Request>&, int&, Vector<int>&, Vector<MPI_Status>&);
634 
635  void ReadAndBcastFile(const std::string &filename, Vector<char> &charBuf,
636  bool bExitOnError = true,
-
637  const MPI_Comm &comm = Communicator() );
+
637  const MPI_Comm &comm = Communicator() );
638  void IProbe(int src_pid, int tag, int &mflag, MPI_Status &status);
-
639  void IProbe(int src_pid, int tag, MPI_Comm comm, int &mflag, MPI_Status &status);
+
639  void IProbe(int src_pid, int tag, MPI_Comm comm, int &mflag, MPI_Status &status);
640 
646  std::string
647  mpi_level_to_string (int mtlev);
@@ -708,18 +708,18 @@
674 namespace ParallelDescriptor { // Have to use namespace here to work around a gcc bug
675 template <>
676 Message
-
677 Asend<char> (const char* buf, size_t n, int dst_pid, int tag, MPI_Comm comm);
+
677 Asend<char> (const char* buf, size_t n, int dst_pid, int tag, MPI_Comm comm);
678 
679 template <class T>
680 Message
-
681 Asend (const T* buf, size_t n, int dst_pid, int tag, MPI_Comm comm)
+
681 Asend (const T* buf, size_t n, int dst_pid, int tag, MPI_Comm comm)
682 {
683  static_assert(!std::is_same<char,T>::value, "Asend: char version has been specialized");
684 
685  BL_PROFILE_T_S("ParallelDescriptor::Asend(TsiiM)", T);
686  BL_COMM_PROFILE(BLProfiler::AsendTsiiM, n * sizeof(T), dst_pid, tag);
687 
-
688  MPI_Request req;
+
688  MPI_Request req;
689  BL_MPI_REQUIRE( MPI_Isend(const_cast<T*>(buf),
690  n,
691  Mpi_typemap<T>::type(),
@@ -749,11 +749,11 @@
715 namespace ParallelDescriptor { // Have to use namespace here to work around a gcc bug
716 template <>
717 Message
-
718 Send<char> (const char* buf, size_t n, int dst_pid, int tag, MPI_Comm comm);
+
718 Send<char> (const char* buf, size_t n, int dst_pid, int tag, MPI_Comm comm);
719 
720 template <class T>
721 Message
-
722 Send (const T* buf, size_t n, int dst_pid, int tag, MPI_Comm comm)
+
722 Send (const T* buf, size_t n, int dst_pid, int tag, MPI_Comm comm)
723 {
724  static_assert(!std::is_same<char,T>::value, "Send: char version has been specialized");
725 
@@ -761,7 +761,7 @@
727 
728 #ifdef BL_COMM_PROFILING
729  int dst_pid_world(-1);
-
730  MPI_Group groupComm, groupWorld;
+
730  MPI_Group groupComm, groupWorld;
731  BL_MPI_REQUIRE( MPI_Comm_group(comm, &groupComm) );
732  BL_MPI_REQUIRE( MPI_Comm_group(Communicator(), &groupWorld) );
733  BL_MPI_REQUIRE( MPI_Group_translate_ranks(groupComm, 1, &dst_pid, groupWorld, &dst_pid_world) );
@@ -797,18 +797,18 @@
763 namespace ParallelDescriptor { // Have to use namespace here to work around a gcc bug
764 template <>
765 Message
-
766 Arecv<char> (char* buf, size_t n, int src_pid, int tag, MPI_Comm comm);
+
766 Arecv<char> (char* buf, size_t n, int src_pid, int tag, MPI_Comm comm);
767 
768 template <class T>
769 Message
-
770 Arecv (T* buf, size_t n, int src_pid, int tag, MPI_Comm comm)
+
770 Arecv (T* buf, size_t n, int src_pid, int tag, MPI_Comm comm)
771 {
772  static_assert(!std::is_same<char,T>::value, "Arecv: char version has been specialized");
773 
774  BL_PROFILE_T_S("ParallelDescriptor::Arecv(TsiiM)", T);
775  BL_COMM_PROFILE(BLProfiler::ArecvTsiiM, n * sizeof(T), src_pid, tag);
776 
-
777  MPI_Request req;
+
777  MPI_Request req;
778  BL_MPI_REQUIRE( MPI_Irecv(buf,
779  n,
780  Mpi_typemap<T>::type(),
@@ -838,11 +838,11 @@
804 namespace ParallelDescriptor { // Have to use namespace here to work around a gcc bug
805 template <>
806 Message
-
807 Recv<char> (char* buf, size_t n, int src_pid, int tag, MPI_Comm comm);
+
807 Recv<char> (char* buf, size_t n, int src_pid, int tag, MPI_Comm comm);
808 
809 template <class T>
810 Message
-
811 Recv (T* buf, size_t n, int src_pid, int tag, MPI_Comm comm)
+
811 Recv (T* buf, size_t n, int src_pid, int tag, MPI_Comm comm)
812 {
813  static_assert(!std::is_same<char,T>::value, "Recv: char version has been specialized");
814 
@@ -861,7 +861,7 @@
827  int src_pid_comm(stat.MPI_SOURCE);
828  int src_pid_world(stat.MPI_SOURCE);
829  if(src_pid_comm != MPI_ANY_SOURCE) {
-
830  MPI_Group groupComm, groupWorld;
+
830  MPI_Group groupComm, groupWorld;
831  BL_MPI_REQUIRE( MPI_Comm_group(comm, &groupComm) );
832  BL_MPI_REQUIRE( MPI_Comm_group(Communicator(), &groupWorld) );
833  BL_MPI_REQUIRE( MPI_Group_translate_ranks(groupComm, 1, &src_pid_comm, groupWorld, &src_pid_world) );
@@ -908,7 +908,7 @@
874 ParallelDescriptor::Bcast (T* t,
875  size_t n,
876  int root,
-
877  const MPI_Comm &comm)
+
877  const MPI_Comm &comm)
878 {
879 #ifdef BL_LAZY
880  int r;
@@ -1108,7 +1108,7 @@
1074 
1075 template <class T>
1076 Message
-
1077 Asend(const T* /*buf*/, size_t /*n*/, int /*dst_pid*/, int /*tag*/, MPI_Comm /*comm*/)
+
1077 Asend(const T* /*buf*/, size_t /*n*/, int /*dst_pid*/, int /*tag*/, MPI_Comm /*comm*/)
1078 {
1079  return Message();
1080 }
@@ -1129,7 +1129,7 @@
1095 
1096 template <class T>
1097 Message
-
1098 Send(const T* /*buf*/, size_t /*n*/, int /*dst_pid*/, int /*tag*/, MPI_Comm /*comm*/)
+
1098 Send(const T* /*buf*/, size_t /*n*/, int /*dst_pid*/, int /*tag*/, MPI_Comm /*comm*/)
1099 {
1100  return Message();
1101 }
@@ -1150,7 +1150,7 @@
1116 
1117 template <class T>
1118 Message
-
1119 Arecv(T* /*buf*/, size_t /*n*/, int /*src_pid*/, int /*tag*/, MPI_Comm /*comm*/)
+
1119 Arecv(T* /*buf*/, size_t /*n*/, int /*src_pid*/, int /*tag*/, MPI_Comm /*comm*/)
1120 {
1121  return Message();
1122 }
@@ -1171,7 +1171,7 @@
1137 
1138 template <class T>
1139 Message
-
1140 Recv(T* /*buf*/, size_t /*n*/, int /*src_pid*/, int /*tag*/, MPI_Comm /*comm*/)
+
1140 Recv(T* /*buf*/, size_t /*n*/, int /*src_pid*/, int /*tag*/, MPI_Comm /*comm*/)
1141 {
1142  return Message();
1143 }
@@ -1190,7 +1190,7 @@
1156 
1157 template <class T>
1158 void
-
1159 Bcast(T* /*t*/, size_t /*n*/, int /*root*/, const MPI_Comm & /*comm*/)
+
1159 Bcast(T* /*t*/, size_t /*n*/, int /*root*/, const MPI_Comm & /*comm*/)
1160 {}
1161 
1162 template <class T, class T1>
@@ -1250,7 +1250,7 @@
1216 namespace detail {
1217 
1218 template<typename T>
-
1219 void DoAllReduce (T* r, MPI_Op op, int cnt)
+
1219 void DoAllReduce (T* r, MPI_Op op, int cnt)
1220 {
1221 #ifdef BL_LAZY
1222  Lazy::EvalReduction();
@@ -1264,7 +1264,7 @@
1230 }
1231 
1232 template<typename T>
-
1233 void DoReduce (T* r, MPI_Op op, int cnt, int cpu)
+
1233 void DoReduce (T* r, MPI_Op op, int cnt, int cpu)
1234 {
1235 #ifdef BL_LAZY
1236  Lazy::EvalReduction();
@@ -1512,7 +1512,7 @@
1490 template <class T>
1491 struct Mpi_typemap<GpuComplex<T>>
1492 {
-
1493  static MPI_Datatype type ()
+
1493  static MPI_Datatype type ()
1494  {
1495  static_assert(std::is_same<T,double>() ||
1496  std::is_same<T,float >(),
@@ -1528,9 +1528,9 @@
1506 template<typename TV, typename TI>
1507 struct Mpi_typemap<ValLocPair<TV,TI>>
1508 {
-
1509  static MPI_Datatype type ()
+
1509  static MPI_Datatype type ()
1510  {
-
1511  static MPI_Datatype mpi_type = MPI_DATATYPE_NULL;
+
1511  static MPI_Datatype mpi_type = MPI_DATATYPE_NULL;
1512  if (mpi_type == MPI_DATATYPE_NULL) {
1513  using T = ValLocPair<TV,TI>;
1514  static_assert(std::is_trivially_copyable<T>::value,
@@ -1539,7 +1539,7 @@
1517  "To communicate with MPI, ValLocPair must be standard layout");
1518 
1519  T vlp[2];
-
1520  MPI_Datatype types[] = {
+
1520  MPI_Datatype types[] = {
1521  Mpi_typemap<TV>::type(),
1522  Mpi_typemap<TI>::type(),
1523  };
@@ -1554,7 +1554,7 @@
1532  MPI_Aint lb, extent;
1533  BL_MPI_REQUIRE( MPI_Type_get_extent(mpi_type, &lb, &extent) );
1534  if (extent != sizeof(T)) {
-
1535  MPI_Datatype tmp = mpi_type;
+
1535  MPI_Datatype tmp = mpi_type;
1536  BL_MPI_REQUIRE( MPI_Type_create_resized(tmp, 0, sizeof(vlp[0]), &mpi_type) );
1537  BL_MPI_REQUIRE( MPI_Type_free(&tmp) );
1538  }
@@ -1567,12 +1567,12 @@
1545 };
1546 
1547 template <typename T, typename F>
-
1548 MPI_Op Mpi_op ()
+
1548 MPI_Op Mpi_op ()
1549 {
-
1550  static MPI_Op mpi_op = MPI_OP_NULL;
+
1550  static MPI_Op mpi_op = MPI_OP_NULL;
1551  if (mpi_op == MPI_OP_NULL) {
1552  static auto user_fn = [] (void *invec, void *inoutvec, int* len, // NOLINT
-
1553  MPI_Datatype * /*datatype*/)
+
1553  MPI_Datatype * /*datatype*/)
1554  {
1555  auto in = static_cast<T const*>(invec);
1556  auto out = static_cast<T*>(inoutvec);
@@ -1610,15 +1610,15 @@
AMReX_ValLocPair.H
AMReX_Vector.H
AMReX_ccse-mpi.H
-
MPI_Op
int MPI_Op
Definition: AMReX_ccse-mpi.H:46
-
MPI_Request
int MPI_Request
Definition: AMReX_ccse-mpi.H:51
-
MPI_Group
int MPI_Group
Definition: AMReX_ccse-mpi.H:48
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Request
int MPI_Request
Definition: AMReX_ccse-mpi.H:50
+
MPI_Group
int MPI_Group
Definition: AMReX_ccse-mpi.H:48
+
MPI_Op
int MPI_Op
Definition: AMReX_ccse-mpi.H:46
MPI_COMM_WORLD
static constexpr int MPI_COMM_WORLD
Definition: AMReX_ccse-mpi.H:54
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
MPI_PROC_NULL
static constexpr int MPI_PROC_NULL
Definition: AMReX_ccse-mpi.H:57
MPI_DATATYPE_NULL
static constexpr int MPI_DATATYPE_NULL
Definition: AMReX_ccse-mpi.H:52
+
MPI_Datatype
int MPI_Datatype
Definition: AMReX_ccse-mpi.H:49
MPI_REQUEST_NULL
static constexpr int MPI_REQUEST_NULL
Definition: AMReX_ccse-mpi.H:53
-
MPI_Datatype
int MPI_Datatype
Definition: AMReX_ccse-mpi.H:49
amrex::FabArrayBase::size
int size() const noexcept
Return the number of FABs in the FabArray.
Definition: AMReX_FabArrayBase.H:100
amrex::LayoutData
a one-thingy-per-box distributed object
Definition: AMReX_LayoutData.H:13
amrex::ParallelDescriptor::Message
Hold the description and status of communication data.
Definition: AMReX_ParallelDescriptor.H:57
@@ -1738,13 +1738,14 @@
amrex::begin
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 begin(Box const &box) noexcept
Definition: AMReX_Box.H:1617
amrex::ignore_unused
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void ignore_unused(const Ts &...)
This shuts up the compiler about unused variables.
Definition: AMReX.H:107
detail
Definition: AMReX_FabArrayCommI.H:841
-
MPI_Status
Definition: AMReX_ccse-mpi.H:50
+
MPI_Status
Definition: AMReX_ccse-mpi.H:51
amrex::GpuComplex
A host / device complex number type, because std::complex doesn't work in device code with Cuda yet.
Definition: AMReX_GpuComplex.H:25
amrex::ParallelDescriptor::Mpi_typemap< GpuComplex< T > >::type
static MPI_Datatype type()
Definition: AMReX_ParallelDescriptor.H:1493
amrex::ParallelDescriptor::Mpi_typemap< ValLocPair< TV, TI > >::type
static MPI_Datatype type()
Definition: AMReX_ParallelDescriptor.H:1509
amrex::ParallelDescriptor::Mpi_typemap
Communication datatype (note: this structure also works without MPI)
Definition: AMReX_ccse-mpi.H:68
amrex::ParallelDescriptor::Mpi_typemap::type
static MPI_Datatype type()
amrex::ParallelDescriptor::ProcessTeam
Provide functionalities needed to construct a team of processes to perform a particular job.
Definition: AMReX_ParallelDescriptor.H:144
+
amrex::ParallelDescriptor::ProcessTeam::team_t
MPI_Comm team_t
Definition: AMReX_ParallelDescriptor.H:145
amrex::ParallelDescriptor::ProcessTeam::m_color
int m_color
Definition: AMReX_ParallelDescriptor.H:194
amrex::ParallelDescriptor::ProcessTeam::m_size
int m_size
Definition: AMReX_ParallelDescriptor.H:193
amrex::ParallelDescriptor::ProcessTeam::clear
void clear()
free a communicator
Definition: AMReX_ParallelDescriptor.H:176
@@ -1757,7 +1758,6 @@
amrex::ParallelDescriptor::ProcessTeam::get_team_comm
const MPI_Comm & get_team_comm() const
return the communicator
Definition: AMReX_ParallelDescriptor.H:189
amrex::ParallelDescriptor::ProcessTeam::m_rankInTeam
int m_rankInTeam
Definition: AMReX_ParallelDescriptor.H:196
amrex::ParallelDescriptor::ProcessTeam::m_lead_comm
MPI_Comm m_lead_comm
Definition: AMReX_ParallelDescriptor.H:200
-
amrex::ParallelDescriptor::ProcessTeam::team_t
MPI_Comm team_t
Definition: AMReX_ParallelDescriptor.H:145
amrex::ParallelDescriptor::ProcessTeam::m_lead
int m_lead
Definition: AMReX_ParallelDescriptor.H:195
amrex::ParallelDescriptor::ProcessTeam::MemoryBarrier
void MemoryBarrier() const
memory fence
Definition: AMReX_ParallelDescriptor.H:157
amrex::ValLocPair
Definition: AMReX_ValLocPair.H:10
diff --git a/amrex/docs_html/doxygen/AMReX__ParallelDescriptor_8cpp.html b/amrex/docs_html/doxygen/AMReX__ParallelDescriptor_8cpp.html index 8aa4398d11..ff0ee70911 100644 --- a/amrex/docs_html/doxygen/AMReX__ParallelDescriptor_8cpp.html +++ b/amrex/docs_html/doxygen/AMReX__ParallelDescriptor_8cpp.html @@ -132,7 +132,7 @@ - + @@ -149,21 +149,21 @@ - + - + - + - + - + - + @@ -287,18 +287,18 @@ - + - + - + - + - + @@ -320,7 +320,7 @@ - + @@ -352,13 +352,13 @@ - + - + - + diff --git a/amrex/docs_html/doxygen/AMReX__ParallelReduce_8H.html b/amrex/docs_html/doxygen/AMReX__ParallelReduce_8H.html index 2dbda0b826..aed59d0557 100644 --- a/amrex/docs_html/doxygen/AMReX__ParallelReduce_8H.html +++ b/amrex/docs_html/doxygen/AMReX__ParallelReduce_8H.html @@ -144,117 +144,117 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +

Functions

void amrex::ParallelDescriptor::StartParallel (int *argc=nullptr, char ***argv=nullptr, MPI_Comm mpi_comm=MPI_COMM_WORLD)
void amrex::ParallelDescriptor::StartParallel (int *argc=nullptr, char ***argv=nullptr, MPI_Comm mpi_comm=MPI_COMM_WORLD)
 Perform any needed parallel initialization. This MUST be the first routine in this class called from within a program. More...
 
void amrex::ParallelDescriptor::Gather (Real const *sendbuf, int nsend, Real *recvbuf, int root)
 
void amrex::ParallelDescriptor::Barrier (const std::string &)
 
void amrex::ParallelDescriptor::Barrier (const MPI_Comm &, const std::string &)
void amrex::ParallelDescriptor::Barrier (const MPI_Comm &, const std::string &)
 
Message amrex::ParallelDescriptor::Abarrier ()
 
Message amrex::ParallelDescriptor::Abarrier (const MPI_Comm &)
Message amrex::ParallelDescriptor::Abarrier (const MPI_Comm &)
 
void amrex::ParallelDescriptor::Test (MPI_Request &, int &, MPI_Status &)
void amrex::ParallelDescriptor::Test (MPI_Request &, int &, MPI_Status &)
 
void amrex::ParallelDescriptor::Test (Vector< MPI_Request > &, int &, Vector< MPI_Status > &)
void amrex::ParallelDescriptor::Test (Vector< MPI_Request > &, int &, Vector< MPI_Status > &)
 
void amrex::ParallelDescriptor::IProbe (int, int, int &, MPI_Status &)
 
void amrex::ParallelDescriptor::IProbe (int, int, MPI_Comm, int &, MPI_Status &)
void amrex::ParallelDescriptor::IProbe (int, int, MPI_Comm, int &, MPI_Status &)
 
void amrex::ParallelDescriptor::Comm_dup (MPI_Comm, MPI_Comm &)
void amrex::ParallelDescriptor::Comm_dup (MPI_Comm, MPI_Comm &)
 
void amrex::ParallelDescriptor::ReduceRealSum (Vector< std::reference_wrapper< Real > > &&)
 
void amrex::ParallelDescriptor::ReduceBoolOr (bool &rvar, int cpu)
 Or-wise boolean reduction to specified cpu. More...
 
void amrex::ParallelDescriptor::Bcast (void *, int, MPI_Datatype, int, MPI_Comm)
void amrex::ParallelDescriptor::Bcast (void *, int, MPI_Datatype, int, MPI_Comm)
 
double amrex::ParallelDescriptor::second () noexcept
 Returns wall-clock seconds since start of execution. More...
 
void amrex::ParallelDescriptor::Wait (MPI_Request &, MPI_Status &)
void amrex::ParallelDescriptor::Wait (MPI_Request &, MPI_Status &)
 
void amrex::ParallelDescriptor::Waitall (Vector< MPI_Request > &, Vector< MPI_Status > &)
void amrex::ParallelDescriptor::Waitall (Vector< MPI_Request > &, Vector< MPI_Status > &)
 
void amrex::ParallelDescriptor::Waitany (Vector< MPI_Request > &, int &, MPI_Status &)
void amrex::ParallelDescriptor::Waitany (Vector< MPI_Request > &, int &, MPI_Status &)
 
void amrex::ParallelDescriptor::Waitsome (Vector< MPI_Request > &, int &, Vector< int > &, Vector< MPI_Status > &)
void amrex::ParallelDescriptor::Waitsome (Vector< MPI_Request > &, int &, Vector< int > &, Vector< MPI_Status > &)
 
 amrex::ParallelDescriptor::BL_FORT_PROC_DECL (BL_PD_BARRIER, bl_pd_barrier)()
 
 
 amrex::ParallelDescriptor::BL_FORT_PROC_DECL (BL_PD_ABORT, bl_pd_abort)()
 
void amrex::ParallelDescriptor::ReadAndBcastFile (const std::string &filename, Vector< char > &charBuf, bool bExitOnError, const MPI_Comm &comm)
void amrex::ParallelDescriptor::ReadAndBcastFile (const std::string &filename, Vector< char > &charBuf, bool bExitOnError, const MPI_Comm &comm)
 
void amrex::ParallelDescriptor::Initialize ()
 
 
ProcessTeam amrex::ParallelDescriptor::m_Team
 
MPI_Comm amrex::ParallelDescriptor::m_comm = MPI_COMM_NULL
MPI_Comm amrex::ParallelDescriptor::m_comm = MPI_COMM_NULL
 
int amrex::ParallelDescriptor::m_nprocs_per_node = 1
 
Vector< MPI_Datatype * > amrex::ParallelDescriptor::m_mpi_types
Vector< MPI_Datatype * > amrex::ParallelDescriptor::m_mpi_types
 
Vector< MPI_Op * > amrex::ParallelDescriptor::m_mpi_ops
Vector< MPI_Op * > amrex::ParallelDescriptor::m_mpi_ops
 
int amrex::ParallelDescriptor::m_MinTag = 1000
 

Functions

template<typename T >
void amrex::detail::Reduce (ReduceOp, T *, int, int, MPI_Comm)
void amrex::detail::Reduce (ReduceOp, T *, int, int, MPI_Comm)
 
template<typename T >
void amrex::detail::Reduce (ReduceOp, T &, int, MPI_Comm)
void amrex::detail::Reduce (ReduceOp, T &, int, MPI_Comm)
 
template<typename T >
void amrex::detail::Reduce (ReduceOp, Vector< std::reference_wrapper< T > > const &, int, MPI_Comm)
void amrex::detail::Reduce (ReduceOp, Vector< std::reference_wrapper< T > > const &, int, MPI_Comm)
 
template<typename T >
void amrex::detail::Gather (const T *, int, T *, int, MPI_Comm)
void amrex::detail::Gather (const T *, int, T *, int, MPI_Comm)
 
template<typename T >
void amrex::detail::Gather (const T &, T *, int, MPI_Comm)
void amrex::detail::Gather (const T &, T *, int, MPI_Comm)
 
template<typename T >
void amrex::ParallelAllGather::AllGather (const T *v, int cnt, T *vs, MPI_Comm comm)
void amrex::ParallelAllGather::AllGather (const T *v, int cnt, T *vs, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelAllGather::AllGather (const T &v, T *vs, MPI_Comm comm)
void amrex::ParallelAllGather::AllGather (const T &v, T *vs, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelGather::Gather (const T *v, int cnt, T *vs, int root, MPI_Comm comm)
void amrex::ParallelGather::Gather (const T *v, int cnt, T *vs, int root, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelGather::Gather (const T &v, T *vs, int root, MPI_Comm comm)
void amrex::ParallelGather::Gather (const T &v, T *vs, int root, MPI_Comm comm)
 
template<typename K , typename V >
void amrex::ParallelAllReduce::Max (KeyValuePair< K, V > &vi, MPI_Comm comm)
void amrex::ParallelAllReduce::Max (KeyValuePair< K, V > &vi, MPI_Comm comm)
 
template<typename K , typename V >
void amrex::ParallelAllReduce::Max (KeyValuePair< K, V > *vi, int cnt, MPI_Comm comm)
void amrex::ParallelAllReduce::Max (KeyValuePair< K, V > *vi, int cnt, MPI_Comm comm)
 
template<typename K , typename V >
void amrex::ParallelAllReduce::Min (KeyValuePair< K, V > &vi, MPI_Comm comm)
void amrex::ParallelAllReduce::Min (KeyValuePair< K, V > &vi, MPI_Comm comm)
 
template<typename K , typename V >
void amrex::ParallelAllReduce::Min (KeyValuePair< K, V > *vi, int cnt, MPI_Comm comm)
void amrex::ParallelAllReduce::Min (KeyValuePair< K, V > *vi, int cnt, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelAllReduce::Max (T &v, MPI_Comm comm)
void amrex::ParallelAllReduce::Max (T &v, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelAllReduce::Max (T *v, int cnt, MPI_Comm comm)
void amrex::ParallelAllReduce::Max (T *v, int cnt, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelAllReduce::Max (Vector< std::reference_wrapper< T > > v, MPI_Comm comm)
void amrex::ParallelAllReduce::Max (Vector< std::reference_wrapper< T > > v, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelAllReduce::Min (T &v, MPI_Comm comm)
void amrex::ParallelAllReduce::Min (T &v, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelAllReduce::Min (T *v, int cnt, MPI_Comm comm)
void amrex::ParallelAllReduce::Min (T *v, int cnt, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelAllReduce::Min (Vector< std::reference_wrapper< T > > v, MPI_Comm comm)
void amrex::ParallelAllReduce::Min (Vector< std::reference_wrapper< T > > v, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelAllReduce::Sum (T &v, MPI_Comm comm)
void amrex::ParallelAllReduce::Sum (T &v, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelAllReduce::Sum (T *v, int cnt, MPI_Comm comm)
void amrex::ParallelAllReduce::Sum (T *v, int cnt, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelAllReduce::Sum (Vector< std::reference_wrapper< T > > v, MPI_Comm comm)
void amrex::ParallelAllReduce::Sum (Vector< std::reference_wrapper< T > > v, MPI_Comm comm)
 
void amrex::ParallelAllReduce::Or (bool &v, MPI_Comm comm)
void amrex::ParallelAllReduce::Or (bool &v, MPI_Comm comm)
 
void amrex::ParallelAllReduce::And (bool &v, MPI_Comm comm)
void amrex::ParallelAllReduce::And (bool &v, MPI_Comm comm)
 
template<typename K , typename V >
void amrex::ParallelReduce::Max (KeyValuePair< K, V > &vi, int root, MPI_Comm comm)
void amrex::ParallelReduce::Max (KeyValuePair< K, V > &vi, int root, MPI_Comm comm)
 
template<typename K , typename V >
void amrex::ParallelReduce::Max (KeyValuePair< K, V > *vi, int cnt, int root, MPI_Comm comm)
void amrex::ParallelReduce::Max (KeyValuePair< K, V > *vi, int cnt, int root, MPI_Comm comm)
 
template<typename K , typename V >
void amrex::ParallelReduce::Min (KeyValuePair< K, V > &vi, int root, MPI_Comm comm)
void amrex::ParallelReduce::Min (KeyValuePair< K, V > &vi, int root, MPI_Comm comm)
 
template<typename K , typename V >
void amrex::ParallelReduce::Min (KeyValuePair< K, V > *vi, int cnt, int root, MPI_Comm comm)
void amrex::ParallelReduce::Min (KeyValuePair< K, V > *vi, int cnt, int root, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelReduce::Max (T &v, int root, MPI_Comm comm)
void amrex::ParallelReduce::Max (T &v, int root, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelReduce::Max (T *v, int cnt, int root, MPI_Comm comm)
void amrex::ParallelReduce::Max (T *v, int cnt, int root, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelReduce::Max (Vector< std::reference_wrapper< T > > v, int root, MPI_Comm comm)
void amrex::ParallelReduce::Max (Vector< std::reference_wrapper< T > > v, int root, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelReduce::Min (T &v, int root, MPI_Comm comm)
void amrex::ParallelReduce::Min (T &v, int root, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelReduce::Min (T *v, int cnt, int root, MPI_Comm comm)
void amrex::ParallelReduce::Min (T *v, int cnt, int root, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelReduce::Min (Vector< std::reference_wrapper< T > > v, int root, MPI_Comm comm)
void amrex::ParallelReduce::Min (Vector< std::reference_wrapper< T > > v, int root, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelReduce::Sum (T &v, int root, MPI_Comm comm)
void amrex::ParallelReduce::Sum (T &v, int root, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelReduce::Sum (T *v, int cnt, int root, MPI_Comm comm)
void amrex::ParallelReduce::Sum (T *v, int cnt, int root, MPI_Comm comm)
 
template<typename T >
void amrex::ParallelReduce::Sum (Vector< std::reference_wrapper< T > > v, int root, MPI_Comm comm)
void amrex::ParallelReduce::Sum (Vector< std::reference_wrapper< T > > v, int root, MPI_Comm comm)
 
void amrex::ParallelReduce::Or (bool &v, int root, MPI_Comm comm)
void amrex::ParallelReduce::Or (bool &v, int root, MPI_Comm comm)
 
void amrex::ParallelReduce::And (bool &v, int root, MPI_Comm comm)
void amrex::ParallelReduce::And (bool &v, int root, MPI_Comm comm)
 
diff --git a/amrex/docs_html/doxygen/AMReX__ParallelReduce_8H_source.html b/amrex/docs_html/doxygen/AMReX__ParallelReduce_8H_source.html index affb4bc938..a932a04d48 100644 --- a/amrex/docs_html/doxygen/AMReX__ParallelReduce_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__ParallelReduce_8H_source.html @@ -134,7 +134,7 @@
33  }};
34 
35  template<typename T>
-
36  inline void Reduce (ReduceOp op, T* v, int cnt, int root, MPI_Comm comm)
+
36  inline void Reduce (ReduceOp op, T* v, int cnt, int root, MPI_Comm comm)
37  {
38  auto mpi_op = mpi_ops[static_cast<int>(op)]; // NOLINT
39  if (root == -1) {
@@ -151,13 +151,13 @@
50  }
51 
52  template<typename T>
-
53  inline void Reduce (ReduceOp op, T& v, int root, MPI_Comm comm) {
+
53  inline void Reduce (ReduceOp op, T& v, int root, MPI_Comm comm) {
54  Reduce(op, &v, 1, root, comm);
55  }
56 
57  template<typename T>
58  inline void Reduce (ReduceOp op, Vector<std::reference_wrapper<T> > const & v,
-
59  int root, MPI_Comm comm)
+
59  int root, MPI_Comm comm)
60  {
61  Vector<T> sndrcv(std::begin(v), std::end(v));
62  Reduce(op, sndrcv.data(), v.size(), root, comm);
@@ -167,7 +167,7 @@
66  }
67 
68  template<typename T>
-
69  inline void Gather (const T* v, int cnt, T* vs, int root, MPI_Comm comm)
+
69  inline void Gather (const T* v, int cnt, T* vs, int root, MPI_Comm comm)
70  {
71  auto mpi_type = ParallelDescriptor::Mpi_typemap<T>::type();
72  if (root == -1) {
@@ -185,38 +185,38 @@
84  }
85 
86  template<typename T>
-
87  inline void Gather (const T& v, T * vs, int root, MPI_Comm comm) {
+
87  inline void Gather (const T& v, T * vs, int root, MPI_Comm comm) {
88  Gather(&v, 1, vs, root, comm);
89  }
90 
91 #else
-
92  template<typename T> void Reduce (ReduceOp /*op*/, T* /*v*/, int /*cnt*/, int /*root*/, MPI_Comm /*comm*/) {}
-
93  template<typename T> void Reduce (ReduceOp /*op*/, T& /*v*/, int /*root*/, MPI_Comm /*comm*/) {}
-
94  template<typename T> void Reduce (ReduceOp /*op*/, Vector<std::reference_wrapper<T> > const & /*v*/, int /*root*/, MPI_Comm /*comm*/) {}
+
92  template<typename T> void Reduce (ReduceOp /*op*/, T* /*v*/, int /*cnt*/, int /*root*/, MPI_Comm /*comm*/) {}
+
93  template<typename T> void Reduce (ReduceOp /*op*/, T& /*v*/, int /*root*/, MPI_Comm /*comm*/) {}
+
94  template<typename T> void Reduce (ReduceOp /*op*/, Vector<std::reference_wrapper<T> > const & /*v*/, int /*root*/, MPI_Comm /*comm*/) {}
95 
-
96  template<typename T> void Gather (const T* /*v*/, int /*cnt*/, T* /*vs*/, int /*root*/, MPI_Comm /*comm*/) {}
-
97  template<typename T> void Gather (const T& /*v*/, T * /*vs*/, int /*root*/, MPI_Comm /*comm*/) {}
+
96  template<typename T> void Gather (const T* /*v*/, int /*cnt*/, T* /*vs*/, int /*root*/, MPI_Comm /*comm*/) {}
+
97  template<typename T> void Gather (const T& /*v*/, T * /*vs*/, int /*root*/, MPI_Comm /*comm*/) {}
98 #endif
99 }
100 
101 namespace ParallelAllGather {
102  template<typename T>
-
103  void AllGather (const T* v, int cnt, T* vs, MPI_Comm comm) {
+
103  void AllGather (const T* v, int cnt, T* vs, MPI_Comm comm) {
104  detail::Gather(v, cnt, vs, -1, comm);
105  }
106  template<typename T>
-
107  void AllGather (const T& v, T* vs, MPI_Comm comm) {
+
107  void AllGather (const T& v, T* vs, MPI_Comm comm) {
108  detail::Gather(v, vs, -1, comm);
109  }
110 }
111 
112 namespace ParallelGather {
113  template<typename T>
-
114  void Gather (const T* v, int cnt, T* vs, int root, MPI_Comm comm) {
+
114  void Gather (const T* v, int cnt, T* vs, int root, MPI_Comm comm) {
115  detail::Gather(v, cnt, vs, root, comm);
116  }
117  template<typename T>
-
118  void Gather (const T& v, T* vs, int root, MPI_Comm comm) {
+
118  void Gather (const T& v, T* vs, int root, MPI_Comm comm) {
119  detail::Gather(v, vs, root, comm);
120  }
121 }
@@ -224,7 +224,7 @@
123 namespace ParallelAllReduce {
124 
125  template<typename K, typename V>
-
126  void Max (KeyValuePair<K,V>& vi, MPI_Comm comm) {
+
126  void Max (KeyValuePair<K,V>& vi, MPI_Comm comm) {
127 #ifdef AMREX_USE_MPI
128  using T = KeyValuePair<K,V>;
129  MPI_Allreduce(MPI_IN_PLACE, &vi, 1,
@@ -237,7 +237,7 @@
136  }
137 
138  template<typename K, typename V>
-
139  void Max (KeyValuePair<K,V>* vi, int cnt, MPI_Comm comm) {
+
139  void Max (KeyValuePair<K,V>* vi, int cnt, MPI_Comm comm) {
140 #ifdef AMREX_USE_MPI
141  using T = KeyValuePair<K,V>;
142  MPI_Allreduce(MPI_IN_PLACE, vi, cnt,
@@ -250,7 +250,7 @@
149  }
150 
151  template<typename K, typename V>
-
152  void Min (KeyValuePair<K,V>& vi, MPI_Comm comm) {
+
152  void Min (KeyValuePair<K,V>& vi, MPI_Comm comm) {
153 #ifdef AMREX_USE_MPI
154  using T = KeyValuePair<K,V>;
155  MPI_Allreduce(MPI_IN_PLACE, &vi, 1,
@@ -263,7 +263,7 @@
162  }
163 
164  template<typename K, typename V>
-
165  void Min (KeyValuePair<K,V>* vi, int cnt, MPI_Comm comm) {
+
165  void Min (KeyValuePair<K,V>* vi, int cnt, MPI_Comm comm) {
166 #ifdef AMREX_USE_MPI
167  using T = KeyValuePair<K,V>;
168  MPI_Allreduce(MPI_IN_PLACE, vi, cnt,
@@ -276,51 +276,51 @@
175  }
176 
177  template<typename T>
-
178  void Max (T& v, MPI_Comm comm) {
+
178  void Max (T& v, MPI_Comm comm) {
179  detail::Reduce(detail::ReduceOp::max, v, -1, comm);
180  }
181  template<typename T>
-
182  void Max (T* v, int cnt, MPI_Comm comm) {
+
182  void Max (T* v, int cnt, MPI_Comm comm) {
183  detail::Reduce(detail::ReduceOp::max, v, cnt, -1, comm);
184  }
185  template<typename T>
-
186  void Max (Vector<std::reference_wrapper<T> > v, MPI_Comm comm) {
+
186  void Max (Vector<std::reference_wrapper<T> > v, MPI_Comm comm) {
187  detail::Reduce<T>(detail::ReduceOp::max, v, -1, comm);
188  }
189 
190  template<typename T>
-
191  void Min (T& v, MPI_Comm comm) {
+
191  void Min (T& v, MPI_Comm comm) {
192  detail::Reduce(detail::ReduceOp::min, v, -1, comm);
193  }
194  template<typename T>
-
195  void Min (T* v, int cnt, MPI_Comm comm) {
+
195  void Min (T* v, int cnt, MPI_Comm comm) {
196  detail::Reduce(detail::ReduceOp::min, v, cnt, -1, comm);
197  }
198  template<typename T>
-
199  void Min (Vector<std::reference_wrapper<T> > v, MPI_Comm comm) {
+
199  void Min (Vector<std::reference_wrapper<T> > v, MPI_Comm comm) {
200  detail::Reduce<T>(detail::ReduceOp::min, v, -1, comm);
201  }
202 
203  template<typename T>
-
204  void Sum (T& v, MPI_Comm comm) {
+
204  void Sum (T& v, MPI_Comm comm) {
205  detail::Reduce(detail::ReduceOp::sum, v, -1, comm);
206  }
207  template<typename T>
-
208  void Sum (T* v, int cnt, MPI_Comm comm) {
+
208  void Sum (T* v, int cnt, MPI_Comm comm) {
209  detail::Reduce(detail::ReduceOp::sum, v, cnt, -1, comm);
210  }
211  template<typename T>
-
212  void Sum (Vector<std::reference_wrapper<T> > v, MPI_Comm comm) {
+
212  void Sum (Vector<std::reference_wrapper<T> > v, MPI_Comm comm) {
213  detail::Reduce<T>(detail::ReduceOp::sum, v, -1, comm);
214  }
215 
-
216  inline void Or (bool & v, MPI_Comm comm) {
+
216  inline void Or (bool & v, MPI_Comm comm) {
217  auto iv = static_cast<int>(v);
218  detail::Reduce(detail::ReduceOp::lor, iv, -1, comm);
219  v = static_cast<bool>(iv);
220  }
221 
-
222  inline void And (bool & v, MPI_Comm comm) {
+
222  inline void And (bool & v, MPI_Comm comm) {
223  auto iv = static_cast<int>(v);
224  detail::Reduce(detail::ReduceOp::land, iv, -1, comm);
225  v = static_cast<bool>(iv);
@@ -330,7 +330,7 @@
229 namespace ParallelReduce {
230 
231  template<typename K, typename V>
-
232  void Max (KeyValuePair<K,V>& vi, int root, MPI_Comm comm) {
+
232  void Max (KeyValuePair<K,V>& vi, int root, MPI_Comm comm) {
233 #ifdef AMREX_USE_MPI
234  auto tmp = vi;
235  using T = KeyValuePair<K,V>;
@@ -345,7 +345,7 @@
244  }
245 
246  template<typename K, typename V>
-
247  void Max (KeyValuePair<K,V>* vi, int cnt, int root, MPI_Comm comm) {
+
247  void Max (KeyValuePair<K,V>* vi, int cnt, int root, MPI_Comm comm) {
248 #ifdef AMREX_USE_MPI
249  const auto *sendbuf = (ParallelDescriptor::MyProc(comm) == root) ?
250  (void const*)(MPI_IN_PLACE) : (void const*)vi;
@@ -361,7 +361,7 @@
260  }
261 
262  template<typename K, typename V>
-
263  void Min (KeyValuePair<K,V>& vi, int root, MPI_Comm comm) {
+
263  void Min (KeyValuePair<K,V>& vi, int root, MPI_Comm comm) {
264 #ifdef AMREX_USE_MPI
265  auto tmp = vi;
266  using T = KeyValuePair<K,V>;
@@ -376,7 +376,7 @@
275  }
276 
277  template<typename K, typename V>
-
278  void Min (KeyValuePair<K,V>* vi, int cnt, int root, MPI_Comm comm) {
+
278  void Min (KeyValuePair<K,V>* vi, int cnt, int root, MPI_Comm comm) {
279 #ifdef AMREX_USE_MPI
280  const auto *sendbuf = (ParallelDescriptor::MyProc(comm) == root) ?
281  (void const*)(MPI_IN_PLACE) : (void const*)vi;
@@ -392,51 +392,51 @@
291  }
292 
293  template<typename T>
-
294  void Max (T& v, int root, MPI_Comm comm) {
+
294  void Max (T& v, int root, MPI_Comm comm) {
295  detail::Reduce(detail::ReduceOp::max, v, root, comm);
296  }
297  template<typename T>
-
298  void Max (T* v, int cnt, int root, MPI_Comm comm) {
+
298  void Max (T* v, int cnt, int root, MPI_Comm comm) {
299  detail::Reduce(detail::ReduceOp::max, v, cnt, root, comm);
300  }
301  template<typename T>
-
302  void Max (Vector<std::reference_wrapper<T> > v, int root, MPI_Comm comm) {
+
302  void Max (Vector<std::reference_wrapper<T> > v, int root, MPI_Comm comm) {
303  detail::Reduce<T>(detail::ReduceOp::max, v, root, comm);
304  }
305 
306  template<typename T>
-
307  void Min (T& v, int root, MPI_Comm comm) {
+
307  void Min (T& v, int root, MPI_Comm comm) {
308  detail::Reduce(detail::ReduceOp::min, v, root, comm);
309  }
310  template<typename T>
-
311  void Min (T* v, int cnt, int root, MPI_Comm comm) {
+
311  void Min (T* v, int cnt, int root, MPI_Comm comm) {
312  detail::Reduce(detail::ReduceOp::min, v, cnt, root, comm);
313  }
314  template<typename T>
-
315  void Min (Vector<std::reference_wrapper<T> > v, int root, MPI_Comm comm) {
+
315  void Min (Vector<std::reference_wrapper<T> > v, int root, MPI_Comm comm) {
316  detail::Reduce<T>(detail::ReduceOp::min, v, root, comm);
317  }
318 
319  template<typename T>
-
320  void Sum (T& v, int root, MPI_Comm comm) {
+
320  void Sum (T& v, int root, MPI_Comm comm) {
321  detail::Reduce(detail::ReduceOp::sum, v, root, comm);
322  }
323  template<typename T>
-
324  void Sum (T* v, int cnt, int root, MPI_Comm comm) {
+
324  void Sum (T* v, int cnt, int root, MPI_Comm comm) {
325  detail::Reduce(detail::ReduceOp::sum, v, cnt, root, comm);
326  }
327  template<typename T>
-
328  void Sum (Vector<std::reference_wrapper<T> > v, int root, MPI_Comm comm) {
+
328  void Sum (Vector<std::reference_wrapper<T> > v, int root, MPI_Comm comm) {
329  detail::Reduce<T>(detail::ReduceOp::sum, v, root, comm);
330  }
331 
-
332  inline void Or (bool & v, int root, MPI_Comm comm) {
+
332  inline void Or (bool & v, int root, MPI_Comm comm) {
333  auto iv = static_cast<int>(v);
334  detail::Reduce(detail::ReduceOp::lor, iv, root, comm);
335  v = static_cast<bool>(iv);
336  }
337 
-
338  inline void And (bool & v, int root, MPI_Comm comm) {
+
338  inline void And (bool & v, int root, MPI_Comm comm) {
339  auto iv = static_cast<int>(v);
340  detail::Reduce(detail::ReduceOp::land, iv, root, comm);
341  v = static_cast<bool>(iv);
@@ -452,7 +452,7 @@
AMReX_ParallelDescriptor.H
AMReX_Print.H
AMReX_Vector.H
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
amrex::Vector
This class is a thin wrapper around std::vector. Unlike vector, Vector::operator[] provides bound che...
Definition: AMReX_Vector.H:28
amrex::ParallelAllGather::AllGather
void AllGather(const T *v, int cnt, T *vs, MPI_Comm comm)
Definition: AMReX_ParallelReduce.H:103
amrex::ParallelAllReduce::Or
void Or(bool &v, MPI_Comm comm)
Definition: AMReX_ParallelReduce.H:216
diff --git a/amrex/docs_html/doxygen/AMReX__ParticleArray_8H_source.html b/amrex/docs_html/doxygen/AMReX__ParticleArray_8H_source.html index f3810464cb..d8662f3a00 100644 --- a/amrex/docs_html/doxygen/AMReX__ParticleArray_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__ParticleArray_8H_source.html @@ -133,7 +133,7 @@
42 template <class T>
43 class ref_wrapper {
44 public:
-
45  typedef T type;
+
45  using type = T;
46 
47  AMREX_GPU_HOST_DEVICE
48  ref_wrapper(T& ref) noexcept : _ptr(&ref) {}
@@ -360,9 +360,9 @@
amrex::ref_wrapper::ref_wrapper
ref_wrapper(const ref_wrapper &) noexcept=default
amrex::ref_wrapper::~ref_wrapper
~ref_wrapper()=default
amrex::ref_wrapper::ref_wrapper
ref_wrapper(T &&)=delete
+
amrex::ref_wrapper::type
T type
Definition: AMReX_ParticleArray.H:45
amrex::ref_wrapper::_ptr
T * _ptr
Definition: AMReX_ParticleArray.H:68
amrex::ref_wrapper::ref_wrapper
AMREX_GPU_HOST_DEVICE ref_wrapper(T &ref) noexcept
Definition: AMReX_ParticleArray.H:48
-
amrex::ref_wrapper::type
T type
Definition: AMReX_ParticleArray.H:45
amrex::Gpu::range_detail::size
AMREX_GPU_HOST_DEVICE Long size(T const &b) noexcept
integer version
Definition: AMReX_GpuRange.H:25
amrex::detail::get_impl
constexpr AMREX_GPU_HOST_DEVICE GpuTupleElement< I, GpuTuple< Ts... > >::type & get_impl(detail::gpu_tuple_element< I, typename GpuTupleElement< I, GpuTuple< Ts... > >::type > &te) noexcept
Definition: AMReX_Tuple.H:146
amrex
Definition: AMReX_Amr.cpp:49
diff --git a/amrex/docs_html/doxygen/AMReX__ParticleCommunication_8H_source.html b/amrex/docs_html/doxygen/AMReX__ParticleCommunication_8H_source.html index 640fee27e4..f80564fff1 100644 --- a/amrex/docs_html/doxygen/AMReX__ParticleCommunication_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__ParticleCommunication_8H_source.html @@ -750,7 +750,7 @@
amrex::Gpu::range_detail::size
AMREX_GPU_HOST_DEVICE Long size(T const &b) noexcept
integer version
Definition: AMReX_GpuRange.H:25
amrex::Gpu::copy
void copy(HostToDevice, InIter begin, InIter end, OutIter result) noexcept
A host-to-device copy routine. Note this is just a wrapper around memcpy, so it assumes contiguous st...
Definition: AMReX_GpuContainers.H:122
amrex::Gpu::copyAsync
void copyAsync(HostToDevice, InIter begin, InIter end, OutIter result) noexcept
A host-to-device copy routine. Note this is just a wrapper around memcpy, so it assumes contiguous st...
Definition: AMReX_GpuContainers.H:234
-
amrex::Gpu::exclusive_scan
OutIter exclusive_scan(InIter begin, InIter end, OutIter result)
Definition: AMReX_Scan.H:1358
+
amrex::Gpu::exclusive_scan
OutIter exclusive_scan(InIter begin, InIter end, OutIter result)
Definition: AMReX_Scan.H:1357
amrex::Gpu::deviceToHost
static constexpr DeviceToHost deviceToHost
Definition: AMReX_GpuContainers.H:100
amrex::Gpu::hostToDevice
static constexpr HostToDevice hostToDevice
Definition: AMReX_GpuContainers.H:99
amrex::Gpu::streamSynchronize
void streamSynchronize() noexcept
Definition: AMReX_GpuDevice.H:239
diff --git a/amrex/docs_html/doxygen/AMReX__ParticleContainerI_8H_source.html b/amrex/docs_html/doxygen/AMReX__ParticleContainerI_8H_source.html index 3b662c3fdf..96e50a9d2c 100644 --- a/amrex/docs_html/doxygen/AMReX__ParticleContainerI_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__ParticleContainerI_8H_source.html @@ -2723,7 +2723,7 @@
amrex::ParallelDescriptor::SeqNum
int SeqNum() noexcept
Returns sequential message sequence numbers, usually used as tags for send/recv.
Definition: AMReX_ParallelDescriptor.H:594
amrex::ParallelDescriptor::GatherLayoutDataToVector
void GatherLayoutDataToVector(const LayoutData< T > &sendbuf, Vector< T > &recvbuf, int root)
Gather LayoutData values to a vector on root.
Definition: AMReX_ParallelDescriptor.H:1193
amrex::ParallelDescriptor::Arecv
Message Arecv(T *, size_t n, int pid, int tag)
Definition: AMReX_ParallelDescriptor.H:1112
-
amrex::Scan::ExclusiveSum
T ExclusiveSum(N n, T const *in, T *out, RetSum a_ret_sum=retSum)
Definition: AMReX_Scan.H:1210
+
amrex::Scan::ExclusiveSum
T ExclusiveSum(N n, T const *in, T *out, RetSum a_ret_sum=retSum)
Definition: AMReX_Scan.H:1209
amrex::Scan::retSum
static constexpr RetSum retSum
Definition: AMReX_Scan.H:29
amrex::SundialsUserFun::f
static int f(realtype t, N_Vector y_data, N_Vector y_rhs, void *user_data)
Definition: AMReX_SundialsIntegrator.H:40
amrex::detail::max
@ max
Definition: AMReX_ParallelReduce.H:17
diff --git a/amrex/docs_html/doxygen/AMReX__ParticleContainer_8H_source.html b/amrex/docs_html/doxygen/AMReX__ParticleContainer_8H_source.html index 25dfbf9853..07b743bc5b 100644 --- a/amrex/docs_html/doxygen/AMReX__ParticleContainer_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__ParticleContainer_8H_source.html @@ -173,22 +173,22 @@
72 #endif
77 struct ParticleCommData
78 {
-
79  typedef ParticleReal RealType;
-
80  int m_lev;
-
81  int m_grid;
-
82  IntVect m_cell;
-
83  RealType m_data[1 + AMREX_SPACEDIM];
+
79  using RealType = ParticleReal;
+
80  int m_lev;
+
81  int m_grid;
+
82  IntVect m_cell;
+
83  RealType m_data[1 + AMREX_SPACEDIM];
84 };
85 
89 struct ParticleLocData
90 {
-
91  int m_lev = -1;
-
92  int m_grid = -1;
-
93  int m_tile = -1;
-
94  IntVect m_cell {AMREX_D_DECL(-1,-1,-1)};
-
95  Box m_gridbox;
-
96  Box m_tilebox;
-
97  Box m_grown_gridbox;
+
91  int m_lev = -1;
+
92  int m_grid = -1;
+
93  int m_tile = -1;
+
94  IntVect m_cell {AMREX_D_DECL(-1,-1,-1)};
+
95  Box m_gridbox;
+
96  Box m_tilebox;
+
97  Box m_grown_gridbox;
98 };
99 
113 template<int NStructReal, int NStructInt, int NArrayReal, int NArrayInt>
@@ -988,10 +988,10 @@
amrex
Definition: AMReX_Amr.cpp:49
amrex::verbose
int verbose
Definition: AMReX_DistributionMapping.cpp:36
amrex::ParticleCommData
A struct used for communicating particle data across processes during multi-level operations.
Definition: AMReX_ParticleContainer.H:78
+
amrex::ParticleCommData::RealType
ParticleReal RealType
Definition: AMReX_ParticleContainer.H:79
amrex::ParticleCommData::m_grid
int m_grid
Definition: AMReX_ParticleContainer.H:81
amrex::ParticleCommData::m_data
RealType m_data[1+AMREX_SPACEDIM]
Definition: AMReX_ParticleContainer.H:83
amrex::ParticleCommData::m_cell
IntVect m_cell
Definition: AMReX_ParticleContainer.H:82
-
amrex::ParticleCommData::RealType
ParticleReal RealType
Definition: AMReX_ParticleContainer.H:79
amrex::ParticleCommData::m_lev
int m_lev
Definition: AMReX_ParticleContainer.H:80
amrex::ParticleInitType
A struct used to pass initial data into the various Init methods. This struct is used to pass initial...
Definition: AMReX_ParticleContainer.H:115
amrex::ParticleInitType::int_struct_data
std::array< int, NStructInt > int_struct_data
Definition: AMReX_ParticleContainer.H:117
diff --git a/amrex/docs_html/doxygen/AMReX__ParticleTransformation_8H_source.html b/amrex/docs_html/doxygen/AMReX__ParticleTransformation_8H_source.html index 40897dfdaf..e77263b4b1 100644 --- a/amrex/docs_html/doxygen/AMReX__ParticleTransformation_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__ParticleTransformation_8H_source.html @@ -461,7 +461,7 @@
amrex::PODVector::begin
iterator begin() noexcept
Definition: AMReX_PODVector.H:557
amrex::PODVector::dataPtr
T * dataPtr() noexcept
Definition: AMReX_PODVector.H:553
amrex::Gpu::copyAsync
void copyAsync(HostToDevice, InIter begin, InIter end, OutIter result) noexcept
A host-to-device copy routine. Note this is just a wrapper around memcpy, so it assumes contiguous st...
Definition: AMReX_GpuContainers.H:234
-
amrex::Gpu::exclusive_scan
OutIter exclusive_scan(InIter begin, InIter end, OutIter result)
Definition: AMReX_Scan.H:1358
+
amrex::Gpu::exclusive_scan
OutIter exclusive_scan(InIter begin, InIter end, OutIter result)
Definition: AMReX_Scan.H:1357
amrex::Gpu::deviceToHost
static constexpr DeviceToHost deviceToHost
Definition: AMReX_GpuContainers.H:100
amrex::Gpu::streamSynchronize
void streamSynchronize() noexcept
Definition: AMReX_GpuDevice.H:239
amrex::SundialsUserFun::f
static int f(realtype t, N_Vector y_data, N_Vector y_rhs, void *user_data)
Definition: AMReX_SundialsIntegrator.H:40
diff --git a/amrex/docs_html/doxygen/AMReX__PhysBCFunct_8H.html b/amrex/docs_html/doxygen/AMReX__PhysBCFunct_8H.html index 35ccaaf236..2558ab5cda 100644 --- a/amrex/docs_html/doxygen/AMReX__PhysBCFunct_8H.html +++ b/amrex/docs_html/doxygen/AMReX__PhysBCFunct_8H.html @@ -137,12 +137,12 @@ - - - - - - + + + + + +

Typedefs

typedef void(* amrex::BndryFuncDefault) (Real *data, AMREX_ARLIM_P(lo), AMREX_ARLIM_P(hi), const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)
 
typedef void(* amrex::BndryFunc3DDefault) (Real *data, const int *lo, const int *hi, const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)
 
typedef void(* amrex::UserFillBox) (Box const &bx, Array4< Real > const &dest, int dcomp, int numcomp, GeometryData const &geom, Real time, const BCRec *bcr, int bcomp, int orig_comp)
 
using amrex::BndryFuncDefault = void(*)(Real *data, AMREX_ARLIM_P(lo), AMREX_ARLIM_P(hi), const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)
 
using amrex::BndryFunc3DDefault = void(*)(Real *data, const int *lo, const int *hi, const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)
 
using amrex::UserFillBox = void(*)(Box const &bx, Array4< Real > const &dest, int dcomp, int numcomp, GeometryData const &geom, Real time, const BCRec *bcr, int bcomp, int orig_comp)
 
diff --git a/amrex/docs_html/doxygen/AMReX__PhysBCFunct_8H.js b/amrex/docs_html/doxygen/AMReX__PhysBCFunct_8H.js index b1ff6de4ff..04c33a3de1 100644 --- a/amrex/docs_html/doxygen/AMReX__PhysBCFunct_8H.js +++ b/amrex/docs_html/doxygen/AMReX__PhysBCFunct_8H.js @@ -5,7 +5,7 @@ var AMReX__PhysBCFunct_8H = [ "CpuBndryFuncFab", "classamrex_1_1CpuBndryFuncFab.html", "classamrex_1_1CpuBndryFuncFab" ], [ "PhysBCFunctNoOp", "classamrex_1_1PhysBCFunctNoOp.html", "classamrex_1_1PhysBCFunctNoOp" ], [ "PhysBCFunct", "classamrex_1_1PhysBCFunct.html", "classamrex_1_1PhysBCFunct" ], - [ "BndryFunc3DDefault", "AMReX__PhysBCFunct_8H.html#ab0cdf132a72bb586fa96bbdc53a19149", null ], - [ "BndryFuncDefault", "AMReX__PhysBCFunct_8H.html#a395b6c263aecc344bf7648fe2d8d75cf", null ], - [ "UserFillBox", "AMReX__PhysBCFunct_8H.html#a98089f12c4b65ccc7c3eee58254f9184", null ] + [ "BndryFunc3DDefault", "AMReX__PhysBCFunct_8H.html#a5e4a902f699c144a9823d30d6dbb7236", null ], + [ "BndryFuncDefault", "AMReX__PhysBCFunct_8H.html#a8b7e34da6fddd1312471a5962bf774cd", null ], + [ "UserFillBox", "AMReX__PhysBCFunct_8H.html#a88781af4a5d3f8271de2b3129cc49393", null ] ]; \ No newline at end of file diff --git a/amrex/docs_html/doxygen/AMReX__PhysBCFunct_8H_source.html b/amrex/docs_html/doxygen/AMReX__PhysBCFunct_8H_source.html index 5e8ed587a0..850f69a1c1 100644 --- a/amrex/docs_html/doxygen/AMReX__PhysBCFunct_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__PhysBCFunct_8H_source.html @@ -116,17 +116,17 @@
15 
16 extern "C"
17 {
-
18  typedef void (*BndryFuncDefault)(Real* data, AMREX_ARLIM_P(lo), AMREX_ARLIM_P(hi),
-
19  const int* dom_lo, const int* dom_hi,
-
20  const Real* dx, const Real* grd_lo,
-
21  const Real* time, const int* bc);
-
22  typedef void (*BndryFunc3DDefault)(Real* data, const int* lo, const int* hi,
-
23  const int* dom_lo, const int* dom_hi,
-
24  const Real* dx, const Real* grd_lo,
-
25  const Real* time, const int* bc);
+
18  using BndryFuncDefault = void (*)(Real* data, AMREX_ARLIM_P(lo), AMREX_ARLIM_P(hi),
+
19  const int* dom_lo, const int* dom_hi,
+
20  const Real* dx, const Real* grd_lo,
+
21  const Real* time, const int* bc);
+
22  using BndryFunc3DDefault = void (*)(Real* data, const int* lo, const int* hi,
+
23  const int* dom_lo, const int* dom_hi,
+
24  const Real* dx, const Real* grd_lo,
+
25  const Real* time, const int* bc);
26 }
27 
-
28 typedef void (*UserFillBox) (Box const& bx, Array4<Real> const& dest,
+
28 using UserFillBox = void (*)(Box const& bx, Array4<Real> const& dest,
29  int dcomp, int numcomp,
30  GeometryData const& geom, Real time,
31  const BCRec* bcr, int bcomp,
@@ -136,8 +136,8 @@
36 {
37 public:
38  BndryFuncArray () noexcept = default;
-
39  BndryFuncArray (BndryFuncDefault inFunc) noexcept : m_func(inFunc) {}
-
40  BndryFuncArray (BndryFunc3DDefault inFunc) noexcept : m_func3D(inFunc) {}
+
39  BndryFuncArray (BndryFuncDefault inFunc) noexcept : m_func(inFunc) {}
+
40  BndryFuncArray (BndryFunc3DDefault inFunc) noexcept : m_func3D(inFunc) {}
41 
42  void operator() (Box const& bx, FArrayBox& dest,
43  int dcomp, int numcomp,
@@ -149,8 +149,8 @@
49 // void setRunOnGPU (bool b) noexcept { m_run_on_gpu = b; }
50 
51 protected:
-
52  BndryFuncDefault m_func = nullptr;
-
53  BndryFunc3DDefault m_func3D = nullptr;
+
52  BndryFuncDefault m_func = nullptr;
+
53  BndryFunc3DDefault m_func3D = nullptr;
54  bool m_run_on_gpu = false;
55 };
56 
@@ -189,7 +189,7 @@
95 {
96 public:
97  CpuBndryFuncFab () = default;
-
98  CpuBndryFuncFab (UserFillBox a_f) : f_user(a_f) {}
+
98  CpuBndryFuncFab (UserFillBox a_f) : f_user(a_f) {}
99 
100  void operator() (Box const& bx, FArrayBox& dest,
101  int dcomp, int numcomp,
@@ -198,7 +198,7 @@
104  int orig_comp);
105 
106 protected:
-
107  UserFillBox f_user = nullptr;
+
107  UserFillBox f_user = nullptr;
108 };
109 
110 class PhysBCFunctNoOp
@@ -793,13 +793,13 @@
amrex
Definition: AMReX_Amr.cpp:49
amrex::For
void For(T n, L &&f) noexcept
Definition: AMReX_GpuLaunchFunctsC.H:71
amrex::convert
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box convert(const Box &b, const IntVect &typ) noexcept
Returns a Box with different type.
Definition: AMReX_Box.H:1349
-
amrex::BndryFuncDefault
void(* BndryFuncDefault)(Real *data, AMREX_ARLIM_P(lo), AMREX_ARLIM_P(hi), const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)
Definition: AMReX_PhysBCFunct.H:18
+
amrex::BndryFunc3DDefault
void(*)(Real *data, const int *lo, const int *hi, const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc) BndryFunc3DDefault
Definition: AMReX_PhysBCFunct.H:25
amrex::adjCellHi
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box adjCellHi(const Box &b, int dir, int len=1) noexcept
Similar to adjCellLo but builds an adjacent Box on the high end.
Definition: AMReX_Box.H:1517
amrex::ParallelFor
std::enable_if_t< std::is_integral< T >::value > ParallelFor(TypeList< CTOs... >, std::array< int, sizeof...(CTOs)> const &runtime_options, T N, F &&f)
Definition: AMReX_CTOParallelForImpl.H:97
+
amrex::UserFillBox
void(*)(Box const &bx, Array4< Real > const &dest, int dcomp, int numcomp, GeometryData const &geom, Real time, const BCRec *bcr, int bcomp, int orig_comp) UserFillBox
Definition: AMReX_PhysBCFunct.H:32
+
amrex::BndryFuncDefault
void(*)(Real *data, AMREX_ARLIM_P(lo), AMREX_ARLIM_P(hi), const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc) BndryFuncDefault
Definition: AMReX_PhysBCFunct.H:21
amrex::ignore_unused
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void ignore_unused(const Ts &...)
This shuts up the compiler about unused variables.
Definition: AMReX.H:107
-
amrex::UserFillBox
void(* UserFillBox)(Box const &bx, Array4< Real > const &dest, int dcomp, int numcomp, GeometryData const &geom, Real time, const BCRec *bcr, int bcomp, int orig_comp)
Definition: AMReX_PhysBCFunct.H:28
amrex::adjCellLo
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box adjCellLo(const Box &b, int dir, int len=1) noexcept
Returns the cell centered Box of length len adjacent to b on the low end along the coordinate directi...
Definition: AMReX_Box.H:1497
-
amrex::BndryFunc3DDefault
void(* BndryFunc3DDefault)(Real *data, const int *lo, const int *hi, const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)
Definition: AMReX_PhysBCFunct.H:22
amrex::setBC
void setBC(const Box &bx, const Box &domain, int src_comp, int dest_comp, int ncomp, const Vector< BCRec > &bc_dom, Vector< BCRec > &bcr) noexcept
Function for setting array of BCs.
Definition: AMReX_BCRec.cpp:8
amrex::getCell
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect getCell(Box const *boxes, int nboxes, Long icell) noexcept
Definition: AMReX_Box.H:1796
amrex::Array
std::array< T, N > Array
Definition: AMReX_Array.H:23
diff --git a/amrex/docs_html/doxygen/AMReX__Print_8H_source.html b/amrex/docs_html/doxygen/AMReX__Print_8H_source.html index 2fd8c51127..658eeb48f6 100644 --- a/amrex/docs_html/doxygen/AMReX__Print_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__Print_8H_source.html @@ -149,7 +149,7 @@
57  , os(os_)
58  { ss.precision(os.precision()); }
59 
-
64  Print (int rank_, MPI_Comm comm_, std::ostream& os_ = amrex::OutStream())
+
64  Print (int rank_, MPI_Comm comm_, std::ostream& os_ = amrex::OutStream())
65  : rank(rank_)
66  , comm(comm_)
67  , os(os_)
@@ -194,7 +194,7 @@
106 
107  private:
108  int rank;
-
109  MPI_Comm comm;
+
109  MPI_Comm comm;
110  std::ostream &os;
111  std::ostringstream ss;
112  };
@@ -227,7 +227,7 @@
142  , comm(ParallelContext::CommunicatorSub())
143  { Initialize(); }
144 
-
145  PrintToFile (std::string file_name_, int rank_, MPI_Comm comm_)
+
145  PrintToFile (std::string file_name_, int rank_, MPI_Comm comm_)
146  : file_name(std::move(file_name_))
147  , rank(rank_)
148  , comm(comm_)
@@ -284,7 +284,7 @@
199 
200  std::string file_name;
201  int rank;
-
202  MPI_Comm comm;
+
202  MPI_Comm comm;
203  std::ofstream ofs;
204  std::ostringstream ss;
205  };
@@ -306,7 +306,7 @@
AMReX_ParallelContext.H
AMReX_ParallelDescriptor.H
AMREX_D_TERM
#define AMREX_D_TERM(a, b, c)
Definition: AMReX_SPACE.H:129
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
amrex::AllPrintToFile
Print on all processors of the default communicator.
Definition: AMReX_Print.H:210
amrex::AllPrintToFile::AllPrintToFile
AllPrintToFile(std::string file_name_)
Example: AllPrint() << " x = " << x << std::endl;.
Definition: AMReX_Print.H:213
amrex::AllPrint
Print on all processors of the default communicator.
Definition: AMReX_Print.H:117
diff --git a/amrex/docs_html/doxygen/AMReX__REAL_8H_source.html b/amrex/docs_html/doxygen/AMReX__REAL_8H_source.html index 2c16aebc42..f80ba879c6 100644 --- a/amrex/docs_html/doxygen/AMReX__REAL_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__REAL_8H_source.html @@ -147,22 +147,22 @@
46 */
47 
48 #ifdef BL_USE_FLOAT
-
49 typedef float amrex_real;
+
49 typedef float amrex_real; // NOLINT(modernize-use-using)
50 // We need to define these to get around a CUDA 9.2 bug that breaks std::numeric_limits
51 #define AMREX_REAL_MIN FLT_MIN
52 #define AMREX_REAL_MAX FLT_MAX
53 #define AMREX_REAL_LOWEST (-FLT_MAX)
54 #else
-
55 typedef double amrex_real;
+
55 typedef double amrex_real; // NOLINT(modernize-use-using)
56 #define AMREX_REAL_MIN DBL_MIN
57 #define AMREX_REAL_MAX DBL_MAX
58 #define AMREX_REAL_LOWEST (-DBL_MAX)
59 #endif
60 
61 #ifdef AMREX_SINGLE_PRECISION_PARTICLES
-
62 typedef float amrex_particle_real;
+
62 typedef float amrex_particle_real; // NOLINT(modernize-use-using)
63 #else
-
64 typedef double amrex_particle_real;
+
64 typedef double amrex_particle_real; // NOLINT(modernize-use-using)
65 #endif
66 
67 #ifdef __cplusplus
diff --git a/amrex/docs_html/doxygen/AMReX__RKIntegrator_8H_source.html b/amrex/docs_html/doxygen/AMReX__RKIntegrator_8H_source.html index e4e3f66491..6d43382934 100644 --- a/amrex/docs_html/doxygen/AMReX__RKIntegrator_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__RKIntegrator_8H_source.html @@ -122,7 +122,7 @@
21 class RKIntegrator : public IntegratorBase<T>
22 {
23 private:
-
24  typedef IntegratorBase<T> BaseT;
+
24  using BaseT = IntegratorBase<T>;
25 
26  ButcherTableauTypes tableau_type;
27  int number_nodes;
@@ -394,7 +394,6 @@
amrex::RKIntegrator::use_adaptive_timestep
bool use_adaptive_timestep
Definition: AMReX_RKIntegrator.H:28
amrex::RKIntegrator::time_interpolate
void time_interpolate(const T &, const T &S_old, amrex::Real timestep_fraction, T &data) override
Definition: AMReX_RKIntegrator.H:225
amrex::RKIntegrator::extended_weights
amrex::Vector< amrex::Real > extended_weights
Definition: AMReX_RKIntegrator.H:32
-
amrex::RKIntegrator::BaseT
IntegratorBase< T > BaseT
Definition: AMReX_RKIntegrator.H:24
amrex::RKIntegrator::tableau_type
ButcherTableauTypes tableau_type
Definition: AMReX_RKIntegrator.H:26
amrex::RKIntegrator::nodes
amrex::Vector< amrex::Real > nodes
Definition: AMReX_RKIntegrator.H:33
amrex::RKIntegrator::RKIntegrator
RKIntegrator(const T &S_data)
Definition: AMReX_RKIntegrator.H:158
diff --git a/amrex/docs_html/doxygen/AMReX__Scan_8H_source.html b/amrex/docs_html/doxygen/AMReX__Scan_8H_source.html index d9f1cd40ce..c1e27a61ff 100644 --- a/amrex/docs_html/doxygen/AMReX__Scan_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__Scan_8H_source.html @@ -508,8 +508,8 @@
407  std::size_t sm = sizeof(T) * (Gpu::Device::warp_size + nwarps_per_block) + sizeof(int);
408  auto stream = Gpu::gpuStream();
409 
-
410  typedef typename std::conditional<sizeof(detail::STVA<T>) <= 8,
-
411  detail::BlockStatus<T,true>, detail::BlockStatus<T,false> >::type BlockStatusT;
+
410  using BlockStatusT = typename std::conditional<sizeof(detail::STVA<T>) <= 8,
+
411  detail::BlockStatus<T,true>, detail::BlockStatus<T,false> >::type;
412 
413  std::size_t nbytes_blockstatus = Arena::align(sizeof(BlockStatusT)*nblocks);
414  std::size_t nbytes_blockid = Arena::align(sizeof(unsigned int));
@@ -739,8 +739,8 @@
638  std::size_t sm = 0;
639  auto stream = Gpu::gpuStream();
640 
-
641  typedef rocprim::detail::lookback_scan_state<T> ScanTileState;
-
642  typedef rocprim::detail::ordered_block_id<unsigned int> OrderedBlockId;
+
641  using ScanTileState = rocprim::detail::lookback_scan_state<T>;
+
642  using OrderedBlockId = rocprim::detail::ordered_block_id<unsigned int>;
643 
644  std::size_t nbytes_tile_state = rocprim::detail::align_size
645  (ScanTileState::get_storage_size(nblocks));
@@ -767,13 +767,13 @@
666  amrex::launch_global<nthreads> <<<nblocks, nthreads, sm, stream>>> (
667  [=] AMREX_GPU_DEVICE () noexcept
668  {
-
669  typedef rocprim::block_load<T, nthreads, nelms_per_thread,
-
670  rocprim::block_load_method::block_load_transpose> BlockLoad;
-
671  typedef rocprim::block_scan<T, nthreads,
-
672  rocprim::block_scan_algorithm::using_warp_scan> BlockScan;
-
673  typedef rocprim::block_exchange<T, nthreads, nelms_per_thread> BlockExchange;
-
674  typedef rocprim::detail::lookback_scan_prefix_op
-
675  <T, rocprim::plus<T>, ScanTileState> LookbackScanPrefixOp;
+
669  using BlockLoad = rocprim::block_load<T, nthreads, nelms_per_thread,
+
670  rocprim::block_load_method::block_load_transpose>;
+
671  using BlockScan = rocprim::block_scan<T, nthreads,
+
672  rocprim::block_scan_algorithm::using_warp_scan>;
+
673  using BlockExchange = rocprim::block_exchange<T, nthreads, nelms_per_thread>;
+
674  using LookbackScanPrefixOp = rocprim::detail::lookback_scan_prefix_op
+
675  <T, rocprim::plus<T>, ScanTileState>;
676 
677  __shared__ struct TempStorage {
678  typename OrderedBlockId::storage_type ordered_bid;
@@ -882,7 +882,7 @@
781  std::size_t sm = 0;
782  auto stream = Gpu::gpuStream();
783 
-
784  typedef cub::ScanTileState<T> ScanTileState;
+
784  using ScanTileState = cub::ScanTileState<T>;
785  std::size_t tile_state_size = 0;
786  ScanTileState::AllocationSize(nblocks, tile_state_size);
787 
@@ -905,585 +905,584 @@
804  amrex::launch_global<nthreads> <<<nblocks, nthreads, sm, stream>>> (
805  [=] AMREX_GPU_DEVICE () noexcept
806  {
-
807  typedef cub::BlockLoad<T, nthreads, nelms_per_thread, cub::BLOCK_LOAD_WARP_TRANSPOSE>
-
808  BlockLoad;
-
809  typedef cub::BlockScan<T, nthreads, cub::BLOCK_SCAN_WARP_SCANS> BlockScan;
-
810  typedef cub::BlockExchange<T, nthreads, nelms_per_thread> BlockExchange;
-
811  typedef cub::TilePrefixCallbackOp<T, cub::Sum, ScanTileState> TilePrefixCallbackOp;
-
812 
-
813  __shared__ union TempStorage
-
814  {
-
815  typename BlockLoad::TempStorage load;
-
816  typename BlockExchange::TempStorage exchange;
-
817  struct ScanStorage {
-
818  typename BlockScan::TempStorage scan;
-
819  typename TilePrefixCallbackOp::TempStorage prefix;
-
820  } scan_storeage;
-
821  } temp_storage;
-
822 
-
823  // Lambda captured tile_state is const. We have to cast the const away.
-
824  auto& scan_tile_state = const_cast<ScanTileState&>(tile_state);
-
825 
-
826  int virtual_block_id = blockIdx.x;
-
827 
-
828  // Each block processes [ibegin,iend).
-
829  N ibegin = nelms_per_block * virtual_block_id;
-
830  N iend = amrex::min(static_cast<N>(ibegin+nelms_per_block), n);
-
831 
-
832  auto input_lambda = [&] (N i) -> T { return fin(i+ibegin); };
-
833  cub::TransformInputIterator<T,decltype(input_lambda),cub::CountingInputIterator<N> >
-
834  input_begin(cub::CountingInputIterator<N>(0), input_lambda);
-
835 
-
836  T data[nelms_per_thread];
-
837  if (static_cast<int>(iend-ibegin) == nelms_per_block) {
-
838  BlockLoad(temp_storage.load).Load(input_begin, data);
-
839  } else {
-
840  BlockLoad(temp_storage.load).Load(input_begin, data, iend-ibegin, 0); // padding with 0
-
841  }
-
842 
-
843  __syncthreads();
-
844 
-
845  constexpr bool is_exclusive = std::is_same<std::decay_t<TYPE>,Type::Exclusive>::value;
-
846 
-
847  if (virtual_block_id == 0) {
-
848  T block_agg;
-
849  AMREX_IF_CONSTEXPR(is_exclusive) {
-
850  BlockScan(temp_storage.scan_storeage.scan).ExclusiveSum(data, data, block_agg);
-
851  } else {
-
852  BlockScan(temp_storage.scan_storeage.scan).InclusiveSum(data, data, block_agg);
-
853  }
-
854  if (threadIdx.x == 0) {
-
855  if (nblocks > 1) {
-
856  scan_tile_state.SetInclusive(0, block_agg);
-
857  } else if (nblocks == 1 && totalsum_p) {
-
858  *totalsum_p = block_agg;
-
859  }
-
860  }
-
861  } else {
-
862  T last = data[nelms_per_thread-1]; // Need this for the total sum in exclusive case
-
863 
-
864  TilePrefixCallbackOp prefix_op(scan_tile_state, temp_storage.scan_storeage.prefix,
-
865  cub::Sum{}, virtual_block_id);
-
866  AMREX_IF_CONSTEXPR(is_exclusive) {
-
867  BlockScan(temp_storage.scan_storeage.scan).ExclusiveSum(data, data, prefix_op);
-
868  } else {
-
869  BlockScan(temp_storage.scan_storeage.scan).InclusiveSum(data, data, prefix_op);
-
870  }
-
871  if (totalsum_p) {
-
872  if (iend == n && threadIdx.x == blockDim.x-1) { // last thread of last block
-
873  T tsum = data[nelms_per_thread-1];
-
874  AMREX_IF_CONSTEXPR(is_exclusive) { tsum += last; }
-
875  *totalsum_p = tsum;
-
876  }
-
877  }
-
878  }
-
879 
-
880  __syncthreads();
-
881 
-
882  BlockExchange(temp_storage.exchange).BlockedToStriped(data);
-
883 
-
884  for (int i = 0; i < nelms_per_thread; ++i) {
-
885  N offset = ibegin + i*blockDim.x + threadIdx.x;
-
886  if (offset < iend) { fout(offset, data[i]); }
-
887  }
-
888  });
-
889 
-
890  Gpu::streamSynchronize();
-
891  AMREX_GPU_ERROR_CHECK();
-
892 
-
893  The_Arena()->free(tile_state_p);
-
894 
-
895  T ret = (a_ret_sum) ? *totalsum_p : T(0);
-
896  if (totalsum_p) { The_Pinned_Arena()->free(totalsum_p); }
-
897 
-
898  return ret;
-
899 }
-
900 
-
901 #else
-
902 
-
903 template <typename T, typename N, typename FIN, typename FOUT, typename TYPE,
-
904  typename M=std::enable_if_t<std::is_integral<N>::value &&
-
905  (std::is_same<std::decay_t<TYPE>,Type::Inclusive>::value ||
-
906  std::is_same<std::decay_t<TYPE>,Type::Exclusive>::value)> >
-
907 T PrefixSum (N n, FIN && fin, FOUT && fout, TYPE, RetSum a_ret_sum = retSum)
-
908 {
-
909  if (n <= 0) return 0;
-
910  constexpr int nwarps_per_block = 4;
-
911  constexpr int nthreads = nwarps_per_block*Gpu::Device::warp_size;
-
912  constexpr int nchunks = 12;
-
913  constexpr int nelms_per_block = nthreads * nchunks;
-
914  AMREX_ALWAYS_ASSERT(static_cast<Long>(n) < static_cast<Long>(std::numeric_limits<int>::max())*nelms_per_block);
-
915  int nblocks = (static_cast<Long>(n) + nelms_per_block - 1) / nelms_per_block;
-
916  std::size_t sm = sizeof(T) * (Gpu::Device::warp_size + nwarps_per_block) + sizeof(int);
-
917  auto stream = Gpu::gpuStream();
-
918 
-
919  typedef typename std::conditional<sizeof(detail::STVA<T>) <= 8,
-
920  detail::BlockStatus<T,true>, detail::BlockStatus<T,false> >::type BlockStatusT;
-
921 
-
922  std::size_t nbytes_blockstatus = Arena::align(sizeof(BlockStatusT)*nblocks);
-
923  std::size_t nbytes_blockid = Arena::align(sizeof(unsigned int));
-
924  std::size_t nbytes_totalsum = Arena::align(sizeof(T));
-
925  auto dp = (char*)(The_Arena()->alloc( nbytes_blockstatus
-
926  + nbytes_blockid
-
927  + nbytes_totalsum));
-
928  BlockStatusT* AMREX_RESTRICT block_status_p = (BlockStatusT*)dp;
-
929  unsigned int* AMREX_RESTRICT virtual_block_id_p = (unsigned int*)(dp + nbytes_blockstatus);
-
930  T* AMREX_RESTRICT totalsum_p = (T*)(dp + nbytes_blockstatus + nbytes_blockid);
-
931 
-
932  amrex::ParallelFor(nblocks, [=] AMREX_GPU_DEVICE (int i) noexcept {
-
933  BlockStatusT& block_status = block_status_p[i];
-
934  block_status.set_status('x');
-
935  if (i == 0) {
-
936  *virtual_block_id_p = 0;
-
937  *totalsum_p = 0;
-
938  }
-
939  });
-
940 
-
941  amrex::launch(nblocks, nthreads, sm, stream,
-
942  [=] AMREX_GPU_DEVICE () noexcept
-
943  {
-
944  int lane = threadIdx.x % Gpu::Device::warp_size;
-
945  int warp = threadIdx.x / Gpu::Device::warp_size;
-
946  int nwarps = blockDim.x / Gpu::Device::warp_size;
-
947 
-
948  amrex::Gpu::SharedMemory<T> gsm;
-
949  T* shared = gsm.dataPtr();
-
950  T* shared2 = shared + Gpu::Device::warp_size;
-
951 
-
952  // First of all, get block virtual id. We must do this to
-
953  // avoid deadlock because CUDA may launch blocks in any order.
-
954  // Anywhere in this function, we should not use blockIdx.
-
955  int virtual_block_id = 0;
-
956  if (gridDim.x > 1) {
-
957  int& virtual_block_id_shared = *((int*)(shared2+nwarps));
-
958  if (threadIdx.x == 0) {
-
959  unsigned int bid = Gpu::Atomic::Add(virtual_block_id_p, 1u);
-
960  virtual_block_id_shared = bid;
-
961  }
-
962  __syncthreads();
-
963  virtual_block_id = virtual_block_id_shared;
-
964  }
-
965 
-
966  // Each block processes [ibegin,iend).
-
967  N ibegin = nelms_per_block * virtual_block_id;
-
968  N iend = amrex::min(static_cast<N>(ibegin+nelms_per_block), n);
-
969  BlockStatusT& block_status = block_status_p[virtual_block_id];
-
970 
-
971  //
-
972  // The overall algorithm is based on "Single-pass Parallel
-
973  // Prefix Scan with Decoupled Look-back" by D. Merrill &
-
974  // M. Garland.
-
975  //
-
976 
-
977  // Each block is responsible for nchunks chunks of data,
-
978  // where each chunk has blockDim.x elements, one for each
-
979  // thread in the block.
-
980  T sum_prev_chunk = 0; // inclusive sum from previous chunks.
-
981  T tmp_out[nchunks]; // block-wide inclusive sum for chunks
-
982  for (int ichunk = 0; ichunk < nchunks; ++ichunk) {
-
983  N offset = ibegin + ichunk*blockDim.x;
-
984  if (offset >= iend) break;
-
985 
-
986  offset += threadIdx.x;
-
987  T x0 = (offset < iend) ? fin(offset) : 0;
-
988  if (std::is_same<std::decay_t<TYPE>,Type::Exclusive>::value && offset == n-1) {
-
989  *totalsum_p += x0;
-
990  }
-
991  T x = x0;
-
992  // Scan within a warp
-
993  for (int i = 1; i <= Gpu::Device::warp_size; i *= 2) {
-
994  AMREX_HIP_OR_CUDA( T s = __shfl_up(x,i);,
-
995  T s = __shfl_up_sync(0xffffffff, x, i); )
-
996  if (lane >= i) x += s;
-
997  }
-
998 
-
999  // x now holds the inclusive sum within the warp. The
-
1000  // last thread in each warp holds the inclusive sum of
-
1001  // this warp. We will store it in shared memory.
-
1002  if (lane == Gpu::Device::warp_size - 1) {
-
1003  shared[warp] = x;
-
1004  }
-
1005 
-
1006  __syncthreads();
-
1007 
-
1008  // The first warp will do scan on the warp sums for the
-
1009  // whole block. Not all threads in the warp need to
-
1010  // participate.
-
1011 #ifdef AMREX_USE_CUDA
-
1012  if (warp == 0 && lane < nwarps) {
-
1013  T y = shared[lane];
-
1014  int mask = (1 << nwarps) - 1;
-
1015  for (int i = 1; i <= nwarps; i *= 2) {
-
1016  T s = __shfl_up_sync(mask, y, i, nwarps);
-
1017  if (lane >= i) y += s;
-
1018  }
-
1019  shared2[lane] = y;
-
1020  }
-
1021 #else
-
1022  if (warp == 0) {
-
1023  T y = 0;
-
1024  if (lane < nwarps) {
-
1025  y = shared[lane];
-
1026  }
-
1027  for (int i = 1; i <= nwarps; i *= 2) {
-
1028  T s = __shfl_up(y, i, nwarps);
-
1029  if (lane >= i) y += s;
-
1030  }
-
1031  if (lane < nwarps) {
-
1032  shared2[lane] = y;
-
1033  }
-
1034  }
-
1035 #endif
-
1036 
-
1037  __syncthreads();
-
1038 
-
1039  // shared[0:nwarps) holds the inclusive sum of warp sums.
-
1040 
-
1041  // Also note x still holds the inclusive sum within the
-
1042  // warp. Given these two, we can compute the inclusive
-
1043  // sum within this chunk.
-
1044  T sum_prev_warp = (warp == 0) ? 0 : shared2[warp-1];
-
1045  tmp_out[ichunk] = sum_prev_warp + sum_prev_chunk +
-
1046  (std::is_same<std::decay_t<TYPE>,Type::Inclusive>::value ? x : x-x0);
-
1047  sum_prev_chunk += shared2[nwarps-1];
-
1048  }
-
1049 
-
1050  // sum_prev_chunk now holds the sum of the whole block.
-
1051  if (threadIdx.x == 0 && gridDim.x > 1) {
-
1052  block_status.write((virtual_block_id == 0) ? 'p' : 'a',
-
1053  sum_prev_chunk);
-
1054  }
-
1055 
-
1056  if (virtual_block_id == 0) {
-
1057  for (int ichunk = 0; ichunk < nchunks; ++ichunk) {
-
1058  N offset = ibegin + ichunk*blockDim.x + threadIdx.x;
-
1059  if (offset >= iend) break;
-
1060  fout(offset, tmp_out[ichunk]);
-
1061  if (offset == n-1) {
-
1062  *totalsum_p += tmp_out[ichunk];
-
1063  }
-
1064  }
-
1065  } else if (virtual_block_id > 0) {
-
1066 
-
1067  if (warp == 0) {
-
1068  T exclusive_prefix = 0;
-
1069  BlockStatusT volatile* pbs = block_status_p;
-
1070  for (int iblock0 = virtual_block_id-1; iblock0 >= 0; iblock0 -= Gpu::Device::warp_size)
-
1071  {
-
1072  int iblock = iblock0-lane;
-
1073  detail::STVA<T> stva{'p', 0};
-
1074  if (iblock >= 0) {
-
1075  stva = pbs[iblock].wait();
-
1076  }
-
1077 
-
1078  T x = stva.value;
-
1079 
-
1080  AMREX_HIP_OR_CUDA( uint64_t const status_bf = __ballot(stva.status == 'p');,
-
1081  unsigned const status_bf = __ballot_sync(0xffffffff, stva.status == 'p'));
-
1082  bool stop_lookback = status_bf & 0x1u;
-
1083  if (stop_lookback == false) {
-
1084  if (status_bf != 0) {
-
1085  T y = x;
-
1086  if (lane > 0) x = 0;
-
1087  AMREX_HIP_OR_CUDA(uint64_t bit_mask = 0x1ull;,
-
1088  unsigned bit_mask = 0x1u);
-
1089  for (int i = 1; i < Gpu::Device::warp_size; ++i) {
-
1090  bit_mask <<= 1;
-
1091  if (i == lane) x = y;
-
1092  if (status_bf & bit_mask) {
-
1093  stop_lookback = true;
-
1094  break;
-
1095  }
-
1096  }
-
1097  }
-
1098 
-
1099  for (int i = Gpu::Device::warp_size/2; i > 0; i /= 2) {
-
1100  AMREX_HIP_OR_CUDA( x += __shfl_down(x,i);,
-
1101  x += __shfl_down_sync(0xffffffff, x, i); )
-
1102  }
-
1103  }
-
1104 
-
1105  if (lane == 0) { exclusive_prefix += x; }
-
1106  if (stop_lookback) break;
-
1107  }
-
1108 
-
1109  if (lane == 0) {
-
1110  block_status.write('p', block_status.get_aggregate() + exclusive_prefix);
-
1111  shared[0] = exclusive_prefix;
-
1112  }
-
1113  }
-
1114 
-
1115  __syncthreads();
-
1116 
-
1117  T exclusive_prefix = shared[0];
-
1118 
-
1119  for (int ichunk = 0; ichunk < nchunks; ++ichunk) {
-
1120  N offset = ibegin + ichunk*blockDim.x + threadIdx.x;
-
1121  if (offset >= iend) break;
-
1122  T t = tmp_out[ichunk] + exclusive_prefix;
-
1123  fout(offset, t);
-
1124  if (offset == n-1) {
-
1125  *totalsum_p += t;
-
1126  }
-
1127  }
-
1128  }
-
1129  });
-
1130 
-
1131  T totalsum = 0;
-
1132  if (a_ret_sum) {
-
1133  // xxxxx CUDA < 11 todo: Should test if using pinned memory and thus
-
1134  // avoiding memcpy is faster.
-
1135  Gpu::dtoh_memcpy_async(&totalsum, totalsum_p, sizeof(T));
-
1136  }
-
1137  Gpu::streamSynchronize();
-
1138  The_Arena()->free(dp);
-
1139 
-
1140  AMREX_GPU_ERROR_CHECK();
-
1141 
-
1142  return totalsum;
-
1143 }
-
1144 
-
1145 #endif
-
1146 
-
1147 // The return value is the total sum if a_ret_sum is true.
-
1148 template <typename N, typename T, typename M=std::enable_if_t<std::is_integral<N>::value> >
-
1149 T InclusiveSum (N n, T const* in, T * out, RetSum a_ret_sum = retSum)
-
1150 {
-
1151 #if defined(AMREX_USE_CUDA) && defined(__CUDACC__) && (__CUDACC_VER_MAJOR__ >= 11)
-
1152  void* d_temp = nullptr;
-
1153  std::size_t temp_bytes = 0;
-
1154  AMREX_GPU_SAFE_CALL(cub::DeviceScan::InclusiveSum(d_temp, temp_bytes, in, out, n,
-
1155  Gpu::gpuStream()));
-
1156  d_temp = The_Arena()->alloc(temp_bytes);
-
1157  AMREX_GPU_SAFE_CALL(cub::DeviceScan::InclusiveSum(d_temp, temp_bytes, in, out, n,
-
1158  Gpu::gpuStream()));
-
1159  T totalsum = 0;
-
1160  if (a_ret_sum) {
-
1161  Gpu::dtoh_memcpy_async(&totalsum, out+(n-1), sizeof(T));
-
1162  }
-
1163  Gpu::streamSynchronize();
-
1164  The_Arena()->free(d_temp);
-
1165  AMREX_GPU_ERROR_CHECK();
-
1166  return totalsum;
-
1167 #elif defined(AMREX_USE_HIP)
-
1168  void* d_temp = nullptr;
-
1169  std::size_t temp_bytes = 0;
-
1170  AMREX_GPU_SAFE_CALL(rocprim::inclusive_scan(d_temp, temp_bytes, in, out, n,
-
1171  rocprim::plus<T>(), Gpu::gpuStream()));
-
1172  d_temp = The_Arena()->alloc(temp_bytes);
-
1173  AMREX_GPU_SAFE_CALL(rocprim::inclusive_scan(d_temp, temp_bytes, in, out, n,
-
1174  rocprim::plus<T>(), Gpu::gpuStream()));
-
1175  T totalsum = 0;
-
1176  if (a_ret_sum) {
-
1177  Gpu::dtoh_memcpy_async(&totalsum, out+(n-1), sizeof(T));
-
1178  }
-
1179  Gpu::streamSynchronize();
-
1180  The_Arena()->free(d_temp);
-
1181  AMREX_GPU_ERROR_CHECK();
-
1182  return totalsum;
-
1183 #elif defined(AMREX_USE_SYCL) && defined(AMREX_USE_ONEDPL)
-
1184  auto policy = oneapi::dpl::execution::make_device_policy(Gpu::Device::streamQueue());
-
1185  std::inclusive_scan(policy, in, in+n, out, std::plus<T>(), T(0));
-
1186  T totalsum = 0;
-
1187  if (a_ret_sum) {
-
1188  Gpu::dtoh_memcpy_async(&totalsum, out+(n-1), sizeof(T));
-
1189  }
-
1190  Gpu::streamSynchronize();
-
1191  AMREX_GPU_ERROR_CHECK();
-
1192  return totalsum;
-
1193 #else
-
1194  if (static_cast<Long>(n) <= static_cast<Long>(std::numeric_limits<int>::max())) {
-
1195  return PrefixSum<T>(static_cast<int>(n),
-
1196  [=] AMREX_GPU_DEVICE (N i) -> T { return in[i]; },
-
1197  [=] AMREX_GPU_DEVICE (N i, T const& x) { out[i] = x; },
-
1198  Type::inclusive, a_ret_sum);
-
1199  } else {
-
1200  return PrefixSum<T>(n,
-
1201  [=] AMREX_GPU_DEVICE (N i) -> T { return in[i]; },
-
1202  [=] AMREX_GPU_DEVICE (N i, T const& x) { out[i] = x; },
-
1203  Type::inclusive, a_ret_sum);
-
1204  }
-
1205 #endif
-
1206 }
-
1207 
-
1208 // The return value is the total sum if a_ret_sum is true.
-
1209 template <typename N, typename T, typename M=std::enable_if_t<std::is_integral<N>::value> >
-
1210 T ExclusiveSum (N n, T const* in, T * out, RetSum a_ret_sum = retSum)
-
1211 {
-
1212  if (n <= 0) return 0;
-
1213 #if defined(AMREX_USE_CUDA) && defined(__CUDACC__) && (__CUDACC_VER_MAJOR__ >= 11)
-
1214  T in_last = 0;
-
1215  if (a_ret_sum) {
-
1216  Gpu::dtoh_memcpy_async(&in_last, in+(n-1), sizeof(T));
-
1217  }
-
1218  void* d_temp = nullptr;
-
1219  std::size_t temp_bytes = 0;
-
1220  AMREX_GPU_SAFE_CALL(cub::DeviceScan::ExclusiveSum(d_temp, temp_bytes, in, out, n,
-
1221  Gpu::gpuStream()));
-
1222  d_temp = The_Arena()->alloc(temp_bytes);
-
1223  AMREX_GPU_SAFE_CALL(cub::DeviceScan::ExclusiveSum(d_temp, temp_bytes, in, out, n,
-
1224  Gpu::gpuStream()));
-
1225  T out_last = 0;
-
1226  if (a_ret_sum) {
-
1227  Gpu::dtoh_memcpy_async(&out_last, out+(n-1), sizeof(T));
-
1228  }
-
1229  Gpu::streamSynchronize();
-
1230  The_Arena()->free(d_temp);
-
1231  AMREX_GPU_ERROR_CHECK();
-
1232  return in_last+out_last;
-
1233 #elif defined(AMREX_USE_HIP)
-
1234  T in_last = 0;
-
1235  if (a_ret_sum) {
-
1236  Gpu::dtoh_memcpy_async(&in_last, in+(n-1), sizeof(T));
-
1237  }
-
1238  void* d_temp = nullptr;
-
1239  std::size_t temp_bytes = 0;
-
1240  AMREX_GPU_SAFE_CALL(rocprim::exclusive_scan(d_temp, temp_bytes, in, out, T{0}, n,
-
1241  rocprim::plus<T>(), Gpu::gpuStream()));
-
1242  d_temp = The_Arena()->alloc(temp_bytes);
-
1243  AMREX_GPU_SAFE_CALL(rocprim::exclusive_scan(d_temp, temp_bytes, in, out, T{0}, n,
-
1244  rocprim::plus<T>(), Gpu::gpuStream()));
-
1245  T out_last = 0;
-
1246  if (a_ret_sum) {
-
1247  Gpu::dtoh_memcpy_async(&out_last, out+(n-1), sizeof(T));
-
1248  }
-
1249  Gpu::streamSynchronize();
-
1250  The_Arena()->free(d_temp);
-
1251  AMREX_GPU_ERROR_CHECK();
-
1252  return in_last+out_last;
-
1253 #elif defined(AMREX_USE_SYCL) && defined(AMREX_USE_ONEDPL)
-
1254  T in_last = 0;
-
1255  if (a_ret_sum) {
-
1256  Gpu::dtoh_memcpy_async(&in_last, in+(n-1), sizeof(T));
-
1257  }
-
1258  auto policy = oneapi::dpl::execution::make_device_policy(Gpu::Device::streamQueue());
-
1259  std::exclusive_scan(policy, in, in+n, out, T(0), std::plus<T>());
-
1260  T out_last = 0;
-
1261  if (a_ret_sum) {
-
1262  Gpu::dtoh_memcpy_async(&out_last, out+(n-1), sizeof(T));
-
1263  }
-
1264  Gpu::streamSynchronize();
-
1265  AMREX_GPU_ERROR_CHECK();
-
1266  return in_last+out_last;
-
1267 #else
-
1268  if (static_cast<Long>(n) <= static_cast<Long>(std::numeric_limits<int>::max())) {
-
1269  return PrefixSum<T>(static_cast<int>(n),
-
1270  [=] AMREX_GPU_DEVICE (N i) -> T { return in[i]; },
-
1271  [=] AMREX_GPU_DEVICE (N i, T const& x) { out[i] = x; },
-
1272  Type::exclusive, a_ret_sum);
-
1273  } else {
-
1274  return PrefixSum<T>(n,
-
1275  [=] AMREX_GPU_DEVICE (N i) -> T { return in[i]; },
-
1276  [=] AMREX_GPU_DEVICE (N i, T const& x) { out[i] = x; },
-
1277  Type::exclusive, a_ret_sum);
-
1278  }
-
1279 #endif
-
1280 }
-
1281 
-
1282 #else
-
1283 // !defined(AMREX_USE_GPU)
-
1284 template <typename T, typename N, typename FIN, typename FOUT, typename TYPE,
-
1285  typename M=std::enable_if_t<std::is_integral<N>::value &&
-
1286  (std::is_same<std::decay_t<TYPE>,Type::Inclusive>::value ||
-
1287  std::is_same<std::decay_t<TYPE>,Type::Exclusive>::value)> >
-
1288 T PrefixSum (N n, FIN && fin, FOUT && fout, TYPE, RetSum = retSum)
-
1289 {
-
1290  if (n <= 0) return 0;
-
1291  T totalsum = 0;
-
1292  for (N i = 0; i < n; ++i) {
-
1293  T x = fin(i);
-
1294  T y = totalsum;
-
1295  totalsum += x;
-
1296  AMREX_IF_CONSTEXPR (std::is_same<std::decay_t<TYPE>,Type::Inclusive>::value) {
-
1297  y += x;
-
1298  }
-
1299  fout(i, y);
-
1300  }
-
1301  return totalsum;
-
1302 }
-
1303 
-
1304 // The return value is the total sum.
-
1305 template <typename N, typename T, typename M=std::enable_if_t<std::is_integral<N>::value> >
-
1306 T InclusiveSum (N n, T const* in, T * out, RetSum /*a_ret_sum*/ = retSum)
-
1307 {
-
1308 #if (__cplusplus >= 201703L) && (!defined(_GLIBCXX_RELEASE) || _GLIBCXX_RELEASE >= 10)
-
1309  // GCC's __cplusplus is not a reliable indication for C++17 support
-
1310  std::inclusive_scan(in, in+n, out);
-
1311 #else
-
1312  std::partial_sum(in, in+n, out);
-
1313 #endif
-
1314  return (n > 0) ? out[n-1] : T(0);
-
1315 }
-
1316 
-
1317 // The return value is the total sum.
-
1318 template <typename N, typename T, typename M=std::enable_if_t<std::is_integral<N>::value> >
-
1319 T ExclusiveSum (N n, T const* in, T * out, RetSum /*a_ret_sum*/ = retSum)
-
1320 {
-
1321  if (n <= 0) return 0;
-
1322 
-
1323  auto in_last = in[n-1];
-
1324 #if (__cplusplus >= 201703L) && (!defined(_GLIBCXX_RELEASE) || _GLIBCXX_RELEASE >= 10)
-
1325  // GCC's __cplusplus is not a reliable indication for C++17 support
-
1326  std::exclusive_scan(in, in+n, out, 0);
-
1327 #else
-
1328  out[0] = 0;
-
1329  std::partial_sum(in, in+n-1, out+1);
-
1330 #endif
-
1331  return in_last + out[n-1];
-
1332 }
-
1333 
-
1334 #endif
-
1335 
-
1336 }
-
1337 
-
1338 namespace Gpu
-
1339 {
-
1340  template<class InIter, class OutIter>
-
1341  OutIter inclusive_scan (InIter begin, InIter end, OutIter result)
-
1342  {
-
1343 #if defined(AMREX_USE_GPU)
-
1344  auto N = std::distance(begin, end);
-
1345  Scan::InclusiveSum(N, &(*begin), &(*result), Scan::noRetSum);
-
1346  OutIter result_end = result;
-
1347  std::advance(result_end, N);
-
1348  return result_end;
-
1349 #elif (__cplusplus >= 201703L) && (!defined(_GLIBCXX_RELEASE) || _GLIBCXX_RELEASE >= 10)
-
1350  // GCC's __cplusplus is not a reliable indication for C++17 support
-
1351  return std::inclusive_scan(begin, end, result);
-
1352 #else
-
1353  return std::partial_sum(begin, end, result);
-
1354 #endif
-
1355  }
-
1356 
-
1357  template<class InIter, class OutIter>
-
1358  OutIter exclusive_scan (InIter begin, InIter end, OutIter result)
-
1359  {
-
1360 #if defined(AMREX_USE_GPU)
-
1361  auto N = std::distance(begin, end);
-
1362  Scan::ExclusiveSum(N, &(*begin), &(*result), Scan::noRetSum);
-
1363  OutIter result_end = result;
-
1364  std::advance(result_end, N);
-
1365  return result_end;
-
1366 #elif (__cplusplus >= 201703L) && (!defined(_GLIBCXX_RELEASE) || _GLIBCXX_RELEASE >= 10)
-
1367  // GCC's __cplusplus is not a reliable indication for C++17 support
-
1368  return std::exclusive_scan(begin, end, result, 0);
-
1369 #else
-
1370  if (begin == end) return result;
-
1371 
-
1372  typename std::iterator_traits<InIter>::value_type sum = *begin;
-
1373  *result++ = sum - *begin;
-
1374 
-
1375  while (++begin != end) {
-
1376  sum = std::move(sum) + *begin;
-
1377  *result++ = sum - *begin;
-
1378  }
-
1379  return ++result;
-
1380 #endif
-
1381  }
-
1382 
-
1383 }}
-
1384 
-
1385 #endif
+
807  using BlockLoad = cub::BlockLoad<T, nthreads, nelms_per_thread, cub::BLOCK_LOAD_WARP_TRANSPOSE>;
+
808  using BlockScan = cub::BlockScan<T, nthreads, cub::BLOCK_SCAN_WARP_SCANS>;
+
809  using BlockExchange = cub::BlockExchange<T, nthreads, nelms_per_thread>;
+
810  using TilePrefixCallbackOp = cub::TilePrefixCallbackOp<T, cub::Sum, ScanTileState>;
+
811 
+
812  __shared__ union TempStorage
+
813  {
+
814  typename BlockLoad::TempStorage load;
+
815  typename BlockExchange::TempStorage exchange;
+
816  struct ScanStorage {
+
817  typename BlockScan::TempStorage scan;
+
818  typename TilePrefixCallbackOp::TempStorage prefix;
+
819  } scan_storeage;
+
820  } temp_storage;
+
821 
+
822  // Lambda captured tile_state is const. We have to cast the const away.
+
823  auto& scan_tile_state = const_cast<ScanTileState&>(tile_state);
+
824 
+
825  int virtual_block_id = blockIdx.x;
+
826 
+
827  // Each block processes [ibegin,iend).
+
828  N ibegin = nelms_per_block * virtual_block_id;
+
829  N iend = amrex::min(static_cast<N>(ibegin+nelms_per_block), n);
+
830 
+
831  auto input_lambda = [&] (N i) -> T { return fin(i+ibegin); };
+
832  cub::TransformInputIterator<T,decltype(input_lambda),cub::CountingInputIterator<N> >
+
833  input_begin(cub::CountingInputIterator<N>(0), input_lambda);
+
834 
+
835  T data[nelms_per_thread];
+
836  if (static_cast<int>(iend-ibegin) == nelms_per_block) {
+
837  BlockLoad(temp_storage.load).Load(input_begin, data);
+
838  } else {
+
839  BlockLoad(temp_storage.load).Load(input_begin, data, iend-ibegin, 0); // padding with 0
+
840  }
+
841 
+
842  __syncthreads();
+
843 
+
844  constexpr bool is_exclusive = std::is_same<std::decay_t<TYPE>,Type::Exclusive>::value;
+
845 
+
846  if (virtual_block_id == 0) {
+
847  T block_agg;
+
848  AMREX_IF_CONSTEXPR(is_exclusive) {
+
849  BlockScan(temp_storage.scan_storeage.scan).ExclusiveSum(data, data, block_agg);
+
850  } else {
+
851  BlockScan(temp_storage.scan_storeage.scan).InclusiveSum(data, data, block_agg);
+
852  }
+
853  if (threadIdx.x == 0) {
+
854  if (nblocks > 1) {
+
855  scan_tile_state.SetInclusive(0, block_agg);
+
856  } else if (nblocks == 1 && totalsum_p) {
+
857  *totalsum_p = block_agg;
+
858  }
+
859  }
+
860  } else {
+
861  T last = data[nelms_per_thread-1]; // Need this for the total sum in exclusive case
+
862 
+
863  TilePrefixCallbackOp prefix_op(scan_tile_state, temp_storage.scan_storeage.prefix,
+
864  cub::Sum{}, virtual_block_id);
+
865  AMREX_IF_CONSTEXPR(is_exclusive) {
+
866  BlockScan(temp_storage.scan_storeage.scan).ExclusiveSum(data, data, prefix_op);
+
867  } else {
+
868  BlockScan(temp_storage.scan_storeage.scan).InclusiveSum(data, data, prefix_op);
+
869  }
+
870  if (totalsum_p) {
+
871  if (iend == n && threadIdx.x == blockDim.x-1) { // last thread of last block
+
872  T tsum = data[nelms_per_thread-1];
+
873  AMREX_IF_CONSTEXPR(is_exclusive) { tsum += last; }
+
874  *totalsum_p = tsum;
+
875  }
+
876  }
+
877  }
+
878 
+
879  __syncthreads();
+
880 
+
881  BlockExchange(temp_storage.exchange).BlockedToStriped(data);
+
882 
+
883  for (int i = 0; i < nelms_per_thread; ++i) {
+
884  N offset = ibegin + i*blockDim.x + threadIdx.x;
+
885  if (offset < iend) { fout(offset, data[i]); }
+
886  }
+
887  });
+
888 
+
889  Gpu::streamSynchronize();
+
890  AMREX_GPU_ERROR_CHECK();
+
891 
+
892  The_Arena()->free(tile_state_p);
+
893 
+
894  T ret = (a_ret_sum) ? *totalsum_p : T(0);
+
895  if (totalsum_p) { The_Pinned_Arena()->free(totalsum_p); }
+
896 
+
897  return ret;
+
898 }
+
899 
+
900 #else
+
901 
+
902 template <typename T, typename N, typename FIN, typename FOUT, typename TYPE,
+
903  typename M=std::enable_if_t<std::is_integral<N>::value &&
+
904  (std::is_same<std::decay_t<TYPE>,Type::Inclusive>::value ||
+
905  std::is_same<std::decay_t<TYPE>,Type::Exclusive>::value)> >
+
906 T PrefixSum (N n, FIN && fin, FOUT && fout, TYPE, RetSum a_ret_sum = retSum)
+
907 {
+
908  if (n <= 0) return 0;
+
909  constexpr int nwarps_per_block = 4;
+
910  constexpr int nthreads = nwarps_per_block*Gpu::Device::warp_size;
+
911  constexpr int nchunks = 12;
+
912  constexpr int nelms_per_block = nthreads * nchunks;
+
913  AMREX_ALWAYS_ASSERT(static_cast<Long>(n) < static_cast<Long>(std::numeric_limits<int>::max())*nelms_per_block);
+
914  int nblocks = (static_cast<Long>(n) + nelms_per_block - 1) / nelms_per_block;
+
915  std::size_t sm = sizeof(T) * (Gpu::Device::warp_size + nwarps_per_block) + sizeof(int);
+
916  auto stream = Gpu::gpuStream();
+
917 
+
918  using BlockStatusT = typename std::conditional<sizeof(detail::STVA<T>) <= 8,
+
919  detail::BlockStatus<T,true>, detail::BlockStatus<T,false> >::type;
+
920 
+
921  std::size_t nbytes_blockstatus = Arena::align(sizeof(BlockStatusT)*nblocks);
+
922  std::size_t nbytes_blockid = Arena::align(sizeof(unsigned int));
+
923  std::size_t nbytes_totalsum = Arena::align(sizeof(T));
+
924  auto dp = (char*)(The_Arena()->alloc( nbytes_blockstatus
+
925  + nbytes_blockid
+
926  + nbytes_totalsum));
+
927  BlockStatusT* AMREX_RESTRICT block_status_p = (BlockStatusT*)dp;
+
928  unsigned int* AMREX_RESTRICT virtual_block_id_p = (unsigned int*)(dp + nbytes_blockstatus);
+
929  T* AMREX_RESTRICT totalsum_p = (T*)(dp + nbytes_blockstatus + nbytes_blockid);
+
930 
+
931  amrex::ParallelFor(nblocks, [=] AMREX_GPU_DEVICE (int i) noexcept {
+
932  BlockStatusT& block_status = block_status_p[i];
+
933  block_status.set_status('x');
+
934  if (i == 0) {
+
935  *virtual_block_id_p = 0;
+
936  *totalsum_p = 0;
+
937  }
+
938  });
+
939 
+
940  amrex::launch(nblocks, nthreads, sm, stream,
+
941  [=] AMREX_GPU_DEVICE () noexcept
+
942  {
+
943  int lane = threadIdx.x % Gpu::Device::warp_size;
+
944  int warp = threadIdx.x / Gpu::Device::warp_size;
+
945  int nwarps = blockDim.x / Gpu::Device::warp_size;
+
946 
+
947  amrex::Gpu::SharedMemory<T> gsm;
+
948  T* shared = gsm.dataPtr();
+
949  T* shared2 = shared + Gpu::Device::warp_size;
+
950 
+
951  // First of all, get block virtual id. We must do this to
+
952  // avoid deadlock because CUDA may launch blocks in any order.
+
953  // Anywhere in this function, we should not use blockIdx.
+
954  int virtual_block_id = 0;
+
955  if (gridDim.x > 1) {
+
956  int& virtual_block_id_shared = *((int*)(shared2+nwarps));
+
957  if (threadIdx.x == 0) {
+
958  unsigned int bid = Gpu::Atomic::Add(virtual_block_id_p, 1u);
+
959  virtual_block_id_shared = bid;
+
960  }
+
961  __syncthreads();
+
962  virtual_block_id = virtual_block_id_shared;
+
963  }
+
964 
+
965  // Each block processes [ibegin,iend).
+
966  N ibegin = nelms_per_block * virtual_block_id;
+
967  N iend = amrex::min(static_cast<N>(ibegin+nelms_per_block), n);
+
968  BlockStatusT& block_status = block_status_p[virtual_block_id];
+
969 
+
970  //
+
971  // The overall algorithm is based on "Single-pass Parallel
+
972  // Prefix Scan with Decoupled Look-back" by D. Merrill &
+
973  // M. Garland.
+
974  //
+
975 
+
976  // Each block is responsible for nchunks chunks of data,
+
977  // where each chunk has blockDim.x elements, one for each
+
978  // thread in the block.
+
979  T sum_prev_chunk = 0; // inclusive sum from previous chunks.
+
980  T tmp_out[nchunks]; // block-wide inclusive sum for chunks
+
981  for (int ichunk = 0; ichunk < nchunks; ++ichunk) {
+
982  N offset = ibegin + ichunk*blockDim.x;
+
983  if (offset >= iend) break;
+
984 
+
985  offset += threadIdx.x;
+
986  T x0 = (offset < iend) ? fin(offset) : 0;
+
987  if (std::is_same<std::decay_t<TYPE>,Type::Exclusive>::value && offset == n-1) {
+
988  *totalsum_p += x0;
+
989  }
+
990  T x = x0;
+
991  // Scan within a warp
+
992  for (int i = 1; i <= Gpu::Device::warp_size; i *= 2) {
+
993  AMREX_HIP_OR_CUDA( T s = __shfl_up(x,i);,
+
994  T s = __shfl_up_sync(0xffffffff, x, i); )
+
995  if (lane >= i) x += s;
+
996  }
+
997 
+
998  // x now holds the inclusive sum within the warp. The
+
999  // last thread in each warp holds the inclusive sum of
+
1000  // this warp. We will store it in shared memory.
+
1001  if (lane == Gpu::Device::warp_size - 1) {
+
1002  shared[warp] = x;
+
1003  }
+
1004 
+
1005  __syncthreads();
+
1006 
+
1007  // The first warp will do scan on the warp sums for the
+
1008  // whole block. Not all threads in the warp need to
+
1009  // participate.
+
1010 #ifdef AMREX_USE_CUDA
+
1011  if (warp == 0 && lane < nwarps) {
+
1012  T y = shared[lane];
+
1013  int mask = (1 << nwarps) - 1;
+
1014  for (int i = 1; i <= nwarps; i *= 2) {
+
1015  T s = __shfl_up_sync(mask, y, i, nwarps);
+
1016  if (lane >= i) y += s;
+
1017  }
+
1018  shared2[lane] = y;
+
1019  }
+
1020 #else
+
1021  if (warp == 0) {
+
1022  T y = 0;
+
1023  if (lane < nwarps) {
+
1024  y = shared[lane];
+
1025  }
+
1026  for (int i = 1; i <= nwarps; i *= 2) {
+
1027  T s = __shfl_up(y, i, nwarps);
+
1028  if (lane >= i) y += s;
+
1029  }
+
1030  if (lane < nwarps) {
+
1031  shared2[lane] = y;
+
1032  }
+
1033  }
+
1034 #endif
+
1035 
+
1036  __syncthreads();
+
1037 
+
1038  // shared[0:nwarps) holds the inclusive sum of warp sums.
+
1039 
+
1040  // Also note x still holds the inclusive sum within the
+
1041  // warp. Given these two, we can compute the inclusive
+
1042  // sum within this chunk.
+
1043  T sum_prev_warp = (warp == 0) ? 0 : shared2[warp-1];
+
1044  tmp_out[ichunk] = sum_prev_warp + sum_prev_chunk +
+
1045  (std::is_same<std::decay_t<TYPE>,Type::Inclusive>::value ? x : x-x0);
+
1046  sum_prev_chunk += shared2[nwarps-1];
+
1047  }
+
1048 
+
1049  // sum_prev_chunk now holds the sum of the whole block.
+
1050  if (threadIdx.x == 0 && gridDim.x > 1) {
+
1051  block_status.write((virtual_block_id == 0) ? 'p' : 'a',
+
1052  sum_prev_chunk);
+
1053  }
+
1054 
+
1055  if (virtual_block_id == 0) {
+
1056  for (int ichunk = 0; ichunk < nchunks; ++ichunk) {
+
1057  N offset = ibegin + ichunk*blockDim.x + threadIdx.x;
+
1058  if (offset >= iend) break;
+
1059  fout(offset, tmp_out[ichunk]);
+
1060  if (offset == n-1) {
+
1061  *totalsum_p += tmp_out[ichunk];
+
1062  }
+
1063  }
+
1064  } else if (virtual_block_id > 0) {
+
1065 
+
1066  if (warp == 0) {
+
1067  T exclusive_prefix = 0;
+
1068  BlockStatusT volatile* pbs = block_status_p;
+
1069  for (int iblock0 = virtual_block_id-1; iblock0 >= 0; iblock0 -= Gpu::Device::warp_size)
+
1070  {
+
1071  int iblock = iblock0-lane;
+
1072  detail::STVA<T> stva{'p', 0};
+
1073  if (iblock >= 0) {
+
1074  stva = pbs[iblock].wait();
+
1075  }
+
1076 
+
1077  T x = stva.value;
+
1078 
+
1079  AMREX_HIP_OR_CUDA( uint64_t const status_bf = __ballot(stva.status == 'p');,
+
1080  unsigned const status_bf = __ballot_sync(0xffffffff, stva.status == 'p'));
+
1081  bool stop_lookback = status_bf & 0x1u;
+
1082  if (stop_lookback == false) {
+
1083  if (status_bf != 0) {
+
1084  T y = x;
+
1085  if (lane > 0) x = 0;
+
1086  AMREX_HIP_OR_CUDA(uint64_t bit_mask = 0x1ull;,
+
1087  unsigned bit_mask = 0x1u);
+
1088  for (int i = 1; i < Gpu::Device::warp_size; ++i) {
+
1089  bit_mask <<= 1;
+
1090  if (i == lane) x = y;
+
1091  if (status_bf & bit_mask) {
+
1092  stop_lookback = true;
+
1093  break;
+
1094  }
+
1095  }
+
1096  }
+
1097 
+
1098  for (int i = Gpu::Device::warp_size/2; i > 0; i /= 2) {
+
1099  AMREX_HIP_OR_CUDA( x += __shfl_down(x,i);,
+
1100  x += __shfl_down_sync(0xffffffff, x, i); )
+
1101  }
+
1102  }
+
1103 
+
1104  if (lane == 0) { exclusive_prefix += x; }
+
1105  if (stop_lookback) break;
+
1106  }
+
1107 
+
1108  if (lane == 0) {
+
1109  block_status.write('p', block_status.get_aggregate() + exclusive_prefix);
+
1110  shared[0] = exclusive_prefix;
+
1111  }
+
1112  }
+
1113 
+
1114  __syncthreads();
+
1115 
+
1116  T exclusive_prefix = shared[0];
+
1117 
+
1118  for (int ichunk = 0; ichunk < nchunks; ++ichunk) {
+
1119  N offset = ibegin + ichunk*blockDim.x + threadIdx.x;
+
1120  if (offset >= iend) break;
+
1121  T t = tmp_out[ichunk] + exclusive_prefix;
+
1122  fout(offset, t);
+
1123  if (offset == n-1) {
+
1124  *totalsum_p += t;
+
1125  }
+
1126  }
+
1127  }
+
1128  });
+
1129 
+
1130  T totalsum = 0;
+
1131  if (a_ret_sum) {
+
1132  // xxxxx CUDA < 11 todo: Should test if using pinned memory and thus
+
1133  // avoiding memcpy is faster.
+
1134  Gpu::dtoh_memcpy_async(&totalsum, totalsum_p, sizeof(T));
+
1135  }
+
1136  Gpu::streamSynchronize();
+
1137  The_Arena()->free(dp);
+
1138 
+
1139  AMREX_GPU_ERROR_CHECK();
+
1140 
+
1141  return totalsum;
+
1142 }
+
1143 
+
1144 #endif
+
1145 
+
1146 // The return value is the total sum if a_ret_sum is true.
+
1147 template <typename N, typename T, typename M=std::enable_if_t<std::is_integral<N>::value> >
+
1148 T InclusiveSum (N n, T const* in, T * out, RetSum a_ret_sum = retSum)
+
1149 {
+
1150 #if defined(AMREX_USE_CUDA) && defined(__CUDACC__) && (__CUDACC_VER_MAJOR__ >= 11)
+
1151  void* d_temp = nullptr;
+
1152  std::size_t temp_bytes = 0;
+
1153  AMREX_GPU_SAFE_CALL(cub::DeviceScan::InclusiveSum(d_temp, temp_bytes, in, out, n,
+
1154  Gpu::gpuStream()));
+
1155  d_temp = The_Arena()->alloc(temp_bytes);
+
1156  AMREX_GPU_SAFE_CALL(cub::DeviceScan::InclusiveSum(d_temp, temp_bytes, in, out, n,
+
1157  Gpu::gpuStream()));
+
1158  T totalsum = 0;
+
1159  if (a_ret_sum) {
+
1160  Gpu::dtoh_memcpy_async(&totalsum, out+(n-1), sizeof(T));
+
1161  }
+
1162  Gpu::streamSynchronize();
+
1163  The_Arena()->free(d_temp);
+
1164  AMREX_GPU_ERROR_CHECK();
+
1165  return totalsum;
+
1166 #elif defined(AMREX_USE_HIP)
+
1167  void* d_temp = nullptr;
+
1168  std::size_t temp_bytes = 0;
+
1169  AMREX_GPU_SAFE_CALL(rocprim::inclusive_scan(d_temp, temp_bytes, in, out, n,
+
1170  rocprim::plus<T>(), Gpu::gpuStream()));
+
1171  d_temp = The_Arena()->alloc(temp_bytes);
+
1172  AMREX_GPU_SAFE_CALL(rocprim::inclusive_scan(d_temp, temp_bytes, in, out, n,
+
1173  rocprim::plus<T>(), Gpu::gpuStream()));
+
1174  T totalsum = 0;
+
1175  if (a_ret_sum) {
+
1176  Gpu::dtoh_memcpy_async(&totalsum, out+(n-1), sizeof(T));
+
1177  }
+
1178  Gpu::streamSynchronize();
+
1179  The_Arena()->free(d_temp);
+
1180  AMREX_GPU_ERROR_CHECK();
+
1181  return totalsum;
+
1182 #elif defined(AMREX_USE_SYCL) && defined(AMREX_USE_ONEDPL)
+
1183  auto policy = oneapi::dpl::execution::make_device_policy(Gpu::Device::streamQueue());
+
1184  std::inclusive_scan(policy, in, in+n, out, std::plus<T>(), T(0));
+
1185  T totalsum = 0;
+
1186  if (a_ret_sum) {
+
1187  Gpu::dtoh_memcpy_async(&totalsum, out+(n-1), sizeof(T));
+
1188  }
+
1189  Gpu::streamSynchronize();
+
1190  AMREX_GPU_ERROR_CHECK();
+
1191  return totalsum;
+
1192 #else
+
1193  if (static_cast<Long>(n) <= static_cast<Long>(std::numeric_limits<int>::max())) {
+
1194  return PrefixSum<T>(static_cast<int>(n),
+
1195  [=] AMREX_GPU_DEVICE (N i) -> T { return in[i]; },
+
1196  [=] AMREX_GPU_DEVICE (N i, T const& x) { out[i] = x; },
+
1197  Type::inclusive, a_ret_sum);
+
1198  } else {
+
1199  return PrefixSum<T>(n,
+
1200  [=] AMREX_GPU_DEVICE (N i) -> T { return in[i]; },
+
1201  [=] AMREX_GPU_DEVICE (N i, T const& x) { out[i] = x; },
+
1202  Type::inclusive, a_ret_sum);
+
1203  }
+
1204 #endif
+
1205 }
+
1206 
+
1207 // The return value is the total sum if a_ret_sum is true.
+
1208 template <typename N, typename T, typename M=std::enable_if_t<std::is_integral<N>::value> >
+
1209 T ExclusiveSum (N n, T const* in, T * out, RetSum a_ret_sum = retSum)
+
1210 {
+
1211  if (n <= 0) return 0;
+
1212 #if defined(AMREX_USE_CUDA) && defined(__CUDACC__) && (__CUDACC_VER_MAJOR__ >= 11)
+
1213  T in_last = 0;
+
1214  if (a_ret_sum) {
+
1215  Gpu::dtoh_memcpy_async(&in_last, in+(n-1), sizeof(T));
+
1216  }
+
1217  void* d_temp = nullptr;
+
1218  std::size_t temp_bytes = 0;
+
1219  AMREX_GPU_SAFE_CALL(cub::DeviceScan::ExclusiveSum(d_temp, temp_bytes, in, out, n,
+
1220  Gpu::gpuStream()));
+
1221  d_temp = The_Arena()->alloc(temp_bytes);
+
1222  AMREX_GPU_SAFE_CALL(cub::DeviceScan::ExclusiveSum(d_temp, temp_bytes, in, out, n,
+
1223  Gpu::gpuStream()));
+
1224  T out_last = 0;
+
1225  if (a_ret_sum) {
+
1226  Gpu::dtoh_memcpy_async(&out_last, out+(n-1), sizeof(T));
+
1227  }
+
1228  Gpu::streamSynchronize();
+
1229  The_Arena()->free(d_temp);
+
1230  AMREX_GPU_ERROR_CHECK();
+
1231  return in_last+out_last;
+
1232 #elif defined(AMREX_USE_HIP)
+
1233  T in_last = 0;
+
1234  if (a_ret_sum) {
+
1235  Gpu::dtoh_memcpy_async(&in_last, in+(n-1), sizeof(T));
+
1236  }
+
1237  void* d_temp = nullptr;
+
1238  std::size_t temp_bytes = 0;
+
1239  AMREX_GPU_SAFE_CALL(rocprim::exclusive_scan(d_temp, temp_bytes, in, out, T{0}, n,
+
1240  rocprim::plus<T>(), Gpu::gpuStream()));
+
1241  d_temp = The_Arena()->alloc(temp_bytes);
+
1242  AMREX_GPU_SAFE_CALL(rocprim::exclusive_scan(d_temp, temp_bytes, in, out, T{0}, n,
+
1243  rocprim::plus<T>(), Gpu::gpuStream()));
+
1244  T out_last = 0;
+
1245  if (a_ret_sum) {
+
1246  Gpu::dtoh_memcpy_async(&out_last, out+(n-1), sizeof(T));
+
1247  }
+
1248  Gpu::streamSynchronize();
+
1249  The_Arena()->free(d_temp);
+
1250  AMREX_GPU_ERROR_CHECK();
+
1251  return in_last+out_last;
+
1252 #elif defined(AMREX_USE_SYCL) && defined(AMREX_USE_ONEDPL)
+
1253  T in_last = 0;
+
1254  if (a_ret_sum) {
+
1255  Gpu::dtoh_memcpy_async(&in_last, in+(n-1), sizeof(T));
+
1256  }
+
1257  auto policy = oneapi::dpl::execution::make_device_policy(Gpu::Device::streamQueue());
+
1258  std::exclusive_scan(policy, in, in+n, out, T(0), std::plus<T>());
+
1259  T out_last = 0;
+
1260  if (a_ret_sum) {
+
1261  Gpu::dtoh_memcpy_async(&out_last, out+(n-1), sizeof(T));
+
1262  }
+
1263  Gpu::streamSynchronize();
+
1264  AMREX_GPU_ERROR_CHECK();
+
1265  return in_last+out_last;
+
1266 #else
+
1267  if (static_cast<Long>(n) <= static_cast<Long>(std::numeric_limits<int>::max())) {
+
1268  return PrefixSum<T>(static_cast<int>(n),
+
1269  [=] AMREX_GPU_DEVICE (N i) -> T { return in[i]; },
+
1270  [=] AMREX_GPU_DEVICE (N i, T const& x) { out[i] = x; },
+
1271  Type::exclusive, a_ret_sum);
+
1272  } else {
+
1273  return PrefixSum<T>(n,
+
1274  [=] AMREX_GPU_DEVICE (N i) -> T { return in[i]; },
+
1275  [=] AMREX_GPU_DEVICE (N i, T const& x) { out[i] = x; },
+
1276  Type::exclusive, a_ret_sum);
+
1277  }
+
1278 #endif
+
1279 }
+
1280 
+
1281 #else
+
1282 // !defined(AMREX_USE_GPU)
+
1283 template <typename T, typename N, typename FIN, typename FOUT, typename TYPE,
+
1284  typename M=std::enable_if_t<std::is_integral<N>::value &&
+
1285  (std::is_same<std::decay_t<TYPE>,Type::Inclusive>::value ||
+
1286  std::is_same<std::decay_t<TYPE>,Type::Exclusive>::value)> >
+
1287 T PrefixSum (N n, FIN && fin, FOUT && fout, TYPE, RetSum = retSum)
+
1288 {
+
1289  if (n <= 0) return 0;
+
1290  T totalsum = 0;
+
1291  for (N i = 0; i < n; ++i) {
+
1292  T x = fin(i);
+
1293  T y = totalsum;
+
1294  totalsum += x;
+
1295  AMREX_IF_CONSTEXPR (std::is_same<std::decay_t<TYPE>,Type::Inclusive>::value) {
+
1296  y += x;
+
1297  }
+
1298  fout(i, y);
+
1299  }
+
1300  return totalsum;
+
1301 }
+
1302 
+
1303 // The return value is the total sum.
+
1304 template <typename N, typename T, typename M=std::enable_if_t<std::is_integral<N>::value> >
+
1305 T InclusiveSum (N n, T const* in, T * out, RetSum /*a_ret_sum*/ = retSum)
+
1306 {
+
1307 #if (__cplusplus >= 201703L) && (!defined(_GLIBCXX_RELEASE) || _GLIBCXX_RELEASE >= 10)
+
1308  // GCC's __cplusplus is not a reliable indication for C++17 support
+
1309  std::inclusive_scan(in, in+n, out);
+
1310 #else
+
1311  std::partial_sum(in, in+n, out);
+
1312 #endif
+
1313  return (n > 0) ? out[n-1] : T(0);
+
1314 }
+
1315 
+
1316 // The return value is the total sum.
+
1317 template <typename N, typename T, typename M=std::enable_if_t<std::is_integral<N>::value> >
+
1318 T ExclusiveSum (N n, T const* in, T * out, RetSum /*a_ret_sum*/ = retSum)
+
1319 {
+
1320  if (n <= 0) return 0;
+
1321 
+
1322  auto in_last = in[n-1];
+
1323 #if (__cplusplus >= 201703L) && (!defined(_GLIBCXX_RELEASE) || _GLIBCXX_RELEASE >= 10)
+
1324  // GCC's __cplusplus is not a reliable indication for C++17 support
+
1325  std::exclusive_scan(in, in+n, out, 0);
+
1326 #else
+
1327  out[0] = 0;
+
1328  std::partial_sum(in, in+n-1, out+1);
+
1329 #endif
+
1330  return in_last + out[n-1];
+
1331 }
+
1332 
+
1333 #endif
+
1334 
+
1335 }
+
1336 
+
1337 namespace Gpu
+
1338 {
+
1339  template<class InIter, class OutIter>
+
1340  OutIter inclusive_scan (InIter begin, InIter end, OutIter result)
+
1341  {
+
1342 #if defined(AMREX_USE_GPU)
+
1343  auto N = std::distance(begin, end);
+
1344  Scan::InclusiveSum(N, &(*begin), &(*result), Scan::noRetSum);
+
1345  OutIter result_end = result;
+
1346  std::advance(result_end, N);
+
1347  return result_end;
+
1348 #elif (__cplusplus >= 201703L) && (!defined(_GLIBCXX_RELEASE) || _GLIBCXX_RELEASE >= 10)
+
1349  // GCC's __cplusplus is not a reliable indication for C++17 support
+
1350  return std::inclusive_scan(begin, end, result);
+
1351 #else
+
1352  return std::partial_sum(begin, end, result);
+
1353 #endif
+
1354  }
+
1355 
+
1356  template<class InIter, class OutIter>
+
1357  OutIter exclusive_scan (InIter begin, InIter end, OutIter result)
+
1358  {
+
1359 #if defined(AMREX_USE_GPU)
+
1360  auto N = std::distance(begin, end);
+
1361  Scan::ExclusiveSum(N, &(*begin), &(*result), Scan::noRetSum);
+
1362  OutIter result_end = result;
+
1363  std::advance(result_end, N);
+
1364  return result_end;
+
1365 #elif (__cplusplus >= 201703L) && (!defined(_GLIBCXX_RELEASE) || _GLIBCXX_RELEASE >= 10)
+
1366  // GCC's __cplusplus is not a reliable indication for C++17 support
+
1367  return std::exclusive_scan(begin, end, result, 0);
+
1368 #else
+
1369  if (begin == end) return result;
+
1370 
+
1371  typename std::iterator_traits<InIter>::value_type sum = *begin;
+
1372  *result++ = sum - *begin;
+
1373 
+
1374  while (++begin != end) {
+
1375  sum = std::move(sum) + *begin;
+
1376  *result++ = sum - *begin;
+
1377  }
+
1378  return ++result;
+
1379 #endif
+
1380  }
+
1381 
+
1382 }}
+
1383 
+
1384 #endif
AMReX_Arena.H
AMREX_ALWAYS_ASSERT
#define AMREX_ALWAYS_ASSERT(EX)
Definition: AMReX_BLassert.H:50
AMReX_Extension.H
@@ -1502,19 +1501,19 @@
amrex::Gpu::Device::warp_size
static constexpr AMREX_EXPORT int warp_size
Definition: AMReX_GpuDevice.H:175
amrex::Gpu::Atomic::Exch
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T Exch(T *address, T val) noexcept
Definition: AMReX_GpuAtomic.H:483
amrex::Gpu::Atomic::Add
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T Add(T *sum, T value) noexcept
Definition: AMReX_GpuAtomic.H:196
-
amrex::Gpu::exclusive_scan
OutIter exclusive_scan(InIter begin, InIter end, OutIter result)
Definition: AMReX_Scan.H:1358
+
amrex::Gpu::exclusive_scan
OutIter exclusive_scan(InIter begin, InIter end, OutIter result)
Definition: AMReX_Scan.H:1357
amrex::Gpu::streamSynchronize
void streamSynchronize() noexcept
Definition: AMReX_GpuDevice.H:239
amrex::Gpu::dtoh_memcpy_async
void dtoh_memcpy_async(void *p_h, const void *p_d, const std::size_t sz) noexcept
Definition: AMReX_GpuDevice.H:267
-
amrex::Gpu::inclusive_scan
OutIter inclusive_scan(InIter begin, InIter end, OutIter result)
Definition: AMReX_Scan.H:1341
+
amrex::Gpu::inclusive_scan
OutIter inclusive_scan(InIter begin, InIter end, OutIter result)
Definition: AMReX_Scan.H:1340
amrex::Gpu::gpuStream
gpuStream_t gpuStream() noexcept
Definition: AMReX_GpuDevice.H:220
amrex::ParallelAllReduce::Sum
void Sum(T &v, MPI_Comm comm)
Definition: AMReX_ParallelReduce.H:204
amrex::Scan::Type::exclusive
static constexpr struct amrex::Scan::Type::Exclusive exclusive
amrex::Scan::Type::inclusive
static constexpr struct amrex::Scan::Type::Inclusive inclusive
-
amrex::Scan::InclusiveSum
T InclusiveSum(N n, T const *in, T *out, RetSum a_ret_sum=retSum)
Definition: AMReX_Scan.H:1149
-
amrex::Scan::ExclusiveSum
T ExclusiveSum(N n, T const *in, T *out, RetSum a_ret_sum=retSum)
Definition: AMReX_Scan.H:1210
+
amrex::Scan::InclusiveSum
T InclusiveSum(N n, T const *in, T *out, RetSum a_ret_sum=retSum)
Definition: AMReX_Scan.H:1148
+
amrex::Scan::ExclusiveSum
T ExclusiveSum(N n, T const *in, T *out, RetSum a_ret_sum=retSum)
Definition: AMReX_Scan.H:1209
amrex::Scan::noRetSum
static constexpr RetSum noRetSum
Definition: AMReX_Scan.H:30
amrex::Scan::retSum
static constexpr RetSum retSum
Definition: AMReX_Scan.H:29
-
amrex::Scan::PrefixSum
T PrefixSum(N n, FIN &&fin, FOUT &&fout, TYPE, RetSum a_ret_sum=retSum)
Definition: AMReX_Scan.H:907
+
amrex::Scan::PrefixSum
T PrefixSum(N n, FIN &&fin, FOUT &&fout, TYPE, RetSum a_ret_sum=retSum)
Definition: AMReX_Scan.H:906
amrex::detail::max
@ max
Definition: AMReX_ParallelReduce.H:17
amrex::detail::sum
@ sum
Definition: AMReX_ParallelReduce.H:19
amrex::openbc::M
static constexpr int M
Definition: AMReX_OpenBC.H:13
diff --git a/amrex/docs_html/doxygen/AMReX__StateDescriptor_8H.html b/amrex/docs_html/doxygen/AMReX__StateDescriptor_8H.html index f4ac823e7b..fedcf8aae3 100644 --- a/amrex/docs_html/doxygen/AMReX__StateDescriptor_8H.html +++ b/amrex/docs_html/doxygen/AMReX__StateDescriptor_8H.html @@ -133,8 +133,8 @@ - - + +

Typedefs

typedef std::function< void(Box const &bx, FArrayBox &data, const int dcomp, const int numcomp, Geometry const &geom, const Real time, const Vector< BCRec > &bcr, const int bcomp, const int scomp)> amrex::BndryFuncFabDefault
 
using amrex::BndryFuncFabDefault = std::function< void(Box const &bx, FArrayBox &data, int dcomp, int numcomp, Geometry const &geom, Real time, const Vector< BCRec > &bcr, int bcomp, int scomp)>
 
diff --git a/amrex/docs_html/doxygen/AMReX__StateDescriptor_8H.js b/amrex/docs_html/doxygen/AMReX__StateDescriptor_8H.js index fdc0fe0e4c..ad799a5ca0 100644 --- a/amrex/docs_html/doxygen/AMReX__StateDescriptor_8H.js +++ b/amrex/docs_html/doxygen/AMReX__StateDescriptor_8H.js @@ -3,5 +3,5 @@ var AMReX__StateDescriptor_8H = [ "StateDescriptor", "classamrex_1_1StateDescriptor.html", "classamrex_1_1StateDescriptor" ], [ "BndryFunc", "classamrex_1_1StateDescriptor_1_1BndryFunc.html", "classamrex_1_1StateDescriptor_1_1BndryFunc" ], [ "DescriptorList", "classamrex_1_1DescriptorList.html", "classamrex_1_1DescriptorList" ], - [ "BndryFuncFabDefault", "AMReX__StateDescriptor_8H.html#af0689a6124feceae5af1fb73e7b971f8", null ] + [ "BndryFuncFabDefault", "AMReX__StateDescriptor_8H.html#a33a085eaa4c95d211f6fce74e9440ff9", null ] ]; \ No newline at end of file diff --git a/amrex/docs_html/doxygen/AMReX__StateDescriptor_8H_source.html b/amrex/docs_html/doxygen/AMReX__StateDescriptor_8H_source.html index 2167710760..cb6f032d4b 100644 --- a/amrex/docs_html/doxygen/AMReX__StateDescriptor_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__StateDescriptor_8H_source.html @@ -121,11 +121,11 @@
20 
21 namespace amrex {
22 
-
23  typedef std::function<void(Box const& bx, FArrayBox& data,
-
24  const int dcomp, const int numcomp,
-
25  Geometry const& geom, const Real time,
-
26  const Vector<BCRec>& bcr, const int bcomp,
-
27  const int scomp)> BndryFuncFabDefault;
+
23  using BndryFuncFabDefault = std::function<void(Box const& bx, FArrayBox& data,
+
24  int dcomp, int numcomp,
+
25  Geometry const& geom, Real time,
+
26  const Vector<BCRec>& bcr, int bcomp,
+
27  int scomp)>;
28 
33 class StateDescriptor
34 {
@@ -141,16 +141,16 @@
50 
54  BndryFunc () noexcept = default;
55 
-
59  BndryFunc (BndryFuncDefault inFunc) noexcept : m_func(inFunc) {}
+
59  BndryFunc (BndryFuncDefault inFunc) noexcept : m_func(inFunc) {}
60 
-
61  BndryFunc (BndryFunc3DDefault inFunc) noexcept : m_func3D(inFunc) {}
+
61  BndryFunc (BndryFunc3DDefault inFunc) noexcept : m_func3D(inFunc) {}
62 
-
63  BndryFunc (BndryFuncFabDefault inFunc) noexcept : m_funcfab(std::move(inFunc)) {}
+
63  BndryFunc (BndryFuncFabDefault inFunc) noexcept : m_funcfab(std::move(inFunc)) {}
64 
-
71  BndryFunc (BndryFuncDefault inFunc,BndryFuncDefault gFunc) noexcept
+
71  BndryFunc (BndryFuncDefault inFunc,BndryFuncDefault gFunc) noexcept
72  : m_func(inFunc), m_gfunc(gFunc) {}
73 
-
74  BndryFunc (BndryFunc3DDefault inFunc,BndryFunc3DDefault gFunc) noexcept
+
74  BndryFunc (BndryFunc3DDefault inFunc,BndryFunc3DDefault gFunc) noexcept
75  : m_func3D(inFunc), m_gfunc3D(gFunc) {}
76 
90  void operator () (Real* data, const int* lo, const int* hi,
@@ -177,11 +177,11 @@
125 
126  private:
127 
-
128  BndryFuncDefault m_func = nullptr;
-
129  BndryFunc3DDefault m_func3D = nullptr;
-
130  BndryFuncDefault m_gfunc = nullptr;
-
131  BndryFunc3DDefault m_gfunc3D = nullptr;
-
132  BndryFuncFabDefault m_funcfab = nullptr;
+
128  BndryFuncDefault m_func = nullptr;
+
129  BndryFunc3DDefault m_func3D = nullptr;
+
130  BndryFuncDefault m_gfunc = nullptr;
+
131  BndryFunc3DDefault m_gfunc3D = nullptr;
+
132  BndryFuncFabDefault m_funcfab = nullptr;
133  bool m_run_on_gpu = false;
134  };
135 
@@ -454,9 +454,9 @@
amrex::StateDescriptor::dumpNames
void dumpNames(std::ostream &os, int start_comp, int num_comp) const
Output names of components.
Definition: AMReX_StateDescriptor.cpp:385
amrex::Vector
This class is a thin wrapper around std::vector. Unlike vector, Vector::operator[] provides bound che...
Definition: AMReX_Vector.H:28
amrex
Definition: AMReX_Amr.cpp:49
-
amrex::BndryFuncDefault
void(* BndryFuncDefault)(Real *data, AMREX_ARLIM_P(lo), AMREX_ARLIM_P(hi), const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)
Definition: AMReX_PhysBCFunct.H:18
-
amrex::BndryFunc3DDefault
void(* BndryFunc3DDefault)(Real *data, const int *lo, const int *hi, const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)
Definition: AMReX_PhysBCFunct.H:22
-
amrex::BndryFuncFabDefault
std::function< void(Box const &bx, FArrayBox &data, const int dcomp, const int numcomp, Geometry const &geom, const Real time, const Vector< BCRec > &bcr, const int bcomp, const int scomp)> BndryFuncFabDefault
Definition: AMReX_StateDescriptor.H:27
+
amrex::BndryFuncFabDefault
std::function< void(Box const &bx, FArrayBox &data, int dcomp, int numcomp, Geometry const &geom, Real time, const Vector< BCRec > &bcr, int bcomp, int scomp)> BndryFuncFabDefault
Definition: AMReX_StateDescriptor.H:27
+
amrex::BndryFunc3DDefault
void(*)(Real *data, const int *lo, const int *hi, const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc) BndryFunc3DDefault
Definition: AMReX_PhysBCFunct.H:25
+
amrex::BndryFuncDefault
void(*)(Real *data, AMREX_ARLIM_P(lo), AMREX_ARLIM_P(hi), const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc) BndryFuncDefault
Definition: AMReX_PhysBCFunct.H:21
diff --git a/amrex/docs_html/doxygen/AMReX__SundialsIntegrator_8H_source.html b/amrex/docs_html/doxygen/AMReX__SundialsIntegrator_8H_source.html index 5e16fb3a8f..0bca7c3147 100644 --- a/amrex/docs_html/doxygen/AMReX__SundialsIntegrator_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__SundialsIntegrator_8H_source.html @@ -166,7 +166,7 @@
65 {
66 private:
67  amrex::Real timestep;
-
68  typedef IntegratorBase<T> BaseT;
+
68  using BaseT = IntegratorBase<T>;
69 
70  bool use_erk_strategy;
71  bool use_mri_strategy;
@@ -180,7 +180,7 @@
79  SUNLinearSolver LSf; /* empty linear solver object */
80  void *inner_mem; /* empty ARKode memory structure */
81  void *mristep_mem; /* empty ARKode memory structure */
-
82  MPI_Comm mpi_comm; /* the MPI communicator */
+
82  MPI_Comm mpi_comm; /* the MPI communicator */
83  SUNContext sunctx; /* SUNDIALS Context object */
84 
85  std::string mri_outer_method, mri_inner_method, erk_method;
@@ -751,7 +751,7 @@
AMReX_REAL.H
AMReX_Sundials.H
AMReX_Vector.H
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
amrex::FabArrayBase::nGrow
int nGrow(int direction=0) const noexcept
Return the grow factor that defines the region of definition.
Definition: AMReX_FabArrayBase.H:68
amrex::FabArrayBase::nComp
int nComp() const noexcept
Return number of variables (aka components) associated with each point.
Definition: AMReX_FabArrayBase.H:73
amrex::IntegratorBase
Definition: AMReX_IntegratorBase.H:163
@@ -778,7 +778,6 @@
amrex::SundialsIntegrator::hfixed
Real hfixed
Definition: AMReX_SundialsIntegrator.H:91
amrex::SundialsIntegrator::nv_many_arr
N_Vector * nv_many_arr
Definition: AMReX_SundialsIntegrator.H:95
amrex::SundialsIntegrator::arkode_mem
void * arkode_mem
Definition: AMReX_SundialsIntegrator.H:77
-
amrex::SundialsIntegrator::BaseT
IntegratorBase< T > BaseT
Definition: AMReX_SundialsIntegrator.H:68
amrex::SundialsIntegrator::advance_erk
amrex::Real advance_erk(T &S_old, T &S_new, amrex::Real time, const amrex::Real time_step)
Definition: AMReX_SundialsIntegrator.H:198
amrex::SundialsIntegrator::inner_mem
void * inner_mem
Definition: AMReX_SundialsIntegrator.H:80
amrex::SundialsIntegrator::NVar
int NVar
Definition: AMReX_SundialsIntegrator.H:94
diff --git a/amrex/docs_html/doxygen/AMReX__TagBox_8H_source.html b/amrex/docs_html/doxygen/AMReX__TagBox_8H_source.html index 4907f7c35d..7fbf4ae0d3 100644 --- a/amrex/docs_html/doxygen/AMReX__TagBox_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__TagBox_8H_source.html @@ -122,7 +122,7 @@
27 {
28 public:
29 
-
31  typedef char TagType;
+
31  using TagType = char;
32 
34  enum TagVal { CLEAR=0, BUF, SET };
35 
@@ -188,7 +188,7 @@
152 {
153 public:
154 
-
156  typedef TagBox::TagType TagType;
+
156  using TagType = TagBox::TagType;
157 
165  TagBoxArray (const BoxArray& ba, const DistributionMapping& dm, int _ngrow=0);
166  TagBoxArray (const BoxArray& ba, const DistributionMapping& dm, const IntVect& _ngrow);
@@ -245,15 +245,15 @@
amrex::TagBoxArray
An array of TagBoxes.
Definition: AMReX_TagBox.H:152
amrex::TagBoxArray::TagBoxArray
TagBoxArray(const TagBoxArray &rhs)=delete
amrex::TagBoxArray::~TagBoxArray
~TagBoxArray()=default
-
amrex::TagBoxArray::TagType
TagBox::TagType TagType
The type of each tag.
Definition: AMReX_TagBox.H:156
amrex::TagBoxArray::TagBoxArray
TagBoxArray(TagBoxArray &&rhs) noexcept=default
+
amrex::TagBoxArray::TagType
TagBox::TagType TagType
The type of each tag.
Definition: AMReX_TagBox.H:156
amrex::TagBox
Tagged cells in a Box.
Definition: AMReX_TagBox.H:27
amrex::TagBox::get_itags
void get_itags(Vector< int > &ar, const Box &tilebx) const noexcept
Since a TagBox is a BaseFab<char>, we can use this utility function to allocate an integer array to h...
Definition: AMReX_TagBox.cpp:180
amrex::TagBox::coarsen
void coarsen(const IntVect &ratio, const Box &cbox) noexcept
Construct and return a new tagbox in which the coarsened cell is tagged of any of the corresponding f...
Definition: AMReX_TagBox.cpp:33
amrex::TagBox::TagBox
TagBox() noexcept=default
amrex::TagBox::operator=
TagBox & operator=(const TagBox &rhs)=delete
+
amrex::TagBox::TagType
char TagType
The type of each tag.
Definition: AMReX_TagBox.H:31
amrex::TagBox::tags
Vector< int > tags() const noexcept
Returns Vector<int> of size domain.numPts() suitable for calling Fortran, with positions set to same ...
Definition: AMReX_TagBox.cpp:124
-
amrex::TagBox::TagType
char TagType
The type of each tag.
Definition: AMReX_TagBox.H:31
amrex::TagBox::TagVal
TagVal
Possible values for each cell.
Definition: AMReX_TagBox.H:34
amrex::TagBox::SET
@ SET
Definition: AMReX_TagBox.H:34
amrex::TagBox::CLEAR
@ CLEAR
Definition: AMReX_TagBox.H:34
diff --git a/amrex/docs_html/doxygen/AMReX__Tuple_8H_source.html b/amrex/docs_html/doxygen/AMReX__Tuple_8H_source.html index a26176405e..2fd895d601 100644 --- a/amrex/docs_html/doxygen/AMReX__Tuple_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__Tuple_8H_source.html @@ -360,13 +360,13 @@
259  template <typename... Ts>
260  struct tuple_cat_result<GpuTuple<Ts...> >
261  {
-
262  typedef GpuTuple<Ts...> type;
+
262  using type = GpuTuple<Ts...>;
263  };
264 
265  template <typename... T1s, typename... T2s, typename... TPs>
266  struct tuple_cat_result<GpuTuple<T1s...>,GpuTuple<T2s...>,TPs...>
267  {
-
268  typedef typename tuple_cat_result<GpuTuple<T1s..., T2s...>, TPs...>::type type;
+
268  using type = typename tuple_cat_result<GpuTuple<T1s..., T2s...>, TPs...>::type;
269  };
270 
271  template <typename R, typename TP1, typename TP2, std::size_t... N1, std::size_t... N2>
@@ -385,7 +385,7 @@
284 constexpr auto
285 TupleCat (TP && a) -> typename detail::tuple_cat_result<detail::tuple_decay_t<TP> >::type
286 {
-
287  typedef typename detail::tuple_cat_result<detail::tuple_decay_t<TP> >::type ReturnType;
+
287  using ReturnType = typename detail::tuple_cat_result<detail::tuple_decay_t<TP> >::type;
288  return ReturnType(std::forward<TP>(a));
289 }
290 
@@ -395,8 +395,8 @@
294 TupleCat (TP1 && a, TP2 && b) -> typename detail::tuple_cat_result<detail::tuple_decay_t<TP1>,
295  detail::tuple_decay_t<TP2> >::type
296 {
-
297  typedef typename detail::tuple_cat_result<detail::tuple_decay_t<TP1>,
-
298  detail::tuple_decay_t<TP2> >::type ReturnType;
+
297  using ReturnType = typename detail::tuple_cat_result<detail::tuple_decay_t<TP1>,
+
298  detail::tuple_decay_t<TP2> >::type;
299  return detail::make_tuple<ReturnType>
300  (a, b,
301  std::make_index_sequence<GpuTupleSize<typename std::decay<TP1>::type>::value>(),
@@ -429,15 +429,15 @@
328  struct invoke_result<decltype(void(INVOKE(std::declval<F>(), std::declval<Args>()...))),
329  F, Args...>
330  {
-
331  typedef decltype(INVOKE(std::declval<F>(), std::declval<Args>()...)) type;
+
331  using type = decltype(INVOKE(std::declval<F>(), std::declval<Args>()...));
332  };
333 
-
334  template <typename F, typename...> struct apply_result {};
+
334  template <typename F, typename...> struct apply_result {};
335 
336  template <typename F, typename... Ts>
337  struct apply_result<F, GpuTuple<Ts...> >
338  {
-
339  typedef typename invoke_result<void, F, Ts...>::type type;
+
339  using type = typename invoke_result<void, F, Ts...>::type;
340  };
341 
342  template <typename F, typename TP, std::size_t... N>
@@ -511,7 +511,7 @@
amrex::GpuTupleElement< 0, GpuTuple< Head, Tail... > >::type
Head type
Definition: AMReX_Tuple.H:135
amrex::GpuTupleElement
Definition: AMReX_Tuple.H:127
amrex::GpuTupleSize
Definition: AMReX_Tuple.H:119
-
amrex::detail::apply_result< F, GpuTuple< Ts... > >::type
invoke_result< void, F, Ts... >::type type
Definition: AMReX_Tuple.H:339
+
amrex::detail::apply_result< F, GpuTuple< Ts... > >::type
typename invoke_result< void, F, Ts... >::type type
Definition: AMReX_Tuple.H:339
amrex::detail::apply_result
Definition: AMReX_Tuple.H:334
amrex::detail::gpu_tuple_element
Definition: AMReX_Tuple.H:26
amrex::detail::gpu_tuple_element::gpu_tuple_element
constexpr gpu_tuple_element(U &&a_value)
Definition: AMReX_Tuple.H:36
@@ -525,9 +525,9 @@
amrex::detail::gpu_tuple_impl< I, Head >::gpu_tuple_impl
constexpr gpu_tuple_impl(U &&a_head)
Definition: AMReX_Tuple.H:80
amrex::detail::gpu_tuple_impl< I, Head >::gpu_tuple_impl
constexpr AMREX_GPU_HOST_DEVICE gpu_tuple_impl()
Definition: AMReX_Tuple.H:73
amrex::detail::gpu_tuple_impl
Definition: AMReX_Tuple.H:43
+
amrex::detail::invoke_result< decltype(void(INVOKE(std::declval< F >(), std::declval< Args >()...))), F, Args... >::type
decltype(INVOKE(std::declval< F >(), std::declval< Args >()...)) type
Definition: AMReX_Tuple.H:331
amrex::detail::invoke_result
Definition: AMReX_Tuple.H:325
-
amrex::detail::tuple_cat_result< GpuTuple< T1s... >, GpuTuple< T2s... >, TPs... >::type
tuple_cat_result< GpuTuple< T1s..., T2s... >, TPs... >::type type
Definition: AMReX_Tuple.H:268
-
amrex::detail::tuple_cat_result< GpuTuple< Ts... > >::type
GpuTuple< Ts... > type
Definition: AMReX_Tuple.H:262
+
amrex::detail::tuple_cat_result< GpuTuple< T1s... >, GpuTuple< T2s... >, TPs... >::type
typename tuple_cat_result< GpuTuple< T1s..., T2s... >, TPs... >::type type
Definition: AMReX_Tuple.H:268
amrex::detail::tuple_cat_result
Definition: AMReX_Tuple.H:257
amrex::detail::unwrap< std::reference_wrapper< T > >::type
T & type
Definition: AMReX_Tuple.H:242
amrex::detail::unwrap
Definition: AMReX_Tuple.H:241
diff --git a/amrex/docs_html/doxygen/AMReX__Utility_8H.html b/amrex/docs_html/doxygen/AMReX__Utility_8H.html index 19b4e637ee..0133305f67 100644 --- a/amrex/docs_html/doxygen/AMReX__Utility_8H.html +++ b/amrex/docs_html/doxygen/AMReX__Utility_8H.html @@ -227,14 +227,14 @@ template<typename Key , typename T , class Compare > Long amrex::bytesOf (const std::map< Key, T, Compare > &m)   -void amrex::BroadcastBool (bool &bBool, int myLocalId, int rootId, const MPI_Comm &localComm) +void amrex::BroadcastBool (bool &bBool, int myLocalId, int rootId, const MPI_Comm &localComm)   -void amrex::BroadcastString (std::string &bStr, int myLocalId, int rootId, const MPI_Comm &localComm) +void amrex::BroadcastString (std::string &bStr, int myLocalId, int rootId, const MPI_Comm &localComm)   -void amrex::BroadcastStringArray (Vector< std::string > &bSA, int myLocalId, int rootId, const MPI_Comm &localComm) +void amrex::BroadcastStringArray (Vector< std::string > &bSA, int myLocalId, int rootId, const MPI_Comm &localComm)   template<class T > -void amrex::BroadcastArray (Vector< T > &aT, int myLocalId, int rootId, const MPI_Comm &localComm) +void amrex::BroadcastArray (Vector< T > &aT, int myLocalId, int rootId, const MPI_Comm &localComm)   void amrex::Sleep (double sleepsec)   diff --git a/amrex/docs_html/doxygen/AMReX__Utility_8H_source.html b/amrex/docs_html/doxygen/AMReX__Utility_8H_source.html index 270687ff22..6c584cd4b7 100644 --- a/amrex/docs_html/doxygen/AMReX__Utility_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__Utility_8H_source.html @@ -220,12 +220,12 @@
232  template <typename T> Long bytesOf (const std::vector<T>& v);
233  template <typename Key, typename T, class Compare> Long bytesOf (const std::map<Key,T,Compare>& m);
234 
-
235  void BroadcastBool(bool &bBool, int myLocalId, int rootId, const MPI_Comm &localComm);
+
235  void BroadcastBool(bool &bBool, int myLocalId, int rootId, const MPI_Comm &localComm);
236 
-
237  void BroadcastString(std::string &bStr, int myLocalId, int rootId, const MPI_Comm &localComm);
-
238  void BroadcastStringArray(Vector<std::string> &bSA, int myLocalId, int rootId, const MPI_Comm &localComm);
+
237  void BroadcastString(std::string &bStr, int myLocalId, int rootId, const MPI_Comm &localComm);
+
238  void BroadcastStringArray(Vector<std::string> &bSA, int myLocalId, int rootId, const MPI_Comm &localComm);
239 
-
240  template<class T> void BroadcastArray(Vector<T> &aT, int myLocalId, int rootId, const MPI_Comm &localComm);
+
240  template<class T> void BroadcastArray(Vector<T> &aT, int myLocalId, int rootId, const MPI_Comm &localComm);
241 
242  void Sleep (double sleepsec); // Sleep for sleepsec seconds
243 
@@ -253,7 +253,7 @@
265  }
266 }
267 
-
268 template<class T> void amrex::BroadcastArray(Vector<T> &aT, int myLocalId, int rootId, const MPI_Comm &localComm)
+
268 template<class T> void amrex::BroadcastArray(Vector<T> &aT, int myLocalId, int rootId, const MPI_Comm &localComm)
269 {
270  int aT_Size(-2);
271  if(myLocalId == rootId) {
@@ -415,7 +415,7 @@
amrex_free
void amrex_free(void *p)
Definition: AMReX_Utility.cpp:965
amrex_malloc
void * amrex_malloc(std::size_t size)
Definition: AMReX_Utility.cpp:959
AMReX_Vector.H
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
amrex::StreamRetry
Definition: AMReX_Utility.H:201
amrex::StreamRetry::spos
std::ostream::pos_type spos
Definition: AMReX_Utility.H:215
amrex::StreamRetry::TryFileOutput
bool TryFileOutput()
Definition: AMReX_Utility.cpp:661
diff --git a/amrex/docs_html/doxygen/AMReX__VisMFBuffer_8H_source.html b/amrex/docs_html/doxygen/AMReX__VisMFBuffer_8H_source.html index 7ba68315bf..758e4cb269 100644 --- a/amrex/docs_html/doxygen/AMReX__VisMFBuffer_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__VisMFBuffer_8H_source.html @@ -115,11 +115,11 @@
14 public:
16  enum { IO_Buffer_Size = 262144 * 8 };
18 #ifdef BL_SETBUF_SIGNED_CHAR
-
19  typedef signed char Setbuf_Char_Type;
+
19  using Setbuf_Char_Type = signed char;
20 #else
-
21  typedef char Setbuf_Char_Type;
+
21  using Setbuf_Char_Type = char;
22 #endif
-
24  typedef Vector<Setbuf_Char_Type> IO_Buffer;
+
24  using IO_Buffer = Vector<Setbuf_Char_Type>;
25 
26  static Long GetIOBufferSize () { return ioBufferSize; }
27  static void SetIOBufferSize (Long iobuffersize) {
@@ -144,9 +144,8 @@
amrex::Vector< Setbuf_Char_Type >
amrex::VisMFBuffer
Definition: AMReX_VisMFBuffer.H:13
amrex::VisMFBuffer::GetIOBufferSize
static Long GetIOBufferSize()
Definition: AMReX_VisMFBuffer.H:26
-
amrex::VisMFBuffer::IO_Buffer
Vector< Setbuf_Char_Type > IO_Buffer
A simple character buffer for setbuf() usage.
Definition: AMReX_VisMFBuffer.H:24
+
amrex::VisMFBuffer::Setbuf_Char_Type
char Setbuf_Char_Type
The type of a char buffer required by [p]setbuf().
Definition: AMReX_VisMFBuffer.H:21
amrex::VisMFBuffer::SetIOBufferSize
static void SetIOBufferSize(Long iobuffersize)
Definition: AMReX_VisMFBuffer.H:27
-
amrex::VisMFBuffer::Setbuf_Char_Type
char Setbuf_Char_Type
The type of a char buffer required by [p]setbuf().
Definition: AMReX_VisMFBuffer.H:21
amrex::VisMFBuffer::IO_Buffer_Size
@ IO_Buffer_Size
Definition: AMReX_VisMFBuffer.H:16
amrex::VisMFBuffer::ioBufferSize
static AMREX_EXPORT Long ioBufferSize
-— the settable buffer size
Definition: AMReX_VisMFBuffer.H:34
amrex
Definition: AMReX_Amr.cpp:49
diff --git a/amrex/docs_html/doxygen/AMReX__VisMF_8H_source.html b/amrex/docs_html/doxygen/AMReX__VisMF_8H_source.html index bc8b7dd0d1..883a45158d 100644 --- a/amrex/docs_html/doxygen/AMReX__VisMF_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__VisMF_8H_source.html @@ -155,7 +155,7 @@
80  };
82  Header ();
84  Header (const FabArray<FArrayBox>& mf, VisMF::How how, Version version = Version_v1,
-
85  bool calcMinMax = true, MPI_Comm = ParallelDescriptor::Communicator());
+
85  bool calcMinMax = true, MPI_Comm = ParallelDescriptor::Communicator());
86 
87  ~Header () = default;
88  Header (Header&& rhs) noexcept = default;
@@ -165,7 +165,7 @@
92 
94  void CalculateMinMax(const FabArray<FArrayBox>& mf,
95  int procToWrite = ParallelDescriptor::IOProcessorNumber(),
-
96  MPI_Comm = ParallelDescriptor::Communicator());
+
96  MPI_Comm = ParallelDescriptor::Communicator());
97  //
98  // The data.
99  //
@@ -263,10 +263,10 @@
244  FArrayBox* readFAB (int idx, int icomp);
245 
246  static int GetNOutFiles ();
-
247  static void SetNOutFiles (int noutfiles, MPI_Comm comm = ParallelDescriptor::Communicator());
+
247  static void SetNOutFiles (int noutfiles, MPI_Comm comm = ParallelDescriptor::Communicator());
248 
249  static int GetMFFileInStreams () { return nMFFileInStreams; }
-
250  static void SetMFFileInStreams (int nstreams, MPI_Comm comm = ParallelDescriptor::Communicator());
+
250  static void SetMFFileInStreams (int nstreams, MPI_Comm comm = ParallelDescriptor::Communicator());
251 
252  static int GetVerbose () { return verbose; }
253  static void SetVerbose (int v) { verbose = v; }
@@ -317,14 +317,14 @@
298  static Long WriteHeader (const std::string &mf_name,
299  VisMF::Header &hdr,
300  int procToWrite = ParallelDescriptor::IOProcessorNumber(),
-
301  MPI_Comm comm = ParallelDescriptor::Communicator());
+
301  MPI_Comm comm = ParallelDescriptor::Communicator());
302 
304  static void FindOffsets (const FabArray<FArrayBox> &mf,
305  const std::string &filePrefix,
306  VisMF::Header &hdr,
307  VisMF::Header::Version whichVersion,
308  NFilesIter &nfi,
-
309  MPI_Comm comm = ParallelDescriptor::Communicator());
+
309  MPI_Comm comm = ParallelDescriptor::Communicator());
317  static FArrayBox *readFAB (int idx,
318  const std::string &mf_name,
319  const Header &hdr,
@@ -724,7 +724,7 @@
AMReX_NFiles.H
AMReX_ParallelDescriptor.H
AMReX_VisMFBuffer.H
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
amrex::BoxArray
Definition: AMReX_BoxArray.H:529
amrex::BoxArray::writeOn
std::ostream & writeOn(std::ostream &) const
Output this BoxArray to a checkpoint file.
Definition: AMReX_BoxArray.cpp:472
amrex::BoxArray::readFrom
int readFrom(std::istream &is)
Initialize the BoxArray from the supplied istream. It is an error if the BoxArray has already been in...
Definition: AMReX_BoxArray.cpp:458
@@ -873,7 +873,7 @@
amrex::Read
std::enable_if_t< std::is_same< FAB, IArrayBox >::value > Read(FabArray< FAB > &fa, const std::string &name)
Read iMultiFab/FabArray<IArrayBox>
Definition: AMReX_VisMF.H:561
amrex::operator<<
std::ostream & operator<<(std::ostream &os, AmrMesh const &amr_mesh)
Definition: AMReX_AmrMesh.cpp:1035
detail
Definition: AMReX_FabArrayCommI.H:841
-
MPI_Status
Definition: AMReX_ccse-mpi.H:50
+
MPI_Status
Definition: AMReX_ccse-mpi.H:51
amrex::VisMF::FabOnDisk
A structure containing info regarding an on-disk FAB.
Definition: AMReX_VisMF.H:57
amrex::VisMF::FabOnDisk::m_head
Long m_head
Offset to start of FAB in file.
Definition: AMReX_VisMF.H:64
amrex::VisMF::FabOnDisk::m_name
std::string m_name
The two data values in a FabOnDisk structure.
Definition: AMReX_VisMF.H:63
diff --git a/amrex/docs_html/doxygen/AMReX__WriteBinaryParticleDataHDF5_8H_source.html b/amrex/docs_html/doxygen/AMReX__WriteBinaryParticleDataHDF5_8H_source.html index 501165c88b..1a5d335f19 100644 --- a/amrex/docs_html/doxygen/AMReX__WriteBinaryParticleDataHDF5_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__WriteBinaryParticleDataHDF5_8H_source.html @@ -178,7 +178,7 @@
77 }
78 
79 #ifdef BL_USE_MPI
-
80 static void SetHDF5fapl(hid_t fapl, MPI_Comm comm)
+
80 static void SetHDF5fapl(hid_t fapl, MPI_Comm comm)
81 #else
82 static void SetHDF5fapl(hid_t fapl)
83 #endif
@@ -576,7 +576,7 @@
ReadHDF5Attr
static int ReadHDF5Attr(hid_t loc, const char *name, void *data, hid_t dtype)
Definition: AMReX_WriteBinaryParticleDataHDF5.H:59
CreateWriteHDF5AttrString
static int CreateWriteHDF5AttrString(hid_t loc, const char *name, const char *str)
Definition: AMReX_WriteBinaryParticleDataHDF5.H:28
WriteHDF5ParticleDataSync
void WriteHDF5ParticleDataSync(PC const &pc, const std::string &dir, const std::string &name, const Vector< int > &write_real_comp, const Vector< int > &write_int_comp, const Vector< std::string > &real_comp_names, const Vector< std::string > &int_comp_names, const std::string &compression, F &&f, bool is_checkpoint)
Definition: AMReX_WriteBinaryParticleDataHDF5.H:115
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
amrex::ParmParse::queryAdd
int queryAdd(const char *name, T &ref)
If name is found, the value in the ParmParse database will be stored in the ref argument....
Definition: AMReX_ParmParse.H:955
amrex::Print
This class provides the user with a few print options.
Definition: AMReX_Print.H:35
amrex::Gpu::range_detail::size
AMREX_GPU_HOST_DEVICE Long size(T const &b) noexcept
integer version
Definition: AMReX_GpuRange.H:25
diff --git a/amrex/docs_html/doxygen/AMReX__WriteBinaryParticleData_8H_source.html b/amrex/docs_html/doxygen/AMReX__WriteBinaryParticleData_8H_source.html index b69b56dc6c..855251b23d 100644 --- a/amrex/docs_html/doxygen/AMReX__WriteBinaryParticleData_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__WriteBinaryParticleData_8H_source.html @@ -1224,7 +1224,7 @@
amrex::ParallelDescriptor::IOProcessorNumber
int IOProcessorNumber() noexcept
Definition: AMReX_ParallelDescriptor.H:247
amrex::ParallelDescriptor::Barrier
void Barrier(const std::string &)
Definition: AMReX_ParallelDescriptor.cpp:1164
amrex::ParallelDescriptor::IOProcessor
bool IOProcessor() noexcept
Is this CPU the I/O Processor? To get the rank number, call IOProcessorNumber()
Definition: AMReX_ParallelDescriptor.H:256
-
amrex::Scan::ExclusiveSum
T ExclusiveSum(N n, T const *in, T *out, RetSum a_ret_sum=retSum)
Definition: AMReX_Scan.H:1210
+
amrex::Scan::ExclusiveSum
T ExclusiveSum(N n, T const *in, T *out, RetSum a_ret_sum=retSum)
Definition: AMReX_Scan.H:1209
amrex::Scan::retSum
static constexpr RetSum retSum
Definition: AMReX_Scan.H:29
amrex::SundialsUserFun::f
static int f(realtype t, N_Vector y_data, N_Vector y_rhs, void *user_data)
Definition: AMReX_SundialsIntegrator.H:40
amrex::detail::min
@ min
Definition: AMReX_ParallelReduce.H:18
diff --git a/amrex/docs_html/doxygen/AMReX__ccse-mpi_8H.html b/amrex/docs_html/doxygen/AMReX__ccse-mpi_8H.html index c32665e391..9982598f8c 100644 --- a/amrex/docs_html/doxygen/AMReX__ccse-mpi_8H.html +++ b/amrex/docs_html/doxygen/AMReX__ccse-mpi_8H.html @@ -126,16 +126,16 @@ - - - - - - - - - - + + + + + + + + + +

Typedefs

typedef int MPI_Op
 
typedef int MPI_Comm
 
typedef int MPI_Group
 
typedef int MPI_Datatype
 
typedef int MPI_Request
 
using MPI_Op = int
 
using MPI_Comm = int
 
using MPI_Group = int
 
using MPI_Datatype = int
 
using MPI_Request = int
 
@@ -159,70 +159,70 @@

Variables

 

Typedef Documentation

- -

◆ MPI_Comm

+ +

◆ MPI_Comm

- +
typedef int MPI_Commusing MPI_Comm = int
- -

◆ MPI_Datatype

+ +

◆ MPI_Datatype

- +
typedef int MPI_Datatypeusing MPI_Datatype = int
- -

◆ MPI_Group

+ +

◆ MPI_Group

- +
typedef int MPI_Groupusing MPI_Group = int
- -

◆ MPI_Op

+ +

◆ MPI_Op

- +
typedef int MPI_Opusing MPI_Op = int
- -

◆ MPI_Request

+ +

◆ MPI_Request

- +
typedef int MPI_Requestusing MPI_Request = int
diff --git a/amrex/docs_html/doxygen/AMReX__ccse-mpi_8H.js b/amrex/docs_html/doxygen/AMReX__ccse-mpi_8H.js index 34cd5d9caf..31f67c2571 100644 --- a/amrex/docs_html/doxygen/AMReX__ccse-mpi_8H.js +++ b/amrex/docs_html/doxygen/AMReX__ccse-mpi_8H.js @@ -2,11 +2,11 @@ var AMReX__ccse_mpi_8H = [ [ "MPI_Status", "structMPI__Status.html", null ], [ "Mpi_typemap", "structamrex_1_1ParallelDescriptor_1_1Mpi__typemap.html", "structamrex_1_1ParallelDescriptor_1_1Mpi__typemap" ], - [ "MPI_Comm", "AMReX__ccse-mpi_8H.html#a68c509d4adb3f4a1d6fe3a9b0b87c7b9", null ], - [ "MPI_Datatype", "AMReX__ccse-mpi_8H.html#affc17fe964f9f670fb06e09d6134b4ff", null ], - [ "MPI_Group", "AMReX__ccse-mpi_8H.html#a2e7770334e9e65834ce3c95dd0c3a50f", null ], - [ "MPI_Op", "AMReX__ccse-mpi_8H.html#a1e6360539c256e76b432da612d0ec399", null ], - [ "MPI_Request", "AMReX__ccse-mpi_8H.html#a240e9d13a157e03c75e42306b13cd8d8", null ], + [ "MPI_Comm", "AMReX__ccse-mpi_8H.html#a161d2f0d69c09838316e4ea9a74f02d7", null ], + [ "MPI_Datatype", "AMReX__ccse-mpi_8H.html#adf4ce151c5bdb0d3323d314ab596eab9", null ], + [ "MPI_Group", "AMReX__ccse-mpi_8H.html#a3bb76afe62d9b415f238c21a9a15aa51", null ], + [ "MPI_Op", "AMReX__ccse-mpi_8H.html#a5a1a25e9ccd1a4e3472f0d43950d23d9", null ], + [ "MPI_Request", "AMReX__ccse-mpi_8H.html#a23b1c3c102feb1d5cc31dce957bbd51d", null ], [ "MPI_COMM_NULL", "AMReX__ccse-mpi_8H.html#a9eb867d9cda6acfce33985d67a31d5fc", null ], [ "MPI_COMM_WORLD", "AMReX__ccse-mpi_8H.html#a649b08b1c31a7d849bc410586ac94320", null ], [ "MPI_DATATYPE_NULL", "AMReX__ccse-mpi_8H.html#ad811cd3f200673ba10add55a7378e8b6", null ], diff --git a/amrex/docs_html/doxygen/AMReX__ccse-mpi_8H_source.html b/amrex/docs_html/doxygen/AMReX__ccse-mpi_8H_source.html index 2e3c3d8205..66e076ea65 100644 --- a/amrex/docs_html/doxygen/AMReX__ccse-mpi_8H_source.html +++ b/amrex/docs_html/doxygen/AMReX__ccse-mpi_8H_source.html @@ -121,34 +121,34 @@
20  template <class T>
22  struct Mpi_typemap
23  {
-
24  static MPI_Datatype type();
+
24  static MPI_Datatype type();
25  };
26  //
27  // Template functions to return MPI_Datatype depending on argument type.
28  //
- - - - - - - - - - - - - + + + + + + + + + + + + +
42 }
43 
44 #else
45 
-
46 typedef int MPI_Op;
-
47 typedef int MPI_Comm;
-
48 typedef int MPI_Group;
-
49 typedef int MPI_Datatype;
-
50 struct MPI_Status {};
-
51 typedef int MPI_Request;
+
46 using MPI_Op = int;
+
47 using MPI_Comm = int;
+
48 using MPI_Group = int;
+
49 using MPI_Datatype = int;
+
50 using MPI_Request = int;
+
51 struct MPI_Status {};
52 static constexpr int MPI_DATATYPE_NULL = 0;
53 static constexpr int MPI_REQUEST_NULL = 0;
54 static constexpr int MPI_COMM_WORLD = 0;
@@ -165,7 +165,7 @@
65  template <class T>
67  struct Mpi_typemap
68  {
-
69  static MPI_Datatype type();
+
69  static MPI_Datatype type();
70  };
71 }
72 
@@ -173,21 +173,22 @@
74 
75 #endif
static constexpr int MPI_GROUP_NULL
Definition: AMReX_ccse-mpi.H:56
-
int MPI_Op
Definition: AMReX_ccse-mpi.H:46
-
int MPI_Request
Definition: AMReX_ccse-mpi.H:51
-
int MPI_Group
Definition: AMReX_ccse-mpi.H:48
+
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
int MPI_Request
Definition: AMReX_ccse-mpi.H:50
+
int MPI_Group
Definition: AMReX_ccse-mpi.H:48
+
int MPI_Op
Definition: AMReX_ccse-mpi.H:46
static constexpr int MPI_COMM_WORLD
Definition: AMReX_ccse-mpi.H:54
-
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
static constexpr int MPI_PROC_NULL
Definition: AMReX_ccse-mpi.H:57
static constexpr int MPI_COMM_NULL
Definition: AMReX_ccse-mpi.H:55
static constexpr int MPI_MAXLOC
Definition: AMReX_ccse-mpi.H:61
static constexpr int MPI_MAX_PROCESSOR_NAME
Definition: AMReX_ccse-mpi.H:58
static constexpr int MPI_DATATYPE_NULL
Definition: AMReX_ccse-mpi.H:52
+
int MPI_Datatype
Definition: AMReX_ccse-mpi.H:49
static constexpr int MPI_REQUEST_NULL
Definition: AMReX_ccse-mpi.H:53
static constexpr int MPI_MINLOC
Definition: AMReX_ccse-mpi.H:60
-
int MPI_Datatype
Definition: AMReX_ccse-mpi.H:49
Parallel frontend that abstracts functionalities needed to spawn processes and handle communication.
Definition: AMReX_ccse-mpi.H:64
-
Definition: AMReX_ccse-mpi.H:50
+
const int[]
Definition: AMReX_BLProfiler.cpp:1664
+
Definition: AMReX_ccse-mpi.H:51
Communication datatype (note: this structure also works without MPI)
Definition: AMReX_ccse-mpi.H:68
diff --git a/amrex/docs_html/doxygen/BL__HPGMG_8H_source.html b/amrex/docs_html/doxygen/BL__HPGMG_8H_source.html index eb149b6aaf..51610ea751 100644 --- a/amrex/docs_html/doxygen/BL__HPGMG_8H_source.html +++ b/amrex/docs_html/doxygen/BL__HPGMG_8H_source.html @@ -155,7 +155,7 @@
54  int num_blocks[3]; // number of blocks in each list... num_blocks[pack,local,unpack]
55  blockCopy_type * blocks[3]; // list of block copies... blocks[pack,local,unpack]
56  #ifdef BL_USE_MPI
-
57  MPI_Request * __restrict__ requests;
+
57  MPI_Request * __restrict__ requests;
58  MPI_Status * __restrict__ status;
59  #endif
60 } communicator_type;
@@ -206,7 +206,7 @@
105  communicator_type restriction[4]; // mini program that performs restriction and agglomeration for [0=cell centered, 1=i-face, 2=j-face, 3-k-face]
106  communicator_type interpolation; // mini program that performs interpolation and dissemination...
107  #ifdef BL_USE_MPI
-
108  MPI_Comm MPI_COMM_ALLREDUCE; // MPI sub communicator for just the ranks that have boxes on this level or any subsequent level...
+
108  MPI_Comm MPI_COMM_ALLREDUCE; // MPI sub communicator for just the ranks that have boxes on this level or any subsequent level...
109  #endif
110  double dominant_eigenvalue_of_DinvA; // estimate on the dominate eigenvalue of D^{-1}A
111  int must_subtract_mean; // e.g. Poisson with Periodic BC's
@@ -289,7 +289,7 @@
188  double mean (level_type * level, int id_a);
189  void shift_vector (level_type * level, int id_c, int id_a, double shift_a);
190  void rebuild_operator (level_type * level, level_type * fromLevel, double a, double b);
-
191  void MGBuild (mg_type * all_grids, level_type * fine_grid, double a, double b, int minCoarseGridDim, const MPI_Comm comm);
+
191  void MGBuild (mg_type * all_grids, level_type * fine_grid, double a, double b, int minCoarseGridDim, const MPI_Comm comm);
192  void MGResetTimers (mg_type * all_grids);
193  void zero_vector (level_type * level, int component_id);
194  void MGSolve (mg_type *all_grids, int onLevel, int u_id, int F_id, double a, double b, double dtol, double rtol);
@@ -337,13 +337,13 @@
236 
237 #endif /* BL_HPGMG_H */
AMReX_MultiFab.H
-
MPI_Request
int MPI_Request
Definition: AMReX_ccse-mpi.H:51
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Request
int MPI_Request
Definition: AMReX_ccse-mpi.H:50
amrex::MultiFab
A collection (stored as an array) of FArrayBox objects. This class is useful for storing floating poi...
Definition: AMReX_MultiFab.H:40
amrex::EB2::max_grid_size
AMREX_EXPORT int max_grid_size
Definition: AMReX_EB2.cpp:23
amrex::EBSupport::volume
@ volume
amrex::norm
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T norm(const GpuComplex< T > &a_z) noexcept
Return the norm (magnitude squared) of a complex number.
Definition: AMReX_GpuComplex.H:340
-
MPI_Status
Definition: AMReX_ccse-mpi.H:50
+
MPI_Status
Definition: AMReX_ccse-mpi.H:51
diff --git a/amrex/docs_html/doxygen/Dfft_8H_source.html b/amrex/docs_html/doxygen/Dfft_8H_source.html index 11edc1d00c..ec32dfb728 100644 --- a/amrex/docs_html/doxygen/Dfft_8H_source.html +++ b/amrex/docs_html/doxygen/Dfft_8H_source.html @@ -193,7 +193,7 @@
92  int global_ng(int i) const { return d.global_ng(i); }
93  int const (& global_ng() const)[3] { return d.global_ng(); }
94  size_t global_size() const { return d.global_size(); }
-
95  MPI_Comm parent_comm() const { return d.parent_comm(); }
+
95  MPI_Comm parent_comm() const { return d.parent_comm(); }
96 
97 
98 
@@ -215,7 +215,7 @@
114  int const (& local_ng_rspace() const)[3] { return d.local_ng_3d();}
115 
116  // 3D cartesian communicator in r-space
-
117  MPI_Comm cartcomm_rspace() const { return d.cart_3d(); }
+
117  MPI_Comm cartcomm_rspace() const { return d.cart_3d(); }
118 
119 
120 
@@ -232,7 +232,7 @@
131  int const (& local_ng_kspace() const)[3] { return d.local_ng_2d_z();}
132 
133  // 3D cartesian communicator in k-space
-
134  MPI_Comm cartcomm_kspace() const { return d.cart_2d_z(); }
+
134  MPI_Comm cartcomm_kspace() const { return d.cart_2d_z(); }
135 
136 
137 
@@ -730,7 +730,7 @@
629 } // namespace hacc
630 
631 #endif // HACC_DFFT_HPP
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
FFTW_ADDR
#define FFTW_ADDR(X)
Definition: Dfft.H:83
Distribution.H
Error.h
diff --git a/amrex/docs_html/doxygen/Distribution_8H_source.html b/amrex/docs_html/doxygen/Distribution_8H_source.html index 7816482e5b..3460196111 100644 --- a/amrex/docs_html/doxygen/Distribution_8H_source.html +++ b/amrex/docs_html/doxygen/Distribution_8H_source.html @@ -180,7 +180,7 @@
81 
82  // standard setup
83 
-
84  Distribution(MPI_Comm comm,
+
84  Distribution(MPI_Comm comm,
85  int const n[],
86  bool debug = false)
87  : m_comm(comm), m_rmap(NULL), m_debug(debug)
@@ -189,7 +189,7 @@
90  initialize(comm, n, Ndims);
91  }
92 
-
93  Distribution(MPI_Comm comm,
+
93  Distribution(MPI_Comm comm,
94  int ng,
95  bool debug = false)
96  : m_comm(comm), m_rmap(NULL), m_debug(debug)
@@ -201,7 +201,7 @@
102 
103  // custom setup with 3d decomposition and grid to rank map
104 
-
105  Distribution(MPI_Comm comm,
+
105  Distribution(MPI_Comm comm,
106  int const n[],
107  int const Ndims[],
108  int *rmap,
@@ -211,7 +211,7 @@
112  initialize(comm, n, Ndims);
113  }
114 
-
115  Distribution(MPI_Comm comm,
+
115  Distribution(MPI_Comm comm,
116  int ng,
117  int const Ndims[],
118  int *rmap,
@@ -234,7 +234,7 @@
135 
136  // initialization
137 
-
138  void initialize(MPI_Comm comm, int const n[], int const Ndims[]) {
+
138  void initialize(MPI_Comm comm, int const n[], int const Ndims[]) {
139  int flag;
140  MPI_Initialized(&flag);
141  if (flag == 0) {
@@ -333,13 +333,13 @@
234 
235  // communicators
236 
-
237  MPI_Comm cart_1d() const { return m_d.process_topology_1.cart;}
-
238  MPI_Comm cart_2d_x() const { return m_d.process_topology_2_x.cart;}
-
239  MPI_Comm cart_2d_y() const { return m_d.process_topology_2_y.cart;}
-
240  MPI_Comm cart_2d_z() const { return m_d.process_topology_2_z.cart;}
-
241  MPI_Comm cart_3d() const { return m_d.process_topology_3.cart;}
+
237  MPI_Comm cart_1d() const { return m_d.process_topology_1.cart;}
+
238  MPI_Comm cart_2d_x() const { return m_d.process_topology_2_x.cart;}
+
239  MPI_Comm cart_2d_y() const { return m_d.process_topology_2_y.cart;}
+
240  MPI_Comm cart_2d_z() const { return m_d.process_topology_2_z.cart;}
+
241  MPI_Comm cart_3d() const { return m_d.process_topology_3.cart;}
242 
-
243  MPI_Comm parent_comm() const { return m_comm;}
+
243  MPI_Comm parent_comm() const { return m_comm;}
244 
245 
246  //
@@ -376,14 +376,14 @@
277  distribution_t m_d;
278 
279 protected:
-
280  MPI_Comm m_comm;
+
280  MPI_Comm m_comm;
281  int* m_rmap;
282  bool m_debug;
283 };
284 
285 } // namespace hacc
286 #endif // HACC_DISTRIBUTION_HPP
-
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
MPI_Comm
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
hacc::Distribution
Definition: Distribution.H:73
hacc::Distribution::coords_2d_x
void coords_2d_x(int r, int c[])
Definition: Distribution.H:269
hacc::Distribution::m_rmap
int * m_rmap
Definition: Distribution.H:281
diff --git a/amrex/docs_html/doxygen/TimingStats_8h.html b/amrex/docs_html/doxygen/TimingStats_8h.html index 6a640e431e..17b6dd6e50 100644 --- a/amrex/docs_html/doxygen/TimingStats_8h.html +++ b/amrex/docs_html/doxygen/TimingStats_8h.html @@ -109,7 +109,7 @@ - +

Functions

void printTimingStats (MPI_Comm comm, const char *preamble, double dt)
void printTimingStats (MPI_Comm comm, const char *preamble, double dt)
 

Function Documentation

@@ -125,7 +125,7 @@

void printTimingStats ( - MPI_Comm  + MPI_Comm  comm, diff --git a/amrex/docs_html/doxygen/TimingStats_8h_source.html b/amrex/docs_html/doxygen/TimingStats_8h_source.html index 39c97215c1..0e15462e1e 100644 --- a/amrex/docs_html/doxygen/TimingStats_8h_source.html +++ b/amrex/docs_html/doxygen/TimingStats_8h_source.html @@ -171,7 +171,7 @@
70 #endif
71 
72 inline
-
73 void printTimingStats(MPI_Comm comm, // comm for MPI_Allreduce()
+
73 void printTimingStats(MPI_Comm comm, // comm for MPI_Allreduce()
74  const char *preamble, // text at beginning of line
75  double dt) // delta t in seconds
76 {
@@ -207,7 +207,7 @@
106 #endif
107 
108 #endif // HACC_TIMINGSTATS_H
-
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
void printTimingStats(MPI_Comm comm, const char *preamble, double dt)
Definition: TimingStats.h:73
@ min
Definition: AMReX_ParallelReduce.H:18
@ max
Definition: AMReX_ParallelReduce.H:17
diff --git a/amrex/docs_html/doxygen/classamrex_1_1AllPrint.html b/amrex/docs_html/doxygen/classamrex_1_1AllPrint.html index 053fd1d429..7fadbb1237 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1AllPrint.html +++ b/amrex/docs_html/doxygen/classamrex_1_1AllPrint.html @@ -129,7 +129,7 @@  Print (int rank_, std::ostream &os_=amrex::OutStream())  Print on all processors of the default communicator Example: Print(Print::AllProcs) << " x = " << x << std::endl;. More...
  - Print (int rank_, MPI_Comm comm_, std::ostream &os_=amrex::OutStream()) + Print (int rank_, MPI_Comm comm_, std::ostream &os_=amrex::OutStream())  Print on process rank_ of communicator comm_ Example: Print(rank_, comm_) << " x = " << x << std::endl;. More...
   ~Print () diff --git a/amrex/docs_html/doxygen/classamrex_1_1AllPrintToFile.html b/amrex/docs_html/doxygen/classamrex_1_1AllPrintToFile.html index 28a59405ef..27b93fd101 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1AllPrintToFile.html +++ b/amrex/docs_html/doxygen/classamrex_1_1AllPrintToFile.html @@ -127,7 +127,7 @@    PrintToFile (std::string file_name_, int rank_)   - PrintToFile (std::string file_name_, int rank_, MPI_Comm comm_) + PrintToFile (std::string file_name_, int rank_, MPI_Comm comm_)    ~PrintToFile ()   diff --git a/amrex/docs_html/doxygen/classamrex_1_1Amr-members.html b/amrex/docs_html/doxygen/classamrex_1_1Amr-members.html index 09c3c6ae69..b23e529c6e 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1Amr-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1Amr-members.html @@ -127,7 +127,7 @@ bldFineLevels(Real strt_time)amrex::Amrprotected blocking_factoramrex::AmrInfoprotected blockingFactor(int lev) const noexceptamrex::AmrMeshinline - BoundaryPointList typedefamrex::Amrprivate + BoundaryPointList typedefamrex::Amrprivate boxArray() const noexceptamrex::AmrMeshinline boxArray(int lev) const noexceptamrex::AmrMeshinline boxArray(int a_coarsest_lev, int a_finest_lev) const noexceptamrex::AmrMeshinline diff --git a/amrex/docs_html/doxygen/classamrex_1_1Amr.html b/amrex/docs_html/doxygen/classamrex_1_1Amr.html index eae78c9f25..b1559356c6 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1Amr.html +++ b/amrex/docs_html/doxygen/classamrex_1_1Amr.html @@ -308,23 +308,23 @@   int stepOfLastCheckPoint () const noexcept   -void setBoundaryGeometry (BoundaryPointList &IntersectLoX, BoundaryPointList &IntersectHiX, BoundaryPointList &IntersectLoY, BoundaryPointList &IntersectHiY) noexcept +void setBoundaryGeometry (BoundaryPointList &IntersectLoX, BoundaryPointList &IntersectHiX, BoundaryPointList &IntersectLoY, BoundaryPointList &IntersectHiY) noexcept  Specialized version: Define BoundaryPointLists that give the intersections of the external geometry with constant (i,k) and (j,k) These are defined at the coarsest level indexing only. More...
  -void setBoundaryGeometry (BoundaryPointList &IntersectLoX, BoundaryPointList &IntersectHiX, BoundaryPointList &IntersectLoY, BoundaryPointList &IntersectHiY, BoundaryPointList &IntersectLoZ, BoundaryPointList &IntersectHiZ) noexcept +void setBoundaryGeometry (BoundaryPointList &IntersectLoX, BoundaryPointList &IntersectHiX, BoundaryPointList &IntersectLoY, BoundaryPointList &IntersectHiY, BoundaryPointList &IntersectLoZ, BoundaryPointList &IntersectHiZ) noexcept  More general version: Define BoundaryPointLists that give the intersections of the external geometry with constant (i,k),(j,k) and (i,j). These are defined at the coarsest level indexing only. More...
  -BoundaryPointListgetIntersectLoX () noexcept +BoundaryPointListgetIntersectLoX () noexcept   -BoundaryPointListgetIntersectHiX () noexcept +BoundaryPointListgetIntersectHiX () noexcept   -BoundaryPointListgetIntersectLoY () noexcept +BoundaryPointListgetIntersectLoY () noexcept   -BoundaryPointListgetIntersectHiY () noexcept +BoundaryPointListgetIntersectHiY () noexcept   -BoundaryPointListgetIntersectLoZ () noexcept +BoundaryPointListgetIntersectLoZ () noexcept   -BoundaryPointListgetIntersectHiZ () noexcept +BoundaryPointListgetIntersectHiZ () noexcept   void InstallNewDistributionMap (int lev, const DistributionMapping &newdm)   @@ -577,17 +577,17 @@ - + - + - + - + - + - +

Public Attributes

BoundaryPointList intersect_lox
BoundaryPointList intersect_lox
 
BoundaryPointList intersect_loy
BoundaryPointList intersect_loy
 
BoundaryPointList intersect_loz
BoundaryPointList intersect_loz
 
BoundaryPointList intersect_hix
BoundaryPointList intersect_hix
 
BoundaryPointList intersect_hiy
BoundaryPointList intersect_hiy
 
BoundaryPointList intersect_hiz
BoundaryPointList intersect_hiz
 

@@ -890,8 +890,8 @@

- - + +

Private Types

typedef std::multimap< std::pair< int, int >, double > BoundaryPointList
 
using BoundaryPointList = std::multimap< std::pair< int, int >, double >
 
@@ -902,8 +902,8 @@

Manage hierarchy of levels for time-dependent AMR computations.

The Amr class is designed to manage parts of the computation which do not belong on a single level, like establishing and updating the hierarchy of levels, global timestepping, and managing the different AmrLevels

Member Typedef Documentation

- -

◆ BoundaryPointList

+ +

◆ BoundaryPointList

@@ -912,7 +912,7 @@

Private Member Functions

- +
typedef std::multimap< std::pair<int, int>, double > amrex::Amr::BoundaryPointListusing amrex::Amr::BoundaryPointList = std::multimap< std::pair<int, int>, double >
@@ -2312,7 +2312,7 @@

- + @@ -2337,7 +2337,7 @@

BoundaryPointList& amrex::Amr::getIntersectHiX BoundaryPointList& amrex::Amr::getIntersectHiX ( )
- + @@ -2362,7 +2362,7 @@

BoundaryPointList& amrex::Amr::getIntersectHiY BoundaryPointList& amrex::Amr::getIntersectHiY ( )
- + @@ -2387,7 +2387,7 @@

BoundaryPointList& amrex::Amr::getIntersectHiZ BoundaryPointList& amrex::Amr::getIntersectHiZ ( )
- + @@ -2412,7 +2412,7 @@

BoundaryPointList& amrex::Amr::getIntersectLoX BoundaryPointList& amrex::Amr::getIntersectLoX ( )
- + @@ -2437,7 +2437,7 @@

BoundaryPointList& amrex::Amr::getIntersectLoY BoundaryPointList& amrex::Amr::getIntersectLoY ( )
- + @@ -3913,25 +3913,25 @@

void amrex::Amr::setBoundaryGeometry

- + - + - + - + @@ -3963,37 +3963,37 @@

void amrex::Amr::setBoundaryGeometry

- + - + - + - + - + - + @@ -5464,7 +5464,7 @@

BoundaryPointList& amrex::Amr::getIntersectLoZ BoundaryPointList& amrex::Amr::getIntersectLoZ ( ) (BoundaryPointListBoundaryPointList IntersectLoX,
BoundaryPointListBoundaryPointList IntersectHiX,
BoundaryPointListBoundaryPointList IntersectLoY,
BoundaryPointListBoundaryPointList IntersectHiY 
(BoundaryPointListBoundaryPointList IntersectLoX,
BoundaryPointListBoundaryPointList IntersectHiX,
BoundaryPointListBoundaryPointList IntersectLoY,
BoundaryPointListBoundaryPointList IntersectHiY,
BoundaryPointListBoundaryPointList IntersectLoZ,
BoundaryPointListBoundaryPointList IntersectHiZ 
- +
BoundaryPointList amrex::Amr::intersect_hixBoundaryPointList amrex::Amr::intersect_hix
diff --git a/amrex/docs_html/doxygen/classamrex_1_1BaseFab.html b/amrex/docs_html/doxygen/classamrex_1_1BaseFab.html index 2562fa4c56..02c8f04d7e 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1BaseFab.html +++ b/amrex/docs_html/doxygen/classamrex_1_1BaseFab.html @@ -121,8 +121,8 @@ - - + +

Public Types

typedef T value_type
 
using value_type = T
 
@@ -797,8 +797,8 @@

Public Member Functions

 

Member Typedef Documentation

- -

◆ value_type

+ +

◆ value_type

@@ -806,7 +806,7 @@

- typedef T amrex::BaseFab< T >::value_type + using amrex::BaseFab< T >::value_type = T

diff --git a/amrex/docs_html/doxygen/classamrex_1_1BaseFab.js b/amrex/docs_html/doxygen/classamrex_1_1BaseFab.js index 85fb7e980e..196d6eddcc 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1BaseFab.js +++ b/amrex/docs_html/doxygen/classamrex_1_1BaseFab.js @@ -1,6 +1,6 @@ var classamrex_1_1BaseFab = [ - [ "value_type", "classamrex_1_1BaseFab.html#aac8f37b7bba5334a86bf90b58fb062d8", null ], + [ "value_type", "classamrex_1_1BaseFab.html#a6ffc31b194f5484eef777a47862ddfac", null ], [ "BaseFab", "classamrex_1_1BaseFab.html#ae732fa5c1fb9495b98ecce97ccd1be95", null ], [ "BaseFab", "classamrex_1_1BaseFab.html#ae5d9786facded55bfce06cc443594cab", null ], [ "BaseFab", "classamrex_1_1BaseFab.html#a83d88e02757dac7e30b2ac7a13020b22", null ], diff --git a/amrex/docs_html/doxygen/classamrex_1_1BndryFuncArray.html b/amrex/docs_html/doxygen/classamrex_1_1BndryFuncArray.html index 7822a2dbd8..1fda586516 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1BndryFuncArray.html +++ b/amrex/docs_html/doxygen/classamrex_1_1BndryFuncArray.html @@ -113,9 +113,9 @@ Public Member Functions

 BndryFuncArray () noexcept=default   - BndryFuncArray (BndryFuncDefault inFunc) noexcept + BndryFuncArray (BndryFuncDefault inFunc) noexcept   - BndryFuncArray (BndryFunc3DDefault inFunc) noexcept + BndryFuncArray (BndryFunc3DDefault inFunc) noexcept   void operator() (Box const &bx, FArrayBox &dest, int dcomp, int numcomp, Geometry const &geom, Real time, const Vector< BCRec > &bcr, int bcomp, int orig_comp)   @@ -124,9 +124,9 @@ - + - + @@ -171,7 +171,7 @@

amrex::BndryFuncArray::BndryFuncArray

- + @@ -197,7 +197,7 @@

amrex::BndryFuncArray::BndryFuncArray

- + @@ -318,7 +318,7 @@

Protected Attributes

BndryFuncDefault m_func = nullptr
BndryFuncDefault m_func = nullptr
 
BndryFunc3DDefault m_func3D = nullptr
BndryFunc3DDefault m_func3D = nullptr
 
bool m_run_on_gpu = false
 
(BndryFuncDefault BndryFuncDefault  inFunc)
(BndryFunc3DDefault BndryFunc3DDefault  inFunc)
- +
BndryFuncDefault amrex::BndryFuncArray::m_func = nullptrBndryFuncDefault amrex::BndryFuncArray::m_func = nullptr
@@ -340,7 +340,7 @@

- +
BndryFunc3DDefault amrex::BndryFuncArray::m_func3D = nullptrBndryFunc3DDefault amrex::BndryFuncArray::m_func3D = nullptr
diff --git a/amrex/docs_html/doxygen/classamrex_1_1Box.html b/amrex/docs_html/doxygen/classamrex_1_1Box.html index 498dd9a645..c33ee6438d 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1Box.html +++ b/amrex/docs_html/doxygen/classamrex_1_1Box.html @@ -412,7 +412,7 @@ Friends

class BoxCommHelper   -MPI_Datatype ParallelDescriptor::Mpi_typemap () +MPI_Datatype ParallelDescriptor::Mpi_typemap ()   AMREX_GPU_HOST_DEVICE friend AMREX_FORCE_INLINE Dim3 lbound (Box const &box) noexcept   @@ -3803,7 +3803,7 @@

- + diff --git a/amrex/docs_html/doxygen/classamrex_1_1BoxArray.html b/amrex/docs_html/doxygen/classamrex_1_1BoxArray.html index 2451f85631..5d70dd2599 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1BoxArray.html +++ b/amrex/docs_html/doxygen/classamrex_1_1BoxArray.html @@ -375,7 +375,7 @@ - + @@ -1462,7 +1462,7 @@

MPI_Datatype ParallelDescriptor::Mpi_typemap MPI_Datatype ParallelDescriptor::Mpi_typemap ( )
void type_update ()
 Update BoxArray index type according the box type, and then convert boxes to cell-centered. More...
 
BARef::HashTypegetHashMap () const
BARef::HashTypegetHashMap () const
 
IntVect getDoiLo () const noexcept
 
- + diff --git a/amrex/docs_html/doxygen/classamrex_1_1BoxDomain-members.html b/amrex/docs_html/doxygen/classamrex_1_1BoxDomain-members.html index 999bb1aaa8..177b0d5edd 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1BoxDomain-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1BoxDomain-members.html @@ -138,7 +138,7 @@ - + @@ -158,7 +158,7 @@ - + diff --git a/amrex/docs_html/doxygen/classamrex_1_1BoxDomain.html b/amrex/docs_html/doxygen/classamrex_1_1BoxDomain.html index 51822a19c6..0a2624113c 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1BoxDomain.html +++ b/amrex/docs_html/doxygen/classamrex_1_1BoxDomain.html @@ -122,8 +122,8 @@
BARef::HashType & amrex::BoxArray::getHashMap BARef::HashType & amrex::BoxArray::getHashMap ( ) const
amrex::BoxList::complementIn(const Box &b, const BoxList &bl)amrex::BoxListprotected
amrex::BoxList::complementIn(const Box &b, BoxList &&bl)amrex::BoxListprotected
amrex::BoxList::complementIn(const Box &b, const BoxArray &ba)amrex::BoxListprotected
const_iterator typedefamrex::BoxDomain
const_iterator typedefamrex::BoxDomain
contains(const BoxList &bl) constamrex::BoxDomain
amrex::BoxList::contains(const BoxList &bl) constamrex::BoxListprotected
convert(IndexType typ) noexceptamrex::BoxListprotected
amrex::BoxList::isEmpty() const noexceptamrex::BoxListinlineprotected
isNotEmpty() const noexceptamrex::BoxDomaininline
amrex::BoxList::isNotEmpty() const noexceptamrex::BoxListinlineprotected
iterator typedefamrex::BoxListprotected
iterator typedefamrex::BoxListprotected
ixType() const noexceptamrex::BoxDomaininline
amrex::BoxList::ixType() const noexceptamrex::BoxListinlineprotected
join(const BoxList &blist)amrex::BoxListprotected
- - + +

Public Types

typedef BoxList::const_iterator const_iterator
 
using const_iterator = BoxList::const_iterator
 
@@ -192,16 +192,16 @@ - + - + - + - + @@ -231,10 +231,10 @@ - - - - + + + + @@ -296,17 +296,17 @@ - + - + - + - + - + - + @@ -426,14 +426,14 @@

Detailed Description

A List of Disjoint Boxes. A BoxDomain is a BoxList with the restriction that Boxes in the list are disjoint.

Member Typedef Documentation

- -

◆ const_iterator

+ +

◆ const_iterator

Public Member Functions

int simplify (bool best=false)
 Promoted from BoxList. More...
 
iterator begin () noexcept
iterator begin () noexcept
 Promoted from BoxList. More...
 
const_iterator begin () const noexcept
const_iterator begin () const noexcept
 Promoted from BoxList. More...
 
iterator end () noexcept
iterator end () noexcept
 Promoted from BoxList. More...
 
const_iterator end () const noexcept
const_iterator end () const noexcept
 Promoted from BoxList. More...
 
bool contains (const BoxList &bl) const

Additional Inherited Members

- Protected Types inherited from amrex::BoxList
typedef Vector< Box >::iterator iterator
 
typedef Vector< Box >::const_iterator const_iterator
 
using iterator = Vector< Box >::iterator
 
using const_iterator = Vector< Box >::const_iterator
 
- Protected Member Functions inherited from amrex::BoxList
 BoxList ()
 Construct an empty BoxList with IndexType::TheCellType(). More...
 
std::size_t capacity () const noexcept
 
iterator begin () noexcept
iterator begin () noexcept
 
const_iterator begin () const noexcept
const_iterator begin () const noexcept
 
const_iterator cbegin () const noexcept
const_iterator cbegin () const noexcept
 
iterator end () noexcept
iterator end () noexcept
 
const_iterator end () const noexcept
const_iterator end () const noexcept
 
const_iterator cend () const noexcept
const_iterator cend () const noexcept
 
bool ok () const noexcept
 True if this BoxList is valid; i.e. all the Boxes are valid and they all have the same IndexType. Also returns true if the BoxList is empty. More...
- +
typedef BoxList::const_iterator amrex::BoxDomain::const_iteratorusing amrex::BoxDomain::const_iterator = BoxList::const_iterator
@@ -607,7 +607,7 @@

- +
const_iterator amrex::BoxList::beginconst_iterator amrex::BoxList::begin
@@ -631,7 +631,7 @@

- +
iterator amrex::BoxList::beginiterator amrex::BoxList::begin
@@ -756,7 +756,7 @@

- +
const_iterator amrex::BoxList::endconst_iterator amrex::BoxList::end
@@ -780,7 +780,7 @@

- +
iterator amrex::BoxList::enditerator amrex::BoxList::end
diff --git a/amrex/docs_html/doxygen/classamrex_1_1BoxDomain.js b/amrex/docs_html/doxygen/classamrex_1_1BoxDomain.js index 8c33ae72cf..1db06649c3 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1BoxDomain.js +++ b/amrex/docs_html/doxygen/classamrex_1_1BoxDomain.js @@ -1,6 +1,6 @@ var classamrex_1_1BoxDomain = [ - [ "const_iterator", "classamrex_1_1BoxDomain.html#aca980aec4ae7ca746c6df498a0e23a95", null ], + [ "const_iterator", "classamrex_1_1BoxDomain.html#aadd7573c3340ebe816567b7f767e94a8", null ], [ "BoxDomain", "classamrex_1_1BoxDomain.html#a47079914541e9badea37cd84a4eb8511", null ], [ "BoxDomain", "classamrex_1_1BoxDomain.html#adf430e5f38acc600c84e559bb68dc5d2", null ], [ "BoxDomain", "classamrex_1_1BoxDomain.html#a64ee738d97ad6b873205801db2689a09", null ], diff --git a/amrex/docs_html/doxygen/classamrex_1_1BoxList-members.html b/amrex/docs_html/doxygen/classamrex_1_1BoxList-members.html index be897f3e3e..e2b4074722 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1BoxList-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1BoxList-members.html @@ -129,7 +129,7 @@
complementIn(const Box &b, const BoxList &bl)amrex::BoxList complementIn(const Box &b, BoxList &&bl)amrex::BoxList complementIn(const Box &b, const BoxArray &ba)amrex::BoxList - const_iterator typedefamrex::BoxList + const_iterator typedefamrex::BoxList contains(const BoxList &bl) constamrex::BoxList convert(IndexType typ) noexceptamrex::BoxList data() noexceptamrex::BoxListinline @@ -145,7 +145,7 @@ isDisjoint() constamrex::BoxList isEmpty() const noexceptamrex::BoxListinline isNotEmpty() const noexceptamrex::BoxListinline - iterator typedefamrex::BoxList + iterator typedefamrex::BoxList ixType() const noexceptamrex::BoxListinline join(const BoxList &blist)amrex::BoxList join(const Vector< Box > &barr)amrex::BoxList diff --git a/amrex/docs_html/doxygen/classamrex_1_1BoxList.html b/amrex/docs_html/doxygen/classamrex_1_1BoxList.html index f47eac4e5e..d7b65368ca 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1BoxList.html +++ b/amrex/docs_html/doxygen/classamrex_1_1BoxList.html @@ -123,10 +123,10 @@ - - - - + + + +

Public Types

typedef Vector< Box >::iterator iterator
 
typedef Vector< Box >::const_iterator const_iterator
 
using iterator = Vector< Box >::iterator
 
using const_iterator = Vector< Box >::const_iterator
 
@@ -190,17 +190,17 @@ - + - + - + - + - + - + @@ -340,28 +340,28 @@

Detailed Description

A class for managing a List of Boxes that share a common IndexType. This class implements operations for sets of Boxes. This is a concrete class, not a polymorphic one.

Member Typedef Documentation

- -

◆ const_iterator

+ +

◆ const_iterator

Public Member Functions

 
std::size_t capacity () const noexcept
 
iterator begin () noexcept
iterator begin () noexcept
 
const_iterator begin () const noexcept
const_iterator begin () const noexcept
 
const_iterator cbegin () const noexcept
const_iterator cbegin () const noexcept
 
iterator end () noexcept
iterator end () noexcept
 
const_iterator end () const noexcept
const_iterator end () const noexcept
 
const_iterator cend () const noexcept
const_iterator cend () const noexcept
 
bool ok () const noexcept
 True if this BoxList is valid; i.e. all the Boxes are valid and they all have the same IndexType. Also returns true if the BoxList is empty. More...
- +
typedef Vector<Box>::const_iterator amrex::BoxList::const_iteratorusing amrex::BoxList::const_iterator = Vector<Box>::const_iterator

- -

◆ iterator

+ +

◆ iterator

@@ -739,7 +739,7 @@

- + @@ -764,7 +764,7 @@

const_iterator amrex::BoxList::begin const_iterator amrex::BoxList::begin ( ) const
- + @@ -834,7 +834,7 @@

iterator amrex::BoxList::begin iterator amrex::BoxList::begin ( )
- + @@ -859,7 +859,7 @@

const_iterator amrex::BoxList::cbegin const_iterator amrex::BoxList::cbegin ( ) const
- + @@ -1184,7 +1184,7 @@

const_iterator amrex::BoxList::cend const_iterator amrex::BoxList::cend ( ) const
- + @@ -1209,7 +1209,7 @@

const_iterator amrex::BoxList::end const_iterator amrex::BoxList::end ( ) const
- + diff --git a/amrex/docs_html/doxygen/classamrex_1_1BoxList.js b/amrex/docs_html/doxygen/classamrex_1_1BoxList.js index a5ddf0f593..5f5c52a58e 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1BoxList.js +++ b/amrex/docs_html/doxygen/classamrex_1_1BoxList.js @@ -1,7 +1,7 @@ var classamrex_1_1BoxList = [ - [ "const_iterator", "classamrex_1_1BoxList.html#a9ac637c8d0a5920984658586a6b56a18", null ], - [ "iterator", "classamrex_1_1BoxList.html#ab64ed06fbfbfc6342465290e3d86c107", null ], + [ "const_iterator", "classamrex_1_1BoxList.html#adf0575e48f46e057b423a516c7328f93", null ], + [ "iterator", "classamrex_1_1BoxList.html#ad652e92fe1eaacabb971a11038426ff6", null ], [ "BoxList", "classamrex_1_1BoxList.html#a31584546393b5ff7f420e6bffd8486bd", null ], [ "BoxList", "classamrex_1_1BoxList.html#a128274e71f12eceb9980758522776803", null ], [ "BoxList", "classamrex_1_1BoxList.html#a1c27b6ccc4493126a264598cebbb88b7", null ], diff --git a/amrex/docs_html/doxygen/classamrex_1_1CArena-members.html b/amrex/docs_html/doxygen/classamrex_1_1CArena-members.html index 918627a7d8..e0061cb6d0 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1CArena-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1CArena-members.html @@ -139,7 +139,7 @@ - + diff --git a/amrex/docs_html/doxygen/classamrex_1_1CArena.html b/amrex/docs_html/doxygen/classamrex_1_1CArena.html index 37a7e02585..e1a65f7599 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1CArena.html +++ b/amrex/docs_html/doxygen/classamrex_1_1CArena.html @@ -214,9 +214,9 @@
iterator amrex::BoxList::end iterator amrex::BoxList::end ( )
m_hunkamrex::CArenaprotected
m_profiling_statsamrex::CArenaprotected
m_usedamrex::CArenaprotected
NL typedefamrex::CArenaprotected
NL typedefamrex::CArenaprotected
operator=(const CArena &rhs)=deleteamrex::CArena
operator=(CArena &&rhs)=deleteamrex::CArena
amrex::Arena::operator=(const Arena &rhs)=deleteamrex::Arena
- - - + + +

Protected Types

typedef std::set< NodeNL
 The type of our freelist and blocklist. We use a set sorted from lo to hi memory addresses. More...
 
using NL = std::set< Node >
 The type of our freelist and blocklist. We use a set sorted from lo to hi memory addresses. More...
 
@@ -233,7 +233,7 @@ - + @@ -278,8 +278,8 @@

Detailed Description

A Concrete Class for Dynamic Memory Management using first fit. This is a coalescing memory manager. It allocates (possibly) large chunks of heap space and apportions it out as requested. It merges together neighboring chunks on each free().

Member Typedef Documentation

- -

◆ NL

+ +

◆ NL

@@ -288,7 +288,7 @@

Protected Member Functions

std::vector< std::pair< void *, std::size_t > > m_alloc
 The list of blocks allocated via ::operator new(). More...
 
NL m_freelist
NL m_freelist
 The free list of allocated but not currently used blocks. Maintained in lo to hi memory sorted order. More...
 
std::unordered_set< Node, Node::hashm_busylist
- +
typedef std::set<Node> amrex::CArena::NLusing amrex::CArena::NL = std::set<Node>
@@ -934,7 +934,7 @@

- +
NL amrex::CArena::m_freelistNL amrex::CArena::m_freelist
diff --git a/amrex/docs_html/doxygen/classamrex_1_1CArena.js b/amrex/docs_html/doxygen/classamrex_1_1CArena.js index cc539c04c0..d7d113d5aa 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1CArena.js +++ b/amrex/docs_html/doxygen/classamrex_1_1CArena.js @@ -1,7 +1,7 @@ var classamrex_1_1CArena = [ [ "Node", "classamrex_1_1CArena_1_1Node.html", "classamrex_1_1CArena_1_1Node" ], - [ "NL", "classamrex_1_1CArena.html#a9e8adf2bef58badafbefa442d69db64b", null ], + [ "NL", "classamrex_1_1CArena.html#a7b2f9d1dc98c8e92648e3785f297e13f", null ], [ "CArena", "classamrex_1_1CArena.html#a43a76cc08d37a6c6174a05989d0bc60e", null ], [ "CArena", "classamrex_1_1CArena.html#a1dc0400df161a7395380b6156678918a", null ], [ "CArena", "classamrex_1_1CArena.html#a8df362670d9202352afc131bfc421c28", null ], diff --git a/amrex/docs_html/doxygen/classamrex_1_1CpuBndryFuncFab.html b/amrex/docs_html/doxygen/classamrex_1_1CpuBndryFuncFab.html index 14638705ba..fbd05d0cd2 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1CpuBndryFuncFab.html +++ b/amrex/docs_html/doxygen/classamrex_1_1CpuBndryFuncFab.html @@ -113,14 +113,14 @@ Public Member Functions

 CpuBndryFuncFab ()=default   - CpuBndryFuncFab (UserFillBox a_f) + CpuBndryFuncFab (UserFillBox a_f)   void operator() (Box const &bx, FArrayBox &dest, int dcomp, int numcomp, Geometry const &geom, Real time, const Vector< BCRec > &bcr, int bcomp, int orig_comp)   - +

Protected Attributes

UserFillBox f_user = nullptr
UserFillBox f_user = nullptr
 

Detailed Description

@@ -163,7 +163,7 @@

amrex::CpuBndryFuncFab::CpuBndryFuncFab ( - UserFillBox  + UserFillBox  a_f) @@ -259,7 +259,7 @@

- +
UserFillBox amrex::CpuBndryFuncFab::f_user = nullptrUserFillBox amrex::CpuBndryFuncFab::f_user = nullptr
diff --git a/amrex/docs_html/doxygen/classamrex_1_1CutFab-members.html b/amrex/docs_html/doxygen/classamrex_1_1CutFab-members.html index 74c4ed2821..6e879c7ab7 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1CutFab-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1CutFab-members.html @@ -364,7 +364,7 @@
sum(const Box &subbox, int comp, int numcomp=1) const noexceptamrex::BaseFab< Real > sum(const Box &bx, DestComp dcomp, NumComps ncomp) const noexceptamrex::BaseFab< Real > truesizeamrex::BaseFab< Real >protected - value_type typedefamrex::BaseFab< Real > + value_type typedefamrex::BaseFab< Real > writeOn(std::ostream &os) constamrex::FArrayBox writeOn(std::ostream &os, int comp, int num_comp=1) constamrex::FArrayBox xpay(Real a, const BaseFab< Real > &x, const Box &srcbox, const Box &destbox, int srccomp, int destcomp, int numcomp=1) noexceptamrex::BaseFab< Real > diff --git a/amrex/docs_html/doxygen/classamrex_1_1CutFab.html b/amrex/docs_html/doxygen/classamrex_1_1CutFab.html index 304ef1616d..85ca99229a 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1CutFab.html +++ b/amrex/docs_html/doxygen/classamrex_1_1CutFab.html @@ -742,8 +742,8 @@

Additional Inherited Members

- Public Types inherited from amrex::BaseFab< Real > -typedef Real value_type -  +using value_type = Real +  - Static Public Member Functions inherited from amrex::FArrayBox static Box skipFAB (std::istream &is, int &num_comp)  Skip over the next FAB from the input stream. Return the Box defining the domain of the FAB and the number of components. More...
diff --git a/amrex/docs_html/doxygen/classamrex_1_1DeriveList.html b/amrex/docs_html/doxygen/classamrex_1_1DeriveList.html index 9a1515e60b..f5349ca918 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1DeriveList.html +++ b/amrex/docs_html/doxygen/classamrex_1_1DeriveList.html @@ -130,22 +130,22 @@ const DeriveRecget (const std::string &name) const  Access the particular record in registry. More...
  -void add (const std::string &name, IndexType result_type, int nvar_derive, DeriveFunc der_func, const DeriveRec::DeriveBoxMap &bx_map, Interpolater *interp=&pc_interp) +void add (const std::string &name, IndexType result_type, int nvar_derive, DeriveFunc der_func, const DeriveRec::DeriveBoxMap &bx_map, Interpolater *interp=&pc_interp)  Adds another entry to the registry. More...
  -void add (const std::string &name, IndexType result_type, int nvar_derive, DeriveFunc3D der_func_3d, const DeriveRec::DeriveBoxMap &bx_map, Interpolater *interp=&pc_interp) +void add (const std::string &name, IndexType result_type, int nvar_derive, DeriveFunc3D der_func_3d, const DeriveRec::DeriveBoxMap &bx_map, Interpolater *interp=&pc_interp)   -void add (const std::string &name, IndexType result_type, int nvar_derive, const DeriveFuncFab &der_func_fab, const DeriveRec::DeriveBoxMap &bx_map, Interpolater *interp=&pc_interp) +void add (const std::string &name, IndexType result_type, int nvar_derive, const DeriveFuncFab &der_func_fab, const DeriveRec::DeriveBoxMap &bx_map, Interpolater *interp=&pc_interp)   -void add (const std::string &name, IndexType result_type, int nvar_derive, const DeriveRec::DeriveBoxMap &box_map=&DeriveRec::TheSameBox) +void add (const std::string &name, IndexType result_type, int nvar_derive, const DeriveRec::DeriveBoxMap &box_map=&DeriveRec::TheSameBox)  This version doesn't take a Fortran function. More...
  -void add (const std::string &name, IndexType res_typ, int nvar_derive, Vector< std::string > const &vars, DeriveFunc der_func, const DeriveRec::DeriveBoxMap &bx_map, Interpolater *interp=&pc_interp) +void add (const std::string &name, IndexType res_typ, int nvar_derive, Vector< std::string > const &vars, DeriveFunc der_func, const DeriveRec::DeriveBoxMap &bx_map, Interpolater *interp=&pc_interp)  Adds another entry to the registry. More...
  -void add (const std::string &name, IndexType res_typ, int nvar_derive, Vector< std::string > const &vars, DeriveFunc3D der_func_3d, const DeriveRec::DeriveBoxMap &bx_map, Interpolater *interp=&pc_interp) +void add (const std::string &name, IndexType res_typ, int nvar_derive, Vector< std::string > const &vars, DeriveFunc3D der_func_3d, const DeriveRec::DeriveBoxMap &bx_map, Interpolater *interp=&pc_interp)   -void add (const std::string &name, IndexType res_typ, int nvar_derive, Vector< std::string > const &vars, const DeriveFuncFab &der_func_fab, const DeriveRec::DeriveBoxMap &bx_map, Interpolater *interp=&pc_interp) +void add (const std::string &name, IndexType res_typ, int nvar_derive, Vector< std::string > const &vars, const DeriveFuncFab &der_func_fab, const DeriveRec::DeriveBoxMap &bx_map, Interpolater *interp=&pc_interp)   void addComponent (const std::string &name, const DescriptorList &d_list, int state_indx, int s_comp, int n_comp)  Adds another StateRange to the DeriveRec identified by <name>. More...
@@ -302,13 +302,13 @@

- const DeriveFuncFab &  + const DeriveFuncFabder_func_fab, - const DeriveRec::DeriveBoxMap &  + const DeriveRec::DeriveBoxMapbx_map, @@ -360,13 +360,13 @@

- DeriveFunc  + DeriveFunc  der_func, - const DeriveRec::DeriveBoxMap &  + const DeriveRec::DeriveBoxMapbx_map, @@ -432,13 +432,13 @@

- DeriveFunc3D  + DeriveFunc3D  der_func_3d, - const DeriveRec::DeriveBoxMap &  + const DeriveRec::DeriveBoxMapbx_map, @@ -484,13 +484,13 @@

- const DeriveFuncFab &  + const DeriveFuncFabder_func_fab, - const DeriveRec::DeriveBoxMap &  + const DeriveRec::DeriveBoxMapbx_map, @@ -536,7 +536,7 @@

- const DeriveRec::DeriveBoxMap &  + const DeriveRec::DeriveBoxMapbox_map = &DeriveRec::TheSameBox  @@ -587,13 +587,13 @@

- DeriveFunc  + DeriveFunc  der_func, - const DeriveRec::DeriveBoxMap &  + const DeriveRec::DeriveBoxMapbx_map, @@ -652,13 +652,13 @@

- DeriveFunc3D  + DeriveFunc3D  der_func_3d, - const DeriveRec::DeriveBoxMap &  + const DeriveRec::DeriveBoxMapbx_map, diff --git a/amrex/docs_html/doxygen/classamrex_1_1DeriveRec-members.html b/amrex/docs_html/doxygen/classamrex_1_1DeriveRec-members.html index bd04e0480f..bb0d3e537c 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1DeriveRec-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1DeriveRec-members.html @@ -114,7 +114,7 @@ derFunc3D() const noexceptamrex::DeriveRec derFuncFab() const noexceptamrex::DeriveRec derive_nameamrex::DeriveRecprivate - DeriveBoxMap typedefamrex::DeriveRec + DeriveBoxMap typedefamrex::DeriveRec DeriveList classamrex::DeriveRecfriend DeriveRec(DeriveRec const &)=deleteamrex::DeriveRec DeriveRec(DeriveRec &&)=deleteamrex::DeriveRec diff --git a/amrex/docs_html/doxygen/classamrex_1_1DeriveRec.html b/amrex/docs_html/doxygen/classamrex_1_1DeriveRec.html index 204df32193..053f9705bb 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1DeriveRec.html +++ b/amrex/docs_html/doxygen/classamrex_1_1DeriveRec.html @@ -121,9 +121,9 @@ - - - + + +

Public Types

typedef std::function< Box(const Box &)> DeriveBoxMap
 A pointer to function taking and returning a Box. More...
 
using DeriveBoxMap = std::function< Box(const Box &)>
 A pointer to function taking and returning a Box. More...
 
@@ -147,14 +147,14 @@ - + - + - + - + @@ -177,22 +177,22 @@ - + - + - + - + - + - + - + @@ -222,17 +222,17 @@ - + - + - + - + @@ -260,14 +260,14 @@

Computes quantities derived from state data.

DeriveRec is designed to compute quantities which can be derived from the state data contained in AmrLevel and its derivatives. Some examples might be kinetic energy, vorticity, concentration gradients ...

Member Typedef Documentation

- -

◆ DeriveBoxMap

+ +

◆ DeriveBoxMap

Public Member Functions

IndexType deriveType () const noexcept
 The IndexType of the derived type. More...
 
DeriveFunc derFunc () const noexcept
DeriveFunc derFunc () const noexcept
 The DeriveFunc used to calculate the derived type. More...
 
DeriveFunc3D derFunc3D () const noexcept
DeriveFunc3D derFunc3D () const noexcept
 
DeriveFuncFab derFuncFab () const noexcept
DeriveFuncFab derFuncFab () const noexcept
 
DeriveBoxMap boxMap () const noexcept
DeriveBoxMap boxMap () const noexcept
 Maps state data box to derived data box. More...
 
Interpolaterinterp () const noexcept
void getRange (int k, int &state_indx, int &src_comp, int &num_comp) const
 Sets state_indx, src_comp and num_comp for the kth range (or chunk) of state data components needed to calculate the derived quantity. More...
 
 DeriveRec (std::string name, IndexType result_type, int nvar_derive, DeriveFunc der_func, DeriveBoxMap box_map, Interpolater *interp=&pc_interp)
 DeriveRec (std::string name, IndexType result_type, int nvar_derive, DeriveFunc der_func, DeriveBoxMap box_map, Interpolater *interp=&pc_interp)
 Constructor. More...
 
 DeriveRec (std::string name, IndexType result_type, int nvar_derive, DeriveFunc3D der_func_3d, DeriveBoxMap box_map, Interpolater *interp=&pc_interp)
 DeriveRec (std::string name, IndexType result_type, int nvar_derive, DeriveFunc3D der_func_3d, DeriveBoxMap box_map, Interpolater *interp=&pc_interp)
 
 DeriveRec (std::string name, IndexType result_type, int nvar_derive, DeriveFuncFab der_func_fab, DeriveBoxMap box_map, Interpolater *interp=&pc_interp)
 DeriveRec (std::string name, IndexType result_type, int nvar_derive, DeriveFuncFab der_func_fab, DeriveBoxMap box_map, Interpolater *interp=&pc_interp)
 
 DeriveRec (std::string name, IndexType result_type, int nvar_derive, DeriveRec::DeriveBoxMap box_map)
 DeriveRec (std::string name, IndexType result_type, int nvar_derive, DeriveRec::DeriveBoxMap box_map)
 Constructor without a Fortran function. More...
 
 DeriveRec (std::string name, IndexType result_type, int nvar_derive, Vector< std::string > const &var_names, DeriveFunc der_func, DeriveBoxMap box_map, Interpolater *interp=&pc_interp)
 DeriveRec (std::string name, IndexType result_type, int nvar_derive, Vector< std::string > const &var_names, DeriveFunc der_func, DeriveBoxMap box_map, Interpolater *interp=&pc_interp)
 Constructor. More...
 
 DeriveRec (std::string name, IndexType result_type, int nvar_derive, Vector< std::string > const &var_names, DeriveFunc3D der_func_3d, DeriveBoxMap box_map, Interpolater *interp=&pc_interp)
 DeriveRec (std::string name, IndexType result_type, int nvar_derive, Vector< std::string > const &var_names, DeriveFunc3D der_func_3d, DeriveBoxMap box_map, Interpolater *interp=&pc_interp)
 
 DeriveRec (std::string name, IndexType result_type, int nvar_derive, Vector< std::string > const &var_names, DeriveFuncFab der_func_fab, DeriveBoxMap box_map, Interpolater *interp=&pc_interp)
 DeriveRec (std::string name, IndexType result_type, int nvar_derive, Vector< std::string > const &var_names, DeriveFuncFab der_func_fab, DeriveBoxMap box_map, Interpolater *interp=&pc_interp)
 
void addRange (const DescriptorList &d_list, int state_indx, int src_comp, int num_comp)
 
int n_derive = 0
 Number of components in derived quantity. More...
 
DeriveFunc func = nullptr
DeriveFunc func = nullptr
 Function that computes derived quantity from state variables. More...
 
DeriveFunc3D func_3d = nullptr
DeriveFunc3D func_3d = nullptr
 
DeriveFuncFab func_fab = nullptr
DeriveFuncFab func_fab = nullptr
 
Interpolatermapper = nullptr
 Interpolater for mapping crse grid derived data to finer levels. More...
 
DeriveBoxMap bx_map = nullptr
DeriveBoxMap bx_map = nullptr
 Box mapper that specifies constituent region given derived region. More...
 
int n_state = 0
- +
typedef std::function<Box(const Box&)> amrex::DeriveRec::DeriveBoxMapusing amrex::DeriveRec::DeriveBoxMap = std::function<Box(const Box&)>

@@ -375,13 +375,13 @@

- DeriveFunc  + DeriveFunc  der_func, - DeriveBoxMap  + DeriveBoxMap  box_map, @@ -440,13 +440,13 @@

- DeriveFunc3D  + DeriveFunc3D  der_func_3d, - DeriveBoxMap  + DeriveBoxMap  box_map, @@ -492,13 +492,13 @@

- DeriveFuncFab  + DeriveFuncFab  der_func_fab, - DeriveBoxMap  + DeriveBoxMap  box_map, @@ -544,7 +544,7 @@

- DeriveRec::DeriveBoxMap  + DeriveRec::DeriveBoxMap  box_map  @@ -601,13 +601,13 @@

- DeriveFunc  + DeriveFunc  der_func, - DeriveBoxMap  + DeriveBoxMap  box_map, @@ -673,13 +673,13 @@

- DeriveFunc3D  + DeriveFunc3D  der_func_3d, - DeriveBoxMap  + DeriveBoxMap  box_map, @@ -731,13 +731,13 @@

- DeriveFuncFab  + DeriveFuncFab  der_func_fab, - DeriveBoxMap  + DeriveBoxMap  box_map, @@ -807,7 +807,7 @@

- + @@ -870,7 +870,7 @@

DeriveRec::DeriveBoxMap amrex::DeriveRec::boxMap DeriveRec::DeriveBoxMap amrex::DeriveRec::boxMap ( ) const
- + @@ -897,7 +897,7 @@

DeriveFunc amrex::DeriveRec::derFunc DeriveFunc amrex::DeriveRec::derFunc ( ) const
- + @@ -922,7 +922,7 @@

DeriveFunc3D amrex::DeriveRec::derFunc3D DeriveFunc3D amrex::DeriveRec::derFunc3D ( ) const
- + @@ -1420,7 +1420,7 @@

DeriveFuncFab amrex::DeriveRec::derFuncFab DeriveFuncFab amrex::DeriveRec::derFuncFab ( ) const
- +
DeriveBoxMap amrex::DeriveRec::bx_map = nullptrDeriveBoxMap amrex::DeriveRec::bx_map = nullptr
@@ -1492,7 +1492,7 @@

- +
DeriveFunc amrex::DeriveRec::func = nullptrDeriveFunc amrex::DeriveRec::func = nullptr
@@ -1516,7 +1516,7 @@

- +
DeriveFunc3D amrex::DeriveRec::func_3d = nullptrDeriveFunc3D amrex::DeriveRec::func_3d = nullptr
@@ -1538,7 +1538,7 @@

- +
DeriveFuncFab amrex::DeriveRec::func_fab = nullptrDeriveFuncFab amrex::DeriveRec::func_fab = nullptr
diff --git a/amrex/docs_html/doxygen/classamrex_1_1DeriveRec.js b/amrex/docs_html/doxygen/classamrex_1_1DeriveRec.js index 3b55c47a81..37318d07a4 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1DeriveRec.js +++ b/amrex/docs_html/doxygen/classamrex_1_1DeriveRec.js @@ -1,7 +1,7 @@ var classamrex_1_1DeriveRec = [ [ "StateRange", "structamrex_1_1DeriveRec_1_1StateRange.html", "structamrex_1_1DeriveRec_1_1StateRange" ], - [ "DeriveBoxMap", "classamrex_1_1DeriveRec.html#a8bd26ba5e222a0c05971df574d307f7f", null ], + [ "DeriveBoxMap", "classamrex_1_1DeriveRec.html#a7f8f64bd1d7de66c8300def033e45fb9", null ], [ "~DeriveRec", "classamrex_1_1DeriveRec.html#a3efcbfca10808d1a81e899f4d3448501", null ], [ "DeriveRec", "classamrex_1_1DeriveRec.html#a945183ba64e9317e961f3b43f0308989", null ], [ "DeriveRec", "classamrex_1_1DeriveRec.html#a8f3e251a40da8254934ff5e7a30cfc44", null ], diff --git a/amrex/docs_html/doxygen/classamrex_1_1DistributionMapping-members.html b/amrex/docs_html/doxygen/classamrex_1_1DistributionMapping-members.html index c77a480288..2dbec5c803 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1DistributionMapping-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1DistributionMapping-members.html @@ -152,7 +152,7 @@
operator==(const DistributionMapping &rhs) const noexceptamrex::DistributionMapping operator[](int index) const noexceptamrex::DistributionMappinginline ProcessorMap() const noexceptamrex::DistributionMapping - PVMF typedefamrex::DistributionMappingprivate + PVMF typedefamrex::DistributionMappingprivate readFrom(std::istream &is)amrex::DistributionMapping ROUNDROBIN enum valueamrex::DistributionMapping RoundRobinDoIt(int nboxes, int nprocs, std::vector< LIpair > *LIpairV=nullptr, bool sort=true)amrex::DistributionMappingprivate diff --git a/amrex/docs_html/doxygen/classamrex_1_1DistributionMapping.html b/amrex/docs_html/doxygen/classamrex_1_1DistributionMapping.html index e6652204dc..734963f23a 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1DistributionMapping.html +++ b/amrex/docs_html/doxygen/classamrex_1_1DistributionMapping.html @@ -277,9 +277,9 @@ Private Types

using LIpair = std::pair< Long, int >   -typedef void(DistributionMapping::* PVMF) (const BoxArray &, int) - A useful typedef. More...
-  +using PVMF = void(DistributionMapping::*)(const BoxArray &, int) + A useful typedef. More...
+  @@ -327,7 +327,7 @@ - +

Private Member Functions

static Strategy m_Strategy = DistributionMapping::SFC
 Everyone uses the same Strategy – defaults to SFC. More...
 
static PVMF m_BuildMap = nullptr
static PVMF m_BuildMap = nullptr
 Pointer to one of the CreateProcessorMap() functions. Corresponds to the one specified by m_Strategy. More...
 
@@ -365,8 +365,8 @@

-

◆ PVMF

+ +

◆ PVMF

@@ -375,7 +375,7 @@

- +
typedef void(DistributionMapping::* amrex::DistributionMapping::PVMF) (const BoxArray &, int)using amrex::DistributionMapping::PVMF = void (DistributionMapping::*)(const BoxArray &, int)
@@ -2688,7 +2688,7 @@

- +
DistributionMapping::PVMF amrex::DistributionMapping::m_BuildMap = nullptrDistributionMapping::PVMF amrex::DistributionMapping::m_BuildMap = nullptr
diff --git a/amrex/docs_html/doxygen/classamrex_1_1DistributionMapping.js b/amrex/docs_html/doxygen/classamrex_1_1DistributionMapping.js index 66e4366fcb..801fb89cad 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1DistributionMapping.js +++ b/amrex/docs_html/doxygen/classamrex_1_1DistributionMapping.js @@ -5,7 +5,7 @@ var classamrex_1_1DistributionMapping = [ "Ref", "structamrex_1_1DistributionMapping_1_1Ref.html", "structamrex_1_1DistributionMapping_1_1Ref" ], [ "RefID", "structamrex_1_1DistributionMapping_1_1RefID.html", "structamrex_1_1DistributionMapping_1_1RefID" ], [ "LIpair", "classamrex_1_1DistributionMapping.html#a8bc191492d7a25e16f586ef1e625649c", null ], - [ "PVMF", "classamrex_1_1DistributionMapping.html#a55afc17fcc72abd4f0f9bf4bd305ce4b", null ], + [ "PVMF", "classamrex_1_1DistributionMapping.html#ae7db7ce924b3d22ba729d57da40f2262", null ], [ "Strategy", "classamrex_1_1DistributionMapping.html#ad8e078b643635f0027eb797c2d54d3b8", [ [ "UNDEFINED", "classamrex_1_1DistributionMapping.html#ad8e078b643635f0027eb797c2d54d3b8a6ad808286f21d2e4851a30703a30d063", null ], [ "ROUNDROBIN", "classamrex_1_1DistributionMapping.html#ad8e078b643635f0027eb797c2d54d3b8a787ff5451e57a2271607a0143b75a38d", null ], diff --git a/amrex/docs_html/doxygen/classamrex_1_1EB2_1_1MultiGFab-members.html b/amrex/docs_html/doxygen/classamrex_1_1EB2_1_1MultiGFab-members.html index 4fb3fb3fbe..19ff338df4 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1EB2_1_1MultiGFab-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1EB2_1_1MultiGFab-members.html @@ -115,9 +115,9 @@
clearThisBD(bool no_assertion=false) constamrex::FabArrayBase comm_tile_sizeamrex::FabArrayBasestatic COPY enum valueamrex::FabArrayBase - CopyComTagsContainer typedefamrex::FabArrayBase - CPCache typedefamrex::FabArrayBase - CPCacheIter typedefamrex::FabArrayBase + CopyComTagsContainer typedefamrex::FabArrayBase + CPCache typedefamrex::FabArrayBase + CPCacheIter typedefamrex::FabArrayBase CpOp enum nameamrex::FabArrayBase data() const noexceptamrex::LayoutData< GFab >inline data() noexceptamrex::LayoutData< GFab >inline @@ -134,8 +134,8 @@ FabArrayBase(FabArrayBase &&rhs) noexcept=defaultamrex::FabArrayBase FabArrayBase(const FabArrayBase &rhs)=defaultamrex::FabArrayBase fabbox(int K) const noexceptamrex::FabArrayBase - FBCache typedefamrex::FabArrayBase - FBCacheIter typedefamrex::FabArrayBase + FBCache typedefamrex::FabArrayBase + FBCacheIter typedefamrex::FabArrayBase Finalize()amrex::FabArrayBasestatic flushCFinfo(bool no_assertion=false) constamrex::FabArrayBase flushCPC(bool no_assertion=false) constamrex::FabArrayBase @@ -153,8 +153,8 @@ flushRB90Cache()amrex::FabArrayBasestatic flushTileArray(const IntVect &tilesize=IntVect::TheZeroVector(), bool no_assertion=false) constamrex::FabArrayBase flushTileArrayCache()amrex::FabArrayBasestatic - FPinfoCache typedefamrex::FabArrayBase - FPinfoCacheIter typedefamrex::FabArrayBase + FPinfoCache typedefamrex::FabArrayBase + FPinfoCacheIter typedefamrex::FabArrayBase getBDKey() const noexceptamrex::FabArrayBaseinline getCPC(const IntVect &dstng, const FabArrayBase &src, const IntVect &srcng, const Periodicity &period, bool to_ghost_cells_only=false) constamrex::FabArrayBase getFB(const IntVect &nghost, const Periodicity &period, bool cross=false, bool enforce_periodicity_only=false, bool override_sync=false) constamrex::FabArrayBase @@ -201,7 +201,7 @@ m_TheRB180Cacheamrex::FabArrayBasestatic m_TheRB90Cacheamrex::FabArrayBasestatic m_TheTileArrayCacheamrex::FabArrayBasestatic - MapOfCopyComTagContainers typedefamrex::FabArrayBase + MapOfCopyComTagContainers typedefamrex::FabArrayBase MaxCompamrex::FabArrayBasestatic mfiter_tile_sizeamrex::FabArrayBasestatic MultiGFab()=defaultamrex::EB2::MultiGFab @@ -223,18 +223,18 @@ operator[](int a_box_index) const noexceptamrex::LayoutData< GFab >inline ownershipamrex::FabArrayBase OwnerShip() const noexceptamrex::FabArrayBaseinline - PolarBCache typedefamrex::FabArrayBase - PolarBCacheIter typedefamrex::FabArrayBase + PolarBCache typedefamrex::FabArrayBase + PolarBCacheIter typedefamrex::FabArrayBase popRegionTag()amrex::FabArrayBasestatic printMemUsage()amrex::FabArrayBasestatic pushRegionTag(const char *t)amrex::FabArrayBasestatic pushRegionTag(std::string t)amrex::FabArrayBasestatic queryMemUsage(const std::string &tag=std::string("All"))amrex::FabArrayBasestatic queryMemUsageHWM(const std::string &tag=std::string("All"))amrex::FabArrayBasestatic - RB180Cache typedefamrex::FabArrayBase - RB180CacheIter typedefamrex::FabArrayBase - RB90Cache typedefamrex::FabArrayBase - RB90CacheIter typedefamrex::FabArrayBase + RB180Cache typedefamrex::FabArrayBase + RB180CacheIter typedefamrex::FabArrayBase + RB90Cache typedefamrex::FabArrayBase + RB90CacheIter typedefamrex::FabArrayBase setMultiGhost(bool a_multi_ghost)amrex::FabArrayBaseinline setNGrowFilled(IntVect const &ng) noexceptamrex::FabArrayBaseinline size() const noexceptamrex::FabArrayBaseinline diff --git a/amrex/docs_html/doxygen/classamrex_1_1EB2_1_1MultiGFab.html b/amrex/docs_html/doxygen/classamrex_1_1EB2_1_1MultiGFab.html index 7ca2c802dc..5a153c9fe4 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1EB2_1_1MultiGFab.html +++ b/amrex/docs_html/doxygen/classamrex_1_1EB2_1_1MultiGFab.html @@ -297,14 +297,14 @@ }  parallel copy or add More...
  -typedef CopyComTag::CopyComTagsContainer CopyComTagsContainer -  -typedef CopyComTag::MapOfCopyComTagContainers MapOfCopyComTagContainers -  -typedef std::multimap< BDKey, FabArrayBase::FPinfo * > FPinfoCache -  -typedef FPinfoCache::iterator FPinfoCacheIter -  +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 @@ -313,28 +313,28 @@   using TACache = std::map< BDKey, TAMap >   -typedef std::multimap< BDKey, FabArrayBase::FB * > FBCache -  -typedef FBCache::iterator FBCacheIter -  -typedef std::multimap< BDKey, FabArrayBase::CPC * > CPCache -  -typedef CPCache::iterator CPCacheIter -  -typedef std::multimap< BDKey, FabArrayBase::RB90 * > RB90Cache -  -typedef RB90Cache::iterator RB90CacheIter -  -typedef std::multimap< BDKey, FabArrayBase::RB180 * > RB180Cache -  -typedef RB180Cache::iterator RB180CacheIter -  -typedef std::multimap< BDKey, FabArrayBase::PolarB * > PolarBCache -  -typedef PolarBCache::iterator PolarBCacheIter -  +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 +  - Static Public Member Functions inherited from amrex::FabArrayBase -static Long bytesOfMapOfCopyComTagContainers (const MapOfCopyComTagContainers &) +static Long bytesOfMapOfCopyComTagContainers (const MapOfCopyComTagContainers &)   static void Initialize ()  Initialize from ParmParse with "fabarray" prefix. More...
@@ -408,7 +408,7 @@ static AMREX_EXPORT IntVect comm_tile_size  communication tile size More...
  -static FPinfoCache m_TheFillPatchCache +static FPinfoCache m_TheFillPatchCache   static CacheStats m_FPinfo_stats   @@ -424,19 +424,19 @@   static CacheStats m_TAC_stats   -static FBCache m_TheFBCache +static FBCache m_TheFBCache   static CacheStats m_FBC_stats   -static CPCache m_TheCPCache +static CPCache m_TheCPCache   static CacheStats m_CPC_stats   -static RB90Cache m_TheRB90Cache +static RB90Cache m_TheRB90Cache   -static RB180Cache m_TheRB180Cache +static RB180Cache m_TheRB180Cache   -static PolarBCache m_ThePolarBCache +static PolarBCache m_ThePolarBCache   static std::multimap< BDKey, ParForInfo * > m_TheParForCache   diff --git a/amrex/docs_html/doxygen/classamrex_1_1EBCellFlagFab-members.html b/amrex/docs_html/doxygen/classamrex_1_1EBCellFlagFab-members.html index ad870e69ef..e310834d58 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1EBCellFlagFab-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1EBCellFlagFab-members.html @@ -317,7 +317,7 @@ sum(const Box &subbox, int comp, int numcomp=1) const noexceptamrex::BaseFab< EBCellFlag > sum(const Box &bx, DestComp dcomp, NumComps ncomp) const noexceptamrex::BaseFab< EBCellFlag > truesizeamrex::BaseFab< EBCellFlag >protected - value_type typedefamrex::BaseFab< EBCellFlag > + value_type typedefamrex::BaseFab< EBCellFlag > xpay(EBCellFlag a, const BaseFab< EBCellFlag > &x, const Box &srcbox, const Box &destbox, int srccomp, int destcomp, int numcomp=1) noexceptamrex::BaseFab< EBCellFlag > ~BaseFab() noexceptamrex::BaseFab< EBCellFlag >virtual ~EBCellFlagFab() override=defaultamrex::EBCellFlagFab diff --git a/amrex/docs_html/doxygen/classamrex_1_1EBCellFlagFab.html b/amrex/docs_html/doxygen/classamrex_1_1EBCellFlagFab.html index d5dc344859..2ec35dae3f 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1EBCellFlagFab.html +++ b/amrex/docs_html/doxygen/classamrex_1_1EBCellFlagFab.html @@ -673,8 +673,8 @@

Additional Inherited Members

- Public Types inherited from amrex::BaseFab< EBCellFlag > -typedef EBCellFlag value_type -  +using value_type = EBCellFlag- Static Public Member Functions inherited from amrex::BaseFab< EBCellFlag > static void Initialize ()   diff --git a/amrex/docs_html/doxygen/classamrex_1_1EBFArrayBox-members.html b/amrex/docs_html/doxygen/classamrex_1_1EBFArrayBox-members.html index bbaaa99f79..bc7ee7b888 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1EBFArrayBox-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1EBFArrayBox-members.html @@ -373,7 +373,7 @@ sum(const Box &subbox, int comp, int numcomp=1) const noexceptamrex::BaseFab< Real > sum(const Box &bx, DestComp dcomp, NumComps ncomp) const noexceptamrex::BaseFab< Real > truesizeamrex::BaseFab< Real >protected - value_type typedefamrex::BaseFab< Real > + value_type typedefamrex::BaseFab< Real > writeOn(std::ostream &os) constamrex::FArrayBox writeOn(std::ostream &os, int comp, int num_comp=1) constamrex::FArrayBox xpay(Real a, const BaseFab< Real > &x, const Box &srcbox, const Box &destbox, int srccomp, int destcomp, int numcomp=1) noexceptamrex::BaseFab< Real > diff --git a/amrex/docs_html/doxygen/classamrex_1_1EBFArrayBox.html b/amrex/docs_html/doxygen/classamrex_1_1EBFArrayBox.html index b65e7a6dbf..5c69b72bb9 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1EBFArrayBox.html +++ b/amrex/docs_html/doxygen/classamrex_1_1EBFArrayBox.html @@ -759,8 +759,8 @@

Additional Inherited Members

- Public Types inherited from amrex::BaseFab< Real > -typedef Real value_type -  +using value_type = Real +  - Static Public Member Functions inherited from amrex::FArrayBox static Box skipFAB (std::istream &is, int &num_comp)  Skip over the next FAB from the input stream. Return the Box defining the domain of the FAB and the number of components. More...
diff --git a/amrex/docs_html/doxygen/classamrex_1_1ErrorRec_1_1ErrorFunc.html b/amrex/docs_html/doxygen/classamrex_1_1ErrorRec_1_1ErrorFunc.html index 2ecdd689a5..c6630db9ca 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1ErrorRec_1_1ErrorFunc.html +++ b/amrex/docs_html/doxygen/classamrex_1_1ErrorRec_1_1ErrorFunc.html @@ -111,10 +111,10 @@  ErrorFunc ()  Bogus constructor. More...
  - ErrorFunc (ErrorFuncDefault inFunc) + ErrorFunc (ErrorFuncDefault inFunc)  A Constructor. More...
  - ErrorFunc (ErrorFunc3DDefault inFunc) + ErrorFunc (ErrorFunc3DDefault inFunc)  A Constructor. More...
  virtual ErrorFuncclone () const @@ -140,9 +140,9 @@ - + - +

Protected Attributes

ErrorFuncDefault m_func {nullptr}
ErrorFuncDefault m_func {nullptr}
 
ErrorFunc3DDefault m_func3D {nullptr}
ErrorFunc3DDefault m_func3D {nullptr}
 

Constructor & Destructor Documentation

@@ -182,7 +182,7 @@

amrex::ErrorRec::ErrorFunc::ErrorFunc ( - ErrorFuncDefault  + ErrorFuncDefault  inFunc) @@ -208,7 +208,7 @@

amrex::ErrorRec::ErrorFunc::ErrorFunc ( - ErrorFunc3DDefault  + ErrorFunc3DDefault  inFunc) @@ -709,7 +709,7 @@

- +
ErrorFuncDefault amrex::ErrorRec::ErrorFunc::m_func {nullptr}ErrorFuncDefault amrex::ErrorRec::ErrorFunc::m_func {nullptr}
@@ -731,7 +731,7 @@

- +
ErrorFunc3DDefault amrex::ErrorRec::ErrorFunc::m_func3D {nullptr}ErrorFunc3DDefault amrex::ErrorRec::ErrorFunc::m_func3D {nullptr}
diff --git a/amrex/docs_html/doxygen/classamrex_1_1ErrorRec_1_1ErrorFunc2.html b/amrex/docs_html/doxygen/classamrex_1_1ErrorRec_1_1ErrorFunc2.html index ce5f5960b4..18a0cb3d90 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1ErrorRec_1_1ErrorFunc2.html +++ b/amrex/docs_html/doxygen/classamrex_1_1ErrorRec_1_1ErrorFunc2.html @@ -111,7 +111,7 @@  
ErrorFunc2 ()  Bogus constructor. More...
  - ErrorFunc2 (ErrorFunc2Default inFunc) + ErrorFunc2 (ErrorFunc2Default inFunc)  A Constructor. More...
  virtual ErrorFunc2clone () const @@ -134,7 +134,7 @@ - +

Protected Attributes

ErrorFunc2Default m_func {nullptr}
ErrorFunc2Default m_func {nullptr}
 

Constructor & Destructor Documentation

@@ -174,7 +174,7 @@

amrex::ErrorRec::ErrorFunc2::ErrorFunc2 ( - ErrorFunc2Default  + ErrorFunc2Default  inFunc) @@ -504,7 +504,7 @@

- +
ErrorFunc2Default amrex::ErrorRec::ErrorFunc2::m_func {nullptr}ErrorFunc2Default amrex::ErrorRec::ErrorFunc2::m_func {nullptr}
diff --git a/amrex/docs_html/doxygen/classamrex_1_1FArrayBox-members.html b/amrex/docs_html/doxygen/classamrex_1_1FArrayBox-members.html index 2a229f5c2a..e6dc45f531 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1FArrayBox-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1FArrayBox-members.html @@ -355,7 +355,7 @@
sum(const Box &subbox, int comp, int numcomp=1) const noexceptamrex::BaseFab< Real > sum(const Box &bx, DestComp dcomp, NumComps ncomp) const noexceptamrex::BaseFab< Real > truesizeamrex::BaseFab< Real >protected - value_type typedefamrex::BaseFab< Real > + value_type typedefamrex::BaseFab< Real > writeOn(std::ostream &os) constamrex::FArrayBox writeOn(std::ostream &os, int comp, int num_comp=1) constamrex::FArrayBox xpay(Real a, const BaseFab< Real > &x, const Box &srcbox, const Box &destbox, int srccomp, int destcomp, int numcomp=1) noexceptamrex::BaseFab< Real > diff --git a/amrex/docs_html/doxygen/classamrex_1_1FArrayBox.html b/amrex/docs_html/doxygen/classamrex_1_1FArrayBox.html index 97041f426c..efc32ef4a2 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1FArrayBox.html +++ b/amrex/docs_html/doxygen/classamrex_1_1FArrayBox.html @@ -832,8 +832,8 @@

Additional Inherited Members

- Public Types inherited from amrex::BaseFab< Real > -typedef Real value_type -  +using value_type = Real +  - Public Attributes inherited from amrex::DataAllocator Arenam_arena = nullptr   diff --git a/amrex/docs_html/doxygen/classamrex_1_1FEIntegrator-members.html b/amrex/docs_html/doxygen/classamrex_1_1FEIntegrator-members.html index 0b3c606b9a..ba8dd32895 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1FEIntegrator-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1FEIntegrator-members.html @@ -103,7 +103,7 @@

This is the complete list of members for amrex::FEIntegrator< T >, including all inherited members.

- + diff --git a/amrex/docs_html/doxygen/classamrex_1_1FEIntegrator.html b/amrex/docs_html/doxygen/classamrex_1_1FEIntegrator.html index 6a8228e778..0db9564652 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1FEIntegrator.html +++ b/amrex/docs_html/doxygen/classamrex_1_1FEIntegrator.html @@ -167,8 +167,8 @@
advance(T &S_old, T &S_new, amrex::Real time, const amrex::Real time_step) overrideamrex::FEIntegrator< T >inlinevirtual
BaseT typedefamrex::FEIntegrator< T >private
BaseT typedefamrex::FEIntegrator< T >private
F_nodesamrex::FEIntegrator< T >private
fast_rhs(T &S_rhs, T &S_extra, const T &S_data, const amrex::Real time)amrex::IntegratorBase< T >inline
fast_timestepamrex::IntegratorBase< T >protected
- - + +

Private Types

typedef IntegratorBase< T > BaseT
 
using BaseT = IntegratorBase< T >
 
@@ -197,8 +197,8 @@

Private Member Functions

 

Member Typedef Documentation

- -

◆ BaseT

+ +

◆ BaseT

@@ -209,7 +209,7 @@

- +
typedef IntegratorBase<T> amrex::FEIntegrator< T >::BaseTusing amrex::FEIntegrator< T >::BaseT = IntegratorBase<T>
diff --git a/amrex/docs_html/doxygen/classamrex_1_1FEIntegrator.js b/amrex/docs_html/doxygen/classamrex_1_1FEIntegrator.js index e1809efddb..9c31daa9dc 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1FEIntegrator.js +++ b/amrex/docs_html/doxygen/classamrex_1_1FEIntegrator.js @@ -1,6 +1,6 @@ var classamrex_1_1FEIntegrator = [ - [ "BaseT", "classamrex_1_1FEIntegrator.html#a207b8527ea82af2474ea9a2e128071b9", null ], + [ "BaseT", "classamrex_1_1FEIntegrator.html#a42de2ec6d2a8822f8bff33922347f6d8", null ], [ "FEIntegrator", "classamrex_1_1FEIntegrator.html#a3a939c4bb592b14713d49cb3380c34fd", null ], [ "FEIntegrator", "classamrex_1_1FEIntegrator.html#ac5334d9eba2385a4a26629527444e489", null ], [ "~FEIntegrator", "classamrex_1_1FEIntegrator.html#acc384fa61c635b7d9236f4c07a48109a", null ], diff --git a/amrex/docs_html/doxygen/classamrex_1_1FabArray-members.html b/amrex/docs_html/doxygen/classamrex_1_1FabArray-members.html index 1f4031383c..db4d82fd3e 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1FabArray-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1FabArray-members.html @@ -145,11 +145,11 @@
copy(const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)amrex::FabArray< FAB >inline copy(const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, int src_nghost, int dst_nghost, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)amrex::FabArray< FAB >inline copy(const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, const IntVect &src_nghost, const IntVect &dst_nghost, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)amrex::FabArray< FAB >inline - CopyComTagsContainer typedefamrex::FabArrayBase + CopyComTagsContainer typedefamrex::FabArrayBase copyTo(FAB &dest, int nghost=0) constamrex::FabArray< FAB > copyTo(FAB &dest, int scomp, int dcomp, int ncomp, int nghost=0) constamrex::FabArray< FAB > - CPCache typedefamrex::FabArrayBase - CPCacheIter typedefamrex::FabArrayBase + CPCache typedefamrex::FabArrayBase + CPCacheIter typedefamrex::FabArrayBase CpOp enum nameamrex::FabArrayBase define(const BoxArray &bxs, const DistributionMapping &dm, int nvar, int ngrow, const MFInfo &info=MFInfo(), const FabFactory< FAB > &factory=DefaultFabFactory< FAB >())amrex::FabArray< FAB > define(const BoxArray &bxs, const DistributionMapping &dm, int nvar, const IntVect &ngrow, const MFInfo &info=MFInfo(), const FabFactory< FAB > &factory=DefaultFabFactory< FAB >())amrex::FabArray< FAB > @@ -186,8 +186,8 @@ Factory() const noexceptamrex::FabArray< FAB >inline FB_local_copy_cpu(const FB &TheFB, int scomp, int ncomp)amrex::FabArray< FAB > FB_local_copy_gpu(const FB &TheFB, int scomp, int ncomp)amrex::FabArray< FAB > - FBCache typedefamrex::FabArrayBase - FBCacheIter typedefamrex::FabArrayBase + FBCache typedefamrex::FabArrayBase + FBCacheIter typedefamrex::FabArrayBase fbdamrex::FabArray< FAB > FBEP_nowait(int scomp, int ncomp, const IntVect &nghost, const Periodicity &period, bool cross, bool enforce_periodicity_only=false, bool override_sync=false)amrex::FabArray< FAB > FBEP_nowait(int scomp, int ncomp, const IntVect &nghost, const Periodicity &period, bool cross, bool enforce_periodicity_only, bool override_sync)amrex::FabArray< FAB > @@ -228,8 +228,8 @@ flushRB90Cache()amrex::FabArrayBasestatic flushTileArray(const IntVect &tilesize=IntVect::TheZeroVector(), bool no_assertion=false) constamrex::FabArrayBase flushTileArrayCache()amrex::FabArrayBasestatic - FPinfoCache typedefamrex::FabArrayBase - FPinfoCacheIter typedefamrex::FabArrayBase + FPinfoCache typedefamrex::FabArrayBase + FPinfoCacheIter typedefamrex::FabArrayBase get(const MFIter &mfi) const noexceptamrex::FabArray< FAB >inline get(const MFIter &mfi) noexceptamrex::FabArray< FAB >inline get(int K) const noexceptamrex::FabArray< FAB >inline @@ -255,7 +255,7 @@ isDefined() constamrex::FabArray< FAB > isFusingCandidate() const noexceptamrex::FabArrayBase isOwner(int li) const noexceptamrex::FabArrayBaseinline - Iterator typedefamrex::FabArray< FAB >private + Iterator typedefamrex::FabArray< FAB >private ixType() const noexceptamrex::FabArrayBaseinline LinComb(FabArray< FAB > &dst, value_type a, const FabArray< FAB > &x, int xcomp, value_type b, const FabArray< FAB > &y, int ycomp, int dstcomp, int numcomp, const IntVect &nghost)amrex::FabArray< FAB >static local_size() const noexceptamrex::FabArrayBaseinline @@ -290,7 +290,7 @@ m_TheRB180Cacheamrex::FabArrayBasestatic m_TheRB90Cacheamrex::FabArrayBasestatic m_TheTileArrayCacheamrex::FabArrayBasestatic - MapOfCopyComTagContainers typedefamrex::FabArrayBase + MapOfCopyComTagContainers typedefamrex::FabArrayBase MaxCompamrex::FabArrayBasestatic mfiter_tile_sizeamrex::FabArrayBasestatic mult(value_type val, int comp, int num_comp, int nghost=0)amrex::FabArray< FAB > @@ -351,8 +351,8 @@ pcdamrex::FabArray< FAB > plus(value_type val, int comp, int num_comp, int nghost=0)amrex::FabArray< FAB > plus(value_type val, const Box &region, int comp, int num_comp, int nghost=0)amrex::FabArray< FAB > - PolarBCache typedefamrex::FabArrayBase - PolarBCacheIter typedefamrex::FabArrayBase + PolarBCache typedefamrex::FabArrayBase + PolarBCacheIter typedefamrex::FabArrayBase popRegionTag()amrex::FabArrayBasestatic prefetchToDevice(const MFIter &mfi) const noexceptamrex::FabArray< FAB > prefetchToHost(const MFIter &mfi) const noexceptamrex::FabArray< FAB > @@ -361,10 +361,10 @@ pushRegionTag(std::string t)amrex::FabArrayBasestatic queryMemUsage(const std::string &tag=std::string("All"))amrex::FabArrayBasestatic queryMemUsageHWM(const std::string &tag=std::string("All"))amrex::FabArrayBasestatic - RB180Cache typedefamrex::FabArrayBase - RB180CacheIter typedefamrex::FabArrayBase - RB90Cache typedefamrex::FabArrayBase - RB90CacheIter typedefamrex::FabArrayBase + RB180Cache typedefamrex::FabArrayBase + RB180CacheIter typedefamrex::FabArrayBase + RB90Cache typedefamrex::FabArrayBase + RB90CacheIter typedefamrex::FabArrayBase RecvLayoutMask(const CommMetaData &thecmd)amrex::FabArray< FAB > Redistribute(const FabArray< FAB > &src, int scomp, int dcomp, int ncomp, const IntVect &nghost)amrex::FabArray< FAB > release(int K)amrex::FabArray< FAB > diff --git a/amrex/docs_html/doxygen/classamrex_1_1FabArray.html b/amrex/docs_html/doxygen/classamrex_1_1FabArray.html index ec8ee98aa0..6aa9a5a076 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1FabArray.html +++ b/amrex/docs_html/doxygen/classamrex_1_1FabArray.html @@ -142,14 +142,14 @@ }  parallel copy or add More...
  -typedef CopyComTag::CopyComTagsContainer CopyComTagsContainer -  -typedef CopyComTag::MapOfCopyComTagContainers MapOfCopyComTagContainers -  -typedef std::multimap< BDKey, FabArrayBase::FPinfo * > FPinfoCache -  -typedef FPinfoCache::iterator FPinfoCacheIter -  +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 @@ -158,26 +158,26 @@   using TACache = std::map< BDKey, TAMap >   -typedef std::multimap< BDKey, FabArrayBase::FB * > FBCache -  -typedef FBCache::iterator FBCacheIter -  -typedef std::multimap< BDKey, FabArrayBase::CPC * > CPCache -  -typedef CPCache::iterator CPCacheIter -  -typedef std::multimap< BDKey, FabArrayBase::RB90 * > RB90Cache -  -typedef RB90Cache::iterator RB90CacheIter -  -typedef std::multimap< BDKey, FabArrayBase::RB180 * > RB180Cache -  -typedef RB180Cache::iterator RB180CacheIter -  -typedef std::multimap< BDKey, FabArrayBase::PolarB * > PolarBCache -  -typedef PolarBCache::iterator PolarBCacheIter -  +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 +  @@ -626,16 +626,16 @@ - + - + - + - + @@ -775,16 +775,16 @@ - + - + - + - + @@ -799,7 +799,7 @@ - + @@ -905,8 +905,8 @@

Public Member Functions

void FillBoundary_finish ()
 
template<typename BUF >
void pack_send_buffer_gpu (FabArray< FAB > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc)
void pack_send_buffer_gpu (FabArray< FAB > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc)
 
template<typename BUF >
void unpack_recv_buffer_gpu (FabArray< FAB > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe)
void unpack_recv_buffer_gpu (FabArray< FAB > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe)
 
template<typename BUF >
void pack_send_buffer_cpu (FabArray< FAB > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc)
void pack_send_buffer_cpu (FabArray< FAB > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc)
 
template<typename BUF >
void unpack_recv_buffer_cpu (FabArray< FAB > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe)
void unpack_recv_buffer_cpu (FabArray< FAB > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe)
 
- Public Member Functions inherited from amrex::FabArrayBase
 FabArrayBase ()=default

Static Public Member Functions

template<typename BUF = value_type>
static void pack_send_buffer_gpu (FabArray< FAB > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc)
static void pack_send_buffer_gpu (FabArray< FAB > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc)
 
template<typename BUF = value_type>
static void unpack_recv_buffer_gpu (FabArray< FAB > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe)
static void unpack_recv_buffer_gpu (FabArray< FAB > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe)
 
template<typename BUF = value_type>
static void pack_send_buffer_cpu (FabArray< FAB > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc)
static void pack_send_buffer_cpu (FabArray< FAB > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc)
 
template<typename BUF = value_type>
static void unpack_recv_buffer_cpu (FabArray< FAB > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe)
static void unpack_recv_buffer_cpu (FabArray< FAB > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe)
 
template<class F = FAB, std::enable_if_t< IsBaseFab< F >::value, int > = 0>
static void Saxpy (FabArray< FAB > &y, value_type a, FabArray< FAB > const &x, int xcomp, int ycomp, int ncomp, IntVect const &nghost)
 dst = a*x + b*y More...
 
- Static Public Member Functions inherited from amrex::FabArrayBase
static Long bytesOfMapOfCopyComTagContainers (const MapOfCopyComTagContainers &)
static Long bytesOfMapOfCopyComTagContainers (const MapOfCopyComTagContainers &)
 
static void Initialize ()
 Initialize from ParmParse with "fabarray" prefix. More...
- - + +

Private Types

typedef std::vector< FAB * >::iterator Iterator
 
using Iterator = typename std::vector< FAB * >::iterator
 
@@ -932,7 +932,7 @@ - + @@ -948,19 +948,19 @@ - + - + - + - + - + @@ -987,8 +987,8 @@

-

◆ Iterator

+ +

◆ Iterator

@@ -999,7 +999,7 @@

Private Member Functions

static AMREX_EXPORT IntVect comm_tile_size
 communication tile size More...
 
static FPinfoCache m_TheFillPatchCache
static FPinfoCache m_TheFillPatchCache
 
static CacheStats m_FPinfo_stats
 
 
static CacheStats m_TAC_stats
 
static FBCache m_TheFBCache
static FBCache m_TheFBCache
 
static CacheStats m_FBC_stats
 
static CPCache m_TheCPCache
static CPCache m_TheCPCache
 
static CacheStats m_CPC_stats
 
static RB90Cache m_TheRB90Cache
static RB90Cache m_TheRB90Cache
 
static RB180Cache m_TheRB180Cache
static RB180Cache m_TheRB180Cache
 
static PolarBCache m_ThePolarBCache
static PolarBCache m_ThePolarBCache
 
static std::multimap< BDKey, ParForInfo * > m_TheParForCache
 
- +
typedef std::vector<FAB*>::iterator amrex::FabArray< FAB >::Iteratorusing amrex::FabArray< FAB >::Iterator = typename std::vector<FAB*>::iterator
@@ -4980,7 +4980,7 @@

- Vector< const CopyComTagsContainer * > const &  + Vector< const CopyComTagsContainer * > const &  send_cctc  @@ -5041,7 +5041,7 @@

- Vector< CopyComTagsContainer const * > const &  + Vector< CopyComTagsContainer const * > const &  send_cctc  @@ -5100,7 +5100,7 @@

- Vector< const CopyComTagsContainer * > const &  + Vector< const CopyComTagsContainer * > const &  send_cctc  @@ -5161,7 +5161,7 @@

- Vector< CopyComTagsContainer const * > const &  + Vector< CopyComTagsContainer const * > const &  send_cctc  @@ -7972,7 +7972,7 @@

- Vector< const CopyComTagsContainer * > const &  + Vector< const CopyComTagsContainer * > const &  recv_cctc, @@ -8045,7 +8045,7 @@

- Vector< CopyComTagsContainer const * > const &  + Vector< CopyComTagsContainer const * > const &  recv_cctc, @@ -8116,7 +8116,7 @@

- Vector< const CopyComTagsContainer * > const &  + Vector< const CopyComTagsContainer * > const &  recv_cctc, @@ -8189,7 +8189,7 @@

- Vector< CopyComTagsContainer const * > const &  + Vector< CopyComTagsContainer const * > const &  recv_cctc, diff --git a/amrex/docs_html/doxygen/classamrex_1_1FabArray.js b/amrex/docs_html/doxygen/classamrex_1_1FabArray.js index 58a3a74259..a281f38b92 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1FabArray.js +++ b/amrex/docs_html/doxygen/classamrex_1_1FabArray.js @@ -3,7 +3,7 @@ var classamrex_1_1FabArray = [ "FABType", "structamrex_1_1FabArray_1_1FABType.html", "structamrex_1_1FabArray_1_1FABType" ], [ "ShMem", "structamrex_1_1FabArray_1_1ShMem.html", "structamrex_1_1FabArray_1_1ShMem" ], [ "fab_type", "classamrex_1_1FabArray.html#a4ea567a25f13cd931b2b1e9433eeda5e", null ], - [ "Iterator", "classamrex_1_1FabArray.html#a70fa91146151690cba92e359609650dc", null ], + [ "Iterator", "classamrex_1_1FabArray.html#a958d272c39f50f1157029d5a0c6ade1c", null ], [ "value_type", "classamrex_1_1FabArray.html#a2b04c30bcb209306838ed6a01bd7816a", null ], [ "FabArray", "classamrex_1_1FabArray.html#a8ab865aabcf79bbf6a6f529cfd8da96a", null ], [ "FabArray", "classamrex_1_1FabArray.html#a657ae8bca91f3f4f77ed6592af1f50c4", null ], diff --git a/amrex/docs_html/doxygen/classamrex_1_1FabArrayBase-members.html b/amrex/docs_html/doxygen/classamrex_1_1FabArrayBase-members.html index 0a0dc595ae..282cba716c 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1FabArrayBase-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1FabArrayBase-members.html @@ -115,9 +115,9 @@ clearThisBD(bool no_assertion=false) constamrex::FabArrayBase comm_tile_sizeamrex::FabArrayBasestatic COPY enum valueamrex::FabArrayBase - CopyComTagsContainer typedefamrex::FabArrayBase - CPCache typedefamrex::FabArrayBase - CPCacheIter typedefamrex::FabArrayBase + CopyComTagsContainer typedefamrex::FabArrayBase + CPCache typedefamrex::FabArrayBase + CPCacheIter typedefamrex::FabArrayBase CpOp enum nameamrex::FabArrayBase define(const BoxArray &bxs, const DistributionMapping &dm, int nvar, int ngrow)amrex::FabArrayBase define(const BoxArray &bxs, const DistributionMapping &dm, int nvar, const IntVect &ngrow)amrex::FabArrayBase @@ -131,8 +131,8 @@ FabArrayBase(FabArrayBase &&rhs) noexcept=defaultamrex::FabArrayBase FabArrayBase(const FabArrayBase &rhs)=defaultamrex::FabArrayBase fabbox(int K) const noexceptamrex::FabArrayBase - FBCache typedefamrex::FabArrayBase - FBCacheIter typedefamrex::FabArrayBase + FBCache typedefamrex::FabArrayBase + FBCacheIter typedefamrex::FabArrayBase FillBoundary(Vector< FabArray< FAB > * > const &mf, const Periodicity &period)amrex::FabArrayBasefriend Finalize()amrex::FabArrayBasestatic flushCFinfo(bool no_assertion=false) constamrex::FabArrayBase @@ -151,8 +151,8 @@ flushRB90Cache()amrex::FabArrayBasestatic flushTileArray(const IntVect &tilesize=IntVect::TheZeroVector(), bool no_assertion=false) constamrex::FabArrayBase flushTileArrayCache()amrex::FabArrayBasestatic - FPinfoCache typedefamrex::FabArrayBase - FPinfoCacheIter typedefamrex::FabArrayBase + FPinfoCache typedefamrex::FabArrayBase + FPinfoCacheIter typedefamrex::FabArrayBase getBDKey() const noexceptamrex::FabArrayBaseinline getCPC(const IntVect &dstng, const FabArrayBase &src, const IntVect &srcng, const Periodicity &period, bool to_ghost_cells_only=false) constamrex::FabArrayBase getFB(const IntVect &nghost, const Periodicity &period, bool cross=false, bool enforce_periodicity_only=false, bool override_sync=false) constamrex::FabArrayBase @@ -192,7 +192,7 @@ m_TheRB180Cacheamrex::FabArrayBasestatic m_TheRB90Cacheamrex::FabArrayBasestatic m_TheTileArrayCacheamrex::FabArrayBasestatic - MapOfCopyComTagContainers typedefamrex::FabArrayBase + MapOfCopyComTagContainers typedefamrex::FabArrayBase MaxCompamrex::FabArrayBasestatic MFIter classamrex::FabArrayBasefriend mfiter_tile_sizeamrex::FabArrayBasestatic @@ -207,18 +207,18 @@ operator=(FabArrayBase &&rhs)=defaultamrex::FabArrayBase ownershipamrex::FabArrayBase OwnerShip() const noexceptamrex::FabArrayBaseinline - PolarBCache typedefamrex::FabArrayBase - PolarBCacheIter typedefamrex::FabArrayBase + PolarBCache typedefamrex::FabArrayBase + PolarBCacheIter typedefamrex::FabArrayBase popRegionTag()amrex::FabArrayBasestatic printMemUsage()amrex::FabArrayBasestatic pushRegionTag(const char *t)amrex::FabArrayBasestatic pushRegionTag(std::string t)amrex::FabArrayBasestatic queryMemUsage(const std::string &tag=std::string("All"))amrex::FabArrayBasestatic queryMemUsageHWM(const std::string &tag=std::string("All"))amrex::FabArrayBasestatic - RB180Cache typedefamrex::FabArrayBase - RB180CacheIter typedefamrex::FabArrayBase - RB90Cache typedefamrex::FabArrayBase - RB90CacheIter typedefamrex::FabArrayBase + RB180Cache typedefamrex::FabArrayBase + RB180CacheIter typedefamrex::FabArrayBase + RB90Cache typedefamrex::FabArrayBase + RB90CacheIter typedefamrex::FabArrayBase setMultiGhost(bool a_multi_ghost)amrex::FabArrayBaseinline setNGrowFilled(IntVect const &ng) noexceptamrex::FabArrayBaseinline size() const noexceptamrex::FabArrayBaseinline diff --git a/amrex/docs_html/doxygen/classamrex_1_1FabArrayBase.html b/amrex/docs_html/doxygen/classamrex_1_1FabArrayBase.html index 5a175e4321..7bbc7e0ce7 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1FabArrayBase.html +++ b/amrex/docs_html/doxygen/classamrex_1_1FabArrayBase.html @@ -196,14 +196,14 @@ }  parallel copy or add More...
  -typedef CopyComTag::CopyComTagsContainer CopyComTagsContainer -  -typedef CopyComTag::MapOfCopyComTagContainers MapOfCopyComTagContainers -  -typedef std::multimap< BDKey, FabArrayBase::FPinfo * > FPinfoCache -  -typedef FPinfoCache::iterator FPinfoCacheIter -  +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 @@ -212,26 +212,26 @@   using TACache = std::map< BDKey, TAMap >   -typedef std::multimap< BDKey, FabArrayBase::FB * > FBCache -  -typedef FBCache::iterator FBCacheIter -  -typedef std::multimap< BDKey, FabArrayBase::CPC * > CPCache -  -typedef CPCache::iterator CPCacheIter -  -typedef std::multimap< BDKey, FabArrayBase::RB90 * > RB90Cache -  -typedef RB90Cache::iterator RB90CacheIter -  -typedef std::multimap< BDKey, FabArrayBase::RB180 * > RB180Cache -  -typedef RB180Cache::iterator RB180CacheIter -  -typedef std::multimap< BDKey, FabArrayBase::PolarB * > PolarBCache -  -typedef PolarBCache::iterator PolarBCacheIter -  +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 +  @@ -371,7 +371,7 @@

Public Member Functions

- + @@ -449,7 +449,7 @@ - + @@ -465,19 +465,19 @@ - + - + - + - + - + @@ -524,196 +524,196 @@

-

◆ CopyComTagsContainer

+ +

◆ CopyComTagsContainer

Static Public Member Functions

static Long bytesOfMapOfCopyComTagContainers (const MapOfCopyComTagContainers &)
static Long bytesOfMapOfCopyComTagContainers (const MapOfCopyComTagContainers &)
 
static void Initialize ()
 Initialize from ParmParse with "fabarray" prefix. More...
static AMREX_EXPORT IntVect comm_tile_size
 communication tile size More...
 
static FPinfoCache m_TheFillPatchCache
static FPinfoCache m_TheFillPatchCache
 
static CacheStats m_FPinfo_stats
 
 
static CacheStats m_TAC_stats
 
static FBCache m_TheFBCache
static FBCache m_TheFBCache
 
static CacheStats m_FBC_stats
 
static CPCache m_TheCPCache
static CPCache m_TheCPCache
 
static CacheStats m_CPC_stats
 
static RB90Cache m_TheRB90Cache
static RB90Cache m_TheRB90Cache
 
static RB180Cache m_TheRB180Cache
static RB180Cache m_TheRB180Cache
 
static PolarBCache m_ThePolarBCache
static PolarBCache m_ThePolarBCache
 
static std::multimap< BDKey, ParForInfo * > m_TheParForCache
 
- +
typedef CopyComTag::CopyComTagsContainer amrex::FabArrayBase::CopyComTagsContainerusing amrex::FabArrayBase::CopyComTagsContainer = CopyComTag::CopyComTagsContainer

- -

◆ CPCache

+ +

◆ CPCache

- -

◆ CPCacheIter

+ +

◆ CPCacheIter

- +
typedef CPCache::iterator amrex::FabArrayBase::CPCacheIterusing amrex::FabArrayBase::CPCacheIter = CPCache::iterator
- -

◆ FBCache

+ +

◆ FBCache

- -

◆ FBCacheIter

+ +

◆ FBCacheIter

- +
typedef FBCache::iterator amrex::FabArrayBase::FBCacheIterusing amrex::FabArrayBase::FBCacheIter = FBCache::iterator
- -

◆ FPinfoCache

+ +

◆ FPinfoCache

- -

◆ FPinfoCacheIter

+ +

◆ FPinfoCacheIter

- +
typedef FPinfoCache::iterator amrex::FabArrayBase::FPinfoCacheIterusing amrex::FabArrayBase::FPinfoCacheIter = FPinfoCache::iterator
- -

◆ MapOfCopyComTagContainers

+ +

◆ MapOfCopyComTagContainers

- -

◆ PolarBCache

+ +

◆ PolarBCache

- -

◆ PolarBCacheIter

+ +

◆ PolarBCacheIter

- +
typedef PolarBCache::iterator amrex::FabArrayBase::PolarBCacheIterusing amrex::FabArrayBase::PolarBCacheIter = PolarBCache::iterator
- -

◆ RB180Cache

+ +

◆ RB180Cache

- -

◆ RB180CacheIter

+ +

◆ RB180CacheIter

- +
typedef RB180Cache::iterator amrex::FabArrayBase::RB180CacheIterusing amrex::FabArrayBase::RB180CacheIter = RB180Cache::iterator
- -

◆ RB90Cache

+ +

◆ RB90Cache

- -

◆ RB90CacheIter

+ +

◆ RB90CacheIter

- +
typedef RB90Cache::iterator amrex::FabArrayBase::RB90CacheIterusing amrex::FabArrayBase::RB90CacheIter = RB90Cache::iterator
@@ -1067,7 +1067,7 @@

static Long amrex::FabArrayBase::bytesOfMapOfCopyComTagContainers ( - const MapOfCopyComTagContainers &  + const MapOfCopyComTagContainers &  ) @@ -3215,7 +3215,7 @@

- +
CPCache amrex::FabArrayBase::m_TheCPCacheCPCache amrex::FabArrayBase::m_TheCPCache
@@ -3259,7 +3259,7 @@

- +
FBCache amrex::FabArrayBase::m_TheFBCacheFBCache amrex::FabArrayBase::m_TheFBCache
@@ -3281,7 +3281,7 @@

- +
FPinfoCache amrex::FabArrayBase::m_TheFillPatchCacheFPinfoCache amrex::FabArrayBase::m_TheFillPatchCache
@@ -3325,7 +3325,7 @@

- +
PolarBCache amrex::FabArrayBase::m_ThePolarBCachePolarBCache amrex::FabArrayBase::m_ThePolarBCache
@@ -3347,7 +3347,7 @@

- +
RB180Cache amrex::FabArrayBase::m_TheRB180CacheRB180Cache amrex::FabArrayBase::m_TheRB180Cache
@@ -3369,7 +3369,7 @@

- +
RB90Cache amrex::FabArrayBase::m_TheRB90CacheRB90Cache amrex::FabArrayBase::m_TheRB90Cache
diff --git a/amrex/docs_html/doxygen/classamrex_1_1FabArrayBase.js b/amrex/docs_html/doxygen/classamrex_1_1FabArrayBase.js index c0b81fa1f3..66b48da5a0 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1FabArrayBase.js +++ b/amrex/docs_html/doxygen/classamrex_1_1FabArrayBase.js @@ -19,20 +19,20 @@ var classamrex_1_1FabArrayBase = [ "TileArray", "structamrex_1_1FabArrayBase_1_1TileArray.html", "structamrex_1_1FabArrayBase_1_1TileArray" ], [ "CFinfoCache", "classamrex_1_1FabArrayBase.html#ab93444c8298b6446b699b33cf6c9247b", null ], [ "CFinfoCacheIter", "classamrex_1_1FabArrayBase.html#ae15d8b6b473748103771433c507773ad", null ], - [ "CopyComTagsContainer", "classamrex_1_1FabArrayBase.html#a1bb6a09ada00b5b7a900d8fecbf92e3c", null ], - [ "CPCache", "classamrex_1_1FabArrayBase.html#a68151f78c47e353f18a8077ce54afc30", null ], - [ "CPCacheIter", "classamrex_1_1FabArrayBase.html#ae1a0d2f95995d26b5afe7c866f760bd6", null ], - [ "FBCache", "classamrex_1_1FabArrayBase.html#a0985ab08746761a6517115f000e0a8ac", null ], - [ "FBCacheIter", "classamrex_1_1FabArrayBase.html#aba788e1a081a9e668ba53d504e75a352", null ], - [ "FPinfoCache", "classamrex_1_1FabArrayBase.html#a68a25147d3410960af381727954394ba", null ], - [ "FPinfoCacheIter", "classamrex_1_1FabArrayBase.html#a3272dd508dcab2f679993ef1308a4278", null ], - [ "MapOfCopyComTagContainers", "classamrex_1_1FabArrayBase.html#a70b58356e2e49c69d54eed3850a9c231", null ], - [ "PolarBCache", "classamrex_1_1FabArrayBase.html#ae848c74c7550fb55e2f9d7b74777b57e", null ], - [ "PolarBCacheIter", "classamrex_1_1FabArrayBase.html#a242fe8ea3608d28675efccf79fbbd961", null ], - [ "RB180Cache", "classamrex_1_1FabArrayBase.html#af99de5735cac80b4400637c127031ed9", null ], - [ "RB180CacheIter", "classamrex_1_1FabArrayBase.html#a63963907fa7e09b07008c5bbd11a1a0a", null ], - [ "RB90Cache", "classamrex_1_1FabArrayBase.html#a916f834bf453a57b557aa66408d7d748", null ], - [ "RB90CacheIter", "classamrex_1_1FabArrayBase.html#aa850e5ff039851c262daddf6d185c817", null ], + [ "CopyComTagsContainer", "classamrex_1_1FabArrayBase.html#a9bdd65ce61ce9ee5ca52c6b387dd4800", null ], + [ "CPCache", "classamrex_1_1FabArrayBase.html#ab76531d8f4022eaa58de8ba56796e5de", null ], + [ "CPCacheIter", "classamrex_1_1FabArrayBase.html#a9b1e2db87b23393e6a9a51718fa451b1", null ], + [ "FBCache", "classamrex_1_1FabArrayBase.html#a9e9131d2e52b3140088bed29299df5e5", null ], + [ "FBCacheIter", "classamrex_1_1FabArrayBase.html#a41abb738518224cedd8cfe16206382ba", null ], + [ "FPinfoCache", "classamrex_1_1FabArrayBase.html#a13121d16e1be9ac4ea05a7df793a47fd", null ], + [ "FPinfoCacheIter", "classamrex_1_1FabArrayBase.html#adee16eddda3b226990da74e087c9cfd9", null ], + [ "MapOfCopyComTagContainers", "classamrex_1_1FabArrayBase.html#aa36883196eb7b1d039fd1941966a4310", null ], + [ "PolarBCache", "classamrex_1_1FabArrayBase.html#aeefdcd1fc2b2d609017e01fa8862c931", null ], + [ "PolarBCacheIter", "classamrex_1_1FabArrayBase.html#ae3da0c50a11f56d59552e30b45b10741", null ], + [ "RB180Cache", "classamrex_1_1FabArrayBase.html#a7245d3dc29d3e2aade3f28f9319fa76d", null ], + [ "RB180CacheIter", "classamrex_1_1FabArrayBase.html#aa058b98f7a208d8b6beec36c786cc0b9", null ], + [ "RB90Cache", "classamrex_1_1FabArrayBase.html#aba31942c259bb854daca8574b393a17f", null ], + [ "RB90CacheIter", "classamrex_1_1FabArrayBase.html#a336a5ecfcff59f5dbb7fbba057e2de73", null ], [ "TACache", "classamrex_1_1FabArrayBase.html#acefd7d2a27952d4bac78ac9befcda8eb", null ], [ "TAMap", "classamrex_1_1FabArrayBase.html#a905802e4dcdc5377e09d455fc80f0400", null ], [ "CpOp", "classamrex_1_1FabArrayBase.html#ac86e93bfc13df1bdcfb0ebbafb6a1cff", [ diff --git a/amrex/docs_html/doxygen/classamrex_1_1FabArrayCopyDescriptor-members.html b/amrex/docs_html/doxygen/classamrex_1_1FabArrayCopyDescriptor-members.html index c9c3b4c2f4..414cc17a1c 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1FabArrayCopyDescriptor-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1FabArrayCopyDescriptor-members.html @@ -115,14 +115,14 @@
FabArrayCopyDescriptor(const FabArrayCopyDescriptor< FAB > &)=deleteamrex::FabArrayCopyDescriptor< FAB > FabArrayCopyDescriptor(FabArrayCopyDescriptor< FAB > &&)=deleteamrex::FabArrayCopyDescriptor< FAB > fabArraysamrex::FabArrayCopyDescriptor< FAB >private - FabComTagContainer typedefamrex::FabArrayCopyDescriptor< FAB >private - FabComTagIterContainer typedefamrex::FabArrayCopyDescriptor< FAB >private + FabComTagContainer typedefamrex::FabArrayCopyDescriptor< FAB >private + FabComTagIterContainer typedefamrex::FabArrayCopyDescriptor< FAB >private fabComTagListamrex::FabArrayCopyDescriptor< FAB >private fabCopyDescListamrex::FabArrayCopyDescriptor< FAB >private - FCDMap typedefamrex::FabArrayCopyDescriptor< FAB >private - FCDMapConstIter typedefamrex::FabArrayCopyDescriptor< FAB >private - FCDMapIter typedefamrex::FabArrayCopyDescriptor< FAB >private - FCDMapValueType typedefamrex::FabArrayCopyDescriptor< FAB >private + FCDMap typedefamrex::FabArrayCopyDescriptor< FAB >private + FCDMapConstIter typedefamrex::FabArrayCopyDescriptor< FAB >private + FCDMapIter typedefamrex::FabArrayCopyDescriptor< FAB >private + FCDMapValueType typedefamrex::FabArrayCopyDescriptor< FAB >private FillFab(FabArrayId faid, const FillBoxId &fillboxid, FAB &destFab)amrex::FabArrayCopyDescriptor< FAB > FillFab(FabArrayId faid, const FillBoxId &fillboxid, FAB &destFab, const Box &destBox)amrex::FabArrayCopyDescriptor< FAB > nextFillBoxIdamrex::FabArrayCopyDescriptor< FAB >private diff --git a/amrex/docs_html/doxygen/classamrex_1_1FabArrayCopyDescriptor.html b/amrex/docs_html/doxygen/classamrex_1_1FabArrayCopyDescriptor.html index 76917f923f..9a16b3aa28 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1FabArrayCopyDescriptor.html +++ b/amrex/docs_html/doxygen/classamrex_1_1FabArrayCopyDescriptor.html @@ -154,18 +154,18 @@ - - - - - - - - - - - - + + + + + + + + + + + +

Private Types

typedef std::multimap< int, FabCopyDescriptor< FAB > * > FCDMap
 
typedef FCDMap::value_type FCDMapValueType
 
typedef FCDMap::iterator FCDMapIter
 
typedef FCDMap::const_iterator FCDMapConstIter
 
typedef std::vector< FabArrayBase::FabComTagFabComTagContainer
 
typedef std::vector< FabComTagContainer::const_iterator > FabComTagIterContainer
 
using FCDMap = std::multimap< int, FabCopyDescriptor< FAB > * >
 
using FCDMapValueType = typename FCDMap::value_type
 
using FCDMapIter = typename FCDMap::iterator
 
using FCDMapConstIter = typename FCDMap::const_iterator
 
using FabComTagContainer = std::vector< FabArrayBase::FabComTag >
 
using FabComTagIterContainer = std::vector< FabComTagContainer::const_iterator >
 
@@ -176,9 +176,9 @@ Private Attributes - + - + @@ -191,8 +191,8 @@

This class orchestrates filling a destination fab of size destFabBox from fabarray on the local processor (myProc).

Member Typedef Documentation

- -

◆ FabComTagContainer

+ +

◆ FabComTagContainer

@@ -203,7 +203,7 @@

Private Member Functions

std::vector< FabArray< FAB > * > fabArrays
 
std::vector< FCDMapfabCopyDescList
std::vector< FCDMapfabCopyDescList
 
FabComTagContainer fabComTagList
FabComTagContainer fabComTagList
 
int nextFillBoxId {0}
 
- +
typedef std::vector<FabArrayBase::FabComTag> amrex::FabArrayCopyDescriptor< FAB >::FabComTagContainerusing amrex::FabArrayCopyDescriptor< FAB >::FabComTagContainer = std::vector<FabArrayBase::FabComTag>
@@ -216,8 +216,8 @@

-

◆ FabComTagIterContainer

+ +

◆ FabComTagIterContainer

@@ -228,7 +228,7 @@

- +
typedef std::vector<FabComTagContainer::const_iterator> amrex::FabArrayCopyDescriptor< FAB >::FabComTagIterContainerusing amrex::FabArrayCopyDescriptor< FAB >::FabComTagIterContainer = std::vector<FabComTagContainer::const_iterator>
@@ -240,8 +240,8 @@

-

◆ FCDMap

+ +

◆ FCDMap

@@ -252,7 +252,7 @@

- +
typedef std::multimap<int,FabCopyDescriptor<FAB>*> amrex::FabArrayCopyDescriptor< FAB >::FCDMapusing amrex::FabArrayCopyDescriptor< FAB >::FCDMap = std::multimap<int,FabCopyDescriptor<FAB>*>
@@ -264,8 +264,8 @@

-

◆ FCDMapConstIter

+ +

◆ FCDMapConstIter

@@ -276,7 +276,7 @@

- +
typedef FCDMap::const_iterator amrex::FabArrayCopyDescriptor< FAB >::FCDMapConstIterusing amrex::FabArrayCopyDescriptor< FAB >::FCDMapConstIter = typename FCDMap::const_iterator
@@ -288,8 +288,8 @@

-

◆ FCDMapIter

+ +

◆ FCDMapIter

@@ -300,7 +300,7 @@

- +
typedef FCDMap::iterator amrex::FabArrayCopyDescriptor< FAB >::FCDMapIterusing amrex::FabArrayCopyDescriptor< FAB >::FCDMapIter = typename FCDMap::iterator
@@ -312,8 +312,8 @@

-

◆ FCDMapValueType

+ +

◆ FCDMapValueType

@@ -324,7 +324,7 @@

- +
typedef FCDMap::value_type amrex::FabArrayCopyDescriptor< FAB >::FCDMapValueTypeusing amrex::FabArrayCopyDescriptor< FAB >::FCDMapValueType = typename FCDMap::value_type
@@ -1047,7 +1047,7 @@

- +
FabComTagContainer amrex::FabArrayCopyDescriptor< FAB >::fabComTagListFabComTagContainer amrex::FabArrayCopyDescriptor< FAB >::fabComTagList
@@ -1071,7 +1071,7 @@

- +
std::vector<FCDMap> amrex::FabArrayCopyDescriptor< FAB >::fabCopyDescListstd::vector<FCDMap> amrex::FabArrayCopyDescriptor< FAB >::fabCopyDescList
diff --git a/amrex/docs_html/doxygen/classamrex_1_1FabArrayCopyDescriptor.js b/amrex/docs_html/doxygen/classamrex_1_1FabArrayCopyDescriptor.js index 960f80cdfc..95b4c07bca 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1FabArrayCopyDescriptor.js +++ b/amrex/docs_html/doxygen/classamrex_1_1FabArrayCopyDescriptor.js @@ -1,11 +1,11 @@ var classamrex_1_1FabArrayCopyDescriptor = [ - [ "FabComTagContainer", "classamrex_1_1FabArrayCopyDescriptor.html#ad40fa29bfbbc784a3b76218a83c46817", null ], - [ "FabComTagIterContainer", "classamrex_1_1FabArrayCopyDescriptor.html#ad8f604238d55f26e1be1d2404a630431", null ], - [ "FCDMap", "classamrex_1_1FabArrayCopyDescriptor.html#ab295800b94c422d45ffc2c0d7cc81130", null ], - [ "FCDMapConstIter", "classamrex_1_1FabArrayCopyDescriptor.html#a3eda355152786b58b336d18c50a53961", null ], - [ "FCDMapIter", "classamrex_1_1FabArrayCopyDescriptor.html#a80db7c3f41da3881e20bafc162a84735", null ], - [ "FCDMapValueType", "classamrex_1_1FabArrayCopyDescriptor.html#a7dbb7fefbfbc0e440c530541e09f3b65", null ], + [ "FabComTagContainer", "classamrex_1_1FabArrayCopyDescriptor.html#ac80112a4449d49139f4b5ac75d76b855", null ], + [ "FabComTagIterContainer", "classamrex_1_1FabArrayCopyDescriptor.html#ae8514740cee3a9ec0f8a41701b6bee22", null ], + [ "FCDMap", "classamrex_1_1FabArrayCopyDescriptor.html#ae36897cf35128c6ce6dc895169977b36", null ], + [ "FCDMapConstIter", "classamrex_1_1FabArrayCopyDescriptor.html#a42d2f4f819cd8620d0b8d48e9e04bf68", null ], + [ "FCDMapIter", "classamrex_1_1FabArrayCopyDescriptor.html#adb5c92352f55098956990fb48c94f1be", null ], + [ "FCDMapValueType", "classamrex_1_1FabArrayCopyDescriptor.html#adfc178b4cdb7043a1bb7aa04d2227e70", null ], [ "FabArrayCopyDescriptor", "classamrex_1_1FabArrayCopyDescriptor.html#a5cbc1c7ed9921b2dd4dd5b14afafc2d1", null ], [ "~FabArrayCopyDescriptor", "classamrex_1_1FabArrayCopyDescriptor.html#aaa1a22a34f3f8034c6b4f85534e9331c", null ], [ "FabArrayCopyDescriptor", "classamrex_1_1FabArrayCopyDescriptor.html#a2d4f2233adf01016002ca40538af6351", null ], diff --git a/amrex/docs_html/doxygen/classamrex_1_1FillPatchIteratorHelper.html b/amrex/docs_html/doxygen/classamrex_1_1FillPatchIteratorHelper.html index c3a7c932de..7e74c69409 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1FillPatchIteratorHelper.html +++ b/amrex/docs_html/doxygen/classamrex_1_1FillPatchIteratorHelper.html @@ -126,7 +126,7 @@  
MultiFabCopyDescriptor m_mfcd   -Vector< Vector< MultiFabId > > m_mfid +Vector< Vector< MultiFabId > > m_mfid   Interpolaterm_map = nullptr   @@ -612,7 +612,7 @@

- +
Vector< Vector<MultiFabId> > amrex::FillPatchIteratorHelper::m_mfidVector< Vector<MultiFabId> > amrex::FillPatchIteratorHelper::m_mfid
diff --git a/amrex/docs_html/doxygen/classamrex_1_1ForkJoin.html b/amrex/docs_html/doxygen/classamrex_1_1ForkJoin.html index 870ad361f9..d5a394d3bb 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1ForkJoin.html +++ b/amrex/docs_html/doxygen/classamrex_1_1ForkJoin.html @@ -200,7 +200,7 @@   void 
copy_data_from_tasks ()   -MPI_Comm split_tasks () +MPI_Comm split_tasks ()  split top frame of stack More...
  void create_task_output_dir () @@ -1290,7 +1290,7 @@

- + diff --git a/amrex/docs_html/doxygen/classamrex_1_1Hypre.html b/amrex/docs_html/doxygen/classamrex_1_1Hypre.html index 7f70c58fe1..b04ce9d661 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1Hypre.html +++ b/amrex/docs_html/doxygen/classamrex_1_1Hypre.html @@ -130,7 +130,7 @@
MPI_Comm amrex::ForkJoin::split_tasks MPI_Comm amrex::ForkJoin::split_tasks ( )
- + @@ -185,7 +185,7 @@

Public Member Functions

 Hypre (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_)
 Hypre (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_)
 
virtual ~Hypre ()
 
- + @@ -278,7 +278,7 @@

- + @@ -886,7 +886,7 @@

Protected Attributes

MPI_Comm comm = MPI_COMM_NULL
MPI_Comm comm = MPI_COMM_NULL
 
Geometry geom
 
MPI_Comm MPI_Comm  comm_ 
- +
MPI_Comm amrex::Hypre::comm = MPI_COMM_NULLMPI_Comm amrex::Hypre::comm = MPI_COMM_NULL
diff --git a/amrex/docs_html/doxygen/classamrex_1_1HypreABecLap.html b/amrex/docs_html/doxygen/classamrex_1_1HypreABecLap.html index 92bfd0a382..c8050c2d97 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1HypreABecLap.html +++ b/amrex/docs_html/doxygen/classamrex_1_1HypreABecLap.html @@ -118,7 +118,7 @@ - + @@ -137,7 +137,7 @@ - + @@ -211,7 +211,7 @@ - + @@ -276,7 +276,7 @@

- + diff --git a/amrex/docs_html/doxygen/classamrex_1_1HypreABecLap2.html b/amrex/docs_html/doxygen/classamrex_1_1HypreABecLap2.html index 8388fd62bc..dcbce448d2 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1HypreABecLap2.html +++ b/amrex/docs_html/doxygen/classamrex_1_1HypreABecLap2.html @@ -118,7 +118,7 @@

Public Member Functions

 HypreABecLap (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom_, MPI_Comm comm_)
 HypreABecLap (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom_, MPI_Comm comm_)
 
 ~HypreABecLap () override
 
void loadVectors (MultiFab &soln, const MultiFab &rhs)
 
- Public Member Functions inherited from amrex::Hypre
 Hypre (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_)
 Hypre (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_)
 
virtual ~Hypre ()
 
static constexpr HYPRE_Int eb_stencil_size = AMREX_D_TERM(3, *3, *3)
 
- Protected Attributes inherited from amrex::Hypre
MPI_Comm comm = MPI_COMM_NULL
MPI_Comm comm = MPI_COMM_NULL
 
Geometry geom
 
MPI_Comm MPI_Comm  comm_ 
- + @@ -137,7 +137,7 @@ - + @@ -215,7 +215,7 @@ - + @@ -280,7 +280,7 @@

- + diff --git a/amrex/docs_html/doxygen/classamrex_1_1HypreABecLap3.html b/amrex/docs_html/doxygen/classamrex_1_1HypreABecLap3.html index 6ca36c9187..3432339dd0 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1HypreABecLap3.html +++ b/amrex/docs_html/doxygen/classamrex_1_1HypreABecLap3.html @@ -117,7 +117,7 @@

Public Member Functions

 HypreABecLap2 (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom_, MPI_Comm comm_)
 HypreABecLap2 (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom_, MPI_Comm comm_)
 
 ~HypreABecLap2 () override
 
void loadVectors (MultiFab &soln, const MultiFab &rhs)
 
- Public Member Functions inherited from amrex::Hypre
 Hypre (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_)
 Hypre (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_)
 
virtual ~Hypre ()
 
static constexpr HYPRE_Int eb_stencil_size = AMREX_D_TERM(3, *3, *3)
 
- Protected Attributes inherited from amrex::Hypre
MPI_Comm comm = MPI_COMM_NULL
MPI_Comm comm = MPI_COMM_NULL
 
Geometry geom
 
MPI_Comm MPI_Comm  comm_ 
- + @@ -138,7 +138,7 @@ - + @@ -215,7 +215,7 @@ - + @@ -280,7 +280,7 @@

- + diff --git a/amrex/docs_html/doxygen/classamrex_1_1HypreIJIface.html b/amrex/docs_html/doxygen/classamrex_1_1HypreIJIface.html index 5c9df2c4f6..de6bf507e3 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1HypreIJIface.html +++ b/amrex/docs_html/doxygen/classamrex_1_1HypreIJIface.html @@ -117,7 +117,7 @@

Public Member Functions

 HypreABecLap3 (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom_, MPI_Comm comm_, const iMultiFab *overset_mask=nullptr)
 HypreABecLap3 (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom_, MPI_Comm comm_, const iMultiFab *overset_mask=nullptr)
 
 ~HypreABecLap3 () override
 
void loadVectors (MultiFab &soln, const MultiFab &rhs)
 
- Public Member Functions inherited from amrex::Hypre
 Hypre (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_)
 Hypre (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_)
 
virtual ~Hypre ()
 
static constexpr HYPRE_Int eb_stencil_size = AMREX_D_TERM(3, *3, *3)
 
- Protected Attributes inherited from amrex::Hypre
MPI_Comm comm = MPI_COMM_NULL
MPI_Comm comm = MPI_COMM_NULL
 
Geometry geom
 
MPI_Comm MPI_Comm  comm_,
- + @@ -185,7 +185,7 @@

Public Member Functions

 HypreIJIface (MPI_Comm comm, HypreIntType ilower, HypreIntType iupper, int verbose)
 HypreIJIface (MPI_Comm comm, HypreIntType ilower, HypreIntType iupper, int verbose)
 
 ~HypreIJIface ()
 
- + @@ -304,7 +304,7 @@

amrex::HypreIJIface::HypreIJIface

- + @@ -1088,7 +1088,7 @@

Private Attributes

MPI_Comm m_comm {MPI_COMM_NULL}
MPI_Comm m_comm {MPI_COMM_NULL}
 
HYPRE_IJMatrix m_mat {nullptr}
 
(MPI_Comm MPI_Comm  comm,
- +
MPI_Comm amrex::HypreIJIface::m_comm {MPI_COMM_NULL}MPI_Comm amrex::HypreIJIface::m_comm {MPI_COMM_NULL}
diff --git a/amrex/docs_html/doxygen/classamrex_1_1HypreNodeLap.html b/amrex/docs_html/doxygen/classamrex_1_1HypreNodeLap.html index 30adc6b523..369927cf43 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1HypreNodeLap.html +++ b/amrex/docs_html/doxygen/classamrex_1_1HypreNodeLap.html @@ -117,7 +117,7 @@ - + @@ -165,7 +165,7 @@ - + @@ -269,7 +269,7 @@

- + @@ -719,7 +719,7 @@

Public Member Functions

 HypreNodeLap (const BoxArray &grids_, const DistributionMapping &dmap_, const Geometry &geom_, const FabFactory< FArrayBox > &factory_, const iMultiFab &owner_mask_, const iMultiFab &dirichlet_mask_, MPI_Comm comm_, MLNodeLinOp const *linop_, int verbose_, std::string options_namespace_)
 HypreNodeLap (const BoxArray &grids_, const DistributionMapping &dmap_, const Geometry &geom_, const FabFactory< FArrayBox > &factory_, const iMultiFab &owner_mask_, const iMultiFab &dirichlet_mask_, MPI_Comm comm_, MLNodeLinOp const *linop_, int verbose_, std::string options_namespace_)
 
 ~HypreNodeLap ()
 
 
iMultiFab const * dirichlet_mask = nullptr
 
MPI_Comm comm = MPI_COMM_NULL
MPI_Comm comm = MPI_COMM_NULL
 
MLNodeLinOp const * linop = nullptr
 
MPI_Comm MPI_Comm  comm_,
- +
MPI_Comm amrex::HypreNodeLap::comm = MPI_COMM_NULLMPI_Comm amrex::HypreNodeLap::comm = MPI_COMM_NULL
diff --git a/amrex/docs_html/doxygen/classamrex_1_1HypreSolver.html b/amrex/docs_html/doxygen/classamrex_1_1HypreSolver.html index 74a1f46df3..9cbd1ff8bf 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1HypreSolver.html +++ b/amrex/docs_html/doxygen/classamrex_1_1HypreSolver.html @@ -157,7 +157,7 @@   std::string m_options_namespace   -MPI_Comm m_comm = MPI_COMM_NULL +MPI_Comm m_comm = MPI_COMM_NULL   Vector< std::unique_ptr< iMultiFab > > m_owner_mask   @@ -646,7 +646,7 @@

- +
MPI_Comm amrex::HypreSolver< MSS >::m_comm = MPI_COMM_NULLMPI_Comm amrex::HypreSolver< MSS >::m_comm = MPI_COMM_NULL
diff --git a/amrex/docs_html/doxygen/classamrex_1_1IArrayBox-members.html b/amrex/docs_html/doxygen/classamrex_1_1IArrayBox-members.html index eaaf6ce7d1..6171bdca38 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1IArrayBox-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1IArrayBox-members.html @@ -321,7 +321,7 @@
sum(const Box &subbox, int comp, int numcomp=1) const noexceptamrex::BaseFab< int > sum(const Box &bx, DestComp dcomp, NumComps ncomp) const noexceptamrex::BaseFab< int > truesizeamrex::BaseFab< int >protected - value_type typedefamrex::BaseFab< int > + value_type typedefamrex::BaseFab< int > xpay(int a, const BaseFab< int > &x, const Box &srcbox, const Box &destbox, int srccomp, int destcomp, int numcomp=1) noexceptamrex::BaseFab< int > ~BaseFab() noexceptamrex::BaseFab< int >virtual ~IArrayBox() noexcept override=defaultamrex::IArrayBox diff --git a/amrex/docs_html/doxygen/classamrex_1_1IArrayBox.html b/amrex/docs_html/doxygen/classamrex_1_1IArrayBox.html index 4bcb0be3fc..f2aac989ee 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1IArrayBox.html +++ b/amrex/docs_html/doxygen/classamrex_1_1IArrayBox.html @@ -699,8 +699,8 @@

Additional Inherited Members

- Public Types inherited from amrex::BaseFab< int > -typedef int value_type -  +using value_type = int +  - Public Attributes inherited from amrex::DataAllocator Arenam_arena = nullptr   diff --git a/amrex/docs_html/doxygen/classamrex_1_1IndexType.html b/amrex/docs_html/doxygen/classamrex_1_1IndexType.html index 8c60dfe9e1..b8739bd506 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1IndexType.html +++ b/amrex/docs_html/doxygen/classamrex_1_1IndexType.html @@ -215,7 +215,7 @@ - +

Friends

MPI_Datatype ParallelDescriptor::Mpi_typemap ()
MPI_Datatype ParallelDescriptor::Mpi_typemap ()
 

Detailed Description

@@ -980,7 +980,7 @@

- + diff --git a/amrex/docs_html/doxygen/classamrex_1_1IntVect.html b/amrex/docs_html/doxygen/classamrex_1_1IntVect.html index b0dc271ab1..5ba4485346 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1IntVect.html +++ b/amrex/docs_html/doxygen/classamrex_1_1IntVect.html @@ -334,7 +334,7 @@
MPI_Datatype ParallelDescriptor::Mpi_typemap MPI_Datatype ParallelDescriptor::Mpi_typemap ( )
- + @@ -2315,7 +2315,7 @@

Friends

MPI_Datatype ParallelDescriptor::Mpi_typemap ()
MPI_Datatype ParallelDescriptor::Mpi_typemap ()
 
std::ostream & operator<< (std::ostream &os, const IntVect &iv)
 
- + diff --git a/amrex/docs_html/doxygen/classamrex_1_1LayoutData-members.html b/amrex/docs_html/doxygen/classamrex_1_1LayoutData-members.html index 98622e6f6b..5b82c9bf8a 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1LayoutData-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1LayoutData-members.html @@ -115,9 +115,9 @@ - - - + + + @@ -134,8 +134,8 @@ - - + + @@ -153,8 +153,8 @@ - - + + @@ -200,7 +200,7 @@ - + @@ -220,18 +220,18 @@ - - + + - - - - + + + + diff --git a/amrex/docs_html/doxygen/classamrex_1_1LayoutData.html b/amrex/docs_html/doxygen/classamrex_1_1LayoutData.html index 0fa303a5fa..1f826fccc0 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1LayoutData.html +++ b/amrex/docs_html/doxygen/classamrex_1_1LayoutData.html @@ -298,14 +298,14 @@ } - - - - - - - - + + + + + + + + @@ -314,28 +314,28 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - + @@ -409,7 +409,7 @@ - + @@ -425,19 +425,19 @@ - + - + - + - + - + diff --git a/amrex/docs_html/doxygen/classamrex_1_1MLABecLaplacianT.html b/amrex/docs_html/doxygen/classamrex_1_1MLABecLaplacianT.html index 80df83a268..37f68452a2 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MLABecLaplacianT.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MLABecLaplacianT.html @@ -500,9 +500,9 @@ - + - + @@ -624,9 +624,9 @@ - + - + diff --git a/amrex/docs_html/doxygen/classamrex_1_1MLALaplacianT.html b/amrex/docs_html/doxygen/classamrex_1_1MLALaplacianT.html index 83ca43a403..84a43aae63 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MLALaplacianT.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MLALaplacianT.html @@ -494,9 +494,9 @@ - + - + @@ -603,9 +603,9 @@ - + - + diff --git a/amrex/docs_html/doxygen/classamrex_1_1MLCellABecLapT.html b/amrex/docs_html/doxygen/classamrex_1_1MLCellABecLapT.html index 2fc3661d97..875cfea535 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MLCellABecLapT.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MLCellABecLapT.html @@ -429,9 +429,9 @@ - + - + @@ -540,9 +540,9 @@ - + - + diff --git a/amrex/docs_html/doxygen/classamrex_1_1MLCellLinOpT.html b/amrex/docs_html/doxygen/classamrex_1_1MLCellLinOpT.html index c1edf4e4e6..3b8364b81c 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MLCellLinOpT.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MLCellLinOpT.html @@ -431,9 +431,9 @@ - + - + @@ -509,9 +509,9 @@ - + - + diff --git a/amrex/docs_html/doxygen/classamrex_1_1MLEBABecLap.html b/amrex/docs_html/doxygen/classamrex_1_1MLEBABecLap.html index e6ef6ad802..e171983164 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MLEBABecLap.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MLEBABecLap.html @@ -459,9 +459,9 @@ - + - + @@ -595,9 +595,9 @@ - + - + diff --git a/amrex/docs_html/doxygen/classamrex_1_1MLEBNodeFDLaplacian.html b/amrex/docs_html/doxygen/classamrex_1_1MLEBNodeFDLaplacian.html index f2eb52db94..3738acca30 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MLEBNodeFDLaplacian.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MLEBNodeFDLaplacian.html @@ -461,9 +461,9 @@ - + - + @@ -571,9 +571,9 @@ - + - + diff --git a/amrex/docs_html/doxygen/classamrex_1_1MLEBTensorOp.html b/amrex/docs_html/doxygen/classamrex_1_1MLEBTensorOp.html index 196d996e7b..949b830d08 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MLEBTensorOp.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MLEBTensorOp.html @@ -572,9 +572,9 @@ - + - + @@ -684,9 +684,9 @@ - + - + diff --git a/amrex/docs_html/doxygen/classamrex_1_1MLLinOpT.html b/amrex/docs_html/doxygen/classamrex_1_1MLLinOpT.html index 03c9755701..b1756d422d 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MLLinOpT.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MLLinOpT.html @@ -353,9 +353,9 @@ - + - + @@ -436,9 +436,9 @@ - + - + @@ -480,7 +480,7 @@ - + @@ -1204,7 +1204,7 @@

MPI_Datatype ParallelDescriptor::Mpi_typemap MPI_Datatype ParallelDescriptor::Mpi_typemap ( )
clearThisBD(bool no_assertion=false) constamrex::FabArrayBase
comm_tile_sizeamrex::FabArrayBasestatic
COPY enum valueamrex::FabArrayBase
CopyComTagsContainer typedefamrex::FabArrayBase
CPCache typedefamrex::FabArrayBase
CPCacheIter typedefamrex::FabArrayBase
CopyComTagsContainer typedefamrex::FabArrayBase
CPCache typedefamrex::FabArrayBase
CPCacheIter typedefamrex::FabArrayBase
CpOp enum nameamrex::FabArrayBase
data() const noexceptamrex::LayoutData< T >inline
data() noexceptamrex::LayoutData< T >inline
FabArrayBase(FabArrayBase &&rhs) noexcept=defaultamrex::FabArrayBase
FabArrayBase(const FabArrayBase &rhs)=defaultamrex::FabArrayBase
fabbox(int K) const noexceptamrex::FabArrayBase
FBCache typedefamrex::FabArrayBase
FBCacheIter typedefamrex::FabArrayBase
FBCache typedefamrex::FabArrayBase
FBCacheIter typedefamrex::FabArrayBase
Finalize()amrex::FabArrayBasestatic
flushCFinfo(bool no_assertion=false) constamrex::FabArrayBase
flushCPC(bool no_assertion=false) constamrex::FabArrayBase
flushRB90Cache()amrex::FabArrayBasestatic
flushTileArray(const IntVect &tilesize=IntVect::TheZeroVector(), bool no_assertion=false) constamrex::FabArrayBase
flushTileArrayCache()amrex::FabArrayBasestatic
FPinfoCache typedefamrex::FabArrayBase
FPinfoCacheIter typedefamrex::FabArrayBase
FPinfoCache typedefamrex::FabArrayBase
FPinfoCacheIter typedefamrex::FabArrayBase
getBDKey() const noexceptamrex::FabArrayBaseinline
getCPC(const IntVect &dstng, const FabArrayBase &src, const IntVect &srcng, const Periodicity &period, bool to_ghost_cells_only=false) constamrex::FabArrayBase
getFB(const IntVect &nghost, const Periodicity &period, bool cross=false, bool enforce_periodicity_only=false, bool override_sync=false) constamrex::FabArrayBase
m_TheRB180Cacheamrex::FabArrayBasestatic
m_TheRB90Cacheamrex::FabArrayBasestatic
m_TheTileArrayCacheamrex::FabArrayBasestatic
MapOfCopyComTagContainers typedefamrex::FabArrayBase
MapOfCopyComTagContainers typedefamrex::FabArrayBase
MaxCompamrex::FabArrayBasestatic
mfiter_tile_sizeamrex::FabArrayBasestatic
n_compamrex::FabArrayBase
operator[](int a_box_index) const noexceptamrex::LayoutData< T >inline
ownershipamrex::FabArrayBase
OwnerShip() const noexceptamrex::FabArrayBaseinline
PolarBCache typedefamrex::FabArrayBase
PolarBCacheIter typedefamrex::FabArrayBase
PolarBCache typedefamrex::FabArrayBase
PolarBCacheIter typedefamrex::FabArrayBase
popRegionTag()amrex::FabArrayBasestatic
printMemUsage()amrex::FabArrayBasestatic
pushRegionTag(const char *t)amrex::FabArrayBasestatic
pushRegionTag(std::string t)amrex::FabArrayBasestatic
queryMemUsage(const std::string &tag=std::string("All"))amrex::FabArrayBasestatic
queryMemUsageHWM(const std::string &tag=std::string("All"))amrex::FabArrayBasestatic
RB180Cache typedefamrex::FabArrayBase
RB180CacheIter typedefamrex::FabArrayBase
RB90Cache typedefamrex::FabArrayBase
RB90CacheIter typedefamrex::FabArrayBase
RB180Cache typedefamrex::FabArrayBase
RB180CacheIter typedefamrex::FabArrayBase
RB90Cache typedefamrex::FabArrayBase
RB90CacheIter typedefamrex::FabArrayBase
setMultiGhost(bool a_multi_ghost)amrex::FabArrayBaseinline
setNGrowFilled(IntVect const &ng) noexceptamrex::FabArrayBaseinline
size() const noexceptamrex::FabArrayBaseinline
 parallel copy or add More...
 
typedef CopyComTag::CopyComTagsContainer CopyComTagsContainer
 
typedef CopyComTag::MapOfCopyComTagContainers MapOfCopyComTagContainers
 
typedef std::multimap< BDKey, FabArrayBase::FPinfo * > FPinfoCache
 
typedef FPinfoCache::iterator FPinfoCacheIter
 
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 TACache = std::map< BDKey, TAMap >
 
typedef std::multimap< BDKey, FabArrayBase::FB * > FBCache
 
typedef FBCache::iterator FBCacheIter
 
typedef std::multimap< BDKey, FabArrayBase::CPC * > CPCache
 
typedef CPCache::iterator CPCacheIter
 
typedef std::multimap< BDKey, FabArrayBase::RB90 * > RB90Cache
 
typedef RB90Cache::iterator RB90CacheIter
 
typedef std::multimap< BDKey, FabArrayBase::RB180 * > RB180Cache
 
typedef RB180Cache::iterator RB180CacheIter
 
typedef std::multimap< BDKey, FabArrayBase::PolarB * > PolarBCache
 
typedef PolarBCache::iterator PolarBCacheIter
 
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
 
- Static Public Member Functions inherited from amrex::FabArrayBase
static Long bytesOfMapOfCopyComTagContainers (const MapOfCopyComTagContainers &)
static Long bytesOfMapOfCopyComTagContainers (const MapOfCopyComTagContainers &)
 
static void Initialize ()
 Initialize from ParmParse with "fabarray" prefix. More...
static AMREX_EXPORT IntVect comm_tile_size
 communication tile size More...
 
static FPinfoCache m_TheFillPatchCache
static FPinfoCache m_TheFillPatchCache
 
static CacheStats m_FPinfo_stats
 
 
static CacheStats m_TAC_stats
 
static FBCache m_TheFBCache
static FBCache m_TheFBCache
 
static CacheStats m_FBC_stats
 
static CPCache m_TheCPCache
static CPCache m_TheCPCache
 
static CacheStats m_CPC_stats
 
static RB90Cache m_TheRB90Cache
static RB90Cache m_TheRB90Cache
 
static RB180Cache m_TheRB180Cache
static RB180Cache m_TheRB180Cache
 
static PolarBCache m_ThePolarBCache
static PolarBCache m_ThePolarBCache
 
static std::multimap< BDKey, ParForInfo * > m_TheParForCache
 
 
bool isBottomActive () const noexcept
 
MPI_Comm BottomCommunicator () const noexcept
MPI_Comm BottomCommunicator () const noexcept
 
MPI_Comm Communicator () const noexcept
MPI_Comm Communicator () const noexcept
 
void setCoarseFineBCLocation (const RealVect &cloc) noexcept
 
 
Vector< intm_domain_covered
 
MPI_Comm m_default_comm = MPI_COMM_NULL
MPI_Comm m_default_comm = MPI_COMM_NULL
 
MPI_Comm m_bottom_comm = MPI_COMM_NULL
MPI_Comm m_bottom_comm = MPI_COMM_NULL
 
std::unique_ptr< CommContainerm_raii_comm
 
 
bool isBottomActive () const noexcept
 
MPI_Comm BottomCommunicator () const noexcept
MPI_Comm BottomCommunicator () const noexcept
 
MPI_Comm Communicator () const noexcept
MPI_Comm Communicator () const noexcept
 
void setCoarseFineBCLocation (const RealVect &cloc) noexcept
 
 
Vector< intm_domain_covered
 
MPI_Comm m_default_comm = MPI_COMM_NULL
MPI_Comm m_default_comm = MPI_COMM_NULL
 
MPI_Comm m_bottom_comm = MPI_COMM_NULL
MPI_Comm m_bottom_comm = MPI_COMM_NULL
 
std::unique_ptr< CommContainerm_raii_comm
 
 
bool isBottomActive () const noexcept
 
MPI_Comm BottomCommunicator () const noexcept
MPI_Comm BottomCommunicator () const noexcept
 
MPI_Comm Communicator () const noexcept
MPI_Comm Communicator () const noexcept
 
void setCoarseFineBCLocation (const RealVect &cloc) noexcept
 
 
Vector< intm_domain_covered
 
MPI_Comm m_default_comm = MPI_COMM_NULL
MPI_Comm m_default_comm = MPI_COMM_NULL
 
MPI_Comm m_bottom_comm = MPI_COMM_NULL
MPI_Comm m_bottom_comm = MPI_COMM_NULL
 
std::unique_ptr< CommContainerm_raii_comm
 
 
Vector< intm_domain_covered
 
MPI_Comm m_default_comm = MPI_COMM_NULL
MPI_Comm m_default_comm = MPI_COMM_NULL
 
MPI_Comm m_bottom_comm = MPI_COMM_NULL
MPI_Comm m_bottom_comm = MPI_COMM_NULL
 
std::unique_ptr< CommContainerm_raii_comm
 
 
bool isBottomActive () const noexcept
 
MPI_Comm BottomCommunicator () const noexcept
MPI_Comm BottomCommunicator () const noexcept
 
MPI_Comm Communicator () const noexcept
MPI_Comm Communicator () const noexcept
 
void setCoarseFineBCLocation (const RealVect &cloc) noexcept
 
 
bool isBottomActive () const noexcept
 
MPI_Comm BottomCommunicator () const noexcept
MPI_Comm BottomCommunicator () const noexcept
 
MPI_Comm Communicator () const noexcept
MPI_Comm Communicator () const noexcept
 
void setCoarseFineBCLocation (const RealVect &cloc) noexcept
 
 
Vector< intm_domain_covered
 
MPI_Comm m_default_comm = MPI_COMM_NULL
MPI_Comm m_default_comm = MPI_COMM_NULL
 
MPI_Comm m_bottom_comm = MPI_COMM_NULL
MPI_Comm m_bottom_comm = MPI_COMM_NULL
 
std::unique_ptr< CommContainerm_raii_comm
 
 
bool isBottomActive () const noexcept
 
MPI_Comm BottomCommunicator () const noexcept
MPI_Comm BottomCommunicator () const noexcept
 
MPI_Comm Communicator () const noexcept
MPI_Comm Communicator () const noexcept
 
void setCoarseFineBCLocation (const RealVect &cloc) noexcept
 
 
Vector< intm_domain_covered
 
MPI_Comm m_default_comm = MPI_COMM_NULL
MPI_Comm m_default_comm = MPI_COMM_NULL
 
MPI_Comm m_bottom_comm = MPI_COMM_NULL
MPI_Comm m_bottom_comm = MPI_COMM_NULL
 
std::unique_ptr< CommContainerm_raii_comm
 
 
Vector< intm_domain_covered
 
MPI_Comm m_default_comm = MPI_COMM_NULL
MPI_Comm m_default_comm = MPI_COMM_NULL
 
MPI_Comm m_bottom_comm = MPI_COMM_NULL
MPI_Comm m_bottom_comm = MPI_COMM_NULL
 
std::unique_ptr< CommContainerm_raii_comm
 
 
bool isBottomActive () const noexcept
 
MPI_Comm BottomCommunicator () const noexcept
MPI_Comm BottomCommunicator () const noexcept
 
MPI_Comm Communicator () const noexcept
MPI_Comm Communicator () const noexcept
 
void setCoarseFineBCLocation (const RealVect &cloc) noexcept
 
 
bool isBottomActive () const noexcept
 
MPI_Comm BottomCommunicator () const noexcept
MPI_Comm BottomCommunicator () const noexcept
 
MPI_Comm Communicator () const noexcept
MPI_Comm Communicator () const noexcept
 
void setCoarseFineBCLocation (const RealVect &cloc) noexcept
 
 
Vector< intm_domain_covered
 
MPI_Comm m_default_comm = MPI_COMM_NULL
MPI_Comm m_default_comm = MPI_COMM_NULL
 
MPI_Comm m_bottom_comm = MPI_COMM_NULL
MPI_Comm m_bottom_comm = MPI_COMM_NULL
 
std::unique_ptr< CommContainerm_raii_comm
 
 
void defineBC ()
 
MPI_Comm makeSubCommunicator (const DistributionMapping &dm)
MPI_Comm makeSubCommunicator (const DistributionMapping &dm)
 
virtual void checkPoint (std::string const &) const
 
- + @@ -1261,7 +1261,7 @@

MPI_Comm amrex::MLLinOpT< MF >::BottomCommunicator MPI_Comm amrex::MLLinOpT< MF >::BottomCommunicator ( ) const
- + @@ -3193,7 +3193,7 @@

MPI_Comm amrex::MLLinOpT< MF >::Communicator MPI_Comm amrex::MLLinOpT< MF >::Communicator ( ) const
- + @@ -4855,7 +4855,7 @@

MPI_Comm amrex::MLLinOpT< MF >::makeSubCommunicator MPI_Comm amrex::MLLinOpT< MF >::makeSubCommunicator ( const DistributionMapping dm)
- +
MPI_Comm amrex::MLLinOpT< MF >::m_bottom_comm = MPI_COMM_NULLMPI_Comm amrex::MLLinOpT< MF >::m_bottom_comm = MPI_COMM_NULL
@@ -4975,7 +4975,7 @@

- +
MPI_Comm amrex::MLLinOpT< MF >::m_default_comm = MPI_COMM_NULLMPI_Comm amrex::MLLinOpT< MF >::m_default_comm = MPI_COMM_NULL
diff --git a/amrex/docs_html/doxygen/classamrex_1_1MLNodeLaplacian.html b/amrex/docs_html/doxygen/classamrex_1_1MLNodeLaplacian.html index c01c753605..27189c448d 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MLNodeLaplacian.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MLNodeLaplacian.html @@ -467,9 +467,9 @@   bool 
isBottomActive () const noexcept   -MPI_Comm BottomCommunicator () const noexcept +MPI_Comm BottomCommunicator () const noexcept   -MPI_Comm Communicator () const noexcept +MPI_Comm Communicator () const noexcept   void setCoarseFineBCLocation (const RealVect &cloc) noexcept   @@ -629,9 +629,9 @@   Vector< intm_domain_covered   -MPI_Comm m_default_comm = MPI_COMM_NULL +MPI_Comm m_default_comm = MPI_COMM_NULL   -MPI_Comm m_bottom_comm = MPI_COMM_NULL +MPI_Comm m_bottom_comm = MPI_COMM_NULL   std::unique_ptr< CommContainerm_raii_comm   diff --git a/amrex/docs_html/doxygen/classamrex_1_1MLNodeLinOp.html b/amrex/docs_html/doxygen/classamrex_1_1MLNodeLinOp.html index 170b6f44a8..d58c7bf541 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MLNodeLinOp.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MLNodeLinOp.html @@ -411,9 +411,9 @@   bool isBottomActive () const noexcept   -MPI_Comm BottomCommunicator () const noexcept +MPI_Comm BottomCommunicator () const noexcept   -MPI_Comm Communicator () const noexcept +MPI_Comm Communicator () const noexcept   void setCoarseFineBCLocation (const RealVect &cloc) noexcept   @@ -523,9 +523,9 @@   Vector< intm_domain_covered   -MPI_Comm m_default_comm = MPI_COMM_NULL +MPI_Comm m_default_comm = MPI_COMM_NULL   -MPI_Comm m_bottom_comm = MPI_COMM_NULL +MPI_Comm m_bottom_comm = MPI_COMM_NULL   std::unique_ptr< CommContainerm_raii_comm   diff --git a/amrex/docs_html/doxygen/classamrex_1_1MLNodeTensorLaplacian.html b/amrex/docs_html/doxygen/classamrex_1_1MLNodeTensorLaplacian.html index 93d734cc86..540c9ccf4d 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MLNodeTensorLaplacian.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MLNodeTensorLaplacian.html @@ -455,9 +455,9 @@   bool isBottomActive () const noexcept   -MPI_Comm BottomCommunicator () const noexcept +MPI_Comm BottomCommunicator () const noexcept   -MPI_Comm Communicator () const noexcept +MPI_Comm Communicator () const noexcept   void setCoarseFineBCLocation (const RealVect &cloc) noexcept   @@ -565,9 +565,9 @@   Vector< intm_domain_covered   -MPI_Comm m_default_comm = MPI_COMM_NULL +MPI_Comm m_default_comm = MPI_COMM_NULL   -MPI_Comm m_bottom_comm = MPI_COMM_NULL +MPI_Comm m_bottom_comm = MPI_COMM_NULL   std::unique_ptr< CommContainerm_raii_comm   diff --git a/amrex/docs_html/doxygen/classamrex_1_1MLPoissonT.html b/amrex/docs_html/doxygen/classamrex_1_1MLPoissonT.html index ac24dbc547..7a7d00c6a8 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MLPoissonT.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MLPoissonT.html @@ -465,9 +465,9 @@   bool isBottomActive () const noexcept   -MPI_Comm BottomCommunicator () const noexcept +MPI_Comm BottomCommunicator () const noexcept   -MPI_Comm Communicator () const noexcept +MPI_Comm Communicator () const noexcept   void setCoarseFineBCLocation (const RealVect &cloc) noexcept   @@ -574,9 +574,9 @@   Vector< intm_domain_covered   -MPI_Comm m_default_comm = MPI_COMM_NULL +MPI_Comm m_default_comm = MPI_COMM_NULL   -MPI_Comm m_bottom_comm = MPI_COMM_NULL +MPI_Comm m_bottom_comm = MPI_COMM_NULL   std::unique_ptr< CommContainerm_raii_comm   diff --git a/amrex/docs_html/doxygen/classamrex_1_1MLTensorOp.html b/amrex/docs_html/doxygen/classamrex_1_1MLTensorOp.html index 4e5ccec405..442fcbf27e 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MLTensorOp.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MLTensorOp.html @@ -520,9 +520,9 @@   Vector< intm_domain_covered   -MPI_Comm m_default_comm = MPI_COMM_NULL +MPI_Comm m_default_comm = MPI_COMM_NULL   -MPI_Comm m_bottom_comm = MPI_COMM_NULL +MPI_Comm m_bottom_comm = MPI_COMM_NULL   std::unique_ptr< CommContainerm_raii_comm   @@ -636,9 +636,9 @@   bool isBottomActive () const noexcept   -MPI_Comm BottomCommunicator () const noexcept +MPI_Comm BottomCommunicator () const noexcept   -MPI_Comm Communicator () const noexcept +MPI_Comm Communicator () const noexcept   void setCoarseFineBCLocation (const RealVect &cloc) noexcept   diff --git a/amrex/docs_html/doxygen/classamrex_1_1MPMD_1_1Copier.html b/amrex/docs_html/doxygen/classamrex_1_1MPMD_1_1Copier.html index da1652229b..17f7a315d0 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MPMD_1_1Copier.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MPMD_1_1Copier.html @@ -122,9 +122,9 @@ - + - +

Private Attributes

std::map< int, FabArrayBase::CopyComTagsContainerm_SndTags
std::map< int, FabArrayBase::CopyComTagsContainerm_SndTags
 
std::map< int, FabArrayBase::CopyComTagsContainerm_RcvTags
std::map< int, FabArrayBase::CopyComTagsContainerm_RcvTags
 

Detailed Description

@@ -242,7 +242,7 @@

- +
std::map<int,FabArrayBase::CopyComTagsContainer> amrex::MPMD::Copier::m_RcvTagsstd::map<int,FabArrayBase::CopyComTagsContainer> amrex::MPMD::Copier::m_RcvTags
@@ -264,7 +264,7 @@

- +
std::map<int,FabArrayBase::CopyComTagsContainer> amrex::MPMD::Copier::m_SndTagsstd::map<int,FabArrayBase::CopyComTagsContainer> amrex::MPMD::Copier::m_SndTags
diff --git a/amrex/docs_html/doxygen/classamrex_1_1Mask-members.html b/amrex/docs_html/doxygen/classamrex_1_1Mask-members.html index c6611edf89..002fe72c84 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1Mask-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1Mask-members.html @@ -327,7 +327,7 @@
sum(const Box &subbox, int comp, int numcomp=1) const noexceptamrex::BaseFab< int > sum(const Box &bx, DestComp dcomp, NumComps ncomp) const noexceptamrex::BaseFab< int > truesizeamrex::BaseFab< int >protected - value_type typedefamrex::BaseFab< int > + value_type typedefamrex::BaseFab< int > writeOn(std::ostream &) constamrex::Mask xpay(int a, const BaseFab< int > &x, const Box &srcbox, const Box &destbox, int srccomp, int destcomp, int numcomp=1) noexceptamrex::BaseFab< int > ~BaseFab() noexceptamrex::BaseFab< int >virtual diff --git a/amrex/docs_html/doxygen/classamrex_1_1Mask.html b/amrex/docs_html/doxygen/classamrex_1_1Mask.html index 408d2b0ca2..8b94f2c5da 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1Mask.html +++ b/amrex/docs_html/doxygen/classamrex_1_1Mask.html @@ -709,8 +709,8 @@

Additional Inherited Members

- Public Types inherited from amrex::BaseFab< int > -typedef int value_type -  +using value_type = int +  - Static Public Member Functions inherited from amrex::BaseFab< int > static void Initialize ()   diff --git a/amrex/docs_html/doxygen/classamrex_1_1MultiFab-members.html b/amrex/docs_html/doxygen/classamrex_1_1MultiFab-members.html index feb7a1e84f..7a848820e6 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MultiFab-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MultiFab-members.html @@ -158,11 +158,11 @@ copy(const FabArray< FArrayBox > &src, int src_comp, int dest_comp, int num_comp, const IntVect &src_nghost, const IntVect &dst_nghost, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)amrex::FabArray< FArrayBox >inline Copy(MultiFab &dst, const MultiFab &src, int srccomp, int dstcomp, int numcomp, int nghost)amrex::MultiFabstatic Copy(MultiFab &dst, const MultiFab &src, int srccomp, int dstcomp, int numcomp, const IntVect &nghost)amrex::MultiFabstatic - CopyComTagsContainer typedefamrex::MultiFabprivate + CopyComTagsContainer typedefamrex::MultiFabprivate copyTo(FArrayBox &dest, int nghost=0) constamrex::FabArray< FArrayBox > copyTo(FArrayBox &dest, int scomp, int dcomp, int ncomp, int nghost=0) constamrex::FabArray< FArrayBox > - CPCache typedefamrex::FabArrayBase - CPCacheIter typedefamrex::FabArrayBase + CPCache typedefamrex::FabArrayBase + CPCacheIter typedefamrex::FabArrayBase CpOp enum nameamrex::FabArrayBase define(const BoxArray &bxs, const DistributionMapping &dm, int nvar, int ngrow, const MFInfo &info=MFInfo(), const FabFactory< FArrayBox > &factory=FArrayBoxFactory())amrex::MultiFab define(const BoxArray &bxs, const DistributionMapping &dm, int nvar, const IntVect &ngrow, const MFInfo &info=MFInfo(), const FabFactory< FArrayBox > &factory=FArrayBoxFactory())amrex::MultiFab @@ -207,8 +207,8 @@ Factory() const noexceptamrex::FabArray< FArrayBox >inline FB_local_copy_cpu(const FB &TheFB, int scomp, int ncomp)amrex::FabArray< FArrayBox > FB_local_copy_gpu(const FB &TheFB, int scomp, int ncomp)amrex::FabArray< FArrayBox > - FBCache typedefamrex::FabArrayBase - FBCacheIter typedefamrex::FabArrayBase + FBCache typedefamrex::FabArrayBase + FBCacheIter typedefamrex::FabArrayBase fbdamrex::FabArray< FArrayBox > FBEP_nowait(int scomp, int ncomp, const IntVect &nghost, const Periodicity &period, bool cross, bool enforce_periodicity_only=false, bool override_sync=false)amrex::FabArray< FArrayBox > FBEP_nowait(int scomp, int ncomp, const IntVect &nghost, const Periodicity &period, bool cross, bool enforce_periodicity_only, bool override_sync)amrex::FabArray< FArrayBox > @@ -249,8 +249,8 @@ flushRB90Cache()amrex::FabArrayBasestatic flushTileArray(const IntVect &tilesize=IntVect::TheZeroVector(), bool no_assertion=false) constamrex::FabArrayBase flushTileArrayCache()amrex::FabArrayBasestatic - FPinfoCache typedefamrex::FabArrayBase - FPinfoCacheIter typedefamrex::FabArrayBase + FPinfoCache typedefamrex::FabArrayBase + FPinfoCacheIter typedefamrex::FabArrayBase get(const MFIter &mfi) const noexceptamrex::FabArray< FArrayBox >inline get(const MFIter &mfi) noexceptamrex::FabArray< FArrayBox >inline get(int K) const noexceptamrex::FabArray< FArrayBox >inline @@ -281,7 +281,7 @@ isDefined() constamrex::FabArray< FArrayBox > isFusingCandidate() const noexceptamrex::FabArrayBase isOwner(int li) const noexceptamrex::FabArrayBaseinline - Iterator typedefamrex::FabArray< FArrayBox >private + Iterator typedefamrex::FabArray< FArrayBox >private ixType() const noexceptamrex::FabArrayBaseinline LinComb(MultiFab &dst, Real a, const MultiFab &x, int xcomp, Real b, const MultiFab &y, int ycomp, int dstcomp, int numcomp, int nghost)amrex::MultiFabstatic FabArray< FArrayBox >::LinComb(FabArray< FArrayBox > &dst, value_type a, const FabArray< FArrayBox > &x, int xcomp, value_type b, const FabArray< FArrayBox > &y, int ycomp, int dstcomp, int numcomp, const IntVect &nghost)amrex::FabArray< FArrayBox >static @@ -317,7 +317,7 @@ m_TheRB180Cacheamrex::FabArrayBasestatic m_TheRB90Cacheamrex::FabArrayBasestatic m_TheTileArrayCacheamrex::FabArrayBasestatic - MapOfCopyComTagContainers typedefamrex::MultiFabprivate + MapOfCopyComTagContainers typedefamrex::MultiFabprivate max(int comp, int nghost=0, bool local=false) constamrex::MultiFab max(const Box &region, int comp, int nghost=0, bool local=false) constamrex::MultiFab MaxCompamrex::FabArrayBasestatic @@ -426,8 +426,8 @@ plus(const MultiFab &mf, int strt_comp, int num_comp, int nghost)amrex::MultiFab FabArray< FArrayBox >::plus(value_type val, int comp, int num_comp, int nghost=0)amrex::FabArray< FArrayBox > FabArray< FArrayBox >::plus(value_type val, const Box &region, int comp, int num_comp, int nghost=0)amrex::FabArray< FArrayBox > - PolarBCache typedefamrex::FabArrayBase - PolarBCacheIter typedefamrex::FabArrayBase + PolarBCache typedefamrex::FabArrayBase + PolarBCacheIter typedefamrex::FabArrayBase popRegionTag()amrex::FabArrayBasestatic prefetchToDevice(const MFIter &mfi) const noexceptamrex::FabArray< FArrayBox > prefetchToHost(const MFIter &mfi) const noexceptamrex::FabArray< FArrayBox > @@ -436,10 +436,10 @@ pushRegionTag(std::string t)amrex::FabArrayBasestatic queryMemUsage(const std::string &tag=std::string("All"))amrex::FabArrayBasestatic queryMemUsageHWM(const std::string &tag=std::string("All"))amrex::FabArrayBasestatic - RB180Cache typedefamrex::FabArrayBase - RB180CacheIter typedefamrex::FabArrayBase - RB90Cache typedefamrex::FabArrayBase - RB90CacheIter typedefamrex::FabArrayBase + RB180Cache typedefamrex::FabArrayBase + RB180CacheIter typedefamrex::FabArrayBase + RB90Cache typedefamrex::FabArrayBase + RB90CacheIter typedefamrex::FabArrayBase RecvLayoutMask(const CommMetaData &thecmd)amrex::FabArray< FArrayBox > Redistribute(const FabArray< FArrayBox > &src, int scomp, int dcomp, int ncomp, const IntVect &nghost)amrex::FabArray< FArrayBox > release(int K)amrex::FabArray< FArrayBox > diff --git a/amrex/docs_html/doxygen/classamrex_1_1MultiFab.html b/amrex/docs_html/doxygen/classamrex_1_1MultiFab.html index a311982a6c..e0bceb8516 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MultiFab.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MultiFab.html @@ -669,13 +669,13 @@   void CMD_remote_setVal_gpu (value_type x, const CommMetaData &thecmd, int scomp, int ncomp)   -void pack_send_buffer_gpu (FabArray< FArrayBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc) +void pack_send_buffer_gpu (FabArray< FArrayBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc)   -void unpack_recv_buffer_gpu (FabArray< FArrayBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe) +void unpack_recv_buffer_gpu (FabArray< FArrayBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe)   -void pack_send_buffer_cpu (FabArray< FArrayBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc) +void pack_send_buffer_cpu (FabArray< FArrayBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc)   -void unpack_recv_buffer_cpu (FabArray< FArrayBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe) +void unpack_recv_buffer_cpu (FabArray< FArrayBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe)   F::value_type norminf (int comp, int ncomp, IntVect const &nghost, bool local=false,[[maybe_unused]] bool ignore_covered=false) const  Return infinity norm. More...
@@ -877,13 +877,13 @@ static void Finalize ()   - Static Public Member Functions inherited from amrex::FabArray< FArrayBox > -static void pack_send_buffer_gpu (FabArray< FArrayBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc) +static void pack_send_buffer_gpu (FabArray< FArrayBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc)   -static void unpack_recv_buffer_gpu (FabArray< FArrayBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe) +static void unpack_recv_buffer_gpu (FabArray< FArrayBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe)   -static void pack_send_buffer_cpu (FabArray< FArrayBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc) +static void pack_send_buffer_cpu (FabArray< FArrayBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc)   -static void unpack_recv_buffer_cpu (FabArray< FArrayBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe) +static void unpack_recv_buffer_cpu (FabArray< FArrayBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe)   static void Saxpy (FabArray< FArrayBox > &y, value_type a, FabArray< FArrayBox > const &x, int xcomp, int ycomp, int ncomp, IntVect const &nghost)  y += a*x More...
@@ -895,7 +895,7 @@  dst = a*x + b*y More...
  - Static Public Member Functions inherited from amrex::FabArrayBase -static Long bytesOfMapOfCopyComTagContainers (const MapOfCopyComTagContainers &) +static Long bytesOfMapOfCopyComTagContainers (const MapOfCopyComTagContainers &)   static void Initialize ()  Initialize from ParmParse with "fabarray" prefix. More...
@@ -943,11 +943,11 @@ - - - - - + + + + +

Private Types

typedef FabArrayBase::CopyComTagsContainer CopyComTagsContainer
 Some useful typedefs. More...
 
typedef FabArrayBase::MapOfCopyComTagContainers MapOfCopyComTagContainers
 
using CopyComTagsContainer = FabArrayBase::CopyComTagsContainer
 Some useful typedefs. More...
 
using MapOfCopyComTagContainers = FabArrayBase::MapOfCopyComTagContainers
 
@@ -967,14 +967,14 @@ } - - - - - - - - + + + + + + + + @@ -983,26 +983,26 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -1039,7 +1039,7 @@ - + @@ -1055,19 +1055,19 @@ - + - + - + - + - + @@ -1106,8 +1106,8 @@

Detailed Description

A collection (stored as an array) of FArrayBox objects. This class is useful for storing floating point data on a domain defined by a union of rectangular regions embedded in a uniform index space. MultiFab class extends the function of the underlying FabArray class just as the FArrayBox class extends the function of BaseFab<Real>. Additional member functions are defined for I/O and simple arithmetic operations on these aggregate objects. This class does NOT provide a copy constructor or assignment operator.

Member Typedef Documentation

- -

◆ CopyComTagsContainer

+ +

◆ CopyComTagsContainer

@@ -1116,7 +1116,7 @@

Private Member Functions

 parallel copy or add More...
 
typedef CopyComTag::CopyComTagsContainer CopyComTagsContainer
 
typedef CopyComTag::MapOfCopyComTagContainers MapOfCopyComTagContainers
 
typedef std::multimap< BDKey, FabArrayBase::FPinfo * > FPinfoCache
 
typedef FPinfoCache::iterator FPinfoCacheIter
 
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 TACache = std::map< BDKey, TAMap >
 
typedef std::multimap< BDKey, FabArrayBase::FB * > FBCache
 
typedef FBCache::iterator FBCacheIter
 
typedef std::multimap< BDKey, FabArrayBase::CPC * > CPCache
 
typedef CPCache::iterator CPCacheIter
 
typedef std::multimap< BDKey, FabArrayBase::RB90 * > RB90Cache
 
typedef RB90Cache::iterator RB90CacheIter
 
typedef std::multimap< BDKey, FabArrayBase::RB180 * > RB180Cache
 
typedef RB180Cache::iterator RB180CacheIter
 
typedef std::multimap< BDKey, FabArrayBase::PolarB * > PolarBCache
 
typedef PolarBCache::iterator PolarBCacheIter
 
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 Attributes inherited from amrex::FabArray< FArrayBox >
std::unique_ptr< FBData< FArrayBox > > fbd
 
static AMREX_EXPORT IntVect comm_tile_size
 communication tile size More...
 
static FPinfoCache m_TheFillPatchCache
static FPinfoCache m_TheFillPatchCache
 
static CacheStats m_FPinfo_stats
 
 
static CacheStats m_TAC_stats
 
static FBCache m_TheFBCache
static FBCache m_TheFBCache
 
static CacheStats m_FBC_stats
 
static CPCache m_TheCPCache
static CPCache m_TheCPCache
 
static CacheStats m_CPC_stats
 
static RB90Cache m_TheRB90Cache
static RB90Cache m_TheRB90Cache
 
static RB180Cache m_TheRB180Cache
static RB180Cache m_TheRB180Cache
 
static PolarBCache m_ThePolarBCache
static PolarBCache m_ThePolarBCache
 
static std::multimap< BDKey, ParForInfo * > m_TheParForCache
 
- +
typedef FabArrayBase::CopyComTagsContainer amrex::MultiFab::CopyComTagsContainerusing amrex::MultiFab::CopyComTagsContainer = FabArrayBase::CopyComTagsContainer
@@ -1130,8 +1130,8 @@

-

◆ MapOfCopyComTagContainers

+ +

◆ MapOfCopyComTagContainers

@@ -1140,7 +1140,7 @@

- +
typedef FabArrayBase::MapOfCopyComTagContainers amrex::MultiFab::MapOfCopyComTagContainersusing amrex::MultiFab::MapOfCopyComTagContainers = FabArrayBase::MapOfCopyComTagContainers
diff --git a/amrex/docs_html/doxygen/classamrex_1_1MultiFab.js b/amrex/docs_html/doxygen/classamrex_1_1MultiFab.js index 3c7fb2c21f..b79ced3e9c 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MultiFab.js +++ b/amrex/docs_html/doxygen/classamrex_1_1MultiFab.js @@ -1,7 +1,7 @@ var classamrex_1_1MultiFab = [ - [ "CopyComTagsContainer", "classamrex_1_1MultiFab.html#a0945ab26050100412261a7e5e51e65bc", null ], - [ "MapOfCopyComTagContainers", "classamrex_1_1MultiFab.html#a9abff4a4be6d566975e62a4682960b96", null ], + [ "CopyComTagsContainer", "classamrex_1_1MultiFab.html#a1124d24928511321f4381ebd60b0c15b", null ], + [ "MapOfCopyComTagContainers", "classamrex_1_1MultiFab.html#a26137d0a3c8a4a024bf811fbaac6208d", null ], [ "MultiFab", "classamrex_1_1MultiFab.html#abcce72db937ae8e326d2cb14cb114e7d", null ], [ "MultiFab", "classamrex_1_1MultiFab.html#a19ec88a3ec56e2af03e7d127f8edb79e", null ], [ "MultiFab", "classamrex_1_1MultiFab.html#a89ca350582ac479d9278fa2e0ec1a9c2", null ], diff --git a/amrex/docs_html/doxygen/classamrex_1_1MultiFabCopyDescriptor-members.html b/amrex/docs_html/doxygen/classamrex_1_1MultiFabCopyDescriptor-members.html index 17db59610c..bb25a2b71d 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MultiFabCopyDescriptor-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MultiFabCopyDescriptor-members.html @@ -115,14 +115,14 @@
FabArrayCopyDescriptor(const FabArrayCopyDescriptor< FArrayBox > &)=deleteamrex::FabArrayCopyDescriptor< FArrayBox > FabArrayCopyDescriptor(FabArrayCopyDescriptor< FArrayBox > &&)=deleteamrex::FabArrayCopyDescriptor< FArrayBox > fabArraysamrex::FabArrayCopyDescriptor< FArrayBox >private - FabComTagContainer typedefamrex::FabArrayCopyDescriptor< FArrayBox >private - FabComTagIterContainer typedefamrex::FabArrayCopyDescriptor< FArrayBox >private + FabComTagContainer typedefamrex::FabArrayCopyDescriptor< FArrayBox >private + FabComTagIterContainer typedefamrex::FabArrayCopyDescriptor< FArrayBox >private fabComTagListamrex::FabArrayCopyDescriptor< FArrayBox >private fabCopyDescListamrex::FabArrayCopyDescriptor< FArrayBox >private - FCDMap typedefamrex::FabArrayCopyDescriptor< FArrayBox >private - FCDMapConstIter typedefamrex::FabArrayCopyDescriptor< FArrayBox >private - FCDMapIter typedefamrex::FabArrayCopyDescriptor< FArrayBox >private - FCDMapValueType typedefamrex::FabArrayCopyDescriptor< FArrayBox >private + FCDMap typedefamrex::FabArrayCopyDescriptor< FArrayBox >private + FCDMapConstIter typedefamrex::FabArrayCopyDescriptor< FArrayBox >private + FCDMapIter typedefamrex::FabArrayCopyDescriptor< FArrayBox >private + FCDMapValueType typedefamrex::FabArrayCopyDescriptor< FArrayBox >private FillFab(FabArrayId faid, const FillBoxId &fillboxid, FArrayBox &destFab)amrex::FabArrayCopyDescriptor< FArrayBox > FillFab(FabArrayId faid, const FillBoxId &fillboxid, FArrayBox &destFab, const Box &destBox)amrex::FabArrayCopyDescriptor< FArrayBox > MultiFabCopyDescriptor()=defaultamrex::MultiFabCopyDescriptor diff --git a/amrex/docs_html/doxygen/classamrex_1_1MultiFabCopyDescriptor.html b/amrex/docs_html/doxygen/classamrex_1_1MultiFabCopyDescriptor.html index 1bdb21871e..77bf8cd5ea 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1MultiFabCopyDescriptor.html +++ b/amrex/docs_html/doxygen/classamrex_1_1MultiFabCopyDescriptor.html @@ -128,7 +128,7 @@   MultiFabCopyDescriptoroperator= (MultiFabCopyDescriptor &&)=delete   -MultiFabId RegisterMultiFab (MultiFab *mf) +MultiFabId RegisterMultiFab (MultiFab *mf)   - Public Member Functions inherited from amrex::FabArrayCopyDescriptor< FArrayBox >  FabArrayCopyDescriptor ()=default @@ -336,7 +336,7 @@

- + diff --git a/amrex/docs_html/doxygen/classamrex_1_1NFilesIter.html b/amrex/docs_html/doxygen/classamrex_1_1NFilesIter.html index d587beb241..08987ad6cf 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1NFilesIter.html +++ b/amrex/docs_html/doxygen/classamrex_1_1NFilesIter.html @@ -210,7 +210,7 @@ - + @@ -1552,7 +1552,7 @@

MultiFabId amrex::MultiFabCopyDescriptor::RegisterMultiFab MultiFabId amrex::MultiFabCopyDescriptor::RegisterMultiFab ( MultiFab mf)
 
std::string fullFileName
 
VisMFBuffer::IO_Buffer io_buffer
VisMFBuffer::IO_Buffer io_buffer
 
std::fstream fileStream
 
- +
VisMFBuffer::IO_Buffer amrex::NFilesIter::io_bufferVisMFBuffer::IO_Buffer amrex::NFilesIter::io_buffer
diff --git a/amrex/docs_html/doxygen/classamrex_1_1PETScABecLap.html b/amrex/docs_html/doxygen/classamrex_1_1PETScABecLap.html index e63d6344cf..eb579823f0 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1PETScABecLap.html +++ b/amrex/docs_html/doxygen/classamrex_1_1PETScABecLap.html @@ -109,7 +109,7 @@ - + @@ -140,7 +140,7 @@

Public Member Functions

 PETScABecLap (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom_, MPI_Comm comm_)
 PETScABecLap (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom_, MPI_Comm comm_)
 
 ~PETScABecLap ()
 
- + @@ -214,7 +214,7 @@

- + @@ -695,7 +695,7 @@

Private Attributes

MPI_Comm comm = MPI_COMM_NULL
MPI_Comm comm = MPI_COMM_NULL
 
Geometry geom
 
MPI_Comm MPI_Comm  comm_ 
- +
MPI_Comm amrex::PETScABecLap::comm = MPI_COMM_NULLMPI_Comm amrex::PETScABecLap::comm = MPI_COMM_NULL
diff --git a/amrex/docs_html/doxygen/classamrex_1_1ParallelContext_1_1Frame.html b/amrex/docs_html/doxygen/classamrex_1_1ParallelContext_1_1Frame.html index bb4370abb0..599bfd6610 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1ParallelContext_1_1Frame.html +++ b/amrex/docs_html/doxygen/classamrex_1_1ParallelContext_1_1Frame.html @@ -110,9 +110,9 @@ - + - + @@ -152,10 +152,10 @@

Public Member Functions

 Frame (MPI_Comm c, int id, int io_rank)
 Frame (MPI_Comm c, int id, int io_rank)
 
 Frame (MPI_Comm c)
 Frame (MPI_Comm c)
 
 Frame (Frame const &)=delete
 
- + - +

Public Attributes

MPI_Comm comm = MPI_COMM_NULL
MPI_Comm comm = MPI_COMM_NULL
 sub-communicator associated with frame More...
 
MPI_Group group = MPI_GROUP_NULL
MPI_Group group = MPI_GROUP_NULL
 to avoid repeatedly creating groups in rank translation More...
 
@@ -189,7 +189,7 @@

amrex::ParallelContext::Frame::Frame

- + @@ -226,7 +226,7 @@

amrex::ParallelContext::Frame::Frame

- + @@ -658,7 +658,7 @@

(MPI_Comm MPI_Comm  c,
(MPI_Comm MPI_Comm  c)
- +
MPI_Comm amrex::ParallelContext::Frame::comm = MPI_COMM_NULLMPI_Comm amrex::ParallelContext::Frame::comm = MPI_COMM_NULL

 Message ()=default   - Message (MPI_Request req_, MPI_Datatype type_) + Message (MPI_Request req_, MPI_Datatype type_)   - Message (MPI_Status stat_, MPI_Datatype type_) + Message (MPI_Status stat_, MPI_Datatype type_)   void wait ()   @@ -127,9 +127,9 @@   int pid () const   -MPI_Datatype type () const +MPI_Datatype type () const   -MPI_Request req () const +MPI_Request req () const   MPI_Status stat () const   @@ -138,9 +138,9 @@ Private Attributes

bool m_finished = true   -MPI_Datatype m_type = MPI_DATATYPE_NULL +MPI_Datatype m_type = MPI_DATATYPE_NULL   -MPI_Request m_req = MPI_REQUEST_NULL +MPI_Request m_req = MPI_REQUEST_NULL   MPI_Status m_stat {}   @@ -185,13 +185,13 @@

amrex::ParallelDescriptor::Message::Message ( - MPI_Request  + MPI_Request  req_, - MPI_Datatype  + MPI_Datatype  type_  @@ -227,7 +227,7 @@

- MPI_Datatype  + MPI_Datatype  type_  @@ -290,7 +290,7 @@

- + @@ -374,7 +374,7 @@

MPI_Request amrex::ParallelDescriptor::Message::req MPI_Request amrex::ParallelDescriptor::Message::req ( ) const
- + @@ -439,7 +439,7 @@

MPI_Datatype amrex::ParallelDescriptor::Message::type MPI_Datatype amrex::ParallelDescriptor::Message::type ( ) const
- +
MPI_Request amrex::ParallelDescriptor::Message::m_req = MPI_REQUEST_NULLMPI_Request amrex::ParallelDescriptor::Message::m_req = MPI_REQUEST_NULL
@@ -483,7 +483,7 @@

- +
MPI_Datatype amrex::ParallelDescriptor::Message::m_type = MPI_DATATYPE_NULLMPI_Datatype amrex::ParallelDescriptor::Message::m_type = MPI_DATATYPE_NULL
diff --git a/amrex/docs_html/doxygen/classamrex_1_1Print.html b/amrex/docs_html/doxygen/classamrex_1_1Print.html index c190186530..ec7750eeb2 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1Print.html +++ b/amrex/docs_html/doxygen/classamrex_1_1Print.html @@ -127,7 +127,7 @@  
Print (int rank_, std::ostream &os_=amrex::OutStream())  Print on all processors of the default communicator Example: Print(Print::AllProcs) << " x = " << x << std::endl;. More...
  - Print (int rank_, MPI_Comm comm_, std::ostream &os_=amrex::OutStream()) + Print (int rank_, MPI_Comm comm_, std::ostream &os_=amrex::OutStream())  Print on process rank_ of communicator comm_ Example: Print(rank_, comm_) << " x = " << x << std::endl;. More...
   ~Print () @@ -157,7 +157,7 @@ Private Attributes

int rank   -MPI_Comm comm +MPI_Comm comm   std::ostream & os   @@ -251,7 +251,7 @@

- MPI_Comm  + MPI_Comm  comm_, @@ -520,7 +520,7 @@

- +
MPI_Comm amrex::Print::commMPI_Comm amrex::Print::comm
diff --git a/amrex/docs_html/doxygen/classamrex_1_1PrintToFile.html b/amrex/docs_html/doxygen/classamrex_1_1PrintToFile.html index ccce10e958..44e254ef30 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1PrintToFile.html +++ b/amrex/docs_html/doxygen/classamrex_1_1PrintToFile.html @@ -126,7 +126,7 @@    
PrintToFile (std::string file_name_, int rank_)   - PrintToFile (std::string file_name_, int rank_, MPI_Comm comm_) + PrintToFile (std::string file_name_, int rank_, MPI_Comm comm_)    ~PrintToFile ()   @@ -162,7 +162,7 @@   int rank   -MPI_Comm comm +MPI_Comm comm   std::ofstream ofs   @@ -258,7 +258,7 @@

- MPI_Comm  + MPI_Comm  comm_  @@ -544,7 +544,7 @@

- +
MPI_Comm amrex::PrintToFile::commMPI_Comm amrex::PrintToFile::comm
diff --git a/amrex/docs_html/doxygen/classamrex_1_1RKIntegrator-members.html b/amrex/docs_html/doxygen/classamrex_1_1RKIntegrator-members.html index aa7a92982f..9f61db23db 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1RKIntegrator-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1RKIntegrator-members.html @@ -103,7 +103,7 @@

This is the complete list of members for amrex::RKIntegrator< T >, including all inherited members.

- + diff --git a/amrex/docs_html/doxygen/classamrex_1_1RKIntegrator.html b/amrex/docs_html/doxygen/classamrex_1_1RKIntegrator.html index b4a50c22b9..8e7c1c25af 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1RKIntegrator.html +++ b/amrex/docs_html/doxygen/classamrex_1_1RKIntegrator.html @@ -167,8 +167,8 @@
advance(T &S_old, T &S_new, amrex::Real time, const amrex::Real time_step) overrideamrex::RKIntegrator< T >inlinevirtual
BaseT typedefamrex::RKIntegrator< T >private
BaseT typedefamrex::RKIntegrator< T >private
extended_weightsamrex::RKIntegrator< T >private
F_nodesamrex::RKIntegrator< T >private
fast_rhs(T &S_rhs, T &S_extra, const T &S_data, const amrex::Real time)amrex::IntegratorBase< T >inline
- - + +

Private Types

typedef IntegratorBase< T > BaseT
 
using BaseT = IntegratorBase< T >
 
@@ -215,8 +215,8 @@

Private Member Functions

 

Member Typedef Documentation

- -

◆ BaseT

+ +

◆ BaseT

@@ -227,7 +227,7 @@

- +
typedef IntegratorBase<T> amrex::RKIntegrator< T >::BaseTusing amrex::RKIntegrator< T >::BaseT = IntegratorBase<T>
diff --git a/amrex/docs_html/doxygen/classamrex_1_1RKIntegrator.js b/amrex/docs_html/doxygen/classamrex_1_1RKIntegrator.js index 13d5f30e75..a1a8c41048 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1RKIntegrator.js +++ b/amrex/docs_html/doxygen/classamrex_1_1RKIntegrator.js @@ -1,6 +1,6 @@ var classamrex_1_1RKIntegrator = [ - [ "BaseT", "classamrex_1_1RKIntegrator.html#a4e43191f9c23a93eaf641a962c2672ff", null ], + [ "BaseT", "classamrex_1_1RKIntegrator.html#a61b0efc2ba701e047e29f92ed1204b52", null ], [ "RKIntegrator", "classamrex_1_1RKIntegrator.html#aff544c0ff17bffff837a639774d02cc4", null ], [ "RKIntegrator", "classamrex_1_1RKIntegrator.html#a711c6b3a5a83bd51320791e66fa107a4", null ], [ "~RKIntegrator", "classamrex_1_1RKIntegrator.html#a08eaaf01ad8b70caf0f561edb42114b4", null ], diff --git a/amrex/docs_html/doxygen/classamrex_1_1StateData.html b/amrex/docs_html/doxygen/classamrex_1_1StateData.html index bcaf45ec43..7b048d42d8 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1StateData.html +++ b/amrex/docs_html/doxygen/classamrex_1_1StateData.html @@ -182,11 +182,11 @@   void 
syncNewTimeLevel (Real time)   -void RegisterData (MultiFabCopyDescriptor &multiFabCopyDesc, Vector< MultiFabId > &mfid) +void RegisterData (MultiFabCopyDescriptor &multiFabCopyDesc, Vector< MultiFabId > &mfid)   -void InterpAddBox (MultiFabCopyDescriptor &multiFabCopyDesc, Vector< MultiFabId > &mfid, BoxList *returnedUnfillableBoxes, Vector< FillBoxId > &returnedFillBoxIds, const Box &subbox, Real time, int src_comp, int dest_comp, int num_comp, bool extrap=false) +void InterpAddBox (MultiFabCopyDescriptor &multiFabCopyDesc, Vector< MultiFabId > &mfid, BoxList *returnedUnfillableBoxes, Vector< FillBoxId > &returnedFillBoxIds, const Box &subbox, Real time, int src_comp, int dest_comp, int num_comp, bool extrap=false)   -void InterpFillFab (MultiFabCopyDescriptor &fabCopyDesc, const Vector< MultiFabId > &mfid, const Vector< FillBoxId > &fillBoxIds, FArrayBox &dest, Real time, int src_comp, int dest_comp, int num_comp, bool extrap=false) +void InterpFillFab (MultiFabCopyDescriptor &fabCopyDesc, const Vector< MultiFabId > &mfid, const Vector< FillBoxId > &fillBoxIds, FArrayBox &dest, Real time, int src_comp, int dest_comp, int num_comp, bool extrap=false)   void FillBoundary (FArrayBox &dest, Real time, const Real *dx, const RealBox &prob_domain, int dest_comp, int src_comp, int num_comp=1)  Set physical bndry values. More...
@@ -1205,7 +1205,7 @@

- Vector< MultiFabId > &  + Vector< MultiFabId > &  mfid, @@ -1281,7 +1281,7 @@

- const Vector< MultiFabId > &  + const Vector< MultiFabId > &  mfid, @@ -1624,7 +1624,7 @@

- Vector< MultiFabId > &  + Vector< MultiFabId > &  mfid  diff --git a/amrex/docs_html/doxygen/classamrex_1_1StateDescriptor_1_1BndryFunc.html b/amrex/docs_html/doxygen/classamrex_1_1StateDescriptor_1_1BndryFunc.html index 5d01d4fa4b..4c757a6359 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1StateDescriptor_1_1BndryFunc.html +++ b/amrex/docs_html/doxygen/classamrex_1_1StateDescriptor_1_1BndryFunc.html @@ -111,17 +111,17 @@  BndryFunc () noexcept=default  Bogus constructor. More...
  - BndryFunc (BndryFuncDefault inFunc) noexcept + BndryFunc (BndryFuncDefault inFunc) noexcept  A Constructor. More...
  - BndryFunc (BndryFunc3DDefault inFunc) noexcept + BndryFunc (BndryFunc3DDefault inFunc) noexcept   - BndryFunc (BndryFuncFabDefault inFunc) noexcept + BndryFunc (BndryFuncFabDefault inFunc) noexcept   - BndryFunc (BndryFuncDefault inFunc, BndryFuncDefault gFunc) noexcept + BndryFunc (BndryFuncDefault inFunc, BndryFuncDefault gFunc) noexcept  Another Constructor. More...
  - BndryFunc (BndryFunc3DDefault inFunc, BndryFunc3DDefault gFunc) noexcept + BndryFunc (BndryFunc3DDefault inFunc, BndryFunc3DDefault gFunc) noexcept   void operator() (Real *data, const int *lo, const int *hi, const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc) const   @@ -139,15 +139,15 @@ - + - + - + - + - + @@ -195,7 +195,7 @@

amrex::StateDescriptor::BndryFunc::BndryFunc

- + @@ -223,7 +223,7 @@

amrex::StateDescriptor::BndryFunc::BndryFunc

- + @@ -249,7 +249,7 @@

amrex::StateDescriptor::BndryFunc::BndryFunc

- + @@ -275,13 +275,13 @@

amrex::StateDescriptor::BndryFunc::BndryFunc

- + - + @@ -320,13 +320,13 @@

amrex::StateDescriptor::BndryFunc::BndryFunc

- + - + @@ -680,7 +680,7 @@

Private Attributes

BndryFuncDefault m_func = nullptr
BndryFuncDefault m_func = nullptr
 
BndryFunc3DDefault m_func3D = nullptr
BndryFunc3DDefault m_func3D = nullptr
 
BndryFuncDefault m_gfunc = nullptr
BndryFuncDefault m_gfunc = nullptr
 
BndryFunc3DDefault m_gfunc3D = nullptr
BndryFunc3DDefault m_gfunc3D = nullptr
 
BndryFuncFabDefault m_funcfab = nullptr
BndryFuncFabDefault m_funcfab = nullptr
 
bool m_run_on_gpu = false
 
(BndryFuncDefault BndryFuncDefault  inFunc)
(BndryFunc3DDefault BndryFunc3DDefault  inFunc)
(BndryFuncFabDefault BndryFuncFabDefault  inFunc)
(BndryFuncDefault BndryFuncDefault  inFunc,
BndryFuncDefault BndryFuncDefault  gFunc 
(BndryFunc3DDefault BndryFunc3DDefault  inFunc,
BndryFunc3DDefault BndryFunc3DDefault  gFunc 
- +
BndryFuncDefault amrex::StateDescriptor::BndryFunc::m_func = nullptrBndryFuncDefault amrex::StateDescriptor::BndryFunc::m_func = nullptr
@@ -702,7 +702,7 @@

- +
BndryFunc3DDefault amrex::StateDescriptor::BndryFunc::m_func3D = nullptrBndryFunc3DDefault amrex::StateDescriptor::BndryFunc::m_func3D = nullptr
@@ -724,7 +724,7 @@

- +
BndryFuncFabDefault amrex::StateDescriptor::BndryFunc::m_funcfab = nullptrBndryFuncFabDefault amrex::StateDescriptor::BndryFunc::m_funcfab = nullptr
@@ -746,7 +746,7 @@

- +
BndryFuncDefault amrex::StateDescriptor::BndryFunc::m_gfunc = nullptrBndryFuncDefault amrex::StateDescriptor::BndryFunc::m_gfunc = nullptr
@@ -768,7 +768,7 @@

- +
BndryFunc3DDefault amrex::StateDescriptor::BndryFunc::m_gfunc3D = nullptrBndryFunc3DDefault amrex::StateDescriptor::BndryFunc::m_gfunc3D = nullptr
diff --git a/amrex/docs_html/doxygen/classamrex_1_1SundialsIntegrator-members.html b/amrex/docs_html/doxygen/classamrex_1_1SundialsIntegrator-members.html index 2df281c70f..cac60c7461 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1SundialsIntegrator-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1SundialsIntegrator-members.html @@ -107,7 +107,7 @@
advance_erk(T &S_old, T &S_new, amrex::Real time, const amrex::Real time_step)amrex::SundialsIntegrator< T >inline advance_mri(T &S_old, T &S_new, amrex::Real time, const amrex::Real time_step)amrex::SundialsIntegrator< T >inline arkode_memamrex::SundialsIntegrator< T >private - BaseT typedefamrex::SundialsIntegrator< T >private + BaseT typedefamrex::SundialsIntegrator< T >private erk_methodamrex::SundialsIntegrator< T >private fast_rhs(T &S_rhs, T &S_extra, const T &S_data, const amrex::Real time)amrex::IntegratorBase< T >inline fast_timestepamrex::IntegratorBase< T >protected diff --git a/amrex/docs_html/doxygen/classamrex_1_1SundialsIntegrator.html b/amrex/docs_html/doxygen/classamrex_1_1SundialsIntegrator.html index 39cdb7f19c..e88e492c04 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1SundialsIntegrator.html +++ b/amrex/docs_html/doxygen/classamrex_1_1SundialsIntegrator.html @@ -173,8 +173,8 @@ - - + +

Private Types

typedef IntegratorBase< T > BaseT
 
using BaseT = IntegratorBase< T >
 
@@ -207,7 +207,7 @@ - + @@ -255,8 +255,8 @@

Private Member Functions

 
void * mristep_mem
 
MPI_Comm mpi_comm
MPI_Comm mpi_comm
 
SUNContext sunctx
 
 

Member Typedef Documentation

- -

◆ BaseT

+ +

◆ BaseT

@@ -267,7 +267,7 @@

- +
typedef IntegratorBase<T> amrex::SundialsIntegrator< T >::BaseTusing amrex::SundialsIntegrator< T >::BaseT = IntegratorBase<T>
@@ -886,7 +886,7 @@

- +
MPI_Comm amrex::SundialsIntegrator< T >::mpi_commMPI_Comm amrex::SundialsIntegrator< T >::mpi_comm
diff --git a/amrex/docs_html/doxygen/classamrex_1_1SundialsIntegrator.js b/amrex/docs_html/doxygen/classamrex_1_1SundialsIntegrator.js index c7e1a7d74a..808b785b26 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1SundialsIntegrator.js +++ b/amrex/docs_html/doxygen/classamrex_1_1SundialsIntegrator.js @@ -1,6 +1,6 @@ var classamrex_1_1SundialsIntegrator = [ - [ "BaseT", "classamrex_1_1SundialsIntegrator.html#a551b379b8d153f1e80342ce6803fca2c", null ], + [ "BaseT", "classamrex_1_1SundialsIntegrator.html#a7b4248dc9ad4bec4ce2359e1669faa27", null ], [ "SundialsIntegrator", "classamrex_1_1SundialsIntegrator.html#a073132be2c807a20aaddee85783c35fa", null ], [ "SundialsIntegrator", "classamrex_1_1SundialsIntegrator.html#ac125b08d518cbe4a008797ef1d77f8b8", null ], [ "~SundialsIntegrator", "classamrex_1_1SundialsIntegrator.html#a8d368e32b7b9d20965c609d459d1e498", null ], diff --git a/amrex/docs_html/doxygen/classamrex_1_1TagBox-members.html b/amrex/docs_html/doxygen/classamrex_1_1TagBox-members.html index 8fb7b93a4a..f88af00a1c 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1TagBox-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1TagBox-members.html @@ -319,10 +319,10 @@
tags(const Vector< int > &ar, const Box &tilebx) noexceptamrex::TagBox tags_and_untags(const Vector< int > &ar) noexceptamrex::TagBox tags_and_untags(const Vector< int > &ar, const Box &tilebx) noexceptamrex::TagBox - TagType typedefamrex::TagBox + TagType typedefamrex::TagBox TagVal enum nameamrex::TagBox truesizeamrex::BaseFab< char >protected - value_type typedefamrex::BaseFab< char > + value_type typedefamrex::BaseFab< char > xpay(char a, const BaseFab< char > &x, const Box &srcbox, const Box &destbox, int srccomp, int destcomp, int numcomp=1) noexceptamrex::BaseFab< char > ~BaseFab() noexceptamrex::BaseFab< char >virtual ~TagBox() noexcept override=defaultamrex::TagBox diff --git a/amrex/docs_html/doxygen/classamrex_1_1TagBox.html b/amrex/docs_html/doxygen/classamrex_1_1TagBox.html index d933f22d89..47e92fbbbb 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1TagBox.html +++ b/amrex/docs_html/doxygen/classamrex_1_1TagBox.html @@ -127,12 +127,12 @@ }  Possible values for each cell. More...
  -typedef char TagType - The type of each tag. More...
-  +using TagType = char + The type of each tag. More...
- Public Types inherited from amrex::BaseFab< char > -typedef char value_type -  +using value_type = char +  @@ -720,14 +720,14 @@

Tagged cells in a Box.

This class is used to tag cells in a Box that need addition refinement.

Member Typedef Documentation

- -

◆ TagType

+ +

◆ TagType

Public Member Functions

- +
typedef char amrex::TagBox::TagTypeusing amrex::TagBox::TagType = char

diff --git a/amrex/docs_html/doxygen/classamrex_1_1TagBox.js b/amrex/docs_html/doxygen/classamrex_1_1TagBox.js index 50804ad206..f309782da3 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1TagBox.js +++ b/amrex/docs_html/doxygen/classamrex_1_1TagBox.js @@ -1,6 +1,6 @@ var classamrex_1_1TagBox = [ - [ "TagType", "classamrex_1_1TagBox.html#aa3eab6b001470948ab883ec074459049", null ], + [ "TagType", "classamrex_1_1TagBox.html#a86719d9e271cd75e3e6d1fa728c385c1", null ], [ "TagVal", "classamrex_1_1TagBox.html#ac8c350e6c62e1f2fd736b52d1b7caffa", [ [ "CLEAR", "classamrex_1_1TagBox.html#ac8c350e6c62e1f2fd736b52d1b7caffaa4711806dfba8eb0c37ad5bb4abde7814", null ], [ "BUF", "classamrex_1_1TagBox.html#ac8c350e6c62e1f2fd736b52d1b7caffaa5c2d81c416e8ee0e1bd9d475e73d31cf", null ], diff --git a/amrex/docs_html/doxygen/classamrex_1_1TagBoxArray-members.html b/amrex/docs_html/doxygen/classamrex_1_1TagBoxArray-members.html index 0277ad2ca4..6fbfe12524 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1TagBoxArray-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1TagBoxArray-members.html @@ -148,11 +148,11 @@ copy(const FabArray< TagBox > &src, int src_comp, int dest_comp, int num_comp, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)amrex::FabArray< TagBox >inline copy(const FabArray< TagBox > &src, int src_comp, int dest_comp, int num_comp, int src_nghost, int dst_nghost, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)amrex::FabArray< TagBox >inline copy(const FabArray< TagBox > &src, int src_comp, int dest_comp, int num_comp, const IntVect &src_nghost, const IntVect &dst_nghost, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)amrex::FabArray< TagBox >inline - CopyComTagsContainer typedefamrex::FabArrayBase + CopyComTagsContainer typedefamrex::FabArrayBase copyTo(TagBox &dest, int nghost=0) constamrex::FabArray< TagBox > copyTo(TagBox &dest, int scomp, int dcomp, int ncomp, int nghost=0) constamrex::FabArray< TagBox > - CPCache typedefamrex::FabArrayBase - CPCacheIter typedefamrex::FabArrayBase + CPCache typedefamrex::FabArrayBase + CPCacheIter typedefamrex::FabArrayBase CpOp enum nameamrex::FabArrayBase define(const BoxArray &bxs, const DistributionMapping &dm, int nvar, int ngrow, const MFInfo &info=MFInfo(), const FabFactory< TagBox > &factory=DefaultFabFactory< TagBox >())amrex::FabArray< TagBox > define(const BoxArray &bxs, const DistributionMapping &dm, int nvar, const IntVect &ngrow, const MFInfo &info=MFInfo(), const FabFactory< TagBox > &factory=DefaultFabFactory< TagBox >())amrex::FabArray< TagBox > @@ -189,8 +189,8 @@ Factory() const noexceptamrex::FabArray< TagBox >inline FB_local_copy_cpu(const FB &TheFB, int scomp, int ncomp)amrex::FabArray< TagBox > FB_local_copy_gpu(const FB &TheFB, int scomp, int ncomp)amrex::FabArray< TagBox > - FBCache typedefamrex::FabArrayBase - FBCacheIter typedefamrex::FabArrayBase + FBCache typedefamrex::FabArrayBase + FBCacheIter typedefamrex::FabArrayBase fbdamrex::FabArray< TagBox > FBEP_nowait(int scomp, int ncomp, const IntVect &nghost, const Periodicity &period, bool cross, bool enforce_periodicity_only=false, bool override_sync=false)amrex::FabArray< TagBox > FBEP_nowait(int scomp, int ncomp, const IntVect &nghost, const Periodicity &period, bool cross, bool enforce_periodicity_only, bool override_sync)amrex::FabArray< TagBox > @@ -231,8 +231,8 @@ flushRB90Cache()amrex::FabArrayBasestatic flushTileArray(const IntVect &tilesize=IntVect::TheZeroVector(), bool no_assertion=false) constamrex::FabArrayBase flushTileArrayCache()amrex::FabArrayBasestatic - FPinfoCache typedefamrex::FabArrayBase - FPinfoCacheIter typedefamrex::FabArrayBase + FPinfoCache typedefamrex::FabArrayBase + FPinfoCacheIter typedefamrex::FabArrayBase get(const MFIter &mfi) const noexceptamrex::FabArray< TagBox >inline get(const MFIter &mfi) noexceptamrex::FabArray< TagBox >inline get(int K) const noexceptamrex::FabArray< TagBox >inline @@ -259,7 +259,7 @@ isDefined() constamrex::FabArray< TagBox > isFusingCandidate() const noexceptamrex::FabArrayBase isOwner(int li) const noexceptamrex::FabArrayBaseinline - Iterator typedefamrex::FabArray< TagBox >private + Iterator typedefamrex::FabArray< TagBox >private ixType() const noexceptamrex::FabArrayBaseinline LinComb(FabArray< TagBox > &dst, value_type a, const FabArray< TagBox > &x, int xcomp, value_type b, const FabArray< TagBox > &y, int ycomp, int dstcomp, int numcomp, const IntVect &nghost)amrex::FabArray< TagBox >static local_collate_cpu(Gpu::PinnedVector< IntVect > &v) constamrex::TagBoxArray @@ -296,7 +296,7 @@ m_TheRB180Cacheamrex::FabArrayBasestatic m_TheRB90Cacheamrex::FabArrayBasestatic m_TheTileArrayCacheamrex::FabArrayBasestatic - MapOfCopyComTagContainers typedefamrex::FabArrayBase + MapOfCopyComTagContainers typedefamrex::FabArrayBase mapPeriodicRemoveDuplicates(const Geometry &geom)amrex::TagBoxArray MaxCompamrex::FabArrayBasestatic mfiter_tile_sizeamrex::FabArrayBasestatic @@ -360,8 +360,8 @@ pcdamrex::FabArray< TagBox > plus(value_type val, int comp, int num_comp, int nghost=0)amrex::FabArray< TagBox > plus(value_type val, const Box &region, int comp, int num_comp, int nghost=0)amrex::FabArray< TagBox > - PolarBCache typedefamrex::FabArrayBase - PolarBCacheIter typedefamrex::FabArrayBase + PolarBCache typedefamrex::FabArrayBase + PolarBCacheIter typedefamrex::FabArrayBase popRegionTag()amrex::FabArrayBasestatic prefetchToDevice(const MFIter &mfi) const noexceptamrex::FabArray< TagBox > prefetchToHost(const MFIter &mfi) const noexceptamrex::FabArray< TagBox > @@ -370,10 +370,10 @@ pushRegionTag(std::string t)amrex::FabArrayBasestatic queryMemUsage(const std::string &tag=std::string("All"))amrex::FabArrayBasestatic queryMemUsageHWM(const std::string &tag=std::string("All"))amrex::FabArrayBasestatic - RB180Cache typedefamrex::FabArrayBase - RB180CacheIter typedefamrex::FabArrayBase - RB90Cache typedefamrex::FabArrayBase - RB90CacheIter typedefamrex::FabArrayBase + RB180Cache typedefamrex::FabArrayBase + RB180CacheIter typedefamrex::FabArrayBase + RB90Cache typedefamrex::FabArrayBase + RB90CacheIter typedefamrex::FabArrayBase RecvLayoutMask(const CommMetaData &thecmd)amrex::FabArray< TagBox > Redistribute(const FabArray< TagBox > &src, int scomp, int dcomp, int ncomp, const IntVect &nghost)amrex::FabArray< TagBox > release(int K)amrex::FabArray< TagBox > @@ -421,7 +421,7 @@ TagBoxArray(TagBoxArray &&rhs) noexcept=defaultamrex::TagBoxArray TagBoxArray(const TagBoxArray &rhs)=deleteamrex::TagBoxArray tags() const noexceptamrex::FabArray< TagBox >inline - TagType typedefamrex::TagBoxArray + TagType typedefamrex::TagBoxArray TAMap typedefamrex::FabArrayBase TheCFinfo(const FabArrayBase &finefa, const Geometry &finegm, const IntVect &ng, bool include_periodic, bool include_physbndry)amrex::FabArrayBasestatic TheFPinfo(const FabArrayBase &srcfa, const FabArrayBase &dstfa, const IntVect &dstng, const BoxConverter &coarsener, const Geometry &fgeom, const Geometry &cgeom, const EB2::IndexSpace *)amrex::FabArrayBasestatic diff --git a/amrex/docs_html/doxygen/classamrex_1_1TagBoxArray.html b/amrex/docs_html/doxygen/classamrex_1_1TagBoxArray.html index 2f8fce54f9..d32b88e886 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1TagBoxArray.html +++ b/amrex/docs_html/doxygen/classamrex_1_1TagBoxArray.html @@ -121,9 +121,9 @@ - - - + + + @@ -135,14 +135,14 @@ } - - - - - - - - + + + + + + + + @@ -151,26 +151,26 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + +

Public Types

typedef TagBox::TagType TagType
 The type of each tag. More...
 
using TagType = TagBox::TagType
 The type of each tag. More...
 
- Public Types inherited from amrex::FabArray< TagBox >
using value_type = typename std::conditional< IsBaseFab< TagBox >::value, TagBox, FABType >::type::value_type
 
 parallel copy or add More...
 
typedef CopyComTag::CopyComTagsContainer CopyComTagsContainer
 
typedef CopyComTag::MapOfCopyComTagContainers MapOfCopyComTagContainers
 
typedef std::multimap< BDKey, FabArrayBase::FPinfo * > FPinfoCache
 
typedef FPinfoCache::iterator FPinfoCacheIter
 
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 TACache = std::map< BDKey, TAMap >
 
typedef std::multimap< BDKey, FabArrayBase::FB * > FBCache
 
typedef FBCache::iterator FBCacheIter
 
typedef std::multimap< BDKey, FabArrayBase::CPC * > CPCache
 
typedef CPCache::iterator CPCacheIter
 
typedef std::multimap< BDKey, FabArrayBase::RB90 * > RB90Cache
 
typedef RB90Cache::iterator RB90CacheIter
 
typedef std::multimap< BDKey, FabArrayBase::RB180 * > RB180Cache
 
typedef RB180Cache::iterator RB180CacheIter
 
typedef std::multimap< BDKey, FabArrayBase::PolarB * > PolarBCache
 
typedef PolarBCache::iterator PolarBCacheIter
 
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
 
@@ -584,13 +584,13 @@ - + - + - + - + @@ -736,13 +736,13 @@ - + - + - + - + @@ -754,7 +754,7 @@ - + @@ -835,7 +835,7 @@ - + @@ -851,19 +851,19 @@ - + - + - + - + - + @@ -903,14 +903,14 @@

An array of TagBoxes.

A container class for TagBoxes.

Member Typedef Documentation

- -

◆ TagType

+ +

◆ TagType

Public Member Functions

 
void CMD_remote_setVal_gpu (value_type x, const CommMetaData &thecmd, int scomp, int ncomp)
 
void pack_send_buffer_gpu (FabArray< TagBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc)
void pack_send_buffer_gpu (FabArray< TagBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc)
 
void unpack_recv_buffer_gpu (FabArray< TagBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe)
void unpack_recv_buffer_gpu (FabArray< TagBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe)
 
void pack_send_buffer_cpu (FabArray< TagBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc)
void pack_send_buffer_cpu (FabArray< TagBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc)
 
void unpack_recv_buffer_cpu (FabArray< TagBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe)
void unpack_recv_buffer_cpu (FabArray< TagBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe)
 
F::value_type norminf (int comp, int ncomp, IntVect const &nghost, bool local=false,[[maybe_unused]] bool ignore_covered=false) const
 Return infinity norm. More...

Additional Inherited Members

- Static Public Member Functions inherited from amrex::FabArray< TagBox >
static void pack_send_buffer_gpu (FabArray< TagBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc)
static void pack_send_buffer_gpu (FabArray< TagBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc)
 
static void unpack_recv_buffer_gpu (FabArray< TagBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe)
static void unpack_recv_buffer_gpu (FabArray< TagBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe)
 
static void pack_send_buffer_cpu (FabArray< TagBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc)
static void pack_send_buffer_cpu (FabArray< TagBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc)
 
static void unpack_recv_buffer_cpu (FabArray< TagBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe)
static void unpack_recv_buffer_cpu (FabArray< TagBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe)
 
static void Saxpy (FabArray< TagBox > &y, value_type a, FabArray< TagBox > const &x, int xcomp, int ycomp, int ncomp, IntVect const &nghost)
 y += a*x More...
 dst = a*x + b*y More...
 
- Static Public Member Functions inherited from amrex::FabArrayBase
static Long bytesOfMapOfCopyComTagContainers (const MapOfCopyComTagContainers &)
static Long bytesOfMapOfCopyComTagContainers (const MapOfCopyComTagContainers &)
 
static void Initialize ()
 Initialize from ParmParse with "fabarray" prefix. More...
static AMREX_EXPORT IntVect comm_tile_size
 communication tile size More...
 
static FPinfoCache m_TheFillPatchCache
static FPinfoCache m_TheFillPatchCache
 
static CacheStats m_FPinfo_stats
 
 
static CacheStats m_TAC_stats
 
static FBCache m_TheFBCache
static FBCache m_TheFBCache
 
static CacheStats m_FBC_stats
 
static CPCache m_TheCPCache
static CPCache m_TheCPCache
 
static CacheStats m_CPC_stats
 
static RB90Cache m_TheRB90Cache
static RB90Cache m_TheRB90Cache
 
static RB180Cache m_TheRB180Cache
static RB180Cache m_TheRB180Cache
 
static PolarBCache m_ThePolarBCache
static PolarBCache m_ThePolarBCache
 
static std::multimap< BDKey, ParForInfo * > m_TheParForCache
 
- +
typedef TagBox::TagType amrex::TagBoxArray::TagTypeusing amrex::TagBoxArray::TagType = TagBox::TagType
diff --git a/amrex/docs_html/doxygen/classamrex_1_1TagBoxArray.js b/amrex/docs_html/doxygen/classamrex_1_1TagBoxArray.js index f5e3d0f620..c99899c9eb 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1TagBoxArray.js +++ b/amrex/docs_html/doxygen/classamrex_1_1TagBoxArray.js @@ -1,6 +1,6 @@ var classamrex_1_1TagBoxArray = [ - [ "TagType", "classamrex_1_1TagBoxArray.html#aacc3ef7b971c8c55ba4a0bb74492b019", null ], + [ "TagType", "classamrex_1_1TagBoxArray.html#aed1b714c35cb0ce049231984f07925f4", null ], [ "TagBoxArray", "classamrex_1_1TagBoxArray.html#a7615520c69175032ee2326eb094cbc77", null ], [ "TagBoxArray", "classamrex_1_1TagBoxArray.html#ad56f5409a87394e53ea7acda127347cc", null ], [ "~TagBoxArray", "classamrex_1_1TagBoxArray.html#a64e4bff8da8d8c89a2e893b483161910", null ], diff --git a/amrex/docs_html/doxygen/classamrex_1_1VisMF-members.html b/amrex/docs_html/doxygen/classamrex_1_1VisMF-members.html index 5ba84613f1..5ea38e526b 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1VisMF-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1VisMF-members.html @@ -139,7 +139,7 @@ groupSetsamrex::VisMFprivatestatic How enum nameamrex::VisMF Initialize()amrex::VisMFstatic - IO_Buffer typedefamrex::VisMFBuffer + IO_Buffer typedefamrex::VisMFBuffer IO_Buffer_Size enum valueamrex::VisMFBuffer ioBufferSizeamrex::VisMFBufferprotectedstatic m_fafabnameamrex::VisMFprivate @@ -169,7 +169,7 @@ ReadFAHeader(const std::string &fafabName, Vector< char > &header)amrex::VisMFstatic RemoveFiles(const std::string &name, bool verbose=false)amrex::VisMFstatic setBufamrex::VisMFprivatestatic - Setbuf_Char_Type typedefamrex::VisMFBuffer + Setbuf_Char_Type typedefamrex::VisMFBuffer SetCheckFilePositions(bool cfp)amrex::VisMFinlinestatic SetGroupSets(bool groupsets)amrex::VisMFinlinestatic SetHeaderVersion(VisMF::Header::Version version)amrex::VisMFinlinestatic diff --git a/amrex/docs_html/doxygen/classamrex_1_1VisMF.html b/amrex/docs_html/doxygen/classamrex_1_1VisMF.html index 4e99244717..f42cc85df5 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1VisMF.html +++ b/amrex/docs_html/doxygen/classamrex_1_1VisMF.html @@ -150,12 +150,12 @@ }  We try to do I/O with buffers of this size. More...
  -typedef char Setbuf_Char_Type - The type of a char buffer required by [p]setbuf(). More...
-  -typedef Vector< Setbuf_Char_TypeIO_Buffer - A simple character buffer for setbuf() usage. More...
-  +using Setbuf_Char_Type = char + The type of a char buffer required by [p]setbuf(). More...
+  +using IO_Buffer = Vector< Setbuf_Char_Type > + A simple character buffer for setbuf() usage. More...
+  @@ -259,11 +259,11 @@ - + - + @@ -325,9 +325,9 @@ - + - + @@ -1031,7 +1031,7 @@

- + @@ -2055,7 +2055,7 @@

- + @@ -2091,7 +2091,7 @@

- + @@ -2437,7 +2437,7 @@

- + diff --git a/amrex/docs_html/doxygen/classamrex_1_1VisMFBuffer-members.html b/amrex/docs_html/doxygen/classamrex_1_1VisMFBuffer-members.html index 39e2efae67..0f2b59ade1 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1VisMFBuffer-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1VisMFBuffer-members.html @@ -103,10 +103,10 @@

This is the complete list of members for amrex::VisMFBuffer, including all inherited members.

Public Member Functions

 
static int GetNOutFiles ()
 
static void SetNOutFiles (int noutfiles, MPI_Comm comm=ParallelDescriptor::Communicator())
static void SetNOutFiles (int noutfiles, MPI_Comm comm=ParallelDescriptor::Communicator())
 
static int GetMFFileInStreams ()
 
static void SetMFFileInStreams (int nstreams, MPI_Comm comm=ParallelDescriptor::Communicator())
static void SetMFFileInStreams (int nstreams, MPI_Comm comm=ParallelDescriptor::Communicator())
 
static int GetVerbose ()
 
 
static Long WriteHeaderDoit (const std::string &mf_name, VisMF::Header const &hdr)
 
static Long WriteHeader (const std::string &mf_name, VisMF::Header &hdr, int procToWrite=ParallelDescriptor::IOProcessorNumber(), MPI_Comm comm=ParallelDescriptor::Communicator())
static Long WriteHeader (const std::string &mf_name, VisMF::Header &hdr, int procToWrite=ParallelDescriptor::IOProcessorNumber(), MPI_Comm comm=ParallelDescriptor::Communicator())
 
static void FindOffsets (const FabArray< FArrayBox > &mf, const std::string &filePrefix, VisMF::Header &hdr, VisMF::Header::Version whichVersion, NFilesIter &nfi, MPI_Comm comm=ParallelDescriptor::Communicator())
static void FindOffsets (const FabArray< FArrayBox > &mf, const std::string &filePrefix, VisMF::Header &hdr, VisMF::Header::Version whichVersion, NFilesIter &nfi, MPI_Comm comm=ParallelDescriptor::Communicator())
 fileNumbers must be passed in for dynamic set selection [proc] More...
 
static FArrayBoxreadFAB (int idx, const std::string &mf_name, const Header &hdr, int whichComp=-1)
MPI_Comm MPI_Comm  comm = ParallelDescriptor::Communicator() 
MPI_Comm MPI_Comm  comm = ParallelDescriptor::Communicator() 
MPI_Comm MPI_Comm  comm = ParallelDescriptor::Communicator() 
MPI_Comm MPI_Comm  comm = ParallelDescriptor::Communicator() 
- + - +
GetIOBufferSize()amrex::VisMFBufferinlinestatic
IO_Buffer typedefamrex::VisMFBuffer
IO_Buffer typedefamrex::VisMFBuffer
IO_Buffer_Size enum valueamrex::VisMFBuffer
ioBufferSizeamrex::VisMFBufferprotectedstatic
Setbuf_Char_Type typedefamrex::VisMFBuffer
Setbuf_Char_Type typedefamrex::VisMFBuffer
SetIOBufferSize(Long iobuffersize)amrex::VisMFBufferinlinestatic
diff --git a/amrex/docs_html/doxygen/classamrex_1_1VisMFBuffer.html b/amrex/docs_html/doxygen/classamrex_1_1VisMFBuffer.html index 9905eea84c..3b0df9d781 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1VisMFBuffer.html +++ b/amrex/docs_html/doxygen/classamrex_1_1VisMFBuffer.html @@ -122,12 +122,12 @@ }  We try to do I/O with buffers of this size. More...
  -typedef char Setbuf_Char_Type - The type of a char buffer required by [p]setbuf(). More...
-  -typedef Vector< Setbuf_Char_TypeIO_Buffer - A simple character buffer for setbuf() usage. More...
-  +using Setbuf_Char_Type = char + The type of a char buffer required by [p]setbuf(). More...
+  +using IO_Buffer = Vector< Setbuf_Char_Type > + A simple character buffer for setbuf() usage. More...
+  @@ -143,14 +143,14 @@

Static Public Member Functions

 

Member Typedef Documentation

- -

◆ IO_Buffer

+ +

◆ IO_Buffer

@@ -159,14 +159,14 @@

-

◆ Setbuf_Char_Type

+ +

◆ Setbuf_Char_Type

diff --git a/amrex/docs_html/doxygen/classamrex_1_1VisMFBuffer.js b/amrex/docs_html/doxygen/classamrex_1_1VisMFBuffer.js index 15a2f17d34..25351ee612 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1VisMFBuffer.js +++ b/amrex/docs_html/doxygen/classamrex_1_1VisMFBuffer.js @@ -1,7 +1,7 @@ var classamrex_1_1VisMFBuffer = [ - [ "IO_Buffer", "classamrex_1_1VisMFBuffer.html#a46ec3da728028902559f9f9d552c0565", null ], - [ "Setbuf_Char_Type", "classamrex_1_1VisMFBuffer.html#a66e3544d644d980b6a46fe9dacd90fd3", null ], + [ "IO_Buffer", "classamrex_1_1VisMFBuffer.html#a1b2038a46c20c406d77023b6cdc956c0", null ], + [ "Setbuf_Char_Type", "classamrex_1_1VisMFBuffer.html#a49a155dcc41cf64677c1b57df5dcfcb2", null ], [ "GetIOBufferSize", "classamrex_1_1VisMFBuffer.html#a18fe5085940077f84917d957455078ab", null ], [ "SetIOBufferSize", "classamrex_1_1VisMFBuffer.html#a6408b3042dc48515b0c3722c43826f03", null ], [ "ioBufferSize", "classamrex_1_1VisMFBuffer.html#ab8b3e050b7f01e4270b0185d0d0e0497", null ] diff --git a/amrex/docs_html/doxygen/classamrex_1_1iMultiFab-members.html b/amrex/docs_html/doxygen/classamrex_1_1iMultiFab-members.html index 9602821f0b..aaabe62165 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1iMultiFab-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1iMultiFab-members.html @@ -148,11 +148,11 @@ copy(const FabArray< IArrayBox > &src, int src_comp, int dest_comp, int num_comp, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)amrex::FabArray< IArrayBox >inline copy(const FabArray< IArrayBox > &src, int src_comp, int dest_comp, int num_comp, int src_nghost, int dst_nghost, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)amrex::FabArray< IArrayBox >inline copy(const FabArray< IArrayBox > &src, int src_comp, int dest_comp, int num_comp, const IntVect &src_nghost, const IntVect &dst_nghost, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)amrex::FabArray< IArrayBox >inline - CopyComTagsContainer typedefamrex::FabArrayBase + CopyComTagsContainer typedefamrex::FabArrayBase copyTo(IArrayBox &dest, int nghost=0) constamrex::FabArray< IArrayBox > copyTo(IArrayBox &dest, int scomp, int dcomp, int ncomp, int nghost=0) constamrex::FabArray< IArrayBox > - CPCache typedefamrex::FabArrayBase - CPCacheIter typedefamrex::FabArrayBase + CPCache typedefamrex::FabArrayBase + CPCacheIter typedefamrex::FabArrayBase CpOp enum nameamrex::FabArrayBase define(const BoxArray &bxs, const DistributionMapping &dm, int nvar, const IntVect &ngrow, const MFInfo &info=MFInfo(), const FabFactory< IArrayBox > &factory=DefaultFabFactory< IArrayBox >())amrex::iMultiFab define(const BoxArray &bxs, const DistributionMapping &dm, int nvar, int ngrow, const MFInfo &info=MFInfo(), const FabFactory< IArrayBox > &factory=DefaultFabFactory< IArrayBox >())amrex::iMultiFab @@ -193,8 +193,8 @@ Factory() const noexceptamrex::FabArray< IArrayBox >inline FB_local_copy_cpu(const FB &TheFB, int scomp, int ncomp)amrex::FabArray< IArrayBox > FB_local_copy_gpu(const FB &TheFB, int scomp, int ncomp)amrex::FabArray< IArrayBox > - FBCache typedefamrex::FabArrayBase - FBCacheIter typedefamrex::FabArrayBase + FBCache typedefamrex::FabArrayBase + FBCacheIter typedefamrex::FabArrayBase fbdamrex::FabArray< IArrayBox > FBEP_nowait(int scomp, int ncomp, const IntVect &nghost, const Periodicity &period, bool cross, bool enforce_periodicity_only=false, bool override_sync=false)amrex::FabArray< IArrayBox > FBEP_nowait(int scomp, int ncomp, const IntVect &nghost, const Periodicity &period, bool cross, bool enforce_periodicity_only, bool override_sync)amrex::FabArray< IArrayBox > @@ -235,8 +235,8 @@ flushRB90Cache()amrex::FabArrayBasestatic flushTileArray(const IntVect &tilesize=IntVect::TheZeroVector(), bool no_assertion=false) constamrex::FabArrayBase flushTileArrayCache()amrex::FabArrayBasestatic - FPinfoCache typedefamrex::FabArrayBase - FPinfoCacheIter typedefamrex::FabArrayBase + FPinfoCache typedefamrex::FabArrayBase + FPinfoCacheIter typedefamrex::FabArrayBase get(const MFIter &mfi) const noexceptamrex::FabArray< IArrayBox >inline get(const MFIter &mfi) noexceptamrex::FabArray< IArrayBox >inline get(int K) const noexceptamrex::FabArray< IArrayBox >inline @@ -269,7 +269,7 @@ isDefined() constamrex::FabArray< IArrayBox > isFusingCandidate() const noexceptamrex::FabArrayBase isOwner(int li) const noexceptamrex::FabArrayBaseinline - Iterator typedefamrex::FabArray< IArrayBox >private + Iterator typedefamrex::FabArray< IArrayBox >private ixType() const noexceptamrex::FabArrayBaseinline LinComb(FabArray< IArrayBox > &dst, value_type a, const FabArray< IArrayBox > &x, int xcomp, value_type b, const FabArray< IArrayBox > &y, int ycomp, int dstcomp, int numcomp, const IntVect &nghost)amrex::FabArray< IArrayBox >static local_size() const noexceptamrex::FabArrayBaseinline @@ -304,7 +304,7 @@ m_TheRB180Cacheamrex::FabArrayBasestatic m_TheRB90Cacheamrex::FabArrayBasestatic m_TheTileArrayCacheamrex::FabArrayBasestatic - MapOfCopyComTagContainers typedefamrex::FabArrayBase + MapOfCopyComTagContainers typedefamrex::FabArrayBase max(int comp, int nghost=0, bool local=false) constamrex::iMultiFab max(const Box &region, int comp, int nghost=0, bool local=false) constamrex::iMultiFab MaxCompamrex::FabArrayBasestatic @@ -389,8 +389,8 @@ plus(const iMultiFab &mf, int strt_comp, int num_comp, int nghost)amrex::iMultiFab FabArray< IArrayBox >::plus(value_type val, int comp, int num_comp, int nghost=0)amrex::FabArray< IArrayBox > FabArray< IArrayBox >::plus(value_type val, const Box &region, int comp, int num_comp, int nghost=0)amrex::FabArray< IArrayBox > - PolarBCache typedefamrex::FabArrayBase - PolarBCacheIter typedefamrex::FabArrayBase + PolarBCache typedefamrex::FabArrayBase + PolarBCacheIter typedefamrex::FabArrayBase popRegionTag()amrex::FabArrayBasestatic prefetchToDevice(const MFIter &mfi) const noexceptamrex::FabArray< IArrayBox > prefetchToHost(const MFIter &mfi) const noexceptamrex::FabArray< IArrayBox > @@ -399,10 +399,10 @@ pushRegionTag(std::string t)amrex::FabArrayBasestatic queryMemUsage(const std::string &tag=std::string("All"))amrex::FabArrayBasestatic queryMemUsageHWM(const std::string &tag=std::string("All"))amrex::FabArrayBasestatic - RB180Cache typedefamrex::FabArrayBase - RB180CacheIter typedefamrex::FabArrayBase - RB90Cache typedefamrex::FabArrayBase - RB90CacheIter typedefamrex::FabArrayBase + RB180Cache typedefamrex::FabArrayBase + RB180CacheIter typedefamrex::FabArrayBase + RB90Cache typedefamrex::FabArrayBase + RB90CacheIter typedefamrex::FabArrayBase RecvLayoutMask(const CommMetaData &thecmd)amrex::FabArray< IArrayBox > Redistribute(const FabArray< IArrayBox > &src, int scomp, int dcomp, int ncomp, const IntVect &nghost)amrex::FabArray< IArrayBox > release(int K)amrex::FabArray< IArrayBox > diff --git a/amrex/docs_html/doxygen/classamrex_1_1iMultiFab.html b/amrex/docs_html/doxygen/classamrex_1_1iMultiFab.html index 20262e28b8..26c46f4159 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1iMultiFab.html +++ b/amrex/docs_html/doxygen/classamrex_1_1iMultiFab.html @@ -586,13 +586,13 @@   void CMD_remote_setVal_gpu (value_type x, const CommMetaData &thecmd, int scomp, int ncomp)   -void pack_send_buffer_gpu (FabArray< IArrayBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc) +void pack_send_buffer_gpu (FabArray< IArrayBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc)   -void unpack_recv_buffer_gpu (FabArray< IArrayBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe) +void unpack_recv_buffer_gpu (FabArray< IArrayBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe)   -void pack_send_buffer_cpu (FabArray< IArrayBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc) +void pack_send_buffer_cpu (FabArray< IArrayBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc)   -void unpack_recv_buffer_cpu (FabArray< IArrayBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe) +void unpack_recv_buffer_cpu (FabArray< IArrayBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe)   F::value_type norminf (int comp, int ncomp, IntVect const &nghost, bool local=false,[[maybe_unused]] bool ignore_covered=false) const  Return infinity norm. More...
@@ -759,13 +759,13 @@ static void Finalize ()   - Static Public Member Functions inherited from amrex::FabArray< IArrayBox > -static void pack_send_buffer_gpu (FabArray< IArrayBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc) +static void pack_send_buffer_gpu (FabArray< IArrayBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc)   -static void unpack_recv_buffer_gpu (FabArray< IArrayBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe) +static void unpack_recv_buffer_gpu (FabArray< IArrayBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe)   -static void pack_send_buffer_cpu (FabArray< IArrayBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc) +static void pack_send_buffer_cpu (FabArray< IArrayBox > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc)   -static void unpack_recv_buffer_cpu (FabArray< IArrayBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe) +static void unpack_recv_buffer_cpu (FabArray< IArrayBox > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe)   static void Saxpy (FabArray< IArrayBox > &y, value_type a, FabArray< IArrayBox > const &x, int xcomp, int ycomp, int ncomp, IntVect const &nghost)  y += a*x More...
@@ -777,7 +777,7 @@  dst = a*x + b*y More...
  - Static Public Member Functions inherited from amrex::FabArrayBase -static Long bytesOfMapOfCopyComTagContainers (const MapOfCopyComTagContainers &) +static Long bytesOfMapOfCopyComTagContainers (const MapOfCopyComTagContainers &)   static void Initialize ()  Initialize from ParmParse with "fabarray" prefix. More...
@@ -836,14 +836,14 @@ }  parallel copy or add More...
  -typedef CopyComTag::CopyComTagsContainer CopyComTagsContainer -  -typedef CopyComTag::MapOfCopyComTagContainers MapOfCopyComTagContainers -  -typedef std::multimap< BDKey, FabArrayBase::FPinfo * > FPinfoCache -  -typedef FPinfoCache::iterator FPinfoCacheIter -  +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 @@ -852,26 +852,26 @@   using TACache = std::map< BDKey, TAMap >   -typedef std::multimap< BDKey, FabArrayBase::FB * > FBCache -  -typedef FBCache::iterator FBCacheIter -  -typedef std::multimap< BDKey, FabArrayBase::CPC * > CPCache -  -typedef CPCache::iterator CPCacheIter -  -typedef std::multimap< BDKey, FabArrayBase::RB90 * > RB90Cache -  -typedef RB90Cache::iterator RB90CacheIter -  -typedef std::multimap< BDKey, FabArrayBase::RB180 * > RB180Cache -  -typedef RB180Cache::iterator RB180CacheIter -  -typedef std::multimap< BDKey, FabArrayBase::PolarB * > PolarBCache -  -typedef PolarBCache::iterator PolarBCacheIter -  +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 Attributes inherited from amrex::FabArray< IArrayBox > std::unique_ptr< FBData< IArrayBox > > fbd   @@ -908,7 +908,7 @@ static AMREX_EXPORT IntVect comm_tile_size  communication tile size More...
  -static FPinfoCache m_TheFillPatchCache +static FPinfoCache m_TheFillPatchCache   static CacheStats m_FPinfo_stats   @@ -924,19 +924,19 @@   static CacheStats m_TAC_stats   -static FBCache m_TheFBCache +static FBCache m_TheFBCache   static CacheStats m_FBC_stats   -static CPCache m_TheCPCache +static CPCache m_TheCPCache   static CacheStats m_CPC_stats   -static RB90Cache m_TheRB90Cache +static RB90Cache m_TheRB90Cache   -static RB180Cache m_TheRB180Cache +static RB180Cache m_TheRB180Cache   -static PolarBCache m_ThePolarBCache +static PolarBCache m_ThePolarBCache   static std::multimap< BDKey, ParForInfo * > m_TheParForCache   diff --git a/amrex/docs_html/doxygen/classamrex_1_1ref__wrapper-members.html b/amrex/docs_html/doxygen/classamrex_1_1ref__wrapper-members.html index 2865b09265..517f568306 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1ref__wrapper-members.html +++ b/amrex/docs_html/doxygen/classamrex_1_1ref__wrapper-members.html @@ -112,7 +112,7 @@ ref_wrapper(T &&)=deleteamrex::ref_wrapper< T > ref_wrapper(const ref_wrapper &) noexcept=defaultamrex::ref_wrapper< T > ref_wrapper(ref_wrapper &&) noexcept=defaultamrex::ref_wrapper< T > - type typedefamrex::ref_wrapper< T > + type typedefamrex::ref_wrapper< T > ~ref_wrapper()=defaultamrex::ref_wrapper< T >
diff --git a/amrex/docs_html/doxygen/classamrex_1_1ref__wrapper.html b/amrex/docs_html/doxygen/classamrex_1_1ref__wrapper.html index ba26d74971..d65c7f8a3b 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1ref__wrapper.html +++ b/amrex/docs_html/doxygen/classamrex_1_1ref__wrapper.html @@ -109,8 +109,8 @@ - - + +

Public Types

typedef T type
 
using type = T
 
@@ -146,8 +146,8 @@

Because std::reference_wrapper is not host device

Member Typedef Documentation

- -

◆ type

+ +

◆ type

@@ -155,7 +155,7 @@

- +

Public Member Functions

typedef T amrex::ref_wrapper< T >::typeusing amrex::ref_wrapper< T >::type = T

diff --git a/amrex/docs_html/doxygen/classamrex_1_1ref__wrapper.js b/amrex/docs_html/doxygen/classamrex_1_1ref__wrapper.js index 90deeafd02..da79035370 100644 --- a/amrex/docs_html/doxygen/classamrex_1_1ref__wrapper.js +++ b/amrex/docs_html/doxygen/classamrex_1_1ref__wrapper.js @@ -1,6 +1,6 @@ var classamrex_1_1ref__wrapper = [ - [ "type", "classamrex_1_1ref__wrapper.html#aed72fe005ae33391f22e0c498019797b", null ], + [ "type", "classamrex_1_1ref__wrapper.html#aa845318feb3c015bbf47571202f91ace", null ], [ "ref_wrapper", "classamrex_1_1ref__wrapper.html#aec548b435e6ba52441b7c436a859048a", null ], [ "ref_wrapper", "classamrex_1_1ref__wrapper.html#a8f3f054ecab74f9b3e738e5591b32e91", null ], [ "~ref_wrapper", "classamrex_1_1ref__wrapper.html#a8d68a19e8e692c80582c0e2a4470c7ae", null ], diff --git a/amrex/docs_html/doxygen/classhacc_1_1Dfft.html b/amrex/docs_html/doxygen/classhacc_1_1Dfft.html index 359323c38f..2b6713ee63 100644 --- a/amrex/docs_html/doxygen/classhacc_1_1Dfft.html +++ b/amrex/docs_html/doxygen/classhacc_1_1Dfft.html @@ -114,7 +114,7 @@   size_t global_size () const   -MPI_Comm parent_comm () const +MPI_Comm parent_comm () const   size_t local_size () const   @@ -130,7 +130,7 @@   int const (& local_ng_rspace () const)[3]   -MPI_Comm cartcomm_rspace () const +MPI_Comm cartcomm_rspace () const   int self_kspace (int i) const   @@ -144,7 +144,7 @@   int const (& local_ng_kspace () const)[3]   -MPI_Comm cartcomm_kspace () const +MPI_Comm cartcomm_kspace () const   void forward (complex_t const *in)   @@ -423,7 +423,7 @@

- + @@ -448,7 +448,7 @@

MPI_Comm hacc::Dfft::cartcomm_kspace MPI_Comm hacc::Dfft::cartcomm_kspace ( ) const
- + @@ -961,7 +961,7 @@

MPI_Comm hacc::Dfft::cartcomm_rspace MPI_Comm hacc::Dfft::cartcomm_rspace ( ) const
- + diff --git a/amrex/docs_html/doxygen/classhacc_1_1Distribution.html b/amrex/docs_html/doxygen/classhacc_1_1Distribution.html index fb943a2cc0..29769a9b09 100644 --- a/amrex/docs_html/doxygen/classhacc_1_1Distribution.html +++ b/amrex/docs_html/doxygen/classhacc_1_1Distribution.html @@ -109,17 +109,17 @@
MPI_Comm hacc::Dfft::parent_comm MPI_Comm hacc::Dfft::parent_comm ( ) const
- + - + - + - + - + @@ -201,17 +201,17 @@ - + - + - + - + - + - + @@ -233,7 +233,7 @@

Public Member Functions

 Distribution (MPI_Comm comm, int const n[], bool debug=false)
 Distribution (MPI_Comm comm, int const n[], bool debug=false)
 
 Distribution (MPI_Comm comm, int ng, bool debug=false)
 Distribution (MPI_Comm comm, int ng, bool debug=false)
 
 Distribution (MPI_Comm comm, int const n[], int const Ndims[], int *rmap, bool debug=false)
 Distribution (MPI_Comm comm, int const n[], int const Ndims[], int *rmap, bool debug=false)
 
 Distribution (MPI_Comm comm, int ng, int const Ndims[], int *rmap, bool debug=false)
 Distribution (MPI_Comm comm, int ng, int const Ndims[], int *rmap, bool debug=false)
 
virtual ~Distribution ()
 
void initialize (MPI_Comm comm, int const n[], int const Ndims[])
void initialize (MPI_Comm comm, int const n[], int const Ndims[])
 
void redistribute_1_to_3 (const complex_t *a, complex_t *b)
 
 
int const (& self_3d () const)[3]
 
MPI_Comm cart_1d () const
MPI_Comm cart_1d () const
 
MPI_Comm cart_2d_x () const
MPI_Comm cart_2d_x () const
 
MPI_Comm cart_2d_y () const
MPI_Comm cart_2d_y () const
 
MPI_Comm cart_2d_z () const
MPI_Comm cart_2d_z () const
 
MPI_Comm cart_3d () const
MPI_Comm cart_3d () const
 
MPI_Comm parent_comm () const
MPI_Comm parent_comm () const
 
int rank_2d_x (int c[])
 
- + @@ -253,7 +253,7 @@

hacc::Distribution::Distribution

- + @@ -295,7 +295,7 @@

hacc::Distribution::Distribution

- + @@ -337,7 +337,7 @@

hacc::Distribution::Distribution

- + @@ -391,7 +391,7 @@

hacc::Distribution::Distribution

- + @@ -469,7 +469,7 @@

Protected Attributes

MPI_Comm m_comm
MPI_Comm m_comm
 
int * m_rmap
 
(MPI_Comm MPI_Comm  comm,
(MPI_Comm MPI_Comm  comm,
(MPI_Comm MPI_Comm  comm,
(MPI_Comm MPI_Comm  comm,
- + @@ -494,7 +494,7 @@

MPI_Comm hacc::Distribution::cart_1d MPI_Comm hacc::Distribution::cart_1d ( ) const
- + @@ -519,7 +519,7 @@

MPI_Comm hacc::Distribution::cart_2d_x MPI_Comm hacc::Distribution::cart_2d_x ( ) const
- + @@ -544,7 +544,7 @@

MPI_Comm hacc::Distribution::cart_2d_y MPI_Comm hacc::Distribution::cart_2d_y ( ) const
- + @@ -569,7 +569,7 @@

MPI_Comm hacc::Distribution::cart_2d_z MPI_Comm hacc::Distribution::cart_2d_z ( ) const
- + @@ -780,7 +780,7 @@

void hacc::Distribution::initialize

- + @@ -1380,7 +1380,7 @@

MPI_Comm hacc::Distribution::cart_3d MPI_Comm hacc::Distribution::cart_3d ( ) const(MPI_Comm MPI_Comm  comm,
- + @@ -1920,7 +1920,7 @@

MPI_Comm hacc::Distribution::parent_comm MPI_Comm hacc::Distribution::parent_comm ( ) const
- +
MPI_Comm hacc::Distribution::m_commMPI_Comm hacc::Distribution::m_comm
diff --git a/amrex/docs_html/doxygen/distribution_8c.html b/amrex/docs_html/doxygen/distribution_8c.html index 37fcce7e8f..c07480b4c9 100644 --- a/amrex/docs_html/doxygen/distribution_8c.html +++ b/amrex/docs_html/doxygen/distribution_8c.html @@ -149,11 +149,11 @@   void Rank_z_pencils (int *myrank, int coord[], distribution_t *d)   -void distribution_init (MPI_Comm comm, const int n[], const int Ndims[], distribution_t *d, const int *rmap, bool debug) +void distribution_init (MPI_Comm comm, const int n[], const int Ndims[], distribution_t *d, const int *rmap, bool debug)   void Custom3D_Dims_create (const int Ndims[], int nproc, int ndims, int dims[])   -void distribution_init_explicit (MPI_Comm comm, const int n[], int nproc_1d[], int nproc_2d_x[], int nproc_2d_y[], int nproc_2d_z[], int nproc_3d[], distribution_t *d, bool debug) +void distribution_init_explicit (MPI_Comm comm, const int n[], int nproc_1d[], int nproc_2d_x[], int nproc_2d_y[], int nproc_2d_z[], int nproc_3d[], distribution_t *d, bool debug)   void distribution_fini (distribution_t *d)   @@ -594,7 +594,7 @@

void distribution_init ( - MPI_Comm  + MPI_Comm  comm, @@ -646,7 +646,7 @@

void distribution_init_explicit ( - MPI_Comm  + MPI_Comm  comm, diff --git a/amrex/docs_html/doxygen/distribution__c_8h.html b/amrex/docs_html/doxygen/distribution__c_8h.html index a83433f7e5..ec40cfdfd6 100644 --- a/amrex/docs_html/doxygen/distribution__c_8h.html +++ b/amrex/docs_html/doxygen/distribution__c_8h.html @@ -122,9 +122,9 @@ - + - + @@ -884,7 +884,7 @@

void distribution_init

- + @@ -936,7 +936,7 @@

void distribution_init_explicit

- + diff --git a/amrex/docs_html/doxygen/distribution__c_8h_source.html b/amrex/docs_html/doxygen/distribution__c_8h_source.html index 32749495a9..c2917b3213 100644 --- a/amrex/docs_html/doxygen/distribution__c_8h_source.html +++ b/amrex/docs_html/doxygen/distribution__c_8h_source.html @@ -173,7 +173,7 @@
73 // self[] coordinate of this process in the process grid
74 // n[] local grid dimensions
76 typedef struct {
- +
78  int nproc[3];
79  int period[3];
80  int self[3];
@@ -199,7 +199,7 @@
103  int *gridmap;
104  int *rankmap;
- +
107 
108 
@@ -210,7 +210,7 @@
114 // Ndims 3d process grid (3 element array: x, y, z)
115 // rmap pointer to grid->rank map
116 // debug debugging output
-
118 void distribution_init(MPI_Comm comm,
+
118 void distribution_init(MPI_Comm comm,
119  const int n[],
120  const int Ndims[],
121  distribution_t *d,
@@ -227,7 +227,7 @@
133 // nproc_3d 3d process grid (3 element array: x, y, z)
134 // d distribution descriptor
135 // debug debugging output
- +
138  const int n[],
139  int nproc_1d[],
140  int nproc_2d_x[],
@@ -344,7 +344,7 @@
267 #endif
268 
269 #endif // HACC_DISTRIBUTION_H
-
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
+
int MPI_Comm
Definition: AMReX_ccse-mpi.H:47
double complex complex_t
Definition: complex-type.h:79
void Rank_x_pencils(int *myrank, int coord[], distribution_t *d)
Definition: distribution.c:150
diff --git a/amrex/docs_html/doxygen/functions_a.html b/amrex/docs_html/doxygen/functions_a.html index 7bf2f40f79..9f53691494 100644 --- a/amrex/docs_html/doxygen/functions_a.html +++ b/amrex/docs_html/doxygen/functions_a.html @@ -910,7 +910,7 @@

- a -

Functions

void distribution_init (MPI_Comm comm, const int n[], const int Ndims[], distribution_t *d, const int *rmap, bool debug)
void distribution_init (MPI_Comm comm, const int n[], const int Ndims[], distribution_t *d, const int *rmap, bool debug)
 
void distribution_init_explicit (MPI_Comm comm, const int n[], int nproc_1d[], int nproc_2d_x[], int nproc_2d_y[], int nproc_2d_z[], int nproc_3d[], distribution_t *d, bool debug)
void distribution_init_explicit (MPI_Comm comm, const int n[], int nproc_1d[], int nproc_2d_x[], int nproc_2d_y[], int nproc_2d_z[], int nproc_3d[], distribution_t *d, bool debug)
 
void Custom3D_Dims_create (const int Ndims[], int nproc, int ndims, int dims[])
 
(MPI_Comm MPI_Comm  comm,
(MPI_Comm MPI_Comm  comm,
- - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -1299,16 +1299,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -1343,19 +1343,19 @@ - + - + - + - + @@ -1855,9 +1855,9 @@ - + - + @@ -1866,10 +1866,10 @@ - + - + @@ -1902,7 +1902,7 @@ - + @@ -3297,9 +3297,9 @@ - + - + @@ -3844,14 +3844,14 @@ - + - + - + - + @@ -4523,9 +4523,9 @@ - + - + @@ -5798,42 +5798,42 @@

-

◆ BndryFunc3DDefault

+ +

◆ BndryFunc3DDefault

Typedefs

typedef void(* DeriveFunc) (amrex::Real *data, AMREX_ARLIM_P(dlo), AMREX_ARLIM_P(dhi), const int *nvar, const amrex::Real *compdat, AMREX_ARLIM_P(compdat_lo), AMREX_ARLIM_P(compdat_hi), const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no)
 Type of extern "C" function called by DeriveRec to compute derived quantity. More...
 
typedef void(* DeriveFunc3D) (amrex::Real *data, const int *dlo, const int *dhi, const int *nvar, const amrex::Real *compdat, const int *clo, const int *chi, const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no)
 This is dimension agnostic. For example, dlo always has three elements. More...
 
typedef std::function< void(const amrex::Box &bx, amrex::FArrayBox &derfab, int dcomp, int ncomp, const amrex::FArrayBox &datafab, const amrex::Geometry &geomdata, amrex::Real time, const int *bcrec, int level)> DeriveFuncFab
 
typedef std::function< void(Box const &bx, FArrayBox &data, const int dcomp, const int numcomp, Geometry const &geom, const Real time, const Vector< BCRec > &bcr, const int bcomp, const int scomp)> BndryFuncFabDefault
 
using DeriveFunc = void(*)(amrex::Real *data, AMREX_ARLIM_P(dlo), AMREX_ARLIM_P(dhi), const int *nvar, const amrex::Real *compdat, AMREX_ARLIM_P(compdat_lo), AMREX_ARLIM_P(compdat_hi), const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no)
 Type of extern "C" function called by DeriveRec to compute derived quantity. More...
 
using DeriveFunc3D = void(*)(amrex::Real *data, const int *dlo, const int *dhi, const int *nvar, const amrex::Real *compdat, const int *clo, const int *chi, const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no)
 This is dimension agnostic. For example, dlo always has three elements. More...
 
using DeriveFuncFab = std::function< void(const amrex::Box &bx, amrex::FArrayBox &derfab, int dcomp, int ncomp, const amrex::FArrayBox &datafab, const amrex::Geometry &geomdata, amrex::Real time, const int *bcrec, int level)>
 
using BndryFuncFabDefault = std::function< void(Box const &bx, FArrayBox &data, int dcomp, int numcomp, Geometry const &geom, Real time, const Vector< BCRec > &bcr, int bcomp, int scomp)>
 
template<int T_NStructReal, int T_NStructInt = 0, int T_NArrayReal = 0, int T_NArrayInt = 0, template< class > class Allocator = DefaultAllocator>
using AmrParticleContainer = AmrParticleContainer_impl< Particle< T_NStructReal, T_NStructInt >, T_NArrayReal, T_NArrayInt, Allocator >
 
typedef void(* ErrorFuncDefault) (int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level)
 Type of extern "C" function called by ErrorRec to do tagging of cells for refinement. More...
 
typedef void(* ErrorFunc2Default) (int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const int *level, const amrex::Real *avg)
 
typedef void(* ErrorFunc3DDefault) (int *tag, const int *tlo, const int *thi, const int *tagval, const int *clearval, amrex::Real *data, const int *data_lo, const int *data_hi, const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level)
 Dimension agnostic version that always has three elements. Note that this is only implemented for the ErrorFunc class, not ErrorFunc2. More...
 
typedef void(* PTR_TO_VOID_FUNC) ()
 
typedef void(* ErrorHandler) (const char *msg)
 
using ErrorFuncDefault = void(*)(int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level)
 Type of extern "C" function called by ErrorRec to do tagging of cells for refinement. More...
 
using ErrorFunc2Default = void(*)(int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const int *level, const amrex::Real *avg)
 
using ErrorFunc3DDefault = void(*)(int *tag, const int *tlo, const int *thi, const int *tagval, const int *clearval, amrex::Real *data, const int *data_lo, const int *data_hi, const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level)
 Dimension agnostic version that always has three elements. Note that this is only implemented for the ErrorFunc class, not ErrorFunc2. More...
 
using PTR_TO_VOID_FUNC = void(*)()
 
using ErrorHandler = void(*)(const char *)
 
template<class T , std::size_t N>
using Array = std::array< T, N >
 
 
using gpuError_t = cudaError_t
 
typedef FabArrayId MultiFabId
 
typedef FabArray< BaseFab< float > > fMultiFab
 
typedef void(* BndryFuncDefault) (Real *data, AMREX_ARLIM_P(lo), AMREX_ARLIM_P(hi), const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)
 
typedef void(* BndryFunc3DDefault) (Real *data, const int *lo, const int *hi, const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)
 
typedef void(* UserFillBox) (Box const &bx, Array4< Real > const &dest, int dcomp, int numcomp, GeometryData const &geom, Real time, const BCRec *bcr, int bcomp, int orig_comp)
 
using MultiFabId = FabArrayId
 
using fMultiFab = FabArray< BaseFab< float > >
 
using BndryFuncDefault = void(*)(Real *data, AMREX_ARLIM_P(lo), AMREX_ARLIM_P(hi), const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)
 
using BndryFunc3DDefault = void(*)(Real *data, const int *lo, const int *hi, const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)
 
using UserFillBox = void(*)(Box const &bx, Array4< Real > const &dest, int dcomp, int numcomp, GeometryData const &geom, Real time, const BCRec *bcr, int bcomp, int orig_comp)
 
using randState_t = curandState_t
 
template<class... Ts>
 
using BndryData = BndryDataT< MultiFab >
 
using fBndryData = BndryDataT< fMultiFab >
using fBndryData = BndryDataT< fMultiFab >
 
using BndryRegister = BndryRegisterT< MultiFab >
 
using fBndryRegister = BndryRegisterT< fMultiFab >
using fBndryRegister = BndryRegisterT< fMultiFab >
 
using FabSet = FabSetT< MultiFab >
 
using fFabSet = FabSetT< fMultiFab >
using fFabSet = FabSetT< fMultiFab >
 
using InterpBndryData = InterpBndryDataT< MultiFab >
 
using fInterpBndryData = InterpBndryDataT< fMultiFab >
using fInterpBndryData = InterpBndryDataT< fMultiFab >
 
using YAFluxRegister = YAFluxRegisterT< MultiFab >
 
 
std::string Version ()
 
AMReXInitialize (MPI_Comm mpi_comm, std::ostream &a_osout=std::cout, std::ostream &a_oserr=std::cerr, ErrorHandler a_errhandler=nullptr)
AMReXInitialize (MPI_Comm mpi_comm, std::ostream &a_osout=std::cout, std::ostream &a_oserr=std::cerr, ErrorHandler a_errhandler=nullptr)
 
AMReXInitialize (int &argc, char **&argv, bool build_parm_parse=true, MPI_Comm mpi_comm=MPI_COMM_WORLD, const std::function< void()> &func_parm_parse={}, std::ostream &a_osout=std::cout, std::ostream &a_oserr=std::cerr, ErrorHandler a_errhandler=nullptr)
AMReXInitialize (int &argc, char **&argv, bool build_parm_parse=true, MPI_Comm mpi_comm=MPI_COMM_WORLD, const std::function< void()> &func_parm_parse={}, std::ostream &a_osout=std::cout, std::ostream &a_oserr=std::cerr, ErrorHandler a_errhandler=nullptr)
 
bool Initialized ()
 Returns true if there are any currently-active and initialized AMReX instances (i.e. one for which amrex::Initialize has been called, and amrex::Finalize has not). Otherwise false. More...
 
void Finalize ()
 
void ExecOnFinalize (PTR_TO_VOID_FUNC)
void ExecOnFinalize (PTR_TO_VOID_FUNC)
 We maintain a stack of functions that need to be called in Finalize(). The functions are called in LIFO order. The idea here is to allow classes to clean up any "global" state that they maintain when we're exiting from AMReX. More...
 
void ExecOnInitialize (PTR_TO_VOID_FUNC)
void ExecOnInitialize (PTR_TO_VOID_FUNC)
 
template<class... Ts>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void ignore_unused (const Ts &...)
void write_to_stderr_without_buffering (const char *str)
 This is used by amrex::Error(), amrex::Abort(), and amrex::Assert() to ensure that when writing the message to stderr, that no additional heap-based memory is allocated. More...
 
void SetErrorHandler (ErrorHandler f)
void SetErrorHandler (ErrorHandler f)
 
std::ostream & OutStream ()
 
 
std::ostream & operator<< (std::ostream &os, const MemProfiler::Builds &builds)
 
void InterpAddBox (MultiFabCopyDescriptor &fabCopyDesc, BoxList *returnUnfilledBoxes, Vector< FillBoxId > &returnedFillBoxIds, const Box &subbox, MultiFabId faid1, MultiFabId faid2, Real t1, Real t2, Real t, int src_comp, int dest_comp, int num_comp, bool extrap)
void InterpAddBox (MultiFabCopyDescriptor &fabCopyDesc, BoxList *returnUnfilledBoxes, Vector< FillBoxId > &returnedFillBoxIds, const Box &subbox, MultiFabId faid1, MultiFabId faid2, Real t1, Real t2, Real t, int src_comp, int dest_comp, int num_comp, bool extrap)
 
void InterpFillFab (MultiFabCopyDescriptor &fabCopyDesc, const Vector< FillBoxId > &fillBoxIds, MultiFabId faid1, MultiFabId faid2, FArrayBox &dest, Real t1, Real t2, Real t, int src_comp, int dest_comp, int num_comp, bool extrap)
void InterpFillFab (MultiFabCopyDescriptor &fabCopyDesc, const Vector< FillBoxId > &fillBoxIds, MultiFabId faid1, MultiFabId faid2, FArrayBox &dest, Real t1, Real t2, Real t, int src_comp, int dest_comp, int num_comp, bool extrap)
 
bool TilingIfNotGPU () noexcept
 
template<typename Key , typename T , class Compare >
Long bytesOf (const std::map< Key, T, Compare > &m)
 
void BroadcastBool (bool &bBool, int myLocalId, int rootId, const MPI_Comm &localComm)
void BroadcastBool (bool &bBool, int myLocalId, int rootId, const MPI_Comm &localComm)
 
void BroadcastString (std::string &bStr, int myLocalId, int rootId, const MPI_Comm &localComm)
void BroadcastString (std::string &bStr, int myLocalId, int rootId, const MPI_Comm &localComm)
 
void BroadcastStringArray (Vector< std::string > &bSA, int myLocalId, int rootId, const MPI_Comm &localComm)
void BroadcastStringArray (Vector< std::string > &bSA, int myLocalId, int rootId, const MPI_Comm &localComm)
 
template<class T >
void BroadcastArray (Vector< T > &aT, int myLocalId, int rootId, const MPI_Comm &localComm)
void BroadcastArray (Vector< T > &aT, int myLocalId, int rootId, const MPI_Comm &localComm)
 
void Sleep (double sleepsec)
 
template<typename Int >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void habec_cols (GpuArray< Int, 2 *AMREX_SPACEDIM+1 > &sten, int i, int j, int, Array4< Int const > const &cell_id)
 
std::unique_ptr< HypremakeHypre (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_, Hypre::Interface interface, const iMultiFab *overset_mask)
std::unique_ptr< HypremakeHypre (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_, Hypre::Interface interface, const iMultiFab *overset_mask)
 
std::unique_ptr< PETScABecLapmakePetsc (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_)
std::unique_ptr< PETScABecLapmakePetsc (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_)
 
std::string SanitizeName (const std::string &sname)
 
- +
typedef void(* amrex::BndryFunc3DDefault) (Real *data, const int *lo, const int *hi, const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)using amrex::BndryFunc3DDefault = typedef void (*)(Real* data, const int* lo, const int* hi, const int* dom_lo, const int* dom_hi, const Real* dx, const Real* grd_lo, const Real* time, const int* bc)

- -

◆ BndryFuncDefault

+ +

◆ BndryFuncDefault

- +
typedef void(* amrex::BndryFuncDefault) (Real *data, AMREX_ARLIM_P(lo), AMREX_ARLIM_P(hi), const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)using amrex::BndryFuncDefault = typedef void (*)(Real* data, AMREX_ARLIM_P(lo), AMREX_ARLIM_P(hi), const int* dom_lo, const int* dom_hi, const Real* dx, const Real* grd_lo, const Real* time, const int* bc)
- -

◆ BndryFuncFabDefault

+ +

◆ BndryFuncFabDefault

- +
typedef std::function<void(Box const& bx, FArrayBox& data, const int dcomp, const int numcomp, Geometry const& geom, const Real time, const Vector<BCRec>& bcr, const int bcomp, const int scomp)> amrex::BndryFuncFabDefaultusing amrex::BndryFuncFabDefault = typedef std::function<void(Box const& bx, FArrayBox& data, int dcomp, int numcomp, Geometry const& geom, Real time, const Vector<BCRec>& bcr, int bcomp, int scomp)>
@@ -5870,14 +5870,14 @@

-

◆ DeriveFunc

+ +

◆ DeriveFunc

- +
typedef void(* amrex::DeriveFunc) (amrex::Real *data, AMREX_ARLIM_P(dlo), AMREX_ARLIM_P(dhi), const int *nvar, const amrex::Real *compdat, AMREX_ARLIM_P(compdat_lo), AMREX_ARLIM_P(compdat_hi), const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no)using amrex::DeriveFunc = typedef void (*)(amrex::Real* data, AMREX_ARLIM_P(dlo), AMREX_ARLIM_P(dhi), const int* nvar, const amrex::Real* compdat, AMREX_ARLIM_P(compdat_lo), AMREX_ARLIM_P(compdat_hi), const int* ncomp, const int* lo, const int* hi, const int* domain_lo, const int* domain_hi, const amrex::Real* delta, const amrex::Real* xlo, const amrex::Real* time, const amrex::Real* dt, const int* bcrec, const int* level, const int* grid_no)
@@ -5911,14 +5911,14 @@

-

◆ DeriveFunc3D

+ +

◆ DeriveFunc3D

- +
typedef void(* amrex::DeriveFunc3D) (amrex::Real *data, const int *dlo, const int *dhi, const int *nvar, const amrex::Real *compdat, const int *clo, const int *chi, const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no)using amrex::DeriveFunc3D = typedef void (*)(amrex::Real* data, const int* dlo, const int* dhi, const int* nvar, const amrex::Real* compdat, const int* clo, const int* chi, const int* ncomp, const int* lo, const int* hi, const int* domain_lo, const int* domain_hi, const amrex::Real* delta, const amrex::Real* xlo, const amrex::Real* time, const amrex::Real* dt, const int* bcrec, const int* level, const int* grid_no)
@@ -5951,14 +5951,14 @@

-

◆ DeriveFuncFab

+ +

◆ DeriveFuncFab

- +
typedef std::function<void(const amrex::Box& bx, amrex::FArrayBox& derfab, int dcomp, int ncomp, const amrex::FArrayBox& datafab, const amrex::Geometry& geomdata, amrex::Real time, const int* bcrec, int level)> amrex::DeriveFuncFabusing amrex::DeriveFuncFab = typedef std::function<void(const amrex::Box& bx, amrex::FArrayBox& derfab, int dcomp, int ncomp, const amrex::FArrayBox& datafab, const amrex::Geometry& geomdata, amrex::Real time, const int* bcrec, int level)>
@@ -6013,28 +6013,28 @@

-

◆ ErrorFunc2Default

+ +

◆ ErrorFunc2Default

- +
typedef void(* amrex::ErrorFunc2Default) (int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const int *level, const amrex::Real *avg)using amrex::ErrorFunc2Default = typedef void (*)(int* tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int* tagval, const int* clearval, amrex::Real* data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int* lo, const int * hi, const int* nvar, const int* domain_lo, const int* domain_hi, const amrex::Real* dx, const int* level, const amrex::Real* avg)
- -

◆ ErrorFunc3DDefault

+ +

◆ ErrorFunc3DDefault

- +
typedef void(* amrex::ErrorFunc3DDefault) (int *tag, const int *tlo, const int *thi, const int *tagval, const int *clearval, amrex::Real *data, const int *data_lo, const int *data_hi, const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level)using amrex::ErrorFunc3DDefault = typedef void (*)(int* tag, const int* tlo, const int* thi, const int* tagval, const int* clearval, amrex::Real* data, const int* data_lo, const int* data_hi, const int* lo, const int * hi, const int* nvar, const int* domain_lo, const int* domain_hi, const amrex::Real* dx, const amrex::Real* xlo, const amrex::Real* prob_lo, const amrex::Real* time, const int* level)
@@ -6066,14 +6066,14 @@

-

◆ ErrorFuncDefault

+ +

◆ ErrorFuncDefault

- +
typedef void(* amrex::ErrorFuncDefault) (int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level)using amrex::ErrorFuncDefault = typedef void (*)(int* tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int* tagval, const int* clearval, amrex::Real* data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int* lo, const int * hi, const int* nvar, const int* domain_lo, const int* domain_hi, const amrex::Real* dx, const amrex::Real* xlo, const amrex::Real* prob_lo, const amrex::Real* time, const int* level)
@@ -6105,14 +6105,14 @@

-

◆ ErrorHandler

+ +

◆ ErrorHandler

- -

◆ fMultiFab

+ +

◆ fMultiFab

- +
typedef FabArray<BaseFab<float> > amrex::fMultiFabusing amrex::fMultiFab = typedef FabArray<BaseFab<float> >
@@ -6475,14 +6475,14 @@

-

◆ MultiFabId

+ +

◆ MultiFabId

@@ -6633,14 +6633,14 @@

-

◆ PTR_TO_VOID_FUNC

+ +

◆ PTR_TO_VOID_FUNC

- +
typedef void(* amrex::PTR_TO_VOID_FUNC) ()using amrex::PTR_TO_VOID_FUNC = typedef void (*)()
@@ -6751,14 +6751,14 @@

-

◆ UserFillBox

+ +

◆ UserFillBox

- +
typedef void(* amrex::UserFillBox) (Box const &bx, Array4< Real > const &dest, int dcomp, int numcomp, GeometryData const &geom, Real time, const BCRec *bcr, int bcomp, int orig_comp)using amrex::UserFillBox = typedef void (*)(Box const& bx, Array4<Real> const& dest, int dcomp, int numcomp, GeometryData const& geom, Real time, const BCRec* bcr, int bcomp, int orig_comp)
@@ -15982,7 +15982,7 @@

- const MPI_Comm &  + const MPI_CommlocalComm  @@ -16022,7 +16022,7 @@

- const MPI_Comm &  + const MPI_CommlocalComm  @@ -16062,7 +16062,7 @@

- const MPI_Comm &  + const MPI_CommlocalComm  @@ -16102,7 +16102,7 @@

- const MPI_Comm &  + const MPI_CommlocalComm  @@ -23630,7 +23630,7 @@

void amrex::ExecOnFinalize ( - PTR_TO_VOID_FUNC  + PTR_TO_VOID_FUNC  fp) @@ -23650,7 +23650,7 @@

void amrex::ExecOnInitialize ( - PTR_TO_VOID_FUNC  + PTR_TO_VOID_FUNC  fp) @@ -36870,7 +36870,7 @@

- MPI_Comm  + MPI_Comm  mpi_comm = MPI_COMM_WORLD, @@ -36894,7 +36894,7 @@

- ErrorHandler  + ErrorHandler  a_errhandler = nullptr  @@ -36916,7 +36916,7 @@

amrex::AMReX * amrex::Initialize ( - MPI_Comm  + MPI_Comm  mpi_comm, @@ -36934,7 +36934,7 @@

- ErrorHandler  + ErrorHandler  a_errhandler = nullptr  @@ -37197,13 +37197,13 @@

- MultiFabId  + MultiFabId  faid1, - MultiFabId  + MultiFabId  faid2, @@ -37931,13 +37931,13 @@

- MultiFabId  + MultiFabId  faid1, - MultiFabId  + MultiFabId  faid2, @@ -42298,7 +42298,7 @@

- MPI_Comm  + MPI_Comm  comm_, @@ -42402,7 +42402,7 @@

- MPI_Comm  + MPI_Comm  comm_  @@ -85881,7 +85881,7 @@

void amrex::SetErrorHandler ( - amrex::ErrorHandler  + amrex::ErrorHandler  f) diff --git a/amrex/docs_html/doxygen/namespaceamrex.js b/amrex/docs_html/doxygen/namespaceamrex.js index e1672c6990..916b9b4e7e 100644 --- a/amrex/docs_html/doxygen/namespaceamrex.js +++ b/amrex/docs_html/doxygen/namespaceamrex.js @@ -183,8 +183,8 @@ var namespaceamrex = [ "InSituUtils", "namespaceamrex_1_1InSituUtils.html", "namespaceamrex_1_1InSituUtils" ], [ "IntParticleIds", "namespaceamrex_1_1IntParticleIds.html", null ], [ "Lazy", "namespaceamrex_1_1Lazy.html", [ - [ "Func", "namespaceamrex_1_1Lazy.html#ac520a3dfdc05eaffb3b4eea05eea5668", null ], - [ "FuncQue", "namespaceamrex_1_1Lazy.html#a17dde5bdf675b748b4cff2f01edd7fc5", null ], + [ "Func", "namespaceamrex_1_1Lazy.html#a9fa958cc46c33768f0cf428f5fa6ca32", null ], + [ "FuncQue", "namespaceamrex_1_1Lazy.html#ae96e9ce9ac81427802df6fd09989e0d5", null ], [ "EvalReduction", "namespaceamrex_1_1Lazy.html#a0a2dd2d6e19976b8eaebb9d81a65718a", null ], [ "Finalize", "namespaceamrex_1_1Lazy.html#a01ac7d4ed0bfab3839b45995cf260a05", null ], [ "QueueReduction", "namespaceamrex_1_1Lazy.html#a48f09e6d45685ddcaa72f6424891b9e4", null ], @@ -841,28 +841,28 @@ var namespaceamrex = [ "Array", "namespaceamrex.html#afe930d74045516fece8591f173e57007", null ], [ "BndryBATransformer", "namespaceamrex.html#af2ed2dc1168064ab4409c918ad0dfce6", null ], [ "BndryData", "namespaceamrex.html#a9f6fb58eb396dd06df45ba7787548b32", null ], - [ "BndryFunc3DDefault", "namespaceamrex.html#ab0cdf132a72bb586fa96bbdc53a19149", null ], - [ "BndryFuncDefault", "namespaceamrex.html#a395b6c263aecc344bf7648fe2d8d75cf", null ], - [ "BndryFuncFabDefault", "namespaceamrex.html#af0689a6124feceae5af1fb73e7b971f8", null ], + [ "BndryFunc3DDefault", "namespaceamrex.html#a5e4a902f699c144a9823d30d6dbb7236", null ], + [ "BndryFuncDefault", "namespaceamrex.html#a8b7e34da6fddd1312471a5962bf774cd", null ], + [ "BndryFuncFabDefault", "namespaceamrex.html#a33a085eaa4c95d211f6fce74e9440ff9", null ], [ "BndryRegister", "namespaceamrex.html#a51a3951b54ca3db6bf891ebc2f867168", null ], [ "DefaultAllocator", "namespaceamrex.html#a179fafc569924202b166896b608cd5c2", null ], - [ "DeriveFunc", "namespaceamrex.html#a046a83e139b61c9ec447bd89eed50967", null ], - [ "DeriveFunc3D", "namespaceamrex.html#abf838b25d605cefbf6150bc883f4741d", null ], - [ "DeriveFuncFab", "namespaceamrex.html#a193c40127f1734f83e3bb23cab534a24", null ], + [ "DeriveFunc", "namespaceamrex.html#ac7d6bf4b6824f474320123285acc5065", null ], + [ "DeriveFunc3D", "namespaceamrex.html#a008867a6f88e4144e28dfb6a738f5549", null ], + [ "DeriveFuncFab", "namespaceamrex.html#a7f6a90da175c5d3eb9612d6934849087", null ], [ "Detected_t", "namespaceamrex.html#a4c98b791b1f6442671e5cfa546a3df4f", null ], [ "DetectedOr", "namespaceamrex.html#abe72f840d81a1ce49a3811fe8295b222", null ], [ "EnableIf_t", "namespaceamrex.html#a8690d4c6386d001b328b07257fe628a0", null ], - [ "ErrorFunc2Default", "namespaceamrex.html#a712777d91904823bb5241758651b9709", null ], - [ "ErrorFunc3DDefault", "namespaceamrex.html#a198cab9c3268f289bedd23e83dd7e95d", null ], - [ "ErrorFuncDefault", "namespaceamrex.html#accd616989af467165f35b0b213ee2e1a", null ], - [ "ErrorHandler", "namespaceamrex.html#aa944154cc363fe5103f6638e3726d2ca", null ], + [ "ErrorFunc2Default", "namespaceamrex.html#a42bd26e7d0da54d65837c31f4d03576f", null ], + [ "ErrorFunc3DDefault", "namespaceamrex.html#ac3ef56858a7952a309061d5ddef6f86b", null ], + [ "ErrorFuncDefault", "namespaceamrex.html#aac98769d649c4292b78b3df51eae68ec", null ], + [ "ErrorHandler", "namespaceamrex.html#af6f45c130cacf67455811e9b4829f432", null ], [ "FabSet", "namespaceamrex.html#a15203068a5d8d4de2f3ff93e5e0f21d2", null ], [ "FArrayBoxFactory", "namespaceamrex.html#abda821661019fb0a77eb3a9706dc7330", null ], [ "fBndryData", "namespaceamrex.html#a24fbf2d04e7dac268f7f5cb3af96064e", null ], [ "fBndryRegister", "namespaceamrex.html#abe0f5b82795df17e723853b7c1b8ee7d", null ], [ "fFabSet", "namespaceamrex.html#a25f205ddb2e9488505c2db83a92a5434", null ], [ "fInterpBndryData", "namespaceamrex.html#a56136e9147b36f3e7fcdf12c22760b58", null ], - [ "fMultiFab", "namespaceamrex.html#a7dc0241934cfa7c24ab6afcbe41937bf", null ], + [ "fMultiFab", "namespaceamrex.html#a1df3d6c5876d88132d2b3793984a6b7d", null ], [ "gpuDeviceProp_t", "namespaceamrex.html#a2235406f46755fe4275db8b042b0da92", null ], [ "gpuError_t", "namespaceamrex.html#a98a85f350a96eb36272d756d5a9c9a05", null ], [ "gpuStream_t", "namespaceamrex.html#a3e08759747455ff96c8f68e8673c2b19", null ], @@ -881,7 +881,7 @@ var namespaceamrex = [ "MLMG", "namespaceamrex.html#a77b48f471801c4f6a597804a89c3b543", null ], [ "MLMGBndry", "namespaceamrex.html#a9214b7c07d9c296122f7418f73f798e9", null ], [ "MLPoisson", "namespaceamrex.html#a339ac1b3381df4095a659ec2b7980cb3", null ], - [ "MultiFabId", "namespaceamrex.html#a270e267cbd0e472dd8297d46a9c76854", null ], + [ "MultiFabId", "namespaceamrex.html#a55427a27e71c45e7066414b0accf4a9b", null ], [ "Negation", "namespaceamrex.html#a3d7af06ef9ce2e0a696e5c73f3e460aa", null ], [ "ParConstIter", "namespaceamrex.html#a2d305b9139fd71b059b3ccc82e4daccb", null ], [ "ParConstIterSoA", "namespaceamrex.html#a0bb485c3fc03e02b765bb6954b292455", null ], @@ -891,7 +891,7 @@ var namespaceamrex = [ "ParIterSoA", "namespaceamrex.html#a76cd5e059c7084327b5aaf5385c58162", null ], [ "ParticleContainer", "namespaceamrex.html#a6bed54c912b2795724c1d3c3ba082651", null ], [ "ParticleContainerPureSoA", "namespaceamrex.html#a1543c22ecbd1f8946a5d7b37d08fd7f8", null ], - [ "PTR_TO_VOID_FUNC", "namespaceamrex.html#ace4078f79e7a204048a9fb654f6bd5d6", null ], + [ "PTR_TO_VOID_FUNC", "namespaceamrex.html#a364202ccae0ac53c5c0d1440b8c06dd2", null ], [ "randState_t", "namespaceamrex.html#abbea0a87a768d8f4e8112b9cd673b124", null ], [ "RealArray", "namespaceamrex.html#a9de48c04056551924746c42f9eda3c8f", null ], [ "RuntimeError", "namespaceamrex.html#ac3aaf3d47b0fc6e69f9405fcebcdc4fe", null ], @@ -899,7 +899,7 @@ var namespaceamrex = [ "TracerParIter", "namespaceamrex.html#a2172ed493dfadbd34d5cdb72995f96af", null ], [ "Tuple", "namespaceamrex.html#a00604a127d1bcc6545bea88e8aa906c8", null ], [ "TypeAt", "namespaceamrex.html#a11fcc5e72789252d6182a7d15233725f", null ], - [ "UserFillBox", "namespaceamrex.html#a98089f12c4b65ccc7c3eee58254f9184", null ], + [ "UserFillBox", "namespaceamrex.html#a88781af4a5d3f8271de2b3129cc49393", null ], [ "YAFluxRegister", "namespaceamrex.html#a9418cfdd8457daebb1c971d4e38ceb17", null ], [ "BottomSolver", "namespaceamrex.html#a9303c93b47b7839de8ce552cb7cb21c4", [ [ "Default", "namespaceamrex.html#a9303c93b47b7839de8ce552cb7cb21c4a7a1920d61156abc05a60135aefe8bc67", null ], diff --git a/amrex/docs_html/doxygen/namespaceamrex_1_1Lazy.html b/amrex/docs_html/doxygen/namespaceamrex_1_1Lazy.html index 063547ac33..fab5ffe7d8 100644 --- a/amrex/docs_html/doxygen/namespaceamrex_1_1Lazy.html +++ b/amrex/docs_html/doxygen/namespaceamrex_1_1Lazy.html @@ -106,14 +106,14 @@ - - - - + + + +

Typedefs

typedef std::function< void()> Func
 
typedef std::vector< FuncFuncQue
 
using Func = std::function< void()>
 
using FuncQue = std::vector< Func >
 
- + @@ -122,32 +122,32 @@

Functions

void QueueReduction (Func f)
void QueueReduction (Func f)
 
void EvalReduction ()
 
- +

Variables

FuncQue reduction_queue
FuncQue reduction_queue
 

Typedef Documentation

- -

◆ Func

+ +

◆ Func

- +
typedef std::function<void()> amrex::Lazy::Funcusing amrex::Lazy::Func = typedef std::function<void()>
- -

◆ FuncQue

+ +

◆ FuncQue

- +
typedef std::vector<Func> amrex::Lazy::FuncQueusing amrex::Lazy::FuncQue = typedef std::vector<Func>
diff --git a/amrex/docs_html/doxygen/namespaceamrex_1_1MPMD.html b/amrex/docs_html/doxygen/namespaceamrex_1_1MPMD.html index 59e224e5d9..551e217ed1 100644 --- a/amrex/docs_html/doxygen/namespaceamrex_1_1MPMD.html +++ b/amrex/docs_html/doxygen/namespaceamrex_1_1MPMD.html @@ -111,7 +111,7 @@ - + @@ -151,7 +151,7 @@

Functions

MPI_Comm Initialize (int argc, char *argv[])
MPI_Comm Initialize (int argc, char *argv[])
 
void Finalize ()
 
- + diff --git a/amrex/docs_html/doxygen/namespaceamrex_1_1NonLocalBC.html b/amrex/docs_html/doxygen/namespaceamrex_1_1NonLocalBC.html index 231f133164..eab93c31bc 100644 --- a/amrex/docs_html/doxygen/namespaceamrex_1_1NonLocalBC.html +++ b/amrex/docs_html/doxygen/namespaceamrex_1_1NonLocalBC.html @@ -189,7 +189,7 @@
MPI_Comm amrex::MPMD::Initialize MPI_Comm amrex::MPMD::Initialize ( int  argc,
- + @@ -225,27 +225,27 @@ - + - + - + - + - + - + - + @@ -257,7 +257,7 @@ - + @@ -1069,7 +1069,7 @@

- + @@ -1143,7 +1143,7 @@

- + @@ -1202,7 +1202,7 @@

- + @@ -1246,7 +1246,7 @@

- + @@ -2088,7 +2088,7 @@

- + @@ -2156,7 +2156,7 @@

- + @@ -2206,7 +2206,7 @@

- + @@ -2421,7 +2421,7 @@

- + @@ -2492,7 +2492,7 @@

- + diff --git a/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelAllGather.html b/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelAllGather.html index b483cb81fd..ada8fc0b2d 100644 --- a/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelAllGather.html +++ b/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelAllGather.html @@ -105,10 +105,10 @@ - + - +

Functions

void PrepareCommBuffers (CommData &comm, const FabArrayBase::MapOfCopyComTagContainers &cctc, int n_components, std::size_t object_size, std::size_t align)
void PrepareCommBuffers (CommData &comm, const FabArrayBase::MapOfCopyComTagContainers &cctc, int n_components, std::size_t object_size, std::size_t align)
 Fill all class member variables of comm but the request and the stats vector. More...
 
void PostRecvs (CommData &recv, int mpi_tag)
 Applies the inverse Dim3 to Dim3 mapping onto Boxes. More...
 
template<class FAB , class DTOS = Identity, class Proj = Identity>
std::enable_if_t< IsBaseFab< FAB >) &&IsCallableR< Dim3, DTOS, Dim3 >) &&IsFabProjection< Proj, FAB >)> local_copy_cpu (FabArray< FAB > &dest, const FabArray< FAB > &src, int dcomp, int scomp, int ncomp, FabArrayBase::CopyComTagsContainer const &local_tags, DTOS const &dtos=DTOS{}, Proj const &proj=Proj{}) noexcept
std::enable_if_t< IsBaseFab< FAB >) &&IsCallableR< Dim3, DTOS, Dim3 >) &&IsFabProjection< Proj, FAB >)> local_copy_cpu (FabArray< FAB > &dest, const FabArray< FAB > &src, int dcomp, int scomp, int ncomp, FabArrayBase::CopyComTagsContainer const &local_tags, DTOS const &dtos=DTOS{}, Proj const &proj=Proj{}) noexcept
 
template<class FAB , class DTOS = Identity, class Proj = Identity>
std::enable_if_t< IsBaseFab< FAB >) &&IsCallableR< Dim3, DTOS, Dim3 >) &&IsFabProjection< Proj, FAB >)> unpack_recv_buffer_cpu (FabArray< FAB > &mf, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< FabArrayBase::CopyComTagsContainer const * > const &recv_cctc, DTOS const &dtos=DTOS{}, Proj const &proj=Proj{}) noexcept
std::enable_if_t< IsBaseFab< FAB >) &&IsCallableR< Dim3, DTOS, Dim3 >) &&IsFabProjection< Proj, FAB >)> unpack_recv_buffer_cpu (FabArray< FAB > &mf, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< FabArrayBase::CopyComTagsContainer const * > const &recv_cctc, DTOS const &dtos=DTOS{}, Proj const &proj=Proj{}) noexcept
 
template<class FAB , class DTOS = Identity, class Proj = Identity>
std::enable_if_t< IsBaseFab< FAB >) &&IsCallableR< Dim3, DTOS, Dim3 >) &&IsFabProjection< Proj, FAB >)> local_copy_gpu (FabArray< FAB > &dest, const FabArray< FAB > &src, int dcomp, int scomp, int ncomp, FabArrayBase::CopyComTagsContainer const &local_tags, DTOS const &dtos=DTOS{}, Proj const &proj=Proj{}) noexcept
std::enable_if_t< IsBaseFab< FAB >) &&IsCallableR< Dim3, DTOS, Dim3 >) &&IsFabProjection< Proj, FAB >)> local_copy_gpu (FabArray< FAB > &dest, const FabArray< FAB > &src, int dcomp, int scomp, int ncomp, FabArrayBase::CopyComTagsContainer const &local_tags, DTOS const &dtos=DTOS{}, Proj const &proj=Proj{}) noexcept
 
template<class FAB , class DTOS = Identity, class Proj = Identity>
std::enable_if_t< IsBaseFab< FAB >) &&IsCallableR< Dim3, DTOS, Dim3 >) &&IsFabProjection< Proj, FAB >)> unpack_recv_buffer_gpu (FabArray< FAB > &mf, int scomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< FabArrayBase::CopyComTagsContainer const * > const &recv_cctc, DTOS const &dtos=DTOS{}, Proj const &proj=Proj{})
std::enable_if_t< IsBaseFab< FAB >) &&IsCallableR< Dim3, DTOS, Dim3 >) &&IsFabProjection< Proj, FAB >)> unpack_recv_buffer_gpu (FabArray< FAB > &mf, int scomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< FabArrayBase::CopyComTagsContainer const * > const &recv_cctc, DTOS const &dtos=DTOS{}, Proj const &proj=Proj{})
 
template<typename FAB >
std::enable_if_t< IsBaseFab< FAB >::value > LocalCopy (const PackComponents &components, FabArray< FAB > &dest, const FabArray< FAB > &src, const FabArrayBase::CopyComTagsContainer &local_tags)
std::enable_if_t< IsBaseFab< FAB >::value > LocalCopy (const PackComponents &components, FabArray< FAB > &dest, const FabArray< FAB > &src, const FabArrayBase::CopyComTagsContainer &local_tags)
 Dispatch local copies to the default behaviour that knows no DTOS nor projection. More...
 
template<typename FAB >
std::enable_if_t< IsBaseFab< FAB >::value > PrepareSendBuffers (const PackComponents &components, FabArray< FAB > &dest, const FabArray< FAB > &src, CommData &comm, const FabArrayBase::MapOfCopyComTagContainers &cctc)
std::enable_if_t< IsBaseFab< FAB >::value > PrepareSendBuffers (const PackComponents &components, FabArray< FAB > &dest, const FabArray< FAB > &src, CommData &comm, const FabArrayBase::MapOfCopyComTagContainers &cctc)
 Calls PrepareComBuffers. More...
 
template<typename FAB >
std::enable_if_t< IsBaseFab< FAB >::value > PrepareRecvBuffers (const PackComponents &components, FabArray< FAB > &dest, const FabArray< FAB > &src, CommData &comm, const FabArrayBase::MapOfCopyComTagContainers &cctc)
std::enable_if_t< IsBaseFab< FAB >::value > PrepareRecvBuffers (const PackComponents &components, FabArray< FAB > &dest, const FabArray< FAB > &src, CommData &comm, const FabArrayBase::MapOfCopyComTagContainers &cctc)
 Calls PrepareComBuffers. More...
 
template<typename FAB >
 De-serializes FAB data without any knowledge of a DTOS nor a projection. More...
 
template<typename FAB , typename DTOS , typename FabProj >
std::enable_if_t< IsBaseFab< FAB >::value > LocalCopy (const ApplyDtosAndProjectionOnReciever< DTOS, FabProj > &packing, FabArray< FAB > &dest, const FabArray< FAB > &src, const FabArrayBase::CopyComTagsContainer &local_tags)
std::enable_if_t< IsBaseFab< FAB >::value > LocalCopy (const ApplyDtosAndProjectionOnReciever< DTOS, FabProj > &packing, FabArray< FAB > &dest, const FabArray< FAB > &src, const FabArrayBase::CopyComTagsContainer &local_tags)
 Do local copies of FABs using DTOS and projection. More...
 
template<typename FAB , typename DTOS , typename FabProj >
FabArrayBase::CopyComTagsContainer const & FabArrayBase::CopyComTagsContainer const &  local_tags,
FabArrayBase::CopyComTagsContainer const & FabArrayBase::CopyComTagsContainer const &  local_tags,
const FabArrayBase::CopyComTagsContainerconst FabArrayBase::CopyComTagsContainer local_tags 
const FabArrayBase::CopyComTagsContainerconst FabArrayBase::CopyComTagsContainer local_tags 
const FabArrayBase::MapOfCopyComTagContainersconst FabArrayBase::MapOfCopyComTagContainers cctc,
const FabArrayBase::MapOfCopyComTagContainersconst FabArrayBase::MapOfCopyComTagContainers cctc 
const FabArrayBase::MapOfCopyComTagContainersconst FabArrayBase::MapOfCopyComTagContainers cctc 
Vector< FabArrayBase::CopyComTagsContainer const * > const & Vector< FabArrayBase::CopyComTagsContainer const * > const &  recv_cctc,
Vector< FabArrayBase::CopyComTagsContainer const * > const & Vector< FabArrayBase::CopyComTagsContainer const * > const &  recv_cctc,

Functions

template<typename T >
void AllGather (const T *v, int cnt, T *vs, MPI_Comm comm)
void AllGather (const T *v, int cnt, T *vs, MPI_Comm comm)
 
template<typename T >
void AllGather (const T &v, T *vs, MPI_Comm comm)
void AllGather (const T &v, T *vs, MPI_Comm comm)
 

Function Documentation

@@ -135,7 +135,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -177,7 +177,7 @@

- MPI_Comm  + MPI_Comm  comm  diff --git a/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelAllReduce.html b/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelAllReduce.html index a7df3cd0c5..52b5a9314b 100644 --- a/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelAllReduce.html +++ b/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelAllReduce.html @@ -105,47 +105,47 @@

Functions

template<typename K , typename V > -void Max (KeyValuePair< K, V > &vi, MPI_Comm comm) +void Max (KeyValuePair< K, V > &vi, MPI_Comm comm)   template<typename K , typename V > -void Max (KeyValuePair< K, V > *vi, int cnt, MPI_Comm comm) +void Max (KeyValuePair< K, V > *vi, int cnt, MPI_Comm comm)   template<typename K , typename V > -void Min (KeyValuePair< K, V > &vi, MPI_Comm comm) +void Min (KeyValuePair< K, V > &vi, MPI_Comm comm)   template<typename K , typename V > -void Min (KeyValuePair< K, V > *vi, int cnt, MPI_Comm comm) +void Min (KeyValuePair< K, V > *vi, int cnt, MPI_Comm comm)   template<typename T > -void Max (T &v, MPI_Comm comm) +void Max (T &v, MPI_Comm comm)   template<typename T > -void Max (T *v, int cnt, MPI_Comm comm) +void Max (T *v, int cnt, MPI_Comm comm)   template<typename T > -void Max (Vector< std::reference_wrapper< T > > v, MPI_Comm comm) +void Max (Vector< std::reference_wrapper< T > > v, MPI_Comm comm)   template<typename T > -void Min (T &v, MPI_Comm comm) +void Min (T &v, MPI_Comm comm)   template<typename T > -void Min (T *v, int cnt, MPI_Comm comm) +void Min (T *v, int cnt, MPI_Comm comm)   template<typename T > -void Min (Vector< std::reference_wrapper< T > > v, MPI_Comm comm) +void Min (Vector< std::reference_wrapper< T > > v, MPI_Comm comm)   template<typename T > -void Sum (T &v, MPI_Comm comm) +void Sum (T &v, MPI_Comm comm)   template<typename T > -void Sum (T *v, int cnt, MPI_Comm comm) +void Sum (T *v, int cnt, MPI_Comm comm)   template<typename T > -void Sum (Vector< std::reference_wrapper< T > > v, MPI_Comm comm) +void Sum (Vector< std::reference_wrapper< T > > v, MPI_Comm comm)   -void Or (bool &v, MPI_Comm comm) +void Or (bool &v, MPI_Comm comm)   -void And (bool &v, MPI_Comm comm) +void And (bool &v, MPI_Comm comm)  

Function Documentation

@@ -167,7 +167,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -202,7 +202,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -238,7 +238,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -268,7 +268,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -304,7 +304,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -334,7 +334,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -364,7 +364,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -400,7 +400,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -430,7 +430,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -466,7 +466,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -496,7 +496,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -527,7 +527,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -562,7 +562,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -598,7 +598,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -628,7 +628,7 @@

- MPI_Comm  + MPI_Comm  comm  diff --git a/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelContext.html b/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelContext.html index 53c07de414..14f8838050 100644 --- a/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelContext.html +++ b/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelContext.html @@ -111,10 +111,10 @@ - + - + @@ -132,10 +132,10 @@ - + - + @@ -169,9 +169,9 @@ - + - + @@ -246,7 +246,7 @@

Functions

MPI_Comm CommunicatorAll () noexcept
MPI_Comm CommunicatorAll () noexcept
 world communicator More...
 
MPI_Group GroupAll () noexcept
MPI_Group GroupAll () noexcept
 world group More...
 
int NProcsAll () noexcept
std::ofstream * OFSPtrAll () noexcept
 Pointer to ofstream. More...
 
MPI_Comm CommunicatorSub () noexcept
MPI_Comm CommunicatorSub () noexcept
 sub-communicator for current frame More...
 
MPI_Group GroupSub () noexcept
MPI_Group GroupSub () noexcept
 sub-group for current frame More...
 
int NProcsSub () noexcept
 
void global_to_local_rank (int *local, const int *global, int n) noexcept
 
void push (MPI_Comm c)
void push (MPI_Comm c)
 
void push (MPI_Comm c, int id, int io_rank)
void push (MPI_Comm c, int id, int io_rank)
 
void set_last_frame_ofs (const std::string &filename)
 
- + @@ -273,7 +273,7 @@

MPI_Comm amrex::ParallelContext::CommunicatorAll MPI_Comm amrex::ParallelContext::CommunicatorAll ( )
- + @@ -395,7 +395,7 @@

MPI_Comm amrex::ParallelContext::CommunicatorSub MPI_Comm amrex::ParallelContext::CommunicatorSub ( )
- + @@ -422,7 +422,7 @@

MPI_Group amrex::ParallelContext::GroupAll MPI_Group amrex::ParallelContext::GroupAll ( )
- + @@ -818,7 +818,7 @@

void amrex::ParallelContext::push

- + @@ -844,7 +844,7 @@

void amrex::ParallelContext::push

- + diff --git a/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelDescriptor.html b/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelDescriptor.html index 5f57d5b141..c14ef98d35 100644 --- a/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelDescriptor.html +++ b/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelDescriptor.html @@ -131,7 +131,7 @@
MPI_Group amrex::ParallelContext::GroupSub MPI_Group amrex::ParallelContext::GroupSub ( ) (MPI_Comm MPI_Comm  c)
(MPI_Comm MPI_Comm  c,
- + @@ -148,21 +148,21 @@ - + - + - + - + - + - + @@ -286,18 +286,18 @@ - + - + - + - + - + @@ -319,7 +319,7 @@ - + @@ -340,29 +340,29 @@ - + - + - + - + - + @@ -466,7 +466,7 @@ - + @@ -475,7 +475,7 @@ - + @@ -484,7 +484,7 @@ - + @@ -493,7 +493,7 @@ - + @@ -502,7 +502,7 @@ - + @@ -521,7 +521,7 @@ - + @@ -533,13 +533,13 @@ - + - + - + @@ -578,7 +578,7 @@

Message amrex::ParallelDescriptor::Abarrier

- + @@ -730,7 +730,7 @@

- + @@ -856,7 +856,7 @@

- + @@ -878,7 +878,7 @@

void amrex::ParallelDescriptor::Barrier

- + @@ -980,7 +980,7 @@

- + @@ -1050,7 +1050,7 @@

- + @@ -1062,7 +1062,7 @@

- + @@ -1364,13 +1364,13 @@

void amrex::ParallelDescriptor::Comm_dup

- + - + @@ -1393,7 +1393,7 @@

Functions

void StartParallel (int *argc=nullptr, char ***argv=nullptr, MPI_Comm mpi_comm=MPI_COMM_WORLD)
void StartParallel (int *argc=nullptr, char ***argv=nullptr, MPI_Comm mpi_comm=MPI_COMM_WORLD)
 Perform any needed parallel initialization. This MUST be the first routine in this class called from within a program. More...
 
void Gather (Real const *sendbuf, int nsend, Real *recvbuf, int root)
 
void Barrier (const std::string &)
 
void Barrier (const MPI_Comm &, const std::string &)
void Barrier (const MPI_Comm &, const std::string &)
 
Message Abarrier ()
 
Message Abarrier (const MPI_Comm &)
Message Abarrier (const MPI_Comm &)
 
void Test (MPI_Request &, int &, MPI_Status &)
void Test (MPI_Request &, int &, MPI_Status &)
 
void Test (Vector< MPI_Request > &, int &, Vector< MPI_Status > &)
void Test (Vector< MPI_Request > &, int &, Vector< MPI_Status > &)
 
void IProbe (int, int, int &, MPI_Status &)
 
void IProbe (int, int, MPI_Comm, int &, MPI_Status &)
void IProbe (int, int, MPI_Comm, int &, MPI_Status &)
 
void Comm_dup (MPI_Comm, MPI_Comm &)
void Comm_dup (MPI_Comm, MPI_Comm &)
 
void ReduceRealSum (Vector< std::reference_wrapper< Real > > &&)
 
void ReduceBoolOr (bool &rvar, int cpu)
 Or-wise boolean reduction to specified cpu. More...
 
void Bcast (void *, int, MPI_Datatype, int, MPI_Comm)
void Bcast (void *, int, MPI_Datatype, int, MPI_Comm)
 
double second () noexcept
 Returns wall-clock seconds since start of execution. More...
 
void Wait (MPI_Request &, MPI_Status &)
void Wait (MPI_Request &, MPI_Status &)
 
void Waitall (Vector< MPI_Request > &, Vector< MPI_Status > &)
void Waitall (Vector< MPI_Request > &, Vector< MPI_Status > &)
 
void Waitany (Vector< MPI_Request > &, int &, MPI_Status &)
void Waitany (Vector< MPI_Request > &, int &, MPI_Status &)
 
void Waitsome (Vector< MPI_Request > &, int &, Vector< int > &, Vector< MPI_Status > &)
void Waitsome (Vector< MPI_Request > &, int &, Vector< int > &, Vector< MPI_Status > &)
 
 BL_FORT_PROC_DECL (BL_PD_BARRIER, bl_pd_barrier)()
 
 
 BL_FORT_PROC_DECL (BL_PD_ABORT, bl_pd_abort)()
 
void ReadAndBcastFile (const std::string &filename, Vector< char > &charBuf, bool bExitOnError, const MPI_Comm &comm)
void ReadAndBcastFile (const std::string &filename, Vector< char > &charBuf, bool bExitOnError, const MPI_Comm &comm)
 
void Initialize ()
 
int MyProc () noexcept
 return the rank number local to the current Parallel Context More...
 
int MyProc (MPI_Comm comm) noexcept
int MyProc (MPI_Comm comm) noexcept
 
int MinTag () noexcept
 
int MaxTag () noexcept
 
MPI_Comm Communicator () noexcept
MPI_Comm Communicator () noexcept
 
int NProcsPerNode () noexcept
 
int NProcs () noexcept
 return the number of MPI ranks local to the current Parallel Context More...
 
int NProcs (MPI_Comm comm) noexcept
int NProcs (MPI_Comm comm) noexcept
 
int IOProcessorNumber () noexcept
 
bool IOProcessor () noexcept
 Is this CPU the I/O Processor? To get the rank number, call IOProcessorNumber() More...
 
int IOProcessorNumber (MPI_Comm comm) noexcept
int IOProcessorNumber (MPI_Comm comm) noexcept
 
bool IOProcessor (MPI_Comm comm) noexcept
bool IOProcessor (MPI_Comm comm) noexcept
 
int TeamSize () noexcept
 
Message Asend (const T *, size_t n, int pid, int tag)
 
template<class T >
Message Asend (const T *, size_t n, int pid, int tag, MPI_Comm comm)
Message Asend (const T *, size_t n, int pid, int tag, MPI_Comm comm)
 
template<class T >
Message Asend (const std::vector< T > &buf, int pid, int tag)
Message Arecv (T *, size_t n, int pid, int tag)
 
template<class T >
Message Arecv (T *, size_t n, int pid, int tag, MPI_Comm comm)
Message Arecv (T *, size_t n, int pid, int tag, MPI_Comm comm)
 
template<class T >
Message Arecv (std::vector< T > &buf, int pid, int tag)
Message Send (const T *buf, size_t n, int dst_pid, int tag)
 
template<class T >
Message Send (const T *buf, size_t n, int dst_pid, int tag, MPI_Comm comm)
Message Send (const T *buf, size_t n, int dst_pid, int tag, MPI_Comm comm)
 
template<class T >
Message Send (const std::vector< T > &buf, int dst_pid, int tag)
Message Recv (T *, size_t n, int pid, int tag)
 
template<class T >
Message Recv (T *, size_t n, int pid, int tag, MPI_Comm comm)
Message Recv (T *, size_t n, int pid, int tag, MPI_Comm comm)
 
template<class T >
Message Recv (std::vector< T > &buf, int pid, int tag)
void Bcast (T *, size_t n, int root=0)
 
template<class T >
void Bcast (T *, size_t n, int root, const MPI_Comm &comm)
void Bcast (T *, size_t n, int root, const MPI_Comm &comm)
 
template<class T , class T1 >
void Scatter (T *, size_t n, const T1 *, size_t n1, int root)
 Gather LayoutData values to a vector on root. More...
 
template<typename T , typename F >
MPI_Op Mpi_op ()
MPI_Op Mpi_op ()
 
template<>
void Bcast (Box *b, size_t n, int root)
 
ProcessTeam m_Team
 
MPI_Comm m_comm = MPI_COMM_NULL
MPI_Comm m_comm = MPI_COMM_NULL
 
int m_nprocs_per_node = 1
 
Vector< MPI_Datatype * > m_mpi_types
Vector< MPI_Datatype * > m_mpi_types
 
Vector< MPI_Op * > m_mpi_ops
Vector< MPI_Op * > m_mpi_ops
 
int m_MinTag = 1000
 
(const MPI_Commconst MPI_Comm )
MPI_Comm MPI_Comm  comm 
MPI_Comm MPI_Comm  comm 
(const MPI_Commconst MPI_Comm ,
const MPI_Commconst MPI_Comm comm 
MPI_Datatype MPI_Datatype  ,
MPI_Comm MPI_Comm   
(MPI_Comm MPI_Comm  ,
MPI_CommMPI_Comm  
- + @@ -1774,7 +1774,7 @@

bool amrex::ParallelDescriptor::IOProcessor

- + @@ -1825,7 +1825,7 @@

int amrex::ParallelDescriptor::IOProcessorNumber

- + @@ -1900,7 +1900,7 @@

- + @@ -2035,7 +2035,7 @@

- + @@ -2084,7 +2084,7 @@

int amrex::ParallelDescriptor::MyProc

- + @@ -2237,7 +2237,7 @@

int amrex::ParallelDescriptor::NProcs

- + @@ -2355,7 +2355,7 @@

- + @@ -2481,7 +2481,7 @@

- + @@ -4598,7 +4598,7 @@

- + @@ -4659,7 +4659,7 @@

- + @@ -4928,7 +4928,7 @@

void amrex::ParallelDescriptor::Test

- + @@ -4962,7 +4962,7 @@

void amrex::ParallelDescriptor::Test

- + @@ -5041,7 +5041,7 @@

void amrex::ParallelDescriptor::Wait

- + @@ -5069,7 +5069,7 @@

void amrex::ParallelDescriptor::Waitall

- + @@ -5097,7 +5097,7 @@

void amrex::ParallelDescriptor::Waitany

- + @@ -5131,7 +5131,7 @@

void amrex::ParallelDescriptor::Waitsome

- + @@ -5186,7 +5186,7 @@

MPI_Comm amrex::ParallelDescriptor::Communicator MPI_Comm amrex::ParallelDescriptor::Communicator ( ) (MPI_Comm MPI_Comm  comm)
(MPI_Comm MPI_Comm  comm)
MPI_Comm MPI_Comm  ,
MPI_Op amrex::ParallelDescriptor::Mpi_op MPI_Op amrex::ParallelDescriptor::Mpi_op ( ) (MPI_Comm MPI_Comm  comm)
(MPI_Comm MPI_Comm  comm)
const MPI_Commconst MPI_Comm comm 
MPI_Comm MPI_Comm  comm 
MPI_Comm MPI_Comm  comm 
MPI_Comm MPI_Comm   
(MPI_RequestMPI_Request ,
(Vector< MPI_Request > & Vector< MPI_Request > &  ,
(MPI_RequestMPI_Request ,
(Vector< MPI_Request > & Vector< MPI_Request > &  ,
(Vector< MPI_Request > & Vector< MPI_Request > &  ,
(Vector< MPI_Request > & Vector< MPI_Request > &  ,
- +
AMREX_EXPORT MPI_Comm amrex::ParallelDescriptor::m_comm = MPI_COMM_NULLAMREX_EXPORT MPI_Comm amrex::ParallelDescriptor::m_comm = MPI_COMM_NULL

diff --git a/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelDescriptor_1_1detail.html b/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelDescriptor_1_1detail.html index 3db2b0cd48..548a703c92 100644 --- a/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelDescriptor_1_1detail.html +++ b/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelDescriptor_1_1detail.html @@ -105,10 +105,10 @@

Functions

template<typename T > -void DoAllReduce (T *r, MPI_Op op, int cnt) +void DoAllReduce (T *r, MPI_Op op, int cnt)   template<typename T > -void DoReduce (T *r, MPI_Op op, int cnt, int cpu) +void DoReduce (T *r, MPI_Op op, int cnt, int cpu)  

Function Documentation

@@ -129,7 +129,7 @@

- MPI_Op  + MPI_Op  op, @@ -165,7 +165,7 @@

- MPI_Op  + MPI_Op  op, diff --git a/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelGather.html b/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelGather.html index 6703e46f6b..691023c0f6 100644 --- a/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelGather.html +++ b/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelGather.html @@ -105,10 +105,10 @@

Functions

template<typename T > -void Gather (const T *v, int cnt, T *vs, int root, MPI_Comm comm) +void Gather (const T *v, int cnt, T *vs, int root, MPI_Comm comm)   template<typename T > -void Gather (const T &v, T *vs, int root, MPI_Comm comm) +void Gather (const T &v, T *vs, int root, MPI_Comm comm)  

Function Documentation

@@ -141,7 +141,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -189,7 +189,7 @@

- MPI_Comm  + MPI_Comm  comm  diff --git a/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelReduce.html b/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelReduce.html index 0d002496f0..e99f24f703 100644 --- a/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelReduce.html +++ b/amrex/docs_html/doxygen/namespaceamrex_1_1ParallelReduce.html @@ -105,47 +105,47 @@

Functions

template<typename K , typename V > -void Max (KeyValuePair< K, V > &vi, int root, MPI_Comm comm) +void Max (KeyValuePair< K, V > &vi, int root, MPI_Comm comm)   template<typename K , typename V > -void Max (KeyValuePair< K, V > *vi, int cnt, int root, MPI_Comm comm) +void Max (KeyValuePair< K, V > *vi, int cnt, int root, MPI_Comm comm)   template<typename K , typename V > -void Min (KeyValuePair< K, V > &vi, int root, MPI_Comm comm) +void Min (KeyValuePair< K, V > &vi, int root, MPI_Comm comm)   template<typename K , typename V > -void Min (KeyValuePair< K, V > *vi, int cnt, int root, MPI_Comm comm) +void Min (KeyValuePair< K, V > *vi, int cnt, int root, MPI_Comm comm)   template<typename T > -void Max (T &v, int root, MPI_Comm comm) +void Max (T &v, int root, MPI_Comm comm)   template<typename T > -void Max (T *v, int cnt, int root, MPI_Comm comm) +void Max (T *v, int cnt, int root, MPI_Comm comm)   template<typename T > -void Max (Vector< std::reference_wrapper< T > > v, int root, MPI_Comm comm) +void Max (Vector< std::reference_wrapper< T > > v, int root, MPI_Comm comm)   template<typename T > -void Min (T &v, int root, MPI_Comm comm) +void Min (T &v, int root, MPI_Comm comm)   template<typename T > -void Min (T *v, int cnt, int root, MPI_Comm comm) +void Min (T *v, int cnt, int root, MPI_Comm comm)   template<typename T > -void Min (Vector< std::reference_wrapper< T > > v, int root, MPI_Comm comm) +void Min (Vector< std::reference_wrapper< T > > v, int root, MPI_Comm comm)   template<typename T > -void Sum (T &v, int root, MPI_Comm comm) +void Sum (T &v, int root, MPI_Comm comm)   template<typename T > -void Sum (T *v, int cnt, int root, MPI_Comm comm) +void Sum (T *v, int cnt, int root, MPI_Comm comm)   template<typename T > -void Sum (Vector< std::reference_wrapper< T > > v, int root, MPI_Comm comm) +void Sum (Vector< std::reference_wrapper< T > > v, int root, MPI_Comm comm)   -void Or (bool &v, int root, MPI_Comm comm) +void Or (bool &v, int root, MPI_Comm comm)   -void And (bool &v, int root, MPI_Comm comm) +void And (bool &v, int root, MPI_Comm comm)  

Function Documentation

@@ -173,7 +173,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -214,7 +214,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -256,7 +256,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -292,7 +292,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -334,7 +334,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -370,7 +370,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -406,7 +406,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -448,7 +448,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -484,7 +484,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -526,7 +526,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -562,7 +562,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -599,7 +599,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -640,7 +640,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -682,7 +682,7 @@

- MPI_Comm  + MPI_Comm  comm  @@ -718,7 +718,7 @@

- MPI_Comm  + MPI_Comm  comm  diff --git a/amrex/docs_html/doxygen/namespaceamrex_1_1detail.html b/amrex/docs_html/doxygen/namespaceamrex_1_1detail.html index 3447590b5c..d27ab4ead9 100644 --- a/amrex/docs_html/doxygen/namespaceamrex_1_1detail.html +++ b/amrex/docs_html/doxygen/namespaceamrex_1_1detail.html @@ -208,19 +208,19 @@ void destroy_par_for_nblocks (char *hp, char *dp)   template<typename T > -void Reduce (ReduceOp, T *, int, int, MPI_Comm) +void Reduce (ReduceOp, T *, int, int, MPI_Comm)   template<typename T > -void Reduce (ReduceOp, T &, int, MPI_Comm) +void Reduce (ReduceOp, T &, int, MPI_Comm)   template<typename T > -void Reduce (ReduceOp, Vector< std::reference_wrapper< T > > const &, int, MPI_Comm) +void Reduce (ReduceOp, Vector< std::reference_wrapper< T > > const &, int, MPI_Comm)   template<typename T > -void Gather (const T *, int, T *, int, MPI_Comm) +void Gather (const T *, int, T *, int, MPI_Comm)   template<typename T > -void Gather (const T &, T *, int, MPI_Comm) +void Gather (const T &, T *, int, MPI_Comm)   template<typename T , typename F > int amrex_partition_helper (T const *AMREX_RESTRICT pv, T *AMREX_RESTRICT pv2, int n, F &&f) @@ -1388,7 +1388,7 @@

- MPI_Comm  + MPI_Comm    @@ -1436,7 +1436,7 @@

- MPI_Comm  + MPI_Comm    @@ -2082,7 +2082,7 @@

- MPI_Comm  + MPI_Comm    @@ -2130,7 +2130,7 @@

- MPI_Comm  + MPI_Comm    @@ -2172,7 +2172,7 @@

- MPI_Comm  + MPI_Comm    diff --git a/amrex/docs_html/doxygen/namespaceamrex_1_1openbc.html b/amrex/docs_html/doxygen/namespaceamrex_1_1openbc.html index 2db74e703c..3770d6d6d8 100644 --- a/amrex/docs_html/doxygen/namespaceamrex_1_1openbc.html +++ b/amrex/docs_html/doxygen/namespaceamrex_1_1openbc.html @@ -115,7 +115,7 @@ Functions

std::ostream & operator<< (std::ostream &os, Moments const &mom)   -AMREX_GPU_DEVICE AMREX_FORCE_INLINE void scale_moments (openbc::Moments::array_type &mom) +AMREX_GPU_DEVICE AMREX_FORCE_INLINE void scale_moments (openbc::Moments::array_type &mom)   AMREX_GPU_DEVICE AMREX_FORCE_INLINE Real block_potential (openbc::Moments const &mom, Real xb, Real yb, Real zb)   @@ -391,7 +391,7 @@

AMREX_GPU_DEVICE AMREX_FORCE_INLINE void amrex::openbc::scale_moments ( - openbc::Moments::array_type &  + openbc::Moments::array_typemom) diff --git a/amrex/docs_html/doxygen/namespaceamrex_1_1sundials.html b/amrex/docs_html/doxygen/namespaceamrex_1_1sundials.html index c7a46e89b3..912e54516b 100644 --- a/amrex/docs_html/doxygen/namespaceamrex_1_1sundials.html +++ b/amrex/docs_html/doxygen/namespaceamrex_1_1sundials.html @@ -131,7 +131,7 @@   void N_VSpace_MultiFab (N_Vector v, sunindextype *lrw, sunindextype *liw)   -N_VectorContent_MultiFab N_VGetContent_MultiFab (N_Vector v) +N_VectorContent_MultiFab N_VGetContent_MultiFab (N_Vector v)   amrex::MultiFab *& getMFptr (N_Vector v)   @@ -568,7 +568,7 @@

- + diff --git a/amrex/docs_html/doxygen/namespaceamrex_1_1system.html b/amrex/docs_html/doxygen/namespaceamrex_1_1system.html index e30261d232..b808b09e4e 100644 --- a/amrex/docs_html/doxygen/namespaceamrex_1_1system.html +++ b/amrex/docs_html/doxygen/namespaceamrex_1_1system.html @@ -132,7 +132,7 @@ - + @@ -197,7 +197,7 @@

N_VectorContent_MultiFab amrex::sundials::N_VGetContent_MultiFab N_VectorContent_MultiFab amrex::sundials::N_VGetContent_MultiFab ( N_Vector  v)
 
std::ostream * oserr = &std::cerr
 
ErrorHandler error_handler = nullptr
ErrorHandler error_handler = nullptr
 
constexpr bool NDebug = true
 
- +
AMREX_EXPORT ErrorHandler amrex::system::error_handler = nullptrAMREX_EXPORT ErrorHandler amrex::system::error_handler = nullptr

diff --git a/amrex/docs_html/doxygen/namespacemembers_b.html b/amrex/docs_html/doxygen/namespacemembers_b.html index e11eacce5d..b4e3c7911f 100644 --- a/amrex/docs_html/doxygen/namespacemembers_b.html +++ b/amrex/docs_html/doxygen/namespacemembers_b.html @@ -257,13 +257,13 @@

- b -

    : amrex
  • BndryFunc3DDefault -: amrex +: amrex
  • BndryFuncDefault -: amrex +: amrex
  • BndryFuncFabDefault -: amrex +: amrex
  • BndryRegister : amrex diff --git a/amrex/docs_html/doxygen/namespacemembers_d.html b/amrex/docs_html/doxygen/namespacemembers_d.html index 62974f5ae6..b1c721b717 100644 --- a/amrex/docs_html/doxygen/namespacemembers_d.html +++ b/amrex/docs_html/doxygen/namespacemembers_d.html @@ -129,13 +129,13 @@

    - d -

      : amrex
    • DeriveFunc -: amrex +: amrex
    • DeriveFunc3D -: amrex +: amrex
    • DeriveFuncFab -: amrex +: amrex
    • destroy_par_for_nblocks() : amrex::detail diff --git a/amrex/docs_html/doxygen/namespacemembers_e.html b/amrex/docs_html/doxygen/namespacemembers_e.html index dd417ca668..acdf0b6694 100644 --- a/amrex/docs_html/doxygen/namespacemembers_e.html +++ b/amrex/docs_html/doxygen/namespacemembers_e.html @@ -294,16 +294,16 @@

      - e -

diff --git a/amrex/docs_html/doxygen/namespacemembers_m.html b/amrex/docs_html/doxygen/namespacemembers_m.html index 18253d6540..1f95fb30a9 100644 --- a/amrex/docs_html/doxygen/namespacemembers_m.html +++ b/amrex/docs_html/doxygen/namespacemembers_m.html @@ -1066,7 +1066,7 @@

- m -