G4hQAOModel.cc

Go to the documentation of this file.
00001 //
00002 // ********************************************************************
00003 // * License and Disclaimer                                           *
00004 // *                                                                  *
00005 // * The  Geant4 software  is  copyright of the Copyright Holders  of *
00006 // * the Geant4 Collaboration.  It is provided  under  the terms  and *
00007 // * conditions of the Geant4 Software License,  included in the file *
00008 // * LICENSE and available at  http://cern.ch/geant4/license .  These *
00009 // * include a list of copyright holders.                             *
00010 // *                                                                  *
00011 // * Neither the authors of this software system, nor their employing *
00012 // * institutes,nor the agencies providing financial support for this *
00013 // * work  make  any representation or  warranty, express or implied, *
00014 // * regarding  this  software system or assume any liability for its *
00015 // * use.  Please see the license in the file  LICENSE  and URL above *
00016 // * for the full disclaimer and the limitation of liability.         *
00017 // *                                                                  *
00018 // * This  code  implementation is the result of  the  scientific and *
00019 // * technical work of the GEANT4 collaboration.                      *
00020 // * By using,  copying,  modifying or  distributing the software (or *
00021 // * any work based  on the software)  you  agree  to acknowledge its *
00022 // * use  in  resulting  scientific  publications,  and indicate your *
00023 // * acceptance of all terms of the Geant4 Software license.          *
00024 // ********************************************************************
00025 //
00026 //
00027 // -------------------------------------------------------------------
00028 //
00029 // GEANT4 Class file
00030 //
00031 //
00032 // File name:     G4hQAOModel
00033 //
00034 // Author:        V.Ivanchenko (Vladimir.Ivanchenko@cern.ch)
00035 //
00036 // Creation date: 27 April 2004
00037 //
00038 // Modifications:
00039 //
00040 // Class Description:
00041 //
00042 // Electronic stopping power for negative heavy partiles
00043 //
00044 // Class Description: End
00045 //
00046 // -------------------------------------------------------------------
00047 //
00048 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
00049 
00050 #include "G4hQAOModel.hh"
00051 #include "G4PhysicalConstants.hh"
00052 #include "G4SystemOfUnits.hh"
00053 #include "G4UnitsTable.hh"
00054 #include "G4Element.hh"
00055 #include "G4Material.hh"
00056 
00057 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
00058 
00059 G4hQAOModel::G4hQAOModel():G4VhElectronicStoppingPower(),
00060   numberOfMaterials(6),
00061   sizeL0(67),
00062   sizeL1(22),
00063   sizeL2(14),
00064   currentMaterial(0),
00065   currentElement(0)
00066 {
00067   theZieglerFactor = eV*cm2*1.0e-15;
00068   thePlasmonFactor = 28.816 * 28.816  * 1e-6;
00069 }
00070 
00071 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
00072 
00073 G4hQAOModel::~G4hQAOModel()
00074 {}
00075 
00076 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
00077 
00078 G4double G4hQAOModel::StoppingPower(const G4Material* material,
00079                                           G4double kineticEnergy)
00080 {
00081   G4double eloss = 0.0 ;
00082   G4int numberOfElements = material->GetNumberOfElements() ;
00083   const G4ElementVector* theElementVector   = material->GetElementVector();
00084   const G4double* theAtomicNumDensityVector = material->GetAtomicNumDensityVector() ;
00085   currentMaterial = material;
00086 
00087   //  loop for the elements in the material
00088   for (G4int i=0; i<numberOfElements; i++)
00089     {
00090       currentElement = (*theElementVector)[i] ;
00091       G4double z = currentElement->GetZ() ;
00092       eloss += ElectronicStoppingPower(z,kineticEnergy)*theAtomicNumDensityVector[i];
00093     }
00094 
00095   return eloss;
00096 }
00097 
00098 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
00099 
00100 G4double G4hQAOModel::ElectronicStoppingPower(G4double z,
00101                                               G4double kineticEnergy) const
00102 {
00103   G4int Z = (G4int)z;
00104   G4int nbOfShell = GetNumberOfShell(Z);
00105   if(nbOfShell < 1) nbOfShell = 1;
00106 
00107   G4double dedx=0.0;
00108 
00109   G4double v = c_light * std::sqrt( 2.0 * kineticEnergy / proton_mass_c2 );
00110   G4double coeff = twopi*proton_mass_c2*z / (electron_mass_c2*theZieglerFactor) ;
00111   G4double fBetheVelocity = fine_structure_const * c_light / v;
00112   coeff *= fine_structure_const * fine_structure_const * hbarc_squared /
00113            kineticEnergy ;
00114 
00115   G4double l0Term = 0, l1Term = 0, l2Term = 0;
00116 
00117   for (G4int nos = 0 ; nos < nbOfShell ; nos++){
00118 
00119     G4double l0 = 0, l1 = 0, l2 = 0;
00120     G4double NormalizedEnergy = ( 2.0 * electron_mass_c2 * v * v  ) /
00121                           ( c_squared * GetShellEnergy(Z, nos) );
00122     G4double shStrength = GetShellStrength(Z, nos);
00123 
00124     l0 = GetL0(NormalizedEnergy);
00125     l0Term += shStrength  * l0;
00126 
00127     l1 = GetL1(NormalizedEnergy);
00128     l1Term += shStrength * l1;
00129 
00130     l2 = GetL2(NormalizedEnergy);
00131     l2Term += shStrength * l2;
00132 
00133 /*
00134     //if(Z == 6){
00135     G4cout << nos << ". "
00136            << " E(MeV)= " << kineticEnergy/MeV
00137            << " normE= "  << NormalizedEnergy
00138            << " sh en= "  << GetShellEnergy(Z,nos)
00139            << " str= "  << shStrength
00140            << " v0/v= " << fBetheVelocity
00141            << " l0= " << l0Term
00142            << " l1= " << l1Term
00143            << " l2= " << l2Term
00144            << G4endl;
00145         //   }
00146 */
00147   }
00148 
00149   dedx = coeff * (l0Term - fBetheVelocity*l1Term + fBetheVelocity*fBetheVelocity*l2Term);
00150 
00151   //G4cout << " E(MeV)= " << kineticEnergy/MeV
00152   //       << " dedx(Mev/mm)= " << dedx*mm/MeV << G4endl;
00153 
00154   if(dedx < 0.0) dedx = 0.0;
00155   return dedx;
00156 }
00157 
00158 
00159 G4int G4hQAOModel::GetNumberOfShell(G4int Z) const
00160 {
00161   // Set return value from table
00162   G4int nShell = 0;
00163 
00164   // Set return value if in material available from Aahrus
00165   for(G4int i=0; i<numberOfMaterials; i++) {
00166 
00167     if(materialAvailable[i] == Z){
00168         nShell = nbofShellForMaterial[i];
00169         break;
00170     }
00171     else nShell = fNumberOfShells[Z];
00172   }
00173 
00174    return nShell;
00175 }
00176 
00177 
00178 
00179 G4double G4hQAOModel::GetShellEnergy(G4int Z, G4int nbOfTheShell) const
00180 {
00181   G4double shellEnergy = alShellEnergy[0];
00182   if     (Z == 13) shellEnergy = alShellEnergy[nbOfTheShell];
00183   else if(Z == 14) shellEnergy = siShellEnergy[nbOfTheShell];
00184   else if(Z == 29) shellEnergy = cuShellEnergy[nbOfTheShell];
00185   else if(Z == 73) shellEnergy = taShellEnergy[nbOfTheShell];
00186   else if(Z == 79) shellEnergy = auShellEnergy[nbOfTheShell];
00187   else if(Z == 78) shellEnergy = ptShellEnergy[nbOfTheShell];
00188   else             shellEnergy = GetOscillatorEnergy(Z, nbOfTheShell);
00189 
00190   return  shellEnergy;
00191 }
00192 
00193 
00194 G4double G4hQAOModel::GetOscillatorEnergy(G4int Z, G4int nbOfTheShell) const
00195 {
00196   G4double squaredPlasmonEnergy = thePlasmonFactor;
00197   G4double zeff = (G4double)Z;
00198   if(currentMaterial)
00199     squaredPlasmonEnergy *= (currentMaterial->GetDensity()*zeff*cm3)
00200                           / (g * currentElement->GetN());
00201 
00202   G4double occn = GetOccupationNumber(Z,nbOfTheShell);
00203   G4double plasmonTerm = 0.66667 * occn * squaredPlasmonEnergy/(zeff*zeff);
00204 
00205   G4double ionTerm = std::exp(0.5) * currentElement->GetAtomicShell(nbOfTheShell);
00206 
00207   ionTerm = ionTerm*ionTerm ;
00208 
00209   G4double oscShellEnergy = std::sqrt( ionTerm + plasmonTerm );
00210 
00211 /*  if(material->GetName()=="Graphite"){
00212     G4cout << "\t" << Z
00213            << "\t" << nbOfTheShell
00214            << "\t" << squaredPlasmonEnergy
00215            << "\t" << plasmonTerm
00216            << "\t" << ionTerm
00217            << "\t" << GetOccupationNumber(Z,nbOfTheShell)
00218            << "\t" << element->GetAtomicShell(nbOfTheShell)
00219            << "\t" << oscShellEnergy << G4endl;}
00220 */
00221   return  oscShellEnergy;
00222 }
00223 
00224 
00225 G4double G4hQAOModel::GetShellStrength(G4int Z, G4int nbOfTheShell) const
00226 {
00227   G4double shellStrength = alShellStrength[0];
00228 
00229   if(Z == 13)      shellStrength = alShellStrength[nbOfTheShell];
00230   else if(Z == 14) shellStrength = siShellStrength[nbOfTheShell];
00231   else if(Z == 29) shellStrength = cuShellStrength[nbOfTheShell];
00232   else if(Z == 73) shellStrength = taShellStrength[nbOfTheShell];
00233   else if(Z == 79) shellStrength = auShellStrength[nbOfTheShell];
00234   else if(Z == 78) shellStrength = ptShellStrength[nbOfTheShell];
00235   else             shellStrength = GetOccupationNumber(Z,nbOfTheShell) / (G4double)Z;
00236 
00237   return shellStrength;
00238 }
00239 
00240 G4double G4hQAOModel::GetOccupationNumber(G4int Z, G4int ShellNb) const
00241 {
00242 
00243   G4int indice = ShellNb ;
00244   for (G4int z = 1 ; z < Z ; z++) {indice += fNumberOfShells[z];}
00245   G4double x = (G4double)(nbOfElectronPerSubShell[indice+1]);
00246   return x;
00247 }
00248 
00249 
00250 G4double G4hQAOModel::GetL0(G4double normEnergy) const
00251 {
00252   G4int n;
00253 
00254   for(n = 0; n < sizeL0; n++) {
00255     if( normEnergy < L0[n][0] ) break;
00256   }
00257   if(0 == n) n = 1 ;
00258   if(n >= sizeL0) n = sizeL0 - 1 ;
00259 
00260   G4double l0    = L0[n][1];
00261   G4double l0p   = L0[n-1][1];
00262   G4double bethe = l0p + (l0 - l0p) * ( normEnergy - L0[n-1][0]) /
00263                   (L0[n][0] - L0[n-1][0]);
00264   return bethe ;
00265 
00266 }
00267 
00268 G4double G4hQAOModel::GetL1(G4double normEnergy) const
00269 {
00270   G4int n;
00271 
00272   for(n = 0; n < sizeL1; n++) {
00273     if( normEnergy < L1[n][0] ) break;
00274   }
00275   if(0 == n) n = 1 ;
00276   if(n >= sizeL1) n = sizeL1 - 1 ;
00277 
00278   G4double l1    = L1[n][1];
00279   G4double l1p   = L1[n-1][1];
00280   G4double barkas= l1p + (l1 - l1p) * ( normEnergy - L1[n-1][0]) /
00281                   (L1[n][0] - L1[n-1][0]);
00282 
00283   return barkas;
00284 
00285 }
00286 
00287 
00288 G4double G4hQAOModel::GetL2(G4double normEnergy) const
00289 {
00290   G4int n;
00291   for(n = 0; n < sizeL2; n++) {
00292     if( normEnergy < L2[n][0] ) break;
00293   }
00294   if(0 == n) n = 1 ;
00295   if(n >= sizeL2) n = sizeL2 - 1 ;
00296 
00297   G4double l2    = L2[n][1];
00298   G4double l2p   = L2[n-1][1];
00299   G4double bloch = l2p + (l2 - l2p) * ( normEnergy - L2[n-1][0]) /
00300                   (L2[n][0] - L2[n-1][0]);
00301 
00302   return bloch;
00303 }
00304 
00305 
00306 const G4int G4hQAOModel::materialAvailable[6] = {13,14,29,73,79,78};
00307   /*
00308   "Aluminum",
00309   "Silicon",
00310   "Copper",
00311   "Tantalum",
00312   "Gold",
00313   "Platinum"};
00314   */
00315 const G4int G4hQAOModel::nbofShellForMaterial[6] = {3,3,4,6,6,6};
00316 
00317 const G4double G4hQAOModel::alShellEnergy[3]  ={ 2795e-6, 202e-6,  16.9e-6};
00318 const G4double G4hQAOModel::alShellStrength[3]={ 0.1349, 0.6387, 0.2264};
00319 const G4double G4hQAOModel::siShellEnergy[3]  ={ 3179e-6, 249e-6, 20.3e-6 };
00320 const G4double G4hQAOModel::siShellStrength[3]={ 0.1222, 0.5972, 0.2806};
00321 const G4double G4hQAOModel::cuShellEnergy[4]  ={ 16931e-6, 1930e-6, 199e-6, 39.6e-6};
00322 const G4double G4hQAOModel::cuShellStrength[4]={ 0.0505, 0.2561, 0.4913, 0.2021};
00323 const G4double G4hQAOModel::taShellEnergy[6]  ={ 88926e-6, 18012e-6, 3210e-6, 575e-6, 108.7e-6, 30.8e-6};
00324 const G4double G4hQAOModel::taShellStrength[6]={ 0.0126, 0.0896, 0.2599, 0.3413, 0.2057, 0.0908};
00325 const G4double G4hQAOModel::auShellEnergy[6]={ 96235e-6, 25918e-6, 4116e-6, 599e-6, 87.3e-6, 36.9e-6};
00326 const G4double G4hQAOModel::auShellStrength[6]={ 0.0139, 0.0803, 0.2473, 0.423, 0.1124, 0.1231};
00327 const G4double G4hQAOModel::ptShellEnergy[6]={ 95017e-6, 25590e-6, 4063e-6, 576e-6, 81.9e-6, 31.4e-6};
00328 const G4double G4hQAOModel::ptShellStrength[6]={ 0.0129, 0.0745, 0.2295, 0.4627, 0.1324, 0.0879};
00329 
00330 
00331 const G4double G4hQAOModel::L0[67][2] =
00332 {
00333   {0.00,        0.000001},
00334   {0.10,        0.000001},
00335   {0.12,        0.00001},
00336   {0.14,        0.00005},
00337   {0.16,        0.00014},
00338   {0.18,        0.00030},
00339   {0.20,        0.00057},
00340   {0.25,        0.00189},
00341   {0.30,        0.00429},
00342   {0.35,        0.00784},
00343   {0.40,        0.01248},
00344   {0.45,        0.01811},
00345   {0.50,        0.02462},
00346   {0.60,        0.03980},
00347   {0.70,        0.05731},
00348   {0.80,        0.07662},
00349   {0.90,        0.09733},
00350   {1.00,        0.11916},
00351   {1.20,        0.16532},
00352   {1.40,        0.21376},
00353   {1.60,        0.26362},
00354   {1.80,        0.31428},
00355   {2.00,        0.36532},
00356   {2.50,        0.49272},
00357   {3.00,        0.61765},
00358   {3.50,        0.73863},
00359   {4.00,        0.85496},
00360   {4.50,        0.96634},
00361   {5.00,        1.07272},
00362   {6.00,        1.27086},
00363   {7.00,        1.45075},
00364   {8.00,        1.61412},
00365   {9.00,        1.76277},
00366   {10.00,       1.89836},
00367   {12.00,       2.13625},
00368   {14.00,       2.33787},
00369   {16.00,       2.51093},
00370   {18.00,       2.66134},
00371   {20.00,       2.79358},
00372   {25.00, 3.06539},
00373   {30.00, 3.27902},
00374   {35.00, 3.45430},
00375   {40.00, 3.60281},
00376   {45.00, 3.73167},
00377   {50.00, 3.84555},
00378   {60.00, 4.04011},
00379   {70.00, 4.20264},
00380   {80.00, 4.34229},
00381   {90.00,  4.46474},
00382   {100.00, 4.57378},
00383   {120.00, 4.76155},
00384   {140.00, 4.91953},
00385   {160.00, 5.05590},
00386   {180.00, 5.17588},
00387   {200.00, 5.28299},
00388   {250.00, 5.50925},
00389   {300.00, 5.69364},
00390   {350.00, 5.84926},
00391   {400.00, 5.98388},
00392   {450.00, 6.10252},
00393   {500.00, 6.20856},
00394   {600.00, 6.39189},
00395   {700.00, 6.54677},
00396   {800.00, 6.68084},
00397   {900.00, 6.79905},
00398   {1000.00, 6.90474}
00399 };
00400 
00401 
00402 const G4double G4hQAOModel::L1[22][2] =
00403 {
00404   {0.00,       -0.000001},
00405   {0.10,       -0.00001},
00406   {0.20,       -0.00049},
00407   {0.30,       -0.00084},
00408   {0.40,        0.00085},
00409   {0.50,        0.00519},
00410   {0.60,        0.01198},
00411   {0.70,        0.02074},
00412   {0.80,        0.03133},
00413   {0.90,        0.04369},
00414   {1.00,        0.06035},
00415   {2.00,        0.24023},
00416   {3.00,        0.44284},
00417   {4.00,        0.62012},
00418   {5.00,        0.77031},
00419   {6.00,        0.90390},
00420   {7.00,        1.02705},
00421   {8.00,        1.10867},
00422   {9.00,        1.17546},
00423   {10.00,       1.21599},
00424   {15.00,       1.24349},
00425   {20.00,       1.16752}
00426 };
00427 
00428 
00429 const G4double G4hQAOModel::L2[14][2] =
00430 {
00431   {0.00,        0.000001},
00432   {0.10,        0.00001},
00433   {0.20,        0.00000},
00434   {0.40,       -0.00120},
00435   {0.60,       -0.00036},
00436   {0.80,        0.00372},
00437   {1.00,        0.01298},
00438   {2.00,        0.08296},
00439   {4.00,        0.21953},
00440   {6.00,        0.23903},
00441   {8.00,        0.20893},
00442   {10.00,       0.10879},
00443   {20.00,      -0.88409},
00444   {40.00,      -1.13902}
00445 };
00446 
00447 
00448 const G4int G4hQAOModel::nbOfElectronPerSubShell[1540] =
00449 {
00450   0, // consistency with G4AtomicShells
00451   1,//------ H
00452   2,//------ He
00453   2,  1,//------ Li
00454   2,  2,//------ Be
00455   2,  2,  1,//------ B
00456   2,  2,  2,//------ C
00457   2,  2,  2,  1,//------ N
00458   2,  2,  2,  2,//------ O
00459   2,  2,  5,//------ F
00460   2,  2,  2,  4,//------ Ne
00461   2,  2,  2,  4,  1,//------ Na
00462   2,  2,  2,  4,  2,//------ Mg
00463   2,  2,  2,  4,  2,  1,//------ Al
00464   2,  2,  2,  4,  2,  2,//------ Si
00465   2,  2,  2,  4,  2,  3,//------ P
00466   2,  2,  2,  4,  2,  4,//------
00467   2,  2,  2,  4,  2,  5,//------
00468   2,  2,  2,  4,  2,  2,  4,//------
00469   2,  2,  2,  4,  2,  2,  4,  1,//------
00470   2,  2,  2,  4,  2,  2,  4,  2,//------
00471   2,  2,  2,  4,  2,  2,  4,  1,  2,//------
00472   2,  2,  2,  4,  2,  2,  4,  2,  2,//------
00473   2,  2,  2,  4,  2,  2,  4,  3,  2,//------
00474   2,  2,  2,  4,  2,  2,  4,  4,  2,//------
00475   2,  2,  2,  4,  2,  2,  4,  5,  2,//------
00476   2,  2,  2,  4,  2,  2,  4,  6,  2,//------
00477   2,  2,  2,  4,  2,  2,  4,  7,  2,//------
00478   2,  2,  2,  4,  2,  2,  4,  4,  4,  2,//------
00479   2,  2,  2,  4,  2,  2,  4,  4,  5,  2,//------
00480   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,//------
00481   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  1,//------
00482   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,//------
00483   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  3,//------
00484   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  4,//------
00485   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  5,//------
00486   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,//------
00487   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  1,//------
00488   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  2,//------
00489   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  1,  2,//------
00490   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  2,  2,//------
00491   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  3,  2,//------
00492   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  2,//------
00493   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  5,  2,//------
00494   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  6,  2,//------
00495   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  7,  2,//------
00496   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  4,  2,//------
00497   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  5,  2,//------
00498   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,//------
00499   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  1,//------
00500   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  2,//------
00501   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  3,//------
00502   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  4,//------
00503   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  5,//------
00504   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  2,  4,//------
00505   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  2,  4,  1,//------
00506   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  2,  4,  2,//------
00507   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  2,  4,  1,  2,//------
00508   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  2,  2,  4,  2,//------
00509   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  3,  2,  2,  4,  2,//------
00510   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  4,  2,  2,  4,  2,//------
00511   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  5,  2,  2,  4,  2,//------
00512   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  2,  2,  4,  2,//------
00513   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  7,  2,  2,  4,  2,//------
00514   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  7,  2,  2,  4,  1,  2,//------
00515   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  9,  2,  2,  4,  2,//------
00516   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6, 10,  2,  2,  4,  2,//------
00517   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6, 11,  2,  2,  4,  2,//------
00518   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6, 12,  2,  2,  4,  2,//------
00519   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6, 13,  2,  2,  4,  2,//------
00520   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  2,//------
00521   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  1,  2,//------
00522   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  2,  2,//------
00523   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  3,  2,//------
00524   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  2,//------
00525   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  5,  2,//------
00526   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  6,  2,//------
00527   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  7,  2,//------
00528   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  9,  1,//------
00529   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  1,//------
00530   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,//------
00531   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,  1,//------
00532   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,  2,//------
00533   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,  3,//------
00534   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,  4,//------
00535   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,  2,  3,//------
00536   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,  2,  4,//------
00537   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,  2,  4,  1,//------
00538   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,  2,  4,  2,//------
00539   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,  2,  4,  1,  2,//------
00540   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,  2,  4,  2,  2,//------
00541   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,  2,  2,  4,  1,  2,//------
00542   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  3,  2,  2,  4,  1,  2,//------
00543   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  4,  2,  2,  4,  1,  2,//------
00544   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  6,  2,  2,  4,  2,//------
00545   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  7,  2,  2,  4,  2,//------
00546   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  7,  2,  2,  4,  1,  2,//------
00547   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  8,  2,  2,  4,  1,  2,//------
00548   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6, 10,  2,  2,  4,  2,//------
00549   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6, 11,  2,  2,  4,  2,//------
00550   2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6, 12,  2,  2,  4,  2 //-----
00551 };
00552 
00553 const G4int G4hQAOModel::fNumberOfShells[101] =
00554 {
00555  0 ,  // nonexisting zero element
00556 
00557  1 ,  1 ,  2 ,  2 ,  3 ,    3 ,  4 ,  4 ,  3 ,  4 ,  //  1 - 10
00558 
00559  5 ,  5 ,  6 ,  6 ,  6 ,    6 ,  6 ,  7 ,  8 ,  8 ,  // 11 - 20
00560 
00561  9 ,  9 ,  9 ,  9 ,  9 ,    9 ,  9 , 10 , 10 , 10 ,  // 21 - 30
00562 
00563 11 , 11 , 11 , 11 , 11 ,   12 , 13 , 13 , 14 , 14 ,  // 31 - 40
00564 
00565 14 , 14 , 14 , 14 , 14 ,   15 , 15 , 15 , 16 , 16 ,  // 41 - 50
00566 
00567 // ----------------------------------------------------------
00568 
00569 16 , 16 , 16 , 17 , 18 ,   18 , 19 , 19 , 19 , 19 ,  // 51 - 60
00570 
00571 19 , 19 , 19 , 20 , 19 ,   19 , 19 , 19 , 19 , 20 ,  // 61 - 70
00572 
00573 21 , 21 , 21 , 21 , 21 ,   21 , 21 , 21 , 22 , 22 ,  // 71 - 80
00574 
00575 23 , 23 , 23 , 23 , 24 ,   24 , 25 , 25 , 26 , 26 ,  // 81 - 90
00576 
00577 27 , 27 , 27 , 26 , 26 ,   27 , 27 , 26 , 26 , 26    // 91 - 100
00578 
00579 };
00580 

Generated on Mon May 27 17:48:32 2013 for Geant4 by  doxygen 1.4.7