Geant4-11
Namespaces | Macros | Functions | Variables
G4INCLParticleTable.cc File Reference
#include "globals.hh"
#include "G4INCLParticleTable.hh"
#include "G4INCLNuclearMassTable.hh"
#include <algorithm>
#include <cmath>
#include <cctype>
#include <sstream>
#include "G4SystemOfUnits.hh"
#include "G4PhysicalConstants.hh"

Go to the source code of this file.

Namespaces

namespace  G4INCL
 
namespace  G4INCL::ParticleTable
 
namespace  G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}
 

Macros

#define INCL_DEFAULT_SEPARATION_ENERGY   6.83
 
#define INCLXX_IN_GEANT4_MODE   1
 

Functions

G4int G4INCL::ParticleTable::drawRandomNaturalIsotope (const G4int Z)
 
ParticleType G4INCL::ParticleTable::getAntiKaonType (const G4int isosp)
 Get the type of antikaon. More...
 
G4int G4INCL::ParticleTable::getChargeNumber (const ParticleType t)
 Get charge number from particle type. More...
 
ParticleType G4INCL::ParticleTable::getDeltaType (const G4int isosp)
 Get the type of delta. More...
 
std::string G4INCL::ParticleTable::getElementName (const G4int Z)
 Get the name of the element from the atomic number. More...
 
G4double G4INCL::ParticleTable::getFermiMomentumConstant (const G4int, const G4int)
 Return the constant value of the Fermi momentum. More...
 
G4double G4INCL::ParticleTable::getFermiMomentumConstantLight (const G4int A, const G4int Z)
 Return the constant value of the Fermi momentum - special for light. More...
 
G4double G4INCL::ParticleTable::getFermiMomentumMassDependent (const G4int A, const G4int)
 Return the value Fermi momentum from a fit. More...
 
G4double G4INCL::ParticleTable::getINCLMass (const G4int A, const G4int Z, const G4int S)
 Get INCL nuclear mass (in MeV/c^2) More...
 
G4double G4INCL::ParticleTable::getINCLMass (const ParticleType t)
 Get INCL particle mass (in MeV/c^2) More...
 
G4int G4INCL::ParticleTable::getIsospin (const ParticleType t)
 Get the isospin of a particle. More...
 
std::string G4INCL::ParticleTable::getIUPACElementName (const G4int Z)
 Get the name of an unnamed element from the IUPAC convention. More...
 
ParticleType G4INCL::ParticleTable::getKaonType (const G4int isosp)
 Get the type of kaon. More...
 
G4double G4INCL::ParticleTable::getLambdaSeparationEnergy ()
 
G4double G4INCL::ParticleTable::getLargestNuclearRadius (const G4int A, const G4int Z)
 
G4int G4INCL::ParticleTable::getMassNumber (const ParticleType t)
 Get mass number from particle type. More...
 
G4double G4INCL::ParticleTable::getMaximumNuclearRadius (const ParticleType t, const G4int A, const G4int Z)
 
G4double G4INCL::ParticleTable::getMomentumRMS (const G4int A, const G4int Z)
 Return the RMS of the momentum distribution (light clusters) More...
 
std::string G4INCL::ParticleTable::getName (const G4int A, const G4int Z)
 Get the native INCL name of the ion. More...
 
std::string G4INCL::ParticleTable::getName (const G4int A, const G4int Z, const G4int S)
 
std::string G4INCL::ParticleTable::getName (const ParticleSpecies &s)
 Get the native INCL name of the particle. More...
 
std::string G4INCL::ParticleTable::getName (const ParticleType t)
 Get the native INCL name of the particle. More...
 
IsotopicDistribution const & G4INCL::ParticleTable::getNaturalIsotopicDistribution (const G4int Z)
 
const NaturalIsotopicDistributions * G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::getNaturalIsotopicDistributions ()
 Get the singleton instance of the natural isotopic distributions. More...
 
G4double G4INCL::ParticleTable::getNeutronHalo ()
 Get the size of the neutron halo. More...
 
G4double G4INCL::ParticleTable::getNeutronSeparationEnergy ()
 Getter for neutronSeparationEnergy. More...
 
G4double G4INCL::ParticleTable::getNeutronSkin ()
 Get the thickness of the neutron skin. More...
 
G4double G4INCL::ParticleTable::getNuclearRadius (const ParticleType t, const G4int A, const G4int Z)
 
ParticleType G4INCL::ParticleTable::getNucleonType (const G4int isosp)
 Get the type of nucleon. More...
 
ParticleType G4INCL::ParticleTable::getPionType (const G4int isosp)
 Get the type of pion. More...
 
G4double G4INCL::ParticleTable::getProtonSeparationEnergy ()
 Getter for protonSeparationEnergy. More...
 
G4double G4INCL::ParticleTable::getRadiusParameter (const ParticleType t, const G4int A, const G4int Z)
 
G4double G4INCL::ParticleTable::getRealMass (const G4INCL::ParticleType t)
 Get particle mass (in MeV/c^2) More...
 
G4double G4INCL::ParticleTable::getRealMass (const G4int A, const G4int Z, const G4int S=0)
 Get nuclear mass (in MeV/c^2) More...
 
G4double G4INCL::ParticleTable::getRPCorrelationCoefficient (const ParticleType t)
 Get the value of the r-p correlation coefficient. More...
 
G4double G4INCL::ParticleTable::getSeparationEnergyINCL (const ParticleType t, const G4int, const G4int)
 Return INCL's default separation energy. More...
 
G4double G4INCL::ParticleTable::getSeparationEnergyReal (const ParticleType t, const G4int A, const G4int Z)
 Return the real separation energy. More...
 
G4double G4INCL::ParticleTable::getSeparationEnergyRealForLight (const ParticleType t, const G4int A, const G4int Z)
 Return the real separation energy only for light nuclei. More...
 
std::string G4INCL::ParticleTable::getShortName (const G4int A, const G4int Z)
 Get the short INCL name of the ion. More...
 
std::string G4INCL::ParticleTable::getShortName (const ParticleSpecies &s)
 Get the short INCL name of the particle. More...
 
std::string G4INCL::ParticleTable::getShortName (const ParticleType t)
 Get the short INCL name of the particle. More...
 
ParticleType G4INCL::ParticleTable::getSigmaType (const G4int isosp)
 Get the type of sigma. More...
 
G4int G4INCL::ParticleTable::getStrangenessNumber (const ParticleType t)
 Get strangeness number from particle type. More...
 
G4double G4INCL::ParticleTable::getSurfaceDiffuseness (const ParticleType t, const G4int A, const G4int Z)
 
G4double G4INCL::ParticleTable::getTableQValue (const G4int A1, const G4int Z1, const G4int S1, const G4int A2, const G4int Z2, const G4int S2)
 Get Q-value (in MeV/c^2) More...
 
G4double G4INCL::ParticleTable::getTableQValue (const G4int A1, const G4int Z1, const G4int S1, const G4int A2, const G4int Z2, const G4int S2, const G4int A3, const G4int Z3, const G4int S3)
 Get Q-value (in MeV/c^2) More...
 
G4double G4INCL::ParticleTable::getTableSpeciesMass (const ParticleSpecies &p)
 
G4double G4INCL::ParticleTable::getWidth (const ParticleType t)
 Get particle width (in s) More...
 
void G4INCL::ParticleTable::initialize (Config const *const theConfig=0)
 Initialize the particle table. More...
 
char G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::intToIUPAC (char n)
 Transform an integer digit (represented by a char) to a IUPAC char. More...
 
char G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::iupacToInt (char c)
 Transform a IUPAC char to an char representing an integer digit. More...
 
G4int G4INCL::ParticleTable::parseElement (std::string pS)
 Get the name of the element from the atomic number. More...
 
G4int G4INCL::ParticleTable::parseIUPACElement (std::string const &pS)
 Parse a IUPAC element name. More...
 
void G4INCL::ParticleTable::setLambdaSeparationEnergy (const G4double sen)
 
void G4INCL::ParticleTable::setNeutronSeparationEnergy (const G4double s)
 Setter for protonSeparationEnergy. More...
 
void G4INCL::ParticleTable::setProtonSeparationEnergy (const G4double s)
 Setter for protonSeparationEnergy. More...
 

Variables

G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::constantFermiMomentum = 0.0
 Default value for constant Fermi momentum. More...
 
const std::string G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::elementIUPACDigits = "nubtqphsoe"
 Digit names to compose IUPAC element names. More...
 
const std::string G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::elementTable [elementTableSize]
 Table of chemical element names. More...
 
const G4int G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::elementTableSize = 113
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::etaMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::etaPrimeMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::etaPrimeWidth = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::etaWidth = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::KLongMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::KLongWidth = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::KMinusMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::KMinusWidth = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::KPlusMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::KPlusWidth = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::KShortMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::KShortWidth = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::KZeroBarMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::KZeroMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::LambdaMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::lambdaSeparationEnergy = INCL_DEFAULT_SEPARATION_ENERGY
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::LambdaWidth = 0.0
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::mediumDiffuseness [mediumNucleiTableSize]
 
const G4int G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::mediumNucleiTableSize = 30
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::mediumRadius [mediumNucleiTableSize]
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::momentumRMS [clusterTableZSize][clusterTableASize]
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::neutronHalo = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::neutronMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::neutronSeparationEnergy = INCL_DEFAULT_SEPARATION_ENERGY
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::neutronSkin = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::omegaMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::omegaWidth = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::photonMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::piMinusMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::piMinusWidth = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::piPlusMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::piPlusWidth = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::piZeroMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::piZeroWidth = 0.0
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::positionRMS [clusterTableZSize][clusterTableASize]
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::protonMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::protonSeparationEnergy = INCL_DEFAULT_SEPARATION_ENERGY
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::rpCorrelationCoefficient [UnknownParticle]
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::SigmaMinusMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::SigmaMinusWidth = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::SigmaPlusMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::SigmaPlusWidth = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::SigmaZeroMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::SigmaZeroWidth = 0.0
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theChargedKaonWidth = 1.238e-08
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theChargedPiWidth = 2.6033e-08
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theEtaPrimeWidth = 3.3243e-21
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theEtaWidth = 5.025e-19
 
G4ThreadLocal G4IonTableG4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theG4IonTable
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theINCLEtaMass = 547.862
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theINCLEtaPrimeMass = 957.78
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theINCLLambdaMass = 1115.683
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theINCLLambdaSeparationEnergy = INCL_DEFAULT_SEPARATION_ENERGY
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theINCLNeutronSeparationEnergy = INCL_DEFAULT_SEPARATION_ENERGY
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theINCLNucleonMass = 938.2796
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theINCLOmegaMass = 782.65
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theINCLPhotonMass = 0.0
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theINCLPionMass = 138.0
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theINCLProtonSeparationEnergy = INCL_DEFAULT_SEPARATION_ENERGY
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theKLongWidth = 5.116e-08
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theKShortWidth = 8.954e-11
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theLambdaWidth = 2.632e-10
 
const NaturalIsotopicDistributions * G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theNaturalIsotopicDistributions = NULL
 Static instance of the NaturalIsotopicAbundances class. More...
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theOmegaWidth = 7.7528e-23
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::thePiZeroWidth = 8.52e-17
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theRealChargedKaonMass = 493.677
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theRealChargedPiMass = 139.57018
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theRealEtaMass = 547.862
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theRealEtaPrimeMass = 957.78
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theRealLambdaMass = 1115.683
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theRealNeutralKaonMass = 497.614
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theRealNeutronMass = 939.56536
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theRealOmegaMass = 782.65
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theRealPhotonMass = 0.0
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theRealPiZeroMass = 134.9766
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theRealProtonMass = 938.27203
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theRealSigmaMinusMass = 1197.45
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theRealSigmaPlusMass = 1189.37
 
G4ThreadLocal G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theRealSigmaZeroMass = 1192.64
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theSigmaMinusWidth = 1.479e-10
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theSigmaPlusWidth = 8.018e-11
 
const G4double G4INCL::ParticleTable::anonymous_namespace{G4INCLParticleTable.cc}::theSigmaZeroWidth = 7.4e-20
 

Macro Definition Documentation

◆ INCL_DEFAULT_SEPARATION_ENERGY

#define INCL_DEFAULT_SEPARATION_ENERGY   6.83

Definition at line 298 of file G4INCLParticleTable.cc.

◆ INCLXX_IN_GEANT4_MODE

#define INCLXX_IN_GEANT4_MODE   1

Definition at line 34 of file G4INCLParticleTable.cc.