]>
Commit | Line | Data |
---|---|---|
0795afa3 | 1 | #include "isajet/pilot.h" |
2 | SUBROUTINE INISAP(CMSE,XREAC,BEAMS,WZ,NDCAYS,DCAYS, | |
3 | $ ETMIN,RCONE,OK) | |
4 | C---------------------------------------------------------------------- | |
5 | C- | |
6 | C- Purpose and Methods : | |
7 | C- initialize ISAJET for externally supplied partons | |
8 | C- Inputs : | |
9 | C- CMSE = center of mass energy | |
10 | C- XREAC = reaction | |
11 | C- BEAMS(2) = chose 'P ' or 'AP' | |
12 | C- ETMIN = minimum ET of supplied partons | |
13 | C- RCONE = minimum cone (R) between supplied partons | |
14 | C- WZ = option 'W' or 'Z', ' ' no W's or Z's | |
15 | C- NDCAYS= number of decay options | |
16 | C- DCAYS= list of particles W or Z are allowed to decay into | |
17 | C- | |
18 | C- Controls: | |
19 | C- OK = true if initialization is possible | |
20 | C- Created 8-OCT-1991 Serban D. Protopopescu | |
21 | C- | |
22 | C---------------------------------------------------------------------- | |
23 | #if defined(CERNLIB_IMPNONE) | |
24 | IMPLICIT NONE | |
25 | #endif | |
26 | #include "isajet/keys.inc" | |
27 | #include "isajet/idrun.inc" | |
28 | #include "isajet/limevl.inc" | |
29 | #include "isajet/primar.inc" | |
30 | #include "isajet/q1q2.inc" | |
31 | #include "isajet/types.inc" | |
32 | C | |
33 | REAL CMSE | |
34 | CHARACTER*8 XREAC | |
35 | CHARACTER*2 BEAMS(2) | |
36 | REAL ETMIN,RCONE | |
37 | CHARACTER*1 WZ | |
38 | INTEGER NDCAYS | |
39 | CHARACTER*4 DCAYS(*) | |
40 | LOGICAL OK | |
41 | LOGICAL DUMY,SETTYP | |
42 | INTEGER I | |
43 | C---------------------------------------------------------------------- | |
44 | OK=.TRUE. | |
45 | CALL RESET | |
46 | IEVT=0 | |
47 | ECM=CMSE | |
48 | SCM=ECM**2 | |
49 | HALFE=ECM/2. | |
50 | ETTHRS=ETMIN | |
51 | C fudge factor 1.5 to approximate ET distributions and widths | |
52 | CONCUT=SIN(RCONE)/1.5 | |
53 | IF(RCONE.GT.1.5) CONCUT=1.0 | |
54 | USELIM=.TRUE. | |
55 | IKEYS=0 | |
56 | DO 18 I=1,8 | |
57 | 18 KEYS(I)=.FALSE. | |
58 | KEYON=.FALSE. | |
59 | REAC=XREAC | |
60 | C | |
61 | IF(XREAC.EQ.'TWOJET ') THEN | |
62 | KEYS(1)=.TRUE. | |
63 | IKEYS=1 | |
64 | C | |
65 | ELSEIF(XREAC.EQ.'DRELLYAN') THEN | |
66 | KEYS(3)=.TRUE. | |
67 | IKEYS=3 | |
68 | IF(WZ.EQ.'Z') GODY(4)=.TRUE. | |
69 | IF(WZ.EQ.'W') THEN | |
70 | GODY(2)=.TRUE. | |
71 | GODY(3)=.TRUE. | |
72 | ENDIF | |
73 | NJTTYP(1)=NDCAYS | |
74 | NJTTYP(2)=0 | |
75 | NJTTYP(3)=0 | |
76 | DO 21 I=1,NDCAYS | |
77 | JETYP(I,1)=DCAYS(I) | |
78 | 21 CONTINUE | |
79 | C | |
80 | ELSEIF(XREAC.EQ.'MINBIAS ') THEN | |
81 | KEYS(4)=.TRUE. | |
82 | IKEYS=4 | |
83 | C | |
84 | ELSEIF(XREAC.EQ.'SUPERSYM'.OR.XREAC.EQ.'SUSY ') THEN | |
85 | KEYS(5)=.TRUE. | |
86 | IKEYS=5 | |
87 | C | |
88 | ELSEIF(XREAC.EQ.'WPAIR ') THEN | |
89 | KEYS(6)=.TRUE. | |
90 | IKEYS=6 | |
91 | C | |
92 | ELSEIF(XREAC.EQ.'HIGGS ') THEN | |
93 | KEYS(7)=.TRUE. | |
94 | IKEYS=7 | |
95 | C | |
96 | ELSEIF(XREAC.EQ.'PHOTON ') THEN | |
97 | KEYS(8)=.TRUE. | |
98 | IKEYS=8 | |
99 | ENDIF | |
100 | C | |
101 | IF(IKEYS.EQ.0) THEN | |
102 | OK=.FALSE. | |
103 | GOTO 999 | |
104 | ENDIF | |
105 | C | |
106 | CALL SETCON | |
107 | IDIN(1)=1120 | |
108 | IDIN(2)=-1120 | |
109 | IF (BEAMS(1).EQ.'P ') IDIN(1)=1120 | |
110 | IF (BEAMS(2).EQ.'P ') IDIN(2)=1120 | |
111 | IF (BEAMS(1).EQ.'AP') IDIN(1)=-1120 | |
112 | IF (BEAMS(2).EQ.'AP') IDIN(2)=-1120 | |
113 | DUMY=SETTYP(0) | |
114 | CALL SETW | |
115 | CALL IDGEN | |
116 | CALL SETDKY(.FALSE.) | |
117 | CALL MBSET | |
118 | CALL PRTLIM | |
119 | CALL TIMER(1) | |
120 | 999 RETURN | |
121 | END |