CMS 3D CMS Logo

big.h
Go to the documentation of this file.
1 #ifndef big_h
2 #define big_h 1
4 
5 #include <vector>
6 #include <string>
8 class big {
9 public:
11  //constructor
12  tVector_.reserve(1000);
13  thVector_.reserve(1000);
14  sVector_.reserve(1000);
15  }
16  void fill(size_t tVectorSize, size_t thVectorSize, size_t sVectorSize, const std::string& atitle);
17 
19  class bigEntry {
20  public:
21  //constructor
23  par.reserve(parIDX::SIZE);
24  ytemp.reserve(ytempIDX::SIZE);
25  xtemp.reserve(xtempIDX::SIZE);
26  avg.reserve(avgIDX::SIZE);
27  aqfl.reserve(aqflIDX::SIZE);
28  chi2.reserve(chi2IDX::SIZE);
29  spare.reserve(spareIDX::SIZE);
30  }
31  void fill(int runnum, float seed);
32 
33  public:
34  int runnum;
35  float alpha;
36  float cotalpha;
37  float beta;
38  float cotbeta;
39  float costrk[3];
40  float qavg;
41  float symax;
42  float dyone;
43  float syone;
44  float sxmax;
45  float dxone;
46  float sxone;
47  float dytwo;
48  float sytwo;
49  float dxtwo;
50  float sxtwo;
51  float qmin;
52  //projected pixel uncertainty parameterization, first dimension x,y;
54  std::vector<float> par;
55  //templates for y-reconstruction (binned over 1 central pixel)
57  std::vector<float> ytemp;
58  //templates for x-reconstruction (binned over 1 central pixel)
60  std::vector<float> xtemp;
61  //average parameters (binned in 4 charge bins ), first dimention x,y; second dimention bias,rms,g0,sigma;
63  std::vector<float> avg;
64  //Aqfl-parameterized x,y-correction (in 4 charge bins), first dimension x,y
66  std::vector<float> aqfl;
67  //chi^2 (in 4 charge bins), first dimension x,y; second dimension average, minimum;
69  std::vector<float> chi2;
70  //spare entries, first dimension x,y
72  std::vector<float> spare;
73 
75  }; //inline class bigEntry
76 
77  //inline class bigHeader
78  class bigHeader {
79  public:
80  bigHeader() : title("") {}
81  void fill(const std::string& atitle);
84  int ID;
85  int NBy;
86  int NByx;
87  int NBxx;
88  int NFy;
89  int NFyx;
90  int NFxx;
91  float vbias;
92  float temperature;
93  float fluence;
94  float qscale;
95  float s50;
97 
99  }; //end inline class bigHeader
100 
101  //inline class bigStore
102  class bigStore {
103  public:
104  //constructor
106  entby.reserve(entbyIDX::SIZE);
107  entbx.reserve(entbxIDX::SIZE);
108  entfy.reserve(entfyIDX::SIZE);
109  entfx.reserve(entfxIDX::SIZE);
110  }
111  //dummy filler
112  void fill(const std::string& atitle);
113  //data members
116  std::vector<bigEntry> entby;
118  std::vector<bigEntry> entbx;
120  std::vector<bigEntry> entfy;
122  std::vector<bigEntry> entfx;
123 
125  }; //end inline class bigStore
126 
127  typedef std::vector<bigEntry> entryVector;
128  typedef std::vector<bigHeader> headVector;
129  typedef std::vector<bigStore> storeVector;
130 
131 private:
136  int index_id;
137  float cota_current;
138  float cotb_current;
139  float abs_cotb;
141 
143 }; //end big
144 #endif
std::vector< float > ytemp
Definition: big.h:57
float dytwo
Definition: big.h:47
storeVector sVector_
Definition: big.h:134
int templ_version
Version number of the template to ensure code compatibility.
Definition: big.h:96
float symax
Definition: big.h:41
std::vector< bigEntry > entfx
Definition: big.h:122
float qmin
Definition: big.h:51
TensorIndex< 2, 2, 5 > parIDX
Definition: big.h:53
TensorIndex< 2, 9 > entfxIDX
Definition: big.h:121
float costrk[3]
Definition: big.h:39
std::vector< float > chi2
Definition: big.h:69
int NBy
number of Barrel y entries
Definition: big.h:85
int NFyx
number of FPix y-slices of x entries
Definition: big.h:89
int NBxx
number of Barrel x entries in each slice
Definition: big.h:87
float fluence
radiation fluence in n_eq/cm^2
Definition: big.h:93
float cotalpha
Definition: big.h:36
float sxone
Definition: big.h:46
std::vector< float > avg
Definition: big.h:63
std::vector< float > xtemp
Definition: big.h:60
big()
Definition: big.h:10
float s50
1/2 of the readout threshold in ADC units
Definition: big.h:95
float cotbeta
Definition: big.h:38
void fill(size_t tVectorSize, size_t thVectorSize, size_t sVectorSize, const std::string &atitle)
Definition: big.cc:4
std::vector< bigEntry > entryVector
Definition: big.h:127
std::vector< bigHeader > headVector
Definition: big.h:128
void fill(const std::string &atitle)
Definition: big.cc:90
TensorIndex< 2, 10 > spareIDX
Definition: big.h:71
float sytwo
Definition: big.h:48
std::vector< bigEntry > entfy
Definition: big.h:120
float temperature
detector temperature in deg K
Definition: big.h:92
float vbias
detector bias potential in Volts
Definition: big.h:91
std::vector< float > par
Definition: big.h:54
std::vector< bigEntry > entbx
Definition: big.h:118
headVector thVector_
Definition: big.h:133
int index_id
current index
Definition: big.h:136
int NByx
number of Barrel y-slices of x entries
Definition: big.h:86
float cotb_current
current cot beta
Definition: big.h:138
bigStore()
Definition: big.h:105
bigHeader()
Definition: big.h:80
TensorIndex< 2, 4, 6 > aqflIDX
Definition: big.h:65
int id_current
current id
Definition: big.h:135
inline class bigEntry
Definition: big.h:19
void fill(const std::string &atitle)
Definition: big.cc:107
float alpha
Definition: big.h:35
std::vector< float > spare
Definition: big.h:72
std::string title
data members
Definition: big.h:83
TensorIndex< 9, 7 > xtempIDX
Definition: big.h:59
float dxtwo
Definition: big.h:49
bool fpix_current
current pix detector (false for BPix, true for FPix)
Definition: big.h:140
TensorIndex< 2, 2, 4 > chi2IDX
Definition: big.h:68
bigHeader head
Definition: big.h:114
float abs_cotb
absolute value of cot beta
Definition: big.h:139
std::vector< bigStore > storeVector
Definition: big.h:129
float beta
Definition: big.h:37
void fill(int runnum, float seed)
Definition: big.cc:23
float qavg
Definition: big.h:40
std::vector< float > aqfl
Definition: big.h:66
entryVector tVector_
Definition: big.h:132
#define COND_SERIALIZABLE
Definition: Serializable.h:39
float dyone
Definition: big.h:42
bigEntry()
Definition: big.h:22
float cota_current
current cot alpha
Definition: big.h:137
TensorIndex< 5, 9 > entbxIDX
Definition: big.h:117
Definition: big.h:8
float sxmax
Definition: big.h:44
float sxtwo
Definition: big.h:50
int NFxx
number of FPix x entries in each slice
Definition: big.h:90
float syone
Definition: big.h:43
int runnum
Definition: big.h:34
float qscale
Charge scaling to match cmssw and pixelav.
Definition: big.h:94
TensorIndex< 60 > entbyIDX
Definition: big.h:115
std::vector< bigEntry > entby
Definition: big.h:116
int NFy
number of FPix y entries
Definition: big.h:88
TensorIndex< 2, 4, 4 > avgIDX
Definition: big.h:62
int ID
template ID number
Definition: big.h:84
float dxone
Definition: big.h:45
TensorIndex< 9, 21 > ytempIDX
Definition: big.h:56
TensorIndex< 5 > entfyIDX
Definition: big.h:119