(file) Return to hms_data_structures.cmn CVS log (file) (dir) Up to [HallC] / Analyzer / INCLUDE

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

Analyzer/Replay: Mark Jones, Documents: Stephen Wood
Powered by
ViewCVS 0.9.2-cvsgraph-1.4.0