From 3f6e1dfb6d1c8d605673c2e6dc82228047c6e65f Mon Sep 17 00:00:00 2001 From: Joosep Pata Date: Mon, 2 Mar 2015 14:59:09 +0100 Subject: [PATCH] save top quark neutrinos --- .../python/analyzers/gen/GeneratorAnalyzer.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/PhysicsTools/Heppy/python/analyzers/gen/GeneratorAnalyzer.py b/PhysicsTools/Heppy/python/analyzers/gen/GeneratorAnalyzer.py index a18068d5196c0..9b228631179ed 100644 --- a/PhysicsTools/Heppy/python/analyzers/gen/GeneratorAnalyzer.py +++ b/PhysicsTools/Heppy/python/analyzers/gen/GeneratorAnalyzer.py @@ -32,6 +32,7 @@ class GeneratorAnalyzer( Analyzer ): event.genHiggsBosons = [] event.genVBosons = [] event.gennus = [] # prompt neutrinos + event.gennusFromTop = [] # Neutrinos from t->W decay event.genleps = [] # leptons from direct decays event.gentauleps = [] # leptons from prompt taus event.gentaus = [] # hadronically-decaying taus (if allGenTaus is False) or all taus (if allGenTaus is True) @@ -173,6 +174,7 @@ def makeMCInfo(self, event): event.genHiggsBosons = [] event.genVBosons = [] event.gennus = [] + event.gennusFromTop = [] event.genleps = [] event.gentauleps = [] event.gentaus = [] @@ -190,6 +192,19 @@ def makeMCInfo(self, event): event.genVBosons.append(p) elif id in {12,14,16}: event.gennus.append(p) + + momids = [(m, abs(m.pdgId())) for m in realGenMothers(p)] + + #have a look at the lepton mothers + for mom, momid in momids: + #lepton from W + if momid == 24: + wmomids = [abs(m.pdgId()) for m in realGenMothers(mom)] + #W from t + if 6 in wmomids: + #save mu,e from t->W->mu/e + event.gennusFromTop.append(p) + elif id in {11,13}: #taus to separate vector if abs(p.motherId) == 15: