]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliPDG.cxx
Updated task list
[u/mrichter/AliRoot.git] / STEER / AliPDG.cxx
index c9f6a1a797ca030eb0ac5fa71b1e8d56abd12326..2395e4aaad0eb8d3e533ebcc29ca379c5544cb08 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.1  2000/12/21 16:48:39  morsch
-AliPDG class, first commit.
-
-*/
+/* $Id$ */
 
 // Class to encapsulate the ALICE updates to TDatabasePDG.h
 // Can be used by TGeant3 and TGeant4
@@ -31,338 +26,161 @@ AliPDG class, first commit.
 
 ClassImp(AliPDG)
 
-    void AliPDG::AddParticlesToPdgDataBase()
+
+
+void AliPDG::AddParticlesToPdgDataBase()
 {
 
 //
 // Add particles to the PDG data base
+//
+  
+  static Bool_t bAdded = kFALSE;
+  // Check if already called
+  if(bAdded)return;
+  bAdded = true;
 
-    TDatabasePDG *pdgDB = TDatabasePDG::Instance();
+  TDatabasePDG *pdgDB = TDatabasePDG::Instance();
+  const Int_t kspe=50000000;
+
+  // PDG nuclear states are 10-digit numbers
+  // 10LZZZAAAI e.g. deuteron is 
+  // 1000010020
+  const Int_t kion=1000000000;
+
+  const Double_t kAu2Gev=0.9314943228;
+  const Double_t khSlash = 1.0545726663e-27;
+  const Double_t kErg2Gev = 1/1.6021773349e-3;
+  const Double_t khShGev = khSlash*kErg2Gev;
+  const Double_t kYear2Sec = 3600*24*365.25;
 
-    const Int_t kion=10000000;
-    const Int_t kspe=50000000;
 
-    const Double_t kAu2Gev=0.9314943228;
-    const Double_t khSlash = 1.0545726663e-27;
-    const Double_t kErg2Gev = 1/1.6021773349e-3;
-    const Double_t khShGev = khSlash*kErg2Gev;
-    const Double_t kYear2Sec = 3600*24*365.25;
 //
 // Bottom mesons
 // mass and life-time from PDG
-    pdgDB->AddParticle("B(s)*0","B(s)*0",
-                      5.4163, kTRUE, 0.047, +0.,"Meson",  533);
-    
-    pdgDB->AddParticle("B(s)*0 bar","B(s)*0 bar",
-                      5.4163, kTRUE, 0.047, -0.,"Meson", -533);
-
-    pdgDB->AddParticle("B(c)+","B(c)+",
-                      6.594, kTRUE, 0.047, +1.,"Meson",  541);
-    
-    pdgDB->AddParticle("B(c)- bar","B(c)-",
-                      6.594, kTRUE, 0.047, -1.,"Meson", -541);
-
-    pdgDB->AddParticle("B(c)*+","B(c)*+",
-                      6.602, kTRUE, 0.047, +1.,"Meson",  543);
-    
-    pdgDB->AddParticle("B(c)*- bar","B(c)*-",
-                      6.602, kTRUE, 0.047, -1.,"Meson", -543);
-
-
-    
-// Charmed baryons
-// 
-// value for mass used by Hijing
-    pdgDB->AddParticle("Sigma(c)*+","Sigma(c)*+",
-                      2.4536, kTRUE, -1., +1.,"Baryon",  4214);
-    
-    pdgDB->AddParticle("Sigma(c)*-","Sigma(c)*-",
-                      2.4536, kTRUE, -1., -1.,"Baryon", -4214);
-// equivalent to 4312 ? Hijing uses m=2.55
-    pdgDB->AddParticle("Xsi(c)0","Xsi(c)0",
-                      2.4703, kTRUE, -1., +0.,"Baryon",  4132);
-    
-    pdgDB->AddParticle("Xsi(c)0 bar","Xsi(c)0 bar",
-                      2.4703, kTRUE, -1., -0.,"Baryon", -4132);
-// equivalent to 4322 ? Hijing uses m=2.55
-    pdgDB->AddParticle("Xi(c)+","Xi(c)+",
-                      2.4656, kFALSE, -1., +1.,"Baryon",  4232);
-    
-    pdgDB->AddParticle("Xi(c)-","Xi(c)-",
-                      2.4656, kFALSE, -1., -1.,"Baryon", -4232);
-// mass values from Hijing
-    
-    pdgDB->AddParticle("Xsi(c)*0","Xsi(c)*0",
-                      2.63, kTRUE, -1., +0.,"Baryon",  4314);
-    
-    pdgDB->AddParticle("Xsi(c)*0 bar","Xsi(c)*0 bar",
-                      2.63, kTRUE, -1., -0.,"Baryon", -4314);
-    
-    pdgDB->AddParticle("Xsi(c)*+","Xsi(c)*+",
-                      2.63, kTRUE, -1., +1.,"Baryon",  4324);
-    
-    pdgDB->AddParticle("Xsi(c)*-","Xsi(c)*-",
-                      2.63, kTRUE, -1., -1.,"Baryon", -4324);
-    
-// pdg mass value, Hijing uses m=2.73.
-    pdgDB->AddParticle("Omega(c)0","Omega(c)0",
-                      2.7040, kFALSE, khShGev/0.064e-12, +0.,"Baryon",  4332);
-    
-    pdgDB->AddParticle("Omega(c)0 bar","Omega(c)0 bar",
-                      2.7040, kFALSE, khShGev/0.064e-12, -0.,"Baryon", -4332);
-// mass value from Hijing
-    pdgDB->AddParticle("Omega(c)*0","Omega(c)*0",
-                      2.8000, kFALSE, -1., +0.,"Baryon",  4334);
-    
-    pdgDB->AddParticle("Omega(c)*0 bar","Omega(c)*0",
-                      2.8000, kFALSE, -1., -0.,"Baryon", -4334);
-    
-    
-// Xi(cc)
-    
-    pdgDB->AddParticle("Xsi(cc)+","Xsi(cc)+",
-                    3.60, kTRUE, -1., +1.,"Baryon",  4412);
-    
-    pdgDB->AddParticle("Xsi(cc) bar-","Xsi(cc) bar-",
-                      3.60, kTRUE, -1., -1.,"Baryon", -4412);
-    
-    pdgDB->AddParticle("Xsi*(cc)+","Xsi*(cc)+",
-                      3.66, kTRUE, -1., +1.,"Baryon",  4414);
-
-    pdgDB->AddParticle("Xsi*(cc) bar-","Xsi*(cc) bar-",
-                      3.66, kTRUE, -1., -1.,"Baryon", -4414);
-    
-    
-    pdgDB->AddParticle("Xsi(cc)++","Xsi(cc)++",
-                      3.60, kTRUE, -1., +2.,"Baryon",  4422);
-    
-    pdgDB->AddParticle("Xsi(cc) bar--","Xsi(cc) bar--",
-                      3.60, kTRUE, -1., -2.,"Baryon", -4422);
-    
-    
-    pdgDB->AddParticle("Xsi*(cc)++","Xsi*(cc)++",
-                      3.66, kTRUE, -1., +2.,"Baryon",  4424);
-    
-    pdgDB->AddParticle("Xsi*(cc) bar-","Xsi*(cc) bar-",
-                      3.66, kTRUE, -1., -2.,"Baryon", -4424);
-    
-    pdgDB->AddParticle("Omega(cc)+","Omega(cc)+",
-                      3.78, kTRUE, -1., +1.,"Baryon",  4432);
-    
-    pdgDB->AddParticle("Omega(cc) bar-","Omega(cc) bar-",
-                      3.78, kTRUE, -1., -1.,"Baryon", -4432);
-    
-    pdgDB->AddParticle("Omega*(cc)+","Omega*(cc)+",
-                      3.82, kTRUE, -1., +1.,"Baryon",  4434);
-    
-    pdgDB->AddParticle("Omega*(cc) bar-","Omega*(cc) bar-",
-                      3.82, kTRUE, -1., -1.,"Baryon", -4434);
-    
-    
-    pdgDB->AddParticle("Omega*(ccc)+","Omega*(cc)++",
-                      4.91, kTRUE, -1., +2.,"Baryon",  4444);
-    
-    pdgDB->AddParticle("Omega*(ccc) bar--","Omega*(cc) bar--",
-                      4.91, kTRUE, -1., -2.,"Baryon", -4444);
-    
-    
-
-// Bottom baryons
 //
-// mass value from Hijing
-    pdgDB->AddParticle("Sigma(b)*+","Sigma(b)*+",
-                      5.8100, kFALSE, -1., +1.,"Baryon", 5224);
-    
-    pdgDB->AddParticle("Sigma(b)*-","Sigma(b)*-",
-                      5.8100, kFALSE, -1., -1.,"Baryon", -5224);
-    
-    
-    pdgDB->AddParticle("Xi(b)0","Xi(b)0",
-                      5.8400, kFALSE, -1., +0.,"Baryon", 5232);
-    
-    pdgDB->AddParticle("Xi(b)0 bar","Xi(b)0 bar",
-                      5.8100, kFALSE, -1., -0.,"Baryon", -5232);
-    
-// B(s) 
-    pdgDB->AddParticle("Xi'(b)-","Xi'(b)-",
-                      5.9600, kFALSE, -1., -1.,"Baryon", 5312);
-    
-    pdgDB->AddParticle("Xi'(b) bar+","Xi'(b) bar+",
-                      5.9600, kFALSE, -1.,  1.,"Baryon", -5312);
-    
-    pdgDB->AddParticle("Xi*(b)-","Xi*(b)-",
-                      5.9700, kFALSE, -1., -1.,"Baryon", 5314);
-    
-    pdgDB->AddParticle("Xi*(b) bar+","Xi*(b) bar+",
-                      5.9700, kFALSE, -1.,  1.,"Baryon", -5314);
-    
-    pdgDB->AddParticle("Xi'(b)0","Xi'(b)0",
-                      5.9600, kFALSE, -1., -0.,"Baryon", 5322);
-    
-    pdgDB->AddParticle("Xi'(b) bar0","Xi'(b) bar0",
-                      5.9600, kFALSE, -1.,  0.,"Baryon", -5322);
-    
-    pdgDB->AddParticle("Xi*(b)0","Xi*(b)0",
-                      5.9700, kFALSE, -1., -0.,"Baryon", 5324);
-    
-    pdgDB->AddParticle("Xi*(b) bar0","Xi*(b) bar0",
-                      5.9700, kFALSE, -1.,  0.,"Baryon", -5324);
-    
-    pdgDB->AddParticle("Omega(b)-","Omega(b)-",
-                      6.1200, kFALSE, -1., -1.,"Baryon", 5332);
-    
-    pdgDB->AddParticle("Omega(b) bar+","Omega(b) bar+",
-                      6.1200, kFALSE, -1.,  1.,"Baryon", -5332);
-    
-    pdgDB->AddParticle("Omega*(b)-","Omega*(b)-",
-                      6.1300, kFALSE, -1., -1.,"Baryon", 5334);
-    
-    pdgDB->AddParticle("Omega*(b) bar+","Omega*(b) bar+",
-                      6.1300, kFALSE, -1.,  1.,"Baryon", -5334);
-
-
-    pdgDB->AddParticle("Omega*(b)-","Omega*(b)-",
-                      6.1300, kFALSE, -1., -1.,"Baryon", 5334);
-    
-    pdgDB->AddParticle("Omega*(b) bar+","Omega*(b) bar+",
-                      6.1300, kFALSE, -1.,  1.,"Baryon", -5334);
-
-// B(c) 
-
-    pdgDB->AddParticle("Omega(bc)0","Omega(bc)0",
-                      7.1900, kFALSE, -1., -0.,"Baryon", 5342);
-    
-    pdgDB->AddParticle("Omega(bc) bar0","Omega(bc) bar0",
-                      7.1900, kFALSE, -1.,  0.,"Baryon", -5342);
-    
-    pdgDB->AddParticle("Xi'(bc)0","Xi'(bc)0",
-                      7.0400, kFALSE, -1., -0.,"Baryon", 5412);
-    
-    pdgDB->AddParticle("Xi'(bc) bar0","Xi'(bc) bar0",
-                      7.0400, kFALSE, -1.,  0.,"Baryon", -5412);
-    
-    pdgDB->AddParticle("Xi*(bc)0","Xi*(bc)0",
-                      7.0500, kFALSE, -1., -0.,"Baryon", 5414);
-    
-    pdgDB->AddParticle("Xi*(bc) bar0","Xi*(bc) bar0",
-                      7.0500, kFALSE, -1.,  0.,"Baryon", -5414);
-    
-    pdgDB->AddParticle("Xi'(bc)+","Xi'(bc)+",
-                      7.0400, kFALSE, -1., +1.,"Baryon", 5422);
-    
-    pdgDB->AddParticle("Xi'(bc) bar-","Xi'(bc) bar-",
-                      7.0400, kFALSE, -1., -1.,"Baryon", -5422);
-    
-    pdgDB->AddParticle("Xi*(bc)+","Xi*(bc)+",
-                      7.0500, kFALSE, -1., +1.,"Baryon", 5424);
-    
-    pdgDB->AddParticle("Xi*(bc) bar-","Xi*(bc) bar-",
-                      7.0500, kFALSE, -1., -1.,"Baryon", -5424);
-    
-    pdgDB->AddParticle("Omega'(bc)0","Omega'(bc)0",
-                      7.2100, kFALSE, -1., -0.,"Baryon", 5432);
-    
-    pdgDB->AddParticle("Omega'(bc) bar0","Omega'(bc) bar0",
-                      7.2100, kFALSE, -1.,  0.,"Baryon", -5432);
-    
-    pdgDB->AddParticle("Omega*(bc)0","Omega*(bc)0",
-                      7.2200, kFALSE, -1., -0.,"Baryon", 5434);
-    
-    pdgDB->AddParticle("Omega*(bc) bar0","Omega*(bc) bar0",
-                      7.2200, kFALSE, -1.,  0.,"Baryon", -5434);
-// B(bcc)
-    pdgDB->AddParticle("Omega(bcc)+","Omega(bcc)+",
-                      8.3100, kFALSE, -1., +1.,"Baryon", 5442);
-    
-    pdgDB->AddParticle("Omega(bcc) bar-","Omega(bcc) bar-",
-                      8.3100, kFALSE, -1., -1.,"Baryon", -5442);
-    
-    pdgDB->AddParticle("Omega*(bcc)+","Omega*(bcc)+",
-                      8.3100, kFALSE, -1., +1.,"Baryon", 5444);
-    
-    pdgDB->AddParticle("Omega*(bcc) bar-","Omega*(bcc) bar-",
-                      8.3100, kFALSE, -1., -1.,"Baryon", -5444);
-
-
-
-
-// B(bb)
-
-    pdgDB->AddParticle("Xsi(bb)-","Xsi(bb)-",
-                      10.4200, kFALSE, -1., -1.,"Baryon", 5512);
-    
-    pdgDB->AddParticle("Xsi(bb) bar+","Xsi(bb) bar+",
-                      10.4200, kFALSE, -1., +1.,"Baryon", -5512);
-    
-    pdgDB->AddParticle("Xsi*(bb)-","Xsi*(bb)-",
-                      10.4400, kFALSE, -1., -1.,"Baryon", 5514);
-    
-    pdgDB->AddParticle("Xsi*(bb) bar+","Xsi*(bb) bar+",
-                      10.4400, kFALSE, -1., +1.,"Baryon", -5514);
-    
-    pdgDB->AddParticle("Xsi(bb)0","Xsi(bb)0",
-                      10.4200, kFALSE, -1., -0.,"Baryon", 5522);
-    
-    pdgDB->AddParticle("Xsi(bb) bar0","Xsi(bb) bar0",
-                      10.4200, kFALSE, -1., +0.,"Baryon", -5522);
-    
-    pdgDB->AddParticle("Xsi*(bb)0","Xsi*(bb)0",
-                      10.4400, kFALSE, -1., -0.,"Baryon", 5524);
-    
-    pdgDB->AddParticle("Xsi*(bb) bar0","Xsi*(bb) bar0",
-                      10.4400, kFALSE, -1., +0.,"Baryon", -5524);
-    
-    pdgDB->AddParticle("Omega*(bb)-","Omega(bb)-",
-                      10.6000, kFALSE, -1., -1.,"Baryon", 5532);
-    
-    pdgDB->AddParticle("Omega(bb) bar+","Omega(bb) bar+",
-                      10.6000, kFALSE, -1., +1.,"Baryon", -5532);
-    
-    pdgDB->AddParticle("Omega*(bb)-","Omega*(bb)-",
-                      10.6000, kFALSE, -1., -1.,"Baryon", 5534);
-    
-    pdgDB->AddParticle("Omega*(bb) bar+","Omega*(bb) bar+",
-                      10.6000, kFALSE, -1., +1.,"Baryon", -5534);
-    
-// B(bbc)
-    
-    pdgDB->AddParticle("Omega(bbc)0","Omega(bbc)0",
-                      11.7100, kFALSE, -1., -0.,"Baryon", 5542);
-    
-    pdgDB->AddParticle("Omega(bbc) bar0","Omega(bbc) bar0",
-                      11.7100, kFALSE, -1., +0.,"Baryon", -5542);
-    
-    pdgDB->AddParticle("Omega*(bbc)0","Omega*(bbc)0",
-                      11.7100, kFALSE, -1., -0.,"Baryon", 5544);
-
-    pdgDB->AddParticle("Omega*(bbc) bar0","Omega*(bbc) bar0",
-                    11.7100, kFALSE, -1., +0.,"Baryon", -5544);
-// B(bbb)
-    
-    pdgDB->AddParticle("Omega*(bbb)-","Omega*(bbb)-",
-                      15.1000, kFALSE, -1., -1.,"Baryon", 5544);
-
-    pdgDB->AddParticle("Omega*(bbb) bar+","Omega*(bbb) bar+",
-                      15.100, kFALSE, -1., +1.,"Baryon", -5544);
-    
-//
-// Ions 
-//
-
-  pdgDB->AddParticle("Deuteron","Deuteron",2*kAu2Gev+8.071e-3,kTRUE,
-                    0,1,"Ion",kion+10020);
-  pdgDB->AddParticle("Triton","Triton",3*kAu2Gev+14.931e-3,kFALSE,
-                    khShGev/(12.33*kYear2Sec),1,"Ion",kion+10030);
-  pdgDB->AddParticle("Alpha","Alpha",4*kAu2Gev+2.424e-3,kTRUE,
-                    khShGev/(12.33*kYear2Sec),2,"Ion",kion+20040);
-  pdgDB->AddParticle("HE3","HE3",3*kAu2Gev+14.931e-3,kFALSE,
-                    0,2,"Ion",kion+20030);
-
-//
-// special particles
+  pdgDB->AddParticle("Upsilon(3S)","Upsilon(3S)",10.3552,kTRUE,
+                     0,1,"Bottonium",200553);
+
+// QCD diffractive states
+  pdgDB->AddParticle("rho_diff0","rho_diff0",0,kTRUE,
+                    0,0,"QCD diffr. state",9900110);
+  pdgDB->AddParticle("pi_diffr+","pi_diffr+",0,kTRUE,
+                    0,1,"QCD diffr. state",9900210);
+  pdgDB->AddParticle("omega_di","omega_di",0,kTRUE,
+                    0,0,"QCD diffr. state",9900220);
+  pdgDB->AddParticle("phi_diff","phi_diff",0,kTRUE,
+                    0,0,"QCD diffr. state",9900330);
+  pdgDB->AddParticle("J/psi_di","J/psi_di",0,kTRUE,
+                    0,0,"QCD diffr. state",9900440);
+  pdgDB->AddParticle("n_diffr0","n_diffr0",0,kTRUE,
+                    0,0,"QCD diffr. state",9902110);
+  pdgDB->AddParticle("p_diffr+","p_diffr+",0,kTRUE,
+                    0,1,"QCD diffr. state",9902210);
+
+// From Herwig
+  pdgDB->AddParticle("PSID    ", " ", 3.7699, kFALSE, 0.0, 0, "meson",   30443);
+  
+  pdgDB->AddParticle("A_00    ", " ", 0.9960, kFALSE, 0.0, 0, "meson",  9000111); 
+  pdgDB->AddParticle("A_0+    ", " ", 0.9960, kFALSE, 0.0,+1, "meson",  9000211);  
+  pdgDB->AddParticle("A_0-    ", " ", 0.9960, kFALSE, 0.0,-1, "meson", -9000211);  
+
+  pdgDB->AddParticle("F0P0    ", " ", 0.9960, kFALSE, 0.0, 0, "meson",  9010221); 
+  
+  pdgDB->AddParticle("KDL_2+  ", " ", 1.773,  kFALSE, 0.0,+1, "meson",   10325); 
+  pdgDB->AddParticle("KDL_2-  ", " ", 1.773,  kFALSE, 0.0,-1, "meson",  -10325); 
+
+  pdgDB->AddParticle("KDL_20  ", " ", 1.773,  kFALSE, 0.0, 0, "meson",   10315); 
+  pdgDB->AddParticle("KDL_2BR0", " ", 1.773,  kFALSE, 0.0, 0, "meson",  -10315); 
+
+  pdgDB->AddParticle("PI_2+   ", " ", 1.670,  kFALSE, 0.0,+1, "meson",   10215);
+  pdgDB->AddParticle("PI_2-   ", " ", 1.670,  kFALSE, 0.0,-1, "meson",  -10215);
+  pdgDB->AddParticle("PI_20   ", " ", 1.670,  kFALSE, 0.0, 0, "meson",   10115);
+  
+  
+  pdgDB->AddParticle("KD*+    ", " ", 1.717,  kFALSE, 0.0,+1, "meson",   30323); 
+  pdgDB->AddParticle("KD*-    ", " ", 1.717,  kFALSE, 0.0,-1, "meson",  -30323); 
+
+  pdgDB->AddParticle("KD*0    ", " ", 1.717,  kFALSE, 0.0, 0, "meson",   30313); 
+  pdgDB->AddParticle("KDBR*0  ", " ", 1.717,  kFALSE, 0.0, 0, "meson",  -30313); 
+
+  pdgDB->AddParticle("RHOD+   ", " ", 1.700,  kFALSE, 0.0,+1, "meson",   30213); 
+  pdgDB->AddParticle("RHOD-   ", " ", 1.700,  kFALSE, 0.0,-1, "meson",  -30213); 
+  pdgDB->AddParticle("RHOD0   ", " ", 1.700,  kFALSE, 0.0, 0, "meson",   30113); 
+  
+  pdgDB->AddParticle("ETA_2(L)", " ", 1.632,  kFALSE, 0.0, 0, "meson",   10225); 
+  pdgDB->AddParticle("ETA_2(H)", " ", 1.854,  kFALSE, 0.0, 0, "meson",   10335); 
+  pdgDB->AddParticle("OMEGA(H)", " ", 1.649,  kFALSE, 0.0, 0, "meson",   30223);
+  
+  
+  pdgDB->AddParticle("KDH_2+  ", " ", 1.816,  kFALSE, 0.0,+1, "meson",   20325);
+  pdgDB->AddParticle("KDH_2-  ", " ", 1.816,  kFALSE, 0.0,-1, "meson",  -20325);
+
+  pdgDB->AddParticle("KDH_20  ", " ", 1.816,  kFALSE, 0.0, 0, "meson",   20315);
+  pdgDB->AddParticle("KDH_2BR0", " ", 1.816,  kFALSE, 0.0, 0, "meson",  -20315);
+  
+  
+  pdgDB->AddParticle("KD_3+   ", " ", 1.773,  kFALSE, 0.0,+1, "meson",     327);
+  pdgDB->AddParticle("KD_3-   ", " ", 1.773,  kFALSE, 0.0,-1, "meson",    -327);
+
+  pdgDB->AddParticle("KD_30   ", " ", 1.773,  kFALSE, 0.0, 0, "meson",     317);
+  pdgDB->AddParticle("KD_3BR0 ", " ", 1.773,  kFALSE, 0.0, 0, "meson",    -317);
+  
+  pdgDB->AddParticle("RHO_3+  ", " ", 1.691,  kFALSE, 0.0,+1, "meson",     217);
+  pdgDB->AddParticle("RHO_3-  ", " ", 1.691,  kFALSE, 0.0,-1, "meson",    -217);
+  pdgDB->AddParticle("RHO_30  ", " ", 1.691,  kFALSE, 0.0, 0, "meson",     117);
+  pdgDB->AddParticle("OMEGA_3 ", " ", 1.667,  kFALSE, 0.0, 0, "meson",     227);
+  pdgDB->AddParticle("PHI_3   ", " ", 1.854,  kFALSE, 0.0, 0, "meson",     337);
+  
+  pdgDB->AddParticle("CHI2P_B0", " ", 10.232, kFALSE, 0.0, 0, "meson", 110551);
+  pdgDB->AddParticle("CHI2P_B1", " ", 10.255, kFALSE, 0.0, 0, "meson", 120553);
+  pdgDB->AddParticle("CHI2P_B2", " ", 10.269, kFALSE, 0.0, 0, "meson", 100555);
+  pdgDB->AddParticle("UPSLON4S", " ", 10.580, kFALSE, 0.0, 0, "meson", 300553);
+  
+
+  // IONS
+  //
+  // Done by default now from Pythia6 table
+  // Needed for other generators
+  // So check if already defined
+
+
+  Int_t ionCode = kion+10020;
+  if(!pdgDB->GetParticle(ionCode)){
+      pdgDB->AddParticle("Deuteron","Deuteron",2*kAu2Gev+8.071e-3,kTRUE,
+                        0,1,"Ion",ionCode);
+  }
+
+  pdgDB->AddAntiParticle("Anti Deuteron", - ionCode);
+
+  ionCode = kion+10030;
+  if(!pdgDB->GetParticle(ionCode)){
+    pdgDB->AddParticle("Triton","Triton",3*kAu2Gev+14.931e-3,kFALSE,
+                     khShGev/(12.33*kYear2Sec),1,"Ion",ionCode);
+  }
+
+  ionCode = kion+20030;
+  if(!pdgDB->GetParticle(ionCode)){
+    pdgDB->AddParticle("HE3","HE3",3*kAu2Gev+14.931e-3,kFALSE,
+                     0,2,"Ion",ionCode);
+  }
+
+  ionCode = kion+20040;
+  if(!pdgDB->GetParticle(ionCode)){
+    pdgDB->AddParticle("Alpha","Alpha",4*kAu2Gev+2.424e-3,kTRUE,
+                      khShGev/(12.33*kYear2Sec),2,"Ion",ionCode);
+  }
+
+
+// Special particles
 // 
   pdgDB->AddParticle("Cherenkov","Cherenkov",0,kFALSE,
                     0,0,"Special",kspe+50);
   pdgDB->AddParticle("FeedbackPhoton","FeedbackPhoton",0,kFALSE,
                     0,0,"Special",kspe+51);
+  pdgDB->AddParticle("Lambda1520","Lambda1520",1.5195,kFALSE,
+                    0.0156,0,"Resonance",3124);
+  pdgDB->AddAntiParticle("Lambda1520bar",-3124);
 }
+
+