aboutsummaryrefslogtreecommitdiff
path: root/Source/Evolve/WarpXEvolve.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Evolve/WarpXEvolve.cpp')
-rw-r--r--Source/Evolve/WarpXEvolve.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/Source/Evolve/WarpXEvolve.cpp b/Source/Evolve/WarpXEvolve.cpp
index 4e59ee1a1..c210c6f0a 100644
--- a/Source/Evolve/WarpXEvolve.cpp
+++ b/Source/Evolve/WarpXEvolve.cpp
@@ -113,12 +113,16 @@ WarpX::Evolve (int numsteps)
FillBoundaryB(guard_cells.ng_FieldGather, guard_cells.ng_Extra);
// E and B: enough guard cells to update Aux or call Field Gather in fp and cp
// Need to update Aux on lower levels, to interpolate to higher levels.
+ if (fft_do_time_averaging)
+ {
+ FillBoundaryE_avg(guard_cells.ng_FieldGather, guard_cells.ng_Extra);
+ FillBoundaryB_avg(guard_cells.ng_FieldGather, guard_cells.ng_Extra);
+ }
#ifndef WARPX_USE_PSATD
FillBoundaryAux(guard_cells.ng_UpdateAux);
#endif
UpdateAuxilaryData();
}
-
if (do_subcycling == 0 || finest_level == 0) {
OneStep_nosub(cur_time);
// E : guard cells are up-to-date
@@ -593,6 +597,8 @@ WarpX::PushParticlesandDepose (int lev, amrex::Real cur_time, DtType a_dt_type)
mypc->Evolve(lev,
*Efield_aux[lev][0],*Efield_aux[lev][1],*Efield_aux[lev][2],
*Bfield_aux[lev][0],*Bfield_aux[lev][1],*Bfield_aux[lev][2],
+ *Efield_avg_aux[lev][0],*Efield_avg_aux[lev][1],*Efield_avg_aux[lev][2],
+ *Bfield_avg_aux[lev][0],*Bfield_avg_aux[lev][1],*Bfield_avg_aux[lev][2],
*current_fp[lev][0],*current_fp[lev][1],*current_fp[lev][2],
current_buf[lev][0].get(), current_buf[lev][1].get(), current_buf[lev][2].get(),
rho_fp[lev].get(), charge_buf[lev].get(),