CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CentralitypADQM.cc
Go to the documentation of this file.
2 
3 #include <memory>
4 
5 // DQM
9 
10 // Framework
17 
18 // Centrality
21 
22 using namespace edm;
23 using namespace reco;
24 using namespace hi;
25 
26 //
27 // -- Constructor
28 //
30 
31  edm::LogInfo("CentralitypADQM") << " Starting CentralitypADQM " << "\n";
32 
33  centralityTag_ = ps.getParameter<InputTag>("centralitycollection");
34  centralityToken = consumes<reco::Centrality>(centralityTag_);
35 
36  vertexTag_ = ps.getParameter<InputTag>("vertexcollection");
37  vertexToken = consumes<std::vector<reco::Vertex> >(vertexTag_);
38  // just to initialize
39 }
40 
41 //
42 // -- Destructor
43 //
45  edm::LogInfo("CentralitypADQM") << " Deleting CentralitypADQM " << "\n";
46 }
47 
48 //
49 // -- Book histograms
50 //
52  edm::EventSetup const&) {
53  // void CentralitypADQM::bookHistograms(DQMStore* bei){
54 
55  bei.setCurrentFolder("Physics/CentralitypA/");
56 
57  h_hiNpix = bei.book1D("h_hiNpix", "h_hiNpix", 750, 0, 75000);
58  // h_hiNpixelTracks = bei.book1D("h_hiNpixelTracks", "hiNpixelTracks", 500, 0, 5000);
59  h_hiNtracks = bei.book1D("h_hiNtracks", "h_hiNtracks", 500, 0, 5000);
60  h_hiNtracksPtCut =
61  bei.book1D("h_hiNtracksPtCut", "h_hiNtracksPtCut", 500, 0, 5000);
62  h_hiNtracksEtaCut =
63  bei.book1D("h_hiNtracksEtaCut", "h_hiNtracksEtaCut", 500, 0, 5000);
64  h_hiNtracksEtaPtCut =
65  bei.book1D("h_hiNtracksEtaPtCut", "h_hiNtracksEtaPtCut", 500, 0, 5000);
66 
67  h_hiHF = bei.book1D("h_hiHF", "h_hiHF", 900, 0, 9000);
68  h_hiHFplus = bei.book1D("h_hiHFplus", "h_hiHFplus", 900, 0, 9000);
69  h_hiHFminus = bei.book1D("h_hiHFminus", "h_hiHFminus", 900, 0, 9000);
70  h_hiHFplusEta4 = bei.book1D("h_hiHFplusEta4", "h_hiHFplusEta4", 900, 0, 9000);
71  h_hiHFminusEta4 =
72  bei.book1D("h_hiHFminusEta4", "h_hiHFminusEta4", 900, 0, 9000);
73 
74  h_hiHFhit = bei.book1D("h_hiHFhit", "h_hiHFhit", 3000, 0, 300000);
75  h_hiHFhitPlus = bei.book1D("h_hiHFhitPlus", "h_hiHFhitPlus", 2000, 0, 200000);
76  h_hiHFhitMinus =
77  bei.book1D("h_hiHFhitMinus", "h_hiHFhitMinus", 2000, 0, 200000);
78 
79  h_hiEB = bei.book1D("h_hiEB", "h_hiEB", 600, 0, 6000);
80  h_hiET = bei.book1D("h_hiET", "h_hiET", 600, 0, 6000);
81  h_hiEE = bei.book1D("h_hiEE", "h_hiEE", 600, 0, 6000);
82  h_hiEEplus = bei.book1D("h_hiEEplus", "h_hiEEplus", 600, 0, 6000);
83  h_hiEEminus = bei.book1D("h_hiEEminus", "h_hiEEminus", 600, 0, 6000);
84  h_hiZDC = bei.book1D("h_hiZDC", "h_hiZDC", 600, 0, 6000);
85  h_hiZDCplus = bei.book1D("h_hiZDCplus", "h_hiZDCplus", 600, 0, 6000);
86  h_hiZDCminus = bei.book1D("h_hiZDCminus", "h_hiZDCminus", 600, 0, 6000);
87 
88  h_vertex_x = bei.book1D("h_vertex_x", "h_vertex_x", 400, -4, 4);
89  h_vertex_y = bei.book1D("h_vertex_y", "h_vertex_y", 400, -4, 4);
90  h_vertex_z = bei.book1D("h_vertex_z", "h_vertex_z", 400, -40, 40);
91  }
92 
93 // -- Analyze
94 
96 
97  using namespace edm;
99  iEvent.getByToken(centralityToken, cent); //_centralitytag comes from the cfg
100 
101  if(cent.isValid()){
102  h_hiNpix->Fill(cent->multiplicityPixel());
103  h_hiNtracks->Fill(cent->Ntracks());
104 
105  h_hiNtracksPtCut->Fill(cent->NtracksPtCut());
106  h_hiNtracksEtaCut->Fill(cent->NtracksEtaCut());
107  h_hiNtracksEtaPtCut->Fill(cent->NtracksEtaPtCut());
108 
109  h_hiHF->Fill(cent->EtHFtowerSum());
110  h_hiHFplus->Fill(cent->EtHFtowerSumPlus());
111  h_hiHFminus->Fill(cent->EtHFtowerSumMinus());
112  h_hiHFplusEta4->Fill(cent->EtHFtruncatedPlus());
113  h_hiHFminusEta4->Fill(cent->EtHFtruncatedMinus());
114 
115  h_hiHFhit->Fill(cent->EtHFhitSum());
116  h_hiHFhitPlus->Fill(cent->EtHFhitSumPlus());
117  h_hiHFhitMinus->Fill(cent->EtHFhitSumMinus());
118 
119  h_hiZDC->Fill(cent->zdcSum());
120  h_hiZDCplus->Fill(cent->zdcSumPlus());
121  h_hiZDCminus->Fill(cent->zdcSumMinus());
122 
123  h_hiEEplus->Fill(cent->EtEESumPlus());
124  h_hiEEminus->Fill(cent->EtEESumMinus());
125  h_hiEE->Fill(cent->EtEESum());
126  h_hiEB->Fill(cent->EtEBSum());
127  h_hiET->Fill(cent->EtMidRapiditySum());
128 
130  iEvent.getByToken(vertexToken, vertex);
131  h_vertex_x->Fill(vertex->begin()->x());
132  h_vertex_y->Fill(vertex->begin()->y());
133  h_vertex_z->Fill(vertex->begin()->z());
134  }
135 }
T getParameter(std::string const &) const
CentralitypADQM(const edm::ParameterSet &ps)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:462
int iEvent
Definition: GenABIO.cc:230
virtual void analyze(edm::Event const &e, edm::EventSetup const &eSetup) override
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:115
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:276
virtual ~CentralitypADQM()
Definition: Run.h:43
virtual void bookHistograms(DQMStore::IBooker &bei, edm::Run const &, edm::EventSetup const &) override