85 string PsFileNameWithRun =
PsFileName +
"_" + RunNum.str() +
".ps";
86 TPostScript
psFile(PsFileNameWithRun.c_str(),111);
89 TCanvas
c1(
"c1",
"",600,780);
97 stringstream dduID; dduID <<
DDUId;
99 string histo_name1 =
MainFolder +
"DataIntegrity/FED" + dduID.str() +
"/FED" + dduID.str() +
"_TTSValues";
100 TH1F *histo1 = (TH1F*)
theFile -> Get(histo_name1.c_str());
105 string histo_name2 =
MainFolder +
"DataIntegrity/FED" + dduID.str() +
"/FED" + dduID.str() +
"_ROSStatus";
106 TH1F *histo2 = (TH1F*)
theFile -> Get(histo_name2.c_str());
111 string histo_name3 =
MainFolder +
"DataIntegrity/FED" + dduID.str() +
"/FED" + dduID.str() +
"_ROSSummary";
112 TH1F *histo3 = (TH1F*)
theFile -> Get(histo_name3.c_str());
117 string histo_name4 =
MainFolder +
"DataIntegrity/FED" + dduID.str() +
"/ROS1/FED" + dduID.str() +
"_ROS1_ROSError";
118 TH1F *histo4 = (TH1F*)
theFile -> Get(histo_name4.c_str());
133 vector<const DTChamber*>::const_iterator ch_digi_it =
muonGeom->chambers().begin();
134 vector<const DTChamber*>::const_iterator ch_digi_end =
muonGeom->chambers().end();
135 for (; ch_digi_it != ch_digi_end; ++ch_digi_it) {
137 stringstream wheel; wheel << ch.
wheel();
139 stringstream sector; sector << ch.
sector();
140 vector<const DTSuperLayer*>::const_iterator sl_it = (*ch_digi_it)->superLayers().begin();
141 vector<const DTSuperLayer*>::const_iterator sl_end = (*ch_digi_it)->superLayers().end();
143 for(; sl_it != sl_end; ++sl_it) {
145 stringstream superLayer; superLayer << sl.
superlayer();
147 string digiFolder =
MainFolder +
"DTDigiTask/Wheel" + wheel.str();
148 string histo_name = digiFolder +
"/Station" + station.str() +
"/Sector" + sector.str() +
"/TimeBoxes/TimeBox_W" + wheel.str() +
"_St" + station.str() +
"_Sec" + sector.str()+
"_SL" + superLayer.str();
149 TH1F *
histo = (TH1F *)
theFile->Get(histo_name.c_str());
164 vector<const DTChamber*>::const_iterator ch_digi2_it =
muonGeom->chambers().begin();
165 vector<const DTChamber*>::const_iterator ch_digi2_end =
muonGeom->chambers().end();
166 for (; ch_digi2_it != ch_digi2_end; ++ch_digi2_it) {
168 stringstream wheel; wheel << ch.
wheel();
170 stringstream sector; sector << ch.
sector();
172 vector<const DTSuperLayer*>::const_iterator sl_it = (*ch_digi2_it)->superLayers().begin();
173 vector<const DTSuperLayer*>::const_iterator sl_end = (*ch_digi2_it)->superLayers().end();
175 for(; sl_it != sl_end; ++sl_it) {
177 vector<const DTLayer*>::const_iterator l_it = (*sl_it)->layers().begin();
178 vector<const DTLayer*>::const_iterator l_end = (*sl_it)->layers().end();
179 stringstream superLayer; superLayer << sl.
superlayer();
181 for(; l_it != l_end; ++l_it) {
183 stringstream layer; layer << layerId.
layer();
185 string digiFolder =
MainFolder +
"DTDigiTask/Wheel" + wheel.str();
186 string histo_name = digiFolder +
"/Station" + station.str() +
"/Sector" + sector.str() +
"/Occupancies/OccupancyInTimeHits_perL_W" + wheel.str() +
"_St" + station.str() +
"_Sec" + sector.str()+
"_SL" + superLayer.str() +
"_L" + layer.str();
187 TH1F *histo = (TH1F*)
theFile -> Get(histo_name.c_str());
204 vector<const DTChamber*>::const_iterator ch_digi3_it =
muonGeom->chambers().begin();
205 vector<const DTChamber*>::const_iterator ch_digi3_end =
muonGeom->chambers().end();
206 for (; ch_digi3_it != ch_digi3_end; ++ch_digi3_it) {
208 stringstream wheel; wheel << ch.
wheel();
210 stringstream sector; sector << ch.
sector();
212 vector<const DTSuperLayer*>::const_iterator sl_it = (*ch_digi3_it)->superLayers().begin();
213 vector<const DTSuperLayer*>::const_iterator sl_end = (*ch_digi3_it)->superLayers().end();
215 for(; sl_it != sl_end; ++sl_it) {
217 vector<const DTLayer*>::const_iterator l_it = (*sl_it)->layers().begin();
218 vector<const DTLayer*>::const_iterator l_end = (*sl_it)->layers().end();
219 stringstream superLayer; superLayer << sl.
superlayer();
221 for(; l_it != l_end; ++l_it) {
223 stringstream layer; layer << layerId.
layer();
225 string digiFolder =
MainFolder +
"DTDigiTask/Wheel" + wheel.str();
226 string histo_name = digiFolder +
"/Station" + station.str() +
"/Sector" + sector.str() +
"/Occupancies/OccupancyNoise_perL_W" + wheel.str() +
"_St" + station.str() +
"_Sec" + sector.str()+
"_SL" + superLayer.str() +
"_L" + layer.str();
227 TH1F *histo = (TH1F*)
theFile -> Get(histo_name.c_str());
244 vector<const DTChamber*>::const_iterator ch_digi4_it =
muonGeom->chambers().begin();
245 vector<const DTChamber*>::const_iterator ch_digi4_end =
muonGeom->chambers().end();
246 for (; ch_digi4_it != ch_digi4_end; ++ch_digi4_it) {
248 stringstream wheel; wheel << ch.
wheel();
250 stringstream sector; sector << ch.
sector();
252 vector<const DTSuperLayer*>::const_iterator sl_it = (*ch_digi4_it)->superLayers().begin();
253 vector<const DTSuperLayer*>::const_iterator sl_end = (*ch_digi4_it)->superLayers().end();
255 for(; sl_it != sl_end; ++sl_it) {
257 vector<const DTLayer*>::const_iterator l_it = (*sl_it)->layers().begin();
258 vector<const DTLayer*>::const_iterator l_end = (*sl_it)->layers().end();
259 stringstream superLayer; superLayer << sl.
superlayer();
261 for(; l_it != l_end; ++l_it) {
263 stringstream layer; layer << layerId.
layer();
265 string digiFolder =
MainFolder +
"DTDigiTask/Wheel" + wheel.str();
266 string histo_name = digiFolder +
"/Station" + station.str() +
"/Sector" + sector.str() +
"/DigiPerEvent/DigiPerEvent_W" + wheel.str() +
"_St" + station.str() +
"_Sec" + sector.str() +
"_SL" + superLayer.str() +
"_L" + layer.str();
267 TProfile *histo = (TProfile*)
theFile -> Get(histo_name.c_str());
289 vector<const DTChamber*>::const_iterator ch_reco_it =
muonGeom->chambers().begin();
290 vector<const DTChamber*>::const_iterator ch_reco_end =
muonGeom->chambers().end();
291 for (; ch_reco_it != ch_reco_end; ++ch_reco_it) {
293 stringstream wheel; wheel << ch.
wheel();
295 stringstream sector; sector << ch.
sector();
297 string recoFolder =
MainFolder +
"DTSegmentAnalysisTask/Wheel" + wheel.str();
298 string histo_name = recoFolder +
"/Station" + station.str() +
"/Sector" + sector.str() +
"/hN4DSeg_W" + wheel.str() +
"_St" + station.str() +
"_Sec" + sector.str();
299 TH1F *histo = (TH1F*)
theFile -> Get(histo_name.c_str());
301 int pad = (ch.
station() - 1)*2 + 1;
305 histo_name = recoFolder +
"/Station" + station.str() +
"/Sector" + sector.str() +
"/h4DSegmXvsYInCham_W" + wheel.str() +
"_St" + station.str() +
"_Sec" + sector.str();
306 TProfile *histo2 = (TProfile*)
theFile -> Get(histo_name.c_str());
308 int pad = (ch.
station() - 1)*2 + 2;
318 vector<const DTChamber*>::const_iterator ch_reco2_it =
muonGeom->chambers().begin();
319 vector<const DTChamber*>::const_iterator ch_reco2_end =
muonGeom->chambers().end();
320 for (; ch_reco2_it != ch_reco2_end; ++ch_reco2_it) {
322 stringstream wheel; wheel << ch.
wheel();
324 stringstream sector; sector << ch.
sector();
326 string recoFolder =
MainFolder +
"DTSegmentAnalysisTask/Wheel" + wheel.str();
327 string histo_name = recoFolder +
"/Station" + station.str() +
"/Sector" + sector.str() +
"/h4DSegmPhiDirection_W" + wheel.str() +
"_St" + station.str() +
"_Sec" + sector.str();
328 TH1F *histo = (TH1F*)
theFile -> Get(histo_name.c_str());
330 int pad = (ch.
station() - 1)*2 + 1;
334 histo_name = recoFolder +
"/Station" + station.str() +
"/Sector" + sector.str() +
"/h4DSegmThetaDirection_W" + wheel.str() +
"_St" + station.str() +
"_Sec" + sector.str();
335 TH1F *histo2 = (TH1F*)
theFile -> Get(histo_name.c_str());
337 int pad = (ch.
station() - 1)*2 + 2;
352 vector<const DTChamber*>::const_iterator ch_reso_it =
muonGeom->chambers().begin();
353 vector<const DTChamber*>::const_iterator ch_reso_end =
muonGeom->chambers().end();
354 for (; ch_reso_it != ch_reso_end; ++ch_reso_it) {
356 stringstream wheel; wheel << ch.
wheel();
358 stringstream sector; sector << ch.
sector();
359 vector<const DTSuperLayer*>::const_iterator sl_it = (*ch_reso_it)->superLayers().begin();
360 vector<const DTSuperLayer*>::const_iterator sl_end = (*ch_reso_it)->superLayers().end();
362 for(; sl_it != sl_end; ++sl_it) {
364 stringstream superLayer; superLayer << sl.
superlayer();
366 string resoFolder =
MainFolder +
"DTResolutionAnalysisTask/Wheel" + wheel.str();
367 string histo_name = resoFolder +
"/Station" + station.str() +
"/Sector" + sector.str() +
"/hResDist_W" + wheel.str() +
"_St" + station.str() +
"_Sec" + sector.str() +
"_SL" + superLayer.str();
368 TH1F *histo = (TH1F*)
theFile -> Get(histo_name.c_str());
381 vector<const DTChamber*>::const_iterator ch_reso2_it =
muonGeom->chambers().begin();
382 vector<const DTChamber*>::const_iterator ch_reso2_end =
muonGeom->chambers().end();
383 for (; ch_reso2_it != ch_reso2_end; ++ch_reso2_it) {
385 stringstream wheel; wheel << ch.
wheel();
387 stringstream sector; sector << ch.
sector();
388 vector<const DTSuperLayer*>::const_iterator sl_it = (*ch_reso2_it)->superLayers().begin();
389 vector<const DTSuperLayer*>::const_iterator sl_end = (*ch_reso2_it)->superLayers().end();
391 for(; sl_it != sl_end; ++sl_it) {
393 stringstream superLayer; superLayer << sl.
superlayer();
395 string resoFolder =
MainFolder +
"DTResolutionAnalysisTask/Wheel" + wheel.str();
396 string histo_name = resoFolder +
"/Station" + station.str() +
"/Sector" + sector.str() +
"/hResDistVsDist_W" + wheel.str() +
"_St" + station.str() +
"_Sec" + sector.str() +
"_SL" + superLayer.str();
397 TProfile *histo = (TProfile*)
theFile -> Get(histo_name.c_str());
415 vector<const DTChamber*>::const_iterator ch_eff_it =
muonGeom->chambers().begin();
416 vector<const DTChamber*>::const_iterator ch_eff_end =
muonGeom->chambers().end();
417 for (; ch_eff_it != ch_eff_end; ++ch_eff_it) {
419 stringstream wheel; wheel << ch.
wheel();
421 stringstream sector; sector << ch.
sector();
423 vector<const DTSuperLayer*>::const_iterator sl_it = (*ch_eff_it)->superLayers().begin();
424 vector<const DTSuperLayer*>::const_iterator sl_end = (*ch_eff_it)->superLayers().end();
426 for(; sl_it != sl_end; ++sl_it) {
428 vector<const DTLayer*>::const_iterator l_it = (*sl_it)->layers().begin();
429 vector<const DTLayer*>::const_iterator l_end = (*sl_it)->layers().end();
430 stringstream superLayer; superLayer << sl.
superlayer();
432 for(; l_it != l_end; ++l_it) {
434 stringstream layer; layer << layerId.
layer();
436 string efficiencyFolder =
MainFolder +
"Tests/DTEfficiency/Wheel" + wheel.str();
437 string histo_name = efficiencyFolder +
"/Station" + station.str() +
"/Sector" + sector.str() +
"/UnassEfficiency_W" + wheel.str() +
"_St" + station.str() +
"_Sec" + sector.str() +
"_SL" + superLayer.str() +
"_L" + layer.str();
438 TH1F *histo = (TH1F*)
theFile -> Get(histo_name.c_str());
457 vector<const DTChamber*>::const_iterator ch_eff2_it =
muonGeom->chambers().begin();
458 vector<const DTChamber*>::const_iterator ch_eff2_end =
muonGeom->chambers().end();
459 for (; ch_eff2_it != ch_eff2_end; ++ch_eff2_it) {
461 stringstream wheel; wheel << ch.
wheel();
463 stringstream sector; sector << ch.
sector();
465 string efficiencyFolder =
MainFolder +
"Tests/DTChamberEfficiency/Wheel" + wheel.str();
466 string histo_name = efficiencyFolder +
"/Station" + station.str() +
"/Sector" + sector.str() +
"/xEfficiency_W" + wheel.str() +
"_St" + station.str() +
"_Sec" + sector.str();
467 TH1F *histo = (TH1F*)
theFile -> Get(histo_name.c_str());
478 vector<const DTChamber*>::const_iterator ch_eff3_it =
muonGeom->chambers().begin();
479 vector<const DTChamber*>::const_iterator ch_eff3_end =
muonGeom->chambers().end();
480 for (; ch_eff3_it != ch_eff3_end; ++ch_eff3_it) {
482 stringstream wheel; wheel << ch.
wheel();
484 stringstream sector; sector << ch.
sector();
486 string efficiencyFolder =
MainFolder +
"Tests/DTChamberEfficiency/Wheel" + wheel.str();
487 string histo_name = efficiencyFolder +
"/Station" + station.str() +
"/Sector" + sector.str() +
"/yEfficiency_W" + wheel.str() +
"_St" + station.str() +
"_Sec" + sector.str();
488 TH1F *histo = (TH1F*)
theFile -> Get(histo_name.c_str());
503 vector<const DTChamber*>::const_iterator ch_TP_it =
muonGeom->chambers().begin();
504 vector<const DTChamber*>::const_iterator ch_TP_end =
muonGeom->chambers().end();
505 for (; ch_TP_it != ch_TP_end; ++ch_TP_it) {
507 stringstream wheel; wheel << ch.
wheel();
509 stringstream sector; sector << ch.
sector();
511 vector<const DTSuperLayer*>::const_iterator sl_it = (*ch_TP_it)->superLayers().begin();
512 vector<const DTSuperLayer*>::const_iterator sl_end = (*ch_TP_it)->superLayers().end();
514 for(; sl_it != sl_end; ++sl_it) {
516 vector<const DTLayer*>::const_iterator l_it = (*sl_it)->layers().begin();
517 vector<const DTLayer*>::const_iterator l_end = (*sl_it)->layers().end();
518 stringstream superLayer; superLayer << sl.
superlayer();
520 for(; l_it != l_end; ++l_it) {
522 stringstream layer; layer << layerId.
layer();
524 string testPulsesFolder =
MainFolder +
"DTTestPulsesTask/Wheel" + wheel.str();
525 string histo_name = testPulsesFolder +
"/Station" + station.str() +
"/Sector" + sector.str() +
"/SuperLayer" + superLayer.str() +
"/TPProfile/TestPulses2D_W" + wheel.str() +
"_St" + station.str() +
"_Sec" + sector.str() +
"_SL" + superLayer.str() +
"_L" + layer.str();
526 TProfile *histo = (TProfile*)
theFile -> Get(histo_name.c_str());
547 vector<const DTChamber*>::const_iterator ch_trigger_it =
muonGeom->chambers().begin();
548 vector<const DTChamber*>::const_iterator ch_trigger_end =
muonGeom->chambers().end();
549 for (; ch_trigger_it != ch_trigger_end; ++ch_trigger_it) {
551 stringstream wheel; wheel << ch.
wheel();
553 stringstream sector; sector << ch.
sector();
555 string triggerFolder =
MainFolder +
"DTLocalTriggerTask/Wheel" + wheel.str();
556 string histo_name = triggerFolder +
"/Sector" + sector.str() +
"/Station" + station.str() +
"/LocalTriggerPhi/DDU_BXvsQual_W" + wheel.str() +
"_Sec" + sector.str() +
"_St" + station.str();
557 TH1F *histo = (TH1F*)
theFile -> Get(histo_name.c_str());
567 vector<const DTChamber*>::const_iterator ch_trigger2_it =
muonGeom->chambers().begin();
568 vector<const DTChamber*>::const_iterator ch_trigger2_end =
muonGeom->chambers().end();
569 for (; ch_trigger2_it != ch_trigger2_end; ++ch_trigger2_it) {
571 stringstream wheel; wheel << ch.
wheel();
573 stringstream sector; sector << ch.
sector();
575 string triggerFolder =
MainFolder +
"DTLocalTriggerTask/Wheel" + wheel.str();
576 string histo_name = triggerFolder +
"/Sector" + sector.str() +
"/Station" + station.str() +
"/LocalTriggerTheta/DDU_ThetaBXvsQual_W" + wheel.str() +
"_Sec" + sector.str() +
"_St" + station.str();
577 TH1F *histo = (TH1F*)
theFile -> Get(histo_name.c_str());
588 int counter1=0,counter2=0;
590 vector<const DTChamber*>::const_iterator ch_trigger3_it =
muonGeom->chambers().begin();
591 vector<const DTChamber*>::const_iterator ch_trigger3_end =
muonGeom->chambers().end();
592 for (; ch_trigger3_it != ch_trigger3_end; ++ch_trigger3_it) {
594 stringstream wheel; wheel << ch.
wheel();
595 stringstream sector; sector << ch.
sector();
597 string triggerFolder =
MainFolder +
"Tests/DTLocalTrigger/Wheel" + wheel.str();
598 string histo_Name = triggerFolder +
"/Sector" + sector.str() +
"/LocalTriggerPhi/CorrFraction_Phi_W" + wheel.str() +
"_Sec" + sector.str();
599 TH1F *Histo1 = (TH1F*)
theFile -> Get(histo_Name.c_str());
600 if(Histo1 && counter1==0){
605 histo_Name = triggerFolder +
"/Sector" + sector.str() +
"/LocalTriggerTheta/HFraction_Theta_W" + wheel.str() +
"_Sec" + sector.str();
606 TH1F *Histo2 = (TH1F*)
theFile -> Get(histo_Name.c_str());
607 if(Histo2 && counter2==0){
619 vector<const DTChamber*>::const_iterator ch_trigger4_it =
muonGeom->chambers().begin();
620 vector<const DTChamber*>::const_iterator ch_trigger4_end =
muonGeom->chambers().end();
621 for (; ch_trigger4_it != ch_trigger4_end; ++ch_trigger4_it) {
623 stringstream wheel; wheel << ch.
wheel();
625 stringstream sector; sector << ch.
sector();
627 string triggerFolder =
MainFolder +
"Tests/DTLocalTrigger/Wheel" + wheel.str();
628 string histo_name = triggerFolder +
"/Sector" + sector.str() +
"/Station" + station.str() +
"/TrigEffPos_Phi_W" + wheel.str() +
"_Sec" + sector.str() +
"_St" + station.str();
629 TH1F *histo = (TH1F*)
theFile -> Get(histo_name.c_str());
630 string histo_nameHHHL = triggerFolder +
"/Sector" + sector.str() +
"/Station" + station.str() +
"/TrigEffPosHHHL_Phi_W" + wheel.str() +
"_Sec" + sector.str() +
"_St" + station.str();
631 TH1F *histoHHHL = (TH1F*)
theFile -> Get(histo_nameHHHL.c_str());
634 histo->GetYaxis()->SetRangeUser(0,1.1);
637 histoHHHL->Draw(
"same");
647 vector<const DTChamber*>::const_iterator ch_trigger5_it =
muonGeom->chambers().begin();
648 vector<const DTChamber*>::const_iterator ch_trigger5_end =
muonGeom->chambers().end();
649 for (; ch_trigger5_it != ch_trigger5_end; ++ch_trigger5_it) {
651 stringstream wheel; wheel << ch.
wheel();
653 stringstream sector; sector << ch.
sector();
655 string triggerFolder =
MainFolder +
"Tests/DTLocalTrigger/Wheel" + wheel.str();
656 string histo_name = triggerFolder +
"/Sector" + sector.str() +
"/Station" + station.str() +
"/TrigEffAngle_Phi_W" + wheel.str() +
"_Sec" + sector.str() +
"_St" + station.str();
657 TH1F *histo = (TH1F*)
theFile -> Get(histo_name.c_str());
660 histo->GetYaxis()->SetRangeUser(0,1.1);
670 vector<const DTChamber*>::const_iterator ch_trigger6_it =
muonGeom->chambers().begin();
671 vector<const DTChamber*>::const_iterator ch_trigger6_end =
muonGeom->chambers().end();
672 for (; ch_trigger6_it != ch_trigger6_end; ++ch_trigger6_it) {
674 stringstream wheel; wheel << ch.
wheel();
676 stringstream sector; sector << ch.
sector();
678 string triggerFolder =
MainFolder +
"Tests/DTLocalTrigger/Wheel" + wheel.str();
679 string histo_name = triggerFolder +
"/Sector" + sector.str() +
"/Station" + station.str() +
"/TrigEffPos_Theta_W" + wheel.str() +
"_Sec" + sector.str() +
"_St" + station.str();
680 TH1F *histo = (TH1F*)
theFile -> Get(histo_name.c_str());
683 histo->GetYaxis()->SetRangeUser(0,1.1);
693 vector<const DTChamber*>::const_iterator ch_trigger7_it =
muonGeom->chambers().begin();
694 vector<const DTChamber*>::const_iterator ch_trigger7_end =
muonGeom->chambers().end();
695 for (; ch_trigger7_it != ch_trigger7_end; ++ch_trigger7_it) {
697 stringstream wheel; wheel << ch.
wheel();
699 stringstream sector; sector << ch.
sector();
701 string triggerFolder =
MainFolder +
"Tests/DTLocalTrigger/Wheel" + wheel.str();
702 string histo_name = triggerFolder +
"/Sector" + sector.str() +
"/Station" + station.str() +
"/TrigEffAngle_Theta_W" + wheel.str() +
"_Sec" + sector.str() +
"_St" + station.str();
703 TH1F *histo = (TH1F*)
theFile -> Get(histo_name.c_str());
705 histo->GetYaxis()->SetRangeUser(0,1.1);
edm::ESHandle< DTGeometry > muonGeom
int layer() const
Return the layer number.
int superlayer() const
Return the superlayer number (deprecated method name)
int station() const
Return the station number.
int wheel() const
Return the wheel number.