diff --git a/Generators/TruthUtils/TruthUtils/AtlasPID.h b/Generators/TruthUtils/TruthUtils/AtlasPID.h index 96079b1c6042a7fbad340a78b013bf4d3b944a16..b42e12cdf5b739c3cfcd930b580769331e7e9389 100644 --- a/Generators/TruthUtils/TruthUtils/AtlasPID.h +++ b/Generators/TruthUtils/TruthUtils/AtlasPID.h @@ -454,7 +454,8 @@ template<> inline bool isGaugino(const int& p){ auto value_digits = DecodedPID(p /// the quantum numbers are specified by tech, ij, where i and j are 1 or 2. nLis then 2i+j. The coloron /// V8, is a heavy gluon color octet and thus is 3100021 template<class T> inline bool isTechnicolor(const T& p){return isTechnicolor(p->pdg_id());} -template<> inline bool isTechnicolor(const DecodedPID& p){return (p.ndigits() == 7 && p(0) == 3 && (p(1) == 0 || p(0) == 1) && isValid(p.shift(2)) && !isGenSpecific(p.shift(2).pid()));} +template<> inline bool isTechnicolor(const DecodedPID& p){ auto pp = p.shift(2); return (p.ndigits() == 7 && p(0) == 3 && (p(1) == 0 || p(0) == 1) && + ( isQuark(pp) || isLepton(pp) || isBoson(pp) || isGlueball(pp) || isDiquark(pp) || isHadron(pp) ) ); } template<> inline bool isTechnicolor(const int& p){ auto value_digits = DecodedPID(p); return isTechnicolor(value_digits);} /// PDG rule 11f