]>
Commit | Line | Data |
---|---|---|
0795afa3 | 1 | #include "isajet/pilot.h" |
2 | INTEGER FUNCTION IDANTI(ID) | |
3 | C---------------------------------------------------------------------- | |
4 | C- | |
5 | C- Purpose and Methods : | |
6 | C- Return value of antiparticle id | |
7 | C- | |
8 | C- Inputs : | |
9 | C- ID = particle id | |
10 | C- | |
11 | C- Created 1-JUN-1988 Serban D. Protopopescu | |
12 | C- 3-Jan-1993: Expand self-conjugate list for MSSM and simplify | |
13 | C structure. FEP | |
14 | C 17-Mar-1997: Correctly handle mesons with IDENT>10000 | |
15 | C- | |
16 | C---------------------------------------------------------------------- | |
17 | #if defined(CERNLIB_IMPNONE) | |
18 | IMPLICIT NONE | |
19 | #endif | |
20 | INTEGER ID,IFL1,IFL2,IFL3,IDABS | |
21 | INTEGER NSELF,I | |
22 | PARAMETER (NSELF=14) | |
23 | INTEGER IDSELF(NSELF) | |
24 | SAVE IDSELF | |
25 | DATA IDSELF/9,10,20,29,30,40,50,60,81,82,83,84,90,91/ | |
26 | C---------------------------------------------------------------------- | |
27 | IDABS=IABS(ID) | |
28 | IFL1=MOD(IDABS/1000,10) | |
29 | C | |
30 | C Baryons and diquarks | |
31 | C | |
32 | IF(IFL1.NE.0) THEN | |
33 | IDANTI=-ID | |
34 | RETURN | |
35 | ENDIF | |
36 | C | |
37 | C Mesons | |
38 | C | |
39 | IF(IDABS.GT.100.AND.IFL1.EQ.0) THEN | |
40 | IFL2=MOD(IDABS/100,10) | |
41 | IFL3=MOD(IDABS/10,10) | |
42 | IF(IFL2.EQ.IFL3) THEN | |
43 | IDANTI=+ID | |
44 | ELSE | |
45 | IDANTI=-ID | |
46 | ENDIF | |
47 | RETURN | |
48 | ENDIF | |
49 | C | |
50 | C Other particles | |
51 | C | |
52 | DO 100 I=1,NSELF | |
53 | IF(IDABS.EQ.IDSELF(I)) THEN | |
54 | IDANTI=+ID | |
55 | RETURN | |
56 | ENDIF | |
57 | 100 CONTINUE | |
58 | IDANTI=-ID | |
59 | RETURN | |
60 | END |