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.cpp23
1 files changed, 13 insertions, 10 deletions
diff --git a/Source/Evolve/WarpXEvolve.cpp b/Source/Evolve/WarpXEvolve.cpp
index 6f8319d0f..1af123293 100644
--- a/Source/Evolve/WarpXEvolve.cpp
+++ b/Source/Evolve/WarpXEvolve.cpp
@@ -306,6 +306,15 @@ WarpX::Evolve (int numsteps)
ComputeSpaceChargeField( reset_fields );
}
+ // sync up time
+ for (int i = 0; i <= max_level; ++i) {
+ t_new[i] = cur_time;
+ }
+
+ // warpx_py_afterstep runs with the updated global time. It is included
+ // in the evolve timing.
+ if (warpx_py_afterstep) warpx_py_afterstep();
+
Real evolve_time_end_step = amrex::second();
evolve_time += evolve_time_end_step - evolve_time_beg_step;
@@ -316,10 +325,6 @@ WarpX::Evolve (int numsteps)
<< " s; This step = " << evolve_time_end_step-evolve_time_beg_step
<< " s; Avg. per step = " << evolve_time/(step+1) << " s\n";
}
- // sync up time
- for (int i = 0; i <= max_level; ++i) {
- t_new[i] = cur_time;
- }
/// reduced diags
if (reduced_diags->m_plot_rd != 0)
@@ -329,12 +334,6 @@ WarpX::Evolve (int numsteps)
}
multi_diags->FilterComputePackFlush( step );
- if (cur_time >= stop_time - 1.e-3*dt[0]) {
- break;
- }
-
- if (warpx_py_afterstep) warpx_py_afterstep();
-
// inputs: unused parameters (e.g. typos) check after step 1 has finished
if (!early_params_checked) {
amrex::Print() << "\n"; // better: conditional \n based on return value
@@ -342,6 +341,10 @@ WarpX::Evolve (int numsteps)
early_params_checked = true;
}
+ if (cur_time >= stop_time - 1.e-3*dt[0]) {
+ break;
+ }
+
// End loop on time steps
}