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,
17  const std::string& atitle);
18 
20  class bigEntry{
21  public:
22  //constructor
24  par.reserve(parIDX::SIZE);
25  ytemp.reserve(ytempIDX::SIZE);
26  xtemp.reserve(xtempIDX::SIZE);
27  avg.reserve(avgIDX::SIZE);
28  aqfl.reserve(aqflIDX::SIZE);
29  chi2.reserve(chi2IDX::SIZE);
30  spare.reserve(spareIDX::SIZE);
31  }
32  void fill(int runnum,float seed);
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 
98 
100 };//end inline class bigHeader
101 
102  //inline class bigStore
103  class bigStore{
104  public:
105  //constructor
107  entby.reserve(entbyIDX::SIZE);
108  entbx.reserve(entbxIDX::SIZE);
109  entfy.reserve(entfyIDX::SIZE);
110  entfx.reserve(entfxIDX::SIZE);
111  }
112  //dummy filler
113  void fill( const std::string& atitle );
114  //data members
117  std::vector<bigEntry> entby;
119  std::vector<bigEntry> entbx;
121  std::vector<bigEntry> entfy;
123  std::vector<bigEntry> entfx;
124 
126 };//end inline class bigStore
127 
128 
129  typedef std::vector<bigEntry> entryVector;
130  typedef std::vector<bigHeader> headVector;
131  typedef std::vector<bigStore> storeVector;
132  private:
133  entryVector tVector_;
134  headVector thVector_;
135  storeVector sVector_;
137  int index_id;
138  float cota_current;
139  float cotb_current;
140  float abs_cotb;
142 
144 };//end big
145 #endif
std::vector< float > ytemp
Definition: big.h:57
float dytwo
Definition: big.h:47
storeVector sVector_
Definition: big.h:135
int templ_version
Version number of the template to ensure code compatibility.
Definition: big.h:96
float symax
Definition: big.h:41
TensorIndex< 9, 7 > xtempIDX
Definition: big.h:59
TensorIndex< 2, 2, 4 > chi2IDX
Definition: big.h:68
std::vector< bigEntry > entfx
Definition: big.h:123
float qmin
Definition: big.h:51
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
TensorIndex< 2, 9 > entfxIDX
Definition: big.h:122
TensorIndex< 2, 4, 4 > avgIDX
Definition: big.h:62
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:5
std::vector< bigEntry > entryVector
Definition: big.h:129
std::vector< bigHeader > headVector
Definition: big.h:130
float sytwo
Definition: big.h:48
std::vector< bigEntry > entfy
Definition: big.h:121
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:119
headVector thVector_
Definition: big.h:134
int index_id
current index
Definition: big.h:137
int NByx
number of Barrel y-slices of x entries
Definition: big.h:86
TensorIndex< 9, 21 > ytempIDX
Definition: big.h:56
float cotb_current
current cot beta
Definition: big.h:139
bigStore()
Definition: big.h:106
bigHeader()
Definition: big.h:80
int id_current
current id
Definition: big.h:136
inline class bigEntry
Definition: big.h:20
float alpha
Definition: big.h:35
std::vector< float > spare
Definition: big.h:72
std::string title
data members
Definition: big.h:83
float dxtwo
Definition: big.h:49
bool fpix_current
current pix detector (false for BPix, true for FPix)
Definition: big.h:141
bigHeader head
Definition: big.h:115
float abs_cotb
absolute value of cot beta
Definition: big.h:140
std::vector< bigStore > storeVector
Definition: big.h:131
TensorIndex< 2, 4, 6 > aqflIDX
Definition: big.h:65
float beta
Definition: big.h:37
void fill(int runnum, float seed)
Definition: big.cc:26
float qavg
Definition: big.h:40
std::vector< float > aqfl
Definition: big.h:66
entryVector tVector_
Definition: big.h:133
#define COND_SERIALIZABLE
Definition: Serializable.h:38
float dyone
Definition: big.h:42
TensorIndex< 2, 2, 5 > parIDX
Definition: big.h:53
bigEntry()
Definition: big.h:23
float cota_current
current cot alpha
Definition: big.h:138
Definition: big.h:8
float sxmax
Definition: big.h:44
float sxtwo
Definition: big.h:50
TensorIndex< 2, 10 > spareIDX
Definition: big.h:71
TensorIndex< 5, 9 > entbxIDX
Definition: big.h:118
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:116
std::vector< bigEntry > entby
Definition: big.h:117
int NFy
number of FPix y entries
Definition: big.h:88
int ID
template ID number
Definition: big.h:84
float dxone
Definition: big.h:45
TensorIndex< 5 > entfyIDX
Definition: big.h:120