Geant4  10.01.p03
G4NuclearLevelManager Class Reference

#include <G4NuclearLevelManager.hh>

Public Member Functions

 G4NuclearLevelManager (G4int Z, G4int A, const G4String &filename)
 
 G4NuclearLevelManager (const G4NuclearLevelManager &right)
 
 ~G4NuclearLevelManager ()
 
void SetNucleus (G4int Z, G4int A, const G4String &filename)
 
G4bool IsValid () const
 
G4int NumberOfLevels () const
 
const G4NuclearLevelGetLevel (G4int i) const
 
const G4NuclearLevelNearestLevel (G4double energy, G4double eDiffMax=1.e+8) const
 
const G4NuclearLevelLowestLevel () const
 
const G4NuclearLevelHighestLevel () const
 
G4double MinLevelEnergy () const
 
G4double MaxLevelEnergy () const
 
void PrintLevels ()
 
void PrintAll ()
 

Private Member Functions

const G4NuclearLevelManageroperator= (const G4NuclearLevelManager &right)
 
G4bool operator== (const G4NuclearLevelManager &right) const
 
G4bool operator!= (const G4NuclearLevelManager &right) const
 
G4bool Read (std::ifstream &aDataFile)
 
G4bool ReadDataLine (std::ifstream &dataFile)
 
G4bool ReadDataItem (std::istream &dataFile, G4double &x)
 
void ProcessDataLine ()
 
void MakeLevels (const G4String &filename)
 
void ClearLevels ()
 
G4NuclearLevelUseLevelOrMakeNew (G4NuclearLevel *level)
 
void AddDataToLevel (G4NuclearLevel *level)
 
void FinishLevel (G4NuclearLevel *level)
 

Private Attributes

G4int _nucleusA
 
G4int _nucleusZ
 
G4bool _validity
 
G4PtrLevelVector_levels
 

Static Private Attributes

static G4double _levelEnergy =0.
 
static G4double _gammaEnergy =0.
 
static G4double _probability =0.
 
static G4double _polarity =0.
 
static G4double _halfLife =0.
 
static G4double _angularMomentum =0.
 
static G4double _kCC =0.
 
static G4double _l1CC =0.
 
static G4double _l2CC =0.
 
static G4double _l3CC =0.
 
static G4double _m1CC =0.
 
static G4double _m2CC =0.
 
static G4double _m3CC =0.
 
static G4double _m4CC =0.
 
static G4double _m5CC =0.
 
static G4double _nPlusCC =0.
 
static G4double _totalCC =0.
 

Detailed Description

Definition at line 65 of file G4NuclearLevelManager.hh.

Constructor & Destructor Documentation

G4NuclearLevelManager::G4NuclearLevelManager ( G4int  Z,
G4int  A,
const G4String filename 
)

Definition at line 82 of file G4NuclearLevelManager.cc.

References MakeLevels().

+ Here is the call graph for this function:

G4NuclearLevelManager::G4NuclearLevelManager ( const G4NuclearLevelManager right)

Definition at line 399 of file G4NuclearLevelManager.cc.

References _levels, _nucleusA, _nucleusZ, _validity, GetLevel(), and n.

+ Here is the call graph for this function:

G4NuclearLevelManager::~G4NuclearLevelManager ( )

Definition at line 94 of file G4NuclearLevelManager.cc.

References ClearLevels().

+ Here is the call graph for this function:

Member Function Documentation

void G4NuclearLevelManager::AddDataToLevel ( G4NuclearLevel level)
private
void G4NuclearLevelManager::ClearLevels ( )
private

Definition at line 272 of file G4NuclearLevelManager.cc.

References _levels, _validity, and NumberOfLevels().

Referenced by MakeLevels(), and ~G4NuclearLevelManager().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4NuclearLevelManager::FinishLevel ( G4NuclearLevel level)
private

Definition at line 359 of file G4NuclearLevelManager.cc.

References _levels, and G4NuclearLevel::Finalize().

Referenced by MakeLevels(), and UseLevelOrMakeNew().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4NuclearLevel * G4NuclearLevelManager::GetLevel ( G4int  i) const

Definition at line 113 of file G4NuclearLevelManager.cc.

References NumberOfLevels().

Referenced by G4NuclearLevelManager(), NearestLevel(), PrintAll(), and PrintLevels().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4NuclearLevel * G4NuclearLevelManager::HighestLevel ( ) const

Definition at line 153 of file G4NuclearLevelManager.cc.

References _levels, and NumberOfLevels().

+ Here is the call graph for this function:

G4bool G4NuclearLevelManager::IsValid ( void  ) const
inline

Definition at line 77 of file G4NuclearLevelManager.hh.

References _validity.

const G4NuclearLevel * G4NuclearLevelManager::LowestLevel ( ) const

Definition at line 158 of file G4NuclearLevelManager.cc.

References _levels, and NumberOfLevels().

+ Here is the call graph for this function:

void G4NuclearLevelManager::MakeLevels ( const G4String filename)
private

Definition at line 285 of file G4NuclearLevelManager.cc.

References _levels, _nucleusA, _nucleusZ, _validity, AddDataToLevel(), ClearLevels(), FinishLevel(), G4cout, G4endl, NumberOfLevels(), Read(), and UseLevelOrMakeNew().

Referenced by G4NuclearLevelManager(), and SetNucleus().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4NuclearLevelManager::MaxLevelEnergy ( ) const

Definition at line 148 of file G4NuclearLevelManager.cc.

References _levels, GeV, and NumberOfLevels().

Referenced by G4ContinuumGammaDeexcitation::CanDoTransition(), G4DiscreteGammaDeexcitation::CanDoTransition(), and PrintAll().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4NuclearLevelManager::MinLevelEnergy ( ) const

Definition at line 143 of file G4NuclearLevelManager.cc.

References _levels, GeV, and NumberOfLevels().

Referenced by G4DiscreteGammaDeexcitation::CanDoTransition(), PrintAll(), and G4ContinuumGammaTransition::Update().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4NuclearLevel * G4NuclearLevelManager::NearestLevel ( G4double  energy,
G4double  eDiffMax = 1.e+8 
) const

Definition at line 118 of file G4NuclearLevelManager.cc.

References _levels, G4NuclearLevel::Energy(), GetLevel(), and NumberOfLevels().

Referenced by G4RadioactiveDecay::AddDecayRateTable(), G4DiscreteGammaDeexcitation::CanDoTransition(), G4RIsotopeTable::GetMeanLifeTime(), and G4ContinuumGammaTransition::SelectGamma().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4int G4NuclearLevelManager::NumberOfLevels ( ) const
inline

Definition at line 79 of file G4NuclearLevelManager.hh.

References _levels.

Referenced by G4RadioactiveDecay::AddDecayRateTable(), ClearLevels(), GetLevel(), HighestLevel(), LowestLevel(), MakeLevels(), MaxLevelEnergy(), MinLevelEnergy(), NearestLevel(), PrintAll(), and PrintLevels().

+ Here is the caller graph for this function:

G4bool G4NuclearLevelManager::operator!= ( const G4NuclearLevelManager right) const
private
const G4NuclearLevelManager& G4NuclearLevelManager::operator= ( const G4NuclearLevelManager right)
private
G4bool G4NuclearLevelManager::operator== ( const G4NuclearLevelManager right) const
private
void G4NuclearLevelManager::PrintAll ( void  )

Definition at line 368 of file G4NuclearLevelManager.cc.

References _nucleusA, _nucleusZ, G4cout, G4endl, GetLevel(), MaxLevelEnergy(), MinLevelEnergy(), NumberOfLevels(), and G4NuclearLevel::PrintAll().

+ Here is the call graph for this function:

void G4NuclearLevelManager::PrintLevels ( )

Definition at line 383 of file G4NuclearLevelManager.cc.

References _nucleusA, _nucleusZ, G4cout, G4endl, GetLevel(), G4NucleiProperties::GetNuclearMass(), NumberOfLevels(), and G4NuclearLevel::PrintLevels().

+ Here is the call graph for this function:

void G4NuclearLevelManager::ProcessDataLine ( )
private

Definition at line 221 of file G4NuclearLevelManager.cc.

References _gammaEnergy, _halfLife, _kCC, _l1CC, _l2CC, _l3CC, _levelEnergy, _m1CC, _m2CC, _m3CC, _m4CC, _m5CC, _nPlusCC, _probability, keV, and second.

Referenced by Read().

+ Here is the caller graph for this function:

G4bool G4NuclearLevelManager::Read ( std::ifstream &  aDataFile)
private

Definition at line 163 of file G4NuclearLevelManager.cc.

References ProcessDataLine(), and ReadDataLine().

Referenced by MakeLevels().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4NuclearLevelManager::ReadDataItem ( std::istream &  dataFile,
G4double x 
)
private

Definition at line 207 of file G4NuclearLevelManager.cc.

References buffer.

Referenced by ReadDataLine().

+ Here is the caller graph for this function:

G4bool G4NuclearLevelManager::ReadDataLine ( std::ifstream &  dataFile)
private

Definition at line 173 of file G4NuclearLevelManager.cc.

References _angularMomentum, _gammaEnergy, _halfLife, _kCC, _l1CC, _l2CC, _l3CC, _levelEnergy, _m1CC, _m2CC, _m3CC, _m4CC, _m5CC, _nPlusCC, _polarity, _probability, _totalCC, and ReadDataItem().

Referenced by Read().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4NuclearLevelManager::SetNucleus ( G4int  Z,
G4int  A,
const G4String filename 
)

Definition at line 99 of file G4NuclearLevelManager.cc.

References _nucleusA, _nucleusZ, A, and MakeLevels().

+ Here is the call graph for this function:

G4NuclearLevel * G4NuclearLevelManager::UseLevelOrMakeNew ( G4NuclearLevel level)
private

Definition at line 329 of file G4NuclearLevelManager.cc.

References _angularMomentum, _halfLife, _levelEnergy, G4NuclearLevel::Energy(), and FinishLevel().

Referenced by MakeLevels().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

G4double G4NuclearLevelManager::_angularMomentum =0.
staticprivate

Definition at line 126 of file G4NuclearLevelManager.hh.

Referenced by ReadDataLine(), and UseLevelOrMakeNew().

G4double G4NuclearLevelManager::_gammaEnergy =0.
staticprivate

Definition at line 122 of file G4NuclearLevelManager.hh.

Referenced by AddDataToLevel(), ProcessDataLine(), and ReadDataLine().

G4double G4NuclearLevelManager::_halfLife =0.
staticprivate

Definition at line 125 of file G4NuclearLevelManager.hh.

Referenced by ProcessDataLine(), ReadDataLine(), and UseLevelOrMakeNew().

G4double G4NuclearLevelManager::_kCC =0.
staticprivate

Definition at line 127 of file G4NuclearLevelManager.hh.

Referenced by AddDataToLevel(), ProcessDataLine(), and ReadDataLine().

G4double G4NuclearLevelManager::_l1CC =0.
staticprivate

Definition at line 128 of file G4NuclearLevelManager.hh.

Referenced by AddDataToLevel(), ProcessDataLine(), and ReadDataLine().

G4double G4NuclearLevelManager::_l2CC =0.
staticprivate

Definition at line 129 of file G4NuclearLevelManager.hh.

Referenced by AddDataToLevel(), ProcessDataLine(), and ReadDataLine().

G4double G4NuclearLevelManager::_l3CC =0.
staticprivate

Definition at line 130 of file G4NuclearLevelManager.hh.

Referenced by AddDataToLevel(), ProcessDataLine(), and ReadDataLine().

G4double G4NuclearLevelManager::_levelEnergy =0.
staticprivate

Definition at line 121 of file G4NuclearLevelManager.hh.

Referenced by ProcessDataLine(), ReadDataLine(), and UseLevelOrMakeNew().

G4double G4NuclearLevelManager::_m1CC =0.
staticprivate

Definition at line 131 of file G4NuclearLevelManager.hh.

Referenced by AddDataToLevel(), ProcessDataLine(), and ReadDataLine().

G4double G4NuclearLevelManager::_m2CC =0.
staticprivate

Definition at line 132 of file G4NuclearLevelManager.hh.

Referenced by AddDataToLevel(), ProcessDataLine(), and ReadDataLine().

G4double G4NuclearLevelManager::_m3CC =0.
staticprivate

Definition at line 133 of file G4NuclearLevelManager.hh.

Referenced by AddDataToLevel(), ProcessDataLine(), and ReadDataLine().

G4double G4NuclearLevelManager::_m4CC =0.
staticprivate

Definition at line 134 of file G4NuclearLevelManager.hh.

Referenced by AddDataToLevel(), ProcessDataLine(), and ReadDataLine().

G4double G4NuclearLevelManager::_m5CC =0.
staticprivate

Definition at line 135 of file G4NuclearLevelManager.hh.

Referenced by AddDataToLevel(), ProcessDataLine(), and ReadDataLine().

G4double G4NuclearLevelManager::_nPlusCC =0.
staticprivate

Definition at line 136 of file G4NuclearLevelManager.hh.

Referenced by AddDataToLevel(), ProcessDataLine(), and ReadDataLine().

G4int G4NuclearLevelManager::_nucleusA
private
G4int G4NuclearLevelManager::_nucleusZ
private
G4double G4NuclearLevelManager::_polarity =0.
staticprivate

Definition at line 124 of file G4NuclearLevelManager.hh.

Referenced by AddDataToLevel(), and ReadDataLine().

G4double G4NuclearLevelManager::_probability =0.
staticprivate

Definition at line 123 of file G4NuclearLevelManager.hh.

Referenced by AddDataToLevel(), ProcessDataLine(), and ReadDataLine().

G4double G4NuclearLevelManager::_totalCC =0.
staticprivate

Definition at line 137 of file G4NuclearLevelManager.hh.

Referenced by AddDataToLevel(), and ReadDataLine().

G4bool G4NuclearLevelManager::_validity
private

Definition at line 116 of file G4NuclearLevelManager.hh.

Referenced by ClearLevels(), G4NuclearLevelManager(), IsValid(), and MakeLevels().


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