From d15f45f19f8b63c748cf5ce037b2251d7b392a66 Mon Sep 17 00:00:00 2001 From: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> Date: Mon, 10 Apr 2023 16:27:25 -0700 Subject: Clean up calls to FillBoundary in FDTD part of `OneStep_nosub` (#3607) * Clean up calls to FillBoundary in FDTD part of `OneStep_nosub` * Remove commented-out code * Exchange guard cells of F,G before evolving B --- Source/Evolve/WarpXEvolve.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'Source/Evolve/WarpXEvolve.cpp') diff --git a/Source/Evolve/WarpXEvolve.cpp b/Source/Evolve/WarpXEvolve.cpp index 859ba2145..94379ad3d 100644 --- a/Source/Evolve/WarpXEvolve.cpp +++ b/Source/Evolve/WarpXEvolve.cpp @@ -456,8 +456,8 @@ WarpX::OneStep_nosub (Real cur_time) EvolveG(0.5_rt * dt[0], DtType::FirstHalf); FillBoundaryF(guard_cells.ng_FieldSolverF); FillBoundaryG(guard_cells.ng_FieldSolverG); - EvolveB(0.5_rt * dt[0], DtType::FirstHalf); // We now have B^{n+1/2} + EvolveB(0.5_rt * dt[0], DtType::FirstHalf); // We now have B^{n+1/2} FillBoundaryB(guard_cells.ng_FieldSolver, WarpX::sync_nodal_points); if (WarpX::em_solver_medium == MediumForEM::Vacuum) { @@ -469,20 +469,21 @@ WarpX::OneStep_nosub (Real cur_time) } else { amrex::Abort(Utils::TextMsg::Err("Medium for EM is unknown")); } - FillBoundaryE(guard_cells.ng_FieldSolver, WarpX::sync_nodal_points); + EvolveF(0.5_rt * dt[0], DtType::SecondHalf); EvolveG(0.5_rt * dt[0], DtType::SecondHalf); EvolveB(0.5_rt * dt[0], DtType::SecondHalf); // We now have B^{n+1} if (do_pml) { - FillBoundaryF(guard_cells.ng_alloc_F); DampPML(); NodalSyncPML(); FillBoundaryE(guard_cells.ng_MovingWindow); - FillBoundaryF(guard_cells.ng_MovingWindow); FillBoundaryB(guard_cells.ng_MovingWindow); + FillBoundaryF(guard_cells.ng_MovingWindow); + FillBoundaryG(guard_cells.ng_MovingWindow); } + // E and B are up-to-date in the domain, but all guard cells are // outdated. if (safe_guard_cells) -- cgit v1.2.3