source: trunk/source/materials/src/G4NistMaterialBuilder.cc@ 840

Last change on this file since 840 was 822, checked in by garnier, 17 years ago

import all except CVS

File size: 61.5 KB
RevLine 
[822]1//
2// ********************************************************************
3// * License and Disclaimer *
4// * *
5// * The Geant4 software is copyright of the Copyright Holders of *
6// * the Geant4 Collaboration. It is provided under the terms and *
7// * conditions of the Geant4 Software License, included in the file *
8// * LICENSE and available at http://cern.ch/geant4/license . These *
9// * include a list of copyright holders. *
10// * *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work make any representation or warranty, express or implied, *
14// * regarding this software system or assume any liability for its *
15// * use. Please see the license in the file LICENSE and URL above *
16// * for the full disclaimer and the limitation of liability. *
17// * *
18// * This code implementation is the result of the scientific and *
19// * technical work of the GEANT4 collaboration. *
20// * By using, copying, modifying or distributing the software (or *
21// * any work based on the software) you agree to acknowledge its *
22// * use in resulting scientific publications, and indicate your *
23// * acceptance of all terms of the Geant4 Software license. *
24// ********************************************************************
25//
26// $Id: G4NistMaterialBuilder.cc,v 1.17.2.3 2008/04/28 08:39:03 gcosmo Exp $
27// GEANT4 tag $Name: geant4-09-01-patch-02 $
28//
29//
30// -------------------------------------------------------------------
31//
32// GEANT4 Class file
33//
34// File name: G4NistMaterialBuilder
35//
36// Author: Vladimir Ivanchenko
37//
38// Creation date: 23.12.2004
39//
40// Modifications:
41// 31-10-05 Add chemical effect and gas properties (V.Ivanchenko)
42// 27.02.06 V.Ivanchneko add ConstructNewGasMaterial
43// 11.05.06 V.Ivanchneko add warning flag to FindMaterial method
44// 27.06.06 V.Ivanchneko fix graphite description
45// 27.07.07 V.Ivanchneko remove dependence on NistManager
46//
47// -------------------------------------------------------------------
48//
49// Class Description:
50//
51// Element data from the NIST DB on Atomic Weights and Isotope Compositions
52// http://physics.nist.gov/PhysRefData/Compositions/index.html
53//
54//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
55//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
56
57#include "G4NistMaterialBuilder.hh"
58#include "G4NistElementBuilder.hh"
59
60//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
61
62G4NistMaterialBuilder::G4NistMaterialBuilder(G4NistElementBuilder* eb, G4int vb)
63: elmBuilder(eb),
64 verbose(vb),
65 nMaterials(0),
66 nComponents(0),
67 nCurrent(0),
68 first(true)
69{
70 Initialise();
71}
72
73//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
74
75G4NistMaterialBuilder::~G4NistMaterialBuilder()
76{}
77
78//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
79
80G4Material* G4NistMaterialBuilder::FindOrBuildMaterial(const G4String& name,
81 G4bool isotopes,
82 G4bool warning)
83{
84 if(first) {
85 if(verbose > 0) {
86 G4cout << "### NIST DataBase for Materials is used" << G4endl;
87 }
88 first = false;
89 }
90
91 if (verbose > 1)
92 G4cout << "G4NistMaterialBuilder::FindOrBuildMaterial " << name << G4endl;
93
94 const G4MaterialTable* theMaterialTable = G4Material::GetMaterialTable();
95 G4int nmat = theMaterialTable->size();
96
97 // Check if name inside NIST DB?
98 G4Material* mat = 0;
99
100 for (G4int i=0; i<nMaterials; i++) {
101
102 // Is inside NIST DB?
103 if (name == names[i]) {
104
105 // Build new Nist material
106 if(matIndex[i] == -1) mat = BuildMaterial(i, isotopes);
107 // Nist material was already built
108 else mat = (*theMaterialTable)[matIndex[i]];
109
110 return mat;
111
112 }
113 }
114
115 // Check the list of all materials
116 if (nmat > 0) {
117 for (G4int i=0; i<nmat; i++) {
118 if(name == ((*theMaterialTable)[i])->GetName()) {
119 mat = (*theMaterialTable)[i];
120 return mat;
121 }
122 }
123 }
124
125 if( (verbose == 1 && warning) || verbose > 1)
126 G4cout << "G4NistMaterialBuilder::FindOrBuildMaterial WARNING:"
127 << " material <" << name
128 << "> is not found out" << G4endl;
129
130 return mat;
131}
132
133//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
134
135G4Material* G4NistMaterialBuilder::BuildMaterial(const G4String& name,
136 G4bool isotopes)
137
138{
139 if (verbose > 1) G4cout << "G4NistMaterialBuilder: BuildMaterial " << name
140 << G4endl;
141
142 G4Material* mat = 0;
143 if (nMaterials == 0) return mat;
144
145 for (G4int i=0; i<nMaterials; i++) {
146 if (name == names[i]) {
147 mat = BuildMaterial(i, isotopes);
148 break;
149 }
150 }
151 return mat;
152}
153
154//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
155
156G4Material* G4NistMaterialBuilder::BuildMaterial(G4int i,
157 G4bool isotopes)
158
159{
160 if (verbose > 1) G4cout << "G4NistMaterialBuilder: BuildMaterial #" << i
161 << G4endl;
162
163 G4Material* mat = 0;
164 if (nMaterials == 0) return mat;
165
166 G4int nc = components[i];
167 mat = new G4Material(names[i],densities[i],nc,
168 states[i],temperatures[i], presures[i]);
169
170 if (verbose>1) G4cout << "New material nComponents= " << nc << G4endl;
171 if (nc > 0) {
172 G4int idx = indexes[i];
173 for (G4int j=0; j<nc; j++) {
174 G4int Z = elements[idx+j];
175 G4Element* elm = elmBuilder->FindOrBuildElement(Z, isotopes);
176 mat->AddElement(elm,fractions[idx+j]);
177 }
178 }
179
180 if (chFormulas[i] != "") {
181 mat->SetChemicalFormula(chFormulas[i]);
182 G4double exc =
183 mat->GetIonisation()->FindMeanExcitationEnergy(chFormulas[i]);
184 mat->GetIonisation()->SetMeanExcitationEnergy(exc);
185 }
186
187 if (ionPotentials[i] != 0.0)
188 mat->GetIonisation()->SetMeanExcitationEnergy(ionPotentials[i]);
189
190 matIndex[i] = mat->GetIndex();
191
192 return mat;
193}
194
195//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
196
197G4Material* G4NistMaterialBuilder::ConstructNewMaterial(
198 const G4String& name,
199 const std::vector<G4String>& elm,
200 const std::vector<G4int>& nbAtoms,
201 G4double dens,
202 G4bool isotopes,
203 G4State state,
204 G4double temp,
205 G4double pressure)
206{
207 G4int nm = elm.size();
208 if(nm == 0) {
209 G4cout << "G4NistMaterialBuilder::ConstructNewMaterial:"
210 << " WARNING: empty list of elements for " << name
211 << G4endl;
212 return 0;
213 }
214 AddMaterial(name,dens*cm3/g,0,0.,nm,state,temp,pressure);
215 for (G4int i=0; i<nm; i++) {
216 G4int Z = G4int((elmBuilder->FindOrBuildElement(elm[i]))->GetZ());
217 AddElementByAtomCount(Z, nbAtoms[i]);
218 }
219
220 return BuildMaterial(name, isotopes);
221}
222
223//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
224
225G4Material* G4NistMaterialBuilder::ConstructNewMaterial(
226 const G4String& name,
227 const std::vector<G4String>& elm,
228 const std::vector<G4double>& w,
229 G4double dens,
230 G4bool isotopes,
231 G4State state,
232 G4double temp,
233 G4double pressure)
234{
235 G4int nm = elm.size();
236 if(nm == 0) {
237 G4cout << "G4NistMaterialBuilder::ConstructNewMaterial:"
238 << " WARNING: empty list of elements for " << name
239 << G4endl;
240 return 0;
241 }
242 AddMaterial(name,dens*cm3/g,0,0.,nm,state,temp,pressure);
243 for (G4int i=0; i<nm; i++) {
244 G4int Z = G4int((elmBuilder->FindOrBuildElement(elm[i]))->GetZ());
245 AddElementByWeightFraction(Z, w[i]);
246 }
247
248 return BuildMaterial(name, isotopes);
249}
250
251//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
252
253G4Material* G4NistMaterialBuilder::ConstructNewGasMaterial(
254 const G4String& name,
255 const G4String& nameNist,
256 G4double temp,
257 G4double pres,
258 G4bool isotopes)
259{
260 G4int idx = -1;
261 for (G4int i=0; i<nMaterials; i++) {
262 if (name == names[i]) {
263 G4cout << "G4NistMaterialBuilder::ConstructNewMaterial:"
264 << " WARNING: the Name <" << name
265 << "> is already in the DB idx= " << i
266 << " no new gas will be constructed"
267 << G4endl;
268 return 0;
269 } else {
270 if (nameNist == names[i]) {
271 if(states[i] != kStateGas) {
272 G4cout << "G4NistMaterialBuilder::ConstructNewMaterial:"
273 << " WARNING: <" << nameNist
274 << "> is not gas - no new gas will be constructed"
275 << G4endl;
276 return 0;
277 }
278 idx = i;
279 }
280 }
281 }
282
283 if(idx == -1) {
284 G4cout << "G4NistMaterialBuilder::ConstructNewMaterial:"
285 << " WARNING: no material in the DB with the name <" << nameNist
286 << "> - new gas is not constructed"
287 << G4endl;
288 return 0;
289 }
290
291 G4int nc = components[idx];
292 G4double dens = densities[idx]*pres*STP_Temperature/(temp*STP_Pressure);
293 G4Material* mat = new G4Material(name,dens,nc,kStateGas,temp, pres);
294
295 if (verbose>1) G4cout << "New material <" << name
296 << " density(g/cm3)= " << dens*cm3/g
297 << " T(K)= " << temp/kelvin
298 << " P(atm)= " << pres/atmosphere
299 << "> nComponents= " << nc << G4endl;
300
301 if (nc > 0) {
302 G4int k = indexes[idx];
303 for (G4int j=0; j<nc; j++) {
304 G4int Z = elements[k+j];
305 G4Element* elm = elmBuilder->FindOrBuildElement(Z, isotopes);
306 mat->AddElement(elm,fractions[k+j]);
307 }
308 }
309
310 if (chFormulas[idx] != "") {
311 mat->SetChemicalFormula(chFormulas[idx]);
312 G4double exc =
313 mat->GetIonisation()->FindMeanExcitationEnergy(chFormulas[idx]);
314 mat->GetIonisation()->SetMeanExcitationEnergy(exc);
315 }
316
317 if (ionPotentials[idx] != 0.0)
318 mat->GetIonisation()->SetMeanExcitationEnergy(ionPotentials[idx]);
319
320 matIndex[idx] = mat->GetIndex();
321
322 return mat;
323}
324
325//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
326
327void G4NistMaterialBuilder::SetVerbose(G4int val)
328{
329 verbose = val;
330 elmBuilder->SetVerbose(verbose);
331}
332
333//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
334
335void G4NistMaterialBuilder::ListMaterials(const G4String& list)
336{
337 if (list == "simple") ListNistSimpleMaterials();
338 if (list == "compound") ListNistCompoundMaterials();
339 if (list == "hep") ListHepMaterials();
340
341 if (list == "all") {
342 ListNistSimpleMaterials();
343 ListNistCompoundMaterials();
344 ListHepMaterials();
345 }
346}
347
348//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
349
350void G4NistMaterialBuilder::ListNistSimpleMaterials()
351{
352 G4cout << "=======================================================" << G4endl;
353 G4cout << "### Simple Materials from the NIST Data Base ###" << G4endl;
354 G4cout << "=======================================================" << G4endl;
355 G4cout << " Z Name ChFormula density(g/cm^3) I(eV) " << G4endl;
356 G4cout << "=======================================================" << G4endl;
357 for (G4int i=0; i<nElementary; i++) {DumpElm(i);}
358 G4cout << "=======================================================" << G4endl;
359}
360
361//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
362
363void G4NistMaterialBuilder::ListNistCompoundMaterials()
364{
365 G4cout << "### Compound Materials from the NIST Data Base ##" << G4endl;
366 G4cout << "=======================================================" << G4endl;
367 G4cout << " Ncomp Name ChFormula density(g/cm^3) I(eV) " << G4endl;
368 G4cout << "=======================================================" << G4endl;
369 for (G4int i=nElementary; i<nNIST; i++) {DumpMix(i);}
370 G4cout << "=======================================================" << G4endl;
371}
372
373//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
374
375void G4NistMaterialBuilder::ListHepMaterials()
376{
377 G4cout << "=======================================================" << G4endl;
378 G4cout << "### HEP & Nuclear Materials ##" << G4endl;
379 G4cout << "=======================================================" << G4endl;
380 G4cout << " Ncomp Name ChFormula density(g/cm^3) I(eV) " << G4endl;
381 G4cout << "=======================================================" << G4endl;
382 for (G4int i=nNIST; i<nMaterials; i++) {DumpMix(i);}
383 G4cout << "=======================================================" << G4endl;
384}
385
386//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
387
388void G4NistMaterialBuilder::DumpElm(G4int i)
389{
390 G4cout << i+1 << " " << names[i] << " " << chFormulas[i]
391 << densities[i]*cm3/g << " " << ionPotentials[i]/eV
392 << G4endl;
393}
394
395//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
396
397void G4NistMaterialBuilder::DumpMix(G4int i)
398{
399 G4int nc = components[i];
400 G4cout << nc << " " << names[i] << " " << chFormulas[i]
401 << densities[i]*cm3/g << " " << ionPotentials[i]/eV
402 << G4endl;
403 if (nc > 1) {
404 G4int imin = indexes[i];
405 G4int imax = imin + nc;
406 for (G4int j=imin; j<imax; j++) {
407 G4cout << " " << elements[j] << " " << fractions[j]
408 << G4endl;
409 }
410 }
411}
412
413//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
414
415void G4NistMaterialBuilder::AddMaterial(const G4String& nameMat, G4double dens,
416 G4int Z, G4double pot,
417 G4int ncomp, G4State state,
418 G4double temp, G4double pres)
419{
420 if (nCurrent != 0) {
421 G4cout << "WARNING: G4NistMaterialBuilder::AddMaterial problem: previous "
422 << "mixture " << nMaterials << " " << names[nMaterials]
423 << " is not yet complete!"
424 << G4endl;
425 G4cout << " New material " << nameMat << " will not be added"
426 << G4endl;
427 return;
428 }
429
430 // density in g/cm3, mean ionisation potential in eV
431
432 names.push_back(nameMat);
433 chFormulas.push_back("");
434 densities.push_back(dens*g/cm3);
435 ionPotentials.push_back(pot*eV);
436 states.push_back(state);
437 components.push_back(ncomp);
438 indexes.push_back(nComponents);
439 temperatures.push_back(temp);
440 presures.push_back(pres);
441 matIndex.push_back(-1);
442
443 if (ncomp == 1) {
444 elements.push_back(Z);
445 fractions.push_back(1.0);
446 nComponents++;
447 nCurrent = 0;
448 } else {
449 nCurrent = ncomp;
450 }
451
452 nMaterials++;
453
454 if(verbose > 1) {
455 G4cout << "New material " << nameMat << " is prepeared; "
456 << " nMaterials= " << nMaterials
457 << " nComponents= " << nComponents
458 << " nCurrent= " << nCurrent
459 << G4endl;
460 }
461}
462
463//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
464
465void G4NistMaterialBuilder::AddChemicalFormula(const G4String& nameMat,
466 const G4String& ch)
467{
468 if (nCurrent != 0) {
469 G4cout
470 << "WARNING: G4NistMaterialBuilder::AddChemicalFormula : previous mixture "
471 << nMaterials << " " << names[nMaterials] << " is not yet complete!"
472 << G4endl;
473 }
474
475 if(nameMat == names[nMaterials-1]) {
476 chFormulas[nMaterials-1] = ch;
477 return;
478 } else {
479 for(G4int i=0; i<nMaterials; i++) {
480 if(nameMat == names[i]) {
481 chFormulas[i] = ch;
482 return;
483 }
484 }
485 }
486 G4cout << "WARNING: G4NistMaterialBuilder::AddChemicalFormula : there is no "
487 << nameMat << " in the list of materials; ch=" << ch
488 << G4endl;
489}
490
491//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
492
493void G4NistMaterialBuilder::AddGas(const G4String& nameMat, G4double t,
494 G4double p)
495{
496 if (nCurrent != 0) {
497 G4cout
498 << "WARNING: G4NistMaterialBuilder::AddGas problem: previous mixture "
499 << nMaterials << " " << names[nMaterials] << " is not yet complete!"
500 << G4endl;
501 }
502
503 if(nameMat == names[nMaterials-1]) {
504 temperatures[nMaterials-1] = t;
505 presures[nMaterials-1] = p;
506 return;
507 } else {
508 for(G4int i=0; i<nMaterials; i++) {
509 if(nameMat == names[i]) {
510 temperatures[i] = t;
511 presures[i] = p;
512 return;
513 }
514 }
515 }
516 G4cout << "WARNING: G4NistMaterialBuilder::AddGas problem: there is no "
517 << nameMat << " in the list of materials;"
518 << G4endl;
519}
520
521//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
522
523void G4NistMaterialBuilder::AddElementByWeightFraction(G4int Z, G4double w)
524{
525 elements.push_back(Z);
526 fractions.push_back(w);
527 nCurrent--;
528 nComponents++;
529 if (nCurrent == 0) {
530 G4int n = nMaterials - 1;
531 G4double sum = 0.0;
532 G4int imin = indexes[n];
533 G4int imax = imin + components[n];
534
535 for(G4int i=imin; i<imax; i++) {sum += fractions[i];}
536 if (sum > 0.0) for (G4int i=imin; i<imax; i++) {fractions[i] /= sum;}
537 }
538}
539
540//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
541
542void G4NistMaterialBuilder::AddElementByWeightFraction(const G4String& name,
543 G4double w)
544{
545 G4int Z = elmBuilder->GetZ(name);
546 AddElementByWeightFraction(Z, w);
547}
548
549//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
550
551void G4NistMaterialBuilder::AddElementByAtomCount(G4int Z, G4int nb)
552{
553 G4double w = nb*elmBuilder->GetA(Z);
554 AddElementByWeightFraction(Z, w);
555}
556
557//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
558
559void G4NistMaterialBuilder::AddElementByAtomCount(const G4String& name,
560 G4int nb)
561{
562 G4int Z = elmBuilder->GetZ(name);
563 G4double w = nb*elmBuilder->GetA(Z);
564 AddElementByWeightFraction(Z, w);
565}
566
567
568//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
569
570void G4NistMaterialBuilder::Initialise()
571{
572 if (verbose > 0)
573 G4cout << "### G4NistMaterialBuilder::Initialise()" << G4endl;
574
575 NistSimpleMaterials();
576 NistCompoundMaterials();
577 HepAndNuclearMaterials();
578
579 if (verbose > 1) ListMaterials("all");
580}
581
582//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
583
584void G4NistMaterialBuilder::NistSimpleMaterials()
585{
586 // density in g/cm3, mean ionisation potential in eV
587
588 AddMaterial("G4_H" , 8.37480e-5, 1, 19.2, 1, kStateGas);
589 AddMaterial("G4_He", 1.66322e-4, 2, 41.8, 1, kStateGas);
590 AddMaterial("G4_Li", 0.534 , 3, 40. );
591 AddMaterial("G4_Be", 1.848 , 4, 63.7);
592 AddMaterial("G4_B" , 2.37 , 5, 76. );
593 AddMaterial("G4_C" , 2. , 6, 81. );
594 AddMaterial("G4_N" , 1.16520e-3, 7, 82. , 1, kStateGas);
595 AddMaterial("G4_O" , 1.33151e-3, 8, 95. , 1, kStateGas);
596 AddMaterial("G4_F" , 1.58029e-3, 9, 115. , 1, kStateGas);
597 AddMaterial("G4_Ne", 8.38505e-4, 10, 137. , 1, kStateGas);
598 AddMaterial("G4_Na", 0.971 , 11, 149. );
599 AddMaterial("G4_Mg", 1.74 , 12, 156. );
600 AddMaterial("G4_Al", 2.699 , 13, 166. );
601 AddMaterial("G4_Si", 2.33 , 14, 173. );
602 AddMaterial("G4_P" , 2.2 , 15, 173. );
603 AddMaterial("G4_S" , 2.0 , 16, 180. );
604 AddMaterial("G4_Cl", 2.99473e-3, 17, 174. , 1, kStateGas);
605 AddMaterial("G4_Ar", 1.66201e-3, 18, 188.0, 1, kStateGas);
606 AddMaterial("G4_K" , 0.862 , 19, 190. );
607 AddMaterial("G4_Ca", 1.55 , 20, 191. );
608 AddMaterial("G4_Sc", 2.989 , 21, 216. );
609 AddMaterial("G4_Ti", 4.54 , 22, 233. );
610 AddMaterial("G4_V" , 6.11 , 23, 245. );
611 AddMaterial("G4_Cr", 7.18 , 24, 257. );
612 AddMaterial("G4_Mn", 7.44 , 25, 272. );
613 AddMaterial("G4_Fe", 7.874 , 26, 286. );
614 AddMaterial("G4_Co", 8.9 , 27, 297. );
615 AddMaterial("G4_Ni", 8.902 , 28, 311. );
616 AddMaterial("G4_Cu", 8.96 , 29, 322. );
617 AddMaterial("G4_Zn", 7.133 , 30, 330. );
618 AddMaterial("G4_Ga", 5.904 , 31, 334. );
619 AddMaterial("G4_Ge", 5.323 , 32, 350. );
620 AddMaterial("G4_As", 5.73 , 33, 347. );
621 AddMaterial("G4_Se", 4.5 , 34, 348. );
622 AddMaterial("G4_Br", 7.07210e-3, 35, 343. , 1, kStateGas);
623 AddMaterial("G4_Kr", 3.47832e-3, 36, 352. , 1, kStateGas);
624 AddMaterial("G4_Rb", 1.532 , 37, 363. );
625 AddMaterial("G4_Sr", 2.54 , 38, 366. );
626 AddMaterial("G4_Y" , 4.469 , 39, 379. );
627 AddMaterial("G4_Zr", 6.506 , 40, 393. );
628 AddMaterial("G4_Nb", 8.57 , 41, 417. );
629 AddMaterial("G4_Mo", 10.22 , 42, 424. );
630 AddMaterial("G4_Tc", 11.50 , 43, 428. );
631 AddMaterial("G4_Ru", 12.41 , 44, 441. );
632 AddMaterial("G4_Rh", 12.41 , 45, 449. );
633 AddMaterial("G4_Pd", 12.02 , 46, 470. );
634 AddMaterial("G4_Ag", 10.5 , 47, 470. );
635 AddMaterial("G4_Cd", 8.65 , 48, 469. );
636 AddMaterial("G4_In", 7.31 , 49, 488. );
637 AddMaterial("G4_Sn", 7.31 , 50, 488. );
638 AddMaterial("G4_Sb", 6.691 , 51, 487. );
639 AddMaterial("G4_Te", 6.24 , 52, 485. );
640 AddMaterial("G4_I" , 4.93 , 53, 491. );
641 AddMaterial("G4_Xe", 5.48536e-3, 54, 482. , 1, kStateGas);
642 AddMaterial("G4_Cs", 1.873 , 55, 488. );
643 AddMaterial("G4_Ba", 3.5 , 56, 491. );
644 AddMaterial("G4_La", 6.154 , 57, 501. );
645 AddMaterial("G4_Ce", 6.657 , 58, 523. );
646 AddMaterial("G4_Pr", 6.71 , 59, 535. );
647 AddMaterial("G4_Nd", 6.9 , 60, 546. );
648 AddMaterial("G4_Pm", 7.22 , 61, 560. );
649 AddMaterial("G4_Sm", 7.46 , 62, 574. );
650 AddMaterial("G4_Eu", 5.243 , 63, 580. );
651 AddMaterial("G4_Gd", 7.9004 , 64, 591. );
652 AddMaterial("G4_Tb", 8.229 , 65, 614. );
653 AddMaterial("G4_Dy", 8.55 , 66, 628. );
654 AddMaterial("G4_Ho", 8.795 , 67, 650. );
655 AddMaterial("G4_Er", 9.066 , 68, 658. );
656 AddMaterial("G4_Tm", 9.321 , 69, 674. );
657 AddMaterial("G4_Yb", 6.73 , 70, 684. );
658 AddMaterial("G4_Lu", 9.84 , 71, 694. );
659 AddMaterial("G4_Hf", 13.31 , 72, 705. );
660 AddMaterial("G4_Ta", 16.654 , 73, 718. );
661 AddMaterial("G4_W" , 19.30 , 74, 727. );
662 AddMaterial("G4_Re", 21.02 , 75, 736. );
663 AddMaterial("G4_Os", 22.57 , 76, 746. );
664 AddMaterial("G4_Ir", 22.42 , 77, 757. );
665 AddMaterial("G4_Pt", 21.45 , 78, 790. );
666 AddMaterial("G4_Au", 19.32 , 79, 790. );
667 AddMaterial("G4_Hg", 13.546 , 80, 800. );
668 AddMaterial("G4_Tl", 11.72 , 81, 810. );
669 AddMaterial("G4_Pb", 11.35 , 82, 823. );
670 AddMaterial("G4_Bi", 9.747 , 83, 823. );
671 AddMaterial("G4_Po", 9.32 , 84, 830. );
672 AddMaterial("G4_At", 9.32 , 85, 825. );
673 AddMaterial("G4_Rn", 9.00662e-3, 86, 794. , 1, kStateGas);
674 AddMaterial("G4_Fr", 1.00 , 87, 827. );
675 AddMaterial("G4_Ra", 5.00 , 88, 826. );
676 AddMaterial("G4_Ac", 10.07 , 89, 841. );
677 AddMaterial("G4_Th", 11.72 , 90, 847. );
678 AddMaterial("G4_Pa", 15.37 , 91, 878. );
679 AddMaterial("G4_U" , 18.95 , 92, 890. );
680 AddMaterial("G4_Np", 20.25 , 93, 902. );
681 AddMaterial("G4_Pu", 19.84 , 94, 921. );
682 AddMaterial("G4_Am", 13.67 , 95, 934. );
683 AddMaterial("G4_Cm", 13.51 , 96, 939. );
684 AddMaterial("G4_Bk", 14.00 , 97, 952. );
685 AddMaterial("G4_Cf", 10.00 , 98, 966. );
686
687 nElementary = nMaterials;
688}
689
690//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
691
692void G4NistMaterialBuilder::NistCompoundMaterials()
693{
694 AddMaterial("G4_A-150_TISSUE", 1.127, 0, 65.1, 6);
695 AddElementByWeightFraction( 1, 0.101327);
696 AddElementByWeightFraction( 6, 0.775501);
697 AddElementByWeightFraction( 7, 0.035057);
698 AddElementByWeightFraction( 8, 0.052316);
699 AddElementByWeightFraction( 9, 0.017422);
700 AddElementByWeightFraction(20, 0.018378);
701
702 AddMaterial("G4_ACETONE", 0.7899, 0, 64.2, 3);
703 AddElementByWeightFraction( 1, 0.104122);
704 AddElementByWeightFraction( 6, 0.620405);
705 AddElementByWeightFraction( 8, 0.275473);
706
707 AddMaterial("G4_ACETYLENE", 0.0010967, 0, 58.2, 2, kStateGas);
708 AddElementByWeightFraction( 1, 0.077418);
709 AddElementByWeightFraction( 6, 0.922582);
710
711 AddMaterial("G4_ADENINE", 1.35, 0, 71.4, 3);
712 AddElementByWeightFraction( 1, 0.037294);
713 AddElementByWeightFraction( 6, 0.44443 );
714 AddElementByWeightFraction( 7, 0.518275);
715
716 AddMaterial("G4_ADIPOSE_TISSUE_ICRP", 0.92, 0, 63.2, 13);
717 AddElementByWeightFraction( 1, 0.119477);
718 AddElementByWeightFraction( 6, 0.63724 );
719 AddElementByWeightFraction( 7, 0.00797 );
720 AddElementByWeightFraction( 8, 0.232333);
721 AddElementByWeightFraction(11, 0.0005 );
722 AddElementByWeightFraction(12, 2e-05 );
723 AddElementByWeightFraction(15, 0.00016 );
724 AddElementByWeightFraction(16, 0.00073 );
725 AddElementByWeightFraction(17, 0.00119 );
726 AddElementByWeightFraction(19, 0.00032 );
727 AddElementByWeightFraction(20, 2e-05 );
728 AddElementByWeightFraction(26, 2e-05 );
729 AddElementByWeightFraction(30, 2e-05 );
730
731 AddMaterial("G4_AIR", 0.00120479, 0, 85.7, 4, kStateGas);
732 AddElementByWeightFraction( 6, 0.000124);
733 AddElementByWeightFraction( 7, 0.755267);
734 AddElementByWeightFraction( 8, 0.231781);
735 AddElementByWeightFraction(18, 0.012827);
736
737 AddMaterial("G4_ALANINE", 1.42, 0, 71.9, 4);
738 AddElementByWeightFraction( 1, 0.07919 );
739 AddElementByWeightFraction( 6, 0.404439);
740 AddElementByWeightFraction( 7, 0.157213);
741 AddElementByWeightFraction( 8, 0.359159);
742
743 AddMaterial("G4_ALUMINUM_OXIDE", 3.97, 0, 145.2, 2);
744 AddElementByWeightFraction( 8, 0.470749);
745 AddElementByWeightFraction(13, 0.529251);
746 AddChemicalFormula("G4_ALUMINUM_OXIDE","Al_2O_3");
747
748 AddMaterial("G4_AMBER", 1.1, 0, 63.2, 3);
749 AddElementByWeightFraction( 1, 0.10593 );
750 AddElementByWeightFraction( 6, 0.788973);
751 AddElementByWeightFraction( 8, 0.105096);
752
753 AddMaterial("G4_AMMONIA", 0.000826019, 0, 53.7, 2, kStateGas);
754 AddElementByWeightFraction( 1, 0.177547);
755 AddElementByWeightFraction( 7, 0.822453);
756
757 AddMaterial("G4_ANILINE", 1.0235, 0, 66.2, 3);
758 AddElementByWeightFraction( 1, 0.075759);
759 AddElementByWeightFraction( 6, 0.773838);
760 AddElementByWeightFraction( 7, 0.150403);
761
762 AddMaterial("G4_ANTHRACENE", 1.283, 0, 69.5, 2);
763 AddElementByWeightFraction( 1, 0.05655);
764 AddElementByWeightFraction( 6, 0.94345);
765
766 AddMaterial("G4_B-100_BONE", 1.45, 0, 85.9, 6);
767 AddElementByWeightFraction( 1, 0.065471);
768 AddElementByWeightFraction( 6, 0.536945);
769 AddElementByWeightFraction( 7, 0.0215 );
770 AddElementByWeightFraction( 8, 0.032085);
771 AddElementByWeightFraction( 9, 0.167411);
772 AddElementByWeightFraction(20, 0.176589);
773
774 AddMaterial("G4_BAKELITE", 1.25, 0, 72.4, 3);
775 AddElementByWeightFraction( 1, 0.057441);
776 AddElementByWeightFraction( 6, 0.774591);
777 AddElementByWeightFraction( 8, 0.167968);
778
779 AddMaterial("G4_BARIUM_FLUORIDE", 4.89 ,0, 375.9, 2);
780 AddElementByWeightFraction( 9, 0.21672);
781 AddElementByWeightFraction(56, 0.78328);
782
783 AddMaterial("G4_BARIUM_SULFATE", 4.5, 0, 285.7, 3);
784 AddElementByWeightFraction( 8,0.274212);
785 AddElementByWeightFraction(16,0.137368);
786 AddElementByWeightFraction(56,0.58842 );
787
788 AddMaterial("G4_BENZENE", 0.87865, 0, 63.4, 2);
789 AddElementByWeightFraction( 1, 0.077418);
790 AddElementByWeightFraction( 6, 0.922582);
791
792 AddMaterial("G4_BERYLLIUM_OXIDE", 3.01, 0, 93.2, 2);
793 AddElementByWeightFraction( 4, 0.36032);
794 AddElementByWeightFraction( 8, 0.63968);
795
796 AddMaterial("G4_BGO", 7.13, 0, 534.1, 3);
797 AddElementByWeightFraction( 8, 0.154126);
798 AddElementByWeightFraction(32, 0.17482 );
799 AddElementByWeightFraction(83, 0.671054);
800
801 AddMaterial("G4_BLOOD_ICRP", 1.06, 0, 75.2, 14);
802 AddElementByWeightFraction( 1, 0.101866);
803 AddElementByWeightFraction( 6, 0.10002 );
804 AddElementByWeightFraction( 7, 0.02964 );
805 AddElementByWeightFraction( 8, 0.759414);
806 AddElementByWeightFraction(11, 0.00185 );
807 AddElementByWeightFraction(12, 4e-05 );
808 AddElementByWeightFraction(14, 3e-05 );
809 AddElementByWeightFraction(15, 0.00035 );
810 AddElementByWeightFraction(16, 0.00185 );
811 AddElementByWeightFraction(17, 0.00278 );
812 AddElementByWeightFraction(19, 0.00163 );
813 AddElementByWeightFraction(20, 6e-05 );
814 AddElementByWeightFraction(26, 0.00046 );
815 AddElementByWeightFraction(30, 1e-05 );
816
817 AddMaterial("G4_BONE_COMPACT_ICRU", 1.85, 0, 91.9, 8);
818 AddElementByWeightFraction( 1, 0.063984);
819 AddElementByWeightFraction( 6, 0.278 );
820 AddElementByWeightFraction( 7, 0.027 );
821 AddElementByWeightFraction( 8, 0.410016);
822 AddElementByWeightFraction(12, 0.002 );
823 AddElementByWeightFraction(15, 0.07 );
824 AddElementByWeightFraction(16, 0.002 );
825 AddElementByWeightFraction(20, 0.147 );
826
827 AddMaterial("G4_BONE_CORTICAL_ICRP", 1.85, 0, 106.4, 9);
828 AddElementByWeightFraction( 1, 0.047234);
829 AddElementByWeightFraction( 6, 0.14433 );
830 AddElementByWeightFraction( 7, 0.04199 );
831 AddElementByWeightFraction( 8, 0.446096);
832 AddElementByWeightFraction(12, 0.0022 );
833 AddElementByWeightFraction(15, 0.10497 );
834 AddElementByWeightFraction(16, 0.00315 );
835 AddElementByWeightFraction(20, 0.20993 );
836 AddElementByWeightFraction(30, 0.0001 );
837
838 AddMaterial("G4_BORON_CARBIDE", 2.52, 0, 84.7, 2);
839 AddElementByWeightFraction( 5, 0.78261);
840 AddElementByWeightFraction( 6, 0.21739);
841
842 AddMaterial("G4_BORON_OXIDE", 1.812, 0, 99.6, 2);
843 AddElementByWeightFraction( 5, 0.310551);
844 AddElementByWeightFraction( 8, 0.689449);
845
846 AddMaterial("G4_BRAIN_ICRP", 1.03, 0, 73.3, 13);
847 AddElementByWeightFraction( 1, 0.110667);
848 AddElementByWeightFraction( 6, 0.12542 );
849 AddElementByWeightFraction( 7, 0.01328 );
850 AddElementByWeightFraction( 8, 0.737723);
851 AddElementByWeightFraction(11, 0.00184 );
852 AddElementByWeightFraction(12, 0.00015 );
853 AddElementByWeightFraction(15, 0.00354 );
854 AddElementByWeightFraction(16, 0.00177 );
855 AddElementByWeightFraction(17, 0.00236 );
856 AddElementByWeightFraction(19, 0.0031 );
857 AddElementByWeightFraction(20, 9e-05 );
858 AddElementByWeightFraction(26, 5e-05 );
859 AddElementByWeightFraction(30, 1e-05 );
860
861 AddMaterial("G4_BUTANE", 0.00249343, 0, 48.3, 2, kStateGas);
862 AddElementByWeightFraction( 1, 0.173408);
863 AddElementByWeightFraction( 6, 0.826592);
864
865 AddMaterial("G4_N-BUTYL_ALCOHOL", 0.8098, 0, 59.9, 3);
866 AddElementByWeightFraction( 1, 0.135978);
867 AddElementByWeightFraction( 6, 0.648171);
868 AddElementByWeightFraction( 8, 0.215851);
869
870 AddMaterial("G4_C-552", 1.76, 0, 86.8, 5);
871 AddElementByWeightFraction( 1, 0.02468 );
872 AddElementByWeightFraction( 6, 0.50161 );
873 AddElementByWeightFraction( 8, 0.004527);
874 AddElementByWeightFraction( 9, 0.465209);
875 AddElementByWeightFraction(14, 0.003973);
876
877 AddMaterial("G4_CADMIUM_TELLURIDE", 6.2, 0, 539.3, 2);
878 AddElementByWeightFraction(48, 0.468355);
879 AddElementByWeightFraction(52, 0.531645);
880
881 AddMaterial("G4_CADMIUM_TUNGSTATE", 7.9, 0, 468.3, 3);
882 AddElementByWeightFraction( 8, 0.177644);
883 AddElementByWeightFraction(48, 0.312027);
884 AddElementByWeightFraction(74, 0.510329);
885
886 AddMaterial("G4_CALCIUM_CARBONATE", 2.8, 0, 136.4, 3);
887 AddElementByWeightFraction( 6, 0.120003);
888 AddElementByWeightFraction( 8, 0.479554);
889 AddElementByWeightFraction(20, 0.400443);
890
891 AddMaterial("G4_CALCIUM_FLUORIDE", 3.18, 0, 166., 2);
892 AddElementByWeightFraction( 9, 0.486659);
893 AddElementByWeightFraction(20, 0.513341);
894
895 AddMaterial("G4_CALCIUM_OXIDE", 3.3, 0, 176.1, 2);
896 AddElementByWeightFraction( 8, 0.285299);
897 AddElementByWeightFraction(20, 0.714701);
898
899 AddMaterial("G4_CALCIUM_SULFATE", 2.96, 0, 152.3, 3);
900 AddElementByWeightFraction( 8, 0.470095);
901 AddElementByWeightFraction(16, 0.235497);
902 AddElementByWeightFraction(20, 0.294408);
903
904 AddMaterial("G4_CALCIUM_TUNGSTATE", 6.062, 0, 395., 3);
905 AddElementByWeightFraction( 8, 0.22227 );
906 AddElementByWeightFraction(20, 0.139202);
907 AddElementByWeightFraction(74, 0.638529);
908
909 AddMaterial("G4_CARBON_DIOXIDE", 0.00184212, 0, 85., 2, kStateGas);
910 AddElementByWeightFraction( 6, 0.272916);
911 AddElementByWeightFraction( 8, 0.727084);
912 AddChemicalFormula("G4_CARBON_DIOXIDE","CO_2");
913
914 AddMaterial("G4_CARBON_TETRACHLORIDE", 1.594, 0, 166.3, 2);
915 AddElementByWeightFraction( 6, 0.078083);
916 AddElementByWeightFraction(17, 0.921917);
917
918 AddMaterial("G4_CELLULOSE_CELLOPHANE", 1.42, 0, 77.6, 3);
919 AddElementByWeightFraction( 1, 0.062162);
920 AddElementByWeightFraction( 6, 0.444462);
921 AddElementByWeightFraction( 8, 0.493376);
922
923 AddMaterial("G4_CELLULOSE_BUTYRATE", 1.2, 0, 74.6, 3);
924 AddElementByWeightFraction( 1, 0.067125);
925 AddElementByWeightFraction( 6, 0.545403);
926 AddElementByWeightFraction( 8, 0.387472);
927
928 AddMaterial("G4_CELLULOSE_NITRATE", 1.49, 0, 87., 4);
929 AddElementByWeightFraction( 1, 0.029216);
930 AddElementByWeightFraction( 6, 0.271296);
931 AddElementByWeightFraction( 7, 0.121276);
932 AddElementByWeightFraction( 8, 0.578212);
933
934 AddMaterial("G4_CERIC_SULFATE", 1.03, 0, 76.7, 5);
935 AddElementByWeightFraction( 1, 0.107596);
936 AddElementByWeightFraction( 7, 0.0008 );
937 AddElementByWeightFraction( 8, 0.874976);
938 AddElementByWeightFraction(16, 0.014627);
939 AddElementByWeightFraction(58, 0.002001);
940
941 AddMaterial("G4_CESIUM_FLUORIDE", 4.115, 0, 440.7, 2);
942 AddElementByWeightFraction( 9, 0.125069);
943 AddElementByWeightFraction(55, 0.874931);
944
945 AddMaterial("G4_CESIUM_IODIDE", 4.51, 0, 553.1, 2);
946 AddElementByWeightFraction(53, 0.488451);
947 AddElementByWeightFraction(55, 0.511549);
948
949 AddMaterial("G4_CHLOROBENZENE", 1.1058, 0, 89.1, 3);
950 AddElementByWeightFraction( 1, 0.044772);
951 AddElementByWeightFraction( 6, 0.640254);
952 AddElementByWeightFraction(17, 0.314974);
953
954 AddMaterial("G4_CHLOROFORM", 1.4832, 0, 156., 3);
955 AddElementByWeightFraction( 1, 0.008443);
956 AddElementByWeightFraction( 6, 0.100613);
957 AddElementByWeightFraction(17, 0.890944);
958
959 AddMaterial("G4_CONCRETE", 2.3, 0, 135.2, 10);
960 AddElementByWeightFraction( 1, 0.01 );
961 AddElementByWeightFraction( 6, 0.001 );
962 AddElementByWeightFraction( 8, 0.529107);
963 AddElementByWeightFraction(11, 0.016 );
964 AddElementByWeightFraction(12, 0.002 );
965 AddElementByWeightFraction(13, 0.033872);
966 AddElementByWeightFraction(14, 0.337021);
967 AddElementByWeightFraction(19, 0.013 );
968 AddElementByWeightFraction(20, 0.044 );
969 AddElementByWeightFraction(26, 0.014 );
970
971 AddMaterial("G4_CYCLOHEXANE", 0.779, 0, 56.4, 2);
972 AddElementByWeightFraction( 1, 0.143711);
973 AddElementByWeightFraction( 6, 0.856289);
974
975 AddMaterial("G4_1,2-DICHLOROBENZENE", 1.3048, 0, 106.5, 3);
976 AddElementByWeightFraction( 1, 0.027425);
977 AddElementByWeightFraction( 6, 0.490233);
978 AddElementByWeightFraction(17, 0.482342);
979
980 AddMaterial("G4_DICHLORODIETHYL_ETHER", 1.2199, 0, 103.3, 4);
981 AddElementByWeightFraction( 1, 0.056381);
982 AddElementByWeightFraction( 6, 0.335942);
983 AddElementByWeightFraction( 8, 0.111874);
984 AddElementByWeightFraction(17, 0.495802);
985
986 AddMaterial("G4_1,2-DICHLOROETHANE", 1.2351, 0, 111.9, 3);
987 AddElementByWeightFraction( 1, 0.04074 );
988 AddElementByWeightFraction( 6, 0.242746);
989 AddElementByWeightFraction(17, 0.716515);
990
991 AddMaterial("G4_DIETHYL_ETHER", 0.71378, 0, 60., 3);
992 AddElementByWeightFraction( 1, 0.135978);
993 AddElementByWeightFraction( 6, 0.648171);
994 AddElementByWeightFraction( 8, 0.215851);
995
996 AddMaterial("G4_N,N-DIMETHYL_FORMAMIDE", 0.9487, 0, 66.6, 4);
997 AddElementByWeightFraction( 1, 0.096523);
998 AddElementByWeightFraction( 6, 0.492965);
999 AddElementByWeightFraction( 7, 0.191625);
1000 AddElementByWeightFraction( 8, 0.218887);
1001
1002 AddMaterial("G4_DIMETHYL_SULFOXIDE", 1.1014, 0, 98.6, 4);
1003 AddElementByWeightFraction( 1, 0.077403);
1004 AddElementByWeightFraction( 6, 0.307467);
1005 AddElementByWeightFraction( 8, 0.204782);
1006 AddElementByWeightFraction(16, 0.410348);
1007
1008 AddMaterial("G4_ETHANE", 0.00125324, 0, 45.4, 2, kStateGas);
1009 AddElementByWeightFraction( 1, 0.201115);
1010 AddElementByWeightFraction( 6, 0.798885);
1011
1012 AddMaterial("G4_ETHYL_ALCOHOL", 0.7893, 0, 62.9, 3);
1013 AddElementByWeightFraction( 1, 0.131269);
1014 AddElementByWeightFraction( 6, 0.521438);
1015 AddElementByWeightFraction( 8, 0.347294);
1016
1017 AddMaterial("G4_ETHYL_CELLULOSE", 1.13, 0, 69.3, 3);
1018 AddElementByWeightFraction( 1, 0.090027);
1019 AddElementByWeightFraction( 6, 0.585182);
1020 AddElementByWeightFraction( 8, 0.324791);
1021
1022 AddMaterial("G4_ETHYLENE", 0.00117497, 0, 50.7, 2, kStateGas);
1023 AddElementByWeightFraction( 1, 0.143711);
1024 AddElementByWeightFraction( 6, 0.856289);
1025
1026 AddMaterial("G4_EYE_LENS_ICRP", 1.1, 0, 73.3, 4);
1027 AddElementByWeightFraction( 1, 0.099269);
1028 AddElementByWeightFraction( 6, 0.19371 );
1029 AddElementByWeightFraction( 7, 0.05327 );
1030 AddElementByWeightFraction( 8, 0.653751);
1031
1032 AddMaterial("G4_FERRIC_OXIDE", 5.2, 0, 227.3, 2);
1033 AddElementByWeightFraction( 8, 0.300567);
1034 AddElementByWeightFraction(26, 0.699433);
1035
1036 AddMaterial("G4_FERROBORIDE", 7.15, 0, 261., 2);
1037 AddElementByWeightFraction( 5, 0.162174);
1038 AddElementByWeightFraction(26, 0.837826);
1039
1040 AddMaterial("G4_FERROUS_OXIDE", 5.7, 0, 248.6, 2);
1041 AddElementByWeightFraction( 8, 0.222689);
1042 AddElementByWeightFraction(26, 0.777311);
1043
1044 AddMaterial("G4_FERROUS_SULFATE", 1.024, 0, 76.4, 7);
1045 AddElementByWeightFraction( 1, 0.108259);
1046 AddElementByWeightFraction( 7, 2.7e-05 );
1047 AddElementByWeightFraction( 8, 0.878636);
1048 AddElementByWeightFraction(11, 2.2e-05 );
1049 AddElementByWeightFraction(16, 0.012968);
1050 AddElementByWeightFraction(17, 3.4e-05 );
1051 AddElementByWeightFraction(26, 5.4e-05 );
1052
1053 AddMaterial("G4_FREON-12", 1.12, 0, 143., 3);
1054 AddElementByWeightFraction( 6, 0.099335);
1055 AddElementByWeightFraction( 9, 0.314247);
1056 AddElementByWeightFraction(17, 0.586418);
1057
1058 AddMaterial("G4_FREON-12B2", 1.8, 0, 284.9, 3);
1059 AddElementByWeightFraction( 6, 0.057245);
1060 AddElementByWeightFraction( 9, 0.181096);
1061 AddElementByWeightFraction(35, 0.761659);
1062
1063 AddMaterial("G4_FREON-13", 0.95, 0, 126.6, 3);
1064 AddElementByWeightFraction( 6, 0.114983);
1065 AddElementByWeightFraction( 9, 0.545622);
1066 AddElementByWeightFraction(17, 0.339396);
1067
1068 AddMaterial("G4_FREON-13B1", 1.5, 0, 210.5, 3);
1069 AddElementByWeightFraction( 6, 0.080659);
1070 AddElementByWeightFraction( 9, 0.382749);
1071 AddElementByWeightFraction(35, 0.536592);
1072
1073 AddMaterial("G4_FREON-13I1", 1.8, 0, 293.5, 3);
1074 AddElementByWeightFraction( 6, 0.061309);
1075 AddElementByWeightFraction( 9, 0.290924);
1076 AddElementByWeightFraction(53, 0.647767);
1077
1078 AddMaterial("G4_GADOLINIUM_OXYSULFIDE", 7.44, 0, 493.3, 3);
1079 AddElementByWeightFraction( 8, 0.084528);
1080 AddElementByWeightFraction(16, 0.08469 );
1081 AddElementByWeightFraction(64, 0.830782);
1082
1083 AddMaterial("G4_GALLIUM_ARSENIDE", 5.31, 0, 384.9, 2);
1084 AddElementByWeightFraction(31, 0.482019);
1085 AddElementByWeightFraction(33, 0.517981);
1086
1087 AddMaterial("G4_GEL_PHOTO_EMULSION", 1.2914, 0, 74.8, 5);
1088 AddElementByWeightFraction( 1, 0.08118);
1089 AddElementByWeightFraction( 6, 0.41606);
1090 AddElementByWeightFraction( 7, 0.11124);
1091 AddElementByWeightFraction( 8, 0.38064);
1092 AddElementByWeightFraction(16, 0.01088);
1093
1094 AddMaterial("G4_Pyrex_Glass", 2.23, 0, 134., 6);
1095 AddElementByWeightFraction( 5, 0.040064);
1096 AddElementByWeightFraction( 8, 0.539562);
1097 AddElementByWeightFraction(11, 0.028191);
1098 AddElementByWeightFraction(13, 0.011644);
1099 AddElementByWeightFraction(14, 0.37722 );
1100 AddElementByWeightFraction(19, 0.003321);
1101
1102 AddMaterial("G4_GLASS_LEAD", 6.22, 0, 526.4, 5);
1103 AddElementByWeightFraction( 8, 0.156453);
1104 AddElementByWeightFraction(14, 0.080866);
1105 AddElementByWeightFraction(22, 0.008092);
1106 AddElementByWeightFraction(33, 0.002651);
1107 AddElementByWeightFraction(82, 0.751938);
1108
1109 AddMaterial("G4_GLASS_PLATE", 2.4, 0, 145.4, 4);
1110 AddElementByWeightFraction( 8, 0.4598 );
1111 AddElementByWeightFraction(11, 0.096441);
1112 AddElementByWeightFraction(14, 0.336553);
1113 AddElementByWeightFraction(20, 0.107205);
1114
1115 AddMaterial("G4_GLUCOSE", 1.54, 0, 77.2, 3);
1116 AddElementByWeightFraction( 1, 0.071204);
1117 AddElementByWeightFraction( 6, 0.363652);
1118 AddElementByWeightFraction( 8, 0.565144);
1119
1120 AddMaterial("G4_GLUTAMINE", 1.46, 0, 73.3, 4);
1121 AddElementByWeightFraction( 1, 0.068965);
1122 AddElementByWeightFraction( 6, 0.410926);
1123 AddElementByWeightFraction( 7, 0.191681);
1124 AddElementByWeightFraction( 8, 0.328427);
1125
1126 AddMaterial("G4_GLYCEROL", 1.2613, 0, 72.6, 3);
1127 AddElementByWeightFraction( 1, 0.087554);
1128 AddElementByWeightFraction( 6, 0.391262);
1129 AddElementByWeightFraction( 8, 0.521185);
1130
1131 AddMaterial("G4_GUANINE", 1.58, 0, 75. ,4);
1132 AddElementByWeightFraction( 1, 0.033346);
1133 AddElementByWeightFraction( 6, 0.39738 );
1134 AddElementByWeightFraction( 7, 0.463407);
1135 AddElementByWeightFraction( 8, 0.105867);
1136
1137 AddMaterial("G4_GYPSUM", 2.32, 0, 129.7, 4);
1138 AddElementByWeightFraction( 1, 0.023416);
1139 AddElementByWeightFraction( 8, 0.557572);
1140 AddElementByWeightFraction(16, 0.186215);
1141 AddElementByWeightFraction(20, 0.232797);
1142
1143 AddMaterial("G4_N-HEPTANE", 0.68376, 0, 54.4, 2);
1144 AddElementByWeightFraction( 1, 0.160937);
1145 AddElementByWeightFraction( 6, 0.839063);
1146
1147 AddMaterial("G4_N-HEXANE", 0.6603, 0, 54., 2);
1148 AddElementByWeightFraction( 1, 0.163741);
1149 AddElementByWeightFraction( 6, 0.836259);
1150
1151 AddMaterial("G4_KAPTON", 1.42, 0, 79.6, 4);
1152 AddElementByWeightFraction( 1, 0.026362);
1153 AddElementByWeightFraction( 6, 0.691133);
1154 AddElementByWeightFraction( 7, 0.07327 );
1155 AddElementByWeightFraction( 8, 0.209235);
1156
1157 AddMaterial("G4_LANTHANUM_OXYBROMIDE", 6.28, 0, 439.7, 3);
1158 AddElementByWeightFraction( 8, 0.068138);
1159 AddElementByWeightFraction(35, 0.340294);
1160 AddElementByWeightFraction(57, 0.591568);
1161
1162 AddMaterial("G4_LANTHANUM_OXYSULFIDE", 5.86, 0, 421.2, 3);
1163 AddElementByWeightFraction( 8, 0.0936 );
1164 AddElementByWeightFraction(16, 0.093778);
1165 AddElementByWeightFraction(57, 0.812622);
1166
1167 AddMaterial("G4_LEAD_OXIDE", 9.53, 0, 766.7, 2);
1168 AddElementByWeightFraction( 8, 0.071682);
1169 AddElementByWeightFraction(82, 0.928318);
1170
1171 AddMaterial("G4_LITHIUM_AMIDE", 1.178, 0, 55.5, 3);
1172 AddElementByWeightFraction( 1, 0.087783);
1173 AddElementByWeightFraction( 3, 0.302262);
1174 AddElementByWeightFraction( 7, 0.609955);
1175
1176 AddMaterial("G4_LITHIUM_CARBONATE", 2.11, 0, 87.9, 3);
1177 AddElementByWeightFraction( 3, 0.187871);
1178 AddElementByWeightFraction( 6, 0.16255 );
1179 AddElementByWeightFraction( 8, 0.649579);
1180
1181 AddMaterial("G4_LITHIUM_FLUORIDE", 2.635, 0, 94., 2);
1182 AddElementByWeightFraction( 3, 0.267585);
1183 AddElementByWeightFraction( 9, 0.732415);
1184
1185 AddMaterial("G4_LITHIUM_HYDRIDE", 0.82, 0, 36.5, 2);
1186 AddElementByWeightFraction( 1, 0.126797);
1187 AddElementByWeightFraction( 3, 0.873203);
1188
1189 AddMaterial("G4_LITHIUM_IODIDE", 3.494, 0, 485.1, 2);
1190 AddElementByWeightFraction( 3, 0.051858);
1191 AddElementByWeightFraction(53, 0.948142);
1192
1193 AddMaterial("G4_LITHIUM_OXIDE", 2.013, 0, 73.6, 2);
1194 AddElementByWeightFraction( 3, 0.46457);
1195 AddElementByWeightFraction( 8, 0.53543);
1196
1197 AddMaterial("G4_LITHIUM_TETRABORATE", 2.44, 0, 94.6, 3);
1198 AddElementByWeightFraction( 3, 0.082085);
1199 AddElementByWeightFraction( 5, 0.25568 );
1200 AddElementByWeightFraction( 8, 0.662235);
1201
1202 AddMaterial("G4_LUNG_ICRP", 1.05, 0, 75.3, 13);
1203 AddElementByWeightFraction( 1, 0.101278);
1204 AddElementByWeightFraction( 6, 0.10231 );
1205 AddElementByWeightFraction( 7, 0.02865 );
1206 AddElementByWeightFraction( 8, 0.757072);
1207 AddElementByWeightFraction(11, 0.00184 );
1208 AddElementByWeightFraction(12, 0.00073 );
1209 AddElementByWeightFraction(15, 0.0008 );
1210 AddElementByWeightFraction(16, 0.00225 );
1211 AddElementByWeightFraction(17, 0.00266 );
1212 AddElementByWeightFraction(19, 0.00194 );
1213 AddElementByWeightFraction(20, 9e-05 );
1214 AddElementByWeightFraction(26, 0.00037 );
1215 AddElementByWeightFraction(30, 1e-05 );
1216
1217 AddMaterial("G4_M3_WAX", 1.05, 0, 67.9, 5);
1218 AddElementByWeightFraction( 1, 0.114318);
1219 AddElementByWeightFraction( 6, 0.655823);
1220 AddElementByWeightFraction( 8, 0.092183);
1221 AddElementByWeightFraction(12, 0.134792);
1222 AddElementByWeightFraction(20, 0.002883);
1223
1224 AddMaterial("G4_MAGNESIUM_CARBONATE", 2.958, 0, 118., 3);
1225 AddElementByWeightFraction( 6, 0.142455);
1226 AddElementByWeightFraction( 8, 0.569278);
1227 AddElementByWeightFraction(12, 0.288267);
1228
1229 AddMaterial("G4_MAGNESIUM_FLUORIDE", 3.0, 0, 134.3, 2);
1230 AddElementByWeightFraction( 9, 0.609883);
1231 AddElementByWeightFraction(12, 0.390117);
1232
1233 AddMaterial("G4_MAGNESIUM_OXIDE", 3.58, 0, 143.8, 2);
1234 AddElementByWeightFraction( 8, 0.396964);
1235 AddElementByWeightFraction(12, 0.603036);
1236
1237 AddMaterial("G4_MAGNESIUM_TETRABORATE", 2.53, 0, 108.3, 3);
1238 AddElementByWeightFraction( 5, 0.240837);
1239 AddElementByWeightFraction( 8, 0.62379);
1240 AddElementByWeightFraction(12, 0.135373);
1241
1242 AddMaterial("G4_MERCURIC_IODIDE", 6.36, 0, 684.5, 2);
1243 AddElementByWeightFraction(53, 0.55856);
1244 AddElementByWeightFraction(80, 0.44144);
1245
1246 AddMaterial("G4_METHANE", 0.000667151, 0, 41.7, 2, kStateGas);
1247 AddElementByWeightFraction( 1, 0.251306);
1248 AddElementByWeightFraction( 6, 0.748694);
1249
1250 AddMaterial("G4_METHANOL", 0.7914, 0, 67.6, 3);
1251 AddElementByWeightFraction( 1, 0.125822);
1252 AddElementByWeightFraction( 6, 0.374852);
1253 AddElementByWeightFraction( 8, 0.499326);
1254
1255 AddMaterial("G4_MIX_D_WAX", 0.99, 0, 60.9, 5);
1256 AddElementByWeightFraction( 1, 0.13404 );
1257 AddElementByWeightFraction( 6, 0.77796 );
1258 AddElementByWeightFraction( 8, 0.03502 );
1259 AddElementByWeightFraction(12, 0.038594);
1260 AddElementByWeightFraction(22, 0.014386);
1261
1262 AddMaterial("G4_MS20_TISSUE", 1.0, 0, 75.1, 6);
1263 AddElementByWeightFraction( 1, 0.081192);
1264 AddElementByWeightFraction( 6, 0.583442);
1265 AddElementByWeightFraction( 7, 0.017798);
1266 AddElementByWeightFraction( 8, 0.186381);
1267 AddElementByWeightFraction(12, 0.130287);
1268 AddElementByWeightFraction(17, 0.0009 );
1269
1270 AddMaterial("G4_MUSCLE_SKELETAL_ICRP", 1.04, 0, 75.3, 13);
1271 AddElementByWeightFraction( 1, 0.100637);
1272 AddElementByWeightFraction( 6, 0.10783 );
1273 AddElementByWeightFraction( 7, 0.02768 );
1274 AddElementByWeightFraction( 8, 0.754773);
1275 AddElementByWeightFraction(11, 0.00075 );
1276 AddElementByWeightFraction(12, 0.00019 );
1277 AddElementByWeightFraction(15, 0.0018 );
1278 AddElementByWeightFraction(16, 0.00241 );
1279 AddElementByWeightFraction(17, 0.00079 );
1280 AddElementByWeightFraction(19, 0.00302 );
1281 AddElementByWeightFraction(20, 3e-05 );
1282 AddElementByWeightFraction(26, 4e-05 );
1283 AddElementByWeightFraction(30, 5e-05 );
1284
1285 AddMaterial("G4_MUSCLE_STRIATED_ICRU", 1.04, 0, 74.7, 9);
1286 AddElementByWeightFraction( 1, 0.101997);
1287 AddElementByWeightFraction( 6, 0.123 );
1288 AddElementByWeightFraction( 7, 0.035 );
1289 AddElementByWeightFraction( 8, 0.729003);
1290 AddElementByWeightFraction(11, 0.0008 );
1291 AddElementByWeightFraction(12, 0.0002 );
1292 AddElementByWeightFraction(15, 0.002 );
1293 AddElementByWeightFraction(16, 0.005 );
1294 AddElementByWeightFraction(19, 0.003 );
1295
1296 AddMaterial("G4_MUSCLE_WITH_SUCROSE", 1.11, 0, 74.3, 4);
1297 AddElementByWeightFraction( 1, 0.098234);
1298 AddElementByWeightFraction( 6, 0.156214);
1299 AddElementByWeightFraction( 7, 0.035451);
1300 AddElementByWeightFraction( 8, 0.7101 );
1301
1302 AddMaterial("G4_MUSCLE_WITHOUT_SUCROSE", 1.07, 0, 74.2, 4);
1303 AddElementByWeightFraction( 1, 0.101969);
1304 AddElementByWeightFraction( 6, 0.120058);
1305 AddElementByWeightFraction( 7, 0.035451);
1306 AddElementByWeightFraction( 8, 0.742522);
1307
1308 AddMaterial("G4_NAPHTHALENE", 1.145, 0, 68.4, 2);
1309 AddElementByWeightFraction( 1, 0.062909);
1310 AddElementByWeightFraction( 6, 0.937091);
1311
1312 AddMaterial("G4_NITROBENZENE", 1.19867, 0, 75.8, 4);
1313 AddElementByWeightFraction( 1, 0.040935);
1314 AddElementByWeightFraction( 6, 0.585374);
1315 AddElementByWeightFraction( 7, 0.113773);
1316 AddElementByWeightFraction( 8, 0.259918);
1317
1318 AddMaterial("G4_NITROUS_OXIDE", 0.00183094, 0, 84.9, 2, kStateGas);
1319 AddElementByWeightFraction( 7, 0.636483);
1320 AddElementByWeightFraction( 8, 0.363517);
1321
1322 AddMaterial("G4_NYLON-8062", 1.08, 0, 64.3, 4);
1323 AddElementByWeightFraction( 1, 0.103509);
1324 AddElementByWeightFraction( 6, 0.648415);
1325 AddElementByWeightFraction( 7, 0.099536);
1326 AddElementByWeightFraction( 8, 0.148539);
1327
1328 AddMaterial("G4_NYLON-6/6", 1.14, 0, 63.9, 4);
1329 AddElementByWeightFraction( 1, 0.097976);
1330 AddElementByWeightFraction( 6, 0.636856);
1331 AddElementByWeightFraction( 7, 0.123779);
1332 AddElementByWeightFraction( 8, 0.141389);
1333
1334 AddMaterial("G4_NYLON-6/10", 1.14, 0, 63.2, 4);
1335 AddElementByWeightFraction( 1, 0.107062);
1336 AddElementByWeightFraction( 6, 0.680449);
1337 AddElementByWeightFraction( 7, 0.099189);
1338 AddElementByWeightFraction( 8, 0.1133 );
1339
1340 AddMaterial("G4_NYLON-11_RILSAN", 1.425, 0, 61.6, 4);
1341 AddElementByWeightFraction( 1, 0.115476);
1342 AddElementByWeightFraction( 6, 0.720819);
1343 AddElementByWeightFraction( 7, 0.076417);
1344 AddElementByWeightFraction( 8, 0.087289);
1345
1346 AddMaterial("G4_OCTANE", 0.7026, 0, 54.7, 2);
1347 AddElementByWeightFraction( 1, 0.158821);
1348 AddElementByWeightFraction( 6, 0.841179);
1349
1350 AddMaterial("G4_PARAFFIN", 0.93, 0, 55.9, 2);
1351 AddElementByWeightFraction( 1, 0.148605);
1352 AddElementByWeightFraction( 6, 0.851395);
1353
1354 AddMaterial("G4_N-PENTANE", 0.6262, 0, 53.6, 2);
1355 AddElementByWeightFraction( 1, 0.167635);
1356 AddElementByWeightFraction (6, 0.832365);
1357
1358 AddMaterial("G4_PHOTO_EMULSION", 3.815, 0, 331., 8);
1359 AddElementByWeightFraction( 1, 0.0141 );
1360 AddElementByWeightFraction( 6, 0.072261);
1361 AddElementByWeightFraction( 7, 0.01932 );
1362 AddElementByWeightFraction( 8, 0.066101);
1363 AddElementByWeightFraction(16, 0.00189 );
1364 AddElementByWeightFraction(35, 0.349103);
1365 AddElementByWeightFraction(47, 0.474105);
1366 AddElementByWeightFraction(53, 0.00312 );
1367
1368 AddMaterial("G4_PLASTIC_SC_VINYLTOLUENE", 1.032, 0, 64.7, 2);
1369 AddElementByWeightFraction( 1, 0.085);
1370 AddElementByWeightFraction( 6, 0.915);
1371
1372 AddMaterial("G4_PLUTONIUM_DIOXIDE", 11.46, 0, 746.5, 2);
1373 AddElementByWeightFraction( 8, 0.118055);
1374 AddElementByWeightFraction(94, 0.881945);
1375
1376 AddMaterial("G4_POLYACRYLONITRILE", 1.17, 0, 69.6, 3);
1377 AddElementByWeightFraction( 1, 0.056983);
1378 AddElementByWeightFraction( 6, 0.679056);
1379 AddElementByWeightFraction( 7, 0.263962);
1380
1381 AddMaterial("G4_POLYCARBONATE", 1.2, 0, 73.1, 3);
1382 AddElementByWeightFraction( 1, 0.055491);
1383 AddElementByWeightFraction( 6, 0.755751);
1384 AddElementByWeightFraction( 8, 0.188758);
1385
1386 AddMaterial("G4_POLYCHLOROSTYRENE", 1.3, 0, 81.7, 3);
1387 AddElementByWeightFraction( 1, 0.061869);
1388 AddElementByWeightFraction( 6, 0.696325);
1389 AddElementByWeightFraction(17, 0.241806);
1390
1391 AddMaterial("G4_POLYETHYLENE", 0.94, 0, 57.4, 2);
1392 AddElementByWeightFraction( 1, 0.143711);
1393 AddElementByWeightFraction( 6, 0.856289);
1394 AddChemicalFormula("G4_POLYETHYLENE","(C_2H_4)_N-Polyethylene");
1395
1396 AddMaterial("G4_MYLAR", 1.4, 0, 78.7, 3);
1397 AddElementByWeightFraction( 1, 0.041959);
1398 AddElementByWeightFraction( 6, 0.625017);
1399 AddElementByWeightFraction( 8, 0.333025);
1400
1401 AddMaterial("G4_PLEXIGLASS", 1.19, 0, 74., 3);
1402 AddElementByWeightFraction( 1, 0.080538);
1403 AddElementByWeightFraction( 6, 0.599848);
1404 AddElementByWeightFraction( 8, 0.319614);
1405
1406 AddMaterial("G4_POLYOXYMETHYLENE", 1.425 ,0, 77.4, 3);
1407 AddElementByWeightFraction( 1, 0.067135);
1408 AddElementByWeightFraction( 6, 0.400017);
1409 AddElementByWeightFraction( 8, 0.532848);
1410
1411 AddMaterial("G4_POLYPROPYLENE", 0.9, 0, 56.5, 2);
1412 AddElementByWeightFraction( 1, 0.143711);
1413 AddElementByWeightFraction( 6, 0.856289);
1414 AddChemicalFormula("G4_POLYPROPYLENE","(C_2H_4)_N-Polypropylene");
1415
1416 AddMaterial("G4_POLYSTYRENE", 1.06, 0, 68.7, 2);
1417 AddElementByWeightFraction( 1, 0.077418);
1418 AddElementByWeightFraction( 6, 0.922582);
1419
1420 AddMaterial("G4_TEFLON", 2.2, 0, 99.1, 2);
1421 AddElementByWeightFraction( 6, 0.240183);
1422 AddElementByWeightFraction( 9, 0.759817);
1423
1424 AddMaterial("G4_POLYTRIFLUOROCHLOROETHYLENE", 2.1, 0, 120.7, 3);
1425 AddElementByWeightFraction( 6, 0.20625 );
1426 AddElementByWeightFraction( 9, 0.489354);
1427 AddElementByWeightFraction(17, 0.304395);
1428
1429 AddMaterial("G4_POLYVINYL_ACETATE", 1.19, 0, 73.7, 3);
1430 AddElementByWeightFraction( 1, 0.070245);
1431 AddElementByWeightFraction( 6, 0.558066);
1432 AddElementByWeightFraction( 8, 0.371689);
1433
1434 AddMaterial("G4_POLYVINYL_ALCOHOL", 1.3, 0, 69.7, 3);
1435 AddElementByWeightFraction( 1, 0.091517);
1436 AddElementByWeightFraction( 6, 0.545298);
1437 AddElementByWeightFraction( 8, 0.363185);
1438
1439 AddMaterial("G4_POLYVINYL_BUTYRAL", 1.12, 0, 67.2, 3);
1440 AddElementByWeightFraction( 1, 0.092802);
1441 AddElementByWeightFraction( 6, 0.680561);
1442 AddElementByWeightFraction( 8, 0.226637);
1443
1444 AddMaterial("G4_POLYVINYL_CHLORIDE", 1.3, 0, 108.2, 3);
1445 AddElementByWeightFraction( 1, 0.04838);
1446 AddElementByWeightFraction( 6, 0.38436);
1447 AddElementByWeightFraction(17, 0.56726);
1448
1449 AddMaterial("G4_POLYVINYLIDENE_CHLORIDE", 1.7, 0, 134.3, 3);
1450 AddElementByWeightFraction( 1, 0.020793);
1451 AddElementByWeightFraction( 6, 0.247793);
1452 AddElementByWeightFraction(17, 0.731413);
1453
1454 AddMaterial("G4_POLYVINYLIDENE_FLUORIDE", 1.76, 0, 88.8, 3);
1455 AddElementByWeightFraction( 1, 0.03148 );
1456 AddElementByWeightFraction( 6, 0.375141);
1457 AddElementByWeightFraction( 9, 0.593379);
1458
1459 AddMaterial("G4_POLYVINYL_PYRROLIDONE", 1.25, 0, 67.7, 4);
1460 AddElementByWeightFraction( 1, 0.081616);
1461 AddElementByWeightFraction( 6, 0.648407);
1462 AddElementByWeightFraction( 7, 0.126024);
1463 AddElementByWeightFraction( 8, 0.143953);
1464
1465 AddMaterial("G4_POTASSIUM_IODIDE", 3.13, 0, 431.9, 2);
1466 AddElementByWeightFraction(19, 0.235528);
1467 AddElementByWeightFraction(53, 0.764472);
1468
1469 AddMaterial("G4_POTASSIUM_OXIDE", 2.32, 0, 189.9, 2);
1470 AddElementByWeightFraction( 8, 0.169852);
1471 AddElementByWeightFraction(19, 0.830148);
1472
1473 AddMaterial("G4_PROPANE", 0.00187939, 0, 47.1, 2, kStateGas);
1474 AddElementByWeightFraction( 1, 0.182855);
1475 AddElementByWeightFraction( 6, 0.817145);
1476
1477 AddMaterial("G4_lPROPANE", 0.43, 0, 52., 2);
1478 AddElementByWeightFraction( 1, 0.182855);
1479 AddElementByWeightFraction( 6, 0.817145);
1480
1481 AddMaterial("G4_N-PROPYL_ALCOHOL", 0.8035, 0, 61.1, 3);
1482 AddElementByWeightFraction( 1, 0.134173);
1483 AddElementByWeightFraction( 6, 0.599595);
1484 AddElementByWeightFraction( 8, 0.266232);
1485
1486 AddMaterial("G4_PYRIDINE", 0.9819, 0, 66.2, 3);
1487 AddElementByWeightFraction( 1, 0.06371 );
1488 AddElementByWeightFraction( 6, 0.759217);
1489 AddElementByWeightFraction( 7, 0.177073);
1490
1491 AddMaterial("G4_RUBBER_BUTYL", 0.92, 0, 56.5, 2);
1492 AddElementByWeightFraction( 1, 0.143711);
1493 AddElementByWeightFraction( 6, 0.856289);
1494
1495 AddMaterial("G4_RUBBER_NATURAL", 0.92, 0, 59.8, 2);
1496 AddElementByWeightFraction( 1, 0.118371);
1497 AddElementByWeightFraction( 6, 0.881629);
1498
1499 AddMaterial("G4_RUBBER_NEOPRENE", 1.23, 0, 93., 3);
1500 AddElementByWeightFraction( 1, 0.05692 );
1501 AddElementByWeightFraction( 6, 0.542646);
1502 AddElementByWeightFraction(17, 0.400434);
1503
1504 AddMaterial("G4_SILICON_DIOXIDE", 2.32, 0, 139.2, 2);
1505 AddElementByWeightFraction( 8, 0.532565);
1506 AddElementByWeightFraction(14, 0.467435);
1507 AddChemicalFormula("G4_SILICON_DIOXIDE","SiO_2");
1508
1509 AddMaterial("G4_SILVER_BROMIDE", 6.473, 0, 486.6, 2);
1510 AddElementByWeightFraction(35, 0.425537);
1511 AddElementByWeightFraction(47, 0.574463);
1512
1513 AddMaterial("G4_SILVER_CHLORIDE", 5.56, 0, 398.4, 2);
1514 AddElementByWeightFraction(17, 0.247368);
1515 AddElementByWeightFraction(47, 0.752632);
1516
1517 AddMaterial("G4_SILVER_HALIDES", 6.47, 0, 487.1, 3);
1518 AddElementByWeightFraction(35, 0.422895);
1519 AddElementByWeightFraction(47, 0.573748);
1520 AddElementByWeightFraction(53, 0.003357);
1521
1522 AddMaterial("G4_SILVER_IODIDE", 6.01, 0, 543.5, 2);
1523 AddElementByWeightFraction(47, 0.459458);
1524 AddElementByWeightFraction(53, 0.540542);
1525
1526 AddMaterial("G4_SKIN_ICRP", 1.1, 0, 72.7, 13);
1527 AddElementByWeightFraction( 1, 0.100588);
1528 AddElementByWeightFraction( 6, 0.22825 );
1529 AddElementByWeightFraction( 7, 0.04642 );
1530 AddElementByWeightFraction( 8, 0.619002);
1531 AddElementByWeightFraction(11, 7e-05 );
1532 AddElementByWeightFraction(12, 6e-05 );
1533 AddElementByWeightFraction(15, 0.00033 );
1534 AddElementByWeightFraction(16, 0.00159 );
1535 AddElementByWeightFraction(17, 0.00267 );
1536 AddElementByWeightFraction(19, 0.00085 );
1537 AddElementByWeightFraction(20, 0.00015 );
1538 AddElementByWeightFraction(26, 1e-05 );
1539 AddElementByWeightFraction(30, 1e-05 );
1540
1541 AddMaterial("G4_SODIUM_CARBONATE", 2.532, 0, 125., 3);
1542 AddElementByWeightFraction( 6, 0.113323);
1543 AddElementByWeightFraction( 8, 0.452861);
1544 AddElementByWeightFraction(11, 0.433815);
1545
1546 AddMaterial("G4_SODIUM_IODIDE", 3.667, 0, 452., 2);
1547 AddElementByWeightFraction(11, 0.153373);
1548 AddElementByWeightFraction(53, 0.846627);
1549
1550 AddMaterial("G4_SODIUM_MONOXIDE", 2.27, 0, 148.8, 2);
1551 AddElementByWeightFraction( 8, 0.258143);
1552 AddElementByWeightFraction(11, 0.741857);
1553
1554 AddMaterial("G4_SODIUM_NITRATE", 2.261, 0, 114.6, 3);
1555 AddElementByWeightFraction( 7, 0.164795);
1556 AddElementByWeightFraction( 8, 0.56472 );
1557 AddElementByWeightFraction(11, 0.270485);
1558
1559 AddMaterial("G4_STILBENE", 0.9707, 0, 67.7, 2);
1560 AddElementByWeightFraction( 1, 0.067101);
1561 AddElementByWeightFraction( 6, 0.932899);
1562
1563 AddMaterial("G4_SUCROSE", 1.5805, 0, 77.5, 3);
1564 AddElementByWeightFraction( 1, 0.064779);
1565 AddElementByWeightFraction( 6, 0.42107);
1566 AddElementByWeightFraction( 8, 0.514151);
1567
1568 AddMaterial("G4_TERPHENYL", 1.234, 0, 71.7, 2);
1569 AddElementByWeightFraction( 1, 0.044543);
1570 AddElementByWeightFraction( 6, 0.955457);
1571
1572 AddMaterial("G4_TESTES_ICRP", 1.04, 0, 75., 13);
1573 AddElementByWeightFraction( 1, 0.104166);
1574 AddElementByWeightFraction( 6, 0.09227 );
1575 AddElementByWeightFraction( 7, 0.01994 );
1576 AddElementByWeightFraction( 8, 0.773884);
1577 AddElementByWeightFraction(11, 0.00226 );
1578 AddElementByWeightFraction(12, 0.00011 );
1579 AddElementByWeightFraction(15, 0.00125 );
1580 AddElementByWeightFraction(16, 0.00146 );
1581 AddElementByWeightFraction(17, 0.00244 );
1582 AddElementByWeightFraction(19, 0.00208 );
1583 AddElementByWeightFraction(20, 0.0001 );
1584 AddElementByWeightFraction(26, 2e-05 );
1585 AddElementByWeightFraction(30, 2e-05 );
1586
1587 AddMaterial("G4_TETRACHLOROETHYLENE", 1.625, 0, 159.2, 2);
1588 AddElementByWeightFraction( 6, 0.144856);
1589 AddElementByWeightFraction(17, 0.855144);
1590
1591 AddMaterial("G4_THALLIUM_CHLORIDE", 7.004, 0, 690.3, 2);
1592 AddElementByWeightFraction(17, 0.147822);
1593 AddElementByWeightFraction(81, 0.852178);
1594
1595 AddMaterial("G4_TISSUE_SOFT_ICRP", 1.0, 0, 72.3, 13);
1596 AddElementByWeightFraction( 1, 0.104472);
1597 AddElementByWeightFraction( 6, 0.23219 );
1598 AddElementByWeightFraction( 7, 0.02488 );
1599 AddElementByWeightFraction( 8, 0.630238);
1600 AddElementByWeightFraction(11, 0.00113 );
1601 AddElementByWeightFraction(12, 0.00013 );
1602 AddElementByWeightFraction(15, 0.00133 );
1603 AddElementByWeightFraction(16, 0.00199 );
1604 AddElementByWeightFraction(17, 0.00134 );
1605 AddElementByWeightFraction(19, 0.00199 );
1606 AddElementByWeightFraction(20, 0.00023 );
1607 AddElementByWeightFraction(26, 5e-05 );
1608 AddElementByWeightFraction(30, 3e-05 );
1609
1610 AddMaterial("G4_TISSUE_SOFT_ICRU-4", 1.0, 0, 74.9, 4);
1611 AddElementByWeightFraction( 1, 0.101172);
1612 AddElementByWeightFraction( 6, 0.111 );
1613 AddElementByWeightFraction( 7, 0.026 );
1614 AddElementByWeightFraction( 8, 0.761828);
1615
1616 AddMaterial("G4_TISSUE-METHANE", 0.00106409, 0, 61.2, 4, kStateGas);
1617 AddElementByWeightFraction( 1, 0.101869);
1618 AddElementByWeightFraction( 6, 0.456179);
1619 AddElementByWeightFraction( 7, 0.035172);
1620 AddElementByWeightFraction( 8, 0.40678 );
1621
1622 AddMaterial("G4_TISSUE-PROPANE", 0.00182628, 0, 59.5, 4, kStateGas);
1623 AddElementByWeightFraction( 1, 0.102672);
1624 AddElementByWeightFraction( 6, 0.56894 );
1625 AddElementByWeightFraction( 7, 0.035022);
1626 AddElementByWeightFraction( 8, 0.293366);
1627
1628 AddMaterial("G4_TITANIUM_DIOXIDE", 4.26, 0, 179.5, 2);
1629 AddElementByWeightFraction( 8, 0.400592);
1630 AddElementByWeightFraction(22, 0.599408);
1631
1632 AddMaterial("G4_TOLUENE", 0.8669, 0, 62.5, 2);
1633 AddElementByWeightFraction( 1, 0.08751);
1634 AddElementByWeightFraction( 6, 0.91249);
1635
1636 AddMaterial("G4_TRICHLOROETHYLENE", 1.46, 0, 148.1, 3);
1637 AddElementByWeightFraction( 1, 0.007671);
1638 AddElementByWeightFraction( 6, 0.182831);
1639 AddElementByWeightFraction(17, 0.809498);
1640
1641 AddMaterial("G4_TRIETHYL_PHOSPHATE", 1.07, 0, 81.2, 4);
1642 AddElementByWeightFraction( 1, 0.082998);
1643 AddElementByWeightFraction( 6, 0.395628);
1644 AddElementByWeightFraction( 8, 0.351334);
1645 AddElementByWeightFraction(15, 0.17004 );
1646
1647 AddMaterial("G4_TUNGSTEN_HEXAFLUORIDE", 2.4, 0, 354.4, 2);
1648 AddElementByWeightFraction( 9, 0.382723);
1649 AddElementByWeightFraction(74, 0.617277);
1650
1651 AddMaterial("G4_URANIUM_DICARBIDE", 11.28, 0, 752., 2);
1652 AddElementByWeightFraction( 6, 0.091669);
1653 AddElementByWeightFraction(92, 0.908331);
1654
1655 AddMaterial("G4_URANIUM_MONOCARBIDE", 13.63, 0, 862., 2);
1656 AddElementByWeightFraction( 6, 0.048036);
1657 AddElementByWeightFraction(92, 0.951964);
1658
1659 AddMaterial("G4_URANIUM_OXIDE", 10.96, 0, 720.6, 2);
1660 AddElementByWeightFraction( 8, 0.118502);
1661 AddElementByWeightFraction(92, 0.881498);
1662
1663 AddMaterial("G4_UREA", 1.323, 0, 72.8, 4);
1664 AddElementByWeightFraction( 1, 0.067131);
1665 AddElementByWeightFraction( 6, 0.199999);
1666 AddElementByWeightFraction( 7, 0.466459);
1667 AddElementByWeightFraction( 8, 0.266411);
1668
1669 AddMaterial("G4_VALINE", 1.23, 0, 67.7, 4);
1670 AddElementByWeightFraction( 1, 0.094641);
1671 AddElementByWeightFraction( 6, 0.512645);
1672 AddElementByWeightFraction( 7, 0.119565);
1673 AddElementByWeightFraction( 8, 0.27315 );
1674
1675 AddMaterial("G4_VITON", 1.8, 0, 98.6, 3);
1676 AddElementByWeightFraction( 1, 0.009417);
1677 AddElementByWeightFraction( 6, 0.280555);
1678 AddElementByWeightFraction( 9, 0.710028);
1679
1680 AddMaterial("G4_WATER", 1.0,0, 75., 2);
1681 AddElementByWeightFraction( 1, 0.111894);
1682 AddElementByWeightFraction( 8, 0.888106);
1683 AddChemicalFormula("G4_WATER","H_2O");
1684
1685 AddMaterial("G4_WATER_VAPOR", 0.000756182, 0, 71.6, 2, kStateGas);
1686 AddElementByWeightFraction( 1, 0.111894);
1687 AddElementByWeightFraction( 8, 0.888106);
1688 AddChemicalFormula("G4_WATER_VAPOR","H_2O-Gas");
1689
1690 AddMaterial("G4_XYLENE", 0.87, 0, 61.8, 2);
1691 AddElementByWeightFraction( 1, 0.094935);
1692 AddElementByWeightFraction( 6, 0.905065);
1693
1694 AddMaterial("G4_GRAPHITE", 1.7, 6, 78.);
1695 nNIST = nMaterials;
1696 AddChemicalFormula("G4_GRAPHITE","Graphite");
1697}
1698
1699//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
1700
1701void G4NistMaterialBuilder::HepAndNuclearMaterials()
1702{
1703 AddMaterial("G4_lH2", 0.0708, 1, 21.8, 1, kStateLiquid);
1704 AddMaterial("G4_lN2", 0.807, 7, 82., 1, kStateLiquid);
1705 AddMaterial("G4_lO2", 1.141, 8, 95., 1, kStateLiquid);
1706 AddMaterial("G4_lAr", 1.396 , 18, 188. , 1, kStateLiquid);
1707 AddMaterial("G4_lKr", 2.418 , 36, 352. , 1, kStateLiquid);
1708 AddMaterial("G4_lXe", 2.953 , 54, 482. , 1, kStateLiquid);
1709
1710 AddMaterial("G4_PbWO4", 8.28, 0, 0.0, 3);
1711 AddElementByAtomCount("O" , 4);
1712 AddElementByAtomCount("Pb", 1);
1713 AddElementByAtomCount("W" , 1);
1714
1715 G4double density = universe_mean_density*cm3/g;
1716 AddMaterial("G4_Galactic", density, 1, 21.8, 1, kStateGas);
1717 AddGas("G4_Galactic",2.73*kelvin, 3.e-18*pascal);
1718}
1719
1720//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
1721
Note: See TracBrowser for help on using the repository browser.