aboutsummaryrefslogtreecommitdiff
path: root/Source/Utils/WarpXMovingWindow.cpp
diff options
context:
space:
mode:
authorGravatar MaxThevenet <mthevenet@lbl.gov> 2019-10-30 11:40:55 -0700
committerGravatar MaxThevenet <mthevenet@lbl.gov> 2019-10-30 11:40:55 -0700
commitcba96cce872c78a5960097490fc80d0ae14f6bd7 (patch)
tree585e526aae2d4e057f81def2aee350f4b83db20a /Source/Utils/WarpXMovingWindow.cpp
parent0fe1905133033f128b235a14b04135c064800521 (diff)
downloadWarpX-cba96cce872c78a5960097490fc80d0ae14f6bd7.tar.gz
WarpX-cba96cce872c78a5960097490fc80d0ae14f6bd7.tar.zst
WarpX-cba96cce872c78a5960097490fc80d0ae14f6bd7.zip
no need to pass ng in ShiftMF
Diffstat (limited to 'Source/Utils/WarpXMovingWindow.cpp')
-rw-r--r--Source/Utils/WarpXMovingWindow.cpp52
1 files changed, 24 insertions, 28 deletions
diff --git a/Source/Utils/WarpXMovingWindow.cpp b/Source/Utils/WarpXMovingWindow.cpp
index 59810d817..db58ad53c 100644
--- a/Source/Utils/WarpXMovingWindow.cpp
+++ b/Source/Utils/WarpXMovingWindow.cpp
@@ -99,34 +99,32 @@ WarpX::MoveWindow (bool move_j)
for (int dim = 0; dim < 3; ++dim) {
// Fine grid
- shiftMF(*Bfield_fp[lev][dim], geom[lev], num_shift, dir, guard_cells.ngE, B_external_grid[dim]);
- shiftMF(*Efield_fp[lev][dim], geom[lev], num_shift, dir, guard_cells.ngE, E_external_grid[dim]);
+ shiftMF(*Bfield_fp[lev][dim], geom[lev], num_shift, dir, B_external_grid[dim]);
+ shiftMF(*Efield_fp[lev][dim], geom[lev], num_shift, dir, E_external_grid[dim]);
if (move_j) {
- shiftMF(*current_fp[lev][dim], geom[lev], num_shift, dir, guard_cells.ngJ);
+ shiftMF(*current_fp[lev][dim], geom[lev], num_shift, dir);
}
if (do_pml && pml[lev]->ok()) {
const std::array<MultiFab*, 3>& pml_B = pml[lev]->GetB_fp();
const std::array<MultiFab*, 3>& pml_E = pml[lev]->GetE_fp();
- IntVect ng_exchange = pml_B[dim]->nGrowVect();
- shiftMF(*pml_B[dim], geom[lev], num_shift, dir, ng_exchange);
- shiftMF(*pml_E[dim], geom[lev], num_shift, dir, ng_exchange);
+ shiftMF(*pml_B[dim], geom[lev], num_shift, dir);
+ shiftMF(*pml_E[dim], geom[lev], num_shift, dir);
}
if (lev > 0) {
// Coarse grid
- shiftMF(*Bfield_cp[lev][dim], geom[lev-1], num_shift_crse, dir, guard_cells.ngE, B_external_grid[dim]);
- shiftMF(*Efield_cp[lev][dim], geom[lev-1], num_shift_crse, dir, guard_cells.ngE, E_external_grid[dim]);
- shiftMF(*Bfield_aux[lev][dim], geom[lev], num_shift, dir, guard_cells.ngE);
- shiftMF(*Efield_aux[lev][dim], geom[lev], num_shift, dir, guard_cells.ngE);
+ shiftMF(*Bfield_cp[lev][dim], geom[lev-1], num_shift_crse, dir, B_external_grid[dim]);
+ shiftMF(*Efield_cp[lev][dim], geom[lev-1], num_shift_crse, dir, E_external_grid[dim]);
+ shiftMF(*Bfield_aux[lev][dim], geom[lev], num_shift, dir);
+ shiftMF(*Efield_aux[lev][dim], geom[lev], num_shift, dir);
if (move_j) {
- shiftMF(*current_cp[lev][dim], geom[lev-1], num_shift_crse, dir, guard_cells.ngJ);
+ shiftMF(*current_cp[lev][dim], geom[lev-1], num_shift_crse, dir);
}
if (do_pml && pml[lev]->ok()) {
const std::array<MultiFab*, 3>& pml_B = pml[lev]->GetB_cp();
const std::array<MultiFab*, 3>& pml_E = pml[lev]->GetE_cp();
- IntVect ng_exchange = pml_B[dim]->nGrowVect();
- shiftMF(*pml_B[dim], geom[lev-1], num_shift_crse, dir, ng_exchange);
- shiftMF(*pml_E[dim], geom[lev-1], num_shift_crse, dir, ng_exchange);
+ shiftMF(*pml_B[dim], geom[lev-1], num_shift_crse, dir);
+ shiftMF(*pml_E[dim], geom[lev-1], num_shift_crse, dir);
}
}
}
@@ -134,21 +132,19 @@ WarpX::MoveWindow (bool move_j)
// Shift scalar component F for dive cleaning
if (do_dive_cleaning) {
// Fine grid
- shiftMF(*F_fp[lev], geom[lev], num_shift, dir, guard_cells.ngF);
+ shiftMF(*F_fp[lev], geom[lev], num_shift, dir);
if (do_pml && pml[lev]->ok()) {
MultiFab* pml_F = pml[lev]->GetF_fp();
- IntVect ng_exchange = pml_F->nGrowVect();
- shiftMF(*pml_F, geom[lev], num_shift, dir, ng_exchange);
+ shiftMF(*pml_F, geom[lev], num_shift, dir);
}
if (lev > 0) {
// Coarse grid
- shiftMF(*F_cp[lev], geom[lev-1], num_shift_crse, dir, guard_cells.ngF);
+ shiftMF(*F_cp[lev], geom[lev-1], num_shift_crse, dir);
if (do_pml && pml[lev]->ok()) {
MultiFab* pml_F = pml[lev]->GetF_cp();
- IntVect ng_exchange = pml_F->nGrowVect();
- shiftMF(*pml_F, geom[lev-1], num_shift_crse, dir, ng_exchange);
+ shiftMF(*pml_F, geom[lev-1], num_shift_crse, dir);
}
- shiftMF(*rho_cp[lev], geom[lev-1], num_shift_crse, dir, guard_cells.ngRho);
+ shiftMF(*rho_cp[lev], geom[lev-1], num_shift_crse, dir);
}
}
@@ -156,10 +152,10 @@ WarpX::MoveWindow (bool move_j)
if (move_j) {
if (rho_fp[lev]){
// Fine grid
- shiftMF(*rho_fp[lev], geom[lev], num_shift, dir, guard_cells.ngRho);
+ shiftMF(*rho_fp[lev], geom[lev], num_shift, dir);
if (lev > 0){
// Coarse grid
- shiftMF(*rho_cp[lev], geom[lev-1], num_shift_crse, dir, guard_cells.ngRho);
+ shiftMF(*rho_cp[lev], geom[lev-1], num_shift_crse, dir);
}
}
}
@@ -208,7 +204,7 @@ WarpX::MoveWindow (bool move_j)
void
WarpX::shiftMF (MultiFab& mf, const Geometry& geom, int num_shift, int dir,
- IntVect ng_exchange, amrex::Real external_field)
+ amrex::Real external_field)
{
BL_PROFILE("WarpX::shiftMF()");
const BoxArray& ba = mf.boxArray();
@@ -222,11 +218,11 @@ WarpX::shiftMF (MultiFab& mf, const Geometry& geom, int num_shift, int dir,
MultiFab::Copy(tmpmf, mf, 0, 0, nc, ng);
// Not sure why this is needed, but it is...
- ng_exchange[0] = 1;
- ng_exchange[1] = num_shift; // 2
- Print()<<"ng_exchange "<<ng_exchange<<'\n';
+ IntVect ng_mw = IntVect::TheUnitVector();
+ ng_mw[dir] = num_shift;
+ Print()<<"ng_mw "<<ng_mw<<'\n';
- tmpmf.FillBoundary(0, tmpmf.nComp(), ng_exchange, geom.periodicity());
+ tmpmf.FillBoundary(0, tmpmf.nComp(), ng_mw, geom.periodicity());