#include <G4NistMaterialBuilder.hh>
|
| G4NistMaterialBuilder (G4NistElementBuilder *, G4int verb=0) |
|
| ~G4NistMaterialBuilder () |
|
G4Material * | FindMaterial (const G4String &name) const |
|
G4Material * | FindOrBuildMaterial (const G4String &name, G4bool isotopes=true, G4bool warning=true) |
|
G4Material * | FindSimpleMaterial (G4int Z) const |
|
G4Material * | FindOrBuildSimpleMaterial (G4int Z, G4bool warning) |
|
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) |
|
G4Material * | ConstructNewMaterial (const G4String &name, const std::vector< G4String > &elm, const std::vector< G4double > &weight, G4double dens, G4bool isotopes=true, G4State state=kStateSolid, G4double temp=NTP_Temperature, G4double pressure=CLHEP::STP_Pressure) |
|
G4Material * | ConstructNewGasMaterial (const G4String &name, const G4String &nameDB, G4double temp, G4double pres, G4bool isotopes=true) |
|
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) |
|
void | SetVerbose (G4int val) |
|
void | ListMaterials (const G4String &) const |
|
void | ListNistSimpleMaterials () const |
|
void | ListNistCompoundMaterials () const |
|
void | ListHepMaterials () const |
|
void | ListSpaceMaterials () const |
|
void | ListBioChemicalMaterials () const |
|
const std::vector< G4String > & | GetMaterialNames () const |
|
G4double | GetMeanIonisationEnergy (G4int index) const |
|
G4double | GetNominalDensity (G4int index) const |
|
Definition at line 70 of file G4NistMaterialBuilder.hh.
G4NistMaterialBuilder::~G4NistMaterialBuilder |
( |
| ) |
|
Definition at line 345 of file G4NistMaterialBuilder.cc.
355 G4cout <<
"G4NistMaterialBuilder::ConstructNewGasMaterial:"
356 <<
" WARNING: the material <" << name
357 <<
"> is already exist" <<
G4endl;
358 G4cout <<
" New material will NOT be built!"
365 G4cout <<
"G4NistMaterialBuilder::ConstructNewGasMaterial:"
366 <<
" WARNING: the Name <" << nameDB
367 <<
"> is NOT in the DB: no new gas will be constructed"
372 G4cout <<
"G4NistMaterialBuilder::ConstructNewGasMaterial:"
373 <<
" WARNING: <" << nameDB
374 <<
"> is NOT a gas - no new gas will be constructed"
384 G4cout <<
"G4NistMaterialBuilder::ConstructNewGasMaterial: done" <<
G4endl;
G4double GetPressure() const
G4double GetDensity() const
G4GLOB_DLL std::ostream G4cout
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=true)
G4double GetTemperature() const
Definition at line 392 of file G4NistMaterialBuilder.cc.
405 G4cout <<
"G4NistMaterialBuilder::ConstructNewMaterial:"
406 <<
" WARNING: the material <" << name
407 <<
"> is already exist" <<
G4endl;
408 G4cout <<
" New material will NOT be built!"
414 G4int els = elm.size();
416 G4cout <<
"G4NistMaterialBuilder::ConstructNewMaterial:"
417 <<
" WARNING: empty list of elements for " << name
419 G4cout <<
" New material will NOT be built!"
433 for (
G4int i=0; i<els; ++i) {
434 Z = elmBuilder->
GetZ(elm[i]);
440 if (els == 1) { AddMaterial(name,dens,Z,0.,els,state,stp); }
442 AddMaterial(name,dens,0,0.,els,state,stp);
443 for (
G4int i=0; i<els; ++i) {
444 AddElementByAtomCount(elmBuilder->
GetZ(elm[i]), nbAtoms[i]);
448 if(!stp) { AddGas(name,temp,pres); }
450 return BuildMaterial(nMaterials-1);
static constexpr double k_Boltzmann
static constexpr double STP_Pressure
G4double GetAtomicMassAmu(const G4String &symb) const
static constexpr double Avogadro
G4GLOB_DLL std::ostream G4cout
G4int GetZ(const G4String &symb) const
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=true)
static constexpr double amu_c2
static const G4double NTP_Temperature
Definition at line 246 of file G4NistMaterialBuilder.cc.
259 G4cout <<
"G4NistMaterialBuilder::ConstructNewMaterial:"
260 <<
" WARNING: the material <" << name
261 <<
"> is already exist" <<
G4endl;
262 G4cout <<
" New material will NOT be built!"
268 G4int els = elm.size();
270 G4cout <<
"G4NistMaterialBuilder::ConstructNewMaterial:"
271 <<
" WARNING: empty list of elements for " << name
273 G4cout <<
" New material will NOT be built!"
284 AddMaterial(name,dens*
cm3/
g,0,0.,els,state,stp);
285 if(!stp) { AddGas(name,temp,pres); }
287 for (
G4int i=0; i<els; ++i) {
288 AddElementByAtomCount(elmBuilder->
GetZ(elm[i]), nbAtoms[i]);
291 return BuildMaterial(nMaterials-1);
static constexpr double STP_Pressure
static constexpr double g
G4GLOB_DLL std::ostream G4cout
G4int GetZ(const G4String &symb) const
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=true)
static constexpr double cm3
static const G4double NTP_Temperature
Definition at line 296 of file G4NistMaterialBuilder.cc.
309 G4cout <<
"G4NistMaterialBuilder::ConstructNewMaterial:"
310 <<
" WARNING: the material <" << name
311 <<
"> is already exist" <<
G4endl;
312 G4cout <<
" New material will NOT be built!"
318 G4int els = elm.size();
320 G4cout <<
"G4NistMaterialBuilder::ConstructNewMaterial:"
321 <<
" WARNING: empty list of elements for " << name
323 G4cout <<
" New material will NOT be built!"
333 AddMaterial(name,dens*
cm3/
g,0,0.,els,state,stp);
334 if(!stp) { AddGas(name,temp,pres); }
336 for (
G4int i=0; i<els; ++i) {
337 AddElementByWeightFraction(elmBuilder->
GetZ(elm[i]), w[i]);
340 return BuildMaterial(nMaterials-1);
static constexpr double STP_Pressure
static constexpr double g
G4GLOB_DLL std::ostream G4cout
G4int GetZ(const G4String &symb) const
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=true)
static constexpr double cm3
static const G4double NTP_Temperature
Definition at line 249 of file G4NistMaterialBuilder.hh.
252 size_t nmat = theMaterialTable->size();
254 for(
size_t i=0; i<nmat; ++i) {
255 if(name == ((*theMaterialTable)[i])->GetName()) {
256 ptr = (*theMaterialTable)[i];
static G4MaterialTable * GetMaterialTable()
std::vector< G4Material * > G4MaterialTable
Definition at line 103 of file G4NistMaterialBuilder.cc.
107 G4cout <<
"G4NistMaterialBuilder::FindOrBuildMaterial "
111 if(mat !=
nullptr) {
return mat; }
113 if(name ==
"G4_NYLON-6/6" || name ==
"G4_NYLON-6/10") {
114 if(
"G4_NYLON-6/6" == matname) { name =
"G4_NYLON-6-6"; }
115 else { name =
"G4_NYLON-6-10";}
118 return (mat ==
nullptr) ? BuildNistMaterial(name, warning) : mat;
G4Material * FindMaterial(const G4String &name) const
G4GLOB_DLL std::ostream G4cout
Definition at line 161 of file G4NistMaterialBuilder.cc.
165 mat = BuildNistMaterial(names[
Z], warn);
G4Material * FindSimpleMaterial(G4int Z) const
const std::vector< G4String > & G4NistMaterialBuilder::GetMaterialNames |
( |
| ) |
const |
|
inline |
G4double G4NistMaterialBuilder::GetMeanIonisationEnergy |
( |
G4int |
index | ) |
const |
|
inline |
Definition at line 237 of file G4NistMaterialBuilder.hh.
239 return (index >= 0 && index < nMaterials) ? ionPotentials[index] : 10.0*index;
G4double G4NistMaterialBuilder::GetNominalDensity |
( |
G4int |
index | ) |
const |
|
inline |
void G4NistMaterialBuilder::ListBioChemicalMaterials |
( |
| ) |
const |
Definition at line 592 of file G4NistMaterialBuilder.cc.
594 G4cout <<
"=============================================================" <<
G4endl;
596 G4cout <<
"=============================================================" <<
G4endl;
597 G4cout <<
" Ncomp Name density(g/cm^3) I(eV) ChFormula" <<
G4endl;
598 G4cout <<
"=============================================================" <<
G4endl;
599 for (
G4int i=nSpace; i<nMaterials; ++i) {DumpMix(i);}
600 G4cout <<
"=============================================================" <<
G4endl;
G4GLOB_DLL std::ostream G4cout
void G4NistMaterialBuilder::ListHepMaterials |
( |
| ) |
const |
Definition at line 568 of file G4NistMaterialBuilder.cc.
570 G4cout <<
"=============================================================" <<
G4endl;
572 G4cout <<
"=============================================================" <<
G4endl;
573 G4cout <<
" Ncomp Name density(g/cm^3) I(eV) ChFormula" <<
G4endl;
574 G4cout <<
"=============================================================" <<
G4endl;
575 for (
G4int i=nNIST; i<nHEP; ++i) {DumpMix(i);}
G4GLOB_DLL std::ostream G4cout
void G4NistMaterialBuilder::ListMaterials |
( |
const G4String & |
mnam | ) |
const |
Definition at line 520 of file G4NistMaterialBuilder.cc.
528 else if (mnam ==
"all") {
536 G4cout <<
"### G4NistMaterialBuilder::ListMaterials: Warning "
537 << mnam <<
" list is not known" <<
G4endl;
void ListBioChemicalMaterials() const
void ListHepMaterials() const
G4GLOB_DLL std::ostream G4cout
void ListNistCompoundMaterials() const
void ListNistSimpleMaterials() const
void ListSpaceMaterials() const
void G4NistMaterialBuilder::ListNistCompoundMaterials |
( |
| ) |
const |
Definition at line 555 of file G4NistMaterialBuilder.cc.
557 G4cout <<
"=============================================================" <<
G4endl;
558 G4cout <<
"### Compound Materials from the NIST Data Base ##" <<
G4endl;
559 G4cout <<
"=============================================================" <<
G4endl;
560 G4cout <<
" Ncomp Name density(g/cm^3) I(eV) ChFormula" <<
G4endl;
561 G4cout <<
"=============================================================" <<
G4endl;
562 for (
G4int i=nElementary; i<nNIST; ++i) {DumpMix(i);}
G4GLOB_DLL std::ostream G4cout
void G4NistMaterialBuilder::ListNistSimpleMaterials |
( |
| ) |
const |
Definition at line 543 of file G4NistMaterialBuilder.cc.
545 G4cout <<
"=======================================================" <<
G4endl;
546 G4cout <<
"### Simple Materials from the NIST Data Base ###" <<
G4endl;
547 G4cout <<
"=======================================================" <<
G4endl;
549 G4cout <<
"=======================================================" <<
G4endl;
550 for (
G4int i=1; i<nElementary; ++i) {DumpElm(i);}
G4GLOB_DLL std::ostream G4cout
void G4NistMaterialBuilder::ListSpaceMaterials |
( |
| ) |
const |
Definition at line 580 of file G4NistMaterialBuilder.cc.
582 G4cout <<
"=============================================================" <<
G4endl;
584 G4cout <<
"=============================================================" <<
G4endl;
585 G4cout <<
" Ncomp Name density(g/cm^3) I(eV) ChFormula" <<
G4endl;
586 G4cout <<
"=============================================================" <<
G4endl;
587 for (
G4int i=nHEP; i<nSpace; ++i) {DumpMix(i);}
G4GLOB_DLL std::ostream G4cout
void G4NistMaterialBuilder::SetVerbose |
( |
G4int |
val | ) |
|
The documentation for this class was generated from the following files: