CMS 3D CMS Logo

V0Monitor.cc
Go to the documentation of this file.
3 
5 
8 
10 
11 // -----------------------------
12 // constructors and destructor
13 // -----------------------------
14 
16  : folderName_(iConfig.getParameter<std::string>("FolderName")),
17  v0Token_(consumes<reco::VertexCompositeCandidateCollection>(iConfig.getParameter<edm::InputTag>("v0"))),
18  bsToken_(consumes<reco::BeamSpot>(iConfig.getParameter<edm::InputTag>("beamSpot"))),
19  pvToken_(consumes<reco::VertexCollection>(iConfig.getParameter<edm::InputTag>("primaryVertex"))),
20  lumiscalersToken_(consumes<LumiScalersCollection>(iConfig.getParameter<edm::InputTag>("lumiScalers"))),
21  metaDataToken_(consumes<OnlineLuminosityRecord>(iConfig.getParameter<edm::InputTag>("metadata"))),
22  forceSCAL_(iConfig.getParameter<bool>("forceSCAL")),
23  pvNDOF_(iConfig.getParameter<int>("pvNDOF")),
24  genTriggerEventFlag_(new GenericTriggerEventFlag(
25  iConfig.getParameter<edm::ParameterSet>("genericTriggerEventPSet"), consumesCollector(), *this)) {
26  v0_N_ = nullptr;
27  v0_mass_ = nullptr;
28  v0_pt_ = nullptr;
29  v0_eta_ = nullptr;
30  v0_phi_ = nullptr;
31  v0_Lxy_ = nullptr;
32  v0_Lxy_wrtBS_ = nullptr;
33  v0_chi2oNDF_ = nullptr;
34  v0_mass_vs_p_ = nullptr;
35  v0_mass_vs_pt_ = nullptr;
36  v0_mass_vs_eta_ = nullptr;
37  v0_deltaMass_ = nullptr;
38  v0_deltaMass_vs_pt_ = nullptr;
39  v0_deltaMass_vs_eta_ = nullptr;
40 
41  v0_Lxy_vs_deltaMass_ = nullptr;
42  v0_Lxy_vs_pt_ = nullptr;
43  v0_Lxy_vs_eta_ = nullptr;
44 
45  n_vs_BX_ = nullptr;
46  v0_N_vs_BX_ = nullptr;
47  v0_mass_vs_BX_ = nullptr;
48  v0_Lxy_vs_BX_ = nullptr;
49  v0_deltaMass_vs_BX_ = nullptr;
50 
51  n_vs_lumi_ = nullptr;
52  v0_N_vs_lumi_ = nullptr;
53  v0_mass_vs_lumi_ = nullptr;
54  v0_Lxy_vs_lumi_ = nullptr;
55  v0_deltaMass_vs_lumi_ = nullptr;
56 
57  n_vs_PU_ = nullptr;
58  v0_N_vs_PU_ = nullptr;
59  v0_mass_vs_PU_ = nullptr;
60  v0_Lxy_vs_PU_ = nullptr;
61  v0_deltaMass_vs_PU_ = nullptr;
62 
63  n_vs_LS_ = nullptr;
64  v0_N_vs_LS_ = nullptr;
65 
67  getHistoPSet(histoPSet.getParameter<edm::ParameterSet>("massPSet"), mass_binning_);
68  getHistoPSet(histoPSet.getParameter<edm::ParameterSet>("ptPSet"), pt_binning_);
69  getHistoPSet(histoPSet.getParameter<edm::ParameterSet>("etaPSet"), eta_binning_);
70  getHistoPSet(histoPSet.getParameter<edm::ParameterSet>("LxyPSet"), Lxy_binning_);
71  getHistoPSet(histoPSet.getParameter<edm::ParameterSet>("chi2oNDFPSet"), chi2oNDF_binning_);
72  getHistoPSet(histoPSet.getParameter<edm::ParameterSet>("lumiPSet"), lumi_binning_);
73  getHistoPSet(histoPSet.getParameter<edm::ParameterSet>("puPSet"), pu_binning_);
74  getHistoPSet(histoPSet.getParameter<edm::ParameterSet>("lsPSet"), ls_binning_);
75 }
76 
79  delete genTriggerEventFlag_;
80 }
81 
82 void V0Monitor::getHistoPSet(edm::ParameterSet pset, MEbinning& mebinning) {
83  mebinning.nbins = pset.getParameter<int32_t>("nbins");
84  mebinning.xmin = pset.getParameter<double>("xmin");
85  mebinning.xmax = pset.getParameter<double>("xmax");
86 }
87 
93  MEbinning binning) {
94  std::string title_w_axes = title + ";" + xaxis + ";" + yaxis;
95  return ibooker.book1D(name, title_w_axes, binning.nbins, binning.xmin, binning.xmax);
96 }
102  MEbinning xbinning,
103  MEbinning ybinning) {
104  std::string title_w_axes = title + ";" + xaxis + ";" + yaxis;
105  return ibooker.book2D(
106  name, title_w_axes, xbinning.nbins, xbinning.xmin, xbinning.xmax, ybinning.nbins, ybinning.xmin, ybinning.xmax);
107 }
113  MEbinning xbinning,
114  MEbinning ybinning) {
115  std::string title_w_axes = title + ";" + xaxis + ";" + yaxis;
116  return ibooker.bookProfile(
117  name, title_w_axes, xbinning.nbins, xbinning.xmin, xbinning.xmax, ybinning.xmin, ybinning.xmax);
118 }
119 
120 void V0Monitor::bookHistograms(DQMStore::IBooker& ibooker, edm::Run const& iRun, edm::EventSetup const& iSetup) {
121  std::string histname, histtitle;
122 
123  std::string currentFolder = folderName_;
124  ibooker.setCurrentFolder(currentFolder);
125 
126  MEbinning N_binning;
127  N_binning.nbins = 15;
128  N_binning.xmin = -0.5;
129  N_binning.xmax = 14.5;
130  v0_N_ = bookHisto1D(ibooker, "v0_N", "# v0", "# v0", "events", N_binning);
131  v0_mass_ = bookHisto1D(ibooker, "v0_mass", "mass", "mass [GeV]", "events", mass_binning_);
132  v0_pt_ = bookHisto1D(ibooker, "v0_pt", "pt", "p_{T} [GeV]", "events", pt_binning_);
133  v0_eta_ = bookHisto1D(ibooker, "v0_eta", "eta", "#eta", "events", eta_binning_);
134  MEbinning phi_binning;
135  phi_binning.nbins = 34;
136  phi_binning.xmin = -3.2;
137  phi_binning.xmax = 3.2;
138  v0_phi_ = bookHisto1D(ibooker, "v0_phi", "phi", "#phi [rad]", "events", phi_binning);
139  v0_Lxy_ = bookHisto1D(ibooker, "v0_Lxy", "Lxy", "L_{xy} w.r.t. PV [cm]", "events", Lxy_binning_);
140  v0_Lxy_wrtBS_ = bookHisto1D(ibooker, "v0_Lxy_wrtBS", "Lxy", "L_{xy} w.r.t. BS [cm]", "events", Lxy_binning_);
141  v0_chi2oNDF_ =
142  bookHisto1D(ibooker, "v0_chi2oNDF", "chi2oNDF", "vertex normalized #chi^{2}", "events", chi2oNDF_binning_);
143 
144  v0_mass_vs_p_ =
145  bookProfile(ibooker, "v0_mass_vs_p", "mass vs p", "p [GeV]", "mass [GeV]", pt_binning_, mass_binning_);
147  bookProfile(ibooker, "v0_mass_vs_pt", "mass vs pt", "p_{T} [GeV]", "mass [GeV]", pt_binning_, mass_binning_);
149  bookProfile(ibooker, "v0_mass_vs_eta", "mass vs eta", "#eta", "mass [GeV]", eta_binning_, mass_binning_);
150 
151  MEbinning delta_binning;
152  delta_binning.nbins = 150;
153  delta_binning.xmin = -0.15;
154  delta_binning.xmax = 0.15;
155  v0_deltaMass_ = bookHisto1D(ibooker, "v0_deltaMass", "deltaMass", "m-m_{PDG}/m_{DPG}", "events", delta_binning);
157  ibooker, "v0_deltaMass_vs_pt", "deltaMass vs pt", "p_{T} [GeV]", "m-m_{PDG}/m_{DPG}", pt_binning_, delta_binning);
159  ibooker, "v0_deltaMass_vs_eta", "deltaMass vs eta", "#eta", "m-m_{PDG}/m_{DPG}", eta_binning_, delta_binning);
160 
162  "v0_Lxy_vs_deltaMass",
163  "L_{xy} vs deltaMass",
164  "m-m_{PDG}/m_{DPG}",
165  "L_{xy} [cm]",
166  delta_binning,
167  Lxy_binning_);
168  v0_Lxy_vs_pt_ =
169  bookProfile(ibooker, "v0_Lxy_vs_pt", "L_{xy} vs p_{T}", "p_{T} [GeV]", "L_{xy} [cm]", pt_binning_, Lxy_binning_);
171  bookProfile(ibooker, "v0_Lxy_vs_eta", "L_{xy} vs #eta", "#eta", "L_{xy} [cm]", eta_binning_, Lxy_binning_);
172 
173  MEbinning bx_binning;
174  bx_binning.nbins = 3564;
175  bx_binning.xmin = 0.5;
176  bx_binning.xmax = 3564.5;
177  n_vs_BX_ = bookHisto1D(ibooker, "n_vs_BX", "# events vs BX", "BX", "# events", bx_binning);
178  v0_N_vs_BX_ = bookProfile(ibooker, "v0_N_vs_BX", "# v0 vs BX", "BX", "# v0", bx_binning, N_binning);
179  v0_mass_vs_BX_ = bookProfile(ibooker, "v0_mass_vs_BX", "mass vs BX", "BX", "mass [GeV]", bx_binning, mass_binning_);
180  v0_Lxy_vs_BX_ = bookProfile(ibooker, "v0_Lxy_vs_BX", "L_{xy} vs BX", "BX", "L_{xy} [cm]", bx_binning, Lxy_binning_);
182  ibooker, "v0_deltaMass_vs_BX", "deltaMass vs BX", "BX", "m-m_{PDG}/m_{DPG}", bx_binning, delta_binning);
183 
185  ibooker, "n_vs_lumi", "# events vs lumi", "inst. lumi x10^{30} [Hz cm^{-2}]", "# events", lumi_binning_);
187  ibooker, "v0_N_vs_lumi", "# v0 vs lumi", "inst. lumi x10^{30} [Hz cm^{-2}]", "# v0", lumi_binning_, N_binning);
188  v0_mass_vs_lumi_ = bookProfile(ibooker,
189  "v0_mass_vs_lumi",
190  "mass vs lumi",
191  "inst. lumi x10^{30} [Hz cm^{-2}]",
192  "mass [GeV]",
194  mass_binning_);
195  v0_Lxy_vs_lumi_ = bookProfile(ibooker,
196  "v0_Lxy_vs_lumi",
197  "L_{xy} vs lumi",
198  "inst. lumi x10^{30} [Hz cm^{-2}]",
199  "L_{xy} [cm]",
201  Lxy_binning_);
203  "v0_deltaMass_vs_lumi",
204  "deltaMass vs lumi",
205  "inst. lumi x10^{30} [Hz cm^{-2}]",
206  "m-m_{PDG}/m_{DPG}",
208  delta_binning);
209 
210  n_vs_PU_ = bookHisto1D(ibooker, "n_vs_PU", "# events vs PU", "# good PV", "# events", pu_binning_);
211  v0_N_vs_PU_ = bookProfile(ibooker, "v0_N_vs_PU", "# v0 vs PU", "# good PV", "# v0", pu_binning_, N_binning);
213  bookProfile(ibooker, "v0_mass_vs_PU", "mass vs PU", "# good PV", "mass [GeV]", pu_binning_, mass_binning_);
214  v0_Lxy_vs_PU_ =
215  bookProfile(ibooker, "v0_Lxy_vs_PU", "L_{xy} vs PU", "# good PV", "L_{xy} [cm]", pu_binning_, Lxy_binning_);
217  ibooker, "v0_deltaMass_vs_PU", "deltaMass vs PU", "# good PV", "m-m_{PDG}/m_{DPG}", pu_binning_, delta_binning);
218 
219  n_vs_LS_ = bookHisto1D(ibooker, "n_vs_LS", "# events vs LS", "LS", "# events", ls_binning_);
220  v0_N_vs_LS_ = bookProfile(ibooker, "v0_N_vs_LS", "# v0 vs LS", "LS", "# v0", ls_binning_, N_binning);
221  v0_N_vs_LS_->getTH1()->SetCanExtend(TH1::kAllAxes);
222 
223  // Initialize the GenericTriggerEventFlag
224  if (genTriggerEventFlag_->on())
225  genTriggerEventFlag_->initRun(iRun, iSetup);
226 }
227 
229  // Filter out events if Trigger Filtering is requested
231  return;
232 
233  // int ls = iEvent.id().luminosityBlock();
234 
235  size_t bx = iEvent.bunchCrossing();
236  n_vs_BX_->Fill(bx);
237 
238  float lumi = -1.;
239  if (forceSCAL_) {
241  if (lumiScalers.isValid() && !lumiScalers->empty()) {
242  LumiScalersCollection::const_iterator scalit = lumiScalers->begin();
243  lumi = scalit->instantLumi();
244  }
245  } else {
247  if (metaData.isValid())
248  lumi = metaData->instLumi();
249  }
250 
251  n_vs_lumi_->Fill(lumi);
252 
253  edm::Handle<reco::BeamSpot> beamspotHandle = iEvent.getHandle(bsToken_);
254  reco::BeamSpot const* bs = nullptr;
255  if (beamspotHandle.isValid())
256  bs = &(*beamspotHandle);
257 
259  reco::Vertex const* pv = nullptr;
260  size_t nPV = 0;
261  if (pvHandle.isValid()) {
262  pv = &pvHandle->front();
263  //--- pv fake (the pv collection should have size==1 and the pv==beam spot)
264  if (pv->isFake() ||
265  pv->tracksSize() == 0
266  // definition of goodOfflinePrimaryVertex
267  || pv->ndof() < pvNDOF_ || pv->z() > 24.)
268  pv = nullptr;
269 
270  for (const auto& v : *pvHandle) {
271  if (v.isFake())
272  continue;
273  if (v.ndof() < pvNDOF_)
274  continue;
275  if (v.z() > 24.)
276  continue;
277  ++nPV;
278  }
279  }
280  n_vs_PU_->Fill(nPV);
281 
282  float nLS = static_cast<float>(iEvent.id().luminosityBlock());
283  n_vs_LS_->Fill(nLS);
284 
286  int n = (v0Handle.isValid() ? v0Handle->size() : -1);
287  v0_N_->Fill(n);
288  v0_N_vs_BX_->Fill(bx, n);
290  v0_N_vs_PU_->Fill(nPV, n);
291  v0_N_vs_LS_->Fill(nLS, n);
292 
293  if (!v0Handle.isValid() or n == 0)
294  return;
295 
297  for (const auto& v0 : v0s) {
298  float mass = v0.mass();
299  float pt = v0.pt();
300  float p = v0.p();
301  float eta = v0.eta();
302  float phi = v0.phi();
303  int pdgID = v0.pdgId();
304  float chi2oNDF = v0.vertexNormalizedChi2();
305  GlobalPoint displacementFromPV =
306  (pv == nullptr ? GlobalPoint(-9., -9., 0) : GlobalPoint((pv->x() - v0.vx()), (pv->y() - v0.vy()), 0.));
307  GlobalPoint displacementFromBS =
308  (bs == nullptr
309  ? GlobalPoint(-9., -9., 0.)
310  : GlobalPoint(-1 * ((bs->position().x() - v0.vx()) + (v0.vz() - bs->position().z()) * bs->dxdz()),
311  -1 * ((bs->position().y() - v0.vy()) + (v0.vz() - bs->position().z()) * bs->dydz()),
312  0));
313  float lxy = (pv == nullptr ? -9. : displacementFromPV.perp());
314  float lxyWRTbs = (bs == nullptr ? -9. : displacementFromBS.perp());
315 
316  v0_mass_->Fill(mass);
317  v0_pt_->Fill(pt);
318  v0_eta_->Fill(eta);
319  v0_phi_->Fill(phi);
320  v0_Lxy_->Fill(lxy);
321  v0_Lxy_wrtBS_->Fill(lxyWRTbs);
322  v0_chi2oNDF_->Fill(chi2oNDF);
323 
330 
331  v0_Lxy_vs_BX_->Fill(bx, lxy);
332  v0_Lxy_vs_lumi_->Fill(lumi, lxy);
333  v0_Lxy_vs_PU_->Fill(nPV, lxy);
334 
335  float PDGmass = -9999.;
336  switch (pdgID) {
337  case 130: // K_s
338  case 310: // K_L
339  PDGmass = 0.497614; // GeV
340  break;
341  case 3122: // Lambda
342  case -3122: // Lambda
343  PDGmass = 1.115683; // GeV
344  break;
345  case 4122: // Lambda_c
346  case -4122: // Lambda_c
347  case 5122: // Lambda_b
348  case -5122: // Lambda_b
349  default:
350  break;
351  }
352  float delta = (PDGmass > 0. ? (mass - PDGmass) / PDGmass : -9.);
359 
361  v0_Lxy_vs_pt_->Fill(pt, lxy);
362  v0_Lxy_vs_eta_->Fill(eta, lxy);
363  }
364 }
365 
366 // Define this as a plug-in
MEbinning pu_binning_
Definition: V0Monitor.h:135
MonitorElement * v0_Lxy_vs_pt_
Definition: V0Monitor.h:105
MonitorElement * v0_deltaMass_vs_PU_
Definition: V0Monitor.h:124
MonitorElement * v0_mass_vs_PU_
Definition: V0Monitor.h:122
MonitorElement * v0_pt_
Definition: V0Monitor.h:91
MonitorElement * v0_Lxy_vs_PU_
Definition: V0Monitor.h:123
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
MonitorElement * v0_N_vs_LS_
Definition: V0Monitor.h:127
MonitorElement * v0_mass_vs_eta_
Definition: V0Monitor.h:99
MonitorElement * v0_mass_vs_lumi_
Definition: V0Monitor.h:116
T perp() const
Definition: PV3DBase.h:69
std::vector< VertexCompositeCandidate > VertexCompositeCandidateCollection
collection of Candidate objects
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: V0Monitor.cc:120
const bool forceSCAL_
Definition: V0Monitor.h:83
MEbinning Lxy_binning_
Definition: V0Monitor.h:132
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:36
void getHistoPSet(edm::ParameterSet pset, MEbinning &mebinning)
Definition: V0Monitor.cc:82
V0Monitor(const edm::ParameterSet &)
Definition: V0Monitor.cc:15
MonitorElement * v0_mass_vs_p_
Definition: V0Monitor.h:97
MonitorElement * bookHisto2D(DQMStore::IBooker &ibooker, std::string name, std::string title, std::string xaxis, std::string yaxis, MEbinning xbinning, MEbinning ybinning)
Definition: V0Monitor.cc:97
MonitorElement * v0_mass_
Definition: V0Monitor.h:90
MEbinning lumi_binning_
Definition: V0Monitor.h:134
MonitorElement * v0_chi2oNDF_
Definition: V0Monitor.h:96
T const * product() const
Definition: Handle.h:70
Class to contain the online luminosity from soft FED 1022.
Global3DPoint GlobalPoint
Definition: GlobalPoint.h:10
MonitorElement * v0_mass_vs_pt_
Definition: V0Monitor.h:98
MonitorElement * v0_deltaMass_
Definition: V0Monitor.h:100
Provides a code based selection for trigger and DCS information in order to have no failing filters i...
float instLumi() const
Return the luminosity for the current nibble.
std::vector< Vertex > VertexCollection
Definition: Vertex.h:31
MonitorElement * v0_eta_
Definition: V0Monitor.h:92
edm::EDGetTokenT< reco::BeamSpot > bsToken_
Definition: V0Monitor.h:78
MonitorElement * bookProfile(DQMStore::IBooker &ibooker, std::string name, std::string title, std::string xaxis, std::string yaxis, MEbinning xbinning, MEbinning ybinning)
Definition: V0Monitor.cc:108
void Fill(long long x)
int iEvent
Definition: GenABIO.cc:224
MonitorElement * v0_deltaMass_vs_lumi_
Definition: V0Monitor.h:118
void analyze(edm::Event const &iEvent, edm::EventSetup const &iSetup) override
Definition: V0Monitor.cc:228
edm::EDGetTokenT< reco::VertexCompositeCandidateCollection > v0Token_
Definition: V0Monitor.h:77
MonitorElement * bookProfile(TString const &name, TString const &title, int nchX, double lowX, double highX, int, double lowY, double highY, char const *option="s", FUNC onbooking=NOOP())
Definition: DQMStore.h:399
MonitorElement * v0_Lxy_vs_BX_
Definition: V0Monitor.h:111
MEbinning ls_binning_
Definition: V0Monitor.h:136
bool accept(const edm::Event &event, const edm::EventSetup &setup)
To be called from analyze/filter() methods.
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventID const &, edm::Timestamp const & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
Definition: Activities.doc:12
MonitorElement * v0_Lxy_wrtBS_
Definition: V0Monitor.h:95
int pvNDOF_
Definition: V0Monitor.h:85
MonitorElement * n_vs_lumi_
Definition: V0Monitor.h:114
std::string folderName_
Definition: V0Monitor.h:75
def pv(vc)
Definition: MetAnalyzer.py:7
MonitorElement * v0_Lxy_vs_lumi_
Definition: V0Monitor.h:117
MonitorElement * v0_Lxy_vs_eta_
Definition: V0Monitor.h:106
edm::EDGetTokenT< OnlineLuminosityRecord > metaDataToken_
Definition: V0Monitor.h:81
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:16
MonitorElement * v0_deltaMass_vs_BX_
Definition: V0Monitor.h:112
edm::EDGetTokenT< reco::VertexCollection > pvToken_
Definition: V0Monitor.h:79
MonitorElement * v0_deltaMass_vs_eta_
Definition: V0Monitor.h:102
MEbinning pt_binning_
Definition: V0Monitor.h:130
MEbinning chi2oNDF_binning_
Definition: V0Monitor.h:133
MonitorElement * v0_N_
Definition: V0Monitor.h:89
MEbinning mass_binning_
Definition: V0Monitor.h:129
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
Definition: DQMStore.h:212
edm::EDGetTokenT< LumiScalersCollection > lumiscalersToken_
Definition: V0Monitor.h:80
MonitorElement * v0_Lxy_vs_deltaMass_
Definition: V0Monitor.h:104
bool isValid() const
Definition: HandleBase.h:70
virtual TH1 * getTH1() const
fixed size matrix
MonitorElement * n_vs_PU_
Definition: V0Monitor.h:120
HLT enums.
MonitorElement * n_vs_LS_
Definition: V0Monitor.h:126
MEbinning eta_binning_
Definition: V0Monitor.h:131
std::vector< LumiScalers > LumiScalersCollection
Definition: LumiScalers.h:144
GenericTriggerEventFlag * genTriggerEventFlag_
Definition: V0Monitor.h:87
void initRun(const edm::Run &run, const edm::EventSetup &setup)
To be called from beginRun() methods.
MonitorElement * v0_phi_
Definition: V0Monitor.h:93
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:98
~V0Monitor() override
Definition: V0Monitor.cc:77
MonitorElement * v0_N_vs_BX_
Definition: V0Monitor.h:109
MonitorElement * v0_mass_vs_BX_
Definition: V0Monitor.h:110
MonitorElement * n_vs_BX_
Definition: V0Monitor.h:108
MonitorElement * v0_N_vs_lumi_
Definition: V0Monitor.h:115
Definition: Run.h:45
MonitorElement * v0_N_vs_PU_
Definition: V0Monitor.h:121
MonitorElement * bookHisto1D(DQMStore::IBooker &ibooker, std::string name, std::string title, std::string xaxis, std::string yaxis, MEbinning binning)
Definition: V0Monitor.cc:88
MonitorElement * v0_Lxy_
Definition: V0Monitor.h:94
MonitorElement * v0_deltaMass_vs_pt_
Definition: V0Monitor.h:101