Ignore:
Timestamp:
Nov 27, 2009, 11:46:04 AM (15 years ago)
Author:
garnier
Message:

update CVS

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/physics_lists/builders/src/G4EmStandardPhysics_option3.cc

    r988 r1203  
    2424// ********************************************************************
    2525//
    26 // $Id: G4EmStandardPhysics_option3.cc,v 1.14 2008/11/21 16:50:30 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-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 $
    2828//
    2929//---------------------------------------------------------------------------
     
    5050#include "G4GammaConversion.hh"
    5151#include "G4PhotoElectricEffect.hh"
    52 #include "G4LowEnergyRayleigh.hh"
     52#include "G4RayleighScattering.hh"
    5353
    5454#include "G4eMultipleScattering.hh"
     55#include "G4MuMultipleScattering.hh"
    5556#include "G4hMultipleScattering.hh"
    5657#include "G4MscStepLimitType.hh"
     58#include "G4UrbanMscModel93.hh"
     59#include "G4WentzelVIModel.hh"
     60#include "G4CoulombScattering.hh"
    5761
    5862#include "G4eIonisation.hh"
     
    6872#include "G4hIonisation.hh"
    6973#include "G4ionIonisation.hh"
     74#include "G4IonParametrisedLossModel.hh"
     75#include "G4NuclearStopping.hh"
    7076
    7177#include "G4Gamma.hh"
     
    148154    if (particleName == "gamma") {
    149155
    150       pmanager->AddDiscreteProcess(new G4LowEnergyRayleigh);
    151156      pmanager->AddDiscreteProcess(new G4PhotoElectricEffect);
    152157      pmanager->AddDiscreteProcess(new G4ComptonScattering);
    153158      pmanager->AddDiscreteProcess(new G4GammaConversion);
     159      pmanager->AddDiscreteProcess(new G4RayleighScattering);
    154160
    155161    } else if (particleName == "e-") {
    156162
    157163      G4eMultipleScattering* msc = new G4eMultipleScattering();
     164      msc->AddEmModel(0, new G4UrbanMscModel93());
    158165      msc->SetStepLimitType(fUseDistanceToBoundary);
    159166      pmanager->AddProcess(msc,                   -1, 1, 1);
     
    166173
    167174      G4eMultipleScattering* msc = new G4eMultipleScattering();
     175      msc->AddEmModel(0, new G4UrbanMscModel93());
    168176      msc->SetStepLimitType(fUseDistanceToBoundary);
    169177      pmanager->AddProcess(msc,                   -1, 1, 1);
     
    177185               particleName == "mu-"    ) {
    178186
    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);
    180190      G4MuIonisation* muIoni = new G4MuIonisation();
    181191      muIoni->SetStepFunction(0.2, 50*um);         
     
    183193      pmanager->AddProcess(new G4MuBremsstrahlung,    -1,-3, 3);
    184194      pmanager->AddProcess(new G4MuPairProduction,    -1,-4, 4);
     195      pmanager->AddDiscreteProcess(new G4CoulombScattering());
    185196
    186197    } else if (particleName == "alpha" ||
    187                particleName == "He3" ||
    188                particleName == "GenericIon") {
     198               particleName == "He3") {
    189199
    190200      pmanager->AddProcess(new G4hMultipleScattering, -1, 1, 1);
     
    192202      ionIoni->SetStepFunction(0.1, 20*um);
    193203      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);
    194214
    195215    } else if (particleName == "pi+" ||
    196216               particleName == "pi-" ||
     217               particleName == "kaon+" ||
     218               particleName == "kaon-" ||
    197219               particleName == "proton" ) {
    198220
     
    220242               particleName == "anti_xi-" ||
    221243               particleName == "deuteron" ||
    222                particleName == "kaon+" ||
    223                particleName == "kaon-" ||
    224244               particleName == "lambda_c+" ||
    225245               particleName == "omega-" ||
     
    256276  opt.SetLambdaBinning(220);
    257277  //opt.SetSplineFlag(true);
     278  opt.SetPolarAngleLimit(0.2);
    258279   
    259280  // Ionization
Note: See TracChangeset for help on using the changeset viewer.