Changeset 1196 for trunk/source/materials/include
- Timestamp:
- Nov 25, 2009, 5:13:58 PM (16 years ago)
- Location:
- trunk/source/materials/include
- Files:
-
- 28 edited
-
G4AtomicShells.hh (modified) (1 diff)
-
G4Element.hh (modified) (4 diffs)
-
G4ElementTable.hh (modified) (1 diff)
-
G4ElementVector.hh (modified) (1 diff)
-
G4ExtDEDXTable.hh (modified) (2 diffs)
-
G4IonisParamElm.hh (modified) (1 diff)
-
G4IonisParamMat.hh (modified) (4 diffs)
-
G4IronStoppingICRU73.hh (modified) (3 diffs)
-
G4Isotope.hh (modified) (1 diff)
-
G4IsotopeVector.hh (modified) (1 diff)
-
G4MPVEntry.hh (modified) (1 diff)
-
G4Material.hh (modified) (1 diff)
-
G4MaterialPropertiesTable.hh (modified) (1 diff)
-
G4MaterialPropertiesTable.icc (modified) (1 diff)
-
G4MaterialPropertyVector.hh (modified) (1 diff)
-
G4MaterialPropertyVector.icc (modified) (1 diff)
-
G4MaterialStoppingICRU73.hh (modified) (4 diffs)
-
G4MaterialTable.hh (modified) (1 diff)
-
G4NistElementBuilder.hh (modified) (1 diff)
-
G4NistManager.hh (modified) (1 diff)
-
G4NistMaterialBuilder.hh (modified) (1 diff)
-
G4NistMessenger.hh (modified) (2 diffs)
-
G4OpticalSurface.hh (modified) (4 diffs)
-
G4SandiaTable.hh (modified) (1 diff)
-
G4SimpleMaterialStoppingICRU73.hh (modified) (3 diffs)
-
G4StaticSandiaData.hh (modified) (1 diff)
-
G4SurfaceProperty.hh (modified) (2 diffs)
-
G4VIonDEDXTable.hh (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/materials/include/G4AtomicShells.hh
r986 r1196 26 26 // 27 27 // $Id: G4AtomicShells.hh,v 1.7 2006/10/17 15:15:46 vnivanch Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02$28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 30 30 // class description -
trunk/source/materials/include/G4Element.hh
r986 r1196 25 25 // 26 26 // 27 // $Id: G4Element.hh,v 1.2 3 2008/11/14 15:14:24 gcosmoExp $28 // GEANT4 tag $Name: geant4-09-02-ref-02$27 // $Id: G4Element.hh,v 1.27 2009/09/19 14:13:03 vnivanch Exp $ 28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 // 30 30 … … 71 71 // 01-04-05, new data member fIndexZ to count the number of elements with same Z 72 72 // 17-10-06: Add Get/Set fNaturalAbandances (V.Ivanchenko) 73 73 // 17.09.09, add fNbOfShellElectrons and methods (V. Grichine) 74 74 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 75 75 … … 131 131 G4int GetNbOfAtomicShells() const {return fNbOfAtomicShells;} 132 132 133 //the binding energy of the shell: 134 // 135 G4double GetAtomicShell(G4int) const; 133 //the binding energy of the shell, ground shell index=0 134 // 135 G4double GetAtomicShell(G4int index) const; 136 137 //the number of electrons at the shell, ground shell index=0 138 // 139 G4int GetNbOfShellElectrons(G4int index) const; 136 140 137 141 //number of isotopes constituing this element: … … 233 237 G4int fNbOfAtomicShells; // number of atomic shells 234 238 G4double* fAtomicShells ; // Pointer to atomic shell binding energies 239 G4int* fNbOfShellElectrons; // pointer to the number of subshell electrons 235 240 236 241 // Isotope vector contains constituent isotopes of the element -
trunk/source/materials/include/G4ElementTable.hh
r986 r1196 26 26 // 27 27 // $Id: G4ElementTable.hh,v 1.6 2006/06/29 19:10:58 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02$28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 // 30 30 // -
trunk/source/materials/include/G4ElementVector.hh
r986 r1196 26 26 // 27 27 // $Id: G4ElementVector.hh,v 1.6 2006/06/29 19:11:00 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02$28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 // 30 30 // -
trunk/source/materials/include/G4ExtDEDXTable.hh
r1059 r1196 38 38 // 39 39 // Modifications: 40 // 03.11.2009 A. Lechner: Added new methods BuildPhysicsVector according 41 // to interface changes in base class G4VIonDEDXTable. 40 42 // 41 43 // … … 65 67 G4ExtDEDXTable(); 66 68 virtual ~G4ExtDEDXTable(); 69 70 G4bool BuildPhysicsVector(G4int ionZ, 71 const G4String& matName); 72 73 G4bool BuildPhysicsVector(G4int ionZ, 74 G4int matZ); 67 75 68 76 // Function for checking the availability of stopping power tables -
trunk/source/materials/include/G4IonisParamElm.hh
r986 r1196 26 26 // 27 27 // $Id: G4IonisParamElm.hh,v 1.10 2008/06/03 14:30:10 vnivanch Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02$28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 // 30 30 -
trunk/source/materials/include/G4IonisParamMat.hh
r986 r1196 25 25 // 26 26 // 27 // $Id: G4IonisParamMat.hh,v 1.1 2 2008/07/08 10:34:56 vnivanchExp $28 // GEANT4 tag $Name: geant4-09-02-ref-02$27 // $Id: G4IonisParamMat.hh,v 1.17 2009/11/18 17:42:23 gcosmo Exp $ 28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 // 30 30 … … 52 52 53 53 class G4Material; // forward declaration 54 class G4DensityEffectData; 54 55 55 56 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo.... … … 59 60 public: 60 61 61 G4IonisParamMat(G4Material*);62 virtual ~G4IonisParamMat();63 64 //65 // retrieval methods66 //62 G4IonisParamMat(G4Material*); 63 virtual ~G4IonisParamMat(); 64 65 // 66 // retrieval methods 67 // 67 68 68 // parameters for mean energy loss calculation: 69 G4double GetMeanExcitationEnergy() const {return fMeanExcitationEnergy;}; 70 void SetMeanExcitationEnergy(G4double value); 71 G4double FindMeanExcitationEnergy(const G4String& chFormula); 72 G4double GetLogMeanExcEnergy() const {return fLogMeanExcEnergy;}; 73 G4double* GetShellCorrectionVector() const {return fShellCorrectionVector;}; 74 G4double GetTaul() const {return fTaul;}; 75 76 // parameters of the density correction: 77 G4double GetCdensity() const {return fCdensity;}; 78 G4double GetMdensity() const {return fMdensity;}; 79 G4double GetAdensity() const {return fAdensity;}; 80 G4double GetX0density() const {return fX0density;}; 81 G4double GetX1density() const {return fX1density;}; 82 83 // parameters of the energy loss fluctuation model: 84 G4double GetF1fluct() const {return fF1fluct;}; 85 G4double GetF2fluct() const {return fF2fluct;}; 86 G4double GetEnergy1fluct() const {return fEnergy1fluct;}; 87 G4double GetLogEnergy1fluct() const {return fLogEnergy1fluct;}; 88 G4double GetEnergy2fluct() const {return fEnergy2fluct;}; 89 G4double GetLogEnergy2fluct() const {return fLogEnergy2fluct;}; 90 G4double GetEnergy0fluct() const {return fEnergy0fluct;}; 91 G4double GetRateionexcfluct() const {return fRateionexcfluct;}; 92 93 // parameters for ion corrections computations 94 G4double GetZeffective() const {return fZeff;}; 95 G4double GetFermiEnergy() const {return fFermiEnergy;}; 96 G4double GetLFactor() const {return fLfactor;}; 97 98 // parameters for Birks attenuation: 99 void SetBirksConstant(G4double value) {fBirks = value;}; 100 G4double GetBirksConstant() const {return fBirks;}; 101 102 // parameters for average energy per ion 103 void SetMeanEnergyPerIonPair(G4double value) {fMeanEnergyPerIon = value;}; 104 G4double GetMeanEnergyPerIonPair() const {return fMeanEnergyPerIon;}; 69 // parameters for mean energy loss calculation: 70 G4double GetMeanExcitationEnergy() const {return fMeanExcitationEnergy;}; 71 void SetMeanExcitationEnergy(G4double value); 72 G4double FindMeanExcitationEnergy(const G4String& chFormula); 73 G4double GetLogMeanExcEnergy() const {return fLogMeanExcEnergy;}; 74 G4double* GetShellCorrectionVector() const {return fShellCorrectionVector;}; 75 G4double GetTaul() const {return fTaul;}; 76 77 // parameters of the density correction: 78 G4double GetPlasmaEnergy() const {return fPlasmaEnergy;}; 79 G4double GetAdjustmentFactor() const {return fAdjustmentFactor;}; 80 G4double GetCdensity() const {return fCdensity;}; 81 G4double GetMdensity() const {return fMdensity;}; 82 G4double GetAdensity() const {return fAdensity;}; 83 G4double GetX0density() const {return fX0density;}; 84 G4double GetX1density() const {return fX1density;}; 85 G4double GetD0density() const {return fD0density;}; 86 87 // compute density correction as a function of the kinematic variable 88 // x = log10(beta*gamma) 89 inline G4double DensityCorrection(G4double x); 90 static G4DensityEffectData* GetDensityEffectData(); 91 92 // parameters of the energy loss fluctuation model: 93 G4double GetF1fluct() const {return fF1fluct;}; 94 G4double GetF2fluct() const {return fF2fluct;}; 95 G4double GetEnergy1fluct() const {return fEnergy1fluct;}; 96 G4double GetLogEnergy1fluct() const {return fLogEnergy1fluct;}; 97 G4double GetEnergy2fluct() const {return fEnergy2fluct;}; 98 G4double GetLogEnergy2fluct() const {return fLogEnergy2fluct;}; 99 G4double GetEnergy0fluct() const {return fEnergy0fluct;}; 100 G4double GetRateionexcfluct() const {return fRateionexcfluct;}; 101 102 // parameters for ion corrections computations 103 G4double GetZeffective() const {return fZeff;}; 104 G4double GetFermiEnergy() const {return fFermiEnergy;}; 105 G4double GetLFactor() const {return fLfactor;}; 106 107 // parameters for Birks attenuation: 108 void SetBirksConstant(G4double value) {fBirks = value;}; 109 G4double GetBirksConstant() const {return fBirks;}; 110 111 // parameters for average energy per ion 112 void SetMeanEnergyPerIonPair(G4double value) {fMeanEnergyPerIon = value;}; 113 G4double GetMeanEnergyPerIonPair() const {return fMeanEnergyPerIon;}; 105 114 106 115 public: // without description 107 116 108 G4IonisParamMat(const G4IonisParamMat&);109 const G4IonisParamMat& operator=(const G4IonisParamMat&);110 G4int operator==(const G4IonisParamMat&) const;111 G4int operator!=(const G4IonisParamMat&) const;112 113 G4IonisParamMat(__void__&);114 // Fake default constructor for usage restricted to direct object115 // persistency for clients requiring preallocation of memory for116 // persistifiable objects.117 G4IonisParamMat(const G4IonisParamMat&); 118 const G4IonisParamMat& operator=(const G4IonisParamMat&); 119 G4int operator==(const G4IonisParamMat&) const; 120 G4int operator!=(const G4IonisParamMat&) const; 121 122 G4IonisParamMat(__void__&); 123 // Fake default constructor for usage restricted to direct object 124 // persistency for clients requiring preallocation of memory for 125 // persistifiable objects. 117 126 118 127 private: 119 128 120 // Compute mean parameters : ExcitationEnergy,Shell corretion vector ...121 void ComputeMeanParameters();122 123 // Compute parameters for the density effect124 void ComputeDensityEffect();125 126 // Compute parameters for the energy fluctuation model127 void ComputeFluctModel();128 129 // Compute parameters for ion parameterizations130 void ComputeIonParameters();129 // Compute mean parameters : ExcitationEnergy,Shell corretion vector ... 130 void ComputeMeanParameters(); 131 132 // Compute parameters for the density effect 133 void ComputeDensityEffect(); 134 135 // Compute parameters for the energy fluctuation model 136 void ComputeFluctModel(); 137 138 // Compute parameters for ion parameterizations 139 void ComputeIonParameters(); 131 140 132 141 private: … … 135 144 // data members 136 145 // 137 G4Material* fMaterial; // this material 138 139 // parameters for mean energy loss calculation 140 G4double fMeanExcitationEnergy; // 141 G4double fLogMeanExcEnergy; // 142 G4double* fShellCorrectionVector; // shell correction coefficients 143 G4double fTaul; // lower limit of Bethe-Bloch formula 144 145 // parameters of the density correction.... 146 G4double fCdensity; // mat.constant 147 G4double fMdensity; // exponent 148 G4double fAdensity; // 149 G4double fX0density; // 150 G4double fX1density; // 151 152 // parameters of the energy loss fluctuation model 153 G4double fF1fluct; 154 G4double fF2fluct; 155 G4double fEnergy1fluct; 156 G4double fLogEnergy1fluct; 157 G4double fEnergy2fluct; 158 G4double fLogEnergy2fluct; 159 G4double fEnergy0fluct; 160 G4double fRateionexcfluct; 161 162 // parameters for ion corrections computations 163 G4double fZeff; 164 G4double fFermiEnergy; 165 G4double fLfactor; 166 167 // parameter for Birks attenuation 168 G4double fBirks; 169 // average energy per ion pair 170 G4double fMeanEnergyPerIon; 146 G4Material* fMaterial; // this material 147 148 // parameters for mean energy loss calculation 149 G4double fMeanExcitationEnergy; // 150 G4double fLogMeanExcEnergy; // 151 G4double* fShellCorrectionVector; // shell correction coefficients 152 G4double fTaul; // lower limit of Bethe-Bloch formula 153 154 // parameters of the density correction 155 G4double fCdensity; // mat.constant 156 G4double fMdensity; // exponent 157 G4double fAdensity; // 158 G4double fX0density; // 159 G4double fX1density; // 160 G4double fD0density; 161 162 G4double fPlasmaEnergy; 163 G4double fAdjustmentFactor; 164 165 // parameters of the energy loss fluctuation model 166 G4double fF1fluct; 167 G4double fF2fluct; 168 G4double fEnergy1fluct; 169 G4double fLogEnergy1fluct; 170 G4double fEnergy2fluct; 171 G4double fLogEnergy2fluct; 172 G4double fEnergy0fluct; 173 G4double fRateionexcfluct; 174 175 // parameters for ion corrections computations 176 G4double fZeff; 177 G4double fFermiEnergy; 178 G4double fLfactor; 179 180 // parameter for Birks attenuation 181 G4double fBirks; 182 // average energy per ion pair 183 G4double fMeanEnergyPerIon; 184 185 // static data created only once 186 static G4DensityEffectData* fDensityData; 171 187 }; 172 188 189 // x = log10(beta*gamma) 190 inline G4double G4IonisParamMat::DensityCorrection(G4double x) 191 { 192 static const G4double twoln10 = 2.*std::log(10.); 193 G4double y = 0.0; 194 if(x < fX0density) { 195 if(fD0density > 0.0) { y = fD0density*std::pow(10.,2*(x - fX0density)); } 196 } else if(x >= fX1density) { y = twoln10*x - fCdensity; } 197 else {y = twoln10*x - fCdensity + fAdensity*std::pow(fX1density - x, fMdensity);} 198 return y; 199 } 200 173 201 #endif -
trunk/source/materials/include/G4IronStoppingICRU73.hh
r1058 r1196 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4IronStoppingICRU73.hh,v 1. 4 2009/03/18 10:14:48 alechnerExp $27 // GEANT4 tag $Name: geant4-09-03-beta-cand-01$26 // $Id: G4IronStoppingICRU73.hh,v 1.6 2009/11/09 16:51:07 vnivanch Exp $ 27 // GEANT4 tag $Name: materials-V09-02-18 $ 28 28 29 29 #ifndef G4IronStoppingICRU73_h … … 38 38 // Author: A.Ivantchenko 8.08.2008 39 39 // 40 // in the framework of the ESA Technology Research Programme 41 // (ESA contract 21435/08/NL/AT) 42 // 40 43 // Modifications: 44 // 03.11.2009 A. Lechner: Added new methods BuildPhysicsVector according 45 // to interface changes in base class G4VIonDEDXTable. 41 46 // 42 47 //---------------------------------------------------------------------------- … … 63 68 64 69 ~G4IronStoppingICRU73(); 70 71 G4bool BuildPhysicsVector(G4int ionZ, 72 const G4String& matName); 73 74 G4bool BuildPhysicsVector(G4int ionZ, 75 G4int matZ); 65 76 66 77 G4bool IsApplicable(G4int ionZ, -
trunk/source/materials/include/G4Isotope.hh
r986 r1196 26 26 // 27 27 // $Id: G4Isotope.hh,v 1.21 2008/11/14 15:14:24 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02$28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 // 30 30 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -
trunk/source/materials/include/G4IsotopeVector.hh
r986 r1196 26 26 // 27 27 // $Id: G4IsotopeVector.hh,v 1.6 2006/06/29 19:11:09 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02$28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 // 30 30 // -
trunk/source/materials/include/G4MPVEntry.hh
r1058 r1196 26 26 // 27 27 // $Id: G4MPVEntry.hh,v 1.8 2009/04/21 15:35:45 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-03-beta-cand-01$28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 // 30 30 // -
trunk/source/materials/include/G4Material.hh
r986 r1196 26 26 // 27 27 // $Id: G4Material.hh,v 1.27 2008/11/14 15:14:24 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02$28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 // 30 30 -
trunk/source/materials/include/G4MaterialPropertiesTable.hh
r1058 r1196 26 26 // 27 27 // $Id: G4MaterialPropertiesTable.hh,v 1.20 2009/04/21 15:35:45 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-03-beta-cand-01$28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 // 30 30 //////////////////////////////////////////////////////////////////////// -
trunk/source/materials/include/G4MaterialPropertiesTable.icc
r1058 r1196 26 26 // 27 27 // $Id: G4MaterialPropertiesTable.icc,v 1.1 2009/04/21 15:35:45 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-03-beta-cand-01$28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 // 30 30 //////////////////////////////////////////////////////////////////////// -
trunk/source/materials/include/G4MaterialPropertyVector.hh
r1058 r1196 26 26 // 27 27 // $Id: G4MaterialPropertyVector.hh,v 1.14 2009/04/24 09:35:14 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-03-beta-cand-01$28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 // 30 30 // -
trunk/source/materials/include/G4MaterialPropertyVector.icc
r1058 r1196 26 26 // 27 27 // $Id: G4MaterialPropertyVector.icc,v 1.2 2009/04/21 15:41:20 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-03-beta-cand-01$28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 // 30 30 // -
trunk/source/materials/include/G4MaterialStoppingICRU73.hh
r1058 r1196 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4MaterialStoppingICRU73.hh,v 1. 5 2009/03/18 10:14:49 alechnerExp $27 // GEANT4 tag $Name: geant4-09-03-beta-cand-01$26 // $Id: G4MaterialStoppingICRU73.hh,v 1.8 2009/11/09 16:51:07 vnivanch Exp $ 27 // GEANT4 tag $Name: materials-V09-02-18 $ 28 28 29 29 #ifndef G4MaterialStoppingICRU73_h … … 38 38 // Author: Ivantchenko 10.07.2008 39 39 // 40 // in the framework of the ESA Technology Research Programme 41 // (ESA contract 21435/08/NL/AT) 42 // 40 43 // Modifications: 44 // 03.11.2009 A. Lechner: Added new methods BuildPhysicsVector according 45 // to interface changes in base class G4VIonDEDXTable. 41 46 // 42 47 //---------------------------------------------------------------------------- … … 63 68 64 69 ~G4MaterialStoppingICRU73(); 70 71 G4bool BuildPhysicsVector(G4int ionZ, 72 const G4String& matName); 73 74 G4bool BuildPhysicsVector(G4int ionZ, 75 G4int matZ); 65 76 66 77 G4bool IsApplicable(G4int ionZ, … … 89 100 G4double* stoppower, 90 101 G4double factor); 102 103 // Function for creating a physics vector (full range up to 1 GeV/u) 104 G4PhysicsVector* CreatePhysicsVectorFullRange(G4double* energy, 105 G4double* stoppower, 106 G4double factor); 91 107 92 108 // Assignment operator and copy constructor -
trunk/source/materials/include/G4MaterialTable.hh
r986 r1196 26 26 // 27 27 // $Id: G4MaterialTable.hh,v 1.6 2006/06/29 19:11:19 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02$28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 // 30 30 // -
trunk/source/materials/include/G4NistElementBuilder.hh
r986 r1196 25 25 // 26 26 // $Id: G4NistElementBuilder.hh,v 1.18 2008/08/07 10:15:16 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02$27 // GEANT4 tag $Name: materials-V09-02-18 $ 28 28 29 29 #ifndef G4NistElementBuilder_h -
trunk/source/materials/include/G4NistManager.hh
r986 r1196 25 25 // 26 26 // $Id: G4NistManager.hh,v 1.23 2008/08/07 10:15:16 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02$27 // GEANT4 tag $Name: materials-V09-02-18 $ 28 28 // 29 29 // -
trunk/source/materials/include/G4NistMaterialBuilder.hh
r986 r1196 25 25 // 26 26 // $Id: G4NistMaterialBuilder.hh,v 1.13 2008/04/28 08:51:29 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02$27 // GEANT4 tag $Name: materials-V09-02-18 $ 28 28 29 29 #ifndef G4NistMaterialBuilder_h -
trunk/source/materials/include/G4NistMessenger.hh
r986 r1196 25 25 // 26 26 // 27 // $Id: G4NistMessenger.hh,v 1. 4 2007/05/02 10:48:52 vnivanchExp $28 // GEANT4 tag $Name: geant4-09-02-ref-02$27 // $Id: G4NistMessenger.hh,v 1.5 2009/10/30 18:01:22 bagoulia Exp $ 28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 // 30 30 // File name: G4NistMessenger … … 103 103 G4UIdirectory* g4Dir; 104 104 G4UIcmdWithAString* g4ElmCmd; 105 G4UIcmdWithAString* g4MatCmd; 106 105 G4UIcmdWithAString* g4MatCmd; 106 G4UIcmdWithAString* g4DensCmd; 107 107 }; 108 108 -
trunk/source/materials/include/G4OpticalSurface.hh
r1058 r1196 25 25 // 26 26 // 27 // $Id: G4OpticalSurface.hh,v 1.1 2 2009/04/21 15:35:45 gcosmoExp $28 // GEANT4 tag $Name: geant4-09-03- beta-cand-01 $27 // $Id: G4OpticalSurface.hh,v 1.15 2009/11/20 00:57:34 gum Exp $ 28 // GEANT4 tag $Name: geant4-09-03-cand-01 $ 29 29 // 30 30 // … … 64 64 polishedfrontpainted, // smooth top-layer (front) paint 65 65 polishedbackpainted, // same is 'polished' but with a back-paint 66 66 67 ground, // rough surface 67 68 groundfrontpainted, // rough top-layer (front) paint 68 groundbackpainted // same as 'ground' but with a back-paint 69 groundbackpainted, // same as 'ground' but with a back-paint 70 71 polishedlumirrorair, // mechanically polished surface, with lumirror 72 polishedlumirrorglue, // mechanically polished surface, with lumirror & meltmount 73 polishedair, // mechanically polished surface 74 polishedteflonair, // mechanically polished surface, with teflon 75 polishedtioair, // mechanically polished surface, with tio paint 76 polishedtyvekair, // mechanically polished surface, with tyvek 77 polishedvm2000air, // mechanically polished surface, with esr film 78 polishedvm2000glue, // mechanically polished surface, with esr film & meltmount 79 80 etchedlumirrorair, // chemically etched surface, with lumirror 81 etchedlumirrorglue, // chemically etched surface, with lumirror & meltmount 82 etchedair, // chemically etched surface 83 etchedteflonair, // chemically etched surface, with teflon 84 etchedtioair, // chemically etched surface, with tio paint 85 etchedtyvekair, // chemically etched surface, with tyvek 86 etchedvm2000air, // chemically etched surface, with esr film 87 etchedvm2000glue, // chemically etched surface, with esr film & meltmount 88 89 groundlumirrorair, // rough-cut surface, with lumirror 90 groundlumirrorglue, // rough-cut surface, with lumirror & meltmount 91 groundair, // rough-cut surface 92 groundteflonair, // rough-cut surface, with teflon 93 groundtioair, // rough-cut surface, with tio paint 94 groundtyvekair, // rough-cut surface, with tyvek 95 groundvm2000air, // rough-cut surface, with esr film 96 groundvm2000glue // rough-cut surface, with esr film & meltmount 69 97 }; 70 98 … … 72 100 { 73 101 glisur, // original GEANT3 model 74 unified // UNIFIED model 102 unified, // UNIFIED model 103 LUT // Look-Up-Table model 75 104 }; 76 105 … … 83 112 class G4OpticalSurface : public G4SurfaceProperty 84 113 { 85 public: // With description 86 87 //////////////////////////////// 88 // Constructor 89 //////////////////////////////// 90 91 G4OpticalSurface(const G4String& name, 92 G4OpticalSurfaceModel model = glisur, 93 G4OpticalSurfaceFinish finish = polished, 94 G4SurfaceType type = dielectric_dielectric, 95 G4double value = 1.0); 96 // Constructor of an optical surface object. 97 98 public: // Without description 99 100 ////////////// 101 // Constructors and destructor 102 ////////////// 103 104 G4OpticalSurface(); 105 virtual ~G4OpticalSurface(); 106 G4OpticalSurface(const G4OpticalSurface &right); 114 115 public: // Without description 107 116 108 //////////////109 // Operators110 //////////////117 ////////////// 118 // Operators 119 ////////////// 111 120 112 const G4OpticalSurface & operator=(const G4OpticalSurface &right); 121 G4OpticalSurface(const G4OpticalSurface &right); 122 const G4OpticalSurface & operator=(const G4OpticalSurface &right); 113 123 114 G4int operator==(const G4OpticalSurface &right) const; 115 G4int operator!=(const G4OpticalSurface &right) const; 116 117 //////////// 118 // Methods 119 //////////// 120 121 public: // With description 122 123 const G4OpticalSurfaceFinish& GetFinish() const { return theFinish; } 124 // Returns the optical surface finish. 125 void SetFinish(const G4OpticalSurfaceFinish& finish) { theFinish = finish; } 126 // Sets the optical surface finish. 127 128 const G4OpticalSurfaceModel& GetModel() const { return theModel; } 129 // Returns the optical surface model used. 130 void SetModel(const G4OpticalSurfaceModel& model) { theModel = model; } 131 // Sets the optical surface model to be followed. 132 133 G4double GetSigmaAlpha() const { return sigma_alpha; } 134 // Returns an unified model surface parameter. 135 void SetSigmaAlpha(const G4double s_a) { sigma_alpha = s_a; } 136 // Sets an unified model surface parameter. 137 138 G4double GetPolish() const { return polish; } 139 // Returns the optical surface polish type. 140 void SetPolish(const G4double plsh) { polish=plsh; } 141 // Sets the optical surface polish type. 142 143 G4MaterialPropertiesTable* GetMaterialPropertiesTable() const 144 { return theMaterialPropertiesTable; } 145 // Retrieves the pointer of the G4MaterialPropertiesTable 146 // attached to optical surface. 147 148 void SetMaterialPropertiesTable(G4MaterialPropertiesTable *anMPT) 149 { theMaterialPropertiesTable = anMPT; } 150 // Attaches a G4MaterialPropertiesTable to the optical surface. 151 152 void DumpInfo() const; 153 // Prints information about the optical surface. 154 155 private: 156 157 // ------------------ 158 // Basic data members ( To define an optical surface) 159 // ------------------ 160 161 G4OpticalSurfaceModel theModel; // Surface model 162 G4OpticalSurfaceFinish theFinish; // Surface finish 163 164 G4double sigma_alpha; // The sigma of micro-facet polar angle 165 G4double polish; // Polish parameter in glisur model 166 167 G4MaterialPropertiesTable* theMaterialPropertiesTable; 124 G4int operator==(const G4OpticalSurface &right) const; 125 G4int operator!=(const G4OpticalSurface &right) const; 126 127 public: // With description 128 129 //////////////////////////////// 130 // Constructors and Destructor 131 //////////////////////////////// 132 133 G4OpticalSurface(const G4String& name, 134 G4OpticalSurfaceModel model = glisur, 135 G4OpticalSurfaceFinish finish = polished, 136 G4SurfaceType type = dielectric_dielectric, 137 G4double value = 1.0); 138 // Constructor of an optical surface object. 139 140 public: // Without description 141 142 virtual ~G4OpticalSurface(); 143 144 //////////// 145 // Methods 146 //////////// 147 148 // public methods 149 150 public: // With description 151 152 virtual void Overwrite() {G4cout << "G4OpticalSurface" << G4endl;}; 153 154 void SetType(const G4SurfaceType& type); 155 156 G4OpticalSurfaceFinish GetFinish() const {return theFinish;}; 157 // Returns the optical surface finish. 158 void SetFinish(const G4OpticalSurfaceFinish ); 159 // Sets the optical surface finish. 160 161 G4OpticalSurfaceModel GetModel() const {return theModel;}; 162 // Returns the optical surface model used. 163 void SetModel(const G4OpticalSurfaceModel model) 164 {theModel = model;}; 165 // Sets the optical surface model to be followed. 166 167 G4double GetSigmaAlpha() const {return sigma_alpha;}; 168 // Returns an unified model surface parameter. 169 void SetSigmaAlpha(const G4double s_a) 170 {sigma_alpha = s_a;}; 171 // Sets an unified model surface parameter. 172 173 G4double GetPolish() const {return polish;}; 174 // Returns the optical surface polish type. 175 void SetPolish(const G4double plsh) {polish=plsh;}; 176 // Sets the optical surface polish type. 177 178 G4MaterialPropertiesTable* GetMaterialPropertiesTable() const 179 { return theMaterialPropertiesTable;}; 180 // Retrieves the pointer of the G4MaterialPropertiesTable 181 // attached to optical surface. 182 183 void SetMaterialPropertiesTable(G4MaterialPropertiesTable *anMPT) 184 { theMaterialPropertiesTable = anMPT;}; 185 // Attaches a G4MaterialPropertiesTable to the optical surface. 186 187 void DumpInfo() const; 188 // Prints information about the optical surface. 189 190 void ReadFile(void); 191 // Method to read the Look-Up-Table into array AngularDistribution 192 193 G4double GetAngularDistributionValue(G4int, G4int, G4int); 194 195 inline G4int GetThetaIndexMax(void) const { return thetaIndexMax; } 196 inline G4int GetPhiIndexMax(void) const { return phiIndexMax; } 197 198 private: 199 200 // ------------------ 201 // Basic data members ( To define an optical surface) 202 // ------------------ 203 204 G4OpticalSurfaceModel theModel; // Surface model 205 G4OpticalSurfaceFinish theFinish; // Surface finish 206 207 G4double sigma_alpha; // The sigma of micro-facet polar angle 208 G4double polish; // Polish parameter in glisur model 209 210 G4MaterialPropertiesTable* theMaterialPropertiesTable; 211 212 static const G4int incidentIndexMax = 91; 213 static const G4int thetaIndexMax = 45; 214 static const G4int phiIndexMax = 37; 215 216 G4float* AngularDistribution; 217 168 218 }; 169 219 220 //////////////////// 221 // Inline methods 222 //////////////////// 223 224 inline 225 G4double G4OpticalSurface::GetAngularDistributionValue(G4int angleIncident, 226 G4int thetaIndex, 227 G4int phiIndex) 228 { 229 return *(AngularDistribution+angleIncident+ 230 thetaIndex*incidentIndexMax+ 231 phiIndex*thetaIndexMax*incidentIndexMax); 232 } 233 170 234 #endif /* G4OpticalSurface_h */ -
trunk/source/materials/include/G4SandiaTable.hh
r986 r1196 26 26 // 27 27 // $Id: G4SandiaTable.hh,v 1.21 2007/10/02 10:13:33 vnivanch Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02$28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 30 30 // class description -
trunk/source/materials/include/G4SimpleMaterialStoppingICRU73.hh
r1058 r1196 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4SimpleMaterialStoppingICRU73.hh,v 1. 6 2009/03/18 10:14:49 alechnerExp $27 // GEANT4 tag $Name: geant4-09-03-beta-cand-01$26 // $Id: G4SimpleMaterialStoppingICRU73.hh,v 1.8 2009/11/09 16:51:07 vnivanch Exp $ 27 // GEANT4 tag $Name: materials-V09-02-18 $ 28 28 29 29 #ifndef G4SimpleMaterialStoppingICRU73_h … … 38 38 // Author: Ivantchenko 10.07.2008 39 39 // 40 // in the framework of the ESA Technology Research Programme 41 // (ESA contract 21435/08/NL/AT) 42 // 40 43 // Modifications: 44 // 03.11.2009 A. Lechner: Added new methods BuildPhysicsVector according 45 // to interface changes in base class G4VIonDEDXTable. 41 46 // 42 47 //---------------------------------------------------------------------------- … … 65 70 66 71 ~G4SimpleMaterialStoppingICRU73(); 72 73 G4bool BuildPhysicsVector(G4int ionZ, 74 const G4String& matName); 75 76 G4bool BuildPhysicsVector(G4int ionZ, 77 G4int matZ); 67 78 68 79 G4bool IsApplicable(G4int ionZ, -
trunk/source/materials/include/G4StaticSandiaData.hh
r986 r1196 26 26 // 27 27 // $Id: G4StaticSandiaData.hh,v 1.7 2006/06/29 19:12:35 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02$28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 // 30 30 -
trunk/source/materials/include/G4SurfaceProperty.hh
r1058 r1196 25 25 // 26 26 // 27 // $Id: G4SurfaceProperty.hh,v 1. 9 2009/04/21 15:35:45 gcosmoExp $28 // GEANT4 tag $Name: geant4-09-03-beta-cand-01$27 // $Id: G4SurfaceProperty.hh,v 1.10 2009/11/12 00:53:43 gum Exp $ 28 // GEANT4 tag $Name: materials-V09-02-18 $ 29 29 // 30 30 // … … 68 68 dielectric_metal, // dielectric-metal interface 69 69 dielectric_dielectric, // dielectric-dielectric interface 70 dielectric_LUT, // dielectric-Look-Up-Table interface 70 71 firsov, // for Firsov Process 71 72 x_ray // for x-ray mirror process -
trunk/source/materials/include/G4VIonDEDXTable.hh
r1059 r1196 35 35 // First implementation: 15. 02. 2009 36 36 // 37 // Modifications: 38 // 37 // Modifications: 38 // 02. 11. 2009 A. Lechner: Added BuildPhysicsVector function which should 39 // invoke the build process of physics vectors. 39 40 // 40 41 // Class description: … … 59 60 G4VIonDEDXTable(); 60 61 virtual ~G4VIonDEDXTable(); 62 63 // Function for building a stopping power table for a material consisting of 64 // a single element only. 65 virtual G4bool BuildPhysicsVector( 66 G4int, // Atomic number of ion 67 G4int // Atomic number of elemental material 68 ) = 0; 69 70 // Function building stopping power table for a given ion-material pair. 71 virtual G4bool BuildPhysicsVector( 72 G4int, // Atomic number of ion 73 const G4String& // Name or chemical formula of material 74 ) = 0; 61 75 62 76 // Function for checking the availability of stopping power tables
Note:
See TracChangeset
for help on using the changeset viewer.
