CMS 3D CMS Logo

TtSemiEvtSolution.h
Go to the documentation of this file.
1 //
2 //
3 
4 #ifndef TopObjects_TtSemiEvtSolution_h
5 #define TopObjects_TtSemiEvtSolution_h
6 
7 #include <vector>
8 #include <string>
9 
13 
17 
24 
27 
28 // FIXME: make the decay member an enumerable
29 // FIXME: Can we generalize all the muon and electron to lepton?
30 
32  friend class TtSemiEvtSolutionMaker;
33  friend class TtSemiLepKinFitter;
34  friend class TtSemiLepHitFit;
36  friend class TtSemiLRSignalSelCalc;
38  friend class TtSemiLRJetCombCalc;
39 
40 public:
42  virtual ~TtSemiEvtSolution();
43 
44  //-------------------------------------------
45  // get calibrated base objects
46  //-------------------------------------------
47  pat::Jet getHadb() const;
48  pat::Jet getHadp() const;
49  pat::Jet getHadq() const;
50  pat::Jet getLepb() const;
51  pat::Muon getMuon() const { return *muon_; };
52  pat::Electron getElectron() const { return *electron_; };
53  pat::MET getNeutrino() const { return *neutrino_; };
54 
55  //-------------------------------------------
56  // get the matched gen particles
57  //-------------------------------------------
58  const edm::RefProd<TtGenEvent>& getGenEvent() const { return theGenEvt_; };
59  const reco::GenParticle* getGenHadt() const {
60  if (!theGenEvt_)
61  return nullptr;
62  else
63  return this->getGenEvent()->hadronicDecayTop();
64  };
65  const reco::GenParticle* getGenHadW() const {
66  if (!theGenEvt_)
67  return nullptr;
68  else
69  return this->getGenEvent()->hadronicDecayW();
70  };
71  const reco::GenParticle* getGenHadb() const {
72  if (!theGenEvt_)
73  return nullptr;
74  else
75  return this->getGenEvent()->hadronicDecayB();
76  };
77  const reco::GenParticle* getGenHadp() const {
78  if (!theGenEvt_)
79  return nullptr;
80  else
81  return this->getGenEvent()->hadronicDecayQuark();
82  };
83  const reco::GenParticle* getGenHadq() const {
84  if (!theGenEvt_)
85  return nullptr;
86  else
87  return this->getGenEvent()->hadronicDecayQuarkBar();
88  };
89  const reco::GenParticle* getGenLept() const {
90  if (!theGenEvt_)
91  return nullptr;
92  else
93  return this->getGenEvent()->leptonicDecayTop();
94  };
95  const reco::GenParticle* getGenLepW() const {
96  if (!theGenEvt_)
97  return nullptr;
98  else
99  return this->getGenEvent()->leptonicDecayW();
100  };
101  const reco::GenParticle* getGenLepb() const {
102  if (!theGenEvt_)
103  return nullptr;
104  else
105  return this->getGenEvent()->leptonicDecayB();
106  };
107  const reco::GenParticle* getGenLepl() const {
108  if (!theGenEvt_)
109  return nullptr;
110  else
111  return this->getGenEvent()->singleLepton();
112  };
113  const reco::GenParticle* getGenLepn() const {
114  if (!theGenEvt_)
115  return nullptr;
116  else
117  return this->getGenEvent()->singleNeutrino();
118  };
119 
120  //-------------------------------------------
121  // get (un-)/calibrated reco objects
122  //-------------------------------------------
123  reco::Particle getRecHadt() const;
124  reco::Particle getRecHadW() const;
125  pat::Jet getRecHadb() const { return this->getHadb().correctedJet("RAW"); };
126  pat::Jet getRecHadp() const { return this->getHadp().correctedJet("RAW"); };
127  pat::Jet getRecHadq() const { return this->getHadq().correctedJet("RAW"); };
128  reco::Particle getRecLept() const;
129  reco::Particle getRecLepW() const;
130  pat::Jet getRecLepb() const { return this->getLepb().correctedJet("RAW"); };
131  pat::Muon getRecLepm() const { return this->getMuon(); };
132  pat::Electron getRecLepe() const { return this->getElectron(); };
133  pat::MET getRecLepn() const { return this->getNeutrino(); };
134  // FIXME: Why these functions??? Not needed!
135  // methods to get calibrated objects
136  reco::Particle getCalHadt() const;
137  reco::Particle getCalHadW() const;
138  pat::Jet getCalHadb() const { return this->getHadb(); };
139  pat::Jet getCalHadp() const { return this->getHadp(); };
140  pat::Jet getCalHadq() const { return this->getHadq(); };
141  reco::Particle getCalLept() const;
142  reco::Particle getCalLepW() const;
143  pat::Jet getCalLepb() const { return this->getLepb(); };
144  pat::Muon getCalLepm() const { return this->getMuon(); };
145  pat::Electron getCalLepe() const { return this->getElectron(); };
146  pat::MET getCalLepn() const { return this->getNeutrino(); };
147 
148  //-------------------------------------------
149  // get objects from kinematic fit
150  //-------------------------------------------
151  reco::Particle getFitHadt() const;
152  reco::Particle getFitHadW() const;
153  pat::Particle getFitHadb() const { return (!fitHadb_.empty() ? fitHadb_.front() : pat::Particle()); };
154  pat::Particle getFitHadp() const { return (!fitHadp_.empty() ? fitHadp_.front() : pat::Particle()); };
155  pat::Particle getFitHadq() const { return (!fitHadq_.empty() ? fitHadq_.front() : pat::Particle()); };
156  reco::Particle getFitLept() const;
157  reco::Particle getFitLepW() const;
158  pat::Particle getFitLepb() const { return (!fitLepb_.empty() ? fitLepb_.front() : pat::Particle()); };
159  pat::Particle getFitLepl() const { return (!fitLepl_.empty() ? fitLepl_.front() : pat::Particle()); };
160  pat::Particle getFitLepn() const { return (!fitLepn_.empty() ? fitLepn_.front() : pat::Particle()); };
161 
162  //-------------------------------------------
163  // get the selected semileptonic decay chain
164  //-------------------------------------------
165  std::string getDecay() const { return decay_; }
166 
167  //-------------------------------------------
168  // get info on the matching
169  //-------------------------------------------
170  double getMCBestSumAngles() const { return sumAnglejp_; };
171  double getMCBestAngleHadp() const { return angleHadp_; };
172  double getMCBestAngleHadq() const { return angleHadq_; };
173  double getMCBestAngleHadb() const { return angleHadb_; };
174  double getMCBestAngleLepb() const { return angleLepb_; };
175  int getMCChangeWQ() const { return changeWQ_; };
176 
177  //-------------------------------------------
178  // get the selected kinfit parametrisations
179  // of each type of object
180  //-------------------------------------------
181  int getJetParametrisation() const { return jetParam_; }
182  int getLeptonParametrisation() const { return leptonParam_; }
184 
185  //-------------------------------------------
186  // get the prob of the chi2 value resulting
187  // from the kinematic fit
188  //-------------------------------------------
189  double getProbChi2() const { return probChi2_; }
190 
191  //-------------------------------------------
192  // get info on the outcome of the signal
193  // selection LR
194  //-------------------------------------------
195  double getLRSignalEvtObsVal(unsigned int) const;
196  double getLRSignalEvtLRval() const { return lrSignalEvtLRval_; }
197  double getLRSignalEvtProb() const { return lrSignalEvtProb_; }
198 
199  //-------------------------------------------
200  // get info on the outcome of the different
201  // jet combination methods
202  //-------------------------------------------
203  int getMCBestJetComb() const { return mcBestJetComb_; }
204  int getSimpleBestJetComb() const { return simpleBestJetComb_; }
205  int getLRBestJetComb() const { return lrBestJetComb_; }
206  double getLRJetCombObsVal(unsigned int) const;
207  double getLRJetCombLRval() const { return lrJetCombLRval_; }
208  double getLRJetCombProb() const { return lrJetCombProb_; }
209 
210  //-------------------------------------------
211  // get the various event hypotheses
212  //-------------------------------------------
213  const reco::CompositeCandidate& getRecoHyp() const { return recoHyp_; }
214  const reco::CompositeCandidate& getFitHyp() const { return fitHyp_; }
215  const reco::CompositeCandidate& getMCHyp() const { return mcHyp_; }
216 
217 protected:
218  //-------------------------------------------
219  // set the generated event
220  //-------------------------------------------
221  void setGenEvt(const edm::Handle<TtGenEvent>& aGenEvt);
222 
223  //-------------------------------------------
224  // set the basic objects
225  //-------------------------------------------
227  void setHadp(const edm::Handle<std::vector<pat::Jet> >& jet, int i) { hadp_ = edm::Ptr<pat::Jet>(jet, i); };
228  void setHadq(const edm::Handle<std::vector<pat::Jet> >& jet, int i) { hadq_ = edm::Ptr<pat::Jet>(jet, i); };
229  void setHadb(const edm::Handle<std::vector<pat::Jet> >& jet, int i) { hadb_ = edm::Ptr<pat::Jet>(jet, i); };
230  void setLepb(const edm::Handle<std::vector<pat::Jet> >& jet, int i) { lepb_ = edm::Ptr<pat::Jet>(jet, i); };
231  void setMuon(const edm::Handle<std::vector<pat::Muon> >& muon, int i) {
233  decay_ = "muon";
234  };
235  void setElectron(const edm::Handle<std::vector<pat::Electron> >& elec, int i) {
237  decay_ = "electron";
238  };
239  void setNeutrino(const edm::Handle<std::vector<pat::MET> >& met, int i) { neutrino_ = edm::Ptr<pat::MET>(met, i); };
240 
241  //-------------------------------------------
242  // set the fitted objects
243  //-------------------------------------------
244  void setFitHadb(const pat::Particle& aFitHadb) {
245  fitHadb_.clear();
246  fitHadb_.push_back(aFitHadb);
247  };
248  void setFitHadp(const pat::Particle& aFitHadp) {
249  fitHadp_.clear();
250  fitHadp_.push_back(aFitHadp);
251  };
252  void setFitHadq(const pat::Particle& aFitHadq) {
253  fitHadq_.clear();
254  fitHadq_.push_back(aFitHadq);
255  };
256  void setFitLepb(const pat::Particle& aFitLepb) {
257  fitLepb_.clear();
258  fitLepb_.push_back(aFitLepb);
259  };
260  void setFitLepl(const pat::Particle& aFitLepl) {
261  fitLepl_.clear();
262  fitLepl_.push_back(aFitLepl);
263  };
264  void setFitLepn(const pat::Particle& aFitLepn) {
265  fitLepn_.clear();
266  fitLepn_.push_back(aFitLepn);
267  };
268 
269  //-------------------------------------------
270  // set the info on the matching
271  //-------------------------------------------
272  void setMCBestSumAngles(double sdr) { sumAnglejp_ = sdr; };
273  void setMCBestAngleHadp(double adr) { angleHadp_ = adr; };
274  void setMCBestAngleHadq(double adr) { angleHadq_ = adr; };
275  void setMCBestAngleHadb(double adr) { angleHadb_ = adr; };
276  void setMCBestAngleLepb(double adr) { angleLepb_ = adr; };
277  void setMCChangeWQ(int wq) { changeWQ_ = wq; };
278 
279  //-------------------------------------------
280  // set the kinfit parametrisations of each
281  // type of object
282  //-------------------------------------------
283  void setJetParametrisation(int jp) { jetParam_ = jp; };
284  void setLeptonParametrisation(int lp) { leptonParam_ = lp; };
286 
287  //-------------------------------------------
288  // set the prob. of the chi2 value resulting
289  // from the kinematic fit
290  //-------------------------------------------
291  void setProbChi2(double c) { probChi2_ = c; };
292 
293  //-------------------------------------------
294  // set the outcome of the different jet
295  // combination methods
296  //-------------------------------------------
297  void setMCBestJetComb(int mcbs) { mcBestJetComb_ = mcbs; };
298  void setSimpleBestJetComb(int sbs) { simpleBestJetComb_ = sbs; };
299  void setLRBestJetComb(int lrbs) { lrBestJetComb_ = lrbs; };
300  void setLRJetCombObservables(const std::vector<std::pair<unsigned int, double> >& varval);
301  void setLRJetCombLRval(double clr) { lrJetCombLRval_ = clr; };
302  void setLRJetCombProb(double plr) { lrJetCombProb_ = plr; };
303 
304  //-------------------------------------------
305  // set the outcome of the signal selection LR
306  //-------------------------------------------
307  void setLRSignalEvtObservables(const std::vector<std::pair<unsigned int, double> >& varval);
308  void setLRSignalEvtLRval(double clr) { lrSignalEvtLRval_ = clr; };
309  void setLRSignalEvtProb(double plr) { lrSignalEvtProb_ = plr; };
310 
311 private:
312  //-------------------------------------------
313  // particle content
314  //-------------------------------------------
320  std::vector<pat::Particle> fitHadb_, fitHadp_, fitHadq_;
321  std::vector<pat::Particle> fitLepb_, fitLepl_, fitLepn_;
322 
326 
327  void setupHyp();
328 
334  double probChi2_;
338  std::vector<std::pair<unsigned int, double> > lrJetCombVarVal_;
339  std::vector<std::pair<unsigned int, double> > lrSignalEvtVarVal_;
340 };
341 
342 #endif
TtSemiEvtSolution::getRecLepn
pat::MET getRecLepn() const
Definition: TtSemiEvtSolution.h:133
edm::RefProd< TtGenEvent >
RefProd.h
TtSemiEvtSolution::getFitLepn
pat::Particle getFitLepn() const
Definition: TtSemiEvtSolution.h:160
TtSemiEvtSolution::getHadq
pat::Jet getHadq() const
Definition: TtSemiEvtSolution.cc:55
TtSemiEvtSolution::decay_
std::string decay_
Definition: TtSemiEvtSolution.h:329
Handle.h
TtSemiEvtSolution::setFitLepl
void setFitLepl(const pat::Particle &aFitLepl)
Definition: TtSemiEvtSolution.h:260
TtSemiEvtSolution::getMCChangeWQ
int getMCChangeWQ() const
Definition: TtSemiEvtSolution.h:175
mps_fire.i
i
Definition: mps_fire.py:428
TtSemiEvtSolution::getRecoHyp
const reco::CompositeCandidate & getRecoHyp() const
Definition: TtSemiEvtSolution.h:213
TtSemiEvtSolution::getCalLepm
pat::Muon getCalLepm() const
Definition: TtSemiEvtSolution.h:144
TtSemiEvtSolution::~TtSemiEvtSolution
virtual ~TtSemiEvtSolution()
Definition: TtSemiEvtSolution.cc:28
TtSemiLRJetCombObservables
Steering class for the overall top-lepton likelihood.
Definition: TtSemiLRJetCombObservables.h:39
TtGenEvent::leptonicDecayTop
const reco::GenParticle * leptonicDecayTop(bool excludeTauLeptons=false) const
get top of leptonic decay branch
Definition: TtGenEvent.cc:258
CompositeCandidate.h
TtSemiEvtSolution::TtSemiLepHitFit
friend class TtSemiLepHitFit
Definition: TtSemiEvtSolution.h:34
TtSemiEvtSolution::setHadb
void setHadb(const edm::Handle< std::vector< pat::Jet > > &jet, int i)
Definition: TtSemiEvtSolution.h:229
TtSemiEvtSolution::setLRBestJetComb
void setLRBestJetComb(int lrbs)
Definition: TtSemiEvtSolution.h:299
muon
Definition: MuonCocktails.h:17
reco::Particle
Definition: Particle.h:16
reco::GenParticle
Definition: GenParticle.h:21
TtSemiEvtSolution::getCalHadb
pat::Jet getCalHadb() const
Definition: TtSemiEvtSolution.h:138
TtSemiEvtSolution::fitHyp_
reco::CompositeCandidate fitHyp_
Definition: TtSemiEvtSolution.h:325
TtSemiEvtSolution::getCalHadp
pat::Jet getCalHadp() const
Definition: TtSemiEvtSolution.h:139
TtSemiEvtSolution::getGenHadp
const reco::GenParticle * getGenHadp() const
Definition: TtSemiEvtSolution.h:77
TtSemiEvtSolution::jetParam_
int jetParam_
Definition: TtSemiEvtSolution.h:333
TtGenEvent::leptonicDecayW
const reco::GenParticle * leptonicDecayW(bool excludeTauLeptons=false) const
get W of leptonic decay branch
Definition: TtGenEvent.cc:242
TtSemiEvtSolution::getGenLept
const reco::GenParticle * getGenLept() const
Definition: TtSemiEvtSolution.h:89
Muon.h
TtSemiEvtSolution::setLRSignalEvtLRval
void setLRSignalEvtLRval(double clr)
Definition: TtSemiEvtSolution.h:308
TtSemiEvtSolution::getHadp
pat::Jet getHadp() const
Definition: TtSemiEvtSolution.cc:44
TtSemiEvtSolution::leptonParam_
int leptonParam_
Definition: TtSemiEvtSolution.h:333
TtSemiEvtSolution::getRecLepe
pat::Electron getRecLepe() const
Definition: TtSemiEvtSolution.h:132
TtSemiEvtSolution::fitLepl_
std::vector< pat::Particle > fitLepl_
Definition: TtSemiEvtSolution.h:321
TtSemiEvtSolution::setGenEvt
void setGenEvt(const edm::Handle< TtGenEvent > &aGenEvt)
Definition: TtSemiEvtSolution.cc:190
TtSemiEvtSolution::getGenLepW
const reco::GenParticle * getGenLepW() const
Definition: TtSemiEvtSolution.h:95
TtSemiEvtSolution::setLRSignalEvtObservables
void setLRSignalEvtObservables(const std::vector< std::pair< unsigned int, double > > &varval)
Definition: TtSemiEvtSolution.cc:211
TtSemiEvtSolution::setFitHadq
void setFitHadq(const pat::Particle &aFitHadq)
Definition: TtSemiEvtSolution.h:252
TtSemiEvtSolution::getMCBestAngleHadp
double getMCBestAngleHadp() const
Definition: TtSemiEvtSolution.h:171
TtSemiEvtSolution::getRecLepb
pat::Jet getRecLepb() const
Definition: TtSemiEvtSolution.h:130
TtSemiEvtSolution::getMCBestSumAngles
double getMCBestSumAngles() const
Definition: TtSemiEvtSolution.h:170
TtSemiEvtSolution::getGenLepb
const reco::GenParticle * getGenLepb() const
Definition: TtSemiEvtSolution.h:101
TtSemiEvtSolution::getLepb
pat::Jet getLepb() const
Definition: TtSemiEvtSolution.cc:66
TtSemiEvtSolution::getMCHyp
const reco::CompositeCandidate & getMCHyp() const
Definition: TtSemiEvtSolution.h:215
TtSemiEvtSolution::getNeutrino
pat::MET getNeutrino() const
Definition: TtSemiEvtSolution.h:53
TtSemiEvtSolution::angleLepb_
double angleLepb_
Definition: TtSemiEvtSolution.h:331
TtSemiEvtSolution::setFitHadb
void setFitHadb(const pat::Particle &aFitHadb)
Definition: TtSemiEvtSolution.h:244
TtSemiEvtSolution::hadb_
edm::Ptr< pat::Jet > hadb_
Definition: TtSemiEvtSolution.h:316
TtGenEvent::hadronicDecayTop
const reco::GenParticle * hadronicDecayTop(bool excludeTauLeptons=false) const
get top of hadronic decay branch
Definition: TtGenEvent.cc:212
TtSemiEvtSolution::setMCBestAngleHadb
void setMCBestAngleHadb(double adr)
Definition: TtSemiEvtSolution.h:275
TtSemiEvtSolution::lrJetCombProb_
double lrJetCombProb_
Definition: TtSemiEvtSolution.h:336
TtSemiEvtSolution::getFitLept
reco::Particle getFitLept() const
Definition: TtSemiEvtSolution.cc:151
TtSemiEvtSolution::getElectron
pat::Electron getElectron() const
Definition: TtSemiEvtSolution.h:52
pat::Muon
Analysis-level muon class.
Definition: Muon.h:51
TtSemiEvtSolution::jetCorrScheme_
int jetCorrScheme_
Definition: TtSemiEvtSolution.h:330
TtSemiEvtSolution::getFitLepl
pat::Particle getFitLepl() const
Definition: TtSemiEvtSolution.h:159
TtSemiEvtSolution::setHadp
void setHadp(const edm::Handle< std::vector< pat::Jet > > &jet, int i)
Definition: TtSemiEvtSolution.h:227
TtSemiEvtSolution::setMCChangeWQ
void setMCChangeWQ(int wq)
Definition: TtSemiEvtSolution.h:277
edm::Handle
Definition: AssociativeIterator.h:50
Tau.h
TtSemiLRJetCombCalc
Class to calculate the jet combination LR value and purity from a root-file with fit functions.
Definition: TtSemiLRJetCombCalc.h:31
TtSemiEvtSolution::getProbChi2
double getProbChi2() const
Definition: TtSemiEvtSolution.h:189
TtSemiEvtSolution::getGenHadt
const reco::GenParticle * getGenHadt() const
Definition: TtSemiEvtSolution.h:59
TtSemiEvtSolution::getCalHadq
pat::Jet getCalHadq() const
Definition: TtSemiEvtSolution.h:140
TtSemiEvtSolution::getCalLepn
pat::MET getCalLepn() const
Definition: TtSemiEvtSolution.h:146
TtSemiEvtSolution::fitLepn_
std::vector< pat::Particle > fitLepn_
Definition: TtSemiEvtSolution.h:321
TtSemiEvtSolution::getGenEvent
const edm::RefProd< TtGenEvent > & getGenEvent() const
Definition: TtSemiEvtSolution.h:58
TtGenEvent::hadronicDecayW
const reco::GenParticle * hadronicDecayW(bool excludeTauLeptons=false) const
get W of hadronic decay branch
Definition: TtGenEvent.cc:196
TtSemiEvtSolution::setFitLepb
void setFitLepb(const pat::Particle &aFitLepb)
Definition: TtSemiEvtSolution.h:256
TtSemiEvtSolution::getCalHadW
reco::Particle getCalHadW() const
Definition: TtSemiEvtSolution.cc:116
BTaggingMonitor_cfi.met
met
Definition: BTaggingMonitor_cfi.py:84
GenParticle.h
TtSemiEvtSolution::lrJetCombVarVal_
std::vector< std::pair< unsigned int, double > > lrJetCombVarVal_
Definition: TtSemiEvtSolution.h:338
TtSemiEvtSolution::getRecLept
reco::Particle getRecLept() const
Definition: TtSemiEvtSolution.cc:90
TtSemiEvtSolution::getFitHadq
pat::Particle getFitHadq() const
Definition: TtSemiEvtSolution.h:155
TtSemiEvtSolution::getMCBestAngleLepb
double getMCBestAngleLepb() const
Definition: TtSemiEvtSolution.h:174
TtSemiEvtSolution::getGenHadb
const reco::GenParticle * getGenHadb() const
Definition: TtSemiEvtSolution.h:71
TtSemiEvtSolution::getFitHadp
pat::Particle getFitHadp() const
Definition: TtSemiEvtSolution.h:154
TtGenEvent::singleNeutrino
const reco::GenParticle * singleNeutrino(bool excludeTauLeptons=false) const
return single neutrino if available; 0 else
Definition: TtGenEvent.cc:139
pat::Jet
Analysis-level calorimeter jet class.
Definition: Jet.h:77
TtSemiLepKinFitter
Definition: TtSemiLepKinFitter.h:32
TtSemiEvtSolution::getCalLept
reco::Particle getCalLept() const
Definition: TtSemiEvtSolution.cc:120
TtSemiEvtSolution::getRecHadW
reco::Particle getRecHadW() const
Definition: TtSemiEvtSolution.cc:85
TtSemiEvtSolution::setLeptonParametrisation
void setLeptonParametrisation(int lp)
Definition: TtSemiEvtSolution.h:284
TtSemiEvtSolution::setMuon
void setMuon(const edm::Handle< std::vector< pat::Muon > > &muon, int i)
Definition: TtSemiEvtSolution.h:231
TtSemiEvtSolution::getFitHadt
reco::Particle getFitHadt() const
Definition: TtSemiEvtSolution.cc:141
TtSemiEvtSolution::getRecLepW
reco::Particle getRecLepW() const
Definition: TtSemiEvtSolution.cc:100
TtSemiLRSignalSelCalc
Class to calculate the jet combination LR value and purity from a root-file with fit functions.
Definition: TtSemiLRSignalSelCalc.h:31
TtSemiEvtSolution::getNeutrinoParametrisation
int getNeutrinoParametrisation() const
Definition: TtSemiEvtSolution.h:183
TtSemiEvtSolution::getFitLepb
pat::Particle getFitLepb() const
Definition: TtSemiEvtSolution.h:158
TtSemiEvtSolution::hadp_
edm::Ptr< pat::Jet > hadp_
Definition: TtSemiEvtSolution.h:316
TtSemiEvtSolution::sumAnglejp_
double sumAnglejp_
Definition: TtSemiEvtSolution.h:331
TtSemiEvtSolution::getLRJetCombProb
double getLRJetCombProb() const
Definition: TtSemiEvtSolution.h:208
TtSemiEvtSolution::changeWQ_
int changeWQ_
Definition: TtSemiEvtSolution.h:332
TtGenEvent::singleLepton
const reco::GenParticle * singleLepton(bool excludeTauLeptons=false) const
return single lepton if available; 0 else
Definition: TtGenEvent.cc:97
TtSemiEvtSolution::setFitHadp
void setFitHadp(const pat::Particle &aFitHadp)
Definition: TtSemiEvtSolution.h:248
TtSemiEvtSolution::fitLepb_
std::vector< pat::Particle > fitLepb_
Definition: TtSemiEvtSolution.h:321
TtSemiEvtSolution::getCalLepe
pat::Electron getCalLepe() const
Definition: TtSemiEvtSolution.h:145
Particle.h
TtSemiLRSignalSelObservables
Definition: TtSemiLRSignalSelObservables.h:29
TtSemiEvtSolution::getLRJetCombObsVal
double getLRJetCombObsVal(unsigned int) const
Definition: TtSemiEvtSolution.cc:178
TtSemiEvtSolution::angleHadq_
double angleHadq_
Definition: TtSemiEvtSolution.h:331
TtSemiEvtSolution::getLeptonParametrisation
int getLeptonParametrisation() const
Definition: TtSemiEvtSolution.h:182
TtSemiEvtSolution::mcBestJetComb_
int mcBestJetComb_
Definition: TtSemiEvtSolution.h:335
TtSemiEvtSolution::getGenHadW
const reco::GenParticle * getGenHadW() const
Definition: TtSemiEvtSolution.h:65
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
TtSemiEvtSolution::getFitHadW
reco::Particle getFitHadW() const
Definition: TtSemiEvtSolution.cc:146
TtSemiEvtSolution::recoHyp_
reco::CompositeCandidate recoHyp_
Definition: TtSemiEvtSolution.h:324
TtSemiEvtSolution::getLRBestJetComb
int getLRBestJetComb() const
Definition: TtSemiEvtSolution.h:205
TtSemiEvtSolution::neutrino_
edm::Ptr< pat::MET > neutrino_
Definition: TtSemiEvtSolution.h:319
TtSemiEvtSolution::getHadb
pat::Jet getHadb() const
Definition: TtSemiEvtSolution.cc:33
TtSemiEvtSolution::getSimpleBestJetComb
int getSimpleBestJetComb() const
Definition: TtSemiEvtSolution.h:204
TtSemiEvtSolution::setElectron
void setElectron(const edm::Handle< std::vector< pat::Electron > > &elec, int i)
Definition: TtSemiEvtSolution.h:235
TtSemiEvtSolution::getMuon
pat::Muon getMuon() const
Definition: TtSemiEvtSolution.h:51
TtSemiEvtSolution::setLRJetCombObservables
void setLRJetCombObservables(const std::vector< std::pair< unsigned int, double > > &varval)
Definition: TtSemiEvtSolution.cc:202
TtSemiEvtSolution::getGenLepn
const reco::GenParticle * getGenLepn() const
Definition: TtSemiEvtSolution.h:113
TtSemiEvtSolution::lrJetCombLRval_
double lrJetCombLRval_
Definition: TtSemiEvtSolution.h:336
TtSemiEvtSolutionMaker
Definition: TtSemiEvtSolutionMaker.h:23
TtSemiEvtSolution::setLRJetCombProb
void setLRJetCombProb(double plr)
Definition: TtSemiEvtSolution.h:302
TtGenEvent.h
TtSemiEvtSolution::setLRSignalEvtProb
void setLRSignalEvtProb(double plr)
Definition: TtSemiEvtSolution.h:309
TtSemiEvtSolution::electron_
edm::Ptr< pat::Electron > electron_
Definition: TtSemiEvtSolution.h:318
TtSemiEvtSolution::getCalLepb
pat::Jet getCalLepb() const
Definition: TtSemiEvtSolution.h:143
TtSemiEvtSolution::lrBestJetComb_
int lrBestJetComb_
Definition: TtSemiEvtSolution.h:335
TtSemiEvtSolution::theGenEvt_
edm::RefProd< TtGenEvent > theGenEvt_
Definition: TtSemiEvtSolution.h:309
TtSemiEvtSolution::lrSignalEvtVarVal_
std::vector< std::pair< unsigned int, double > > lrSignalEvtVarVal_
Definition: TtSemiEvtSolution.h:339
TtSemiEvtSolution::setJetCorrectionScheme
void setJetCorrectionScheme(int scheme)
Definition: TtSemiEvtSolution.h:226
TtSemiEvtSolution::getFitLepW
reco::Particle getFitLepW() const
Definition: TtSemiEvtSolution.cc:156
TtSemiEvtSolution::lrSignalEvtProb_
double lrSignalEvtProb_
Definition: TtSemiEvtSolution.h:337
ShallowClonePtrCandidate.h
TtSemiEvtSolution::TtSemiEvtSolution
TtSemiEvtSolution()
Definition: TtSemiEvtSolution.cc:9
TtSemiEvtSolution::fitHadb_
std::vector< pat::Particle > fitHadb_
Definition: TtSemiEvtSolution.h:320
TtSemiEvtSolution::getGenHadq
const reco::GenParticle * getGenHadq() const
Definition: TtSemiEvtSolution.h:83
TtSemiEvtSolution::lrSignalEvtLRval_
double lrSignalEvtLRval_
Definition: TtSemiEvtSolution.h:337
trackerHitRTTI::vector
Definition: trackerHitRTTI.h:21
pat::MET
Analysis-level MET class.
Definition: MET.h:40
TtSemiEvtSolution::getDecay
std::string getDecay() const
Definition: TtSemiEvtSolution.h:165
TtSemiEvtSolution::setNeutrino
void setNeutrino(const edm::Handle< std::vector< pat::MET > > &met, int i)
Definition: TtSemiEvtSolution.h:239
TtSemiEvtSolution::getRecHadb
pat::Jet getRecHadb() const
Definition: TtSemiEvtSolution.h:125
TtSemiEvtSolution::mcHyp_
reco::CompositeCandidate mcHyp_
Definition: TtSemiEvtSolution.h:323
MET.h
TtSemiEvtSolution::setupHyp
void setupHyp()
Definition: TtSemiEvtSolution.cc:217
Jet.h
TtSemiEvtSolution::probChi2_
double probChi2_
Definition: TtSemiEvtSolution.h:334
TtSemiEvtSolution::getCalHadt
reco::Particle getCalHadt() const
Definition: TtSemiEvtSolution.cc:112
TtSemiEvtSolution::setMCBestAngleLepb
void setMCBestAngleLepb(double adr)
Definition: TtSemiEvtSolution.h:276
TtSemiEvtSolution::angleHadp_
double angleHadp_
Definition: TtSemiEvtSolution.h:331
generator_cfi.scheme
scheme
Definition: generator_cfi.py:22
TtSemiEvtSolution::getRecHadt
reco::Particle getRecHadt() const
Definition: TtSemiEvtSolution.cc:80
edm::Ptr< pat::Jet >
TtSemiEvtSolution::setMCBestJetComb
void setMCBestJetComb(int mcbs)
Definition: TtSemiEvtSolution.h:297
TtGenEvent::hadronicDecayB
const reco::GenParticle * hadronicDecayB(bool excludeTauLeptons=false) const
get b of hadronic decay branch
Definition: TtGenEvent.cc:181
TtSemiEvtSolution::lepb_
edm::Ptr< pat::Jet > lepb_
Definition: TtSemiEvtSolution.h:316
TtSemiEvtSolution
Definition: TtSemiEvtSolution.h:31
TtSemiEvtSolution::getLRSignalEvtLRval
double getLRSignalEvtLRval() const
Definition: TtSemiEvtSolution.h:196
TtSemiEvtSolution::setNeutrinoParametrisation
void setNeutrinoParametrisation(int mp)
Definition: TtSemiEvtSolution.h:285
TtSemiEvtSolution::setSimpleBestJetComb
void setSimpleBestJetComb(int sbs)
Definition: TtSemiEvtSolution.h:298
TtSemiEvtSolution::setJetParametrisation
void setJetParametrisation(int jp)
Definition: TtSemiEvtSolution.h:283
TtSemiEvtSolution::fitHadp_
std::vector< pat::Particle > fitHadp_
Definition: TtSemiEvtSolution.h:320
TtSemiEvtSolution::fitHadq_
std::vector< pat::Particle > fitHadq_
Definition: TtSemiEvtSolution.h:320
TtSemiEvtSolution::getJetParametrisation
int getJetParametrisation() const
Definition: TtSemiEvtSolution.h:181
TtSemiEvtSolution::setProbChi2
void setProbChi2(double c)
Definition: TtSemiEvtSolution.h:291
TtSemiEvtSolution::getMCBestJetComb
int getMCBestJetComb() const
Definition: TtSemiEvtSolution.h:203
TtSemiEvtSolution::setFitLepn
void setFitLepn(const pat::Particle &aFitLepn)
Definition: TtSemiEvtSolution.h:264
Ref.h
TtSemiEvtSolution::getLRSignalEvtObsVal
double getLRSignalEvtObsVal(unsigned int) const
Definition: TtSemiEvtSolution.cc:165
TtSemiEvtSolution::getRecHadq
pat::Jet getRecHadq() const
Definition: TtSemiEvtSolution.h:127
TtSemiEvtSolution::muon_
edm::Ptr< pat::Muon > muon_
Definition: TtSemiEvtSolution.h:317
TtSemiEvtSolution::hadq_
edm::Ptr< pat::Jet > hadq_
Definition: TtSemiEvtSolution.h:316
TtGenEvent::leptonicDecayB
const reco::GenParticle * leptonicDecayB(bool excludeTauLeptons=false) const
get b of leptonic decay branch
Definition: TtGenEvent.cc:227
metsig::jet
Definition: SignAlgoResolutions.h:47
TtSemiEvtSolution::neutrinoParam_
int neutrinoParam_
Definition: TtSemiEvtSolution.h:333
TtSemiEvtSolution::setHadq
void setHadq(const edm::Handle< std::vector< pat::Jet > > &jet, int i)
Definition: TtSemiEvtSolution.h:228
pat::Jet::correctedJet
Jet correctedJet(const std::string &level, const std::string &flavor="none", const std::string &set="") const
TtSemiEvtSolution::getGenLepl
const reco::GenParticle * getGenLepl() const
Definition: TtSemiEvtSolution.h:107
Electron.h
TtGenEvent::hadronicDecayQuarkBar
const reco::GenParticle * hadronicDecayQuarkBar() const
get light anti-quark of hadronic decay branch
Definition: TtGenEvent.h:78
TtSemiEvtSolution::getCalLepW
reco::Particle getCalLepW() const
Definition: TtSemiEvtSolution.cc:129
TtSemiEvtSolution::setLRJetCombLRval
void setLRJetCombLRval(double clr)
Definition: TtSemiEvtSolution.h:301
TtSemiEvtSolution::setLepb
void setLepb(const edm::Handle< std::vector< pat::Jet > > &jet, int i)
Definition: TtSemiEvtSolution.h:230
pat::Electron
Analysis-level electron class.
Definition: Electron.h:51
TtSemiEvtSolution::simpleBestJetComb_
int simpleBestJetComb_
Definition: TtSemiEvtSolution.h:335
TtSemiEvtSolution::angleHadb_
double angleHadb_
Definition: TtSemiEvtSolution.h:331
c
auto & c
Definition: CAHitNtupletGeneratorKernelsImpl.h:46
Particle.h
TtSemiEvtSolution::getRecLepm
pat::Muon getRecLepm() const
Definition: TtSemiEvtSolution.h:131
TtSemiEvtSolution::setMCBestAngleHadp
void setMCBestAngleHadp(double adr)
Definition: TtSemiEvtSolution.h:273
TtSemiEvtSolution::getLRJetCombLRval
double getLRJetCombLRval() const
Definition: TtSemiEvtSolution.h:207
pat::Particle
Analysis-level particle class.
Definition: Particle.h:30
TtSemiEvtSolution::getMCBestAngleHadq
double getMCBestAngleHadq() const
Definition: TtSemiEvtSolution.h:172
reco::CompositeCandidate
Definition: CompositeCandidate.h:21
TtSemiEvtSolution::getFitHadb
pat::Particle getFitHadb() const
Definition: TtSemiEvtSolution.h:153
TtSemiEvtSolution::setMCBestAngleHadq
void setMCBestAngleHadq(double adr)
Definition: TtSemiEvtSolution.h:274
TtGenEvent::hadronicDecayQuark
const reco::GenParticle * hadronicDecayQuark(bool invertFlavor=false) const
get light quark of hadronic decay branch
Definition: TtGenEvent.cc:153
TtSemiEvtSolution::getLRSignalEvtProb
double getLRSignalEvtProb() const
Definition: TtSemiEvtSolution.h:197
TtSemiEvtSolution::setMCBestSumAngles
void setMCBestSumAngles(double sdr)
Definition: TtSemiEvtSolution.h:272
TtSemiEvtSolution::getMCBestAngleHadb
double getMCBestAngleHadb() const
Definition: TtSemiEvtSolution.h:173
TtSemiEvtSolution::getRecHadp
pat::Jet getRecHadp() const
Definition: TtSemiEvtSolution.h:126
TtSemiEvtSolution::getFitHyp
const reco::CompositeCandidate & getFitHyp() const
Definition: TtSemiEvtSolution.h:214