64 if (instance ==
nullptr) {
65 if (instance ==
nullptr) {
79 size_t nmat = theMaterialTable->size();
81 for(i=0; i<nmat; i++) {
82 if((*theMaterialTable)[i] !=
nullptr)
84 delete(*theMaterialTable)[i];
89 size_t nelm = theElementTable->size();
90 for(i=0; i<nelm; i++) {
91 if((*theElementTable)[i] !=
nullptr)
93 delete(*theElementTable)[i];
98 size_t niso = theIsotopeTable->size();
99 for(i=0; i<niso; i++) {
100 if((*theIsotopeTable)[i] !=
nullptr)
102 delete(*theIsotopeTable)[i];
125 G4cout <<
"G4NistManager::BuildMaterialWithNewDensity ERROR: " <<
G4endl;
126 G4cout <<
" New material <" << name <<
"> cannot be built because material"
127 <<
" with the same name already exists." <<
G4endl;
128 G4Exception(
"G4NistManager::BuildMaterialWithNewDensity()",
"mat101",
135 G4cout <<
"G4NistManager::BuildMaterialWithNewDensity ERROR: " <<
G4endl;
136 G4cout <<
" New material <" << name <<
"> cannot be built because "
138 G4cout <<
" base material <" << basename <<
"> does not exist." <<
G4endl;
139 G4Exception(
"G4NistManager::BuildMaterialWithNewDensity()",
"mat102",
169 size_t nelm = theElementTable->size();
170 for(
size_t i=0; i<nelm; i++) {
172 if ( name == elm->
GetName() ||
"all" == name) {
183 size_t nmat = theMaterialTable->size();
184 for(
size_t i=0; i<nmat; i++) {
186 if ( name == mat->
GetName() ||
"all" == name) {
203G4NistManager::G4NistManager()
216 for(
G4int j=1; j<101; ++j) {
218 POWERA27[j] = std::pow(
A,0.27);
219 LOGAZ[j] = std::log(
A);
230 if(fICRU90 ==
nullptr)
233 if(fICRU90 ==
nullptr) {
247 for(
auto mat : materials) {
std::vector< G4Element * > G4ElementTable
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
std::vector< G4Isotope * > G4IsotopeTable
std::vector< G4Material * > G4MaterialTable
#define G4MUTEX_INITIALIZER
G4GLOB_DLL std::ostream G4cout
static G4ElementTable * GetElementTable()
const G4String & GetName() const
static const G4IsotopeTable * GetIsotopeTable()
G4double GetPressure() const
G4double GetDensity() const
G4double GetTemperature() const
static G4MaterialTable * GetMaterialTable()
const G4String & GetName() const
void ComputeDensityEffectOnFly(G4bool)
G4double GetAtomicMassAmu(const G4String &symb) const
G4int GetZ(const G4String &symb) const
void PrintElement(G4int Z) const
G4ICRU90StoppingData * GetICRU90StoppingData()
void PrintElement(G4int Z) const
void SetDensityEffectCalculatorFlag(const G4String &, G4bool)
G4Material * BuildMaterialWithNewDensity(const G4String &name, const G4String &basename, G4double density=0.0, G4double temp=NTP_Temperature, G4double pres=CLHEP::STP_Pressure)
void PrintG4Material(const G4String &) const
void PrintG4Element(const G4String &) const
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=false)
G4Material * FindMaterial(const G4String &name) const
static G4NistManager * Instance()
void SetVerbose(G4int val)
static G4Pow * GetInstance()