]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ISAJET/code/sigssy.F
First commit.
[u/mrichter/AliRoot.git] / ISAJET / code / sigssy.F
CommitLineData
0795afa3 1#include "isajet/pilot.h"
2 SUBROUTINE SIGSSY
3C
4C Calculate d(sigma)/d(pt**2)d(y1)d(y2) for supersymmetric
5C particle pairs, including gluinos, gauginos, and squarks.
6C
7C SIGMA = cross section summed over types allowed by
8C JETTYPE cards (with natural equivalence.)
9C SIGS(I) = partial cross section for I1 + I2 --> I3 + I4
10C INOUT(I) = IOPAK**3*I4 + IOPAK**2*I3 + IOPAK*I2 +I1
11C
12C Extra factor of 1/2 needed for nonidentical final jets.
13C Y=-log(tan(theta/2)) gives jacobean P1*P2/E1*E2
14C
15C Dec. 1992: Use cross sections from Baer and Tata, Phys.
16C Lett. 160B, 159; Phys. Rev. D42, 2259. These papers
17C separate L and R squarks.
18C
19C Gauginos are included only for MSSM. The cross sections are
20C calculated in SIGSSZ, which is called from here.
21C
22#if defined(CERNLIB_IMPNONE)
23 IMPLICIT NONE
24#endif
25#include "isajet/itapes.inc"
26#include "isajet/qcdpar.inc"
27#include "isajet/jetpar.inc"
28#include "isajet/primar.inc"
29#include "isajet/q1q2.inc"
30#include "isajet/jetsig.inc"
31#include "isajet/const.inc"
32#include "isajet/qsave.inc"
33#include "isajet/wcon.inc"
34#include "isajet/sstype.inc"
35#include "isajet/xmssm.inc"
36C
37 REAL X(2)
38 INTEGER IDQ(13),IDQSS(25),JS2JT(25)
39 EQUIVALENCE (X(1),X1)
40 LOGICAL LLRR
41 REAL QFCN,STRUC,AMASS,FQG
42 REAL AMG,SIG0,SIGR,AM1,SIG,FAC,AMQ,AM,AM2,AMQ2,S,T,U,AMG2,E1,E2,
43 $AMSQ,AM1SQ,AM2SQ,SIGL
44 INTEGER IFL1,IFL2,IQ1,IQ2,JQ1,JQ2,I,IFLQ1,IFLQ2,IH,IQ,
45 $JQ,JQIN1,JQIN2
46C
47C IDENT codes from /SSTYPE/. (Fortran 77 allows - signs in
48C parameter statements but not data statements.)
49 INTEGER MSUPL,MSDNL,MSSTL,MSCHL,MSBT1,MSTP1,
50 $MSUPR,MSDNR,MSSTR,MSCHR,MSBT2,MSTP2,
51 $MDUP,MDDN,MDST,MDCH,MDBT,MDTP
52 PARAMETER (MSUPL=-ISUPL)
53 PARAMETER (MSDNL=-ISDNL)
54 PARAMETER (MSSTL=-ISSTL)
55 PARAMETER (MSCHL=-ISCHL)
56 PARAMETER (MSBT1=-ISBT1)
57 PARAMETER (MSTP1=-ISTP1)
58 PARAMETER (MSUPR=-ISUPR)
59 PARAMETER (MSDNR=-ISDNR)
60 PARAMETER (MSSTR=-ISSTR)
61 PARAMETER (MSCHR=-ISCHR)
62 PARAMETER (MSBT2=-ISBT2)
63 PARAMETER (MSTP2=-ISTP2)
64 PARAMETER (MDUP=-IDUP)
65 PARAMETER (MDDN=-IDDN)
66 PARAMETER (MDST=-IDST)
67 PARAMETER (MDCH=-IDCH)
68 PARAMETER (MDBT=-IDBT)
69 PARAMETER (MDTP=-IDTP)
70 DATA IDQSS/0,
71 $ISUPL,MSUPL,ISDNL,MSDNL,ISSTL,MSSTL,ISCHL,MSCHL,ISBT1,MSBT1,
72 $ISTP1,MSTP1,
73 $ISUPR,MSUPR,ISDNR,MSDNR,ISSTR,MSSTR,ISCHR,MSCHR,ISBT2,MSBT2,
74 $ISTP2,MSTP2/
75 DATA IDQ/IDGL,IDUP,MDUP,IDDN,MDDN,IDST,MDST,IDCH,MDCH,
76 $IDBT,MDBT,IDTP,MDTP/
77C JS2JT: Susy jettype -> normal jettype
78 DATA JS2JT/1,
79 $2,3,4,5,6,7,8,9,10,11,12,13,2,3,4,5,6,7,8,9,10,11,12,13/
80C
81C Functions
82 QFCN(IQ,IH)=STRUC(X(IH),QSQ,IQ,IDIN(IH))/X(IH)
83 FQG(S,T,U)=((16./3.)*(1./(U*T)**2+1./(S*U)**2)
84 $+2.*(-2./3.)/(S*T*U**2))*(-U*S*T**2+2.*U*S*T*(AMG2-AMQ2)
85 $-2.*U*S*(AMG2-AMQ2)**2-2.*S**2*AMG2*(AMG2-AMQ2))
86C
87C Initialize
88C
89 SIGMA=0.
90 NSIGS=0
91 DO 100 I=1,MXSIGS
92 SIGS(I)=0.
93100 CONTINUE
94C
95C Gluino + gluino
96C
97 IF(.NOT.(GOQ(1,1).AND.GOQ(1,2))) GO TO 300
98 AM=AMASS(ISGL)
99 CALL TWOKIN(0.,0.,AM,AM)
100 IF(X1.GE.1..OR.X2.GE.1.) GO TO 300
101 AM2=AM**2
102 S=SHAT
103 T=THAT
104 U=UHAT
105 E1=SQRT(P(1)**2+AM2)
106 E2=SQRT(P(2)**2+AM2)
107 FAC=PI*ALFQSQ**2/S**2
108 FAC=FAC*(S/SCM)*(P(1)*P(2)/(E1*E2))*UNITS
109C
110C gl gl ---> glss glss
111 SIG=9./4.*(2.*(T-AM2)*(U-AM2)/S**2
112 $+((T-AM2)*(U-AM2)-2.*AM2*(T+AM2))/(T-AM2)**2
113 $+((U-AM2)*(T-AM2)-2.*AM2*(U+AM2))/(U-AM2)**2
114 $+((T-AM2)*(U-AM2)+AM2*(U-T))/(S*(T-AM2))
115 $+((U-AM2)*(T-AM2)+AM2*(T-U))/(S*(U-AM2))
116 $+AM2*(S-4*AM2)/((T-AM2)*(U-AM2)))
117 SIG=.5*FAC*SIG*QFCN(1,1)*QFCN(1,2)
118 CALL SIGFIL(SIG,1,1,1,1)
119C
120C qk qb ---> glss glss
121 DO 220 IQ=1,5
122 IQ1=2*IQ
123 IQ2=IQ1+1
124C Left squark exchange
125 AMQ=AMASS(IDQSS(IQ1))
126 AMQ2=AMQ**2
127 SIGL=(8./3.)*((T-AM2)**2+(U-AM2)**2+2.*AM2*S)/(S**2)
128 $ +(32./27.)*(T-AM2)**2/(T-AMQ2)**2
129 $ +(32./27.)*(U-AM2)**2/(U-AMQ2)**2
130 $ +(8./3.)*((T-AM2)**2+AM2*S)/(S*(T-AMQ2))
131 $ +(8./3.)*((U-AM2)**2+AM2*S)/(S*(U-AMQ2))
132 $ +(8./27.)*AM2*S/((T-AMQ2)*(U-AMQ2))
133 SIGL=.5*FAC*SIGL
134C Right squark exchange
135 AMQ=AMASS(IDQSS(IQ1+12))
136 AMQ2=AMQ**2
137 SIGR=(8./3.)*((T-AM2)**2+(U-AM2)**2+2.*AM2*S)/(S**2)
138 $ +(32./27.)*(T-AM2)**2/(T-AMQ2)**2
139 $ +(32./27.)*(U-AM2)**2/(U-AMQ2)**2
140 $ +(8./3.)*((T-AM2)**2+AM2*S)/(S*(T-AMQ2))
141 $ +(8./3.)*((U-AM2)**2+AM2*S)/(S*(U-AMQ2))
142 $ +(8./27.)*AM2*S/((T-AMQ2)*(U-AMQ2))
143 SIGR=.5*FAC*SIGR
144 SIG0=.5*(SIGL+SIGR)
145C Total
146 SIG=SIG0*QFCN(IQ1,1)*QFCN(IQ2,2)
147 CALL SIGFIL(SIG,IQ1,IQ2,1,1)
148 SIG=SIG0*QFCN(IQ2,1)*QFCN(IQ1,2)
149 CALL SIGFIL(SIG,IQ2,IQ1,1,1)
150220 CONTINUE
151C
152C Scalar quark + scalar (anti)quark
153C
154300 CONTINUE
155 AMG=AMASS(ISGL)
156 AMG2=AMG**2
157C IQ1 and IQ2 loop over left and right (anti)squarks
158 DO 310 IQ1=2,25
159 DO 320 IQ2=2,25
160 IF(.NOT.(GOQ(IQ1,1).AND.GOQ(IQ2,2))) GO TO 320
161 JQ1=JS2JT(IQ1)
162 JQ2=JS2JT(IQ2)
163C IF(JQ1.GE.12.OR.JQ2.GE.12) GO TO 320
164 IFL1=IDQSS(IQ1)
165 IFL2=IDQSS(IQ2)
166 IFLQ1=IDQ(JQ1)
167 IFLQ2=IDQ(JQ2)
168C LLRR is true for left-left or right-right
169 IF((IQ1.LE.13.AND.IQ2.LE.13).OR.(IQ1.GT.13.AND.IQ2.GT.13))
170 $ THEN
171 LLRR=.TRUE.
172 ELSE
173 LLRR=.FALSE.
174 ENDIF
175C Kinematics
176 AM1=AMASS(IFL1)
177 AM2=AMASS(IFL2)
178 AM=AM1
179 CALL TWOKIN(0.,0.,AM1,AM2)
180 IF(X1.GE.1..OR.X2.GE.1.) GO TO 320
181 AMSQ=AM**2
182 AM1SQ=AM1**2
183 AM2SQ=AM2**2
184 S=SHAT
185 T=THAT
186 U=UHAT
187 E1=SQRT(P(1)**2+AM1SQ)
188 E2=SQRT(P(2)**2+AM2SQ)
189 FAC=PI*ALFQSQ**2/S**2
190 FAC=FAC*(S/SCM)*(P(1)*P(2)/(E1*E2))*UNITS
191C
192C gl gl ---> qkss qbss
193C
194 IF(IFL1.EQ.-IFL2) THEN
195 SIG=(7./48.+3.*(U-T)**2/(16.*S**2))
196 $ *(1.+2.*AMSQ*T/(T-AMSQ)**2+2.*AMSQ*U/(U-AMSQ)**2
197 $ +4.*AMSQ**2/((T-AMSQ)*(U-AMSQ)))
198 SIG=SIG*FAC*QFCN(1,1)*QFCN(1,2)
199 SIG=.5*SIG
200C Another .5 to sum over L and R
201 SIG=.5*SIG
202 CALL SIGFIL(SIG,1,1,IQ1,IQ2)
203 ENDIF
204C
205C qk qb ---> qkss qbss
206C
207 IF(IFLQ1.EQ.-IFLQ2.AND.LLRR) THEN
208C Identical squark-antisquark, LL or RR
209 SIG=(2./9.)*(1/(T-AMG2)**2+2/S**2-2/(3*S*(T-AMG2)))
210 $ *(-S*T-(T-AMSQ)**2)*FAC*QFCN(JQ1,1)*QFCN(JQ2,2)
211 SIG=.5*SIG
212 CALL SIGFIL(SIG,JQ1,JQ2,IQ1,IQ2)
213 SIG=(2./9.)*(1/(U-AMG2)**2+2/S**2-2/(3*S*(U-AMG2)))
214 $ *(-S*U-(U-AMSQ)**2)*FAC*QFCN(JQ2,1)*QFCN(JQ1,2)
215 SIG=.5*SIG
216 CALL SIGFIL(SIG,JQ2,JQ1,IQ1,IQ2)
217 ELSEIF(IFLQ1.EQ.-IFLQ2.AND..NOT.LLRR) THEN
218C Identical squark-antisquark, LR or RL
219 SIG=(2./9.)*AMG2*S/(T-AMG2)**2*FAC*QFCN(JQ1,1)*QFCN(JQ2,2)
220 SIG=.5*SIG
221 CALL SIGFIL(SIG,JQ1,JQ2,IQ1,IQ2)
222 SIG=(2./9.)*AMG2*S/(U-AMG2)**2*FAC*QFCN(JQ2,1)*QFCN(JQ1,2)
223 SIG=.5*SIG
224 CALL SIGFIL(SIG,JQ2,JQ1,IQ1,IQ2)
225 ELSEIF(IFLQ1.EQ.IFLQ2.AND.LLRR) THEN
226C Identical squark-squark, LL or RR
227 SIG=(1./9.)*AMG2*S*(1/(T-AMG2)**2+1/(U-AMG2)**2
228 $ -(2./3.)/((T-AMG2)*(U-AMG2)))*FAC*QFCN(JQ1,1)*QFCN(JQ2,2)
229 CALL SIGFIL(SIG,JQ1,JQ2,IQ1,IQ2)
230 ELSEIF(IFLQ1.EQ.IFLQ2.AND..NOT.LLRR) THEN
231C Identical squark-squark, LR or RL
232 SIG=(2./9.)*(1/(T-AMG2)**2*(-S*T-(T-AM1SQ)*(T-AM2SQ))
233 $ +1/(U-AMG2)**2*(-S*U-(U-AM1SQ)*(U-AM2SQ)))
234 $ *FAC*QFCN(JQ1,1)*QFCN(JQ2,2)
235 CALL SIGFIL(SIG,JQ1,JQ2,IQ1,IQ2)
236 ELSEIF(IFL1*IFL2.LT.0.AND.LLRR) THEN
237C Nonidentical squark-antisquark, LL or RR
238 SIG=(2./9.)*(-S*T-(T-AM1SQ)*(T-AM2SQ))/(T-AMG2)**2*FAC
239 $ *QFCN(JQ1,1)*QFCN(JQ2,2)
240 SIG=.5*SIG
241 CALL SIGFIL(SIG,JQ1,JQ2,IQ1,IQ2)
242 SIG=(2./9.)*(-S*U-(U-AM1SQ)*(U-AM2SQ))/(U-AMG2)**2*FAC
243 $ *QFCN(JQ2,1)*QFCN(JQ1,2)
244 SIG=.5*SIG
245 CALL SIGFIL(SIG,JQ2,JQ1,IQ1,IQ2)
246 ELSEIF(IFL1*IFL2.LT.0.AND..NOT.LLRR) THEN
247C Nonidentical squark-antisquark, LR or RL
248 SIG=(2./9.)*AMG2*S/(T-AMG2)**2*FAC*QFCN(JQ1,1)*QFCN(JQ2,2)
249 SIG=.5*SIG
250 CALL SIGFIL(SIG,JQ1,JQ2,IQ1,IQ2)
251 SIG=(2./9.)*AMG2*S/(U-AMG2)**2*FAC*QFCN(JQ2,1)*QFCN(JQ1,2)
252 SIG=.5*SIG
253 CALL SIGFIL(SIG,JQ2,JQ1,IQ1,IQ2)
254 ELSEIF(IFL1*IFL2.GT.0.AND.LLRR) THEN
255C Nonidentical squark-squark, LL or RR
256 SIG=(2./9.)*AMG2*S/(T-AMG2)**2*FAC*QFCN(JQ1,1)*QFCN(JQ2,2)
257 SIG=.5*SIG
258 CALL SIGFIL(SIG,JQ1,JQ2,IQ1,IQ2)
259 SIG=(2./9.)*AMG2*S/(U-AMG2)**2*FAC*QFCN(JQ2,1)*QFCN(JQ1,2)
260 SIG=.5*SIG
261 CALL SIGFIL(SIG,JQ2,JQ1,IQ1,IQ2)
262 ELSEIF(IFL1*IFL2.GT.0.AND..NOT.LLRR) THEN
263C Nonidentical squark-squark, LR or RL
264 SIG=(2./9.)*(-S*T-(T-AM1SQ)*(T-AM2SQ))/(T-AMG2)**2*FAC
265 $ *QFCN(JQ1,1)*QFCN(JQ2,2)
266 SIG=.5*SIG
267 CALL SIGFIL(SIG,JQ1,JQ2,IQ1,IQ2)
268 SIG=(2./9.)*(-S*U-(U-AM1SQ)*(U-AM2SQ))/(U-AMG2)**2*FAC
269 $ *QFCN(JQ2,1)*QFCN(JQ1,2)
270 SIG=.5*SIG
271 CALL SIGFIL(SIG,JQ2,JQ1,IQ1,IQ2)
272 ELSE
273 STOP99
274 ENDIF
275C
276C q1 + q1bar --> q2ss + q2ssbar
277C
278 IF(IFLQ1.EQ.-IFLQ2.AND.LLRR) THEN
279 DO 330 JQIN1=2,10,2
280 IF(JQIN1.EQ.JQ1.OR.JQIN1.EQ.JQ2) GO TO 330
281 JQIN2=MATCH(JQIN1,4)
282 SIG=(4./9.)*(-S*T-(T-AM1SQ)**2)/S**2*FAC
283 $ *QFCN(JQIN1,1)*QFCN(JQIN2,2)
284 SIG=.5*SIG
285 CALL SIGFIL(SIG,JQIN1,JQIN2,IQ1,IQ2)
286 SIG=(4./9.)*(-S*U-(U-AM1SQ)**2)/S**2*FAC
287 $ *QFCN(JQIN2,1)*QFCN(JQIN1,2)
288 SIG=.5*SIG
289 CALL SIGFIL(SIG,JQIN2,JQIN1,IQ1,IQ2)
290330 CONTINUE
291 ENDIF
292320 CONTINUE
293310 CONTINUE
294C
295C Scalar quark + gluino
296C
297 AMG=AMASS(ISGL)
298 AMG2=AMG**2
299 DO 400 IQ=2,25
300 AMQ=AMASS(IDQSS(IQ))
301 AMQ2=AMQ**2
302 JQ=JS2JT(IQ)
303C
304C Jet 1 = scalar quark
305 IF(.NOT.(GOQ(JQ,1).AND.GOQ(1,2))) GO TO 410
306 CALL TWOKIN(0.,0.,AMQ,AMG)
307 IF(X1.GE.1..OR.X2.GE.1.) GO TO 410
308 S=SHAT
309 E1=SQRT(P(1)**2+AMQ2)
310 E2=SQRT(P(2)**2+AMG2)
311 FAC=PI*ALFQSQ**2/S**2
312 FAC=FAC*S/SCM*P(1)*P(2)/(E1*E2)*UNITS
313C
314 T=THAT-AMQ2
315 U=UHAT-AMG2
316 SIG=FQG(S,T,U)*FAC/12.*QFCN(JQ,1)*QFCN(1,2)
317 SIG=.5*SIG
318 SIG=.5*SIG
319 CALL SIGFIL(SIG,JQ,1,IQ,1)
320C
321 T=UHAT-AMQ2
322 U=THAT-AMG2
323 SIG=FQG(S,T,U)*FAC/12.*QFCN(1,1)*QFCN(JQ,2)
324 SIG=.5*SIG
325 SIG=.5*SIG
326 CALL SIGFIL(SIG,1,JQ,IQ,1)
327C
328C Jet 2 = scalar quark
329410 IF(.NOT.(GOQ(1,1).AND.GOQ(JQ,2))) GO TO 400
330 CALL TWOKIN(0.,0.,AMG,AMQ)
331 IF(X1.GE.1..OR.X2.GE.1.) GO TO 400
332 S=SHAT
333 E1=SQRT(P(1)**2+AMG2)
334 E2=SQRT(P(2)**2+AMQ2)
335 FAC=PI*ALFQSQ**2/S**2
336 FAC=FAC*S/SCM*P(1)*P(2)/(E1*E2)*UNITS
337C
338 T=UHAT-AMQ2
339 U=THAT-AMG2
340 SIG=FQG(S,T,U)*FAC/12.*QFCN(1,1)*QFCN(JQ,2)
341 SIG=.5*SIG
342 SIG=.5*SIG
343 CALL SIGFIL(SIG,1,JQ,1,IQ)
344C
345 T=THAT-AMQ2
346 U=UHAT-AMG2
347 SIG=FQG(S,T,U)*FAC/12.*QFCN(JQ,1)*QFCN(1,2)
348 SIG=.5*SIG
349 SIG=.5*SIG
350 CALL SIGFIL(SIG,JQ,1,1,IQ)
351400 CONTINUE
352C
353C Calculate gaugino AND slepton cross sections only for MSSM
354C
355 IF(GOMSSM) CALL SIGSSZ
356 IF(GOMSSM) CALL SIGSSL
357C
358 RETURN
359 END