CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Public Attributes | Static Public Attributes
SiPixelDigitizerAlgorithm::PixelEfficiencies Struct Reference

Public Types

enum  shiftEnumerator { FPixRocIdShift = 3, BPixRocIdShift = 6 }
 

Public Member Functions

void init_from_db (const TrackerGeometry *, const SiPixelDynamicInefficiency *)
 
bool matches (const DetId &, const DetId &, const std::vector< uint32_t > &)
 
 PixelEfficiencies (const edm::ParameterSet &conf, bool AddPixelInefficiency, int NumberOfBarrelLayers, int NumberOfEndcapDisks)
 

Public Attributes

std::map< uint32_t, double > ChipGeomFactors
 
std::map< uint32_t, double > ColGeomFactors
 
unsigned int FPixIndex
 
bool FromConfig
 
std::map< uint32_t, size_t > iPU
 
std::unique_ptr
< PixelFEDChannelCollection
PixelFEDChannelCollection_
 
std::map< uint32_t, double > PixelGeomFactors
 
std::map< uint32_t,
std::vector< double > > 
PixelGeomFactorsROCBigPixels
 
std::map< uint32_t,
std::vector< double > > 
PixelGeomFactorsROCStdPixels
 
std::vector< double > pu_scale
 
double theInnerEfficiency_FPix [20]
 
double theInstLumiScaleFactor
 
std::vector< double > theLadderEfficiency_BPix [20]
 
std::vector< double > theModuleEfficiency_BPix [20]
 
double theOuterEfficiency_FPix [20]
 
double thePixelChipEfficiency [20]
 
double thePixelColEfficiency [20]
 
double thePixelEfficiency [20]
 
std::vector< std::vector
< double > > 
thePUEfficiency
 

Static Public Attributes

static const int rocIdMaskBits = 0x1F
 

Detailed Description

Internal use only.

Definition at line 252 of file SiPixelDigitizerAlgorithm.h.

Member Enumeration Documentation

Constructor & Destructor Documentation

SiPixelDigitizerAlgorithm::PixelEfficiencies::PixelEfficiencies ( const edm::ParameterSet conf,
bool  AddPixelInefficiency,
int  NumberOfBarrelLayers,
int  NumberOfEndcapDisks 
)

Definition at line 446 of file SiPixelDigitizerAlgorithm.cc.

References relativeConstraints::empty, Exception, edm::ParameterSet::exists(), FPixIndex, FromConfig, edm::ParameterSet::getParameter(), mps_fire::i, dqmiolumiharvest::j, SiPixelDigitizerAlgorithm::NumberOfBarrelLayers, SiPixelDigitizerAlgorithm::NumberOfEndcapDisks, pu_scale, findQualityFiles::size, theInnerEfficiency_FPix, theInstLumiScaleFactor, theLadderEfficiency_BPix, theModuleEfficiency_BPix, theOuterEfficiency_FPix, thePixelChipEfficiency, thePixelColEfficiency, thePixelEfficiency, and thePUEfficiency.

449  {
450  // pixel inefficiency
451  // Don't use Hard coded values, read inefficiencies in from DB/python config or don't use any
452  int NumberOfTotLayers = NumberOfBarrelLayers + NumberOfEndcapDisks;
454  if (AddPixelInefficiency) {
455  FromConfig = conf.exists("thePixelColEfficiency_BPix1") && conf.exists("thePixelColEfficiency_BPix2") &&
456  conf.exists("thePixelColEfficiency_BPix3") && conf.exists("thePixelColEfficiency_FPix1") &&
457  conf.exists("thePixelColEfficiency_FPix2") && conf.exists("thePixelEfficiency_BPix1") &&
458  conf.exists("thePixelEfficiency_BPix2") && conf.exists("thePixelEfficiency_BPix3") &&
459  conf.exists("thePixelEfficiency_FPix1") && conf.exists("thePixelEfficiency_FPix2") &&
460  conf.exists("thePixelChipEfficiency_BPix1") && conf.exists("thePixelChipEfficiency_BPix2") &&
461  conf.exists("thePixelChipEfficiency_BPix3") && conf.exists("thePixelChipEfficiency_FPix1") &&
462  conf.exists("thePixelChipEfficiency_FPix2");
463  if (NumberOfBarrelLayers == 3)
464  FromConfig = FromConfig && conf.exists("theLadderEfficiency_BPix1") && conf.exists("theLadderEfficiency_BPix2") &&
465  conf.exists("theLadderEfficiency_BPix3") && conf.exists("theModuleEfficiency_BPix1") &&
466  conf.exists("theModuleEfficiency_BPix2") && conf.exists("theModuleEfficiency_BPix3") &&
467  conf.exists("thePUEfficiency_BPix1") && conf.exists("thePUEfficiency_BPix2") &&
468  conf.exists("thePUEfficiency_BPix3") && conf.exists("theInnerEfficiency_FPix1") &&
469  conf.exists("theInnerEfficiency_FPix2") && conf.exists("theOuterEfficiency_FPix1") &&
470  conf.exists("theOuterEfficiency_FPix2") && conf.exists("thePUEfficiency_FPix_Inner") &&
471  conf.exists("thePUEfficiency_FPix_Outer") && conf.exists("theInstLumiScaleFactor");
472  if (NumberOfBarrelLayers >= 4)
473  FromConfig = FromConfig && conf.exists("thePixelColEfficiency_BPix4") &&
474  conf.exists("thePixelEfficiency_BPix4") && conf.exists("thePixelChipEfficiency_BPix4");
475  if (NumberOfEndcapDisks >= 3)
476  FromConfig = FromConfig && conf.exists("thePixelColEfficiency_FPix3") &&
477  conf.exists("thePixelEfficiency_FPix3") && conf.exists("thePixelChipEfficiency_FPix3");
478  if (FromConfig) {
479  LogInfo("PixelDigitizer ") << "The PixelDigitizer inefficiency configuration is read from the config file.\n";
480  theInstLumiScaleFactor = conf.getParameter<double>("theInstLumiScaleFactor");
481  int i = 0;
482  thePixelColEfficiency[i++] = conf.getParameter<double>("thePixelColEfficiency_BPix1");
483  thePixelColEfficiency[i++] = conf.getParameter<double>("thePixelColEfficiency_BPix2");
484  thePixelColEfficiency[i++] = conf.getParameter<double>("thePixelColEfficiency_BPix3");
485  if (NumberOfBarrelLayers >= 4) {
486  thePixelColEfficiency[i++] = conf.getParameter<double>("thePixelColEfficiency_BPix4");
487  }
488  //
489  i = 0;
490  thePixelEfficiency[i++] = conf.getParameter<double>("thePixelEfficiency_BPix1");
491  thePixelEfficiency[i++] = conf.getParameter<double>("thePixelEfficiency_BPix2");
492  thePixelEfficiency[i++] = conf.getParameter<double>("thePixelEfficiency_BPix3");
493  if (NumberOfBarrelLayers >= 4) {
494  thePixelEfficiency[i++] = conf.getParameter<double>("thePixelEfficiency_BPix4");
495  }
496  //
497  i = 0;
498  thePixelChipEfficiency[i++] = conf.getParameter<double>("thePixelChipEfficiency_BPix1");
499  thePixelChipEfficiency[i++] = conf.getParameter<double>("thePixelChipEfficiency_BPix2");
500  thePixelChipEfficiency[i++] = conf.getParameter<double>("thePixelChipEfficiency_BPix3");
501  if (NumberOfBarrelLayers >= 4) {
502  thePixelChipEfficiency[i++] = conf.getParameter<double>("thePixelChipEfficiency_BPix4");
503  }
504  //
505  if (NumberOfBarrelLayers == 3) {
506  i = 0;
507  theLadderEfficiency_BPix[i++] = conf.getParameter<std::vector<double> >("theLadderEfficiency_BPix1");
508  theLadderEfficiency_BPix[i++] = conf.getParameter<std::vector<double> >("theLadderEfficiency_BPix2");
509  theLadderEfficiency_BPix[i++] = conf.getParameter<std::vector<double> >("theLadderEfficiency_BPix3");
510  if (((theLadderEfficiency_BPix[0].size() != 20) || (theLadderEfficiency_BPix[1].size() != 32) ||
511  (theLadderEfficiency_BPix[2].size() != 44)) &&
512  (NumberOfBarrelLayers == 3))
513  throw cms::Exception("Configuration") << "Wrong ladder number in efficiency config!";
514  //
515  i = 0;
516  theModuleEfficiency_BPix[i++] = conf.getParameter<std::vector<double> >("theModuleEfficiency_BPix1");
517  theModuleEfficiency_BPix[i++] = conf.getParameter<std::vector<double> >("theModuleEfficiency_BPix2");
518  theModuleEfficiency_BPix[i++] = conf.getParameter<std::vector<double> >("theModuleEfficiency_BPix3");
519  if (((theModuleEfficiency_BPix[0].size() != 4) || (theModuleEfficiency_BPix[1].size() != 4) ||
520  (theModuleEfficiency_BPix[2].size() != 4)) &&
521  (NumberOfBarrelLayers == 3))
522  throw cms::Exception("Configuration") << "Wrong module number in efficiency config!";
523  //
524  thePUEfficiency.push_back(conf.getParameter<std::vector<double> >("thePUEfficiency_BPix1"));
525  thePUEfficiency.push_back(conf.getParameter<std::vector<double> >("thePUEfficiency_BPix2"));
526  thePUEfficiency.push_back(conf.getParameter<std::vector<double> >("thePUEfficiency_BPix3"));
527  if (((thePUEfficiency[0].empty()) || (thePUEfficiency[1].empty()) || (thePUEfficiency[2].empty())) &&
528  (NumberOfBarrelLayers == 3))
529  throw cms::Exception("Configuration")
530  << "At least one PU efficiency (BPix) number is needed in efficiency config!";
531  }
532  // The next is needed for Phase2 Tracker studies
533  if (NumberOfBarrelLayers >= 5) {
534  if (NumberOfTotLayers > 20) {
535  throw cms::Exception("Configuration") << "SiPixelDigitizer was given more layers than it can handle";
536  }
537  // For Phase2 tracker layers just set the outermost BPix inefficiency to 99.9% THESE VALUES ARE HARDCODED ALSO ELSEWHERE IN THIS FILE
538  for (int j = 5; j <= NumberOfBarrelLayers; j++) {
539  thePixelColEfficiency[j - 1] = 0.999;
540  thePixelEfficiency[j - 1] = 0.999;
541  thePixelChipEfficiency[j - 1] = 0.999;
542  }
543  }
544  //
545  i = FPixIndex;
546  thePixelColEfficiency[i++] = conf.getParameter<double>("thePixelColEfficiency_FPix1");
547  thePixelColEfficiency[i++] = conf.getParameter<double>("thePixelColEfficiency_FPix2");
548  if (NumberOfEndcapDisks >= 3) {
549  thePixelColEfficiency[i++] = conf.getParameter<double>("thePixelColEfficiency_FPix3");
550  }
551  i = FPixIndex;
552  thePixelEfficiency[i++] = conf.getParameter<double>("thePixelEfficiency_FPix1");
553  thePixelEfficiency[i++] = conf.getParameter<double>("thePixelEfficiency_FPix2");
554  if (NumberOfEndcapDisks >= 3) {
555  thePixelEfficiency[i++] = conf.getParameter<double>("thePixelEfficiency_FPix3");
556  }
557  i = FPixIndex;
558  thePixelChipEfficiency[i++] = conf.getParameter<double>("thePixelChipEfficiency_FPix1");
559  thePixelChipEfficiency[i++] = conf.getParameter<double>("thePixelChipEfficiency_FPix2");
560  if (NumberOfEndcapDisks >= 3) {
561  thePixelChipEfficiency[i++] = conf.getParameter<double>("thePixelChipEfficiency_FPix3");
562  }
563  // The next is needed for Phase2 Tracker studies
564  if (NumberOfEndcapDisks >= 4) {
565  if (NumberOfTotLayers > 20) {
566  throw cms::Exception("Configuration") << "SiPixelDigitizer was given more layers than it can handle";
567  }
568  // For Phase2 tracker layers just set the extra FPix disk inefficiency to 99.9% THESE VALUES ARE HARDCODED ALSO ELSEWHERE IN THIS FILE
569  for (int j = 4 + FPixIndex; j <= NumberOfEndcapDisks + NumberOfBarrelLayers; j++) {
570  thePixelColEfficiency[j - 1] = 0.999;
571  thePixelEfficiency[j - 1] = 0.999;
572  thePixelChipEfficiency[j - 1] = 0.999;
573  }
574  }
575  //FPix Dynamic Inefficiency
576  if (NumberOfBarrelLayers == 3) {
577  i = FPixIndex;
578  theInnerEfficiency_FPix[i++] = conf.getParameter<double>("theInnerEfficiency_FPix1");
579  theInnerEfficiency_FPix[i++] = conf.getParameter<double>("theInnerEfficiency_FPix2");
580  i = FPixIndex;
581  theOuterEfficiency_FPix[i++] = conf.getParameter<double>("theOuterEfficiency_FPix1");
582  theOuterEfficiency_FPix[i++] = conf.getParameter<double>("theOuterEfficiency_FPix2");
583  thePUEfficiency.push_back(conf.getParameter<std::vector<double> >("thePUEfficiency_FPix_Inner"));
584  thePUEfficiency.push_back(conf.getParameter<std::vector<double> >("thePUEfficiency_FPix_Outer"));
585  if (((thePUEfficiency[3].empty()) || (thePUEfficiency[4].empty())) && (NumberOfEndcapDisks == 2))
586  throw cms::Exception("Configuration")
587  << "At least one (FPix) PU efficiency number is needed in efficiency config!";
588  pu_scale.resize(thePUEfficiency.size());
589  }
590  } else
591  LogInfo("PixelDigitizer ") << "The PixelDigitizer inefficiency configuration is read from the database.\n";
592  }
593  // the first "NumberOfBarrelLayers" settings [0],[1], ... , [NumberOfBarrelLayers-1] are for the barrel pixels
594  // the next "NumberOfEndcapDisks" settings [NumberOfBarrelLayers],[NumberOfBarrelLayers+1], ... [NumberOfEndcapDisks+NumberOfBarrelLayers-1]
595 }
bool exists(std::string const &parameterName) const
checks if a parameter exists
std::vector< std::vector< double > > thePUEfficiency
Log< level::Info, false > LogInfo
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
tuple size
Write out results.

Member Function Documentation

void SiPixelDigitizerAlgorithm::PixelEfficiencies::init_from_db ( const TrackerGeometry geom,
const SiPixelDynamicInefficiency SiPixelDynamicInefficiency 
)

Definition at line 607 of file SiPixelDigitizerAlgorithm.cc.

References PixelTopology::colsperroc(), TrackerGeometry::detUnits(), Exception, SiPixelDynamicInefficiency::getChipGeomFactors(), SiPixelDynamicInefficiency::getColGeomFactors(), SiPixelDynamicInefficiency::getDetIdmasks(), SiPixelDynamicInefficiency::getPixelGeomFactors(), SiPixelDynamicInefficiency::getPUFactors(), SiPixelDynamicInefficiency::gettheInstLumiScaleFactor(), mps_fire::i, TrackerGeometry::idToDet(), TrackerGeometry::isThere(), LogDebug, SiStripPI::max, SiStripPI::min, dqmiodumpmetadata::n, GeomDetEnumerators::P1PXB, GeomDetEnumerators::P1PXEC, PixelSubdetector::PixelBarrel, DetId::rawId(), PixelTopology::rowsperroc(), edm::shift, PixelGeomDetUnit::specificTopology(), and DetId::subdetId().

Referenced by SiPixelDigitizerAlgorithm::init_DynIneffDB().

608  {
609  theInstLumiScaleFactor = SiPixelDynamicInefficiency->gettheInstLumiScaleFactor();
610  const std::map<uint32_t, double>& PixelGeomFactorsDBIn = SiPixelDynamicInefficiency->getPixelGeomFactors();
611  const std::map<uint32_t, double>& ColGeomFactorsDB = SiPixelDynamicInefficiency->getColGeomFactors();
612  const std::map<uint32_t, double>& ChipGeomFactorsDB = SiPixelDynamicInefficiency->getChipGeomFactors();
613  const std::map<uint32_t, std::vector<double> >& PUFactors = SiPixelDynamicInefficiency->getPUFactors();
614  std::vector<uint32_t> DetIdmasks = SiPixelDynamicInefficiency->getDetIdmasks();
615 
616  // Loop on all modules, initialize map for easy access
617  for (const auto& it_module : geom->detUnits()) {
618  if (dynamic_cast<PixelGeomDetUnit const*>(it_module) == nullptr)
619  continue;
620  const DetId detid = it_module->geographicalId();
621  uint32_t rawid = detid.rawId();
622  PixelGeomFactors[rawid] = 1;
623  ColGeomFactors[rawid] = 1;
624  ChipGeomFactors[rawid] = 1;
625  PixelGeomFactorsROCStdPixels[rawid] = std::vector<double>(16, 1);
626  PixelGeomFactorsROCBigPixels[rawid] = std::vector<double>(16, 1);
627  }
628 
629  // ROC level inefficiency for phase 1 (disentangle scale factors for big and std size pixels)
630  std::map<uint32_t, double> PixelGeomFactorsDB;
631 
632  LogDebug("PixelDigitizer ") << " Check PixelEfficiencies -- PixelGeomFactorsDBIn "
633  << "\n";
635  for (auto db_factor : PixelGeomFactorsDBIn) {
636  LogDebug("PixelDigitizer ") << " db_factor " << db_factor.first << " " << db_factor.second << "\n";
637 
638  int shift = DetId(db_factor.first).subdetId() == static_cast<int>(PixelSubdetector::PixelBarrel) ? BPixRocIdShift
639  : FPixRocIdShift;
640  unsigned int rocMask = rocIdMaskBits << shift;
641  unsigned int rocId = (((db_factor.first) & rocMask) >> shift);
642  if (rocId != 0) {
643  rocId--;
644  unsigned int rawid = db_factor.first & (~rocMask);
645  const PixelGeomDetUnit* theGeomDet = dynamic_cast<const PixelGeomDetUnit*>(geom->idToDet(rawid));
646  PixelTopology const* topology = &(theGeomDet->specificTopology());
647  const int nPixelsInROC = topology->rowsperroc() * topology->colsperroc();
648  const int nBigPixelsInROC = 2 * topology->rowsperroc() + topology->colsperroc() - 2;
649  double factor = db_factor.second;
650  double badFraction = 1 - factor;
651  double bigPixelFraction = static_cast<double>(nBigPixelsInROC) / nPixelsInROC;
652  double stdPixelFraction = 1. - bigPixelFraction;
653 
654  double badFractionBig = std::min(bigPixelFraction, badFraction);
655  double badFractionStd = std::max(0., badFraction - badFractionBig);
656  double badFractionBigReNormalized = badFractionBig / bigPixelFraction;
657  double badFractionStdReNormalized = badFractionStd / stdPixelFraction;
658  PixelGeomFactorsROCStdPixels[rawid][rocId] *= (1. - badFractionStdReNormalized);
659  PixelGeomFactorsROCBigPixels[rawid][rocId] *= (1. - badFractionBigReNormalized);
660  } else {
661  PixelGeomFactorsDB[db_factor.first] = db_factor.second;
662  }
663  }
664  } // is Phase 1 geometry
665  else {
666  PixelGeomFactorsDB = PixelGeomFactorsDBIn;
667  }
668 
669  LogDebug("PixelDigitizer ")
670  << " Check PixelEfficiencies -- Loop on all modules and store module level geometrical scale factors "
671  << "\n";
672  // Loop on all modules, store module level geometrical scale factors
673  for (const auto& it_module : geom->detUnits()) {
674  if (dynamic_cast<PixelGeomDetUnit const*>(it_module) == nullptr)
675  continue;
676  const DetId detid = it_module->geographicalId();
677  uint32_t rawid = detid.rawId();
678  for (auto db_factor : PixelGeomFactorsDB) {
679  LogDebug("PixelDigitizer ") << " db_factor PixelGeomFactorsDB " << db_factor.first << " "
680  << db_factor.second << "\n";
681  if (matches(detid, DetId(db_factor.first), DetIdmasks))
682  PixelGeomFactors[rawid] *= db_factor.second;
683  }
684  for (auto db_factor : ColGeomFactorsDB) {
685  LogDebug("PixelDigitizer ") << " db_factor ColGeomFactorsDB " << db_factor.first << " " << db_factor.second
686  << "\n";
687  if (matches(detid, DetId(db_factor.first), DetIdmasks))
688  ColGeomFactors[rawid] *= db_factor.second;
689  }
690  for (auto db_factor : ChipGeomFactorsDB) {
691  LogDebug("PixelDigitizer ") << " db_factor ChipGeomFactorsDB " << db_factor.first << " "
692  << db_factor.second << "\n";
693  if (matches(detid, DetId(db_factor.first), DetIdmasks))
694  ChipGeomFactors[rawid] *= db_factor.second;
695  }
696  }
697 
698  // piluep scale factors are calculated once per event
699  // therefore vector index is stored in a map for each module that matches to a db_id
700  size_t i = 0;
701  LogDebug("PixelDigitizer ") << " Check PixelEfficiencies -- PUFactors "
702  << "\n";
703  for (const auto& factor : PUFactors) {
704  //
705  LogDebug("PixelDigitizer ") << " factor " << factor.first << " " << factor.second.size() << "\n";
706  for (size_t i = 0, n = factor.second.size(); i < n; i++) {
707  LogDebug("PixelDigitizer ") << " print factor.second for " << i << " " << factor.second[i] << "\n";
708  }
709  //
710  const DetId db_id = DetId(factor.first);
711  for (const auto& it_module : geom->detUnits()) {
712  if (dynamic_cast<PixelGeomDetUnit const*>(it_module) == nullptr)
713  continue;
714  const DetId detid = it_module->geographicalId();
715  if (!matches(detid, db_id, DetIdmasks))
716  continue;
717  if (iPU.count(detid.rawId())) {
718  throw cms::Exception("Database")
719  << "Multiple db_ids match to same module in SiPixelDynamicInefficiency DB Object";
720  } else {
721  iPU[detid.rawId()] = i;
722  }
723  }
724  thePUEfficiency.push_back(factor.second);
725  ++i;
726  }
727  pu_scale.resize(thePUEfficiency.size());
728 }
const std::map< unsigned int, double > & getPixelGeomFactors() const
virtual int rowsperroc() const =0
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
std::vector< std::vector< double > > thePUEfficiency
const std::map< unsigned int, std::vector< double > > & getPUFactors() const
const DetContainer & detUnits() const override
Returm a vector of all GeomDet.
bool isThere(GeomDetEnumerators::SubDetector subdet) const
const std::vector< uint32_t > getDetIdmasks() const
const std::map< unsigned int, double > & getColGeomFactors() const
std::map< uint32_t, std::vector< double > > PixelGeomFactorsROCBigPixels
virtual int colsperroc() const =0
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:48
const TrackerGeomDet * idToDet(DetId) const override
Definition: DetId.h:17
std::map< uint32_t, std::vector< double > > PixelGeomFactorsROCStdPixels
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
const std::map< unsigned int, double > & getChipGeomFactors() const
bool matches(const DetId &, const DetId &, const std::vector< uint32_t > &)
static unsigned int const shift
#define LogDebug(id)
bool SiPixelDigitizerAlgorithm::PixelEfficiencies::matches ( const DetId detid,
const DetId db_id,
const std::vector< uint32_t > &  DetIdmasks 
)

Definition at line 730 of file SiPixelDigitizerAlgorithm.cc.

References DetId::det(), mps_fire::i, DetId::rawId(), and DetId::subdetId().

732  {
733  if (detid.subdetId() != db_id.subdetId())
734  return false;
735  for (size_t i = 0; i < DetIdmasks.size(); ++i) {
736  DetId maskid = DetId(DetIdmasks.at(i));
737  if (maskid.subdetId() != db_id.subdetId())
738  continue;
739  if ((detid.rawId() & maskid.rawId()) != (db_id.rawId() & maskid.rawId()) &&
740  (db_id.rawId() & maskid.rawId()) != DetId(db_id.det(), db_id.subdetId()).rawId())
741  return false;
742  }
743  return true;
744 }
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:48
Definition: DetId.h:17
constexpr Detector det() const
get the detector field from this detid
Definition: DetId.h:46

Member Data Documentation

std::map<uint32_t, double> SiPixelDigitizerAlgorithm::PixelEfficiencies::ChipGeomFactors
std::map<uint32_t, double> SiPixelDigitizerAlgorithm::PixelEfficiencies::ColGeomFactors
unsigned int SiPixelDigitizerAlgorithm::PixelEfficiencies::FPixIndex
bool SiPixelDigitizerAlgorithm::PixelEfficiencies::FromConfig
std::map<uint32_t, size_t> SiPixelDigitizerAlgorithm::PixelEfficiencies::iPU
std::unique_ptr<PixelFEDChannelCollection> SiPixelDigitizerAlgorithm::PixelEfficiencies::PixelFEDChannelCollection_
std::map<uint32_t, double> SiPixelDigitizerAlgorithm::PixelEfficiencies::PixelGeomFactors
std::map<uint32_t, std::vector<double> > SiPixelDigitizerAlgorithm::PixelEfficiencies::PixelGeomFactorsROCBigPixels
std::map<uint32_t, std::vector<double> > SiPixelDigitizerAlgorithm::PixelEfficiencies::PixelGeomFactorsROCStdPixels
std::vector<double> SiPixelDigitizerAlgorithm::PixelEfficiencies::pu_scale
const int SiPixelDigitizerAlgorithm::PixelEfficiencies::rocIdMaskBits = 0x1F
static

Definition at line 283 of file SiPixelDigitizerAlgorithm.h.

double SiPixelDigitizerAlgorithm::PixelEfficiencies::theInnerEfficiency_FPix[20]
double SiPixelDigitizerAlgorithm::PixelEfficiencies::theInstLumiScaleFactor
std::vector<double> SiPixelDigitizerAlgorithm::PixelEfficiencies::theLadderEfficiency_BPix[20]
std::vector<double> SiPixelDigitizerAlgorithm::PixelEfficiencies::theModuleEfficiency_BPix[20]
double SiPixelDigitizerAlgorithm::PixelEfficiencies::theOuterEfficiency_FPix[20]
double SiPixelDigitizerAlgorithm::PixelEfficiencies::thePixelChipEfficiency[20]
double SiPixelDigitizerAlgorithm::PixelEfficiencies::thePixelColEfficiency[20]
double SiPixelDigitizerAlgorithm::PixelEfficiencies::thePixelEfficiency[20]
std::vector<std::vector<double> > SiPixelDigitizerAlgorithm::PixelEfficiencies::thePUEfficiency