]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ISAJET/code/idanti.F
Bug in V0A fixed (Guillermo)
[u/mrichter/AliRoot.git] / ISAJET / code / idanti.F
CommitLineData
0795afa3 1#include "isajet/pilot.h"
2 INTEGER FUNCTION IDANTI(ID)
3C----------------------------------------------------------------------
4C-
5C- Purpose and Methods :
6C- Return value of antiparticle id
7C-
8C- Inputs :
9C- ID = particle id
10C-
11C- Created 1-JUN-1988 Serban D. Protopopescu
12C- 3-Jan-1993: Expand self-conjugate list for MSSM and simplify
13C structure. FEP
14C 17-Mar-1997: Correctly handle mesons with IDENT>10000
15C-
16C----------------------------------------------------------------------
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/
26C----------------------------------------------------------------------
27 IDABS=IABS(ID)
28 IFL1=MOD(IDABS/1000,10)
29C
30C Baryons and diquarks
31C
32 IF(IFL1.NE.0) THEN
33 IDANTI=-ID
34 RETURN
35 ENDIF
36C
37C Mesons
38C
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
49C
50C Other particles
51C
52 DO 100 I=1,NSELF
53 IF(IDABS.EQ.IDSELF(I)) THEN
54 IDANTI=+ID
55 RETURN
56 ENDIF
57100 CONTINUE
58 IDANTI=-ID
59 RETURN
60 END