Import Geant4 10.4.1 source tree

This commit is contained in:
Gabriele Cosmo
2018-03-02 09:34:30 +01:00
parent fc6af9e721
commit fe04dcb406
341 changed files with 18389 additions and 24522 deletions
+3 -1
View File
@@ -24,7 +24,7 @@
// ********************************************************************
//
//
// $Id: G4ElementTable.hh 66811 2013-01-12 16:04:23Z gcosmo $
// $Id: G4ElementTable.hh 108492 2018-02-15 15:00:12Z gcosmo $
//
//
// ------------------------------------------------------------
@@ -38,6 +38,8 @@
#ifndef G4ELEMENTTABLE_HH
#define G4ELEMENTTABLE_HH
#include <vector>
class G4Element;
typedef std::vector<G4Element*> G4ElementTable;
@@ -65,34 +65,6 @@ enum G4MaterialPropertyIndex {
kNumberOfPropertyIndex // the number of G4MaterialPropertyIndex
} ;
typedef G4MaterialPropertyIndex G4MPindex;
const std::vector<G4String> G4MaterialPropertyName = {
"RINDEX",
"REFLECTIVITY",
"REALRINDEX",
"IMAGINARYRINDEX",
"EFFICIENCY",
"TRANSMITTANCE",
"SPECULARLOBECONSTANT",
"SPECULARSPIKECONSTANT",
"BACKSCATTERCONSTANT",
"GROUPVEL",
"MIEHG",
"RAYLEIGH",
"WLSCOMPONENT",
"WLSABSLENGTH",
"ABSLENGTH",
"FASTCOMPONENT",
"SLOWCOMPONENT",
"PROTONSCINTILLATIONYIELD",
"DEUTERONSCINTILLATIONYIELD",
"TRITONSCINTILLATIONYIELD",
"ALPHASCINTILLATIONYIELD",
"IONSCINTILLATIONYIELD",
"ELECTRONSCINTILLATIONYIELD"
};
enum G4MaterialConstPropertyIndex
{
kNullConstPropertyIndex = -1, // the number of G4MaterialPropertyIndex
@@ -132,42 +104,4 @@ enum G4MaterialConstPropertyIndex
kNumberOfConstPropertyIndex // the number of G4MaterialConstPropertyIndex
};
typedef G4MaterialConstPropertyIndex G4MCPindex;
const std::vector<G4String> G4MaterialConstPropertyName = {
"SURFACEROUGHNESS",
"ISOTHERMAL_COMPRESSIBILITY",
"RS_SCALE_FACTOR",
"WLSMEANNUMBERPHOTONS",
"WLSTIMECONSTANT",
"MIEHG_FORWARD",
"MIEHG_BACKWARD",
"MIEHG_FORWARD_RATIO",
"SCINTILLATIONYIELD",
"RESOLUTIONSCALE",
"FASTTIMECONSTANT",
"FASTSCINTILLATIONRISETIME",
"SLOWTIMECONSTANT",
"SLOWSCINTILLATIONRISETIME",
"YIELDRATIO",
"FERMIPOT",
"DIFFUSION",
"SPINFLIP",
"LOSS",
"LOSSCS",
"ABSCS",
"SCATCS",
"MR_NBTHETA",
"MR_NBE",
"MR_RRMS",
"MR_CORRLEN",
"MR_THETAMIN",
"MR_THETAMAX",
"MR_EMIN",
"MR_EMAX",
"MR_ANGNOTHETA",
"MR_ANGNOPHI",
"MR_ANGCUT"
};
#endif /* G4MaterialPropertiesIndex_h */
@@ -24,7 +24,7 @@
// ********************************************************************
//
//
// $Id: G4MaterialPropertiesTable.hh 106997 2017-10-31 10:22:36Z gcosmo $
// $Id: G4MaterialPropertiesTable.hh 108517 2018-02-16 08:18:55Z gcosmo $
//
////////////////////////////////////////////////////////////////////////
//
@@ -101,28 +101,34 @@ class G4MaterialPropertiesTable
G4double GetConstProperty(const char *key) const;
// Get the constant property from the table corresponding to the key-name
G4double GetConstProperty(const G4MCPindex index) const;
G4double GetConstProperty(const G4int index) const;
// Get the constant property from the table corresponding to the key-index
G4bool ConstPropertyExists(const char *key) const;
// Return true if a const property 'key' exists.
G4MaterialPropertyVector* GetProperty(const char *key);
G4MaterialPropertyVector* GetProperty(const char *key,
G4bool warning=false);
// Get the property from the table corresponding to the key-name.
G4MaterialPropertyVector* GetProperty(const G4MPindex index);
G4MaterialPropertyVector* GetProperty(const G4int index,
G4bool warning=false);
// Get the property from the table corresponding to the key-index.
void AddEntry(const char *key, G4double aPhotonEnergy,
G4double aPropertyValue);
// Add a new entry (pair of numbers) to the table for a given key.
G4MCPindex GetConstPropertyIndex(const G4String& key) const;
G4int GetConstPropertyIndex(const G4String& key,
G4bool warning=false) const;
// Get the constant property index from the key-name
G4MPindex GetPropertyIndex(const G4String& key) const;
G4int GetPropertyIndex(const G4String& key, G4bool warning=false) const;
// Get the property index by the key-name.
std::vector<G4String> GetMaterialPropertyNames() const;
std::vector<G4String> GetMaterialConstPropertyNames() const;
void DumpTable();
public: // without description
@@ -132,9 +138,9 @@ class G4MaterialPropertiesTable
std::map< G4String, G4double, std::less<G4String> >*
GetPropertiesCMap();
const std::map<G4MPindex, G4MaterialPropertyVector*, std::less<G4MPindex> >*
const std::map<G4int, G4MaterialPropertyVector*, std::less<G4int> >*
GetPropertyMap() const { return &MP; }
const std::map<G4MCPindex, G4double, std::less<G4MCPindex> >*
const std::map<G4int, G4double, std::less<G4int> >*
GetConstPropertyMap() const { return &MCP; }
// Accessors required for persistency purposes
@@ -158,14 +164,19 @@ class G4MaterialPropertiesTable
// MPT and MPTC will be obsolete when associate public interfaces,
// GetPropertiesMap and GetPropertiesCMap are removed from the version 11.
std::map<G4MPindex, G4MaterialPropertyVector*, std::less<G4MPindex> > MP;
typedef std::map< G4MPindex, G4MaterialPropertyVector*,
std::less<G4MPindex> >::const_iterator MPiterator;
std::map<G4int, G4MaterialPropertyVector*, std::less<G4int> > MP;
typedef std::map< G4int, G4MaterialPropertyVector*,
std::less<G4int> >::const_iterator MPiterator;
std::map< G4MCPindex, G4double, std::less<G4MCPindex> > MCP;
typedef std::map< G4MCPindex, G4double,
std::less<G4MCPindex> >::const_iterator MCPiterator;
std::map< G4int, G4double, std::less<G4int> > MCP;
typedef std::map< G4int, G4double,
std::less<G4int> >::const_iterator MCPiterator;
//material property map and constant property map by index types
std::vector<G4String> G4MaterialPropertyName;
std::vector<G4String> G4MaterialConstPropertyName;
// vectors of strings of property names
};
/////////////////////
@@ -24,7 +24,7 @@
// ********************************************************************
//
//
// $Id: G4MaterialPropertiesTable.icc 106997 2017-10-31 10:22:36Z gcosmo $
// $Id: G4MaterialPropertiesTable.icc 108492 2018-02-15 15:00:12Z gcosmo $
//
////////////////////////////////////////////////////////////////////////
//
@@ -45,14 +45,21 @@ void G4MaterialPropertiesTable::AddConstProperty(const char *key,
{
// Provides a way of adding a constant property to the Material Properties
// Table given a key
G4MCPindex index = GetConstPropertyIndex(G4String(key));
G4String k(key);
if (std::find(G4MaterialConstPropertyName.begin(),
G4MaterialConstPropertyName.end(), k) ==
G4MaterialConstPropertyName.end()) {
G4MaterialConstPropertyName.push_back(k);
}
G4int index = GetConstPropertyIndex(k);
MCP[index] = PropertyValue;
}
inline
void G4MaterialPropertiesTable::RemoveConstProperty(const char *key)
{
G4MCPindex index = GetConstPropertyIndex(G4String(key));
G4int index = GetConstPropertyIndex(G4String(key));
MCP.erase(index);
}
@@ -60,6 +67,6 @@ void G4MaterialPropertiesTable::RemoveConstProperty(const char *key)
inline
void G4MaterialPropertiesTable::RemoveProperty(const char *key)
{
G4MPindex index = GetPropertyIndex(G4String(key));
G4int index = GetPropertyIndex(G4String(key));
MP.erase(index);
}
+3 -1
View File
@@ -24,7 +24,7 @@
// ********************************************************************
//
//
// $Id: G4MaterialTable.hh 66811 2013-01-12 16:04:23Z gcosmo $
// $Id: G4MaterialTable.hh 108492 2018-02-15 15:00:12Z gcosmo $
//
//
// ------------------------------------------------------------
@@ -38,6 +38,8 @@
#ifndef G4MATERIALTABLE_HH
#define G4MATERIALTABLE_HH
#include <vector>
class G4Material;
typedef std::vector<G4Material*> G4MaterialTable;
+6 -6
View File
@@ -24,7 +24,7 @@
// ********************************************************************
//
//
// $Id: G4OpticalSurface.hh 104459 2017-05-31 15:54:52Z gcosmo $
// $Id: G4OpticalSurface.hh 108492 2018-02-15 15:00:12Z gcosmo $
//
//
////////////////////////////////////////////////////////////////////////
@@ -219,17 +219,17 @@ public: // With description
inline G4double GetReflectivityLUTValue(G4int);
// Returns the reflectivity value from the Davis Look-Up-Table
inline G4int GetInmax(void) const { return indexmax; }
G4int GetInmax(void) const;
// Returns the number of lines in the Davis Look-Up-Table
inline G4int GetLUTbins(void) const { return LUTbins; }
G4int GetLUTbins(void) const;
// Returns the number of probability values per incidentangle
inline G4int GetRefMax(void) const { return RefMax; }
G4int GetRefMax(void) const;
// Returns the number of reflectivity values per angle
inline G4int GetThetaIndexMax(void) const { return thetaIndexMax; }
inline G4int GetPhiIndexMax(void) const { return phiIndexMax; }
G4int GetThetaIndexMax(void) const;
G4int GetPhiIndexMax(void) const;
void ReadDichroicFile(void);
// Method to read the dichroic surface data file into Dichroic