66 std::map<G4int,G4RDVEMDataSet*,std::less<G4int> >::iterator pos;
68 for (pos = param.begin(); pos != param.end(); ++pos)
84 G4int id = Z*length + parameterIndex;
85 std::map<G4int,G4RDVEMDataSet*,std::less<G4int> >::const_iterator pos;
88 if (pos!= param.end()) {
96 G4cout <<
"WARNING: G4RDBremsstrahlungParameters::FindValue "
97 <<
"did not find ID = "
104 void G4RDBremsstrahlungParameters::LoadData(
const G4String&
name)
111 if (materialTable == 0)
112 G4Exception(
"G4RDBremsstrahlungParameters::LoadData()",
122 for (
G4int m=0;
m<nMaterials;
m++) {
128 for (
G4int iEl=0; iEl<nElements; iEl++) {
129 G4Element* element = (*elementVector)[iEl];
135 activeZ.push_back(Z);
142 char* path = getenv(
"G4LEDATA");
145 G4String excep(
"G4LEDATA environment variable not set!");
146 G4Exception(
"G4RDBremsstrahlungParameters::LoadData()",
152 std::ifstream file_a(name_a);
153 std::filebuf* lsdp_a = file_a.rdbuf();
155 if (! (lsdp_a->is_open()) )
157 G4String stringConversion2(
"Cannot open file ");
158 G4String excep = stringConversion2 + name_a;
159 G4Exception(
"G4RDBremsstrahlungParameters::LoadData()",
173 std::vector<G4DataVector*>
a;
174 for (
size_t j=0; j<length; j++) {
182 file_a >> ener >> sum;
189 }
else if (ener == (
G4double)(-1)) {
197 for (
size_t k=0; k<length; k++) {
199 G4int id = z*length + k;
202 size_t eSize = e.size();
203 for (
size_t s=0;
s<eSize;
s++) {
204 eVector->push_back(e[
s]);
210 for (
size_t j=0; j<length; j++) {
215 for (
size_t j=0; j<length; j++) {
223 if(ener > 1000.) ener = 1000.;
225 a[length-1]->push_back(sum);
227 for (
size_t j=0; j<length-1; j++) {
230 a[j]->push_back(qRead);
244 if (id < 0 || id >= n)
246 G4String stringConversion1(
"Wrong id = ");
248 G4String ex = stringConversion1 + stringConversion2;
249 G4Exception(
"G4RDBremsstrahlungParameters::ParameterC()",
261 G4cout <<
"===== G4RDBremsstrahlungParameters =====" <<
G4endl;
266 size_t nZ = activeZ.size();
267 std::map<G4int,G4RDVEMDataSet*,std::less<G4int> >::const_iterator pos;
269 for (
size_t j=0; j<nZ; j++) {
272 for (
size_t i=0; i<length; i++) {
274 pos = param.find(Z*length + i);
275 if (pos!= param.end()) {
277 G4cout <<
"===== Z= " << Z
278 <<
" parameter[" << i <<
"] ====="
286 G4cout <<
"==========================================" <<
G4endl;