57 for (
G4int i=29; i<93; i++)
59 protonM1DataSetMap[i] =
new G4EMDataSet(i,interpolation);
60 protonM1DataSetMap[i]->LoadData(
"pixe/ecpssr/proton/m1-i01m001c01-");
62 protonM2DataSetMap[i] =
new G4EMDataSet(i,interpolation);
63 protonM2DataSetMap[i]->LoadData(
"pixe/ecpssr/proton/m2-i01m001c01-");
65 protonM3DataSetMap[i] =
new G4EMDataSet(i,interpolation);
66 protonM3DataSetMap[i]->LoadData(
"pixe/ecpssr/proton/m3-i01m001c01-");
68 protonM4DataSetMap[i] =
new G4EMDataSet(i,interpolation);
69 protonM4DataSetMap[i]->LoadData(
"pixe/ecpssr/proton/m4-i01m001c01-");
71 protonM5DataSetMap[i] =
new G4EMDataSet(i,interpolation);
72 protonM5DataSetMap[i]->LoadData(
"pixe/ecpssr/proton/m5-i01m001c01-");
75 protonMiXsVector.push_back(protonM1DataSetMap);
76 protonMiXsVector.push_back(protonM2DataSetMap);
77 protonMiXsVector.push_back(protonM3DataSetMap);
78 protonMiXsVector.push_back(protonM4DataSetMap);
79 protonMiXsVector.push_back(protonM5DataSetMap);
82 for (
G4int i=29; i<93; i++)
84 alphaM1DataSetMap[i] =
new G4EMDataSet(i,interpolation);
85 alphaM1DataSetMap[i]->LoadData(
"pixe/ecpssr/alpha/m1-i02m004c02-");
87 alphaM2DataSetMap[i] =
new G4EMDataSet(i,interpolation);
88 alphaM2DataSetMap[i]->LoadData(
"pixe/ecpssr/alpha/m2-i02m004c02-");
90 alphaM3DataSetMap[i] =
new G4EMDataSet(i,interpolation);
91 alphaM3DataSetMap[i]->LoadData(
"pixe/ecpssr/alpha/m3-i02m004c02-");
93 alphaM4DataSetMap[i] =
new G4EMDataSet(i,interpolation);
94 alphaM4DataSetMap[i]->LoadData(
"pixe/ecpssr/alpha/m4-i02m004c02-");
96 alphaM5DataSetMap[i] =
new G4EMDataSet(i,interpolation);
97 alphaM5DataSetMap[i]->LoadData(
"pixe/ecpssr/alpha/m5-i02m004c02-");
101 alphaMiXsVector.push_back(alphaM1DataSetMap);
102 alphaMiXsVector.push_back(alphaM2DataSetMap);
103 alphaMiXsVector.push_back(alphaM3DataSetMap);
104 alphaMiXsVector.push_back(alphaM4DataSetMap);
105 alphaMiXsVector.push_back(alphaM5DataSetMap);
115 protonM1DataSetMap.clear();
116 alphaM1DataSetMap.clear();
118 protonM2DataSetMap.clear();
119 alphaM2DataSetMap.clear();
121 protonM3DataSetMap.clear();
122 alphaM3DataSetMap.clear();
124 protonM4DataSetMap.clear();
125 alphaM4DataSetMap.clear();
127 protonM5DataSetMap.clear();
128 alphaM5DataSetMap.clear();
130 delete interpolation;
140 G4int mShellIndex = mShellId -1;
142 if (energyIncident > 0.1*MeV && energyIncident < 100*MeV && zTarget < 93 && zTarget > 28) {
146 sigma = protonMiXsVector[mShellIndex][zTarget]->FindValue(energyIncident/MeV);
147 if (sigma !=0 && energyIncident > protonMiXsVector[mShellIndex][zTarget]->GetEnergies(0).back()*MeV)
return 0.;
149 else if (massIncident == aAlpha->
GetPDGMass())
151 sigma = alphaMiXsVector[mShellIndex][zTarget]->FindValue(energyIncident/MeV);
152 if (sigma !=0 && energyIncident > alphaMiXsVector[mShellIndex][zTarget]->GetEnergies(0).back()*MeV)
return 0.;
171 return CalculateMiCrossSection (zTarget, massIncident, energyIncident, 1);
181 return CalculateMiCrossSection (zTarget, massIncident, energyIncident, 2);
218 return CalculateMiCrossSection (zTarget, massIncident, energyIncident, 3);
255 return CalculateMiCrossSection (zTarget, massIncident, energyIncident, 4);
290 return CalculateMiCrossSection (zTarget, massIncident, energyIncident, 5);
G4double GetPDGMass() const
static G4Proton * Proton()