aboutsummaryrefslogtreecommitdiff
path: root/Source/Evolve/WarpXEvolve.cpp
diff options
context:
space:
mode:
authorGravatar Remi Lehe <remi.lehe@normalesup.org> 2022-10-08 17:28:44 -0700
committerGravatar GitHub <noreply@github.com> 2022-10-08 17:28:44 -0700
commit56e04c1b911f9399662c4ff9ecf6630d686cc220 (patch)
tree01c0461e02cdd2a5adbe1ff6be0c87b24062a843 /Source/Evolve/WarpXEvolve.cpp
parentacb7f1d78b9ef2644dd8cd08a7eca04e17df06fa (diff)
downloadWarpX-56e04c1b911f9399662c4ff9ecf6630d686cc220.tar.gz
WarpX-56e04c1b911f9399662c4ff9ecf6630d686cc220.tar.zst
WarpX-56e04c1b911f9399662c4ff9ecf6630d686cc220.zip
Fix synchronization of nodal points in subcycling (#3455)
* Fix synchronization of nodal points in subcycling * Update checksum
Diffstat (limited to 'Source/Evolve/WarpXEvolve.cpp')
-rw-r--r--Source/Evolve/WarpXEvolve.cpp16
1 files changed, 10 insertions, 6 deletions
diff --git a/Source/Evolve/WarpXEvolve.cpp b/Source/Evolve/WarpXEvolve.cpp
index 202e91643..717adbedd 100644
--- a/Source/Evolve/WarpXEvolve.cpp
+++ b/Source/Evolve/WarpXEvolve.cpp
@@ -733,8 +733,10 @@ WarpX::OneStep_sub1 (Real curtime)
EvolveB(fine_lev, PatchType::fine, 0.5_rt*dt[fine_lev], DtType::FirstHalf);
EvolveF(fine_lev, PatchType::fine, 0.5_rt*dt[fine_lev], DtType::FirstHalf);
- FillBoundaryB(fine_lev, PatchType::fine, guard_cells.ng_FieldSolver);
- FillBoundaryF(fine_lev, PatchType::fine, guard_cells.ng_alloc_F);
+ FillBoundaryB(fine_lev, PatchType::fine, guard_cells.ng_FieldSolver,
+ WarpX::sync_nodal_points);
+ FillBoundaryF(fine_lev, PatchType::fine, guard_cells.ng_alloc_F,
+ WarpX::sync_nodal_points);
EvolveE(fine_lev, PatchType::fine, dt[fine_lev]);
FillBoundaryE(fine_lev, PatchType::fine, guard_cells.ng_FieldGather);
@@ -768,8 +770,10 @@ WarpX::OneStep_sub1 (Real curtime)
EvolveB(coarse_lev, PatchType::fine, 0.5_rt*dt[coarse_lev], DtType::FirstHalf);
EvolveF(coarse_lev, PatchType::fine, 0.5_rt*dt[coarse_lev], DtType::FirstHalf);
- FillBoundaryB(coarse_lev, PatchType::fine, guard_cells.ng_FieldGather);
- FillBoundaryF(coarse_lev, PatchType::fine, guard_cells.ng_FieldSolverF);
+ FillBoundaryB(coarse_lev, PatchType::fine, guard_cells.ng_FieldGather,
+ WarpX::sync_nodal_points);
+ FillBoundaryF(coarse_lev, PatchType::fine, guard_cells.ng_FieldSolverF,
+ WarpX::sync_nodal_points);
EvolveE(coarse_lev, PatchType::fine, 0.5_rt*dt[coarse_lev]);
FillBoundaryE(coarse_lev, PatchType::fine, guard_cells.ng_FieldGather);
@@ -794,7 +798,8 @@ WarpX::OneStep_sub1 (Real curtime)
FillBoundaryF(fine_lev, PatchType::fine, guard_cells.ng_FieldSolverF);
EvolveE(fine_lev, PatchType::fine, dt[fine_lev]);
- FillBoundaryE(fine_lev, PatchType::fine, guard_cells.ng_FieldSolver);
+ FillBoundaryE(fine_lev, PatchType::fine, guard_cells.ng_FieldSolver,
+ WarpX::sync_nodal_points);
EvolveB(fine_lev, PatchType::fine, 0.5_rt*dt[fine_lev], DtType::SecondHalf);
EvolveF(fine_lev, PatchType::fine, 0.5_rt*dt[fine_lev], DtType::SecondHalf);
@@ -830,7 +835,6 @@ WarpX::OneStep_sub1 (Real curtime)
FillBoundaryB(fine_lev, PatchType::coarse, guard_cells.ng_FieldSolver,
WarpX::sync_nodal_points);
-
FillBoundaryF(fine_lev, PatchType::coarse, guard_cells.ng_FieldSolverF,
WarpX::sync_nodal_points);