Import Geant4 10.7.0.beta source tree

This commit is contained in:
Gabriele Cosmo
2020-06-26 10:23:25 +02:00
parent c02c370437
commit 67ba86d073
1871 changed files with 174422 additions and 131884 deletions
+1 -14
View File
@@ -1,19 +1,6 @@
#------------------------------------------------------------------------------
# CMakeLists.txt
# Module : G4materials
# Package: Geant4.src.G4materials
#
# CMakeLists.txt for single level library that may be build global or granular
#
# Generated on : 24/9/2010
#
#
#------------------------------------------------------------------------------
include(Geant4MacroLibraryTargets)
if(GEANT4_BUILD_GRANULAR_LIBS)
GEANT4_GRANULAR_LIBRARY_TARGET(COMPONENT sources.cmake)
else()
GEANT4_GLOBAL_LIBRARY_TARGET(COMPONENTS sources.cmake)
endif()
geant4_global_library_target(COMPONENTS sources.cmake)
+15
View File
@@ -16,6 +16,21 @@ committal in the CVS repository !
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
26-05-20 A. Howard (materials-V10-06-03)
- G4MaterialPropertiesTable, G4MaterialPropertiesIndex: add new properties
for allowing a second wavelength shifter in the same material
24-05-20 D. Sawkey (materials-V10-06-02)
- G4MaterialPropertiesTable, G4MaterialPropertiesIndex: add new properties
for scintillation allowing 3 time constants
21-01-20 D. Sawkey (materials-V10-06-01)
- G4MaterialPropertiesTable: add ConstPropertyExists(G4int)
09-12-19 B. Morgan (materials-V10-06-00)
- Cleanup CMake build, removing obsolete granular library option and
explicit include_directories.
26-11-19 G.Cosmo (materials-V10-05-11)
- Fixed cases of implicit type conversions from size_t to G4int.
@@ -52,6 +52,8 @@ enum G4MaterialPropertyIndex {
kRAYLEIGH, // Rayleigh scattering attenuation length
kWLSCOMPONENT, // the relative emission spectrum of the material as a function of the photon's momentum
kWLSABSLENGTH, // the absorption length of the material as a function of the photon's momentum
kWLSCOMPONENT2, // the relative emission spectrum of the material as a function of the photon's momentum
kWLSABSLENGTH2, // the absorption length of the material as a function of the photon's momentum
kABSLENGTH, // the absorption length
kFASTCOMPONENT, // fast component of scintillation
kSLOWCOMPONENT, // slow component of scintillation
@@ -61,6 +63,9 @@ enum G4MaterialPropertyIndex {
kALPHASCINTILLATIONYIELD, // scintillation light yield by alphas
kIONSCINTILLATIONYIELD, // scintillation light yield by ions
kELECTRONSCINTILLATIONYIELD, // scintillation light yield by electrons
kSCINTILLATIONCOMPONENT1, // scintillation light yield vectors for
kSCINTILLATIONCOMPONENT2, // 3 channels
kSCINTILLATIONCOMPONENT3, // "
kNumberOfPropertyIndex // the number of G4MaterialPropertyIndex
} ;
@@ -72,22 +77,24 @@ enum G4MaterialConstPropertyIndex
kRS_SCALE_FACTOR, // Rayleigh scattering scale factor
kWLSMEANNUMBERPHOTONS, // WLS mean number of photons
kWLSTIMECONSTANT, // any time delay which may occur between absorption and re-emission of the photon
kWLSMEANNUMBERPHOTONS2, // WLS mean number of photons
kWLSTIMECONSTANT2, // any time delay which may occur between absorption and re-emission of the photon
kMIEHG_FORWARD, // forward angle of Mie scattering based on Henyey-Greenstein phase function
kMIEHG_BACKWARD, // backward angle of Mie scattering based on Henyey-Greenstein phase function
kMIEHG_FORWARD_RATIO, // ratio of the MIEHG forward scattering
kSCINTILLATIONYIELD, // scintillation light yield
kRESOLUTIONSCALE, // resolution scale
kFASTTIMECONSTANT, // fast scintillation time constant
kRESOLUTIONSCALE, // resolution scale
kFASTTIMECONSTANT, // fast scintillation time constant
kFASTSCINTILLATIONRISETIME, // rise time of fast scintillation
kSLOWTIMECONSTANT, // slow scintillation time constant
kSLOWTIMECONSTANT, // slow scintillation time constant
kSLOWSCINTILLATIONRISETIME, // rise time of slow scintillation
kYIELDRATIO, // yield ratio
kFERMIPOT, // the Fermi potential (in neV)
kDIFFUSION, // diffusion
kSPINFLIP, // spin flip
kLOSS, // loss
kLOSSCS, // loss cross-section
kABSCS, // 1/v energy dependent absorption cross section
kSPINFLIP, // spin flip
kLOSS, // loss
kLOSSCS, // loss cross-section
kABSCS, // 1/v energy dependent absorption cross section
kSCATCS, // incoherent elastic scattering cross-section
kMR_NBTHETA, // number of theta bins of microroughness (MR)
kMR_NBE, // number of energy bins
@@ -100,6 +107,33 @@ enum G4MaterialConstPropertyIndex
kMR_ANGNOTHETA, // number of theta angles in the look-up table
kMR_ANGNOPHI, // number of phi angles in the look-up table
kMR_ANGCUT, // angular cut
kSCINTILLATIONTIMECONSTANT1, // three scintillation decay time constants
kSCINTILLATIONTIMECONSTANT2, // "
kSCINTILLATIONTIMECONSTANT3, // "
kSCINTILLATIONRISETIME1, // three scintillation rise times
kSCINTILLATIONRISETIME2, // "
kSCINTILLATIONRISETIME3, // "
kSCINTILLATIONYIELD1, // relative yields for 3 scintillation channels
kSCINTILLATIONYIELD2, // "
kSCINTILLATIONYIELD3, // "
kPROTONSCINTILLATIONYIELD1, // scintillation light yield by protons
kPROTONSCINTILLATIONYIELD2, // for 3 channels
kPROTONSCINTILLATIONYIELD3, // "
kDEUTERONSCINTILLATIONYIELD1, // scintillation light yield by deuterons
kDEUTERONSCINTILLATIONYIELD2, // for 3 channels
kDEUTERONSCINTILLATIONYIELD3, // "
kTRITONSCINTILLATIONYIELD1, // scintillation light yield by tritons
kTRITONSCINTILLATIONYIELD2, // for 3 channels
kTRITONSCINTILLATIONYIELD3, // "
kALPHASCINTILLATIONYIELD1, // scintillation light yield by alphas
kALPHASCINTILLATIONYIELD2, // for 3 channels
kALPHASCINTILLATIONYIELD3, // "
kIONSCINTILLATIONYIELD1, // scintillation light yield by ions
kIONSCINTILLATIONYIELD2, // for 3 channels
kIONSCINTILLATIONYIELD3, // "
kELECTRONSCINTILLATIONYIELD1, // scintillation light yield by electrons
kELECTRONSCINTILLATIONYIELD2, // for 3 channels
kELECTRONSCINTILLATIONYIELD3, // "
kNumberOfConstPropertyIndex // the number of G4MaterialConstPropertyIndex
};
@@ -106,6 +106,9 @@ class G4MaterialPropertiesTable
G4bool ConstPropertyExists(const char *key) const;
// Return true if a const property 'key' exists.
G4bool ConstPropertyExists(const G4int index) const;
// Return true if a const property with key-index 'index' exists.
G4MaterialPropertyVector* GetProperty(const char *key,
G4bool warning=false);
// Get the property from the table corresponding to the key-name.
+84 -105
View File
@@ -1,116 +1,95 @@
#------------------------------------------------------------------------------
# sources.cmake
# Module : G4materials
# Package: Geant4.src.G4materials
#
# Sources description for a library.
# Lists the sources and headers of the code explicitely.
# Lists include paths needed.
# Lists the internal granular and global dependencies of the library.
# Source specific properties should be added at the end.
#
# Generated on : 24/9/2010
#
#
#------------------------------------------------------------------------------
# List external includes needed.
include_directories(${CLHEP_INCLUDE_DIRS})
# List internal includes needed.
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include)
#
# Define the Geant4 Module.
#
include(Geant4MacroDefineModule)
GEANT4_DEFINE_MODULE(NAME G4materials
HEADERS
G4AtomicBond.hh
G4AtomicFormFactor.hh
G4AtomicShells.hh
G4AtomicShells_XDB_EADL.hh
G4CrystalAtomBase.hh
G4CrystalBravaisLattices.h
G4CrystalLatticeSystems.h
G4CrystalExtension.hh
G4CrystalUnitCell.hh
G4DensityEffectCalculator.hh
G4DensityEffectData.hh
G4ElementData.hh
G4Element.hh
G4ElementTable.hh
G4ElementVector.hh
G4ExtDEDXTable.hh
G4ExtendedMaterial.hh
G4ICRU90StoppingData.hh
G4IonisParamElm.hh
G4IonisParamMat.hh
G4IonStoppingData.hh
G4Isotope.hh
G4IsotopeVector.hh
G4LatticeLogical.hh
G4LatticePhysical.hh
G4Material.hh
G4MaterialPropertiesIndex.hh
G4MaterialPropertiesTable.hh
G4MaterialPropertiesTable.icc
G4MaterialPropertyVector.hh
G4MaterialTable.hh
G4NistElementBuilder.hh
G4NistManager.hh
G4NistMaterialBuilder.hh
G4NistMessenger.hh
G4OpticalSurface.hh
G4SandiaTable.hh
G4StaticSandiaData.hh
G4SurfaceProperty.hh
G4UCNMaterialPropertiesTable.hh
G4UCNMicroRoughnessHelper.hh
G4VIonDEDXTable.hh
G4VMaterialExtension.hh
SOURCES
G4AtomicBond.cc
G4AtomicFormFactor.cc
G4AtomicShells.cc
G4AtomicShells_XDB_EADL.cc
G4CrystalExtension.cc
G4CrystalUnitCell.cc
G4DensityEffectCalculator.cc
G4DensityEffectData.cc
G4Element.cc
G4ElementData.cc
G4ExtDEDXTable.cc
G4ExtendedMaterial.cc
G4ICRU90StoppingData.cc
G4IonisParamElm.cc
G4IonisParamMat.cc
G4IonStoppingData.cc
G4Isotope.cc
G4LatticeLogical.cc
G4LatticePhysical.cc
G4Material.cc
G4MaterialPropertiesTable.cc
G4NistElementBuilder.cc
G4NistManager.cc
G4NistMaterialBuilder.cc
G4NistMessenger.cc
G4OpticalSurface.cc
G4SandiaTable.cc
G4SurfaceProperty.cc
G4UCNMaterialPropertiesTable.cc
G4UCNMicroRoughnessHelper.cc
G4VIonDEDXTable.cc
GRANULAR_DEPENDENCIES
G4globman
G4intercoms
GLOBAL_DEPENDENCIES
G4global
G4intercoms
LINK_LIBRARIES
geant4_define_module(NAME G4materials
HEADERS
G4AtomicBond.hh
G4AtomicFormFactor.hh
G4AtomicShells.hh
G4AtomicShells_XDB_EADL.hh
G4CrystalAtomBase.hh
G4CrystalBravaisLattices.h
G4CrystalLatticeSystems.h
G4CrystalExtension.hh
G4CrystalUnitCell.hh
G4DensityEffectCalculator.hh
G4DensityEffectData.hh
G4ElementData.hh
G4Element.hh
G4ElementTable.hh
G4ElementVector.hh
G4ExtDEDXTable.hh
G4ExtendedMaterial.hh
G4ICRU90StoppingData.hh
G4IonisParamElm.hh
G4IonisParamMat.hh
G4IonStoppingData.hh
G4Isotope.hh
G4IsotopeVector.hh
G4LatticeLogical.hh
G4LatticePhysical.hh
G4Material.hh
G4MaterialPropertiesIndex.hh
G4MaterialPropertiesTable.hh
G4MaterialPropertiesTable.icc
G4MaterialPropertyVector.hh
G4MaterialTable.hh
G4NistElementBuilder.hh
G4NistManager.hh
G4NistMaterialBuilder.hh
G4NistMessenger.hh
G4OpticalSurface.hh
G4SandiaTable.hh
G4StaticSandiaData.hh
G4SurfaceProperty.hh
G4UCNMaterialPropertiesTable.hh
G4UCNMicroRoughnessHelper.hh
G4VIonDEDXTable.hh
G4VMaterialExtension.hh
SOURCES
G4AtomicBond.cc
G4AtomicFormFactor.cc
G4AtomicShells.cc
G4AtomicShells_XDB_EADL.cc
G4CrystalExtension.cc
G4CrystalUnitCell.cc
G4DensityEffectCalculator.cc
G4DensityEffectData.cc
G4Element.cc
G4ElementData.cc
G4ExtDEDXTable.cc
G4ExtendedMaterial.cc
G4ICRU90StoppingData.cc
G4IonisParamElm.cc
G4IonisParamMat.cc
G4IonStoppingData.cc
G4Isotope.cc
G4LatticeLogical.cc
G4LatticePhysical.cc
G4Material.cc
G4MaterialPropertiesTable.cc
G4NistElementBuilder.cc
G4NistManager.cc
G4NistMaterialBuilder.cc
G4NistMessenger.cc
G4OpticalSurface.cc
G4SandiaTable.cc
G4SurfaceProperty.cc
G4UCNMaterialPropertiesTable.cc
G4UCNMicroRoughnessHelper.cc
G4VIonDEDXTable.cc
GRANULAR_DEPENDENCIES
G4globman
G4intercoms
GLOBAL_DEPENDENCIES
G4global
G4intercoms
LINK_LIBRARIES
)
# List any source specific properties here
@@ -74,6 +74,8 @@ G4MaterialPropertiesTable::G4MaterialPropertiesTable()
G4MaterialPropertyName.push_back(G4String("RAYLEIGH"));
G4MaterialPropertyName.push_back(G4String("WLSCOMPONENT"));
G4MaterialPropertyName.push_back(G4String("WLSABSLENGTH"));
G4MaterialPropertyName.push_back(G4String("WLSCOMPONENT2"));
G4MaterialPropertyName.push_back(G4String("WLSABSLENGTH2"));
G4MaterialPropertyName.push_back(G4String("ABSLENGTH"));
G4MaterialPropertyName.push_back(G4String("FASTCOMPONENT"));
G4MaterialPropertyName.push_back(G4String("SLOWCOMPONENT"));
@@ -83,12 +85,17 @@ G4MaterialPropertiesTable::G4MaterialPropertiesTable()
G4MaterialPropertyName.push_back(G4String("ALPHASCINTILLATIONYIELD"));
G4MaterialPropertyName.push_back(G4String("IONSCINTILLATIONYIELD"));
G4MaterialPropertyName.push_back(G4String("ELECTRONSCINTILLATIONYIELD"));
G4MaterialPropertyName.push_back(G4String("SCINTILLATIONCOMPONENT1"));
G4MaterialPropertyName.push_back(G4String("SCINTILLATIONCOMPONENT2"));
G4MaterialPropertyName.push_back(G4String("SCINTILLATIONCOMPONENT3"));
G4MaterialConstPropertyName.push_back(G4String("SURFACEROUGHNESS"));
G4MaterialConstPropertyName.push_back(G4String("ISOTHERMAL_COMPRESSIBILITY"));
G4MaterialConstPropertyName.push_back(G4String("RS_SCALE_FACTOR"));
G4MaterialConstPropertyName.push_back(G4String("WLSMEANNUMBERPHOTONS"));
G4MaterialConstPropertyName.push_back(G4String("WLSTIMECONSTANT"));
G4MaterialConstPropertyName.push_back(G4String("WLSMEANNUMBERPHOTONS2"));
G4MaterialConstPropertyName.push_back(G4String("WLSTIMECONSTANT2"));
G4MaterialConstPropertyName.push_back(G4String("MIEHG_FORWARD"));
G4MaterialConstPropertyName.push_back(G4String("MIEHG_BACKWARD"));
G4MaterialConstPropertyName.push_back(G4String("MIEHG_FORWARD_RATIO"));
@@ -117,6 +124,33 @@ G4MaterialPropertiesTable::G4MaterialPropertiesTable()
G4MaterialConstPropertyName.push_back(G4String("MR_ANGNOTHETA"));
G4MaterialConstPropertyName.push_back(G4String("MR_ANGNOPHI"));
G4MaterialConstPropertyName.push_back(G4String("MR_ANGCUT"));
G4MaterialConstPropertyName.push_back(G4String("SCINTILLATIONTIMECONSTANT1"));
G4MaterialConstPropertyName.push_back(G4String("SCINTILLATIONTIMECONSTANT2"));
G4MaterialConstPropertyName.push_back(G4String("SCINTILLATIONTIMECONSTANT3"));
G4MaterialConstPropertyName.push_back(G4String("SCINTILLATIONRISETIME1"));
G4MaterialConstPropertyName.push_back(G4String("SCINTILLATIONRISETIME2"));
G4MaterialConstPropertyName.push_back(G4String("SCINTILLATIONRISETIME3"));
G4MaterialConstPropertyName.push_back(G4String("SCINTILLATIONYIELD1"));
G4MaterialConstPropertyName.push_back(G4String("SCINTILLATIONYIELD2"));
G4MaterialConstPropertyName.push_back(G4String("SCINTILLATIONYIELD3"));
G4MaterialConstPropertyName.push_back(G4String("PROTONSCINTILLATIONYIELD1"));
G4MaterialConstPropertyName.push_back(G4String("PROTONSCINTILLATIONYIELD2"));
G4MaterialConstPropertyName.push_back(G4String("PROTONSCINTILLATIONYIELD3"));
G4MaterialConstPropertyName.push_back(G4String("DEUTERONSCINTILLATIONYIELD1"));
G4MaterialConstPropertyName.push_back(G4String("DEUTERONSCINTILLATIONYIELD2"));
G4MaterialConstPropertyName.push_back(G4String("DEUTERONSCINTILLATIONYIELD3"));
G4MaterialConstPropertyName.push_back(G4String("TRITONSCINTILLATIONYIELD1"));
G4MaterialConstPropertyName.push_back(G4String("TRITONSCINTILLATIONYIELD2"));
G4MaterialConstPropertyName.push_back(G4String("TRITONSCINTILLATIONYIELD3"));
G4MaterialConstPropertyName.push_back(G4String("ALPHASCINTILLATIONYIELD1"));
G4MaterialConstPropertyName.push_back(G4String("ALPHASCINTILLATIONYIELD2"));
G4MaterialConstPropertyName.push_back(G4String("ALPHASCINTILLATIONYIELD3"));
G4MaterialConstPropertyName.push_back(G4String("IONSCINTILLATIONYIELD1"));
G4MaterialConstPropertyName.push_back(G4String("IONSCINTILLATIONYIELD2"));
G4MaterialConstPropertyName.push_back(G4String("IONSCINTILLATIONYIELD3"));
G4MaterialConstPropertyName.push_back(G4String("ELECTRONSCINTILLATIONYIELD1"));
G4MaterialConstPropertyName.push_back(G4String("ELECTRONSCINTILLATIONYIELD2"));
G4MaterialConstPropertyName.push_back(G4String("ELECTRONSCINTILLATIONYIELD3"));
}
////////////////
@@ -208,10 +242,9 @@ G4double G4MaterialPropertiesTable::GetConstProperty(const char *key) const
return GetConstProperty(index);
}
G4bool G4MaterialPropertiesTable::ConstPropertyExists(const char *key) const
G4bool G4MaterialPropertiesTable::ConstPropertyExists(const G4int index) const
{
// Returns true if a const property 'key' exists
const G4int index = GetConstPropertyIndex(G4String(key));
// Returns true if a const property corresponding to 'index' exists
MCPiterator j;
j = MCP.find(index);
@@ -219,6 +252,14 @@ G4bool G4MaterialPropertiesTable::ConstPropertyExists(const char *key) const
return false;
}
G4bool G4MaterialPropertiesTable::ConstPropertyExists(const char *key) const
{
// Returns true if a const property 'key' exists
const G4int index = GetConstPropertyIndex(G4String(key));
return ConstPropertyExists(index);
}
G4MaterialPropertyVector*
G4MaterialPropertiesTable::GetProperty(const char *key, G4bool warning)
{