diff options
Diffstat (limited to 'Source')
-rw-r--r-- | Source/Diagnostics/FullDiagnostics.cpp | 4 | ||||
-rw-r--r-- | Source/Evolve/WarpXEvolve.cpp | 6 |
2 files changed, 7 insertions, 3 deletions
diff --git a/Source/Diagnostics/FullDiagnostics.cpp b/Source/Diagnostics/FullDiagnostics.cpp index 8e8565032..6a54e1f8d 100644 --- a/Source/Diagnostics/FullDiagnostics.cpp +++ b/Source/Diagnostics/FullDiagnostics.cpp @@ -436,10 +436,8 @@ FullDiagnostics::PrepareFieldDataForOutput () auto & warpx = WarpX::GetInstance(); warpx.FillBoundaryE(warpx.getngE(), warpx.getngExtra()); warpx.FillBoundaryB(warpx.getngE(), warpx.getngExtra()); -#ifndef WARPX_USE_PSATD - warpx.FillBoundaryAux(warpx.getngUpdateAux()); -#endif warpx.UpdateAuxilaryData(); + warpx.FillBoundaryAux(warpx.getngUpdateAux()); // Update the RealBox used for the geometry filter in particle diags for (int i = 0; i < m_output_species.size(); ++i) { diff --git a/Source/Evolve/WarpXEvolve.cpp b/Source/Evolve/WarpXEvolve.cpp index 76c7e6872..ccde8d176 100644 --- a/Source/Evolve/WarpXEvolve.cpp +++ b/Source/Evolve/WarpXEvolve.cpp @@ -91,6 +91,7 @@ WarpX::Evolve (int numsteps) FillBoundaryE(guard_cells.ng_alloc_EB, guard_cells.ng_Extra); FillBoundaryB(guard_cells.ng_alloc_EB, guard_cells.ng_Extra); UpdateAuxilaryData(); + FillBoundaryAux(guard_cells.ng_UpdateAux); // on first step, push p by -0.5*dt for (int lev = 0; lev <= finest_level; ++lev) { @@ -114,9 +115,11 @@ WarpX::Evolve (int numsteps) FillBoundaryB_avg(guard_cells.ng_FieldGather, guard_cells.ng_Extra); } #ifndef WARPX_USE_PSATD + // TODO Remove call to FillBoundaryAux before UpdateAuxilaryData? FillBoundaryAux(guard_cells.ng_UpdateAux); #endif UpdateAuxilaryData(); + FillBoundaryAux(guard_cells.ng_UpdateAux); } if (do_subcycling == 0 || finest_level == 0) { OneStep_nosub(cur_time); @@ -141,6 +144,7 @@ WarpX::Evolve (int numsteps) if (cur_time + dt[0] >= stop_time - 1.e-3*dt[0] || step == numsteps_max-1) { // At the end of last step, push p by 0.5*dt to synchronize UpdateAuxilaryData(); + FillBoundaryAux(guard_cells.ng_UpdateAux); for (int lev = 0; lev <= finest_level; ++lev) { mypc->PushP(lev, 0.5*dt[lev], *Efield_aux[lev][0],*Efield_aux[lev][1], @@ -471,9 +475,11 @@ WarpX::OneStep_sub1 (Real curtime) EvolveE(coarse_lev, PatchType::fine, 0.5*dt[coarse_lev]); FillBoundaryE(coarse_lev, PatchType::fine, guard_cells.ng_FieldGather + guard_cells.ng_Extra); + // TODO Remove call to FillBoundaryAux before UpdateAuxilaryData? FillBoundaryAux(guard_cells.ng_UpdateAux); // iii) Get auxiliary fields on the fine grid, at dt[fine_lev] UpdateAuxilaryData(); + FillBoundaryAux(guard_cells.ng_UpdateAux); // iv) Push particles and fields on the fine patch (second fine step) PushParticlesandDepose(fine_lev, curtime+dt[fine_lev], DtType::SecondHalf); |