18 std::string MsgLoggerCat =
"GlobalDigisHistogrammer_GlobalDigisHistogrammer";
29 m_Prov.getUntrackedParameter<
bool>(
"GetAllProvenances");
31 m_Prov.getUntrackedParameter<
bool>(
"PrintProvenanceInfo");
55 <<
"\n===============================\n"
56 <<
"Initialized as EDHistogrammer with parameter values:\n"
57 <<
" Name = " <<
fName <<
"\n"
58 <<
" Verbosity = " << verbosity <<
"\n"
59 <<
" Frequency = " << frequency <<
"\n"
60 <<
" OutputFile = " << outputfile <<
"\n"
61 <<
" DoOutput = " << doOutput <<
"\n"
62 <<
" GetProv = " << getAllProvenances <<
"\n"
63 <<
" PrintProv = " << printProvenanceInfo <<
"\n"
64 <<
" Global Src = " << GlobalDigisSrc_ <<
"\n"
66 <<
"===============================\n";
92 std::string SiStripString[19] = {
"TECW1",
"TECW2",
"TECW3",
"TECW4",
"TECW5",
"TECW6",
"TECW7",
"TECW8",
"TIBL1",
"TIBL2",
"TIBL3",
"TIBL4",
"TIDW1",
"TIDW2",
"TIDW3",
"TOBL1",
"TOBL2",
"TOBL3",
"TOBL4"};
93 for(
int i = 0;
i<19; ++
i)
99 std::string hcharname, hchartitle;
101 for(
int amend = 0; amend < 19; ++amend)
103 hcharname =
"hSiStripn_"+SiStripString[amend];
104 hchartitle= SiStripString[amend]+
" Digis";
105 sprintf(hname, hcharname.c_str());
106 sprintf(htitle, hchartitle.c_str());
109 mehSiStripn[amend]->setAxisTitle(
"Count",2);
110 hcharname =
"hSiStripADC_"+SiStripString[amend];
111 hchartitle= SiStripString[amend]+
" ADC";
112 sprintf(hname, hcharname.c_str());
113 sprintf(htitle, hchartitle.c_str());
116 mehSiStripADC[amend]->setAxisTitle(
"Count",2);
117 hcharname =
"hSiStripStripADC_"+SiStripString[amend];
118 hchartitle= SiStripString[amend]+
" Strip";
119 sprintf(hname, hcharname.c_str());
120 sprintf(htitle, hchartitle.c_str());
123 mehSiStripStrip[amend]->setAxisTitle(
"Count",2);
128 std::string HCalString[4] = {
"HB",
"HE",
"HO",
"HF"};
129 float calnUpper[4] = {3000.,3000.,3000.,2000.};
float calnLower[4]={2000.,2000.,2000.,1000.};
130 float SHEUpper[4]={0.05,.05,0.05,20};
131 float SHEvAEEUpper[4] = {5000, 5000, 5000, 20};
float SHEvAEELower[4] = {-5000, -5000, -5000, -20};
132 int SHEvAEEnBins[4] = {200,200,200,40};
133 double ProfileUpper[4] = {1.,1.,1.,20.};
135 for(
int i =0;
i<4; ++
i)
145 for(
int amend = 0; amend < 4; ++amend)
147 hcharname =
"hHcaln_"+HCalString[amend];
148 hchartitle= HCalString[amend]+
" digis";
149 sprintf(hname, hcharname.c_str());
150 sprintf(htitle, hchartitle.c_str());
151 mehHcaln[amend] =
dbe->
book1D(hname,htitle, 1000, calnLower[amend], calnUpper[amend]);
153 mehHcaln[amend]->setAxisTitle(
"Count",2);
154 hcharname =
"hHcalAEE_"+HCalString[amend];
155 hchartitle= HCalString[amend]+
"Cal AEE";
156 sprintf(hname, hcharname.c_str());
157 sprintf(htitle, hchartitle.c_str());
159 mehHcalAEE[amend]->
setAxisTitle(
"Analog Equivalent Energy",1);
160 mehHcalAEE[amend]->setAxisTitle(
"Count",2);
161 hcharname =
"hHcalSHE_"+HCalString[amend];
162 hchartitle= HCalString[amend]+
"Cal SHE";
163 sprintf(hname, hcharname.c_str());
164 sprintf(htitle, hchartitle.c_str());
166 mehHcalSHE[amend]->
setAxisTitle(
"Simulated Hit Energy",1);
167 mehHcalSHE[amend]->setAxisTitle(
"Count",2);
168 hcharname =
"hHcalAEESHE_"+HCalString[amend];
169 hchartitle= HCalString[amend]+
"Cal AEE/SHE";
170 sprintf(hname, hcharname.c_str());
171 sprintf(htitle, hchartitle.c_str());
172 mehHcalAEESHE[amend] =
dbe->
book1D(hname, htitle, SHEvAEEnBins[amend], SHEvAEELower[amend], SHEvAEEUpper[amend]);
174 mehHcalAEESHE[amend]->setAxisTitle(
"Count",2);
178 hcharname =
"hHcalSHEvAEE_"+HCalString[amend];
179 hchartitle= HCalString[amend]+
"Cal SHE vs. AEE";
180 sprintf(hname, hcharname.c_str());
181 sprintf(htitle, hchartitle.c_str());
184 mehHcalSHEvAEE[amend]->setAxisTitle(
"SHE",2);
192 std::string ECalString[2] = {
"EB",
"EE"};
194 for(
int i =0;
i<2; ++
i)
205 for(
int amend = 0; amend < 2; ++amend)
207 hcharname =
"hEcaln_"+ECalString[amend];
208 hchartitle= ECalString[amend]+
" digis";
209 sprintf(hname, hcharname.c_str());
210 sprintf(htitle, hchartitle.c_str());
213 mehEcaln[amend]->setAxisTitle(
"Count",2);
214 hcharname =
"hEcalAEE_"+ECalString[amend];
215 hchartitle= ECalString[amend]+
"Cal AEE";
216 sprintf(hname, hcharname.c_str());
217 sprintf(htitle, hchartitle.c_str());
219 mehEcalAEE[amend]->
setAxisTitle(
"Analog Equivalent Energy",1);
220 mehEcalAEE[amend]->setAxisTitle(
"Count",2);
221 hcharname =
"hEcalSHE_"+ECalString[amend];
222 hchartitle= ECalString[amend]+
"Cal SHE";
223 sprintf(hname, hcharname.c_str());
224 sprintf(htitle, hchartitle.c_str());
226 mehEcalSHE[amend]->
setAxisTitle(
"Simulated Hit Energy",1);
227 mehEcalSHE[amend]->setAxisTitle(
"Count",2);
228 hcharname =
"hEcalMaxPos_"+ECalString[amend];
229 hchartitle= ECalString[amend]+
"Cal MaxPos";
230 sprintf(hname, hcharname.c_str());
231 sprintf(htitle, hchartitle.c_str());
233 mehEcalMaxPos[amend]->
setAxisTitle(
"Maximum Position",1);
234 mehEcalMaxPos[amend]->setAxisTitle(
"Count",2);
237 hcharname =
"hEcalSHEvAEESHE_"+ECalString[amend];
238 hchartitle= ECalString[amend]+
"Cal SHE vs. AEE/SHE";
239 sprintf(hname, hcharname.c_str());
240 sprintf(htitle, hchartitle.c_str());
243 mehEcalSHEvAEESHE[amend]->setAxisTitle(
"SHE",2);
244 hcharname =
"hEcalMultvAEE_"+ECalString[amend];
245 hchartitle= ECalString[amend]+
"Cal Multi vs. AEE";
246 sprintf(hname, hcharname.c_str());
247 sprintf(htitle, hchartitle.c_str());
249 mehEcalMultvAEE[amend]->
setAxisTitle(
"Analog Equivalent Energy",1);
250 mehEcalMultvAEE[amend]->setAxisTitle(
"Number of Digis",2);
256 hcharname =
"hEcaln_ES";
257 hchartitle=
"ESCAL digis";
258 sprintf(hname, hcharname.c_str());
259 sprintf(htitle, hchartitle.c_str());
260 mehEcaln[2] =
dbe->
book1D(hname,htitle, 100, 0., 500.);
262 mehEcaln[2]->setAxisTitle(
"Count",2);
263 std::string ADCNumber[3] = {
"0",
"1",
"2"};
264 for(
int i =0;
i<3; ++
i)
267 hcharname =
"hEcalADC"+ADCNumber[
i]+
"_ES";
268 hchartitle=
"ESCAL ADC"+ADCNumber[
i];
269 sprintf(hname, hcharname.c_str());
270 sprintf(htitle, hchartitle.c_str());
273 mehEScalADC[
i]->setAxisTitle(
"Count",2);
278 std::string SiPixelString[7] = {
"BRL1",
"BRL2",
"BRL3",
"FWD1n",
"FWD1p",
"FWD2n",
"FWD2p"};
279 for(
int j =0;
j<7; ++
j)
288 for(
int amend = 0; amend < 7; ++amend)
290 hcharname =
"hSiPixeln_"+SiPixelString[amend];
291 hchartitle= SiPixelString[amend]+
" Digis";
292 sprintf(hname, hcharname.c_str());
293 sprintf(htitle, hchartitle.c_str());
298 hcharname =
"hSiPixelADC_"+SiPixelString[amend];
299 hchartitle= SiPixelString[amend]+
" ADC";
300 sprintf(hname, hcharname.c_str());
301 sprintf(htitle, hchartitle.c_str());
304 mehSiPixelADC[amend]->setAxisTitle(
"Count",2);
305 hcharname =
"hSiPixelRow_"+SiPixelString[amend];
306 hchartitle= SiPixelString[amend]+
" Row";
307 sprintf(hname, hcharname.c_str());
308 sprintf(htitle, hchartitle.c_str());
311 mehSiPixelRow[amend]->setAxisTitle(
"Count",2);
312 hcharname =
"hSiPixelColumn_"+SiPixelString[amend];
313 hchartitle= SiPixelString[amend]+
" Column";
314 sprintf(hname, hcharname.c_str());
315 sprintf(htitle, hchartitle.c_str());
318 mehSiPixelCol[amend]->setAxisTitle(
"Count",2);
322 std::string MuonString[4] = {
"MB1",
"MB2",
"MB3",
"MB4"};
324 for(
int i =0; i < 4; ++
i)
332 for(
int j = 0;
j < 4; ++
j)
334 hcharname =
"hDtMuonn_"+MuonString[
j];
335 hchartitle= MuonString[
j]+
" digis";
336 sprintf(hname,hcharname.c_str());
337 sprintf(htitle,hchartitle.c_str());
340 mehDtMuonn[
j]->setAxisTitle(
"Count",2);
341 hcharname =
"hDtLayer_"+MuonString[
j];
342 hchartitle= MuonString[
j]+
" Layer";
343 sprintf(hname,hcharname.c_str());
344 sprintf(htitle,hchartitle.c_str());
346 mehDtMuonLayer[
j]->
setAxisTitle(
"4 * (SuperLayer - 1) + Layer",1);
347 mehDtMuonLayer[
j]->setAxisTitle(
"Count",2);
348 hcharname =
"hDtMuonTime_"+MuonString[
j];
349 hchartitle= MuonString[
j]+
" Time";
350 sprintf(hname,hcharname.c_str());
351 sprintf(htitle,hchartitle.c_str());
354 mehDtMuonTime[
j]->setAxisTitle(
"Count",2);
355 hcharname =
"hDtMuonTimevLayer_"+MuonString[
j];
356 hchartitle= MuonString[
j]+
" Time vs. Layer";
357 sprintf(hname,hcharname.c_str());
358 sprintf(htitle,hchartitle.c_str());
360 mehDtMuonTimevLayer[
j]->
setAxisTitle(
"4 * (SuperLayer - 1) + Layer",1);
361 mehDtMuonTimevLayer[
j]->setAxisTitle(
"Time",2);
367 hcharname =
"hCSCStripn";
368 hchartitle =
"CSC Strip digis";
369 sprintf(hname,hcharname.c_str());
370 sprintf(htitle,hchartitle.c_str());
373 mehCSCStripn->setAxisTitle(
"Count",2);
376 hcharname =
"hCSCStripADC";
377 hchartitle =
"CSC Strip ADC";
378 sprintf(hname,hcharname.c_str());
379 sprintf(htitle,hchartitle.c_str());
382 mehCSCStripADC->setAxisTitle(
"Count",2);
385 hcharname =
"hCSCWiren";
386 hchartitle =
"CSC Wire digis";
387 sprintf(hname,hcharname.c_str());
388 sprintf(htitle,hchartitle.c_str());
391 mehCSCWiren->setAxisTitle(
"Count",2);
396 hcharname =
"hCSCWireTime";
397 hchartitle =
"CSC Wire Time";
398 sprintf(hname,hcharname.c_str());
399 sprintf(htitle,hchartitle.c_str());
400 mehCSCWiren =
dbe->
book1D(hname,htitle,10, 0., 10.);
402 mehCSCWiren->setAxisTitle(
"Count",2);
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
MonitorElement * mehHcaln[4]
MonitorElement * mehDtMuonLayer[4]
MonitorElement * mehCSCWireTime
MonitorElement * mehEcalMultvAEE[2]
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
float theCSCStripPedestalSum
MonitorElement * mehHcalAEESHE[4]
MonitorElement * mehSiPixelCol[7]
MonitorElement * mehHcalSHEvAEE[4]
MonitorElement * mehHcalSHE[4]
MonitorElement * mehCSCStripn
MonitorElement * mehDtMuonTimevLayer[4]
MonitorElement * mehSiStripADC[19]
MonitorElement * mehEcalSHEvAEESHE[2]
MonitorElement * mehEcalSHE[2]
MonitorElement * mehHcalAEE[4]
MonitorElement * mehSiPixelRow[7]
MonitorElement * mehEcaln[3]
MonitorElement * mehCSCWiren
edm::InputTag GlobalDigisSrc_
MonitorElement * mehSiPixelADC[7]
MonitorElement * bookProfile(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, const char *option="s")
void setVerbose(unsigned level)
MonitorElement * mehSiPixeln[7]
MonitorElement * mehDtMuonn[4]
int theCSCStripPedestalCount
MonitorElement * mehDtMuonTime[4]
MonitorElement * mehSiStripStrip[19]
MonitorElement * mehEScalADC[3]
MonitorElement * mehEcalAEE[2]
MonitorElement * mehEcalMaxPos[2]
void showDirStructure(void) const
MonitorElement * mehSiStripn[19]
MonitorElement * mehCSCStripADC
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
void setCurrentFolder(const std::string &fullpath)