Geant4 Cross Reference |
1 // 1 // 2 // ******************************************* 2 // ******************************************************************** 3 // * License and Disclaimer 3 // * License and Disclaimer * 4 // * 4 // * * 5 // * The Geant4 software is copyright of th 5 // * The Geant4 software is copyright of the Copyright Holders of * 6 // * the Geant4 Collaboration. It is provided 6 // * the Geant4 Collaboration. It is provided under the terms and * 7 // * conditions of the Geant4 Software License 7 // * conditions of the Geant4 Software License, included in the file * 8 // * LICENSE and available at http://cern.ch/ 8 // * LICENSE and available at http://cern.ch/geant4/license . These * 9 // * include a list of copyright holders. 9 // * include a list of copyright holders. * 10 // * 10 // * * 11 // * Neither the authors of this software syst 11 // * Neither the authors of this software system, nor their employing * 12 // * institutes,nor the agencies providing fin 12 // * institutes,nor the agencies providing financial support for this * 13 // * work make any representation or warran 13 // * work make any representation or warranty, express or implied, * 14 // * regarding this software system or assum 14 // * regarding this software system or assume any liability for its * 15 // * use. Please see the license in the file 15 // * use. Please see the license in the file LICENSE and URL above * 16 // * for the full disclaimer and the limitatio 16 // * for the full disclaimer and the limitation of liability. * 17 // * 17 // * * 18 // * This code implementation is the result 18 // * This code implementation is the result of the scientific and * 19 // * technical work of the GEANT4 collaboratio 19 // * technical work of the GEANT4 collaboration. * 20 // * By using, copying, modifying or distri 20 // * By using, copying, modifying or distributing the software (or * 21 // * any work based on the software) you ag 21 // * any work based on the software) you agree to acknowledge its * 22 // * use in resulting scientific publicati 22 // * use in resulting scientific publications, and indicate your * 23 // * acceptance of all terms of the Geant4 Sof 23 // * acceptance of all terms of the Geant4 Software license. * 24 // ******************************************* 24 // ******************************************************************** 25 << 25 // >> 26 // 26 // File: G4MaterialPropertiesIndex.hh 27 // File: G4MaterialPropertiesIndex.hh 27 // Description: Indices and Names for G4Materi 28 // Description: Indices and Names for G4MaterialProperties 28 // Created: 29-06-2017 29 // Created: 29-06-2017 29 // Author: Soon Yung Jun 30 // Author: Soon Yung Jun >> 31 //////////////////////////////////////////////////////////////////////// 30 32 31 #ifndef G4MaterialPropertiesIndex_h 33 #ifndef G4MaterialPropertiesIndex_h 32 #define G4MaterialPropertiesIndex_h 1 34 #define G4MaterialPropertiesIndex_h 1 33 35 34 #include "G4String.hh" << 35 << 36 #include <vector> 36 #include <vector> >> 37 #include "G4String.hh" 37 38 38 // clang-format off << 39 enum G4MaterialPropertyIndex { 39 enum G4MaterialPropertyIndex { 40 kNullPropertyIndex = -1, // the number o 40 kNullPropertyIndex = -1, // the number of G4MaterialPropertyIndex 41 kRINDEX, // index of ref 41 kRINDEX, // index of refraction 42 kREFLECTIVITY, // reflectivity 42 kREFLECTIVITY, // reflectivity 43 kREALRINDEX, // real part of 43 kREALRINDEX, // real part of the refractive index 44 kIMAGINARYRINDEX, // imaginary pa 44 kIMAGINARYRINDEX, // imaginary part of the refractive index 45 kEFFICIENCY, // efficiency 45 kEFFICIENCY, // efficiency 46 kTRANSMITTANCE, // transmittanc 46 kTRANSMITTANCE, // transmittance of a dielectric surface 47 kSPECULARLOBECONSTANT, // reflection p 47 kSPECULARLOBECONSTANT, // reflection probability about the normal of a micro facet. 48 kSPECULARSPIKECONSTANT, // reflection p 48 kSPECULARSPIKECONSTANT, // reflection probability about the average surface normal 49 kBACKSCATTERCONSTANT, // for the case 49 kBACKSCATTERCONSTANT, // for the case of several reflections within a deep groove 50 kGROUPVEL, // group veloci 50 kGROUPVEL, // group velocity 51 kMIEHG, // Mie scatteri 51 kMIEHG, // Mie scattering length 52 kRAYLEIGH, // Rayleigh sca 52 kRAYLEIGH, // Rayleigh scattering attenuation length 53 kWLSCOMPONENT, // the relative 53 kWLSCOMPONENT, // the relative emission spectrum of the material as a function of the photon's momentum 54 kWLSABSLENGTH, // the absorpti 54 kWLSABSLENGTH, // the absorption length of the material as a function of the photon's momentum 55 kWLSCOMPONENT2, // the relativ 55 kWLSCOMPONENT2, // the relative emission spectrum of the material as a function of the photon's momentum 56 kWLSABSLENGTH2, // the absorpt 56 kWLSABSLENGTH2, // the absorption length of the material as a function of the photon's momentum 57 kABSLENGTH, // the absorpti 57 kABSLENGTH, // the absorption length 58 kPROTONSCINTILLATIONYIELD, // scintillatio 58 kPROTONSCINTILLATIONYIELD, // scintillation light yield by protons 59 kDEUTERONSCINTILLATIONYIELD, // scintillatio 59 kDEUTERONSCINTILLATIONYIELD, // scintillation light yield by deuterons 60 kTRITONSCINTILLATIONYIELD, // scintillatio 60 kTRITONSCINTILLATIONYIELD, // scintillation light yield by tritons 61 kALPHASCINTILLATIONYIELD, // scintillatio 61 kALPHASCINTILLATIONYIELD, // scintillation light yield by alphas 62 kIONSCINTILLATIONYIELD, // scintillatio 62 kIONSCINTILLATIONYIELD, // scintillation light yield by ions 63 kELECTRONSCINTILLATIONYIELD, // scintillatio 63 kELECTRONSCINTILLATIONYIELD, // scintillation light yield by electrons 64 kSCINTILLATIONCOMPONENT1, // scintillatio 64 kSCINTILLATIONCOMPONENT1, // scintillation light yield vectors for 65 kSCINTILLATIONCOMPONENT2, // 3 channels 65 kSCINTILLATIONCOMPONENT2, // 3 channels 66 kSCINTILLATIONCOMPONENT3, // " 66 kSCINTILLATIONCOMPONENT3, // " 67 kCOATEDRINDEX, // real part of 67 kCOATEDRINDEX, // real part of the refractive index of the thin layer in case of coated surface 68 kNumberOfPropertyIndex // the number o 68 kNumberOfPropertyIndex // the number of G4MaterialPropertyIndex 69 } ; 69 } ; 70 70 71 enum G4MaterialConstPropertyIndex << 71 enum G4MaterialConstPropertyIndex 72 { << 72 { 73 kNullConstPropertyIndex = -1, // the number 73 kNullConstPropertyIndex = -1, // the number of G4MaterialPropertyIndex 74 kSURFACEROUGHNESS, // surface mic 74 kSURFACEROUGHNESS, // surface microroughness 75 kISOTHERMAL_COMPRESSIBILITY, // isothermal 75 kISOTHERMAL_COMPRESSIBILITY, // isothermal compressibility 76 kRS_SCALE_FACTOR, // Rayleigh sc 76 kRS_SCALE_FACTOR, // Rayleigh scattering scale factor 77 kWLSMEANNUMBERPHOTONS, // WLS mean nu 77 kWLSMEANNUMBERPHOTONS, // WLS mean number of photons 78 kWLSTIMECONSTANT, // any time de 78 kWLSTIMECONSTANT, // any time delay which may occur between absorption and re-emission of the photon 79 kWLSMEANNUMBERPHOTONS2, // WLS mean n 79 kWLSMEANNUMBERPHOTONS2, // WLS mean number of photons 80 kWLSTIMECONSTANT2, // any time d 80 kWLSTIMECONSTANT2, // any time delay which may occur between absorption and re-emission of the photon 81 kMIEHG_FORWARD, // forward ang 81 kMIEHG_FORWARD, // forward angle of Mie scattering based on Henyey-Greenstein phase function 82 kMIEHG_BACKWARD, // backward an 82 kMIEHG_BACKWARD, // backward angle of Mie scattering based on Henyey-Greenstein phase function 83 kMIEHG_FORWARD_RATIO, // ratio of th 83 kMIEHG_FORWARD_RATIO, // ratio of the MIEHG forward scattering 84 kSCINTILLATIONYIELD, // scintillati 84 kSCINTILLATIONYIELD, // scintillation light yield 85 kRESOLUTIONSCALE, // resolution 85 kRESOLUTIONSCALE, // resolution scale 86 kFERMIPOT, // the Fermi p 86 kFERMIPOT, // the Fermi potential (in neV) 87 kDIFFUSION, // diffusion 87 kDIFFUSION, // diffusion 88 kSPINFLIP, // spin flip 88 kSPINFLIP, // spin flip 89 kLOSS, // loss 89 kLOSS, // loss 90 kLOSSCS, // loss cross- 90 kLOSSCS, // loss cross-section 91 kABSCS, // 1/v energy 91 kABSCS, // 1/v energy dependent absorption cross section 92 kSCATCS, // incoherent 92 kSCATCS, // incoherent elastic scattering cross-section 93 kMR_NBTHETA, // number of t 93 kMR_NBTHETA, // number of theta bins of microroughness (MR) 94 kMR_NBE, // number of e 94 kMR_NBE, // number of energy bins 95 kMR_RRMS, // RMS of roug 95 kMR_RRMS, // RMS of roughness 96 kMR_CORRLEN, // correlation 96 kMR_CORRLEN, // correlation length 97 kMR_THETAMIN, // minimum val 97 kMR_THETAMIN, // minimum value of theta 98 kMR_THETAMAX, // maximum val 98 kMR_THETAMAX, // maximum value of theta 99 kMR_EMIN, // mininum val 99 kMR_EMIN, // mininum value of energy 100 kMR_EMAX, // maximum val 100 kMR_EMAX, // maximum value of energy 101 kMR_ANGNOTHETA, // number of t 101 kMR_ANGNOTHETA, // number of theta angles in the look-up table 102 kMR_ANGNOPHI, // number of p 102 kMR_ANGNOPHI, // number of phi angles in the look-up table 103 kMR_ANGCUT, // angular cut 103 kMR_ANGCUT, // angular cut 104 kSCINTILLATIONTIMECONSTANT1, // three scint 104 kSCINTILLATIONTIMECONSTANT1, // three scintillation decay time constants 105 kSCINTILLATIONTIMECONSTANT2, // " 105 kSCINTILLATIONTIMECONSTANT2, // " 106 kSCINTILLATIONTIMECONSTANT3, // " 106 kSCINTILLATIONTIMECONSTANT3, // " 107 kSCINTILLATIONRISETIME1, // three scint 107 kSCINTILLATIONRISETIME1, // three scintillation rise times 108 kSCINTILLATIONRISETIME2, // " 108 kSCINTILLATIONRISETIME2, // " 109 kSCINTILLATIONRISETIME3, // " 109 kSCINTILLATIONRISETIME3, // " 110 kSCINTILLATIONYIELD1, // relative yi 110 kSCINTILLATIONYIELD1, // relative yields for 3 scintillation channels 111 kSCINTILLATIONYIELD2, // " 111 kSCINTILLATIONYIELD2, // " 112 kSCINTILLATIONYIELD3, // " 112 kSCINTILLATIONYIELD3, // " 113 kPROTONSCINTILLATIONYIELD1, // scintillati 113 kPROTONSCINTILLATIONYIELD1, // scintillation light yield by protons 114 kPROTONSCINTILLATIONYIELD2, // for 3 cha 114 kPROTONSCINTILLATIONYIELD2, // for 3 channels 115 kPROTONSCINTILLATIONYIELD3, // " 115 kPROTONSCINTILLATIONYIELD3, // " 116 kDEUTERONSCINTILLATIONYIELD1, // scintillati 116 kDEUTERONSCINTILLATIONYIELD1, // scintillation light yield by deuterons 117 kDEUTERONSCINTILLATIONYIELD2, // for 3 cha 117 kDEUTERONSCINTILLATIONYIELD2, // for 3 channels 118 kDEUTERONSCINTILLATIONYIELD3, // " 118 kDEUTERONSCINTILLATIONYIELD3, // " 119 kTRITONSCINTILLATIONYIELD1, // scintillati 119 kTRITONSCINTILLATIONYIELD1, // scintillation light yield by tritons 120 kTRITONSCINTILLATIONYIELD2, // for 3 cha 120 kTRITONSCINTILLATIONYIELD2, // for 3 channels 121 kTRITONSCINTILLATIONYIELD3, // " 121 kTRITONSCINTILLATIONYIELD3, // " 122 kALPHASCINTILLATIONYIELD1, // scintillati 122 kALPHASCINTILLATIONYIELD1, // scintillation light yield by alphas 123 kALPHASCINTILLATIONYIELD2, // for 3 cha 123 kALPHASCINTILLATIONYIELD2, // for 3 channels 124 kALPHASCINTILLATIONYIELD3, // " 124 kALPHASCINTILLATIONYIELD3, // " 125 kIONSCINTILLATIONYIELD1, // scintillati 125 kIONSCINTILLATIONYIELD1, // scintillation light yield by ions 126 kIONSCINTILLATIONYIELD2, // for 3 cha 126 kIONSCINTILLATIONYIELD2, // for 3 channels 127 kIONSCINTILLATIONYIELD3, // " 127 kIONSCINTILLATIONYIELD3, // " 128 kELECTRONSCINTILLATIONYIELD1, // scintillati 128 kELECTRONSCINTILLATIONYIELD1, // scintillation light yield by electrons 129 kELECTRONSCINTILLATIONYIELD2, // for 3 cha 129 kELECTRONSCINTILLATIONYIELD2, // for 3 channels 130 kELECTRONSCINTILLATIONYIELD3, // " 130 kELECTRONSCINTILLATIONYIELD3, // " 131 kCOATEDTHICKNESS, // thickness o 131 kCOATEDTHICKNESS, // thickness of the thin layer in case of coated 132 kCOATEDFRUSTRATEDTRANSMISSION,// for inciden 132 kCOATEDFRUSTRATEDTRANSMISSION,// for incident angle superior to limit angle, use frustrated transmission (if true) 133 // or total re 133 // or total reflection (if false) 134 kPROTONSCINTILLATIONTIMECONSTANT1, // the << 135 kPROTONSCINTILLATIONTIMECONSTANT2, // par << 136 kPROTONSCINTILLATIONTIMECONSTANT3, // " << 137 kDEUTERONSCINTILLATIONTIMECONSTANT1, // " << 138 kDEUTERONSCINTILLATIONTIMECONSTANT2, // " << 139 kDEUTERONSCINTILLATIONTIMECONSTANT3, // " << 140 kTRITONSCINTILLATIONTIMECONSTANT1, // " << 141 kTRITONSCINTILLATIONTIMECONSTANT2, // " << 142 kTRITONSCINTILLATIONTIMECONSTANT3, // " << 143 kALPHASCINTILLATIONTIMECONSTANT1, // " << 144 kALPHASCINTILLATIONTIMECONSTANT2, // " << 145 kALPHASCINTILLATIONTIMECONSTANT3, // " << 146 kIONSCINTILLATIONTIMECONSTANT1, // " << 147 kIONSCINTILLATIONTIMECONSTANT2, // " << 148 kIONSCINTILLATIONTIMECONSTANT3, // " << 149 kELECTRONSCINTILLATIONTIMECONSTANT1, // " << 150 kELECTRONSCINTILLATIONTIMECONSTANT2, // " << 151 kELECTRONSCINTILLATIONTIMECONSTANT3, // " << 152 134 153 kNumberOfConstPropertyIndex // the number 135 kNumberOfConstPropertyIndex // the number of G4MaterialConstPropertyIndex 154 }; 136 }; 155 // clang-format on << 156 137 157 #endif /* G4MaterialPropertiesIndex_h */ 138 #endif /* G4MaterialPropertiesIndex_h */ 158 139