Geant4  10.00.p01
G4NuclearLevelManager Class Reference

#include <G4NuclearLevelManager.hh>

+ Collaboration diagram for G4NuclearLevelManager:

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=9999.*CLHEP::GeV) const
 
const G4NuclearLevelLowestLevel () const
 
const G4NuclearLevelHighestLevel () const
 
G4double MinLevelEnergy () const
 
G4double MaxLevelEnergy () const
 
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 ()
 
void ClearLevels ()
 
G4NuclearLevelUseLevelOrMakeNew (G4NuclearLevel *level)
 
void AddDataToLevel (G4NuclearLevel *level)
 
void FinishLevel (G4NuclearLevel *level)
 

Private Attributes

G4int _nucleusA
 
G4int _nucleusZ
 
G4String _fileName
 
G4bool _validity
 
G4PtrLevelVector_levels
 
char buffer [30]
 
G4double _levelEnergy
 
G4double _gammaEnergy
 
G4double _probability
 
G4double _polarity
 
G4double _halfLife
 
G4double _angularMomentum
 
G4double _kCC
 
G4double _l1CC
 
G4double _l2CC
 
G4double _l3CC
 
G4double _m1CC
 
G4double _m2CC
 
G4double _m3CC
 
G4double _m4CC
 
G4double _m5CC
 
G4double _nPlusCC
 
G4double _totalCC
 

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 62 of file G4NuclearLevelManager.cc.

References buffer, and MakeLevels().

+ Here is the call graph for this function:

G4NuclearLevelManager::G4NuclearLevelManager ( const G4NuclearLevelManager right)

Definition at line 363 of file G4NuclearLevelManager.cc.

References _angularMomentum, _fileName, _gammaEnergy, _halfLife, _kCC, _l1CC, _l2CC, _l3CC, _levelEnergy, _levels, _m1CC, _m2CC, _m3CC, _m4CC, _m5CC, _nPlusCC, _nucleusA, _nucleusZ, _polarity, _probability, _totalCC, _validity, buffer, GetLevel(), and n.

+ Here is the call graph for this function:

G4NuclearLevelManager::~G4NuclearLevelManager ( )

Definition at line 75 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 253 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 340 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 95 of file G4NuclearLevelManager.cc.

References NumberOfLevels().

Referenced by G4ContinuumGammaTransition::G4ContinuumGammaTransition(), G4NuclearLevelManager(), NearestLevel(), and PrintAll().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4NuclearLevel * G4NuclearLevelManager::HighestLevel ( ) const

Definition at line 136 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 78 of file G4NuclearLevelManager.hh.

References _validity.

Referenced by G4DiscreteGammaDeexcitation::CreateTransition().

+ Here is the caller graph for this function:

const G4NuclearLevel * G4NuclearLevelManager::LowestLevel ( ) const

Definition at line 141 of file G4NuclearLevelManager.cc.

References _levels, and NumberOfLevels().

+ Here is the call graph for this function:

void G4NuclearLevelManager::MakeLevels ( )
private

Definition at line 266 of file G4NuclearLevelManager.cc.

References _fileName, _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 131 of file G4NuclearLevelManager.cc.

References _levels, GeV, and NumberOfLevels().

Referenced by G4ContinuumGammaDeexcitation::CanDoTransition(), G4DiscreteGammaDeexcitation::CanDoTransition(), G4ContinuumGammaTransition::G4ContinuumGammaTransition(), 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 126 of file G4NuclearLevelManager.cc.

References _levels, GeV, and NumberOfLevels().

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

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4NuclearLevel * G4NuclearLevelManager::NearestLevel ( G4double  energy,
G4double  eDiffMax = 9999.*CLHEP::GeV 
) const

Definition at line 100 of file G4NuclearLevelManager.cc.

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

Referenced by G4RadioactiveDecay::AddDecayRateTable(), G4DiscreteGammaDeexcitation::CanDoTransition(), G4DiscreteGammaDeexcitation::CreateTransition(), 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 80 of file G4NuclearLevelManager.hh.

References _levels.

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

+ 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 349 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::ProcessDataLine ( )
private

Definition at line 202 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 146 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 190 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 156 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 80 of file G4NuclearLevelManager.cc.

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

+ Here is the call graph for this function:

G4NuclearLevel * G4NuclearLevelManager::UseLevelOrMakeNew ( G4NuclearLevel level)
private

Definition at line 310 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
private
G4String G4NuclearLevelManager::_fileName
private

Definition at line 114 of file G4NuclearLevelManager.hh.

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

G4double G4NuclearLevelManager::_gammaEnergy
private
G4double G4NuclearLevelManager::_halfLife
private
G4double G4NuclearLevelManager::_kCC
private
G4double G4NuclearLevelManager::_l1CC
private
G4double G4NuclearLevelManager::_l2CC
private
G4double G4NuclearLevelManager::_l3CC
private
G4double G4NuclearLevelManager::_levelEnergy
private
G4double G4NuclearLevelManager::_m1CC
private
G4double G4NuclearLevelManager::_m2CC
private
G4double G4NuclearLevelManager::_m3CC
private
G4double G4NuclearLevelManager::_m4CC
private
G4double G4NuclearLevelManager::_m5CC
private
G4double G4NuclearLevelManager::_nPlusCC
private
G4int G4NuclearLevelManager::_nucleusA
private

Definition at line 112 of file G4NuclearLevelManager.hh.

Referenced by G4NuclearLevelManager(), MakeLevels(), PrintAll(), and SetNucleus().

G4int G4NuclearLevelManager::_nucleusZ
private

Definition at line 113 of file G4NuclearLevelManager.hh.

Referenced by G4NuclearLevelManager(), MakeLevels(), PrintAll(), and SetNucleus().

G4double G4NuclearLevelManager::_polarity
private

Definition at line 123 of file G4NuclearLevelManager.hh.

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

G4double G4NuclearLevelManager::_probability
private
G4double G4NuclearLevelManager::_totalCC
private

Definition at line 136 of file G4NuclearLevelManager.hh.

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

G4bool G4NuclearLevelManager::_validity
private

Definition at line 115 of file G4NuclearLevelManager.hh.

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

char G4NuclearLevelManager::buffer[30]
private

Definition at line 119 of file G4NuclearLevelManager.hh.

Referenced by G4NuclearLevelManager(), and ReadDataItem().


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