CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
EtlLocalRecoValidation Class Reference

#include <Validation/MtdValidation/plugins/EtlLocalRecoValidation.cc>

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

Public Member Functions

 EtlLocalRecoValidation (const edm::ParameterSet &)
 
 ~EtlLocalRecoValidation () 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 hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
- 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 &)
 

Private Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 

Private Attributes

edm::EDGetTokenT< FTLClusterCollectionetlRecCluToken_
 
edm::EDGetTokenT< FTLRecHitCollectionetlRecHitsToken_
 
edm::EDGetTokenT< CrossingFrame< PSimHit > > etlSimHitsToken_
 
const std::string folder_
 
const float hitMinEnergy1Dis_
 
const float hitMinEnergy2Dis_
 
const bool LocalPosDebug_
 
MonitorElementmeCluEnergy_ [4]
 
MonitorElementmeCluEta_ [4]
 
MonitorElementmeCluHits_ [4]
 
MonitorElementmeCluOccupancy_ [4]
 
MonitorElementmeCluPhi_ [4]
 
MonitorElementmeCluTime_ [4]
 
MonitorElementmeCluTimeError_ [4]
 
MonitorElementmeEnergyRes_
 
MonitorElementmeHitEnergy_ [4]
 
MonitorElementmeHitEta_ [4]
 
MonitorElementmeHitEvsEta_ [4]
 
MonitorElementmeHitEvsPhi_ [4]
 
MonitorElementmeHitPhi_ [4]
 
MonitorElementmeHitTime_ [4]
 
MonitorElementmeHitTimeError_ [4]
 
MonitorElementmeHitTvsE_ [4]
 
MonitorElementmeHitTvsEta_ [4]
 
MonitorElementmeHitTvsPhi_ [4]
 
MonitorElementmeHitX_ [4]
 
MonitorElementmeHitXlocal_ [2]
 
MonitorElementmeHitY_ [4]
 
MonitorElementmeHitYlocal_ [2]
 
MonitorElementmeHitZ_ [4]
 
MonitorElementmeLocalOccupancy_ [2]
 
MonitorElementmeNhits_ [4]
 
MonitorElementmeOccupancy_ [4]
 
MonitorElementmeTimeRes_
 
MonitorElementmeTPullvsE_
 
MonitorElementmeTPullvsEta_
 
edm::ESGetToken< MTDGeometry, MTDDigiGeometryRecordmtdgeoToken_
 
edm::ESGetToken< MTDTopology, MTDTopologyRcdmtdtopoToken_
 

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
 
- Protected Member Functions inherited from DQMEDAnalyzer
uint64_t meId () const
 
- Protected Attributes inherited from DQMEDAnalyzer
edm::EDPutTokenT< DQMTokenlumiToken_
 
edm::EDPutTokenT< DQMTokenrunToken_
 
unsigned int streamId_
 

Detailed Description

Description: ETL RECO hits and clusters validation

Implementation: [Notes on implementation]

Definition at line 48 of file EtlLocalRecoValidation.cc.

Constructor & Destructor Documentation

◆ EtlLocalRecoValidation()

EtlLocalRecoValidation::EtlLocalRecoValidation ( const edm::ParameterSet iConfig)
explicit

Definition at line 114 of file EtlLocalRecoValidation.cc.

115  : folder_(iConfig.getParameter<std::string>("folder")),
116  hitMinEnergy1Dis_(iConfig.getParameter<double>("hitMinimumEnergy1Dis")),
117  hitMinEnergy2Dis_(iConfig.getParameter<double>("hitMinimumEnergy2Dis")),
118  LocalPosDebug_(iConfig.getParameter<bool>("LocalPositionDebug")) {
119  etlRecHitsToken_ = consumes<FTLRecHitCollection>(iConfig.getParameter<edm::InputTag>("recHitsTag"));
120  etlSimHitsToken_ = consumes<CrossingFrame<PSimHit> >(iConfig.getParameter<edm::InputTag>("simHitsTag"));
121  etlRecCluToken_ = consumes<FTLClusterCollection>(iConfig.getParameter<edm::InputTag>("recCluTag"));
122  mtdgeoToken_ = esConsumes<MTDGeometry, MTDDigiGeometryRecord>();
123  mtdtopoToken_ = esConsumes<MTDTopology, MTDTopologyRcd>();
124 }

References etlRecCluToken_, etlRecHitsToken_, etlSimHitsToken_, edm::ParameterSet::getParameter(), mtdgeoToken_, and mtdtopoToken_.

◆ ~EtlLocalRecoValidation()

EtlLocalRecoValidation::~EtlLocalRecoValidation ( )
override

Definition at line 126 of file EtlLocalRecoValidation.cc.

126 {}

Member Function Documentation

◆ analyze()

void EtlLocalRecoValidation::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
overrideprivatevirtual

Reimplemented from DQMEDAnalyzer.

Definition at line 129 of file EtlLocalRecoValidation.cc.

129  {
130  using namespace edm;
131  using namespace std;
132  using namespace geant_units::operators;
133 
134  auto geometryHandle = iSetup.getTransientHandle(mtdgeoToken_);
135  const MTDGeometry* geom = geometryHandle.product();
136 
137  auto topologyHandle = iSetup.getTransientHandle(mtdtopoToken_);
138  const MTDTopology* topology = topologyHandle.product();
139 
140  bool topo1Dis = false;
141  bool topo2Dis = false;
142  if (topology->getMTDTopologyMode() <= static_cast<int>(MTDTopologyMode::Mode::barphiflat)) {
143  topo1Dis = true;
144  }
145  if (topology->getMTDTopologyMode() > static_cast<int>(MTDTopologyMode::Mode::barphiflat)) {
146  topo2Dis = true;
147  }
148 
149  auto etlRecHitsHandle = makeValid(iEvent.getHandle(etlRecHitsToken_));
150  auto etlSimHitsHandle = makeValid(iEvent.getHandle(etlSimHitsToken_));
151  auto etlRecCluHandle = makeValid(iEvent.getHandle(etlRecCluToken_));
152  MixCollection<PSimHit> etlSimHits(etlSimHitsHandle.product());
153 
154  // --- Loop over the ETL SIM hits
155  std::unordered_map<uint32_t, MTDHit> m_etlSimHits[4];
156  for (auto const& simHit : etlSimHits) {
157  // --- Use only hits compatible with the in-time bunch-crossing
158  if (simHit.tof() < 0 || simHit.tof() > 25.)
159  continue;
160 
161  ETLDetId id = simHit.detUnitId();
162 
163  int idet = -1;
164 
165  if ((id.zside() == -1) && (id.nDisc() == 1))
166  idet = 0;
167  else if ((id.zside() == -1) && (id.nDisc() == 2))
168  idet = 1;
169  else if ((id.zside() == 1) && (id.nDisc() == 1))
170  idet = 2;
171  else if ((id.zside() == 1) && (id.nDisc() == 2))
172  idet = 3;
173  else
174  continue;
175 
176  auto simHitIt = m_etlSimHits[idet].emplace(id.rawId(), MTDHit()).first;
177 
178  // --- Accumulate the energy (in MeV) of SIM hits in the same detector cell
179  (simHitIt->second).energy += convertUnitsTo(0.001_MeV, simHit.energyLoss());
180 
181  // --- Get the time of the first SIM hit in the cell
182  if ((simHitIt->second).time == 0 || simHit.tof() < (simHitIt->second).time) {
183  (simHitIt->second).time = simHit.tof();
184 
185  auto hit_pos = simHit.entryPoint();
186  (simHitIt->second).x_local = hit_pos.x();
187  (simHitIt->second).y_local = hit_pos.y();
188  (simHitIt->second).z_local = hit_pos.z();
189  }
190 
191  } // simHit loop
192 
193  // --- Loop over the ELT RECO hits
194  unsigned int n_reco_etl[4] = {0, 0, 0, 0};
195  for (const auto& recHit : *etlRecHitsHandle) {
196  double weight = 1.0;
197  ETLDetId detId = recHit.id();
198  DetId geoId = detId.geographicalId();
199  const MTDGeomDet* thedet = geom->idToDet(geoId);
200  if (thedet == nullptr)
201  throw cms::Exception("EtlLocalRecoValidation") << "GeographicalID: " << std::hex << geoId.rawId() << " ("
202  << detId.rawId() << ") is invalid!" << std::dec << std::endl;
203  const PixelTopology& topo = static_cast<const PixelTopology&>(thedet->topology());
204 
205  Local3DPoint local_point(topo.localX(recHit.row()), topo.localY(recHit.column()), 0.);
206  const auto& global_point = thedet->toGlobal(local_point);
207 
208  int idet = 999;
209 
210  if (topo1Dis) {
211  if (detId.zside() == -1) {
212  idet = 0;
213  } else if (detId.zside() == 1) {
214  idet = 2;
215  } else {
216  continue;
217  }
218  }
219 
220  if (topo2Dis) {
221  if (detId.discSide() == 1) {
222  weight = -weight;
223  }
224  if ((detId.zside() == -1) && (detId.nDisc() == 1)) {
225  idet = 0;
226  } else if ((detId.zside() == -1) && (detId.nDisc() == 2)) {
227  idet = 1;
228  } else if ((detId.zside() == 1) && (detId.nDisc() == 1)) {
229  idet = 2;
230  } else if ((detId.zside() == 1) && (detId.nDisc() == 2)) {
231  idet = 3;
232  } else {
233  continue;
234  }
235  }
236 
237  // --- Fill the histograms
238 
239  meHitEnergy_[idet]->Fill(recHit.energy());
240  meHitTime_[idet]->Fill(recHit.time());
241  meHitTimeError_[idet]->Fill(recHit.timeError());
242 
243  meOccupancy_[idet]->Fill(global_point.x(), global_point.y(), weight);
244 
245  if (LocalPosDebug_) {
246  if ((idet == 0) || (idet == 1)) {
247  meLocalOccupancy_[0]->Fill(local_point.x(), local_point.y());
248  meHitXlocal_[0]->Fill(local_point.x());
249  meHitYlocal_[0]->Fill(local_point.y());
250  }
251  if ((idet == 2) || (idet == 3)) {
252  meLocalOccupancy_[1]->Fill(local_point.x(), local_point.y());
253  meHitXlocal_[1]->Fill(local_point.x());
254  meHitYlocal_[1]->Fill(local_point.y());
255  }
256  }
257  meHitX_[idet]->Fill(global_point.x());
258  meHitY_[idet]->Fill(global_point.y());
259  meHitZ_[idet]->Fill(global_point.z());
260  meHitPhi_[idet]->Fill(global_point.phi());
261  meHitEta_[idet]->Fill(global_point.eta());
262  meHitTvsE_[idet]->Fill(recHit.energy(), recHit.time());
263  meHitEvsPhi_[idet]->Fill(global_point.phi(), recHit.energy());
264  meHitEvsEta_[idet]->Fill(global_point.eta(), recHit.energy());
265  meHitTvsPhi_[idet]->Fill(global_point.phi(), recHit.time());
266  meHitTvsEta_[idet]->Fill(global_point.eta(), recHit.time());
267 
268  // Resolution histograms
269  if (m_etlSimHits[idet].count(detId.rawId()) == 1) {
270  if ((topo1Dis && m_etlSimHits[idet][detId.rawId()].energy > hitMinEnergy1Dis_) ||
271  (topo2Dis && m_etlSimHits[idet][detId.rawId()].energy > hitMinEnergy2Dis_)) {
272  float time_res = recHit.time() - m_etlSimHits[idet][detId.rawId()].time;
273  float energy_res = recHit.energy() - m_etlSimHits[idet][detId.rawId()].energy;
274 
275  meTimeRes_->Fill(time_res);
276  meEnergyRes_->Fill(energy_res);
277 
278  meTPullvsEta_->Fill(std::abs(global_point.eta()), time_res / recHit.timeError());
279  meTPullvsE_->Fill(m_etlSimHits[idet][detId.rawId()].energy, time_res / recHit.timeError());
280  }
281  }
282 
283  n_reco_etl[idet]++;
284  } // recHit loop
285 
286  if (topo1Dis) {
287  meNhits_[0]->Fill(n_reco_etl[0]);
288  meNhits_[2]->Fill(n_reco_etl[2]);
289  }
290 
291  if (topo2Dis) {
292  for (int i = 0; i < 4; i++) {
293  meNhits_[i]->Fill(n_reco_etl[i]);
294  }
295  }
296 
297  // --- Loop over the ETL RECO clusters ---
298  for (const auto& DetSetClu : *etlRecCluHandle) {
299  for (const auto& cluster : DetSetClu) {
300  double weight = 1.0;
301  if (topo1Dis) {
302  if (cluster.energy() < hitMinEnergy1Dis_)
303  continue;
304  }
305  if (topo2Dis) {
306  if (cluster.energy() < hitMinEnergy2Dis_)
307  continue;
308  }
309  ETLDetId cluId = cluster.id();
310  DetId detIdObject(cluId);
311  const auto& genericDet = geom->idToDetUnit(detIdObject);
312  if (genericDet == nullptr) {
313  throw cms::Exception("EtlLocalRecoValidation")
314  << "GeographicalID: " << std::hex << cluId << " is invalid!" << std::dec << std::endl;
315  }
316 
317  const PixelTopology& topo = static_cast<const PixelTopology&>(genericDet->topology());
318 
319  Local3DPoint local_point(topo.localX(cluster.x()), topo.localY(cluster.y()), 0.);
320  const auto& global_point = genericDet->toGlobal(local_point);
321 
322  int idet = 999;
323 
324  if (topo1Dis) {
325  if (cluId.zside() == -1) {
326  idet = 0;
327  } else if (cluId.zside() == 1) {
328  idet = 2;
329  } else {
330  continue;
331  }
332  }
333 
334  if (topo2Dis) {
335  if (cluId.discSide() == 1) {
336  weight = -weight;
337  }
338  if ((cluId.zside() == -1) && (cluId.nDisc() == 1)) {
339  idet = 0;
340  } else if ((cluId.zside() == -1) && (cluId.nDisc() == 2)) {
341  idet = 1;
342  } else if ((cluId.zside() == 1) && (cluId.nDisc() == 1)) {
343  idet = 2;
344  } else if ((cluId.zside() == 1) && (cluId.nDisc() == 2)) {
345  idet = 3;
346  } else {
347  continue;
348  }
349  }
350 
351  meCluEnergy_[idet]->Fill(cluster.energy());
352  meCluTime_[idet]->Fill(cluster.time());
353  meCluTimeError_[idet]->Fill(cluster.timeError());
354  meCluPhi_[idet]->Fill(global_point.phi());
355  meCluEta_[idet]->Fill(global_point.eta());
356  meCluOccupancy_[idet]->Fill(global_point.x(), global_point.y(), weight);
357  meCluHits_[idet]->Fill(cluster.size());
358  }
359  }
360 }

References funct::abs(), MTDTopologyMode::barphiflat, geant_units::operators::convertUnitsTo(), submitPVResolutionJobs::count, TauDecayModes::dec, ETLDetId::discSide(), HCALHighEnergyHPDFilter_cfi::energy, etlRecCluToken_, etlRecHitsToken_, etlSimHitsToken_, Exception, dqm::impl::MonitorElement::Fill(), ETLDetId::geographicalId(), relativeConstraints::geom, MTDTopology::getMTDTopologyMode(), edm::EventSetup::getTransientHandle(), hitMinEnergy1Dis_, hitMinEnergy2Dis_, mps_fire::i, iEvent, LocalPosDebug_, PixelTopology::localX(), PixelTopology::localY(), edm::makeValid(), meCluEnergy_, meCluEta_, meCluHits_, meCluOccupancy_, meCluPhi_, meCluTime_, meCluTimeError_, meEnergyRes_, meHitEnergy_, meHitEta_, meHitEvsEta_, meHitEvsPhi_, meHitPhi_, meHitTime_, meHitTimeError_, meHitTvsE_, meHitTvsEta_, meHitTvsPhi_, meHitX_, meHitXlocal_, meHitY_, meHitYlocal_, meHitZ_, meLocalOccupancy_, meNhits_, meOccupancy_, meTimeRes_, meTPullvsE_, meTPullvsEta_, mtdgeoToken_, mtdtopoToken_, ETLDetId::nDisc(), DetId::rawId(), rpcPointValidation_cfi::recHit, rpcPointValidation_cfi::simHit, protons_cff::time, GeomDet::toGlobal(), GeomDet::topology(), mps_merge::weight, MTDDetId::zside(), and ecaldqm::zside().

◆ bookHistograms()

void EtlLocalRecoValidation::bookHistograms ( DQMStore::IBooker ibook,
edm::Run const &  run,
edm::EventSetup const &  iSetup 
)
overrideprivatevirtual

Implements DQMEDAnalyzer.

Definition at line 363 of file EtlLocalRecoValidation.cc.

365  {
366  ibook.setCurrentFolder(folder_);
367 
368  // --- histograms booking
369 
370  meNhits_[0] = ibook.book1D(
371  "EtlNhitsZnegD1", "Number of ETL RECO hits (-Z, Single(topo1D)/First(topo2D) disk);N_{RECO}", 100, 0., 5000.);
372  meNhits_[1] = ibook.book1D("EtlNhitsZnegD2", "Number of ETL RECO hits (-Z, Second disk);N_{RECO}", 100, 0., 5000.);
373  meNhits_[2] = ibook.book1D(
374  "EtlNhitsZposD1", "Number of ETL RECO hits (+Z, Single(topo1D)/First(topo2D) disk);N_{RECO}", 100, 0., 5000.);
375  meNhits_[3] = ibook.book1D("EtlNhitsZposD2", "Number of ETL RECO hits (+Z, Second disk);N_{RECO}", 100, 0., 5000.);
376  meHitEnergy_[0] = ibook.book1D(
377  "EtlHitEnergyZnegD1", "ETL RECO hits energy (-Z, Single(topo1D)/First(topo2D) disk);E_{RECO} [MeV]", 100, 0., 3.);
378  meHitEnergy_[1] =
379  ibook.book1D("EtlHitEnergyZnegD2", "ETL RECO hits energy (-Z, Second disk);E_{RECO} [MeV]", 100, 0., 3.);
380  meHitEnergy_[2] = ibook.book1D(
381  "EtlHitEnergyZposD1", "ETL RECO hits energy (+Z, Single(topo1D)/First(topo2D) disk);E_{RECO} [MeV]", 100, 0., 3.);
382  meHitEnergy_[3] =
383  ibook.book1D("EtlHitEnergyZposD2", "ETL RECO hits energy (+Z, Second disk);E_{RECO} [MeV]", 100, 0., 3.);
384  meHitTime_[0] = ibook.book1D(
385  "EtlHitTimeZnegD1", "ETL RECO hits ToA (-Z, Single(topo1D)/First(topo2D) disk);ToA_{RECO} [ns]", 100, 0., 25.);
386  meHitTime_[1] = ibook.book1D("EtlHitTimeZnegD2", "ETL RECO hits ToA (-Z, Second disk);ToA_{RECO} [ns]", 100, 0., 25.);
387  meHitTime_[2] = ibook.book1D(
388  "EtlHitTimeZposD1", "ETL RECO hits ToA (+Z, Single(topo1D)/First(topo2D) disk);ToA_{RECO} [ns]", 100, 0., 25.);
389  meHitTime_[3] = ibook.book1D("EtlHitTimeZposD2", "ETL RECO hits ToA (+Z, Second disk);ToA_{RECO} [ns]", 100, 0., 25.);
390  meHitTimeError_[0] =
391  ibook.book1D("EtlHitTimeErrorZnegD1",
392  "ETL RECO hits ToA error (-Z, Single(topo1D)/First(topo2D) disk);#sigma^{ToA}_{RECO} [ns]",
393  50,
394  0.,
395  0.1);
396  meHitTimeError_[1] = ibook.book1D(
397  "EtlHitTimeErrorZnegD2", "ETL RECO hits ToA error(-Z, Second disk);#sigma^{ToA}_{RECO} [ns]", 50, 0., 0.1);
398  meHitTimeError_[2] =
399  ibook.book1D("EtlHitTimeErrorZposD1",
400  "ETL RECO hits ToA error (+Z, Single(topo1D)/First(topo2D) disk);#sigma^{ToA}_{RECO} [ns]",
401  50,
402  0.,
403  0.1);
404  meHitTimeError_[3] = ibook.book1D(
405  "EtlHitTimeErrorZposD2", "ETL RECO hits ToA error(+Z, Second disk);#sigma^{ToA}_{RECO} [ns]", 50, 0., 0.1);
406 
407  meOccupancy_[0] =
408  ibook.book2D("EtlOccupancyZnegD1",
409  "ETL RECO hits occupancy (-Z, Single(topo1D)/First(topo2D) disk);X_{RECO} [cm];Y_{RECO} [cm]",
410  135,
411  -135.,
412  135.,
413  135,
414  -135.,
415  135.);
416  meOccupancy_[1] = ibook.book2D("EtlOccupancyZnegD2",
417  "ETL RECO hits occupancy (-Z, Second disk);X_{RECO} [cm];Y_{RECO} [cm]",
418  135,
419  -135.,
420  135.,
421  135,
422  -135.,
423  135.);
424  meOccupancy_[2] =
425  ibook.book2D("EtlOccupancyZposD1",
426  "ETL RECO hits occupancy (+Z, Single(topo1D)/First(topo2D) disk);X_{RECO} [cm];Y_{RECO} [cm]",
427  135,
428  -135.,
429  135.,
430  135,
431  -135.,
432  135.);
433  meOccupancy_[3] = ibook.book2D("EtlOccupancyZposD2",
434  "ETL RECO hits occupancy (+Z, Second disk);X_{RECO} [cm];Y_{RECO} [cm]",
435  135,
436  -135.,
437  135.,
438  135,
439  -135.,
440  135.);
441  if (LocalPosDebug_) {
442  meLocalOccupancy_[0] = ibook.book2D("EtlLocalOccupancyZneg",
443  "ETL RECO hits local occupancy (-Z);X_{RECO} [cm];Y_{RECO} [cm]",
444  100,
445  -2.2,
446  2.2,
447  50,
448  -1.1,
449  1.1);
450  meLocalOccupancy_[1] = ibook.book2D("EtlLocalOccupancyZpos",
451  "ETL RECO hits local occupancy (+Z);X_{RECO} [cm];Y_{RECO} [cm]",
452  100,
453  -2.2,
454  2.2,
455  50,
456  -1.1,
457  1.1);
458  meHitXlocal_[0] = ibook.book1D("EtlHitXlocalZneg", "ETL RECO local X (-Z);X_{RECO}^{LOC} [cm]", 100, -2.2, 2.2);
459  meHitXlocal_[1] = ibook.book1D("EtlHitXlocalZpos", "ETL RECO local X (+Z);X_{RECO}^{LOC} [cm]", 100, -2.2, 2.2);
460  meHitYlocal_[0] = ibook.book1D("EtlHitYlocalZneg", "ETL RECO local Y (-Z);Y_{RECO}^{LOC} [cm]", 50, -1.1, 1.1);
461  meHitYlocal_[1] = ibook.book1D("EtlHitYlocalZpos", "ETL RECO local Y (-Z);Y_{RECO}^{LOC} [cm]", 50, -1.1, 1.1);
462  }
463  meHitX_[0] = ibook.book1D(
464  "EtlHitXZnegD1", "ETL RECO hits X (-Z, Single(topo1D)/First(topo2D) Disk);X_{RECO} [cm]", 100, -130., 130.);
465  meHitX_[1] = ibook.book1D("EtlHitXZnegD2", "ETL RECO hits X (-Z, Second Disk);X_{RECO} [cm]", 100, -130., 130.);
466  meHitX_[2] = ibook.book1D(
467  "EtlHitXZposD1", "ETL RECO hits X (+Z, Single(topo1D)/First(topo2D) Disk);X_{RECO} [cm]", 100, -130., 130.);
468  meHitX_[3] = ibook.book1D("EtlHitXZposD2", "ETL RECO hits X (+Z, Second Disk);X_{RECO} [cm]", 100, -130., 130.);
469  meHitY_[0] = ibook.book1D(
470  "EtlHitYZnegD1", "ETL RECO hits Y (-Z, Single(topo1D)/First(topo2D) Disk);Y_{RECO} [cm]", 100, -130., 130.);
471  meHitY_[1] = ibook.book1D("EtlHitYZnegD2", "ETL RECO hits Y (-Z, Second Disk);Y_{RECO} [cm]", 100, -130., 130.);
472  meHitY_[2] = ibook.book1D(
473  "EtlHitYZposD1", "ETL RECO hits Y (+Z, Single(topo1D)/First(topo2D) Disk);Y_{RECO} [cm]", 100, -130., 130.);
474  meHitY_[3] = ibook.book1D("EtlHitYZposD2", "ETL RECO hits Y (+Z, Second Disk);Y_{RECO} [cm]", 100, -130., 130.);
475  meHitZ_[0] = ibook.book1D(
476  "EtlHitZZnegD1", "ETL RECO hits Z (-Z, Single(topo1D)/First(topo2D) Disk);Z_{RECO} [cm]", 100, -302., -298.);
477  meHitZ_[1] = ibook.book1D("EtlHitZZnegD2", "ETL RECO hits Z (-Z, Second Disk);Z_{RECO} [cm]", 100, -304., -300.);
478  meHitZ_[2] = ibook.book1D(
479  "EtlHitZZposD1", "ETL RECO hits Z (+Z, Single(topo1D)/First(topo2D) Disk);Z_{RECO} [cm]", 100, 298., 302.);
480  meHitZ_[3] = ibook.book1D("EtlHitZZposD2", "ETL RECO hits Z (+Z, Second Disk);Z_{RECO} [cm]", 100, 300., 304.);
481  meHitPhi_[0] = ibook.book1D(
482  "EtlHitPhiZnegD1", "ETL RECO hits #phi (-Z, Single(topo1D)/First(topo2D) Disk);#phi_{RECO} [rad]", 100, -3.2, 3.2);
483  meHitPhi_[1] =
484  ibook.book1D("EtlHitPhiZnegD2", "ETL RECO hits #phi (-Z, Second Disk);#phi_{RECO} [rad]", 100, -3.2, 3.2);
485  meHitPhi_[2] = ibook.book1D(
486  "EtlHitPhiZposD1", "ETL RECO hits #phi (+Z, Single(topo1D)/First(topo2D) Disk);#phi_{RECO} [rad]", 100, -3.2, 3.2);
487  meHitPhi_[3] =
488  ibook.book1D("EtlHitPhiZposD2", "ETL RECO hits #phi (+Z, Second Disk);#phi_{RECO} [rad]", 100, -3.2, 3.2);
489  meHitEta_[0] = ibook.book1D(
490  "EtlHitEtaZnegD1", "ETL RECO hits #eta (-Z, Single(topo1D)/First(topo2D) Disk);#eta_{RECO}", 100, -3.2, -1.56);
491  meHitEta_[1] = ibook.book1D("EtlHitEtaZnegD2", "ETL RECO hits #eta (-Z, Second Disk);#eta_{RECO}", 100, -3.2, -1.56);
492  meHitEta_[2] = ibook.book1D(
493  "EtlHitEtaZposD1", "ETL RECO hits #eta (+Z, Single(topo1D)/First(topo2D) Disk);#eta_{RECO}", 100, 1.56, 3.2);
494  meHitEta_[3] = ibook.book1D("EtlHitEtaZposD2", "ETL RECO hits #eta (+Z, Second Disk);#eta_{RECO}", 100, 1.56, 3.2);
495  meTimeRes_ = ibook.book1D("EtlTimeRes", "ETL time resolution;T_{RECO}-T_{SIM}", 100, -0.5, 0.5);
496  meEnergyRes_ = ibook.book1D("EtlEnergyRes", "ETL energy resolution;E_{RECO}-E_{SIM}", 100, -0.5, 0.5);
497  meHitTvsE_[0] = ibook.bookProfile(
498  "EtlHitTvsEZnegD1",
499  "ETL RECO time vs energy (-Z, Single(topo1D)/First(topo2D) Disk);E_{RECO} [MeV];ToA_{RECO} [ns]",
500  50,
501  0.,
502  2.,
503  0.,
504  100.);
505  meHitTvsE_[1] = ibook.bookProfile("EtlHitTvsEZnegD2",
506  "ETL RECO time vs energy (-Z, Second Disk);E_{RECO} [MeV];ToA_{RECO} [ns]",
507  50,
508  0.,
509  2.,
510  0.,
511  100.);
512  meHitTvsE_[2] = ibook.bookProfile(
513  "EtlHitTvsEZposD1",
514  "ETL RECO time vs energy (+Z, Single(topo1D)/First(topo2D) Disk);E_{RECO} [MeV];ToA_{RECO} [ns]",
515  50,
516  0.,
517  2.,
518  0.,
519  100.);
520  meHitTvsE_[3] = ibook.bookProfile("EtlHitTvsEZposD2",
521  "ETL RECO time vs energy (+Z, Second Disk);E_{RECO} [MeV];ToA_{RECO} [ns]",
522  50,
523  0.,
524  2.,
525  0.,
526  100.);
527  meHitEvsPhi_[0] = ibook.bookProfile(
528  "EtlHitEvsPhiZnegD1",
529  "ETL RECO energy vs #phi (-Z, Single(topo1D)/First(topo2D) Disk);#phi_{RECO} [rad];E_{RECO} [MeV]",
530  50,
531  -3.2,
532  3.2,
533  0.,
534  100.);
535  meHitEvsPhi_[1] = ibook.bookProfile("EtlHitEvsPhiZnegD2",
536  "ETL RECO energy vs #phi (-Z, Second Disk);#phi_{RECO} [rad];E_{RECO} [MeV]",
537  50,
538  -3.2,
539  3.2,
540  0.,
541  100.);
542  meHitEvsPhi_[2] = ibook.bookProfile(
543  "EtlHitEvsPhiZposD1",
544  "ETL RECO energy vs #phi (+Z, Single(topo1D)/First(topo2D) Disk);#phi_{RECO} [rad];E_{RECO} [MeV]",
545  50,
546  -3.2,
547  3.2,
548  0.,
549  100.);
550  meHitEvsPhi_[3] = ibook.bookProfile("EtlHitEvsPhiZposD2",
551  "ETL RECO energy vs #phi (+Z, Second Disk);#phi_{RECO} [rad];E_{RECO} [MeV]",
552  50,
553  -3.2,
554  3.2,
555  0.,
556  100.);
557  meHitEvsEta_[0] =
558  ibook.bookProfile("EtlHitEvsEtaZnegD1",
559  "ETL RECO energy vs #eta (-Z, Single(topo1D)/First(topo2D) Disk);#eta_{RECO};E_{RECO} [MeV]",
560  50,
561  -3.2,
562  -1.56,
563  0.,
564  100.);
565  meHitEvsEta_[1] = ibook.bookProfile("EtlHitEvsEtaZnegD2",
566  "ETL RECO energy vs #eta (-Z, Second Disk);#eta_{RECO};E_{RECO} [MeV]",
567  50,
568  -3.2,
569  -1.56,
570  0.,
571  100.);
572  meHitEvsEta_[2] =
573  ibook.bookProfile("EtlHitEvsEtaZposD1",
574  "ETL RECO energy vs #eta (+Z, Single(topo1D)/First(topo2D) Disk);#eta_{RECO};E_{RECO} [MeV]",
575  50,
576  1.56,
577  3.2,
578  0.,
579  100.);
580  meHitEvsEta_[3] = ibook.bookProfile("EtlHitEvsEtaZposD2",
581  "ETL RECO energy vs #eta (+Z, Second Disk);#eta_{RECO};E_{RECO} [MeV]",
582  50,
583  1.56,
584  3.2,
585  0.,
586  100.);
587  meHitTvsPhi_[0] = ibook.bookProfile(
588  "EtlHitTvsPhiZnegD1",
589  "ETL RECO time vs #phi (-Z, Single(topo1D)/First(topo2D) Disk);#phi_{RECO} [rad];ToA_{RECO} [ns]",
590  50,
591  -3.2,
592  3.2,
593  0.,
594  100.);
595  meHitTvsPhi_[1] = ibook.bookProfile("EtlHitTvsPhiZnegD2",
596  "ETL RECO time vs #phi (-Z, Second Disk);#phi_{RECO} [rad];ToA_{RECO} [ns]",
597  50,
598  -3.2,
599  3.2,
600  0.,
601  100.);
602  meHitTvsPhi_[2] = ibook.bookProfile(
603  "EtlHitTvsPhiZposD1",
604  "ETL RECO time vs #phi (+Z, Single(topo1D)/First(topo2D) Disk);#phi_{RECO} [rad];ToA_{RECO} [ns]",
605  50,
606  -3.2,
607  3.2,
608  0.,
609  100.);
610  meHitTvsPhi_[3] = ibook.bookProfile("EtlHitTvsPhiZposD2",
611  "ETL RECO time vs #phi (+Z, Second Disk);#phi_{RECO} [rad];ToA_{RECO} [ns]",
612  50,
613  -3.2,
614  3.2,
615  0.,
616  100.);
617  meHitTvsEta_[0] =
618  ibook.bookProfile("EtlHitTvsEtaZnegD1",
619  "ETL RECO time vs #eta (-Z, Single(topo1D)/First(topo2D) Disk);#eta_{RECO};ToA_{RECO} [ns]",
620  50,
621  -3.2,
622  -1.56,
623  0.,
624  100.);
625  meHitTvsEta_[1] = ibook.bookProfile("EtlHitTvsEtaZnegD2",
626  "ETL RECO time vs #eta (-Z, Second Disk);#eta_{RECO};ToA_{RECO} [ns]",
627  50,
628  -3.2,
629  -1.56,
630  0.,
631  100.);
632  meHitTvsEta_[2] =
633  ibook.bookProfile("EtlHitTvsEtaZposD1",
634  "ETL RECO time vs #eta (+Z, Single(topo1D)/First(topo2D) Disk);#eta_{RECO};ToA_{RECO} [ns]",
635  50,
636  1.56,
637  3.2,
638  0.,
639  100.);
640  meHitTvsEta_[3] = ibook.bookProfile("EtlHitTvsEtaZposD2",
641  "ETL RECO time vs #eta (+Z, Second Disk);#eta_{RECO};ToA_{RECO} [ns]",
642  50,
643  1.56,
644  3.2,
645  0.,
646  100.);
647  meTPullvsE_ = ibook.bookProfile(
648  "EtlTPullvsE", "ETL time pull vs E;E_{SIM} [MeV];T_{RECO}-T_{SIM}/#sigma_{T_{RECO}}", 20, 0., 2., -5., 5., "S");
649  meTPullvsEta_ = ibook.bookProfile("EtlTPullvsEta",
650  "ETL time pull vs #eta;|#eta_{RECO}|;T_{RECO}-T_{SIM}/#sigma_{T_{RECO}}",
651  26,
652  1.65,
653  3.0,
654  -5.,
655  5.,
656  "S");
657  meCluTime_[0] =
658  ibook.book1D("EtlCluTimeZnegD1", "ETL cluster ToA (-Z, Single(topo1D)/First(topo2D) Disk);ToA [ns]", 250, 0, 25);
659  meCluTime_[1] = ibook.book1D("EtlCluTimeZnegD2", "ETL cluster ToA (-Z, Second Disk);ToA [ns]", 250, 0, 25);
660  meCluTime_[2] =
661  ibook.book1D("EtlCluTimeZposD1", "ETL cluster ToA (+Z, Single(topo1D)/First(topo2D) Disk);ToA [ns]", 250, 0, 25);
662  meCluTime_[3] = ibook.book1D("EtlCluTimeZposD2", "ETL cluster ToA (+Z, Second Disk);ToA [ns]", 250, 0, 25);
663  meCluTimeError_[0] = ibook.book1D("EtlCluTimeErrosZnegD1",
664  "ETL cluster time error (-Z, Single(topo1D)/First(topo2D) Disk);#sigma_{t} [ns]",
665  100,
666  0,
667  0.1);
668  meCluTimeError_[1] =
669  ibook.book1D("EtlCluTimeErrorZnegD2", "ETL cluster time error (-Z, Second Disk);#sigma_{t} [ns]", 100, 0, 0.1);
670  meCluTimeError_[2] = ibook.book1D("EtlCluTimeErrorZposD1",
671  "ETL cluster time error (+Z, Single(topo1D)/First(topo2D) Disk);#sigma_{t} [ns]",
672  100,
673  0,
674  0.1);
675  meCluTimeError_[3] =
676  ibook.book1D("EtlCluTimeErrorZposD2", "ETL cluster time error (+Z, Second Disk);#sigma_{t} [ns]", 100, 0, 0.1);
677  meCluEnergy_[0] = ibook.book1D(
678  "EtlCluEnergyZnegD1", "ETL cluster energy (-Z, Single(topo1D)/First(topo2D) Disk);E_{RECO} [MeV]", 100, 0, 10);
679  meCluEnergy_[1] =
680  ibook.book1D("EtlCluEnergyZnegD2", "ETL cluster energy (-Z, Second Disk);E_{RECO} [MeV]", 100, 0, 10);
681  meCluEnergy_[2] = ibook.book1D(
682  "EtlCluEnergyZposD1", "ETL cluster energy (+Z, Single(topo1D)/First(topo2D) Disk);E_{RECO} [MeV]", 100, 0, 10);
683  meCluEnergy_[3] =
684  ibook.book1D("EtlCluEnergyZposD2", "ETL cluster energy (+Z, Second Disk);E_{RECO} [MeV]", 100, 0, 10);
685  meCluPhi_[0] = ibook.book1D(
686  "EtlCluPhiZnegD1", "ETL cluster #phi (-Z, Single(topo1D)/First(topo2D) Disk);#phi_{RECO} [rad]", 126, -3.2, 3.2);
687  meCluPhi_[1] =
688  ibook.book1D("EtlCluPhiZnegD2", "ETL cluster #phi (-Z, Second Disk);#phi_{RECO} [rad]", 126, -3.2, 3.2);
689  meCluPhi_[2] = ibook.book1D(
690  "EtlCluPhiZposD1", "ETL cluster #phi (+Z, Single(topo1D)/First(topo2D) Disk);#phi_{RECO} [rad]", 126, -3.2, 3.2);
691  meCluPhi_[3] =
692  ibook.book1D("EtlCluPhiZposD2", "ETL cluster #phi (+Z, Second Disk);#phi_{RECO} [rad]", 126, -3.2, 3.2);
693  meCluEta_[0] = ibook.book1D(
694  "EtlCluEtaZnegD1", "ETL cluster #eta (-Z, Single(topo1D)/First(topo2D) Disk);#eta_{RECO}", 100, -3.2, -1.4);
695  meCluEta_[1] = ibook.book1D("EtlCluEtaZnegD2", "ETL cluster #eta (-Z, Second Disk);#eta_{RECO}", 100, -3.2, -1.4);
696  meCluEta_[2] = ibook.book1D(
697  "EtlCluEtaZposD1", "ETL cluster #eta (+Z, Single(topo1D)/First(topo2D) Disk);#eta_{RECO}", 100, 1.4, 3.2);
698  meCluEta_[3] = ibook.book1D("EtlCluEtaZposD2", "ETL cluster #eta (+Z, Second Disk);#eta_{RECO}", 100, 1.4, 3.2);
699  meCluHits_[0] = ibook.book1D(
700  "EtlCluHitNumberZnegD1", "ETL hits per cluster (-Z, Single(topo1D)/First(topo2D) Disk);Cluster size", 10, 0, 10);
701  meCluHits_[1] =
702  ibook.book1D("EtlCluHitNumberZnegD2", "ETL hits per cluster (-Z, Second Disk);Cluster size", 10, 0, 10);
703  meCluHits_[2] = ibook.book1D(
704  "EtlCluHitNumberZposD1", "ETL hits per cluster (+Z, Single(topo1D)/First(topo2D) Disk);Cluster size", 10, 0, 10);
705  meCluHits_[3] =
706  ibook.book1D("EtlCluHitNumberZposD2", "ETL hits per cluster (+Z, Second Disk);Cluster size", 10, 0, 10);
707  meCluOccupancy_[0] =
708  ibook.book2D("EtlCluOccupancyZnegD1",
709  "ETL cluster X vs Y (-Z, Single(topo1D)/First(topo2D) Disk);X_{RECO} [cm]; Y_{RECO} [cm]",
710  100,
711  -150.,
712  150.,
713  100,
714  -150,
715  150);
716  meCluOccupancy_[1] = ibook.book2D("EtlCluOccupancyZnegD2",
717  "ETL cluster X vs Y (-Z, Second Disk);X_{RECO} [cm]; Y_{RECO} [cm]",
718  100,
719  -150.,
720  150.,
721  100,
722  -150,
723  150);
724  meCluOccupancy_[2] =
725  ibook.book2D("EtlCluOccupancyZposD1",
726  "ETL cluster X vs Y (+Z, Single(topo1D)/First(topo2D) Disk);X_{RECO} [cm]; Y_{RECO} [cm]",
727  100,
728  -150.,
729  150.,
730  100,
731  -150,
732  150);
733  meCluOccupancy_[3] = ibook.book2D("EtlCluOccupancyZposD2",
734  "ETL cluster X vs Y (+Z, Second Disk);X_{RECO} [cm]; Y_{RECO} [cm]",
735  100,
736  -150.,
737  150.,
738  100,
739  -150,
740  150);
741 }

References dqm::implementation::IBooker::book1D(), dqm::implementation::IBooker::book2D(), dqm::implementation::IBooker::bookProfile(), folder_, LocalPosDebug_, meCluEnergy_, meCluEta_, meCluHits_, meCluOccupancy_, meCluPhi_, meCluTime_, meCluTimeError_, meEnergyRes_, meHitEnergy_, meHitEta_, meHitEvsEta_, meHitEvsPhi_, meHitPhi_, meHitTime_, meHitTimeError_, meHitTvsE_, meHitTvsEta_, meHitTvsPhi_, meHitX_, meHitXlocal_, meHitY_, meHitYlocal_, meHitZ_, meLocalOccupancy_, meNhits_, meOccupancy_, meTimeRes_, meTPullvsE_, meTPullvsEta_, and dqm::implementation::NavigatorBase::setCurrentFolder().

◆ fillDescriptions()

void EtlLocalRecoValidation::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 744 of file EtlLocalRecoValidation.cc.

744  {
746 
747  desc.add<std::string>("folder", "MTD/ETL/LocalReco");
748  desc.add<edm::InputTag>("recHitsTag", edm::InputTag("mtdRecHits", "FTLEndcap"));
749  desc.add<edm::InputTag>("simHitsTag", edm::InputTag("mix", "g4SimHitsFastTimerHitsEndcap"));
750  desc.add<edm::InputTag>("recCluTag", edm::InputTag("mtdClusters", "FTLEndcap"));
751  desc.add<double>("hitMinimumEnergy1Dis", 1.); // [MeV]
752  desc.add<double>("hitMinimumEnergy2Dis", 0.001); // [MeV]
753  desc.add<bool>("LocalPositionDebug", false);
754 
755  descriptions.add("etlLocalReco", desc);
756 }

References edm::ConfigurationDescriptions::add(), submitPVResolutionJobs::desc, HLT_FULL_cff::InputTag, and AlCaHLTBitMon_QueryRunRegistry::string.

Member Data Documentation

◆ etlRecCluToken_

edm::EDGetTokenT<FTLClusterCollection> EtlLocalRecoValidation::etlRecCluToken_
private

Definition at line 69 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and EtlLocalRecoValidation().

◆ etlRecHitsToken_

edm::EDGetTokenT<FTLRecHitCollection> EtlLocalRecoValidation::etlRecHitsToken_
private

Definition at line 67 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and EtlLocalRecoValidation().

◆ etlSimHitsToken_

edm::EDGetTokenT<CrossingFrame<PSimHit> > EtlLocalRecoValidation::etlSimHitsToken_
private

Definition at line 68 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and EtlLocalRecoValidation().

◆ folder_

const std::string EtlLocalRecoValidation::folder_
private

Definition at line 62 of file EtlLocalRecoValidation.cc.

Referenced by bookHistograms().

◆ hitMinEnergy1Dis_

const float EtlLocalRecoValidation::hitMinEnergy1Dis_
private

Definition at line 63 of file EtlLocalRecoValidation.cc.

Referenced by analyze().

◆ hitMinEnergy2Dis_

const float EtlLocalRecoValidation::hitMinEnergy2Dis_
private

Definition at line 64 of file EtlLocalRecoValidation.cc.

Referenced by analyze().

◆ LocalPosDebug_

const bool EtlLocalRecoValidation::LocalPosDebug_
private

Definition at line 65 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meCluEnergy_

MonitorElement* EtlLocalRecoValidation::meCluEnergy_[4]
private

Definition at line 101 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meCluEta_

MonitorElement* EtlLocalRecoValidation::meCluEta_[4]
private

Definition at line 103 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meCluHits_

MonitorElement* EtlLocalRecoValidation::meCluHits_[4]
private

Definition at line 104 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meCluOccupancy_

MonitorElement* EtlLocalRecoValidation::meCluOccupancy_[4]
private

Definition at line 105 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meCluPhi_

MonitorElement* EtlLocalRecoValidation::meCluPhi_[4]
private

Definition at line 102 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meCluTime_

MonitorElement* EtlLocalRecoValidation::meCluTime_[4]
private

Definition at line 99 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meCluTimeError_

MonitorElement* EtlLocalRecoValidation::meCluTimeError_[4]
private

Definition at line 100 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meEnergyRes_

MonitorElement* EtlLocalRecoValidation::meEnergyRes_
private

Definition at line 108 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meHitEnergy_

MonitorElement* EtlLocalRecoValidation::meHitEnergy_[4]
private

Definition at line 77 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meHitEta_

MonitorElement* EtlLocalRecoValidation::meHitEta_[4]
private

Definition at line 91 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meHitEvsEta_

MonitorElement* EtlLocalRecoValidation::meHitEvsEta_[4]
private

Definition at line 95 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meHitEvsPhi_

MonitorElement* EtlLocalRecoValidation::meHitEvsPhi_[4]
private

Definition at line 94 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meHitPhi_

MonitorElement* EtlLocalRecoValidation::meHitPhi_[4]
private

Definition at line 90 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meHitTime_

MonitorElement* EtlLocalRecoValidation::meHitTime_[4]
private

Definition at line 78 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meHitTimeError_

MonitorElement* EtlLocalRecoValidation::meHitTimeError_[4]
private

Definition at line 79 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meHitTvsE_

MonitorElement* EtlLocalRecoValidation::meHitTvsE_[4]
private

Definition at line 93 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meHitTvsEta_

MonitorElement* EtlLocalRecoValidation::meHitTvsEta_[4]
private

Definition at line 97 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meHitTvsPhi_

MonitorElement* EtlLocalRecoValidation::meHitTvsPhi_[4]
private

Definition at line 96 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meHitX_

MonitorElement* EtlLocalRecoValidation::meHitX_[4]
private

Definition at line 87 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meHitXlocal_

MonitorElement* EtlLocalRecoValidation::meHitXlocal_[2]
private

Definition at line 84 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meHitY_

MonitorElement* EtlLocalRecoValidation::meHitY_[4]
private

Definition at line 88 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meHitYlocal_

MonitorElement* EtlLocalRecoValidation::meHitYlocal_[2]
private

Definition at line 85 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meHitZ_

MonitorElement* EtlLocalRecoValidation::meHitZ_[4]
private

Definition at line 89 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meLocalOccupancy_

MonitorElement* EtlLocalRecoValidation::meLocalOccupancy_[2]
private

Definition at line 83 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meNhits_

MonitorElement* EtlLocalRecoValidation::meNhits_[4]
private

Definition at line 76 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meOccupancy_

MonitorElement* EtlLocalRecoValidation::meOccupancy_[4]
private

Definition at line 81 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meTimeRes_

MonitorElement* EtlLocalRecoValidation::meTimeRes_
private

Definition at line 107 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meTPullvsE_

MonitorElement* EtlLocalRecoValidation::meTPullvsE_
private

Definition at line 109 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ meTPullvsEta_

MonitorElement* EtlLocalRecoValidation::meTPullvsEta_
private

Definition at line 110 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and bookHistograms().

◆ mtdgeoToken_

edm::ESGetToken<MTDGeometry, MTDDigiGeometryRecord> EtlLocalRecoValidation::mtdgeoToken_
private

Definition at line 71 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and EtlLocalRecoValidation().

◆ mtdtopoToken_

edm::ESGetToken<MTDTopology, MTDTopologyRcd> EtlLocalRecoValidation::mtdtopoToken_
private

Definition at line 72 of file EtlLocalRecoValidation.cc.

Referenced by analyze(), and EtlLocalRecoValidation().

EtlLocalRecoValidation::meTimeRes_
MonitorElement * meTimeRes_
Definition: EtlLocalRecoValidation.cc:107
mps_fire.i
i
Definition: mps_fire.py:428
EtlLocalRecoValidation::meHitTimeError_
MonitorElement * meHitTimeError_[4]
Definition: EtlLocalRecoValidation.cc:79
EtlLocalRecoValidation::mtdgeoToken_
edm::ESGetToken< MTDGeometry, MTDDigiGeometryRecord > mtdgeoToken_
Definition: EtlLocalRecoValidation.cc:71
ecaldqm::zside
int zside(DetId const &)
Definition: EcalDQMCommonUtils.cc:189
geant_units::operators::convertUnitsTo
constexpr NumType convertUnitsTo(long double desiredUnits, NumType val)
Definition: GeantUnits.h:99
edm
HLT enums.
Definition: AlignableModifier.h:19
mps_merge.weight
weight
Definition: mps_merge.py:88
HLT_FULL_cff.InputTag
InputTag
Definition: HLT_FULL_cff.py:89285
edm::ParameterSetDescription
Definition: ParameterSetDescription.h:52
TrackerGeomDet
Definition: TrackerGeomDet.h:6
dqm::implementation::NavigatorBase::setCurrentFolder
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:32
EtlLocalRecoValidation::meHitYlocal_
MonitorElement * meHitYlocal_[2]
Definition: EtlLocalRecoValidation.cc:85
protons_cff.time
time
Definition: protons_cff.py:39
GeomDet::topology
virtual const Topology & topology() const
Definition: GeomDet.cc:67
EtlLocalRecoValidation::meLocalOccupancy_
MonitorElement * meLocalOccupancy_[2]
Definition: EtlLocalRecoValidation.cc:83
MTDTopologyMode::Mode::barphiflat
ETLDetId
Detector identifier class for the Endcap Timing Layer.
Definition: ETLDetId.h:15
EtlLocalRecoValidation::meHitY_
MonitorElement * meHitY_[4]
Definition: EtlLocalRecoValidation.cc:88
geant_units::operators
Definition: GeantUnits.h:18
EtlLocalRecoValidation::meHitEvsPhi_
MonitorElement * meHitEvsPhi_[4]
Definition: EtlLocalRecoValidation.cc:94
EtlLocalRecoValidation::meHitTvsPhi_
MonitorElement * meHitTvsPhi_[4]
Definition: EtlLocalRecoValidation.cc:96
rpcPointValidation_cfi.recHit
recHit
Definition: rpcPointValidation_cfi.py:7
MTDTopology::getMTDTopologyMode
int getMTDTopologyMode() const
Definition: MTDTopology.h:27
EtlLocalRecoValidation::meHitXlocal_
MonitorElement * meHitXlocal_[2]
Definition: EtlLocalRecoValidation.cc:84
DetId
Definition: DetId.h:17
EtlLocalRecoValidation::meHitEnergy_
MonitorElement * meHitEnergy_[4]
Definition: EtlLocalRecoValidation.cc:77
EtlLocalRecoValidation::folder_
const std::string folder_
Definition: EtlLocalRecoValidation.cc:62
EtlLocalRecoValidation::etlRecCluToken_
edm::EDGetTokenT< FTLClusterCollection > etlRecCluToken_
Definition: EtlLocalRecoValidation.cc:69
edm::ConfigurationDescriptions::add
void add(std::string const &label, ParameterSetDescription const &psetDescription)
Definition: ConfigurationDescriptions.cc:57
MixCollection
Definition: MixCollection.h:10
rpcPointValidation_cfi.simHit
simHit
Definition: rpcPointValidation_cfi.py:24
EtlLocalRecoValidation::meCluPhi_
MonitorElement * meCluPhi_[4]
Definition: EtlLocalRecoValidation.cc:102
dqm::impl::MonitorElement::Fill
void Fill(long long x)
Definition: MonitorElement.h:290
ETLDetId::discSide
int discSide() const
Definition: ETLDetId.h:117
EtlLocalRecoValidation::meEnergyRes_
MonitorElement * meEnergyRes_
Definition: EtlLocalRecoValidation.cc:108
dqm::implementation::IBooker::bookProfile
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:322
relativeConstraints.geom
geom
Definition: relativeConstraints.py:72
submitPVResolutionJobs.count
count
Definition: submitPVResolutionJobs.py:352
EtlLocalRecoValidation::meHitZ_
MonitorElement * meHitZ_[4]
Definition: EtlLocalRecoValidation.cc:89
ETLDetId::nDisc
int nDisc() const
Definition: ETLDetId.h:122
HCALHighEnergyHPDFilter_cfi.energy
energy
Definition: HCALHighEnergyHPDFilter_cfi.py:5
MTDDetId::zside
int zside() const
Definition: MTDDetId.h:61
ETLDetId::geographicalId
ETLDetId geographicalId() const
Definition: ETLDetId.h:108
Point3DBase< float, LocalTag >
PixelTopology
Definition: PixelTopology.h:10
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
EtlLocalRecoValidation::meCluEta_
MonitorElement * meCluEta_[4]
Definition: EtlLocalRecoValidation.cc:103
MTDTopology
Definition: MTDTopology.h:13
GeomDet::toGlobal
GlobalPoint toGlobal(const Local2DPoint &lp) const
Conversion to the global R.F. from the R.F. of the GeomDet.
Definition: GeomDet.h:49
EtlLocalRecoValidation::etlSimHitsToken_
edm::EDGetTokenT< CrossingFrame< PSimHit > > etlSimHitsToken_
Definition: EtlLocalRecoValidation.cc:68
EtlLocalRecoValidation::meHitTime_
MonitorElement * meHitTime_[4]
Definition: EtlLocalRecoValidation.cc:78
EtlLocalRecoValidation::meHitX_
MonitorElement * meHitX_[4]
Definition: EtlLocalRecoValidation.cc:87
iEvent
int iEvent
Definition: GenABIO.cc:224
EtlLocalRecoValidation::meOccupancy_
MonitorElement * meOccupancy_[4]
Definition: EtlLocalRecoValidation.cc:81
EtlLocalRecoValidation::meCluTimeError_
MonitorElement * meCluTimeError_[4]
Definition: EtlLocalRecoValidation.cc:100
EtlLocalRecoValidation::meCluOccupancy_
MonitorElement * meCluOccupancy_[4]
Definition: EtlLocalRecoValidation.cc:105
EtlLocalRecoValidation::meCluTime_
MonitorElement * meCluTime_[4]
Definition: EtlLocalRecoValidation.cc:99
edm::makeValid
auto makeValid(const U &iOtherHandleType) noexcept(false)
Definition: ValidHandle.h:52
edm::EventSetup::getTransientHandle
ESTransientHandle< T > getTransientHandle(const ESGetToken< T, R > &iToken) const
Definition: EventSetup.h:166
MTDGeometry
Definition: MTDGeometry.h:14
EtlLocalRecoValidation::meCluEnergy_
MonitorElement * meCluEnergy_[4]
Definition: EtlLocalRecoValidation.cc:101
submitPVResolutionJobs.desc
string desc
Definition: submitPVResolutionJobs.py:251
EtlLocalRecoValidation::hitMinEnergy2Dis_
const float hitMinEnergy2Dis_
Definition: EtlLocalRecoValidation.cc:64
std
Definition: JetResolutionObject.h:76
DetId::rawId
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
EtlLocalRecoValidation::meNhits_
MonitorElement * meNhits_[4]
Definition: EtlLocalRecoValidation.cc:76
dqm::implementation::IBooker::book2D
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:177
Exception
Definition: hltDiff.cc:245
EtlLocalRecoValidation::meTPullvsEta_
MonitorElement * meTPullvsEta_
Definition: EtlLocalRecoValidation.cc:110
PixelTopology::localY
virtual float localY(float mpY) const =0
EtlLocalRecoValidation::meHitTvsE_
MonitorElement * meHitTvsE_[4]
Definition: EtlLocalRecoValidation.cc:93
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
EtlLocalRecoValidation::mtdtopoToken_
edm::ESGetToken< MTDTopology, MTDTopologyRcd > mtdtopoToken_
Definition: EtlLocalRecoValidation.cc:72
EtlLocalRecoValidation::meHitTvsEta_
MonitorElement * meHitTvsEta_[4]
Definition: EtlLocalRecoValidation.cc:97
EtlLocalRecoValidation::meHitEvsEta_
MonitorElement * meHitEvsEta_[4]
Definition: EtlLocalRecoValidation.cc:95
PixelTopology::localX
virtual float localX(float mpX) const =0
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
EtlLocalRecoValidation::hitMinEnergy1Dis_
const float hitMinEnergy1Dis_
Definition: EtlLocalRecoValidation.cc:63
EtlLocalRecoValidation::meHitEta_
MonitorElement * meHitEta_[4]
Definition: EtlLocalRecoValidation.cc:91
TauDecayModes.dec
dec
Definition: TauDecayModes.py:143
EtlLocalRecoValidation::meCluHits_
MonitorElement * meCluHits_[4]
Definition: EtlLocalRecoValidation.cc:104
edm::InputTag
Definition: InputTag.h:15
weight
Definition: weight.py:1
EtlLocalRecoValidation::meHitPhi_
MonitorElement * meHitPhi_[4]
Definition: EtlLocalRecoValidation.cc:90
dqm::implementation::IBooker::book1D
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:98
EtlLocalRecoValidation::LocalPosDebug_
const bool LocalPosDebug_
Definition: EtlLocalRecoValidation.cc:65
EtlLocalRecoValidation::etlRecHitsToken_
edm::EDGetTokenT< FTLRecHitCollection > etlRecHitsToken_
Definition: EtlLocalRecoValidation.cc:67
EtlLocalRecoValidation::meTPullvsE_
MonitorElement * meTPullvsE_
Definition: EtlLocalRecoValidation.cc:109
MTDHit
Definition: BtlLocalRecoValidation.cc:44