4 *CMZ :- -26/04/91 14.26.44 by Federico Carminati
6 *-- Author : Ian Knowles
8 C-----------------------------------------------------------------------
12 C-----------------------------------------------------------------------
14 C Constructs time-like 4-momenta & production vertices in space-like
16 C jet started by parton no.2 interference partner 1 and spin density
18 C DECPAR(2). RHOPAR(2) gives the jet spin density matrix.
20 C See I.G. Knowles, Comp. Phys. Comm. 58 (90) 271.
22 C-----------------------------------------------------------------------
24 INCLUDE 'HERWIG61.INC'
26 DOUBLE PRECISION HWR,DMIN,PT,EIKON,EISCR,EINUM,EIDEN1,EIDEN2,
28 & WT,SPIN,Z1,Z2,TR,PRMAX,CX,SX,CAZ,ROHEP(3),RMAT(3,3),ZERO2(2)
30 INTEGER JPAR,KPAR,LPAR,MPAR
36 DATA ZERO2,DMIN/ZERO,ZERO,1.D-15/
38 IF (IERROR.NE.0) RETURN
46 CALL HWVZRO(2,RHOPAR(1,2))
52 C Generate azimuthal angle of JPAR's branching using an M-function
54 C Find the daughters of JPAR, with LPAR time-like
56 10 LPAR=JDAPAR(1,JPAR)
72 CALL HWUROT(PPAR(1,JPAR), ONE,ZERO,RMAT)
74 CALL HWUROF(RMAT,PPAR(1,KPAR),ROHEP)
76 PT=MAX(SQRT(ROHEP(1)*ROHEP(1)+ROHEP(2)*ROHEP(2)),DMIN)
80 EICOR=AZSOFT.AND.IDPAR(LPAR).EQ.13
84 EISCR=1.-PPAR(5,MPAR)*PPAR(5,MPAR)/(MIN(PPAR(2,LPAR),
86 & PPAR(2,MPAR))*PPAR(4,MPAR)*PPAR(4,MPAR))
88 EINUM=PPAR(4,KPAR)*PPAR(4,LPAR)*ABS(PPAR(2,LPAR)-PPAR(2,MPAR))
90 EIDEN1=PPAR(4,KPAR)*PPAR(4,LPAR)-ROHEP(3)*PPAR(3,LPAR)
92 EIDEN2=PT*ABS(PPAR(1,LPAR))
94 EIKON=MAX(EISCR+EINUM/MAX(EIDEN1-EIDEN2,DMIN),ZERO)
104 IF (AZSPIN.AND.IDPAR(JPAR).EQ.13) THEN
106 Z1=PPAR(4,JPAR)/PPAR(4,MPAR)
110 IF (IDPAR(MPAR).EQ.13) THEN
114 ELSEIF (IDPAR(MPAR).LT.13) THEN
124 C Assign the azimuthal angle
126 PRMAX=(1.+ABS(WT))*EIKON
128 50 CALL HWRAZM( ONE,CX,SX)
130 CALL HWUROT(PPAR(1,JPAR),CX,SX,RMAT)
132 C Determine the angle between the branching planes
134 CALL HWUROF(RMAT,PPAR(1,KPAR),ROHEP)
138 PHIPAR(1,JPAR)=2.*CAZ*CAZ-1.
140 PHIPAR(2,JPAR)=2.*CAZ*ROHEP(2)/PT
142 IF (EICOR) EIKON=MAX(EISCR+EINUM/MAX(EIDEN1-EIDEN2*CAZ,DMIN),ZERO)
144 IF (AZSPIN) SPIN=1.+WT*(DECPAR(1,JPAR)*PHIPAR(1,JPAR)
146 & +DECPAR(2,JPAR)*PHIPAR(2,JPAR))
148 IF (SPIN*EIKON.LT.HWR()*PRMAX) GOTO 50
150 C Construct full 4-momentum of LPAR, sum P-trans of MPAR
156 CALL HWUROB(RMAT,PPAR(1,LPAR),PPAR(1,LPAR))
158 CALL HWVDIF(2,PPAR(1,2),PPAR(1,LPAR),PPAR(1,2))
160 C Test for end of space-like branches
162 IF (JDAPAR(1,MPAR).EQ.0) GOTO 60
164 C Generate new Decay matrix
166 CALL HWBAZF(MPAR,JPAR,ZERO2,DECPAR(1,JPAR),
168 & PHIPAR(1,JPAR),DECPAR(1,MPAR))
170 C Advance along the space-like branch
178 C Retreat along space-like line
180 C Assign initial spin density matrix
182 60 CALL HWVEQU(2,ZERO2,RHOPAR(1,MPAR))
184 CALL HWUMAS(PPAR(1,2))
186 CALL HWVZRO(4,VPAR(1,MPAR))
188 70 CALL HWVEQU(4,VPAR(1,MPAR),VPAR(1,LPAR))
190 IF (MPAR.EQ.2) RETURN
192 C Construct spin density matrix for time-like branch
194 CALL HWBAZF(MPAR,JPAR,RHOPAR(1,MPAR),PHIPAR(1,JPAR),
196 & DECPAR(1,JPAR),RHOPAR(1,LPAR))
198 C Evolve time-like side branch
200 CALL HWBTIM(LPAR,MPAR)
202 C Construct spin density matrix for space-like branch
204 CALL HWBAZF(MPAR,JPAR,PHIPAR(1,JPAR),RHOPAR(1,MPAR),
206 & DECPAR(1,LPAR),RHOPAR(1,JPAR))
208 C Assign production vertex to J
210 CALL HWVDIF(4,PPAR(1,MPAR),PPAR(1,LPAR),PPAR(1,JPAR))
212 CALL HWUDKL(IDPAR(JPAR),PPAR(1,JPAR),VPAR(1,JPAR))
214 CALL HWVSUM(4,VPAR(1,MPAR),VPAR(1,JPAR),VPAR(1,JPAR))
216 C Find parent and partner of MPAR
224 IF (JMOPAR(1,LPAR).NE.JPAR) LPAR=MPAR-1