2
subroutine HEPNAM_old(ID,CHAU)
4
C...Purpose: to give the particle/parton name as a character string.
10
character CHSP(1605)*15
12
integer hepchg_old,hepcmp_old
13
external hepchg_old,hepcmp_old
15
data (CHSP(I), I=1,119) /'d','u','s','c','b','t','l','h',2*' ',
16
1'e','nu_e','mu','nu_mu','tau','nu_tau','chi','nu_chi','reggeon',
17
2'pomeron','g','gamma','Z','W','H_1',' ','eta_tech','LQ','R','Z_2',
18
3'W_2','H_2','H_2','H_2','Z_3','H_3','H_3','H_3','H_4','H_5',
19
4'L susy d','L susy u','L susy s','L susy c',
20
5'L susy b','L susy t','gluino','photino',2*' ',
21
6'L susy e','L susy nu_e','L susy mu','L susy nu_mu',
22
7'L susy tau','L susy nu_tau','susy HL','susy HH','susy HA',
23
8' ','R susy d','R susy u','R susy s','R susy c',
24
9'R susy b','R susy t','zino','susy Z2','susy Z3',
25
*'susy Z4','R susy e','R susy nu_e','R susy mu',
26
1'R susy nu_mu','R susy tau','R susy nu_tau','wino',
27
2'susy W2',2*' ',19*'gen. code',' ','KS','KL','diquark',
28
3'l-baryon','h-baryon',' ','rho_diffr','pi_diffr','omega_diffr',
29
4'phi_diffr','psi_diffr','n_diffr','p_diffr',
30
5'remnant gamma','remnant nucleon',4*' '/
31
data (CHSP(I), I=120,219) /'pi','a_0(980)','pi(1300)',7*' ',
32
1'rho(770)','b_1(1235)','a_1(1260)','rho(1450)','rho(1700)',5*' ',
33
2'a_2(1320)','pi_2(1670)',8*' ','rho_3(1690)',19*' ','eta',
34
3'f_0(975)','eta(1295)','f_0(1400)','eta(1440)','f_0(1590)',
35
4'f_0(1710)',3*' ','omega(783)','h_1(1170)','f_1(1285)',
36
5'omega(1390)','f_1(1420)','f_1(1510)','omega(1600)',3*' ',
37
6'f_2(1270)',' ','f_2(2010)','f_2(2300)','f_2(2340)',5*' ',
38
7'omega_3(1670)',9*' ','f_4(2050)',9*' '/
39
data (CHSP(I), I=220,369) /'eta''(958)','f''0',8*' ','phi(1020)',
40
1 'h_1(1380)','f_1(1420)','phi(1680)','f''_1',5*' ','f''_2(1525)',
41
2 9*' ','phi_3(1850)',19*' ','eta_c(1S)','chi_c0(1P)','eta_c(2S)',
42
3 7*' ','J/PSI','hc(1P)','chi_c1(1P)','PSI(2S)','PSI(3770)',
43
4 'PSI(4040)','PSI(4160)','PSI(4415)',2*' ','chi_c2(1P)',29*' ',
44
5 'eta_b(1S)','chi_b0(1P)','eta_b(2S)','chi_b0(2P)','eta_b(3S)',
45
6 5*' ','upsilon(1S)','h_b(1P)','chi_b1(1P)','upsilon(2S)',
46
7 'h_b(2P)','chi_b1(2P)','upsilon(3S)','upsilon(4S)',
47
8 'upsilon(10860)','upsilon(11020)','chi_b2(1P)','chi_b2(2P)',
49
data (CHSP(I), I=370,419) /'eta_t','chi_t0',8*' ','theta',
50
1'h_1t','chi_t1',7*' ','chi_t2',29*' '/
51
data (CHSP(I), I=420,449) /'eta_l','chi_l0',' ',
52
2'theta_l','h_1l','chi_l1','chi_l2',8*' ','eta_h',
53
3'chi_h0',' ','theta_h','h_1h','chi_h1','chi_h2',8*' '/
54
data (CHSP(I), I=450,499) /'pi','a_0(980)','pi(1300)',7*' ',
55
1'rho(770)','b_1(1235)','a_1(1260)','rho(1450)','rho(1700)',5*' ',
56
2'a_2(1320)','pi_2(1670)',8*' ','rho_3(1690)',19*' '/
57
data (CHSP(I), I=500,599) /'K','K*_0(1430)',8*' ','K*(892)',
58
1'K_1(1270)','K_1(1400)','K*(1410)','K*(1680)',5*' ','K*_2(1430)',
59
2'K_2(1770)','K_2(1820)',7*' ','K*_3(1780)',9*' ','K*_4(2045)',
60
3 9*' ','K','K*_0(1430)',8*' ','K*(892)','K_1(1270)','K_1(1400)',
61
4'K*(1410)','K*(1680)',5*' ','K*_2(1430)','K_2(1770)','K_2(1820)',
62
5 7*' ','K*_3(1780)',9*' ','K*_4(2045)',9*' '/
63
data (CHSP(I), I=600,749) /'D','D*_0',8*' ','D*(2010)',
64
1'D_1(2420)','D*_1',7*' ','D*_2(2460)',29*' ','D','D*_0',8*' ',
65
2'D*(2010)','D_1(2420)','D*_1',7*' ','D*_2(2460)',29*' ','D_s',
66
3'D*_s0',8*' ','D*_s','D_s1(2536)','D*_s1',7*' ','D*_s2',29*' '/
67
data (CHSP(I), I=750,949) /'B','B*_0',8*' ','B*',
68
1'B_1','B*_1',7*' ','B*_2',29*' ','B','B*_0',8*' ',
69
2'B*','B_1','B*_1',7*' ','B*_2',29*' ','B_s',
70
3'B*_s0',8*' ','B*_s','B_s1','B*_s1',7*' ','B*_s2',29*' ','B_c',
71
3'B*_c0',8*' ','B*_c','B_c1','B*_c1',7*' ','B*_c2',29*' '/
72
data (CHSP(I), I=950,1199) /'T','T*_0',8*' ','T*',
73
1'T_1','T*_1',7*' ','T*_2',29*' ','T','T*_0',8*' ',
74
2'T*','T_1','T*_1',7*' ','T*_2',29*' ','T_s',
75
3'T*_s0',8*' ','T*_s','T_s1','T*_s1',7*' ','T*_s2',29*' ','T_c',
76
3'T*_c0',8*' ','T*_c','T_c1','T*_c1',7*' ','T*_c2',29*' ','T_b',
77
3'T*_b0',8*' ','T*_b','T_b1','T*_b1',7*' ','T*_b2',29*' '/
78
data (CHSP(I), I=1200,1289) /'L','L*_0',' ','L*','L_1','L*_1',
79
1'L*_2',8*' ','L','L*_0',' ','L*','L_1','L*_1','L*_2',8*' ',
80
2'L_s','L*_s0',' ','L*_s','L_s1','L*_s1','L*_s2',8*' ',
81
3'L_c','L*_c0',' ','L*_c','L_c1','L*_c1','L*_c2',8*' ',
82
4'L_b','L*_b0',' ','L*_b','L_b1','L*_b1','L*_b2',8*' ',
83
5'L_t','L*_t0',' ','L*_t','L_t1','L*_t1','L*_t2',8*' '/
84
data (CHSP(I), I=1290,1394) /'H','H*_0',' ','H*','H_1','H*_1',
85
1'H*_2',8*' ','H','H*_0',' ','H*','H_1','H*_1','H*_2',8*' ',
86
2'H_s','H*_s0',' ','H*_s','H_s1','H*_s1','H*_s2',8*' ',
87
3'H_c','H*_c0',' ','H*_c','H_c1','H*_c1','H*_c2',8*' ',
88
4'H_b','H*_b0',' ','H*_b','H_b1','H*_b1','H*_b2',8*' ',
89
5'H_t','H*_t0',' ','H*_t','H_t1','H*_t1','H*_t2',8*' ',
90
6'H_l','H*_l0',' ','H*_l','H_l1','H*_l1','H*_l2',8*' '/
91
data (CHSP(I), I=1395,1415) /' ','Lambda','Lambda_c',
92
1'Xi_c','Xi_c','Lambda_b','Xi_b','Xi_b','Xi_bc',
93
2'Xi_bc','Omega_bc','Lambda_t','Xi_t','Xi_t',
94
3'Xi_tc','Xi_tc','Omega_tc','Xi_tb','Xi_tb',
95
4'Omega_tb','Omega_tbc'/
96
data (CHSP(I), I=1416,1475) /' ','n','p',' ','Sigma','Sigma',
97
1'Sigma','Xi','Xi',' ','Sigma_c','Sigma_c','Sigma_c','Xi_c''',
98
2'Xi_c''','Omega_c','Xi_cc','Xi_cc','Omega_cc',' ','Sigma_b',
99
3'Sigma_b','Sigma_b','Xi_b''','Xi_b''','Omega_b','Xi_bc''',
100
4'Xi_bc''','Omega_bc''','Omega_bcc','Xi_bb','Xi_bb','Omega_bb',
101
5'Omega_bbc',' ','Sigma_t','Sigma_t','Sigma_t','Xi_t''','Xi_t''',
102
6'Omega_t','Xi_tc''','Xi_tc''','Omega_tc''','Omega_tcc','Xi_tb''',
103
7'Xi_tb''','Omega_tb''','Omega_tbc''','Omega_tbb','Xi_tt','Xi_tt',
104
8'Omega_tt','Omega_ttc','Omega_ttb',5*' '/
105
data (CHSP(I), I=1476,1535) /'Delta','Delta','Delta','Delta',
106
1'Sigma*','Sigma*','Sigma*','Xi*','Xi*','Omega',
107
2'Sigma*_c','Sigma*_c','Sigma*_c','Xi*_c','Xi*_c','Omega*_c',
108
3'Xi*_cc','Xi*_cc','Omega*_cc','Omega*_ccc',
109
4'Sigma*_b','Sigma*_b','Sigma*_b','Xi*_b','Xi*_b','Omega*_b',
110
5'Xi*_bc','Xi*_bc','Omega*_bc','Omega*_bcc',
111
6'Xi*_bb','Xi*_bb','Omega*_bb','Omega*_bbc','Omega*_bbb',
112
7'Sigma*_t','Sigma*_t','Sigma*_t','Xi*_t','Xi*_t','Omega*_t',
113
8'Xi*_tc','Xi*_tc','Omega*_tc','Omega*_tcc','Xi*_tb','Xi*_tb',
114
9'Omega*_tb','Omega*_tbc','Omega*_tbb','Xi*_tt','Xi*_tt',
115
*'Omega*_tt','Omega*_ttc','Omega*_ttb','Omega*_ttt',4*' '/
116
data (CHSP(I), I=1536,1600) /65*' '/
117
data (CHSP(I), I=1601,1605) /'Hydrogen','Deuteron','Tritium',
123
C...Initial values. Charge (in units of 1/3). Subdivide code.
133
KQN=MOD(IDA/1000000000,10)
134
IDQ3=MOD(IDA/1000,10)
138
IDEX=MOD(IDA/10000,10)
140
C...Read out root name and spin for simple particles and special cases
145
100 if(CHAU(LEM:LEM).NE.' ') LEN=LEM
146
elseif(KQN.eq.1) then
150
110 if(CHAU(LEM:LEM).NE.' ') LEN=LEM
151
elseif(IDJS.EQ.0) then
155
150 if(CHAU(LEM:LEM).NE.' ') LEN=LEM
157
C...Construct root name for diquark. Add on spin.
158
elseif(IDQ1.EQ.0) then
159
CHAU(1:2)=CHSP(IDQ3)(1:1)//CHSP(IDQ2)(1:1)
160
if(IDJS.EQ.1) CHAU(3:4)='_0'
161
if(IDJS.EQ.3) CHAU(3:4)='_1'
164
C...Construct root name for meson.
165
elseif(IDQ3.EQ.0) then
169
200 if(CHAU(LEM:LEM).NE.' ') LEN=LEM
171
C...Construct root name for Herwig remnant particles
172
elseif(IDQ1.eq.9 .and. IDQ2.eq.9 .and. IDQ3.eq.9) then
176
250 if(CHAU(LEM:LEM).NE.' ') LEN=LEM
178
C...Construct root name and spin for baryon.
184
300 if(CHAU(LEM:LEM).NE.' ') LEN=LEM
186
C...Construct root name and spin for heavy baryon.
188
if(IDQ2.LE.2 .AND. IDQ1.LE.2)then
190
if(IDJS.EQ.4) CHAU='Sigma*'
191
if(IDQ1.GT.IDQ2) CHAU='Lambda'
192
elseif(IDQ1.LE.2) then
194
if(IDJS.EQ.4) CHAU='Xi*'
195
elseif(IDQ2.LE.2) then
197
elseif(IDQ1.GT.IDQ2) then
201
if(IDJS.EQ.4) CHAU='Omega*'
204
320 if(CHAU(LEM:LEM).NE.' ') LEN=LEM
206
C...Add on heavy flavour content for heavy baryon.
207
CHAU(LEN+1:LEN+2)='_'//CHSP(IDQ3)(1:1)
209
if(IDQ2.GE.IDQ1.AND.IDQ1.GE.4) then
210
CHAU(LEN+1:LEN+2)=CHSP(IDQ2)(1:1)//CHSP(IDQ1)(1:1)
212
elseif(IDQ2.GE.IDQ1.AND.IDQ2.GE.4) then
213
CHAU(LEN+1:LEN+1)=CHSP(IDQ2)(1:1)
215
elseif(IDQ1.GT.IDQ2.AND.IDQ2.GE.4) then
216
CHAU(LEN+1:LEN+2)=CHSP(IDQ1)(1:1)//CHSP(IDQ2)(1:1)
218
elseif(IDQ1.GT.IDQ2.AND.IDQ1.GE.4) then
219
CHAU(LEN+1:LEN+1)=CHSP(IDQ1)(1:1)
225
C...Add on bar sign for antiparticle (where necessary).
226
if(ID.GT.0.OR.LEN.EQ.0) then
227
elseif(IDA.GT.10.AND.IDA.LE.40.AND.KQ.NE.0) then
228
elseif(IDA.GT.46.AND.IDA.LE.60.AND.KQ.NE.0) then
229
elseif(IDA.GT.66.AND.IDA.LE.80.AND.KQ.NE.0) then
230
elseif(IDA.GE.81.AND.IDA.LE.99) then
231
elseif(IDA.GT.100.AND.IDQ3.EQ.0.AND.KQ.NE.0) then
233
CHAU(LEN+1:LEN+1)='~'
237
C...Add on charge where applicable (conventional cases skipped).
238
if(IDA.GE.81.AND.IDA.LE.100) then
239
C...generator specific codes
240
elseif(IDCM.eq.114 .or. IDCM.eq.115) then
241
C...Herwig remnant particles
242
elseif(KQN.eq.1) then
246
if(KQ.EQ.6) CHAU(LEN+1:LEN+2)='++'
247
if(KQ.EQ.-6) CHAU(LEN+1:LEN+2)='--'
248
if(KQ.EQ.3) CHAU(LEN+1:LEN+1)='+'
249
if(KQ.EQ.-3) CHAU(LEN+1:LEN+1)='-'
251
if(KQ.EQ.0.AND.IDA.LE.22) then
252
C...quarks and leptons
253
elseif(KQ.EQ.0.AND.(IDA.GE.41.AND.IDA.LE.56)) then
254
C...left squarks, sleptons, etc.
255
elseif(KQ.EQ.0.AND.(IDA.GE.61.AND.IDA.LE.67)) then
257
elseif(KQ.EQ.0.AND.(IDA.GE.71.AND.IDA.LE.76)) then
259
elseif(IDA.GT.100.AND.IDQ3.EQ.0.AND.IDQ2.EQ.IDQ1.AND.
261
C... eta, psi, upsilon, etc.
263
CHAU(LEN+1:LEN+1)='0'