CMS 3D CMS Logo

HGCUncalibRecHitsToRecHitsConstants.h
Go to the documentation of this file.
1 #ifndef CUDADataFormats_HGCal_HGCUncalibRecHitsToRecHitsConstants_h
2 #define CUDADataFormats_HGCal_HGCUncalibRecHitsToRecHitsConstants_h
3 
4 #include <cstdint>
5 #include <cstddef>
6 #include <vector>
7 
9 public:
10  std::vector<double> fCPerMIP_;
11  std::vector<double> cce_;
12  std::vector<double> noise_fC_;
13  std::vector<double> rcorr_;
14  std::vector<double> weights_;
15 };
16 
18 public:
19  static constexpr size_t ee_fCPerMIP = 3; //number of elements pointed by hgcEE_fCPerMIP_
20  static constexpr size_t ee_cce = 3; //number of elements pointed by hgcEE_cce_
21  static constexpr size_t ee_noise_fC = 3; //number of elements pointed by hgcEE_noise_fC_
22  static constexpr size_t ee_rcorr = 3; //number of elements pointed by rcorr_
23  static constexpr size_t ee_weights = 51; //number of elements posize_ted by weights_
24 
25  double fCPerMIP_[ee_fCPerMIP]; //femto coloumb to MIP conversion; one value per sensor thickness
26  double cce_[ee_cce]; //charge collection efficiency, one value per sensor thickness
27  double noise_fC_[ee_noise_fC]; //noise, one value per sensor thickness
28  double rcorr_[ee_rcorr]; //thickness correction
29  double weights_[ee_weights]; //energy weights to recover rechit energy deposited in the absorber
30 
31  double keV2DIGI_; //energy to femto coloumb conversion: 1000 eV/3.62 (eV per e) / 6.24150934e3 (e per fC)
32  double uncalib2GeV_; //sets the ADC; obtained by dividing 1e-6 by hgcEE_keV2DIGI_
33  float xmin_; //used for computing the time resolution error
34  float xmax_; //used for computing the time resolution error
35  float aterm_; //used for computing the time resolution error
36  float cterm_; //used for computing the time resolution error
37 };
38 
40 public:
41  static constexpr size_t hef_fCPerMIP = 3; //number of elements pointed by hgcEE_fCPerMIP_
42  static constexpr size_t hef_cce = 3; //number of elements pointed by hgcEE_cce_
43  static constexpr size_t hef_noise_fC = 3; //number of elements pointed by hgcEE_noise_fC_
44  static constexpr size_t hef_rcorr = 3; //number of elements pointed by rcorr_
45  static constexpr size_t hef_weights = 51; //number of elements pointed by weights_
46 
47  double fCPerMIP_[hef_fCPerMIP]; //femto coloumb to MIP conversion; one value per sensor thickness
48  double cce_[hef_cce]; //charge collection efficiency, one value per sensor thickness
49  double noise_fC_[hef_noise_fC]; //noise, one value per sensor thickness
50  double rcorr_[hef_rcorr]; //thickness correction
51  double weights_[hef_weights]; //energy weights to recover rechit energy deposited in the absorber
52 
53  double keV2DIGI_; //energy to femto coloumb conversion: 1000 eV/3.62 (eV per e) / 6.24150934e3 (e per fC)
54  double uncalib2GeV_; //sets the ADC; obtained by dividing 1e-6 by hgcHEF_keV2DIGI_
55  float xmin_; //used for computing the time resolution error
56  float xmax_; //used for computing the time resolution error
57  float aterm_; //used for computing the time resolution error
58  float cterm_; //used for computing the time resolution error
59  std::int32_t layerOffset_; //layer offset relative to layer#1 of the EE subsetector
60 };
61 
63 public:
64  static constexpr size_t heb_weights = 51; //number of elements pointed by weights_
65 
66  double weights_[heb_weights]; //energy weights to recover rechit energy deposited in the absorber
67 
68  double keV2DIGI_; //energy to femto coloumb conversion: 1000 eV/3.62 (eV per e) / 6.24150934e3 (e per fC)
69  double uncalib2GeV_; //sets the ADC; obtained by dividing 1e-6 by hgcHEB_keV2DIGI_
70  double noise_MIP_; //noise
71  std::int32_t layerOffset_; //layer offset relative to layer#1 of the EE subsetector
72 };
73 
74 #endif