106       G4cout << 
"### NIST DataBase for Materials is used" << 
G4endl;
 
  112   if(
"G4_NYLON-6/6" == matname)  { name = 
"G4_NYLON-6-6"; }
 
  113   if(
"G4_NYLON-6/10" == matname) { name = 
"G4_NYLON-6-10";}
 
  116     G4cout << 
"G4NistMaterialBuilder::FindOrBuildMaterial " << name << 
G4endl;
 
  119   G4int nmat = theMaterialTable->size();
 
  126     if (name == 
names[i]) {
 
  129         if(!iso && (warning || 
verbose > 0)) {
 
  130           G4cout << 
"G4NistMaterialBuilder::FindOrBuildMaterial warning for " 
  132                  << 
" - since Geant4 9.6 isotopes are always built" << 
G4endl;
 
  137       else                  { mat = (*theMaterialTable)[
matIndex[i]]; }
 
  144     for (
G4int i=0; i<nmat; ++i) {
 
  145       if(name == ((*theMaterialTable)[i])->GetName()) {
 
  146         mat = (*theMaterialTable)[i];
 
  153     G4cout << 
"G4NistMaterialBuilder::FindOrBuildMaterial WARNING:" 
  154            << 
" material <" << name
 
  155            << 
"> is not found out" << 
G4endl;
 
  165     G4cout << 
"G4NistMaterialBuilder: BuildMaterial #" << i
 
  179       for(
size_t j=0; j<
nn; ++j) {
 
  188   } 
else if( !
STP[i] ) { t = 0.0; }
 
  195     for (
G4int j=0; j<nc; ++j) {
 
  199         G4cout << 
"G4NistMaterialBuilder::BuildMaterial:" 
  200                << 
"  ERROR: elements Z= " << Z << 
" is not found " 
  201                << 
" for material " << 
names[i]
 
  203         G4Exception(
"G4NistMaterialBuilder::BuildMaterial()", 
"mat103",
 
  236                                       const std::vector<G4String>& elm,
 
  237                                       const std::vector<G4int>& nbAtoms,
 
  247     G4cout << 
"G4NistMaterialBuilder::ConstructNewMaterial:" 
  248            << 
"  WARNING: the material <" << name
 
  249            << 
"> is already exist" << 
G4endl;
 
  250     G4cout << 
"      New material will NOT be built!" 
  256   G4int els = elm.size();
 
  258     G4cout << 
"G4NistMaterialBuilder::ConstructNewMaterial:" 
  259            << 
"  WARNING: empty list of elements for " << name
 
  261     G4cout << 
"      New material will NOT be built!" 
  273   if(!stp) { 
AddGas(name,temp,pres); }
 
  275   for (
G4int i=0; i<els; ++i) {
 
  286                                       const std::vector<G4String>& elm,
 
  287                                       const std::vector<G4double>& w,
 
  297     G4cout << 
"G4NistMaterialBuilder::ConstructNewMaterial:" 
  298            << 
"  WARNING: the material <" << name
 
  299            << 
"> is already exist" << 
G4endl;
 
  300     G4cout << 
"      New material will NOT be built!" 
  306   G4int els = elm.size();
 
  308     G4cout << 
"G4NistMaterialBuilder::ConstructNewMaterial:" 
  309            << 
"  WARNING: empty list of elements for " << name
 
  311     G4cout << 
"      New material will NOT be built!" 
  322   if(!stp) { 
AddGas(name,temp,pres); }
 
  324   for (
G4int i=0; i<els; ++i) {
 
  343     G4cout << 
"G4NistMaterialBuilder::ConstructNewGasMaterial:" 
  344            << 
"  WARNING: the material <" << name
 
  345            << 
"> is already exist" << 
G4endl;
 
  346     G4cout << 
"      New material will NOT be built!" 
  353     G4cout << 
"G4NistMaterialBuilder::ConstructNewGasMaterial:" 
  354            << 
"  WARNING: the Name <" << nameDB 
 
  355            << 
"> is NOT in the DB: no new gas will be constructed" 
  360     G4cout << 
"G4NistMaterialBuilder::ConstructNewGasMaterial:" 
  361            << 
"  WARNING:  <" << nameDB 
 
  362            << 
"> is NOT a gas -  no new gas will be constructed" 
  371     G4cout << 
"G4NistMaterialBuilder::ConstructNewGasMaterial: done" << 
G4endl;
 
  381                                       const std::vector<G4String>& elm,
 
  382                                       const std::vector<G4int>& nbAtoms,
 
  392     G4cout << 
"G4NistMaterialBuilder::ConstructNewMaterial:" 
  393            << 
"  WARNING: the material <" << name
 
  394            << 
"> is already exist" << 
G4endl;
 
  395     G4cout << 
"      New material will NOT be built!" 
  401   G4int els = elm.size();
 
  403     G4cout << 
"G4NistMaterialBuilder::ConstructNewMaterial:" 
  404            << 
"  WARNING: empty list of elements for " << name
 
  406     G4cout << 
"      New material will NOT be built!" 
  420   for (
G4int i=0; i<els; ++i) {
 
  425   G4double dens = massPerMole / (Avogadro*k_Boltzmann*temp/pres);
 
  427   if (els == 1) { 
AddMaterial(name,dens,Z,0.,els,state,stp); }
 
  430     for (
G4int i=0; i<els; ++i) {
 
  435   if(!stp) { 
AddGas(name,temp,pres); }
 
  454     G4cout << 
"G4NistMaterialBuilder::AddMaterial WARNING: previous " 
  456            << 
" is not yet complete!" 
  458     G4cout << 
"         New material " << nameMat << 
" will not be added"  
  465   names.push_back(nameMat);
 
  476   if (1 == ncomp && Z > 0) {
 
  489     G4cout << 
"New material " << nameMat << 
" is prepeared; " 
  515   else if (mnam == 
"all") {
 
  523     G4cout << 
"### G4NistMaterialBuilder::ListMaterials: Warning "  
  524            << mnam << 
" list is not known" << 
G4endl;
 
  532   G4cout << 
"=======================================================" << 
G4endl;
 
  533   G4cout << 
"###   Simple Materials from the NIST Data Base      ###" << 
G4endl;
 
  534   G4cout << 
"=======================================================" << 
G4endl;
 
  536   G4cout << 
"=======================================================" << 
G4endl;
 
  544   G4cout << 
"=============================================================" << 
G4endl;
 
  545   G4cout << 
"###    Compound Materials from the NIST Data Base          ##" << 
G4endl;
 
  546   G4cout << 
"=============================================================" << 
G4endl;
 
  547   G4cout << 
" Ncomp             Name      density(g/cm^3)  I(eV) ChFormula" << 
G4endl;
 
  548   G4cout << 
"=============================================================" << 
G4endl;
 
  556   G4cout << 
"=============================================================" << 
G4endl;
 
  558   G4cout << 
"=============================================================" << 
G4endl;
 
  559   G4cout << 
" Ncomp             Name      density(g/cm^3)  I(eV) ChFormula" << 
G4endl;
 
  560   G4cout << 
"=============================================================" << 
G4endl;
 
  568   G4cout << 
"=============================================================" << 
G4endl;
 
  570   G4cout << 
"=============================================================" << 
G4endl;
 
  571   G4cout << 
" Ncomp             Name      density(g/cm^3)  I(eV) ChFormula" << 
G4endl;
 
  572   G4cout << 
"=============================================================" << 
G4endl;
 
  580   G4cout << 
"=============================================================" << 
G4endl;
 
  582   G4cout << 
"=============================================================" << 
G4endl;
 
  583   G4cout << 
" Ncomp             Name      density(g/cm^3)  I(eV) ChFormula" << 
G4endl;
 
  584   G4cout << 
"=============================================================" << 
G4endl;
 
  586   G4cout << 
"=============================================================" << 
G4endl;
 
  593   G4cout << std::setw(2) << i+1 << 
" "  
  594          << std::setw(6) << 
names[i] 
 
  605   G4cout << std::setw(2)  << nc << 
" " 
  606          << std::setw(26) << 
names[i] << 
" "  
  627   if(nameMat != 
names[idx]) {
 
  630       if(nameMat == 
names[i]) {
 
  640     G4cout << 
"WARNING: G4NistMaterialBuilder::AddGas problem: there is no " 
  641            << nameMat << 
" in the list of materials;" 
  702     G4cout << 
"### G4NistMaterialBuilder::Initialise()" << 
G4endl;
 
  847   AddMaterial(
"G4_ADIPOSE_TISSUE_ICRP", 0.95, 0, 63.2, 7);
 
  868   AddMaterial(
"G4_ALUMINUM_OXIDE", 3.97, 0, 145.2, 2);
 
  904   AddMaterial(
"G4_BARIUM_FLUORIDE", 4.89 ,0, 375.9, 2);
 
  908   AddMaterial(
"G4_BARIUM_SULFATE", 4.5, 0, 285.7, 3);
 
  917   AddMaterial(
"G4_BERYLLIUM_OXIDE", 3.01, 0, 93.2, 2);
 
  938   AddMaterial(
"G4_BONE_COMPACT_ICRU", 1.85, 0, 91.9, 8);
 
  949   AddMaterial(
"G4_BONE_CORTICAL_ICRP", 1.92, 0, 110, 9);
 
  983   AddMaterial(
"G4_N-BUTYL_ALCOHOL", 0.8098, 0, 59.9, 3);
 
  995   AddMaterial(
"G4_CADMIUM_TELLURIDE", 6.2, 0, 539.3, 2);
 
  999   AddMaterial(
"G4_CADMIUM_TUNGSTATE", 7.9, 0, 468.3, 3);
 
 1004   AddMaterial(
"G4_CALCIUM_CARBONATE", 2.8, 0, 136.4, 3);
 
 1009   AddMaterial(
"G4_CALCIUM_FLUORIDE", 3.18, 0, 166., 2);
 
 1013   AddMaterial(
"G4_CALCIUM_OXIDE", 3.3, 0, 176.1, 2);
 
 1017   AddMaterial(
"G4_CALCIUM_SULFATE", 2.96, 0, 152.3, 3);
 
 1022   AddMaterial(
"G4_CALCIUM_TUNGSTATE", 6.062, 0, 395., 3);
 
 1032   AddMaterial(
"G4_CARBON_TETRACHLORIDE", 1.594, 0, 166.3, 2);
 
 1036   AddMaterial(
"G4_CELLULOSE_CELLOPHANE", 1.42, 0, 77.6, 3);
 
 1041   AddMaterial(
"G4_CELLULOSE_BUTYRATE", 1.2, 0, 74.6, 3);
 
 1046   AddMaterial(
"G4_CELLULOSE_NITRATE", 1.49, 0, 87., 4);
 
 1052   AddMaterial(
"G4_CERIC_SULFATE", 1.03, 0, 76.7, 5);
 
 1059   AddMaterial(
"G4_CESIUM_FLUORIDE", 4.115, 0, 440.7, 2);
 
 1063   AddMaterial(
"G4_CESIUM_IODIDE", 4.51, 0, 553.1, 2);
 
 1067   AddMaterial(
"G4_CHLOROBENZENE", 1.1058, 0, 89.1, 3);
 
 1093   AddMaterial(
"G4_1,2-DICHLOROBENZENE", 1.3048, 0, 106.5, 3);
 
 1098   AddMaterial(
"G4_DICHLORODIETHYL_ETHER", 1.2199, 0, 103.3, 4);
 
 1104   AddMaterial(
"G4_1,2-DICHLOROETHANE", 1.2351, 0, 111.9, 3);
 
 1109   AddMaterial(
"G4_DIETHYL_ETHER", 0.71378, 0, 60., 3);
 
 1114   AddMaterial(
"G4_N,N-DIMETHYL_FORMAMIDE", 0.9487, 0, 66.6, 4);
 
 1120   AddMaterial(
"G4_DIMETHYL_SULFOXIDE", 1.1014, 0, 98.6, 4);
 
 1130   AddMaterial(
"G4_ETHYL_ALCOHOL", 0.7893, 0, 62.9, 3);
 
 1135   AddMaterial(
"G4_ETHYL_CELLULOSE", 1.13, 0, 69.3, 3);
 
 1144   AddMaterial(
"G4_EYE_LENS_ICRP", 1.07, 0, 73.3, 8);
 
 1162   AddMaterial(
"G4_FERROUS_OXIDE", 5.7, 0, 248.6, 2);
 
 1166   AddMaterial(
"G4_FERROUS_SULFATE", 1.024, 0, 76.4, 7);
 
 1200   AddMaterial(
"G4_GADOLINIUM_OXYSULFIDE", 7.44, 0, 493.3, 3);
 
 1205   AddMaterial(
"G4_GALLIUM_ARSENIDE", 5.31, 0, 384.9, 2);
 
 1209   AddMaterial(
"G4_GEL_PHOTO_EMULSION", 1.2914, 0, 74.8, 5);
 
 1282   AddMaterial(
"G4_LANTHANUM_OXYBROMIDE", 6.28, 0, 439.7, 3);
 
 1287   AddMaterial(
"G4_LANTHANUM_OXYSULFIDE", 5.86, 0, 421.2, 3);
 
 1296   AddMaterial(
"G4_LITHIUM_AMIDE", 1.178, 0, 55.5, 3);
 
 1301   AddMaterial(
"G4_LITHIUM_CARBONATE", 2.11, 0, 87.9, 3);
 
 1306   AddMaterial(
"G4_LITHIUM_FLUORIDE", 2.635, 0, 94., 2);
 
 1310   AddMaterial(
"G4_LITHIUM_HYDRIDE", 0.82, 0, 36.5, 2);
 
 1314   AddMaterial(
"G4_LITHIUM_IODIDE", 3.494, 0, 485.1, 2);
 
 1318   AddMaterial(
"G4_LITHIUM_OXIDE", 2.013, 0, 73.6, 2);
 
 1322   AddMaterial(
"G4_LITHIUM_TETRABORATE", 2.44, 0, 94.6, 3);
 
 1346   AddMaterial(
"G4_MAGNESIUM_CARBONATE", 2.958, 0, 118., 3);
 
 1351   AddMaterial(
"G4_MAGNESIUM_FLUORIDE", 3.0, 0, 134.3, 2);
 
 1355   AddMaterial(
"G4_MAGNESIUM_OXIDE", 3.58, 0, 143.8, 2);
 
 1359   AddMaterial(
"G4_MAGNESIUM_TETRABORATE", 2.53, 0, 108.3, 3);
 
 1364   AddMaterial(
"G4_MERCURIC_IODIDE", 6.36, 0, 684.5, 2);
 
 1392   AddMaterial(
"G4_MUSCLE_SKELETAL_ICRP", 1.05, 0, 75.3, 9);
 
 1404   AddMaterial(
"G4_MUSCLE_STRIATED_ICRU", 1.04, 0, 74.7, 8);
 
 1414   AddMaterial(
"G4_MUSCLE_WITH_SUCROSE", 1.11, 0, 74.3, 4);
 
 1420   AddMaterial(
"G4_MUSCLE_WITHOUT_SUCROSE", 1.07, 0, 74.2, 4);
 
 1430   AddMaterial(
"G4_NITROBENZENE", 1.19867, 0, 75.8, 4);
 
 1458   AddMaterial(
"G4_NYLON-11_RILSAN", 1.425, 0, 61.6, 4);
 
 1476   AddMaterial(
"G4_PHOTO_EMULSION", 3.815, 0, 331., 8);
 
 1486   AddMaterial(
"G4_PLASTIC_SC_VINYLTOLUENE", 1.032, 0, 64.7, 2);
 
 1495   AddMaterial(
"G4_PLUTONIUM_DIOXIDE", 11.46, 0, 746.5, 2);
 
 1499   AddMaterial(
"G4_POLYACRYLONITRILE", 1.17, 0, 69.6, 3);
 
 1509   AddMaterial(
"G4_POLYCHLOROSTYRENE", 1.3, 0, 81.7, 3);
 
 1535   AddMaterial(
"G4_POLYOXYMETHYLENE", 1.425 ,0, 77.4, 3);
 
 1553   AddMaterial(
"G4_POLYTRIFLUOROCHLOROETHYLENE", 2.1, 0, 120.7, 3);
 
 1559   AddMaterial(
"G4_POLYVINYL_ACETATE", 1.19, 0, 73.7, 3);
 
 1564   AddMaterial(
"G4_POLYVINYL_ALCOHOL", 1.3, 0, 69.7, 3);
 
 1569   AddMaterial(
"G4_POLYVINYL_BUTYRAL", 1.12, 0, 67.2, 3);
 
 1580   AddMaterial(
"G4_POLYVINYL_CHLORIDE", 1.3, 0, 108.2, 3);
 
 1585   AddMaterial(
"G4_POLYVINYLIDENE_CHLORIDE", 1.7, 0, 134.3, 3);
 
 1590   AddMaterial(
"G4_POLYVINYLIDENE_FLUORIDE", 1.76, 0, 88.8, 3);
 
 1595   AddMaterial(
"G4_POLYVINYL_PYRROLIDONE", 1.25, 0, 67.7, 4);
 
 1601   AddMaterial(
"G4_POTASSIUM_IODIDE", 3.13, 0, 431.9, 2);
 
 1605   AddMaterial(
"G4_POTASSIUM_OXIDE", 2.32, 0, 189.9, 2);
 
 1617   AddMaterial(
"G4_N-PROPYL_ALCOHOL", 0.8035, 0, 61.1, 3);
 
 1631   AddMaterial(
"G4_RUBBER_NATURAL", 0.92, 0, 59.8, 2);
 
 1635   AddMaterial(
"G4_RUBBER_NEOPRENE", 1.23, 0, 93., 3);
 
 1640   AddMaterial(
"G4_SILICON_DIOXIDE", 2.32, 0, 139.2, 2);
 
 1645   AddMaterial(
"G4_SILVER_BROMIDE", 6.473, 0, 486.6, 2);
 
 1649   AddMaterial(
"G4_SILVER_CHLORIDE", 5.56, 0, 398.4, 2);
 
 1653   AddMaterial(
"G4_SILVER_HALIDES", 6.47, 0, 487.1, 3);
 
 1658   AddMaterial(
"G4_SILVER_IODIDE", 6.01, 0, 543.5, 2);
 
 1673   AddMaterial(
"G4_SODIUM_CARBONATE", 2.532, 0, 125., 3);
 
 1678   AddMaterial(
"G4_SODIUM_IODIDE", 3.667, 0, 452., 2);
 
 1682   AddMaterial(
"G4_SODIUM_MONOXIDE", 2.27, 0, 148.8, 2);
 
 1686   AddMaterial(
"G4_SODIUM_NITRATE", 2.261, 0, 114.6, 3);
 
 1720   AddMaterial(
"G4_TETRACHLOROETHYLENE", 1.625, 0, 159.2, 2);
 
 1724   AddMaterial(
"G4_THALLIUM_CHLORIDE", 7.004, 0, 690.3, 2);
 
 1729   AddMaterial(
"G4_TISSUE_SOFT_ICRP", 1.03, 0, 72.3, 9);
 
 1741   AddMaterial(
"G4_TISSUE_SOFT_ICRU-4", 1.0, 0, 74.9, 4);
 
 1759   AddMaterial(
"G4_TITANIUM_DIOXIDE", 4.26, 0, 179.5, 2);
 
 1767   AddMaterial(
"G4_TRICHLOROETHYLENE", 1.46, 0, 148.1, 3);
 
 1772   AddMaterial(
"G4_TRIETHYL_PHOSPHATE", 1.07, 0, 81.2, 4);
 
 1778   AddMaterial(
"G4_TUNGSTEN_HEXAFLUORIDE", 2.4, 0, 354.4, 2);
 
 1782   AddMaterial(
"G4_URANIUM_DICARBIDE", 11.28, 0, 752., 2);
 
 1786   AddMaterial(
"G4_URANIUM_MONOCARBIDE", 13.63, 0, 862., 2);
 
 1790   AddMaterial(
"G4_URANIUM_OXIDE", 10.96, 0, 720.6, 2);
 
 1874   AddMaterial(
"G4_STAINLESS-STEEL", 8.00, 0, 0.0, 3);
 
 1993   AddMaterial(
"G4_DNA_METHYLURIDINE", 1, 0, 72., 4);
 
 1999   AddMaterial(
"G4_DNA_MONOPHOSPHATE", 1, 0, 72., 2);
 
G4IonisParamMat * GetIonisation() const 
 
std::vector< G4double > gasPressure
 
void SetChemicalFormula(const G4String &chF)
 
G4NistElementBuilder * elmBuilder
 
void ListBioChemicalMaterials() const 
 
void HepAndNuclearMaterials()
 
std::vector< G4String > names
 
G4double FindMeanExcitationEnergy(const G4String &chFormula)
 
void SetMeanExcitationEnergy(G4double value)
 
static G4MaterialTable * GetMaterialTable()
 
static const double hep_pascal
 
std::vector< G4double > densities
 
std::vector< G4Material * > G4MaterialTable
 
G4double GetDensity() const 
 
void DumpMix(G4int) const 
 
G4Material * ConstructNewMaterial(const G4String &name, const std::vector< G4String > &elm, const std::vector< G4int > &nbAtoms, G4double dens, G4bool isotopes=true, G4State state=kStateSolid, G4double temp=NTP_Temperature, G4double pressure=CLHEP::STP_Pressure)
 
void ListMaterials(const G4String &) const 
 
G4double GetAtomicMassAmu(const G4String &symb) const 
 
void ListHepMaterials() const 
 
G4Material * ConstructNewGasMaterial(const G4String &name, const G4String &nameDB, G4double temp, G4double pres, G4bool isotopes=true)
 
void AddMaterial(const G4String &nameMat, G4double dens, G4int Z=0, G4double pot=0.0, G4int ncomp=1, G4State=kStateSolid, G4bool stp=true)
 
G4NistMaterialBuilder(G4NistElementBuilder *, G4int verb=0)
 
std::vector< G4int > idxGas
 
G4GLOB_DLL std::ostream G4cout
 
G4int GetZ(const G4String &symb) const 
 
std::vector< G4int > indexes
 
G4Material * BuildMaterial(G4int idx)
 
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=true)
 
std::vector< G4double > gasTemperature
 
void AddElementByWeightFraction(G4int Z, G4double)
 
void DumpElm(G4int) const 
 
void ListNistCompoundMaterials() const 
 
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
 
static const double kelvin
 
void ListNistSimpleMaterials() const 
 
void SetVerbose(G4int val)
 
std::vector< G4bool > atomCount
 
std::vector< G4int > elements
 
void NistCompoundMaterials()
 
void AddGas(const G4String &nameMat, G4double t=NTP_Temperature, G4double p=CLHEP::STP_Pressure)
 
void ListSpaceMaterials() const 
 
std::vector< G4State > states
 
std::vector< G4bool > STP
 
std::vector< G4double > ionPotentials
 
G4Material * ConstructNewIdealGasMaterial(const G4String &name, const std::vector< G4String > &elm, const std::vector< G4int > &nbAtoms, G4bool isotopes=true, G4double temp=NTP_Temperature, G4double pressure=CLHEP::STP_Pressure)
 
std::vector< G4int > matIndex
 
std::vector< G4String > chFormulas
 
G4double GetMeanExcitationEnergy() const 
 
static const G4double NTP_Temperature
 
G4Element * FindOrBuildElement(G4int Z, G4bool buildIsotopes=true)
 
std::vector< G4int > components
 
void AddElement(G4Element *element, G4int nAtoms)
 
void NistSimpleMaterials()
 
void BioChemicalMaterials()
 
std::vector< G4double > fractions
 
void AddElementByAtomCount(G4int Z, G4int)