10 semiLepEvtToken_ (consumes<
TtSemiLeptonicEvent>(cfg.getParameter<edm::InputTag>(
"semiLepEvent"))),
11 hypoClassKey_(cfg.getParameter<std::
string>(
"hypoClassKey"))
89 if(topPair && genTopPair)
97 if(hadTop && genHadTop) {
102 if(lepW && genLepW) {
108 if(lepTop && genLepTop) {
113 if(neutrino && genNeutrino)
123 if(hadTop && genHadTop) {
140 neutrinoEta_ = fs->
make<TH1F>(
"neutrinoEta",
"#eta (neutrino)", 21, -4., 4.);
141 neutrinoPullEta_ = fs->
make<TH1F>(
"neutrinoPullEta",
"(#eta_{rec}-#eta_{gen})/#eta_{gen} (neutrino)", 40, -1., 1.);
143 hadWPt_ = fs->
make<TH1F>(
"hadWPt" ,
"p_{T} (W_{had}) [GeV]", 25, 0., 500.);
144 hadWEta_ = fs->
make<TH1F>(
"hadWEta" ,
"#eta (W_{had})" , 21, -4., 4.);
145 hadWMass_ = fs->
make<TH1F>(
"hadWMass",
"M (W_{had}) [GeV]" , 25, 0., 200.);
147 hadTopPt_ = fs->
make<TH1F>(
"hadTopPt" ,
"p_{T} (t_{had}) [GeV]", 25, 0. , 500.);
148 hadTopEta_ = fs->
make<TH1F>(
"hadTopEta" ,
"#eta (t_{had})" , 21, -4., 4.);
149 hadTopMass_ = fs->
make<TH1F>(
"hadTopMass",
"M (t_{had}) [GeV]" , 40, 0. , 400.);
151 lepWPt_ = fs->
make<TH1F>(
"lepWPt" ,
"p_{t} (W_{lep}) [GeV]", 25, 0., 500.);
152 lepWEta_ = fs->
make<TH1F>(
"lepWEta" ,
"#eta (W_{lep})" , 21, -4., 4.);
153 lepWMass_ = fs->
make<TH1F>(
"lepWMass",
"M (W_{lep}) [GeV]" , 25, 0., 200.);
155 lepTopPt_ = fs->
make<TH1F>(
"lepTopPt" ,
"p_{T} (t_{lep}) [GeV]", 25, 0. , 500.);
156 lepTopEta_ = fs->
make<TH1F>(
"lepTopEta" ,
"#eta (t_{lep})" , 21, -4., 4.);
157 lepTopMass_ = fs->
make<TH1F>(
"lepTopMass",
"M (t_{lep}) [GeV]" , 40, 0. , 400.);
159 hadWPullPt_ = fs->
make<TH1F>(
"hadWPullPt" ,
"(p_{T,rec}-p_{T,gen})/p_{T,gen} (W_{had})" , 40, -1., 1.);
160 hadWPullEta_ = fs->
make<TH1F>(
"hadWPullEta" ,
"(#eta_{rec}-#eta_{gen})/#eta_{gen} (W_{had})", 40, -1., 1.);
161 hadWPullMass_ = fs->
make<TH1F>(
"hadWPullMass",
"(M_{rec}-M_{gen})/M_{gen} (W_{had})" , 40, -1., 1.);
163 hadTopPullPt_ = fs->
make<TH1F>(
"hadTopPullPt" ,
"(p_{T,rec}-p_{T,gen})/p_{T,gen} (t_{had})" , 40, -1., 1.);
164 hadTopPullEta_ = fs->
make<TH1F>(
"hadTopPullEta" ,
"(#eta_{rec}-#eta_{gen})/#eta_{gen} (t_{had})", 40, -1., 1.);
165 hadTopPullMass_ = fs->
make<TH1F>(
"hadTopPullMass",
"(M_{rec}-M_{gen})/M_{gen} (t_{had})" , 40, -1., 1.);
167 lepWPullPt_ = fs->
make<TH1F>(
"lepWPullPt" ,
"(p_{T,rec}-p_{T,gen})/p_{T,gen} (W_{lep})" , 40, -1., 1.);
168 lepWPullEta_ = fs->
make<TH1F>(
"lepWPullEta" ,
"(#eta_{rec}-#eta_{gen})/#eta_{gen} (W_{lep})", 40, -1., 1.);
169 lepWPullMass_ = fs->
make<TH1F>(
"lepWPullMass",
"(M_{rec}-M_{gen})/M_{gen} (W_{lep})" , 40, -1., 1.);
171 lepTopPullPt_ = fs->
make<TH1F>(
"lepTopPullPt" ,
"(p_{T,rec}-p_{T,gen})/p_{T,gen} (t_{lep})" , 40, -1., 1.);
172 lepTopPullEta_ = fs->
make<TH1F>(
"lepTopPullEta" ,
"(#eta_{rec}-#eta_{gen})/#eta_{gen} (t_{lep})", 40, -1., 1.);
173 lepTopPullMass_ = fs->
make<TH1F>(
"lepTopPullMass",
"(M_{rec}-M_{gen})/M_{gen} (t_{lep})" , 40, -1., 1.);
175 topPairMass_ = fs->
make<TH1F>(
"topPairMass",
"M (t#bar{t})", 36, 340., 940.);
176 topPairPullMass_ = fs->
make<TH1F>(
"topPairPullMass",
"(M_{rec}-M_{gen})/M_{gen} (t#bar{t})", 40, -1., 1.);
178 genMatchDr_ = fs->
make<TH1F>(
"genMatchDr",
"GenMatch #Sigma#DeltaR", 40, 0., 4.);
179 kinFitProb_ = fs->
make<TH1F>(
"kinFitProb",
"KinFit probability" , 50, 0., 1.);
182 "GenMatch #Sigma #Delta R vs. (M_{rec}-M_{gen})/M_{gen} (t_{had}))",
183 40, -1., 1., 40, 0., 4.);
185 "KinFit probability vs. (M_{rec}-M_{gen})/M_{gen} (t_{had}))",
186 40, -1., 1., 20, 0., 1.);
virtual void analyze(const edm::Event &, const edm::EventSetup &)
virtual float mass() const =0
mass
TH2F * kinFitProbVsHadTopPullMass_
const std::string hypoClassKey_
virtual float eta() const =0
momentum pseudorapidity
Class derived from the TtEvent for the semileptonic decay channel.
T * make(const Args &...args) const
make new ROOT object
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
virtual float pt() const =0
transverse momentum
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger but the state exists so we define the behavior If all triggers are the negative crieriion will lead to accepting the event(this again matches the behavior of"!*"before the partial wildcard feature was incorporated).The per-event"cost"of each negative criterion with multiple relevant triggers is about the same as!*was in the past
const edm::EDGetTokenT< TtSemiLeptonicEvent > semiLepEvtToken_
HypothesisAnalyzer(const edm::ParameterSet &)
TH2F * genMatchDrVsHadTopPullMass_
void setup(std::vector< TH2F > &depth, std::string name, std::string units="")