]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 1 | |
2 | C********************************************************************* | |
3 | ||
4 | FUNCTION LUCOMP(KF) | |
5 | ||
6 | C...Purpose: to compress the standard KF codes for use in mass and decay | |
7 | C...arrays; also to check whether a given code actually is defined. | |
8 | COMMON/LUDAT2/KCHG(500,3),PMAS(500,4),PARF(2000),VCKM(4,4) | |
9 | SAVE /LUDAT2/ | |
10 | DIMENSION KFTAB(25),KCTAB(25) | |
11 | DATA KFTAB/211,111,221,311,321,130,310,213,113,223, | |
12 | &313,323,2112,2212,210,2110,2210,110,220,330,440,30443,30553,0,0/ | |
13 | DATA KCTAB/101,111,112,102,103,221,222,121,131,132, | |
14 | &122,123,332,333,281,282,283,284,285,286,287,231,235,0,0/ | |
15 | ||
16 | C...Starting values. | |
17 | LUCOMP=0 | |
18 | KFA=IABS(KF) | |
19 | ||
20 | C...Simple cases: direct translation or table. | |
21 | IF(KFA.EQ.0.OR.KFA.GE.100000) THEN | |
22 | RETURN | |
23 | ELSEIF(KFA.LE.100) THEN | |
24 | LUCOMP=KFA | |
25 | IF(KF.LT.0.AND.KCHG(KFA,3).EQ.0) LUCOMP=0 | |
26 | RETURN | |
27 | ELSE | |
28 | DO 100 IKF=1,23 | |
29 | IF(KFA.EQ.KFTAB(IKF)) THEN | |
30 | LUCOMP=KCTAB(IKF) | |
31 | IF(KF.LT.0.AND.KCHG(LUCOMP,3).EQ.0) LUCOMP=0 | |
32 | RETURN | |
33 | ENDIF | |
34 | 100 CONTINUE | |
35 | ENDIF | |
36 | ||
37 | C...Subdivide KF code into constituent pieces. | |
38 | KFLA=MOD(KFA/1000,10) | |
39 | KFLB=MOD(KFA/100,10) | |
40 | KFLC=MOD(KFA/10,10) | |
41 | KFLS=MOD(KFA,10) | |
42 | KFLR=MOD(KFA/10000,10) | |
43 | ||
44 | C...Mesons. | |
45 | IF(KFA-10000*KFLR.LT.1000) THEN | |
46 | IF(KFLB.EQ.0.OR.KFLB.EQ.9.OR.KFLC.EQ.0.OR.KFLC.EQ.9) THEN | |
47 | ELSEIF(KFLB.LT.KFLC) THEN | |
48 | ELSEIF(KF.LT.0.AND.KFLB.EQ.KFLC) THEN | |
49 | ELSEIF(KFLB.EQ.KFLC) THEN | |
50 | IF(KFLR.EQ.0.AND.KFLS.EQ.1) THEN | |
51 | LUCOMP=110+KFLB | |
52 | ELSEIF(KFLR.EQ.0.AND.KFLS.EQ.3) THEN | |
53 | LUCOMP=130+KFLB | |
54 | ELSEIF(KFLR.EQ.1.AND.KFLS.EQ.3) THEN | |
55 | LUCOMP=150+KFLB | |
56 | ELSEIF(KFLR.EQ.1.AND.KFLS.EQ.1) THEN | |
57 | LUCOMP=170+KFLB | |
58 | ELSEIF(KFLR.EQ.2.AND.KFLS.EQ.3) THEN | |
59 | LUCOMP=190+KFLB | |
60 | ELSEIF(KFLR.EQ.0.AND.KFLS.EQ.5) THEN | |
61 | LUCOMP=210+KFLB | |
62 | ENDIF | |
63 | ELSEIF(KFLB.LE.5) THEN | |
64 | IF(KFLR.EQ.0.AND.KFLS.EQ.1) THEN | |
65 | LUCOMP=100+((KFLB-1)*(KFLB-2))/2+KFLC | |
66 | ELSEIF(KFLR.EQ.0.AND.KFLS.EQ.3) THEN | |
67 | LUCOMP=120+((KFLB-1)*(KFLB-2))/2+KFLC | |
68 | ELSEIF(KFLR.EQ.1.AND.KFLS.EQ.3) THEN | |
69 | LUCOMP=140+((KFLB-1)*(KFLB-2))/2+KFLC | |
70 | ELSEIF(KFLR.EQ.1.AND.KFLS.EQ.1) THEN | |
71 | LUCOMP=160+((KFLB-1)*(KFLB-2))/2+KFLC | |
72 | ELSEIF(KFLR.EQ.2.AND.KFLS.EQ.3) THEN | |
73 | LUCOMP=180+((KFLB-1)*(KFLB-2))/2+KFLC | |
74 | ELSEIF(KFLR.EQ.0.AND.KFLS.EQ.5) THEN | |
75 | LUCOMP=200+((KFLB-1)*(KFLB-2))/2+KFLC | |
76 | ENDIF | |
77 | ELSEIF((KFLS.EQ.1.AND.KFLR.LE.1).OR.(KFLS.EQ.3.AND.KFLR.LE.2) | |
78 | & .OR.(KFLS.EQ.5.AND.KFLR.EQ.0)) THEN | |
79 | LUCOMP=80+KFLB | |
80 | ENDIF | |
81 | ||
82 | C...Diquarks. | |
83 | ELSEIF((KFLR.EQ.0.OR.KFLR.EQ.1).AND.KFLC.EQ.0) THEN | |
84 | IF(KFLS.NE.1.AND.KFLS.NE.3) THEN | |
85 | ELSEIF(KFLA.EQ.9.OR.KFLB.EQ.0.OR.KFLB.EQ.9) THEN | |
86 | ELSEIF(KFLA.LT.KFLB) THEN | |
87 | ELSEIF(KFLS.EQ.1.AND.KFLA.EQ.KFLB) THEN | |
88 | ELSE | |
89 | LUCOMP=90 | |
90 | ENDIF | |
91 | ||
92 | C...Spin 1/2 baryons. | |
93 | ELSEIF(KFLR.EQ.0.AND.KFLS.EQ.2) THEN | |
94 | IF(KFLA.EQ.9.OR.KFLB.EQ.0.OR.KFLB.EQ.9.OR.KFLC.EQ.9) THEN | |
95 | ELSEIF(KFLA.LE.KFLC.OR.KFLA.LT.KFLB) THEN | |
96 | ELSEIF(KFLA.GE.6.OR.KFLB.GE.4.OR.KFLC.GE.4) THEN | |
97 | LUCOMP=80+KFLA | |
98 | ELSEIF(KFLB.LT.KFLC) THEN | |
99 | LUCOMP=300+((KFLA+1)*KFLA*(KFLA-1))/6+(KFLC*(KFLC-1))/2+KFLB | |
100 | ELSE | |
101 | LUCOMP=330+((KFLA+1)*KFLA*(KFLA-1))/6+(KFLB*(KFLB-1))/2+KFLC | |
102 | ENDIF | |
103 | ||
104 | C...Spin 3/2 baryons. | |
105 | ELSEIF(KFLR.EQ.0.AND.KFLS.EQ.4) THEN | |
106 | IF(KFLA.EQ.9.OR.KFLB.EQ.0.OR.KFLB.EQ.9.OR.KFLC.EQ.9) THEN | |
107 | ELSEIF(KFLA.LT.KFLB.OR.KFLB.LT.KFLC) THEN | |
108 | ELSEIF(KFLA.GE.6.OR.KFLB.GE.4) THEN | |
109 | LUCOMP=80+KFLA | |
110 | ELSE | |
111 | LUCOMP=360+((KFLA+1)*KFLA*(KFLA-1))/6+(KFLB*(KFLB-1))/2+KFLC | |
112 | ENDIF | |
113 | ENDIF | |
114 | ||
115 | RETURN | |
116 | END |