- Timestamp:
- Apr 6, 2009, 12:21:12 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/processes/electromagnetic/standard/include/G4UrbanMscModel90.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4UrbanMscModel90.hh,v 1. 1 2007/12/07 17:35:52vnivanch Exp $27 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $26 // $Id: G4UrbanMscModel90.hh,v 1.4 2008/10/29 14:15:30 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- … … 55 55 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 56 56 57 #include "G4V EmModel.hh"57 #include "G4VMscModel.hh" 58 58 #include "G4PhysicsTable.hh" 59 59 #include "G4MscStepLimitType.hh" … … 65 65 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 66 66 67 class G4UrbanMscModel90 : public G4V EmModel67 class G4UrbanMscModel90 : public G4VMscModel 68 68 { 69 69 70 70 public: 71 71 72 G4UrbanMscModel90(G4double facrange, G4double dtrl, G4double lambdalimit, 73 G4double facgeom,G4double skin, 74 G4bool samplez, G4MscStepLimitType stepAlg, 75 const G4String& nam = "UrbanMscUni"); 72 G4UrbanMscModel90(const G4String& nam = "UrbanMscUni90"); 76 73 77 74 virtual ~G4UrbanMscModel90(); 78 75 79 v irtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);76 void Initialise(const G4ParticleDefinition*, const G4DataVector&); 80 77 81 78 G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition* particle, … … 106 103 G4double KineticEnergy); 107 104 108 void SetStepLimitType(G4MscStepLimitType);109 110 void SetLateralDisplasmentFlag(G4bool val);111 112 void SetRangeFactor(G4double);113 114 void SetGeomFactor(G4double);115 116 void SetSkin(G4double);117 118 105 private: 119 106 … … 124 111 G4double LatCorrelation(); 125 112 126 G4double GetLambda(G4double kinEnergy);127 128 113 void GeomLimit(const G4Track& track); 129 114 130 void SetParticle(const G4ParticleDefinition* p); 115 inline G4double GetLambda(G4double kinEnergy); 116 117 inline void SetParticle(const G4ParticleDefinition*); 131 118 132 119 // hide assignment operator … … 142 129 G4LossTableManager* theManager; 143 130 144 145 131 G4double mass; 146 132 G4double charge; … … 152 138 G4double taulim; 153 139 G4double currentTau; 154 G4double dtrl;155 156 G4double lambdalimit;157 G4double facrange;158 140 G4double frscaling1,frscaling2; 159 141 G4double tlimit; … … 165 147 G4double geommin; 166 148 G4double geomlimit; 167 G4double facgeom;168 G4double skin;169 149 G4double skindepth; 170 150 G4double smallstep; 171 151 172 152 G4double presafety; 173 G4double facsafety;174 153 175 154 G4double lambda0; … … 177 156 G4double tPathLength; 178 157 G4double zPathLength; 179 G4double par1,par2,par3 180 181 G4double stepmin 158 G4double par1,par2,par3; 159 160 G4double stepmin; 182 161 183 162 G4double currentKinEnergy; … … 189 168 G4int currentMaterialIndex; 190 169 191 G4MscStepLimitType steppingAlgorithm;192 193 G4bool samplez;194 G4bool latDisplasment;195 170 G4bool isInitialized; 196 197 171 G4bool inside; 198 172 G4bool insideskin; 199 173 200 174 }; 201 202 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......203 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......204 205 inline206 void G4UrbanMscModel90::SetLateralDisplasmentFlag(G4bool val)207 {208 latDisplasment = val;209 }210 211 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......212 213 inline214 void G4UrbanMscModel90::SetSkin(G4double val)215 {216 skin = val;217 stepmin = tlimitminfix;218 skindepth = skin*stepmin;219 }220 221 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......222 223 inline224 void G4UrbanMscModel90::SetRangeFactor(G4double val)225 {226 facrange = val;227 }228 229 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......230 231 inline232 void G4UrbanMscModel90::SetGeomFactor(G4double val)233 {234 facgeom = val;235 }236 237 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......238 239 inline240 void G4UrbanMscModel90::SetStepLimitType(G4MscStepLimitType val)241 {242 steppingAlgorithm = val;243 }244 175 245 176 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Note: See TracChangeset
for help on using the changeset viewer.