Geant4  9.6.p02
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Static Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
G4INCL::ParticleTable Class Reference

#include <G4INCLParticleTable.hh>

Collaboration diagram for G4INCL::ParticleTable:
Collaboration graph
[legend]

Public Types

enum  ClusterDecayType {
  StableCluster, NeutronDecay, ProtonDecay, AlphaDecay,
  TwoProtonDecay, TwoNeutronDecay, ProtonUnbound, NeutronUnbound
}
 
typedef G4double(* NuclearMassFn )(const G4int, const G4int)
 
typedef G4double(* ParticleMassFn )(const ParticleType)
 
typedef G4double(* SeparationEnergyFn )(const ParticleType, const G4int, const G4int)
 

Static Public Member Functions

static void initialize (Config const *const theConfig=0)
 Initialize the particle table. More...
 
static G4int getIsospin (const ParticleType t)
 Get the isospin of a particle. More...
 
static std::string getName (const ParticleType t)
 Get the native INCL name of the particle. More...
 
static std::string getShortName (const ParticleType t)
 Get the short INCL name of the particle. More...
 
static std::string getName (const ParticleSpecies s)
 Get the native INCL name of the particle. More...
 
static std::string getShortName (const ParticleSpecies s)
 Get the short INCL name of the particle. More...
 
static std::string getName (const G4int A, const G4int Z)
 Get the native INCL name of the ion. More...
 
static std::string getShortName (const G4int A, const G4int Z)
 Get the short INCL name of the ion. More...
 
static G4double getINCLMass (const G4int A, const G4int Z)
 Get INCL nuclear mass (in MeV/c^2) More...
 
static G4double getINCLMass (const ParticleType t)
 Get INCL particle mass (in MeV/c^2) More...
 
static G4double getRealMass (const G4INCL::ParticleType t)
 Get particle mass (in MeV/c^2) More...
 
static G4double getRealMass (const G4int A, const G4int Z)
 Get nuclear mass (in MeV/c^2) More...
 
static G4double getTableQValue (const G4int A1, const G4int Z1, const G4int A2, const G4int Z2)
 Get Q-value (in MeV/c^2) More...
 
static G4double getTableQValue (const G4int A1, const G4int Z1, const G4int A2, const G4int Z2, const G4int A3, const G4int Z3)
 Get Q-value (in MeV/c^2) More...
 
static G4double getTableSpeciesMass (const ParticleSpecies &p)
 
static G4int getMassNumber (const ParticleType t)
 Get mass number from particle type. More...
 
static G4int getChargeNumber (const ParticleType t)
 Get charge number from particle type. More...
 
static G4double getNuclearRadius (const G4int A, const G4int Z)
 
static G4double getRadiusParameter (const G4int A, const G4int Z)
 
static G4double getMaximumNuclearRadius (const G4int A, const G4int Z)
 
static G4double getSurfaceDiffuseness (const G4int A, const G4int Z)
 
static G4double getMomentumRMS (const G4int A, const G4int Z)
 Return the RMS of the momentum distribution (light clusters) More...
 
static G4double getSeparationEnergyINCL (const ParticleType t, const G4int, const G4int)
 Return INCL's default separation energy. More...
 
static G4double getSeparationEnergyReal (const ParticleType t, const G4int A, const G4int Z)
 Return the real separation energy. More...
 
static G4double getSeparationEnergyRealForLight (const ParticleType t, const G4int A, const G4int Z)
 Return the real separation energy only for light nuclei. More...
 
static G4double getProtonSeparationEnergy ()
 Getter for protonSeparationEnergy. More...
 
static G4double getNeutronSeparationEnergy ()
 Getter for neutronSeparationEnergy. More...
 
static void setProtonSeparationEnergy (const G4double s)
 Setter for protonSeparationEnergy. More...
 
static void setNeutronSeparationEnergy (const G4double s)
 Setter for protonSeparationEnergy. More...
 
static std::string getElementName (const G4int Z)
 Get the name of the element from the atomic number. More...
 
static std::string getIUPACElementName (const G4int Z)
 Get the name of an unnamed element from the IUPAC convention. More...
 
static G4int parseIUPACElement (std::string const &pS)
 Parse a IUPAC element name. More...
 
static IsotopicDistribution constgetNaturalIsotopicDistribution (const G4int Z)
 
static G4int drawRandomNaturalIsotope (const G4int Z)
 

Static Public Attributes

static NuclearMassFn getTableMass
 Static pointer to the mass function for nuclei. More...
 
static ParticleMassFn getTableParticleMass
 Static pointer to the mass function for particles. More...
 
static SeparationEnergyFn getSeparationEnergy
 Static pointer to the separation-energy function. More...
 
static const G4int elementTableSize = 113
 
static const G4double effectiveNucleonMass = 938.2796
 
static const G4double effectiveNucleonMass2 = 8.8036860777616e5
 
static const G4double effectiveDeltaMass = 1232.0
 
static const G4double effectivePionMass = 138.0
 
static const G4double effectiveDeltaDecayThreshold
 
static const G4int maxClusterMass = 12
 
static const G4int maxClusterCharge = 8
 
static const G4int clusterTableZSize = ParticleTable::maxClusterCharge+1
 
static const G4int clusterTableASize = ParticleTable::maxClusterMass+1
 
static const G4double clusterPosFact [maxClusterMass+1]
 
static const G4double clusterPosFact2 [maxClusterMass+1]
 
static const G4int clusterZMin [maxClusterMass+1] = {0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3}
 
static const G4int clusterZMax [maxClusterMass+1] = {0, 0, 1, 2, 3, 3, 5, 5, 6, 6, 7, 7, 8}
 
static const G4double clusterPhaseSpaceCut [maxClusterMass+1]
 
static G4IonTabletheG4IonTable
 
static const ClusterDecayType clusterDecayMode [clusterTableZSize][clusterTableASize]
 
static const G4double eSquared = 1.439964
 Coulomb conversion factor, in MeV*fm. More...
 

Protected Member Functions

 ParticleTable ()
 
 ~ParticleTable ()
 

Detailed Description

Definition at line 57 of file G4INCLParticleTable.hh.

Member Typedef Documentation

typedef G4double(* G4INCL::ParticleTable::NuclearMassFn)(const G4int, const G4int)

Definition at line 148 of file G4INCLParticleTable.hh.

typedef G4double(* G4INCL::ParticleTable::ParticleMassFn)(const ParticleType)

Definition at line 149 of file G4INCLParticleTable.hh.

typedef G4double(* G4INCL::ParticleTable::SeparationEnergyFn)(const ParticleType, const G4int, const G4int)

Definition at line 161 of file G4INCLParticleTable.hh.

Member Enumeration Documentation

Enumerator
StableCluster 
NeutronDecay 
ProtonDecay 
AlphaDecay 
TwoProtonDecay 
TwoNeutronDecay 
ProtonUnbound 
NeutronUnbound 

Definition at line 313 of file G4INCLParticleTable.hh.

Constructor & Destructor Documentation

G4INCL::ParticleTable::ParticleTable ( )
inlineprotected

Definition at line 340 of file G4INCLParticleTable.hh.

G4INCL::ParticleTable::~ParticleTable ( )
inlineprotected

Definition at line 341 of file G4INCLParticleTable.hh.

Member Function Documentation

static G4int G4INCL::ParticleTable::drawRandomNaturalIsotope ( const G4int  Z)
inlinestatic

Definition at line 335 of file G4INCLParticleTable.hh.

Here is the call graph for this function:

Here is the caller graph for this function:

static G4int G4INCL::ParticleTable::getChargeNumber ( const ParticleType  t)
inlinestatic

Get charge number from particle type.

Definition at line 187 of file G4INCLParticleTable.hh.

std::string G4INCL::ParticleTable::getElementName ( const G4int  Z)
static

Get the name of the element from the atomic number.

Definition at line 624 of file G4INCLParticleTable.cc.

Here is the call graph for this function:

Here is the caller graph for this function:

G4double G4INCL::ParticleTable::getINCLMass ( const G4int  A,
const G4int  Z 
)
static

Get INCL nuclear mass (in MeV/c^2)

Definition at line 518 of file G4INCLParticleTable.cc.

Here is the caller graph for this function:

G4double G4INCL::ParticleTable::getINCLMass ( const ParticleType  t)
static

Get INCL particle mass (in MeV/c^2)

Definition at line 451 of file G4INCLParticleTable.cc.

G4int G4INCL::ParticleTable::getIsospin ( const ParticleType  t)
static

Get the isospin of a particle.

Definition at line 347 of file G4INCLParticleTable.cc.

Here is the caller graph for this function:

std::string G4INCL::ParticleTable::getIUPACElementName ( const G4int  Z)
static

Get the name of an unnamed element from the IUPAC convention.

Definition at line 677 of file G4INCLParticleTable.cc.

Here is the caller graph for this function:

static G4int G4INCL::ParticleTable::getMassNumber ( const ParticleType  t)
inlinestatic

Get mass number from particle type.

Definition at line 165 of file G4INCLParticleTable.hh.

G4double G4INCL::ParticleTable::getMaximumNuclearRadius ( const G4int  A,
const G4int  Z 
)
static

Definition at line 589 of file G4INCLParticleTable.cc.

Here is the call graph for this function:

Here is the caller graph for this function:

static G4double G4INCL::ParticleTable::getMomentumRMS ( const G4int  A,
const G4int  Z 
)
inlinestatic

Return the RMS of the momentum distribution (light clusters)

Definition at line 218 of file G4INCLParticleTable.hh.

Here is the caller graph for this function:

std::string G4INCL::ParticleTable::getName ( const ParticleType  t)
static

Get the native INCL name of the particle.

Definition at line 401 of file G4INCLParticleTable.cc.

Here is the caller graph for this function:

std::string G4INCL::ParticleTable::getName ( const ParticleSpecies  s)
static

Get the native INCL name of the particle.

Definition at line 380 of file G4INCLParticleTable.cc.

Here is the call graph for this function:

std::string G4INCL::ParticleTable::getName ( const G4int  A,
const G4int  Z 
)
static

Get the native INCL name of the ion.

Definition at line 387 of file G4INCLParticleTable.cc.

Here is the call graph for this function:

static IsotopicDistribution const& G4INCL::ParticleTable::getNaturalIsotopicDistribution ( const G4int  Z)
inlinestatic

Definition at line 331 of file G4INCLParticleTable.hh.

Here is the call graph for this function:

static G4double G4INCL::ParticleTable::getNeutronSeparationEnergy ( )
inlinestatic

Getter for neutronSeparationEnergy.

Definition at line 264 of file G4INCLParticleTable.hh.

G4double G4INCL::ParticleTable::getNuclearRadius ( const G4int  A,
const G4int  Z 
)
static

Definition at line 535 of file G4INCLParticleTable.cc.

Here is the call graph for this function:

Here is the caller graph for this function:

static G4double G4INCL::ParticleTable::getProtonSeparationEnergy ( )
inlinestatic

Getter for protonSeparationEnergy.

Definition at line 261 of file G4INCLParticleTable.hh.

G4double G4INCL::ParticleTable::getRadiusParameter ( const G4int  A,
const G4int  Z 
)
static

Definition at line 562 of file G4INCLParticleTable.cc.

Here is the caller graph for this function:

G4double G4INCL::ParticleTable::getRealMass ( const G4INCL::ParticleType  t)
static

Get particle mass (in MeV/c^2)

Definition at line 468 of file G4INCLParticleTable.cc.

Here is the caller graph for this function:

G4double G4INCL::ParticleTable::getRealMass ( const G4int  A,
const G4int  Z 
)
static

Get nuclear mass (in MeV/c^2)

Definition at line 490 of file G4INCLParticleTable.cc.

Here is the call graph for this function:

static G4double G4INCL::ParticleTable::getSeparationEnergyINCL ( const ParticleType  t,
const G4int  ,
const G4int   
)
inlinestatic

Return INCL's default separation energy.

Definition at line 227 of file G4INCLParticleTable.hh.

Here is the caller graph for this function:

static G4double G4INCL::ParticleTable::getSeparationEnergyReal ( const ParticleType  t,
const G4int  A,
const G4int  Z 
)
inlinestatic

Return the real separation energy.

Definition at line 239 of file G4INCLParticleTable.hh.

Here is the caller graph for this function:

static G4double G4INCL::ParticleTable::getSeparationEnergyRealForLight ( const ParticleType  t,
const G4int  A,
const G4int  Z 
)
inlinestatic

Return the real separation energy only for light nuclei.

Definition at line 252 of file G4INCLParticleTable.hh.

Here is the call graph for this function:

Here is the caller graph for this function:

std::string G4INCL::ParticleTable::getShortName ( const ParticleType  t)
static

Get the short INCL name of the particle.

Definition at line 426 of file G4INCLParticleTable.cc.

Here is the caller graph for this function:

std::string G4INCL::ParticleTable::getShortName ( const ParticleSpecies  s)
static

Get the short INCL name of the particle.

Definition at line 373 of file G4INCLParticleTable.cc.

Here is the call graph for this function:

std::string G4INCL::ParticleTable::getShortName ( const G4int  A,
const G4int  Z 
)
static

Get the short INCL name of the ion.

Definition at line 393 of file G4INCLParticleTable.cc.

Here is the call graph for this function:

G4double G4INCL::ParticleTable::getSurfaceDiffuseness ( const G4int  A,
const G4int  Z 
)
static

Definition at line 604 of file G4INCLParticleTable.cc.

Here is the caller graph for this function:

static G4double G4INCL::ParticleTable::getTableQValue ( const G4int  A1,
const G4int  Z1,
const G4int  A2,
const G4int  Z2 
)
inlinestatic

Get Q-value (in MeV/c^2)

Uses the getTableMass function to compute the Q-value for the following reaction:

\[ (A_1,Z_1) + (A_2, Z_2) --> (A_1+A_2,Z_1+Z_2) \]

Definition at line 133 of file G4INCLParticleTable.hh.

Here is the caller graph for this function:

static G4double G4INCL::ParticleTable::getTableQValue ( const G4int  A1,
const G4int  Z1,
const G4int  A2,
const G4int  Z2,
const G4int  A3,
const G4int  Z3 
)
inlinestatic

Get Q-value (in MeV/c^2)

Uses the getTableMass function to compute the Q-value for the following reaction:

\[ (A_1,Z_1) + (A_2, Z_2) --> (A_3,Z_3) + (A1+A2-A3,Z1+Z2-Z3) \]

Definition at line 143 of file G4INCLParticleTable.hh.

static G4double G4INCL::ParticleTable::getTableSpeciesMass ( const ParticleSpecies p)
inlinestatic

Definition at line 153 of file G4INCLParticleTable.hh.

void G4INCL::ParticleTable::initialize ( Config const *const  theConfig = 0)
static

Initialize the particle table.

Definition at line 304 of file G4INCLParticleTable.cc.

Here is the call graph for this function:

Here is the caller graph for this function:

G4int G4INCL::ParticleTable::parseIUPACElement ( std::string const pS)
static

Parse a IUPAC element name.

Note: this function is UGLY. Look at it at your own peril.

Parameters
pSa normalised string (lowercase)
Returns
the charge number of the nuclide, or zero on fail

Definition at line 686 of file G4INCLParticleTable.cc.

static void G4INCL::ParticleTable::setNeutronSeparationEnergy ( const G4double  s)
inlinestatic

Setter for protonSeparationEnergy.

Definition at line 270 of file G4INCLParticleTable.hh.

Here is the caller graph for this function:

static void G4INCL::ParticleTable::setProtonSeparationEnergy ( const G4double  s)
inlinestatic

Setter for protonSeparationEnergy.

Definition at line 267 of file G4INCLParticleTable.hh.

Here is the caller graph for this function:

Member Data Documentation

const ParticleTable::ClusterDecayType G4INCL::ParticleTable::clusterDecayMode
static
Initial value:
=
{
}

Definition at line 323 of file G4INCLParticleTable.hh.

const G4double G4INCL::ParticleTable::clusterPhaseSpaceCut
static
Initial value:
= {0.0, 70000.0, 180000.0,
90000.0, 90000.0,
128941.0 ,145607.0,
161365.0, 176389.0,
190798.0, 204681.0,
218109.0, 231135.0}

Definition at line 303 of file G4INCLParticleTable.hh.

const G4double G4INCL::ParticleTable::clusterPosFact
static
Initial value:
= {0.0, 1.0, 0.5,
0.33333, 0.25,
0.2, 0.16667,
0.14286, 0.125,
0.11111, 0.1,
0.09091, 0.083333}

Precomputed factor 1.0/A

Definition at line 299 of file G4INCLParticleTable.hh.

const G4double G4INCL::ParticleTable::clusterPosFact2
static
Initial value:
= {0.0, 1.0, 0.25,
0.11111, 0.0625,
0.04, 0.0277778,
0.020408, 0.015625,
0.012346, 0.01,
0.0082645, 0.0069444}

Precomputed factor (1.0/A)^2

Definition at line 300 of file G4INCLParticleTable.hh.

const G4int G4INCL::ParticleTable::clusterTableASize = ParticleTable::maxClusterMass+1
static

Definition at line 298 of file G4INCLParticleTable.hh.

const G4int G4INCL::ParticleTable::clusterTableZSize = ParticleTable::maxClusterCharge+1
static

Definition at line 297 of file G4INCLParticleTable.hh.

const G4int G4INCL::ParticleTable::clusterZMax = {0, 0, 1, 2, 3, 3, 5, 5, 6, 6, 7, 7, 8}
static

Definition at line 302 of file G4INCLParticleTable.hh.

const G4int G4INCL::ParticleTable::clusterZMin = {0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3}
static

Definition at line 301 of file G4INCLParticleTable.hh.

const G4double G4INCL::ParticleTable::effectiveDeltaDecayThreshold
static
Initial value:
=
ParticleTable::theRealNeutronMass + ParticleTable::theRealChargedPiMass
+ 0.5

Definition at line 292 of file G4INCLParticleTable.hh.

const G4double G4INCL::ParticleTable::effectiveDeltaMass = 1232.0
static

Definition at line 290 of file G4INCLParticleTable.hh.

const G4double G4INCL::ParticleTable::effectiveNucleonMass = 938.2796
static

Definition at line 288 of file G4INCLParticleTable.hh.

const G4double G4INCL::ParticleTable::effectiveNucleonMass2 = 8.8036860777616e5
static

Definition at line 289 of file G4INCLParticleTable.hh.

const G4double G4INCL::ParticleTable::effectivePionMass = 138.0
static

Definition at line 291 of file G4INCLParticleTable.hh.

const G4int G4INCL::ParticleTable::elementTableSize = 113
static

Definition at line 286 of file G4INCLParticleTable.hh.

const G4double G4INCL::ParticleTable::eSquared = 1.439964
static

Coulomb conversion factor, in MeV*fm.

\[ e^2/(4 pi epsilon_0) \]

Definition at line 329 of file G4INCLParticleTable.hh.

ParticleTable::SeparationEnergyFn G4INCL::ParticleTable::getSeparationEnergy
static

Static pointer to the separation-energy function.

Definition at line 162 of file G4INCLParticleTable.hh.

ParticleTable::NuclearMassFn G4INCL::ParticleTable::getTableMass
static

Static pointer to the mass function for nuclei.

Definition at line 150 of file G4INCLParticleTable.hh.

ParticleTable::ParticleMassFn G4INCL::ParticleTable::getTableParticleMass
static

Static pointer to the mass function for particles.

Definition at line 151 of file G4INCLParticleTable.hh.

const G4int G4INCL::ParticleTable::maxClusterCharge = 8
static

Definition at line 295 of file G4INCLParticleTable.hh.

const G4int G4INCL::ParticleTable::maxClusterMass = 12
static

Definition at line 294 of file G4INCLParticleTable.hh.

G4IonTable * G4INCL::ParticleTable::theG4IonTable
static

Definition at line 306 of file G4INCLParticleTable.hh.


The documentation for this class was generated from the following files: