#include <G4ecpssrFormFactorLixsModel.hh>
|
| G4ecpssrFormFactorLixsModel () |
|
virtual | ~G4ecpssrFormFactorLixsModel () |
|
G4double | CalculateL1CrossSection (G4int zTarget, G4double massIncident, G4double energyIncident) |
|
G4double | CalculateL2CrossSection (G4int zTarget, G4double massIncident, G4double energyIncident) |
|
G4double | CalculateL3CrossSection (G4int zTarget, G4double massIncident, G4double energyIncident) |
|
| G4VecpssrLiModel () |
|
virtual | ~G4VecpssrLiModel () |
|
virtual G4double | CalculateL1CrossSection (G4int zTarget, G4double massIncident, G4double energyIncident)=0 |
|
virtual G4double | CalculateL2CrossSection (G4int zTarget, G4double massIncident, G4double energyIncident)=0 |
|
virtual G4double | CalculateL3CrossSection (G4int zTarget, G4double massIncident, G4double energyIncident)=0 |
|
◆ G4ecpssrFormFactorLixsModel()
G4ecpssrFormFactorLixsModel::G4ecpssrFormFactorLixsModel |
( |
| ) |
|
Definition at line 53 of file G4ecpssrFormFactorLixsModel.cc.
54{
56
57 for (
G4int i=6; i<93; i++)
58 {
59 protonL1DataSetMap[i] =
new G4EMDataSet(i,interpolation);
60 protonL1DataSetMap[i]->LoadData("pixe/ecpssr/proton/l1-");
61
62 protonL2DataSetMap[i] =
new G4EMDataSet(i,interpolation);
63 protonL2DataSetMap[i]->LoadData("pixe/ecpssr/proton/l2-");
64
65 protonL3DataSetMap[i] =
new G4EMDataSet(i,interpolation);
66 protonL3DataSetMap[i]->LoadData("pixe/ecpssr/proton/l3-");
67 }
68
69 for (
G4int i=6; i<93; i++)
70 {
71 alphaL1DataSetMap[i] =
new G4EMDataSet(i,interpolation);
72 alphaL1DataSetMap[i]->LoadData("pixe/ecpssr/alpha/l1-");
73
74 alphaL2DataSetMap[i] =
new G4EMDataSet(i,interpolation);
75 alphaL2DataSetMap[i]->LoadData("pixe/ecpssr/alpha/l2-");
76
77 alphaL3DataSetMap[i] =
new G4EMDataSet(i,interpolation);
78 alphaL3DataSetMap[i]->LoadData("pixe/ecpssr/alpha/l3-");
79 }
80
81}
◆ ~G4ecpssrFormFactorLixsModel()
G4ecpssrFormFactorLixsModel::~G4ecpssrFormFactorLixsModel |
( |
| ) |
|
|
virtual |
Definition at line 85 of file G4ecpssrFormFactorLixsModel.cc.
86{
87 protonL1DataSetMap.clear();
88 alphaL1DataSetMap.clear();
89
90 protonL2DataSetMap.clear();
91 alphaL2DataSetMap.clear();
92
93 protonL3DataSetMap.clear();
94 alphaL3DataSetMap.clear();
95
96 delete interpolation;
97}
◆ CalculateL1CrossSection()
Implements G4VecpssrLiModel.
Definition at line 101 of file G4ecpssrFormFactorLixsModel.cc.
102{
106
107 if (energyIncident > 0.1*MeV && energyIncident < 100.*MeV && zTarget < 93 && zTarget > 5) {
108
110 {
111 sigma = protonL1DataSetMap[zTarget]->FindValue(energyIncident/MeV);
112 if (sigma !=0 && energyIncident > protonL1DataSetMap[zTarget]->GetEnergies(0).back()*MeV) return 0.;
113 }
114 else if (massIncident == aAlpha->
GetPDGMass())
115 {
116 sigma = alphaL1DataSetMap[zTarget]->FindValue(energyIncident/MeV);
117 if (sigma !=0 && energyIncident > alphaL1DataSetMap[zTarget]->GetEnergies(0).back()*MeV) return 0.;
118 }
119 else
120 {
121 sigma = 0.;
122 }
123 }
124
125
126
127 return sigma;
128}
G4double GetPDGMass() const
static G4Proton * Proton()
◆ CalculateL2CrossSection()
Implements G4VecpssrLiModel.
Definition at line 132 of file G4ecpssrFormFactorLixsModel.cc.
133{
137
138 if (energyIncident > 0.1*MeV && energyIncident < 100.*MeV && zTarget < 93 && zTarget > 5) {
139
141 {
142 sigma = protonL2DataSetMap[zTarget]->FindValue(energyIncident/MeV);
143 if (sigma !=0 && energyIncident > protonL2DataSetMap[zTarget]->GetEnergies(0).back()*MeV) return 0.;
144 }
145 else if (massIncident == aAlpha->
GetPDGMass())
146 {
147 sigma = alphaL2DataSetMap[zTarget]->FindValue(energyIncident/MeV);
148 if (sigma !=0 && energyIncident > alphaL2DataSetMap[zTarget]->GetEnergies(0).back()*MeV) return 0.;
149 }
150 else
151 {
152 sigma = 0.;
153 }
154 }
155
156
157
158 return sigma;
159}
◆ CalculateL3CrossSection()
Implements G4VecpssrLiModel.
Definition at line 163 of file G4ecpssrFormFactorLixsModel.cc.
164{
168
169 if (energyIncident > 0.1*MeV && energyIncident < 100.*MeV && zTarget < 93 && zTarget > 5) {
170
172 {
173 sigma = protonL3DataSetMap[zTarget]->FindValue(energyIncident/MeV);
174 if (sigma !=0 && energyIncident > protonL3DataSetMap[zTarget]->GetEnergies(0).back()*MeV) return 0.;
175 }
176 else if (massIncident == aAlpha->
GetPDGMass())
177 {
178 sigma = alphaL3DataSetMap[zTarget]->FindValue(energyIncident/MeV);
179 if (sigma !=0 && energyIncident > alphaL3DataSetMap[zTarget]->GetEnergies(0).back()*MeV) return 0.;
180 }
181 else
182 {
183 sigma = 0.;
184 }
185 }
186
187
188
189 return sigma;
190}
The documentation for this class was generated from the following files: