From c9507b2ecad62caefc6db846c8dd2d29904696b4 Mon Sep 17 00:00:00 2001 From: Remi Lehe Date: Sun, 29 Sep 2024 08:55:11 -0700 Subject: [PATCH] Skip last point in boosted-frame diagnostics --- .../free_electron_laser/inputs_test_1d_fel | 2 +- Source/Diagnostics/BTDiagnostics.cpp | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Examples/Physics_applications/free_electron_laser/inputs_test_1d_fel b/Examples/Physics_applications/free_electron_laser/inputs_test_1d_fel index ea866db9df0..5100b13eb74 100644 --- a/Examples/Physics_applications/free_electron_laser/inputs_test_1d_fel +++ b/Examples/Physics_applications/free_electron_laser/inputs_test_1d_fel @@ -37,7 +37,7 @@ diag_boostedframe.intervals = 100 # Diagnostic that show quantities # reconstructed in the lab frame diag_labframe.diag_type = BackTransformed -diag_labframe.num_snapshots_lab = 17 +diag_labframe.num_snapshots_lab = 25 diag_labframe.dz_snapshots_lab = 0.1 diag_labframe.format = openpmd diag_labframe.buffer_size = 64 diff --git a/Source/Diagnostics/BTDiagnostics.cpp b/Source/Diagnostics/BTDiagnostics.cpp index 23645478765..e3f3761dfec 100644 --- a/Source/Diagnostics/BTDiagnostics.cpp +++ b/Source/Diagnostics/BTDiagnostics.cpp @@ -1001,11 +1001,12 @@ BTDiagnostics::GetZSliceInDomainFlag (const int i_buffer, const int lev) { auto & warpx = WarpX::GetInstance(); const amrex::RealBox& boost_domain = warpx.Geom(lev).ProbDomain(); + const amrex::Real boost_cellsize = warpx.Geom(lev).CellSize(m_moving_window_dir); const amrex::Real buffer_zmin_lab = m_snapshot_domain_lab[i_buffer].lo( m_moving_window_dir ); const amrex::Real buffer_zmax_lab = m_snapshot_domain_lab[i_buffer].hi( m_moving_window_dir ); const bool slice_not_in_domain = - ( m_current_z_boost[i_buffer] <= boost_domain.lo(m_moving_window_dir) ) || + ( m_current_z_boost[i_buffer] <= boost_domain.lo(m_moving_window_dir) + boost_cellsize) || ( m_current_z_boost[i_buffer] >= boost_domain.hi(m_moving_window_dir) ) || ( m_current_z_lab[i_buffer] <= buffer_zmin_lab ) || ( m_current_z_lab[i_buffer] >= buffer_zmax_lab );