source: trunk/source/processes/electromagnetic/lowenergy/src/G4hQAOModel.cc @ 1337

Last change on this file since 1337 was 819, checked in by garnier, 16 years ago

import all except CVS

File size: 20.4 KB
Line 
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//
27// -------------------------------------------------------------------
28//
29// GEANT4 Class file
30//
31//
32// File name:     G4hQAOModel
33//
34// Author:        V.Ivanchenko (Vladimir.Ivanchenko@cern.ch)
35//
36// Creation date: 27 April 2004
37//
38// Modifications:
39//
40// Class Description:
41//
42// Electronic stopping power for negative heavy partiles
43//
44// Class Description: End
45//
46// -------------------------------------------------------------------
47//
48//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
49
50#include "G4hQAOModel.hh"
51#include "G4UnitsTable.hh"
52#include "G4Element.hh"
53#include "G4Material.hh"
54
55//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
56
57G4hQAOModel::G4hQAOModel():G4VhElectronicStoppingPower(),
58  numberOfMaterials(6),
59  sizeL0(67),
60  sizeL1(22),
61  sizeL2(14),
62  currentMaterial(0),
63  currentElement(0)
64{
65  theZieglerFactor = eV*cm2*1.0e-15;
66  thePlasmonFactor = 28.816 * 28.816  * 1e-6;
67}
68
69//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
70
71G4hQAOModel::~G4hQAOModel()
72{}
73
74//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
75
76G4double G4hQAOModel::StoppingPower(const G4Material* material,
77                                          G4double kineticEnergy)
78{
79  G4double eloss = 0.0 ;
80  G4int numberOfElements = material->GetNumberOfElements() ;
81  const G4ElementVector* theElementVector   = material->GetElementVector();
82  const G4double* theAtomicNumDensityVector = material->GetAtomicNumDensityVector() ;
83  currentMaterial = material;
84
85  //  loop for the elements in the material
86  for (G4int i=0; i<numberOfElements; i++)
87    {
88      currentElement = (*theElementVector)[i] ;
89      G4double z = currentElement->GetZ() ;
90      eloss += ElectronicStoppingPower(z,kineticEnergy)*theAtomicNumDensityVector[i];
91    }
92
93  return eloss;
94}
95
96//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
97
98G4double G4hQAOModel::ElectronicStoppingPower(G4double z,
99                                              G4double kineticEnergy) const
100{
101  G4int Z = (G4int)z;
102  G4int nbOfShell = GetNumberOfShell(Z);
103  if(nbOfShell < 1) nbOfShell = 1;
104
105  G4double dedx=0.0;
106
107  G4double v = c_light * std::sqrt( 2.0 * kineticEnergy / proton_mass_c2 );
108  G4double coeff = twopi*proton_mass_c2*z / (electron_mass_c2*theZieglerFactor) ;
109  G4double fBetheVelocity = fine_structure_const * c_light / v;
110  coeff *= fine_structure_const * fine_structure_const * hbarc_squared /
111           kineticEnergy ;
112
113  G4double l0Term = 0, l1Term = 0, l2Term = 0;
114
115  for (G4int nos = 0 ; nos < nbOfShell ; nos++){
116
117    G4double l0 = 0, l1 = 0, l2 = 0;
118    G4double NormalizedEnergy = ( 2.0 * electron_mass_c2 * v * v  ) /
119                          ( c_squared * GetShellEnergy(Z, nos) );
120    G4double shStrength = GetShellStrength(Z, nos);
121
122    l0 = GetL0(NormalizedEnergy);
123    l0Term += shStrength  * l0;
124
125    l1 = GetL1(NormalizedEnergy);
126    l1Term += shStrength * l1;
127
128    l2 = GetL2(NormalizedEnergy);
129    l2Term += shStrength * l2;
130
131/*
132    //if(Z == 6){
133    G4cout << nos << ". "
134           << " E(MeV)= " << kineticEnergy/MeV
135           << " normE= "  << NormalizedEnergy
136           << " sh en= "  << GetShellEnergy(Z,nos)
137           << " str= "  << shStrength
138           << " v0/v= " << fBetheVelocity
139           << " l0= " << l0Term
140           << " l1= " << l1Term
141           << " l2= " << l2Term
142           << G4endl;
143        //   }
144*/
145  }
146
147  dedx = coeff * (l0Term - fBetheVelocity*l1Term + fBetheVelocity*fBetheVelocity*l2Term);
148
149  //G4cout << " E(MeV)= " << kineticEnergy/MeV
150  //       << " dedx(Mev/mm)= " << dedx*mm/MeV << G4endl;
151
152  if(dedx < 0.0) dedx = 0.0;
153  return dedx;
154}
155
156
157G4int G4hQAOModel::GetNumberOfShell(G4int Z) const
158{
159  // Set return value from table
160  G4int nShell = 0;
161
162  // Set return value if in material available from Aahrus
163  for(G4int i=0; i<numberOfMaterials; i++) {
164
165    if(materialAvailable[i] == Z){
166        nShell = nbofShellForMaterial[i];
167        break;
168    }
169    else nShell = fNumberOfShells[Z];
170  }
171
172   return nShell;
173}
174
175
176
177G4double G4hQAOModel::GetShellEnergy(G4int Z, G4int nbOfTheShell) const
178{
179  G4double shellEnergy = alShellEnergy[0];
180  if     (Z == 13) shellEnergy = alShellEnergy[nbOfTheShell];
181  else if(Z == 14) shellEnergy = siShellEnergy[nbOfTheShell];
182  else if(Z == 29) shellEnergy = cuShellEnergy[nbOfTheShell];
183  else if(Z == 73) shellEnergy = taShellEnergy[nbOfTheShell];
184  else if(Z == 79) shellEnergy = auShellEnergy[nbOfTheShell];
185  else if(Z == 78) shellEnergy = ptShellEnergy[nbOfTheShell];
186  else             shellEnergy = GetOscillatorEnergy(Z, nbOfTheShell);
187
188  return  shellEnergy;
189}
190
191
192G4double G4hQAOModel::GetOscillatorEnergy(G4int Z, G4int nbOfTheShell) const
193{
194  G4double squaredPlasmonEnergy = thePlasmonFactor;
195  G4double zeff = (G4double)Z;
196  if(currentMaterial)
197    squaredPlasmonEnergy *= (currentMaterial->GetDensity()*zeff*cm3)
198                          / (g * currentElement->GetN());
199
200  G4double occn = GetOccupationNumber(Z,nbOfTheShell);
201  G4double plasmonTerm = 0.66667 * occn * squaredPlasmonEnergy/(zeff*zeff);
202
203  G4double ionTerm = std::exp(0.5) * currentElement->GetAtomicShell(nbOfTheShell);
204
205  ionTerm = ionTerm*ionTerm ;
206
207  G4double oscShellEnergy = std::sqrt( ionTerm + plasmonTerm );
208
209/*  if(material->GetName()=="Graphite"){
210    G4cout << "\t" << Z
211           << "\t" << nbOfTheShell
212           << "\t" << squaredPlasmonEnergy
213           << "\t" << plasmonTerm
214           << "\t" << ionTerm
215           << "\t" << GetOccupationNumber(Z,nbOfTheShell)
216           << "\t" << element->GetAtomicShell(nbOfTheShell)
217           << "\t" << oscShellEnergy << G4endl;}
218*/
219  return  oscShellEnergy;
220}
221
222
223G4double G4hQAOModel::GetShellStrength(G4int Z, G4int nbOfTheShell) const
224{
225  G4double shellStrength = alShellStrength[0];
226
227  if(Z == 13)      shellStrength = alShellStrength[nbOfTheShell];
228  else if(Z == 14) shellStrength = siShellStrength[nbOfTheShell];
229  else if(Z == 29) shellStrength = cuShellStrength[nbOfTheShell];
230  else if(Z == 73) shellStrength = taShellStrength[nbOfTheShell];
231  else if(Z == 79) shellStrength = auShellStrength[nbOfTheShell];
232  else if(Z == 78) shellStrength = ptShellStrength[nbOfTheShell];
233  else             shellStrength = GetOccupationNumber(Z,nbOfTheShell) / (G4double)Z;
234
235  return shellStrength;
236}
237
238G4double G4hQAOModel::GetOccupationNumber(G4int Z, G4int ShellNb) const
239{
240
241  G4int indice = ShellNb ;
242  for (G4int z = 1 ; z < Z ; z++) {indice += fNumberOfShells[z];}
243  G4double x = (G4double)(nbOfElectronPerSubShell[indice+1]);
244  return x;
245}
246
247
248G4double G4hQAOModel::GetL0(G4double normEnergy) const
249{
250  G4int n;
251
252  for(n = 0; n < sizeL0; n++) {
253    if( normEnergy < L0[n][0] ) break;
254  }
255  if(0 == n) n = 1 ;
256  if(n >= sizeL0) n = sizeL0 - 1 ;
257
258  G4double l0    = L0[n][1];
259  G4double l0p   = L0[n-1][1];
260  G4double bethe = l0p + (l0 - l0p) * ( normEnergy - L0[n-1][0]) /
261                  (L0[n][0] - L0[n-1][0]);
262  return bethe ;
263
264}
265
266G4double G4hQAOModel::GetL1(G4double normEnergy) const
267{
268  G4int n;
269
270  for(n = 0; n < sizeL1; n++) {
271    if( normEnergy < L1[n][0] ) break;
272  }
273  if(0 == n) n = 1 ;
274  if(n >= sizeL1) n = sizeL1 - 1 ;
275
276  G4double l1    = L1[n][1];
277  G4double l1p   = L1[n-1][1];
278  G4double barkas= l1p + (l1 - l1p) * ( normEnergy - L1[n-1][0]) /
279                  (L1[n][0] - L1[n-1][0]);
280
281  return barkas;
282
283}
284
285
286G4double G4hQAOModel::GetL2(G4double normEnergy) const
287{
288  G4int n;
289  for(n = 0; n < sizeL2; n++) {
290    if( normEnergy < L2[n][0] ) break;
291  }
292  if(0 == n) n = 1 ;
293  if(n >= sizeL2) n = sizeL2 - 1 ;
294
295  G4double l2    = L2[n][1];
296  G4double l2p   = L2[n-1][1];
297  G4double bloch = l2p + (l2 - l2p) * ( normEnergy - L2[n-1][0]) /
298                  (L2[n][0] - L2[n-1][0]);
299
300  return bloch;
301}
302
303
304const G4int G4hQAOModel::materialAvailable[6] = {13,14,29,73,79,78};
305  /*
306  "Aluminum",
307  "Silicon",
308  "Copper",
309  "Tantalum",
310  "Gold",
311  "Platinum"};
312  */
313const G4int G4hQAOModel::nbofShellForMaterial[6] = {3,3,4,6,6,6};
314
315const G4double G4hQAOModel::alShellEnergy[3]  ={ 2795e-6, 202e-6,  16.9e-6};
316const G4double G4hQAOModel::alShellStrength[3]={ 0.1349, 0.6387, 0.2264};
317const G4double G4hQAOModel::siShellEnergy[3]  ={ 3179e-6, 249e-6, 20.3e-6 };
318const G4double G4hQAOModel::siShellStrength[3]={ 0.1222, 0.5972, 0.2806};
319const G4double G4hQAOModel::cuShellEnergy[4]  ={ 16931e-6, 1930e-6, 199e-6, 39.6e-6};
320const G4double G4hQAOModel::cuShellStrength[4]={ 0.0505, 0.2561, 0.4913, 0.2021};
321const G4double G4hQAOModel::taShellEnergy[6]  ={ 88926e-6, 18012e-6, 3210e-6, 575e-6, 108.7e-6, 30.8e-6};
322const G4double G4hQAOModel::taShellStrength[6]={ 0.0126, 0.0896, 0.2599, 0.3413, 0.2057, 0.0908};
323const G4double G4hQAOModel::auShellEnergy[6]={ 96235e-6, 25918e-6, 4116e-6, 599e-6, 87.3e-6, 36.9e-6};
324const G4double G4hQAOModel::auShellStrength[6]={ 0.0139, 0.0803, 0.2473, 0.423, 0.1124, 0.1231};
325const G4double G4hQAOModel::ptShellEnergy[6]={ 95017e-6, 25590e-6, 4063e-6, 576e-6, 81.9e-6, 31.4e-6};
326const G4double G4hQAOModel::ptShellStrength[6]={ 0.0129, 0.0745, 0.2295, 0.4627, 0.1324, 0.0879};
327
328
329const G4double G4hQAOModel::L0[67][2] =
330{
331  {0.00,        0.000001},
332  {0.10,        0.000001},
333  {0.12,        0.00001},
334  {0.14,        0.00005},
335  {0.16,        0.00014},
336  {0.18,        0.00030},
337  {0.20,        0.00057},
338  {0.25,        0.00189},
339  {0.30,        0.00429},
340  {0.35,        0.00784},
341  {0.40,        0.01248},
342  {0.45,        0.01811},
343  {0.50,        0.02462},
344  {0.60,        0.03980},
345  {0.70,        0.05731},
346  {0.80,        0.07662},
347  {0.90,        0.09733},
348  {1.00,        0.11916},
349  {1.20,        0.16532},
350  {1.40,        0.21376},
351  {1.60,        0.26362},
352  {1.80,        0.31428},
353  {2.00,        0.36532},
354  {2.50,        0.49272},
355  {3.00,        0.61765},
356  {3.50,        0.73863},
357  {4.00,        0.85496},
358  {4.50,        0.96634},
359  {5.00,        1.07272},
360  {6.00,        1.27086},
361  {7.00,        1.45075},
362  {8.00,        1.61412},
363  {9.00,        1.76277},
364  {10.00,       1.89836},
365  {12.00,       2.13625},
366  {14.00,       2.33787},
367  {16.00,       2.51093},
368  {18.00,       2.66134},
369  {20.00,       2.79358},
370  {25.00, 3.06539},
371  {30.00, 3.27902},
372  {35.00, 3.45430},
373  {40.00, 3.60281},
374  {45.00, 3.73167},
375  {50.00, 3.84555},
376  {60.00, 4.04011},
377  {70.00, 4.20264},
378  {80.00, 4.34229},
379  {90.00,  4.46474},
380  {100.00, 4.57378},
381  {120.00, 4.76155},
382  {140.00, 4.91953},
383  {160.00, 5.05590},
384  {180.00, 5.17588},
385  {200.00, 5.28299},
386  {250.00, 5.50925},
387  {300.00, 5.69364},
388  {350.00, 5.84926},
389  {400.00, 5.98388},
390  {450.00, 6.10252},
391  {500.00, 6.20856},
392  {600.00, 6.39189},
393  {700.00, 6.54677},
394  {800.00, 6.68084},
395  {900.00, 6.79905},
396  {1000.00, 6.90474}
397};
398
399
400const G4double G4hQAOModel::L1[22][2] =
401{
402  {0.00,       -0.000001},
403  {0.10,       -0.00001},
404  {0.20,       -0.00049},
405  {0.30,       -0.00084},
406  {0.40,        0.00085},
407  {0.50,        0.00519},
408  {0.60,        0.01198},
409  {0.70,        0.02074},
410  {0.80,        0.03133},
411  {0.90,        0.04369},
412  {1.00,        0.06035},
413  {2.00,        0.24023},
414  {3.00,        0.44284},
415  {4.00,        0.62012},
416  {5.00,        0.77031},
417  {6.00,        0.90390},
418  {7.00,        1.02705},
419  {8.00,        1.10867},
420  {9.00,        1.17546},
421  {10.00,       1.21599},
422  {15.00,       1.24349},
423  {20.00,       1.16752}
424};
425
426
427const G4double G4hQAOModel::L2[14][2] =
428{
429  {0.00,        0.000001},
430  {0.10,        0.00001},
431  {0.20,        0.00000},
432  {0.40,       -0.00120},
433  {0.60,       -0.00036},
434  {0.80,        0.00372},
435  {1.00,        0.01298},
436  {2.00,        0.08296},
437  {4.00,        0.21953},
438  {6.00,        0.23903},
439  {8.00,        0.20893},
440  {10.00,       0.10879},
441  {20.00,      -0.88409},
442  {40.00,      -1.13902}
443};
444
445
446const G4int G4hQAOModel::nbOfElectronPerSubShell[1540] =
447{
448  0, // consistency with G4AtomicShells
449  1,//------ H
450  2,//------ He
451  2,  1,//------ Li
452  2,  2,//------ Be
453  2,  2,  1,//------ B
454  2,  2,  2,//------ C
455  2,  2,  2,  1,//------ N
456  2,  2,  2,  2,//------ O
457  2,  2,  5,//------ F
458  2,  2,  2,  4,//------ Ne
459  2,  2,  2,  4,  1,//------ Na
460  2,  2,  2,  4,  2,//------ Mg
461  2,  2,  2,  4,  2,  1,//------ Al
462  2,  2,  2,  4,  2,  2,//------ Si
463  2,  2,  2,  4,  2,  3,//------ P
464  2,  2,  2,  4,  2,  4,//------
465  2,  2,  2,  4,  2,  5,//------
466  2,  2,  2,  4,  2,  2,  4,//------
467  2,  2,  2,  4,  2,  2,  4,  1,//------
468  2,  2,  2,  4,  2,  2,  4,  2,//------
469  2,  2,  2,  4,  2,  2,  4,  1,  2,//------
470  2,  2,  2,  4,  2,  2,  4,  2,  2,//------
471  2,  2,  2,  4,  2,  2,  4,  3,  2,//------
472  2,  2,  2,  4,  2,  2,  4,  4,  2,//------
473  2,  2,  2,  4,  2,  2,  4,  5,  2,//------
474  2,  2,  2,  4,  2,  2,  4,  6,  2,//------
475  2,  2,  2,  4,  2,  2,  4,  7,  2,//------
476  2,  2,  2,  4,  2,  2,  4,  4,  4,  2,//------
477  2,  2,  2,  4,  2,  2,  4,  4,  5,  2,//------
478  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,//------
479  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  1,//------
480  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,//------
481  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  3,//------
482  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  4,//------
483  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  5,//------
484  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,//------
485  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  1,//------
486  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  2,//------
487  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  1,  2,//------
488  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  2,  2,//------
489  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  3,  2,//------
490  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  2,//------
491  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  5,  2,//------
492  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  6,  2,//------
493  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  7,  2,//------
494  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  4,  2,//------
495  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  5,  2,//------
496  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,//------
497  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  1,//------
498  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  2,//------
499  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  3,//------
500  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  4,//------
501  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  5,//------
502  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  2,  4,//------
503  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  2,  4,  1,//------
504  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  2,  4,  2,//------
505  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  2,  4,  1,  2,//------
506  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  2,  2,  2,  4,  2,//------
507  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  3,  2,  2,  4,  2,//------
508  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  4,  2,  2,  4,  2,//------
509  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  5,  2,  2,  4,  2,//------
510  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  2,  2,  4,  2,//------
511  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  7,  2,  2,  4,  2,//------
512  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  7,  2,  2,  4,  1,  2,//------
513  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  9,  2,  2,  4,  2,//------
514  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6, 10,  2,  2,  4,  2,//------
515  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6, 11,  2,  2,  4,  2,//------
516  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6, 12,  2,  2,  4,  2,//------
517  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6, 13,  2,  2,  4,  2,//------
518  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  2,//------
519  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  1,  2,//------
520  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  2,  2,//------
521  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  3,  2,//------
522  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  2,//------
523  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  5,  2,//------
524  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  6,  2,//------
525  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  7,  2,//------
526  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  9,  1,//------
527  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  1,//------
528  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,//------
529  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,  1,//------
530  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,  2,//------
531  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,  3,//------
532  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,  4,//------
533  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,  2,  3,//------
534  2,  2,  2,  4,  2,  2,  4,  4,  6,  2,  2,  4,  4,  6,  6,  8,  2,  2,  4,  4,  6,  2,  2,  4,//------
535  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,//------
536  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,//------
537  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,//------
538  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,//------
539  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,//------
540  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,//------
541  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,//------
542  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,//------
543  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,//------
544  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,//------
545  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,//------
546  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,//------
547  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,//------
548  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 //-----
549};
550
551const G4int G4hQAOModel::fNumberOfShells[101] =
552{
553 0 ,  // nonexisting zero element
554
555 1 ,  1 ,  2 ,  2 ,  3 ,    3 ,  4 ,  4 ,  3 ,  4 ,  //  1 - 10
556
557 5 ,  5 ,  6 ,  6 ,  6 ,    6 ,  6 ,  7 ,  8 ,  8 ,  // 11 - 20
558
559 9 ,  9 ,  9 ,  9 ,  9 ,    9 ,  9 , 10 , 10 , 10 ,  // 21 - 30
560
56111 , 11 , 11 , 11 , 11 ,   12 , 13 , 13 , 14 , 14 ,  // 31 - 40
562
56314 , 14 , 14 , 14 , 14 ,   15 , 15 , 15 , 16 , 16 ,  // 41 - 50
564
565// ----------------------------------------------------------
566
56716 , 16 , 16 , 17 , 18 ,   18 , 19 , 19 , 19 , 19 ,  // 51 - 60
568
56919 , 19 , 19 , 20 , 19 ,   19 , 19 , 19 , 19 , 20 ,  // 61 - 70
570
57121 , 21 , 21 , 21 , 21 ,   21 , 21 , 21 , 22 , 22 ,  // 71 - 80
572
57323 , 23 , 23 , 23 , 24 ,   24 , 25 , 25 , 26 , 26 ,  // 81 - 90
574
57527 , 27 , 27 , 26 , 26 ,   27 , 27 , 26 , 26 , 26    // 91 - 100
576
577};
578
Note: See TracBrowser for help on using the repository browser.