CMS 3D CMS Logo

SiPixelDigiValid.cc
Go to the documentation of this file.
21 
22 // using namespace std;
23 // using namespace edm;
24 
26  : outputFile_(ps.getUntrackedParameter<std::string>("outputFile", "pixeldigihisto.root")),
27  runStandalone(ps.getParameter<bool>("runStandalone")),
28  dbe_(nullptr),
29  edmDetSetVector_PixelDigi_Token_(consumes<edm::DetSetVector<PixelDigi>>(ps.getParameter<edm::InputTag>("src"))) {}
30 
32 
36 
37  if (dbe_) {
38  ibooker.setCurrentFolder("TrackerDigisV/TrackerDigis/Pixel");
39 
40  meDigiMultiLayer1Ring1_ = ibooker.book1D("digimulti_layer1ring1", "Digi Multiplicity ", 30, 0., 30.);
41  meDigiMultiLayer1Ring2_ = ibooker.book1D("digimulti_layer1ring2", "Digi Multiplicity ", 30, 0., 30.);
42  meDigiMultiLayer1Ring3_ = ibooker.book1D("digimulti_layer1ring3", "Digi Multiplicity ", 30, 0., 30.);
43  meDigiMultiLayer1Ring4_ = ibooker.book1D("digimulti_layer1ring4", "Digi Multiplicity ", 30, 0., 30.);
44  meDigiMultiLayer1Ring5_ = ibooker.book1D("digimulti_layer1ring5", "Digi Multiplicity ", 30, 0., 30.);
45  meDigiMultiLayer1Ring6_ = ibooker.book1D("digimulti_layer1ring6", "Digi Multiplicity ", 30, 0., 30.);
46  meDigiMultiLayer1Ring7_ = ibooker.book1D("digimulti_layer1ring7", "Digi Multiplicity ", 30, 0., 30.);
47  meDigiMultiLayer1Ring8_ = ibooker.book1D("digimulti_layer1ring8", "Digi Multiplicity ", 30, 0., 30.);
48 
49  meDigiMultiLayer2Ring1_ = ibooker.book1D("digimulti_layer2ring1", "Digi Multiplicity ", 30, 0., 30.);
50  meDigiMultiLayer2Ring2_ = ibooker.book1D("digimulti_layer2ring2", "Digi Multiplicity ", 30, 0., 30.);
51  meDigiMultiLayer2Ring3_ = ibooker.book1D("digimulti_layer2ring3", "Digi Multiplicity ", 30, 0., 30.);
52  meDigiMultiLayer2Ring4_ = ibooker.book1D("digimulti_layer2ring4", "Digi Multiplicity ", 30, 0., 30.);
53  meDigiMultiLayer2Ring5_ = ibooker.book1D("digimulti_layer2ring5", "Digi Multiplicity ", 30, 0., 30.);
54  meDigiMultiLayer2Ring6_ = ibooker.book1D("digimulti_layer2ring6", "Digi Multiplicity ", 30, 0., 30.);
55  meDigiMultiLayer2Ring7_ = ibooker.book1D("digimulti_layer2ring7", "Digi Multiplicity ", 30, 0., 30.);
56  meDigiMultiLayer2Ring8_ = ibooker.book1D("digimulti_layer2ring8", "Digi Multiplicity ", 30, 0., 30.);
57 
58  meDigiMultiLayer3Ring1_ = ibooker.book1D("digimulti_layer3ring1", "Digi Multiplicity ", 30, 0., 30.);
59  meDigiMultiLayer3Ring2_ = ibooker.book1D("digimulti_layer3ring2", "Digi Multiplicity ", 30, 0., 30.);
60  meDigiMultiLayer3Ring3_ = ibooker.book1D("digimulti_layer3ring3", "Digi Multiplicity ", 30, 0., 30.);
61  meDigiMultiLayer3Ring4_ = ibooker.book1D("digimulti_layer3ring4", "Digi Multiplicity ", 30, 0., 30.);
62  meDigiMultiLayer3Ring5_ = ibooker.book1D("digimulti_layer3ring5", "Digi Multiplicity ", 30, 0., 30.);
63  meDigiMultiLayer3Ring6_ = ibooker.book1D("digimulti_layer3ring6", "Digi Multiplicity ", 30, 0., 30.);
64  meDigiMultiLayer3Ring7_ = ibooker.book1D("digimulti_layer3ring7", "Digi Multiplicity ", 30, 0., 30.);
65  meDigiMultiLayer3Ring8_ = ibooker.book1D("digimulti_layer3ring8", "Digi Multiplicity ", 30, 0., 30.);
66 
68  meAdcLayer1Ring1_ = ibooker.book1D("adc_layer1ring1", "Digi charge", 50, 0., 300.);
69  meAdcLayer1Ring2_ = ibooker.book1D("adc_layer1ring2", "Digi charge", 50, 0., 300.);
70  meAdcLayer1Ring3_ = ibooker.book1D("adc_layer1ring3", "Digi charge", 50, 0., 300.);
71  meAdcLayer1Ring4_ = ibooker.book1D("adc_layer1ring4", "Digi charge", 50, 0., 300.);
72  meAdcLayer1Ring5_ = ibooker.book1D("adc_layer1ring5", "Digi charge", 50, 0., 300.);
73  meAdcLayer1Ring6_ = ibooker.book1D("adc_layer1ring6", "Digi charge", 50, 0., 300.);
74  meAdcLayer1Ring7_ = ibooker.book1D("adc_layer1ring7", "Digi charge", 50, 0., 300.);
75  meAdcLayer1Ring8_ = ibooker.book1D("adc_layer1ring8", "Digi charge", 50, 0., 300.);
76 
77  meRowLayer1Ring1_ = ibooker.book1D("row_layer1ring1", "Digi row", 50, 0., 200.);
78  meRowLayer1Ring2_ = ibooker.book1D("row_layer1ring2", "Digi row", 50, 0., 200.);
79  meRowLayer1Ring3_ = ibooker.book1D("row_layer1ring3", "Digi row", 50, 0., 200.);
80  meRowLayer1Ring4_ = ibooker.book1D("row_layer1ring4", "Digi row", 50, 0., 200.);
81  meRowLayer1Ring5_ = ibooker.book1D("row_layer1ring5", "Digi row", 50, 0., 200.);
82  meRowLayer1Ring6_ = ibooker.book1D("row_layer1ring6", "Digi row", 50, 0., 200.);
83  meRowLayer1Ring7_ = ibooker.book1D("row_layer1ring7", "Digi row", 50, 0., 200.);
84  meRowLayer1Ring8_ = ibooker.book1D("row_layer1ring8", "Digi row", 50, 0., 200.);
85 
86  meColLayer1Ring1_ = ibooker.book1D("col_layer1ring1", "Digi column", 50, 0., 500.);
87  meColLayer1Ring2_ = ibooker.book1D("col_layer1ring2", "Digi column", 50, 0., 500.);
88  meColLayer1Ring3_ = ibooker.book1D("col_layer1ring3", "Digi column", 50, 0., 500.);
89  meColLayer1Ring4_ = ibooker.book1D("col_layer1ring4", "Digi column", 50, 0., 500.);
90  meColLayer1Ring5_ = ibooker.book1D("col_layer1ring5", "Digi column", 50, 0., 500.);
91  meColLayer1Ring6_ = ibooker.book1D("col_layer1ring6", "Digi column", 50, 0., 500.);
92  meColLayer1Ring7_ = ibooker.book1D("col_layer1ring7", "Digi column", 50, 0., 500.);
93  meColLayer1Ring8_ = ibooker.book1D("col_layer1ring8", "Digi column", 50, 0., 500.);
94 
95  meAdcLayer2Ring1_ = ibooker.book1D("adc_layer2ring1", "Digi charge", 50, 0., 300.);
96  meAdcLayer2Ring2_ = ibooker.book1D("adc_layer2ring2", "Digi charge", 50, 0., 300.);
97  meAdcLayer2Ring3_ = ibooker.book1D("adc_layer2ring3", "Digi charge", 50, 0., 300.);
98  meAdcLayer2Ring4_ = ibooker.book1D("adc_layer2ring4", "Digi charge", 50, 0., 300.);
99  meAdcLayer2Ring5_ = ibooker.book1D("adc_layer2ring5", "Digi charge", 50, 0., 300.);
100  meAdcLayer2Ring6_ = ibooker.book1D("adc_layer2ring6", "Digi charge", 50, 0., 300.);
101  meAdcLayer2Ring7_ = ibooker.book1D("adc_layer2ring7", "Digi charge", 50, 0., 300.);
102  meAdcLayer2Ring8_ = ibooker.book1D("adc_layer2ring8", "Digi charge", 50, 0., 300.);
103 
104  meRowLayer2Ring1_ = ibooker.book1D("row_layer2ring1", "Digi row", 50, 0., 200.);
105  meRowLayer2Ring2_ = ibooker.book1D("row_layer2ring2", "Digi row", 50, 0., 200.);
106  meRowLayer2Ring3_ = ibooker.book1D("row_layer2ring3", "Digi row", 50, 0., 200.);
107  meRowLayer2Ring4_ = ibooker.book1D("row_layer2ring4", "Digi row", 50, 0., 200.);
108  meRowLayer2Ring5_ = ibooker.book1D("row_layer2ring5", "Digi row", 50, 0., 200.);
109  meRowLayer2Ring6_ = ibooker.book1D("row_layer2ring6", "Digi row", 50, 0., 200.);
110  meRowLayer2Ring7_ = ibooker.book1D("row_layer2ring7", "Digi row", 50, 0., 200.);
111  meRowLayer2Ring8_ = ibooker.book1D("row_layer2ring8", "Digi row", 50, 0., 200.);
112 
113  meColLayer2Ring1_ = ibooker.book1D("col_layer2ring1", "Digi column", 50, 0., 500.);
114  meColLayer2Ring2_ = ibooker.book1D("col_layer2ring2", "Digi column", 50, 0., 500.);
115  meColLayer2Ring3_ = ibooker.book1D("col_layer2ring3", "Digi column", 50, 0., 500.);
116  meColLayer2Ring4_ = ibooker.book1D("col_layer2ring4", "Digi column", 50, 0., 500.);
117  meColLayer2Ring5_ = ibooker.book1D("col_layer2ring5", "Digi column", 50, 0., 500.);
118  meColLayer2Ring6_ = ibooker.book1D("col_layer2ring6", "Digi column", 50, 0., 500.);
119  meColLayer2Ring7_ = ibooker.book1D("col_layer2ring7", "Digi column", 50, 0., 500.);
120  meColLayer2Ring8_ = ibooker.book1D("col_layer2ring8", "Digi column", 50, 0., 500.);
121 
122  meAdcLayer3Ring1_ = ibooker.book1D("adc_layer3ring1", "Digi charge", 50, 0., 300.);
123  meAdcLayer3Ring2_ = ibooker.book1D("adc_layer3ring2", "Digi charge", 50, 0., 300.);
124  meAdcLayer3Ring3_ = ibooker.book1D("adc_layer3ring3", "Digi charge", 50, 0., 300.);
125  meAdcLayer3Ring4_ = ibooker.book1D("adc_layer3ring4", "Digi charge", 50, 0., 300.);
126  meAdcLayer3Ring5_ = ibooker.book1D("adc_layer3ring5", "Digi charge", 50, 0., 300.);
127  meAdcLayer3Ring6_ = ibooker.book1D("adc_layer3ring6", "Digi charge", 50, 0., 300.);
128  meAdcLayer3Ring7_ = ibooker.book1D("adc_layer3ring7", "Digi charge", 50, 0., 300.);
129  meAdcLayer3Ring8_ = ibooker.book1D("adc_layer3ring8", "Digi charge", 50, 0., 300.);
130 
131  meRowLayer3Ring1_ = ibooker.book1D("row_layer3ring1", "Digi row", 50, 0., 200.);
132  meRowLayer3Ring2_ = ibooker.book1D("row_layer3ring2", "Digi row", 50, 0., 200.);
133  meRowLayer3Ring3_ = ibooker.book1D("row_layer3ring3", "Digi row", 50, 0., 200.);
134  meRowLayer3Ring4_ = ibooker.book1D("row_layer3ring4", "Digi row", 50, 0., 200.);
135  meRowLayer3Ring5_ = ibooker.book1D("row_layer3ring5", "Digi row", 50, 0., 200.);
136  meRowLayer3Ring6_ = ibooker.book1D("row_layer3ring6", "Digi row", 50, 0., 200.);
137  meRowLayer3Ring7_ = ibooker.book1D("row_layer3ring7", "Digi row", 50, 0., 200.);
138  meRowLayer3Ring8_ = ibooker.book1D("row_layer3ring8", "Digi row", 50, 0., 200.);
139 
140  meColLayer3Ring1_ = ibooker.book1D("col_layer3ring1", "Digi column", 50, 0., 500.);
141  meColLayer3Ring2_ = ibooker.book1D("col_layer3ring2", "Digi column", 50, 0., 500.);
142  meColLayer3Ring3_ = ibooker.book1D("col_layer3ring3", "Digi column", 50, 0., 500.);
143  meColLayer3Ring4_ = ibooker.book1D("col_layer3ring4", "Digi column", 50, 0., 500.);
144  meColLayer3Ring5_ = ibooker.book1D("col_layer3ring5", "Digi column", 50, 0., 500.);
145  meColLayer3Ring6_ = ibooker.book1D("col_layer3ring6", "Digi column", 50, 0., 500.);
146  meColLayer3Ring7_ = ibooker.book1D("col_layer3ring7", "Digi column", 50, 0., 500.);
147  meColLayer3Ring8_ = ibooker.book1D("col_layer3ring8", "Digi column", 50, 0., 500.);
148 
150  ibooker.bookProfile("digi_layer1_ladders", "Digi Num. per ladder", 22, 0.0, 21.0, 100, 0.0, 100);
152  ibooker.bookProfile("digi_layer2_ladders", "Digi Num. per ladder", 34, 0.0, 32.0, 100, 0.0, 100);
154  ibooker.bookProfile("digi_layer3_ladders", "Digi Num. per ladder", 46, 0.0, 45.0, 100, 0.0, 100);
155 
156  // Forward Pixel
157  /* ZMinus Side 1st Disk */
158  meAdcZmDisk1Panel1Plaq1_ = ibooker.book1D("adc_zm_disk1_panel1_plaq1", "Digi charge", 50, 0., 300.);
159  meAdcZmDisk1Panel1Plaq2_ = ibooker.book1D("adc_zm_disk1_panel1_plaq2", "Digi charge", 50, 0., 300.);
160  meAdcZmDisk1Panel1Plaq3_ = ibooker.book1D("adc_zm_disk1_panel1_plaq3", "Digi charge", 50, 0., 300.);
161  meAdcZmDisk1Panel1Plaq4_ = ibooker.book1D("adc_zm_disk1_panel1_plaq4", "Digi charge", 50, 0., 300.);
162  meAdcZmDisk1Panel2Plaq1_ = ibooker.book1D("adc_zm_disk1_panel2_plaq1", "Digi charge", 50, 0., 300.);
163  meAdcZmDisk1Panel2Plaq2_ = ibooker.book1D("adc_zm_disk1_panel2_plaq2", "Digi charge", 50, 0., 300.);
164  meAdcZmDisk1Panel2Plaq3_ = ibooker.book1D("adc_zm_disk1_panel2_plaq3", "Digi charge", 50, 0., 300.);
165 
166  meRowZmDisk1Panel1Plaq1_ = ibooker.book1D("row_zm_disk1_panel1_plaq1", "Digi row", 50, 0., 100.);
167  meRowZmDisk1Panel1Plaq2_ = ibooker.book1D("row_zm_disk1_panel1_plaq2", "Digi row", 50, 0., 200.);
168  meRowZmDisk1Panel1Plaq3_ = ibooker.book1D("row_zm_disk1_panel1_plaq3", "Digi row", 50, 0., 200.);
169  meRowZmDisk1Panel1Plaq4_ = ibooker.book1D("row_zm_disk1_panel1_plaq4", "Digi row", 50, 0., 100.);
170  meRowZmDisk1Panel2Plaq1_ = ibooker.book1D("row_zm_disk1_panel2_plaq1", "Digi row", 50, 0., 200.);
171  meRowZmDisk1Panel2Plaq2_ = ibooker.book1D("row_zm_disk1_panel2_plaq2", "Digi row", 50, 0., 200.);
172  meRowZmDisk1Panel2Plaq3_ = ibooker.book1D("row_zm_disk1_panel2_plaq3", "Digi row", 50, 0., 200.);
173 
174  meColZmDisk1Panel1Plaq1_ = ibooker.book1D("col_zm_disk1_panel1_plaq1", "Digi column", 50, 0., 150.);
175  meColZmDisk1Panel1Plaq2_ = ibooker.book1D("col_zm_disk1_panel1_plaq2", "Digi column", 50, 0., 200.);
176  meColZmDisk1Panel1Plaq3_ = ibooker.book1D("col_zm_disk1_panel1_plaq3", "Digi column", 50, 0., 250.);
177  meColZmDisk1Panel1Plaq4_ = ibooker.book1D("col_zm_disk1_panel1_plaq4", "Digi column", 50, 0., 300.);
178  meColZmDisk1Panel2Plaq1_ = ibooker.book1D("col_zm_disk1_panel2_plaq1", "Digi column", 50, 0., 200.);
179  meColZmDisk1Panel2Plaq2_ = ibooker.book1D("col_zm_disk1_panel2_plaq2", "Digi column", 50, 0., 250.);
180  meColZmDisk1Panel2Plaq3_ = ibooker.book1D("col_zm_disk1_panel2_plaq3", "Digi column", 50, 0., 300.);
182  ibooker.book1D("digi_zm_disk1_panel1", "Digi Num. Panel1 Of 1st Disk In ZMinus Side ", 30, 0., 30.);
184  ibooker.book1D("digi_zm_disk1_panel2", "Digi Num. Panel2 Of 1st Disk In ZMinus Side ", 30, 0., 30.);
185 
186  /* ZMius Side 2nd disk */
187  meAdcZmDisk2Panel1Plaq1_ = ibooker.book1D("adc_zm_disk2_panel1_plaq1", "Digi charge", 50, 0., 300.);
188  meAdcZmDisk2Panel1Plaq2_ = ibooker.book1D("adc_zm_disk2_panel1_plaq2", "Digi charge", 50, 0., 300.);
189  meAdcZmDisk2Panel1Plaq3_ = ibooker.book1D("adc_zm_disk2_panel1_plaq3", "Digi charge", 50, 0., 300.);
190  meAdcZmDisk2Panel1Plaq4_ = ibooker.book1D("adc_zm_disk2_panel1_plaq4", "Digi charge", 50, 0., 300.);
191  meAdcZmDisk2Panel2Plaq1_ = ibooker.book1D("adc_zm_disk2_panel2_plaq1", "Digi charge", 50, 0., 300.);
192  meAdcZmDisk2Panel2Plaq2_ = ibooker.book1D("adc_zm_disk2_panel2_plaq2", "Digi charge", 50, 0., 300.);
193  meAdcZmDisk2Panel2Plaq3_ = ibooker.book1D("adc_zm_disk2_panel2_plaq3", "Digi charge", 50, 0., 300.);
194 
195  meRowZmDisk2Panel1Plaq1_ = ibooker.book1D("row_zm_disk2_panel1_plaq1", "Digi row", 50, 0., 100.);
196  meRowZmDisk2Panel1Plaq2_ = ibooker.book1D("row_zm_disk2_panel1_plaq2", "Digi row", 50, 0., 200.);
197  meRowZmDisk2Panel1Plaq3_ = ibooker.book1D("row_zm_disk2_panel1_plaq3", "Digi row", 50, 0., 200.);
198  meRowZmDisk2Panel1Plaq4_ = ibooker.book1D("row_zm_disk2_panel1_plaq4", "Digi row", 50, 0., 100.);
199  meRowZmDisk2Panel2Plaq1_ = ibooker.book1D("row_zm_disk2_panel2_plaq1", "Digi row", 50, 0., 200.);
200  meRowZmDisk2Panel2Plaq2_ = ibooker.book1D("row_zm_disk2_panel2_plaq2", "Digi row", 50, 0., 200.);
201  meRowZmDisk2Panel2Plaq3_ = ibooker.book1D("row_zm_disk2_panel2_plaq3", "Digi row", 50, 0., 200.);
202 
203  meColZmDisk2Panel1Plaq1_ = ibooker.book1D("col_zm_disk2_panel1_plaq1", "Digi Column", 50, 0., 150.);
204  meColZmDisk2Panel1Plaq2_ = ibooker.book1D("col_zm_disk2_panel1_plaq2", "Digi Column", 50, 0., 200.);
205  meColZmDisk2Panel1Plaq3_ = ibooker.book1D("col_zm_disk2_panel1_plaq3", "Digi Column", 50, 0., 250.);
206  meColZmDisk2Panel1Plaq4_ = ibooker.book1D("col_zm_disk2_panel1_plaq4", "Digi Column", 50, 0., 300.);
207  meColZmDisk2Panel2Plaq1_ = ibooker.book1D("col_zm_disk2_panel2_plaq1", "Digi Column", 50, 0., 200.);
208  meColZmDisk2Panel2Plaq2_ = ibooker.book1D("col_zm_disk2_panel2_plaq2", "Digi Column", 50, 0., 250.);
209  meColZmDisk2Panel2Plaq3_ = ibooker.book1D("col_zm_disk2_panel2_plaq3", "Digi Column", 50, 0., 300.);
211  ibooker.book1D("digi_zm_disk2_panel1", "Digi Num. Panel1 Of 2nd Disk In ZMinus Side ", 30, 0., 30.);
213  ibooker.book1D("digi_zm_disk2_panel2", "Digi Num. Panel2 Of 2nd Disk In ZMinus Side ", 30, 0., 30.);
214 
215  /* ZPlus Side 1st Disk */
216  meAdcZpDisk1Panel1Plaq1_ = ibooker.book1D("adc_zp_disk1_panel1_plaq1", "Digi charge", 50, 0., 300.);
217  meAdcZpDisk1Panel1Plaq2_ = ibooker.book1D("adc_zp_disk1_panel1_plaq2", "Digi charge", 50, 0., 300.);
218  meAdcZpDisk1Panel1Plaq3_ = ibooker.book1D("adc_zp_disk1_panel1_plaq3", "Digi charge", 50, 0., 300.);
219  meAdcZpDisk1Panel1Plaq4_ = ibooker.book1D("adc_zp_disk1_panel1_plaq4", "Digi charge", 50, 0., 300.);
220  meAdcZpDisk1Panel2Plaq1_ = ibooker.book1D("adc_zp_disk1_panel2_plaq1", "Digi charge", 50, 0., 300.);
221  meAdcZpDisk1Panel2Plaq2_ = ibooker.book1D("adc_zp_disk1_panel2_plaq2", "Digi charge", 50, 0., 300.);
222  meAdcZpDisk1Panel2Plaq3_ = ibooker.book1D("adc_zp_disk1_panel2_plaq3", "Digi charge", 50, 0., 300.);
223 
224  meRowZpDisk1Panel1Plaq1_ = ibooker.book1D("row_zp_disk1_panel1_plaq1", "Digi row", 50, 0., 100.);
225  meRowZpDisk1Panel1Plaq2_ = ibooker.book1D("row_zp_disk1_panel1_plaq2", "Digi row", 50, 0., 200.);
226  meRowZpDisk1Panel1Plaq3_ = ibooker.book1D("row_zp_disk1_panel1_plaq3", "Digi row", 50, 0., 200.);
227  meRowZpDisk1Panel1Plaq4_ = ibooker.book1D("row_zp_disk1_panel1_plaq4", "Digi row", 50, 0., 100.);
228  meRowZpDisk1Panel2Plaq1_ = ibooker.book1D("row_zp_disk1_panel2_plaq1", "Digi row", 50, 0., 200.);
229  meRowZpDisk1Panel2Plaq2_ = ibooker.book1D("row_zp_disk1_panel2_plaq2", "Digi row", 50, 0., 200.);
230  meRowZpDisk1Panel2Plaq3_ = ibooker.book1D("row_zp_disk1_panel2_plaq3", "Digi row", 50, 0., 200.);
231 
232  meColZpDisk1Panel1Plaq1_ = ibooker.book1D("col_zp_disk1_panel1_plaq1", "Digi Column", 50, 0., 150.);
233  meColZpDisk1Panel1Plaq2_ = ibooker.book1D("col_zp_disk1_panel1_plaq2", "Digi column", 50, 0., 200.);
234  meColZpDisk1Panel1Plaq3_ = ibooker.book1D("col_zp_disk1_panel1_plaq3", "Digi column", 50, 0., 250.);
235  meColZpDisk1Panel1Plaq4_ = ibooker.book1D("col_zp_disk1_panel1_plaq4", "Digi column", 50, 0., 300.);
236  meColZpDisk1Panel2Plaq1_ = ibooker.book1D("col_zp_disk1_panel2_plaq1", "Digi column", 50, 0., 200.);
237  meColZpDisk1Panel2Plaq2_ = ibooker.book1D("col_zp_disk1_panel2_plaq2", "Digi column", 50, 0., 250.);
238  meColZpDisk1Panel2Plaq3_ = ibooker.book1D("col_zp_disk1_panel2_plaq3", "Digi column", 50, 0., 300.);
240  ibooker.book1D("digi_zp_disk1_panel1", "Digi Num. Panel1 Of 1st Disk In ZPlus Side ", 30, 0., 30.);
242  ibooker.book1D("digi_zp_disk1_panel2", "Digi Num. Panel2 Of 1st Disk In ZPlus Side ", 30, 0., 30.);
243 
244  /* ZPlus Side 2nd disk */
245  meAdcZpDisk2Panel1Plaq1_ = ibooker.book1D("adc_zp_disk2_panel1_plaq1", "Digi charge", 50, 0., 300.);
246  meAdcZpDisk2Panel1Plaq2_ = ibooker.book1D("adc_zp_disk2_panel1_plaq2", "Digi charge", 50, 0., 300.);
247  meAdcZpDisk2Panel1Plaq3_ = ibooker.book1D("adc_zp_disk2_panel1_plaq3", "Digi charge", 50, 0., 300.);
248  meAdcZpDisk2Panel1Plaq4_ = ibooker.book1D("adc_zp_disk2_panel1_plaq4", "Digi charge", 50, 0., 300.);
249  meAdcZpDisk2Panel2Plaq1_ = ibooker.book1D("adc_zp_disk2_panel2_plaq1", "Digi charge", 50, 0., 300.);
250  meAdcZpDisk2Panel2Plaq2_ = ibooker.book1D("adc_zp_disk2_panel2_plaq2", "Digi charge", 50, 0., 300.);
251  meAdcZpDisk2Panel2Plaq3_ = ibooker.book1D("adc_zp_disk2_panel2_plaq3", "Digi charge", 50, 0., 300.);
252 
253  meRowZpDisk2Panel1Plaq1_ = ibooker.book1D("row_zp_disk2_panel1_plaq1", "Digi row", 10, 0., 100.);
254  meRowZpDisk2Panel1Plaq2_ = ibooker.book1D("row_zp_disk2_panel1_plaq2", "Digi row", 10, 0., 200.);
255  meRowZpDisk2Panel1Plaq3_ = ibooker.book1D("row_zp_disk2_panel1_plaq3", "Digi row", 10, 0., 200.);
256  meRowZpDisk2Panel1Plaq4_ = ibooker.book1D("row_zp_disk2_panel1_plaq4", "Digi row", 10, 0., 100.);
257  meRowZpDisk2Panel2Plaq1_ = ibooker.book1D("row_zp_disk2_panel2_plaq1", "Digi row", 10, 0., 200.);
258  meRowZpDisk2Panel2Plaq2_ = ibooker.book1D("row_zp_disk2_panel2_plaq2", "Digi row", 10, 0., 200.);
259  meRowZpDisk2Panel2Plaq3_ = ibooker.book1D("row_zp_disk2_panel2_plaq3", "Digi row", 10, 0., 200.);
260 
261  meColZpDisk2Panel1Plaq1_ = ibooker.book1D("col_zp_disk2_panel1_plaq1", "Digi column", 50, 0., 150.);
262  meColZpDisk2Panel1Plaq2_ = ibooker.book1D("col_zp_disk2_panel1_plaq2", "Digi column", 50, 0., 200.);
263  meColZpDisk2Panel1Plaq3_ = ibooker.book1D("col_zp_disk2_panel1_plaq3", "Digi column", 50, 0., 250.);
264  meColZpDisk2Panel1Plaq4_ = ibooker.book1D("col_zp_disk2_panel1_plaq4", "Digi column", 50, 0., 300.);
265  meColZpDisk2Panel2Plaq1_ = ibooker.book1D("col_zp_disk2_panel2_plaq1", "Digi column", 50, 0., 200.);
266  meColZpDisk2Panel2Plaq2_ = ibooker.book1D("col_zp_disk2_panel2_plaq2", "Digi column", 50, 0., 250.);
267  meColZpDisk2Panel2Plaq3_ = ibooker.book1D("col_zp_disk2_panel2_plaq3", "Digi column", 50, 0., 300.);
269  ibooker.book1D("digi_zp_disk2_panel1", "Digi Num. Panel1 Of 2nd Disk In ZPlus Side ", 30, 0., 30.);
271  ibooker.book1D("digi_zp_disk2_panel2", "Digi Num. Panel2 Of 2nd Disk In ZPlus Side ", 30, 0., 30.);
272  }
273 }
274 
276  // Save histos in a file only in standalone mode
277  if (runStandalone && !outputFile_.empty() && dbe_) {
279  }
280 }
281 
283  // Retrieve tracker topology from geometry
284  edm::ESHandle<TrackerTopology> tTopoHandle;
285  c.get<TrackerTopologyRcd>().get(tTopoHandle);
286  const TrackerTopology *const tTopo = tTopoHandle.product();
287  // Number of blades and ladders.
288  // TODO: other Geometry-Dependent quantities, e.g. num layers.
289  int nblades = tracker->posPixelForwardLayers()[0]->components().size();
290  int nladders1 = tracker->pixelBarrelLayers()[0]->components().size();
291  int nladders2 = tracker->pixelBarrelLayers()[1]->components().size();
292  int nladders3 = tracker->pixelBarrelLayers()[2]->components().size();
293 
294  int ndigiperRingLayer1[8];
295  int ndigiperRingLayer2[8];
296  int ndigiperRingLayer3[8];
297  for (int i = 0; i < 8; i++) {
298  ndigiperRingLayer1[i] = 0;
299  ndigiperRingLayer2[i] = 0;
300  ndigiperRingLayer3[i] = 0;
301  }
302 
303  int ndigiZpDisk1PerPanel1[nblades];
304  int ndigiZpDisk1PerPanel2[nblades];
305  int ndigiZpDisk2PerPanel1[nblades];
306  int ndigiZpDisk2PerPanel2[nblades];
307  int ndigiZmDisk1PerPanel1[nblades];
308  int ndigiZmDisk1PerPanel2[nblades];
309  int ndigiZmDisk2PerPanel1[nblades];
310  int ndigiZmDisk2PerPanel2[nblades];
311 
312  for (int i = 0; i < nblades; i++) {
313  ndigiZpDisk1PerPanel1[i] = 0;
314  ndigiZpDisk1PerPanel2[i] = 0;
315  ndigiZpDisk2PerPanel1[i] = 0;
316  ndigiZpDisk2PerPanel2[i] = 0;
317  ndigiZmDisk1PerPanel1[i] = 0;
318  ndigiZmDisk1PerPanel2[i] = 0;
319  ndigiZmDisk2PerPanel1[i] = 0;
320  ndigiZmDisk2PerPanel2[i] = 0;
321  }
322 
323  int ndigilayer1ladders[nladders1];
324  int ndigilayer2ladders[nladders2];
325  int ndigilayer3ladders[nladders3];
326 
327  for (int i = 0; i < nladders1; i++) {
328  ndigilayer1ladders[i] = 0;
329  }
330 
331  for (int i = 0; i < nladders2; i++) {
332  ndigilayer2ladders[i] = 0;
333  }
334 
335  for (int i = 0; i < nladders3; i++) {
336  ndigilayer3ladders[i] = 0;
337  }
338 
339  // LogInfo("EventInfo") << " Run = " << e.id().run() << " Event = " <<
340  // e.id().event();
341 
343  c.get<TrackerDigiGeometryRecord>().get(tracker);
344 
345  // string digiProducer = "siPixelDigis";
348 
349  edm::DetSetVector<PixelDigi>::const_iterator DSViter = pixelDigis->begin();
350  for (; DSViter != pixelDigis->end(); DSViter++) {
351  unsigned int id = DSViter->id;
352  DetId detId(id);
356 
357  if (detId.subdetId() == PixelSubdetector::PixelBarrel) {
358  unsigned int layer = tTopo->pxbLayer(id); // Layer:1,2,3.
359  unsigned int ladder = tTopo->pxbLadder(id); // Ladeer: 1-20, 32, 44.
360  unsigned int zindex = tTopo->pxbModule(id); // Z-index: 1-8.
361  // LogInfo("SiPixelDigiValid")<<"Barrel:: Layer="<<layer<<"
362  // Ladder="<<ladder<<" zindex="<<zindex;
363  for (iter = begin; iter != end; iter++) {
364  if (layer == 1) {
365  ++ndigilayer1ladders[ladder - 1];
366  ++ndigiperRingLayer1[zindex - 1];
367  if (zindex == 1) {
368  meAdcLayer1Ring1_->Fill((*iter).adc());
369  meRowLayer1Ring1_->Fill((*iter).row());
370  meColLayer1Ring1_->Fill((*iter).column());
371  }
372  if (zindex == 2) {
373  meAdcLayer1Ring2_->Fill((*iter).adc());
374  meRowLayer1Ring2_->Fill((*iter).row());
375  meColLayer1Ring2_->Fill((*iter).column());
376  }
377 
378  if (zindex == 3) {
379  meAdcLayer1Ring3_->Fill((*iter).adc());
380  meRowLayer1Ring3_->Fill((*iter).row());
381  meColLayer1Ring3_->Fill((*iter).column());
382  }
383 
384  if (zindex == 4) {
385  meAdcLayer1Ring4_->Fill((*iter).adc());
386  meRowLayer1Ring4_->Fill((*iter).row());
387  meColLayer1Ring4_->Fill((*iter).column());
388  }
389 
390  if (zindex == 5) {
391  meAdcLayer1Ring5_->Fill((*iter).adc());
392  meRowLayer1Ring5_->Fill((*iter).row());
393  meColLayer1Ring5_->Fill((*iter).column());
394  }
395 
396  if (zindex == 6) {
397  meAdcLayer1Ring6_->Fill((*iter).adc());
398  meRowLayer1Ring6_->Fill((*iter).row());
399  meColLayer1Ring6_->Fill((*iter).column());
400  }
401 
402  if (zindex == 7) {
403  meAdcLayer1Ring7_->Fill((*iter).adc());
404  meRowLayer1Ring7_->Fill((*iter).row());
405  meColLayer1Ring7_->Fill((*iter).column());
406  }
407  if (zindex == 8) {
408  meAdcLayer1Ring8_->Fill((*iter).adc());
409  meRowLayer1Ring8_->Fill((*iter).row());
410  meColLayer1Ring8_->Fill((*iter).column());
411  }
412  }
413  if (layer == 2) {
414  ++ndigilayer2ladders[ladder - 1];
415  ++ndigiperRingLayer2[zindex - 1];
416  if (zindex == 1) {
417  meAdcLayer2Ring1_->Fill((*iter).adc());
418  meRowLayer2Ring1_->Fill((*iter).row());
419  meColLayer2Ring1_->Fill((*iter).column());
420  }
421  if (zindex == 2) {
422  meAdcLayer2Ring2_->Fill((*iter).adc());
423  meRowLayer2Ring2_->Fill((*iter).row());
424  meColLayer2Ring2_->Fill((*iter).column());
425  }
426 
427  if (zindex == 3) {
428  meAdcLayer2Ring3_->Fill((*iter).adc());
429  meRowLayer2Ring3_->Fill((*iter).row());
430  meColLayer2Ring3_->Fill((*iter).column());
431  }
432 
433  if (zindex == 4) {
434  meAdcLayer2Ring4_->Fill((*iter).adc());
435  meRowLayer2Ring4_->Fill((*iter).row());
436  meColLayer2Ring4_->Fill((*iter).column());
437  }
438 
439  if (zindex == 5) {
440  meAdcLayer2Ring5_->Fill((*iter).adc());
441  meRowLayer2Ring5_->Fill((*iter).row());
442  meColLayer2Ring5_->Fill((*iter).column());
443  }
444 
445  if (zindex == 6) {
446  meAdcLayer2Ring6_->Fill((*iter).adc());
447  meRowLayer2Ring6_->Fill((*iter).row());
448  meColLayer2Ring6_->Fill((*iter).column());
449  }
450 
451  if (zindex == 7) {
452  meAdcLayer2Ring7_->Fill((*iter).adc());
453  meRowLayer2Ring7_->Fill((*iter).row());
454  meColLayer2Ring7_->Fill((*iter).column());
455  }
456  if (zindex == 8) {
457  meAdcLayer2Ring8_->Fill((*iter).adc());
458  meRowLayer2Ring8_->Fill((*iter).row());
459  meColLayer2Ring8_->Fill((*iter).column());
460  }
461  }
462  if (layer == 3) {
463  ++ndigilayer3ladders[ladder - 1];
464  ++ndigiperRingLayer3[zindex - 1];
465  if (zindex == 1) {
466  meAdcLayer3Ring1_->Fill((*iter).adc());
467  meRowLayer3Ring1_->Fill((*iter).row());
468  meColLayer3Ring1_->Fill((*iter).column());
469  }
470  if (zindex == 2) {
471  meAdcLayer3Ring2_->Fill((*iter).adc());
472  meRowLayer3Ring2_->Fill((*iter).row());
473  meColLayer3Ring2_->Fill((*iter).column());
474  }
475 
476  if (zindex == 3) {
477  meAdcLayer3Ring3_->Fill((*iter).adc());
478  meRowLayer3Ring3_->Fill((*iter).row());
479  meColLayer3Ring3_->Fill((*iter).column());
480  }
481 
482  if (zindex == 4) {
483  meAdcLayer3Ring4_->Fill((*iter).adc());
484  meRowLayer3Ring4_->Fill((*iter).row());
485  meColLayer3Ring4_->Fill((*iter).column());
486  }
487 
488  if (zindex == 5) {
489  meAdcLayer3Ring5_->Fill((*iter).adc());
490  meRowLayer3Ring5_->Fill((*iter).row());
491  meColLayer3Ring5_->Fill((*iter).column());
492  }
493 
494  if (zindex == 6) {
495  meAdcLayer3Ring6_->Fill((*iter).adc());
496  meRowLayer3Ring6_->Fill((*iter).row());
497  meColLayer3Ring6_->Fill((*iter).column());
498  }
499 
500  if (zindex == 7) {
501  meAdcLayer3Ring7_->Fill((*iter).adc());
502  meRowLayer3Ring7_->Fill((*iter).row());
503  meColLayer3Ring7_->Fill((*iter).column());
504  }
505  if (zindex == 8) {
506  meAdcLayer3Ring8_->Fill((*iter).adc());
507  meRowLayer3Ring8_->Fill((*iter).row());
508  meColLayer3Ring8_->Fill((*iter).column());
509  }
510  }
511  }
512  }
513 
514  if (detId.subdetId() == PixelSubdetector::PixelEndcap) { // Endcap
515 
516  unsigned int side = tTopo->pxfSide(id);
517  unsigned int disk = tTopo->pxfDisk(id);
518  unsigned int blade = tTopo->pxfBlade(id);
519  unsigned int panel = tTopo->pxfPanel(id);
520  unsigned int mod = tTopo->pxfModule(id);
521  // LogInfo("SiPixelDigiValid")<<"EndcaP="<<side<<" Disk="<<disk<<"
522  // Blade="<<blade<<" Panel="<<panel<<" Module="<<mod;
523  for (iter = begin; iter != end; iter++) {
524  if (side == 1 && disk == 1 && panel == 1) {
525  if (mod == 1) {
526  meAdcZmDisk1Panel1Plaq1_->Fill((*iter).adc());
527  meRowZmDisk1Panel1Plaq1_->Fill((*iter).row());
528  meColZmDisk1Panel1Plaq1_->Fill((*iter).column());
529  } else if (mod == 2) {
530  meAdcZmDisk1Panel1Plaq2_->Fill((*iter).adc());
531  meRowZmDisk1Panel1Plaq2_->Fill((*iter).row());
532  meColZmDisk1Panel1Plaq2_->Fill((*iter).column());
533  } else if (mod == 3) {
534  meAdcZmDisk1Panel1Plaq3_->Fill((*iter).adc());
535  meRowZmDisk1Panel1Plaq3_->Fill((*iter).row());
536  meColZmDisk1Panel1Plaq3_->Fill((*iter).column());
537  } else if (mod == 4) {
538  meAdcZmDisk1Panel1Plaq4_->Fill((*iter).adc());
539  meRowZmDisk1Panel1Plaq4_->Fill((*iter).row());
540  meColZmDisk1Panel1Plaq4_->Fill((*iter).column());
541  } else {
542  // LogError("SiPixelDigiValid")<<" The number of module is Wrong";
543  }
544  ++ndigiZmDisk1PerPanel1[blade - 1];
545  }
546 
547  if (side == 1 && disk == 1 && panel == 2) {
548  if (mod == 1) {
549  meAdcZmDisk1Panel2Plaq1_->Fill((*iter).adc());
550  meRowZmDisk1Panel2Plaq1_->Fill((*iter).row());
551  meColZmDisk1Panel2Plaq1_->Fill((*iter).column());
552  } else if (mod == 2) {
553  meAdcZmDisk1Panel2Plaq2_->Fill((*iter).adc());
554  meRowZmDisk1Panel2Plaq2_->Fill((*iter).row());
555  meColZmDisk1Panel2Plaq2_->Fill((*iter).column());
556  } else if (mod == 3) {
557  meAdcZmDisk1Panel2Plaq3_->Fill((*iter).adc());
558  meRowZmDisk1Panel2Plaq3_->Fill((*iter).row());
559  meColZmDisk1Panel2Plaq3_->Fill((*iter).column());
560  } else {
561  // LogError("SiPixelDigiValid")<<" The number of module is Wrong";
562  }
563  ++ndigiZmDisk1PerPanel2[blade - 1];
564  }
565 
566  if (side == 1 && disk == 2 && panel == 1) {
567  if (mod == 1) {
568  meAdcZmDisk2Panel1Plaq1_->Fill((*iter).adc());
569  meRowZmDisk2Panel1Plaq1_->Fill((*iter).row());
570  meColZmDisk2Panel1Plaq1_->Fill((*iter).column());
571  } else if (mod == 2) {
572  meAdcZmDisk2Panel1Plaq2_->Fill((*iter).adc());
573  meRowZmDisk2Panel1Plaq2_->Fill((*iter).row());
574  meColZmDisk2Panel1Plaq2_->Fill((*iter).column());
575  } else if (mod == 3) {
576  meAdcZmDisk2Panel1Plaq3_->Fill((*iter).adc());
577  meRowZmDisk2Panel1Plaq3_->Fill((*iter).row());
578  meColZmDisk2Panel1Plaq3_->Fill((*iter).column());
579  } else if (mod == 4) {
580  meAdcZmDisk2Panel1Plaq4_->Fill((*iter).adc());
581  meRowZmDisk2Panel1Plaq4_->Fill((*iter).row());
582  meColZmDisk2Panel1Plaq4_->Fill((*iter).column());
583  } else {
584  // LogError("SiPixelDigiValid")<<" The number of module is Wrong";
585  }
586  ++ndigiZmDisk2PerPanel1[blade - 1];
587  }
588 
589  if (side == 1 && disk == 2 && panel == 2) {
590  if (mod == 1) {
591  meAdcZmDisk2Panel2Plaq1_->Fill((*iter).adc());
592  meRowZmDisk2Panel2Plaq1_->Fill((*iter).row());
593  meColZmDisk2Panel2Plaq1_->Fill((*iter).column());
594  } else if (mod == 2) {
595  meAdcZmDisk2Panel2Plaq2_->Fill((*iter).adc());
596  meRowZmDisk2Panel2Plaq2_->Fill((*iter).row());
597  meColZmDisk2Panel2Plaq2_->Fill((*iter).column());
598  } else if (mod == 3) {
599  meAdcZmDisk2Panel2Plaq3_->Fill((*iter).adc());
600  meRowZmDisk2Panel2Plaq3_->Fill((*iter).row());
601  meColZmDisk2Panel2Plaq3_->Fill((*iter).column());
602  } else {
603  // LogError("SiPixelDigiValid")<<" The number of module is Wrong";
604  }
605  ++ndigiZmDisk2PerPanel2[blade - 1];
606  }
607 
608  if (side == 2 && disk == 1 && panel == 1) {
609  if (mod == 1) {
610  meAdcZpDisk1Panel1Plaq1_->Fill((*iter).adc());
611  meRowZpDisk1Panel1Plaq1_->Fill((*iter).row());
612  meColZpDisk1Panel1Plaq1_->Fill((*iter).column());
613  } else if (mod == 2) {
614  meAdcZpDisk1Panel1Plaq2_->Fill((*iter).adc());
615  meRowZpDisk1Panel1Plaq2_->Fill((*iter).row());
616  meColZpDisk1Panel1Plaq2_->Fill((*iter).column());
617  } else if (mod == 3) {
618  meAdcZpDisk1Panel1Plaq3_->Fill((*iter).adc());
619  meRowZpDisk1Panel1Plaq3_->Fill((*iter).row());
620  meColZpDisk1Panel1Plaq3_->Fill((*iter).column());
621  } else if (mod == 4) {
622  meAdcZpDisk1Panel1Plaq4_->Fill((*iter).adc());
623  meRowZpDisk1Panel1Plaq4_->Fill((*iter).row());
624  meColZpDisk1Panel1Plaq4_->Fill((*iter).column());
625  } else {
626  // LogError("SiPixelDigiValid")<<" The number of module is Wrong";
627  }
628  ++ndigiZpDisk1PerPanel1[blade - 1];
629  }
630 
631  if (side == 2 && disk == 1 && panel == 2) {
632  if (mod == 1) {
633  meAdcZpDisk1Panel2Plaq1_->Fill((*iter).adc());
634  meRowZpDisk1Panel2Plaq1_->Fill((*iter).row());
635  meColZpDisk1Panel2Plaq1_->Fill((*iter).column());
636  } else if (mod == 2) {
637  meAdcZpDisk1Panel2Plaq2_->Fill((*iter).adc());
638  meRowZpDisk1Panel2Plaq2_->Fill((*iter).row());
639  meColZpDisk1Panel2Plaq2_->Fill((*iter).column());
640  } else if (mod == 3) {
641  meAdcZpDisk1Panel2Plaq3_->Fill((*iter).adc());
642  meRowZpDisk1Panel2Plaq3_->Fill((*iter).row());
643  meColZpDisk1Panel2Plaq3_->Fill((*iter).column());
644  } else {
645  // LogError("SiPixelDigiValid")<<" The number of module is Wrong";
646  }
647  ++ndigiZpDisk1PerPanel2[blade - 1];
648  }
649 
650  if (side == 2 && disk == 2 && panel == 1) {
651  if (mod == 1) {
652  meAdcZpDisk2Panel1Plaq1_->Fill((*iter).adc());
653  meRowZpDisk2Panel1Plaq1_->Fill((*iter).row());
654  meColZpDisk2Panel1Plaq1_->Fill((*iter).column());
655  } else if (mod == 2) {
656  meAdcZpDisk2Panel1Plaq2_->Fill((*iter).adc());
657  meRowZpDisk2Panel1Plaq2_->Fill((*iter).row());
658  meColZpDisk2Panel1Plaq2_->Fill((*iter).column());
659  } else if (mod == 3) {
660  meAdcZpDisk2Panel1Plaq3_->Fill((*iter).adc());
661  meRowZpDisk2Panel1Plaq3_->Fill((*iter).row());
662  meColZpDisk2Panel1Plaq3_->Fill((*iter).column());
663  } else if (mod == 4) {
664  meAdcZpDisk2Panel1Plaq4_->Fill((*iter).adc());
665  meRowZpDisk2Panel1Plaq4_->Fill((*iter).row());
666  meColZpDisk2Panel1Plaq4_->Fill((*iter).column());
667  } else {
668  // LogError("SiPixelDigiValid")<<" The number of module is Wrong";
669  }
670  ++ndigiZpDisk2PerPanel1[blade - 1];
671  }
672 
673  if (side == 2 && disk == 2 && panel == 2) {
674  if (mod == 1) {
675  meAdcZpDisk2Panel2Plaq1_->Fill((*iter).adc());
676  meRowZpDisk2Panel2Plaq1_->Fill((*iter).row());
677  meColZpDisk2Panel2Plaq1_->Fill((*iter).column());
678  } else if (mod == 2) {
679  meAdcZpDisk2Panel2Plaq2_->Fill((*iter).adc());
680  meRowZpDisk2Panel2Plaq2_->Fill((*iter).row());
681  meColZpDisk2Panel2Plaq2_->Fill((*iter).column());
682  } else if (mod == 3) {
683  meAdcZpDisk2Panel2Plaq3_->Fill((*iter).adc());
684  meRowZpDisk2Panel2Plaq3_->Fill((*iter).row());
685  meColZpDisk2Panel2Plaq3_->Fill((*iter).column());
686  } else {
687  // LogError("SiPixelDigiValid")<<" The number of module is Wrong";
688  }
689  ++ndigiZpDisk2PerPanel2[blade - 1];
690  }
691  } // iterating the digi
692 
693  } // Endcap
694 
695  } // end for loop
696 
697  meDigiMultiLayer1Ring1_->Fill(ndigiperRingLayer1[0]);
698  meDigiMultiLayer1Ring2_->Fill(ndigiperRingLayer1[1]);
699  meDigiMultiLayer1Ring3_->Fill(ndigiperRingLayer1[2]);
700  meDigiMultiLayer1Ring4_->Fill(ndigiperRingLayer1[3]);
701  meDigiMultiLayer1Ring5_->Fill(ndigiperRingLayer1[4]);
702  meDigiMultiLayer1Ring6_->Fill(ndigiperRingLayer1[5]);
703  meDigiMultiLayer1Ring7_->Fill(ndigiperRingLayer1[6]);
704  meDigiMultiLayer1Ring8_->Fill(ndigiperRingLayer1[7]);
705 
706  meDigiMultiLayer2Ring1_->Fill(ndigiperRingLayer2[0]);
707  meDigiMultiLayer2Ring2_->Fill(ndigiperRingLayer2[1]);
708  meDigiMultiLayer2Ring3_->Fill(ndigiperRingLayer2[2]);
709  meDigiMultiLayer2Ring4_->Fill(ndigiperRingLayer2[3]);
710  meDigiMultiLayer2Ring5_->Fill(ndigiperRingLayer2[4]);
711  meDigiMultiLayer2Ring6_->Fill(ndigiperRingLayer2[5]);
712  meDigiMultiLayer2Ring7_->Fill(ndigiperRingLayer2[6]);
713  meDigiMultiLayer2Ring8_->Fill(ndigiperRingLayer2[7]);
714 
715  meDigiMultiLayer3Ring1_->Fill(ndigiperRingLayer3[0]);
716  meDigiMultiLayer3Ring2_->Fill(ndigiperRingLayer3[1]);
717  meDigiMultiLayer3Ring3_->Fill(ndigiperRingLayer3[2]);
718  meDigiMultiLayer3Ring4_->Fill(ndigiperRingLayer3[3]);
719  meDigiMultiLayer3Ring5_->Fill(ndigiperRingLayer3[4]);
720  meDigiMultiLayer3Ring6_->Fill(ndigiperRingLayer3[5]);
721  meDigiMultiLayer3Ring7_->Fill(ndigiperRingLayer3[6]);
722  meDigiMultiLayer3Ring8_->Fill(ndigiperRingLayer3[7]);
723 
724  for (int i = 0; i < nblades; i++) {
725  meNdigiZmDisk1PerPanel1_->Fill(ndigiZmDisk1PerPanel1[i]);
726  meNdigiZmDisk1PerPanel2_->Fill(ndigiZmDisk1PerPanel2[i]);
727  meNdigiZmDisk2PerPanel1_->Fill(ndigiZmDisk2PerPanel1[i]);
728  meNdigiZmDisk2PerPanel2_->Fill(ndigiZmDisk2PerPanel2[i]);
729  meNdigiZpDisk1PerPanel1_->Fill(ndigiZpDisk1PerPanel1[i]);
730  meNdigiZpDisk1PerPanel2_->Fill(ndigiZpDisk1PerPanel2[i]);
731  meNdigiZpDisk2PerPanel1_->Fill(ndigiZpDisk2PerPanel1[i]);
732  meNdigiZpDisk2PerPanel2_->Fill(ndigiZpDisk2PerPanel2[i]);
733  }
734 
735  for (int i = 0; i < nladders1; i++) {
736  meDigiMultiLayer1Ladders_->Fill(i + 1, ndigilayer1ladders[i]);
737  }
738 
739  for (int i = 0; i < nladders2; i++) {
740  meDigiMultiLayer2Ladders_->Fill(i + 1, ndigilayer2ladders[i]);
741  }
742 
743  for (int i = 0; i < nladders3; i++) {
744  meDigiMultiLayer3Ladders_->Fill(i + 1, ndigilayer3ladders[i]);
745  }
746 }
MonitorElement * meColZpDisk1Panel1Plaq3_
edm::EDGetTokenT< edm::DetSetVector< PixelDigi > > edmDetSetVector_PixelDigi_Token_
MonitorElement * meColLayer3Ring7_
MonitorElement * meAdcLayer3Ring4_
MonitorElement * meRowZpDisk2Panel1Plaq1_
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX)
Definition: DQMStore.cc:239
MonitorElement * meAdcLayer2Ring6_
MonitorElement * meColZmDisk2Panel2Plaq2_
MonitorElement * meRowZpDisk2Panel1Plaq3_
MonitorElement * meRowZmDisk2Panel2Plaq3_
MonitorElement * meAdcLayer3Ring5_
MonitorElement * meDigiMultiLayer3Ring7_
MonitorElement * meDigiMultiLayer1Ring3_
MonitorElement * meAdcZpDisk2Panel1Plaq1_
MonitorElement * meDigiMultiLayer2Ring1_
MonitorElement * meColLayer2Ring2_
MonitorElement * meDigiMultiLayer1Ring5_
MonitorElement * meAdcLayer1Ring2_
MonitorElement * meColLayer1Ring2_
MonitorElement * meNdigiZpDisk2PerPanel1_
MonitorElement * meAdcZmDisk2Panel1Plaq3_
MonitorElement * meColZmDisk2Panel1Plaq2_
MonitorElement * meAdcLayer1Ring8_
void analyze(const edm::Event &e, const edm::EventSetup &c) override
MonitorElement * meRowZpDisk2Panel1Plaq4_
MonitorElement * meRowZpDisk2Panel2Plaq1_
MonitorElement * meAdcLayer3Ring2_
MonitorElement * meRowLayer3Ring8_
MonitorElement * meColLayer2Ring3_
MonitorElement * meRowZpDisk1Panel1Plaq4_
MonitorElement * meAdcLayer2Ring3_
MonitorElement * meRowZpDisk1Panel2Plaq2_
MonitorElement * meAdcZmDisk1Panel2Plaq1_
MonitorElement * meRowZmDisk2Panel1Plaq1_
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:525
MonitorElement * meColLayer1Ring4_
std::vector< ForwardDetLayer const * > const & posPixelForwardLayers() const
MonitorElement * meRowZmDisk1Panel1Plaq3_
void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:418
unsigned int pxfDisk(const DetId &id) const
MonitorElement * meDigiMultiLayer1Ring7_
MonitorElement * meRowZpDisk2Panel2Plaq3_
MonitorElement * meDigiMultiLayer3Ring6_
MonitorElement * meColZmDisk1Panel1Plaq3_
MonitorElement * meAdcZmDisk1Panel1Plaq3_
MonitorElement * meDigiMultiLayer1Ring4_
MonitorElement * meRowZpDisk2Panel1Plaq2_
MonitorElement * meRowLayer3Ring7_
dqm::legacy::DQMStore * dbe_
#define nullptr
MonitorElement * meDigiMultiLayer3Ring3_
unsigned int pxbLadder(const DetId &id) const
MonitorElement * meAdcZmDisk2Panel2Plaq2_
MonitorElement * meColLayer2Ring4_
MonitorElement * meDigiMultiLayer3Ring8_
MonitorElement * meColZmDisk2Panel2Plaq3_
MonitorElement * meColZmDisk2Panel2Plaq1_
MonitorElement * meColLayer3Ring5_
MonitorElement * meColZmDisk1Panel2Plaq1_
MonitorElement * meRowLayer1Ring5_
MonitorElement * meColLayer1Ring7_
unsigned int pxbModule(const DetId &id) const
MonitorElement * meColLayer3Ring1_
MonitorElement * meAdcZpDisk2Panel1Plaq4_
MonitorElement * meRowZmDisk1Panel1Plaq4_
MonitorElement * meRowZmDisk1Panel1Plaq1_
MonitorElement * meRowLayer2Ring3_
MonitorElement * meDigiMultiLayer2Ring7_
MonitorElement * meDigiMultiLayer3Ring1_
MonitorElement * meColZpDisk1Panel2Plaq1_
MonitorElement * meColLayer1Ring1_
MonitorElement * meColLayer2Ring7_
MonitorElement * meColLayer1Ring3_
MonitorElement * meAdcZmDisk1Panel1Plaq4_
MonitorElement * meRowZpDisk1Panel1Plaq1_
MonitorElement * meAdcZpDisk1Panel2Plaq1_
MonitorElement * meColZpDisk1Panel2Plaq2_
MonitorElement * meAdcLayer1Ring4_
MonitorElement * meAdcLayer1Ring5_
MonitorElement * meRowLayer1Ring2_
MonitorElement * meAdcZmDisk2Panel1Plaq4_
MonitorElement * meAdcLayer1Ring1_
MonitorElement * meDigiMultiLayer1Ring2_
MonitorElement * meRowZmDisk1Panel2Plaq3_
MonitorElement * meColZpDisk1Panel1Plaq2_
MonitorElement * meRowZpDisk2Panel2Plaq2_
void Fill(long long x)
~SiPixelDigiValid() override
MonitorElement * meAdcLayer3Ring6_
MonitorElement * meRowLayer3Ring3_
MonitorElement * meAdcZpDisk2Panel2Plaq3_
MonitorElement * meColZmDisk1Panel2Plaq2_
MonitorElement * meAdcZpDisk2Panel1Plaq3_
MonitorElement * meDigiMultiLayer2Ring5_
MonitorElement * meColLayer2Ring5_
MonitorElement * meRowZpDisk1Panel1Plaq3_
SiPixelDigiValid(const edm::ParameterSet &ps)
MonitorElement * meColLayer1Ring6_
MonitorElement * meNdigiZmDisk1PerPanel1_
MonitorElement * meAdcZmDisk1Panel1Plaq2_
MonitorElement * meColZpDisk1Panel1Plaq1_
MonitorElement * meAdcZmDisk2Panel1Plaq1_
MonitorElement * meDigiMultiLayer3Ring2_
MonitorElement * meAdcZmDisk1Panel1Plaq1_
MonitorElement * meColZpDisk2Panel2Plaq1_
MonitorElement * meDigiMultiLayer2Ring2_
MonitorElement * meColZpDisk2Panel1Plaq1_
MonitorElement * meDigiMultiLayer2Ring4_
MonitorElement * meDigiMultiLayer2Ring6_
void endJob(void) override
MonitorElement * meAdcZmDisk1Panel2Plaq3_
MonitorElement * meRowZmDisk2Panel2Plaq2_
MonitorElement * bookProfile(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, char const *option="s")
Definition: DQMStore.cc:333
MonitorElement * meColLayer1Ring8_
MonitorElement * meColZpDisk1Panel2Plaq3_
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:48
MonitorElement * meAdcZmDisk2Panel2Plaq1_
MonitorElement * meRowLayer1Ring4_
MonitorElement * meRowZmDisk2Panel1Plaq4_
MonitorElement * meAdcLayer2Ring7_
#define end
Definition: vmac.h:39
MonitorElement * meRowZmDisk2Panel1Plaq2_
MonitorElement * meColZpDisk2Panel2Plaq3_
MonitorElement * meRowLayer3Ring6_
MonitorElement * meColLayer2Ring6_
std::vector< BarrelDetLayer const * > const & pixelBarrelLayers() const
MonitorElement * meColLayer3Ring8_
MonitorElement * meColZmDisk2Panel1Plaq3_
edm::ESHandle< GeometricSearchTracker > tracker
MonitorElement * meDigiMultiLayer2Ring8_
MonitorElement * meAdcLayer2Ring5_
MonitorElement * meAdcLayer3Ring7_
MonitorElement * meDigiMultiLayer1Ladders_
MonitorElement * meAdcZmDisk1Panel2Plaq2_
MonitorElement * meRowZmDisk2Panel2Plaq1_
iterator end()
Return the off-the-end iterator.
Definition: DetSetVector.h:325
MonitorElement * meRowLayer3Ring1_
MonitorElement * meRowLayer2Ring7_
MonitorElement * meAdcZpDisk2Panel2Plaq2_
MonitorElement * meColLayer1Ring5_
unsigned int pxfModule(const DetId &id) const
MonitorElement * meAdcZpDisk1Panel1Plaq1_
Forwar Pixel.
MonitorElement * meDigiMultiLayer1Ring1_
MonitorElement * meColZmDisk1Panel1Plaq1_
MonitorElement * meAdcLayer2Ring8_
MonitorElement * meRowLayer1Ring6_
MonitorElement * meRowZmDisk1Panel1Plaq2_
unsigned int pxbLayer(const DetId &id) const
MonitorElement * meAdcZpDisk1Panel2Plaq2_
MonitorElement * meDigiMultiLayer3Ring5_
Definition: DetId.h:17
MonitorElement * meRowZmDisk2Panel1Plaq3_
MonitorElement * meAdcZpDisk2Panel1Plaq2_
MonitorElement * meColLayer3Ring3_
MonitorElement * meRowLayer2Ring5_
MonitorElement * meAdcZpDisk1Panel1Plaq4_
MonitorElement * meAdcLayer1Ring7_
MonitorElement * meColZpDisk2Panel1Plaq4_
MonitorElement * meRowLayer2Ring1_
MonitorElement * meColLayer2Ring8_
MonitorElement * meAdcLayer2Ring1_
MonitorElement * meAdcZmDisk2Panel1Plaq2_
MonitorElement * meDigiMultiLayer3Ladders_
MonitorElement * meRowLayer3Ring4_
MonitorElement * meAdcLayer1Ring3_
MonitorElement * meNdigiZmDisk1PerPanel2_
MonitorElement * meDigiMultiLayer2Ladders_
MonitorElement * meNdigiZmDisk2PerPanel1_
MonitorElement * meDigiMultiLayer1Ring6_
MonitorElement * meRowLayer2Ring8_
MonitorElement * meRowLayer3Ring2_
MonitorElement * meAdcLayer3Ring8_
#define begin
Definition: vmac.h:32
HLT enums.
std::string outputFile_
MonitorElement * meAdcZpDisk1Panel1Plaq2_
T get() const
Definition: EventSetup.h:73
MonitorElement * meNdigiZpDisk1PerPanel2_
MonitorElement * meRowZmDisk1Panel2Plaq1_
void bookHistograms(DQMStore::IBooker &ibooker, const edm::Run &run, const edm::EventSetup &es) override
MonitorElement * meColZmDisk1Panel1Plaq4_
MonitorElement * meAdcLayer3Ring3_
MonitorElement * meRowLayer1Ring3_
MonitorElement * meDigiMultiLayer2Ring3_
unsigned int pxfSide(const DetId &id) const
MonitorElement * meColZpDisk2Panel1Plaq3_
MonitorElement * meColZmDisk1Panel1Plaq2_
iterator begin()
Return an iterator to the first DetSet.
Definition: DetSetVector.h:314
MonitorElement * meColZmDisk2Panel1Plaq4_
MonitorElement * meDigiMultiLayer1Ring8_
MonitorElement * meRowZpDisk1Panel1Plaq2_
MonitorElement * meColLayer3Ring2_
MonitorElement * meAdcZpDisk1Panel2Plaq3_
MonitorElement * meRowLayer2Ring6_
MonitorElement * meRowLayer1Ring1_
collection_type::const_iterator const_iterator
Definition: DetSet.h:32
collection_type::const_iterator const_iterator
Definition: DetSetVector.h:102
MonitorElement * meColZpDisk1Panel1Plaq4_
MonitorElement * meRowLayer2Ring4_
MonitorElement * meAdcLayer1Ring6_
MonitorElement * meRowLayer1Ring8_
T mod(const T &a, const T &b)
Definition: ecalDccMap.h:4
MonitorElement * meRowZpDisk1Panel2Plaq1_
MonitorElement * meColZpDisk2Panel1Plaq2_
MonitorElement * meNdigiZpDisk2PerPanel2_
MonitorElement * meDigiMultiLayer3Ring4_
MonitorElement * meColLayer2Ring1_
T const * product() const
Definition: ESHandle.h:86
MonitorElement * meAdcLayer3Ring1_
MonitorElement * meColLayer3Ring6_
MonitorElement * meNdigiZmDisk2PerPanel2_
MonitorElement * meRowLayer1Ring7_
MonitorElement * meColZpDisk2Panel2Plaq2_
unsigned int pxfPanel(const DetId &id) const
unsigned int pxfBlade(const DetId &id) const
MonitorElement * meAdcLayer2Ring2_
MonitorElement * meAdcZpDisk1Panel1Plaq3_
MonitorElement * meColLayer3Ring4_
void save(std::string const &filename, std::string const &path="", std::string const &pattern="", std::string const &rewrite="", uint32_t run=0, uint32_t lumi=0, SaveReferenceTag ref=SaveWithReference, int minStatus=dqm::qstatus::STATUS_OK, std::string const &fileupdate="RECREATE")
Definition: DQMStore.cc:2244
MonitorElement * meRowLayer3Ring5_
MonitorElement * meRowZmDisk1Panel2Plaq2_
MonitorElement * meAdcLayer2Ring4_
Definition: Run.h:45
MonitorElement * meColZmDisk1Panel2Plaq3_
MonitorElement * meAdcZmDisk2Panel2Plaq3_
MonitorElement * meColZmDisk2Panel1Plaq1_
MonitorElement * meRowLayer2Ring2_
MonitorElement * meNdigiZpDisk1PerPanel1_
MonitorElement * meRowZpDisk1Panel2Plaq3_
MonitorElement * meAdcZpDisk2Panel2Plaq1_