[Rivet-svn] rivet: 2 new changesets

Rivet Mercurial rivet at projects.hepforge.org
Wed Sep 14 13:45:02 BST 2016


details:   https://rivet.hepforge.org/hg/rivet/rev/c61319c0e4af
branches:  release-2-5-x
changeset: 5478:c61319c0e4af
user:      Andy Buckley <andy at insectnation.org>
date:      Wed Sep 14 13:17:35 2016 +0100
description:
Remove constructor ambiguity

details:   https://rivet.hepforge.org/hg/rivet/rev/35ca0c58b235
branches:  release-2-5-x
changeset: 5479:35ca0c58b235
user:      Andy Buckley <andy at insectnation.org>
date:      Wed Sep 14 13:34:13 2016 +0100
description:
Invert cut typo -- PartonicTops seems to be working!

diffs (38 lines):

--- a/include/Rivet/Projections/PartonicTops.hh	Wed Sep 14 12:55:56 2016 +0100
+++ b/include/Rivet/Projections/PartonicTops.hh	Wed Sep 14 13:34:13 2016 +0100
@@ -18,9 +18,6 @@
     /// @brief Enum for categorising top quark decay modes
     ///
     /// More specifically, the decay mode of the W from the top. We presume top decay to a W and b quark.
-    ///
-    /// @note E_MU mode does not include intermediate taus, while LEPTONIC does.
-    ///   Similarly the QUARKS mode does not include hadronic taus, while HADRONIC does.
     enum DecayMode { ELECTRON, MUON, TAU, E_MU, E_MU_TAU, HADRONIC, ALL };
 
 
@@ -38,8 +35,8 @@
         _emu_from_prompt_tau(emu_from_prompt_tau), _include_hadronic_taus(include_hadronic_taus)
     {  }
 
-        /// Constructor taking decay mode details (and an optional cuts object)
-    PartonicTops(DecayMode decaymode, const Cut& c=Cuts::OPEN, bool emu_from_prompt_tau=true, bool include_hadronic_taus=false)
+    /// Constructor taking decay mode details (and an optional cuts object)
+    PartonicTops(DecayMode decaymode, const Cut& c, bool emu_from_prompt_tau=true, bool include_hadronic_taus=false)
       : ParticleFinder(c), _decaymode(decaymode),
         _emu_from_prompt_tau(emu_from_prompt_tau), _include_hadronic_taus(include_hadronic_taus)
     {  }
@@ -76,12 +73,12 @@
           if (prompt_e && (_decaymode == ELECTRON || _decaymode == E_MU || _decaymode == E_MU_TAU)) return true;
           if (prompt_mu && (_decaymode == MUON || _decaymode == E_MU || _decaymode == E_MU_TAU)) return true;
           const bool prompt_tau = any(descendants, [&](const Particle& p){ return p.abspid() == PID::TAU && p.isPrompt(); });
-          const bool prompt_hadronic_tau = any(descendants, [&](const Particle& p){ return p.abspid() == PID::TAU && p.isPrompt() && none(p.children(), isChLepton); });
+          const bool prompt_hadronic_tau = any(descendants, [&](const Particle& p){ return p.abspid() == PID::TAU && p.isPrompt() && none(p.children(), isChargedLepton); });
           if (prompt_tau && (_decaymode == TAU || _decaymode == E_MU_TAU)) return (_include_hadronic_taus || !prompt_hadronic_tau);
           if (_decaymode == HADRONIC && (!prompt_e && !prompt_mu && (!prompt_tau || (_include_hadronic_taus && prompt_hadronic_tau)))) return true; //< logical hairiness...
           return false;
         };
-        ifilter_discard(_theParticles, fn);
+        ifilter_select(_theParticles, fn);
       }
     }
 


More information about the Rivet-svn mailing list