Ignore:
Timestamp:
Sep 30, 2010, 2:47:17 PM (14 years ago)
Author:
garnier
Message:

tag geant4.9.4 beta 1 + modifs locales

Location:
trunk/examples/extended/hadronic/Hadr01
Files:
35 edited

Legend:

Unmodified
Added
Removed
  • trunk/examples/extended/hadronic/Hadr01/GNUmakefile

    r1230 r1337  
    1 # $Id: GNUmakefile,v 1.8 2008/06/13 15:41:34 vnivanch Exp $
    2 # GEANT4 tag $Name: geant4-09-03-cand-01 $
     1# $Id: GNUmakefile,v 1.9 2010/01/11 16:41:02 gcosmo Exp $
     2# GEANT4 tag $Name: geant4-09-04-beta-01 $
    33# --------------------------------------------------------------
    44# GNUmakefile for examples module with AIDA interface
     
    1010
    1111ifndef G4INSTALL
    12   G4INSTALL = ../../../
     12  G4INSTALL = ../../../..
    1313endif
    1414
  • trunk/examples/extended/hadronic/Hadr01/History

    r807 r1337  
    1 $Id: History,v 1.23 2007/12/12 12:00:23 vnivanch Exp $
     1$Id: History,v 1.39 2010/06/11 17:01:26 vnivanch Exp $
    22-------------------------------------------------------------------
    33
     
    1515     * Reverse chronological order (last date on top), please *
    1616     ----------------------------------------------------------
     17
     1811-06-10  V.Ivant (exhadr01-V09-03-06)
     19- Fixed memory leak at destruction
     20- Cleanup PhysList according to update of physics_list library
     21
     2206-06-10 J.Perl (exhadr01-V09-03-05)
     23- Remove unused variable in EventAction
     24
     2504-06-10 J.Perl (exhadr01-V09-03-04)
     26- Updated vis usage
     27
     2826-05-10 J.Allsion (exhadr01-V09-03-03)
     29- Introduced G4UIExecutive.
     30
     3126-05-10 J.Allsion (exhadr01-V09-03-02)
     32- Tag name spoiled by finger trouble in tags database..
     33
     3413-01-10  V.Ivant (exhadr01-V09-03-01)
     35- Fixed problem of counting of particles leaked from the target
     36
     3729-12-09  V.Ivant (exhadr01-V09-03-00)
     38- When PhysList defined via PHYSLIST environment variable still
     39  make local PhysList messenger available to avoid crash in old macro
     40
     4125-09-09  V.Ivant (exhadr01-V09-02-03)
     42- Update Physics List choices according to 9.3 configurations
     43
     4402-09-09  V.Ivant (exhadr01-V09-02-02)
     45- Added histograms on energy depositions: total, electromagnetic,
     46  pion, proton
     47
     4823-06-09  V.Ivant (exhadr01-V09-02-01)
     49- FB68 substituted by FTFP_BERT_TRV
     50
     5115-05-09  V.Ivant (exhadr01-V09-02-00)
     52- update to physics_lists lists
     53
     5420-11-08  V.Ivant (exhadr01-V09-01-04)
     55- added charge exchange
     56
     5717-09-08  V.Ivant (exhadr01-V09-01-03)
     58- improved Physics List output
     59
     6025-06-08  V.Ivant (exhadr01-V09-01-02)
     61
     6213-06-08  V.Ivant (exhadr01-V09-01-01)
     63- remove usage of AIDA in GNUmakefile
     64- added FTF_BIC Physics Lists
     65
     6619-05-08  V.Ivant (exhadr01-V09-01-00)
     67- remove usage of obsolete G4HadronProcessStore
    1768
    186912-12-07  V.Ivant (exhadr01-V09-00-03)
  • trunk/examples/extended/hadronic/Hadr01/README

    r807 r1337  
    1515simulation of proton or ion beam interaction with a water target. Different
    1616aspects of beam target interaction are demonstrating in the example including
    17 logitudinal profile of energy deposition, spectra of secondary  particles,
     17longitudinal profile of energy deposition, spectra of secondary  particles,
    1818spectra of particles leaving the target. The results are presenting in a form
    1919of average numbers and histograms.
     
    2222                           GEOMETRY
    2323
    24 The Target volume is a cilinder placed inside Check cilindrical volume. The
     24The Target volume is a cylinder placed inside Check cylindrical volume. The
    2525Check volume is placed inside the World volume. The radius and the length of
    26 the Check volume are 1 mm larger than the radiaus and the length of the Target.
     26the Check volume are 1 mm larger than the radius and the length of the Target.
    2727The material of the Check volume is the same as the World material.  The World
    28 volume has the sizes 10 mm larger than that of the Target volume.  Any naterial
     28volume has the sizes 10 mm larger than that of the Target volume.  Any material
    2929from the Geant4 database can be defined. The default World  material is
    3030G4Galactic and the default  Target material is aluminum. The Target is
    31 subdivided on number of equal slices. Follwoing UI commands are available to
     31subdivided on number of equal slices. Following UI commands are available to
    3232modify the geometry:
    3333
     
    3838/testhadr/NumberDivZ    200
    3939
    40 If geometry was changed between two runs, then the follwoing command need to
     40If geometry was changed between two runs, then the following command need to
    4141be executed:
    4242
    4343/testhadr/Update
    4444
    45 Beam direction coinsides with the target axis and is Z axis in the global
     45Beam direction coincides with the target axis and is Z axis in the global
    4646coordinate system. The beam starts 5 mm in front of the target. G4ParticleGun
    4747is used as a primary generator. The energy and the type of the beam can be
     
    8484
    8585PhysicsList of the application uses components, which are distributed with
    86 Geant4 in /geant4/physics_lists subdirectory. So, before compiling hadro01 it
    87 is necessary to compile physics_lists
     86Geant4 in /geant4/physics_lists subdirectory.
    8887
    89 The choice of the physics is provided by the UI command:
     88There is a possibility directly use one of reference Physics Lists if
     89using the environment variable PHYSLIST. Alternatively the name of the reference
     90Physics List can be given via parameter of the the application as following:
    9091
    91 /testhadr/Physics     QGSP
     92$G4BIN/Linux++/hadr01 QGSP_BERT my.macro
    9293
    93 The command
     94Finally it is possible to use UI commands (PHYSLIST environment variable is not
     95defined). The choice of the physics is provided by the UI command:
    9496
    95 /testhadr/Physics     PHYSLIST
     97/testhadr/Physics     QGSP_BIC
    9698
    97 allows allows to download a physics configuration defined by an environment
    98 variable PHYSLIST.
    99 
    100 To see the list of available configurations one can use
     99To see the list of available configurations with UI one can use
    101100
    102101/testhadr/ListPhysics
    103102
    104 The cuts for electromagnetic phsyics can be established via
     103The cuts for electromagnetic physics can be established via
    105104
    106105/testhadr/CutsAll       1 mm
     
    109108/testhadr/CutsPos     0.3 mm
    110109
     110Note that testhadr UI commands are not available in the case when PHYSLIST
     111environment variable is defined.
    111112
    112                           VISUALISATION
     113
     114                          VISUALIZATION
    113115
    114116For interactive mode G4 visualization options and variables should be
     
    166168subdirectory.
    167169
    168 To show the contence of a histogram ID=i the commands may be applied:
     170To show the content of a histogram ID=i the commands may be applied:
    169171
    170172/testhadr/HistoPrint  i
    171173
    172 All histograms are normalised to the number of events.
     174All histograms are normalized to the number of events.
  • trunk/examples/extended/hadronic/Hadr01/hadr01.cc

    r1230 r1337  
    2525//
    2626//
    27 // $Id: hadr01.cc,v 1.9 2006/11/24 16:48:57 vnivanch Exp $
    28 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// $Id: hadr01.cc,v 1.12 2010/05/26 11:53:40 allison Exp $
     28// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2929//
    3030// -------------------------------------------------------------
     
    3737//
    3838//  Modified:
     39//  29.12.2009 V.Ivanchenko introduced access to reference PhysLists
    3940//
    4041// -------------------------------------------------------------
     
    4647#include "G4RunManager.hh"
    4748#include "G4UImanager.hh"
    48 #include "G4UIterminal.hh"
    49 #include "G4UItcsh.hh"
    5049#include "Randomize.hh"
    5150
    5251#include "DetectorConstruction.hh"
    5352#include "PhysicsList.hh"
    54 #include "QBBC.hh"
    55 #include "QGSP.hh"
     53#include "G4PhysListFactory.hh"
     54#include "G4VModularPhysicsList.hh"
    5655#include "PrimaryGeneratorAction.hh"
     56#include "PhysicsListMessenger.hh"
    5757
    5858#include "RunAction.hh"
     
    6060#include "StackingAction.hh"
    6161
     62#ifdef G4VIS_USE
    6263#include "G4VisExecutive.hh"
     64#endif
     65
     66#ifdef G4UI_USE
     67#include "G4UIExecutive.hh"
     68#endif
    6369
    6470//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     
    7581  runManager->SetUserInitialization(new DetectorConstruction());
    7682
    77   runManager->SetUserInitialization(new PhysicsList);
    78   //runManager->SetUserInitialization(new QBBC(1,"QBEC_HP"));
    79   //runManager->SetUserInitialization(new QGSP);
     83  G4PhysListFactory factory;
     84  G4VModularPhysicsList* phys = 0;
     85  PhysicsListMessenger* mess = 0;
     86  G4String physName = "";
    8087
     88  // Physics List name defined via 2nd argument
     89  if (argc==3) { physName = argv[2]; }
     90
     91  // Physics List name defined via environment variable
     92  char* path = getenv("PHYSLIST");
     93  if (path) { physName = G4String(path); }
     94
     95  // reference PhysicsList via its name
     96  if(factory.IsReferencePhysList(physName)) {
     97    phys = factory.GetReferencePhysList(physName);
     98    mess = new PhysicsListMessenger();
     99  }
     100
     101  // local Physics List
     102  if(!phys) { phys = new PhysicsList(); }
     103
     104  // define physics
     105  runManager->SetUserInitialization(phys);
    81106  runManager->SetUserAction(new PrimaryGeneratorAction());
    82107
     
    87112
    88113  //get the pointer to the User Interface manager
    89   G4UImanager* UI = G4UImanager::GetUIpointer();
     114  G4UImanager* UImanager = G4UImanager::GetUIpointer();
    90115  G4VisManager* visManager = 0;
    91116
     
    97122      visManager->Initialize();
    98123#endif
    99       G4UIsession* session = 0;
    100 #ifdef G4UI_USE_TCSH
    101       session = new G4UIterminal(new G4UItcsh);
    102 #else
    103       session = new G4UIterminal();
     124#ifdef G4UI_USE
     125      G4UIExecutive* ui = new G4UIExecutive(argc, argv);
     126      ui->SessionStart();
     127      delete ui;
    104128#endif
    105       session->SessionStart();
    106       delete session;
    107129    }
    108130  else           // Batch mode
    109131    {
    110      G4String command = "/control/execute ";
    111      G4String fileName = argv[1];
    112      UI->ApplyCommand(command+fileName);
     132      G4String command = "/control/execute ";
     133      G4String fileName = argv[1];
     134      UImanager->ApplyCommand(command+fileName);
    113135    }
    114136
    115137  //job termination
    116   if(visManager) delete visManager;
     138  delete visManager;
    117139  delete runManager;
     140  delete mess;
    118141
    119142  return 0;
  • trunk/examples/extended/hadronic/Hadr01/hadr01.out

    r807 r1337  
     1
     2        ############################################
     3        !!! WARNING - FPE detection is activated !!!
     4        ############################################
    15
    26*************************************************************
    3  Geant4 version Name: global-V09-00-03    (9-May-2008)
     7 Geant4 version Name: geant4-09-03-ref-06    (25-June-2010)
    48                      Copyright : Geant4 Collaboration
    59                      Reference : NIM A 506 (2003), 250-303
     
    1923/testhadr/Physics QBBC
    2024PhysicsList::AddPhysicsList: <QBBC>
    21 ### HadronInelasticQBBC
     25PhysicsList::AddPhysicsList: <emstandard_opt2>
    2226#
    2327/run/initialize
     
    2630***** Table : Nb of materials = 2 *****
    2731
    28  Material:    G4_Al     density:  2.699 g/cm3   RadL:   8.896 cm   Imean: 166.000 eV
     32 Material:    G4_Al     density:  2.699 g/cm3   RadL:   8.896 cm   Nucl.Int.Length:  38.877 cm   Imean: 166.000 eV
    2933   --->  Element: Al (Al)   Z = 13.0   N =  27.0   A =  26.98 g/mole
    30    --->  Isotope:    Al   Z = 13   N =  27   A =  26.98 g/mole   abundance: 100.00 %  ElmMassFraction: 100.00 %  ElmAbundance 100.00 %
    31 
    32  Material: G4_Galactic     density:  0.000 mg/cm3  RadL: 204311173.221 pc   Imean:  21.800 eV   temperature:   2.73 K  pressure:   0.00 atm
     34   --->  Isotope:  Al27   Z = 13   N =  27   A =  26.98 g/mole   abundance: 100.00 %  ElmMassFraction: 100.00 %  ElmAbundance 100.00 %
     35
     36 Material: G4_Galactic     density:  0.000 kg/m3   RadL: 204310101.835 pc   Nucl.Int.Length: 114319208.901 pc   Imean:  21.800 eV   temperature:   2.73 K  pressure:   0.00 atm
    3337   --->  Element: H (H)   Z =  1.0   N =   1.0   A =   1.01 g/mole
    34    --->  Isotope:     H   Z =  1   N =   1   A =   1.01 g/mole   abundance:  99.99 %
    35    --->  Isotope:     H   Z =  1   N =   2   A =   2.01 g/mole   abundance:   0.01 %  ElmMassFraction: 100.00 %  ElmAbundance 100.00 %
    36 
    37 
    38 Thank you for using G4BinaryCascade.
    39 ### Adding Neutron tracking cut for neutron
    40 ###  cut value is 10 microseconds
    41 Thank you for using G4BinaryCascade.
    42 Thank you for using G4BinaryCascade.
    43 ===========================================================================================
    44 
    45        Hadronic Processes for anti_neutron
    46   hElastic           Models:     elastic      Emin(GeV)=     0      Emax(GeV)=  100000
    47 hInelastic           Models:         FTF      Emin(GeV)=     6      Emax(GeV)=  100000
    48                                    CHIPS      Emin(GeV)=     0      Emax(GeV)=       9
    49 
    50        Hadronic Processes for anti_proton
    51   hElastic           Models:     elastic      Emin(GeV)=     0      Emax(GeV)=  100000
    52 hInelastic           Models:         FTF      Emin(GeV)=     6      Emax(GeV)=  100000
    53                                    CHIPS      Emin(GeV)=     0      Emax(GeV)=       9
    54 
    55        Hadronic Processes for kaon+
    56   hElastic           Models:     elastic      Emin(GeV)=     0      Emax(GeV)=  100000
    57 hInelastic           Models:         FTF      Emin(GeV)=     6      Emax(GeV)=  100000
    58                                  Bertini      Emin(GeV)=     0      Emax(GeV)=       9
    59 
    60        Hadronic Processes for kaon-
    61   hElastic           Models:     elastic      Emin(GeV)=     0      Emax(GeV)=  100000
    62 hInelastic           Models:         FTF      Emin(GeV)=     6      Emax(GeV)=  100000
    63                                  Bertini      Emin(GeV)=     0      Emax(GeV)=       9
    64 
    65        Hadronic Processes for lambda
    66   hElastic           Models:     elastic      Emin(GeV)=     0      Emax(GeV)=  100000
    67 hInelastic           Models:         FTF      Emin(GeV)=     6      Emax(GeV)=  100000
    68                                  Bertini      Emin(GeV)=     0      Emax(GeV)=       9
    69 
    70        Hadronic Processes for neutron
    71   hElastic           Models:     elastic      Emin(GeV)=     0      Emax(GeV)=  100000
    72 hInelastic           Models:         QGS      Emin(GeV)=     6      Emax(GeV)=  100000
    73                                   Binary      Emin(GeV)=     0      Emax(GeV)=       9
    74   nCapture           Models:    LCapture      Emin(GeV)=     0      Emax(GeV)= 1.79769e+305
    75   nFission           Models:    LFission      Emin(GeV)=     0      Emax(GeV)= 1.79769e+305
    76 
    77        Hadronic Processes for pi+
    78   hElastic           Models:     elastic      Emin(GeV)=     0      Emax(GeV)=  100000
    79 hInelastic           Models:         QGS      Emin(GeV)=     6      Emax(GeV)=  100000
    80                                  Bertini      Emin(GeV)=     0      Emax(GeV)=       9
    81 
    82        Hadronic Processes for pi-
    83   hElastic           Models:     elastic      Emin(GeV)=     0      Emax(GeV)=  100000
    84 hInelastic           Models:         QGS      Emin(GeV)=     6      Emax(GeV)=  100000
    85                                  Bertini      Emin(GeV)=     0      Emax(GeV)=       9
    86 
    87        Hadronic Processes for proton
    88   hElastic           Models:     elastic      Emin(GeV)=     0      Emax(GeV)=  100000
    89 hInelastic           Models:         QGS      Emin(GeV)=     6      Emax(GeV)=  100000
    90                                   Binary      Emin(GeV)=     0      Emax(GeV)=       9
    91 ===========================================================================================
    92 PhysicsList::SetCuts:CutLength : 1 mm
     38   --->  Isotope:    H1   Z =  1   N =   1   A =   1.01 g/mole   abundance:  99.99 %
     39   --->  Isotope:    H2   Z =  1   N =   2   A =   2.01 g/mole   abundance:   0.01 %  ElmMassFraction: 100.00 %  ElmAbundance 100.00 %
     40
     41
     42### Adding tracking cuts for neutron  TimeCut(ns)= 10000  KinEnergyCut(MeV)= 0
     43G4NeutronInelasticXS::G4NeutronInelasticXS: Initialise
     44G4NeutronCaptureXS::G4NeutronCaptureXS: Initialise
     45PhysicsList::SetCuts:CutLength : 700 um
    9346#
    9447/gun/particle proton
     
    9649/run/beamOn 100
    9750
    98 G4UHadronElasticProcess for neutron PDGcode= 2112  Elow(MeV)= 19  Elowest(eV)= 0
     51phot:   for  gamma, applyCuts: 1     SubType= 12
     52      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     53       PhotoElectric :     Emin=          0 eV         Emax=   10 TeV
     54
     55compt:   for  gamma, applyCuts: 1     SubType= 13
     56      Lambda tables from 100 eV  to 10 TeV in 77 bins, spline: 1
     57      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     58       Klein-Nishina :     Emin=          0 eV         Emax=   10 TeV
     59
     60conv:   for  gamma, applyCuts: 1     SubType= 14
     61      Lambda tables from 1.022 MeV to 10 TeV in 77 bins, spline: 1
     62      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     63       Bethe-Heitler :     Emin=          0 eV         Emax=   10 TeV
     64
     65msc:   for e-    SubType= 10
     66      Lambda tables from 100 eV  to 10 TeV in 77 bins, spline: 1
     67      RangeFactor= 0.04, stepLimitType: 1, latDisplacement: 1
     68      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     69        WentzelVIUni :     Emin=          0 eV         Emax=   10 TeV
     70
     71eIoni:   for  e-    SubType= 2
     72      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     73      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     74      finalRange(mm)= 1, dRoverRange= 0.2, integral: 1, fluct: 1, linLossLimit= 0.01
     75      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     76        MollerBhabha :     Emin=          0 eV         Emax=   10 TeV
     77
     78eBrem:   for  e-    SubType= 3
     79      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     80      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     81      LPM flag: 1 for E > 1 GeV
     82      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     83               eBrem :     Emin=          0 eV         Emax=   1 GeV
     84            eBremRel :     Emin=          1 GeV        Emax=   10 TeV
     85
     86CoulombScat:   for  e-, applyCuts: 1     SubType= 1
     87      Lambda tables from 100 eV  to 10 TeV in 77 bins, spline: 1
     88      11.4592 < Theta(degree) < 180, Eth(MeV)= 10000; pLimit(GeV^1)= 0.139531
     89      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     90  eCoulombScattering :     Emin=          0 eV         Emax=   10 TeV
     91
     92eIoni:   for  e+    SubType= 2
     93      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     94      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     95      finalRange(mm)= 1, dRoverRange= 0.2, integral: 1, fluct: 1, linLossLimit= 0.01
     96      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     97        MollerBhabha :     Emin=          0 eV         Emax=   10 TeV
     98
     99eBrem:   for  e+    SubType= 3
     100      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     101      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     102      LPM flag: 1 for E > 1 GeV
     103      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     104               eBrem :     Emin=          0 eV         Emax=   1 GeV
     105            eBremRel :     Emin=          1 GeV        Emax=   10 TeV
     106
     107annihil:   for  e+, applyCuts: 1     SubType= 5
     108      Lambda tables from 100 eV  to 10 TeV in 77 bins, spline: 1
     109      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     110            eplus2gg :     Emin=          0 eV         Emax=   10 TeV
     111
     112CoulombScat:   for  e+, applyCuts: 1     SubType= 1
     113      Lambda tables from 100 eV  to 10 TeV in 77 bins, spline: 1
     114      11.4592 < Theta(degree) < 180, Eth(MeV)= 10000; pLimit(GeV^1)= 0.139531
     115      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     116  eCoulombScattering :     Emin=          0 eV         Emax=   10 TeV
     117
     118msc:   for proton    SubType= 10
     119      Lambda tables from 100 eV  to 10 TeV in 77 bins, spline: 1
     120      RangeFactor= 0.2, stepLimitType: 0, latDisplacement: 1
     121      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     122          UrbanMsc90 :     Emin=          0 eV         Emax=   10 TeV
     123
     124hIoni:   for  proton    SubType= 2
     125      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     126      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     127      finalRange(mm)= 1, dRoverRange= 0.2, integral: 1, fluct: 1, linLossLimit= 0.01
     128      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     129               Bragg :     Emin=          0 eV         Emax=   2 MeV
     130          BetheBloch :     Emin=          2 MeV        Emax=   10 TeV
     131
     132hBrems:   for  proton    SubType= 3
     133      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     134      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     135      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     136               hBrem :     Emin=          0 eV         Emax=   10 TeV
     137
     138hPairProd:   for  proton    SubType= 4
     139      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     140      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     141      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     142           hPairProd :     Emin=          0 eV         Emax=   10 TeV
     143
     144msc:   for GenericIon    SubType= 10
     145      RangeFactor= 0.2, stepLimitType: 0, latDisplacement: 0
     146      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     147          UrbanMsc90 :     Emin=          0 eV         Emax=   10 TeV
     148
     149ionIoni:   for  GenericIon    SubType= 2
     150      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     151      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     152      finalRange(mm)= 0.1, dRoverRange= 0.1, integral: 1, fluct: 1, linLossLimit= 0.02
     153      Stopping Power data for 17 ion/material pairs, nuclearStopping: 1
     154      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     155            BraggIon :     Emin=          0 eV         Emax=   2 MeV
     156          BetheBloch :     Emin=          2 MeV        Emax=   10 TeV
     157
     158hIoni:   for  anti_proton    SubType= 2
     159      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     160      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     161      finalRange(mm)= 1, dRoverRange= 0.2, integral: 1, fluct: 1, linLossLimit= 0.01
     162      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     163            ICRU73QO :     Emin=          0 eV         Emax=   2 MeV
     164          BetheBloch :     Emin=          2 MeV        Emax=   10 TeV
     165
     166hIoni:   for  kaon+    SubType= 2
     167      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     168      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     169      finalRange(mm)= 1, dRoverRange= 0.2, integral: 1, fluct: 1, linLossLimit= 0.01
     170      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     171               Bragg :     Emin=          0 eV         Emax=   1.05231 MeV
     172          BetheBloch :     Emin=    1.05231 MeV        Emax=   10 TeV
     173
     174hBrems:   for  kaon+    SubType= 3
     175      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     176      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     177      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     178               hBrem :     Emin=          0 eV         Emax=   10 TeV
     179
     180hPairProd:   for  kaon+    SubType= 4
     181      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     182      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     183      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     184           hPairProd :     Emin=          0 eV         Emax=   10 TeV
     185
     186hIoni:   for  kaon-    SubType= 2
     187      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     188      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     189      finalRange(mm)= 1, dRoverRange= 0.2, integral: 1, fluct: 1, linLossLimit= 0.01
     190      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     191            ICRU73QO :     Emin=          0 eV         Emax=   1.05231 MeV
     192          BetheBloch :     Emin=    1.05231 MeV        Emax=   10 TeV
     193
     194hBrems:   for  kaon-    SubType= 3
     195      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     196      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     197      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     198               hBrem :     Emin=          0 eV         Emax=   10 TeV
     199
     200hPairProd:   for  kaon-    SubType= 4
     201      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     202      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     203      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     204           hPairProd :     Emin=          0 eV         Emax=   10 TeV
     205
     206muMsc:   for mu+    SubType= 10
     207      Lambda tables from 100 eV  to 10 TeV in 77 bins, spline: 1
     208      RangeFactor= 0.2, step limit type: 0, lateralDisplacement: 1, polarAngleLimit(deg)= 11.4592
     209      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     210        WentzelVIUni :     Emin=          0 eV         Emax=   10 TeV
     211
     212muIoni:   for  mu+    SubType= 2
     213      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     214      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     215      finalRange(mm)= 1, dRoverRange= 0.2, integral: 1, fluct: 1, linLossLimit= 0.01
     216      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     217               Bragg :     Emin=          0 eV         Emax=   200 keV
     218          BetheBloch :     Emin=        200 keV        Emax=   1 GeV
     219        MuBetheBloch :     Emin=          1 GeV        Emax=   10 TeV
     220
     221muBrems:   for  mu+    SubType= 3
     222      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     223      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     224      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     225              MuBrem :     Emin=          0 eV         Emax=   10 TeV
     226
     227muPairProd:   for  mu+    SubType= 4
     228      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     229      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     230      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     231          muPairProd :     Emin=          0 eV         Emax=   10 TeV
     232
     233CoulombScat:   for  mu+, applyCuts: 1     SubType= 1
     234      Lambda tables from 100 eV  to 10 TeV in 77 bins, spline: 1
     235      11.4592 < Theta(degree) < 180, Eth(MeV)= 10; pLimit(GeV^1)= 0.139531
     236      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     237  eCoulombScattering :     Emin=          0 eV         Emax=   10 TeV
     238
     239muIoni:   for  mu-    SubType= 2
     240      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     241      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     242      finalRange(mm)= 1, dRoverRange= 0.2, integral: 1, fluct: 1, linLossLimit= 0.01
     243      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     244            ICRU73QO :     Emin=          0 eV         Emax=   200 keV
     245          BetheBloch :     Emin=        200 keV        Emax=   1 GeV
     246        MuBetheBloch :     Emin=          1 GeV        Emax=   10 TeV
     247
     248muBrems:   for  mu-    SubType= 3
     249      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     250      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     251      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     252              MuBrem :     Emin=          0 eV         Emax=   10 TeV
     253
     254muPairProd:   for  mu-    SubType= 4
     255      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     256      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     257      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     258          muPairProd :     Emin=          0 eV         Emax=   10 TeV
     259
     260CoulombScat:   for  mu-, applyCuts: 1     SubType= 1
     261      Lambda tables from 100 eV  to 10 TeV in 77 bins, spline: 1
     262      11.4592 < Theta(degree) < 180, Eth(MeV)= 10; pLimit(GeV^1)= 0.139531
     263      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     264  eCoulombScattering :     Emin=          0 eV         Emax=   10 TeV
     265G4NeutronInelasticXS::BuildPhysicsTable:
     266neutron
     267G4NEUTRONXSDATA environment variable not set
     268G4NeutronCaptureXS::BuildPhysicsTable:
     269neutron
     270G4NEUTRONXSDATA environment variable not set
     271
     272hIoni:   for  pi+    SubType= 2
     273      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     274      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     275      finalRange(mm)= 1, dRoverRange= 0.2, integral: 1, fluct: 1, linLossLimit= 0.01
     276      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     277               Bragg :     Emin=          0 eV         Emax=   297.504 keV
     278          BetheBloch :     Emin=    297.504 keV        Emax=   10 TeV
     279
     280hBrems:   for  pi+    SubType= 3
     281      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     282      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     283      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     284               hBrem :     Emin=          0 eV         Emax=   10 TeV
     285
     286hPairProd:   for  pi+    SubType= 4
     287      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     288      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     289      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     290           hPairProd :     Emin=          0 eV         Emax=   10 TeV
     291
     292msc:   for pi-    SubType= 10
     293      Lambda tables from 100 eV  to 10 TeV in 77 bins, spline: 1
     294      RangeFactor= 0.2, stepLimitType: 0, latDisplacement: 1
     295      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     296          UrbanMsc90 :     Emin=          0 eV         Emax=   10 TeV
     297
     298hIoni:   for  pi-    SubType= 2
     299      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     300      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     301      finalRange(mm)= 1, dRoverRange= 0.2, integral: 1, fluct: 1, linLossLimit= 0.01
     302      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     303            ICRU73QO :     Emin=          0 eV         Emax=   297.504 keV
     304          BetheBloch :     Emin=    297.504 keV        Emax=   10 TeV
     305
     306hBrems:   for  pi-    SubType= 3
     307      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     308      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     309      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     310               hBrem :     Emin=          0 eV         Emax=   10 TeV
     311
     312hPairProd:   for  pi-    SubType= 4
     313      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
     314      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
     315      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
     316           hPairProd :     Emin=          0 eV         Emax=   10 TeV
     317============================================================================================
     318             HADRONIC PROCESSES SUMMARY (verbose level 1)
     319
     320                     Hadronic Processes for <anti_neutron>
     321          hadElastic  Models:              hElasticLHEP: Emin(GeV)=     0  Emax(GeV)= 100000
     322          CHIPS_Inelastic
     323
     324                     Hadronic Processes for <anti_proton>
     325          hadElastic  Models:              hElasticLHEP: Emin(GeV)=     0  Emax(GeV)= 100000
     326          CHIPS_Inelastic
     327
     328                     Hadronic Processes for <e->
     329      ElectroNuclear  Models:                     CHIPS: Emin(GeV)=     0  Emax(GeV)= 30000
     330
     331                     Hadronic Processes for <gamma>
     332     PhotonInelastic  Models:                     CHIPS: Emin(GeV)=     0  Emax(GeV)= 3.5
     333                                        TheoFSGenerator: Emin(GeV)=     3  Emax(GeV)= 100000
     334
     335                     Hadronic Processes for <kaon+>
     336          hadElastic  Models:              hElasticLHEP: Emin(GeV)=     0  Emax(GeV)= 100000
     337          hInelastic  Models:                      FTFP: Emin(GeV)=     4  Emax(GeV)= 100000
     338                                        Bertini Cascade: Emin(GeV)=     0  Emax(GeV)= 5
     339
     340                     Hadronic Processes for <kaon->
     341          hadElastic  Models:              hElasticLHEP: Emin(GeV)=     0  Emax(GeV)= 100000
     342          hInelastic  Models:                      FTFP: Emin(GeV)=     4  Emax(GeV)= 100000
     343                                        Bertini Cascade: Emin(GeV)=     0  Emax(GeV)= 5
     344
     345                     Hadronic Processes for <lambda>
     346          hadElastic  Models:              hElasticLHEP: Emin(GeV)=     0  Emax(GeV)= 100000
     347          hInelastic  Models:                      FTFP: Emin(GeV)=     4  Emax(GeV)= 100000
     348                                        Bertini Cascade: Emin(GeV)=     0  Emax(GeV)= 5
     349
     350                     Hadronic Processes for <mu->
     351          muMinusCaptureAtRest
     352
     353                     Hadronic Processes for <neutron>
     354          hadElastic  Models:             hElasticCHIPS: Emin(GeV)=     0  Emax(GeV)= 100000
     355          hInelastic  Models:                      QGSP: Emin(GeV)=  12.5  Emax(GeV)= 100000
     356                                                   FTFP: Emin(GeV)=     4  Emax(GeV)= 25
     357                                        Bertini Cascade: Emin(GeV)=     1  Emax(GeV)= 5
     358                                         Binary Cascade: Emin(GeV)=     0  Emax(GeV)= 1.5
     359            nCapture  Models:               nRadCapture: Emin(GeV)=     0  Emax(GeV)= 100000
     360
     361                     Hadronic Processes for <pi+>
     362          hadElastic  Models:              hElasticLHEP: Emin(GeV)=     0  Emax(GeV)= 1
     363                                        hElasticGlauber: Emin(GeV)=     1  Emax(GeV)= 100000
     364          hInelastic  Models:                      QGSP: Emin(GeV)=  12.5  Emax(GeV)= 100000
     365                                                   FTFP: Emin(GeV)=     4  Emax(GeV)= 25
     366                                        Bertini Cascade: Emin(GeV)=     0  Emax(GeV)= 5
     367
     368                     Hadronic Processes for <pi->
     369          hadElastic  Models:              hElasticLHEP: Emin(GeV)=     0  Emax(GeV)= 1
     370                                        hElasticGlauber: Emin(GeV)=     1  Emax(GeV)= 100000
     371          hInelastic  Models:                      QGSP: Emin(GeV)=  12.5  Emax(GeV)= 100000
     372                                                   FTFP: Emin(GeV)=     4  Emax(GeV)= 25
     373                                        Bertini Cascade: Emin(GeV)=     0  Emax(GeV)= 5
     374
     375                     Hadronic Processes for <proton>
     376          hadElastic  Models:             hElasticCHIPS: Emin(GeV)=     0  Emax(GeV)= 100000
     377          hInelastic  Models:                      QGSP: Emin(GeV)=  12.5  Emax(GeV)= 100000
     378                                                   FTFP: Emin(GeV)=     4  Emax(GeV)= 25
     379                                        Bertini Cascade: Emin(GeV)=     1  Emax(GeV)= 5
     380                                         Binary Cascade: Emin(GeV)=     0  Emax(GeV)= 1.5
     381============================================================================================
    99382
    100383========= Table of registered couples ==============================
     
    102385Index : 0     used in the geometry : Yes     recalculation needed : No
    103386 Material : G4_Galactic
    104  Range cuts        :  gamma 1 mm     e- 1 mm     e+ 1 mm
    105  Energy thresholds :  gamma 990 eV     e- 990 eV     e+ 990 eV
     387 Range cuts        :  gamma  1 mm     e-  1 mm     e+  1 mm  proton 1 mm
     388 Energy thresholds :  gamma  990 eV     e-  990 eV     e+  990 eV  proton 100 keV
    106389 Region(s) which use this couple :
    107390    DefaultRegionForTheWorld
     
    109392Index : 1     used in the geometry : Yes     recalculation needed : No
    110393 Material : G4_Al
    111  Range cuts        :  gamma 1 mm     e- 1 mm     e+ 1 mm
    112  Energy thresholds :  gamma 6.88731 keV    e- 596.68 keV    e+ 568.011 keV
     394 Range cuts        :  gamma  1 mm     e-  1 mm     e+  1 mm  proton 1 mm
     395 Energy thresholds :  gamma  6.90363 keV    e-  598.345 keV    e+  570.85 keV proton 100 keV
    113396 Region(s) which use this couple :
    114397    DefaultRegionForTheWorld
     
    131414Run Summary
    132415  Number of events processed : 100
    133   User=0.73s Real=0.74s Sys=0.01s
     416  User=0.37s Real=0.38s Sys=0s
    134417RunAction: End of run actions are started
    135418HistoManager: End of run actions are started
     
    138421Beam Energy(MeV)                     3000
    139422Number of events                     100
    140 Average energy deposit (MeV)         57.73   RMS(MeV) 48.33
    141 Average number of steps              267.1
    142 Average number of gamma              2.63
    143 Average number of e-                 4.28
    144 Average number of e+                 0.05
    145 Average number of neutrons           0.78
    146 Average number of protons            0.87
     423Average energy deposit (MeV)         69.45   RMS(MeV) 55
     424Average number of steps              360.1
     425Average number of gamma              2.24
     426Average number of e-                 3.14
     427Average number of e+                 0.07
     428Average number of neutrons           1.36
     429Average number of protons            1.39
    147430Average number of antiprotons        0
    148 Average number of pi+ & pi-          0.33
    149 Average number of pi0                0.2
    150 Average number of kaons              0.01
    151 Average number of muons              0
    152 Average number of deuterons+tritons  0.01
    153 Average number of He3+alpha          0.1
    154 Average number of ions               0.57
     431Average number of pi+ & pi-          0.49
     432Average number of pi0                0.21
     433Average number of kaons              0
     434Average number of muons              0.02
     435Average number of deuterons+tritons  0.11
     436Average number of He3+alpha          0.2
     437Average number of ions               0.68
    155438Average number of forward neutrons   0.1
    156 Average number of reflected neutrons 0
    157 Average number of leaked neutrons    0.62
    158 Average number of proton leak        0.33
    159 Average number of pion leak          0.3
     439Average number of reflected neutrons 1.2
     440Average number of leaked neutrons    0.06
     441Average number of proton leak        0.61
     442Average number of pion leak          0.45
    160443========================================================
    161444
    162445#
    163446G4 kernel has come to Quit state.
     447
  • trunk/examples/extended/hadronic/Hadr01/include/CheckVolumeSD.hh

    r1230 r1337  
    2525//
    2626// $Id: CheckVolumeSD.hh,v 1.3 2006/06/29 17:23:25 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/include/DetectorConstruction.hh

    r1230 r1337  
    2525//
    2626// $Id: DetectorConstruction.hh,v 1.4 2006/06/29 17:23:28 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/include/DetectorMessenger.hh

    r1230 r1337  
    2525//
    2626// $Id: DetectorMessenger.hh,v 1.7 2007/05/16 11:43:30 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/include/EventAction.hh

    r1230 r1337  
    2525//
    2626// $Id: EventAction.hh,v 1.3 2006/06/29 17:23:34 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/include/EventActionMessenger.hh

    r1230 r1337  
    2525//
    2626// $Id: EventActionMessenger.hh,v 1.3 2006/06/29 17:23:36 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/include/Histo.hh

    r1230 r1337  
    2525//
    2626// $Id: Histo.hh,v 1.6 2007/05/24 13:52:31 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828
    2929#ifndef Histo_h
  • trunk/examples/extended/hadronic/Hadr01/include/HistoManager.hh

    r1230 r1337  
    2525//
    2626// $Id: HistoManager.hh,v 1.9 2009/08/28 09:21:34 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929//---------------------------------------------------------------------------
  • trunk/examples/extended/hadronic/Hadr01/include/HistoMessenger.hh

    r1230 r1337  
    2525//
    2626// $Id: HistoMessenger.hh,v 1.5 2006/11/15 14:58:10 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/include/PhysicsList.hh

    r1230 r1337  
    2525//
    2626//
    27 // $Id: PhysicsList.hh,v 1.6 2007/11/14 18:59:08 vnivanch Exp $
    28 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// $Id: PhysicsList.hh,v 1.7 2009/11/25 19:56:36 vnivanch Exp $
     28// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2929//
    3030/////////////////////////////////////////////////////////////////////////
     
    6464  void SetCutForElectron(G4double);
    6565  void SetCutForPositron(G4double);
     66  void SetCutForProton(G4double);
    6667       
    6768  void AddPhysicsList(const G4String& name);
     
    8283  G4double cutForElectron;
    8384  G4double cutForPositron;
     85  G4double cutForProton;
    8486
    8587  G4VPhysicsConstructor*  emPhysicsList;
  • trunk/examples/extended/hadronic/Hadr01/include/PhysicsListMessenger.hh

    r1230 r1337  
    2525//
    2626//
    27 // $Id: PhysicsListMessenger.hh,v 1.3 2006/06/29 17:23:50 gunter Exp $
    28 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// $Id: PhysicsListMessenger.hh,v 1.4 2009/12/29 19:23:26 vnivanch Exp $
     28// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2929//
    3030//
     
    5858public:
    5959 
    60   PhysicsListMessenger(PhysicsList* );
     60  PhysicsListMessenger(PhysicsList* p = 0);
    6161  virtual ~PhysicsListMessenger();
    6262   
     
    7070  G4UIcmdWithADoubleAndUnit* electCutCmd;
    7171  G4UIcmdWithADoubleAndUnit* posCutCmd;
     72  G4UIcmdWithADoubleAndUnit* pCutCmd;
    7273  G4UIcmdWithADoubleAndUnit* allCutCmd;
    7374  G4UIcmdWithAString*        pListCmd;
  • trunk/examples/extended/hadronic/Hadr01/include/PrimaryGeneratorAction.hh

    r1230 r1337  
    2626//
    2727// $Id: PrimaryGeneratorAction.hh,v 1.3 2006/06/29 17:23:52 gunter Exp $
    28 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     28// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2929//
    3030//
  • trunk/examples/extended/hadronic/Hadr01/include/StackingAction.hh

    r1230 r1337  
    2525//
    2626// $Id: StackingAction.hh,v 1.3 2006/06/29 17:23:56 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/include/StackingMessenger.hh

    r1230 r1337  
    2525//
    2626// $Id: StackingMessenger.hh,v 1.3 2006/06/29 17:23:58 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929//
  • trunk/examples/extended/hadronic/Hadr01/include/TargetSD.hh

    r1230 r1337  
    2525//
    2626// $Id: TargetSD.hh,v 1.4 2006/06/29 17:24:00 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/p_pb.in

    r807 r1337  
    1414#
    1515/testhadr/CutsAll          0.7 mm
    16 /testhadr/Physics          PHYSLIST
     16#/testhadr/Physics          PHYSLIST
    1717#
    1818/run/initialize
    19 #/process/eLoss/MscStepLimit 0.2 false
    2019#/testhadr/HistoName        p_pb_20GeV
    2120/testhadr/MaxEdep          10 GeV
  • trunk/examples/extended/hadronic/Hadr01/run.csh

    r807 r1337  
    11#/bin/csh
    22
    3 setenv HISTODIR 20071127
     3setenv HISTODIR 20091229
    44mkdir -p $HISTODIR
    55
     
    77$G4MY/hadr01 p_pb.in >& $HISTODIR/$PHYSLIST.out
    88
    9 setenv PHYSLIST QGSP
     9setenv PHYSLIST QGSP_BERT_EMV
    1010$G4MY/hadr01 p_pb.in >& $HISTODIR/$PHYSLIST.out
    1111
    12 setenv PHYSLIST QGSP_EMV
    13 $G4MY/hadr01 p_pb.in >& $HISTODIR/$PHYSLIST.out
    14 
    15 setenv PHYSLIST QGSP_EMX
    16 $G4MY/hadr01 p_pb.in >& $HISTODIR/$PHYSLIST.out
    17 
    18 setenv PHYSLIST QGSC
     12setenv PHYSLIST QGSP_BERT_EMX
    1913$G4MY/hadr01 p_pb.in >& $HISTODIR/$PHYSLIST.out
    2014
     
    2822$G4MY/hadr01 p_pb.in >& $HISTODIR/$PHYSLIST.out
    2923
    30 setenv PHYSLIST QBBC_HEL
     24setenv PHYSLIST QBBC_XGG
    3125$G4MY/hadr01 p_pb.in >& $HISTODIR/$PHYSLIST.out
    3226
    33 setenv PHYSLIST QBBC_DEL
     27setenv PHYSLIST QBBC_XGGSN
     28$G4MY/hadr01 p_pb.in >& $HISTODIR/$PHYSLIST.out
     29
     30setenv PHYSLIST FTFP_BERT
     31$G4MY/hadr01 p_pb.in >& $HISTODIR/$PHYSLIST.out
     32
     33setenv PHYSLIST QGSP_FTFP_BERT
     34$G4MY/hadr01 p_pb.in >& $HISTODIR/$PHYSLIST.out
     35
     36setenv PHYSLIST CHIPS
    3437$G4MY/hadr01 p_pb.in >& $HISTODIR/$PHYSLIST.out
    3538
  • trunk/examples/extended/hadronic/Hadr01/src/CheckVolumeSD.cc

    r1230 r1337  
    2525//
    2626// $Id: CheckVolumeSD.cc,v 1.3 2006/06/29 17:24:02 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/src/DetectorConstruction.cc

    r1230 r1337  
    2424// ********************************************************************
    2525//
    26 // $Id: DetectorConstruction.cc,v 1.6 2006/10/04 09:56:03 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     26// $Id: DetectorConstruction.cc,v 1.7 2010/06/11 17:01:26 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
     
    151151
    152152  // colors
    153   logicWorld->SetVisAttributes(G4VisAttributes::Invisible);
    154 
    155   G4VisAttributes* regWcolor = new G4VisAttributes(G4Colour(0.3, 0.3, 0.3));
    156   logicCheck->SetVisAttributes(regWcolor);
    157 
    158   G4VisAttributes* regCcolor = new G4VisAttributes(G4Colour(0., 0.3, 0.7));
    159   logicTarget->SetVisAttributes(regCcolor);
     153  G4VisAttributes zero = G4VisAttributes::Invisible;
     154  logicWorld->SetVisAttributes(&zero);
     155
     156  G4VisAttributes regWcolor(G4Colour(0.3, 0.3, 0.3));
     157  logicCheck->SetVisAttributes(&regWcolor);
     158
     159  G4VisAttributes regCcolor(G4Colour(0., 0.3, 0.7));
     160  logicTarget->SetVisAttributes(&regCcolor);
    160161
    161162  G4cout << *(G4Material::GetMaterialTable()) << G4endl;
  • trunk/examples/extended/hadronic/Hadr01/src/DetectorMessenger.cc

    r1230 r1337  
    2525//
    2626// $Id: DetectorMessenger.cc,v 1.7 2007/05/16 11:43:30 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/src/EventAction.cc

    r1230 r1337  
    2424// ********************************************************************
    2525//
    26 // $Id: EventAction.cc,v 1.4 2007/05/16 11:43:30 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     26// $Id: EventAction.cc,v 1.6 2010/06/07 05:40:46 perl Exp $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
     
    4545
    4646#include "G4UImanager.hh"
    47 #include "G4TrajectoryContainer.hh"
    48 #include "G4Trajectory.hh"
    49 #include "G4VVisManager.hh"
    5047#include "G4ios.hh"
    5148
     
    9996//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    10097
    101 void EventAction::EndOfEventAction(const G4Event* evt)
     98void EventAction::EndOfEventAction(const G4Event*)
    10299{
    103   G4VVisManager* pVVisManager = G4VVisManager::GetConcreteInstance();
    104 
    105   if(pVVisManager) {
    106     G4TrajectoryContainer* trjc = evt->GetTrajectoryContainer();
    107     G4int n_trajectories = 0;
    108     if (trjc) n_trajectories = trjc->entries();
    109 
    110     for(G4int i=0; i<n_trajectories; i++) {
    111       G4Trajectory* t = (G4Trajectory*)((*(evt->GetTrajectoryContainer()))[i]);
    112       if (drawFlag == "all") t->DrawTrajectory(1000);
    113       else if ((drawFlag == "charged")&&(t->GetCharge() != 0.))
    114                              t->DrawTrajectory(1000);
    115       else if ((drawFlag == "neutral")&&(t->GetCharge() == 0.))
    116                              t->DrawTrajectory(1000);
    117       else if ((drawFlag == "charged+n")&&((t->GetCharge() != 0.)||
    118                                            (t->GetCharge()==0.&&t->GetParticleName()=="neutron")))
    119                              t->DrawTrajectory(1000);
    120     }
    121   }
    122 
    123100  if(debugStarted) {
    124101    UI->ApplyCommand("/tracking/verbose  0");
  • trunk/examples/extended/hadronic/Hadr01/src/EventActionMessenger.cc

    r1230 r1337  
    2525//
    2626// $Id: EventActionMessenger.cc,v 1.3 2006/06/29 17:24:11 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/src/HistoManager.cc

    r1230 r1337  
    2424// ********************************************************************
    2525//
    26 // $Id: HistoManager.cc,v 1.16 2009/09/02 10:21:32 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     26// $Id: HistoManager.cc,v 1.17 2010/01/13 15:53:44 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929//---------------------------------------------------------------------------
     
    422422  // Forward
    423423  if(z > -absZ0 && dir.z() > 0.0) {
     424    isLeaking = true;
    424425    if(pd == neutron) {
    425       n_neu_forw++;
     426      ++n_neu_forw;
    426427      histo->fill(15,e,1.0);
    427428    } else isLeaking = true;
     
    429430    // Backward
    430431  } else if (z < absZ0 && dir.z() < 0.0) {
     432    isLeaking = true;
    431433    if(pd == neutron) {
    432       n_neu_leak++;
     434      ++n_neu_back;
    433435      histo->fill(16,e,1.0);
    434436    } else isLeaking = true;
     
    438440    isLeaking = true;
    439441    if(pd == neutron) {
    440       n_neu_back++;
     442      ++n_neu_leak;
    441443      histo->fill(14,e,1.0);
    442444    } else isLeaking = true;
     
    447449    if(pd == G4Proton::Proton()) {
    448450      histo->fill(17,e,1.0);
    449       n_prot_leak++;
     451      ++n_prot_leak;
    450452    } else if (pd == G4PionPlus::PionPlus() || pd == G4PionMinus::PionMinus()) {
    451453      histo->fill(18,e,1.0);
    452       n_pion_leak++;
     454      ++n_pion_leak;
    453455    }
    454456  }
  • trunk/examples/extended/hadronic/Hadr01/src/HistoMessenger.cc

    r1230 r1337  
    2626//
    2727// $Id: HistoMessenger.cc,v 1.5 2006/06/29 17:24:18 gunter Exp $
    28 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     28// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2929//
    3030/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/src/PhysicsList.cc

    r1230 r1337  
    2525//
    2626//
    27 // $Id: PhysicsList.cc,v 1.31 2009/08/28 09:21:34 vnivanch Exp $
    28 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// $Id: PhysicsList.cc,v 1.33 2010/06/11 17:01:26 vnivanch Exp $
     28// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2929//
    3030/////////////////////////////////////////////////////////////////////////
     
    4545
    4646#include "G4DecayPhysics.hh"
     47#include "G4EmStandardPhysics.hh"
     48#include "G4EmStandardPhysics_option1.hh"
     49#include "G4EmStandardPhysics_option2.hh"
    4750#include "G4EmStandardPhysics_option3.hh"
    48 #include "G4EmStandardPhysics_option2.hh"
    49 #include "G4EmStandardPhysics_option1.hh"
    50 #include "G4EmStandardPhysics.hh"
     51#include "G4EmLivermorePhysics.hh"
     52#include "G4EmPenelopePhysics.hh"
    5153#include "G4HadronElasticPhysics.hh"
    5254#include "G4HadronDElasticPhysics.hh"
    5355#include "G4HadronQElasticPhysics.hh"
     56#include "G4HadronElasticPhysicsHP.hh"
     57#include "G4HadronElasticPhysicsLHEP.hh"
    5458#include "G4HadronHElasticPhysics.hh"
    5559#include "G4ChargeExchangePhysics.hh"
     
    9296#include "G4Electron.hh"
    9397#include "G4Positron.hh"
     98#include "G4Proton.hh"
    9499
    95100//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
     
    98103{
    99104  G4LossTableManager::Instance();
    100   defaultCutValue = 1.*mm;
     105  defaultCutValue = 0.7*mm;
    101106  cutForGamma     = defaultCutValue;
    102107  cutForElectron  = defaultCutValue;
    103108  cutForPositron  = defaultCutValue;
    104   dump            = false;
     109  cutForProton    = defaultCutValue;
    105110  verboseLevel    = 1;
    106111
     
    167172    emPhysicsList = new G4EmStandardPhysics_option1();
    168173
     174  } else if (name == "emstandard_opt0") {
     175
     176    delete emPhysicsList;
     177    emPhysicsList = new G4EmStandardPhysics();
     178
    169179  } else if (name == "FTFP_BERT_EMV") {
    170180
     
    177187    AddPhysicsList("FTFP_BERT");
    178188
    179   } else if (name == "FTFP") {
     189  } else if (name == "FTFP_BERT") {
    180190
    181191    SetBuilderList1();
    182     hadronPhys.push_back( new HadronPhysicsFTFP("hadron",true));
    183     dump = true;
    184 
    185   } else if (name == "FTFP_BERT") {
     192    hadronPhys.push_back( new HadronPhysicsFTFP_BERT());
     193
     194  } else if (name == "FTFP_BERT_TRV") {
    186195
    187196    SetBuilderList1();
    188     hadronPhys.push_back( new HadronPhysicsFTFP_BERT("hadron",true));
    189     dump = true;
    190 
    191   } else if (name == "FTFP_BERT_TRV") {
    192 
    193     SetBuilderList1();
    194     hadronPhys.push_back( new HadronPhysicsFTFP_BERT_TRV("hadron",true));
    195     dump = true;
     197    hadronPhys.push_back( new HadronPhysicsFTFP_BERT_TRV());
    196198
    197199  } else if (name == "FTF_BIC") {
    198200
    199201    SetBuilderList0();
    200     hadronPhys.push_back( new HadronPhysicsFTF_BIC("hadron",true));
    201     dump = true;
     202    hadronPhys.push_back( new HadronPhysicsFTF_BIC());
    202203
    203204  } else if (name == "LHEP") {
    204205
    205206    SetBuilderList2();
    206     hadronPhys.push_back( new HadronPhysicsLHEP("hadron"));
    207     dump = true;
     207    hadronPhys.push_back( new HadronPhysicsLHEP());
    208208
    209209  } else if (name == "LHEP_EMV") {
     
    211211    AddPhysicsList("emstandard_opt1");
    212212    SetBuilderList3();
    213     hadronPhys.push_back( new HadronPhysicsLHEP_EMV("hadron"));
    214     dump = true;
     213    hadronPhys.push_back( new HadronPhysicsLHEP_EMV());
    215214
    216215  } else if (name == "QBBC") {
    217216
    218     SetBuilderList0();
    219     hadronPhys.push_back( new G4HadronInelasticQBBC("QBBC",verboseLevel,
    220                                                     false,true,false,false,false));
    221 
    222   } else if (name == "QBBCG") {
    223 
    224     SetBuilderList0();
    225     hadronPhys.push_back( new G4ChargeExchangePhysics(verboseLevel,false));
    226     hadronPhys.push_back( new G4HadronInelasticQBBC("QBBC",verboseLevel,
    227                                                     false,true,false,false,true));
    228   } else if (name == "QBBCF") {
    229 
    230     SetBuilderList0();
    231     hadronPhys.push_back( new G4ChargeExchangePhysics(verboseLevel,false));
    232     hadronPhys.push_back( new G4HadronInelasticQBBC("QBBC",verboseLevel,
    233                                                     false,true,false,false,false));
    234 
    235   } else if (name == "QBBC_DEL") {
    236 
    237     SetBuilderList5();
    238     hadronPhys.push_back( new G4HadronInelasticQBBC("QBBC",verboseLevel,
    239                                                     false,false,false,false,true));
    240 
    241   } else if (name == "QBBC_HEL") {
    242 
     217    AddPhysicsList("emstandard_opt2");
    243218    SetBuilderList6();
    244     hadronPhys.push_back( new G4HadronInelasticQBBC("QBBC",verboseLevel,
    245                                                     false,false,false,false,true));
    246 
    247   } else if (name == "QBBC_HP") {
    248 
    249     SetBuilderList0(true);
    250     hadronPhys.push_back( new G4HadronInelasticQBBC("QBBC",verboseLevel,
    251                                                     false,false,false,true,true));
    252   } else if (name == "QGSC") {
     219    hadronPhys.push_back( new G4HadronInelasticQBBC());
     220
     221  } else if (name == "QBBC_XGG") {
     222
     223    AddPhysicsList("emstandard_opt2");
     224    SetBuilderList6();
     225    hadronPhys.push_back( new G4HadronInelasticQBBC("QBBC_XGG",verboseLevel));
     226
     227  } else if (name == "QBBC_XGGSN") {
     228
     229    AddPhysicsList("emstandard_opt2");
     230    SetBuilderList6();
     231    hadronPhys.push_back( new G4HadronInelasticQBBC("QBBC_XGG",verboseLevel));
     232
     233
     234  } else if (name == "QGSC_BERT") {
    253235
    254236    SetBuilderList4();
    255     hadronPhys.push_back( new HadronPhysicsQGSC("hadron",true));
    256     dump = true;
    257 
    258   } else if (name == "QGSC_BERT") {
     237    hadronPhys.push_back( new HadronPhysicsQGSC_BERT());
     238
     239  } else if (name == "QGSC_CHIPS") {
    259240
    260241    SetBuilderList4();
    261     hadronPhys.push_back( new HadronPhysicsQGSC_BERT("hadron",true));
    262     dump = true;
    263 
    264   } else if (name == "QGSC_CHIPS") {
    265 
    266     SetBuilderList4();
    267     hadronPhys.push_back( new HadronPhysicsQGSC_CHIPS("hadron",true));
    268     dump = true;
    269 
    270   } else if (name == "QGSC_QGSC") {
    271 
    272     SetBuilderList4();
    273     hadronPhys.push_back( new HadronPhysicsQGSC_QGSC("hadron",true));
    274     dump = true;
    275 
    276   } else if (name == "QGSC_EMV") {
    277 
    278     AddPhysicsList("emstandard_opt1");
    279     AddPhysicsList("QGSC");
    280 
    281   } else if (name == "QGSP") {
     242    hadronPhys.push_back( new HadronPhysicsQGSC_CHIPS());
     243
     244  } else if (name == "QGSP_BERT") {
    282245
    283246    SetBuilderList1();
    284     hadronPhys.push_back( new HadronPhysicsQGSP("hadron",true));
    285     dump = true;
    286 
    287   } else if (name == "QGSP_BERT") {
     247    hadronPhys.push_back( new HadronPhysicsQGSP_BERT());
     248
     249  } else if (name == "QGSP_FTFP_BERT") {
    288250
    289251    SetBuilderList1();
    290     hadronPhys.push_back( new HadronPhysicsQGSP_BERT("hadron",true));
    291     dump = true;
    292 
    293   } else if (name == "QGSP_FTFP_BERT") {
    294 
    295     SetBuilderList1();
    296     hadronPhys.push_back( new HadronPhysicsQGSP_FTFP_BERT("hadron",true));
    297     dump = true;
     252    hadronPhys.push_back( new HadronPhysicsQGSP_FTFP_BERT());
    298253
    299254  } else if (name == "QGSP_BERT_EMV") {
     
    310265
    311266    SetBuilderList1(true);
    312     hadronPhys.push_back( new HadronPhysicsQGSP_BERT_HP("hadron",true));
     267    hadronPhys.push_back( new HadronPhysicsQGSP_BERT_HP());
    313268
    314269  } else if (name == "QGSP_BIC") {
    315270
    316271    SetBuilderList0();
    317     hadronPhys.push_back( new HadronPhysicsQGSP_BIC("hadron",true));
    318     dump = true;
     272    hadronPhys.push_back( new HadronPhysicsQGSP_BIC());
     273
     274  } else if (name == "QGSP_BIC_EMY") {
     275
     276    AddPhysicsList("emstandard_opt3");
     277    SetBuilderList0();
     278    hadronPhys.push_back( new HadronPhysicsQGSP_BIC());
    319279
    320280  } else if (name == "QGS_BIC") {
    321281
    322282    SetBuilderList0();
    323     hadronPhys.push_back( new HadronPhysicsQGS_BIC("hadron",true));
    324     dump = true;
     283    hadronPhys.push_back( new HadronPhysicsQGS_BIC());
    325284
    326285  } else if (name == "QGSP_BIC_HP") {
    327286
    328287    SetBuilderList0(true);
    329     hadronPhys.push_back( new HadronPhysicsQGSP_BIC_HP("hadron",true));
    330     dump = true;
     288    hadronPhys.push_back( new HadronPhysicsQGSP_BIC_HP());
    331289
    332290  } else if (name == "QGSP_BIC_EMY") {
     
    347305void PhysicsList::SetBuilderList0(G4bool flagHP)
    348306{
    349   hadronPhys.push_back( new G4EmExtraPhysics("extra EM"));
    350   hadronPhys.push_back( new G4HadronElasticPhysics("elastic",verboseLevel,
    351                                                     flagHP));
    352   hadronPhys.push_back( new G4QStoppingPhysics("stopping",verboseLevel));
    353   hadronPhys.push_back( new G4IonBinaryCascadePhysics("ionBIC"));
    354   hadronPhys.push_back( new G4NeutronTrackingCut("nTackingCut",verboseLevel));
     307  hadronPhys.push_back( new G4EmExtraPhysics(verboseLevel));
     308  if(flagHP) {
     309    hadronPhys.push_back( new G4HadronElasticPhysicsHP(verboseLevel) );
     310  } else {
     311    hadronPhys.push_back( new G4HadronElasticPhysics(verboseLevel) );
     312  }
     313  hadronPhys.push_back( new G4QStoppingPhysics(verboseLevel));
     314  hadronPhys.push_back( new G4IonBinaryCascadePhysics(verboseLevel));
     315  hadronPhys.push_back( new G4NeutronTrackingCut(verboseLevel));
    355316}
    356317
     
    359320void PhysicsList::SetBuilderList1(G4bool flagHP)
    360321{
    361   hadronPhys.push_back( new G4EmExtraPhysics("extra EM"));
    362   hadronPhys.push_back( new G4HadronElasticPhysics("elastic",verboseLevel,
    363                                                     flagHP));
    364   hadronPhys.push_back( new G4QStoppingPhysics("stopping",verboseLevel));
    365   hadronPhys.push_back( new G4IonPhysics("ion"));
    366   hadronPhys.push_back( new G4NeutronTrackingCut("nTackingCut",verboseLevel));
    367 }
    368 
    369 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
    370 
    371 void PhysicsList::SetBuilderList2(G4bool flagHP)
    372 {
    373   hadronPhys.push_back( new G4EmExtraPhysics("extra EM"));
    374   hadronPhys.push_back( new G4HadronElasticPhysics("LElastic",verboseLevel,
    375                                                     flagHP));
    376   hadronPhys.push_back( new G4IonPhysics("ion"));
    377 }
    378 
    379 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
    380 
    381 void PhysicsList::SetBuilderList3(G4bool flagHP)
    382 {
    383   hadronPhys.push_back( new G4EmExtraPhysics("extra EM"));
    384   hadronPhys.push_back( new G4HadronElasticPhysics("LElastic",verboseLevel,
    385                                                     flagHP));
    386   hadronPhys.push_back( new G4QStoppingPhysics("stopping",verboseLevel));
    387   hadronPhys.push_back( new G4IonPhysics("ion"));
     322  hadronPhys.push_back( new G4EmExtraPhysics(verboseLevel));
     323  if(flagHP) {
     324    hadronPhys.push_back( new G4HadronElasticPhysicsHP(verboseLevel) );
     325  } else {
     326    hadronPhys.push_back( new G4HadronHElasticPhysics(verboseLevel) );
     327  }
     328  hadronPhys.push_back( new G4QStoppingPhysics(verboseLevel));
     329  hadronPhys.push_back( new G4IonPhysics(verboseLevel));
     330  hadronPhys.push_back( new G4NeutronTrackingCut(verboseLevel));
     331}
     332
     333//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
     334
     335void PhysicsList::SetBuilderList2(G4bool)
     336{
     337  hadronPhys.push_back( new G4EmExtraPhysics(verboseLevel));
     338  hadronPhys.push_back( new G4HadronElasticPhysicsLHEP(verboseLevel));
     339  hadronPhys.push_back( new G4IonPhysics(verboseLevel));
     340}
     341
     342//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
     343
     344void PhysicsList::SetBuilderList3(G4bool)
     345{
     346  hadronPhys.push_back( new G4EmExtraPhysics(verboseLevel));
     347  hadronPhys.push_back( new G4HadronElasticPhysicsLHEP(verboseLevel));
     348  hadronPhys.push_back( new G4QStoppingPhysics(verboseLevel));
     349  hadronPhys.push_back( new G4IonPhysics(verboseLevel));
    388350}
    389351
     
    392354void PhysicsList::SetBuilderList4(G4bool)
    393355{
    394   hadronPhys.push_back( new G4EmExtraPhysics("extra EM"));
    395   hadronPhys.push_back( new G4HadronQElasticPhysics("elastic",verboseLevel));
    396   hadronPhys.push_back( new G4QStoppingPhysics("stopping",verboseLevel));
    397   hadronPhys.push_back( new G4IonPhysics("ion"));
    398   hadronPhys.push_back( new G4NeutronTrackingCut("nTackingCut",verboseLevel));
    399 }
    400 
    401 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
    402 
    403 void PhysicsList::SetBuilderList5(G4bool flagHP)
    404 {
    405   hadronPhys.push_back( new G4EmExtraPhysics("extra EM"));
    406   hadronPhys.push_back( new G4HadronDElasticPhysics(verboseLevel,flagHP));
    407   hadronPhys.push_back( new G4QStoppingPhysics("stopping",verboseLevel));
    408   hadronPhys.push_back( new G4IonBinaryCascadePhysics("ionBIC"));
    409   hadronPhys.push_back( new G4NeutronTrackingCut("nTackingCut",verboseLevel));
    410 }
    411 
    412 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
    413 
    414 void PhysicsList::SetBuilderList6(G4bool flagHP)
    415 {
    416   hadronPhys.push_back( new G4EmExtraPhysics("extra EM"));
    417   hadronPhys.push_back( new G4HadronHElasticPhysics(verboseLevel,flagHP));
    418   hadronPhys.push_back( new G4QStoppingPhysics("stopping",verboseLevel));
    419   hadronPhys.push_back( new G4IonBinaryCascadePhysics("ionBIC"));
    420   hadronPhys.push_back( new G4NeutronTrackingCut("nTackingCut",verboseLevel));
     356  hadronPhys.push_back( new G4EmExtraPhysics(verboseLevel));
     357  hadronPhys.push_back( new G4HadronQElasticPhysics(verboseLevel));
     358  hadronPhys.push_back( new G4QStoppingPhysics(verboseLevel));
     359  hadronPhys.push_back( new G4IonPhysics(verboseLevel));
     360  hadronPhys.push_back( new G4NeutronTrackingCut(verboseLevel));
     361}
     362
     363//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
     364
     365void PhysicsList::SetBuilderList5(G4bool)
     366{
     367  hadronPhys.push_back( new G4EmExtraPhysics(verboseLevel));
     368  hadronPhys.push_back( new G4HadronDElasticPhysics(verboseLevel));
     369  hadronPhys.push_back( new G4QStoppingPhysics(verboseLevel));
     370  hadronPhys.push_back( new G4IonBinaryCascadePhysics(verboseLevel));
     371  hadronPhys.push_back( new G4NeutronTrackingCut(verboseLevel));
     372}
     373
     374//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
     375
     376void PhysicsList::SetBuilderList6(G4bool)
     377{
     378  hadronPhys.push_back( new G4EmExtraPhysics(verboseLevel));
     379  hadronPhys.push_back( new G4HadronHElasticPhysics(verboseLevel));
     380  hadronPhys.push_back( new G4QStoppingPhysics(verboseLevel));
     381  hadronPhys.push_back( new G4IonBinaryCascadePhysics(verboseLevel));
     382  hadronPhys.push_back( new G4NeutronTrackingCut(verboseLevel));
    421383}
    422384
     
    436398  SetCutValue(cutForElectron, "e-");
    437399  SetCutValue(cutForPositron, "e+");
     400  SetCutValue(cutForProton, "proton");
    438401
    439402  if (verboseLevel>0) DumpCutValuesTable();
     
    464427}
    465428
     429//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     430
     431void PhysicsList::SetCutForProton(G4double cut)
     432{
     433  cutForProton = cut;
     434  SetParticleCuts(cutForProton, G4Proton::Proton());
     435}
     436
    466437void PhysicsList::List()
    467438{
    468   G4cout << "### PhysicsLists available: FTFP FTFP_BERT FTFP_BERT_EMV FTFP_BERT_EMX FTFP_BERT_TRV FTF_BIC LHEP LHEP_EMV"
     439  G4cout << "### PhysicsLists available: FTFP_BERT FTFP_BERT_EMV FTFP_BERT_EMX FTFP_BERT_TRV FTF_BIC"
    469440         << G4endl;
    470   G4cout << "                            QBBC QBBC_DEL QBBC_HEL QBBC_HP QGSC "
     441  G4cout << "                            LHEP LHEP_EMV QBBC QBBC_XGG QBBC_XGGSN"
    471442         << G4endl;
    472   G4cout << "                            QGSC_BERT QGSC_CHIPS QGSC_QGSC QGSC_EMV QGSP QGSP_BERT QGSP_BER_EMV "
     443  G4cout << "                            QGSC_BERT QGSC_CHIPS QGSP_BERT QGSP_BERT_EMV QGSP_BIC_EMY"
    473444         << G4endl;
    474   G4cout << "                            QGSP_BERT_EMX QGSP_BERT_HP QGSP_BIC QGSP_BIC_HP QGSP_FTFP_BERT "
     445  G4cout << "                            QGSP_BERT_EMX QGSP_BERT_HP QGSP_BIC QGSP_BIC_HP"
    475446         << G4endl;
    476447}
  • trunk/examples/extended/hadronic/Hadr01/src/PhysicsListMessenger.cc

    r1230 r1337  
    2525//
    2626//
    27 // $Id: PhysicsListMessenger.cc,v 1.4 2006/08/11 14:38:11 vnivanch Exp $
    28 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// $Id: PhysicsListMessenger.cc,v 1.7 2010/01/13 15:53:44 vnivanch Exp $
     28// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2929//
    3030//
     
    4848#include "G4UIcmdWithAString.hh"
    4949#include "G4UIcmdWithoutParameter.hh"
     50#include "G4UImanager.hh"
    5051
    5152//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     
    5859  gammaCutCmd->SetParameterName("Gcut",false);
    5960  gammaCutCmd->SetUnitCategory("Length");
    60   gammaCutCmd->SetRange("Gcut>0.0");
     61  gammaCutCmd->SetRange("Gcut>=0.0");
    6162  gammaCutCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
    6263
     
    6566  electCutCmd->SetParameterName("Ecut",false);
    6667  electCutCmd->SetUnitCategory("Length");
    67   electCutCmd->SetRange("Ecut>0.0");
     68  electCutCmd->SetRange("Ecut>=0.0");
    6869  electCutCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
    6970 
     
    7273  posCutCmd->SetParameterName("Pcut",false);
    7374  posCutCmd->SetUnitCategory("Length");
    74   posCutCmd->SetRange("Pcut>0.0");
     75  posCutCmd->SetRange("Pcut>=0.0");
    7576  posCutCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
     77
     78  pCutCmd = new G4UIcmdWithADoubleAndUnit("/testhadr/CutProt",this);
     79  pCutCmd->SetGuidance("Set proton cut.");
     80  pCutCmd->SetParameterName("ProtCut",false);
     81  pCutCmd->SetUnitCategory("Length");
     82  pCutCmd->SetRange("ProtCut>=0.0");
     83  pCutCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
    7684
    7785  allCutCmd = new G4UIcmdWithADoubleAndUnit("/testhadr/CutsAll",this);
     
    7987  allCutCmd->SetParameterName("cut",false);
    8088  allCutCmd->SetUnitCategory("Length");
    81   allCutCmd->SetRange("cut>0.0");
     89  allCutCmd->SetRange("cut>=0.0");
    8290  allCutCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
    8391
     
    100108  delete electCutCmd;
    101109  delete posCutCmd;
     110  delete pCutCmd;
    102111  delete allCutCmd;
    103112  delete pListCmd;
     
    107116//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    108117
    109 void PhysicsListMessenger::SetNewValue(G4UIcommand* command,
    110                                           G4String newValue)
     118void PhysicsListMessenger::SetNewValue(G4UIcommand* command, G4String newValue)
    111119{
    112   if( command == gammaCutCmd )
    113     pPhysicsList->SetCutForGamma(gammaCutCmd->GetNewDoubleValue(newValue));
     120  G4UImanager* UI = G4UImanager::GetUIpointer();
     121  if( command == gammaCutCmd ) {
     122    if(pPhysicsList) {
     123      pPhysicsList->SetCutForGamma(gammaCutCmd->GetNewDoubleValue(newValue));
     124    } else {
     125      UI->ApplyCommand("/run/setCutForAGivenParticle gamma " + newValue);
     126    }
    114127
    115   if( command == electCutCmd )
    116     pPhysicsList->SetCutForElectron(electCutCmd->GetNewDoubleValue(newValue));
     128  } else if( command == electCutCmd ) {
     129    if(pPhysicsList) {
     130      pPhysicsList->SetCutForElectron(electCutCmd->GetNewDoubleValue(newValue));
     131    } else {
     132      UI->ApplyCommand("/run/setCutForAGivenParticle e- " + newValue);
     133    }
    117134
    118   if( command == posCutCmd )
    119    pPhysicsList->SetCutForPositron(posCutCmd->GetNewDoubleValue(newValue));
     135  } else if( command == posCutCmd ) {
     136    if(pPhysicsList) {
     137      pPhysicsList->SetCutForPositron(posCutCmd->GetNewDoubleValue(newValue));
     138    } else {
     139      UI->ApplyCommand("/run/setCutForAGivenParticle e+ " + newValue);
     140    }
    120141
    121   if( command == allCutCmd )
    122     {
     142  } else if( command == pCutCmd ) {
     143    if(pPhysicsList) {
     144      pPhysicsList->SetCutForProton(pCutCmd->GetNewDoubleValue(newValue));
     145    } else {
     146      UI->ApplyCommand("/run/setCutForAGivenParticle proton " + newValue);
     147    }
     148
     149  } else if( command == allCutCmd ) {
     150
     151    if(pPhysicsList) {
    123152      G4double cut = allCutCmd->GetNewDoubleValue(newValue);
    124153      pPhysicsList->SetCutForGamma(cut);
    125154      pPhysicsList->SetCutForElectron(cut);
    126155      pPhysicsList->SetCutForPositron(cut);
     156      pPhysicsList->SetCutForProton(cut);
     157    } else {
     158      UI->ApplyCommand("/run/setCut " + newValue);
    127159    }
    128160
    129   if( command == pListCmd ) {
    130     G4String name = newValue;
    131     if(name == "PHYSLIST") {
    132       char* path = getenv(name);
    133       if (path) name = G4String(path);
    134       else {
    135         G4cout << "### PhysicsListMessenger WARNING: "
    136                << " environment variable PHYSLIST is not defined"
    137                << G4endl;
    138         return;
     161  } else if( command == pListCmd ) {
     162    if(pPhysicsList) {
     163      G4String name = newValue;
     164      if(name == "PHYSLIST") {
     165        char* path = getenv(name);
     166        if (path) name = G4String(path);
     167        else {
     168          G4cout << "### PhysicsListMessenger WARNING: "
     169                 << " environment variable PHYSLIST is not defined"
     170                 << G4endl;
     171          return;
     172        }
    139173      }
     174      pPhysicsList->AddPhysicsList(name);
     175    } else {
     176      G4cout << "### PhysicsListMessenger WARNING: "
     177             << " /testhadr/Physics UI command is not available "
     178             << "for reference Physics List" << G4endl;
    140179    }
    141     pPhysicsList->AddPhysicsList(name);
     180
     181  } else if( command == listCmd ) {
     182    if(pPhysicsList) {
     183      pPhysicsList->List();
     184    } else {
     185      G4cout << "### PhysicsListMessenger WARNING: "
     186             << " /testhadr/ListPhysics UI command is not available "
     187             << "for reference Physics List" << G4endl;
     188    }
    142189  }
    143 
    144   if( command == listCmd )
    145     pPhysicsList->List();
    146 
    147190}
    148191
  • trunk/examples/extended/hadronic/Hadr01/src/PrimaryGeneratorAction.cc

    r1230 r1337  
    2525//
    2626// $Id: PrimaryGeneratorAction.cc,v 1.4 2006/11/15 14:58:10 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/src/StackingAction.cc

    r1230 r1337  
    2525//
    2626// $Id: StackingAction.cc,v 1.5 2006/10/04 09:56:03 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/src/StackingMessenger.cc

    r1230 r1337  
    2525//
    2626// $Id: StackingMessenger.cc,v 1.3 2006/06/29 17:24:32 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/src/TargetSD.cc

    r1230 r1337  
    2525//
    2626// $Id: TargetSD.cc,v 1.4 2006/06/29 17:24:34 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/vis.mac

    r807 r1337  
    1 #
    2 # Macro file for the initialization phase of "TestEm9.cc"
    3 #
    4 # Sets some default verbose
    5 # and initializes the graphic.
    6 #
    71/control/verbose 2
    82/run/verbose 2
    93#
    10 # Create empty scene ("world" is default)
    11 /vis/scene/create
    12 #
    13 # Create a scene handler for a specific graphics system
    14 # Edit the next line(s) to choose another graphic system
    15 #
    16 /vis/open OGLIX
    17 #/vis/open OGLIXm
    18 #
    19 #/vis/open DAWNFILE
    20 #
    21 # Draw scene
    22 /vis/viewer/set/viewpointThetaPhi 90 0 deg
    23 /vis/viewer/zoom 1.0
    24 /vis/viewer/flush
    25 #
    26 # for drawing the tracks
    27 # if too many tracks cause core dump => storeTrajectory 0
    28 /tracking/storeTrajectory 1
    29 /vis/scene/endOfEventAction accumulate
    30 #
    31 #/testhadr/DrawTracks      charged
    324/testhadr/TargetMat        G4_Al
    335/testhadr/TargetRadius     1  cm
    346/testhadr/TargetLength     10 cm
    35 /testhadr/NumberDivZ       100
     7#/testhadr/NumberDivZ       100
    368/testhadr/DrawTracks       all
    37 /testhadr/CutsAll          1 mm
    38 /testhadr/Physics          QBBC
     9#/testhadr/CutsAll          1 mm
     10#/testhadr/Physics          QBBC
    3911#
    4012/run/initialize
    4113#
    42 
     14# Use this open statement to create an OpenGL view:
     15/vis/open OGL 600x600-0+0
     16#
     17# Use this open statement to create a .prim file suitable for
     18# viewing in DAWN:
     19#/vis/open DAWNFILE
     20#
     21# Use this open statement to create a .heprep file suitable for
     22# viewing in HepRApp:
     23#/vis/open HepRepFile
     24#
     25# Use this open statement to create a .wrl file suitable for
     26# viewing in a VRML viewer:
     27#/vis/open VRML2FILE
     28#
     29# Disable auto refresh and quieten vis messages whilst scene and
     30# trajectories are established:
     31/vis/viewer/set/autoRefresh false
     32/vis/verbose errors
     33#
     34# Draw geometry:
     35/vis/drawVolume
     36#
     37# Specify view angle:
     38/vis/viewer/set/viewpointThetaPhi 90. 0.
     39#
     40# Specify zoom value:
     41#/vis/viewer/zoom 2.
     42#
     43# Specify style (surface or wireframe):
     44#/vis/viewer/set/style wireframe
     45#
     46# Draw coordinate axes:
     47#/vis/scene/add/axes 0 0 0 1 m
     48#
     49# Draw smooth trajectories at end of event, showing trajectory points
     50# as markers 2 pixels wide:
     51/vis/scene/add/trajectories smooth
     52/vis/modeling/trajectories/create/drawByCharge
     53#/vis/modeling/trajectories/drawByCharge-0/default/setDrawStepPts true
     54#/vis/modeling/trajectories/drawByCharge-0/default/setStepPtsSize 2
     55# (if too many tracks cause core dump => /tracking/storeTrajectory 0)
     56#
     57# Draw hits at end of event:
     58#/vis/scene/add/hits
     59#
     60# To draw only gammas:
     61#/vis/filtering/trajectories/create/particleFilter
     62#/vis/filtering/trajectories/particleFilter-0/add gamma
     63#
     64# To invert the above, drawing all particles except gammas,
     65# keep the above two lines but also add:
     66#/vis/filtering/trajectories/particleFilter-0/invert true
     67#
     68# Many other options are available with /vis/modeling and /vis/filtering.
     69# For example, to select colour by particle ID:
     70#/vis/modeling/trajectories/create/drawByParticleID
     71#/vis/modeling/trajectories/drawByParticleID-0/set e- blue
     72#
     73# To superimpose all of the events from a given run:
     74/vis/scene/endOfEventAction accumulate
     75#
     76# Re-establish auto refreshing and verbosity:
     77/vis/viewer/set/autoRefresh true
     78/vis/verbose warnings
     79#
     80# For file-based drivers, use this to create an empty detector view:
     81#/vis/viewer/flush
Note: See TracChangeset for help on using the changeset viewer.