67 const G4int nlevels = 28;
68 const G4int listK[nlevels] = {
69 1, 2, 4, 6, 8, 11, 14, 17, 18, 21, 24,
70 26, 29, 32, 38, 40, 41, 44, 49, 53, 55,
71 60, 65, 70, 75, 81, 85, 92};
72 const G4double listKEnergy[nlevels] = {
73 0.00275, 0.011, 0.043, 0.098, 0.173, 0.326,
74 0.524, 0.765, 0.853, 1.146, 1.472,
75 1.708, 2.081, 2.475, 3.323, 3.627,
76 3.779, 4.237, 5.016, 5.647, 5.966,
77 6.793, 7.602, 8.421, 9.249, 10.222,
80 fKLevelEnergy[0] = 0.0;
81 fKLevelEnergy[1] = listKEnergy[0];
83 for(
G4int i=1; i<nlevels; ++i) {
84 G4int z1 = listK[idx];
91 fKLevelEnergy[
z] = (y1 + (y2 -
y1)*(
z - z1)/dz)*
z*
z;
94 fKLevelEnergy[z2] = listKEnergy[i];
97 for(
G4int i = 0; i<14; ++i) { fLevelEnergy[i] = 0.0; }
118 G4double mass = fMuMass * massA / (fMuMass + massA) ;
122 fLevelEnergy[0] = fKLevelEnergy[
Z];
123 for(
G4int i = 2; i < 15; ++i) {
124 fLevelEnergy[i-1] = e/
G4double(i*i);
134 AddNewParticle(theElectron,edep);
143 if((nAuger < nElec) && ((pGamma + 10000.0) *
G4UniformRand() < 10000.0) ) {
145 deltaE = fLevelEnergy[nLevel-1] - fLevelEnergy[nLevel];
147 AddNewParticle(theElectron, deltaE);
155 G4int iLevel = nLevel - 1 ;
156 if(var > 10.0) iLevel -=
G4int(var-10.0) + 1;
157 if( iLevel < 0 ) iLevel = 0;
158 deltaE = fLevelEnergy[iLevel] - fLevelEnergy[nLevel];
160 AddNewParticle(theGamma, deltaE);
164 }
while( nLevel > 0 );
174 outFile <<
"Simulation of electromagnetic cascade from capture level"
175 <<
" to K-shell of the mesonic atom\n."
176 <<
"Probabilities of gamma and Auger transitions from\n"
177 <<
" N.C.Mukhopadhyay Phys. Rep. 30 (1977) 1.\n";