Some B mesons added
[u/mrichter/AliRoot.git] / STEER / AliPDG.cxx
1 /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  *                                                                        *
4  * Author: The ALICE Off-line Project.                                    *
5  * Contributors are mentioned in the code where appropriate.              *
6  *                                                                        *
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  *
14  **************************************************************************/
15
16 /*
17 $Log$
18 Revision 1.1  2000/12/21 16:48:39  morsch
19 AliPDG class, first commit.
20
21 */
22
23 // Class to encapsulate the ALICE updates to TDatabasePDG.h
24 // Can be used by TGeant3 and TGeant4
25 // It contains also the constants for the PDG particle IDs.
26 // Should evolve towards dynamical loading from external data base.
27 // Comments to: andreas.morsch@cern.ch 
28
29 #include "AliPDG.h"
30 #include "TDatabasePDG.h"
31
32 ClassImp(AliPDG)
33
34     void AliPDG::AddParticlesToPdgDataBase()
35 {
36
37 //
38 // Add particles to the PDG data base
39
40     TDatabasePDG *pdgDB = TDatabasePDG::Instance();
41
42     const Int_t kion=10000000;
43     const Int_t kspe=50000000;
44
45     const Double_t kAu2Gev=0.9314943228;
46     const Double_t khSlash = 1.0545726663e-27;
47     const Double_t kErg2Gev = 1/1.6021773349e-3;
48     const Double_t khShGev = khSlash*kErg2Gev;
49     const Double_t kYear2Sec = 3600*24*365.25;
50 //
51 // Bottom mesons
52 // mass and life-time from PDG
53     pdgDB->AddParticle("B(s)*0","B(s)*0",
54                        5.4163, kTRUE, 0.047, +0.,"Meson",  533);
55     
56     pdgDB->AddParticle("B(s)*0 bar","B(s)*0 bar",
57                        5.4163, kTRUE, 0.047, -0.,"Meson", -533);
58
59     pdgDB->AddParticle("B(c)+","B(c)+",
60                        6.594, kTRUE, 0.047, +1.,"Meson",  541);
61     
62     pdgDB->AddParticle("B(c)- bar","B(c)-",
63                        6.594, kTRUE, 0.047, -1.,"Meson", -541);
64
65     pdgDB->AddParticle("B(c)*+","B(c)*+",
66                        6.602, kTRUE, 0.047, +1.,"Meson",  543);
67     
68     pdgDB->AddParticle("B(c)*- bar","B(c)*-",
69                        6.602, kTRUE, 0.047, -1.,"Meson", -543);
70
71
72     
73 // Charmed baryons
74 // 
75 // value for mass used by Hijing
76     pdgDB->AddParticle("Sigma(c)*+","Sigma(c)*+",
77                        2.4536, kTRUE, -1., +1.,"Baryon",  4214);
78     
79     pdgDB->AddParticle("Sigma(c)*-","Sigma(c)*-",
80                        2.4536, kTRUE, -1., -1.,"Baryon", -4214);
81 // equivalent to 4312 ? Hijing uses m=2.55
82     pdgDB->AddParticle("Xsi(c)0","Xsi(c)0",
83                        2.4703, kTRUE, -1., +0.,"Baryon",  4132);
84     
85     pdgDB->AddParticle("Xsi(c)0 bar","Xsi(c)0 bar",
86                        2.4703, kTRUE, -1., -0.,"Baryon", -4132);
87 // equivalent to 4322 ? Hijing uses m=2.55
88     pdgDB->AddParticle("Xi(c)+","Xi(c)+",
89                        2.4656, kFALSE, -1., +1.,"Baryon",  4232);
90     
91     pdgDB->AddParticle("Xi(c)-","Xi(c)-",
92                        2.4656, kFALSE, -1., -1.,"Baryon", -4232);
93 // mass values from Hijing
94     
95     pdgDB->AddParticle("Xsi(c)*0","Xsi(c)*0",
96                        2.63, kTRUE, -1., +0.,"Baryon",  4314);
97     
98     pdgDB->AddParticle("Xsi(c)*0 bar","Xsi(c)*0 bar",
99                        2.63, kTRUE, -1., -0.,"Baryon", -4314);
100     
101     pdgDB->AddParticle("Xsi(c)*+","Xsi(c)*+",
102                        2.63, kTRUE, -1., +1.,"Baryon",  4324);
103     
104     pdgDB->AddParticle("Xsi(c)*-","Xsi(c)*-",
105                        2.63, kTRUE, -1., -1.,"Baryon", -4324);
106     
107 // pdg mass value, Hijing uses m=2.73.
108     pdgDB->AddParticle("Omega(c)0","Omega(c)0",
109                        2.7040, kFALSE, khShGev/0.064e-12, +0.,"Baryon",  4332);
110     
111     pdgDB->AddParticle("Omega(c)0 bar","Omega(c)0 bar",
112                        2.7040, kFALSE, khShGev/0.064e-12, -0.,"Baryon", -4332);
113 // mass value from Hijing
114     pdgDB->AddParticle("Omega(c)*0","Omega(c)*0",
115                        2.8000, kFALSE, -1., +0.,"Baryon",  4334);
116     
117     pdgDB->AddParticle("Omega(c)*0 bar","Omega(c)*0",
118                        2.8000, kFALSE, -1., -0.,"Baryon", -4334);
119     
120     
121 // Xi(cc)
122     
123     pdgDB->AddParticle("Xsi(cc)+","Xsi(cc)+",
124                      3.60, kTRUE, -1., +1.,"Baryon",  4412);
125     
126     pdgDB->AddParticle("Xsi(cc) bar-","Xsi(cc) bar-",
127                        3.60, kTRUE, -1., -1.,"Baryon", -4412);
128     
129     pdgDB->AddParticle("Xsi*(cc)+","Xsi*(cc)+",
130                        3.66, kTRUE, -1., +1.,"Baryon",  4414);
131
132     pdgDB->AddParticle("Xsi*(cc) bar-","Xsi*(cc) bar-",
133                        3.66, kTRUE, -1., -1.,"Baryon", -4414);
134     
135     
136     pdgDB->AddParticle("Xsi(cc)++","Xsi(cc)++",
137                        3.60, kTRUE, -1., +2.,"Baryon",  4422);
138     
139     pdgDB->AddParticle("Xsi(cc) bar--","Xsi(cc) bar--",
140                        3.60, kTRUE, -1., -2.,"Baryon", -4422);
141     
142     
143     pdgDB->AddParticle("Xsi*(cc)++","Xsi*(cc)++",
144                        3.66, kTRUE, -1., +2.,"Baryon",  4424);
145     
146     pdgDB->AddParticle("Xsi*(cc) bar-","Xsi*(cc) bar-",
147                        3.66, kTRUE, -1., -2.,"Baryon", -4424);
148     
149     pdgDB->AddParticle("Omega(cc)+","Omega(cc)+",
150                        3.78, kTRUE, -1., +1.,"Baryon",  4432);
151     
152     pdgDB->AddParticle("Omega(cc) bar-","Omega(cc) bar-",
153                        3.78, kTRUE, -1., -1.,"Baryon", -4432);
154     
155     pdgDB->AddParticle("Omega*(cc)+","Omega*(cc)+",
156                        3.82, kTRUE, -1., +1.,"Baryon",  4434);
157     
158     pdgDB->AddParticle("Omega*(cc) bar-","Omega*(cc) bar-",
159                        3.82, kTRUE, -1., -1.,"Baryon", -4434);
160     
161     
162     pdgDB->AddParticle("Omega*(ccc)+","Omega*(cc)++",
163                        4.91, kTRUE, -1., +2.,"Baryon",  4444);
164     
165     pdgDB->AddParticle("Omega*(ccc) bar--","Omega*(cc) bar--",
166                        4.91, kTRUE, -1., -2.,"Baryon", -4444);
167     
168     
169
170 // Bottom baryons
171 //
172 // mass value from Hijing
173     pdgDB->AddParticle("Sigma(b)*+","Sigma(b)*+",
174                        5.8100, kFALSE, -1., +1.,"Baryon", 5224);
175     
176     pdgDB->AddParticle("Sigma(b)*-","Sigma(b)*-",
177                        5.8100, kFALSE, -1., -1.,"Baryon", -5224);
178     
179     
180     pdgDB->AddParticle("Xi(b)0","Xi(b)0",
181                        5.8400, kFALSE, -1., +0.,"Baryon", 5232);
182     
183     pdgDB->AddParticle("Xi(b)0 bar","Xi(b)0 bar",
184                        5.8100, kFALSE, -1., -0.,"Baryon", -5232);
185     
186 // B(s) 
187     pdgDB->AddParticle("Xi'(b)-","Xi'(b)-",
188                        5.9600, kFALSE, -1., -1.,"Baryon", 5312);
189     
190     pdgDB->AddParticle("Xi'(b) bar+","Xi'(b) bar+",
191                        5.9600, kFALSE, -1.,  1.,"Baryon", -5312);
192     
193     pdgDB->AddParticle("Xi*(b)-","Xi*(b)-",
194                        5.9700, kFALSE, -1., -1.,"Baryon", 5314);
195     
196     pdgDB->AddParticle("Xi*(b) bar+","Xi*(b) bar+",
197                        5.9700, kFALSE, -1.,  1.,"Baryon", -5314);
198     
199     pdgDB->AddParticle("Xi'(b)0","Xi'(b)0",
200                        5.9600, kFALSE, -1., -0.,"Baryon", 5322);
201     
202     pdgDB->AddParticle("Xi'(b) bar0","Xi'(b) bar0",
203                        5.9600, kFALSE, -1.,  0.,"Baryon", -5322);
204     
205     pdgDB->AddParticle("Xi*(b)0","Xi*(b)0",
206                        5.9700, kFALSE, -1., -0.,"Baryon", 5324);
207     
208     pdgDB->AddParticle("Xi*(b) bar0","Xi*(b) bar0",
209                        5.9700, kFALSE, -1.,  0.,"Baryon", -5324);
210     
211     pdgDB->AddParticle("Omega(b)-","Omega(b)-",
212                        6.1200, kFALSE, -1., -1.,"Baryon", 5332);
213     
214     pdgDB->AddParticle("Omega(b) bar+","Omega(b) bar+",
215                        6.1200, kFALSE, -1.,  1.,"Baryon", -5332);
216     
217     pdgDB->AddParticle("Omega*(b)-","Omega*(b)-",
218                        6.1300, kFALSE, -1., -1.,"Baryon", 5334);
219     
220     pdgDB->AddParticle("Omega*(b) bar+","Omega*(b) bar+",
221                        6.1300, kFALSE, -1.,  1.,"Baryon", -5334);
222
223
224     pdgDB->AddParticle("Omega*(b)-","Omega*(b)-",
225                        6.1300, kFALSE, -1., -1.,"Baryon", 5334);
226     
227     pdgDB->AddParticle("Omega*(b) bar+","Omega*(b) bar+",
228                        6.1300, kFALSE, -1.,  1.,"Baryon", -5334);
229
230 // B(c) 
231
232     pdgDB->AddParticle("Omega(bc)0","Omega(bc)0",
233                        7.1900, kFALSE, -1., -0.,"Baryon", 5342);
234     
235     pdgDB->AddParticle("Omega(bc) bar0","Omega(bc) bar0",
236                        7.1900, kFALSE, -1.,  0.,"Baryon", -5342);
237     
238     pdgDB->AddParticle("Xi'(bc)0","Xi'(bc)0",
239                        7.0400, kFALSE, -1., -0.,"Baryon", 5412);
240     
241     pdgDB->AddParticle("Xi'(bc) bar0","Xi'(bc) bar0",
242                        7.0400, kFALSE, -1.,  0.,"Baryon", -5412);
243     
244     pdgDB->AddParticle("Xi*(bc)0","Xi*(bc)0",
245                        7.0500, kFALSE, -1., -0.,"Baryon", 5414);
246     
247     pdgDB->AddParticle("Xi*(bc) bar0","Xi*(bc) bar0",
248                        7.0500, kFALSE, -1.,  0.,"Baryon", -5414);
249     
250     pdgDB->AddParticle("Xi'(bc)+","Xi'(bc)+",
251                        7.0400, kFALSE, -1., +1.,"Baryon", 5422);
252     
253     pdgDB->AddParticle("Xi'(bc) bar-","Xi'(bc) bar-",
254                        7.0400, kFALSE, -1., -1.,"Baryon", -5422);
255     
256     pdgDB->AddParticle("Xi*(bc)+","Xi*(bc)+",
257                        7.0500, kFALSE, -1., +1.,"Baryon", 5424);
258     
259     pdgDB->AddParticle("Xi*(bc) bar-","Xi*(bc) bar-",
260                        7.0500, kFALSE, -1., -1.,"Baryon", -5424);
261     
262     pdgDB->AddParticle("Omega'(bc)0","Omega'(bc)0",
263                        7.2100, kFALSE, -1., -0.,"Baryon", 5432);
264     
265     pdgDB->AddParticle("Omega'(bc) bar0","Omega'(bc) bar0",
266                        7.2100, kFALSE, -1.,  0.,"Baryon", -5432);
267     
268     pdgDB->AddParticle("Omega*(bc)0","Omega*(bc)0",
269                        7.2200, kFALSE, -1., -0.,"Baryon", 5434);
270     
271     pdgDB->AddParticle("Omega*(bc) bar0","Omega*(bc) bar0",
272                        7.2200, kFALSE, -1.,  0.,"Baryon", -5434);
273 // B(bcc)
274     pdgDB->AddParticle("Omega(bcc)+","Omega(bcc)+",
275                        8.3100, kFALSE, -1., +1.,"Baryon", 5442);
276     
277     pdgDB->AddParticle("Omega(bcc) bar-","Omega(bcc) bar-",
278                        8.3100, kFALSE, -1., -1.,"Baryon", -5442);
279     
280     pdgDB->AddParticle("Omega*(bcc)+","Omega*(bcc)+",
281                        8.3100, kFALSE, -1., +1.,"Baryon", 5444);
282     
283     pdgDB->AddParticle("Omega*(bcc) bar-","Omega*(bcc) bar-",
284                        8.3100, kFALSE, -1., -1.,"Baryon", -5444);
285
286
287
288
289 // B(bb)
290
291     pdgDB->AddParticle("Xsi(bb)-","Xsi(bb)-",
292                        10.4200, kFALSE, -1., -1.,"Baryon", 5512);
293     
294     pdgDB->AddParticle("Xsi(bb) bar+","Xsi(bb) bar+",
295                        10.4200, kFALSE, -1., +1.,"Baryon", -5512);
296     
297     pdgDB->AddParticle("Xsi*(bb)-","Xsi*(bb)-",
298                        10.4400, kFALSE, -1., -1.,"Baryon", 5514);
299     
300     pdgDB->AddParticle("Xsi*(bb) bar+","Xsi*(bb) bar+",
301                        10.4400, kFALSE, -1., +1.,"Baryon", -5514);
302     
303     pdgDB->AddParticle("Xsi(bb)0","Xsi(bb)0",
304                        10.4200, kFALSE, -1., -0.,"Baryon", 5522);
305     
306     pdgDB->AddParticle("Xsi(bb) bar0","Xsi(bb) bar0",
307                        10.4200, kFALSE, -1., +0.,"Baryon", -5522);
308     
309     pdgDB->AddParticle("Xsi*(bb)0","Xsi*(bb)0",
310                        10.4400, kFALSE, -1., -0.,"Baryon", 5524);
311     
312     pdgDB->AddParticle("Xsi*(bb) bar0","Xsi*(bb) bar0",
313                        10.4400, kFALSE, -1., +0.,"Baryon", -5524);
314     
315     pdgDB->AddParticle("Omega*(bb)-","Omega(bb)-",
316                        10.6000, kFALSE, -1., -1.,"Baryon", 5532);
317     
318     pdgDB->AddParticle("Omega(bb) bar+","Omega(bb) bar+",
319                        10.6000, kFALSE, -1., +1.,"Baryon", -5532);
320     
321     pdgDB->AddParticle("Omega*(bb)-","Omega*(bb)-",
322                        10.6000, kFALSE, -1., -1.,"Baryon", 5534);
323     
324     pdgDB->AddParticle("Omega*(bb) bar+","Omega*(bb) bar+",
325                        10.6000, kFALSE, -1., +1.,"Baryon", -5534);
326     
327 // B(bbc)
328     
329     pdgDB->AddParticle("Omega(bbc)0","Omega(bbc)0",
330                        11.7100, kFALSE, -1., -0.,"Baryon", 5542);
331     
332     pdgDB->AddParticle("Omega(bbc) bar0","Omega(bbc) bar0",
333                        11.7100, kFALSE, -1., +0.,"Baryon", -5542);
334     
335     pdgDB->AddParticle("Omega*(bbc)0","Omega*(bbc)0",
336                        11.7100, kFALSE, -1., -0.,"Baryon", 5544);
337
338     pdgDB->AddParticle("Omega*(bbc) bar0","Omega*(bbc) bar0",
339                      11.7100, kFALSE, -1., +0.,"Baryon", -5544);
340 // B(bbb)
341     
342     pdgDB->AddParticle("Omega*(bbb)-","Omega*(bbb)-",
343                        15.1000, kFALSE, -1., -1.,"Baryon", 5544);
344
345     pdgDB->AddParticle("Omega*(bbb) bar+","Omega*(bbb) bar+",
346                        15.100, kFALSE, -1., +1.,"Baryon", -5544);
347     
348 //
349 // Ions 
350 //
351
352   pdgDB->AddParticle("Deuteron","Deuteron",2*kAu2Gev+8.071e-3,kTRUE,
353                      0,1,"Ion",kion+10020);
354   pdgDB->AddParticle("Triton","Triton",3*kAu2Gev+14.931e-3,kFALSE,
355                      khShGev/(12.33*kYear2Sec),1,"Ion",kion+10030);
356   pdgDB->AddParticle("Alpha","Alpha",4*kAu2Gev+2.424e-3,kTRUE,
357                      khShGev/(12.33*kYear2Sec),2,"Ion",kion+20040);
358   pdgDB->AddParticle("HE3","HE3",3*kAu2Gev+14.931e-3,kFALSE,
359                      0,2,"Ion",kion+20030);
360
361 //
362 // special particles
363 // 
364   pdgDB->AddParticle("Cherenkov","Cherenkov",0,kFALSE,
365                      0,0,"Special",kspe+50);
366   pdgDB->AddParticle("FeedbackPhoton","FeedbackPhoton",0,kFALSE,
367                      0,0,"Special",kspe+51);
368 }