57 for (
G4int i=6; i<93; i++)
59 protonL1DataSetMap[i] =
new G4EMDataSet(i,interpolation);
60 protonL1DataSetMap[i]->LoadData(
"pixe/ecpssr/proton/l1-");
62 protonL2DataSetMap[i] =
new G4EMDataSet(i,interpolation);
63 protonL2DataSetMap[i]->LoadData(
"pixe/ecpssr/proton/l2-");
65 protonL3DataSetMap[i] =
new G4EMDataSet(i,interpolation);
66 protonL3DataSetMap[i]->LoadData(
"pixe/ecpssr/proton/l3-");
69 for (
G4int i=6; i<93; i++)
71 alphaL1DataSetMap[i] =
new G4EMDataSet(i,interpolation);
72 alphaL1DataSetMap[i]->LoadData(
"pixe/ecpssr/alpha/l1-");
74 alphaL2DataSetMap[i] =
new G4EMDataSet(i,interpolation);
75 alphaL2DataSetMap[i]->LoadData(
"pixe/ecpssr/alpha/l2-");
77 alphaL3DataSetMap[i] =
new G4EMDataSet(i,interpolation);
78 alphaL3DataSetMap[i]->LoadData(
"pixe/ecpssr/alpha/l3-");
87 protonL1DataSetMap.clear();
88 alphaL1DataSetMap.clear();
90 protonL2DataSetMap.clear();
91 alphaL2DataSetMap.clear();
93 protonL3DataSetMap.clear();
94 alphaL3DataSetMap.clear();
107 if (energyIncident > 0.1*
MeV && energyIncident < 100.*
MeV && zTarget < 93 && zTarget > 5) {
111 sigma = protonL1DataSetMap[zTarget]->FindValue(energyIncident/
MeV);
112 if (sigma !=0 && energyIncident > protonL1DataSetMap[zTarget]->GetEnergies(0).back()*
MeV)
return 0.;
114 else if (massIncident == aAlpha->
GetPDGMass())
116 sigma = alphaL1DataSetMap[zTarget]->FindValue(energyIncident/
MeV);
117 if (sigma !=0 && energyIncident > alphaL1DataSetMap[zTarget]->GetEnergies(0).back()*
MeV)
return 0.;
138 if (energyIncident > 0.1*
MeV && energyIncident < 100.*
MeV && zTarget < 93 && zTarget > 5) {
142 sigma = protonL2DataSetMap[zTarget]->FindValue(energyIncident/
MeV);
143 if (sigma !=0 && energyIncident > protonL2DataSetMap[zTarget]->GetEnergies(0).back()*
MeV)
return 0.;
145 else if (massIncident == aAlpha->
GetPDGMass())
147 sigma = alphaL2DataSetMap[zTarget]->FindValue(energyIncident/
MeV);
148 if (sigma !=0 && energyIncident > alphaL2DataSetMap[zTarget]->GetEnergies(0).back()*
MeV)
return 0.;
169 if (energyIncident > 0.1*
MeV && energyIncident < 100.*
MeV && zTarget < 93 && zTarget > 5) {
173 sigma = protonL3DataSetMap[zTarget]->FindValue(energyIncident/
MeV);
174 if (sigma !=0 && energyIncident > protonL3DataSetMap[zTarget]->GetEnergies(0).back()*
MeV)
return 0.;
176 else if (massIncident == aAlpha->
GetPDGMass())
178 sigma = alphaL3DataSetMap[zTarget]->FindValue(energyIncident/
MeV);
179 if (sigma !=0 && energyIncident > alphaL3DataSetMap[zTarget]->GetEnergies(0).back()*
MeV)
return 0.;
static G4Proton * Proton()
G4double GetPDGMass() const
static constexpr double MeV