aboutsummaryrefslogtreecommitdiff
path: root/Source/Utils/WarpXUtil.cpp
diff options
context:
space:
mode:
authorGravatar David Grote <grote1@llnl.gov> 2022-05-11 17:25:42 -0700
committerGravatar GitHub <noreply@github.com> 2022-05-11 17:25:42 -0700
commit31f7a455a6cfd587ff15f87e804d7df1b4c98e15 (patch)
treefd964aeedbdacf4bbd0830c39b9a5a6af3561e17 /Source/Utils/WarpXUtil.cpp
parente836ce9cfd40432bff46fe9c58b3e8c2d2f9f284 (diff)
downloadWarpX-31f7a455a6cfd587ff15f87e804d7df1b4c98e15.tar.gz
WarpX-31f7a455a6cfd587ff15f87e804d7df1b4c98e15.tar.zst
WarpX-31f7a455a6cfd587ff15f87e804d7df1b4c98e15.zip
Fix Mirrors for RZ (NullifyMF) (#3101)
Diffstat (limited to '')
-rw-r--r--Source/Utils/WarpXUtil.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/Source/Utils/WarpXUtil.cpp b/Source/Utils/WarpXUtil.cpp
index 8919b0fa7..dec9925d1 100644
--- a/Source/Utils/WarpXUtil.cpp
+++ b/Source/Utils/WarpXUtil.cpp
@@ -214,6 +214,7 @@ void ConvertLabParamsToBoost()
*/
void NullifyMF(amrex::MultiFab& mf, int lev, amrex::Real zmin, amrex::Real zmax){
WARPX_PROFILE("WarpXUtil::NullifyMF()");
+ int const ncomp = mf.nComp();
#ifdef AMREX_USE_OMP
#pragma omp parallel if (Gpu::notInLaunchRegion())
#endif
@@ -235,8 +236,8 @@ void NullifyMF(amrex::MultiFab& mf, int lev, amrex::Real zmin, amrex::Real zmax)
if ( (zmax>zmin_box && zmin<=zmax_box) ){
Array4<Real> arr = mf[mfi].array();
// Set field to 0 between zmin and zmax
- ParallelFor(bx,
- [=] AMREX_GPU_DEVICE(int i, int j, int k) noexcept{
+ ParallelFor(bx, ncomp,
+ [=] AMREX_GPU_DEVICE(int i, int j, int k, int n) noexcept{
#if defined(WARPX_DIM_3D)
const Real z_gridpoint = zmin_box+(k-lo_ind)*dz;
#elif defined(WARPX_DIM_XZ) || defined(WARPX_DIM_RZ)
@@ -245,7 +246,7 @@ void NullifyMF(amrex::MultiFab& mf, int lev, amrex::Real zmin, amrex::Real zmax)
const Real z_gridpoint = zmin_box+(i-lo_ind)*dz;
#endif
if ( (z_gridpoint >= zmin) && (z_gridpoint < zmax) ) {
- arr(i,j,k) = 0.;
+ arr(i,j,k,n) = 0.;
}
}
);