CMS 3D CMS Logo

List of all members | Public Member Functions | Private Types | Private Attributes
ME0SegmentsValidation Class Reference

#include <ME0SegmentsValidation.h>

Inheritance diagram for ME0SegmentsValidation:
ME0BaseValidation DQMEDAnalyzer edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >

Public Member Functions

void analyze (const edm::Event &e, const edm::EventSetup &) override
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
std::pair< int, int > isMatched (ME0DetId, LocalPoint, edm::Handle< ME0DigiPreRecoCollection >)
 
bool isSimMatched (edm::SimTrackContainer::const_iterator, edm::PSimHitContainer::const_iterator)
 
bool isSimTrackGood (edm::SimTrackContainer::const_iterator simTrack)
 
 ME0SegmentsValidation (const edm::ParameterSet &)
 
 ~ME0SegmentsValidation () override
 
- Public Member Functions inherited from ME0BaseValidation
MonitorElementBookHistXY (DQMStore::IBooker &, const char *name, const char *label, unsigned int region_num, unsigned int layer_num=99)
 
MonitorElementBookHistZR (DQMStore::IBooker &, const char *name, const char *label, unsigned int region_num, unsigned int layer_num=99)
 
 ME0BaseValidation (const edm::ParameterSet &ps)
 
 ~ME0BaseValidation () override
 
- Public Member Functions inherited from DQMEDAnalyzer
void accumulate (edm::Event const &event, edm::EventSetup const &setup) final
 
void beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
void beginStream (edm::StreamID id) final
 
virtual void dqmBeginRun (edm::Run const &, edm::EventSetup const &)
 
 DQMEDAnalyzer ()
 
void endLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
void endRun (edm::Run const &run, edm::EventSetup const &setup) final
 
virtual bool getCanSaveByLumi ()
 
- Public Member Functions inherited from edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >
 EDProducer ()=default
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndRuns () const final
 

Private Types

typedef std::map< ME0SegmentCollection::const_iterator, std::vector< ME0RecHit > > MapTypeSeg
 
typedef std::map< edm::SimTrackContainer::const_iterator, edm::PSimHitContainerMapTypeSim
 

Private Attributes

double eta_max_
 
double eta_min_
 
edm::EDGetToken InputTagToken_
 
edm::EDGetToken InputTagToken_Digis
 
edm::EDGetToken InputTagToken_Segments
 
edm::EDGetToken InputTagTokenST_
 
bool isMuonGun_
 
MonitorElementme0_matchedsimsegment_eta
 
MonitorElementme0_matchedsimsegment_phi
 
MonitorElementme0_matchedsimsegment_pt
 
MonitorElementme0_rh_xy_Muon [2][6]
 
MonitorElementme0_segment_chi2
 
MonitorElementme0_segment_EtaRH
 
MonitorElementme0_segment_ndof
 
MonitorElementme0_segment_numRH
 
MonitorElementme0_segment_numRHBkg
 
MonitorElementme0_segment_numRHSig
 
MonitorElementme0_segment_PhiRH
 
MonitorElementme0_segment_redchi2
 
MonitorElementme0_segment_size
 
MonitorElementme0_segment_time
 
MonitorElementme0_segment_timeErr
 
MonitorElementme0_simsegment_eta
 
MonitorElementme0_simsegment_phi
 
MonitorElementme0_simsegment_pt
 
MonitorElementme0_specRH_DeltaX [2][6]
 
MonitorElementme0_specRH_DeltaY [2][6]
 
MonitorElementme0_specRH_PullX [2][6]
 
MonitorElementme0_specRH_PullY [2][6]
 
MonitorElementme0_specRH_xy [2][6]
 
MonitorElementme0_specRH_zr [2]
 
int npart
 
double pt_min_
 
double sigma_x_
 
double sigma_y_
 

Additional Inherited Members

- Public Types inherited from DQMEDAnalyzer
typedef dqm::reco::DQMStore DQMStore
 
typedef dqm::reco::MonitorElement MonitorElement
 
- Public Types inherited from edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >
typedef CacheContexts< T... > CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T... > HasAbility
 
typedef CacheTypes::LuminosityBlockCache LuminosityBlockCache
 
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCacheLuminosityBlockContext
 
typedef CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache, GlobalCacheRunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 
- Static Public Member Functions inherited from DQMEDAnalyzer
static void globalEndJob (DQMEDAnalyzerGlobalCache const *)
 
static void globalEndLuminosityBlockProduce (edm::LuminosityBlock &lumi, edm::EventSetup const &setup, LuminosityBlockContext const *context)
 
static void globalEndRunProduce (edm::Run &run, edm::EventSetup const &setup, RunContext const *context)
 
static std::unique_ptr< DQMEDAnalyzerGlobalCacheinitializeGlobalCache (edm::ParameterSet const &)
 
- Protected Member Functions inherited from DQMEDAnalyzer
uint64_t meId () const
 
- Protected Attributes inherited from ME0BaseValidation
edm::EDGetToken InputTagToken_
 
std::vector< std::string > layerLabel
 
int nBinXY_
 
std::vector< double > nBinZR_
 
std::vector< double > RangeZR_
 
std::vector< std::string > regionLabel
 
- Protected Attributes inherited from DQMEDAnalyzer
edm::EDPutTokenT< DQMTokenlumiToken_
 
edm::EDPutTokenT< DQMTokenrunToken_
 
unsigned int streamId_
 

Detailed Description

Definition at line 16 of file ME0SegmentsValidation.h.

Member Typedef Documentation

◆ MapTypeSeg

Definition at line 56 of file ME0SegmentsValidation.h.

◆ MapTypeSim

typedef std::map<edm::SimTrackContainer::const_iterator, edm::PSimHitContainer> ME0SegmentsValidation::MapTypeSim
private

Definition at line 55 of file ME0SegmentsValidation.h.

Constructor & Destructor Documentation

◆ ME0SegmentsValidation()

ME0SegmentsValidation::ME0SegmentsValidation ( const edm::ParameterSet cfg)
explicit

Definition at line 5 of file ME0SegmentsValidation.cc.

6  InputTagToken_Segments = consumes<ME0SegmentCollection>(cfg.getParameter<edm::InputTag>("segmentInputLabel"));
7  InputTagToken_Digis = consumes<ME0DigiPreRecoCollection>(cfg.getParameter<edm::InputTag>("digiInputLabel"));
8  InputTagToken_ = consumes<edm::PSimHitContainer>(cfg.getParameter<edm::InputTag>("simInputLabel"));
9  InputTagTokenST_ = consumes<edm::SimTrackContainer>(cfg.getParameter<edm::InputTag>("simInputLabelST"));
10  sigma_x_ = cfg.getParameter<double>("sigma_x");
11  sigma_y_ = cfg.getParameter<double>("sigma_y");
12  eta_max_ = cfg.getParameter<double>("eta_max");
13  eta_min_ = cfg.getParameter<double>("eta_min");
14  pt_min_ = cfg.getParameter<double>("pt_min");
15  isMuonGun_ = cfg.getParameter<bool>("isMuonGun");
16 }

References looper::cfg, eta_max_, eta_min_, InputTagToken_, InputTagToken_Digis, InputTagToken_Segments, InputTagTokenST_, isMuonGun_, pt_min_, sigma_x_, and sigma_y_.

◆ ~ME0SegmentsValidation()

ME0SegmentsValidation::~ME0SegmentsValidation ( )
override

Definition at line 109 of file ME0SegmentsValidation.cc.

109 {}

Member Function Documentation

◆ analyze()

void ME0SegmentsValidation::analyze ( const edm::Event e,
const edm::EventSetup iSetup 
)
overridevirtual

Implements ME0BaseValidation.

Definition at line 111 of file ME0SegmentsValidation.cc.

111  {
113  iSetup.get<MuonGeometryRecord>().get(hGeom);
114  const ME0Geometry *ME0Geometry_ = (&*hGeom);
115 
117  e.getByToken(InputTagToken_, ME0Hits);
118 
120  e.getByToken(InputTagTokenST_, simTracks);
121 
123  e.getByToken(InputTagToken_Segments, ME0Segments);
124 
126  e.getByToken(InputTagToken_Digis, ME0Digis);
127 
128  if (!ME0Digis.isValid()) {
129  edm::LogError("ME0SegmentsValidation") << "Cannot get ME0Digis by Token InputTagToken";
130  return;
131  }
132 
133  if (!ME0Segments.isValid()) {
134  edm::LogError("ME0SegmentsValidation") << "Cannot get ME0RecHits/ME0Segments by Token InputTagToken";
135  return;
136  }
137 
138  if (!ME0Hits.isValid()) {
139  edm::LogError("ME0HitsValidation") << "Cannot get ME0Hits by Token simInputTagToken";
140  return;
141  }
142 
143  MapTypeSim myMap;
144  MapTypeSeg myMapSeg;
145 
146  int countST = 0;
147 
148  edm::SimTrackContainer::const_iterator simTrack;
149  for (simTrack = simTracks->begin(); simTrack != simTracks->end(); ++simTrack) {
150  edm::PSimHitContainer selectedME0Hits;
151 
152  if (!isSimTrackGood(simTrack))
153  continue;
154  int count = 0;
155 
156  for (edm::PSimHitContainer::const_iterator itHit = ME0Hits->begin(); itHit != ME0Hits->end(); ++itHit) {
157  int particleType_sh = itHit->particleType();
158  int evtId_sh = itHit->eventId().event();
159  int bx_sh = itHit->eventId().bunchCrossing();
160  int procType_sh = itHit->processType();
161  if (!(abs(particleType_sh) == 13 && evtId_sh == 0 && bx_sh == 0 && procType_sh == 0))
162  continue;
163 
164  if (isSimMatched(simTrack, itHit)) {
165  ++count;
166  selectedME0Hits.push_back(*itHit);
167  ;
168  }
169 
170  } // End loop SHs
171 
172  if (selectedME0Hits.size() >= 3) {
173  myMap.insert(MapTypeSim::value_type(simTrack, selectedME0Hits));
174  me0_simsegment_eta->Fill(std::abs((*simTrack).momentum().eta()));
175  me0_simsegment_pt->Fill((*simTrack).momentum().pt());
176  me0_simsegment_phi->Fill((*simTrack).momentum().phi());
177  ++countST;
178  }
179  }
180 
181  me0_segment_size->Fill(ME0Segments->size());
182 
183  for (auto me0s = ME0Segments->begin(); me0s != ME0Segments->end(); me0s++) {
184  // The ME0 Ensamble DetId refers to layer = 1
185  ME0DetId id = me0s->me0DetId();
186  auto chamber = ME0Geometry_->chamber(id);
187  auto segLP = me0s->localPosition();
188  auto segLD = me0s->localDirection();
189  auto me0rhs = me0s->specificRecHits();
190 
191  // float localX = segLP.x();
192  // float localY = segLP.y();
193  // float dirTheta = segLD.theta();
194  // float dirPhi = segLD.phi();
195  int numberRH = me0rhs.size();
196  float chi2 = (float)me0s->chi2();
197  float ndof = me0s->degreesOfFreedom();
198  double time = me0s->time();
199  double timeErr = me0s->timeErr();
200 
201  float reducedChi2 = chi2 / ndof;
202 
204  me0_segment_redchi2->Fill(reducedChi2);
206  me0_segment_numRH->Fill(numberRH);
207 
209  me0_segment_timeErr->Fill(timeErr);
210 
211  int numberRHSig = 0;
212  int numberRHBkg = 0;
213  std::vector<ME0RecHit> selectedME0RecHits;
214 
215  for (auto rh = me0rhs.begin(); rh != me0rhs.end(); rh++) {
216  auto me0id = rh->me0Id();
217  auto rhr = ME0Geometry_->etaPartition(me0id);
218  auto rhLP = rh->localPosition();
219 
220  auto result = isMatched(me0id, rhLP, ME0Digis);
221  if (result.second == 1) {
222  ++numberRHSig;
223  selectedME0RecHits.push_back(*rh);
224 
225  } else
226  ++numberRHBkg;
227 
228  auto erhLEP = rh->localPositionError();
229  auto rhGP = rhr->toGlobal(rhLP);
230  auto rhLPSegm = chamber->toLocal(rhGP);
231  float xe = segLP.x() + segLD.x() * rhLPSegm.z() / segLD.z();
232  float ye = segLP.y() + segLD.y() * rhLPSegm.z() / segLD.z();
233  float ze = rhLPSegm.z();
234  LocalPoint extrPoint(xe, ye, ze); // in segment rest frame
235  auto extSegm = rhr->toLocal(chamber->toGlobal(extrPoint)); // in layer restframe
236 
237  int region = me0id.region();
238  int layer = me0id.layer();
239  // int chamber = me0id.chamber();
240 
241  float x = rhLP.x();
242  float xErr = erhLEP.xx();
243  float y = rhLP.y();
244  float yErr = erhLEP.yy();
245 
246  float globalR = rhGP.perp();
247  float globalX = rhGP.x();
248  float globalY = rhGP.y();
249  float globalZ = rhGP.z();
250 
251  float xExt = extSegm.x();
252  float yExt = extSegm.y();
253 
254  float pull_x = (x - xExt) / sqrt(xErr);
255  float pull_y = (y - yExt) / sqrt(yErr);
256 
257  int region_num = 0;
258  if (region == -1)
259  region_num = 0;
260  else if (region == 1)
261  region_num = 1;
262  int layer_num = layer - 1;
263 
264  me0_specRH_xy[region_num][layer_num]->Fill(globalX, globalY);
265  me0_specRH_zr[region_num]->Fill(globalZ, globalR);
266 
267  me0_specRH_DeltaX[region_num][layer_num]->Fill(x - xExt);
268  me0_specRH_DeltaY[region_num][layer_num]->Fill(y - yExt);
269  me0_specRH_PullX[region_num][layer_num]->Fill(pull_x);
270  me0_specRH_PullY[region_num][layer_num]->Fill(pull_y);
271  }
272 
273  me0_segment_numRHSig->Fill(numberRHSig);
274  me0_segment_numRHBkg->Fill(numberRHBkg);
275  myMapSeg.insert(MapTypeSeg::value_type(me0s, selectedME0RecHits));
276  }
277 
278  //------------------- SimToReco -------------------
279 
280  for (auto const &st : myMap) { // loop over the signal simTracks
281 
282  int num_sh = st.second.size();
283  bool isThereOneSegmentMatched = false;
284 
285  for (auto const &seg : myMapSeg) { // loop over the reconstructed me0 segments
286 
287  int num_sh_matched = 0;
288  if (seg.second.empty())
289  continue;
290 
291  for (auto const &sh : st.second) { // loop over the me0 simHits left by
292  // the signal simTracks
293 
294  for (auto const &rh : seg.second) { // loop over the tracking recHits
295  // already matched to signal digis
296 
297  auto me0id = rh.me0Id();
298  int region_rh = (int)me0id.region();
299  int layer_rh = (int)me0id.layer();
300  int chamber_rh = (int)me0id.chamber();
301  int roll_rh = (int)me0id.roll();
302 
303  const ME0DetId id(sh.detUnitId());
304  int region_sh = id.region();
305  int layer_sh = id.layer();
306  int chamber_sh = id.chamber();
307  int roll_sh = id.roll();
308 
309  if (!(region_sh == region_rh && chamber_sh == chamber_rh && layer_sh == layer_rh && roll_sh == roll_rh))
310  continue;
311 
312  LocalPoint lp_sh = sh.localPosition();
313  LocalPoint lp_rh = rh.localPosition();
314 
315  GlobalPoint gp_sh = ME0Geometry_->idToDet(id)->surface().toGlobal(lp_sh);
316  GlobalPoint gp = ME0Geometry_->idToDet((rh).me0Id())->surface().toGlobal(lp_rh);
317  float dphi_glob = gp_sh.phi() - gp.phi();
318  float deta_glob = gp_sh.eta() - gp.eta();
319 
320  if (fabs(dphi_glob) < 3 * sigma_x_ && fabs(deta_glob) < 3 * sigma_y_)
321  ++num_sh_matched;
322 
323  } // End loop over RHs
324 
325  } // End loop over SHs
326 
327  float quality = 0;
328  if (num_sh != 0)
329  quality = num_sh_matched / (1.0 * num_sh);
330  if (quality > 0)
331  isThereOneSegmentMatched = true;
332 
333  } // End loop over segments
334 
335  // Fill hsitograms
336  if (isThereOneSegmentMatched) {
337  me0_matchedsimsegment_eta->Fill(std::abs((*(st.first)).momentum().eta()));
338  me0_matchedsimsegment_pt->Fill((*(st.first)).momentum().pt());
339  me0_matchedsimsegment_phi->Fill((*(st.first)).momentum().phi());
340  }
341 
342  } // End loop over STs
343 }

References funct::abs(), ME0Geometry::chamber(), relativeConstraints::chamber, hltPixelTracks_cff::chi2, KineDebug3::count(), MillePedeFileConverter_cfg::e, PV3DBase< T, PVType, FrameType >::eta(), ME0Geometry::etaPartition(), dqm::impl::MonitorElement::Fill(), dqmMemoryStats::float, edm::EventSetup::get(), get, runTauDisplay::gp, triggerObjects_cff::id, ME0Geometry::idToDet(), InputTagToken_, InputTagToken_Digis, InputTagToken_Segments, InputTagTokenST_, createfilelist::int, isMatched(), isSimMatched(), isSimTrackGood(), edm::HandleBase::isValid(), me0_matchedsimsegment_eta, me0_matchedsimsegment_phi, me0_matchedsimsegment_pt, me0_segment_chi2, me0_segment_ndof, me0_segment_numRH, me0_segment_numRHBkg, me0_segment_numRHSig, me0_segment_redchi2, me0_segment_size, me0_segment_time, me0_segment_timeErr, me0_simsegment_eta, me0_simsegment_phi, me0_simsegment_pt, me0_specRH_DeltaX, me0_specRH_DeltaY, me0_specRH_PullX, me0_specRH_PullY, me0_specRH_xy, me0_specRH_zr, ndof, PV3DBase< T, PVType, FrameType >::phi(), qcdUeDQM_cfi::quality, HLT_2018_cff::region, mps_fire::result, sigma_x_, sigma_y_, muonSimHitMatcherPSet::simTrack, TrackCandidateProducer_cfi::simTracks, mathSSE::sqrt(), GeomDet::surface(), ntuplemaker::time, Surface::toGlobal(), x, and y.

◆ bookHistograms()

void ME0SegmentsValidation::bookHistograms ( DQMStore::IBooker ibooker,
edm::Run const &  Run,
edm::EventSetup const &  iSetup 
)
overridevirtual

Implements DQMEDAnalyzer.

Definition at line 18 of file ME0SegmentsValidation.cc.

20  {
21  // edm::ESHandle<ME0Geometry> hGeom;
22  // iSetup.get<MuonGeometryRecord>().get(hGeom);
23  // const ME0Geometry* ME0Geometry_ =( &*hGeom);
24 
25  LogDebug("MuonME0SegmentsValidation") << "Info : Loading Geometry information\n";
26  ibooker.setCurrentFolder("MuonME0RecHitsV/ME0SegmentsTask");
27 
28  unsigned int nregion = 2;
29 
30  edm::LogInfo("MuonME0SegmentsValidation") << "+++ Info : # of region : " << nregion << std::endl;
31 
32  LogDebug("MuonME0SegmentsValidation") << "+++ Info : finish to get geometry information from ES.\n";
33 
34  me0_simsegment_eta = ibooker.book1D("me0_simsegment_eta", "SimSegment Eta Distribution; #eta; entries", 8, 2.0, 2.8);
35  me0_simsegment_pt = ibooker.book1D("me0_simsegment_pt", "SimSegment pT Distribution; p_{T}; entries", 20, 0.0, 100.0);
37  ibooker.book1D("me0_simsegment_phi", "SimSegments phi Distribution; #phi; entries", 18, -M_PI, +M_PI);
38 
40  ibooker.book1D("me0_matchedsimsegment_eta", "Matched SimSegment Eta Distribution; #eta; entries", 8, 2.0, 2.8);
42  ibooker.book1D("me0_matchedsimsegment_pt", "Matched SimSegment pT Distribution; p_{T}; entries", 20, 0.0, 100.0);
43  me0_matchedsimsegment_phi = ibooker.book1D(
44  "me0_matchedsimsegment_phi", "Matched SimSegments phi Distribution; #phi; entries", 18, -M_PI, +M_PI);
45 
46  me0_segment_chi2 = ibooker.book1D("me0_seg_Chi2", "#chi^{2}; #chi^{2}; # Segments", 100, 0, 100);
47  me0_segment_redchi2 = ibooker.book1D("me0_seg_ReducedChi2", "#chi^{2}/ndof; #chi^{2}/ndof; # Segments", 100, 0, 5);
48  me0_segment_ndof = ibooker.book1D("me0_seg_ndof", "ndof; ndof; #Segments", 50, 0, 50);
50  ibooker.book1D("me0_seg_NumberRH", "Number of fitted RecHits; # RecHits; entries", 11, -0.5, 10.5);
52  ibooker.book1D("me0_seg_NumberRHSig", "Number of fitted Signal RecHits; # RecHits; entries", 11, -0.5, 10.5);
54  ibooker.book1D("me0_seg_NumberRHBkg", "Number of fitted BKG RecHits; # RecHits; entries", 11, -0.5, 10.5);
55  // me0_segment_EtaRH = ibooker.book1D("me0_specRH_globalEta","Fitted RecHits
56  // Eta Distribution; #eta; entries",200,-4.0,4.0); me0_segment_PhiRH =
57  // ibooker.book1D("me0_specRH_globalPhi","Fitted RecHits Phi Distribution;
58  // #eta; entries",18,-3.14,3.14);
59  me0_segment_time = ibooker.book1D("me0_seg_time", "Segment Timing; ns; entries", 300, -150, 150);
60  me0_segment_timeErr = ibooker.book1D("me0_seg_timErr", "Segment Timing Error; ns; entries", 50, 0, 0.5);
62  ibooker.book1D("me0_seg_size", "Segment Multiplicity; Number of ME0 segments; entries", 200, 0, 200);
63 
64  for (unsigned int region_num = 0; region_num < nregion; region_num++) {
65  me0_specRH_zr[region_num] = BookHistZR(ibooker, "me0_specRH_tot", "Segment RecHits", region_num);
66  for (unsigned int layer_num = 0; layer_num < 6; layer_num++) {
67  // me0_strip_dg_zr[region_num][layer_num] =
68  // BookHistZR(ibooker,"me0_strip_dg","SimHit",region_num,layer_num);
69  me0_specRH_xy[region_num][layer_num] =
70  BookHistXY(ibooker, "me0_specRH", "Segment RecHits", region_num, layer_num);
71  // me0_rh_xy_Muon[region_num][layer_num] =
72  // BookHistXY(ibooker,"me0_rh","RecHit Muon",region_num,layer_num);
73 
74  std::string histo_name_DeltaX =
75  std::string("me0_specRH_DeltaX_r") + regionLabel[region_num] + "_l" + layerLabel[layer_num];
76  std::string histo_name_DeltaY =
77  std::string("me0_specRH_DeltaY_r") + regionLabel[region_num] + "_l" + layerLabel[layer_num];
78  std::string histo_label_DeltaX = "Segment RecHits Delta X : region" + regionLabel[region_num] + " layer " +
79  layerLabel[layer_num] + " " + " ; x_{SimHit} - x_{Segment RecHits} ; entries";
80  std::string histo_label_DeltaY = "Segment RecHits Delta Y : region" + regionLabel[region_num] + " layer " +
81  layerLabel[layer_num] + " " + " ; y_{SimHit} - y_{Segment RecHit} ; entries";
82 
83  me0_specRH_DeltaX[region_num][layer_num] =
84  ibooker.book1D(histo_name_DeltaX.c_str(), histo_label_DeltaX.c_str(), 100, -10, 10);
85  me0_specRH_DeltaY[region_num][layer_num] =
86  ibooker.book1D(histo_name_DeltaY.c_str(), histo_label_DeltaY.c_str(), 100, -10, 10);
87 
88  std::string histo_name_PullX =
89  std::string("me0_specRH_PullX_r") + regionLabel[region_num] + "_l" + layerLabel[layer_num];
90  std::string histo_name_PullY =
91  std::string("me0_specRH_PullY_r") + regionLabel[region_num] + "_l" + layerLabel[layer_num];
92  std::string histo_label_PullX = "Segment RecHits Pull X : region" + regionLabel[region_num] + " layer " +
93  layerLabel[layer_num] + " " +
94  " ; #frac{x_{SimHit} - x_{Segment "
95  "RecHit}}{#sigma_{x,RecHit}} ; entries";
96  std::string histo_label_PullY = "Segment RecHits Pull Y : region" + regionLabel[region_num] + " layer " +
97  layerLabel[layer_num] + " " +
98  " ; #frac{y_{SimHit} - y_{Segment "
99  "RecHit}}{#sigma_{y,RecHit}} ; entries";
100 
101  me0_specRH_PullX[region_num][layer_num] =
102  ibooker.book1D(histo_name_PullX.c_str(), histo_label_DeltaX.c_str(), 100, -10, 10);
103  me0_specRH_PullY[region_num][layer_num] =
104  ibooker.book1D(histo_name_PullY.c_str(), histo_label_DeltaY.c_str(), 100, -10, 10);
105  }
106  }
107 }

References dqm::implementation::IBooker::book1D(), ME0BaseValidation::BookHistXY(), ME0BaseValidation::BookHistZR(), ME0BaseValidation::layerLabel, LogDebug, M_PI, me0_matchedsimsegment_eta, me0_matchedsimsegment_phi, me0_matchedsimsegment_pt, me0_segment_chi2, me0_segment_ndof, me0_segment_numRH, me0_segment_numRHBkg, me0_segment_numRHSig, me0_segment_redchi2, me0_segment_size, me0_segment_time, me0_segment_timeErr, me0_simsegment_eta, me0_simsegment_phi, me0_simsegment_pt, me0_specRH_DeltaX, me0_specRH_DeltaY, me0_specRH_PullX, me0_specRH_PullY, me0_specRH_xy, me0_specRH_zr, ME0BaseValidation::regionLabel, dqm::implementation::NavigatorBase::setCurrentFolder(), and AlCaHLTBitMon_QueryRunRegistry::string.

◆ isMatched()

std::pair< int, int > ME0SegmentsValidation::isMatched ( ME0DetId  me0id,
LocalPoint  rhLP,
edm::Handle< ME0DigiPreRecoCollection ME0Digis 
)

Definition at line 345 of file ME0SegmentsValidation.cc.

347  {
348  int region_rh = (int)me0id.region();
349  int layer_rh = (int)me0id.layer();
350  int roll_rh = (int)me0id.roll();
351  int chamber_rh = (int)me0id.chamber();
352 
353  float l_x_rh = rhLP.x();
354  float l_y_rh = rhLP.y();
355 
356  int particleType = 0;
357  int isPrompt = -1;
358 
359  for (ME0DigiPreRecoCollection::DigiRangeIterator cItr = ME0Digis->begin(); cItr != ME0Digis->end(); cItr++) {
360  ME0DetId id = (*cItr).first;
361 
362  int region_dg = (int)id.region();
363  int layer_dg = (int)id.layer();
364  int roll_dg = (int)id.roll();
365  int chamber_dg = (int)id.chamber();
366 
367  if (region_rh != region_dg)
368  continue;
369  if (layer_rh != layer_dg)
370  continue;
371  if (chamber_rh != chamber_dg)
372  continue;
373  if (roll_rh != roll_dg)
374  continue;
375 
377  for (digiItr = (*cItr).second.first; digiItr != (*cItr).second.second; ++digiItr) {
378  float l_x_dg = digiItr->x();
379  float l_y_dg = digiItr->y();
380 
381  if (l_x_rh != l_x_dg)
382  continue;
383  if (l_y_rh != l_y_dg)
384  continue;
385 
386  particleType = digiItr->pdgid();
387  isPrompt = digiItr->prompt();
388  }
389  }
390 
391  std::pair<int, int> result;
392  result = std::make_pair(particleType, isPrompt);
393 
394  return result;
395 }

References ME0DetId::chamber(), relativeConstraints::chamber, createfilelist::int, ME0DetId::layer(), PbPb_ZMuSkimMuonDPG_cff::particleType, ME0DetId::region(), HLT_2018_cff::region, mps_fire::result, ME0DetId::roll(), PV3DBase< T, PVType, FrameType >::x(), and PV3DBase< T, PVType, FrameType >::y().

Referenced by analyze().

◆ isSimMatched()

bool ME0SegmentsValidation::isSimMatched ( edm::SimTrackContainer::const_iterator  simTrack,
edm::PSimHitContainer::const_iterator  itHit 
)

Definition at line 412 of file ME0SegmentsValidation.cc.

413  {
414  bool result = false;
415  int trackId = simTrack->trackId();
416  int trackId_sim = itHit->trackId();
417  if (trackId == trackId_sim)
418  result = true;
419  return result;
420 }

References mps_fire::result, and muonSimHitMatcherPSet::simTrack.

Referenced by analyze().

◆ isSimTrackGood()

bool ME0SegmentsValidation::isSimTrackGood ( edm::SimTrackContainer::const_iterator  simTrack)

Definition at line 397 of file ME0SegmentsValidation.cc.

397  {
398  if ((*t).noVertex() && !isMuonGun_)
399  return false;
400  if ((*t).noGenpart() && !isMuonGun_)
401  return false;
402  if (std::abs((*t).type()) != 13)
403  return false; // only interested in direct muon simtracks
404  if ((*t).momentum().pt() < pt_min_)
405  return false;
406  const float eta(std::abs((*t).momentum().eta()));
407  if (eta < eta_min_ || eta > eta_max_)
408  return false; // no GEMs could be in such eta
409  return true;
410 }

References funct::abs(), PVValHelper::eta, eta_max_, isMuonGun_, and pt_min_.

Referenced by analyze().

Member Data Documentation

◆ eta_max_

double ME0SegmentsValidation::eta_max_
private

Definition at line 51 of file ME0SegmentsValidation.h.

Referenced by isSimTrackGood(), and ME0SegmentsValidation().

◆ eta_min_

double ME0SegmentsValidation::eta_min_
private

Definition at line 51 of file ME0SegmentsValidation.h.

Referenced by ME0SegmentsValidation().

◆ InputTagToken_

edm::EDGetToken ME0SegmentsValidation::InputTagToken_
private

Definition at line 46 of file ME0SegmentsValidation.h.

Referenced by analyze(), and ME0SegmentsValidation().

◆ InputTagToken_Digis

edm::EDGetToken ME0SegmentsValidation::InputTagToken_Digis
private

Definition at line 45 of file ME0SegmentsValidation.h.

Referenced by analyze(), and ME0SegmentsValidation().

◆ InputTagToken_Segments

edm::EDGetToken ME0SegmentsValidation::InputTagToken_Segments
private

Definition at line 44 of file ME0SegmentsValidation.h.

Referenced by analyze(), and ME0SegmentsValidation().

◆ InputTagTokenST_

edm::EDGetToken ME0SegmentsValidation::InputTagTokenST_
private

Definition at line 47 of file ME0SegmentsValidation.h.

Referenced by analyze(), and ME0SegmentsValidation().

◆ isMuonGun_

bool ME0SegmentsValidation::isMuonGun_
private

Definition at line 53 of file ME0SegmentsValidation.h.

Referenced by isSimTrackGood(), and ME0SegmentsValidation().

◆ me0_matchedsimsegment_eta

MonitorElement* ME0SegmentsValidation::me0_matchedsimsegment_eta
private

Definition at line 37 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_matchedsimsegment_phi

MonitorElement * ME0SegmentsValidation::me0_matchedsimsegment_phi
private

Definition at line 37 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_matchedsimsegment_pt

MonitorElement * ME0SegmentsValidation::me0_matchedsimsegment_pt
private

Definition at line 37 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_rh_xy_Muon

MonitorElement* ME0SegmentsValidation::me0_rh_xy_Muon[2][6]
private

Definition at line 28 of file ME0SegmentsValidation.h.

◆ me0_segment_chi2

MonitorElement* ME0SegmentsValidation::me0_segment_chi2
private

Definition at line 31 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_segment_EtaRH

MonitorElement* ME0SegmentsValidation::me0_segment_EtaRH
private

Definition at line 34 of file ME0SegmentsValidation.h.

◆ me0_segment_ndof

MonitorElement * ME0SegmentsValidation::me0_segment_ndof
private

Definition at line 31 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_segment_numRH

MonitorElement* ME0SegmentsValidation::me0_segment_numRH
private

Definition at line 33 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_segment_numRHBkg

MonitorElement * ME0SegmentsValidation::me0_segment_numRHBkg
private

Definition at line 33 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_segment_numRHSig

MonitorElement * ME0SegmentsValidation::me0_segment_numRHSig
private

Definition at line 33 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_segment_PhiRH

MonitorElement * ME0SegmentsValidation::me0_segment_PhiRH
private

Definition at line 34 of file ME0SegmentsValidation.h.

◆ me0_segment_redchi2

MonitorElement * ME0SegmentsValidation::me0_segment_redchi2
private

Definition at line 31 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_segment_size

MonitorElement * ME0SegmentsValidation::me0_segment_size
private

Definition at line 34 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_segment_time

MonitorElement* ME0SegmentsValidation::me0_segment_time
private

Definition at line 32 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_segment_timeErr

MonitorElement * ME0SegmentsValidation::me0_segment_timeErr
private

Definition at line 32 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_simsegment_eta

MonitorElement* ME0SegmentsValidation::me0_simsegment_eta
private

Definition at line 36 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_simsegment_phi

MonitorElement * ME0SegmentsValidation::me0_simsegment_phi
private

Definition at line 36 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_simsegment_pt

MonitorElement * ME0SegmentsValidation::me0_simsegment_pt
private

Definition at line 36 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_specRH_DeltaX

MonitorElement* ME0SegmentsValidation::me0_specRH_DeltaX[2][6]
private

Definition at line 39 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_specRH_DeltaY

MonitorElement* ME0SegmentsValidation::me0_specRH_DeltaY[2][6]
private

Definition at line 40 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_specRH_PullX

MonitorElement* ME0SegmentsValidation::me0_specRH_PullX[2][6]
private

Definition at line 41 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_specRH_PullY

MonitorElement* ME0SegmentsValidation::me0_specRH_PullY[2][6]
private

Definition at line 42 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_specRH_xy

MonitorElement* ME0SegmentsValidation::me0_specRH_xy[2][6]
private

Definition at line 27 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me0_specRH_zr

MonitorElement* ME0SegmentsValidation::me0_specRH_zr[2]
private

Definition at line 29 of file ME0SegmentsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ npart

int ME0SegmentsValidation::npart
private

Definition at line 49 of file ME0SegmentsValidation.h.

◆ pt_min_

double ME0SegmentsValidation::pt_min_
private

Definition at line 52 of file ME0SegmentsValidation.h.

Referenced by isSimTrackGood(), and ME0SegmentsValidation().

◆ sigma_x_

double ME0SegmentsValidation::sigma_x_
private

Definition at line 50 of file ME0SegmentsValidation.h.

Referenced by analyze(), and ME0SegmentsValidation().

◆ sigma_y_

double ME0SegmentsValidation::sigma_y_
private

Definition at line 50 of file ME0SegmentsValidation.h.

Referenced by analyze(), and ME0SegmentsValidation().

ME0BaseValidation::regionLabel
std::vector< std::string > regionLabel
Definition: ME0BaseValidation.h:32
ME0SegmentsValidation::sigma_y_
double sigma_y_
Definition: ME0SegmentsValidation.h:50
ME0SegmentsValidation::me0_simsegment_phi
MonitorElement * me0_simsegment_phi
Definition: ME0SegmentsValidation.h:36
ME0SegmentsValidation::isMatched
std::pair< int, int > isMatched(ME0DetId, LocalPoint, edm::Handle< ME0DigiPreRecoCollection >)
Definition: ME0SegmentsValidation.cc:345
DDAxes::y
ME0SegmentsValidation::me0_matchedsimsegment_eta
MonitorElement * me0_matchedsimsegment_eta
Definition: ME0SegmentsValidation.h:37
ME0SegmentsValidation::me0_segment_size
MonitorElement * me0_segment_size
Definition: ME0SegmentsValidation.h:34
ME0BaseValidation::layerLabel
std::vector< std::string > layerLabel
Definition: ME0BaseValidation.h:33
ME0SegmentsValidation::isSimMatched
bool isSimMatched(edm::SimTrackContainer::const_iterator, edm::PSimHitContainer::const_iterator)
Definition: ME0SegmentsValidation.cc:412
dqmMemoryStats.float
float
Definition: dqmMemoryStats.py:127
ME0SegmentsValidation::me0_simsegment_eta
MonitorElement * me0_simsegment_eta
Definition: ME0SegmentsValidation.h:36
PV3DBase::x
T x() const
Definition: PV3DBase.h:59
ME0Geometry
Definition: ME0Geometry.h:12
ME0SegmentsValidation::me0_specRH_DeltaY
MonitorElement * me0_specRH_DeltaY[2][6]
Definition: ME0SegmentsValidation.h:40
edm::LogInfo
Definition: MessageLogger.h:254
ME0Geometry::idToDet
const GeomDet * idToDet(DetId) const override
Definition: ME0Geometry.cc:24
TrackCandidateProducer_cfi.simTracks
simTracks
Definition: TrackCandidateProducer_cfi.py:15
ME0SegmentsValidation::sigma_x_
double sigma_x_
Definition: ME0SegmentsValidation.h:50
ME0SegmentsValidation::me0_segment_numRHBkg
MonitorElement * me0_segment_numRHBkg
Definition: ME0SegmentsValidation.h:33
DDAxes::x
hltPixelTracks_cff.chi2
chi2
Definition: hltPixelTracks_cff.py:25
ME0SegmentsValidation::isMuonGun_
bool isMuonGun_
Definition: ME0SegmentsValidation.h:53
edm::Handle< edm::PSimHitContainer >
MuonDigiCollection::const_iterator
std::vector< DigiType >::const_iterator const_iterator
Definition: MuonDigiCollection.h:94
ME0BaseValidation::ME0BaseValidation
ME0BaseValidation(const edm::ParameterSet &ps)
Definition: ME0BaseValidation.cc:5
ndof
Definition: HIMultiTrackSelector.h:49
ME0Geometry::chamber
const ME0Chamber * chamber(ME0DetId id) const
Return a chamber given its id.
Definition: ME0Geometry.cc:43
GeomDet::surface
const Plane & surface() const
The nominal surface of the GeomDet.
Definition: GeomDet.h:37
edm::EventSetup::get
T get() const
Definition: EventSetup.h:73
ME0SegmentsValidation::me0_segment_time
MonitorElement * me0_segment_time
Definition: ME0SegmentsValidation.h:32
ME0SegmentsValidation::me0_segment_redchi2
MonitorElement * me0_segment_redchi2
Definition: ME0SegmentsValidation.h:31
ME0DetId::roll
int roll() const
Definition: ME0DetId.h:48
PVValHelper::eta
Definition: PVValidationHelpers.h:69
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
dqm::impl::MonitorElement::Fill
void Fill(long long x)
Definition: MonitorElement.h:290
Surface::toGlobal
GlobalPoint toGlobal(const Point2DBase< Scalar, LocalTag > lp) const
Definition: Surface.h:79
edm::ESHandle< ME0Geometry >
ME0SegmentsValidation::InputTagTokenST_
edm::EDGetToken InputTagTokenST_
Definition: ME0SegmentsValidation.h:47
ME0SegmentsValidation::MapTypeSim
std::map< edm::SimTrackContainer::const_iterator, edm::PSimHitContainer > MapTypeSim
Definition: ME0SegmentsValidation.h:55
ME0SegmentsValidation::me0_specRH_xy
MonitorElement * me0_specRH_xy[2][6]
Definition: ME0SegmentsValidation.h:27
Point3DBase< float, LocalTag >
ME0SegmentsValidation::me0_matchedsimsegment_phi
MonitorElement * me0_matchedsimsegment_phi
Definition: ME0SegmentsValidation.h:37
ME0SegmentsValidation::InputTagToken_
edm::EDGetToken InputTagToken_
Definition: ME0SegmentsValidation.h:46
ME0SegmentsValidation::me0_segment_timeErr
MonitorElement * me0_segment_timeErr
Definition: ME0SegmentsValidation.h:32
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
runTauDisplay.gp
gp
Definition: runTauDisplay.py:431
ME0BaseValidation::BookHistXY
MonitorElement * BookHistXY(DQMStore::IBooker &, const char *name, const char *label, unsigned int region_num, unsigned int layer_num=99)
Definition: ME0BaseValidation.cc:55
LogDebug
#define LogDebug(id)
Definition: MessageLogger.h:670
edm::LogError
Definition: MessageLogger.h:183
ME0SegmentsValidation::me0_specRH_DeltaX
MonitorElement * me0_specRH_DeltaX[2][6]
Definition: ME0SegmentsValidation.h:39
KineDebug3::count
void count()
Definition: KinematicConstrainedVertexUpdatorT.h:21
ME0BaseValidation::BookHistZR
MonitorElement * BookHistZR(DQMStore::IBooker &, const char *name, const char *label, unsigned int region_num, unsigned int layer_num=99)
Definition: ME0BaseValidation.cc:23
muonSimHitMatcherPSet.simTrack
simTrack
Definition: muonSimHitMatcherPSet.py:4
PV3DBase::eta
T eta() const
Definition: PV3DBase.h:73
PV3DBase::y
T y() const
Definition: PV3DBase.h:60
createfilelist.int
int
Definition: createfilelist.py:10
M_PI
#define M_PI
Definition: BXVectorInputProducer.cc:50
ME0SegmentsValidation::me0_specRH_PullX
MonitorElement * me0_specRH_PullX[2][6]
Definition: ME0SegmentsValidation.h:41
ME0DetId
Definition: ME0DetId.h:16
reco::JetExtendedAssociation::value_type
Container::value_type value_type
Definition: JetExtendedAssociation.h:30
ME0SegmentsValidation::me0_segment_ndof
MonitorElement * me0_segment_ndof
Definition: ME0SegmentsValidation.h:31
get
#define get
ME0SegmentsValidation::MapTypeSeg
std::map< ME0SegmentCollection::const_iterator, std::vector< ME0RecHit > > MapTypeSeg
Definition: ME0SegmentsValidation.h:56
looper.cfg
cfg
Definition: looper.py:297
ME0SegmentsValidation::me0_segment_numRHSig
MonitorElement * me0_segment_numRHSig
Definition: ME0SegmentsValidation.h:33
ME0SegmentsValidation::me0_segment_numRH
MonitorElement * me0_segment_numRH
Definition: ME0SegmentsValidation.h:33
ME0SegmentsValidation::isSimTrackGood
bool isSimTrackGood(edm::SimTrackContainer::const_iterator simTrack)
Definition: ME0SegmentsValidation.cc:397
ME0SegmentsValidation::InputTagToken_Digis
edm::EDGetToken InputTagToken_Digis
Definition: ME0SegmentsValidation.h:45
ME0SegmentsValidation::eta_max_
double eta_max_
Definition: ME0SegmentsValidation.h:51
qcdUeDQM_cfi.quality
quality
Definition: qcdUeDQM_cfi.py:31
triggerObjects_cff.id
id
Definition: triggerObjects_cff.py:31
ME0SegmentsValidation::me0_matchedsimsegment_pt
MonitorElement * me0_matchedsimsegment_pt
Definition: ME0SegmentsValidation.h:37
ME0DetId::chamber
int chamber() const
Chamber id: it identifies a chamber in a ring it goes from 1 to 36.
Definition: ME0DetId.h:41
HLT_2018_cff.region
region
Definition: HLT_2018_cff.py:81479
relativeConstraints.chamber
chamber
Definition: relativeConstraints.py:53
ME0SegmentsValidation::me0_specRH_zr
MonitorElement * me0_specRH_zr[2]
Definition: ME0SegmentsValidation.h:29
ME0SegmentsValidation::pt_min_
double pt_min_
Definition: ME0SegmentsValidation.h:52
mps_fire.result
result
Definition: mps_fire.py:303
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
edm::PSimHitContainer
std::vector< PSimHit > PSimHitContainer
Definition: PSimHitContainer.h:11
ME0Geometry::etaPartition
const ME0EtaPartition * etaPartition(ME0DetId id) const
Return a etaPartition given its id.
Definition: ME0Geometry.cc:35
ME0SegmentsValidation::InputTagToken_Segments
edm::EDGetToken InputTagToken_Segments
Definition: ME0SegmentsValidation.h:44
PbPb_ZMuSkimMuonDPG_cff.particleType
particleType
Definition: PbPb_ZMuSkimMuonDPG_cff.py:27
ME0SegmentsValidation::me0_segment_chi2
MonitorElement * me0_segment_chi2
Definition: ME0SegmentsValidation.h:31
ME0DetId::region
int region() const
Region id: 0 for Barrel Not in use, +/-1 For +/- Endcap.
Definition: ME0DetId.h:38
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
ntuplemaker.time
time
Definition: ntuplemaker.py:310
DigiContainerIterator
Definition: MuonDigiCollection.h:30
MuonGeometryRecord
Definition: MuonGeometryRecord.h:34
ME0SegmentsValidation::me0_specRH_PullY
MonitorElement * me0_specRH_PullY[2][6]
Definition: ME0SegmentsValidation.h:42
ME0DetId::layer
int layer() const
Layer id: each chamber has six layers of chambers: layer 1 is the inner layer and layer 6 is the oute...
Definition: ME0DetId.h:44
edm::InputTag
Definition: InputTag.h:15
PV3DBase::phi
Geom::Phi< T > phi() const
Definition: PV3DBase.h:66
ME0SegmentsValidation::me0_simsegment_pt
MonitorElement * me0_simsegment_pt
Definition: ME0SegmentsValidation.h:36
ME0SegmentsValidation::eta_min_
double eta_min_
Definition: ME0SegmentsValidation.h:51
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37