130 for (i =
MPT.begin(); i !=
MPT.end(); ++i)
138 for (it =
MP.begin(); it !=
MP.end(); ++it)
164 ed <<
"Constant Material Property Index for key " << key <<
" not found.";
165 G4Exception(
"G4MaterialPropertiesTable::GetConstPropertyIndex()",
"mat206",
181 ed <<
"Material Property Index for key " << key <<
" not found.";
182 G4Exception(
"G4MaterialPropertiesTable::GetPropertyIndex()",
"mat207",
195 if ( j !=
MCP.end() )
return j->second;
197 ed <<
"Constant Material Property Index " << index <<
" not found.";
198 G4Exception(
"G4MaterialPropertiesTable::GetConstProperty()",
"mat202",
219 if ( j !=
MCP.end() )
return true;
237 if ( i !=
MP.end() )
return i->second;
240 ed <<
"Material Property for index " << index <<
" not found.";
241 G4Exception(
"G4MaterialPropertiesTable::GetPropertyIndex()",
"mat208",
265 PropertyValues, NumEntries);
314 if (targetVector !=
nullptr)
316 targetVector->
InsertValues(aPhotonEnergy, aPropertyValue);
320 G4Exception(
"G4MaterialPropertiesTable::AddEntry()",
"mat203",
329 for (i =
MP.begin(); i !=
MP.end(); ++i)
332 if ( (*i).second != 0 )
334 (*i).second->DumpValues();
338 G4Exception(
"G4MaterialPropertiesTable::DumpTable()",
"mat204",
339 JustWarning,
"NULL Material Property Vector Pointer.");
344 for (j =
MCP.begin(); j !=
MCP.end(); ++j)
347 if ( j->second != 0 )
353 G4Exception(
"G4MaterialPropertiesTable::DumpTable()",
"mat202",
359 #ifdef G4MULTITHREADED
368 #ifdef G4MULTITHREADED
378 if(itr !=
MP.end())
return itr->second;
383 if (rindex==0) {
return 0; }
387 if ( rindex->GetVectorLength() == 0 ) {
return 0; }
401 G4Exception(
"G4MaterialPropertiesTable::CalculateGROUPVEL()",
"mat205",
405 if ( rindex->GetVectorLength() >= 2 )
415 G4Exception(
"G4MaterialPropertiesTable::CalculateGROUPVEL()",
"mat205",
434 for (
size_t i = 2; i < rindex->GetVectorLength(); i++)
440 if((vg<0) || (vg>
c_light/(0.5*(n0+n1)))) { vg =
c_light/(0.5*(n0+n1)); }
447 E1 = rindex->Energy(i);
452 G4Exception(
"G4MaterialPropertiesTable::CalculateGROUPVEL()",
"mat205",
478 G4String message(
"SetGROUPVEL will be obsolete from the next release ");
479 message +=
"Use G4MaterialPropertiesTable::CalculateGROUPVEL() instead";
481 G4Exception(
"G4MaterialPropertiesTable::SetGROUPVEL()",
"Obsolete",
486 std::map< G4String, G4MaterialPropertyVector*, std::less<G4String> >*
490 G4String message(
"GetPropertiesMap will be obsolete from the next release ");
491 message +=
"Use G4MaterialPropertiesTable::GetPropertyMap() instead";
492 G4Exception(
"G4MaterialPropertiesTable::GetPropertiesMap()",
"Obsolete",
501 G4Exception(
"G4MaterialPropertiesTable::GetPropertiesMap()",
"NullPointer",
502 JustWarning,
"Null Pointer for Material Property");
512 G4String message(
"GetPropertiesCMap will be obsolete from the next release ");
513 message +=
"Use G4MaterialPropertiesTable::GetConstPropertyMap() instead";
514 G4Exception(
"G4MaterialPropertiesTable::GetPropertiesCMap()",
"Obsolete",
std::ostringstream G4ExceptionDescription
std::map< G4String, G4MaterialPropertyVector *, std::less< G4String > >::const_iterator MPTiterator
G4double GetConstProperty(const char *key) const
std::map< G4int, G4double, std::less< G4int > >::const_iterator MCPiterator
void InsertValues(G4double energy, G4double value)
G4PhysicsOrderedFreeVector G4MaterialPropertyVector
void message(RunManager *runmanager)
virtual ~G4MaterialPropertiesTable()
std::vector< G4String > GetMaterialPropertyNames() const
G4double G4Log(G4double x)
std::map< G4String, G4double, std::less< G4String > > MPTC
#define G4MUTEX_INITIALIZER
G4bool ConstPropertyExists(const char *key) const
G4MaterialPropertyVector * CalculateGROUPVEL()
G4MaterialPropertyVector * AddProperty(const char *key, G4double *PhotonEnergies, G4double *PropertyValues, G4int NumEntries)
void AddEntry(const char *key, G4double aPhotonEnergy, G4double aPropertyValue)
std::map< G4String, G4MaterialPropertyVector *, std::less< G4String > > * GetPropertiesMap()
G4int GetPropertyIndex(const G4String &key, G4bool warning=false) const
std::vector< G4String > G4MaterialConstPropertyName
std::map< G4int, G4MaterialPropertyVector *, std::less< G4int > > MP
std::map< G4String, G4double, std::less< G4String > > * GetPropertiesCMap()
std::map< G4int, G4double, std::less< G4int > > MCP
std::vector< G4String > G4MaterialPropertyName
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
static constexpr double c_light
std::vector< G4String > GetMaterialConstPropertyNames() const
G4MaterialPropertyVector * SetGROUPVEL()
std::map< G4String, G4MaterialPropertyVector *, std::less< G4String > > MPT
G4int GetConstPropertyIndex(const G4String &key, G4bool warning=false) const
G4GLOB_DLL std::ostream G4cout
G4MaterialPropertyVector * GetProperty(const char *key, G4bool warning=false)
G4MaterialPropertiesTable()
std::map< G4int, G4MaterialPropertyVector *, std::less< G4int > >::const_iterator MPiterator