]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 1 | |
2 | C********************************************************************* | |
3 | ||
4 | SUBROUTINE LUNAME(KF,CHAU) | |
5 | ||
6 | C...Purpose: to give the particle/parton name as a character string. | |
7 | COMMON/LUDAT1/MSTU(200),PARU(200),MSTJ(200),PARJ(200) | |
8 | COMMON/LUDAT2/KCHG(500,3),PMAS(500,4),PARF(2000),VCKM(4,4) | |
9 | COMMON/LUDAT4/CHAF(500) | |
10 | CHARACTER CHAF*8 | |
11 | SAVE /LUDAT1/,/LUDAT2/,/LUDAT4/ | |
12 | CHARACTER CHAU*16 | |
13 | ||
14 | C...Initial values. Charge. Subdivide code. | |
15 | CHAU=' ' | |
16 | KFA=IABS(KF) | |
17 | KC=LUCOMP(KF) | |
18 | IF(KC.EQ.0) RETURN | |
19 | KQ=LUCHGE(KF) | |
20 | KFLA=MOD(KFA/1000,10) | |
21 | KFLB=MOD(KFA/100,10) | |
22 | KFLC=MOD(KFA/10,10) | |
23 | KFLS=MOD(KFA,10) | |
24 | KFLR=MOD(KFA/10000,10) | |
25 | ||
26 | C...Read out root name and spin for simple particle. | |
27 | IF(KFA.LE.100.OR.(KFA.GT.100.AND.KC.GT.100)) THEN | |
28 | CHAU=CHAF(KC) | |
29 | LEN=0 | |
30 | DO 100 LEM=1,8 | |
31 | IF(CHAU(LEM:LEM).NE.' ') LEN=LEM | |
32 | 100 CONTINUE | |
33 | ||
34 | C...Construct root name for diquark. Add on spin. | |
35 | ELSEIF(KFLC.EQ.0) THEN | |
36 | CHAU(1:2)=CHAF(KFLA)(1:1)//CHAF(KFLB)(1:1) | |
37 | IF(KFLS.EQ.1) CHAU(3:4)='_0' | |
38 | IF(KFLS.EQ.3) CHAU(3:4)='_1' | |
39 | LEN=4 | |
40 | ||
41 | C...Construct root name for heavy meson. Add on spin and heavy flavour. | |
42 | ELSEIF(KFLA.EQ.0) THEN | |
43 | IF(KFLB.EQ.5) CHAU(1:1)='B' | |
44 | IF(KFLB.EQ.6) CHAU(1:1)='T' | |
45 | IF(KFLB.EQ.7) CHAU(1:1)='L' | |
46 | IF(KFLB.EQ.8) CHAU(1:1)='H' | |
47 | LEN=1 | |
48 | IF(KFLR.EQ.0.AND.KFLS.EQ.1) THEN | |
49 | ELSEIF(KFLR.EQ.0.AND.KFLS.EQ.3) THEN | |
50 | CHAU(2:2)='*' | |
51 | LEN=2 | |
52 | ELSEIF(KFLR.EQ.1.AND.KFLS.EQ.3) THEN | |
53 | CHAU(2:3)='_1' | |
54 | LEN=3 | |
55 | ELSEIF(KFLR.EQ.1.AND.KFLS.EQ.1) THEN | |
56 | CHAU(2:4)='*_0' | |
57 | LEN=4 | |
58 | ELSEIF(KFLR.EQ.2) THEN | |
59 | CHAU(2:4)='*_1' | |
60 | LEN=4 | |
61 | ELSEIF(KFLS.EQ.5) THEN | |
62 | CHAU(2:4)='*_2' | |
63 | LEN=4 | |
64 | ENDIF | |
65 | IF(KFLC.GE.3.AND.KFLR.EQ.0.AND.KFLS.LE.3) THEN | |
66 | CHAU(LEN+1:LEN+2)='_'//CHAF(KFLC)(1:1) | |
67 | LEN=LEN+2 | |
68 | ELSEIF(KFLC.GE.3) THEN | |
69 | CHAU(LEN+1:LEN+1)=CHAF(KFLC)(1:1) | |
70 | LEN=LEN+1 | |
71 | ENDIF | |
72 | ||
73 | C...Construct root name and spin for heavy baryon. | |
74 | ELSE | |
75 | IF(KFLB.LE.2.AND.KFLC.LE.2) THEN | |
76 | CHAU='Sigma ' | |
77 | IF(KFLC.GT.KFLB) CHAU='Lambda' | |
78 | IF(KFLS.EQ.4) CHAU='Sigma*' | |
79 | LEN=5 | |
80 | IF(CHAU(6:6).NE.' ') LEN=6 | |
81 | ELSEIF(KFLB.LE.2.OR.KFLC.LE.2) THEN | |
82 | CHAU='Xi ' | |
83 | IF(KFLA.GT.KFLB.AND.KFLB.GT.KFLC) CHAU='Xi''' | |
84 | IF(KFLS.EQ.4) CHAU='Xi*' | |
85 | LEN=2 | |
86 | IF(CHAU(3:3).NE.' ') LEN=3 | |
87 | ELSE | |
88 | CHAU='Omega ' | |
89 | IF(KFLA.GT.KFLB.AND.KFLB.GT.KFLC) CHAU='Omega''' | |
90 | IF(KFLS.EQ.4) CHAU='Omega*' | |
91 | LEN=5 | |
92 | IF(CHAU(6:6).NE.' ') LEN=6 | |
93 | ENDIF | |
94 | ||
95 | C...Add on heavy flavour content for heavy baryon. | |
96 | CHAU(LEN+1:LEN+2)='_'//CHAF(KFLA)(1:1) | |
97 | LEN=LEN+2 | |
98 | IF(KFLB.GE.KFLC.AND.KFLC.GE.4) THEN | |
99 | CHAU(LEN+1:LEN+2)=CHAF(KFLB)(1:1)//CHAF(KFLC)(1:1) | |
100 | LEN=LEN+2 | |
101 | ELSEIF(KFLB.GE.KFLC.AND.KFLB.GE.4) THEN | |
102 | CHAU(LEN+1:LEN+1)=CHAF(KFLB)(1:1) | |
103 | LEN=LEN+1 | |
104 | ELSEIF(KFLC.GT.KFLB.AND.KFLB.GE.4) THEN | |
105 | CHAU(LEN+1:LEN+2)=CHAF(KFLC)(1:1)//CHAF(KFLB)(1:1) | |
106 | LEN=LEN+2 | |
107 | ELSEIF(KFLC.GT.KFLB.AND.KFLC.GE.4) THEN | |
108 | CHAU(LEN+1:LEN+1)=CHAF(KFLC)(1:1) | |
109 | LEN=LEN+1 | |
110 | ENDIF | |
111 | ENDIF | |
112 | ||
113 | C...Add on bar sign for antiparticle (where necessary). | |
114 | IF(KF.GT.0.OR.LEN.EQ.0) THEN | |
115 | ELSEIF(KFA.GT.10.AND.KFA.LE.40.AND.KQ.NE.0.AND.MOD(KQ,3).EQ.0) | |
116 | &THEN | |
117 | ELSEIF(KFA.EQ.89.OR.(KFA.GE.91.AND.KFA.LE.99)) THEN | |
118 | ELSEIF(KFA.GT.100.AND.KFLA.EQ.0.AND.KQ.NE.0) THEN | |
119 | ELSEIF(MSTU(15).LE.1) THEN | |
120 | CHAU(LEN+1:LEN+1)='~' | |
121 | LEN=LEN+1 | |
122 | ELSE | |
123 | CHAU(LEN+1:LEN+3)='bar' | |
124 | LEN=LEN+3 | |
125 | ENDIF | |
126 | ||
127 | C...Add on charge where applicable (conventional cases skipped). | |
128 | IF(KQ.EQ.6) CHAU(LEN+1:LEN+2)='++' | |
129 | IF(KQ.EQ.-6) CHAU(LEN+1:LEN+2)='--' | |
130 | IF(KQ.EQ.3) CHAU(LEN+1:LEN+1)='+' | |
131 | IF(KQ.EQ.-3) CHAU(LEN+1:LEN+1)='-' | |
132 | IF(KQ.EQ.0.AND.(KFA.LE.22.OR.LEN.EQ.0)) THEN | |
133 | ELSEIF(KQ.EQ.0.AND.(KFA.GE.81.AND.KFA.LE.100)) THEN | |
134 | ELSEIF(KFA.EQ.28.OR.KFA.EQ.29) THEN | |
135 | ELSEIF(KFA.GT.100.AND.KFLA.EQ.0.AND.KFLB.EQ.KFLC.AND. | |
136 | &KFLB.NE.1) THEN | |
137 | ELSEIF(KQ.EQ.0) THEN | |
138 | CHAU(LEN+1:LEN+1)='0' | |
139 | ENDIF | |
140 | ||
141 | RETURN | |
142 | END |