Skip to content

Commit

Permalink
Added particle f2(1270) in the O2Database accroding to PDG 2024
Browse files Browse the repository at this point in the history
  • Loading branch information
sawankumawat committed Feb 3, 2025
1 parent 1b5428f commit 12ffee0
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 50 deletions.
28 changes: 16 additions & 12 deletions DataFormats/simulation/include/SimulationDataFormat/O2DatabasePDG.h
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ inline void O2DatabasePDG::addALICEParticles(TDatabasePDG* db)
db->AddParticle("A_0+ ", " ", 0.9960, kFALSE, 0.0, +3, "meson", 9000211);
db->AddParticle("A_0- ", " ", 0.9960, kFALSE, 0.0, -3, "meson", -9000211);

//db->AddParticle("F0P0 ", " ", 0.9960, kFALSE, 0.0, 0, "meson", 9010221);
// db->AddParticle("F0P0 ", " ", 0.9960, kFALSE, 0.0, 0, "meson", 9010221);

db->AddParticle("KDL_2+ ", " ", 1.773, kFALSE, 0.0, +3, "meson", 10325);
db->AddParticle("KDL_2- ", " ", 1.773, kFALSE, 0.0, -3, "meson", -10325);
Expand Down Expand Up @@ -232,7 +232,7 @@ inline void O2DatabasePDG::addALICEParticles(TDatabasePDG* db)
db->AddParticle("FeedbackPhoton", "FeedbackPhoton", 0, kFALSE,
0, 0, "Special", kspe + 51);

//Hyper nuclei and exotica
// Hyper nuclei and exotica
ionCode = 1010010030;
if (!db->GetParticle(ionCode)) {
db->AddParticle("HyperTriton", "HyperTriton", 2.991134, kFALSE,
Expand All @@ -245,25 +245,25 @@ inline void O2DatabasePDG::addALICEParticles(TDatabasePDG* db)
2.5e-15, 3, "Ion", ionCode);
}

//hyper hydrogen 4 ground state
// hyper hydrogen 4 ground state
ionCode = 1010010040;
if (!db->GetParticle(ionCode)) {
db->AddParticle("Hyperhydrog4", "Hyperhydrog4", 3.922434, kFALSE,
2.5e-15, 3, "Ion", ionCode);
}
//anti hyper hydrogen 4 ground state
// anti hyper hydrogen 4 ground state
ionCode = -1010010040;
if (!db->GetParticle(ionCode)) {
db->AddParticle("AntiHyperhydrog4", "AntiHyperhydrog4", 3.922434, kFALSE,
2.5e-15, 3, "Ion", ionCode);
}
//hyper helium 4 ground state
// hyper helium 4 ground state
ionCode = 1010020040;
if (!db->GetParticle(ionCode)) {
db->AddParticle("Hyperhelium4", "Hyperhelium4", 3.921728, kFALSE,
2.5e-15, 6, "Ion", ionCode);
}
//anti hyper helium 4 ground state
// anti hyper helium 4 ground state
ionCode = -1010020040;
if (!db->GetParticle(ionCode)) {
db->AddParticle("AntiHyperhelium4", "AntiHyperhelium4", 3.921728, kFALSE,
Expand Down Expand Up @@ -490,6 +490,10 @@ inline void O2DatabasePDG::addALICEParticles(TDatabasePDG* db)
}

// glueball hunting
ionCode = 225;
if (!db->GetParticle(ionCode)) {
db->AddParticle("f2_1270", "f2_1270", 1.2754, kFALSE, 0.1858, 0, "Resonance", ionCode);
}
ionCode = 115;
if (!db->GetParticle(ionCode)) {
db->AddParticle("a2_1320", "a2_1320", 1.3182, kFALSE, 0.1078, 0, "Resonance", ionCode);
Expand Down Expand Up @@ -551,9 +555,9 @@ inline void O2DatabasePDG::addALICEParticles(TDatabasePDG* db)
0.040, -3, "Resonance", -ionCode);
}

//Additional Hidden Strangeness Pentaquarks
// Additional Hidden Strangeness Pentaquarks

//Ps +/-
// Ps +/-
ionCode = 9322132;
if (!db->GetParticle(ionCode)) {
db->AddParticle("Ps_Plus_1870", "Ps_Plus_1870", 1.870, kFALSE,
Expand Down Expand Up @@ -591,7 +595,7 @@ inline void O2DatabasePDG::addALICEParticles(TDatabasePDG* db)
0.10, -3, "Resonance", -ionCode);
}

//Ps0
// Ps0
ionCode = 9322131;
if (!db->GetParticle(ionCode)) {
db->AddParticle("Ps_0_1870", "Ps_0_1870", 1.870, kFALSE,
Expand Down Expand Up @@ -643,14 +647,14 @@ inline void O2DatabasePDG::addALICEParticles(TDatabasePDG* db)

// d*(2380) - dibaryon resonance

ionCode = 900010020; //Arbitrary choice - as deuteron but with leading 9 instead of 10
ionCode = 900010020; // Arbitrary choice - as deuteron but with leading 9 instead of 10
if (!db->GetParticle(ionCode)) {
db->AddParticle("d*_2380", "d*_2380", 2.38, kFALSE,
0.070, 3, "Resonance", ionCode);
}
db->AddAntiParticle("d*_2380_bar", -ionCode);

//Sexaquark (uuddss): compact, neutral and stable hypothetical bound state (arxiv.org/abs/1708.08951)
// Sexaquark (uuddss): compact, neutral and stable hypothetical bound state (arxiv.org/abs/1708.08951)
ionCode = 900000020;
if (!db->GetParticle(ionCode)) {
db->AddParticle("Sexaquark", "Sexaquark", 2.0, kTRUE, 0.0, 0, "Special", ionCode);
Expand Down Expand Up @@ -683,4 +687,4 @@ inline void O2DatabasePDG::addParticlesFromExternalFile(TDatabasePDG* db)

} // namespace o2

#endif //O2_O2DATABASEPDG_H
#endif // O2_O2DATABASEPDG_H
78 changes: 40 additions & 38 deletions Steer/src/O2MCApplication.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -263,34 +263,34 @@ void addSpecialParticles()

LOG(info) << "Adding custom particles to VMC";

//Hypertriton
// Hypertriton
TVirtualMC::GetMC()->DefineParticle(1010010030, "HyperTriton", kPTHadron, 2.991134, 1.0, 2.632e-10, "Ion", 0.0, 0, 1, 0, 0, 0, 0, 0, 3, kFALSE);
//Anti-Hypertriton
// Anti-Hypertriton
TVirtualMC::GetMC()->DefineParticle(-1010010030, "AntiHyperTriton", kPTHadron, 2.991134, 1.0, 2.632e-10, "Ion", 0.0, 0, 1, 0, 0, 0, 0, 0, 3, kFALSE);

//Hyper hydrogen 4 ground state
// Hyper hydrogen 4 ground state
TVirtualMC::GetMC()->DefineParticle(1010010040, "Hyperhydrog4", kPTHadron, 3.922434, 1.0, 2.08e-10, "Ion", 0.0, 0, 1, 0, 0, 0, 0, 0, 4, kFALSE);
//Anti-Hyper hydrogen 4 ground state
// Anti-Hyper hydrogen 4 ground state
TVirtualMC::GetMC()->DefineParticle(-1010010040, "AntiHyperhydrog4", kPTHadron, 3.922434, 1.0, 2.08e-10, "Ion", 0.0, 0, 1, 0, 0, 0, 0, 0, 4, kFALSE);

//Hyper helium 4 ground state
// Hyper helium 4 ground state
TVirtualMC::GetMC()->DefineParticle(1010020040, "Hyperhelium4", kPTHadron, 3.921728, 2.0, 2.50e-10, "Ion", 0.0, 0, 1, 0, 0, 0, 0, 0, 4, kFALSE);
//Anti-Hyper helium 4 ground state
// Anti-Hyper helium 4 ground state
TVirtualMC::GetMC()->DefineParticle(-1010020040, "AntiHyperhelium4", kPTHadron, 3.921728, 2.0, 2.50e-10, "Ion", 0.0, 0, 1, 0, 0, 0, 0, 0, 4, kFALSE);

// Lithium 4 ground state
TVirtualMC::GetMC()->DefineParticle(1000030040, "Lithium4", kPTHadron, 3.7513, 3.0, 9.1e-23, "Ion", 0.003, 0, 1, 0, 0, 0, 0, 0, 4, kFALSE);
// Anti-Lithium 4 ground state
TVirtualMC::GetMC()->DefineParticle(-1000030040, "AntiLithium4", kPTHadron, 3.7513, 3.0, 9.1e-23, "Ion", 0.003, 0, 1, 0, 0, 0, 0, 0, 4, kFALSE);

//Hyper helium 5
// Hyper helium 5
TVirtualMC::GetMC()->DefineParticle(1010020050, "Hyperhelium5", kPTHadron, 4.839961, 2.0, 2.74e-10, "Ion", 0.0, 0, 1, 0, 0, 0, 0, 0, 5, kFALSE);
//Anti-Hyper helium 5
// Anti-Hyper helium 5
TVirtualMC::GetMC()->DefineParticle(-1010020050, "AntiHyperhelium5", kPTHadron, 4.839961, 2.0, 2.74e-10, "Ion", 0.0, 0, 1, 0, 0, 0, 0, 0, 5, kFALSE);

//Double Hyper hydrogen 4
// Double Hyper hydrogen 4
TVirtualMC::GetMC()->DefineParticle(1020010040, "DoubleHyperhydrogen4", kPTHadron, 4.106, 1.0, 2.632e-10, "Ion", 0.0, 0, 1, 0, 0, 0, 0, 0, 4, kFALSE);
//Double Anti-Hyper hydrogen 4
// Double Anti-Hyper hydrogen 4
TVirtualMC::GetMC()->DefineParticle(-1020010040, "DoubleAntiHyperhydrogen4", kPTHadron, 4.106, 1.0, 2.632e-10, "Ion", 0.0, 0, 1, 0, 0, 0, 0, 0, 4, kFALSE);

// 4Xi(-)H
Expand All @@ -307,76 +307,75 @@ void addSpecialParticles()
// Anti-Hyper helium 4 sigma
TVirtualMC::GetMC()->DefineParticle(-1110020040, "AntiHyperhelium4sigma", kPTHadron, 3.995, 2.0, 8.018e-11, "Ion", 0.0, 0, 1, 0, 0, 0, 0, 0, 4, kFALSE);

//Lambda-Neutron
// Lambda-Neutron
TVirtualMC::GetMC()->DefineParticle(1010000020, "LambdaNeutron", kPTNeutron, 2.054, 0.0, 2.632e-10, "Hadron", 0.0, 0, 1, 0, 0, 0, 0, 0, 2, kFALSE);

//Anti-Lambda-Neutron
// Anti-Lambda-Neutron
TVirtualMC::GetMC()->DefineParticle(-1010000020, "AntiLambdaNeutron", kPTNeutron, 2.054, 0.0, 2.632e-10, "Hadron", 0.0, 0, 1, 0, 0, 0, 0, 0, 2, kFALSE);

//H-Dibaryon
// H-Dibaryon
TVirtualMC::GetMC()->DefineParticle(1020000020, "Hdibaryon", kPTNeutron, 2.23, 0.0, 2.632e-10, "Hadron", 0.0, 0, 1, 0, 0, 0, 0, 0, 2, kFALSE);

//Anti-H-Dibaryon
// Anti-H-Dibaryon
TVirtualMC::GetMC()->DefineParticle(-1020000020, "AntiHdibaryon", kPTNeutron, 2.23, 0.0, 2.632e-10, "Hadron", 0.0, 0, 1, 0, 0, 0, 0, 0, 2, kFALSE);

//Xi-Proton
// Xi-Proton
TVirtualMC::GetMC()->DefineParticle(1020010020, "Xi0Proton", kPTHadron, 2.248, 1.0, 1.333e-10, "Ion", 0.0, 0, 1, 0, 0, 0, 0, 0, 2, kFALSE);

//Anti-Xi-Proton
// Anti-Xi-Proton
TVirtualMC::GetMC()->DefineParticle(-1020010020, "AntiXi0Proton", kPTHadron, 2.248, 1.0, 1.333e-10, "Ion", 0.0, 0, 1, 0, 0, 0, 0, 0, 2, kFALSE);

//Lambda-Neutron-Neutron
// Lambda-Neutron-Neutron
TVirtualMC::GetMC()->DefineParticle(1010000030, "LambdaNeutronNeutron", kPTNeutron, 2.99, 0.0, 2.632e-10, "Hadron", 0.0, 0, 1, 0, 0, 0, 0, 0, 3, kFALSE);

//Anti-Lambda-Neutron-Neutron
// Anti-Lambda-Neutron-Neutron
TVirtualMC::GetMC()->DefineParticle(-1010000030, "AntiLambdaNeutronNeutron", kPTNeutron, 2.99, 0.0, 2.632e-10, "Hadron", 0.0, 0, 1, 0, 0, 0, 0, 0, 3, kFALSE);

//Omega-Proton
// Omega-Proton
TVirtualMC::GetMC()->DefineParticle(1030000020, "OmegaProton", kPTNeutron, 2.592, 0.0, 2.632e-10, "Hadron", 0.0, 2, 1, 0, 0, 0, 0, 0, 2, kFALSE);

//Anti-Omega-Proton
// Anti-Omega-Proton
TVirtualMC::GetMC()->DefineParticle(-1030000020, "AntiOmegaProton", kPTNeutron, 2.592, 0.0, 2.632e-10, "Hadron", 0.0, 2, 1, 0, 0, 0, 0, 0, 2, kFALSE);

//Omega-Neutron
// Omega-Neutron
TVirtualMC::GetMC()->DefineParticle(1030010020, "OmegaNeutron", kPTHadron, 2.472, 1.0, 2.190e-22, "Hadron", 0.0, 2, 1, 0, 0, 0, 0, 0, 2, kFALSE);

//Anti-Omega-Neutron
// Anti-Omega-Neutron
TVirtualMC::GetMC()->DefineParticle(-1030010020, "AntiOmegaNeutron", kPTHadron, 2.472, 1.0, 2.190e-22, "Hadron", 0.0, 2, 1, 0, 0, 0, 0, 0, 2, kFALSE);

//Omega-Omega
// Omega-Omega
TVirtualMC::GetMC()->DefineParticle(1060020020, "OmegaOmega", kPTHadron, 3.229, 2.0, 2.632e-10, "Hadron", 0.0, 0, 1, 0, 0, 0, 0, 0, 2, kFALSE);

//Anti-Omega-Omega
// Anti-Omega-Omega
TVirtualMC::GetMC()->DefineParticle(-1060020020, "AntiOmegaOmega", kPTHadron, 3.229, 2.0, 2.632e-10, "Hadron", 0.0, 0, 1, 0, 0, 0, 0, 0, 2, kFALSE);

//Lambda(1405)-Proton
// Lambda(1405)-Proton
TVirtualMC::GetMC()->DefineParticle(1010010021, "Lambda1405Proton", kPTHadron, 2.295, 1.0, 1.316e-23, "Hadron", 0.0, 0, 1, 0, 0, 0, 0, 0, 2, kFALSE);

//Anti-Lambda(1405)-Proton
// Anti-Lambda(1405)-Proton
TVirtualMC::GetMC()->DefineParticle(-1010010021, "AntiLambda1405Proton", kPTHadron, 2.295, 1.0, 1.316e-23, "Hadron", 0.0, 0, 1, 0, 0, 0, 0, 0, 2, kFALSE);

//Lambda(1405)-Lambda(1405)
// Lambda(1405)-Lambda(1405)
TVirtualMC::GetMC()->DefineParticle(1020000021, "Lambda1405Lambda1405", kPTNeutron, 2.693, 0.0, 1.316e-23, "Hadron", 0.0, 0, 1, 0, 0, 0, 0, 0, 2, kFALSE);

//Anti-Lambda(1405)-Lambda(1405)
// Anti-Lambda(1405)-Lambda(1405)
TVirtualMC::GetMC()->DefineParticle(-1020000021, "AntiLambda1405Lambda1405", kPTNeutron, 2.693, 0.0, 1.316e-23, "Hadron", 0.0, 0, 1, 0, 0, 0, 0, 0, 2, kFALSE);

//c-deuteron
// c-deuteron
TVirtualMC::GetMC()->DefineParticle(2010010020, "CDeuteron", kPTHadron, 3.226, 1.0, 2.0e-13, "Ion", 0.0, 0, 1, 0, 0, 0, 0, 0, 3, kFALSE);
//Anti-c-deuteron
// Anti-c-deuteron
TVirtualMC::GetMC()->DefineParticle(-2010010020, "AntiCDeuteron", kPTHadron, 3.226, 1.0, 2.0e-13, "Ion", 0.0, 0, 1, 0, 0, 0, 0, 0, 3, kFALSE);

//c-triton
// c-triton
TVirtualMC::GetMC()->DefineParticle(2010010030, "CTriton", kPTHadron, 4.162, 1.0, 2.0e-13, "Ion", 0.0, 0, 1, 0, 0, 0, 0, 0, 2, kFALSE);
//Anti-c-Hypertriton
// Anti-c-Hypertriton
TVirtualMC::GetMC()->DefineParticle(-2010010030, "AntiCTriton", kPTHadron, 4.162, 1.0, 2.0e-13, "Ion", 0.0, 0, 1, 0, 0, 0, 0, 0, 2, kFALSE);

//Resonances not in Generators
// f0(980) assume 70 MeV as width (PDG: 40 to 100 MeV)
// Resonances not in Generators
// f0(980) assume 70 MeV as width (PDG: 40 to 100 MeV)
TVirtualMC::GetMC()->DefineParticle(9010221, "f0_980", kPTNeutron, 0.98, 0.0, 9.403e-24, "Hadron", 7e-2, 0, 1, 1, 0, 0, 1, 0, 0, kTRUE);

// f2(1270) (PDG: width = 185 MeV)
TVirtualMC::GetMC()->DefineParticle(225, "f2_1270", kPTNeutron, 1.275, 0.0, 3.558e-24, "Hadron", 0.185, 4, 1, 1, 0, 0, 1, 0, 0, kTRUE);

// f1(1285) (PDG: width = 24.20 MeV) Spin/Parity might not be correct
TVirtualMC::GetMC()->DefineParticle(20223, "f1_1285", kPTNeutron, 1.28210, 0.0, 1e-24, "Hadron", 0.02420, 3, 1, 0, 0, 0, 0, 0, 1, kTRUE);
Expand All @@ -385,6 +384,8 @@ void addSpecialParticles()

// Glueball hunting family
// Their life times are not known, so we set them to 1e-24
// f2(1270) (PDG: Width = 185.8 MeV)
TVirtualMC::GetMC()->DefineParticle(225, "f2_1270", kPTNeutron, 1.2754, 0.0, 3.558e-24, "Hadron", 0.1858, 4, 1, 1, 0, 0, 1, 0, 0, kTRUE);
// f0(1370) (PDG: width = 200-500 MeV) Spin/Parity might not be correct
TVirtualMC::GetMC()->DefineParticle(10221, "f0_1370", kPTNeutron, 1.37, 0.0, 1e-24, "Hadron", 0.2, 1, 1, 1, 0, 0, 1, 0, 0, kTRUE);
// a2(1320) (PDG: width = 107.8 MeV) (Spin/Parity might not be correct)
Expand Down Expand Up @@ -440,7 +441,7 @@ void addSpecialParticles()
TVirtualMC::GetMC()->SetDecayMode(-9322134, psratio, psmode);
TVirtualMC::GetMC()->SetDecayMode(-9322136, psratio, psmode);

//Omega(2012)
// Omega(2012)
for (int j = 1; j < 6; j++) {
psmode[j][0] = psmode[j][1] = 0;
psratio[j] = 0.;
Expand Down Expand Up @@ -1342,7 +1343,7 @@ void addSpecialParticles()

TVirtualMC::GetMC()->SetDecayMode(225, bratio, mode);

// Define the 2-body phase space decay for the resonances: f0(1500), f2(1525), f0(1710
// Define the 2-body phase space decay for the resonances: f0(1500), f2(1525), f0(1710)
for (Int_t kz = 0; kz < 6; kz++) {
bratio[kz] = 0.;
mode[kz][0] = 0;
Expand All @@ -1358,6 +1359,7 @@ void addSpecialParticles()
TVirtualMC::GetMC()->SetDecayMode(10331, bratio, mode); // f0(1710)
TVirtualMC::GetMC()->SetDecayMode(10221, bratio, mode); // f0(1370)
TVirtualMC::GetMC()->SetDecayMode(115, bratio, mode); // a2(1320)
TVirtualMC::GetMC()->SetDecayMode(225, bratio, mode); // f2(1270)

// Define the 3-body phase space decay for the resonances: f1(1285), f1(1420)
for (Int_t kz = 0; kz < 6; kz++) {
Expand Down Expand Up @@ -1493,7 +1495,7 @@ void addSpecialParticles()

// --------------------------------------------------------------------

//Sexaquark (uuddss): compact, neutral and stable hypothetical bound state (arxiv.org/abs/1708.08951)
// Sexaquark (uuddss): compact, neutral and stable hypothetical bound state (arxiv.org/abs/1708.08951)
TVirtualMC::GetMC()->DefineParticle(900000020, "Sexaquark", kPTUndefined, 2.0, 0.0, 4.35e+17, "Hadron", 0.0, 0, 1, 0, 0, 0, 0, 0, 2, kTRUE);
TVirtualMC::GetMC()->DefineParticle(-900000020, "AntiSexaquark", kPTUndefined, 2.0, 0.0, 4.35e+17, "Hadron", 0.0, 0, 1, 0, 0, 0, 0, 0, -2, kTRUE);
}
Expand Down

0 comments on commit 12ffee0

Please sign in to comment.