]>
Commit | Line | Data |
---|---|---|
0795afa3 | 1 | #include "isajet/pilot.h" |
2 | SUBROUTINE QCDT(J) | |
3 | C | |
4 | C Auxiliary routine for QCDJET. Calculate ZC and store in | |
5 | C ZZC(J). Generate new mass with ZC and store in PJSET(5,J). | |
6 | C | |
7 | C Must include 1/2 symmetry factor in GAMGG. No fix is needed | |
8 | C in QCDZ since GAMGG+2*GAMQQ is used as the normalization. | |
9 | C | |
10 | C Include GM, W+, W-, and Z0 radiation. | |
11 | C | |
12 | C Ver 7.20: Anomalous dimensions were coded incorrectly! | |
13 | C | |
14 | #if defined(CERNLIB_IMPNONE) | |
15 | IMPLICIT NONE | |
16 | #endif | |
17 | #include "isajet/itapes.inc" | |
18 | #include "isajet/jetset.inc" | |
19 | #include "isajet/jwork.inc" | |
20 | #include "isajet/qcdpar.inc" | |
21 | #include "isajet/const.inc" | |
22 | #include "isajet/wcon.inc" | |
23 | #include "isajet/primar.inc" | |
24 | C | |
25 | REAL AM0,AM1,AM2,AMASS,T0,T1,T2,ZC,B0,GAMEW,GAMQQ,GAMGG,GAM,GAMZC | |
26 | REAL AM1W,AM2W,T1W,T2W,TERM,GB,PROB,RANF,RND,POW,AMNEW,AMOLD | |
27 | REAL POWEW | |
28 | INTEGER J,JTLV1,NF,IQ,JTABS,IW,JT0,JT1,IFL1,I | |
29 | INTEGER JWTYPE(4) | |
30 | DATA JWTYPE/10,80,-80,90/ | |
31 | C | |
32 | C Set ZC = 0 and return for W+- or Z0 | |
33 | C | |
34 | JTABS=IABS(JTYPE(J)) | |
35 | IF(JTABS.GE.80.AND.JTABS.LE.90) THEN | |
36 | ZZC(J)=0. | |
37 | RETURN | |
38 | ENDIF | |
39 | C | |
40 | C Calculate ZC | |
41 | C | |
42 | AM0=PJSET(5,J) | |
43 | JTLV1=JTYPE(J) | |
44 | AM1=AMASS(JTLV1)+CUTJET | |
45 | AM2=CUTJET | |
46 | IF(AM1+AM2.GE.AM0) GO TO 300 | |
47 | T0=AM0**2 | |
48 | T1=AM1**2 | |
49 | T2=AM2**2 | |
50 | ZC=(T0-T1+T2-SQRT((T0-T1-T2)**2-4*T1*T2))/(2*T0) | |
51 | ZZC(J)=ZC | |
52 | C Count light fermions | |
53 | NF=3 | |
54 | DO 110 IQ=4,6 | |
55 | IF(AM0.LT.2*AMASS(IQ)) GO TO 120 | |
56 | NF=NF+1 | |
57 | 110 CONTINUE | |
58 | 120 B0=11.-2.*NF/3. | |
59 | C | |
60 | C Calculate GAMMA(ZC) and GAMEW for quarks | |
61 | C | |
62 | GAMEW=0. | |
63 | C | |
64 | C Initial gluon | |
65 | IF(JTABS.EQ.9) THEN | |
66 | GAMQQ=(1.-2.*ZC)*(1.-ZC*(1.-ZC))/3. | |
67 | GAMGG=12.*ALOG((1.-ZC)/ZC)-9.*(1.-2.*ZC)-6.*GAMQQ | |
68 | GAMGG=0.5*GAMGG | |
69 | GAM=GAMGG+NF*GAMQQ | |
70 | C | |
71 | C Initial quark | |
72 | ELSEIF(JTABS.LT.9) THEN | |
73 | GAMZC=2.*ALOG((1-ZC)/ZC)-1.5*(1.-2.*ZC) | |
74 | GAM=4./3.*GAMZC | |
75 | GAMEW=ALFA/(2.*PI)*AQ(JTABS,1)**2*GAMZC | |
76 | IF(AM0.GT.WMASS(4)) THEN | |
77 | DO 130 IW=2,4 | |
78 | JT0=2*IABS(JTYPE(J)) | |
79 | IF(JTYPE(J).LT.0) JT0=JT0+1 | |
80 | JT1=MATCH(JT0,IW) | |
81 | IF(JT1.EQ.0) GO TO 130 | |
82 | JT1=MATCH(JT1,4) | |
83 | IFL1=JT1/2 | |
84 | AM1W=AMASS(IFL1) | |
85 | AM2W=AMASS(JWTYPE(IW)) | |
86 | IF(AM1W+AM2W.GE.AM0) GO TO 130 | |
87 | T1W=AM1W**2 | |
88 | T2W=AM2W**2 | |
89 | ZC=(T0-T1W+T2W-SQRT((T0-T1W-T2W)**2-4*T1W*T2W))/(2*T0) | |
90 | GAMZC=2.*ALOG((1-ZC)/ZC)-1.5*(1.-2.*ZC) | |
91 | TERM=(AQ(JTABS,IW)**2+BQ(JTABS,IW)**2)*GAMZC | |
92 | GAMEW=GAMEW+ALFA/(2.*PI)*TERM | |
93 | 130 CONTINUE | |
94 | ENDIF | |
95 | C | |
96 | C Initial diquark | |
97 | ELSEIF(MOD(JTABS,100).EQ.0) THEN | |
98 | GAM=8./3.*ALOG((1-ZC)/ZC)-2.*(1.-2.*ZC) | |
99 | C | |
100 | C Initial gluino | |
101 | ELSEIF(JTABS.EQ.29) THEN | |
102 | GAM=6.*ALOG((1.-ZC)/ZC)-9./2.*(1.-2.*ZC) | |
103 | C | |
104 | C Initial squark | |
105 | ELSEIF(JTABS.GT.20.AND.JTABS.LT.29) THEN | |
106 | GAM = 8./3.*(ALOG((1.-ZC)/ZC)-(1.-2.*ZC)) | |
107 | ENDIF | |
108 | C | |
109 | C Generate new mass | |
110 | C | |
111 | GB=2*GAM/B0 | |
112 | PROB=(ALOG(AM1/ALAM)/ALOG(AM0/ALAM))**GB | |
113 | PROB=PROB*(AM1/AM0)**(2.*GAMEW) | |
114 | IF(PROB.GT.RANF()) GO TO 300 | |
115 | RND=RANF() | |
116 | POW=(1.-(1.-PROB)*RND)**(1./GB) | |
117 | AMNEW=ALAM*(AM0/ALAM)**POW | |
118 | C For quark, add effect of GM, W+-, Z0 radiation | |
119 | IF(IABS(JTYPE(J)).LT.9) THEN | |
120 | DO 200 I=1,NTRIES | |
121 | AMOLD=AMNEW | |
122 | POWEW=POW/((AMOLD/AM0)**(2.*GAMEW))**(1./GB) | |
123 | AMNEW=ALAM*(AM0/ALAM)**POWEW | |
124 | IF(ABS(AMNEW-AMOLD).LT.0.001*AMOLD) GO TO 210 | |
125 | 200 CONTINUE | |
126 | ENDIF | |
127 | 210 IF(AMNEW.LE.AM1) GO TO 300 | |
128 | PJSET(5,J)=AMNEW | |
129 | RETURN | |
130 | C | |
131 | C Final parton -- set mass to physical value | |
132 | C | |
133 | 300 PJSET(5,J)=AM1-CUTJET | |
134 | JDCAY(J)=0 | |
135 | RETURN | |
136 | END |