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

update to geant4.9.3

Location:
trunk/examples/extended/medical/fanoCavity2
Files:
39 edited

Legend:

Unmodified
Added
Removed
  • trunk/examples/extended/medical/fanoCavity2/GNUmakefile

    r807 r1230  
    1 # $Id: GNUmakefile,v 1.1 2007/10/15 16:20:23 maire Exp $
     1# $Id: GNUmakefile,v 1.2 2008/06/11 15:27:31 vnivanch Exp $
    22# --------------------------------------------------------------
    33# GNUmakefile for examples module.  Gabriele Cosmo, 06/04/98.
     
    1717#### G4ANALYSIS_USE := true
    1818
    19 ifdef G4ANALYSIS_USE
    20   CPPFLAGS += -DG4ANALYSIS_USE
    21 endif
    22 
    2319include $(G4INSTALL)/config/architecture.gmk
    24 
    25 ifdef G4ANALYSIS_USE
    26   # for the aida-config command see the README file
    27   CPPFLAGS += `aida-config --include`
    28   LOADLIBS += `aida-config --lib`
    29 endif
    3020
    3121include $(G4INSTALL)/config/binmake.gmk
     
    3424        rm -f g4*.prim g4*.eps g4*.wrl
    3525        rm -f .DAWN_*
    36        
     26
    3727histclean:
    3828        rm ${G4WORKDIR}/tmp/${G4SYSTEM}/${G4TARGET}/HistoManager.o
  • trunk/examples/extended/medical/fanoCavity2/basic.mac

    r807 r1230  
    1 # $Id: basic.mac,v 1.2 2007/11/05 13:19:16 maire Exp $
     1# $Id: basic.mac,v 1.4 2009/10/31 18:05:56 maire Exp $
    22#
    33/control/verbose 2
     
    77/testem/det/wallThickness 5 cm
    88#
     9/testem/phys/addPhysics standard_opt3
     10#
    911/run/initialize
    1012#
     
    1214/process/eLoss/fluct false
    1315#
    14 /gun/energy 10 keV
     16/process/eLoss/StepFunction 0.2 10 um
    1517#
    16 /testem/event/printModulo 500000
     18/gun/energy 1 MeV
    1719#
    18 /run/beamOn 10000000
     20/testem/event/printModulo 50000
     21#
     22/run/beamOn 500000
  • trunk/examples/extended/medical/fanoCavity2/essai.mac

    r807 r1230  
    1 # $Id: essai.mac,v 1.3 2007/11/12 18:19:30 maire Exp $
     1# $Id: essai.mac,v 1.5 2009/10/31 18:05:56 maire Exp $
    22#
    33/control/verbose 2
    44/run/verbose 2
    55#
    6 /testem/det/wallMater Water
    7 /testem/det/wallThickness 5 mm
    8 /testem/det/worldRadius   5 mm
     6/testem/phys/addPhysics standard_opt3
    97#
    108/run/initialize
    119#
    12 /process/inactivate msc
    13 /process/eLoss/fluct false
     10/gun/energy 1 MeV
    1411#
    15 /gun/energy 10 keV
    16 /gun/direction 0 1 0
     12/testem/event/printModulo 100000
    1713#
    18 /testem/event/printModulo 20000
    19 #
    20 #/run/beamOn 200000
     14/run/beamOn 1000000
  • trunk/examples/extended/medical/fanoCavity2/fanoCavity2.cc

    r807 r1230  
    2525//
    2626// $Id: fanoCavity2.cc,v 1.2 2007/10/31 16:16:20 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/include/DetectorConstruction.hh

    r807 r1230  
    2525//
    2626// $Id: DetectorConstruction.hh,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/include/DetectorMessenger.hh

    r807 r1230  
    2525//
    2626// $Id: DetectorMessenger.hh,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/include/EventAction.hh

    r807 r1230  
    2525//
    2626// $Id: EventAction.hh,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/include/EventActionMessenger.hh

    r807 r1230  
    2525//
    2626// $Id: EventActionMessenger.hh,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/include/HistoManager.hh

    r807 r1230  
    2525//
    2626// $Id: HistoManager.hh,v 1.3 2007/11/12 18:19:30 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/include/HistoMessenger.hh

    r807 r1230  
    2525//
    2626// $Id: HistoMessenger.hh,v 1.2 2007/11/12 18:19:30 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/include/MyMollerBhabhaModel.hh

    r807 r1230  
    2525//
    2626// $Id: MyMollerBhabhaModel.hh,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
  • trunk/examples/extended/medical/fanoCavity2/include/PhysicsList.hh

    r807 r1230  
    2424// ********************************************************************
    2525//
     26// $Id: PhysicsList.hh,v 1.2 2009/10/31 18:05:56 maire Exp $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2628//
    27 // $Id: PhysicsList.hh,v 1.1 2007/10/15 16:20:23 maire Exp $
    28 // GEANT4 tag $Name:  $
    29 //
    30 //
    31 
    3229//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    3330//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     
    3633#define PhysicsList_h 1
    3734
    38 #include "G4VUserPhysicsList.hh"
     35#include "G4VModularPhysicsList.hh"
    3936#include "globals.hh"
     37
     38class G4VPhysicsConstructor;
    4039
    4140class DetectorConstruction;
     
    4443//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    4544
    46 class PhysicsList: public G4VUserPhysicsList
     45class PhysicsList: public G4VModularPhysicsList
    4746{
    48   public:
    49     PhysicsList(DetectorConstruction*);
    50   ~PhysicsList();
     47public:
     48  PhysicsList(DetectorConstruction*);
     49  virtual ~PhysicsList();
    5150
    52     // Construct particle and physics
    53     void ConstructParticle();
    54     void ConstructProcess();
    55  
    56     void SetCuts();
     51  void ConstructParticle();
     52       
     53  void AddPhysicsList(const G4String& name);   
     54  void ConstructProcess();   
     55  void AddStepMax();
     56 
     57  void SetCuts();     
    5758   
    58     // these methods Construct physics processes and register them
    59     void ConstructEM();
    60     void AddStepMax();
    61    
    62     void SingleCoulombScattering (G4bool);   
    63     void RegisterBrem (G4bool);
    64    
    65   private:
    66     DetectorConstruction*  detector;
    67     G4bool                 singleScattering;       
    68     G4bool                 registerBrem;   
    69     PhysicsListMessenger*  pMessenger;   
     59private:
     60
     61  DetectorConstruction* detector;
     62  PhysicsListMessenger* pMessenger;
     63
     64  G4String emName;
     65  G4VPhysicsConstructor*  emPhysicsList;
    7066};
    7167
     
    7470#endif
    7571
    76 
    77 
  • trunk/examples/extended/medical/fanoCavity2/include/PhysicsListMessenger.hh

    r807 r1230  
    2424// ********************************************************************
    2525//
    26 // $Id: PhysicsListMessenger.hh,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     26// $Id: PhysicsListMessenger.hh,v 1.2 2009/10/31 18:05:56 maire Exp $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     
    3333#define PhysicsListMessenger_h 1
    3434
     35#include "G4UImessenger.hh"
    3536#include "globals.hh"
    36 #include "G4UImessenger.hh"
    3737
    3838class PhysicsList;
    3939class G4UIdirectory;
    40 class G4UIcmdWithABool;
     40class G4UIcmdWithADoubleAndUnit;
     41class G4UIcmdWithAString;
    4142
    4243//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     
    4445class PhysicsListMessenger: public G4UImessenger
    4546{
    46   public: 
     47  public:
     48 
    4749    PhysicsListMessenger(PhysicsList* );
    4850   ~PhysicsListMessenger();
     
    5052    void SetNewValue(G4UIcommand*, G4String);
    5153   
    52   private: 
    53     PhysicsList*        pPhysicsList;   
    54     G4UIdirectory*      physDir;       
    55     G4UIcmdWithABool*   singleScat;     
    56     G4UIcmdWithABool*   brem;   
     54  private:
     55 
     56    PhysicsList*               pPhysicsList;
     57   
     58    G4UIdirectory*             physDir;
     59    G4UIcmdWithAString*        pListCmd;
    5760};
    5861
  • trunk/examples/extended/medical/fanoCavity2/include/PrimaryGeneratorAction.hh

    r807 r1230  
    2525//
    2626// $Id: PrimaryGeneratorAction.hh,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/include/ProcessesCount.hh

    r807 r1230  
    2626//
    2727// $Id: ProcessesCount.hh,v 1.1 2007/10/15 16:20:23 maire Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2929//
    3030//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/include/RunAction.hh

    r807 r1230  
    2525//
    2626// $Id: RunAction.hh,v 1.2 2007/10/31 16:16:20 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/include/StepMax.hh

    r807 r1230  
    2525//
    2626// $Id: StepMax.hh,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/include/StepMaxMessenger.hh

    r807 r1230  
    2525//
    2626// $Id: StepMaxMessenger.hh,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/include/SteppingAction.hh

    r807 r1230  
    2525//
    2626// $Id: SteppingAction.hh,v 1.2 2007/10/31 16:16:20 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/include/SteppingVerbose.hh

    r807 r1230  
    2525//
    2626// $Id: SteppingVerbose.hh,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/include/TrackingAction.hh

    r807 r1230  
    2525//
    2626// $Id: TrackingAction.hh,v 1.2 2007/10/31 16:16:20 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/run01.mac

    r807 r1230  
    1 # $Id: run01.mac,v 1.2 2007/10/31 16:16:20 maire Exp $
     1# $Id: run01.mac,v 1.3 2009/10/31 18:05:56 maire Exp $
    22#
    33/control/verbose 2
    44/run/verbose 2
     5#
     6/testem/phys/addPhysics standard_opt3
    57#
    68/run/initialize
  • trunk/examples/extended/medical/fanoCavity2/src/DetectorConstruction.cc

    r807 r1230  
    2525//
    2626// $Id: DetectorConstruction.cc,v 1.2 2007/11/05 13:19:16 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828
    2929//
  • trunk/examples/extended/medical/fanoCavity2/src/DetectorMessenger.cc

    r807 r1230  
    2525//
    2626// $Id: DetectorMessenger.cc,v 1.2 2007/11/05 13:19:16 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/src/EventAction.cc

    r807 r1230  
    2525//
    2626// $Id: EventAction.cc,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/src/EventActionMessenger.cc

    r807 r1230  
    2525//
    2626// $Id: EventActionMessenger.cc,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/src/HistoManager.cc

    r807 r1230  
    2424// ********************************************************************
    2525//
    26 // $Id: HistoManager.cc,v 1.3 2007/11/12 18:19:30 maire Exp $
    27 // GEANT4 tag $Name: $
     26// $Id: HistoManager.cc,v 1.5 2008/09/28 16:15:39 maire Exp $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     
    5454 
    5555  fileName[0] = "fanocavity2";
    56   fileType    = "hbook";
    57   fileOption  = "--noErrors uncompress"; 
     56  fileType    = "root";
     57  fileOption  = "--noErrors export=root uncompress"; 
    5858  // histograms
    5959  for (G4int k=0; k<MaxHisto; k++) {
     
    224224 if (ih > MaxHisto) {
    225225    G4cout << "---> warning from HistoManager::RemoveHisto() : histo " << ih
    226            << "does not exist" << G4endl;
     226           << "does not exist  (fac = " << fac << ")" << G4endl;
    227227    return;
    228228  }
  • trunk/examples/extended/medical/fanoCavity2/src/HistoMessenger.cc

    r807 r1230  
    2525//
    2626// $Id: HistoMessenger.cc,v 1.2 2007/11/12 18:19:30 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/src/MyMollerBhabhaModel.cc

    r807 r1230  
    2525//
    2626// $Id: MyMollerBhabhaModel.cc,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/src/PhysicsList.cc

    r807 r1230  
    2424// ********************************************************************
    2525//
     26// $Id: PhysicsList.cc,v 1.7 2009/10/31 18:05:01 maire Exp $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2628//
    27 // $Id: PhysicsList.cc,v 1.1 2007/10/15 16:20:23 maire Exp $
    28 // GEANT4 tag $Name:  $
    29 //
    30 
    3129//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    3230//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     
    3432#include "PhysicsList.hh"
    3533#include "PhysicsListMessenger.hh"
    36 #include "DetectorConstruction.hh"
     34
     35#include "PhysListEmStandard_option0.hh"
     36#include "PhysListEmStandard_option3.hh"
     37#include "PhysListEmStandard_GS.hh"
     38#include "PhysListEmStandard_SS.hh"
     39
     40#include "StepMax.hh"
    3741
    3842#include "G4ParticleDefinition.hh"
    39 #include "G4ParticleTypes.hh"
    40 #include "G4ParticleTable.hh"
    4143
    4244#include "G4ProcessManager.hh"
    4345#include "G4LossTableManager.hh"
    4446
     47// Bosons
     48#include "G4ChargedGeantino.hh"
     49#include "G4Geantino.hh"
     50#include "G4Gamma.hh"
     51
     52// leptons
     53#include "G4Electron.hh"
     54#include "G4Positron.hh"
     55
     56// Hadrons
     57#include "G4Proton.hh"
     58
     59
    4560//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    4661
    4762PhysicsList::PhysicsList(DetectorConstruction* det)
    48 : G4VUserPhysicsList(), detector(det)
     63: G4VModularPhysicsList(), detector(det)
    4964{
    50   defaultCutValue = 10.*km;
    51   singleScattering = false;
    52   registerBrem = false;
    53   pMessenger = new PhysicsListMessenger(this);
    54   SetVerboseLevel(1);
     65  G4LossTableManager::Instance();
     66  pMessenger = new PhysicsListMessenger(this);
     67   
     68  // EM physics
     69  emName = G4String("standard_opt3");
     70  emPhysicsList = new PhysListEmStandard_option3(emName,detector);
     71     
     72  defaultCutValue = 10*km;
     73
     74  SetVerboseLevel(1); 
    5575 
    56   G4LossTableManager::Instance(); 
     76  G4LossTableManager::Instance();
    5777}
    5878
     
    6080
    6181PhysicsList::~PhysicsList()
    62 { delete pMessenger; }
     82{
     83  delete emPhysicsList;
     84  delete pMessenger; 
     85}
    6386
    6487//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     
    6689void PhysicsList::ConstructParticle()
    6790{
     91  // pseudo-particles
    6892  G4Geantino::GeantinoDefinition();
     93  G4ChargedGeantino::ChargedGeantinoDefinition();
     94 
     95  // gamma
    6996  G4Gamma::GammaDefinition();
    70 
     97 
     98  // leptons
    7199  G4Electron::ElectronDefinition();
    72100  G4Positron::PositronDefinition();
    73101
    74   G4Proton::ProtonDefinition();
     102  // baryons
     103  G4Proton::ProtonDefinition(); 
    75104}
    76105
     
    80109{
    81110  AddTransportation();
    82   ConstructEM();
     111  emPhysicsList->ConstructProcess();
     112
    83113  AddStepMax();
    84114}
    85115
    86116//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    87 
    88 #include "G4ComptonScattering.hh"
    89 #include "G4GammaConversion.hh"
    90 #include "G4PhotoElectricEffect.hh"
    91 
    92 #include "G4MultipleScattering.hh"
    93 #include "G4CoulombScattering.hh"
    94 
    95 #include "G4eIonisation.hh"
    96 #include "MyMollerBhabhaModel.hh"
    97 #include "G4eBremsstrahlung.hh"
    98 #include "G4eplusAnnihilation.hh"
    99 
    100 #include "G4hIonisation.hh"
    101 
    102 #include "G4EmProcessOptions.hh"
    103 #include "G4MscStepLimitType.hh"
    104 
    105 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    106 
    107 
    108 void PhysicsList::ConstructEM()
    109 {
    110   theParticleIterator->reset();
    111   while( (*theParticleIterator)() ){
    112     G4ParticleDefinition* particle = theParticleIterator->value();
    113     G4ProcessManager* pmanager = particle->GetProcessManager();
    114     G4String particleName = particle->GetParticleName();
    115     G4int iAlong = 0, iPost = 0;
    116      
    117     if (particleName == "gamma") {
    118                  
    119       pmanager->AddDiscreteProcess(new G4PhotoElectricEffect);
    120       pmanager->AddDiscreteProcess(new G4ComptonScattering);         
    121       pmanager->AddDiscreteProcess(new G4GammaConversion);
    122      
    123     } else if (particleName == "e-") {
    124 
    125       if (singleScattering)
    126         pmanager->AddProcess(new G4CoulombScattering,  -1, -1,       ++iPost);
    127         else   
    128         pmanager->AddProcess(new G4MultipleScattering, -1, ++iAlong, ++iPost);
    129      
    130       G4eIonisation* eIoni = new G4eIonisation();
    131       eIoni->SetEmModel(new MyMollerBhabhaModel);             
    132       pmanager->AddProcess(eIoni,                      -1, ++iAlong, ++iPost);
    133      
    134       if (registerBrem)
    135         pmanager->AddProcess(new G4eBremsstrahlung,    -1, ++iAlong, ++iPost);     
    136        
    137     } else if (particleName == "e+") {
    138    
    139       if (singleScattering)
    140         pmanager->AddProcess(new G4CoulombScattering,  -1, -1,       ++iPost);
    141         else   
    142         pmanager->AddProcess(new G4MultipleScattering, -1, ++iAlong, ++iPost);
    143      
    144       G4eIonisation* pIoni = new G4eIonisation();
    145       pIoni->SetEmModel(new MyMollerBhabhaModel);                   
    146       pmanager->AddProcess(pIoni,                      -1, ++iAlong, ++iPost);
    147      
    148       if (registerBrem) {
    149         pmanager->AddProcess(new G4eBremsstrahlung,    -1, ++iAlong, ++iPost);
    150         pmanager->AddProcess(new G4eplusAnnihilation,   0, -1,       ++iPost);
    151       }
    152      
    153     } else if (particleName == "proton") {
    154    
    155       if (singleScattering)
    156         pmanager->AddProcess(new G4CoulombScattering,  -1, -1,       ++iPost);
    157         else   
    158         pmanager->AddProcess(new G4MultipleScattering, -1, ++iAlong, ++iPost);
    159        
    160       pmanager->AddProcess(new G4hIonisation,          -1, ++iAlong, ++iPost);
    161     }
    162   }
    163  
    164   // Em options
    165   //
    166   G4EmProcessOptions emOptions;
    167  
    168   //multiple scattering
    169   //
    170   emOptions.SetMscStepLimitation(fUseDistanceToBoundary);
    171   emOptions.SetSkin(2.);
    172  
    173   //physics tables
    174   //
    175   emOptions.SetMinEnergy(100*eV);   
    176   emOptions.SetMaxEnergy(10*GeV); 
    177   emOptions.SetDEDXBinning(800); 
    178   emOptions.SetLambdaBinning(800);
    179  
    180   //energy loss
    181   // 
    182   emOptions.SetStepFunction(0.2, 10*um);
    183   emOptions.SetLinearLossLimit(1.e-6);
    184          
    185   //build CSDA range
    186   //
    187   emOptions.SetBuildCSDARange(true);
    188   emOptions.SetMaxEnergyForCSDARange(10*GeV); 
    189   emOptions.SetDEDXBinningForCSDARange(800);   
    190 }
    191 
    192 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    193 
    194 #include "StepMax.hh"
    195117
    196118void PhysicsList::AddStepMax()
     
    204126      G4ProcessManager* pmanager = particle->GetProcessManager();
    205127
    206       if (stepMaxProcess->IsApplicable(*particle))
     128      if (stepMaxProcess->IsApplicable(*particle) && !particle->IsShortLived())
    207129        {
    208130          pmanager ->AddDiscreteProcess(stepMaxProcess);
    209131        }
     132  }
     133}
     134
     135//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     136
     137void PhysicsList::AddPhysicsList(const G4String& name)
     138{
     139  if (verboseLevel>-1) {
     140    G4cout << "PhysicsList::AddPhysicsList: <" << name << ">" << G4endl;
     141  }
     142
     143  if (name == emName) return;
     144
     145  if (name == "standard_opt0") {
     146
     147    emName = name;
     148    delete emPhysicsList;
     149    emPhysicsList = new PhysListEmStandard_option0(name,detector);
     150   
     151  } else if (name == "standard_opt3") {
     152
     153    emName = name;
     154    delete emPhysicsList;
     155    emPhysicsList = new PhysListEmStandard_option3(name,detector);
     156   
     157  } else if (name == "standard_GS") {
     158
     159    emName = name;
     160    delete emPhysicsList;
     161    emPhysicsList = new PhysListEmStandard_GS(name,detector);   
     162   
     163  } else if (name == "standard_SS") {
     164
     165    emName = name;
     166    delete emPhysicsList;
     167    emPhysicsList = new PhysListEmStandard_SS(name,detector);   
     168  } else {
     169
     170    G4cout << "PhysicsList::AddPhysicsList: <" << name << ">"
     171           << " is not defined"
     172           << G4endl;
    210173  }
    211174}
     
    227190  SetCutValue(defaultCutValue, "e-");
    228191  SetCutValue(defaultCutValue, "e+");
     192  SetCutValue(defaultCutValue, "proton"); 
    229193}
    230194
    231195//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    232 
    233 void PhysicsList::SingleCoulombScattering(G4bool flag)
    234 {
    235   singleScattering = flag;
    236 }
    237 
    238 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    239 
    240 void PhysicsList::RegisterBrem(G4bool flag)
    241 {
    242   registerBrem = flag;
    243 }
    244 
    245 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    246 
    247 
    248 
    249 
  • trunk/examples/extended/medical/fanoCavity2/src/PhysicsListMessenger.cc

    r807 r1230  
    2424// ********************************************************************
    2525//
    26 // $Id: PhysicsListMessenger.cc,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     26// $Id: PhysicsListMessenger.cc,v 1.2 2009/10/31 18:05:01 maire Exp $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     
    3434#include "PhysicsList.hh"
    3535#include "G4UIdirectory.hh"
    36 #include "G4UIcmdWithABool.hh"
     36#include "G4UIcmdWithADoubleAndUnit.hh"
     37#include "G4UIcmdWithAString.hh"
    3738
    3839//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     
    4041PhysicsListMessenger::PhysicsListMessenger(PhysicsList* pPhys)
    4142:pPhysicsList(pPhys)
    42 {
     43{ 
    4344  physDir = new G4UIdirectory("/testem/phys/");
    4445  physDir->SetGuidance("physics list commands");
    45  
    46   singleScat = new G4UIcmdWithABool("/testem/phys/singleScattering",this);
    47   singleScat->SetGuidance("apply single Coulomb scattering process");
    48   singleScat->SetParameterName("flag",true);
    49   singleScat->SetDefaultValue(true);
    50   singleScat->AvailableForStates(G4State_PreInit);
    51        
    52   brem = new G4UIcmdWithABool("/testem/phys/registerBrem",this);
    53   brem->SetGuidance("register Brems in PhysicsList");
    54   brem->SetParameterName("flag",true);
    55   brem->SetDefaultValue(true);
    56   brem->AvailableForStates(G4State_PreInit);   
     46
     47  pListCmd = new G4UIcmdWithAString("/testem/phys/addPhysics",this); 
     48  pListCmd->SetGuidance("Add modula physics list.");
     49  pListCmd->SetParameterName("PList",false);
     50  pListCmd->AvailableForStates(G4State_PreInit);
    5751}
    5852
     
    6155PhysicsListMessenger::~PhysicsListMessenger()
    6256{
    63   delete singleScat;
    64   delete brem;
    65   delete physDir;   
     57  delete pListCmd;
     58  delete physDir;
    6659}
    6760
     
    7063void PhysicsListMessenger::SetNewValue(G4UIcommand* command,
    7164                                          G4String newValue)
    72 
    73   if (command == singleScat)
    74    {pPhysicsList->SingleCoulombScattering(singleScat->GetNewBoolValue(newValue));}
    75            
    76   if (command == brem)
    77    {pPhysicsList->RegisterBrem(brem->GetNewBoolValue(newValue));}     
     65{           
     66  if( command == pListCmd )
     67   { pPhysicsList->AddPhysicsList(newValue);}
    7868}
    7969
  • trunk/examples/extended/medical/fanoCavity2/src/PrimaryGeneratorAction.cc

    r807 r1230  
    2525//
    2626// $Id: PrimaryGeneratorAction.cc,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/src/RunAction.cc

    r807 r1230  
    2525//
    2626// $Id: RunAction.cc,v 1.3 2007/11/05 13:19:16 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/src/StepMax.cc

    r807 r1230  
    2525//
    2626// $Id: StepMax.cc,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/src/StepMaxMessenger.cc

    r807 r1230  
    2525//
    2626// $Id: StepMaxMessenger.cc,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/src/SteppingAction.cc

    r807 r1230  
    2525//
    2626// $Id: SteppingAction.cc,v 1.2 2007/10/31 16:16:20 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/src/SteppingVerbose.cc

    r807 r1230  
    2525//
    2626// $Id: SteppingVerbose.cc,v 1.1 2007/10/15 16:20:23 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/src/TrackingAction.cc

    r807 r1230  
    2525//
    2626// $Id: TrackingAction.cc,v 1.2 2007/10/31 16:16:20 maire Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2828//
    2929//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/examples/extended/medical/fanoCavity2/stepfunction.mac

    r807 r1230  
    1 # $Id: stepfunction.mac,v 1.1 2007/10/15 16:29:06 maire Exp $
     1# $Id: stepfunction.mac,v 1.2 2009/10/31 18:05:56 maire Exp $
    22#
    33/control/verbose 2
    44/run/verbose 2
     5#
     6/testem/phys/addPhysics standard_opt3
    57#
    68/run/initialize
Note: See TracChangeset for help on using the changeset viewer.