25 #include "TDatabasePDG.h" 31 void
AliPDG::AddParticlesToPdgDataBase()
38 static Bool_t bAdded = kFALSE;
43 TDatabasePDG *pdgDB = TDatabasePDG::Instance();
44 const Int_t kspe=50000000;
49 const Int_t kion=1000000000;
55 const Double_t khSlash = 1.0545726663e-27;
56 const Double_t kErg2Gev = 1/1.6021773349e-3;
57 const Double_t khShGev = khSlash*kErg2Gev;
58 const Double_t kYear2Sec = 3600*24*365.25;
64 pdgDB->AddParticle(
"Upsilon(3S)",
"Upsilon(3S)",10.3552,kTRUE,
65 0,1,
"Bottonium",200553);
68 pdgDB->AddParticle(
"rho_diff0",
"rho_diff0",0,kTRUE,
69 0,0,
"QCD diffr. state",9900110);
70 pdgDB->AddParticle(
"pi_diffr+",
"pi_diffr+",0,kTRUE,
71 0,1,
"QCD diffr. state",9900210);
72 pdgDB->AddParticle(
"omega_di",
"omega_di",0,kTRUE,
73 0,0,
"QCD diffr. state",9900220);
74 pdgDB->AddParticle(
"phi_diff",
"phi_diff",0,kTRUE,
75 0,0,
"QCD diffr. state",9900330);
76 pdgDB->AddParticle(
"J/psi_di",
"J/psi_di",0,kTRUE,
77 0,0,
"QCD diffr. state",9900440);
78 pdgDB->AddParticle(
"n_diffr0",
"n_diffr0",0,kTRUE,
79 0,0,
"QCD diffr. state",9902110);
80 pdgDB->AddParticle(
"p_diffr+",
"p_diffr+",0,kTRUE,
81 0,1,
"QCD diffr. state",9902210);
84 pdgDB->AddParticle(
"PSID ",
" ", 3.7699, kFALSE, 0.0, 0,
"meson", 30443);
86 pdgDB->AddParticle(
"A_00 ",
" ", 0.9960, kFALSE, 0.0, 0,
"meson", 9000111);
87 pdgDB->AddParticle(
"A_0+ ",
" ", 0.9960, kFALSE, 0.0,+3,
"meson", 9000211);
88 pdgDB->AddParticle(
"A_0- ",
" ", 0.9960, kFALSE, 0.0,-3,
"meson", -9000211);
92 pdgDB->AddParticle(
"KDL_2+ ",
" ", 1.773, kFALSE, 0.0,+3,
"meson", 10325);
93 pdgDB->AddParticle(
"KDL_2- ",
" ", 1.773, kFALSE, 0.0,-3,
"meson", -10325);
95 pdgDB->AddParticle(
"KDL_20 ",
" ", 1.773, kFALSE, 0.0, 0,
"meson", 10315);
96 pdgDB->AddParticle(
"KDL_2BR0",
" ", 1.773, kFALSE, 0.0, 0,
"meson", -10315);
98 pdgDB->AddParticle(
"PI_2+ ",
" ", 1.670, kFALSE, 0.0,+3,
"meson", 10215);
99 pdgDB->AddParticle(
"PI_2- ",
" ", 1.670, kFALSE, 0.0,-3,
"meson", -10215);
100 pdgDB->AddParticle(
"PI_20 ",
" ", 1.670, kFALSE, 0.0, 0,
"meson", 10115);
103 pdgDB->AddParticle(
"KD*+ ",
" ", 1.717, kFALSE, 0.0,+3,
"meson", 30323);
104 pdgDB->AddParticle(
"KD*- ",
" ", 1.717, kFALSE, 0.0,-3,
"meson", -30323);
106 pdgDB->AddParticle(
"KD*0 ",
" ", 1.717, kFALSE, 0.0, 0,
"meson", 30313);
107 pdgDB->AddParticle(
"KDBR*0 ",
" ", 1.717, kFALSE, 0.0, 0,
"meson", -30313);
109 pdgDB->AddParticle(
"RHOD+ ",
" ", 1.700, kFALSE, 0.0,+3,
"meson", 30213);
110 pdgDB->AddParticle(
"RHOD- ",
" ", 1.700, kFALSE, 0.0,-3,
"meson", -30213);
111 pdgDB->AddParticle(
"RHOD0 ",
" ", 1.700, kFALSE, 0.0, 0,
"meson", 30113);
113 pdgDB->AddParticle(
"ETA_2(L)",
" ", 1.632, kFALSE, 0.0, 0,
"meson", 10225);
114 pdgDB->AddParticle(
"ETA_2(H)",
" ", 1.854, kFALSE, 0.0, 0,
"meson", 10335);
115 pdgDB->AddParticle(
"OMEGA(H)",
" ", 1.649, kFALSE, 0.0, 0,
"meson", 30223);
118 pdgDB->AddParticle(
"KDH_2+ ",
" ", 1.816, kFALSE, 0.0,+3,
"meson", 20325);
119 pdgDB->AddParticle(
"KDH_2- ",
" ", 1.816, kFALSE, 0.0,-3,
"meson", -20325);
121 pdgDB->AddParticle(
"KDH_20 ",
" ", 1.816, kFALSE, 0.0, 0,
"meson", 20315);
122 pdgDB->AddParticle(
"KDH_2BR0",
" ", 1.816, kFALSE, 0.0, 0,
"meson", -20315);
125 pdgDB->AddParticle(
"KD_3+ ",
" ", 1.773, kFALSE, 0.0,+3,
"meson", 327);
126 pdgDB->AddParticle(
"KD_3- ",
" ", 1.773, kFALSE, 0.0,-3,
"meson", -327);
128 pdgDB->AddParticle(
"KD_30 ",
" ", 1.773, kFALSE, 0.0, 0,
"meson", 317);
129 pdgDB->AddParticle(
"KD_3BR0 ",
" ", 1.773, kFALSE, 0.0, 0,
"meson", -317);
131 pdgDB->AddParticle(
"RHO_3+ ",
" ", 1.691, kFALSE, 0.0,+3,
"meson", 217);
132 pdgDB->AddParticle(
"RHO_3- ",
" ", 1.691, kFALSE, 0.0,-3,
"meson", -217);
133 pdgDB->AddParticle(
"RHO_30 ",
" ", 1.691, kFALSE, 0.0, 0,
"meson", 117);
134 pdgDB->AddParticle(
"OMEGA_3 ",
" ", 1.667, kFALSE, 0.0, 0,
"meson", 227);
135 pdgDB->AddParticle(
"PHI_3 ",
" ", 1.854, kFALSE, 0.0, 0,
"meson", 337);
137 pdgDB->AddParticle(
"CHI2P_B0",
" ", 10.232, kFALSE, 0.0, 0,
"meson", 110551);
138 pdgDB->AddParticle(
"CHI2P_B1",
" ", 10.255, kFALSE, 0.0, 0,
"meson", 120553);
139 pdgDB->AddParticle(
"CHI2P_B2",
" ", 10.269, kFALSE, 0.0, 0,
"meson", 100555);
140 pdgDB->AddParticle(
"UPSLON4S",
" ", 10.580, kFALSE, 0.0, 0,
"meson", 300553);
150 Int_t ionCode = kion+10020;
151 if(!pdgDB->GetParticle(ionCode)){
152 pdgDB->AddParticle(
"Deuteron",
"Deuteron", 1.875613, kTRUE,
155 pdgDB->AddAntiParticle(
"AntiDeuteron", - ionCode);
157 ionCode = kion+10030;
158 if(!pdgDB->GetParticle(ionCode)){
159 pdgDB->AddParticle(
"Triton",
"Triton", 2.80925, kFALSE,
160 khShGev/(12.33*kYear2Sec),3,
"Ion",ionCode);
162 pdgDB->AddAntiParticle(
"AntiTriton", - ionCode);
164 ionCode = kion+20030;
165 if(!pdgDB->GetParticle(ionCode)){
166 pdgDB->AddParticle(
"HE3",
"HE3", 2.80923,kFALSE,
169 pdgDB->AddAntiParticle(
"AntiHE3", - ionCode);
171 ionCode = kion+20040;
172 if(!pdgDB->GetParticle(ionCode)){
173 pdgDB->AddParticle(
"Alpha",
"Alpha", 3.727379, kTRUE,
174 khShGev/(12.33*kYear2Sec), 6,
"Ion", ionCode);
176 pdgDB->AddAntiParticle(
"AntiAlpha", - ionCode);
180 pdgDB->AddParticle(
"Cherenkov",
"Cherenkov",0,kFALSE,
181 0,0,
"Special",kspe+50);
182 pdgDB->AddParticle(
"FeedbackPhoton",
"FeedbackPhoton",0,kFALSE,
183 0,0,
"Special",kspe+51);
184 pdgDB->AddParticle(
"Lambda1520",
"Lambda1520",1.5195,kFALSE,
185 0.0156,0,
"Resonance",3124);
186 pdgDB->AddAntiParticle(
"Lambda1520bar",-3124);
189 ionCode = 1010010030;
190 if(!pdgDB->GetParticle(ionCode)){
191 pdgDB->AddParticle(
"HyperTriton",
"HyperTriton", 2.99131, kFALSE,
192 2.5e-15, 3,
"Ion", ionCode);
195 ionCode = -1010010030;
196 if(!pdgDB->GetParticle(ionCode)){
197 pdgDB->AddParticle(
"AntiHyperTriton",
"AntiHyperTriton", 2.99131, kFALSE,
198 2.5e-15, 3,
"Ion", ionCode);
201 ionCode = 1010010040;
202 if(!pdgDB->GetParticle(ionCode)){
203 pdgDB->AddParticle(
"Hyperhydrog4",
"Hyperhydrog4", 3.931, kFALSE,
204 2.5e-15, 3,
"Ion", ionCode);
207 ionCode = -1010010040;
208 if(!pdgDB->GetParticle(ionCode)){
209 pdgDB->AddParticle(
"AntiHyperhydrog4",
"AntiHyperhydrog4", 3.931, kFALSE,
210 2.5e-15, 3,
"Ion", ionCode);
213 ionCode = 1010020040;
214 if(!pdgDB->GetParticle(ionCode)){
215 pdgDB->AddParticle(
"Hyperhelium4",
"Hyperhelium4", 3.929, kFALSE,
216 2.5e-15, 6,
"Ion", ionCode);
219 ionCode = -1010020040;
220 if(!pdgDB->GetParticle(ionCode)){
221 pdgDB->AddParticle(
"AntiHyperhelium4",
"AntiHyperhelium4", 3.929, kFALSE,
222 2.5e-15, 6,
"Ion", ionCode);
225 ionCode = 1010020050;
226 if(!pdgDB->GetParticle(ionCode)){
227 pdgDB->AddParticle(
"Hyperhelium5",
"Hyperhelium5", 4.841, kFALSE,
228 2.5e-15, 6,
"Ion", ionCode);
231 ionCode = -1010020050;
232 if(!pdgDB->GetParticle(ionCode)){
233 pdgDB->AddParticle(
"AntiHyperhelium5",
"AntiHyperhelium5", 4.841, kFALSE,
234 2.5e-15, 6,
"Ion", ionCode);
237 ionCode = 1020010040;
238 if(!pdgDB->GetParticle(ionCode)){
239 pdgDB->AddParticle(
"DoubleHyperhydrogen4",
"DoubleHyperhydrogen4", 4.106, kFALSE,
240 2.5e-15, 6,
"Ion", ionCode);
243 ionCode = -1020010040;
244 if(!pdgDB->GetParticle(ionCode)){
245 pdgDB->AddParticle(
"DoubleAntiHyperhydrogen4",
"DoubleAntiHyperhydrogen4", 4.106, kFALSE,
246 2.5e-15, 6,
"Ion", ionCode);
249 ionCode = 1010000020;
250 if(!pdgDB->GetParticle(ionCode)){
251 pdgDB->AddParticle(
"LambdaNeutron",
"LambdaNeutron", 2.054, kFALSE,
252 2.5e-15, 0,
"Special", ionCode);
255 ionCode = -1010000020;
256 if(!pdgDB->GetParticle(ionCode)){
257 pdgDB->AddParticle(
"AntiLambdaNeutron",
"AntiLambdaNeutron", 2.054, kFALSE,
258 2.5e-15, 0,
"Special", ionCode);
261 ionCode = 1020000020;
262 if(!pdgDB->GetParticle(ionCode)){
263 pdgDB->AddParticle(
"Hdibaryon",
"Hdibaryon", 2.23, kFALSE,
264 2.5e-15, 0,
"Special", ionCode);
267 ionCode = -1020000020;
268 if(!pdgDB->GetParticle(ionCode)){
269 pdgDB->AddParticle(
"AntiHdibaryon",
"AntiHdibaryon", 2.23, kFALSE,
270 2.5e-15, 0,
"Special", ionCode);
273 ionCode = 1010000030;
274 if(!pdgDB->GetParticle(ionCode)){
275 pdgDB->AddParticle(
"LambdaNeutronNeutron",
"LambdaNeutronNeutron", 2.99, kFALSE,
276 2.5e-15, 0,
"Special", ionCode);
279 ionCode = -1010000030;
280 if(!pdgDB->GetParticle(ionCode)){
281 pdgDB->AddParticle(
"AntiLambdaNeutronNeutron",
"AntiLambdaNeutronNeutron", 2.99, kFALSE,
282 2.5e-15, 0,
"Special", ionCode);
285 ionCode = 1020010020;
286 if(!pdgDB->GetParticle(ionCode)){
287 pdgDB->AddParticle(
"Xi0Proton",
"Xi0Proton", 2.248, kFALSE,
288 5e-15, 3,
"Ion", ionCode);
291 ionCode = -1020010020;
292 if(!pdgDB->GetParticle(ionCode)){
293 pdgDB->AddParticle(
"AntiXi0Proton",
"AntiXi0Proton", 2.248, kFALSE,
294 5e-15, 3,
"Ion", ionCode);
297 ionCode = 1030000020;
298 if(!pdgDB->GetParticle(ionCode)){
299 pdgDB->AddParticle(
"OmegaProton",
"OmegaProton", 2.592, kFALSE,
300 2.5e-15, 0,
"Special", ionCode);
303 ionCode = -1030000020;
304 if(!pdgDB->GetParticle(ionCode)){
305 pdgDB->AddParticle(
"AntiOmegaProton",
"AntiOmegaProton", 2.592, kFALSE,
306 2.5e-15, 0,
"Special", ionCode);
309 ionCode = 1030010020;
310 if(!pdgDB->GetParticle(ionCode)){
311 pdgDB->AddParticle(
"OmegaNeutron",
"OmegaNeutron", 2.472, kFALSE,
312 0.003, 3,
"Special", ionCode);
315 ionCode = -1030010020;
316 if(!pdgDB->GetParticle(ionCode)){
317 pdgDB->AddParticle(
"AntiOmegaNeutron",
"AntiOmegaNeutron", 2.472, kFALSE,
318 0.003, 3,
"Special", ionCode);
321 ionCode = 1060020020;
322 if(!pdgDB->GetParticle(ionCode)){
323 pdgDB->AddParticle(
"OmegaOmega",
"OmegaOmega", 3.229, kFALSE,
324 2.5e-15, 6,
"Special", ionCode);
327 ionCode = -1060020020;
328 if(!pdgDB->GetParticle(ionCode)){
329 pdgDB->AddParticle(
"AntiOmegaOmega",
"AntiOmegaOmega", 3.229, kFALSE,
330 2.5e-15, 6,
"Special", ionCode);
333 ionCode = 1010010021;
334 if(!pdgDB->GetParticle(ionCode)){
335 pdgDB->AddParticle(
"Lambda1405Proton",
"Lambda1405Proton", 2.295, kFALSE,
336 0.05, 3,
"Special", ionCode);
339 ionCode = -1010010021;
340 if(!pdgDB->GetParticle(ionCode)){
341 pdgDB->AddParticle(
"AntiLambda1405Proton",
"AntiLambda1405Proton", 2.295, kFALSE,
342 0.05, 3,
"Special", ionCode);
345 ionCode = 1020000021;
346 if(!pdgDB->GetParticle(ionCode)){
347 pdgDB->AddParticle(
"Lambda1405Lambda1405",
"Lambda1405Lambda1405", 2.693, kFALSE,
348 0.05, 0,
"Special", ionCode);
351 ionCode = -1020000021;
352 if(!pdgDB->GetParticle(ionCode)){
353 pdgDB->AddParticle(
"AntiLambda1405Lambda1405",
"AntiLambda1405Lambda1405", 2.693, kFALSE,
354 0.05, 0,
"Special", ionCode);
363 if(!pdgDB->GetParticle(ionCode)){
364 pdgDB->AddParticle(
"f0_980",
"f0_980", 0.980, kFALSE,
365 0.07, 0,
"Resonance", ionCode);
369 if(!pdgDB->GetParticle(ionCode)){
370 pdgDB->AddParticle(
"f2_1270",
"f2_1270", 1.275, kFALSE,
371 0.185, 0,
"Resonance", ionCode);
376 if (!pdgDB->GetParticle(ionCode)) {
377 pdgDB->AddParticle(
"Xi_Minus_1820",
"Xi_Minus_1820",1.8234,kFALSE,0.024,-3,
"Resonance",ionCode);
379 if (!pdgDB->GetParticle(-ionCode)) {
380 pdgDB->AddParticle(
"Xi_Plus_1820",
"Xi_Plus_1820",1.8234,kFALSE,0.024,3,
"Resonance",-ionCode);
385 if (!pdgDB->GetParticle(ionCode)) {
386 pdgDB->AddParticle(
"Xi_0_1820",
"Xi_0_1820",1.8234,kFALSE,0.024,0,
"Resonance",ionCode);
388 if (!pdgDB->GetParticle(-ionCode)) {
389 pdgDB->AddParticle(
"Xi_0_Bar_1820",
"Xi_0_Bar_1820",1.8234,kFALSE,0.024,0,
"Resonance",-ionCode);
395 if(!pdgDB->GetParticle(ionCode)) {
396 pdgDB->AddParticle(
"ps_2100",
"ps_2100", 2.100, kFALSE,
397 0.040, 3,
"Resonance", ionCode);
399 if(!pdgDB->GetParticle(-ionCode)) {
400 pdgDB->AddParticle(
"anti-ps_2100",
"anti-ps_2100", 2.100, kFALSE,
401 0.040, -3,
"Resonance", -ionCode);
405 if(!pdgDB->GetParticle(ionCode)) {
406 pdgDB->AddParticle(
"ps_2500",
"ps_2500", 2.500, kFALSE,
407 0.040, 3,
"Resonance", ionCode);
409 if(!pdgDB->GetParticle(-ionCode)) {
410 pdgDB->AddParticle(
"anti-ps_2500",
"anti-ps_2500", 2.500, kFALSE,
411 0.040, -3,
"Resonance", -ionCode);
417 if(!pdgDB->GetParticle(ionCode)) {
418 pdgDB->AddParticle(
"d*_2380",
"d*_2380", 2.38, kFALSE,
419 0.070, 3,
"Resonance", ionCode);
421 pdgDB->AddAntiParticle(
"d*_2380_bar", - ionCode);