aboutsummaryrefslogtreecommitdiff
path: root/Source/WarpX.cpp
diff options
context:
space:
mode:
authorGravatar Edoardo Zoni <ezoni@lbl.gov> 2020-02-06 17:04:55 -0800
committerGravatar Edoardo Zoni <ezoni@lbl.gov> 2020-02-06 17:04:58 -0800
commit76ae5e84dfa06f3396cc9f08864c50094db8ef85 (patch)
tree928f054e071cccd7294c64594c367d580f776776 /Source/WarpX.cpp
parent134050709489064885d44b1aa6113e9df90c6a60 (diff)
downloadWarpX-76ae5e84dfa06f3396cc9f08864c50094db8ef85.tar.gz
WarpX-76ae5e84dfa06f3396cc9f08864c50094db8ef85.tar.zst
WarpX-76ae5e84dfa06f3396cc9f08864c50094db8ef85.zip
Implement PR requested improvements:
- modify interface of new function 'BuildBufferMasksInBox'; - add brief Doxygen documentation.
Diffstat (limited to 'Source/WarpX.cpp')
-rw-r--r--Source/WarpX.cpp18
1 files changed, 13 insertions, 5 deletions
diff --git a/Source/WarpX.cpp b/Source/WarpX.cpp
index 92ea26d13..71bd86070 100644
--- a/Source/WarpX.cpp
+++ b/Source/WarpX.cpp
@@ -1280,22 +1280,30 @@ WarpX::BuildBufferMasks ()
for (MFIter mfi(*bmasks, true); mfi.isValid(); ++mfi)
{
const Box tbx = mfi.growntilebox();
- Array4<int> msk = (*bmasks)[mfi].array();
- Array4<int> gmsk = tmp[mfi].array();
- // Build buffer mask within current FArrayBox
- BuildBufferMasksInBox( tbx, msk, gmsk, ngbuffer );
+ BuildBufferMasksInBox( tbx, (*bmasks)[mfi], tmp[mfi], ngbuffer );
}
}
}
}
}
+/**
+ * \brief Build buffer mask within given FArrayBox
+ *
+ * \param tbx Current FArrayBox
+ * \param buffer_mask Buffer mask to be set
+ * \param guard_mask Guard mask used to set buffer_mask
+ * \param ng Number of guard cells
+ */
void
-WarpX::BuildBufferMasksInBox ( const Box tbx, Array4<int> &msk, const Array4<int> gmsk, const int ng )
+WarpX::BuildBufferMasksInBox ( const amrex::Box tbx, amrex::IArrayBox &buffer_mask,
+ const amrex::IArrayBox &guard_mask, const int ng )
{
bool setnull;
const auto lo = amrex::lbound( tbx );
const auto hi = amrex::ubound( tbx );
+ Array4<int> msk = buffer_mask.array();
+ Array4<int const> gmsk = guard_mask.array();
#if (AMREX_SPACEDIM == 2)
int k = lo.z;
for (int j = lo.y; j <= hi.y; ++j) {