FairRoot/PandaRoot
PndTrkConstants.h
Go to the documentation of this file.
1 #ifndef PndTrkConstants_H
2 #define PndTrkConstants_H 1
3 
4 
5 // definition of constants used in PndTrk.... classes;
6 
7 // integer constants
8 const int MAXHITSINCELL = 20,
9 // the following MAXHITSINFIT cannot be too large because the fit
10 // crashes 'silently' for too much memory consumption in the character arrays
11 // or takes too long time;
12 
13  TIMEOUT = 60;
14 
15 
16 // B field in Tesla
17 const Double_t
18  BFIELD=2.,
19  CVEL=2.99792, // velocity of light
20 // DELTAnR = range of nR in TrkAssociatedParallelHitsToHelixquater
21  DELTAnR=2., //range of nR in TrkAssociatedParallelHitsToHelixquater
22  PMAX=100.,
23  VERTICALGAP=4.; // (cm) gap between Left and Right sections of detector.
24 
25 
26 
27 
28 //----------------------------- Mvd constants, according to Mvd design;
29 const Double_t
30  ERRORPIXEL=0.02611,
31  ERRORSTRIP=0.02611,
32  ERRORSQPIXEL=0.00068175,
33  ERRORSQSTRIP=0.00068175;
34 
35  // averge radius of the various layers of the barrel part;
36 const int
38 
39 //--------------------------------------- MVD Barrel, full azimuthal coverage;
40 const int MVD_BARREL_LAYERS_FULL_AZIMUTH = 3; // number of barrel layers with 360 degree azimuthal coverage;
41 const Double_t
42  MVD_BARREL_FULL_AZIMUTH_MAX_RADIUS[3] = { 12.35 , 9., 12.35 },
43  MVD_BARREL_FULL_AZIMUTH_Z_LOW[3] = { -16.917 , -13.376 , -10.048 },
44  MVD_BARREL_FULL_AZIMUTH_Z_UP[3] = { -10.248 , - 6.707 , - 3.379 };
45 
46 
47 //--------------------------------------- MVD Barrel, partial azimuthal coverage;
48 
49 const int MVD_BARREL_LAYERS_PARTIAL_AZIMUTH = 11, // number barrel layers with less than 360 degree azimuthal coverage;
50 
51  // in the geometry of the Mvd it is possible to assume that the number of gaps is
52  // not necessarily the same for the Inner and Outer barrels of any Mvd Section;
53  // therefore in MVD_BARREL_PARTIAL_AZIMUTH_NGAP[i][j] i is the index indicating the
54  // i-th Barrel having Partial Azimuth Coverage; j is the index indicating
55  // the INNER (j=0) and the OUTER (j=1) number of azimuthal gaps;
56 
58  13, 10,
59  3, 5,
60  3, 0,
61  4, 4,
62  4, 5,
63  2, 0,
64  13, 10,
65  2, 2,
66  3, 3,
67  2, 2,
68  3, 3
69  } ;
70 const Double_t
71  // in practice there are never more than 13 gaps in azimuthal angle in radians from 0 to 2*pi;
73 
74 0. , 0.347 , 0.701 , 1.2437 , 2.141 , 2.590, 3.039, 3.489, 3.843, 4.385, 5.282, 5.7311, 6.18, // first Barrel
75 0. , 1.693 , 4.834 , 0. , 0. , 0., 0., 0., 0., 0., 0., 0., 0., // second Barrel
76 0. , 1.827 , 4.969 , 0. , 0. , 0., 0., 0., 0., 0., 0., 0., 0., // third Barrel
77 0., 1.2687, 2.167, 4.858, 0., 0., 0., 0., 0., 0., 0., 0., 0., // fourth Barrel
78 0.372, 3.066, 3.9615, 5.758, 0., 0., 0., 0., 0., 0., 0., 0., 0., // fifth Barrel
79 1.1525, 4.555, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., // sixth Barrel
80 0. , 0.347 , 0.701 , 1.2437 , 2.141 , 2.590, 3.039, 3.489, 3.843, 4.385, 5.282, 5.7311, 6.18, // seventh Barrel
81 1.2 , 4.34 , 0. , 0. , 0. , 0., 0., 0., 0., 0., 0., 0., 0., // eighth Barrel
82 0. , 1.828 , 4.9696, 0. , 0. , 0., 0., 0., 0., 0., 0., 0., 0., // ninth Barrel
83 1.2 , 4.341 , 0., 0. , 0. , 0., 0., 0., 0., 0., 0., 0., 0., // tenth Barrel
84 0. , 1.827 , 4.969, 0. , 0. , 0., 0., 0., 0., 0., 0., 0., 0. // eleventh Barrel
85  },
87  {
88 0.103 , 0.5519, 1.001, 1.898, 2.4406, 2.7946, 3.2446, 3.6935, 4.1426, 5.0393, 5.582 , 5.936 , 6.283, // first Barrel
89 1.449 , 4.59 , 6.283, 0. , 0., 0., 0., 0., 0., 0., 0., 0., 0., // second Barrel
90 1.162 , 4.303, 6.283, 0. , 0., 0., 0., 0., 0., 0., 0., 0., 0., // third Barrel
91 0.75, 1.646, 4.34, 6.283, 0., 0., 0., 0., 0., 0., 0., 0., 0., // fourth Barrel
92 2.545 , 3.444, 5.237, 6.136, 0., 0., 0., 0., 0., 0., 0., 0., 0., // fifth Barrel
93 1.877, 5.019, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., // sixth Barrel
94 0.103 , 0.5519, 1.001, 1.898, 2.4406, 2.7946, 3.2446, 3.6935, 4.1426, 5.0393, 5.582 , 5.936 , 6.283, // seventh Barrel
95 1.789, 4.931, 0. , 0. , 0., 0., 0., 0., 0., 0., 0., 0., 0., // eighth Barrel
96 1.161 , 4.302, 6.283, 0. , 0., 0., 0., 0., 0., 0., 0., 0., 0., // ninth Barrel
97 1.789, 4.931 , 0., 0. , 0., 0., 0., 0., 0., 0., 0., 0., 0., // tenth Barrel
98 1.162 , 4.303, 6.283, 0. , 0., 0., 0., 0., 0., 0., 0., 0., 0. // eleventh Barrel
99  },
100 
102  {
103 0.1104, 0.559 , 1.008, 2.353, 2.8026, 3.252 , 3.7 , 4.149 , 5.495 , 5.944 , 0., 0. , 0., // first Barrel
104 0. , 1.460 , 1.9, 4.6 , 5.045 , 0., 0., 0., 0., 0., 0., 0., 0., // second Barrel
105 0. , 0. , 0. , 0. , 0., 0., 0., 0., 0., 0., 0., 0., 0., // third Barrel
106 0. , 1.666, 4.356, 5.256, 0., 0., 0., 0., 0., 0., 0., 0., 0., // fourth Barrel
107 0. , 0.763, 2.559, 3.46 , 6.1486, 0., 0., 0., 0., 0., 0., 0., 0., // fifth Barrel
108 0. , 0. , 0. , 0. , 0., 0., 0., 0., 0., 0., 0., 0., 0., // sixth Barrel
109 0.1104, 0.559 , 1.008, 2.353, 2.8026, 3.252 , 3.7 , 4.149 , 5.495 , 5.944 , 0., 0. , 0., // seventh Barrel
110 1.413 , 4.555 , 0. , 0. , 0., 0., 0., 0., 0., 0., 0., 0., 0., // eighth Barrel
111 0. , 1.8964, 5.038, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., // ninth Barrel
112 1.4135, 4.555 , 0., 0. , 0., 0., 0., 0., 0., 0., 0., 0., 0., // tenth Barrel
113 0. , 1.896, 5.038, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0. // eleventh Barrel
114  },
116  {
117 0.339 , 0.788 , 2.133, 2.582, 3.0312, 3.489 , 3.929 , 5.275 , 5.724 , 6.173 , 0. , 0. , 0. , // first Barrel
118 1.238 , 1.683, 4.383, 4.825, 6.283, 0., 0., 0., 0., 0., 0., 0., 0., // second Barrel
119 0. , 0. , 0. , 0. , 0., 0., 0., 0., 0., 0., 0., 0., 0., // third Barrel
120 1.252, 3.947, 4.843, 6.283, 0., 0., 0., 0., 0., 0., 0., 0., 0., // fourth Barrel
121 0.352, 2.148, 3.046, 5.739, 6.283, 0., 0., 0., 0., 0., 0., 0., 0., // fifth Barrel
122 0. , 0. , 0. , 0. , 0., 0., 0., 0., 0., 0., 0., 0., 0., // sixth Barrel
123 0.339 , 0.788 , 2.133, 2.582, 3.0312, 3.489 , 3.929 , 5.275 , 5.724 , 6.173 , 0. , 0. , 0. , // seventh Barrel
124 1.876 , 5.018, 0. , 0., 0. , 0., 0., 0., 0., 0., 0., 0., 0., // eighth Barrel
125 1.393 , 4.5346, 6.283, 0. , 0. , 0., 0., 0., 0., 0., 0., 0., 0., // ninth Barrel
126 1.876, 5.018 , 0., 0. , 0. , 0., 0., 0., 0., 0., 0., 0., 0.,// tenth Barrel
127 1.393 , 4.535, 6.283, 0. , 0., 0., 0., 0., 0., 0., 0., 0., 0. // eleventh Barrel
128  },
129  // radius of INNER and OUTER layers of a Barrel; in case the Barrel can be described by one
130  // radius only then MVD_BARREL_PARTIAL_AZIMUTH_RADIUS_OUTER is set at -1.;
131 
133  4.7624, 4.7654 , 9.343 , 2.262, 2.255, 12.63, 4.7624, 9.342, 9.314, 9.315, 9.3435
134  },
136  5.2624, 5.25, -1. , 2.84 , 2.84, -1., 5.2624, 12.61, 12.61, 13.11, 12.5725
137  },
138 
139 
141  -7.98 , -7.48 , -6.507 , -3.98, -3.54, -3.179, -1.02, 0.362, 3.69, 7.231, 10.559
142  },
144  -1.18 , -1.82 , -3.166 , -1.74, 0.98, 0.162, 5.78, 7.031, 10.359, 13.9, 13.9
145  };
146 
147 
148 // old stuff;------------------------------------------------------------------------------------
149 // 0 --> innermost layer; 3 --> outermost layer;
150 
151 const int MVD_BARREL_LAYERS= 4; // number of barrel layers;
152 
153 // Radia of the Barrel Mvd layers;
154 // MVD_BARREL_AVERAGE_RADIUS[i] == AVERAGE Radius of i-th layer;
155 // MVD_BARREL_ZLIMITS[0][i] = Minimum Z of i-th layer,
156 // MVD_BARREL_ZLIMITS[1][i] = Maximum Z of i-th layer,
157 // MVD_BARREL_NOZONE_X[0 or 1] = X lower and upper limits of the zone of the beam pipe;
158 // MVD_BARREL_NOZONE_X[0 or 1] = Z lower and upper limits of the zone of the beam pipe;
159 
160 const Double_t
162  (2.18+2.858)/2. ,
163  (4.73+5.282)/2. ,
164  (8.972+9.686)/2. ,
165  (12.32+12.994)/2.},
166  MVD_BARREL_RADIASQMean[4] = { 6.4762, 25.15, 87.15, 160.31 },
167  MVD_BARREL_RADIASQDifference[4] = { 3.5, 5.5, 13.32, 17.06 },
168  MVD_BARREL_NOZONE_X[2] = {-2.,2.},
169  MVD_BARREL_NOZONE_Z[2] = {-2.,2.},
170  MVD_BARREL_ZLIMITS[2][4] = {-3.98,-7.9,-13.376,-16.917,
171  13.9,13.9,13.9,13.9};
172 
173 // end of old stuff ---------------------------------------------------------------------------------
174 
175 
176 
177 //---------------------------------------- MVD MiniDisks geometry infos;
178 
179 // this disks are positioned perpendicularly to the Z direction; the thickness of the sensitive layer is 0.02 ;
180 const int MVD_MINIDISK_LAYERS= 12; // number of Mvd MiniDisks;
181 // Z positions;
182 const Double_t
183  MVD_Z_LAYER_BEGIN[12] = { 1.97, 2.41, 3.97, 4.41, 6.97, 7.41, 9.97, 10.41, 14.77, 15.21, 21.77, 22.21 } ,
184  MVD_Z_LAYER_END[12] = { 1.99, 2.43, 3.99, 4.43, 6.99, 7.43, 9.99, 10.43, 14.79, 15.23, 21.79, 22.23 };
185 
186 //---------------------------------------- MVD Disks
187 
188 // 0 --> most upstream layer; 1 --> most downstream layer;
189 const int MVD_DISK_LAYERS= 2; // number of Mvd disks;
190 // Z positions; in reality there are to disks very close to each other
191 // then take the average Z to describe both;
192 const Double_t
193  MVD_DISK_Z[2] = { 16.265, 20.735 } ,
194 
195 // each layer has a maximum radius and a minimum radius;
196  MVD_DISK_MIN_RADIUS[2] = { 7.5 , 7.5 },
197  MVD_DISK_MAX_RADIUS[2] = { 13.11 , 13.11 };
198 
199 
200 //-----------------------------
201 
202 
203 
204 //----------------------------- SciTil detector constants
205 // RADIUSSCITIL = radius of the cylinder tangent to the SciTil tiles in the middle of each tile;
206 const Double_t
209 //-----------------------------
210 
211 //----------------------------- STT detector constants
212 // maximum radius of the Stt detector in cm; this is the radius CIRCUMSCRIBED to the outer Hexagon
213 // delimiting the STT detector;
214 const Double_t
216 // APOTEMA means the radius of a circle INSCRIBED in a Hexagon (this is the same as the
217 // mathematical definition); otherwise the name Radius is used instead;
219  APOTEMAMAXSKEWSTRAW=31.517569, // delimitation of the skew area
221  APOTEMAMINSKEWSTRAW=23.246827, // delimitation of the skew area
222  APOTEMASTRAWDETECTORMIN=16.119; // minimum APOTEMA of the Stt detector in cm
223  // this is the Radius of the circle INSCRIBED in the
224  // smaller Hexagon delimiting the STT detector;
225 const int
226  MAXFOUNDCLUSTERS=100, // maximum allowed clusters in the event;
227  MAXHITSINCLUSTER=200, // maximum allowed hits in a cluster;
231 
235  MAX_NOT_CONNECTED=1; // maximum # of STT "holes" in the hits of a track;
236 
237 const Double_t
240 // semilength of a axial straw;
245  STTDRIFTVEL=0.0025, // in cm/nsec
246 // Z position of the center of the axial straw;
248 
249 //-----------------------------
250 
251 
252 const Double_t
253  PI=3.141592654,
254  TWO_PI=6.283185307;
255 
256 
257 
258 #endif
const int TIMEOUT
const int MVD_BARREL_LAYERS_PARTIAL_AZIMUTH
const Double_t RSTRAWDETECTORMAX
const Double_t STRAWRESOLUTION
const Double_t MVD_BARREL_PARTIAL_AZIMUTH_GAP_LOW_OUTER[11][13]
const Double_t STTDRIFTVEL
const Double_t PMAX
const Double_t DIAMETERSTRAWTUBE2
const Double_t MVD_Z_LAYER_END[12]
const Double_t MVD_BARREL_ZLIMITS[2][4]
const Double_t MVD_BARREL_NOZONE_Z[2]
const int MVD_MINIDISK_LAYERS
const Double_t DIAMETERSTRAWTUBE
const Double_t MVD_BARREL_RADIASQMean[4]
const int MINOUTERHITSPERTRACK
const int MAXMVDMCPOINTS
const int MINIMUMMVDHITSPERTRACK
const Double_t APOTEMAMINSKEWSTRAW
const int MVD_DISK_LAYERS
const Double_t BFIELD
const int MAX_NOT_CONNECTED
const Double_t MVD_BARREL_PARTIAL_AZIMUTH_GAP_LOW_INNER[11][13]
const Double_t STRAW_SKEW_INCLINATION
const Double_t MVD_BARREL_NOZONE_X[2]
const Double_t TWO_PI
const Double_t RADIUSSCITIL
const int MAXHITSINCELL
const int MVD_BARREL_LAYERS_FULL_AZIMUTH
const Double_t SEMILENGTH_STRAIGHT
const Double_t PI
Double_t
const int MVD_BARREL_LAYERS
const Double_t STRAWRADIUS
const Double_t ERRORSTRIP
const Double_t MVD_BARREL_FULL_AZIMUTH_MAX_RADIUS[3]
const Double_t APOTEMAMINOUTERPARSTRAW
const Double_t DELTAnR
const int MAXFOUNDCLUSTERS
const Double_t MVD_BARREL_PARTIAL_AZIMUTH_RADIUS_INNER[11]
const Double_t MVD_BARREL_PARTIAL_AZIMUTH_GAP_UP_INNER[11][13]
const Double_t MVD_DISK_Z[2]
const Double_t VERTICALGAP
const int MAXSKEWHITSINFIT
const Double_t ERRORSQSTRIP
const Double_t MVD_BARREL_PARTIAL_AZIMUTH_Z_LOW[11]
const int MAXHITSINCLUSTER
const Double_t APOTEMAMAXINNERPARSTRAW
const int MAXSTTHITSINTRACK
const Double_t MVD_BARREL_FULL_AZIMUTH_Z_LOW[3]
const Double_t CVEL
const Double_t MVD_Z_LAYER_BEGIN[12]
const Double_t ERRORSQPIXEL
const Double_t MVD_DISK_MAX_RADIUS[2]
const int MAXHITSINFIT
const Double_t MVD_BARREL_AVERAGE_RADIUS[4]
const Double_t ERRORPIXEL
const int MINIMUMSTTMHITSPERTRACK
const Double_t APOTEMAMAXSKEWSTRAW
const Double_t MVD_DISK_MIN_RADIUS[2]
const Double_t MVD_BARREL_RADIASQDifference[4]
const Double_t APOTEMASTRAWDETECTORMIN
const Double_t MVD_BARREL_PARTIAL_AZIMUTH_Z_UP[11]
const Double_t MVD_BARREL_FULL_AZIMUTH_Z_UP[3]
const int MVD_BARREL_PARTIAL_AZIMUTH_NGAP[11][2]
const Double_t ZCENTER_STRAIGHT
const Double_t MVD_BARREL_PARTIAL_AZIMUTH_RADIUS_OUTER[11]
const Double_t MVD_BARREL_PARTIAL_AZIMUTH_GAP_UP_OUTER[11][13]
const Double_t DIMENSIONSCITIL