CMS 3D CMS Logo

SiPixelChargeReweightingAlgorithm.h
Go to the documentation of this file.
1 #ifndef SimTracker_SiPixelDigitizer_SiPixelChargeReweightingAlgorithm_h
2 #define SimTracker_SiPixelDigitizer_SiPixelChargeReweightingAlgorithm_h
3 
8 
9 // forward declarations
10 class DetId;
12 class PixelDigi;
13 class PixelDigiSimLink;
14 class PixelGeomDetUnit;
16 
18 public:
21 
22  // initialization that cannot be done in the constructor
23  void init(const edm::EventSetup& es);
24 
25  typedef std::map<int, SiPixelDigitizerAlgorithm::Amplitude, std::less<int> > signal_map_type; // from Digi.Skel.
26  typedef signal_map_type::iterator signal_map_iterator; // from Digi.Skel.
27  typedef signal_map_type::const_iterator signal_map_const_iterator; // from Digi.Skel.
28 
29  bool hitSignalReweight(const PSimHit& hit,
30  std::map<int, float, std::less<int> >& hit_signal,
31  const size_t hitIndex,
32  const unsigned int tofBin,
33  const PixelTopology* topol,
34  uint32_t detID,
35  signal_map_type& theSignal,
36  unsigned short int processType,
37  const bool& boolmakeDigiSimLinks);
38 
39 private:
40  // Internal typedef
41  typedef std::map<uint32_t, signal_map_type> signalMaps;
43  typedef std::vector<edm::ParameterSet> Parameters;
44  typedef boost::multi_array<float, 2> array_2d;
45 
46  // Variables and objects for the charge reweighting using 2D templates
48  std::vector<bool> xdouble;
49  std::vector<bool> ydouble;
50  std::vector<float> track;
51  int IDnum, IDden;
52 
53  const bool UseReweighting;
54  const bool PrintClusters;
55  const bool PrintTemplates;
56 
57  std::vector<SiPixelTemplateStore2D> templateStores_;
58 
63 
64  // methods for charge reweighting in irradiated sensors
65  int PixelTempRewgt2D(int id_gen, int id_rewgt, array_2d& cluster);
66  void printCluster(array_2d& cluster);
67  void printCluster(float arr[BXM2][BYM2]);
68  void printCluster(float arr[TXSIZE][TYSIZE]);
69 };
70 
71 #endif
GloballyPositioned
Definition: GloballyPositioned.h:18
SiPixel2DTemplateDBObject
Definition: SiPixel2DTemplateDBObject.h:16
SiPixel2DTemplateDBObject.h
SiPixelChargeReweightingAlgorithm::dbobject_num
const SiPixel2DTemplateDBObject * dbobject_num
Definition: SiPixelChargeReweightingAlgorithm.h:62
SiPixelChargeReweightingAlgorithm::signal_map_iterator
signal_map_type::iterator signal_map_iterator
Definition: SiPixelChargeReweightingAlgorithm.h:26
SiPixelChargeReweightingAlgorithm::signal_map_const_iterator
signal_map_type::const_iterator signal_map_const_iterator
Definition: SiPixelChargeReweightingAlgorithm.h:27
SiPixelChargeReweightingAlgorithm::signal_map_type
std::map< int, SiPixelDigitizerAlgorithm::Amplitude, std::less< int > > signal_map_type
Definition: SiPixelChargeReweightingAlgorithm.h:25
SiPixelChargeReweightingAlgorithm::signalMaps
std::map< uint32_t, signal_map_type > signalMaps
Definition: SiPixelChargeReweightingAlgorithm.h:41
SiPixelChargeReweightingAlgorithm::templ2D
SiPixelTemplate2D templ2D
Definition: SiPixelChargeReweightingAlgorithm.h:47
GaussianTailNoiseGenerator
Definition: GaussianTailNoiseGenerator.h:24
SiPixelChargeReweightingAlgorithm::PixelTempRewgt2D
int PixelTempRewgt2D(int id_gen, int id_rewgt, array_2d &cluster)
Definition: SiPixelChargeReweightingAlgorithm.cc:305
PixelDigi
Definition: PixelDigi.h:14
SiPixelChargeReweightingAlgorithm::init
void init(const edm::EventSetup &es)
Definition: SiPixelChargeReweightingAlgorithm.cc:39
SiPixelChargeReweightingAlgorithm::Frame
GloballyPositioned< double > Frame
Definition: SiPixelChargeReweightingAlgorithm.h:42
SiPixelChargeReweightingAlgorithm::UseReweighting
const bool UseReweighting
Definition: SiPixelChargeReweightingAlgorithm.h:53
SiPixelChargeReweightingAlgorithm::IDnum
int IDnum
Definition: SiPixelChargeReweightingAlgorithm.h:51
TXSIZE
#define TXSIZE
Definition: SiPixelTemplateDefs.h:30
SiPixelTemplate2D
Definition: SiPixelTemplate2D.h:128
DetId
Definition: DetId.h:17
SiPixelChargeReweightingAlgorithm::hitSignalReweight
bool hitSignalReweight(const PSimHit &hit, std::map< int, float, std::less< int > > &hit_signal, const size_t hitIndex, const unsigned int tofBin, const PixelTopology *topol, uint32_t detID, signal_map_type &theSignal, unsigned short int processType, const bool &boolmakeDigiSimLinks)
Definition: SiPixelChargeReweightingAlgorithm.cc:84
SiPixelChargeReweightingAlgorithm
Definition: SiPixelChargeReweightingAlgorithm.h:17
BYM2
#define BYM2
Definition: SiPixelTemplateDefs.h:28
SiPixelChargeReweightingAlgorithm::xdouble
std::vector< bool > xdouble
Definition: SiPixelChargeReweightingAlgorithm.h:48
SiPixelChargeReweightingAlgorithm::templateStores_
std::vector< SiPixelTemplateStore2D > templateStores_
Definition: SiPixelChargeReweightingAlgorithm.h:57
SiPixelChargeReweightingAlgorithm::PrintTemplates
const bool PrintTemplates
Definition: SiPixelChargeReweightingAlgorithm.h:55
BXM2
#define BXM2
Definition: SiPixelTemplateDefs.h:36
PixelGeomDetUnit
Definition: PixelGeomDetUnit.h:15
SiPixelChargeReweightingAlgorithm::ydouble
std::vector< bool > ydouble
Definition: SiPixelChargeReweightingAlgorithm.h:49
PixelTopology
Definition: PixelTopology.h:10
SiPixelChargeReweightingAlgorithm::SiPixel2DTemp_num_token_
edm::ESGetToken< SiPixel2DTemplateDBObject, SiPixel2DTemplateDBObjectRcd > SiPixel2DTemp_num_token_
Definition: SiPixelChargeReweightingAlgorithm.h:60
SiPixelChargeReweightingAlgorithm::track
std::vector< float > track
Definition: SiPixelChargeReweightingAlgorithm.h:50
SiPixelChargeReweightingAlgorithm::SiPixel2DTemp_den_token_
edm::ESGetToken< SiPixel2DTemplateDBObject, SiPixel2DTemplateDBObjectRcd > SiPixel2DTemp_den_token_
Definition: SiPixelChargeReweightingAlgorithm.h:59
edm::ParameterSet
Definition: ParameterSet.h:47
FrameworkfwdMostUsed.h
TYSIZE
#define TYSIZE
Definition: SiPixelTemplateDefs.h:21
SiPixelChargeReweightingAlgorithm::printCluster
void printCluster(array_2d &cluster)
Definition: SiPixelChargeReweightingAlgorithm.cc:528
edm::EventSetup
Definition: EventSetup.h:58
SiPixelChargeReweightingAlgorithm::array_2d
boost::multi_array< float, 2 > array_2d
Definition: SiPixelChargeReweightingAlgorithm.h:44
SiPixelChargeReweightingAlgorithm::IDden
int IDden
Definition: SiPixelChargeReweightingAlgorithm.h:51
edm::ESGetToken< SiPixel2DTemplateDBObject, SiPixel2DTemplateDBObjectRcd >
SiPixelChargeReweightingAlgorithm::~SiPixelChargeReweightingAlgorithm
~SiPixelChargeReweightingAlgorithm()
Definition: SiPixelChargeReweightingAlgorithm.cc:78
SiPixel2DTemplateDBObjectRcd.h
SiPixelChargeReweightingAlgorithm::Parameters
std::vector< edm::ParameterSet > Parameters
Definition: SiPixelChargeReweightingAlgorithm.h:43
SiG4UniversalFluctuation
Definition: SiG4UniversalFluctuation.h:25
genParticles_cff.map
map
Definition: genParticles_cff.py:11
PSimHit
Definition: PSimHit.h:15
SiPixelDigitizerAlgorithm.h
SiPixelChargeReweightingAlgorithm::PrintClusters
const bool PrintClusters
Definition: SiPixelChargeReweightingAlgorithm.h:54
edm::ConsumesCollector
Definition: ConsumesCollector.h:45
hit
Definition: SiStripHitEffFromCalibTree.cc:88
SiPixelChargeReweightingAlgorithm::dbobject_den
const SiPixel2DTemplateDBObject * dbobject_den
Definition: SiPixelChargeReweightingAlgorithm.h:61
SiPixelChargeReweightingAlgorithm::SiPixelChargeReweightingAlgorithm
SiPixelChargeReweightingAlgorithm(const edm::ParameterSet &conf, edm::ConsumesCollector iC)
Definition: SiPixelChargeReweightingAlgorithm.cc:56