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

update to geant4.9.3

Location:
trunk/examples/extended/electromagnetic/TestEm13/src
Files:
13 edited

Legend:

Unmodified
Added
Removed
  • trunk/examples/extended/electromagnetic/TestEm13/src/DetectorConstruction.cc

    r807 r1230  
    2525//
    2626// $Id: DetectorConstruction.cc,v 1.5 2006/06/29 16:44:24 gunter Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/electromagnetic/TestEm13/src/DetectorMessenger.cc

    r807 r1230  
    2525//
    2626// $Id: DetectorMessenger.cc,v 1.2 2006/06/29 16:44:27 gunter Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/electromagnetic/TestEm13/src/EventAction.cc

    r807 r1230  
    2525//
    2626// $Id: EventAction.cc,v 1.2 2006/06/29 16:44:30 gunter Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/electromagnetic/TestEm13/src/EventActionMessenger.cc

    r807 r1230  
    2525//
    2626// $Id: EventActionMessenger.cc,v 1.2 2006/06/29 16:44:32 gunter Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/electromagnetic/TestEm13/src/PhysListEmLivermore.cc

    r807 r1230  
    2525//
    2626//
    27 // $Id: PhysListEmLivermore.cc,v 1.3 2006/06/29 16:44:34 gunter Exp $
    28 // GEANT4 tag $Name: $
     27// $Id: PhysListEmLivermore.cc,v 1.5 2009/11/19 17:30:25 maire Exp $
     28// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2929//
    3030//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     
    3535#include "G4ProcessManager.hh"
    3636
    37 #include "G4LowEnergyCompton.hh"
    38 #include "G4LowEnergyGammaConversion.hh"
    39 #include "G4LowEnergyPhotoElectric.hh"
    40 #include "G4LowEnergyRayleigh.hh"
     37// gamma
    4138
    42 #include "G4LowEnergyIonisation.hh"
    43 #include "G4LowEnergyBremsstrahlung.hh"
     39#include "G4PhotoElectricEffect.hh"
     40#include "G4LivermorePhotoElectricModel.hh"
     41
     42#include "G4ComptonScattering.hh"
     43#include "G4LivermoreComptonModel.hh"
     44
     45#include "G4GammaConversion.hh"
     46#include "G4LivermoreGammaConversionModel.hh"
     47
     48#include "G4RayleighScattering.hh"
     49#include "G4LivermoreRayleighModel.hh"
     50
     51// e-
     52
    4453#include "G4eIonisation.hh"
     54#include "G4LivermoreIonisationModel.hh"
     55#include "G4UniversalFluctuation.hh"
     56
    4557#include "G4eBremsstrahlung.hh"
     58#include "G4LivermoreBremsstrahlungModel.hh"
     59
     60// e+
     61
    4662#include "G4eplusAnnihilation.hh"
     63
     64// mu
    4765
    4866#include "G4MuIonisation.hh"
     
    5068#include "G4MuPairProduction.hh"
    5169
    52 #include "G4hLowEnergyIonisation.hh"
     70// hadrons, ions
     71
     72#include "G4hIonisation.hh"
     73#include "G4ionIonisation.hh"
     74
    5375
    5476//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     
    6789void PhysListEmLivermore::ConstructProcess()
    6890{
    69   // Add LowEn or standard EM Processes
     91  // Add standard EM Processes
    7092
    7193  theParticleIterator->reset();
     
    7496    G4ProcessManager* pmanager = particle->GetProcessManager();
    7597    G4String particleName = particle->GetParticleName();
    76      
     98
     99    //Applicability range for Livermore models
     100    //for higher energies, the Standard models are used   
     101    G4double highEnergyLimit = 1*GeV;
     102         
    77103    if (particleName == "gamma") {
    78104      // gamma         
    79       pmanager->AddDiscreteProcess(new G4LowEnergyPhotoElectric);
    80       pmanager->AddDiscreteProcess(new G4LowEnergyCompton);
    81       pmanager->AddDiscreteProcess(new G4LowEnergyGammaConversion);
    82       pmanager->AddDiscreteProcess(new G4LowEnergyRayleigh);
     105
     106      G4PhotoElectricEffect* phot = new G4PhotoElectricEffect();
     107      G4LivermorePhotoElectricModel*
     108      photModel = new G4LivermorePhotoElectricModel();
     109      photModel->SetHighEnergyLimit(highEnergyLimit);
     110      phot->AddEmModel(0, photModel);
     111      pmanager->AddDiscreteProcess(phot);
     112
     113      G4ComptonScattering* compt = new G4ComptonScattering();
     114      G4LivermoreComptonModel*
     115      comptModel = new G4LivermoreComptonModel();
     116      comptModel->SetHighEnergyLimit(highEnergyLimit);
     117      compt->AddEmModel(0, comptModel);
     118      pmanager->AddDiscreteProcess(compt);
     119
     120      G4GammaConversion* conv = new G4GammaConversion();
     121      G4LivermoreGammaConversionModel*
     122      convModel = new G4LivermoreGammaConversionModel();
     123      convModel->SetHighEnergyLimit(highEnergyLimit);
     124      conv->AddEmModel(0, convModel);
     125      pmanager->AddDiscreteProcess(conv);
     126
     127      G4RayleighScattering* rayl = new G4RayleighScattering();
     128      G4LivermoreRayleighModel*
     129      raylModel = new G4LivermoreRayleighModel();
     130      raylModel->SetHighEnergyLimit(highEnergyLimit);
     131      rayl->AddEmModel(0, raylModel);
     132      pmanager->AddDiscreteProcess(rayl);
    83133     
    84134    } else if (particleName == "e-") {
    85135      //electron
    86       pmanager->AddProcess(new G4LowEnergyIonisation,     -1, 1, 1);
    87       pmanager->AddProcess(new G4LowEnergyBremsstrahlung, -1,-1, 2);
    88            
     136
     137      G4eIonisation* eIoni = new G4eIonisation();
     138      G4LivermoreIonisationModel*
     139      eIoniModel = new G4LivermoreIonisationModel();
     140      eIoniModel->SetHighEnergyLimit(highEnergyLimit);
     141      eIoni->AddEmModel(0, eIoniModel, new G4UniversalFluctuation() );
     142      pmanager->AddProcess(eIoni,                   -1, 1, 1);
     143     
     144      G4eBremsstrahlung* eBrem = new G4eBremsstrahlung();
     145      G4LivermoreBremsstrahlungModel*
     146      eBremModel = new G4LivermoreBremsstrahlungModel();
     147      eBremModel->SetHighEnergyLimit(highEnergyLimit);
     148      eBrem->AddEmModel(0, eBremModel);
     149      pmanager->AddProcess(eBrem,                   -1, 2, 2);
     150           
    89151    } else if (particleName == "e+") {
    90152      //positron
    91       pmanager->AddProcess(new G4eIonisation,        -1, 1, 1);
    92       pmanager->AddProcess(new G4eBremsstrahlung,    -1, 2, 2);
    93       pmanager->AddProcess(new G4eplusAnnihilation,   0,-1, 3);
     153      pmanager->AddProcess(new G4eIonisation,       -1, 1, 1);
     154      pmanager->AddProcess(new G4eBremsstrahlung,   -1, 2, 2);
     155      pmanager->AddProcess(new G4eplusAnnihilation,  0,-1, 3);
    94156     
    95157    } else if( particleName == "mu+" ||
    96158               particleName == "mu-"    ) {
    97159      //muon 
    98       pmanager->AddProcess(new G4MuIonisation,       -1, 1, 1);
    99       pmanager->AddProcess(new G4MuBremsstrahlung,   -1, 2, 2);
    100       pmanager->AddProcess(new G4MuPairProduction,   -1, 3, 3);       
     160      pmanager->AddProcess(new G4MuIonisation,      -1, 1, 1);
     161      pmanager->AddProcess(new G4MuBremsstrahlung,  -1, 2, 2);
     162      pmanager->AddProcess(new G4MuPairProduction,  -1, 3, 3);       
    101163     
     164    } else if( particleName == "alpha" || particleName == "GenericIon" ) {
     165      pmanager->AddProcess(new G4ionIonisation,     -1, 1, 1);
     166
    102167    } else if ((!particle->IsShortLived()) &&
    103168               (particle->GetPDGCharge() != 0.0) &&
    104169               (particle->GetParticleName() != "chargedgeantino")) {
    105170      //all others charged particles except geantino
    106       pmanager->AddProcess(new G4hLowEnergyIonisation, -1, 1, 1);
     171      pmanager->AddProcess(new G4hIonisation,      -1, 1, 1);
    107172    }
    108173  }
  • trunk/examples/extended/electromagnetic/TestEm13/src/PhysListEmPenelope.cc

    r807 r1230  
    2525//
    2626//
    27 // $Id: PhysListEmPenelope.cc,v 1.3 2006/06/29 16:44:36 gunter Exp $
    28 // GEANT4 tag $Name: $
     27// $Id: PhysListEmPenelope.cc,v 1.6 2009/11/19 17:30:25 maire Exp $
     28// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2929//
    3030//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     
    3535#include "G4ProcessManager.hh"
    3636
    37 #include "G4PenelopeCompton.hh"
    38 #include "G4PenelopeGammaConversion.hh"
    39 #include "G4PenelopePhotoElectric.hh"
    40 #include "G4PenelopeRayleigh.hh"
     37// gamma
    4138
    42 #include "G4PenelopeIonisation.hh"
    43 #include "G4PenelopeBremsstrahlung.hh"
    44 #include "G4PenelopeAnnihilation.hh"
     39#include "G4PhotoElectricEffect.hh"
     40#include "G4PenelopePhotoElectricModel.hh"
     41
     42#include "G4ComptonScattering.hh"
     43#include "G4PenelopeComptonModel.hh"
     44
     45#include "G4GammaConversion.hh"
     46#include "G4PenelopeGammaConversionModel.hh"
     47
     48#include "G4RayleighScattering.hh"
     49#include "G4PenelopeRayleighModel.hh"
     50
     51// e-
     52
     53#include "G4eIonisation.hh"
     54#include "G4PenelopeIonisationModel.hh"
     55#include "G4UniversalFluctuation.hh"
     56
     57#include "G4eBremsstrahlung.hh"
     58#include "G4PenelopeBremsstrahlungModel.hh"
     59
     60// e+
     61
     62#include "G4eplusAnnihilation.hh"
     63#include "G4PenelopeAnnihilationModel.hh"
     64
     65// mu
    4566
    4667#include "G4MuIonisation.hh"
     
    4869#include "G4MuPairProduction.hh"
    4970
     71// hadrons, ions
     72
    5073#include "G4hIonisation.hh"
    5174#include "G4ionIonisation.hh"
     75
    5276
    5377//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     
    6690void PhysListEmPenelope::ConstructProcess()
    6791{
    68   // Add Penelope or standard EM Processes
     92  // Add standard EM Processes
    6993
    7094  theParticleIterator->reset();
     
    7397    G4ProcessManager* pmanager = particle->GetProcessManager();
    7498    G4String particleName = particle->GetParticleName();
    75      
     99
     100    //Applicability range for Penelope models
     101    //for higher energies, the Standard models are used   
     102    G4double highEnergyLimit = 1*GeV;
     103         
    76104    if (particleName == "gamma") {
    77105      // gamma         
    78       pmanager->AddDiscreteProcess(new G4PenelopePhotoElectric);
    79       pmanager->AddDiscreteProcess(new G4PenelopeCompton);
    80       pmanager->AddDiscreteProcess(new G4PenelopeGammaConversion);
    81       pmanager->AddDiscreteProcess(new G4PenelopeRayleigh);
     106
     107      G4PhotoElectricEffect* phot = new G4PhotoElectricEffect();
     108      G4PenelopePhotoElectricModel*
     109      photModel = new G4PenelopePhotoElectricModel();
     110      photModel->SetHighEnergyLimit(highEnergyLimit);
     111      phot->AddEmModel(0, photModel);
     112      pmanager->AddDiscreteProcess(phot);
     113
     114      G4ComptonScattering* compt = new G4ComptonScattering();
     115      G4PenelopeComptonModel*
     116      comptModel = new G4PenelopeComptonModel();
     117      comptModel->SetHighEnergyLimit(highEnergyLimit);
     118      compt->AddEmModel(0, comptModel);
     119      pmanager->AddDiscreteProcess(compt);
     120
     121      G4GammaConversion* conv = new G4GammaConversion();
     122      G4PenelopeGammaConversionModel*
     123      convModel = new G4PenelopeGammaConversionModel();
     124      convModel->SetHighEnergyLimit(highEnergyLimit);
     125      conv->AddEmModel(0, convModel);
     126      pmanager->AddDiscreteProcess(conv);
     127
     128      G4RayleighScattering* rayl = new G4RayleighScattering();
     129      G4PenelopeRayleighModel*
     130      raylModel = new G4PenelopeRayleighModel();
     131      raylModel->SetHighEnergyLimit(highEnergyLimit);
     132      rayl->AddEmModel(0, raylModel);
     133      pmanager->AddDiscreteProcess(rayl);
    82134     
    83135    } else if (particleName == "e-") {
    84136      //electron
    85       pmanager->AddProcess(new G4PenelopeIonisation,     -1, 1, 1);
    86       pmanager->AddProcess(new G4PenelopeBremsstrahlung, -1,-1, 2);
    87            
     137
     138      G4eIonisation* eIoni = new G4eIonisation();
     139      G4PenelopeIonisationModel*
     140      eIoniModel = new G4PenelopeIonisationModel();
     141      eIoniModel->SetHighEnergyLimit(highEnergyLimit);
     142      eIoni->AddEmModel(0, eIoniModel, new G4UniversalFluctuation() );
     143      pmanager->AddProcess(eIoni,                   -1, 1, 1);
     144     
     145      G4eBremsstrahlung* eBrem = new G4eBremsstrahlung();
     146      G4PenelopeBremsstrahlungModel*
     147      eBremModel = new G4PenelopeBremsstrahlungModel();
     148      eBremModel->SetHighEnergyLimit(highEnergyLimit);
     149      eBrem->AddEmModel(0, eBremModel);
     150      pmanager->AddProcess(eBrem,                   -1, 2, 2);
     151           
    88152    } else if (particleName == "e+") {
    89153      //positron
    90       pmanager->AddProcess(new G4PenelopeIonisation,     -1, 1, 1);
    91       pmanager->AddProcess(new G4PenelopeBremsstrahlung, -1,-1, 2);     
    92       pmanager->AddProcess(new G4PenelopeAnnihilation,    0,-1, 3);
     154      G4eIonisation* eIoni = new G4eIonisation();
     155      G4PenelopeIonisationModel*
     156      eIoniModel = new G4PenelopeIonisationModel();
     157      eIoniModel->SetHighEnergyLimit(highEnergyLimit);
     158      eIoni->AddEmModel(0, eIoniModel, new G4UniversalFluctuation() );
     159      pmanager->AddProcess(eIoni,                   -1, 1, 1);
    93160     
     161      G4eBremsstrahlung* eBrem = new G4eBremsstrahlung();
     162      G4PenelopeBremsstrahlungModel*
     163      eBremModel = new G4PenelopeBremsstrahlungModel();
     164      eBremModel->SetHighEnergyLimit(highEnergyLimit);
     165      eBrem->AddEmModel(0, eBremModel);
     166      pmanager->AddProcess(eBrem,                   -1, 2, 2);     
     167
     168      G4eplusAnnihilation* eAnni = new G4eplusAnnihilation();
     169      G4PenelopeAnnihilationModel*
     170      eAnniModel = new G4PenelopeAnnihilationModel();
     171      eAnniModel->SetHighEnergyLimit(highEnergyLimit);
     172      eAnni->AddEmModel(0, eAnniModel);
     173      pmanager->AddProcess(eAnni,                    0,-1, 3);
     174           
    94175    } else if( particleName == "mu+" ||
    95176               particleName == "mu-"    ) {
    96177      //muon 
    97       pmanager->AddProcess(new G4MuIonisation,       -1, 1, 1);
    98       pmanager->AddProcess(new G4MuBremsstrahlung,   -1, 2, 2);
    99       pmanager->AddProcess(new G4MuPairProduction,   -1, 3, 3);       
     178      pmanager->AddProcess(new G4MuIonisation,      -1, 1, 1);
     179      pmanager->AddProcess(new G4MuBremsstrahlung,  -1, 2, 2);
     180      pmanager->AddProcess(new G4MuPairProduction,  -1, 3, 3);       
    100181     
    101182    } else if( particleName == "alpha" || particleName == "GenericIon" ) {
    102       pmanager->AddProcess(new G4ionIonisation,      -1, 1, 1);
    103      
     183      pmanager->AddProcess(new G4ionIonisation,     -1, 1, 1);
     184
    104185    } else if ((!particle->IsShortLived()) &&
    105186               (particle->GetPDGCharge() != 0.0) &&
    106187               (particle->GetParticleName() != "chargedgeantino")) {
    107188      //all others charged particles except geantino
    108       pmanager->AddProcess(new G4hIonisation,        -1, 1, 1);
     189      pmanager->AddProcess(new G4hIonisation,       -1, 1, 1);
    109190    }
    110191  }
  • trunk/examples/extended/electromagnetic/TestEm13/src/PhysListEmStandard.cc

    r807 r1230  
    2626//
    2727// $Id: PhysListEmStandard.cc,v 1.3 2006/06/29 16:44:38 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2929//
    3030//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/electromagnetic/TestEm13/src/PhysicsList.cc

    r807 r1230  
    2525//
    2626//
    27 // $Id: PhysicsList.cc,v 1.5 2006/06/29 16:44:40 gunter Exp $
    28 // GEANT4 tag $Name: $
     27// $Id: PhysicsList.cc,v 1.7 2009/11/19 17:30:25 maire Exp $
     28// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2929//
    3030//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     
    199199
    200200  if (name == "standard") {
    201 
    202201    emName = name;
    203202    delete emPhysicsList;
    204203    emPhysicsList = new PhysListEmStandard(name);
    205       
     204   
    206205  } else if (name == "livermore") {
    207206    emName = name;
     
    213212    delete emPhysicsList;
    214213    emPhysicsList = new PhysListEmPenelope(name);
    215            
     214                         
    216215  } else {
    217216    G4cout << "PhysicsList::AddPhysicsList: <" << name << ">"
  • trunk/examples/extended/electromagnetic/TestEm13/src/PhysicsListMessenger.cc

    r807 r1230  
    2525//
    2626// $Id: PhysicsListMessenger.cc,v 1.3 2006/06/29 16:44:43 gunter Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/electromagnetic/TestEm13/src/PrimaryGeneratorAction.cc

    r807 r1230  
    2525//
    2626// $Id: PrimaryGeneratorAction.cc,v 1.2 2006/06/29 16:44:45 gunter Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/electromagnetic/TestEm13/src/RunAction.cc

    r807 r1230  
    2525//
    2626// $Id: RunAction.cc,v 1.6 2006/06/29 16:44:47 gunter Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/electromagnetic/TestEm13/src/SteppingAction.cc

    r807 r1230  
    2424// ********************************************************************
    2525//
    26 // $Id: SteppingAction.cc,v 1.6 2007/06/24 22:26:54 maire Exp $
    27 // GEANT4 tag $Name: $
     26// $Id: SteppingAction.cc,v 1.7 2009/09/25 11:27:13 maire Exp $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/electromagnetic/TestEm13/src/SteppingVerbose.cc

    r807 r1230  
    2525//
    2626// $Id: SteppingVerbose.cc,v 1.2 2006/06/29 16:44:51 gunter Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Note: See TracChangeset for help on using the changeset viewer.