Geant4  10.03
G4IonTable Class Reference

#include <G4IonTable.hh>

+ Collaboration diagram for G4IonTable:

Public Types

enum  { numberOfElements = 118 }
 
typedef std::multimap< G4int,
const G4ParticleDefinition * > 
G4IonList
 
typedef std::multimap< G4int,
const G4ParticleDefinition * >
::iterator 
G4IonListIterator
 

Public Member Functions

 G4IonTable ()
 
void SlaveG4IonTable ()
 
void WorkerG4IonTable ()
 
virtual ~G4IonTable ()
 
void DestroyWorkerG4IonTable ()
 
G4int GetNumberOfElements () const
 
void RegisterIsotopeTable (G4VIsotopeTable *table)
 
G4VIsotopeTableGetIsotopeTable (size_t idx=0) const
 
void CreateAllIon ()
 
void CreateAllIsomer ()
 
void PrepareNuclideTable ()
 
void PreloadNuclide ()
 
G4ParticleDefinitionGetIon (G4int Z, G4int A, G4int lvl=0)
 
G4ParticleDefinitionGetIon (G4int Z, G4int A, G4int L, G4int lvl)
 
G4ParticleDefinitionGetIon (G4int Z, G4int A, G4double E, G4int J=0)
 
G4ParticleDefinitionGetIon (G4int Z, G4int A, G4double E, G4Ions::G4FloatLevelBase flb, G4int J=0)
 
G4ParticleDefinitionGetIon (G4int Z, G4int A, G4double E, char flbChar, G4int J=0)
 
G4ParticleDefinitionGetIon (G4int Z, G4int A, G4int L, G4double E, G4int J=0)
 
G4ParticleDefinitionGetIon (G4int Z, G4int A, G4int L, G4double E, G4Ions::G4FloatLevelBase flb, G4int J=0)
 
G4ParticleDefinitionGetIon (G4int Z, G4int A, G4int L, G4double E, char flbChar, G4int J=0)
 
G4ParticleDefinitionGetIon (G4int encoding)
 
G4ParticleDefinitionFindIon (G4int Z, G4int A, G4int lvl=0)
 
G4ParticleDefinitionFindIon (G4int Z, G4int A, G4int L, G4int lvl)
 
G4ParticleDefinitionFindIon (G4int Z, G4int A, G4double E, G4int J=0)
 
G4ParticleDefinitionFindIon (G4int Z, G4int A, G4double E, G4Ions::G4FloatLevelBase flb, G4int J=0)
 
G4ParticleDefinitionFindIon (G4int Z, G4int A, G4double E, char flbChar, G4int J=0)
 
G4ParticleDefinitionFindIon (G4int Z, G4int A, G4int L, G4double E, G4int J=0)
 
G4ParticleDefinitionFindIon (G4int Z, G4int A, G4int L, G4double E, G4Ions::G4FloatLevelBase flb, G4int J=0)
 
G4ParticleDefinitionFindIon (G4int Z, G4int A, G4int L, G4double E, char flbChar, G4int J=0)
 
const G4StringGetIonName (G4int Z, G4int A, G4int lvl=0) const
 
const G4StringGetIonName (G4int Z, G4int A, G4double E, G4Ions::G4FloatLevelBase flb=G4Ions::G4FloatLevelBase::no_Float) const
 
const G4StringGetIonName (G4int Z, G4int A, G4int L, G4double E, G4Ions::G4FloatLevelBase flb=G4Ions::G4FloatLevelBase::no_Float) const
 
const G4StringGetIonName (G4int Z, G4int A, G4int L, G4int lvl) const
 
G4double GetIonMass (G4int Z, G4int A, G4int L=0, G4int lvl=0) const
 
G4double GetNucleusMass (G4int Z, G4int A, G4int L=0, G4int lvl=0) const
 
G4double GetIsomerMass (G4int Z, G4int A, G4int lvl=0) const
 
G4double GetLifeTime (const G4ParticleDefinition *) const
 
G4double GetLifeTime (G4int Z, G4int A, G4double E, G4Ions::G4FloatLevelBase flb=G4Ions::G4FloatLevelBase::no_Float) const
 
G4double GetLifeTime (G4int Z, G4int A, G4double E, char flbChar) const
 
G4int Entries () const
 
G4ParticleDefinitionGetParticle (G4int index) const
 
G4bool Contains (const G4ParticleDefinition *particle) const
 
void Insert (const G4ParticleDefinition *particle)
 
void Remove (const G4ParticleDefinition *particle)
 
void clear ()
 
G4int size () const
 
void DumpTable (const G4String &particle_name="ALL") const
 
void InitializeLightIons ()
 
G4ParticleDefinitionGetMuonicAtom (G4Ions const *)
 
G4ParticleDefinitionGetMuonicAtom (G4int Z, G4int A)
 

Static Public Member Functions

static G4IonTableGetIonTable ()
 
static G4bool IsIon (const G4ParticleDefinition *)
 
static G4bool IsAntiIon (const G4ParticleDefinition *)
 
static G4int GetNucleusEncoding (G4int Z, G4int A, G4double E=0.0, G4int lvl=0)
 
static G4int GetNucleusEncoding (G4int Z, G4int A, G4int L, G4double E=0.0, G4int lvl=0)
 
static G4bool GetNucleusByEncoding (G4int encoding, G4int &Z, G4int &A, G4double &E, G4int &lvl)
 
static G4bool GetNucleusByEncoding (G4int encoding, G4int &Z, G4int &A, G4int &L, G4double &E, G4int &lvl)
 

Static Public Attributes

static G4ThreadLocal G4IonListfIonList = 0
 
static G4ThreadLocal
std::vector< G4VIsotopeTable * > * 
fIsotopeTableList = 0
 
static G4IonListfIonListShadow = 0
 
static std::vector
< G4VIsotopeTable * > * 
fIsotopeTableListShadow = 0
 
static const G4String elementName [numberOfElements]
 

Protected Member Functions

 G4IonTable (const G4IonTable &right)
 
G4IonTableoperator= (const G4IonTable &)
 
G4ParticleDefinitionFindIonInMaster (G4int Z, G4int A, G4int lvl=0)
 
G4ParticleDefinitionFindIonInMaster (G4int Z, G4int A, G4int L, G4int lvl)
 
G4ParticleDefinitionFindIonInMaster (G4int Z, G4int A, G4double E, G4Ions::G4FloatLevelBase flb, G4int J=0)
 
G4ParticleDefinitionFindIonInMaster (G4int Z, G4int A, G4int L, G4double E, G4Ions::G4FloatLevelBase flb, G4int J=0)
 
G4ParticleDefinitionCreateIon (G4int Z, G4int A, G4double E, G4Ions::G4FloatLevelBase flb)
 
G4ParticleDefinitionCreateIon (G4int Z, G4int A, G4int L, G4double E, G4Ions::G4FloatLevelBase flb)
 
G4ParticleDefinitionCreateIon (G4int Z, G4int A, G4int lvl=0)
 
G4ParticleDefinitionCreateIon (G4int Z, G4int A, G4int L, G4int lvl)
 
void InsertWorker (const G4ParticleDefinition *particle)
 
G4IsotopePropertyFindIsotope (G4int Z, G4int A, G4double E, G4Ions::G4FloatLevelBase flb) const
 
G4IsotopePropertyFindIsotope (G4int Z, G4int A, G4int lvl) const
 
G4ParticleDefinitionGetLightIon (G4int Z, G4int A) const
 
G4ParticleDefinitionGetLightAntiIon (G4int Z, G4int A) const
 
G4bool IsLightIon (const G4ParticleDefinition *) const
 
G4bool IsLightAntiIon (const G4ParticleDefinition *) const
 
void AddProcessManager (G4ParticleDefinition *)
 
G4int GetVerboseLevel () const
 

Private Attributes

G4NuclideTablepNuclideTable
 
G4bool isIsomerCreated
 
G4int n_error
 

Detailed Description

Definition at line 65 of file G4IonTable.hh.

Member Typedef Documentation

typedef std::multimap<G4int, const G4ParticleDefinition*> G4IonTable::G4IonList

Definition at line 74 of file G4IonTable.hh.

typedef std::multimap<G4int, const G4ParticleDefinition*>::iterator G4IonTable::G4IonListIterator

Definition at line 75 of file G4IonTable.hh.

Member Enumeration Documentation

anonymous enum
Enumerator
numberOfElements 

Definition at line 327 of file G4IonTable.hh.

Constructor & Destructor Documentation

G4IonTable::G4IonTable ( )

Definition at line 121 of file G4IonTable.cc.

References fIonList, fIonListShadow, fIsotopeTableList, fIsotopeTableListShadow, pNuclideTable, PrepareNuclideTable(), and RegisterIsotopeTable().

+ Here is the call graph for this function:

G4IonTable::G4IonTable ( const G4IonTable right)
protected
G4IonTable::~G4IonTable ( )
virtual

Definition at line 190 of file G4IonTable.cc.

References fIonList, fIsotopeTableList, and G4NuclideTable::GetNuclideTable().

+ Here is the call graph for this function:

Member Function Documentation

void G4IonTable::AddProcessManager ( G4ParticleDefinition ion)
protected

Definition at line 1504 of file G4IonTable.cc.

References FatalException, G4cout, G4endl, G4Exception(), G4ParticleTable::GetGenericIon(), G4ParticleDefinition::GetParticleDefinitionID(), G4ParticleDefinition::GetParticleName(), G4ParticleTable::GetParticleTable(), G4ParticleDefinition::GetProcessManager(), and G4ParticleDefinition::SetParticleDefinitionID().

Referenced by CreateIon(), and GetMuonicAtom().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4IonTable::clear ( void  )

Definition at line 1345 of file G4IonTable.cc.

References fIonList, G4cout, G4endl, G4Exception(), G4ParticleTable::GetParticleTable(), GetVerboseLevel(), and JustWarning.

Referenced by G4ParticleTable::RemoveAllParticles().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4IonTable::Contains ( const G4ParticleDefinition particle) const

Definition at line 1667 of file G4IonTable.cc.

References A(), encoding, fIonListShadow, G4ParticleDefinition::GetAtomicMass(), G4ParticleDefinition::GetAtomicNumber(), GetNucleusEncoding(), G4ParticleDefinition::GetQuarkContent(), IsIon(), and LL.

Referenced by Insert().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4IonTable::CreateAllIon ( )

Definition at line 1606 of file G4IonTable.cc.

References PreloadNuclide().

Referenced by G4ParticleMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4IonTable::CreateAllIsomer ( )

Definition at line 1612 of file G4IonTable.cc.

References PreloadNuclide().

Referenced by G4ParticleMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4ParticleDefinition * G4IonTable::CreateIon ( G4int  Z,
G4int  A,
G4int  lvl = 0 
)
protected

Definition at line 474 of file G4IonTable.cc.

References CreateIon(), G4Exception(), JustWarning, and G4Ions::no_Float.

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::CreateIon ( G4int  Z,
G4int  A,
G4int  L,
G4int  lvl 
)
protected

Definition at line 484 of file G4IonTable.cc.

References CreateIon(), G4Exception(), JustWarning, and G4Ions::no_Float.

+ Here is the call graph for this function:

void G4IonTable::DestroyWorkerG4IonTable ( )

Definition at line 217 of file G4IonTable.cc.

References fIonList, fIsotopeTableList, and G4NuclideTable::GetNuclideTable().

Referenced by G4ParticleTable::DestroyWorkerG4ParticleTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4IonTable::DumpTable ( const G4String particle_name = "ALL") const

Definition at line 1466 of file G4IonTable.cc.

References G4ParticleDefinition::DumpTable(), fIonList, and G4ParticleDefinition::GetParticleName().

+ Here is the call graph for this function:

G4int G4IonTable::Entries ( ) const

Definition at line 1689 of file G4IonTable.cc.

References fIonList.

Referenced by DMXPhysicsList::ConstructGeneral(), and GetParticle().

+ Here is the caller graph for this function:

G4ParticleDefinition * G4IonTable::FindIon ( G4int  Z,
G4int  A,
G4int  lvl = 0 
)

Definition at line 849 of file G4IonTable.cc.

References A(), encoding, fIonList, G4cout, G4endl, G4Exception(), G4ParticleDefinition::GetAtomicMass(), G4ParticleDefinition::GetAtomicNumber(), GetLightIon(), GetNucleusEncoding(), GetVerboseLevel(), and JustWarning.

Referenced by FindIon(), FindIonInMaster(), and GetIon().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4ParticleDefinition * G4IonTable::FindIon ( G4int  Z,
G4int  A,
G4int  L,
G4int  lvl 
)

Definition at line 901 of file G4IonTable.cc.

References A(), encoding, FindIon(), fIonList, G4cout, G4endl, G4Exception(), G4ParticleDefinition::GetAtomicMass(), G4ParticleDefinition::GetAtomicNumber(), GetNucleusEncoding(), G4ParticleDefinition::GetQuarkContent(), GetVerboseLevel(), JustWarning, and LL.

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::FindIon ( G4int  Z,
G4int  A,
G4double  E,
G4int  J = 0 
)

Definition at line 730 of file G4IonTable.cc.

References FindIon(), and G4Ions::no_Float.

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::FindIon ( G4int  Z,
G4int  A,
G4double  E,
G4Ions::G4FloatLevelBase  flb,
G4int  J = 0 
)

Definition at line 739 of file G4IonTable.cc.

References A(), encoding, fIonList, G4cout, G4endl, G4Exception(), G4ParticleDefinition::GetAtomicMass(), G4ParticleDefinition::GetAtomicNumber(), G4NuclideTable::GetLevelTolerance(), GetLightIon(), GetNucleusEncoding(), GetVerboseLevel(), JustWarning, keV, and pNuclideTable.

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::FindIon ( G4int  Z,
G4int  A,
G4double  E,
char  flbChar,
G4int  J = 0 
)

Definition at line 734 of file G4IonTable.cc.

References FindIon(), and G4Ions::FloatLevelBase().

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::FindIon ( G4int  Z,
G4int  A,
G4int  L,
G4double  E,
G4int  J = 0 
)

Definition at line 791 of file G4IonTable.cc.

References FindIon(), and G4Ions::no_Float.

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::FindIon ( G4int  Z,
G4int  A,
G4int  L,
G4double  E,
G4Ions::G4FloatLevelBase  flb,
G4int  J = 0 
)

Definition at line 800 of file G4IonTable.cc.

References A(), encoding, FindIon(), fIonList, G4cout, G4endl, G4Exception(), G4ParticleDefinition::GetAtomicMass(), G4ParticleDefinition::GetAtomicNumber(), G4NuclideTable::GetLevelTolerance(), GetNucleusEncoding(), G4ParticleDefinition::GetQuarkContent(), GetVerboseLevel(), JustWarning, keV, LL, and pNuclideTable.

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::FindIon ( G4int  Z,
G4int  A,
G4int  L,
G4double  E,
char  flbChar,
G4int  J = 0 
)

Definition at line 795 of file G4IonTable.cc.

References FindIon(), and G4Ions::FloatLevelBase().

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::FindIonInMaster ( G4int  Z,
G4int  A,
G4int  lvl = 0 
)
protected

Definition at line 1773 of file G4IonTable.cc.

References A(), encoding, fIonListShadow, G4ParticleDefinition::GetAtomicMass(), G4ParticleDefinition::GetAtomicNumber(), and GetNucleusEncoding().

Referenced by GetIon().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4ParticleDefinition * G4IonTable::FindIonInMaster ( G4int  Z,
G4int  A,
G4int  L,
G4int  lvl 
)
protected

Definition at line 1802 of file G4IonTable.cc.

References A(), encoding, FindIon(), fIonListShadow, G4ParticleDefinition::GetAtomicMass(), G4ParticleDefinition::GetAtomicNumber(), GetNucleusEncoding(), G4ParticleDefinition::GetQuarkContent(), and LL.

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::FindIonInMaster ( G4int  Z,
G4int  A,
G4double  E,
G4Ions::G4FloatLevelBase  flb,
G4int  J = 0 
)
protected

Definition at line 1702 of file G4IonTable.cc.

References A(), encoding, fIonListShadow, G4ParticleDefinition::GetAtomicMass(), G4ParticleDefinition::GetAtomicNumber(), G4NuclideTable::GetLevelTolerance(), GetNucleusEncoding(), and pNuclideTable.

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::FindIonInMaster ( G4int  Z,
G4int  A,
G4int  L,
G4double  E,
G4Ions::G4FloatLevelBase  flb,
G4int  J = 0 
)
protected

Definition at line 1736 of file G4IonTable.cc.

References A(), encoding, FindIon(), fIonListShadow, G4ParticleDefinition::GetAtomicMass(), G4ParticleDefinition::GetAtomicNumber(), G4NuclideTable::GetLevelTolerance(), GetNucleusEncoding(), G4ParticleDefinition::GetQuarkContent(), LL, and pNuclideTable.

+ Here is the call graph for this function:

G4IsotopeProperty * G4IonTable::FindIsotope ( G4int  Z,
G4int  A,
G4double  E,
G4Ions::G4FloatLevelBase  flb 
) const
protected

Definition at line 1568 of file G4IonTable.cc.

References fIsotopeTableList, and G4VIsotopeTable::GetIsotope().

Referenced by CreateIon(), GetLifeTime(), and GetNucleusMass().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4IsotopeProperty * G4IonTable::FindIsotope ( G4int  Z,
G4int  A,
G4int  lvl 
) const
protected

Definition at line 1587 of file G4IonTable.cc.

References fIsotopeTableList, and G4VIsotopeTable::GetIsotope().

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::GetIon ( G4int  Z,
G4int  A,
G4int  lvl = 0 
)

Definition at line 503 of file G4IonTable.cc.

References FindIon(), FindIonInMaster(), G4cout, G4endl, G4Exception(), G4MUTEXLOCK, G4MUTEXUNLOCK, GetVerboseLevel(), InsertWorker(), G4Threading::IsWorkerThread(), and JustWarning.

Referenced by G4RadioactiveDecay::AddDecayRateTable(), G4ParticleHPFinalState::adjust_final_state(), G4ParticleHPFissionFS::ApplyYourself(), G4ParticleHPCaptureFS::ApplyYourself(), G4HadronElastic::ApplyYourself(), G4ChargeExchange::ApplyYourself(), G4NeutronRadCapture::ApplyYourself(), G4LENDModel::ApplyYourself(), G4ParticleHPChannelList::ApplyYourself(), G4LENDElastic::ApplyYourself(), G4QMDReaction::ApplyYourself(), G4LMsdGenerator::ApplyYourself(), G4INCLXXInterface::ApplyYourself(), G4ParticleHPInelasticBaseFS::BaseApply(), G4ExcitationHandler::BreakItUp(), G4EmCorrections::BuildCorrectionVector(), G4ParticleHPInelasticCompFS::CompositeApply(), G4DNARuddIonisationExtendedModel::CrossSectionPerVolume(), G4ITDecay::DecayIt(), G4RadioactiveDecay::DecayIt(), G4EmCalculator::FindIon(), G4AlphaDecay::G4AlphaDecay(), G4BetaMinusDecay::G4BetaMinusDecay(), G4BetaPlusDecay::G4BetaPlusDecay(), G4ECDecay::G4ECDecay(), G4ITDecay::G4ITDecay(), G4NeutronDecay::G4NeutronDecay(), G4ProtonDecay::G4ProtonDecay(), B3PrimaryGeneratorAction::GeneratePrimaries(), G4NuclNuclDiffuseElastic::GetInvCoulombElasticXsc(), G4DiffuseElastic::GetInvCoulombElasticXsc(), G4NuclNuclDiffuseElastic::GetInvElasticSumXsc(), G4DiffuseElastic::GetInvElasticSumXsc(), G4NuclNuclDiffuseElastic::GetInvElasticXsc(), G4DiffuseElastic::GetInvElasticXsc(), GetIon(), GetMuonicAtom(), G4FissionProductYieldDist::GetParticleDefinition(), G4ChipsHyperonElasticXS::GetQ2max(), G4ChipsProtonElasticXS::GetQ2max(), G4ChipsKaonPlusElasticXS::GetQ2max(), G4ChipsPionPlusElasticXS::GetQ2max(), G4ChipsAntiBaryonElasticXS::GetQ2max(), G4ChipsKaonMinusElasticXS::GetQ2max(), G4ChipsPionMinusElasticXS::GetQ2max(), G4ChipsNeutronElasticXS::GetQ2max(), G4BinaryCascade::HighEnergyModelFSProducts(), G4DNARuddIonisationExtendedModel::Initialise(), G4ParticleGunMessenger::IonCommand(), G4GeneralParticleSourceMessenger::IonCommand(), G4ParticleGunMessenger::IonLevelCommand(), G4GeneralParticleSourceMessenger::IonLvlCommand(), G4InuclNuclei::makeDefinition(), PreloadNuclide(), G4eSingleCoulombScatteringModel::SampleSecondaries(), G4hCoulombScatteringModel::SampleSecondaries(), G4IonCoulombScatteringModel::SampleSecondaries(), G4eCoulombScatteringModel::SampleSecondaries(), G4QuasiElasticChannel::Scatter(), G4ScreenedCoulombCrossSection::SelectRandomUnweightedTarget(), DMXParticleSourceMessenger::SetNewValue(), G4AblaInterface::toG4ParticleDefinition(), and G4INCLXXInterface::toG4ParticleDefinition().

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::GetIon ( G4int  Z,
G4int  A,
G4int  L,
G4int  lvl 
)

Definition at line 543 of file G4IonTable.cc.

References CreateIon(), FindIon(), FindIonInMaster(), G4cout, G4endl, G4MUTEXLOCK, G4MUTEXUNLOCK, GetIon(), GetVerboseLevel(), InsertWorker(), and G4Threading::IsWorkerThread().

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::GetIon ( G4int  Z,
G4int  A,
G4double  E,
G4int  J = 0 
)

Definition at line 600 of file G4IonTable.cc.

References GetIon(), and G4Ions::no_Float.

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::GetIon ( G4int  Z,
G4int  A,
G4double  E,
G4Ions::G4FloatLevelBase  flb,
G4int  J = 0 
)

Definition at line 609 of file G4IonTable.cc.

References CreateIon(), FindIon(), FindIonInMaster(), G4cout, G4endl, G4MUTEXLOCK, G4MUTEXUNLOCK, GetVerboseLevel(), InsertWorker(), G4Threading::IsWorkerThread(), and keV.

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::GetIon ( G4int  Z,
G4int  A,
G4double  E,
char  flbChar,
G4int  J = 0 
)

Definition at line 604 of file G4IonTable.cc.

References G4Ions::FloatLevelBase(), and GetIon().

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::GetIon ( G4int  Z,
G4int  A,
G4int  L,
G4double  E,
G4int  J = 0 
)

Definition at line 648 of file G4IonTable.cc.

References GetIon(), and G4Ions::no_Float.

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::GetIon ( G4int  Z,
G4int  A,
G4int  L,
G4double  E,
G4Ions::G4FloatLevelBase  flb,
G4int  J = 0 
)

Definition at line 657 of file G4IonTable.cc.

References CreateIon(), FindIon(), FindIonInMaster(), G4cout, G4endl, G4MUTEXLOCK, G4MUTEXUNLOCK, GetIon(), GetVerboseLevel(), InsertWorker(), G4Threading::IsWorkerThread(), and keV.

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::GetIon ( G4int  Z,
G4int  A,
G4int  L,
G4double  E,
char  flbChar,
G4int  J = 0 
)

Definition at line 652 of file G4IonTable.cc.

References G4Ions::FloatLevelBase(), and GetIon().

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::GetIon ( G4int  encoding)

Definition at line 708 of file G4IonTable.cc.

References A(), G4cout, G4endl, G4Exception(), GetIon(), GetNucleusByEncoding(), GetVerboseLevel(), JustWarning, and LL.

+ Here is the call graph for this function:

const G4String & G4IonTable::GetIonName ( G4int  Z,
G4int  A,
G4int  lvl = 0 
) const

Definition at line 1094 of file G4IonTable.cc.

References A(), elementName, G4ThreadLocal, G4InuclParticleNames::name(), numberOfElements, and G4AutoDelete::Register().

Referenced by G4INCLXXInterface::ApplyYourself(), CreateIon(), GetIonName(), G4LENDManager::GetLENDTarget(), and GetMuonicAtom().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4String & G4IonTable::GetIonName ( G4int  Z,
G4int  A,
G4double  E,
G4Ions::G4FloatLevelBase  flb = G4Ions::G4FloatLevelBase::no_Float 
) const

Definition at line 1045 of file G4IonTable.cc.

References G4Ions::FloatLevelBaseChar(), G4ThreadLocal, GetIonName(), keV, G4InuclParticleNames::name(), G4Ions::no_Float, and G4AutoDelete::Register().

+ Here is the call graph for this function:

const G4String & G4IonTable::GetIonName ( G4int  Z,
G4int  A,
G4int  L,
G4double  E,
G4Ions::G4FloatLevelBase  flb = G4Ions::G4FloatLevelBase::no_Float 
) const

Definition at line 1078 of file G4IonTable.cc.

References G4ThreadLocal, GetIonName(), LL, G4InuclParticleNames::name(), and G4AutoDelete::Register().

+ Here is the call graph for this function:

const G4String & G4IonTable::GetIonName ( G4int  Z,
G4int  A,
G4int  L,
G4int  lvl 
) const

Definition at line 1132 of file G4IonTable.cc.

References G4ThreadLocal, GetIonName(), LL, G4InuclParticleNames::name(), and G4AutoDelete::Register().

+ Here is the call graph for this function:

static G4IonTable* G4IonTable::GetIonTable ( )
inlinestatic

Definition at line 78 of file G4IonTable.hh.

References G4ParticleTable::GetIonTable(), and G4ParticleTable::GetParticleTable().

Referenced by G4ParticleHPFinalState::adjust_final_state(), G4ParticleHPFissionFS::ApplyYourself(), G4ParticleHPCaptureFS::ApplyYourself(), G4LENDModel::ApplyYourself(), G4ParticleHPChannelList::ApplyYourself(), G4LENDCapture::ApplyYourself(), G4LENDElastic::ApplyYourself(), G4LENDFission::ApplyYourself(), G4ParticleHPElasticFS::ApplyYourself(), G4QMDReaction::ApplyYourself(), G4LENDInelastic::ApplyYourself(), G4EMDissociation::ApplyYourself(), G4MuonMinusAtomicCapture::AtRestDoIt(), G4ParticleHPInelasticBaseFS::BaseApply(), G4ParticleHPInelasticCompFS::CompositeApply(), G4IonDEDXScalingICRU73::CreateReferenceParticles(), G4DNARuddIonisationExtendedModel::CrossSectionPerVolume(), B3PrimaryGeneratorAction::GeneratePrimaries(), G4DNARuddIonisationExtendedModel::Initialise(), G4FissionProductYieldDist::Initialize(), G4ParticleGunMessenger::IonCommand(), G4GeneralParticleSourceMessenger::IonCommand(), G4ParticleGunMessenger::IonLevelCommand(), G4GeneralParticleSourceMessenger::IonLvlCommand(), G4ParticleHPIsotropic::Sample(), G4ParticleHPContAngularPar::Sample(), G4ParticleHPEnAngCorrelation::Sample(), G4ScreenedCoulombCrossSection::SelectRandomUnweightedTarget(), DMXParticleSourceMessenger::SetNewValue(), G4AblaInterface::toG4ParticleDefinition(), and G4ParticleHPInelasticCompFS::two_body_reaction().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4IonTable::GetIsomerMass ( G4int  Z,
G4int  A,
G4int  lvl = 0 
) const

Definition at line 1329 of file G4IonTable.cc.

References GetNucleusMass().

+ Here is the call graph for this function:

G4VIsotopeTable * G4IonTable::GetIsotopeTable ( size_t  idx = 0) const

Definition at line 1557 of file G4IonTable.cc.

References size().

+ Here is the call graph for this function:

G4double G4IonTable::GetLifeTime ( const G4ParticleDefinition particle) const

Definition at line 1833 of file G4IonTable.cc.

References FatalException, G4Exception(), G4ParticleDefinition::GetPDGLifeTime(), G4ParticleDefinition::IsGeneralIon(), and pNuclideTable.

Referenced by GetLifeTime().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4IonTable::GetLifeTime ( G4int  Z,
G4int  A,
G4double  E,
G4Ions::G4FloatLevelBase  flb = G4Ions::G4FloatLevelBase::no_Float 
) const

Definition at line 1860 of file G4IonTable.cc.

References FindIsotope(), and G4IsotopeProperty::GetLifeTime().

+ Here is the call graph for this function:

G4double G4IonTable::GetLifeTime ( G4int  Z,
G4int  A,
G4double  E,
char  flbChar 
) const

Definition at line 1856 of file G4IonTable.cc.

References G4Ions::FloatLevelBase(), and GetLifeTime().

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::GetLightAntiIon ( G4int  Z,
G4int  A 
) const
protected

Definition at line 1242 of file G4IonTable.cc.

References antilightions::Init(), antilightions::p_alpha, antilightions::p_deuteron, antilightions::p_He3, antilightions::p_proton, and antilightions::p_triton.

+ Here is the call graph for this function:

G4ParticleDefinition * G4IonTable::GetLightIon ( G4int  Z,
G4int  A 
) const
protected

Definition at line 1217 of file G4IonTable.cc.

References lightions::Init(), lightions::p_alpha, lightions::p_deuteron, lightions::p_He3, lightions::p_proton, and lightions::p_triton.

Referenced by FindIon(), and GetNucleusMass().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4ParticleDefinition * G4IonTable::GetMuonicAtom ( G4Ions const *  base)

Definition at line 1871 of file G4IonTable.cc.

References A(), AddProcessManager(), G4MuonicAtomHelper::ConstructMuonicAtom(), encoding, FatalException, fIonList, fIonListShadow, G4Exception(), G4MUTEXLOCK, G4MUTEXUNLOCK, G4ParticleDefinition::GetAtomicMass(), G4ParticleDefinition::GetAtomicNumber(), GetIonName(), GetNucleusEncoding(), IsIon(), G4Threading::IsWorkerThread(), and G4InuclParticleNames::name().

Referenced by G4MuonMinusAtomicCapture::AtRestDoIt(), and GetMuonicAtom().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4ParticleDefinition * G4IonTable::GetMuonicAtom ( G4int  Z,
G4int  A 
)

Definition at line 1950 of file G4IonTable.cc.

References GetIon(), and GetMuonicAtom().

+ Here is the call graph for this function:

G4bool G4IonTable::GetNucleusByEncoding ( G4int  encoding,
G4int Z,
G4int A,
G4double E,
G4int lvl 
)
static

Definition at line 990 of file G4IonTable.cc.

Referenced by GetIon().

+ Here is the caller graph for this function:

G4bool G4IonTable::GetNucleusByEncoding ( G4int  encoding,
G4int Z,
G4int A,
G4int L,
G4double E,
G4int lvl 
)
static

!!not supported for excitation states !!!

Definition at line 1011 of file G4IonTable.cc.

References LL.

G4int G4IonTable::GetNucleusEncoding ( G4int  Z,
G4int  A,
G4double  E = 0.0,
G4int  lvl = 0 
)
static

Definition at line 949 of file G4IonTable.cc.

References encoding.

Referenced by Contains(), CreateIon(), FindIon(), FindIonInMaster(), GetMuonicAtom(), G4LENDManager::GetNucleusEncoding(), GetNucleusEncoding(), GetNucleusMass(), Insert(), InsertWorker(), G4InuclNuclei::makeNuclearFragment(), and Remove().

+ Here is the caller graph for this function:

G4int G4IonTable::GetNucleusEncoding ( G4int  Z,
G4int  A,
G4int  L,
G4double  E = 0.0,
G4int  lvl = 0 
)
static

Definition at line 970 of file G4IonTable.cc.

References encoding, and GetNucleusEncoding().

+ Here is the call graph for this function:

G4double G4IonTable::GetNucleusMass ( G4int  Z,
G4int  A,
G4int  L = 0,
G4int  lvl = 0 
) const

Definition at line 1270 of file G4IonTable.cc.

References A(), encoding, EventMustBeAborted, FindIsotope(), fIonList, G4cout, G4endl, G4Exception(), G4ParticleDefinition::GetAtomicMass(), G4ParticleDefinition::GetAtomicNumber(), G4IsotopeProperty::GetEnergy(), GetLightIon(), G4NucleiProperties::GetNuclearMass(), G4HyperNucleiProperties::GetNuclearMass(), GetNucleusEncoding(), G4ParticleDefinition::GetPDGMass(), and GetVerboseLevel().

Referenced by CreateIon(), GetIonMass(), and GetIsomerMass().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4int G4IonTable::GetNumberOfElements ( ) const
inline

Definition at line 346 of file G4IonTable.hh.

References numberOfElements.

G4ParticleDefinition * G4IonTable::GetParticle ( G4int  index) const

Definition at line 1643 of file G4IonTable.cc.

References Entries(), fIonList, G4cout, G4endl, and GetVerboseLevel().

Referenced by DMXPhysicsList::ConstructGeneral().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4int G4IonTable::GetVerboseLevel ( ) const
protected

Definition at line 1498 of file G4IonTable.cc.

References G4ParticleTable::GetParticleTable(), and G4ParticleTable::GetVerboseLevel().

Referenced by clear(), CreateIon(), FindIon(), GetIon(), GetNucleusMass(), GetParticle(), and Remove().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4IonTable::InitializeLightIons ( )

Definition at line 182 of file G4IonTable.cc.

References lightions::Init(), and antilightions::Init().

Referenced by G4RunManagerKernel::SetupPhysics().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4IonTable::Insert ( const G4ParticleDefinition particle)

Definition at line 1363 of file G4IonTable.cc.

References A(), Contains(), encoding, fIonListShadow, G4ParticleDefinition::GetAtomicMass(), G4ParticleDefinition::GetAtomicNumber(), GetNucleusEncoding(), G4ParticleDefinition::GetQuarkContent(), IsIon(), and LL.

Referenced by G4ParticleTable::Insert().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4IonTable::InsertWorker ( const G4ParticleDefinition particle)
protected

Definition at line 1378 of file G4IonTable.cc.

References A(), encoding, fIonList, G4ParticleDefinition::GetAtomicMass(), G4ParticleDefinition::GetAtomicNumber(), GetNucleusEncoding(), G4ParticleDefinition::GetQuarkContent(), and LL.

Referenced by GetIon().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4IonTable::IsAntiIon ( const G4ParticleDefinition particle)
static

Definition at line 1172 of file G4IonTable.cc.

References G4ParticleDefinition::GetAtomicMass(), G4ParticleDefinition::GetAtomicNumber(), G4ParticleDefinition::GetBaryonNumber(), G4ParticleDefinition::GetParticleName(), and G4ParticleDefinition::GetParticleType().

Referenced by G4ParticleDefinition::DumpTable(), and G4ParticleDefinition::G4ParticleDefinition().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4IonTable::IsIon ( const G4ParticleDefinition particle)
static

Definition at line 1147 of file G4IonTable.cc.

References G4ParticleDefinition::GetAtomicMass(), G4ParticleDefinition::GetAtomicNumber(), G4ParticleDefinition::GetBaryonNumber(), G4ParticleDefinition::GetParticleName(), G4ParticleDefinition::GetParticleType(), and G4InuclParticleNames::proton.

Referenced by G4DynamicParticle::AllocateElectronOccupancy(), Contains(), G4ParticleDefinition::DumpTable(), G4ParticleDefinition::G4ParticleDefinition(), GetMuonicAtom(), G4ParticleTable::Insert(), Insert(), G4ParticleTable::Remove(), and Remove().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4IonTable::IsLightAntiIon ( const G4ParticleDefinition particle) const
protected

Definition at line 1207 of file G4IonTable.cc.

References G4ParticleDefinition::GetParticleName().

+ Here is the call graph for this function:

G4bool G4IonTable::IsLightIon ( const G4ParticleDefinition particle) const
protected

Definition at line 1198 of file G4IonTable.cc.

References G4ParticleDefinition::GetParticleName().

+ Here is the call graph for this function:

G4IonTable& G4IonTable::operator= ( const G4IonTable )
inlineprotected

Definition at line 93 of file G4IonTable.hh.

void G4IonTable::PreloadNuclide ( )

Definition at line 1624 of file G4IonTable.cc.

References A(), G4NuclideTable::entries(), G4NuclideTable::GenerateNuclide(), G4IsotopeProperty::GetAtomicMass(), G4IsotopeProperty::GetAtomicNumber(), G4IsotopeProperty::GetEnergy(), GetIon(), G4NuclideTable::GetIsotopeByIndex(), isIsomerCreated, G4Threading::IsMultithreadedApplication(), and pNuclideTable.

Referenced by CreateAllIon(), and CreateAllIsomer().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4IonTable::PrepareNuclideTable ( )

Definition at line 1618 of file G4IonTable.cc.

References G4NuclideTable::GetNuclideTable(), and pNuclideTable.

Referenced by G4IonTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4IonTable::RegisterIsotopeTable ( G4VIsotopeTable table)

Definition at line 1543 of file G4IonTable.cc.

References fIsotopeTableList, G4VIsotopeTable::GetName(), and G4InuclParticleNames::name().

Referenced by G4IonTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4IonTable::Remove ( const G4ParticleDefinition particle)

Definition at line 1404 of file G4IonTable.cc.

References A(), encoding, fIonListShadow, G4cout, G4endl, G4Exception(), G4State_PreInit, G4ParticleDefinition::GetAtomicMass(), G4ParticleDefinition::GetAtomicNumber(), G4StateManager::GetCurrentState(), GetNucleusEncoding(), G4ParticleDefinition::GetParticleName(), G4ParticleTable::GetParticleTable(), G4ParticleDefinition::GetQuarkContent(), G4StateManager::GetStateManager(), GetVerboseLevel(), IsIon(), G4Threading::IsWorkerThread(), JustWarning, and LL.

Referenced by G4ParticleTable::Remove().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4int G4IonTable::size ( ) const

Definition at line 1695 of file G4IonTable.cc.

References fIonList.

Referenced by GetIsotopeTable().

+ Here is the caller graph for this function:

void G4IonTable::SlaveG4IonTable ( )

Definition at line 151 of file G4IonTable.cc.

References FatalException, and G4Exception().

+ Here is the call graph for this function:

void G4IonTable::WorkerG4IonTable ( )

Definition at line 156 of file G4IonTable.cc.

References fIonList, fIonListShadow, fIsotopeTableList, and fIsotopeTableListShadow.

Referenced by G4ParticleTable::WorkerG4ParticleTable().

+ Here is the caller graph for this function:

Member Data Documentation

const G4String G4IonTable::elementName
static
Initial value:
= {
"H", "He",
"Li", "Be", "B", "C", "N", "O", "F", "Ne",
"Na", "Mg", "Al", "Si", "P", "S", "Cl", "Ar",
"K", "Ca", "Sc", "Ti", "V", "Cr", "Mn", "Fe", "Co", "Ni", "Cu", "Zn", "Ga", "Ge", "As", "Se", "Br", "Kr",
"Rb", "Sr", "Y", "Zr", "Nb", "Mo","Tc", "Ru", "Rh", "Pd", "Ag", "Cd", "In", "Sn", "Sb", "Te", "I", "Xe",
"Cs", "Ba",
"La", "Ce", "Pr", "Nd", "Pm", "Sm", "Eu", "Gd", "Tb", "Dy", "Ho", "Er", "Tm", "Yb", "Lu",
"Hf", "Ta", "W", "Re", "Os", "Ir", "Pt", "Au", "Hg", "Tl", "Pb", "Bi", "Po", "At", "Rn",
"Fr", "Ra",
"Ac", "Th", "Pa", "U", "Np", "Pu", "Am", "Cm", "Bk", "Cf", "Es", "Fm", "Md", "No", "Lr",
"Rf", "Db", "Sg", "Bh", "Hs", "Mt", "Ds", "Rg",
"Cp", "Uut", "Fl","Uup","Lv","Uus","Uuo"
}

Definition at line 328 of file G4IonTable.hh.

Referenced by GetIonName().

G4IonTable::G4IonList * G4IonTable::fIonListShadow = 0
static
G4ThreadLocal std::vector< G4VIsotopeTable * > * G4IonTable::fIsotopeTableList = 0
static
std::vector< G4VIsotopeTable * > * G4IonTable::fIsotopeTableListShadow = 0
static

Definition at line 319 of file G4IonTable.hh.

Referenced by G4IonTable(), and WorkerG4IonTable().

G4bool G4IonTable::isIsomerCreated
private

Definition at line 312 of file G4IonTable.hh.

Referenced by PreloadNuclide().

G4int G4IonTable::n_error
private

Definition at line 334 of file G4IonTable.hh.

G4NuclideTable* G4IonTable::pNuclideTable
private

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