|
[Rivet-svn] rivet: 2 new changesetsRivet Mercurial rivet at projects.hepforge.orgWed 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 |