- Timestamp:
- Nov 27, 2009, 11:46:04 AM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/physics_lists/builders/src/G4EmStandardPhysics_option3.cc
r988 r1203 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4EmStandardPhysics_option3.cc,v 1.1 4 2008/11/21 16:50:30vnivanch Exp $27 // GEANT4 tag $Name: geant4-09-0 2-ref-02$26 // $Id: G4EmStandardPhysics_option3.cc,v 1.18 2009/11/24 12:53:22 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-03-cand-03 $ 28 28 // 29 29 //--------------------------------------------------------------------------- … … 50 50 #include "G4GammaConversion.hh" 51 51 #include "G4PhotoElectricEffect.hh" 52 #include "G4 LowEnergyRayleigh.hh"52 #include "G4RayleighScattering.hh" 53 53 54 54 #include "G4eMultipleScattering.hh" 55 #include "G4MuMultipleScattering.hh" 55 56 #include "G4hMultipleScattering.hh" 56 57 #include "G4MscStepLimitType.hh" 58 #include "G4UrbanMscModel93.hh" 59 #include "G4WentzelVIModel.hh" 60 #include "G4CoulombScattering.hh" 57 61 58 62 #include "G4eIonisation.hh" … … 68 72 #include "G4hIonisation.hh" 69 73 #include "G4ionIonisation.hh" 74 #include "G4IonParametrisedLossModel.hh" 75 #include "G4NuclearStopping.hh" 70 76 71 77 #include "G4Gamma.hh" … … 148 154 if (particleName == "gamma") { 149 155 150 pmanager->AddDiscreteProcess(new G4LowEnergyRayleigh);151 156 pmanager->AddDiscreteProcess(new G4PhotoElectricEffect); 152 157 pmanager->AddDiscreteProcess(new G4ComptonScattering); 153 158 pmanager->AddDiscreteProcess(new G4GammaConversion); 159 pmanager->AddDiscreteProcess(new G4RayleighScattering); 154 160 155 161 } else if (particleName == "e-") { 156 162 157 163 G4eMultipleScattering* msc = new G4eMultipleScattering(); 164 msc->AddEmModel(0, new G4UrbanMscModel93()); 158 165 msc->SetStepLimitType(fUseDistanceToBoundary); 159 166 pmanager->AddProcess(msc, -1, 1, 1); … … 166 173 167 174 G4eMultipleScattering* msc = new G4eMultipleScattering(); 175 msc->AddEmModel(0, new G4UrbanMscModel93()); 168 176 msc->SetStepLimitType(fUseDistanceToBoundary); 169 177 pmanager->AddProcess(msc, -1, 1, 1); … … 177 185 particleName == "mu-" ) { 178 186 179 pmanager->AddProcess(new G4eMultipleScattering, -1, 1, 1); 187 G4MuMultipleScattering* msc = new G4MuMultipleScattering(); 188 msc->AddEmModel(0, new G4WentzelVIModel()); 189 pmanager->AddProcess(msc, -1, 1, 1); 180 190 G4MuIonisation* muIoni = new G4MuIonisation(); 181 191 muIoni->SetStepFunction(0.2, 50*um); … … 183 193 pmanager->AddProcess(new G4MuBremsstrahlung, -1,-3, 3); 184 194 pmanager->AddProcess(new G4MuPairProduction, -1,-4, 4); 195 pmanager->AddDiscreteProcess(new G4CoulombScattering()); 185 196 186 197 } else if (particleName == "alpha" || 187 particleName == "He3" || 188 particleName == "GenericIon") { 198 particleName == "He3") { 189 199 190 200 pmanager->AddProcess(new G4hMultipleScattering, -1, 1, 1); … … 192 202 ionIoni->SetStepFunction(0.1, 20*um); 193 203 pmanager->AddProcess(ionIoni, -1, 2, 2); 204 pmanager->AddProcess(new G4NuclearStopping(), -1, 3,-1); 205 206 } else if (particleName == "GenericIon") { 207 208 pmanager->AddProcess(new G4hMultipleScattering, -1, 1, 1); 209 G4ionIonisation* ionIoni = new G4ionIonisation(); 210 ionIoni->SetEmModel(new G4IonParametrisedLossModel()); 211 ionIoni->SetStepFunction(0.1, 10*um); 212 pmanager->AddProcess(ionIoni, -1, 2, 2); 213 pmanager->AddProcess(new G4NuclearStopping(), -1, 3,-1); 194 214 195 215 } else if (particleName == "pi+" || 196 216 particleName == "pi-" || 217 particleName == "kaon+" || 218 particleName == "kaon-" || 197 219 particleName == "proton" ) { 198 220 … … 220 242 particleName == "anti_xi-" || 221 243 particleName == "deuteron" || 222 particleName == "kaon+" ||223 particleName == "kaon-" ||224 244 particleName == "lambda_c+" || 225 245 particleName == "omega-" || … … 256 276 opt.SetLambdaBinning(220); 257 277 //opt.SetSplineFlag(true); 278 opt.SetPolarAngleLimit(0.2); 258 279 259 280 // Ionization
Note: See TracChangeset
for help on using the changeset viewer.