Project

General

Profile

Database Parameters » History » Version 44

Sean Jeffas, 06/29/2023 02:31 PM

1 1 Sean Jeffas
h1. Database Parameters
2 2 Sean Jeffas
3
{{toc}}
4
5
h1. Naming Convention
6 1 Sean Jeffas
7 44 Sean Jeffas
All variables follow a naming convention based on a hierarchy of detectors. A period ("*.*") will separate the hierarchy in the variables name. Therefore a name would look like *detector.subdetector.subsubdetector.variable*. 
8 2 Sean Jeffas
9
h1. GEM DB Variables
10 1 Sean Jeffas
11 17 Anuruddha Rathnayake Mudiyanselage
The GEM modules are listed iteratively as m0, m1, m2, etc. Therefore the DB parameters that are specific to modules will also follow this labeling. To simplify things here we will list DB parameters with *m#* to denote that this parameter is set for each module. 
12 15 Sean Jeffas
13 23 Anuruddha Rathnayake Mudiyanselage
* *bb.gem.modules* - Defines the number of individual GEM modules in the entire tracking stack. List them in the form "m0 m1 m2 . . . mn"
14 24 Anuruddha Rathnayake Mudiyanselage
* *bb.gem.m#.layer* - Assign layer(tracking plane) number for each and every GEM module (m#). Just like with module numbers, layer numbers start from 0 and goes up until #layers-1. m0 should be assigned 0.
15 19 Anuruddha Rathnayake Mudiyanselage
* *bb.gem.m#.position* - Position of the center of the module relative to the first module in the stack (m0) in meters. The coordinate system used is +x - vertical down, +y - beam left direction, and +z - downstream/direction of particle motion.
16 33 Anuruddha Rathnayake Mudiyanselage
* *bb.gem.m#.angle* - Angle of the module with respect to the m0.
17
* *bb.gem.m#.size* - Dimensions of the the module in meters. Uses the same coordinates as the bb.gem.m#.position parameter.
18 25 Anuruddha Rathnayake Mudiyanselage
* *bb.gem.m#.apvmap* - APV channel to r/o board mapping is different for different types of GEM modules. Use 0 = INFN, 1 = UVA X/Y, 2 = UVA U/V.
19 26 Anuruddha Rathnayake Mudiyanselage
* *bb.gem.pedestalmode* - Set to 1 if the data is taken in pedestal mode and to 0 if online common-mode and zero suppression was enabled. (Usually does not need to worry and gets overridden by SBS-offline after looking at the state of the data?)
20
* All the common mode parameters ...
21 27 Anuruddha Rathnayake Mudiyanselage
* *bb.gem.m#.modulegain* - 
22
* *bb.gem.m#.ugain* - 
23
* *bb.gem.m#.vgain* - 
24 28 Anuruddha Rathnayake Mudiyanselage
* *bb.gem.m#.uangle* - Angle of the u strips w.r.t +x direction. Use 150.0 for UVA U/V, 0.0 for UVA X/Y, and 180.0 for INFN X/Y.
25
* *bb.gem.m#.vangle* - Angle of the v strips w.r.t +x direction. This parameter takes care of the layer flipping!. For a case where the readout-board faces the incoming particles (particles first pass through r/o and exits from the gas-window side), use -150.0 for UVA U/V, -90.0 for UVA X/Y, and -90.0 for INFN X/Y. Reverse the sign to account for the case of particles hitting gas-window first.
26 29 Anuruddha Rathnayake Mudiyanselage
* *bb.gem.m#.uoffset* - u strip offset (from the module center? need to confirm). Put 0.0108 for UVA U/V and 0.0 for UVA X/Y and INFN X/Y.
27 30 Anuruddha Rathnayake Mudiyanselage
* *bb.gem.m#.voffset* - v strip offset (from the module center? need to confirm). Put 0.0108 for UVA U/V and 0.0 for UVA X/Y and INFN X/Y.
28 31 Anuruddha Rathnayake Mudiyanselage
* *bb.gem.m#.nstripsu* - Number of u strips in the GEM module.
29
* *bb.gem.m#.nstripsv* - Number of v strips in the GEM module.
30 1 Sean Jeffas
* *bb.gem.upitch* - The pitch between the consecutive strips for the u strips in meters. Always 400 micrometers (0.0004) in all of our GEM r/o boards.
31 18 Anuruddha Rathnayake Mudiyanselage
* *bb.gem.vpitch* - The pitch between the consecutive strips for the v strips in meters. Always 400 micrometers (0.0004) in all of our GEM r/o boards.
32 34 Anuruddha Rathnayake Mudiyanselage
* *bb.gem.m#.chanmap* - The channel map that is used for data decoding. Has the entries: "crate   slot   fiber/mpd  gemid  adc_ch   i2c   pos     invert   axis" for each and every APV card connected to the GEM module. This information in conjunction with the parameters defined above uniquely maps all the ADC channels (corresponding to each and every r/o channel in the GEMs) in the raw data to the correct location in 3D physical space.
33 14 Sean Jeffas
* *bb.gem.m#.maxstrip_t0* - Mean time where good strips are expected. This is only applied to the maximum strip.
34
* *bb.gem.m#.maxstrip_tcut* - Cut around mean time (above) where good strip times are expected. i.e. good strips will have a time that is within t0 ± tcut. This is only applied to the maximum strip.
35
* *bb.gem.addstrip_tcut* - When forming clusters all strips in the cluster must have a time difference between them and the max strip that is less than this value.
36
* *bb.gem.addstrip_ccor cut* - ADC correlation between strips and the max strips in a cluster must be greater than this number.
37
* *bb.gem.m#.threshold_sample* - Maximum ADC time sample for a strip must be above this threshold.
38
* *bb.gem.m#.threshold_stripsum* - Strip time sample ADC sum must be above this threshold.
39
* *bb.gem.m#.threshold_clustersum* - ADC sum of all strip sums in a cluster must be above this threshold.
40
* *bb.gem.m#.ugain* - Gain of each APV card on the U axis of this module.
41
* *bb.gem.m#.vgain* - Gain of each APV card on the V axis of this module.
42
* *bb.frontconstraint_x0* - Calorimeter front constraint mean x position.
43
* *bb.frontconstraint_y0* - Calorimeter front constraint mean y position.
44
* *bb.backconstraint_x0* - Calorimeter back constraint mean x position.
45
* *bb.backconstraint_y0* - Calorimeter back constraint mean y position.
46
* *bb.frontconstraintwidth_x* - Calorimeter front constraint x width.
47
* *bb.frontconstraintwidth_y* - Calorimeter front constraint y width.
48
* *bb.backconstraintwidth_x* - Calorimeter back constraint x width.
49
* *bb.backconstraintwidth_x* - Calorimeter back constraint y width.
50 35 Sebastian Seeds
51 38 Sebastian Seeds
h1. Calorimeter DB Variables
52 37 Sebastian Seeds
53 38 Sebastian Seeds
All variables that follow appear in the database files $SBS_REPLAY/DB/db_sbs.hcal.dat (HCal), $SBS_REPLAY/DB/db_bb.ps.dat (BBCal preshower), $SBS_REPLAY/DB/db_bb.sh.dat (BBCal shower), and $SBS_REPLAY/DB/db_bb.ts.dat (BBCal total shower). For the purposes of this list, only active variables (as of 6.22.23) are included. It is worthy to mention that many of the following variables will not appear in all of the above database files either owing to adequate default values or hardware differences rendering the variable obsolete.
54 1 Sean Jeffas
55 38 Sebastian Seeds
Note the following prepends:
56
* HCal: *sbs.hcal.*
57
* BBCal Preshower: *bb.ps.*
58
* BBCal Shower: *bb.sh.*
59
* BBCal Total Shower: *bb.ts.*
60
61
The variable appends and definitions follow:
62 39 Sebastian Seeds
* *detmap* - ADC map. Logic maps channels to slots and slots to crates as follows: *crate* *slot* *start_channel* *end_channel* *ref_channel*(0:HCal cosmic, 2:Beam)
63 38 Sebastian Seeds
* *ledmap* - 
64
* *start_chanmap* - 
65
* *chanmap* - 
66
* *position* - 
67
* *size* - 
68
* *nrows* - 
69
* *ncols* - 
70
* *xyz* - 
71
* *dxdydz* - 
72
* *ypos* - 
73
* *xpos* - 
74
* *emin* - 
75
* *tmax* - 
76 1 Sean Jeffas
* *tdc.GoodTimeCut* - 
77 39 Sebastian Seeds
* *tdc.offset* - 
78
* *tdc.calib* - 
79
* *tdc.tw* - 
80
* *adc.conv* - 
81
* *adc.thres* - 
82
* *adc.NpedBin* - 
83
* *adc.NSB* - 
84
* *adc.NSA* - 
85
* *adc.FixThresBin* - 
86
* *adc.timeoffset* - 
87
* *adc.gain* - 
88
* *adc.emin_clSeed* - 
89 38 Sebastian Seeds
* *ncols* - 
90
* *ncols* - 
91 40 Gary Penman
92
h1. Timing Hodoscope DB Variables
93
94
There are 3 database files for the hodoscope. Each is listed and the variables within have the associated prepend:
95
+db_bb.hodo.dat:+ *bb.hodo.*
96
* *nchan*
97
* *is_mc*
98
* *detmap*
99
* *nbars*
100
* *nrows*
101
* *ncols*
102
* *position*
103
* *xyz*
104 42 Gary Penman
* *dxdydz*
105 40 Gary Penman
* *size*
106
* *angle*
107
* *hit_acceptance*
108
* *speed_of_light*
109
* *attenuation*
110
* *bar_geom*
111
* *ref_ch_res*
112
* *left_calib*
113
* *left_gain*
114
* *left_toff*
115
* *left_walkcor*
116
* *left_walkexp*
117
* *left_pedestal*
118
* *right_calib*
119
* *right_gain*
120
* *right_toff*
121
* *right_walkcor*
122
* *right_walkexp*
123
* *right_pedestal*
124
* *tdc.offset*
125
* *tdc.cal*
126
127
+db_bb.hodotdc.dat:+ *bb.hodotdc.*
128
* *detmap*
129
* *chamap*
130
* *position*
131
* *ypos*
132
* *size*
133
* *ncols*
134
* *nrows*
135
* *xyz*
136
* *dxdydz*
137
* *tdcwindowmin*
138
* *tdcwindowmax*
139
* *tdctotmin*
140
* *tdctotmax*
141
* *horizposbarcut*
142
* *timeref*
143
* *timebarcut*
144
* *maxclussize*
145
* *maxyposdiff_clus*
146
* *maxtimediff_clus*
147
* *trackmatchcutX*
148
* *reftdc.GoodTimeCut*
149
* *reftdc.calib*
150
* *reftdc.offset*
151
* *tdc.GoodTimeCut*
152
* *tdc.calib*
153
* *tdc.offset*
154
* *tdcbaroffset*
155
* *timewalk0map*
156
* *timewalk1map*
157
* *vscint*
158
* *tdiffoffset*
159
160
+db_bb.hodoadc.dat:+ *bb.hodoadc.*
161 41 Gary Penman
* *detmap*
162
* *chanmap*
163
* *position*
164
* *ypos*
165
* *size*
166
* *ncols*
167
* *nrows*
168
* *xyz*
169
* *dxdydz*
170
* *adcbaroffset*
171
* *adc.conv*
172
* *adc.thres*
173
* *adc.NPedBin*
174
* *adc.NSB*
175
* *adc.NSA*
176
* *adc.FixThresBin*
177
* *adc.gain*
178
* *adc.pedestal*
179
* *timewalk0map*
180
* *timewalk1map*