5 * Revision 1.1.1.1 1995/10/24 10:21:08 cernlib
9 #include "geant321/pilot.h"
10 *CMZ : 3.21/02 29/03/94 15.41.20 by S.Giani
12 SUBROUTINE GCMWPC (DETREP,HITREP,IOUT)
14 C. ******************************************************************
16 C. * Routine to compute one or two digitisations produced by a *
17 C. * hit on a cylindrical MWPC. *
18 C. * DETREP(1) number of wires *
19 C. * DETREP(2) wire spacing (radians) *
20 C. * DETREP(3) dtheta/dz along the wires *
21 C. * DETREP(4) theta of a point on wire 1 *
22 C. * DETREP(5) z of a point on wire 1 *
23 C. * DETREP(6) gap width *
24 C. * HITREP(1) theta coordinate of intersection *
25 C. * HITREP(2) z coordinate *
26 C. * HITREP(3) dtheta/dr *
27 C. * HITREP(4) dz/dr *
28 C. * IOUT(1) wire number (-1-missing) *
29 C. * IOUT(2) cluster size *
30 C. * IOUT(3) wire number of second cluster if any *
31 C. * IOUT(4) cluster size *
33 C. * ==>Called by : <USER>, GUDIGI *
34 C. * Author M.Hansroul ********* *
36 C. ******************************************************************
38 #include "geant321/gconsp.inc"
39 DIMENSION HITREP(4), DETREP(6), IOUT(4)
40 #if !defined(CERNLIB_SINGLE)
45 C. ------------------------------------------------------------------
50 IF (ZS.EQ.0.) GO TO 99
52 C. COMPUTE WIRE NUMBER
70 T1 = MOD (ONE*T1,TWOPI)
71 T2 = MOD (ONE*T2,TWOPI)
72 T0 = MOD (ONE*T0,TWOPI)
73 IF (T1.LT.0.) T1 = T1 + TWOPI
74 IF (T2.LT.0.) T2 = T2 + TWOPI
75 IF (T0.LT.0.) T0 = T0 + TWOPI
100 IWMAX = MAX (IW1,IW2)
101 IF (IWMIN.GT.NWIR) GO TO 99
103 IWMAX = MIN (NWIR,IWMAX)
106 IOUT(2) = IWMAX - IWMIN + 1
109 C. SPECIAL CASE: SIGNAL ON WIRE 1
110 C. AND ON WIRE 'NWIRES' --> 2 CLUSTERS
117 IF (IW.GT.NWIR) GO TO 99
119 IOUT(4) = NWIR - IW + 1