59    fluoDirectory(
"/fluor")
 
   66   std::map<G4int,std::vector<G4AtomicShell*>,std::less<G4int> >::iterator 
pos;
 
   70     std::vector<G4AtomicShell*>vec = (*pos).second;
 
   71     G4int vecSize = vec.size();
 
   73     for (
G4int i=0; i< vecSize; ++i){
 
   79   std::map<G4int,std::vector<G4FluoTransition*>,std::less<G4int> >::iterator ppos;
 
   82     std::vector<G4FluoTransition*>vec = (*ppos).second;
 
   84     G4int vecSize=vec.size();
 
   86     for (
G4int i=0; i< vecSize; i++){
 
   96   std::map<G4int,std::vector<G4AtomicShell*>,std::less<G4int> >::const_iterator 
pos;
 
  102       std::vector<G4AtomicShell*> v = (*pos).second;
 
  103       if (shellIndex < v.size()) { 
return v[shellIndex]; }
 
  107           size_t lastShell = v.size();
 
  109           ed << 
"No de-excitation for Z= " << Z 
 
  110              << 
"  shellIndex= " << shellIndex
 
  111              << 
">=  numberOfShells= " << lastShell;
 
  112           G4Exception(
"G4AtomicTransitionManager::Shell()",
"de0001",
 
  114           if (lastShell > 0) { 
return v[lastShell - 1]; }
 
  120       ed << 
"No de-excitation for Z= " << Z 
 
  121          << 
"  shellIndex= " << shellIndex;
 
  122       G4Exception(
"G4AtomicTransitionManager::Shell()",
"de0001",
 
  135   std::map<G4int,std::vector<G4FluoTransition*>,std::less<G4int> >::const_iterator 
pos;
 
  139       std::vector<G4FluoTransition*> v = (*pos).second;      
 
  140       if (shellIndex < v.size()) { 
return(v[shellIndex]); }
 
  144         ed << 
"No fluo transition for Z= " << Z 
 
  145            << 
"  shellIndex= " << shellIndex;
 
  146         G4Exception(
"G4AtomicTransitionManager::ReachebleShell()",
"de0002", 
 
  153       ed << 
"No transition table for Z= " << Z 
 
  154          << 
"  shellIndex= " << shellIndex;
 
  155       G4Exception(
"G4AtomicTransitionManager::ReachableShell()",
"de0001",
 
  163                                                G4int vacancyShellIndex)
 const 
  170   std::map<G4int,std::vector<G4AtomicShell*>,std::less<G4int> >::const_iterator 
pos;
 
  176     res = ((*pos).second).size();
 
  180     ed << 
"No deexcitation for Z= " << Z;
 
  181     G4Exception(
"G4AtomicTransitionManager::NumberOfShells()",
"de0001",
 
  192   std::map<G4int,std::vector<G4FluoTransition*>,std::less<G4int> >::const_iterator 
pos;
 
  197       res = ((*pos).second).size();
 
  202       ed << 
"No deexcitation for Z= " << Z
 
  203          << 
", so energy deposited locally";
 
  204       G4Exception(
"G4AtomicTransitionManager::NumberOfReachebleShells()",
 
  220          G4int Z, 
size_t shellIndex)
 const 
  222   std::map<G4int,std::vector<G4FluoTransition*>,std::less<G4int> >::const_iterator 
pos;
 
  229       std::vector<G4FluoTransition*> v = (*pos).second;
 
  231       if (shellIndex < v.size())
 
  236           for (
size_t j=0; j<transProb.size(); ++j) 
 
  238               totalRadTransProb += transProb[j];
 
  244           ed << 
"Zero transition probability for Z=" << Z 
 
  245              << 
"  shellIndex= " << shellIndex;
 
  247           "G4AtomicTransitionManager::TotalRadiativeTransitionProbability()",
 
  254       ed << 
"No deexcitation for Z=" << Z 
 
  255          << 
"  shellIndex= " << shellIndex;
 
  257       "G4AtomicTransitionManager::TotalRadiativeTransitionProbability()",
 
  258       "de0001",
FatalException,ed,
"Cannot compute transition probability");
 
  260   return totalRadTransProb;
 
  264                  G4int Z, 
size_t shellIndex)
 const 
  267   if(prob > 1.0 || prob < 0.0) {
 
  269     ed << 
"Total probability mismatch Z= " << Z 
 
  270        << 
"  shellIndex= " << shellIndex
 
  271        << 
"  prob= " << prob;
 
  273     "G4AtomicTransitionManager::TotalNonRadiativeTransitionProbability()",
 
  274     "de0003",
FatalException,ed,
"Cannot compute non-radiative probability");
 
  308       std::vector<G4AtomicShell*> vectorOfShells;  
 
  309       size_t shellIndex = 0; 
 
  312       for (shellIndex = 0; shellIndex<numberOfShells; ++shellIndex) 
 
  319           vectorOfShells.push_back(shell);
 
  331       std::vector<G4FluoTransition*> vectorOfTransitions;
 
  334       size_t numberOfVacancies = fluoManager-> NumberOfVacancies();
 
  336       for(
size_t vacancyIndex = 0; vacancyIndex<numberOfVacancies;  
 
  339           std::vector<G4int>  vectorOfIds;
 
  344           size_t numberOfTransitions = 
 
  346           for (
size_t origShellIndex = 0; origShellIndex < numberOfTransitions;
 
  349               G4int originatingShellId = 
 
  351               vectorOfIds.push_back(originatingShellId);
 
  355               vectorOfEnergies.push_back(transitionEnergy);
 
  358               vectorOfProbabilities.push_back(transitionProbability);
 
  362                                   vectorOfEnergies,vectorOfProbabilities);
 
  363           vectorOfTransitions.push_back(transition); 
 
G4int NumberOfShells(G4int Z) const 
 
G4double StartShellProb(G4int initIndex, G4int vacancyIndex) const 
 
std::ostringstream G4ExceptionDescription
 
const G4AugerTransition * ReachableAugerShell(G4int Z, G4int shellIndex) const 
 
G4int NumberOfReachableShells(G4int Z) const 
 
std::map< G4int, std::vector< G4FluoTransition * >, std::less< G4int > > transitionTable
 
void SetFluoDirectory(const G4String &ss)
 
std::map< G4int, std::vector< G4AtomicShell * >, std::less< G4int > > shellTable
 
G4AtomicTransitionManager()
 
const G4DataVector & TransitionProbabilities() const 
 
#define G4MUTEX_INITIALIZER
 
G4int ShellId(G4int Z, G4int shellIndex) const 
 
void LoadData(const G4String &fileName)
 
G4double TotalNonRadiativeTransitionProbability(G4int Z, size_t shellIndex) const 
 
G4double BindingEnergy(G4int Z, G4int shellIndex) const 
 
G4int VacancyId(G4int vacancyIndex) const 
 
G4int NumberOfReachableAugerShells(G4int Z) const 
 
G4int StartShellId(G4int initIndex, G4int vacancyIndex) const 
 
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
 
G4double TotalRadiativeTransitionProbability(G4int Z, size_t shellIndex) const 
 
G4double StartShellEnergy(G4int initIndex, G4int vacancyIndex) const 
 
const G4FluoTransition * ReachableShell(G4int Z, size_t shellIndex) const 
 
size_t NumberOfShells(G4int Z) const 
 
size_t NumberOfTransitions(G4int vacancyIndex) const 
 
~G4AtomicTransitionManager()
 
static G4AtomicTransitionManager * instance
 
G4AugerTransition * GetAugerTransition(G4int Z, G4int vacancyShellIndex)
 
size_t NumberOfVacancies(G4int Z) const 
 
G4double bindingEnergy(G4int A, G4int Z)
 
static G4AtomicTransitionManager * Instance()
 
G4AtomicShell * Shell(G4int Z, size_t shellIndex) const 
 
G4bool isInitialized()
Check if the generator is initialized. 
 
static const G4double pos