CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CentralityDQM.cc
Go to the documentation of this file.
2 
3 #include <memory>
4 
5 // DQM
8 
9 // Framework
15 
16 // Centrality
20 
22 
23 using namespace edm;
24 using namespace reco;
25 
26 
27 //
28 // -- Constructor
29 //
31 
32  edm::LogInfo("CentralityDQM") << " Starting CentralityDQM " << "\n" ;
33 
34  bei_ = Service<DQMStore>().operator->();
35  bei_->setCurrentFolder("Physics/Centrality");
36  bookHistos(bei_);
37 
38  centrality_ = ps.getParameter<edm::InputTag>("centrality_");
39  vertex_ = ps.getParameter<edm::InputTag>("vertex_");
40 
41  // just to initialize
42 }
43 
44 
45 //
46 // -- Destructor
47 //
49  edm::LogInfo("CentralityDQM") << " Deleting CentralityDQM " << "\n" ;
50 }
51 
52 
53 //
54 // -- Begin Job
55 //
57  nLumiSecs_ = 0;
58 }
59 
60 
61 //
62 // -- Begin Run
63 //
64 void CentralityDQM::beginRun(Run const& run, edm::EventSetup const& eSetup) {
65  edm::LogInfo ("CentralityDQM") <<"[CentralityDQM]: Begining of Run";
66 }
67 
68 
69 // -- Begin Luminosity Block
70 //
72  //edm::LogInfo ("CentralityDQM") <<"[CentralityDQM]: Begin of LS transition";
73 }
74 
75 
76 //
77 // -- Book histograms
78 //
80 
81  bei->cd();
82 
83  bei->setCurrentFolder("Physics/Centrality");
84 
85  h_hiNpix= bei->book1D("h_hiNpix", "h_hiNpix", 500,0,50000);
86  h_hiNpixelTracks= bei->book1D("h_hiNpixelTracks", "hiNpixelTracks", 300,0,3000);
87  h_hiNtracks= bei->book1D("h_hiNtracks", "h_hiNtracks",200,0,2000);
88  h_hiNtracksPtCut= bei->book1D("h_hiNtracksPtCut", "h_hiNtracksPtCut", 200,0,2000);
89  h_hiNtracksEtaCut= bei->book1D("h_hiNtracksEtaCut", "h_hiNtracksEtaCut",200,0,2000);
90  h_hiNtracksEtaPtCut= bei->book1D("h_hiNtracksEtaPtCut", "h_hiNtracksEtaPtCut",200,0,2000);
91 
92  h_hiHF= bei->book1D("h_hiHF", "h_hiHF", 600,0,6000 );
93  h_hiHFplus= bei->book1D("h_hiHFplus", "h_hiHFplus", 600,0,6000 );
94  h_hiHFminus= bei->book1D("h_hiHFminus", "h_hiHFminus", 600,0,6000 );
95  h_hiHFplusEta4= bei->book1D("h_hiHFplusEta4", "h_hiHFplusEta4", 600,0,6000 );
96  h_hiHFminusEta4= bei->book1D("h_hiHFminusEta4", "h_hiHFminusEta4", 600,0,6000 );
97 
98  h_hiHFhit= bei->book1D("h_hiHFhit", "h_hiHFhit",2000,0,200000);
99  h_hiHFhitPlus= bei->book1D("h_hiHFhitPlus", "h_hiHFhitPlus",2000,0,100000);
100  h_hiHFhitMinus= bei->book1D("h_hiHFhitMinus", "h_hiHFhitMinus",2000,0,100000 );
101 
102  h_hiEB= bei->book1D("h_hiEB", "h_hiEB",400,0,4000 );
103  h_hiET= bei->book1D("h_hiET", "h_hiET",400,0,4000 );
104  h_hiEE= bei->book1D("h_hiEE", "h_hiEE",400,0,4000);
105  h_hiEEplus= bei->book1D("h_hiEEplus", "h_hiEEplus", 400,0,4000);
106  h_hiEEminus= bei->book1D("h_hiEEminus", "h_hiEEminus",400,0,4000 );
107  h_hiZDC= bei->book1D("h_hiZDC", "h_hiZDC",400,0,4000 );
108  h_hiZDCplus= bei->book1D("h_hiZDCplus", "h_hiZDCplus",400,0,4000 );
109  h_hiZDCminus= bei->book1D("h_hiZDCminus", "h_hiZDCminus", 400,0,4000);
110 
111  h_vertex_x = bei->book1D("h_vertex_x", "h_vertex_x", 400,-4,4);
112  h_vertex_y = bei->book1D("h_vertex_y", "h_vertex_y", 400,-4,4);
113  h_vertex_z = bei->book1D("h_vertex_z", "h_vertex_z", 400,-40,40);
114 
115  bei->cd();
116 
117 }
118 
119 
120 //
121 // -- Analyze
122 //
124  using namespace edm;
126  iEvent.getByLabel(centrality_, cent); //_centralitytag comes from the cfg as an inputTag and is "hiCentrality"
127 
128  if (!cent.isValid()) return;
129 
130  h_hiNpix->Fill(cent->multiplicityPixel());
131  h_hiNpixelTracks ->Fill( cent->NpixelTracks());
132  h_hiNtracks ->Fill( cent->Ntracks()); //
133 
134  h_hiNtracksPtCut->Fill(cent->NtracksPtCut());
135  h_hiNtracksEtaCut->Fill(cent->NtracksEtaCut());
136  h_hiNtracksEtaPtCut->Fill(cent->NtracksEtaPtCut());
137 
138  h_hiHF->Fill( cent->EtHFtowerSum());
139  h_hiHFplus->Fill( cent->EtHFtowerSumPlus());
140  h_hiHFminus->Fill( cent->EtHFtowerSumMinus());
141  h_hiHFplusEta4->Fill( cent->EtHFtruncatedPlus());
142  h_hiHFminusEta4->Fill( cent->EtHFtruncatedMinus());
143 
144  h_hiHFhit->Fill(cent->EtHFhitSum());
145  h_hiHFhitPlus->Fill(cent->EtHFhitSumPlus());
146  h_hiHFhitMinus->Fill(cent->EtHFhitSumMinus());
147 
148  h_hiZDC ->Fill( cent->zdcSum());
149  h_hiZDCplus ->Fill( cent->zdcSumPlus());
150  h_hiZDCminus ->Fill( cent->zdcSumMinus());
151 
152  h_hiEEplus->Fill( cent->EtEESumPlus());
153  h_hiEEminus->Fill( cent->EtEESumMinus());
154  h_hiEE->Fill( cent->EtEESum());
155  h_hiEB->Fill( cent->EtEBSum());
156  h_hiET->Fill( cent->EtMidRapiditySum());
157 
159  iEvent.getByLabel(vertex_, vertex);
160  h_vertex_x->Fill(vertex->begin()->x());
161  h_vertex_y->Fill(vertex->begin()->y());
162  h_vertex_z->Fill(vertex->begin()->z());
163 
164 }
165 
166 //
167 // -- End Luminosity Block
168 void CentralityDQM::endLuminosityBlock(edm::LuminosityBlock const& lumiSeg, edm::EventSetup const& eSetup) { nLumiSecs_++;}
169 
170 //
171 // -- End Run
172 //
173 void CentralityDQM::endRun(edm::Run const& run, edm::EventSetup const& eSetup){
174 }
175 
176 
177 
178 //
179 // -- End Job
180 //
182  //edm::LogInfo("CentralityDQM") <<"[CentralityDQM]: endjob called!";
183 }
T getParameter(std::string const &) const
void bookHistos(DQMStore *bei)
virtual void endJob()
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
Definition: DQMStore.cc:717
CentralityDQM(const edm::ParameterSet &ps)
void cd(void)
go to top directory (ie. root)
Definition: DQMStore.cc:406
virtual void beginJob()
virtual void beginRun(edm::Run const &run, edm::EventSetup const &eSetup)
void bookHistos()
Definition: Histogram.h:33
int iEvent
Definition: GenABIO.cc:243
virtual void endRun(edm::Run const &run, edm::EventSetup const &eSetup)
virtual void analyze(edm::Event const &e, edm::EventSetup const &eSetup)
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
Definition: Event.h:356
virtual void endLuminosityBlock(edm::LuminosityBlock const &lumiSeg, edm::EventSetup const &c)
virtual void beginLuminosityBlock(edm::LuminosityBlock const &lumiSeg, edm::EventSetup const &context)
virtual ~CentralityDQM()
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:429
Definition: Run.h:33