1 cdaq 1.1 *****************begin: hms_data_structures.cmn*************************
2 *
3 * include file hms_data_structures.cmn
4 *
|
5 jones 1.9 * Author: D. F. Geesaman 1 September 1993
|
6 cdaq 1.1 *
|
7 cdaq 1.2 * $Log: hms_data_structures.cmn,v $
|
8 cdaq 1.12.12.1 * Revision 1.12 2003/09/05 20:39:18 jones
9 * Merge in online03 changes (mkj)
10 *
|
11 jones 1.12 * Revision 1.11 2003/04/01 13:55:08 jones
12 * Add variables hntracks_max_fp and h_remove_sppt_if_one_y_plane to
13 * hms_tracking.cmn
14 *
15 * Revision 1.10.2.2 2003/07/15 19:04:03 cdaq
16 * add hsinplane
17 *
18 * Revision 1.10.2.1 2003/04/10 12:36:56 cdaq
19 * comments added
20 *
|
21 jones 1.11 * Revision 1.10 2003/01/02 18:34:51 jones
22 * change HNTRACKS_MAX from 5 to 20
23 *
|
24 jones 1.10 * Revision 1.9 2002/12/20 21:52:34 jones
25 * Modified by Hamlet for new HMS aerogel
26 *
|
27 jones 1.9 *
28 * Revision 1.9 2002/09/26
29 * (Hamlet) Add structures for HMS Aerogel
30 *
31 * Revision 1.8 1999/02/23 19:09:29 csa
32 * Change some physics vars
33 *
|
34 csa 1.8 * Revision 1.7 1999/01/21 21:40:31 saw
35 * Extra shower counter tube modifications
36 *
|
37 saw 1.7 * Revision 1.6 1998/12/17 22:02:41 saw
38 * Support extra set of tubes on HMS shower counter
39 *
|
40 saw 1.6 * Revision 1.5 1996/09/04 15:49:31 saw
41 * (SAW) Double of all ' 's in comments
42 *
|
43 saw 1.5 * Revision 1.4 1996/01/24 16:18:59 saw
44 * (JRA) Cosmetic change
45 *
|
46 saw 1.4 * Revision 1.3 1996/01/17 16:00:02 cdaq
47 * (JRA) ADD HCER_RAW_ADC and HSCIN_FPTIME
48 *
|
49 cdaq 1.3 * Revision 1.2 1995/08/11 16:28:46 cdaq
50 * (CC) Add structure for # of photoelectrons in Cerenkov
51 *
|
52 cdaq 1.2 * Revision 1.1 1995/05/22 18:41:15 cdaq
53 * Initial revision
|
54 cdaq 1.1 *
|
55 cdaq 1.2 *
|
56 cdaq 1.1 * CTPTYPE=parm
57 *
58 * HTHETA_LAB HMS LAB ANGLE THETA (RADIANS)
59 * HPHI_LAB HMS LAB ANGLE PHI
60 * HPCENTRAL HMS CENTRAL MOMENUTM (GEV)
61 * HBFIELD HMS B FIELD INCLUDING SIGN
62 *
63 REAL*4 HTHETA_LAB ! HMS LAB ANGLE THETA (RADIANS)
64 REAL*4 HPHI_LAB ! HMS LAB ANGLE PHI
65 REAL*4 HPCENTRAL ! HMS CENTRAL MOMENUTM (GEV)
66 REAL*4 HBFIELD ! HMS B FIELD INCLUDING SIGN
67 REAL*4 HPARTMASS ! EXPECTED MASS OF DETECTED PARTICLE IN HMS
|
68 jones 1.9
|
69 cdaq 1.1 COMMON/HMS_SPECTROMETER/
70 & HTHETA_LAB,
71 & HPHI_LAB,
72 & HPCENTRAL,
73 & HBFIELD,
74 & HPARTMASS
75 *
76 * CTPTYPE=event
77 *
78 * HMS DECODED DATA
79 *
80 * FILLED BY G_decode_event_by_banks
81 * HMS DRIFT CHAMBER HITS
82 * EACH CHAMBER HIT (TDC VALUE) HAS A
83 * PLANE NUMBER
84 * WIRE NUMBER
85 * TDC VALUE
86 *
87 * THE TOTAL NUMBER OF HITS IS GIVEN IN HDC_RAW_TOT_HITS
88 *
89 INTEGER*4 HMAX_DC_HITS ! MAXIUM NUMBER OF DRIFT CHAMBER HITS
90 cdaq 1.1 INTEGER*4 HMAX_NUM_DC_PLANES ! MAX NUMBER OF HMS DRIFT CHAMBER PLANES
91 INTEGER*4 HMAX_NUM_CHAMBERS ! NUMBER OF HMS DRIFT CHAMBERS
92 PARAMETER(HMAX_DC_HITS=3600)
93 PARAMETER(HMAX_NUM_DC_PLANES=12)
94 PARAMETER(HMAX_NUM_CHAMBERS=2)
95 INTEGER*4 HDC_RAW_PLANE_NUM
96 INTEGER*4 HDC_RAW_WIRE_NUM
97 INTEGER*4 HDC_RAW_TDC
98 INTEGER*4 HDC_RAW_TOT_HITS
99 COMMON/HMS_RAW_DC/
100 1 HDC_RAW_PLANE_NUM(HMAX_DC_HITS),
101 2 HDC_RAW_WIRE_NUM(HMAX_DC_HITS),
102 3 HDC_RAW_TDC(HMAX_DC_HITS),
103 4 HDC_RAW_TOT_HITS
104 *
105 * HMS DECODED DC DATA
106 *
107 * FILLED BY H_TRANS_DC TRANSLATION ROUTINE
108 * HMS DRIFT CHAMBER HITS
109 * EACH CHAMBER HIT (TDC VALUE) HAS A
110 * PLANE NUMBER
111 cdaq 1.1 * WIRE NUMBER
112 * TDC VALUE
113 * DRIFT TIME
114 * DRIFT DISTANCE
115 * GENERALIZED COORDINATE OF HIT WIRE CENTER
116 * GENERALIZED COORDINATE OF HIT PERPENDICULAR TO WIRE DIRECTION
117 *
118 * THE TOTAL NUMBER OF HITS IN EACH PLANE IS GIVEN IN HDC_HITS_PER_PLANE(I)
119 * THE TOTAL NUMBER OF HITS IS GIVEN IN HDC_TOT_HITS
120 *
121 INTEGER*4 HDC_PLANE_NUM ! copied from HMS_RAW_DC
122 INTEGER*4 HDC_WIRE_NUM ! copied from HMS_RAW_DC
123 INTEGER*4 HDC_TDC ! copied from HMS_RAW_DC
124 INTEGER*4 HDC_TOT_HITS
125 REAL*4 HDC_DRIFT_TIME
126 REAL*4 HDC_DRIFT_DIS
127 REAL*4 HDC_WIRE_CENTER
128 REAL*4 HDC_WIRE_COORD
129 COMMON/HMS_DECODED_DC/
130 1 HDC_DRIFT_TIME(HMAX_DC_HITS),
131 2 HDC_DRIFT_DIS(HMAX_DC_HITS),
132 cdaq 1.1 3 HDC_WIRE_CENTER(HMAX_DC_HITS),
133 4 HDC_WIRE_COORD(HMAX_DC_HITS),
134 5 HDC_PLANE_NUM(HMAX_DC_HITS),
135 6 HDC_WIRE_NUM(HMAX_DC_HITS),
136 7 HDC_TDC(HMAX_DC_HITS),
137 9 HDC_TOT_HITS
138 *
139 * HMS RAW SCINTILLATOR HITS
140 * FILLED BY g_decode_evebt_by_banks
141 * EACH SCINTILLATOR HIT IS SPECIFIED BY A
142 * SCINTILLATOR PLANE NUMBER
143 * SCINTILLATOR COUNTER NUMBER
144 * SCINTILLATOR ADC AT POSITIVE GENERALIZED COORDINATE END
145 * SCINTILLATOR ADC AT NEGATIVE GENERALIZED COORDINATE END
146 * SCINTILLATOR TDC AT POSITIVE GENERALIZED COORDINATE END
147 * SCINTILLATOR TDC AT NEGATIVE GENERALIZED COORDINATE END
148 * THE TOTAL NUMBER OF HITS IS GIVEN BY HSCIN_ALL_TOT_HITS
149 INTEGER*4 HMAX_ALL_SCIN_HITS ! MAXIMUM TOTAL NUMBER OF SCIN HITS
150 PARAMETER (HMAX_ALL_SCIN_HITS=53) ! Number of elements + 1
151 INTEGER*4 HNUM_ALL_SCIN_PLANES ! TOTAL NUMBER OF SCIN PLANES
152 PARAMETER (HNUM_ALL_SCIN_PLANES=4)
153 cdaq 1.1 INTEGER*4 HSCIN_ALL_PLANE_NUM
154 INTEGER*4 HSCIN_ALL_COUNTER_NUM
155 INTEGER*4 HSCIN_ALL_ADC_POS
156 INTEGER*4 HSCIN_ALL_ADC_NEG
157 INTEGER*4 HSCIN_ALL_TDC_POS
158 INTEGER*4 HSCIN_ALL_TDC_NEG
159 INTEGER*4 HSCIN_ALL_TOT_HITS
160 *
161 COMMON/HMS_RAW_SCIN/
162 & HSCIN_ALL_PLANE_NUM(HMAX_ALL_SCIN_HITS),
163 & HSCIN_ALL_COUNTER_NUM(HMAX_ALL_SCIN_HITS),
164 & HSCIN_ALL_ADC_POS(HMAX_ALL_SCIN_HITS),
165 & HSCIN_ALL_ADC_NEG(HMAX_ALL_SCIN_HITS),
166 & HSCIN_ALL_TDC_POS(HMAX_ALL_SCIN_HITS),
167 & HSCIN_ALL_TDC_NEG(HMAX_ALL_SCIN_HITS),
168 & HSCIN_ALL_TOT_HITS
169 *
170 * HMS REAL SCINTILLATOR HITS (Hits with no TDC data stripped out)
171 * FILLED BY H_strip_scin (which is called by h_trans_scin)
172 * EACH SCINTILLATOR HIT IS SPECIFIED BY A
173 * SCINTILLATOR PLANE NUMBER
174 cdaq 1.1 * SCINTILLATOR COUNTER NUMBER
175 * SCINTILLATOR ADC AT POSITIVE GENERALIZED COORDINATE END
176 * SCINTILLATOR ADC AT NEGATIVE GENERALIZED COORDINATE END
177 * SCINTILLATOR TDC AT POSITIVE GENERALIZED COORDINATE END
178 * SCINTILLATOR TDC AT NEGATIVE GENERALIZED COORDINATE END
179 * THE TOTAL NUMBER OF HITS IS GIVEN BY HSCIN_TOT_HITS
180 INTEGER*4 HMAX_SCIN_HITS ! MAXIMUM TOTAL NUMBER OF SCIN HITS
181 PARAMETER (HMAX_SCIN_HITS=53) ! Number of elements + 1
182 INTEGER*4 HNUM_SCIN_PLANES ! TOTAL NUMBER OF SCIN PLANES
183 PARAMETER (HNUM_SCIN_PLANES=4)
184 INTEGER*4 HNUM_SCIN_ELEMENTS
185 PARAMETER (HNUM_SCIN_ELEMENTS=16)
186 INTEGER*4 HSCIN_PLANE_NUM
187 INTEGER*4 HSCIN_COUNTER_NUM
188 REAL*4 HSCIN_ADC_POS
189 REAL*4 HSCIN_ADC_NEG
190 INTEGER*4 HSCIN_TDC_POS
191 INTEGER*4 HSCIN_TDC_NEG
192 INTEGER*4 HSCIN_TOT_HITS
|
193 saw 1.5 INTEGER*4 HSCIN_SING_COUNTER ! DJM''s registered hit counter
|
194 cdaq 1.1 *
195 COMMON/HMS_REAL_SCIN/
196 & HSCIN_PLANE_NUM(HMAX_SCIN_HITS),
197 & HSCIN_COUNTER_NUM(HMAX_SCIN_HITS),
198 & HSCIN_ADC_POS(HMAX_SCIN_HITS),
199 & HSCIN_ADC_NEG(HMAX_SCIN_HITS),
200 & HSCIN_TDC_POS(HMAX_SCIN_HITS),
201 & HSCIN_TDC_NEG(HMAX_SCIN_HITS),
202 & HSCIN_TOT_HITS,
203 & HSCIN_SING_COUNTER(HNUM_SCIN_PLANES)
204 *
205 *
206 * DECODED SCIN HITS
207 * FILLED BY H_TRANS_SCIN
208 * THIS USES SCINTILLATOR INFORMATION ONLY TO CALCUATE
209 * HSCIN_APPROX_HIT_COORD GENERALIZED COORDINATE ALONG HIT
210 * SCINTILLATOR DETERMINED FROM TDC INFO.
211 * HSCIN_COR_ADC CORRECTED PULSE HEIGHT AT HIT
212 * HSCIN_COR_TIME CORRECTED TIME AT HIT
213 * THE TOTAL NUMBER OF HITS IN EACH PLANE IS GIVEN BY HSCIN_HITS_PER_PLANE
214 * THE HSTART_TIME IS DEFINED AS THE TIME IF THE TRACK HAD GONE THROUGH
215 cdaq 1.1 * THE CENTER OF S1X. IT IS USED BY H_TRANS_DC FOR THE DRIFT TIME
216 * CALCULATION.
217 * HTWO_GOOD_TIMES IS A LOGICAL VARIABLE WHICH IS TRUE IF BOTH ENDS
218 * OF THE SCINTILLATOR ARE HIT AND FALSE IF ONLY ONE END IS HIT.
219 * HGOOD_START_TIME IS TRUE IF A START TIME WAS FOUND
220 *
221 REAL*4 HSCIN_ZPOS(HMAX_SCIN_HITS)
222 REAL*4 HSCIN_CENTER_COORD(HMAX_SCIN_HITS)
223 REAL*4 HSCIN_DEC_HIT_COORD(HMAX_SCIN_HITS)
224 REAL*4 HSCIN_WIDTH(HMAX_SCIN_HITS)
225 REAL*4 HSCIN_SLOP(HMAX_SCIN_HITS)
226 REAL*4 HSCIN_COR_ADC(HMAX_SCIN_HITS)
227 REAL*4 HSCIN_COR_TIME(HMAX_SCIN_HITS)
228 REAL*4 HSTART_TIME
229 INTEGER*4 HSTART_HITNUM
230 INTEGER*4 HSTART_HITSIDE
231 INTEGER*4 HSCIN_HITS_PER_PLANE(HNUM_SCIN_PLANES)
232 LOGICAL*4 HTWO_GOOD_TIMES(HMAX_SCIN_HITS)
233 LOGICAL*4 HGOOD_START_TIME
234
235 COMMON/HMS_DECODED_SCIN/
236 cdaq 1.1 & HSCIN_ZPOS,
237 & HSCIN_CENTER_COORD,
238 & HSCIN_WIDTH,
239 & HSCIN_SLOP,
240 & HSCIN_DEC_HIT_COORD,
241 & HSCIN_COR_ADC,
242 & HSCIN_COR_TIME,
243 & HSTART_TIME,
244 & HSCIN_HITS_PER_PLANE,
245 & HSTART_HITNUM,
246 & HSTART_HITSIDE,
247 & HTWO_GOOD_TIMES,
248 & HGOOD_START_TIME
249 *
250 *
251 * HMS CALORIMETER HITS
252 *
253 * ALLOW FOR NO SPARCIFICATION OF SHOWER COUNTER ELEMENTS
254 *
255 * EACH COUNTER HAS A
256 * COLUMN NUMBER
257 cdaq 1.1 * ROW NUMBER
|
258 saw 1.6 * ADC VALUE AT Positive End (This end if only one end used)
259 * ADC VALUE AT Negative End
|
260 cdaq 1.1 *
261 * THE TOTAL NUMBER OF SHOWER HITS IS HCAL_TOT_HITS
262 *
263 INTEGER*4 HMAX_CAL_BLOCKS ! TOTAL NUMBER OF SHOWER BLOCKS
264 PARAMETER (HMAX_CAL_BLOCKS=52)
265 INTEGER*4 HMAX_CAL_ROWS !Number of calorimeter rows
266 PARAMETER (HMAX_CAL_ROWS=13)
267 INTEGER*4 HMAX_CAL_COLUMNS !Number of calorimeter columns
268 PARAMETER (HMAX_CAL_COLUMNS=4)
269 INTEGER*4 HCAL_TOT_HITS
|
270 saw 1.7 INTEGER*4 HCAL_POS_HITS
271 INTEGER*4 HCAL_NEG_HITS
|
272 cdaq 1.1 INTEGER*4 HCAL_COLUMN(HMAX_CAL_BLOCKS)
273 INTEGER*4 HCAL_ROW(HMAX_CAL_BLOCKS)
|
274 saw 1.6 INTEGER*4 HCAL_ADC_POS(HMAX_CAL_BLOCKS)
275 INTEGER*4 HCAL_ADC_NEG(HMAX_CAL_BLOCKS)
|
276 cdaq 1.1 INTEGER*4 HCAL_ADC(HMAX_CAL_BLOCKS)
|
277 saw 1.6 equivalence (hcal_adc, hcal_adc_pos) ! For old code
278 REAL*4 HCAL_REALADC_POS(HMAX_CAL_BLOCKS)
279 REAL*4 HCAL_REALADC_NEG(HMAX_CAL_BLOCKS)
|
280 cdaq 1.1 REAL*4 HCAL_REALADC(HMAX_CAL_BLOCKS)
|
281 saw 1.6 equivalence (hcal_realadc, hcal_realadc_pos)
|
282 cdaq 1.1
283 COMMON/HMS_RAW_CAL/
284 & HCAL_COLUMN,
285 & HCAL_ROW,
|
286 saw 1.6 & HCAL_ADC_POS,
287 & HCAL_ADC_NEG,
288 & HCAL_REALADC_POS,
289 & HCAL_REALADC_NEG,
|
290 saw 1.7 & HCAL_TOT_HITS,
291 & HCAL_POS_HITS,
292 & HCAL_NEG_HITS
|
293 cdaq 1.1 *
294 * DECODED CALORIMETER QUANTITIES
295 * FILLED BY H_TRANS_CAL USING ONLY THE CALORIMETER INFORMATION
296 *
297 * X COORDINATE OF BLOCK CENTER
298 * Z COORDINATE OF BLOCK CENTER
299 * ENERGY DEPOSITED IN THE BLOCK
300 * ENERGY DEPOSITED IN COLUMN #1
301 * #2
302 * #3
303 * #4
304 * TOTAL ENERGY IN THE CALORIMETER
305 INTEGER*4 HNHITS_CAL !NUMBER OF CALORIMETER HITS ABOVE THRESHOLD
306 REAL*4 HBLOCK_XC !X COORDINATE OF BLOCK CENTER
307 REAL*4 HBLOCK_ZC !Z COORDINATE OF BLOCK CENTER
308 REAL*4 HBLOCK_DE !ENERGY DEPOSITION IN THE BLOCKS
309 REAL*4 HCAL_E1 !ENERGY DEPOSITION IN COLUMN #1
310 REAL*4 HCAL_E2 ! #2
311 REAL*4 HCAL_E3 ! #3
312 REAL*4 HCAL_E4 ! #4
313 REAL*4 HCAL_ET !TOTAL ENERGY IN THE CALORIMETER
|
314 saw 1.7 REAL*4 HCAL_E1_POS
315 REAL*4 HCAL_E1_NEG
316 REAL*4 HCAL_E2_POS
317 REAL*4 HCAL_E2_NEG
318 REAL*4 HBLOCK_DE_POS
319 REAL*4 HBLOCK_DE_NEG
|
320 cdaq 1.1 COMMON/HMS_DECODED_CAL/
321 & HBLOCK_XC(HMAX_CAL_BLOCKS),
322 & HBLOCK_ZC(HMAX_CAL_BLOCKS),
323 & HBLOCK_DE(HMAX_CAL_BLOCKS),
324 & HCAL_E1,
325 & HCAL_E2,
326 & HCAL_E3,
327 & HCAL_E4,
328 & HCAL_ET,
|
329 saw 1.7 & HCAL_E1_POS,
330 & HCAL_E1_NEG,
331 & HCAL_E2_POS,
332 & HCAL_E2_NEG,
333 & HBLOCK_DE_POS(HMAX_CAL_BLOCKS),
334 & HBLOCK_DE_NEG(HMAX_CAL_BLOCKS),
|
335 cdaq 1.1 & HNHITS_CAL
336 *
337 * HMS CERENKOV HITS
338 * FILLED BY G_decode_event_by_banks
339 *
340 * THERE ARE TWO CERENKOV PHOTOTUBES. EACH HIT HAS
341 * TUBE NUMBER
342 * ADC VALUE
343 * THE TOTAL NUMBER OF PHOTOTUBE HITS IS HCER_TOT_HITS
344 * HOWEVER TO MAKE THE DECODERS SYMMETRICAL TO A SCINT WE MUST ADD
345 * A DUMMY PLANE NUMBER.
346 INTEGER*4 HMAX_CER_HITS
347 PARAMETER(HMAX_CER_HITS=2)
348 INTEGER*4 HCER_TOT_HITS
349 INTEGER*4 HCER_TUBE_NUM
|
350 cdaq 1.3 INTEGER*4 HCER_RAW_ADC
|
351 cdaq 1.1 INTEGER*4 HCER_PLANE
352 COMMON/HMS_RAW_CER/
353 & HCER_TUBE_NUM(HMAX_CER_HITS),
|
354 cdaq 1.3 & HCER_RAW_ADC(HMAX_CER_HITS),
|
355 cdaq 1.1 & HCER_PLANE(HMAX_CER_HITS),
356 & HCER_TOT_HITS
357 *
|
358 cdaq 1.2 * DECODED CERENKOV QUANTITIES
359 * FILLED BY H_TRANS_CER
360 *
361 INTEGER*4 HCER_NUM_HITS ! NUMBER OF CERENKOV HITS ABOVE THRESHOLD
362 REAL*4 HCER_NPE ! ADC CONVERTED TO NUMBER OF PHOTOELECTRONS
|
363 saw 1.5 REAL*4 HCER_NPE_SUM ! SUM OVER TUBES OF NPE''S
|
364 cdaq 1.3 REAL*4 HCER_ADC ! PED SUBTRACTED ADC FOR EACH *TUBE*
|
365 cdaq 1.2 COMMON/HCER_DECODED_CER/
366 & HCER_NUM_HITS,
367 & HCER_NPE(HMAX_CER_HITS),
|
368 cdaq 1.3 & HCER_NPE_SUM,
369 & HCER_ADC(HMAX_CER_HITS)
|
370 cdaq 1.2 *
|
371 jones 1.9 *..........................................................................
372 * (Last revison 01 Dec'02; Hamlet)
373 *
374 * HMS AEROGEL HITS
375 * FILLED BY G_decode_event_by_banks
376 *
377 * THERE ARE 16 AEROGEL PHOTOTUBES. We will pair tubes on the left and
378 * right side so that are 8 "counters".
379 * POS pmt's on the positive side of Y axis (as for Hodoscope)
380 *
381 * TUBE Row
382 * ADC Left VALUE
383 * ADC Right VALUE
384 * THE TOTAL NUMBER OF PHOTOTUBE HITS IS HAERO_TOT_HITS
385 * HOWEVER TO MAKE THE DECODERS SYMMETRICAL TO A SCINT WE MUST ADD
386 * A DUMMY PLANE NUMBER.
387 INTEGER*4 HMAX_AERO_HITS
388 PARAMETER(HMAX_AERO_HITS=8)
389 INTEGER*4 HNUM_AERO_BLOCKS
390 PARAMETER(HNUM_AERO_BLOCKS=8)
391 INTEGER*4 HAERO_TOT_HITS
392 jones 1.9 INTEGER*4 HAERO_PLANE
393 INTEGER*4 HAERO_PAIR_NUM
394 INTEGER*4 HAERO_ADC_POS
395 INTEGER*4 HAERO_ADC_NEG
396 INTEGER*4 HAERO_TDC_POS
397 INTEGER*4 HAERO_TDC_NEG
398 COMMON/HMS_RAW_AERO/
399 & HAERO_PLANE(HMAX_AERO_HITS),
400 & HAERO_PAIR_NUM(HMAX_AERO_HITS),
401 & HAERO_ADC_POS(HMAX_AERO_HITS),
402 & HAERO_ADC_NEG(HMAX_AERO_HITS),
403 & HAERO_TDC_POS(HMAX_AERO_HITS),
404 & HAERO_TDC_NEG(HMAX_AERO_HITS),
405 & HAERO_TOT_HITS
406
407 *
408 *..........................................................................
|
409 cdaq 1.1 *
410 *
411 * HMS DETECTOR TRACK QUANTITIES
412 * FILLED BY H_TRACK SUBROUTINE
413 *
|
414 jones 1.11 INTEGER*4 HNTRACKS_MAX ! size of array
415 PARAMETER (HNTRACKS_MAX=20) ! SET MAXIMUM TO 20
|
416 cdaq 1.1 INTEGER*4 HNTRACKHITS_MAX ! MAXIMUM NUMBER OF HITS IN EACH TRACK
417 PARAMETER (HNTRACKHITS_MAX=16) ! SET MAXIMUM TO 15
418 INTEGER*4 HNTRACKS_FP ! NUMBER OF FOCAL PLANE TRACKS FOUND
419 * ALL THE FOLLOWING VARIABLES ARE ARRAYS
420 *
421 REAL*4 HX_FP ! X POSITION OF TRACK IN FOCAL PLANE
422 REAL*4 HY_FP ! Y POSITION OF TRACK IN FOCAL PLANE
423 REAL*4 HZ_FP ! Z POSITION OF TRACK IN FOCAL PLANE
424 REAL*4 HXP_FP ! X SLOPE OF TRACK IN FOCAL PLANE
425 REAL*4 HYP_FP ! Y SLOPE OF TRACK IN FOCAL PLANE
426 REAL*4 HCHI2_FP ! FIT QUALITY IN FOCAL PLANE
427 REAL*4 HCHI2PERDOF_FP ! fp chi2 per degree of freedom
428 INTEGER*4 HNFREE_FP ! NUMBER OF DEGREES OF FREEDOM IN FIT
429 INTEGER*4 HNTRACK_HITS ! LIST OF HITS ON EACH TRACK
430 REAL*4 HDEL_FP ! FOCAL PLANE ERROR MATRIX
431 REAL*4 HX_FP_rot ! x in rotated focal plane
432 REAL*4 HY_FP_rot ! y in rotated f plane
433 REAL*4 HXP_FP_rot ! x slope in rotated f plane
434 REAL*4 HYP_FP_rot ! y slope in rot f plane
435
436 * THE FOCAL PLANE ERROR MATRIX IS A 4 BY 4 BY HNTRACK_MAX ARRAY
437 cdaq 1.1 * THE FOUR INDECIES FOR EACH TRACK ARE X, XP, Y, YP
438 * THE ERROR MATRIX FOR EACH TRACK IS SYMMETRIC ABOUT THE DIAGONAL
439 * DELXX DELXXP DELXY DELXYP
440 * DELXPX DELXPXP DELXPY DELXPYP
441 * DELYPX DELYXP DELYY DELYYP
442 * DELYPX DELYPXP DELYPY DELYPYP
443 COMMON/HMS_FOCAL_PLANE/
444 1 HX_FP(HNTRACKS_MAX),
445 2 HY_FP(HNTRACKS_MAX),
446 3 HZ_FP(HNTRACKS_MAX),
447 4 HXP_FP(HNTRACKS_MAX),
448 5 HYP_FP(HNTRACKS_MAX),
449 6 HCHI2_FP(HNTRACKS_MAX),
450 7 HDEL_FP(4,4,HNTRACKS_MAX),
451 8 HNTRACK_HITS(HNTRACKS_MAX,HNTRACKHITS_MAX+1),
452 9 HNFREE_FP(HNTRACKS_MAX),
453 A HNTRACKS_FP,HCHI2PERDOF_FP(HNTRACKS_MAX),
454 > HX_FP_rot(HNTRACKS_MAX),
455 > HY_FP_rot(HNTRACKS_MAX),
456 > HXP_FP_rot(HNTRACKS_MAX),
457 > HYP_FP_rot(HNTRACKS_MAX)
|
458 jones 1.11
|
459 cdaq 1.1
460
461 * HMS TARGET QUANTITIES
462 * ASSUME THE SAME NUMBER OF MAXIMUM TRACKS AS IN THE FOCAL PLANE
463 * HNTRACKS_MAX
464 *
465 * FILLED BY H_TARG_TRANS SUBROUTINE
466 INTEGER*4 HNTRACKS_TAR ! NUMBER OF TARGET TRACKS FOUND
467 * ALL THE FOLLOWING VARIABLES ARE ARRAYS
468 *
469 REAL*4 HX_TAR ! X POSITION OF TRACK AT TARGET
470 REAL*4 HY_TAR ! Y POSITION OF TRACK AT TARGET
471 REAL*4 HZ_TAR ! Z POSITION OF TRACK AT TARGET
472 REAL*4 HXP_TAR ! X SLOPE OF TRACK AT TARGET
473 REAL*4 HYP_TAR ! Y SLOPE OF TRACK AT TARGET
474 REAL*4 HDELTA_TAR ! FRACTION TRACK MOMENTUM
475 REAL*4 HP_TAR ! MOMENTUM OF TRACK AT TARGET
476 REAL*4 HCHI2_TAR ! FIT QUALITY AT TARGET
477 INTEGER*4 HNFREE_TAR ! NUMBER OF DEGREES OF FREEDOM IN FIT
478 REAL*4 HDEL_TAR ! TARGET ERROR MATRIX
479 * THE FOCAL PLANE ERROR MATRIX IS A 5 BY 5 BY HNTRACK_MAX ARRAY
480 cdaq 1.1 * THE FIVE INDECIES FOR EACH TRACK ARE X, Y , XP, YP and P
481 * THE ERROR MATRIX FOR EACH TRACK IS SYMMETRIC ABOUT THE DIAGONAL
482 * DELXX DELXXP DELXY DELXYP DELXP
483 * DELXPX DELXPXP DELXPY DELXPYP DELXPP
484 * DELYX DELYXPY DELYY DELYYP DELYP
485 * DELYPX DELYPXP DELYPY DELYPYP DELYPP
486 * DELPX DELPXP DELPY DELPXP DELPP
487 INTEGER*4 HLINK_TAR_FP ! LINK POINTER TO FOCAL PLANE TRACK NUMBER
488 COMMON/HMS_TARGET/
489 1 HX_TAR(HNTRACKS_MAX),
490 2 HY_TAR(HNTRACKS_MAX),
491 3 HZ_TAR(HNTRACKS_MAX),
492 4 HXP_TAR(HNTRACKS_MAX),
493 5 HYP_TAR(HNTRACKS_MAX),
494 6 HDELTA_TAR(HNTRACKS_MAX),
495 7 HP_TAR(HNTRACKS_MAX),
496 8 HCHI2_TAR(HNTRACKS_MAX),
497 9 HDEL_TAR(5,5,HNTRACKS_MAX),
498 A HNFREE_TAR(HNTRACKS_MAX),
499 B HLINK_TAR_FP(HNTRACKS_MAX),
500 C HNTRACKS_TAR
501 cdaq 1.1 *
502 *
503 * HMS_TRACK_TESTS
504 *
505 * PARTICLE ID INFORMATION FILLED BY H_TOF and H_CAL
506 * THIS STORES THE RESULTS OF SHOWER AND SCINTILLATOR CALCULATIONS
507 * FOR EACH OF THE TRACKS GENERATED BY H_TRACK
508 *
509 INTEGER*4 HNBLOCKS_CAL(HNTRACKS_MAX)
510 REAL*4 HTRACK_E1(HNTRACKS_MAX)
511 REAL*4 HTRACK_E2(HNTRACKS_MAX)
512 REAL*4 HTRACK_E3(HNTRACKS_MAX)
513 REAL*4 HTRACK_E4(HNTRACKS_MAX)
514 REAL*4 HTRACK_ET(HNTRACKS_MAX)
515 REAL*4 HTRACK_PRESHOWER_E(HNTRACKS_MAX)
|
516 saw 1.7 REAL*4 HTRACK_E1_POS(HNTRACKS_MAX)
517 REAL*4 HTRACK_E1_NEG(HNTRACKS_MAX)
518 REAL*4 HTRACK_E2_POS(HNTRACKS_MAX)
519 REAL*4 HTRACK_E2_NEG(HNTRACKS_MAX)
|
520 cdaq 1.1 *
521 INTEGER*4 HSCIN_HIT(HNTRACKS_MAX,HMAX_SCIN_HITS)
522 INTEGER*4 HNUM_SCIN_HIT(HNTRACKS_MAX)
523 INTEGER*4 HNUM_PMT_HIT(HNTRACKS_MAX)
524 REAL*4 HDEDX(HNTRACKS_MAX,HMAX_SCIN_HITS)
525 REAL*4 HBETA(HNTRACKS_MAX)
526 REAL*4 HBETA_CHISQ(HNTRACKS_MAX)
527 REAL*4 HTIME_AT_FP(HNTRACKS_MAX)
|
528 cdaq 1.3 REAL*4 HSCIN_FPTIME(HNTRACKS_MAX,HMAX_SCIN_HITS)
|
529 cdaq 1.1 *
530 COMMON/HMS_TRACK_TESTS/
|
531 saw 1.7 1 HTRACK_E1, ! ENERGY IN FIRST COLUMN NEAR TRACK
|
532 cdaq 1.1 2 HTRACK_E2, ! SECOND COLUMN
533 3 HTRACK_E3, ! THIRD COLUMN
534 4 HTRACK_E4, ! FOURTH COLUMN
535 5 HTRACK_ET, ! TOTAL SHOWER ENERGY ALONG TRACK
536 6 HTRACK_PRESHOWER_E, ! PRESHOWER ENERGY-Note definition is exp. dep.
537 7 HDEDX, !
538 8 HBETA, ! VELOCITY OF TRACK
539 9 HBETA_CHISQ, ! CHISQ OF FIT TO BETA OF TRACK
540 A HTIME_AT_FP, !
541 B HNBLOCKS_CAL, ! NUMBER OF SHOWER BLOCKS ON EACH TRACK
542 C HSCIN_HIT, ! ARRAY OF SCIN HITS ASSOCIATED WITH
543 D ! EACH TRACK
544 E HNUM_SCIN_HIT, ! NUMBER OF HITS FOR EACH TRACK
|
545 cdaq 1.3 F HNUM_PMT_HIT, ! NUMBER OF PMT HITS FOR EACH TRACK
|
546 saw 1.7 G HSCIN_FPTIME,
547 H HTRACK_E1_POS,
548 I HTRACK_E1_NEG,
549 J HTRACK_E2_POS,
550 K HTRACK_E2_NEG
|
551 cdaq 1.1 *
552 * HMS SINGLES PHYSICS COMMON BLOCKS
553 * THESE ARE FILLED BY H_PHYSICS
554 *
555 *
556 REAL*4 HSP ! Lab momentum of chosen track in GeV/c
557 REAL*4 HSENERGY ! Lab total energy of chosen track in GeV
|
558 csa 1.8 REAL*4 HSCORRP ! electron momentum corrected for eloss
559 REAL*4 HSCORRE ! electron energy corrected for eloss
|
560 cdaq 1.1 REAL*4 HSDELTA ! Spectrometer delta of chosen track
561 REAL*4 HSTHETA ! Lab Scattering angle in radians
562 REAL*4 HSPHI ! Lab Azymuthal angle in radians
|
563 jones 1.12 REAL*4 HSINPLANE ! In plane angle
|
564 cdaq 1.1 REAL*4 HSMINV ! Invariant Mass of remaing hadronic system
565 REAL*4 HSZBEAM ! Lab Z coordinate of intersection of beam
566 ! track with spectrometer ray
567 REAL*4 HSDEDX(4) ! DEDX of chosen track in each scin plane
568 REAL*4 HSBETA ! BETA of chosen track
569 REAL*4 HSTRACK_ET ! Total shower energy of chosen track
570 REAL*4 HSTRACK_PRESHOWER_E ! preshower of chosen track
|
571 saw 1.7 REAL*4 HSTRACK_E1_POS ! Shower energy E1_POS of chosen track
572 REAL*4 HSTRACK_E1_NEG ! Shower energy E1_NEG of chosen track
573 REAL*4 HSTRACK_E2_POS ! Shower energy E2_POS of chosen track
574 REAL*4 HSTRACK_E2_NEG ! Shower energy E2_NEG of chosen track
|
575 cdaq 1.1 REAL*4 HSTIME_AT_FP
576 REAL*4 HSX_FP ! X focal plane position
577 REAL*4 HSY_FP
578 REAL*4 HSXP_FP
579 REAL*4 HSYP_FP
580 REAL*4 HSCHI2PERDEG ! CHI2 per degree of freedom of chosen track.
581 REAL*4 HSX_TAR
582 REAL*4 HSY_TAR
583 REAL*4 HSXP_TAR
584 REAL*4 HSYP_TAR
585 REAL*4 HSBETA_CHISQ
586 *
587 real*4 hsmass2 ! Mass squared
588 real*4 hst ! invariant t
589 real*4 hsu ! invariant u
590 real*4 hseloss
591 real*4 hsq3 ! Lab frame momentum transfer
|
592 csa 1.8 * real*4 hsthetaq, hsphiq ! Direction of q3
|
593 cdaq 1.1 real*4 hsbigq2 ! Q**2
594 real*4 hsx ! fraction of nucleon p carried by quark
|
595 saw 1.5 real*4 hsy ! fraction of lepton''s E lost in lab
|
596 cdaq 1.1 real*4 hsw ! Invariant mass of recoil system
597 real*4 hsw2 ! Invariant mass**2 of recoil system
|
598 cdaq 1.12.12.1 real*4 hsnu ! Ebeam-HSenergy
599 real*4 hsx_bj ! Bjorken x
600 real*4 y_scale ! scaling variable y
601 real*4 yscale ! real function that calculates Y
602 real*4 xsi_scale ! nachtmann variable (=x at Q2=1)
603 real*4 yscale_eps ! separation energy
|
604 cdaq 1.1 *
605 INTEGER*4 HSNUM_FPTRACK ! Index of focal plane track chosen
606 INTEGER*4 HSNUM_TARTRACK ! Index of target track chosen
607 INTEGER*4 HSID_LUND ! LUND particle ID code -- not yet filled
608 INTEGER*4 HSNFREE_FP
609 INTEGER*4 HSNUM_SCIN_HIT ! # OF SCINTILLATORS ON TRACK
610 INTEGER*4 HSNUM_PMT_HIT ! # OF HODOSCOPE PMTS ON TRACK
611 *
612 COMMON/HMS_PHYSICS_R4/
613 & HSP,
614 & HSENERGY,
615 & HSDELTA,
616 & HSTHETA,
617 & HSPHI,
|
618 jones 1.12 & HSINPLANE,
|
619 cdaq 1.1 & HSMINV,
620 & HSZBEAM,
621 & HSDEDX,
622 & HSBETA,
623 & HSTRACK_ET,
624 & HSTRACK_PRESHOWER_E,
|
625 saw 1.7 & HSTRACK_E1_POS,
626 & HSTRACK_E1_NEG,
627 & HSTRACK_E2_POS,
628 & HSTRACK_E2_NEG,
|
629 cdaq 1.1 & HSTIME_AT_FP,
630 & HSX_FP ,
631 & HSY_FP ,
632 & HSXP_FP ,
633 & HSYP_FP ,
634 & HSCHI2PERDEG ,
635 & HSX_TAR ,
636 & HSY_TAR ,
637 & HSXP_TAR ,
638 & HSYP_TAR ,
639 & HSBETA_CHISQ,
|
640 csa 1.8 & hsmass2,
641 & hst,
642 & hsu,
643 & hseloss,
644 & hsq3,
645 & hsbigq2,
646 & hsx,
647 & hsy,
648 & hsw,
649 & hsw2,
650 & hscorrp,
|
651 cdaq 1.12.12.1 & hscorre,
652 & hsnu,
653 & hsx_bj,
654 & y_scale,
655 & xsi_scale
|
656 csa 1.8 * & hsthetaq,hsphiq
|
657 cdaq 1.1 *
658 COMMON/HMS_PHYSICS_I4/
659 & HSNUM_FPTRACK,
660 & HSNUM_TARTRACK,
661 & HSID_LUND,
662 & HSNFREE_FP,
663 & HSNUM_SCIN_HIT,
664 & HSNUM_PMT_HIT
665 *
666 *
667 * Non-Hits data with HMS gates or starts.
668 * (Energy SUMS, logic timing,...)
669 *
670 INTEGER HMAX_MISC_HITS
|
671 cdaq 1.3 PARAMETER(HMAX_MISC_HITS=100)
|
672 cdaq 1.1 INTEGER*4 HMISC_TOT_HITS
|
673 saw 1.4 INTEGER*4 HMISC_RAW_ADDR1 ! "Plane" (1=TDC,2=ADC)
|
674 cdaq 1.1 INTEGER*4 HMISC_RAW_ADDR2 ! "Counter"
675 INTEGER*4 HMISC_RAW_DATA
676 COMMON/H_RAW_MISC/
677 & HMISC_RAW_ADDR1(HMAX_MISC_HITS),
678 & HMISC_RAW_ADDR2(HMAX_MISC_HITS),
679 & HMISC_RAW_DATA(HMAX_MISC_HITS),
680 & HMISC_TOT_HITS
681 *
682 *
683 *
684 *******************end: hms_data_structures.cmn*************************
685 * Local Variables:
686 * mode: fortran
687 * fortran-continuation-string: "&"
688 * comment-column: 35
689 * End:
|
690 jones 1.9
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711 jones 1.9
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732 jones 1.9
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753 jones 1.9
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774 jones 1.9
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795 jones 1.9
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816 jones 1.9
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837 jones 1.9
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858 jones 1.9
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879 jones 1.9
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900 jones 1.9
901
902
903
904
905
906
|
907 cdaq 1.1
|