Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/materials/src/G4AtomicShells.cc

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

  1 //
  2 // ********************************************************************
  3 // * License and Disclaimer                                           *
  4 // *                                                                  *
  5 // * The  Geant4 software  is  copyright of the Copyright Holders  of *
  6 // * the Geant4 Collaboration.  It is provided  under  the terms  and *
  7 // * conditions of the Geant4 Software License,  included in the file *
  8 // * LICENSE and available at  http://cern.ch/geant4/license .  These *
  9 // * include a list of copyright holders.                             *
 10 // *                                                                  *
 11 // * Neither the authors of this software system, nor their employing *
 12 // * institutes,nor the agencies providing financial support for this *
 13 // * work  make  any representation or  warranty, express or implied, *
 14 // * regarding  this  software system or assume any liability for its *
 15 // * use.  Please see the license in the file  LICENSE  and URL above *
 16 // * for the full disclaimer and the limitation of liability.         *
 17 // *                                                                  *
 18 // * This  code  implementation is the result of  the  scientific and *
 19 // * technical work of the GEANT4 collaboration.                      *
 20 // * By using,  copying,  modifying or  distributing the software (or *
 21 // * any work based  on the software)  you  agree  to acknowledge its *
 22 // * use  in  resulting  scientific  publications,  and indicate your *
 23 // * acceptance of all terms of the Geant4 Software license.          *
 24 // ********************************************************************
 25 
 26 // 24-04-98, implementation of the first version, V. Grichine
 27 // 16-11-98, GetBindingEnergy(Z,ShellNb), M.Maire
 28 // 19-07-04, add a protection in GetNumberOfShells(), mma
 29 // 11-02-05, GetNumberOfElectrons(Z,ShellNb), V.Ivanchenko
 30 // 30-04-10, added fIndexOfShells, V.Ivanchenko
 31 // 12-10-22, data added for 101 >= Z <=104 by R. Chakma
 32 //           Electron Binding energy from Table of Isotopes 8th Ed
 33 //           Electron Configuration from CRC Handbook of Chemestry
 34 //           and Physics 8th Ed
 35 
 36 #include "G4AtomicShells.hh"
 37 
 38 #include "G4SystemOfUnits.hh"
 39 
 40 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
 41 
 42 // clang-format off
 43 const G4int G4AtomicShells::fNumberOfShells[105] = 
 44 {
 45   1,   // nonexistent zero element
 46   1,  1,  2,  2,  3,    3,  4,  4,  3,  4, //   1 - 10
 47   5,  5,  6,  6,  6,    6,  6,  7,  8,  8, //  11 - 20
 48   9,  9,  9,  9,  9,    9,  9, 10, 10, 10, //  21 - 30
 49  11, 11, 11, 11, 11,   12, 13, 13, 14, 14, //  31 - 40
 50  14, 14, 14, 14, 14,   15, 15, 15, 16, 16, //  41 - 50
 51  16, 16, 16, 17, 18,   18, 19, 19, 19, 19, //  51 - 60
 52  19, 19, 19, 20, 19,   19, 19, 19, 19, 20, //  61 - 70
 53  21, 21, 21, 21, 21,   21, 21, 21, 22, 22, //  71 - 80
 54  23, 23, 23, 23, 24,   24, 25, 25, 26, 26, //  81 - 90
 55  27, 27, 27, 26, 26,   27, 27, 26, 26, 26, //  91 - 100
 56  27, 27, 28, 28                            // 101 - 104
 57 };
 58 
 59 // The total shell number is:
 60 // 1 + G4AtomicShells::TotalNumberOfShells(104) = 1 + 1649 = 1650 
 61 
 62 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
 63 
 64 const G4int G4AtomicShells::fIndexOfShells[105] =
 65 {
 66     0,   // nonexistent zero element
 67     1,    2,    3,    5,    7,     10,   13,   17,   21,   24, //   1 - 10  
 68    28,   33,   38,   44,   50,     56,   62,   68,   75,   83, //  11 - 20 
 69    91,  100,  109,  118,  127,    136,  145,  154,  164,  174, //  21 - 30 
 70   184,  195,  206,  217,  228,    239,  251,  264,  277,  291, //  31 - 40 
 71   305,  319,  333,  347,  361,    375,  390,  405,  420,  436, //  41 - 50 
 72   452,  468,  484,  500,  517,    535,  553,  572,  591,  610, //  51 - 60 
 73   629,  648,  667,  686,  706,    725,  744,  763,  782,  801, //  61 - 70 
 74   821,  842,  863,  884,  905,    926,  947,  968,  989, 1011, //  71 - 80 
 75  1033, 1056, 1079, 1102, 1125,   1149, 1173, 1198, 1223, 1249, //  81 - 90 
 76  1275, 1302, 1329, 1356, 1382,   1408, 1435, 1462, 1488, 1514, //  91 - 100
 77  1540, 1567, 1594, 1622                                        // 101 - 104
 78 };
 79 
 80 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
 81 
 82 const G4double G4AtomicShells::fBindingEnergies[1650] =
 83 {
 84   0.0,   // Nonexisting zero element
 85 
 86   //  H  ---------------------------------------------------------1
 87   13.60,
 88 
 89   //  He ---------------------------------------------------------2
 90   24.59,
 91 
 92   //  Li  --------------------------------------------------------3
 93   58.0,  5.39,
 94 
 95   //  Be  --------------------------------------------------------5
 96   115.0, 9.32,
 97 
 98   //  B   --------------------------------------------------------7
 99   192.0, 12.93, 8.3,
100 
101   //  C  ---------------------------------------------------------10
102   288.0, 16.59, 11.26,
103 
104   //  N  ---------------------------------------------------------
105   403.0, 37.3, 20.33, 14.53,
106 
107   //  O  ---------------------------------------------------------
108   543.1, 41.6, 28.48, 13.62,
109 
110   //  F  ---------------------------------------------------------
111   696.7, 37.85, 17.42,
112 
113   //  Ne ---------------------------------------------------------
114   870.1, 48.47, 21.66, 21.56,
115 
116   //  Na ---------------------------------------------------------
117   1075.0, 66.0, 34.0, 34.0, 5.14,
118 
119   //  Mg ---------------------------------------------------------
120   1308.0, 92.0, 54.0, 54.0, 7.65,
121 
122   //  Al ---------------------------------------------------------
123   1564.0, 121., 77.0, 77.0, 10.62, 5.99,
124 
125   //  Si ---------------------------------------------------------
126   1844.0, 154.0, 104.0, 104.0, 13.46, 8.15,
127 
128   //  P  ---------------------------------------------------------
129   2148.0, 191.0, 135.0, 134.0, 16.15, 10.49,
130 
131   //  S  ---------------------------------------------------------
132   2476.0, 232.0, 170.0, 168.0, 20.20, 10.36,
133 
134   //  Cl ---------------------------------------------------------
135   2829.0, 277.0, 208.0, 206.0, 24.54, 12.97,
136 
137   //  Ar ---------------------------------------------------------
138   3206.3, 326.5, 250.6, 248.5, 29.24, 15.94, 15.76,
139 
140   //  K  ---------------------------------------------------------
141   3610.0, 381.0, 299.0, 296.0, 37.0, 19.0, 18.7, 4.34,
142 
143   //  Ca ---------------------------------------------------------
144   4041.0, 441.0, 353.0, 349.0, 46.0, 28.0, 28.0, 6.11,
145 
146   //  Sc ---------------------------------------------------------
147   4494.0, 503.0, 408.0, 403.0, 55.0, 33.0, 33.0, 8.0, 6.54,
148 
149   //  Ti ---------------------------------------------------------
150   4966.0, 567.0, 465.0, 459.0, 64.0, 39.0, 38.0, 8.0, 6.82,
151 
152   //  V  ---------------------------------------------------------
153   5465.0, 633.0, 525.0, 518.0, 72.0, 44.0, 43.0, 8.0, 6.74,
154 
155   //  Cr ---------------------------------------------------------
156   5989.0, 702.0, 589.0, 580.0, 80.0, 49.0, 48.0, 8.25, 6.77,
157 
158   //  Mn ---------------------------------------------------------
159   6539.0, 755.0, 656.0, 645.0, 89.0, 55.0, 53.0, 9.0, 7.43,
160 
161   //  Fe ---------------------------------------------------------
162   7112.0, 851.0, 726.0, 713.0, 98.0, 61.0, 59.0, 9.0, 7.87,
163 
164   //  Co ---------------------------------------------------------
165   7709.0, 931.0, 800.0, 785.0, 107.0, 68.0, 66.0, 9.0, 7.86,
166 
167   //  Ni ---------------------------------------------------------
168   8333.0, 1015.0, 877.0, 860.0, 117.0, 75.0, 73.0, 10.0, 10.0,
169      7.64,
170 
171   //  Cu ---------------------------------------------------------
172   8979.0, 1103.0, 958.0, 938.0, 127.0, 82.0, 80.0, 11.0, 10.4,
173      7.73,
174 
175   //  Zn ---------------------------------------------------------
176   9659.0, 1198.0, 1047.0, 1024.0, 141.0, 94.0, 91.0, 12.0, 11.2,
177      9.39,
178 
179   //  Ga ---------------------------------------------------------
180   10367.0, 1302.0, 1146.0, 1119.0, 162.0, 111.0, 107.0, 21.0,
181      20.0,   11.0,    6.0,
182 
183   //  Ge ---------------------------------------------------------
184   11103.0, 1413.0, 1251.0, 1220.0, 184.0, 130.0, 125.0, 33.0,
185      32.0,   14.3,    7.9,
186 
187   //  As ---------------------------------------------------------
188   11867.0, 1531.0, 1362.0, 1327.0, 208.0, 151.0, 145.0, 46.0,
189      45.0,   17.0,    9.81,
190 
191   //  Se ---------------------------------------------------------
192   12658.0, 1656.0, 1479.0, 1439.0, 234.0, 173.0, 166.0, 61.0,
193      60.0,   20.15,   9.75,
194 
195   //  Br ---------------------------------------------------------
196   13474.0, 1787.0, 1602.0, 1556.0, 262.0, 197.0, 189.0, 77.0,
197      76.0,   23.8,   11.85,
198 
199   //  Kr ---------------------------------------------------------
200   14326.0, 1924.6, 1730.9, 1678.4, 292.8, 222.2, 214.4, 95.0,
201      93.8,   27.51,  14.65,  14.0,
202 
203   //  Rb ---------------------------------------------------------
204   15200.0, 2068.0, 1867.0, 1807.0, 325.0, 251.0, 242.0, 116.0,
205     114.0,   32.0,   16.0,   15.3,   4.18,
206 
207   //  Sr ---------------------------------------------------------
208   16105.0, 2219.0, 2010.0, 1943.0, 361.0, 283.0, 273.0, 139.0,
209     137.0,   40.0,   23.0,   22.0,   5.69,
210 
211   //  Y  ---------------------------------------------------------
212   17038.0, 2375.0, 2158.0, 2083.0, 397.0, 315.0, 304.0, 163.0,
213     161.0,   48.0,   30.0,   29.0,   6.48,   6.38,  
214 
215   //  Zr ---------------------------------------------------------
216   17998.0, 2536.0, 2311.0, 2227.0, 434.0, 348.0, 335.0, 187.0,
217     185.0,   56.0,   35.0,   33.0,   8.61,  6.84,
218 
219   //  Nb ----------------------------------------------------------
220   18986.0, 2702.0, 2469.0, 2375.0, 472.0, 382.0, 367.0, 212.0,
221     209.0,   62.0,   40.0,   38.0,   7.17,  6.88,
222 
223   //  Mo -----------------------------------------------------------
224   20000.0, 2872.0, 2632.0, 2527.0, 511.0, 416.0, 399.0, 237.0,
225     234.0,   68.0,   45.0,   42.0,   8.56,  7.10,
226 
227   //  Tc -----------------------------------------------------------
228   21044.0, 3048.0, 2800.0, 2683.0, 551.0, 451.0, 432.0, 263.0,
229     259.0,   74.0,   49.0,   45.0,   8.6,   7.28,
230 
231   //  Ru -----------------------------------------------------------
232   22117.0, 3230.0, 2973.0, 2844.0, 592.0, 488.0, 466.0, 290.0,
233     286.0,   81.0,   53.0,   49.0,   8.5,   7.37,
234 
235   //  Rh -----------------------------------------------------------
236   23220.0, 3418.0, 3152.0, 3010.0, 634.0, 526.0, 501.0, 318.0,
237     313.0,   87.0,   58.0,   53.0,   9.56,  7.46,
238 
239   //  Pd -----------------------------------------------------------
240   24350.0, 3611.0, 3337.0, 3180.0, 677.0, 565.0, 537.0, 347.0,
241     342.0,   93.0,   63.0,   57.0,   8.78,  8.34,  7.52,
242 
243   //  Ag -----------------------------------------------------------
244   25514.0, 3812.0, 3530.0, 3357.0, 724.0, 608.0, 577.0, 379.0,
245     373.0,  101.0,   69.0,   63.0,  11.0,  10.0,   7.58,
246 
247   //  Cd ------------------------------------------------------------
248   26711.0, 4022.0, 3732.0, 3542.0, 775.0, 655.0, 621.0, 415.0,
249     408.0,  112.0,   78.0,   71.0,  14.0,  13.0,   8.99,
250 
251   //  In ------------------------------------------------------------
252   27940.0, 4242.0, 3943.0, 3735.0, 830.0, 707.0, 669.0, 455.0,
253     447.0,  126.0,   90.0,   82.0,  21.0,  20.0,  10.0,   5.79,
254 
255   //  Sn ------------------------------------------------------------
256   29200.0, 4469.0, 4160.0, 3933.0, 888.0, 761.0, 719.0, 497.0,
257     489.0,  141.0,  102.0,   93.0,  29.0,  28.0,  12.0,   7.34,
258 
259   //  Sb ------------------------------------------------------------
260   30419.0, 4698.0, 4385.0, 4137.0, 949.0, 817.0, 771.0, 542.0,
261     533.0,  157.0,  114.0,  104.0,  38.0,  37.0,  15.0,   8.64,
262 
263   //  Te ------------------------------------------------------------
264   31814.0, 4939.0, 4612.0, 4347.0, 1012.0, 876.0, 825.0, 589.0,
265     578.0,  174.0,  127.0,  117.0,   48.0,  46.0,  17.84,  9.01,
266 
267   //  I  ------------------------------------------------------------
268   33169.0, 5188.0, 4852.0, 4557.0, 1078.0, 937.0, 881.0, 638.0,
269     626.0,  193.0,  141.0,  131.0,   58.0,  56.0,  20.61, 10.45,
270 
271   //  Xe ------------------------------------------------------------
272   34570.0, 5460.0, 5110.0, 4790.0, 1148.7, 1002.1, 940.6, 689.0,
273     676.4,  213.2,  157.0,  145.5,   69.5,   67.5,  23.39, 13.43,
274      12.13,
275 
276   //  Cs ------------------------------------------------------------
277   35985.0, 5714.0, 5359.0, 5012.0, 1220.0, 1068.0, 1000.0, 742.0,
278     728.0,  233.0,  174.0,  164.0,   81.0,   79.0,   25.0,  14.0,
279      12.3,    3.89,
280 
281   //  Ba -------------------------------------------------------------
282   37441.0, 5989.0, 5624.0, 5247.0, 1293.0, 1138.0, 1063.0, 797.0,
283     782.0,  254.0,  193.0,  181.0,   94.0,   92.0,   31.0,  18.0,
284      16.0,    5.21,
285 
286   //  La -------------------------------------------------------------
287   38925.0, 6266.0, 5891.0, 5483.0, 1365.0, 1207.0, 1124.0, 851.0,
288     834.0,  273.0,  210.0,  196.0,  105.0,  103.0,   36.0,  22.0,
289      19.0,    5.75,   5.58,
290 
291   //  Ce -------------------------------------------------------------
292   40443.0, 6548.0, 6164.0, 5723.0, 1437.0, 1275.0, 1184.0, 903.0,
293     885.0,  291.0,  225.0,  209.0,  114.0,  111.0,   39.0,  25.0, 
294      22.0,    6.0,    5.65,
295 
296   //  Pr -------------------------------------------------------------
297   41991.0, 6835.0, 6440.0, 5964.0, 1509.0, 1342.0, 1244.0, 954.0,
298     934.0,  307.0,  238.0,  220.0,  121.0,  117.0,   41.0,
299      27.0,   24.0,    6.0,  5.42 ,
300 
301   //  Nd -------------------------------------------------------------
302   43569.0, 7126.0, 6722.0, 6208.0, 1580.0, 1408.0, 1303.0, 1005.0,
303     983.0,  321.0,  250.0,  230.0,  126.0,  122.0,   42.0,
304      28.0,   25.0,    6.0,  5.49,
305 
306   //  Pm -------------------------------------------------------------
307   45184.0, 7428.0, 7013.0, 6459.0, 1653.0, 1476.0, 1362.0, 1057.0,
308    1032.0,  325.0,  261.0,  240.0,  131.0,  127.0,   43.0,
309      28.0,   25.0,    6.0,   5.55,
310 
311   //  Sm -------------------------------------------------------------
312   46834.0, 7737.0, 7312.0, 6716.0, 1728.0, 1546.0, 1422.0, 1110.0,
313    1083.0,  349.0,  273.0,  251.0,  137.0,  132.0,   44.0,
314      29.0,   25.0,    6.0,    5.63,
315 
316   //  Eu -------------------------------------------------------------
317   48519.0, 8052.0, 7617.0, 6977.0, 1805.0, 1618.0, 1484.0, 1164.0,
318    1135.0,  364.0,  286.0,  262.0,  143.0,  137.0,   45.0,
319      30.0,   26.0,    6.0,    5.68,
320 
321   //  Gd -------------------------------------------------------------
322   50239.0, 8376.0, 7930.0, 7243.0, 1884.0, 1692.0, 1547.0, 1220.0,
323    1189.0,  380.0,  300.0,  273.0,  150.0,  143.0,   46.0,
324      31.0,   27.0,    6.16,   6.0,    6.0,
325 
326   //  Tb -------------------------------------------------------------
327   51996.0, 8708.0, 8252.0, 7514.0, 1965.0, 1768.0, 1612.0, 1277.0,
328    1243.0,  398.0,  315.0,  285.0,  157.0,  150.0,   48.0,
329      32.0,   28.0,    6.0,    5.85,
330 
331   //  Dy -------------------------------------------------------------
332   53789.0, 9046.0, 8581.0, 7790.0, 2048.0, 1846.0, 1678.0, 1335.0,
333    1298.0,  416.0,  331.0,  297.0,  164.0,  157.0,   50.0,
334      33.0,   28.0,    6.0,    5.93,
335 
336   //  Ho -------------------------------------------------------------
337   55618.0, 9394.0, 8918.0, 8071.0, 2133.0, 1926.0, 1746.0, 1395.0,
338    1354.0,  434.0,  348.0,  310.0,  172.0,  164.0,   52.0,
339      34.0,   29.0,    6.02,   6.0,
340 
341   //  Er -------------------------------------------------------------
342   57486.0, 9751.0, 9264.0, 8358.0, 2220.0, 2008.0, 1815.0, 1456.0,
343    1412.0,  452.0,  365.0,  323.0,  181.0,  172.0,   54.0,
344      35.0,   30.0,    6.10,   6.0, 
345 
346   //  Tu -------------------------------------------------------------
347   59390.0, 10116.0, 9617.0, 8648.0, 2309.0, 2092.0, 1885.0, 1518.0,
348    1471.0,   471.0,  382.0,  336.0,  190.0,  181.0,   56.0,
349      36.0,    30.0,    7.0,    6.18,
350 
351   //  Yb -------------------------------------------------------------
352   61332.0, 10486.0, 9978.0, 8944.0, 2401.0, 2178.0, 1956.0, 1580.0,
353    1531.0,   490.0,  399.0,  349.0,  200.0,  190.0,  
354      58.0,    37.0,   31.0,    8.0,    7.0,    6.25,
355 
356   //  Lu -------------------------------------------------------------
357   63314.0, 10870.0, 10349.0, 9244.0, 2499.0, 2270.0, 2032.0, 1647.0,
358    1596.0,   514.0,   420.0,  366.0,  213.0,  202.0,
359      62.0,    39.0,    32.0,   13.0,   12.0,    7.0,    6.6,
360 
361   //  Hf -------------------------------------------------------------
362   65351.0, 11271.0, 10739.0, 9561.0, 2604.0, 2369.0, 2113.0, 1720.0,
363    1665.0,   542.0,   444.0,  386.0,  229.0,  217.0,
364      68.0,    43.0,    35.0,   21.0,   20.0,    7.5,    7.0,
365 
366   //  Ta -------------------------------------------------------------
367   67416.0, 11682.0, 11136.0, 9881.0, 2712.0, 2472.0, 2197.0, 1796.0,
368    1737.0,   570.0,   469.0,  407.0,  245.0,  232.0,
369      74.0,    47.0,    38.0,   30.0,   28.0,    8.3,    7.9,
370 
371   //  W  -------------------------------------------------------------
372   69525.0, 12100.0, 11544.0, 10207.0, 2823.0, 2577.0, 2283.0, 1874.0,
373    1811.0,   599.0,   495.0,   428.0,  261.0,  248.0,
374      80.0,    51.0,    41.0,    38.0,   36.0,    9.0,    8.0,
375 
376   //  Re -------------------------------------------------------------
377   71676.0, 12527.0, 11959.0, 10535.0, 2937.0, 2686.0, 2371.0, 1953.0,
378    1887.0,   629.0,   522.0,   450.0,  278.0,  264.0,
379      86.0,    56.0,    47.0,   45.0,    45.0,     9.6,    7.9,
380 
381   //  Os -------------------------------------------------------------
382   73871.0, 12968.0, 12385.0, 10871.0, 3054.0, 2797.0, 2461.0, 2035.0,
383    1964.0,   660.0,   551.0,   473.0,  295.0,  280.0,
384      92.0,    61.0,    56.0,    54.0,   49.0,    9.6,    8.5,
385 
386   //  Ir -------------------------------------------------------------
387   76111.0, 13419.0, 12824.0, 11215.0, 3175.0, 2912.0, 2554.0, 2119.0,
388    2044.0,   693.0,   581.0,   497.0,  314.0,  298.0,
389      99.0,    67.0,    66.0,    64.0,   53.0,    9.6,    9.1,
390 
391   //  Pt -------------------------------------------------------------
392   78395.0, 13880.0, 13273.0, 11564.0, 3300.0, 3030.0, 2649.0, 2206.0,
393    2126.0,   727.0,   612.0,   522.0,  335.0,  318.0,
394     106.0,    78.0,    75.0,    71.0,   57.0,     9.6,    9.0,
395 
396   //  Au -------------------------------------------------------------
397   80725.0, 14353.0, 13734.0, 11919.0, 3430.0, 3153.0, 2748.0, 2295.0,
398    2210.0,   764.0,   645.0,   548.0,  357.0,  339.0,
399     114.0,    91.0,    87.0,    76.0,   61.0,    12.5,  11.1,    9.23,
400 
401   //  Hg -------------------------------------------------------------
402   83102.0, 14839.0, 14209.0, 12284.0, 3567.0, 3283.0, 2852.0, 2390.0,
403    2300.0,   806.0,   683.0,   579.0,  382.0,  363.0,
404     125.0,   107.0,   103.0,    85.0,   68.0,   14.0,   12.0,   10.4,
405 
406   //  Tl -------------------------------------------------------------
407   85530.0, 15347.0, 14698.0, 12658.0, 3710.0, 3420.0, 2961.0, 2490.0,
408    2394.0,   852.0,   726.0,   615.0,  411.0,  391.0,
409     139.0,   127.0,   123.0,    98.0,   79.0,   21.0,   19.0,    8.0,
410       6.11,
411 
412   //  Pb -------------------------------------------------------------
413   88005.0, 15861.0, 15200.0, 13055.0, 3857.0, 3560.0, 3072.0, 2592.0,
414    2490.0,   899.0,   769.0,   651.0,  441.0,  419.0,
415     153.0,   148.0,   144.0,   111.0,   90.0,   27.0,   25.0,   10.0,
416       7.42,
417 
418   //  Bi -------------------------------------------------------------
419   90526.0, 16388.0, 15711.0, 13419.0, 4007.0, 3704.0, 3185.0, 2696.0,
420    2588.0,   946.0,   813.0,   687.0,  472.0,  448.0,  170.0,
421     167.0,   165.0,   125.0,   101.0,   34.0,   32.0,   12.0,    7.29,
422 
423   //  Po -------------------------------------------------------------
424   93105.0, 16939.0, 16244.0, 13814.0, 4161.0, 3852.0, 3301.0, 2802.0,
425    2687.0,   994.0,   858.0,   724.0,  503.0,  478.0,  193.0,  187.0,
426     181.0,   139.0,   112.0,    41.0,   38.0,   15.0,    8.43,
427 
428   //  At -------------------------------------------------------------
429   95730.0, 17493.0, 16785.0, 14214.0, 4320.0, 4005.0, 3420.0, 2910.0,
430    2788.0,  1044.0,   904.0,   761.0,  535.0,  508.0,  217.0,  211.0,
431     196.0,   153.0,   123.0,    48.0,   44.0,   19.0,   11.0,    9.3,
432 
433   //  Rn -------------------------------------------------------------
434   98404.0, 18049.0, 17337.0, 14619.0, 4483.0, 4162.0, 3452.0, 3109.0,
435    2890.0,  1096.0,   951.0,   798.0,  567.0,  538.0,  242.0,  235.0,
436     212.0,   167.0,   134.0,    55.0,   51.0,   24.0,   14.0,   10.7,
437 
438   //  Fr -------------------------------------------------------------
439  101137.0, 18639.0, 17907.0, 15031.0, 4652.0, 4324.0, 3666.0, 3134.0,
440    2998.0,  1153.0,  1003.0,   839.0,  603.0,  572.0,  268.0,  260.0,
441     231.0,   183.0,   147.0,    65.0,   61.0,   33.0,   19.0,   14.0,
442       4.0,
443 
444   //  Ra -------------------------------------------------------------
445  103922.0, 19237.0, 18484.0, 15444.0, 4822.0, 4491.0, 3793.0, 3254.0,
446    3111.0,  1214.0,  1060.0,   884.0,  642.0,  609.0,  296.0,  287.0,
447     253.0,   201.0,   161.0,    77.0,   73.0,   40.0,   25.0,   19.0,
448       5.28,
449 
450   //  Ac -------------------------------------------------------------
451  106755.0, 19840.0, 19083.0, 15871.0, 5002.0, 4656.0, 3921.0, 3374.0,
452    3223.0,  1274.0,  1116.0,   928.0,  680.0,  645.0,  322.0,  313.0,
453     274.0,   218.0,   174.0,    88.0,   83.0,   45.0,   29.0,   22.0,
454       6.3,     5.7,
455 
456   //  Th -------------------------------------------------------------
457  109651.0, 20472.0, 19693.0, 16300.0, 5182.0, 4830.0, 4049.0, 3494.0,
458    3335.0,  1333.0,  1171.0,   970.0,  717.0,  679.0,  347.0,  338.0,
459     293.0,   233.0,   185.0,    97.0,   91.0,   50.0,   33.0,   25.0,
460       6.0,     6.0,
461 
462   //  Pa -------------------------------------------------------------
463  112601.0, 21105.0, 20314.0, 16733.0, 5367.0, 5001.0, 4178.0, 3613.0,
464    3446.0,  1390.0,  1225.0,  1011.0,  752.0,  712.0,  372.0,  362.0,
465     312.0,   248.0,   195.0,   104.0,   97.0,   50.0,   32.0,
466      24.0,     6.0,     6.0,     6.0,
467 
468   //  U  -------------------------------------------------------------
469  115606.0, 21757.0, 20948.0, 17166.0, 5548.0, 5182.0, 4308.0, 3733.0,
470    3557.0,  1446.0,  1278.0,  1050.0,  785.0,  743.0,  396.0,  386.0,
471     329.0,   261.0,   203.0,   110.0,  101.0,   52.0,   34.0,
472      24.0,     6.1,     6.0,     6.0,
473 
474   //  Np -------------------------------------------------------------
475  118678.0, 22426.0, 21600.0, 17610.0, 5723.0, 5366.0, 4440.0, 3854.0,
476    3669.0,  1504.0,  1331.0,  1089.0,  819.0,  774.0,  421.0,  410.0,
477     346.0,   274.0,   211.0,   116.0,  106.0,   54.0,   35.0,
478      25.0,     6.0,     6.0,     6.0,
479 
480   //  Pu -------------------------------------------------------------
481  121818.0, 23097.0, 22266.0, 18056.0, 5933.0, 5541.0, 4557.0, 3977.0,
482    3783.0,  1563.0,  1384.0,  1128.0,  853.0,  805.0,  446.0,  434.0,
483     356.0,   287.0,   219.0,   122.0,  111.0,   53.0,   34.0,
484      23.0,     6.0,     6.0,
485 
486   //  Am -------------------------------------------------------------
487  125027.0, 23773.0, 22944.0, 18504.0, 6121.0, 5710.0, 4667.0, 4102.0,
488    3898.0,  1623.0,  1439.0,  1167.0,  887.0,  836.0,  467.0,  452.0,
489     355.0,   301.0,   220.0,   123.0,  112.0,   54.0,   44.0,
490      36.0,     6.0,     6.0,
491 
492   //  Cm -------------------------------------------------------------
493  128220.0, 24460.0, 23779.0, 18930.0, 6288.0, 5895.0, 4797.0, 4236.0,
494    4014.0,  1664.0,  1493.0,  1194.0,  919.0,  864.0,  494.0,  479.0,
495     384.0,   314.0,   239.0,   126.0,  119.0,   60.0,   39.0,
496      27.0,    11.0,     5.0,     6.0,
497 
498   //  Bk -------------------------------------------------------------
499  131590.0, 25275.0, 24385.0, 19452.0, 6556.0, 6147.0, 4977.0, 4366.0,
500    4133.0,  1729.0,  1554.0,  1236.0,  955.0,  898.0,  520.0,  504.0,
501     401.0,   329.0,   248.0,   142.0,  124.0,   63.0,   41.0,
502      27.0,    12.0,     6.0,     4.0,
503 
504   //  Cf -------------------------------------------------------------
505  135960.0, 26110.0, 25250.0, 19930.0, 6754.0, 6359.0, 5109.0, 4492.0,
506    4247.0,  1789.0,  1610.0,  1273.0,  987.0,  925.0,  546.0,  529.0,
507     412.0,   338.0,   251.0,   142.0,  129.0,   61.0,   39.0,
508      25.0,     9.0,     6.0,
509 
510   //  Es -------------------------------------------------------------1488
511  139490.0, 26900.0, 26020.0, 20410.0, 6977.0, 6754.0, 5252.0, 4630.0,
512    4369.0,  1857.0,  1674.0,  1316.0, 1024.0,  959.0,  573.0,  554.0,
513     429.0,   353.0,   260.0,   148.0,  135.0,   63.0,   40.0,
514      25.0,     9.0,     6.0,
515 
516   //  Fm -------------------------------------------------------------1514
517  143090.0, 27700.0, 26810.0, 20900.0, 7205.0, 6793.0, 5397.0, 4766.0,
518    4498.0,  1933.0,  1746.0,  1366.0, 1068.0, 1000.0,  606.0,  587.0,
519     453.0,   375.0,   275.0,   160.0,  145.0,   69.0,   45.0,
520      29.0,    15.0,     7.0,
521 
522   // Md --------------------------------------------------------------1540
523  146526.0, 28387.0, 27438.0, 21356.0, 7440.0, 7001.0, 5552.0, 4889.0,
524    4615.0,  2024.0,  1816.0,  1424.0, 1105.0, 1034.0,  618.0,  597.0,
525     471.0,   389.0,   272.0,   154.0,  137.0,   12.9,   10.5,   61.0,
526      37.0,    17.0,     5.9,
527 
528   // No --------------------------------------------------------------1567
529  149208.0, 29221.0, 28255.0, 21851.0, 7678.0, 7231.0, 5702.0, 5028.0,
530    4741.0,  2097.0,  1885.0,  1469.0, 1145.0, 1070.0,  645.0,  624.0,
531     490.0,   406.0,   280.0,   161.0,  142.0,   13.6,   11.1,   63.0,
532      38.0,    18.0,     6.0,
533 
534   // Lr --------------------------------------------------------------1594
535  152970.0, 30083.0, 29103.0, 22359.0, 7930.0, 7474.0, 5860.0, 5176.0,
536    4876.0,  2180.0,  1963.0,  1523.0, 1192.0, 1112.0,  680.0,  658.0,
537     516.0,   429.0,   296.0,   174.0,  154.0,   19.9,   17.0,   71.0,
538      44.0,    21.0,     3.9,     6.9,
539 
540   // Rf --------------------------------------------------------------1622
541  156288.0, 30881.0, 29986.0, 22907.0, 8161.0, 7738.0, 6009.0, 5336.0,
542    5014.0,  2237.0,  2035.0,  1554.0, 1233.0, 1149.0,  725.0,  701.0,
543     535.0,   448.0,   319.0,   190.0,  171.0,   26.0,   22.8,   82.0,
544      55.0,    33.0,     5.0,     7.5
545 };
546 
547 const G4int G4AtomicShells::fNumberOfElectrons[1650] =
548 {
549   0,   // nonexistent zero element
550   //  H  ---------------------------------------------------------
551   1,
552   //  He ---------------------------------------------------------
553   2,
554   //  Li  --------------------------------------------------------
555   2, 1,
556   //  Be  --------------------------------------------------------
557   2, 2,
558   //  B   --------------------------------------------------------
559   2, 2, 1,
560   //  C  ---------------------------------------------------------
561   2, 2, 2,
562   //  N  ---------------------------------------------------------
563   2, 2, 2, 1,
564   //  O  ---------------------------------------------------------
565   2, 2, 2, 2,
566   //  F  ---------------------------------------------------------
567   2, 2, 5,
568   //  Ne ---------------------------------------------------------
569   2, 2, 2, 4,
570   //  Na ---------------------------------------------------------
571   2, 2, 2, 4, 1,
572   //  Mg ---------------------------------------------------------
573   2, 2, 2, 4, 2,
574   //  Al ---------------------------------------------------------
575   2, 2, 2, 4, 2, 1,
576   //  Si ---------------------------------------------------------
577   2, 2, 2, 4, 2, 2,
578   //  P  ---------------------------------------------------------
579   2, 2, 2, 4, 2, 3,
580   //  S  ---------------------------------------------------------
581   2, 2, 2, 4, 2, 4,
582   //  Cl ---------------------------------------------------------
583   2, 2, 2, 4, 2, 5,
584   //  Ar ---------------------------------------------------------
585   2, 2, 2, 4, 2, 2, 4,
586   //  K  ---------------------------------------------------------
587   2, 2, 2, 4, 2, 2, 4, 1,
588   //  Ca ---------------------------------------------------------
589   2, 2, 2, 4, 2, 2, 4, 2,
590   //  Sc ---------------------------------------------------------
591   2, 2, 2, 4, 2, 2, 4, 1, 2,
592   //  Ti ---------------------------------------------------------
593   2, 2, 2, 4, 2, 2, 4, 2, 2,
594   //  V  ---------------------------------------------------------
595   2, 2, 2, 4, 2, 2, 4, 3, 2,
596   //  Cr ---------------------------------------------------------
597   2, 2, 2, 4, 2, 2, 4, 4, 2,
598   //  Mn ---------------------------------------------------------
599   2, 2, 2, 4, 2, 2, 4, 5, 2,
600   //  Fe ---------------------------------------------------------
601   2, 2, 2, 4, 2, 2, 4, 6, 2,
602   //  Co ---------------------------------------------------------
603   2, 2, 2, 4, 2, 2, 4, 7, 2,
604   //  Ni ---------------------------------------------------------
605   2, 2, 2, 4, 2, 2, 4, 4, 4, 2,
606   //  Cu ---------------------------------------------------------
607   2, 2, 2, 4, 2, 2, 4, 4, 5, 2,
608   //  Zn ---------------------------------------------------------
609   2, 2, 2, 4, 2, 2, 4, 4, 6, 2,
610   //  Ga ---------------------------------------------------------
611   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 1,
612   //  Ge ---------------------------------------------------------
613   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2,
614   //  As ---------------------------------------------------------
615   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 3,
616   //  Se ---------------------------------------------------------
617   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 4,
618   //  Br ---------------------------------------------------------
619   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 5,
620   //  Kr ---------------------------------------------------------
621   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4,
622   //  Rb ---------------------------------------------------------
623   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 1,
624   //  Sr ---------------------------------------------------------
625   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 2,
626   //  Y  ---------------------------------------------------------
627   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 2, 1,
628   //  Zr ---------------------------------------------------------
629   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 2, 2,
630   //  Nb ----------------------------------------------------------
631   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 3, 2,
632   //  Mo -----------------------------------------------------------
633   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 2,
634   //  Tc -----------------------------------------------------------
635   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 5, 2,
636   //  Ru -----------------------------------------------------------
637   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 6, 2,
638   //  Rh -----------------------------------------------------------
639   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 7, 2,
640   //  Pd -----------------------------------------------------------
641   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 4, 2,
642   //  Ag -----------------------------------------------------------
643   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 5, 2,
644   //  Cd ------------------------------------------------------------
645   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2,
646   //  In ------------------------------------------------------------
647   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 1,
648   //  Sn ------------------------------------------------------------
649   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2,
650   //  Sb ------------------------------------------------------------
651   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 3,
652   //  Te ------------------------------------------------------------
653   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 4,
654   //  I  ------------------------------------------------------------
655   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 5,
656   //  Xe ------------------------------------------------------------
657   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4,
658   //  Cs ------------------------------------------------------------
659   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 1,
660   //  Ba -------------------------------------------------------------
661   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 2,
662   //  La -------------------------------------------------------------
663   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 1, 2,
664   //  Ce -------------------------------------------------------------
665   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 2, 2,
666   //  Pr -------------------------------------------------------------
667   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 3, 2,
668   //  Nd -------------------------------------------------------------
669   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 4, 2,
670   //  Pm -------------------------------------------------------------
671   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 5, 2,
672   //  Sm -------------------------------------------------------------
673   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 6, 2,
674   //  Eu -------------------------------------------------------------
675   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 7, 2,
676   //  Gd -------------------------------------------------------------
677   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 2, 7, 1,
678   //  Tb -------------------------------------------------------------
679   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 9, 2,
680   //  Dy -------------------------------------------------------------
681   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 10,2,
682   //  Ho -------------------------------------------------------------
683   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 2,11,
684   //  Er -------------------------------------------------------------
685   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 2,12,
686   //  Tu -------------------------------------------------------------
687   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4,13, 2,
688   //  Yb -------------------------------------------------------------
689   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 6, 8, 2,
690   //  Lu -------------------------------------------------------------
691   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 6, 8, 2, 1,
692   //  Hf -------------------------------------------------------------
693   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 6, 8, 2, 2,
694   //  Ta -------------------------------------------------------------
695   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 6, 8, 3, 2,
696   //  W  -------------------------------------------------------------
697   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 4, 6, 8, 4, 2,
698   //  Re -------------------------------------------------------------
699   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 6, 8, 4, 5, 2,
700   //  Os -------------------------------------------------------------
701   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 2, 6, 8, 4, 6, 2,
702   //  Ir -------------------------------------------------------------
703   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 6, 2, 8, 4, 7, 2,
704   //  Pt -------------------------------------------------------------
705   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 6, 8, 2, 4, 9, 1,
706   //  Au -------------------------------------------------------------
707   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 6, 8, 2, 4, 4, 6, 1,
708   //  Hg -------------------------------------------------------------
709   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 6, 8, 2, 4, 4, 6, 2,
710   //  Tl -------------------------------------------------------------
711   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 6, 8, 2, 4, 4, 6, 2, 1,
712   //  Pb -------------------------------------------------------------
713   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 2, 6, 8, 2, 4, 4, 6, 2, 2,
714   //  Bi -------------------------------------------------------------
715   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 6, 2, 8, 2, 4, 4, 6, 2, 3,
716   //  Po -------------------------------------------------------------
717   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 4, 6, 2, 4,
718   //  At -------------------------------------------------------------
719   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 4, 6, 2, 2, 3,
720   //  Rn -------------------------------------------------------------
721   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 4, 6, 2, 2, 4,
722   //  Fr -------------------------------------------------------------
723   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,
724   //  Ra -------------------------------------------------------------
725   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,
726   //  Ac -------------------------------------------------------------
727   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, 1,
728   //  Th -------------------------------------------------------------
729   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,
730   //  Pa -------------------------------------------------------------
731   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, 1, 2,
732   //  U  -------------------------------------------------------------
733   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, 3, 2,
734   //  Np -------------------------------------------------------------
735   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 4, 6, 2, 2, 4, 4, 1, 2,
736   //  Pu -------------------------------------------------------------
737   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 4, 6, 2, 2, 4, 6, 2,
738   //  Am -------------------------------------------------------------
739   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 4, 6, 2, 2, 4, 7, 2,
740   //  Cm -------------------------------------------------------------
741   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 4, 6, 2, 2, 4, 7, 2, 1,
742   //  Bk -------------------------------------------------------------
743   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 4, 6, 2, 2, 4, 8, 2, 1,
744   //  Cf -------------------------------------------------------------
745   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 4, 6, 2, 2, 4,10, 2,
746   //  Es -------------------------------------------------------------
747   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 4, 6, 2, 2, 4,11, 2,
748   //  Fm -------------------------------------------------------------
749   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 4, 6, 2, 2, 4,12, 2,
750   //  Md ---------------------------------------------------------------
751   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 4, 6, 6, 7, 2, 2, 4, 2, //=101
752   //  No ---------------------------------------------------------------
753   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 2, //=102
754   //  Lr ---------------------------------------------------------------
755   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 1, 2, //=103
756   //  Rf ---------------------------------------------------------------
757   2, 2, 2, 4, 2, 2, 4, 4, 6, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 4, 6, 6, 8, 2, 2, 4, 2, 2 //=104
758 };
759 // clang-format on
760 
761 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
762 
763 G4int G4AtomicShells::GetNumberOfShells(G4int Z)
764 {
765 #ifdef G4VERBOSE
766   if (Z < 0 || Z > 104) {
767     Z = PrintErrorZ(Z, "GetNumberOfShells");
768   }
769 #endif
770   return fNumberOfShells[Z];
771 }
772 
773 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
774 
775 G4double G4AtomicShells::GetBindingEnergy(G4int Z, G4int ShellNb)
776 {
777 #ifdef G4VERBOSE
778   if (Z < 0 || Z > 104) {
779     Z = PrintErrorZ(Z, "GetBindingEnergy");
780   }
781   if (ShellNb < 0 || ShellNb >= fNumberOfShells[Z]) {
782     ShellNb = PrintErrorShell(Z, ShellNb, "GetBindingEnergy");
783   }
784 #endif
785   return fBindingEnergies[fIndexOfShells[Z] + ShellNb] * CLHEP::eV;
786 }
787 
788 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
789 
790 G4int G4AtomicShells::GetNumberOfElectrons(G4int Z, G4int ShellNb)
791 {
792 #ifdef G4VERBOSE
793   if (Z < 0 || Z > 104) {
794     Z = PrintErrorZ(Z, "GetNumberOfElectrons");
795   }
796   if (ShellNb < 0 || ShellNb >= fNumberOfShells[Z]) {
797     ShellNb = PrintErrorShell(Z, ShellNb, "GetNumberOfElectrons");
798   }
799 #endif
800   return fNumberOfElectrons[fIndexOfShells[Z] + ShellNb];
801 }
802 
803 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
804 
805 G4int G4AtomicShells::GetNumberOfFreeElectrons(G4int Z, G4double th)
806 {
807 #ifdef G4VERBOSE
808   if (Z < 0 || Z > 104) {
809     Z = PrintErrorZ(Z, "GetNumberOfFreeElectrons");
810   }
811 #endif
812   G4int idx = fIndexOfShells[Z];
813   G4int idxmax = idx + fNumberOfShells[Z];
814   G4int n = 0;
815   for (G4int i = idx; i < idxmax; ++i) {
816     if (fBindingEnergies[i] * CLHEP::eV <= th) {
817       n += fNumberOfElectrons[i];
818     }
819   }
820   return n;
821 }
822 
823 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
824 
825 G4double G4AtomicShells::GetTotalBindingEnergy(G4int Z)
826 {
827 #ifdef G4VERBOSE
828   if (Z < 0 || Z > 104) {
829     Z = PrintErrorZ(Z, "GetTotalBindingEnergy");
830   }
831 #endif
832   G4int idx = fIndexOfShells[Z];
833   G4int idxmax = idx + fNumberOfShells[Z];
834   G4double energy = 0.0;
835   for (G4int i = idx; i < idxmax; ++i) {
836     energy += fBindingEnergies[i];
837   }
838   return energy * CLHEP::eV;
839 }
840 
841 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
842 
843 #ifdef G4VERBOSE
844 
845 G4int G4AtomicShells::PrintErrorZ(G4int Z, const G4String& ss)
846 {
847   G4String sss = "G4AtomicShells::" + ss + "()";
848   G4ExceptionDescription ed;
849   ed << "Atomic number out of range Z= " << Z;
850   G4Exception(sss, "mat060", FatalException, ed, "");
851   return 1;
852 }
853 
854 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
855 
856 G4int G4AtomicShells::PrintErrorShell(G4int Z, G4int n, const G4String& ss)
857 {
858   G4String sss = "G4AtomicShells::" + ss + "()";
859   G4ExceptionDescription ed;
860   ed << "Shell number out of range Nshell= " << n << "  Z= " << Z;
861   G4Exception(sss, "mat061", FatalException, ed, "");
862   return 0;
863 }
864 #endif
865