CMS 3D CMS Logo

PixelCPEGenericBase.h
Go to the documentation of this file.
1 #ifndef RecoLocalTracker_SiPixelRecHits_PixelCPEGenericBase_H
2 #define RecoLocalTracker_SiPixelRecHits_PixelCPEGenericBase_H
3 
4 #include "PixelCPEBase.h"
5 #include <vector>
6 
8 public:
12  // The truncation value pix_maximum is an angle-dependent cutoff on the
13  // individual pixel signals. It should be applied to all pixels in the
14  // cluster [signal_i = fminf(signal_i, pixmax)] before the column and row
15  // sums are made. Morris
16  int pixmx;
17 
18  // These are errors predicted by PIXELAV
19  float sigmay; // CPE Generic y-error for multi-pixel cluster
20  float sigmax; // CPE Generic x-error for multi-pixel cluster
21  float sy1; // CPE Generic y-error for single single-pixel
22  float sy2; // CPE Generic y-error for single double-pixel cluster
23  float sx1; // CPE Generic x-error for single single-pixel cluster
24  float sx2; // CPE Generic x-error for single double-pixel cluster
25 
26  // These are irradiation bias corrections
27  float deltay; // CPE Generic y-bias for multi-pixel cluster
28  float deltax; // CPE Generic x-bias for multi-pixel cluster
29  float dy1; // CPE Generic y-bias for single single-pixel cluster
30  float dy2; // CPE Generic y-bias for single double-pixel cluster
31  float dx1; // CPE Generic x-bias for single single-pixel cluster
32  float dx2; // CPE Generic x-bias for single double-pixel cluster
33  };
34 
36  const MagneticField* mag,
37  const TrackerGeometry& geom,
38  const TrackerTopology& ttopo,
39  const SiPixelLorentzAngle* lorentzAngle,
40  const SiPixelGenErrorDBObject* genErrorDBObject,
41  const SiPixelLorentzAngle* lorentzAngleWidth);
42 
43  ~PixelCPEGenericBase() override = default;
44 
46 
47 protected:
48  std::unique_ptr<ClusterParam> createClusterParam(const SiPixelCluster& cl) const override;
49 
50  static void collect_edge_charges(ClusterParam& theClusterParam,
51  int& q_f_X,
52  int& q_l_X,
53  int& q_f_Y,
54  int& q_l_Y,
55  bool truncate);
56 
57  void initializeLocalErrorVariables(float& xerr,
58  float& yerr,
59  bool& edgex,
60  bool& edgey,
61  bool& bigInX,
62  bool& bigInY,
63  int& maxPixelCol,
64  int& maxPixelRow,
65  int& minPixelCol,
66  int& minPixelRow,
67  uint& sizex,
68  uint& sizey,
69  DetParam const& theDetParam,
70  ClusterParamGeneric const& theClusterParam) const;
71 
72  void setXYErrors(float& xerr,
73  float& yerr,
74  const bool edgex,
75  const bool edgey,
76  const unsigned int sizex,
77  const unsigned int sizey,
78  const bool bigInX,
79  const bool bigInY,
80  const bool useTemplateErrors,
81  DetParam const& theDetParam,
82  ClusterParamGeneric const& theClusterParam) const;
83 
84  const float edgeClusterErrorX_;
85  const float edgeClusterErrorY_;
88 
89  // Rechit errors in case other, more correct, errors are not vailable
90  const std::vector<float> xerr_barrel_l1_, yerr_barrel_l1_, xerr_barrel_ln_;
91  const std::vector<float> yerr_barrel_ln_, xerr_endcap_, yerr_endcap_;
94 };
95 
96 #endif // RecoLocalTracker_SiPixelRecHits_PixelCPEGenericBase_H
PixelCPEGenericBase::yerr_barrel_l1_
const std::vector< float > yerr_barrel_l1_
Definition: PixelCPEGenericBase.h:90
PixelCPEBase::ClusterParam
Definition: PixelCPEBase.h:69
PixelCPEGenericBase::useErrorsFromTemplates_
bool useErrorsFromTemplates_
Definition: PixelCPEGenericBase.h:86
PixelCPEGenericBase::ClusterParamGeneric::sy2
float sy2
Definition: PixelCPEGenericBase.h:22
PixelCPEGenericBase::PixelCPEGenericBase
PixelCPEGenericBase(edm::ParameterSet const &conf, const MagneticField *mag, const TrackerGeometry &geom, const TrackerTopology &ttopo, const SiPixelLorentzAngle *lorentzAngle, const SiPixelGenErrorDBObject *genErrorDBObject, const SiPixelLorentzAngle *lorentzAngleWidth)
Definition: PixelCPEGenericBase.cc:11
TrackerTopology
Definition: TrackerTopology.h:16
PixelCPEGenericBase::yerr_barrel_l1_def_
const float yerr_barrel_l1_def_
Definition: PixelCPEGenericBase.h:92
PixelCPEGenericBase::ClusterParamGeneric::sx1
float sx1
Definition: PixelCPEGenericBase.h:23
PixelCPEGenericBase::ClusterParamGeneric::pixmx
int pixmx
Definition: PixelCPEGenericBase.h:16
PixelCPEGenericBase::initializeLocalErrorVariables
void initializeLocalErrorVariables(float &xerr, float &yerr, bool &edgex, bool &edgey, bool &bigInX, bool &bigInY, int &maxPixelCol, int &maxPixelRow, int &minPixelCol, int &minPixelRow, uint &sizex, uint &sizey, DetParam const &theDetParam, ClusterParamGeneric const &theClusterParam) const
Definition: PixelCPEGenericBase.cc:87
edm::ParameterSetDescription
Definition: ParameterSetDescription.h:52
PixelCPEGenericBase::ClusterParamGeneric::sy1
float sy1
Definition: PixelCPEGenericBase.h:21
PixelCPEGenericBase::fillPSetDescription
static void fillPSetDescription(edm::ParameterSetDescription &desc)
Definition: PixelCPEGenericBase.cc:217
PixelCPEBase.h
SiPixelCluster
Pixel cluster – collection of neighboring pixels above threshold.
Definition: SiPixelCluster.h:28
PixelCPEGenericBase::yerr_endcap_def_
const float yerr_endcap_def_
Definition: PixelCPEGenericBase.h:93
PixelCPEGenericBase::xerr_barrel_ln_def_
const float xerr_barrel_ln_def_
Definition: PixelCPEGenericBase.h:92
PixelCPEGenericBase::edgeClusterErrorX_
const float edgeClusterErrorX_
Definition: PixelCPEGenericBase.h:84
parallelization.uint
uint
Definition: parallelization.py:124
PixelCPEGenericBase::ClusterParamGeneric::sigmax
float sigmax
Definition: PixelCPEGenericBase.h:20
PixelCPEGenericBase::ClusterParamGeneric
Definition: PixelCPEGenericBase.h:9
GetRecoTauVFromDQM_MC_cff.cl
cl
Definition: GetRecoTauVFromDQM_MC_cff.py:38
PixelCPEGenericBase::collect_edge_charges
static void collect_edge_charges(ClusterParam &theClusterParam, int &q_f_X, int &q_l_X, int &q_f_Y, int &q_l_Y, bool truncate)
Definition: PixelCPEGenericBase.cc:45
SiPixelLorentzAngle
Definition: SiPixelLorentzAngle.h:11
relativeConstraints.geom
geom
Definition: relativeConstraints.py:72
PixelCPEGenericBase::xerr_barrel_l1_def_
const float xerr_barrel_l1_def_
Definition: PixelCPEGenericBase.h:92
PixelCPEGenericBase::~PixelCPEGenericBase
~PixelCPEGenericBase() override=default
PixelCPEGenericBase::ClusterParamGeneric::sx2
float sx2
Definition: PixelCPEGenericBase.h:24
PixelCPEGenericBase::xerr_barrel_l1_
const std::vector< float > xerr_barrel_l1_
Definition: PixelCPEGenericBase.h:90
edm::ParameterSet
Definition: ParameterSet.h:47
PixelCPEGenericBase::truncatePixelCharge_
const bool truncatePixelCharge_
Definition: PixelCPEGenericBase.h:87
PixelCPEGenericBase::xerr_endcap_def_
const float xerr_endcap_def_
Definition: PixelCPEGenericBase.h:93
PixelCPEGenericBase::xerr_barrel_ln_
const std::vector< float > xerr_barrel_ln_
Definition: PixelCPEGenericBase.h:90
PixelCPEGenericBase::edgeClusterErrorY_
const float edgeClusterErrorY_
Definition: PixelCPEGenericBase.h:85
PixelCPEGenericBase::createClusterParam
std::unique_ptr< ClusterParam > createClusterParam(const SiPixelCluster &cl) const override
Definition: PixelCPEGenericBase.cc:36
PixelCPEGenericBase
Definition: PixelCPEGenericBase.h:7
PixelCPEGenericBase::ClusterParamGeneric::dy2
float dy2
Definition: PixelCPEGenericBase.h:30
mag
T mag() const
The vector magnitude. Equivalent to sqrt(vec.mag2())
Definition: Basic3DVectorLD.h:127
PixelCPEBase::DetParam
Definition: PixelCPEBase.h:45
submitPVResolutionJobs.desc
string desc
Definition: submitPVResolutionJobs.py:251
PixelCPEGenericBase::ClusterParamGeneric::sigmay
float sigmay
Definition: PixelCPEGenericBase.h:19
PixelCPEGenericBase::ClusterParamGeneric::deltay
float deltay
Definition: PixelCPEGenericBase.h:27
PixelCPEBase
Definition: PixelCPEBase.h:43
PixelCPEGenericBase::ClusterParamGeneric::dy1
float dy1
Definition: PixelCPEGenericBase.h:29
PixelCPEGenericBase::ClusterParamGeneric::ClusterParamGeneric
ClusterParamGeneric()
Definition: PixelCPEGenericBase.h:10
PixelCPEGenericBase::setXYErrors
void setXYErrors(float &xerr, float &yerr, const bool edgex, const bool edgey, const unsigned int sizex, const unsigned int sizey, const bool bigInX, const bool bigInY, const bool useTemplateErrors, DetParam const &theDetParam, ClusterParamGeneric const &theClusterParam) const
Definition: PixelCPEGenericBase.cc:125
PixelCPEGenericBase::ClusterParamGeneric::dx1
float dx1
Definition: PixelCPEGenericBase.h:31
SiPixelGenErrorDBObject
Definition: SiPixelGenErrorDBObject.h:16
PixelCPEGenericBase::xerr_endcap_
const std::vector< float > xerr_endcap_
Definition: PixelCPEGenericBase.h:91
PixelCPEGenericBase::ClusterParamGeneric::ClusterParamGeneric
ClusterParamGeneric(const SiPixelCluster &cl)
Definition: PixelCPEGenericBase.h:11
PixelCPEGenericBase::yerr_barrel_ln_
const std::vector< float > yerr_barrel_ln_
Definition: PixelCPEGenericBase.h:91
PixelCPEGenericBase::yerr_endcap_
const std::vector< float > yerr_endcap_
Definition: PixelCPEGenericBase.h:91
MagneticField
Definition: MagneticField.h:19
PixelCPEGenericBase::ClusterParamGeneric::dx2
float dx2
Definition: PixelCPEGenericBase.h:32
TrackerGeometry
Definition: TrackerGeometry.h:14
PixelCPEGenericBase::ClusterParamGeneric::deltax
float deltax
Definition: PixelCPEGenericBase.h:28
PixelCPEGenericBase::yerr_barrel_ln_def_
const float yerr_barrel_ln_def_
Definition: PixelCPEGenericBase.h:93