]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HERWIG/src/hwbspn.f
use TMath::Abs() instead of ambiguous abs().
[u/mrichter/AliRoot.git] / HERWIG / src / hwbspn.f
CommitLineData
3820ca8e 1
2CDECK ID>, HWBSPN.
3
4*CMZ :- -26/04/91 11.11.54 by Bryan Webber
5
6*-- Author : Ian Knowles
7
8C-----------------------------------------------------------------------
9
10 SUBROUTINE HWBSPN
11
12C-----------------------------------------------------------------------
13
14C Constructs appropriate spin density/decay matrix for parton
15
16C in hard subprocess, othwise zero. Assignments based upon
17
18C Comp. Phys. Comm. 58 (1990) 271.
19
20C-----------------------------------------------------------------------
21
22 INCLUDE 'HERWIG61.INC'
23
24 DOUBLE PRECISION C,V12,V23,V13,TR,C1,C2,C3,R1(2),R2(2)
25
26 INTEGER IST
27
28 SAVE R1,R2,V12
29
30 IF (IERROR.NE.0) RETURN
31
32 IST=MOD(ISTHEP(NEVPAR),10)
33
34C Assumed partons processed in the order IST=1,2,3,4
35
36 IF (IPROC.GE.100.AND.IPROC.LE.116) THEN
37
38C An e+e- ---> qqbar g event
39
40 IF (IDPAR(2).EQ.13) THEN
41
42 RHOPAR(1,2)=GPOLN
43
44 RHOPAR(2,2)=0.
45
46 RETURN
47
48 ENDIF
49
50 ELSEIF (IPRO.EQ.15.OR.IPRO.EQ.17) THEN
51
52 IF (IHPRO.EQ. 7.OR.IHPRO.EQ. 8.OR.
53
54 & IHPRO.EQ.10.OR.IHPRO.EQ.11.OR.
55
56 & IHPRO.EQ.15.OR.IHPRO.EQ.16.OR.
57
58 & (IHPRO.GE.21.AND.IHPRO.LE.31)) THEN
59
60C A hard 2 --- > 2 QCD subprocess involving gluons
61
62 IF (IST.EQ.2) THEN
63
64 CALL HWVEQU(2,RHOPAR(1,2),R1(1))
65
66 C=GCOEF(2)/GCOEF(1)
67
68 DECPAR(1,2)=C*R1(1)
69
70 DECPAR(2,2)=C*R1(2)
71
72 RETURN
73
74 ELSEIF (IST.EQ.3) THEN
75
76 CALL HWVEQU(2,RHOPAR(1,2),R2(1))
77
78 V12=R1(1)*R2(1)+R1(2)*R2(2)
79
80 TR=1./(GCOEF(1)+GCOEF(2)*V12)
81
82 RHOPAR(1,2)= (GCOEF(3)*R1(1)+GCOEF(4)*R2(1))*TR
83
84 RHOPAR(2,2)=-(GCOEF(3)*R1(2)+GCOEF(4)*R2(2))*TR
85
86 RETURN
87
88 ELSEIF (IST.EQ.4) THEN
89
90 V13=R1(1)*DECPAR(1,2)+R1(2)*DECPAR(2,2)
91
92 V23=R2(1)*DECPAR(1,2)+R2(2)*DECPAR(2,2)
93
94 TR=1./(GCOEF(1)+GCOEF(2)*V12+GCOEF(3)*V13+GCOEF(4)*V23)
95
96 C1=(GCOEF(2)+GCOEF(5))*TR
97
98 C2=(GCOEF(3)+GCOEF(6))*TR
99
100 C3=(GCOEF(4)+GCOEF(6))*TR
101
102 RHOPAR(1,2)=C1*DECPAR(1,2)+C2*R2(1)+C3*R1(1)
103
104 RHOPAR(2,2)=C1*DECPAR(2,2)-C2*R1(2)-C3*R2(2)
105
106 RETURN
107
108 ENDIF
109
110 ENDIF
111
112 ELSEIF (IPRO.EQ.16) THEN
113
114C A gluon fusion ---> Higgs event
115
116 IF (IST.EQ.2) THEN
117
118 DECPAR(1,2)=RHOPAR(1,2)
119
120 DECPAR(2,2)=-RHOPAR(2,2)
121
122 RETURN
123
124 ENDIF
125
126 ENDIF
127
128 CALL HWVZRO(2,RHOPAR(1,2))
129
130 CALL HWVZRO(2,DECPAR(1,2))
131
132 END