CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
QcdLowPtDQM.h
Go to the documentation of this file.
1 
2 #ifndef QcdLowPtDQM_H
3 #define QcdLowPtDQM_H
4 
13 #include <TMath.h>
14 #include <vector>
15 
16 class DQMStore;
17 class MonitorElement;
18 class TrackerGeometry;
19 class TH1F;
20 class TH2F;
21 class TH3F;
22 
24 {
25  public:
26  class Pixel {
27  public:
28  Pixel(double x=0, double y=0, double z=0, double eta=0, double phi=0,
29  double adc=0, double sx=0, double sy=0) :
30  x_(x), y_(y), z_(z), rho_(TMath::Sqrt(x_*x_+y_*y_)),
31  eta_(eta), phi_(phi), adc_(adc), sizex_(sx), sizey_(sy) {}
32  Pixel(const GlobalPoint &p, double adc=0, double sx=0, double sy=0) :
33  x_(p.x()), y_(p.y()), z_(p.z()), rho_(TMath::Sqrt(x_*x_+y_*y_)),
34  eta_(p.eta()), phi_(p.phi()), adc_(adc), sizex_(sx), sizey_(sy) {}
35  double adc() const { return adc_; }
36  double eta() const { return eta_; }
37  double rho() const { return rho_; }
38  double phi() const { return phi_; }
39  double sizex() const { return sizex_; }
40  double sizey() const { return sizey_; }
41  double x() const { return x_; }
42  double y() const { return y_; }
43  double z() const { return z_; }
44  protected:
45  double x_,y_,z_,rho_,eta_,phi_;
46  double adc_,sizex_,sizey_;
47  };
48  class Tracklet {
49  public:
50  Tracklet() : i1_(-1), i2_(-2), deta_(0), dphi_(0) {}
51  Tracklet(const Pixel &p1, const Pixel &p2) :
52  p1_(p1), p2_(p2), i1_(-1), i2_(-1),
53  deta_(p1.eta()-p2.eta()), dphi_(Geom::deltaPhi(p1.phi(),p2.phi())) {}
54  double deta() const { return deta_; }
55  double dphi() const { return dphi_; }
56  int i1() const { return i1_; }
57  int i2() const { return i2_; }
58  double eta() const { return p1_.eta(); }
59  const Pixel &p1() const { return p1_; }
60  const Pixel &p2() const { return p2_; }
61  void seti1(int i1) { i1_ = i1; }
62  void seti2(int i2) { i2_ = i2; }
63  protected:
65  int i1_, i2_;
66  double deta_,dphi_;
67  };
68  class Vertex {
69  public:
70  Vertex(double x=0, double y=0, double z=0, double xs=0, double ys=0, double zs=0, int n=0) :
71  x_(x), y_(y), z_(z), xs_(xs), ys_(ys), zs_(zs), n_(n) {}
72  int n() const { return n_; }
73  double x() const { return x_; }
74  double y() const { return y_; }
75  double z() const { return z_; }
76  double xs() const { return xs_; }
77  double ys() const { return ys_; }
78  double zs() const { return zs_; }
79  void set(int n, double z, double zs) { n_= n; z_ = z; zs_ = zs; }
80  void set(int n, double x,double y,double z, double xs,double ys,double zs)
81  { n_= n; x_ = x; xs_ = xs; y_ = y; ys_ = ys; z_ = z; zs_ = zs; }
82  protected:
83  double x_,y_,z_,xs_,ys_,zs_;
84  int n_;
85  };
86 
88  virtual ~QcdLowPtDQM();
89 
90  void analyze(const edm::Event &iEvent, const edm::EventSetup &iSetup);
91  void beginJob(void);
93  const edm::EventSetup &iSetup);
94  void beginRun(const edm::Run &r, const edm::EventSetup &iSetup);
95  void endJob(void);
96  void endRun(const edm::Run &r, const edm::EventSetup &iSetup);
98  const edm::EventSetup &iSetup);
99 
100  private:
101  void book1D(std::vector<MonitorElement*> &mes,
102  const std::string &name, const std::string &title,
103  int nx, double x1, double x2, bool sumw2=1, bool sbox=1);
104  void book2D(std::vector<MonitorElement*> &mes,
105  const std::string &name, const std::string &title,
106  int nx, double x1, double x2, int ny, double y1, double y2,
107  bool sumw2=1, bool sbox=1);
108  void create1D(std::vector<TH1F*> &mes,
109  const std::string &name, const std::string &title,
110  int nx, double x1, double x2, bool sumw2=1, bool sbox=1);
111  void create2D(std::vector<TH2F*> &mes,
112  const std::string &name, const std::string &title,
113  int nx, double x1, double x2, int ny, double y1, double y2,
114  bool sumw2=1, bool sbox=1);
115  void createHistos();
116  void fill1D(std::vector<TH1F*> &hs, double val, double w=1.);
117  void fill1D(std::vector<MonitorElement*> &mes, double val, double w=1.);
118  void fill2D(std::vector<TH2F*> &hs,
119  double valx, double valy, double w=1.);
120  void fill2D(std::vector<MonitorElement*> &mes,
121  double valx, double valy, double w=1.);
122  void fill3D(std::vector<TH3F*> &hs, int gbin, double w=1.);
123  void filldNdeta(const TH3F *AlphaTracklets,
124  const std::vector<TH3F*> &NsigTracklets,
125  const std::vector<TH3F*> &NbkgTracklets,
126  const std::vector<TH1F*> &NEvsPerEta,
127  std::vector<MonitorElement*> &hdNdEtaRawTrkl,
128  std::vector<MonitorElement*> &hdNdEtaSubTrkl,
129  std::vector<MonitorElement*> &hdNdEtaTrklets);
130  void fillHltBits(const edm::Event &iEvent);
131  void fillPixels(const edm::Event &iEvent, const edm::EventSetup& iSetup);
132  void fillPixelClusterInfos(const edm::Event &iEvent, int which=12);
133  void fillPixelClusterInfos(const double vz,
134  const std::vector<Pixel> &pix,
135  std::vector<MonitorElement*> &hClusterYSize,
136  std::vector<MonitorElement*> &hClusterADC);
137  void fillTracklets(const edm::Event &iEvent, int which=12);
138  void fillTracklets(std::vector<Tracklet> &tracklets,
139  const std::vector<Pixel> &pix1,
140  const std::vector<Pixel> &pix2,
141  const Vertex &trackletV);
142  void fillTracklets(const std::vector<Tracklet> &tracklets,
143  const std::vector<Pixel> &pixels,
144  const Vertex &trackletV,
145  const TH3F *AlphaTracklets,
146  std::vector<TH3F*> &NsigTracklets,
147  std::vector<TH3F*> &NbkgTracklets,
148  std::vector<TH1F*> &eventpereta,
149  std::vector<MonitorElement*> &detaphi,
150  std::vector<MonitorElement*> &deta,
151  std::vector<MonitorElement*> &dphi,
152  std::vector<MonitorElement*> &etavsvtx);
153  template <typename TYPE>
155  const edm::Event &event) const;
156  template <typename TYPE>
158  const edm::Event &event) const;
159  void print(int level, const char *msg);
160  void print(int level, const std::string &msg)
161  { print(level,msg.c_str()); }
162  void reallyPrint(int level, const char *msg);
163  void trackletVertexUnbinned(const edm::Event &iEvent, int which=12);
164  void trackletVertexUnbinned(std::vector<Pixel> &pix1,
165  std::vector<Pixel> &pix2,
166  Vertex &vtx);
167  double vertexZFromClusters(const std::vector<Pixel> &pix) const;
168  void yieldAlphaHistogram(int which=12);
169 
170  std::string hltResName_; //HLT trigger results name
171  std::vector<std::string> hltProcNames_; //HLT process name(s)
172  std::vector<std::string> hltTrgNames_; //HLT trigger name(s)
173  std::string pixelName_; //pixel reconstructed hits name
174  std::string clusterVtxName_; //cluster vertex name
175  double ZVCut_; //Z vertex cut for selected events
176  double ZVEtaRegion_; //Z vertex eta region
177  double ZVVtxRegion_; //Z vertex vtx region
178  double dPhiVc_; //dPhi vertex cut for tracklet based vertex
179  double dZVc_; //dZ vertex cut for tracklet based vertex
180  double sigEtaCut_; //signal tracklet eta cut
181  double sigPhiCut_; //signal tracklet phi cut
182  double bkgEtaCut_; //bkg tracklet eta cut
183  double bkgPhiCut_; //bgk tracklet phi cut
184  int verbose_; //verbosity (0=debug,1=warn,2=error,3=throw)
185  int pixLayers_; //12 for 12, 13 for 12 and 13, 23 for all
186  int clusLayers_; //12 for 12, 13 for 12 and 13, 23 for all
187  bool useRecHitQ_; //if true use rec hit quality word
188  bool usePixelQ_; //if true use pixel hit quality word
189  std::vector<int> hltTrgBits_; //HLT trigger bit(s)
190  std::vector<bool> hltTrgDeci_; //HLT trigger descision(s)
191  std::vector<std::string> hltTrgUsedNames_; //HLT used trigger name(s)
192  std::string hltUsedResName_; //used HLT trigger results name
193  std::vector<Pixel> bpix1_; //barrel pixels layer 1
194  std::vector<Pixel> bpix2_; //barrel pixels layer 2
195  std::vector<Pixel> bpix3_; //barrel pixels layer 3
196  std::vector<Tracklet> btracklets12_; //barrel tracklets 12
197  std::vector<Tracklet> btracklets13_; //barrel tracklets 13
198  std::vector<Tracklet> btracklets23_; //barrel tracklets 23
199  Vertex trackletV12_; //reconstructed tracklet vertex 12
200  Vertex trackletV13_; //reconstructed tracklet vertex 13
201  Vertex trackletV23_; //reconstructed tracklet vertex 23
202  std::vector<TH3F*> NsigTracklets12_; //number of signal tracklets 12
203  std::vector<TH3F*> NbkgTracklets12_; //number of background tracklets 12
204  std::vector<TH1F*> hEvtCountsPerEta12_; //event count per tracklet12 eta-vtx region
205  TH3F *AlphaTracklets12_; //alpha correction for tracklets 12
206  std::vector<TH3F*> NsigTracklets13_; //number of signal tracklets 13
207  std::vector<TH3F*> NbkgTracklets13_; //number of background tracklets 13
208  std::vector<TH1F*> hEvtCountsPerEta13_; //event count per tracklet13 eta-vtx region
209  TH3F *AlphaTracklets13_; //alpha correction for tracklets 13
210  std::vector<TH3F*> NsigTracklets23_; //number of signal tracklets 23
211  std::vector<TH3F*> NbkgTracklets23_; //number of background tracklets 23
212  std::vector<TH1F*> hEvtCountsPerEta23_; //event count per tracklet23 eta-vtx region
213  TH3F *AlphaTracklets23_; //alpha correction for tracklets 23
215  const TrackerGeometry *tgeo_; //tracker geometry
216  DQMStore *theDbe_; //dqm store
217  MonitorElement *repSumMap_; //report summary map
218  MonitorElement *repSummary_; //report summary
219  MonitorElement *h2TrigCorr_; //trigger correlation plot
220  std::vector<MonitorElement*> hNhitsL1_; //number of hits on layer 1
221  std::vector<MonitorElement*> hNhitsL2_; //number of hits on layer 2
222  std::vector<MonitorElement*> hNhitsL3_; //number of hits on layer 3
223  std::vector<MonitorElement*> hNhitsL1z_; //number of hits on layer 1 (zoomed)
224  std::vector<MonitorElement*> hNhitsL2z_; //number of hits on layer 2 (zoomed)
225  std::vector<MonitorElement*> hNhitsL3z_; //number of hits on layer 3 (zoomed)
226  std::vector<MonitorElement*> hdNdEtaHitsL1_; //dN/dEta of hits on layer 1
227  std::vector<MonitorElement*> hdNdEtaHitsL2_; //dN/dEta of hits on layer 2
228  std::vector<MonitorElement*> hdNdEtaHitsL3_; //dN/dEta of hits on layer 3
229  std::vector<MonitorElement*> hdNdPhiHitsL1_; //dN/dPhi of hits on layer 1
230  std::vector<MonitorElement*> hdNdPhiHitsL2_; //dN/dPhi of hits on layer 2
231  std::vector<MonitorElement*> hdNdPhiHitsL3_; //dN/dPhi of hits on layer 3
232  std::vector<MonitorElement*> hTrkVtxZ12_; //tracklet z vertex 12 histograms
233  std::vector<MonitorElement*> hTrkVtxZ13_; //tracklet z vertex 13 histograms
234  std::vector<MonitorElement*> hTrkVtxZ23_; //tracklet z vertex 23 histograms
235  std::vector<MonitorElement*> hRawTrkEtaVtxZ12_; //tracklet eta vs z vertex 12 histograms
236  std::vector<MonitorElement*> hRawTrkEtaVtxZ13_; //tracklet eta vs z vertex 13 histograms
237  std::vector<MonitorElement*> hRawTrkEtaVtxZ23_; //tracklet eta vs z vertex 23 histograms
238  std::vector<MonitorElement*> hTrkRawDetaDphi12_; //tracklet12 Deta/Dphi distribution
239  std::vector<MonitorElement*> hTrkRawDeta12_; //tracklet12 Deta distribution
240  std::vector<MonitorElement*> hTrkRawDphi12_; //tracklet12 Dphi distribution
241  std::vector<MonitorElement*> hTrkRawDetaDphi13_; //tracklet13 Deta/Dphi distribution
242  std::vector<MonitorElement*> hTrkRawDeta13_; //tracklet13 Deta distribution
243  std::vector<MonitorElement*> hTrkRawDphi13_; //tracklet13 Dphi distribution
244  std::vector<MonitorElement*> hTrkRawDetaDphi23_; //tracklet23 Deta/Dphi distribution
245  std::vector<MonitorElement*> hTrkRawDeta23_; //tracklet23 Deta distribution
246  std::vector<MonitorElement*> hTrkRawDphi23_; //tracklet23 Dphi distribution
247  std::vector<MonitorElement*> hdNdEtaRawTrkl12_; //dN/dEta from raw tracklets 12
248  std::vector<MonitorElement*> hdNdEtaSubTrkl12_; //dN/dEta from beta tracklets 12
249  std::vector<MonitorElement*> hdNdEtaTrklets12_; //dN/dEta corrected by alpha 12
250  std::vector<MonitorElement*> hdNdEtaRawTrkl13_; //dN/dEta from raw tracklets 13
251  std::vector<MonitorElement*> hdNdEtaSubTrkl13_; //dN/dEta from beta tracklets 13
252  std::vector<MonitorElement*> hdNdEtaTrklets13_; //dN/dEta corrected by alpha 13
253  std::vector<MonitorElement*> hdNdEtaRawTrkl23_; //dN/dEta from raw tracklets 23
254  std::vector<MonitorElement*> hdNdEtaSubTrkl23_; //dN/dEta from beta tracklets 23
255  std::vector<MonitorElement*> hdNdEtaTrklets23_; //dN/dEta corrected by alpha 23
256  std::vector<MonitorElement*> hClusterVertexZ_; //cluster z vertex histograms
257  std::vector<MonitorElement*> hClusterYSize1_; //cluster y size histograms on layer 1
258  std::vector<MonitorElement*> hClusterYSize2_; //cluster y size histograms on layer 2
259  std::vector<MonitorElement*> hClusterYSize3_; //cluster y size histograms on layer 3
260  std::vector<MonitorElement*> hClusterADC1_; //cluster adc histograms on layer 1
261  std::vector<MonitorElement*> hClusterADC2_; //cluster adc histograms on layer 2
262  std::vector<MonitorElement*> hClusterADC3_; //cluster adc histograms on layer 3
263 };
264 
265 //--------------------------------------------------------------------------------------------------
266 template <typename TYPE>
268  const edm::Event &event) const
269 {
270  // Try to access data collection from EDM file. We check if we really get just one
271  // product with the given name. If not we throw an exception.
272 
273  event.getByLabel(edm::InputTag(name),prod);
274  if (!prod.isValid())
275  throw edm::Exception(edm::errors::Configuration, "QcdLowPtDQM::GetProduct()\n")
276  << "Collection with label " << name << " is not valid" << std::endl;
277 }
278 
279 //--------------------------------------------------------------------------------------------------
280 template <typename TYPE>
282  const edm::Event &event) const
283 {
284  // Try to safely access data collection from EDM file. We check if we really get just one
285  // product with the given name. If not, we return false.
286 
287  if (name.size()==0)
288  return false;
289 
290  try {
291  event.getByLabel(edm::InputTag(name),prod);
292  if (!prod.isValid())
293  return false;
294  } catch (...) {
295  return false;
296  }
297  return true;
298 }
299 
300 //--------------------------------------------------------------------------------------------------
301 inline void QcdLowPtDQM::print(int level, const char *msg)
302 {
303  // Print out message if it
304 
305  if (level>=verbose_)
306  reallyPrint(level,msg);
307 }
308 #endif
309 
310 /* Local Variables: */
311 /* show-trailing-whitespace: t */
312 /* truncate-lines: t */
313 /* End: */
double x() const
Definition: QcdLowPtDQM.h:73
void seti2(int i2)
Definition: QcdLowPtDQM.h:62
double vertexZFromClusters(const std::vector< Pixel > &pix) const
void seti1(int i1)
Definition: QcdLowPtDQM.h:61
std::vector< MonitorElement * > hRawTrkEtaVtxZ23_
Definition: QcdLowPtDQM.h:237
Pixel(double x=0, double y=0, double z=0, double eta=0, double phi=0, double adc=0, double sx=0, double sy=0)
Definition: QcdLowPtDQM.h:28
std::vector< MonitorElement * > hdNdEtaSubTrkl23_
Definition: QcdLowPtDQM.h:254
std::vector< TH1F * > hEvtCountsPerEta12_
Definition: QcdLowPtDQM.h:204
double dphi() const
Definition: QcdLowPtDQM.h:55
std::vector< std::string > hltProcNames_
Definition: QcdLowPtDQM.h:171
dictionary parameters
Definition: Parameters.py:2
double sizey() const
Definition: QcdLowPtDQM.h:40
double ZVEtaRegion_
Definition: QcdLowPtDQM.h:176
double ZVCut_
Definition: QcdLowPtDQM.h:175
QcdLowPtDQM(const edm::ParameterSet &parameters)
Definition: QcdLowPtDQM.cc:47
std::vector< MonitorElement * > hdNdEtaSubTrkl12_
Definition: QcdLowPtDQM.h:248
std::vector< TH3F * > NbkgTracklets23_
Definition: QcdLowPtDQM.h:211
std::vector< Tracklet > btracklets23_
Definition: QcdLowPtDQM.h:198
std::vector< TH3F * > NsigTracklets13_
Definition: QcdLowPtDQM.h:206
double deta() const
Definition: QcdLowPtDQM.h:54
const double w
Definition: UKUtility.cc:23
std::vector< MonitorElement * > hTrkRawDeta12_
Definition: QcdLowPtDQM.h:239
std::vector< MonitorElement * > hdNdEtaHitsL1_
Definition: QcdLowPtDQM.h:226
double z() const
Definition: QcdLowPtDQM.h:43
double sizex() const
Definition: QcdLowPtDQM.h:39
const Pixel & p1() const
Definition: QcdLowPtDQM.h:59
HLTConfigProvider hltConfig_
Definition: QcdLowPtDQM.h:214
std::vector< MonitorElement * > hRawTrkEtaVtxZ12_
Definition: QcdLowPtDQM.h:235
double y() const
Definition: QcdLowPtDQM.h:42
std::vector< MonitorElement * > hdNdPhiHitsL3_
Definition: QcdLowPtDQM.h:231
std::vector< MonitorElement * > hdNdPhiHitsL2_
Definition: QcdLowPtDQM.h:230
std::vector< MonitorElement * > hNhitsL1_
Definition: QcdLowPtDQM.h:220
int n() const
Definition: QcdLowPtDQM.h:72
double dZVc_
Definition: QcdLowPtDQM.h:179
double ys() const
Definition: QcdLowPtDQM.h:77
double z() const
Definition: QcdLowPtDQM.h:75
std::vector< TH3F * > NbkgTracklets12_
Definition: QcdLowPtDQM.h:203
std::string pixelName_
Definition: QcdLowPtDQM.h:173
void trackletVertexUnbinned(const edm::Event &iEvent, int which=12)
std::vector< TH1F * > hEvtCountsPerEta13_
Definition: QcdLowPtDQM.h:208
std::vector< TH1F * > hEvtCountsPerEta23_
Definition: QcdLowPtDQM.h:212
std::vector< bool > hltTrgDeci_
Definition: QcdLowPtDQM.h:190
void createHistos()
Definition: QcdLowPtDQM.cc:329
std::string hltResName_
Definition: QcdLowPtDQM.h:170
void analyze(const edm::Event &iEvent, const edm::EventSetup &iSetup)
Definition: QcdLowPtDQM.cc:110
void book2D(std::vector< MonitorElement * > &mes, const std::string &name, const std::string &title, int nx, double x1, double x2, int ny, double y1, double y2, bool sumw2=1, bool sbox=1)
Definition: QcdLowPtDQM.cc:272
void print(int level, const std::string &msg)
Definition: QcdLowPtDQM.h:160
double phi() const
Definition: QcdLowPtDQM.h:38
std::vector< MonitorElement * > hClusterYSize1_
Definition: QcdLowPtDQM.h:257
Pixel(const GlobalPoint &p, double adc=0, double sx=0, double sy=0)
Definition: QcdLowPtDQM.h:32
std::vector< MonitorElement * > hClusterADC2_
Definition: QcdLowPtDQM.h:261
std::vector< MonitorElement * > hNhitsL3_
Definition: QcdLowPtDQM.h:222
void beginLuminosityBlock(const edm::LuminosityBlock &l, const edm::EventSetup &iSetup)
Definition: QcdLowPtDQM.cc:145
bool useRecHitQ_
Definition: QcdLowPtDQM.h:187
double dPhiVc_
Definition: QcdLowPtDQM.h:178
double sigPhiCut_
Definition: QcdLowPtDQM.h:181
std::vector< TH3F * > NbkgTracklets13_
Definition: QcdLowPtDQM.h:207
std::vector< MonitorElement * > hTrkRawDeta13_
Definition: QcdLowPtDQM.h:242
MonitorElement * repSummary_
Definition: QcdLowPtDQM.h:218
TH3F * AlphaTracklets13_
Definition: QcdLowPtDQM.h:209
std::vector< MonitorElement * > hdNdEtaTrklets23_
Definition: QcdLowPtDQM.h:255
Vertex trackletV13_
Definition: QcdLowPtDQM.h:200
void beginRun(const edm::Run &r, const edm::EventSetup &iSetup)
Definition: QcdLowPtDQM.cc:152
std::vector< TH3F * > NsigTracklets23_
Definition: QcdLowPtDQM.h:210
std::vector< Tracklet > btracklets12_
Definition: QcdLowPtDQM.h:196
std::vector< MonitorElement * > hClusterADC1_
Definition: QcdLowPtDQM.h:260
bool usePixelQ_
Definition: QcdLowPtDQM.h:188
void fill3D(std::vector< TH3F * > &hs, int gbin, double w=1.)
Definition: QcdLowPtDQM.cc:759
int iEvent
Definition: GenABIO.cc:230
void getProduct(const std::string name, edm::Handle< TYPE > &prod, const edm::Event &event) const
Definition: QcdLowPtDQM.h:267
void set(int n, double x, double y, double z, double xs, double ys, double zs)
Definition: QcdLowPtDQM.h:80
std::vector< MonitorElement * > hTrkVtxZ12_
Definition: QcdLowPtDQM.h:232
std::vector< MonitorElement * > hdNdEtaHitsL2_
Definition: QcdLowPtDQM.h:227
std::vector< MonitorElement * > hTrkRawDphi13_
Definition: QcdLowPtDQM.h:243
std::vector< MonitorElement * > hClusterVertexZ_
Definition: QcdLowPtDQM.h:256
MonitorElement * repSumMap_
Definition: QcdLowPtDQM.h:217
std::vector< MonitorElement * > hNhitsL2_
Definition: QcdLowPtDQM.h:221
std::vector< MonitorElement * > hTrkVtxZ23_
Definition: QcdLowPtDQM.h:234
std::vector< MonitorElement * > hTrkRawDetaDphi12_
Definition: QcdLowPtDQM.h:238
std::vector< MonitorElement * > hNhitsL1z_
Definition: QcdLowPtDQM.h:223
std::vector< MonitorElement * > hTrkRawDetaDphi23_
Definition: QcdLowPtDQM.h:244
std::vector< std::string > hltTrgUsedNames_
Definition: QcdLowPtDQM.h:191
double eta() const
Definition: QcdLowPtDQM.h:58
std::vector< MonitorElement * > hdNdEtaRawTrkl12_
Definition: QcdLowPtDQM.h:247
std::vector< MonitorElement * > hdNdEtaTrklets12_
Definition: QcdLowPtDQM.h:249
std::vector< Pixel > bpix3_
Definition: QcdLowPtDQM.h:195
void beginJob(void)
Definition: QcdLowPtDQM.cc:131
std::vector< MonitorElement * > hClusterADC3_
Definition: QcdLowPtDQM.h:262
std::vector< MonitorElement * > hNhitsL3z_
Definition: QcdLowPtDQM.h:225
Vertex trackletV23_
Definition: QcdLowPtDQM.h:201
void endRun(const edm::Run &r, const edm::EventSetup &iSetup)
Definition: QcdLowPtDQM.cc:692
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
void create1D(std::vector< TH1F * > &mes, const std::string &name, const std::string &title, int nx, double x1, double x2, bool sumw2=1, bool sbox=1)
Definition: QcdLowPtDQM.cc:292
bool isValid() const
Definition: HandleBase.h:76
void fillHltBits(const edm::Event &iEvent)
Definition: QcdLowPtDQM.cc:771
void fillPixelClusterInfos(const edm::Event &iEvent, int which=12)
Definition: QcdLowPtDQM.cc:898
std::vector< TH3F * > NsigTracklets12_
Definition: QcdLowPtDQM.h:202
double zs() const
Definition: QcdLowPtDQM.h:78
void fill2D(std::vector< TH2F * > &hs, double valx, double valy, double w=1.)
Definition: QcdLowPtDQM.cc:735
double rho() const
Definition: QcdLowPtDQM.h:37
Vertex trackletV12_
Definition: QcdLowPtDQM.h:199
void fillTracklets(const edm::Event &iEvent, int which=12)
Definition: QcdLowPtDQM.cc:952
std::vector< MonitorElement * > hRawTrkEtaVtxZ13_
Definition: QcdLowPtDQM.h:236
void set(int n, double z, double zs)
Definition: QcdLowPtDQM.h:79
bool getProductSafe(const std::string name, edm::Handle< TYPE > &prod, const edm::Event &event) const
Definition: QcdLowPtDQM.h:281
double bkgEtaCut_
Definition: QcdLowPtDQM.h:182
const Pixel & p2() const
Definition: QcdLowPtDQM.h:60
void print(int level, const char *msg)
Definition: QcdLowPtDQM.h:301
double sigEtaCut_
Definition: QcdLowPtDQM.h:180
std::vector< MonitorElement * > hdNdPhiHitsL1_
Definition: QcdLowPtDQM.h:229
std::string clusterVtxName_
Definition: QcdLowPtDQM.h:174
std::vector< MonitorElement * > hTrkRawDeta23_
Definition: QcdLowPtDQM.h:245
double y() const
Definition: QcdLowPtDQM.h:74
double ZVVtxRegion_
Definition: QcdLowPtDQM.h:177
double x() const
Definition: QcdLowPtDQM.h:41
MonitorElement * h2TrigCorr_
Definition: QcdLowPtDQM.h:219
TH3F * AlphaTracklets12_
Definition: QcdLowPtDQM.h:205
void yieldAlphaHistogram(int which=12)
const TrackerGeometry * tgeo_
Definition: QcdLowPtDQM.h:215
Tracklet(const Pixel &p1, const Pixel &p2)
Definition: QcdLowPtDQM.h:51
std::vector< Pixel > bpix2_
Definition: QcdLowPtDQM.h:194
double eta() const
Definition: QcdLowPtDQM.h:36
void filldNdeta(const TH3F *AlphaTracklets, const std::vector< TH3F * > &NsigTracklets, const std::vector< TH3F * > &NbkgTracklets, const std::vector< TH1F * > &NEvsPerEta, std::vector< MonitorElement * > &hdNdEtaRawTrkl, std::vector< MonitorElement * > &hdNdEtaSubTrkl, std::vector< MonitorElement * > &hdNdEtaTrklets)
Definition: QcdLowPtDQM.cc:576
std::vector< MonitorElement * > hdNdEtaHitsL3_
Definition: QcdLowPtDQM.h:228
void book1D(std::vector< MonitorElement * > &mes, const std::string &name, const std::string &title, int nx, double x1, double x2, bool sumw2=1, bool sbox=1)
Definition: QcdLowPtDQM.cc:253
Vertex(double x=0, double y=0, double z=0, double xs=0, double ys=0, double zs=0, int n=0)
Definition: QcdLowPtDQM.h:70
void create2D(std::vector< TH2F * > &mes, const std::string &name, const std::string &title, int nx, double x1, double x2, int ny, double y1, double y2, bool sumw2=1, bool sbox=1)
Definition: QcdLowPtDQM.cc:310
DQMStore * theDbe_
Definition: QcdLowPtDQM.h:216
void endJob(void)
Definition: QcdLowPtDQM.cc:570
std::vector< MonitorElement * > hdNdEtaTrklets13_
Definition: QcdLowPtDQM.h:252
std::string hltUsedResName_
Definition: QcdLowPtDQM.h:192
std::vector< Pixel > bpix1_
Definition: QcdLowPtDQM.h:193
TH3F * AlphaTracklets23_
Definition: QcdLowPtDQM.h:213
std::vector< MonitorElement * > hdNdEtaSubTrkl13_
Definition: QcdLowPtDQM.h:251
tuple level
Definition: testEve_cfg.py:34
double adc() const
Definition: QcdLowPtDQM.h:35
virtual ~QcdLowPtDQM()
Definition: QcdLowPtDQM.cc:94
std::vector< MonitorElement * > hNhitsL2z_
Definition: QcdLowPtDQM.h:224
void fill1D(std::vector< TH1F * > &hs, double val, double w=1.)
Definition: QcdLowPtDQM.cc:711
std::vector< std::string > hltTrgNames_
Definition: QcdLowPtDQM.h:172
std::vector< MonitorElement * > hTrkRawDetaDphi13_
Definition: QcdLowPtDQM.h:241
std::vector< Tracklet > btracklets13_
Definition: QcdLowPtDQM.h:197
double xs() const
Definition: QcdLowPtDQM.h:76
std::vector< MonitorElement * > hTrkVtxZ13_
Definition: QcdLowPtDQM.h:233
std::vector< MonitorElement * > hClusterYSize2_
Definition: QcdLowPtDQM.h:258
std::vector< MonitorElement * > hTrkRawDphi23_
Definition: QcdLowPtDQM.h:246
std::vector< int > hltTrgBits_
Definition: QcdLowPtDQM.h:189
std::vector< MonitorElement * > hTrkRawDphi12_
Definition: QcdLowPtDQM.h:240
Definition: Run.h:41
void endLuminosityBlock(const edm::LuminosityBlock &l, const edm::EventSetup &iSetup)
Definition: QcdLowPtDQM.cc:675
std::vector< MonitorElement * > hdNdEtaRawTrkl13_
Definition: QcdLowPtDQM.h:250
std::vector< MonitorElement * > hClusterYSize3_
Definition: QcdLowPtDQM.h:259
double bkgPhiCut_
Definition: QcdLowPtDQM.h:183
Definition: DDAxes.h:10
void reallyPrint(int level, const char *msg)
void fillPixels(const edm::Event &iEvent, const edm::EventSetup &iSetup)
Definition: QcdLowPtDQM.cc:806
std::vector< MonitorElement * > hdNdEtaRawTrkl23_
Definition: QcdLowPtDQM.h:253