Import Geant4 11.3.0 source tree
This commit is contained in:
@@ -6,6 +6,9 @@ It must **not** be used as a substitute for writing good git commit messages!
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
## 2024-11-04 Philippe Canal (phys-util-V11-02-00)
|
||||
- Static initialization improvement for G4HadParticles.
|
||||
|
||||
## 2023-10-15 Vladimir Ivanchenko (phys-util-V11-01-01)
|
||||
- G4HadProcesses - more accurate implementation for the neutron genelal process
|
||||
|
||||
|
||||
@@ -56,21 +56,6 @@ public:
|
||||
static const std::vector<G4int>& GetHeavyChargedParticles();
|
||||
static const std::vector<G4int>& GetBCChargedHadrons();
|
||||
static const std::vector<G4int>& GetChargedHyperNuclei();
|
||||
|
||||
private:
|
||||
|
||||
static const std::vector<G4int> sLightHadrons;
|
||||
static const std::vector<G4int> sHyperons;
|
||||
static const std::vector<G4int> sAntiHyperons;
|
||||
static const std::vector<G4int> sKaons;
|
||||
static const std::vector<G4int> sBCHadrons;
|
||||
static const std::vector<G4int> sLightIons;
|
||||
static const std::vector<G4int> sLightAntiIons;
|
||||
static const std::vector<G4int> sHyperNuclei;
|
||||
static const std::vector<G4int> sHyperAntiNuclei;
|
||||
static const std::vector<G4int> sHeavyChargedPart;
|
||||
static const std::vector<G4int> sBCChargedHadrons;
|
||||
static const std::vector<G4int> sChargedHyperNuclei;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -31,153 +31,141 @@
|
||||
|
||||
#include "G4HadParticles.hh"
|
||||
|
||||
// p, n, pi+, pi-
|
||||
const std::vector<G4int> G4HadParticles::sLightHadrons = {
|
||||
2212, 2112, 211, -211
|
||||
};
|
||||
|
||||
// Lambda, Sigma+, Sigma-, Xi0, Xi-, Omega-
|
||||
// (note that Sigma0 has not been included because it decays very quickly)
|
||||
const std::vector<G4int> G4HadParticles::sHyperons = {
|
||||
3122, 3222, 3112, 3322, 3312, 3334
|
||||
};
|
||||
|
||||
// anti_Lambda, anti_Sigma+, anti_Sigma-, anti_Xi0, anti_Xi-, anti_Omega-
|
||||
// (note that anti_Sigma0 has not been included because it decays very quickly)
|
||||
const std::vector<G4int> G4HadParticles::sAntiHyperons = {
|
||||
-3122, -3222, -3112, -3322, -3312, -3334
|
||||
};
|
||||
|
||||
// K+, K-, KS, KL
|
||||
const std::vector<G4int> G4HadParticles::sKaons = {
|
||||
321, -321, 310, 130
|
||||
};
|
||||
|
||||
// Note: etac, JPsi, SigmaC++, SigmaC+, SigmaC0, Upsilon,
|
||||
// SigmaB+, SigmaB0, SigmaB- are not included because
|
||||
// they decay very quickly (therefore, their hadronic
|
||||
// interactions can be neglected, as for pi0 and Sigma0).
|
||||
const std::vector<G4int> G4HadParticles::sBCHadrons = {
|
||||
// D+, D0, D-, D0bar, Ds+, Ds-
|
||||
411, 421, -411, -421, 431, -431,
|
||||
// B+, B0, B-, B0bar, Bs0, Bs0bar, Bc+, Bc-,
|
||||
521, 511, -521, -511, 531, -531, 541, -541,
|
||||
// LambdaC+, XiC+, XiC0, OmegaC0
|
||||
4122, 4232, 4132, 4332,
|
||||
// LambdaB, XiB0, XiB-, OmegaB-
|
||||
5122, 5232, 5132, 5332,
|
||||
// corresponding anti_baryons
|
||||
-4122, -4232, -4132, -4332,
|
||||
-5122, -5232, -5132, -5332
|
||||
};
|
||||
|
||||
// d, t, He3, alpha
|
||||
const std::vector<G4int> G4HadParticles::sLightIons = {
|
||||
1000010020, 1000010030, 1000020030, 1000020040
|
||||
};
|
||||
|
||||
// pbar, nbar, light anti-ions
|
||||
const std::vector<G4int> G4HadParticles::sLightAntiIons = {
|
||||
-2212, -2112, -1000010020, -1000010030, -1000020030, -1000020040
|
||||
};
|
||||
|
||||
// hyper_t, hyper_H4, hyper_He4, hyder_He5, 2-hyper-2n, 2-hyper_H4
|
||||
const std::vector<G4int> G4HadParticles::sHyperNuclei = {
|
||||
1010010030, 1010010040, 1010020040, 1010020050, 1020000040, 1020010040
|
||||
};
|
||||
|
||||
// anti-hyper-nuclei
|
||||
const std::vector<G4int> G4HadParticles::sHyperAntiNuclei = {
|
||||
-1010010030, -1010010040, -1010020040, -1010020050, -1020000040, -1020010040
|
||||
};
|
||||
|
||||
//
|
||||
// charged particles for EM physics
|
||||
//
|
||||
const std::vector<G4int> G4HadParticles::sHeavyChargedPart = {
|
||||
// Sigma+, Sigma-, Xi-, Omega-, anti_hyperons
|
||||
3222, 3112, 3312, 3334, -3222, -3112, -3312, -3334,
|
||||
// light anti_ions
|
||||
-1000010020, -1000010030, -1000020030, -1000020040,
|
||||
// tau+-
|
||||
15, -15
|
||||
};
|
||||
|
||||
const std::vector<G4int> G4HadParticles::sBCChargedHadrons = {
|
||||
// D+, D-, Ds+, Ds-
|
||||
411, -411, 431, -431,
|
||||
// B+, B-, Bc+, Bc-,
|
||||
521, -521, 541, -541,
|
||||
// LambdaC+, SigmaC++, SigmaC+, XiC+
|
||||
4122, 4222, 4212, 4232,
|
||||
// SigmaB+, SigmaB-, XiB-, OmegaB-
|
||||
5222, 5112, 5132, 5332,
|
||||
// anti_baryons
|
||||
-4122, -4222, -4212, -4232, -5222, -5112, -5132, -5332
|
||||
};
|
||||
|
||||
// hyper_t
|
||||
const std::vector<G4int> G4HadParticles::sChargedHyperNuclei = {
|
||||
1010010030, 1010010040, 1010020040, 1010020050, 1020010040,
|
||||
-1010010030, -1010010040, -1010020040, -1010020050, -1020010040
|
||||
};
|
||||
|
||||
const std::vector<G4int>& G4HadParticles::GetLightHadrons()
|
||||
{
|
||||
// p, n, pi+, pi-
|
||||
static const std::vector<G4int> sLightHadrons = {
|
||||
2212, 2112, 211, -211
|
||||
};
|
||||
return sLightHadrons;
|
||||
}
|
||||
|
||||
const std::vector<G4int>& G4HadParticles::GetHyperons()
|
||||
{
|
||||
// Lambda, Sigma+, Sigma-, Xi0, Xi-, Omega-
|
||||
// (note that Sigma0 has not been included because it decays very quickly)
|
||||
static const std::vector<G4int> sHyperons = {
|
||||
3122, 3222, 3112, 3322, 3312, 3334
|
||||
};
|
||||
return sHyperons;
|
||||
}
|
||||
|
||||
const std::vector<G4int>& G4HadParticles::GetAntiHyperons()
|
||||
{
|
||||
// anti_Lambda, anti_Sigma+, anti_Sigma-, anti_Xi0, anti_Xi-, anti_Omega-
|
||||
// (note that anti_Sigma0 has not been included because it decays very quickly)
|
||||
static const std::vector<G4int> sAntiHyperons = {
|
||||
-3122, -3222, -3112, -3322, -3312, -3334
|
||||
};
|
||||
return sAntiHyperons;
|
||||
}
|
||||
|
||||
const std::vector<G4int>& G4HadParticles::GetKaons()
|
||||
{
|
||||
// K+, K-, KS, KL
|
||||
static const std::vector<G4int> sKaons = {
|
||||
321, -321, 310, 130
|
||||
};
|
||||
return sKaons;
|
||||
}
|
||||
|
||||
const std::vector<G4int>& G4HadParticles::GetBCHadrons()
|
||||
{
|
||||
// Note: etac, JPsi, SigmaC++, SigmaC+, SigmaC0, Upsilon,
|
||||
// SigmaB+, SigmaB0, SigmaB- are not included because
|
||||
// they decay very quickly (therefore, their hadronic
|
||||
// interactions can be neglected, as for pi0 and Sigma0).
|
||||
static const std::vector<G4int> sBCHadrons = {
|
||||
// D+, D0, D-, D0bar, Ds+, Ds-
|
||||
411, 421, -411, -421, 431, -431,
|
||||
// B+, B0, B-, B0bar, Bs0, Bs0bar, Bc+, Bc-,
|
||||
521, 511, -521, -511, 531, -531, 541, -541,
|
||||
// LambdaC+, XiC+, XiC0, OmegaC0
|
||||
4122, 4232, 4132, 4332,
|
||||
// LambdaB, XiB0, XiB-, OmegaB-
|
||||
5122, 5232, 5132, 5332,
|
||||
// corresponding anti_baryons
|
||||
-4122, -4232, -4132, -4332,
|
||||
-5122, -5232, -5132, -5332
|
||||
};
|
||||
return sBCHadrons;
|
||||
}
|
||||
|
||||
const std::vector<G4int>& G4HadParticles::GetLightIons()
|
||||
{
|
||||
// d, t, He3, alpha
|
||||
static const std::vector<G4int> sLightIons = {
|
||||
1000010020, 1000010030, 1000020030, 1000020040
|
||||
};
|
||||
return sLightIons;
|
||||
}
|
||||
|
||||
const std::vector<G4int>& G4HadParticles::GetLightAntiIons()
|
||||
{
|
||||
// pbar, nbar, light anti-ions
|
||||
static const std::vector<G4int> sLightAntiIons = {
|
||||
-2212, -2112, -1000010020, -1000010030, -1000020030, -1000020040
|
||||
};
|
||||
return sLightAntiIons;
|
||||
}
|
||||
|
||||
const std::vector<G4int>& G4HadParticles::GetHyperNuclei()
|
||||
{
|
||||
// hyper_t, hyper_H4, hyper_He4, hyder_He5, 2-hyper-2n, 2-hyper_H4
|
||||
static const std::vector<G4int> sHyperNuclei = {
|
||||
1010010030, 1010010040, 1010020040, 1010020050, 1020000040, 1020010040
|
||||
};
|
||||
return sHyperNuclei;
|
||||
}
|
||||
|
||||
const std::vector<G4int>& G4HadParticles::GetHyperAntiNuclei()
|
||||
{
|
||||
// anti-hyper-nuclei
|
||||
static const std::vector<G4int> sHyperAntiNuclei = {
|
||||
-1010010030, -1010010040, -1010020040, -1010020050, -1020000040, -1020010040
|
||||
};
|
||||
return sHyperAntiNuclei;
|
||||
}
|
||||
|
||||
const std::vector<G4int>& G4HadParticles::GetHeavyChargedParticles()
|
||||
{
|
||||
//
|
||||
// charged particles for EM physics
|
||||
//
|
||||
static const std::vector<G4int> sHeavyChargedPart = {
|
||||
// Sigma+, Sigma-, Xi-, Omega-, anti_hyperons
|
||||
3222, 3112, 3312, 3334, -3222, -3112, -3312, -3334,
|
||||
// light anti_ions
|
||||
-1000010020, -1000010030, -1000020030, -1000020040,
|
||||
// tau+-
|
||||
15, -15
|
||||
};
|
||||
return sHeavyChargedPart;
|
||||
}
|
||||
|
||||
const std::vector<G4int>& G4HadParticles::GetBCChargedHadrons()
|
||||
{
|
||||
static const std::vector<G4int> sBCChargedHadrons = {
|
||||
// D+, D-, Ds+, Ds-
|
||||
411, -411, 431, -431,
|
||||
// B+, B-, Bc+, Bc-,
|
||||
521, -521, 541, -541,
|
||||
// LambdaC+, SigmaC++, SigmaC+, XiC+
|
||||
4122, 4222, 4212, 4232,
|
||||
// SigmaB+, SigmaB-, XiB-, OmegaB-
|
||||
5222, 5112, 5132, 5332,
|
||||
// anti_baryons
|
||||
-4122, -4222, -4212, -4232, -5222, -5112, -5132, -5332
|
||||
};
|
||||
return sBCChargedHadrons;
|
||||
}
|
||||
|
||||
const std::vector<G4int>& G4HadParticles::GetChargedHyperNuclei()
|
||||
{
|
||||
// hyper_t
|
||||
static const std::vector<G4int> sChargedHyperNuclei = {
|
||||
1010010030, 1010010040, 1010020040, 1010020050, 1020010040,
|
||||
-1010010030, -1010010040, -1010020040, -1010020050, -1020010040
|
||||
};
|
||||
return sChargedHyperNuclei;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user