CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Classes | Public Member Functions | Private Types | Private Member Functions | Private Attributes
SiPixelDigitizerAlgorithm Class Reference

#include <SiPixelDigitizerAlgorithm.h>

Classes

class  Amplitude
 
class  CalParameters
 
class  EnergyDepositUnit
 
struct  PixelAging
 
struct  PixelEfficiencies
 
class  SignalPoint
 

Public Member Functions

void accumulateSimHits (const std::vector< PSimHit >::const_iterator inputBegin, const std::vector< PSimHit >::const_iterator inputEnd, const size_t inputBeginGlobalIndex, const unsigned int tofBin, const PixelGeomDetUnit *pixdet, const GlobalVector &bfield, const TrackerTopology *tTopo, CLHEP::HepRandomEngine *)
 
void calculateInstlumiFactor (PileupMixingContent *puInfo)
 
void digitize (const PixelGeomDetUnit *pixdet, std::vector< PixelDigi > &digis, std::vector< PixelDigiSimLink > &simlinks, const TrackerTopology *tTopo, CLHEP::HepRandomEngine *)
 
void init (const edm::EventSetup &es)
 
void init_DynIneffDB (const edm::EventSetup &, const unsigned int &)
 
void initializeEvent ()
 
 SiPixelDigitizerAlgorithm (const edm::ParameterSet &conf)
 
 ~SiPixelDigitizerAlgorithm ()
 

Private Types

typedef GloballyPositioned
< double > 
Frame
 
typedef std::vector
< edm::ParameterSet
Parameters
 
typedef
signal_map_type::const_iterator 
signal_map_const_iterator
 
typedef signal_map_type::iterator signal_map_iterator
 
typedef std::map< int,
Amplitude, std::less< int > > 
signal_map_type
 
typedef std::map< uint32_t,
signal_map_type
signalMaps
 
typedef std::map< unsigned int,
std::vector< float >
, std::less< unsigned int > > 
simlink_map
 

Private Member Functions

void add_noise (const PixelGeomDetUnit *pixdet, float thePixelThreshold, CLHEP::HepRandomEngine *)
 
double calcQ (float x) const
 
void drift (const PSimHit &hit, const PixelGeomDetUnit *pixdet, const GlobalVector &bfield, const TrackerTopology *tTopo, const std::vector< EnergyDepositUnit > &ionization_points, std::vector< SignalPoint > &collection_points) const
 
LocalVector DriftDirection (const PixelGeomDetUnit *pixdet, const GlobalVector &bfield, const DetId &detId) const
 
void fluctuateEloss (int particleId, float momentum, float eloss, float length, int NumberOfSegments, float elossVector[], CLHEP::HepRandomEngine *) const
 
void induce_signal (const PSimHit &hit, const size_t hitIndex, const unsigned int tofBin, const PixelGeomDetUnit *pixdet, const std::vector< SignalPoint > &collection_points)
 
std::map< int, CalParameters,
std::less< int > > 
initCal () const
 
void make_digis (float thePixelThresholdInE, uint32_t detID, const PixelGeomDetUnit *pixdet, std::vector< PixelDigi > &digis, std::vector< PixelDigiSimLink > &simlinks, const TrackerTopology *tTopo) const
 
float missCalibrate (uint32_t detID, const PixelGeomDetUnit *pixdet, int col, int row, float amp) const
 
void module_killing_conf (uint32_t detID)
 
void module_killing_DB (uint32_t detID)
 
float pixel_aging (const PixelAging &aging, const PixelGeomDetUnit *pixdet, const TrackerTopology *tTopo) const
 
void pixel_inefficiency (const PixelEfficiencies &eff, const PixelGeomDetUnit *pixdet, const TrackerTopology *tTopo, CLHEP::HepRandomEngine *)
 
void pixel_inefficiency_db (uint32_t detID)
 
void primary_ionization (const PSimHit &hit, std::vector< EnergyDepositUnit > &ionization_points, CLHEP::HepRandomEngine *) const
 

Private Attributes

signalMaps _signal
 
const bool addChargeVCALSmearing
 
const bool addNoise
 
const bool addNoisyPixels
 
const bool AddPixelAging
 
const bool AddPixelInefficiency
 
const bool addThresholdSmearing
 
const bool alpha2Order
 
const float BPix_p0
 
const float BPix_p1
 
const float BPix_p2
 
const float BPix_p3
 
const std::map< int,
CalParameters, std::less< int > > 
calmap
 
const float ClusterWidth
 
const Parameters DeadModules
 
const float Dist300
 
const bool doMissCalibrate
 
const double electronsPerVCAL
 
const double electronsPerVCAL_Offset
 
const std::unique_ptr
< SiG4UniversalFluctuation
fluctuate
 
const bool fluctuateCharge
 
const float FPix_p0
 
const float FPix_p1
 
const float FPix_p2
 
const float FPix_p3
 
edm::ESHandle< TrackerGeometrygeom_
 
const float GeVperElectron
 
const bool makeDigiSimLinks_
 
edm::ESHandle
< SiPixelFedCablingMap
map_
 
const int NumberOfBarrelLayers
 
const int NumberOfEndcapDisks
 
const PixelAging pixelAging_
 
PixelEfficiencies pixelEfficiencies_
 
const float Sigma0
 
edm::ESHandle< SiPixelQualitySiPixelBadModule_
 
edm::ESHandle
< SiPixelDynamicInefficiency
SiPixelDynamicInefficiency_
 
edm::ESHandle
< SiPixelLorentzAngle
SiPixelLorentzAngle_
 
const float tanLorentzAnglePerTesla_BPix
 
const float tanLorentzAnglePerTesla_FPix
 
const int theAdcFullScale
 
const int theAdcFullScaleStack
 
const float theElectronPerADC
 
const float theGainSmearing
 
const float theNoiseInElectrons
 
const std::unique_ptr
< GaussianTailNoiseGenerator
theNoiser
 
const float theOffsetSmearing
 
const float theReadoutNoise
 
const std::unique_ptr
< SiPixelGainCalibrationOfflineSimService
theSiPixelGainCalibrationService_
 
const float theThresholdInE_BPix
 
const float theThresholdInE_BPix_L1
 
const float theThresholdInE_FPix
 
const double theThresholdSmearing_BPix
 
const double theThresholdSmearing_BPix_L1
 
const double theThresholdSmearing_FPix
 
const float theTofLowerCut
 
const float theTofUpperCut
 
const double tMax
 
const bool use_deadmodule_DB_
 
const bool use_ineff_from_db_
 
const bool use_LorentzAngle_DB_
 
const bool use_module_killing_
 

Detailed Description

Definition at line 44 of file SiPixelDigitizerAlgorithm.h.

Member Typedef Documentation

Definition at line 293 of file SiPixelDigitizerAlgorithm.h.

Definition at line 294 of file SiPixelDigitizerAlgorithm.h.

typedef signal_map_type::const_iterator SiPixelDigitizerAlgorithm::signal_map_const_iterator
private

Definition at line 290 of file SiPixelDigitizerAlgorithm.h.

typedef signal_map_type::iterator SiPixelDigitizerAlgorithm::signal_map_iterator
private

Definition at line 289 of file SiPixelDigitizerAlgorithm.h.

typedef std::map<int, Amplitude, std::less<int> > SiPixelDigitizerAlgorithm::signal_map_type
private

Definition at line 288 of file SiPixelDigitizerAlgorithm.h.

typedef std::map<uint32_t, signal_map_type> SiPixelDigitizerAlgorithm::signalMaps
private

Definition at line 292 of file SiPixelDigitizerAlgorithm.h.

typedef std::map<unsigned int, std::vector<float>,std::less<unsigned int> > SiPixelDigitizerAlgorithm::simlink_map
private

Definition at line 291 of file SiPixelDigitizerAlgorithm.h.

Constructor & Destructor Documentation

SiPixelDigitizerAlgorithm::SiPixelDigitizerAlgorithm ( const edm::ParameterSet conf)

Definition at line 126 of file SiPixelDigitizerAlgorithm.cc.

SiPixelDigitizerAlgorithm::~SiPixelDigitizerAlgorithm ( )

Definition at line 354 of file SiPixelDigitizerAlgorithm.cc.

Member Function Documentation

void SiPixelDigitizerAlgorithm::accumulateSimHits ( const std::vector< PSimHit >::const_iterator  inputBegin,
const std::vector< PSimHit >::const_iterator  inputEnd,
const size_t  inputBeginGlobalIndex,
const unsigned int  tofBin,
const PixelGeomDetUnit pixdet,
const GlobalVector bfield,
const TrackerTopology tTopo,
CLHEP::HepRandomEngine *  engine 
)

Definition at line 586 of file SiPixelDigitizerAlgorithm.cc.

void SiPixelDigitizerAlgorithm::add_noise ( const PixelGeomDetUnit pixdet,
float  thePixelThreshold,
CLHEP::HepRandomEngine *  engine 
)
private

Definition at line 1341 of file SiPixelDigitizerAlgorithm.cc.

double SiPixelDigitizerAlgorithm::calcQ ( float  x) const
inlineprivate

Definition at line 446 of file SiPixelDigitizerAlgorithm.h.

void SiPixelDigitizerAlgorithm::calculateInstlumiFactor ( PileupMixingContent puInfo)

Definition at line 632 of file SiPixelDigitizerAlgorithm.cc.

void SiPixelDigitizerAlgorithm::digitize ( const PixelGeomDetUnit pixdet,
std::vector< PixelDigi > &  digis,
std::vector< PixelDigiSimLink > &  simlinks,
const TrackerTopology tTopo,
CLHEP::HepRandomEngine *  engine 
)

Definition at line 671 of file SiPixelDigitizerAlgorithm.cc.

void SiPixelDigitizerAlgorithm::drift ( const PSimHit hit,
const PixelGeomDetUnit pixdet,
const GlobalVector bfield,
const TrackerTopology tTopo,
const std::vector< EnergyDepositUnit > &  ionization_points,
std::vector< SignalPoint > &  collection_points 
) const
private

Definition at line 885 of file SiPixelDigitizerAlgorithm.cc.

LocalVector SiPixelDigitizerAlgorithm::DriftDirection ( const PixelGeomDetUnit pixdet,
const GlobalVector bfield,
const DetId detId 
) const
private

Definition at line 1741 of file SiPixelDigitizerAlgorithm.cc.

void SiPixelDigitizerAlgorithm::fluctuateEloss ( int  particleId,
float  momentum,
float  eloss,
float  length,
int  NumberOfSegments,
float  elossVector[],
CLHEP::HepRandomEngine *  engine 
) const
private

Definition at line 830 of file SiPixelDigitizerAlgorithm.cc.

void SiPixelDigitizerAlgorithm::induce_signal ( const PSimHit hit,
const size_t  hitIndex,
const unsigned int  tofBin,
const PixelGeomDetUnit pixdet,
const std::vector< SignalPoint > &  collection_points 
)
private

Definition at line 1010 of file SiPixelDigitizerAlgorithm.cc.

void SiPixelDigitizerAlgorithm::init ( const edm::EventSetup es)

Definition at line 108 of file SiPixelDigitizerAlgorithm.cc.

void SiPixelDigitizerAlgorithm::init_DynIneffDB ( const edm::EventSetup es,
const unsigned int &  bunchspace 
)

Definition at line 483 of file SiPixelDigitizerAlgorithm.cc.

std::map< int, SiPixelDigitizerAlgorithm::CalParameters, std::less< int > > SiPixelDigitizerAlgorithm::initCal ( ) const
private

Definition at line 262 of file SiPixelDigitizerAlgorithm.cc.

void SiPixelDigitizerAlgorithm::initializeEvent ( )
inline

Definition at line 52 of file SiPixelDigitizerAlgorithm.h.

void SiPixelDigitizerAlgorithm::make_digis ( float  thePixelThresholdInE,
uint32_t  detID,
const PixelGeomDetUnit pixdet,
std::vector< PixelDigi > &  digis,
std::vector< PixelDigiSimLink > &  simlinks,
const TrackerTopology tTopo 
) const
private

Definition at line 1242 of file SiPixelDigitizerAlgorithm.cc.

float SiPixelDigitizerAlgorithm::missCalibrate ( uint32_t  detID,
const PixelGeomDetUnit pixdet,
int  col,
int  row,
float  amp 
) const
private

Definition at line 1659 of file SiPixelDigitizerAlgorithm.cc.

void SiPixelDigitizerAlgorithm::module_killing_conf ( uint32_t  detID)
private

Definition at line 1838 of file SiPixelDigitizerAlgorithm.cc.

void SiPixelDigitizerAlgorithm::module_killing_DB ( uint32_t  detID)
private

Definition at line 1879 of file SiPixelDigitizerAlgorithm.cc.

float SiPixelDigitizerAlgorithm::pixel_aging ( const PixelAging aging,
const PixelGeomDetUnit pixdet,
const TrackerTopology tTopo 
) const
private

Definition at line 1606 of file SiPixelDigitizerAlgorithm.cc.

void SiPixelDigitizerAlgorithm::pixel_inefficiency ( const PixelEfficiencies eff,
const PixelGeomDetUnit pixdet,
const TrackerTopology tTopo,
CLHEP::HepRandomEngine *  engine 
)
private

Definition at line 1454 of file SiPixelDigitizerAlgorithm.cc.

void SiPixelDigitizerAlgorithm::pixel_inefficiency_db ( uint32_t  detID)
private

Definition at line 1815 of file SiPixelDigitizerAlgorithm.cc.

void SiPixelDigitizerAlgorithm::primary_ionization ( const PSimHit hit,
std::vector< EnergyDepositUnit > &  ionization_points,
CLHEP::HepRandomEngine *  engine 
) const
private

Definition at line 758 of file SiPixelDigitizerAlgorithm.cc.

Member Data Documentation

signalMaps SiPixelDigitizerAlgorithm::_signal
private

Definition at line 297 of file SiPixelDigitizerAlgorithm.h.

const bool SiPixelDigitizerAlgorithm::addChargeVCALSmearing
private

Definition at line 362 of file SiPixelDigitizerAlgorithm.h.

const bool SiPixelDigitizerAlgorithm::addNoise
private

Definition at line 361 of file SiPixelDigitizerAlgorithm.h.

const bool SiPixelDigitizerAlgorithm::addNoisyPixels
private

Definition at line 363 of file SiPixelDigitizerAlgorithm.h.

const bool SiPixelDigitizerAlgorithm::AddPixelAging
private

Definition at line 376 of file SiPixelDigitizerAlgorithm.h.

const bool SiPixelDigitizerAlgorithm::AddPixelInefficiency
private

Definition at line 366 of file SiPixelDigitizerAlgorithm.h.

const bool SiPixelDigitizerAlgorithm::addThresholdSmearing
private

Definition at line 368 of file SiPixelDigitizerAlgorithm.h.

const bool SiPixelDigitizerAlgorithm::alpha2Order
private

Definition at line 316 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::BPix_p0
private

Definition at line 354 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::BPix_p1
private

Definition at line 355 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::BPix_p2
private

Definition at line 356 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::BPix_p3
private

Definition at line 357 of file SiPixelDigitizerAlgorithm.h.

const std::map<int,CalParameters,std::less<int> > SiPixelDigitizerAlgorithm::calmap
private

Definition at line 391 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::ClusterWidth
private

Definition at line 321 of file SiPixelDigitizerAlgorithm.h.

const Parameters SiPixelDigitizerAlgorithm::DeadModules
private

Definition at line 306 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::Dist300
private

Definition at line 315 of file SiPixelDigitizerAlgorithm.h.

const bool SiPixelDigitizerAlgorithm::doMissCalibrate
private

Definition at line 371 of file SiPixelDigitizerAlgorithm.h.

const double SiPixelDigitizerAlgorithm::electronsPerVCAL
private

Definition at line 342 of file SiPixelDigitizerAlgorithm.h.

const double SiPixelDigitizerAlgorithm::electronsPerVCAL_Offset
private

Definition at line 343 of file SiPixelDigitizerAlgorithm.h.

const std::unique_ptr<SiG4UniversalFluctuation> SiPixelDigitizerAlgorithm::fluctuate
private

Definition at line 387 of file SiPixelDigitizerAlgorithm.h.

const bool SiPixelDigitizerAlgorithm::fluctuateCharge
private

Definition at line 364 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::FPix_p0
private

Definition at line 350 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::FPix_p1
private

Definition at line 351 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::FPix_p2
private

Definition at line 352 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::FPix_p3
private

Definition at line 353 of file SiPixelDigitizerAlgorithm.h.

edm::ESHandle<TrackerGeometry> SiPixelDigitizerAlgorithm::geom_
private

Definition at line 83 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::GeVperElectron
private

Definition at line 311 of file SiPixelDigitizerAlgorithm.h.

const bool SiPixelDigitizerAlgorithm::makeDigiSimLinks_
private

Definition at line 299 of file SiPixelDigitizerAlgorithm.h.

edm::ESHandle<SiPixelFedCablingMap> SiPixelDigitizerAlgorithm::map_
private

Definition at line 82 of file SiPixelDigitizerAlgorithm.h.

const int SiPixelDigitizerAlgorithm::NumberOfBarrelLayers
private

Definition at line 323 of file SiPixelDigitizerAlgorithm.h.

const int SiPixelDigitizerAlgorithm::NumberOfEndcapDisks
private

Definition at line 324 of file SiPixelDigitizerAlgorithm.h.

const PixelAging SiPixelDigitizerAlgorithm::pixelAging_
private

Definition at line 444 of file SiPixelDigitizerAlgorithm.h.

PixelEfficiencies SiPixelDigitizerAlgorithm::pixelEfficiencies_
private

Definition at line 443 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::Sigma0
private

Definition at line 314 of file SiPixelDigitizerAlgorithm.h.

edm::ESHandle<SiPixelQuality> SiPixelDigitizerAlgorithm::SiPixelBadModule_
private

Definition at line 79 of file SiPixelDigitizerAlgorithm.h.

edm::ESHandle<SiPixelDynamicInefficiency> SiPixelDigitizerAlgorithm::SiPixelDynamicInefficiency_
private

Definition at line 86 of file SiPixelDigitizerAlgorithm.h.

edm::ESHandle<SiPixelLorentzAngle> SiPixelDigitizerAlgorithm::SiPixelLorentzAngle_
private

Definition at line 76 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::tanLorentzAnglePerTesla_BPix
private

Definition at line 348 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::tanLorentzAnglePerTesla_FPix
private

Definition at line 347 of file SiPixelDigitizerAlgorithm.h.

const int SiPixelDigitizerAlgorithm::theAdcFullScale
private

Definition at line 328 of file SiPixelDigitizerAlgorithm.h.

const int SiPixelDigitizerAlgorithm::theAdcFullScaleStack
private

Definition at line 329 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::theElectronPerADC
private

Definition at line 327 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::theGainSmearing
private

Definition at line 372 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::theNoiseInElectrons
private

Definition at line 330 of file SiPixelDigitizerAlgorithm.h.

const std::unique_ptr<GaussianTailNoiseGenerator> SiPixelDigitizerAlgorithm::theNoiser
private

Definition at line 388 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::theOffsetSmearing
private

Definition at line 373 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::theReadoutNoise
private

Definition at line 331 of file SiPixelDigitizerAlgorithm.h.

const std::unique_ptr<SiPixelGainCalibrationOfflineSimService> SiPixelDigitizerAlgorithm::theSiPixelGainCalibrationService_
private

Definition at line 434 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::theThresholdInE_BPix
private

Definition at line 335 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::theThresholdInE_BPix_L1
private

Definition at line 336 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::theThresholdInE_FPix
private

Definition at line 334 of file SiPixelDigitizerAlgorithm.h.

const double SiPixelDigitizerAlgorithm::theThresholdSmearing_BPix
private

Definition at line 339 of file SiPixelDigitizerAlgorithm.h.

const double SiPixelDigitizerAlgorithm::theThresholdSmearing_BPix_L1
private

Definition at line 340 of file SiPixelDigitizerAlgorithm.h.

const double SiPixelDigitizerAlgorithm::theThresholdSmearing_FPix
private

Definition at line 338 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::theTofLowerCut
private

Definition at line 345 of file SiPixelDigitizerAlgorithm.h.

const float SiPixelDigitizerAlgorithm::theTofUpperCut
private

Definition at line 346 of file SiPixelDigitizerAlgorithm.h.

const double SiPixelDigitizerAlgorithm::tMax
private

Definition at line 383 of file SiPixelDigitizerAlgorithm.h.

const bool SiPixelDigitizerAlgorithm::use_deadmodule_DB_
private

Definition at line 303 of file SiPixelDigitizerAlgorithm.h.

const bool SiPixelDigitizerAlgorithm::use_ineff_from_db_
private

Definition at line 301 of file SiPixelDigitizerAlgorithm.h.

const bool SiPixelDigitizerAlgorithm::use_LorentzAngle_DB_
private

Definition at line 304 of file SiPixelDigitizerAlgorithm.h.

const bool SiPixelDigitizerAlgorithm::use_module_killing_
private

Definition at line 302 of file SiPixelDigitizerAlgorithm.h.