Ignore:
Timestamp:
Jan 8, 2010, 3:02:48 PM (14 years ago)
Author:
garnier
Message:

update to geant4.9.3

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/examples/extended/electromagnetic/TestEm5/src/PhysicsList.cc

    r807 r1230  
    2424// ********************************************************************
    2525//
    26 // $Id: PhysicsList.cc,v 1.21 2007/11/19 14:57:07 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-01-patch-02 $
     26// $Id: PhysicsList.cc,v 1.40 2009/11/15 22:10:03 maire Exp $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     
    3535#include "PhysListEmStandard.hh"
    3636#include "PhysListEmStandardSS.hh"
    37 #include "PhysListEmStandardIG.hh"
    38 #include "PhysListEmLivermore.hh"
    39 #include "PhysListEmPenelope.hh"
     37#include "PhysListEmStandardGS.hh"
    4038
    4139#include "G4EmStandardPhysics.hh"
    4240#include "G4EmStandardPhysics_option1.hh"
    4341#include "G4EmStandardPhysics_option2.hh"
    44 
    45 #include "G4HadronElasticPhysics.hh"
    46 #include "G4HadronDElasticPhysics.hh"
    47 #include "G4HadronHElasticPhysics.hh"
    48 #include "G4HadronQElasticPhysics.hh"
    49 #include "G4HadronInelasticQBBC.hh"
    50 #include "G4IonBinaryCascadePhysics.hh"
    51 
    52 #include "G4LossTableManager.hh"
     42#include "G4EmStandardPhysics_option3.hh"
     43#include "G4EmLivermorePhysics.hh"
     44#include "G4EmPenelopePhysics.hh"
     45
     46#include "G4Decay.hh"
     47#include "StepMax.hh"
     48
    5349#include "G4UnitsTable.hh"
    5450
    5551#include "G4ParticleDefinition.hh"
    5652#include "G4ProcessManager.hh"
    57 #include "G4Decay.hh"
    58 #include "StepMax.hh"
    5953
    6054// Bosons
     
    8478PhysicsList::PhysicsList() : G4VModularPhysicsList()
    8579{
    86   G4LossTableManager::Instance();
    8780  pMessenger = new PhysicsListMessenger(this);
    8881   
    8982  // EM physics
    90   emName = G4String("standard");
     83  emName = G4String("local");
    9184  emPhysicsList = new PhysListEmStandard(emName);
    92 
    93   helIsRegisted  = false;
    94   bicIsRegisted  = false;
    95   biciIsRegisted = false;
    96  
    97   stepMaxProcess  = 0;
    98    
     85     
    9986  defaultCutValue = 1.*mm;
     87
    10088  cutForGamma     = defaultCutValue;
    10189  cutForElectron  = defaultCutValue;
     
    11098{
    11199  delete emPhysicsList;
    112   for(size_t i=0; i<hadronPhys.size(); i++) delete hadronPhys[i];
    113100  delete pMessenger; 
    114101}
     
    118105void PhysicsList::ConstructParticle()
    119106{
    120 // pseudo-particles
     107  // pseudo-particles
    121108  G4Geantino::GeantinoDefinition();
    122109  G4ChargedGeantino::ChargedGeantinoDefinition();
    123110 
    124 // gamma
     111  // gamma
    125112  G4Gamma::GammaDefinition();
    126113 
    127 // optical photon
    128   G4OpticalPhoton::OpticalPhotonDefinition();
    129 
    130 // leptons
     114  // leptons
    131115  G4Electron::ElectronDefinition();
    132116  G4Positron::PositronDefinition();
     
    139123  G4AntiNeutrinoMu::AntiNeutrinoMuDefinition(); 
    140124
    141 // mesons
     125  // mesons
    142126  G4MesonConstructor mConstructor;
    143127  mConstructor.ConstructParticle();
    144128
    145 // barions
     129  // barions
    146130  G4BaryonConstructor bConstructor;
    147131  bConstructor.ConstructParticle();
    148132
    149 // ions
     133  // ions
    150134  G4IonConstructor iConstructor;
    151135  iConstructor.ConstructParticle();
     
    158142  AddTransportation();
    159143  emPhysicsList->ConstructProcess();
    160   for(size_t i=0; i<hadronPhys.size(); i++) hadronPhys[i]->ConstructProcess();
    161144  AddDecay(); 
    162145  AddStepMax();
     
    193176{
    194177  // Step limitation seen as a process
    195   stepMaxProcess = new StepMax();
     178  StepMax* stepMaxProcess = new StepMax();
    196179
    197180  theParticleIterator->reset();
     
    217200  if (name == emName) return;
    218201
    219   if (name == "standard") {
     202  if (name == "local") {
    220203
    221204    emName = name;
     
    223206    emPhysicsList = new PhysListEmStandard(name);
    224207
    225   } else if (name == "emstandard") {
     208  } else if (name == "emstandard_opt0") {
    226209
    227210    emName = name;
     
    240223    delete emPhysicsList;
    241224    emPhysicsList = new G4EmStandardPhysics_option2();
    242 
     225   
     226  } else if (name == "emstandard_opt3") {
     227
     228    emName = name;
     229    delete emPhysicsList;
     230    emPhysicsList = new G4EmStandardPhysics_option3();
     231   
    243232  } else if (name == "standardSS") {
    244233
     
    246235    delete emPhysicsList;
    247236    emPhysicsList = new PhysListEmStandardSS(name);
    248        
    249   } else if (name == "standardIG") {
    250 
    251     emName = name;
    252     delete emPhysicsList;
    253     emPhysicsList = new PhysListEmStandardIG(name);
    254        
    255   } else if (name == "livermore") {
    256 
    257     emName = name;
    258     delete emPhysicsList;
    259     emPhysicsList = new PhysListEmLivermore(name);
    260    
    261   } else if (name == "penelope") {
    262 
    263     emName = name;
    264     delete emPhysicsList;
    265     emPhysicsList = new PhysListEmPenelope(name);
    266 
    267   } else if (name == "elastic" && !helIsRegisted) {
    268     hadronPhys.push_back( new G4HadronElasticPhysics());
    269     helIsRegisted = true;
    270 
    271   } else if (name == "DElastic" && !helIsRegisted) {
    272     hadronPhys.push_back( new G4HadronDElasticPhysics());
    273     helIsRegisted = true;
    274 
    275   } else if (name == "HElastic" && !helIsRegisted) {
    276     hadronPhys.push_back( new G4HadronHElasticPhysics());
    277     helIsRegisted = true;
    278 
    279   } else if (name == "QElastic" && !helIsRegisted) {
    280     hadronPhys.push_back( new G4HadronQElasticPhysics());
    281     helIsRegisted = true;
    282 
    283   } else if (name == "binary" && !bicIsRegisted) {
    284     hadronPhys.push_back(new G4HadronInelasticQBBC());
    285     bicIsRegisted = true;
    286 
    287   } else if (name == "binary_ion" && !biciIsRegisted) {
    288     hadronPhys.push_back(new G4IonBinaryCascadePhysics());
    289     biciIsRegisted = true;
    290        
     237
     238  } else if (name == "standardGS") {
     239
     240    emName = name;
     241    delete emPhysicsList;
     242    emPhysicsList = new PhysListEmStandardGS(name);
     243
     244  } else if (name == "empenelope"){
     245    emName = name;
     246    delete emPhysicsList;
     247    emPhysicsList = new G4EmPenelopePhysics();
     248
     249  } else if (name == "emlivermore"){
     250    emName = name;
     251    delete emPhysicsList;
     252    emPhysicsList = new G4EmLivermorePhysics();
     253                       
    291254  } else {
    292255
     
    301264void PhysicsList::SetCuts()
    302265{
    303 
    304266  if (verboseLevel >0){
    305267    G4cout << "PhysicsList::SetCuts:";
     
    341303
    342304//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    343 
Note: See TracChangeset for help on using the changeset viewer.