From 29e59bf87d0165dcb0252185719a9b6821ea3161 Mon Sep 17 00:00:00 2001 From: Christian Gutschow <chris.g@cern.ch> Date: Mon, 7 Nov 2022 20:33:54 +0000 Subject: [PATCH] only count status 4 beam particles --- Generators/EvgenProdTools/src/FixHepMC.cxx | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Generators/EvgenProdTools/src/FixHepMC.cxx b/Generators/EvgenProdTools/src/FixHepMC.cxx index e4f10e63ce24..19dafad38ff8 100644 --- a/Generators/EvgenProdTools/src/FixHepMC.cxx +++ b/Generators/EvgenProdTools/src/FixHepMC.cxx @@ -45,11 +45,14 @@ StatusCode FixHepMC::execute() { } // Catch cases with more than 2 beam particles (16.11.2021) - auto beams_t = evt->beams(); + std::vector<HepMC::GenParticlePtr> beams_t; + for (HepMC::GenParticlePtr p : evt->beams()) { + if (p->status() == 4) beams_t.push_back(p); + } if (beams_t.size() > 2) { ATH_MSG_INFO("Invalid number of beam particles " << beams_t.size() << ". Will try to fix."); std::vector<HepMC::GenParticlePtr> bparttoremove; - for (auto bpart: beams_t) { + for (const auto& bpart : beams_t) { if (bpart->id() == 0 && bpart->production_vertex()) bparttoremove.push_back(bpart); } for (auto bpart: bparttoremove) { -- GitLab