2
INTEGER FKS_I_D(12), FKS_J_D(12)
3
INTEGER EXTRA_CNT_D(12), ISPLITORDER_BORN_D(12),
4
$ ISPLITORDER_CNT_D(12)
5
INTEGER FKS_J_FROM_I_D(12, NEXTERNAL, 0:NEXTERNAL)
6
INTEGER PARTICLE_TYPE_D(12, NEXTERNAL), PDG_TYPE_D(12, NEXTERNAL)
7
REAL*8 PARTICLE_CHARGE_D(12, NEXTERNAL)
8
LOGICAL SPLIT_TYPE_D(12, 2)
9
LOGICAL NEED_COLOR_LINKS_D(12), NEED_CHARGE_LINKS_D(12)
11
DATA FKS_I_D / 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5 /
12
DATA FKS_J_D / 1, 2, 3, 4, 1, 1, 2, 3, 4, 1, 2, 2 /
14
DATA NEED_COLOR_LINKS_D / .FALSE., .FALSE., .FALSE., .FALSE.,
15
$ .FALSE., .TRUE., .TRUE., .TRUE., .TRUE., .FALSE., .FALSE.,
17
DATA NEED_CHARGE_LINKS_D / .TRUE., .TRUE., .TRUE., .TRUE.,
18
$ .FALSE., .FALSE., .FALSE., .FALSE., .FALSE., .FALSE., .FALSE.,
21
DATA (FKS_J_FROM_I_D(1, 5, JPOS), JPOS = 0, 4) / 4, 1, 2, 3, 4 /
23
DATA (FKS_J_FROM_I_D(2, 5, JPOS), JPOS = 0, 4) / 4, 1, 2, 3, 4 /
25
DATA (FKS_J_FROM_I_D(3, 5, JPOS), JPOS = 0, 4) / 4, 1, 2, 3, 4 /
27
DATA (FKS_J_FROM_I_D(4, 5, JPOS), JPOS = 0, 4) / 4, 1, 2, 3, 4 /
29
DATA (FKS_J_FROM_I_D(5, 5, JPOS), JPOS = 0, 2) / 2, 1, 2 /
31
DATA (FKS_J_FROM_I_D(6, 5, JPOS), JPOS = 0, 4) / 4, 1, 2, 3, 4 /
33
DATA (FKS_J_FROM_I_D(7, 5, JPOS), JPOS = 0, 4) / 4, 1, 2, 3, 4 /
35
DATA (FKS_J_FROM_I_D(8, 5, JPOS), JPOS = 0, 4) / 4, 1, 2, 3, 4 /
37
DATA (FKS_J_FROM_I_D(9, 5, JPOS), JPOS = 0, 4) / 4, 1, 2, 3, 4 /
39
DATA (FKS_J_FROM_I_D(10, 5, JPOS), JPOS = 0, 2) / 2, 1, 2 /
41
DATA (FKS_J_FROM_I_D(11, 5, JPOS), JPOS = 0, 2) / 2, 1, 2 /
43
DATA (FKS_J_FROM_I_D(12, 5, JPOS), JPOS = 0, 2) / 2, 1, 2 /
46
C Split type: the order of elements is QCD, QED
47
DATA (SPLIT_TYPE_D (1, IPOS), IPOS=1, 2) / .FALSE., .TRUE. /
48
DATA (SPLIT_TYPE_D (2, IPOS), IPOS=1, 2) / .FALSE., .TRUE. /
49
DATA (SPLIT_TYPE_D (3, IPOS), IPOS=1, 2) / .FALSE., .TRUE. /
50
DATA (SPLIT_TYPE_D (4, IPOS), IPOS=1, 2) / .FALSE., .TRUE. /
51
DATA (SPLIT_TYPE_D (5, IPOS), IPOS=1, 2) / .FALSE., .TRUE. /
52
DATA (SPLIT_TYPE_D (6, IPOS), IPOS=1, 2) / .TRUE., .FALSE. /
53
DATA (SPLIT_TYPE_D (7, IPOS), IPOS=1, 2) / .TRUE., .FALSE. /
54
DATA (SPLIT_TYPE_D (8, IPOS), IPOS=1, 2) / .TRUE., .FALSE. /
55
DATA (SPLIT_TYPE_D (9, IPOS), IPOS=1, 2) / .TRUE., .FALSE. /
56
DATA (SPLIT_TYPE_D (10, IPOS), IPOS=1, 2) / .TRUE., .FALSE. /
57
DATA (SPLIT_TYPE_D (11, IPOS), IPOS=1, 2) / .FALSE., .TRUE. /
58
DATA (SPLIT_TYPE_D (12, IPOS), IPOS=1, 2) / .TRUE., .FALSE. /
60
C Extra cnt: if the real emission needs an extra cnt (g/a >
62
C this is the id of the extra cnt. Otherwise it should be set to 0.
63
C If not 0, store also the position in the splitorders array of
65
C coupling corresponding to the splitting type
66
DATA EXTRA_CNT_D / 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /
67
DATA ISPLITORDER_BORN_D / 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /
68
DATA ISPLITORDER_CNT_D / 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /
72
C octet = 8, triplet = 3, singlet = 1
73
DATA (PARTICLE_TYPE_D(1, IPOS), IPOS=1, NEXTERNAL) / -3, 3, 3,
75
DATA (PARTICLE_TYPE_D(2, IPOS), IPOS=1, NEXTERNAL) / -3, 3, 3,
77
DATA (PARTICLE_TYPE_D(3, IPOS), IPOS=1, NEXTERNAL) / -3, 3, 3,
79
DATA (PARTICLE_TYPE_D(4, IPOS), IPOS=1, NEXTERNAL) / -3, 3, 3,
81
DATA (PARTICLE_TYPE_D(5, IPOS), IPOS=1, NEXTERNAL) / 1, 3, 3, -3
83
DATA (PARTICLE_TYPE_D(6, IPOS), IPOS=1, NEXTERNAL) / -3, 3, 3,
85
DATA (PARTICLE_TYPE_D(7, IPOS), IPOS=1, NEXTERNAL) / -3, 3, 3,
87
DATA (PARTICLE_TYPE_D(8, IPOS), IPOS=1, NEXTERNAL) / -3, 3, 3,
89
DATA (PARTICLE_TYPE_D(9, IPOS), IPOS=1, NEXTERNAL) / -3, 3, 3,
91
DATA (PARTICLE_TYPE_D(10, IPOS), IPOS=1, NEXTERNAL) / 8, 3, 3,
93
DATA (PARTICLE_TYPE_D(11, IPOS), IPOS=1, NEXTERNAL) / -3, 1, 3,
95
DATA (PARTICLE_TYPE_D(12, IPOS), IPOS=1, NEXTERNAL) / -3, 8, 3,
99
C Particle type according to PDG:
101
DATA (PDG_TYPE_D(1, IPOS), IPOS=1, NEXTERNAL) / -1, 1, 6, -6, 22
103
DATA (PDG_TYPE_D(2, IPOS), IPOS=1, NEXTERNAL) / -1, 1, 6, -6, 22
105
DATA (PDG_TYPE_D(3, IPOS), IPOS=1, NEXTERNAL) / -1, 1, 6, -6, 22
107
DATA (PDG_TYPE_D(4, IPOS), IPOS=1, NEXTERNAL) / -1, 1, 6, -6, 22
109
DATA (PDG_TYPE_D(5, IPOS), IPOS=1, NEXTERNAL) / 22, 1, 6, -6, 1 /
110
DATA (PDG_TYPE_D(6, IPOS), IPOS=1, NEXTERNAL) / -1, 1, 6, -6, 21
112
DATA (PDG_TYPE_D(7, IPOS), IPOS=1, NEXTERNAL) / -1, 1, 6, -6, 21
114
DATA (PDG_TYPE_D(8, IPOS), IPOS=1, NEXTERNAL) / -1, 1, 6, -6, 21
116
DATA (PDG_TYPE_D(9, IPOS), IPOS=1, NEXTERNAL) / -1, 1, 6, -6, 21
118
DATA (PDG_TYPE_D(10, IPOS), IPOS=1, NEXTERNAL) / 21, 1, 6, -6, 1
120
DATA (PDG_TYPE_D(11, IPOS), IPOS=1, NEXTERNAL) / -1, 22, 6, -6,
122
DATA (PDG_TYPE_D(12, IPOS), IPOS=1, NEXTERNAL) / -1, 21, 6, -6,
127
C charge is set 0. with QCD corrections, which is irrelevant
128
DATA (PARTICLE_CHARGE_D(1, IPOS), IPOS=1, NEXTERNAL) /
129
$ 0.333333333333333D0, -0.333333333333333D0,
130
$ 0.666666666666667D0, -0.666666666666667D0,
131
$ 0.000000000000000D0 /
132
DATA (PARTICLE_CHARGE_D(2, IPOS), IPOS=1, NEXTERNAL) /
133
$ 0.333333333333333D0, -0.333333333333333D0,
134
$ 0.666666666666667D0, -0.666666666666667D0,
135
$ 0.000000000000000D0 /
136
DATA (PARTICLE_CHARGE_D(3, IPOS), IPOS=1, NEXTERNAL) /
137
$ 0.333333333333333D0, -0.333333333333333D0,
138
$ 0.666666666666667D0, -0.666666666666667D0,
139
$ 0.000000000000000D0 /
140
DATA (PARTICLE_CHARGE_D(4, IPOS), IPOS=1, NEXTERNAL) /
141
$ 0.333333333333333D0, -0.333333333333333D0,
142
$ 0.666666666666667D0, -0.666666666666667D0,
143
$ 0.000000000000000D0 /
144
DATA (PARTICLE_CHARGE_D(5, IPOS), IPOS=1, NEXTERNAL) /
145
$ 0.000000000000000D0, -0.333333333333333D0,
146
$ 0.666666666666667D0, -0.666666666666667D0,
147
$ -0.333333333333333D0 /
148
DATA (PARTICLE_CHARGE_D(6, IPOS), IPOS=1, NEXTERNAL) /
149
$ 0.333333333333333D0, -0.333333333333333D0,
150
$ 0.666666666666667D0, -0.666666666666667D0,
151
$ 0.000000000000000D0 /
152
DATA (PARTICLE_CHARGE_D(7, IPOS), IPOS=1, NEXTERNAL) /
153
$ 0.333333333333333D0, -0.333333333333333D0,
154
$ 0.666666666666667D0, -0.666666666666667D0,
155
$ 0.000000000000000D0 /
156
DATA (PARTICLE_CHARGE_D(8, IPOS), IPOS=1, NEXTERNAL) /
157
$ 0.333333333333333D0, -0.333333333333333D0,
158
$ 0.666666666666667D0, -0.666666666666667D0,
159
$ 0.000000000000000D0 /
160
DATA (PARTICLE_CHARGE_D(9, IPOS), IPOS=1, NEXTERNAL) /
161
$ 0.333333333333333D0, -0.333333333333333D0,
162
$ 0.666666666666667D0, -0.666666666666667D0,
163
$ 0.000000000000000D0 /
164
DATA (PARTICLE_CHARGE_D(10, IPOS), IPOS=1, NEXTERNAL) /
165
$ 0.000000000000000D0, -0.333333333333333D0,
166
$ 0.666666666666667D0, -0.666666666666667D0,
167
$ -0.333333333333333D0 /
168
DATA (PARTICLE_CHARGE_D(11, IPOS), IPOS=1, NEXTERNAL) /
169
$ 0.333333333333333D0, 0.000000000000000D0,
170
$ 0.666666666666667D0, -0.666666666666667D0,
171
$ 0.333333333333333D0 /
172
DATA (PARTICLE_CHARGE_D(12, IPOS), IPOS=1, NEXTERNAL) /
173
$ 0.333333333333333D0, 0.000000000000000D0,
174
$ 0.666666666666667D0, -0.666666666666667D0,
175
$ 0.333333333333333D0 /