diff options
author | 2022-05-11 17:25:42 -0700 | |
---|---|---|
committer | 2022-05-11 17:25:42 -0700 | |
commit | 31f7a455a6cfd587ff15f87e804d7df1b4c98e15 (patch) | |
tree | fd964aeedbdacf4bbd0830c39b9a5a6af3561e17 /Source/Utils/WarpXUtil.cpp | |
parent | e836ce9cfd40432bff46fe9c58b3e8c2d2f9f284 (diff) | |
download | WarpX-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.cpp | 7 |
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.; } } ); |