This commit was generated by cvs2svn to compensate for changes in r2,
[u/mrichter/AliRoot.git] / GEANT321 / giface / compo.F
1 *
2 * $Id$
3 *
4 * $Log$
5 * Revision 1.1.1.1  1995/10/24 10:21:15  cernlib
6 * Geant
7 *
8 *
9 #include "geant321/pilot.h"
10 *CMZ :  3.21/02 29/03/94  15.41.38  by  S.Giani
11 *-- Author :
12       SUBROUTINE COMPO
13 C
14 C *** GET PARAMETERS FOR THE TARGET NUCLEUS ***
15 C *** NVE 11-MAR-1988 CERN GENEVA ***
16 C
17 C ORIGIN : H.FESEFELDT (07-DEC-1984)
18 C
19 #include "geant321/mxgkgh.inc"
20 #include "geant321/s_curpar.inc"
21 #include "geant321/s_prntfl.inc"
22 C --- GEANT COMMONS ---
23 #include "geant321/gcbank.inc"
24 #include "geant321/gcjloc.inc"
25 #include "geant321/gcmate.inc"
26       DIMENSION RNDM(1)
27 C
28 C --- CHECK FOR COMPOUND ---
29       KK=ABS(Q(JMA+11))
30       IF (KK .GE. 2) GO TO 10
31 C
32 C --- ELEMENTS ---
33       ATNO2=A
34       ZNO2=Z
35       IF (NPRT(4)) WRITE(NEWBCD,1000) ATNO2,ZNO2
36  1000 FORMAT(' *COMPO* INTERACTION ON NUCLEUS OF ELEMENT WITH',
37      $ ' A = ',G12.5,' Z = ',G12.5)
38       GO TO 9999
39 C
40 C --- COMPOUNDS ===> SELECT NUCLEUS ---
41  10   CONTINUE
42 C
43       SUM=0.0
44       DO 11 I=1,KK
45       AI=Q(JMIXT+I)
46       ZI=Q(JMIXT+KK+I)
47       WI=Q(JMIXT+2*KK+I)
48       SUM=SUM+WI/AI
49  11   CONTINUE
50       CALL GRNDM(RNDM,1)
51       TEST1=RNDM(1)*SUM
52 C
53       TEST2=0.0
54       DO 12 I=1,KK
55       JCOMPO=I
56       AI=Q(JMIXT+I)
57       ZI=Q(JMIXT+KK+I)
58       WI=Q(JMIXT+2*KK+I)
59       TEST2=TEST2+WI/AI
60       IF (TEST2 .GT. TEST1) GO TO 20
61  12   CONTINUE
62 C
63  20   CONTINUE
64       ATNO2=AI
65       ZNO2=ZI
66       IF (NPRT(4)) WRITE(NEWBCD,1001) JCOMPO,ATNO2,ZNO2
67  1001 FORMAT(' *COMPO* COMPONENT NO. ',I2,' HAS BEEN SELECTED WITH',
68      $ ' A = ',G12.5,' Z = ',G12.5)
69 C
70  9999 CONTINUE
71       END