]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ISAJET/code/label.F
Access to the number of associated clusters (M.Ivanov)
[u/mrichter/AliRoot.git] / ISAJET / code / label.F
1 #include "isajet/pilot.h"
2       FUNCTION LABEL(ID)
3 C
4 C          Return the CHARACTER*8 label for the particle ID.
5 C          Quark-based IDENT code.
6 C          MSSM names for squarks, sleptons, Higgs bosons.
7 C
8 C          Ver. 7.49: Offset of INDEX must match that in FLAVOR.
9 C
10 #if defined(CERNLIB_IMPNONE)
11       IMPLICIT NONE
12 #endif
13 #include "isajet/itapes.inc"
14 #include "isajet/qlmass.inc"
15 C
16 #if defined(CERNLIB_LEVEL2)
17 C          DUMMY COMMON BLOCK TO ALLOW LEVEL2 STORAGE.
18       COMMON/XLABEL/LLEP,LMES0,LMES1,LBAR0,LABAR0,LBAR1,LABAR1,LQQ,LAQQ
19       LEVEL2,/XLABEL/
20 #endif
21       INTEGER ID
22       CHARACTER*8 LABEL
23       CHARACTER*8 LLEP,LMES0,LMES1,LBAR0,LABAR0,LBAR1,LABAR1
24       CHARACTER*8 LQQ,LAQQ
25       DIMENSION LLEP(149)
26       DIMENSION LMES0(64),LMES1(64)
27       DIMENSION LBAR0(109),LABAR0(109),LBAR1(109),LABAR1(109)
28       DIMENSION LQQ(21),LAQQ(21)
29       INTEGER IFL1,IFL2,IFL3,JSPIN,INDEX,I,J,IDABS
30 C
31 C          Diquark labels
32 C
33       DATA LQQ/
34      1'UU0. ','UD0. ','DD0. ','US0. ','DS0. ','SS0. ','UC0. ','DC0. ',
35      2'SC0. ','CC0. ','UB0. ','DB0. ','SB0. ','CB0. ','BB0. ','UT0. ',
36      3'DT0. ','ST0. ','CT0. ','BT0. ','TT0. '/
37       DATA LAQQ/
38      1'AUU0.','AUD0.','ADD0.','AUS0.','ADS0.','ASS0.','AUC0.','ADC0.',
39      2'ASC0.','ACC0.','AUB0.','ADB0.','ASB0.','ACB0.','ABB0.','AUT0.',
40      3'ADT0.','AST0.','ACT0.','ABT0.','ATT0.'/
41 C
42 C          Quark and lepton labels
43 C
44       DATA LLEP/
45      $'     ','UP   ','UB   ','DN   ','DB   ','ST   ','SB   ','CH   ',
46      $'CB   ','BT   ','BB   ','TP   ','TB   ','Y    ','YB   ','X    ',
47      $'XB   ','GL   ','ERR  ','GM   ','ERR  ','NUE  ','ANUE ','E-   ',
48      $'E+   ','NUM  ','ANUM ','MU-  ','MU+  ','NUT  ','ANUT ','TAU- ',
49      $'TAU+ ','ERR  ','ERR  ','ERR  ','ERR  ','ERR  ','ERR  ','KS   ',
50      $'ERR  ','ERR  ','KL   ',
51      $'UPL  ','UBL  ','DNL  ','DBL  ','STL  ','SBL  ','CHL  ','CBL  ',
52      $'BT1  ','BB1  ','TP1  ','TB1  ','ERR  ','ERR  ','ERR  ','ERR  ',
53      $'GLSS ','ERR  ','Z1SS ','ERR  ','NUEL ','ANUEL','EL-  ','EL+  ',
54      $'NUML ','ANUML','MUL- ','MUL+ ','NUTL ','ANUTL','TAU1-','TAU1+',
55      $'ERR  ','ERR  ','ERR  ','ERR  ','W1SS+','W1SS-','Z2SS ','ERR  ',
56      $'UPR  ','UBR  ','DNR  ','DBR  ','STR  ','SBR  ','CHR  ','CBR  ',
57      $'BT2  ','BB2  ','TP2  ','TB2  ','ERR  ','ERR  ','ERR  ','ERR  ',
58      $'W2SS+','W2SS-','Z3SS ','ERR  ','NUER ','ANUER','ER-  ','ER+  ',
59      $'NUMR ','ANUMR','MUR- ','MUR+ ','NUTR ','ANUTR','TAU2-','TAU2+',
60      $'ERR  ','ERR  ','ERR  ','ERR  ','ERR  ','ERR  ','Z4SS ','ERR  ',
61      $'W+   ','W-   ','HIGGS','ERR  ','HL0  ','ERR  ','HH0  ','ERR  ',
62      $'HA0  ','ERR  ','H40  ','AH40 ','H+   ','H-   ','H2+  ','H2-  ',
63      $'H1++ ','H1-- ','H2++ ','H2-- ','Z0   ','ERR  ','GVSS ','ERR  ',
64      $'GRAV ','ERR  '/
65 C
66 C          0- meson labels
67 C
68       DATA LMES0/
69      1'PI0  ','PI+  ','ETA  ','PI-  ','K+   ','K0   ','ETAP ','AK0  ',
70      2'K-   ','AD0  ','D-   ','DS-  ','ETAC ','DS+  ','D+   ','D0   ',
71      2'B+   ','B0   ','BS   ','BC   ','ETAB ','ABC  ','ABS  ','AB0  ',
72      3'B-   ','UT.  ','DT.  ','ST.  ','CT.  ','BT.  ','TT.  ','TB.  ',
73      4'TC.  ','TS.  ','TD.  ','TU.  ','UY.  ','DY.  ','SY.  ','CY.  ',
74      5'BY.  ','TY.  ','YY.  ','YT.  ','YB.  ','YC.  ','YS.  ','YD.  ',
75      6'YU.  ','UX.  ','DX.  ','SX.  ','CX.  ','BX.  ','TX.  ','YX.  ',
76      7'XX.  ','XY.  ','XT.  ','XB.  ','XC.  ','XS.  ','XD.  ','XU.  '/
77 C
78 C          1- meson labels
79 C
80       DATA LMES1/
81      1'RHO0 ','RHO+ ','OMEG ','RHO- ','K*+  ','K*0  ','PHI  ','AK*0 ',
82      2'K*-  ','AD*0 ','D*-  ','DS*- ','JPSI ','DS*+ ','D*+  ','D*0  ',
83      3'B*+  ','B*0  ','BS*  ','BC*  ','UPSL ','ABC* ','ABS* ','AB0* ',
84      4'B*-  ','UT*  ','DT*  ','ST*  ','CT*  ','BT*  ','TT*  ','TB*  ',
85      5'TC*  ','TS*  ','TD*  ','TU*  ','UY*  ','DY*  ','SY*  ','CY*  ',
86      6'BY*  ','TY*  ','YY*  ','YT*  ','YB*  ','YC*  ','YS*  ','YD*  ',
87      7'YU*  ','UX*  ','DX*  ','SX*  ','CX*  ','BX*  ','TX*  ','YX*  ',
88      8'XX*  ','XY*  ','XT*  ','XB*  ','XC*  ','XS*  ','XD*  ','XU*  '/
89 C
90 C          1/2+ baryon labels
91 C
92       DATA LBAR0/
93      1'ERR  ','P    ','N    ','ERR  ','ERR  ','S+   ','S0   ','S-   ',
94      2'L    ','XI0  ','XI-  ','ERR  ','ERR  ','ERR  ','SC++ ','SC+  ',
95      3'SC0  ','LC+  ','USC. ','DSC. ','SSC. ','SDC. ','SUC. ','UCC. ',
96      4'DCC. ','SCC. ','ERR  ','ERR  ','ERR  ','ERR  ','UUB. ','UDB. ',
97      5'DDB. ','DUB. ','USB. ','DSB. ','SSB. ','SDB. ','SUB. ','UCB. ',
98      6'DCB. ','SCB. ','CCB. ','CSB. ','CDB. ','CUB. ','UBB. ','DBB. ',
99      7'SBB. ','CBB. ','ERR  ','ERR  ','ERR  ','ERR  ','ERR  ','UUT. ',
100      8'UDT. ','DDT. ','DUT. ','UST. ','DST. ','SST. ','SDT. ','SUT. ',
101      9'UCT. ','DCT. ','SCT. ','CCT. ','CST. ','CDT. ','CUT. ','UBT. ',
102      1'DBT. ','SBT. ','CBT. ','BBT. ','BCT. ','BST. ','BDT. ','BUT. ',
103      2'UTT. ','DTT. ','STT. ','CTT. ','BTT. ','ERR  ','ERR  ','ERR  ',
104      3'ERR  ','ERR  ','ERR  ','UUY. ','UDY. ','DDY. ','DUY. ','USY. ',
105      4'DSY. ','SSY. ','SDY. ','SUY. ','UUX. ','UDX. ','DDX. ','DUX. ',
106      5'USX. ','DSX. ','SSX. ','SDX. ','SUX. '/
107       DATA LABAR0/
108      1'ERR  ','AP   ','AN   ','ERR  ','ERR  ','AS-  ','AS0  ','AS+  ',
109      2'AL   ','AXI0 ','AXI+ ','ERR  ','ERR  ','ERR  ','ASC--','ASC- ',
110      3'ASC0 ','ALC- ','AUSC.','ADSC.','ASSC.','ASDC.','ASUC.','AUCC.',
111      4'ADCC.','ASCC.','ERR  ','ERR  ','ERR  ','ERR  ','AUUB.','AUDB.',
112      5'ADDB.','ADUB.','AUSB.','ADSB.','ASSB.','ASDB.','ASUB.','AUCB.',
113      6'ADCB.','ASCB.','ACCB.','ACSB.','ACDB.','ACUB.','AUBB.','ADBB.',
114      7'ASBB.','ACBB.','ERR  ','ERR  ','ERR  ','ERR  ','ERR  ','AUUT.',
115      8'AUDT.','ADDT.','ADUT.','AUST.','ADST.','ASST.','ASDT.','ASUT.',
116      9'AUCT.','ADCT.','ASCT.','ACCT.','ACST.','ACDT.','ACUT.','AUBT.',
117      1'ADBT.','ASBT.','ACBT.','ABBT.','ABCT.','ABST.','ABDT.','ABUT.',
118      2'AUTT.','ADTT.','ASTT.','ACTT.','ABTT.','ERR  ','ERR  ','ERR  ',
119      3'ERR  ','ERR  ','ERR  ','AUUY.','AUDY.','ADDY.','ADUY.','AUSY.',
120      4'ADSY.','ASSY.','ASDY.','ASUY.','AUUX.','AUDX.','ADDX.','ADUX.',
121      5'AUSX.','ADSX.','ASSX.','ASDX.','ASUX.'/
122 C
123 C          3/2+ baryon labels
124 C
125       DATA LBAR1/
126      1'DL++ ','DL+  ','DL0  ','DL-  ','ERR  ','S*+  ','S*0  ','S*-  ',
127      2'ERR  ','XI*0 ','XI*- ','OM-  ','ERR  ','ERR  ','UUC* ','UDC* ',
128      3'DDC* ','ERR  ','USC* ','DSC* ','SSC* ','ERR  ','ERR  ','UCC* ',
129      4'DCC* ','SCC* ','CCC* ','ERR  ','ERR  ','ERR  ','UUB* ','UDB* ',
130      5'DDB* ','ERR  ','USB* ','DSB* ','SSB* ','ERR  ','ERR  ','UCB* ',
131      6'DCB* ','SCB* ','CCB* ','ERR  ','ERR  ','ERR  ','UBB* ','DBB* ',
132      7'SBB* ','CBB* ','BBB* ','ERR  ','ERR  ','ERR  ','ERR  ','UUT* ',
133      8'UDT* ','DDT* ','ERR  ','UST* ','DST* ','SST* ','ERR  ','ERR  ',
134      9'UCT* ','DCT* ','SCT* ','CCT* ','ERR  ','ERR  ','ERR  ','UBT* ',
135      1'DBT* ','SBT* ','CBT* ','BBT* ','ERR  ','ERR  ','ERR  ','ERR  ',
136      2'UTT* ','DTT* ','STT* ','CTT* ','BTT* ','TTT* ','ERR  ','ERR  ',
137      3'ERR  ','ERR  ','ERR  ','UUY* ','UDY* ','DDY* ','ERR  ','USY* ',
138      4'DSY* ','SSY* ','ERR  ','ERR  ','UUX* ','UDX* ','DDX* ','ERR  ',
139      5'USX* ','DSX* ','SSX* ','ERR  ','ERR  '/
140       DATA LABAR1/
141      1'ADL--','ADL- ','ADL0 ','ADL+ ','ERR  ','AS*- ','AS*0 ','AS*+ ',
142      2'ERR  ','AXI*0','AXI*+','AOM+ ','ERR  ','ERR  ','AUUC*','AUDC*',
143      3'ADDC*','ERR  ','AUSC*','ADSC*','ASSC*','ERR  ','ERR  ','AUCC*',
144      4'ADCC*','ASCC*','ACCC*','ERR  ','ERR  ','ERR  ','AUUB*','AUDB*',
145      5'ADDB*','ERR  ','AUSB*','ADSB*','ASSB*','ERR  ','ERR  ','AUCB*',
146      6'ADCB*','ASCB*','ACCB*','ERR  ','ERR  ','ERR  ','AUBB*','ADBB*',
147      7'ASBB*','ACBB*','ABBB*','ERR  ','ERR  ','ERR  ','ERR  ','AUUT*',
148      8'AUDT*','ADDT*','ERR  ','AUST*','ADST*','ASST*','ERR  ','ERR  ',
149      9'AUCT*','ADCT*','ASCT*','ACCT*','ERR  ','ERR  ','ERR  ','AUBT*',
150      1'ADBT*','ASBT*','ACBT*','ABBT*','ERR  ','ERR  ','ERR  ','ERR  ',
151      2'AUTT*','ADTT*','ASTT*','ACTT*','ABTT*','ATTT*','ERR  ','ERR  ',
152      3'ERR  ','ERR  ','ERR  ','AUUY*','AUDY*','ADDY*','ERR  ','AUSY*',
153      4'ADSY*','ASSY*','ERR  ','ERR  ','AUUX*','AUDX*','ADDX*','ERR  ',
154      5'AUSX*','ADSX*','ASSX*','ERR  ','ERR  '/
155 C
156 C          Entry
157 C
158       LABEL='ERR'
159       IDABS=IABS(ID)
160       IF(IDABS.EQ.0) THEN
161         LABEL='     '
162         RETURN
163       ENDIF
164       CALL FLAVOR(ID,IFL1,IFL2,IFL3,JSPIN,INDEX)
165       IF(INDEX.LE.0) RETURN
166       IF(IDABS.GT.10000.OR.JSPIN.GT.1) GO TO 500
167       IF(IDABS.LT.100) GO TO 200
168       IF(IDABS.LT.1000) GO TO 100
169       IF(ID.NE.0.AND.MOD(ID,100).EQ.0) GO TO 300
170 C
171 C          Baryons
172 C
173       INDEX=INDEX-109*JSPIN-36*NMES-NQLEP
174       INDEX=INDEX-13
175       IF(JSPIN.EQ.0.AND.ID.GT.0) LABEL=LBAR0(INDEX)
176       IF(JSPIN.EQ.0.AND.ID.LT.0) LABEL=LABAR0(INDEX)
177       IF(JSPIN.EQ.1.AND.ID.GT.0) LABEL=LBAR1(INDEX)
178       IF(JSPIN.EQ.1.AND.ID.LT.0) LABEL=LABAR1(INDEX)
179       GO TO 999
180 C
181 C          Mesons
182 C
183 100   CONTINUE
184       I=MAX0(IFL2,IFL3)
185       J=-MIN0(IFL2,IFL3)
186       INDEX=MAX0(I-1,J-1)**2+I+MAX0(I-J,0)
187       IF(JSPIN.EQ.0) LABEL=LMES0(INDEX)
188       IF(JSPIN.EQ.1) LABEL=LMES1(INDEX)
189       GO TO 999
190 C
191 C          Quarks, leptons, etc.
192 C
193 200   CONTINUE
194       INDEX=2*INDEX
195       IF(ID.LE.0) INDEX=INDEX+1
196       LABEL=LLEP(INDEX)
197       GO TO 999
198 300   I=IABS(IFL1)
199       J=IABS(IFL2)
200       INDEX=I+J*(J-1)/2
201       IF(ID.GT.0) LABEL=LQQ(INDEX)
202       IF(ID.LT.0) LABEL=LAQQ(INDEX)
203       RETURN
204 C
205 C          Special hadrons - used only in B decays
206 C
207 500   CONTINUE
208       IF(ID.EQ.10121) THEN
209         LABEL='A1+'
210       ELSEIF(ID.EQ.-10121) THEN
211         LABEL='A1-'
212       ELSEIF(ID.EQ.10111) THEN
213         LABEL='A10'
214       ELSEIF(ID.EQ.10131) THEN
215         LABEL='K1+'
216       ELSEIF(ID.EQ.-10131) THEN
217         LABEL='K1-'
218       ELSEIF(ID.EQ.10231) THEN
219         LABEL='K10'
220       ELSEIF(ID.EQ.-10231) THEN
221         LABEL='AK10'
222       ELSEIF(ID.EQ.30131) THEN
223         LABEL='K1*+'
224       ELSEIF(ID.EQ.-30131) THEN
225         LABEL='K1*-'
226       ELSEIF(ID.EQ.30231) THEN
227         LABEL='K1*0'
228       ELSEIF(ID.EQ.-30231) THEN
229         LABEL='AK1*0'
230       ELSEIF(ID.EQ.132) THEN
231         LABEL='K2*+'
232       ELSEIF(ID.EQ.-132) THEN
233         LABEL='K2*-'
234       ELSEIF(ID.EQ.232) THEN
235         LABEL='K2*0'
236       ELSEIF(ID.EQ.-232) THEN
237         LABEL='AK2*0'
238       ELSEIF(ID.EQ.10110) THEN
239         LABEL='F0'
240       ELSEIF(ID.EQ.112) THEN
241         LABEL='F2'
242       ELSEIF(ID.EQ.10441) THEN
243         LABEL='PSI2'
244       ELSEIF(ID.EQ.20440) THEN
245         LABEL='CHI0'
246       ELSEIF(ID.EQ.20441) THEN
247         LABEL='CHI1'
248       ELSEIF(ID.EQ.20442) THEN
249         LABEL='CHI2'
250       ELSE
251         LABEL='ERR'
252       ENDIF
253 999   RETURN
254       END