CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
V0Validator.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: V0Validator
4 // Class: V0Validator
5 //
13 //
14 // Original Author: Brian Drell
15 // Created: Wed Feb 18 17:21:04 MST 2009
16 // $Id: V0Validator.h,v 1.6 2010/02/25 20:15:42 drell Exp $
17 //
18 //
19 
20 
21 // system include files
22 #include <memory>
23 
24 // user include files
27 
30 
34 
38 
55 
61 
64 
71 
74 
77 
78 
79 #include "HepMC/GenVertex.h"
80 #include "HepMC/GenParticle.h"
81 
82 #include "TROOT.h"
83 #include "TMath.h"
84 #include "TH1F.h"
85 #include "TH1I.h"
86 #include "TH2F.h"
87 
88 class V0Validator : public edm::EDAnalyzer {
89 
90 public:
91  explicit V0Validator(const edm::ParameterSet&);
92  ~V0Validator();
93 
94 
95 private:
96  //virtual void beginJob(const edm::EventSetup&) ;
97  virtual void analyze(const edm::Event&, const edm::EventSetup&);
98  //virtual void endJob() ;
99  virtual void beginRun(const edm::Run&, const edm::EventSetup&);
100  virtual void endRun(const edm::Run&, const edm::EventSetup&);
101 
102  //Quantities that are to be histogrammed
107  unsigned int K0sPiCandStatus[2], LamPiCandStatus[2], K0sPiEff[2], LamPiEff[2];
108 
109  //Bookkeeping quantities
112 
113  //Temporary histograms so that we can divide them for efficiencies.
114  // They are turned into MonitorElements in endJob()
115  /* TH1F* ksEffVsRHist;
116  TH1F* ksEffVsEtaHist;
117  TH1F* ksEffVsPtHist;
118  TH1F* ksTkEffVsRHist;
119  TH1F* ksTkEffVsEtaHist;
120  TH1F* ksTkEffVsPtHist;
121  TH1F* ksFakeVsRHist;
122  TH1F* ksFakeVsEtaHist;
123  TH1F* ksFakeVsPtHist;
124  TH1F* ksTkFakeVsRHist;
125  TH1F* ksTkFakeVsEtaHist;
126  TH1F* ksTkFakeVsPtHist;
127 
128  TH1F* ksEffVsRHist_denom;
129  TH1F* ksEffVsEtaHist_denom;
130  TH1F* ksEffVsPtHist_denom;
131  TH1F* ksFakeVsRHist_denom;
132  TH1F* ksFakeVsEtaHist_denom;
133  TH1F* ksFakeVsPtHist_denom;
134 
135  TH1F* ksXResolutionHist;
136  TH1F* ksYResolutionHist;
137  TH1F* ksZResolutionHist;
138  TH1F* ksAbsoluteDistResolutionHist;
139  TH1F* lamXResolutionHist;
140  TH1F* lamYResolutionHist;
141  TH1F* lamZResolutionHist;
142  TH1F* lamAbsoluteDistResolutionHist;
143 
144  TH1F* lamEffVsRHist;
145  TH1F* lamEffVsEtaHist;
146  TH1F* lamEffVsPtHist;
147  TH1F* lamTkEffVsRHist;
148  TH1F* lamTkEffVsEtaHist;
149  TH1F* lamTkEffVsPtHist;
150  TH1F* lamFakeVsRHist;
151  TH1F* lamFakeVsEtaHist;
152  TH1F* lamFakeVsPtHist;
153  TH1F* lamTkFakeVsRHist;
154  TH1F* lamTkFakeVsEtaHist;
155  TH1F* lamTkFakeVsPtHist;
156 
157  TH1F* lamEffVsRHist_denom;
158  TH1F* lamEffVsEtaHist_denom;
159  TH1F* lamEffVsPtHist_denom;
160  TH1F* lamFakeVsRHist_denom;
161  TH1F* lamFakeVsEtaHist_denom;
162  TH1F* lamFakeVsPtHist_denom;
163 
164  TH1F* nKsHist;
165  TH1F* nLamHist;
166 
167  TH1F* lamCandStatusHist;
168  TH1F* ksCandStatusHist;
169 
170  TH1F* fakeKsMassHisto;
171  TH1F* goodKsMassHisto;
172  TH1F* fakeLamMassHisto;
173  TH1F* goodLamMassHisto;
174 
175  TH1F* ksFakeDauRadDistHisto;
176  TH1F* lamFakeDauRadDistHisto;*/
177 
178  // DQMStore and MonitorElements for final histograms
180 
193 
206 
213 
220 
233 
246 
255 
258 
261 
266 
269 
270 
273 
274 
275  std::string theDQMRootFileName;
278  std::string dirName;
279 
280 };
281 
MonitorElement * ksTkFakeVsPt
Definition: V0Validator.h:192
MonitorElement * nLam
Definition: V0Validator.h:257
MonitorElement * lamTkFakeVsR_num
Definition: V0Validator.h:243
MonitorElement * ksEffVsR
Definition: V0Validator.h:181
unsigned int K0sCandStatus
Definition: V0Validator.h:106
V0Validator(const edm::ParameterSet &)
Definition: V0Validator.cc:36
float LamGenR
Definition: V0Validator.h:103
MonitorElement * ksFakeVsPt_denom
Definition: V0Validator.h:209
float LamCandR
Definition: V0Validator.h:105
MonitorElement * lamTkEffVsR
Definition: V0Validator.h:224
MonitorElement * lamFakeVsPt
Definition: V0Validator.h:229
MonitorElement * ksTkFakeVsEta
Definition: V0Validator.h:191
MonitorElement * ksFakeVsR_denom
Definition: V0Validator.h:207
MonitorElement * ksFakeVsEta_num
Definition: V0Validator.h:201
unsigned int LamPiCandStatus[2]
Definition: V0Validator.h:107
MonitorElement * lamEffVsEta_num
Definition: V0Validator.h:235
MonitorElement * lamFakeVsPt_denom
Definition: V0Validator.h:216
float KsGenX
Definition: V0Validator.h:104
MonitorElement * ksEffVsR_num
Definition: V0Validator.h:194
MonitorElement * ksFakeVsPt_num
Definition: V0Validator.h:202
MonitorElement * lamFakeVsR_denom
Definition: V0Validator.h:214
MonitorElement * lamEffVsPt_denom
Definition: V0Validator.h:219
unsigned int K0sPiCandStatus[2]
Definition: V0Validator.h:107
MonitorElement * lamEffVsPt_num
Definition: V0Validator.h:236
float KsGenY
Definition: V0Validator.h:104
MonitorElement * lamTkFakeVsR
Definition: V0Validator.h:230
MonitorElement * lamFakeVsR
Definition: V0Validator.h:227
virtual void analyze(const edm::Event &, const edm::EventSetup &)
Definition: V0Validator.cc:451
MonitorElement * ksFakeVsEta
Definition: V0Validator.h:188
MonitorElement * lamZResolution
Definition: V0Validator.h:253
unsigned int LamPiEff[2]
Definition: V0Validator.h:107
MonitorElement * lamFakeDauRadDist
Definition: V0Validator.h:272
MonitorElement * lamTkEffVsEta
Definition: V0Validator.h:225
MonitorElement * lamEffVsR
Definition: V0Validator.h:221
MonitorElement * ksFakeVsEta_denom
Definition: V0Validator.h:208
MonitorElement * fakeLamMass
Definition: V0Validator.h:264
MonitorElement * ksFakeDauRadDist
Definition: V0Validator.h:271
MonitorElement * lamTkFakeVsEta_num
Definition: V0Validator.h:244
MonitorElement * lamTkFakeVsPt
Definition: V0Validator.h:232
MonitorElement * ksEffVsPt_denom
Definition: V0Validator.h:212
int lamCandFound
Definition: V0Validator.h:111
MonitorElement * ksTkFakeVsEta_num
Definition: V0Validator.h:204
int k0sCandFound
Definition: V0Validator.h:111
int noTPforLamCand
Definition: V0Validator.h:111
MonitorElement * ksTkEffVsR_num
Definition: V0Validator.h:197
MonitorElement * lamFakeVsEta_denom
Definition: V0Validator.h:215
DQMStore * theDQMstore
Definition: V0Validator.h:179
edm::InputTag lamCollectionTag
Definition: V0Validator.h:277
MonitorElement * lamXResolution
Definition: V0Validator.h:251
MonitorElement * ksEffVsEta_denom
Definition: V0Validator.h:211
MonitorElement * lamTkEffVsPt
Definition: V0Validator.h:226
float K0sCandEta
Definition: V0Validator.h:105
MonitorElement * goodKsMass
Definition: V0Validator.h:263
float LamGenpT
Definition: V0Validator.h:103
float LamGenY
Definition: V0Validator.h:104
int realLamFound
Definition: V0Validator.h:110
MonitorElement * fakeKsMass
Definition: V0Validator.h:262
MonitorElement * ksTkEffVsPt
Definition: V0Validator.h:186
MonitorElement * goodLamMass
Definition: V0Validator.h:265
MonitorElement * ksFakeVsPt
Definition: V0Validator.h:189
unsigned int LamGenStatus
Definition: V0Validator.h:106
MonitorElement * lamTkFakeVsEta
Definition: V0Validator.h:231
unsigned int K0sGenStatus
Definition: V0Validator.h:106
MonitorElement * ksMassAll
Definition: V0Validator.h:267
MonitorElement * lamTkEffVsR_num
Definition: V0Validator.h:237
MonitorElement * ksTkEffVsR
Definition: V0Validator.h:184
MonitorElement * nKs
Definition: V0Validator.h:256
MonitorElement * lamTkEffVsEta_num
Definition: V0Validator.h:238
int noTPforK0sCand
Definition: V0Validator.h:111
float K0sGenEta
Definition: V0Validator.h:103
MonitorElement * ksXResolution
Definition: V0Validator.h:247
float K0sCandpT
Definition: V0Validator.h:105
float K0sGenpT
Definition: V0Validator.h:103
MonitorElement * lamEffVsEta_denom
Definition: V0Validator.h:218
MonitorElement * lamFakeVsEta
Definition: V0Validator.h:228
MonitorElement * ksAbsoluteDistResolution
Definition: V0Validator.h:250
MonitorElement * ksCandStatus
Definition: V0Validator.h:259
MonitorElement * lamCandStatus
Definition: V0Validator.h:260
MonitorElement * lamEffVsEta
Definition: V0Validator.h:222
float LamGenX
Definition: V0Validator.h:104
MonitorElement * lamTkFakeVsPt_num
Definition: V0Validator.h:245
MonitorElement * lamFakeVsEta_num
Definition: V0Validator.h:241
std::string theDQMRootFileName
Definition: V0Validator.h:275
MonitorElement * ksTkEffVsPt_num
Definition: V0Validator.h:199
MonitorElement * lamFakeVsPt_num
Definition: V0Validator.h:242
MonitorElement * lamMassAll
Definition: V0Validator.h:268
float K0sCandR
Definition: V0Validator.h:105
MonitorElement * lamFakeVsR_num
Definition: V0Validator.h:240
float LamGenEta
Definition: V0Validator.h:103
float LamCandEta
Definition: V0Validator.h:105
MonitorElement * lamEffVsR_num
Definition: V0Validator.h:234
MonitorElement * ksFakeVsR
Definition: V0Validator.h:187
MonitorElement * ksEffVsEta
Definition: V0Validator.h:182
MonitorElement * lamTkEffVsPt_num
Definition: V0Validator.h:239
MonitorElement * lamAbsoluteDistResolution
Definition: V0Validator.h:254
float LamGenZ
Definition: V0Validator.h:104
int lamTracksFound
Definition: V0Validator.h:111
MonitorElement * ksZResolution
Definition: V0Validator.h:249
float KsGenZ
Definition: V0Validator.h:104
unsigned int LamCandStatus
Definition: V0Validator.h:106
MonitorElement * ksEffVsPt_num
Definition: V0Validator.h:196
MonitorElement * ksTkEffVsEta_num
Definition: V0Validator.h:198
MonitorElement * lamEffVsPt
Definition: V0Validator.h:223
MonitorElement * ksEffVsR_denom
Definition: V0Validator.h:210
MonitorElement * ksTkFakeVsPt_num
Definition: V0Validator.h:205
edm::InputTag k0sCollectionTag
Definition: V0Validator.h:276
int realK0sFoundEff
Definition: V0Validator.h:110
MonitorElement * ksTkEffVsEta
Definition: V0Validator.h:185
MonitorElement * ksFakeVsR_num
Definition: V0Validator.h:200
MonitorElement * ksEffVsEta_num
Definition: V0Validator.h:195
virtual void endRun(const edm::Run &, const edm::EventSetup &)
MonitorElement * lamYResolution
Definition: V0Validator.h:252
std::string dirName
Definition: V0Validator.h:278
MonitorElement * ksEffVsPt
Definition: V0Validator.h:183
unsigned int K0sPiEff[2]
Definition: V0Validator.h:107
int k0sTracksFound
Definition: V0Validator.h:111
int realLamFoundEff
Definition: V0Validator.h:110
float K0sGenR
Definition: V0Validator.h:103
MonitorElement * ksTkFakeVsR
Definition: V0Validator.h:190
MonitorElement * ksYResolution
Definition: V0Validator.h:248
MonitorElement * lamEffVsR_denom
Definition: V0Validator.h:217
Definition: Run.h:33
int realK0sFound
Definition: V0Validator.h:110
virtual void beginRun(const edm::Run &, const edm::EventSetup &)
Definition: V0Validator.cc:56
float LamCandpT
Definition: V0Validator.h:105
MonitorElement * ksTkFakeVsR_num
Definition: V0Validator.h:203