Index: trunk/examples/extended/electromagnetic/TestEm14/History
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/History	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/History	(revision 1337)
@@ -1,3 +1,3 @@
-$Id: History,v 1.12 2007/11/13 12:13:32 maire Exp $
+$Id: History,v 1.22 2010/06/07 05:40:46 perl Exp $
 -------------------------------------------------------------------
 
@@ -16,4 +16,41 @@
      ----------------------------------------------------------
      
+06-06-10 J.Perl (testem14-V09-03-03)
+- Remove unused variable in EventAction
+
+03-06-10 J.Perl (testem14-V09-03-02)
+- Updated vis usage 
+
+05-04-10 mma (testem14-V09-03-01)
+- PhysicsList: remove non pertinent EmOptions
+- RunAction: replace ProcessCount by map<string, int>
+       
+02-04-10 mma (testem14-V09-03-00)
+- PhysicsList: extend ProductionCuts down to 100 eV
+- PhysListEmStandard, Livermore, Penelope:
+      all processes registered as discrete -> no continuous Eloss
+- cleanup SteppingAction
+- remove SteppingMessenger
+- TestEm14.cc : introduction of G4UIExecutive      
+- update README
+       
+19-11-09 mma (testem14-V09-02-01)
+- add new livermore and penelope physics lists
+     
+25-09-09 mma (testem14-V09-02-00)
+- Remove old livermore and penelope physics lists
+
+24-09-08 mma (testem14-V09-01-03)
+- HistoManager : root as default format 
+
+12-06-08 mma (testem14-V09-01-02)
+- Remove AIDA from GNUmakefile
+      
+07-05-08 mma (testem14-V09-01-01)
+- README : update Aida informations     
+     
+08-01-08 mma (testem14-V09-01-00) 
+- HistoManager : ascii[0] = flag to control creation of .ascii file 
+    
 13-11-07 mma (testem14-V09-00-01) 
 - HistoManager/HistoMessenger : print selected histos on ascii file
Index: trunk/examples/extended/electromagnetic/TestEm14/README
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/README	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/README	(revision 1337)
@@ -1,3 +1,3 @@
-$Id: README,v 1.6 2007/11/13 12:13:32 maire Exp $
+$Id: README,v 1.9 2010/04/02 13:22:02 maire Exp $
 -------------------------------------------------------------------
 
@@ -28,6 +28,6 @@
  	The physics list contains the standard electromagnetic processes.
 	In order not to introduce 'artificial' constraints on the step size, the
-	multiple scattering is not instanciated, and there is no limitation from
-	the maximum energy lost per step.  
+	multiple scattering is not instanciated, and all processes are
+	registered as discrete : there is no continuous energy loss.  
  	 
  3- AN EVENT : THE PRIMARY GENERATOR
@@ -79,5 +79,5 @@
 	the commands:
  	/testem/histo/setFileName  name  (default testem14)
-   	/testem/histo/setFileType  name  (default hbook)
+   	/testem/histo/setFileType  name  (default root)
    
         It is also possible to print selected histograms on an ascii file:
@@ -130,44 +130,4 @@
 	 
   To use histograms, at least one of the AIDA implementations should be 
-  available (see http://aida.freehep.org).
+  available. See InstallAida.txt
   
- 8a - PI 
-
-  A package including AIDA and extended interfaces also using Python is PI, 
-  available from: http://cern.ch/pi
-
-  Once installed PI or PI-Lite in a specified local area $MYPY, it is required 
-  to add the installation path to $PATH, i.e. for example, for release 1.2.1 of 
-  PI:
-  setenv PATH ${PATH}:$MYPI/1.2.1/app/releases/PI/PI_1_2_1/rh73_gcc32/bin
-
-  CERN users can use the PATH to the LCG area on AFS.
-  Before running the example the command should be issued:
-  eval `aida-config --runtime csh`
-
- 8b -  OpenScientist
-
-  OpenScientist is available at http://OpenScientist.lal.in2p3.fr.
-
-  You have to "setup" the OpenScientist AIDA implementation before compiling
-  (then with G4ANALYSIS_USE set) and running your Geant4 application.
-
- On UNIX you setup, with a csh flavoured shell : 
-	csh> source <<OpenScientist install path>/aida-setup.csh 
-        or with a sh flavoured shell : 
-	sh> . <<OpenScientist install path>/aida-setup.sh
- On Windows : 
-	DOS> call <<OpenScientist install path>/aida-setup.bat 
-
-  You can use various file formats for writing (AIDA-XML, hbook, root).
-  These formats are readable by the Lab onx interactive program
-  or the OpenPAW application. See the web pages.
-
-
-  With OpenPAW, on a run.hbook file, one can view the histograms
-  with something like :
-	OS> opaw 
-        opaw> h/file 1 run.hbook  ( or opaw> h/file 1 run.aida or run.root)  
-	opaw> zone 2 2 
-	opaw> h/plot 1 
-	opaw> h/plot 2
Index: trunk/examples/extended/electromagnetic/TestEm14/TestEm14.cc
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/TestEm14.cc	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/TestEm14.cc	(revision 1337)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: TestEm14.cc,v 1.4 2007/06/23 22:23:20 maire Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// $Id: TestEm14.cc,v 1.5 2010/04/02 13:22:02 maire Exp $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 // 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -32,6 +32,4 @@
 #include "G4RunManager.hh"
 #include "G4UImanager.hh"
-#include "G4UIterminal.hh"
-#include "G4UItcsh.hh"
 #include "Randomize.hh"
 
@@ -48,4 +46,8 @@
 #ifdef G4VIS_USE
  #include "G4VisExecutive.hh"
+#endif
+
+#ifdef G4UI_USE
+#include "G4UIExecutive.hh"
 #endif
 
@@ -94,13 +96,10 @@
    visManager->Initialize();
 #endif    
-     
-     G4UIsession * session = 0;
-#ifdef G4UI_USE_TCSH
-      session = new G4UIterminal(new G4UItcsh);      
-#else
-      session = new G4UIterminal();
-#endif     
-     session->SessionStart();
-     delete session;
+
+#ifdef G4UI_USE
+      G4UIExecutive * ui = new G4UIExecutive(argc,argv);      
+      ui->SessionStart();
+      delete ui;
+#endif
      
 #ifdef G4VIS_USE
Index: trunk/examples/extended/electromagnetic/TestEm14/TestEm14.in
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/TestEm14.in	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/TestEm14.in	(revision 1337)
@@ -1,3 +1,3 @@
-# $Id: TestEm14.in,v 1.3 2006/05/10 11:15:33 maire Exp $
+# $Id: TestEm14.in,v 1.6 2010/04/05 18:02:39 maire Exp $
 #
 # Macro file for "TestEm14.cc"
@@ -12,6 +12,5 @@
 #### /testem/det/setSize 100 m
 #
-#### /testem/phys/addPhysics livermore
-#### /testem/phys/addPhysics penelope
+/testem/phys/addPhysics standard
 #
 /run/initialize
@@ -20,8 +19,8 @@
 /gun/energy 100 keV
 #
-/run/beamOn 100000
+/run/beamOn 1000000
 #
 /gun/particle e-
 /gun/energy 100 MeV
 #
-/run/beamOn 100000
+/run/beamOn 1000000
Index: trunk/examples/extended/electromagnetic/TestEm14/TestEm14.out
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/TestEm14.out	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/TestEm14.out	(revision 1337)
@@ -1,5 +1,9 @@
+
+        ############################################
+        !!! WARNING - FPE detection is activated !!!
+        ############################################
 
 *************************************************************
- Geant4 version Name: global-V09-00-03    (9-May-2008)
+ Geant4 version Name: geant4-09-03-ref-06    (25-June-2010)
                       Copyright : Geant4 Collaboration
                       Reference : NIM A 506 (2003), 250-303
@@ -10,52 +14,52 @@
 ***** Table : Nb of materials = 15 *****
 
- Material:      Air     density:  1.290 mg/cm3  RadL: 285.161 m    Imean:  85.684 eV   temperature: 273.15 K  pressure:   1.00 atm
+ Material:      Air     density:  1.290 mg/cm3  RadL: 285.161 m    Nucl.Int.Length: 662.680 m    Imean:  85.703 eV   temperature: 273.15 K  pressure:   1.00 atm
    --->  Element: Nitrogen (N)   Z =  7.0   N =  14.0   A =  14.01 g/mole  ElmMassFraction:  70.00 %  ElmAbundance  72.71 %
    --->  Element: Oxygen (O)   Z =  8.0   N =  16.0   A =  16.00 g/mole  ElmMassFraction:  30.00 %  ElmAbundance  27.29 %
 
- Material: H2liquid     density: 70.800 mg/cm3  RadL:   8.923 m    Imean:  21.800 eV 
+ Material: H2liquid     density: 70.800 mg/cm3  RadL:   8.923 m    Nucl.Int.Length:   4.960 m    Imean:  19.200 eV 
    --->  Element: Hydrogen (H)   Z =  1.0   N =   1.0   A =   1.01 g/mole  ElmMassFraction: 100.00 %  ElmAbundance 100.00 %
 
- Material:    Water H_2O   density:  1.000 g/cm3   RadL:  36.092 cm   Imean:  75.000 eV 
+ Material:    Water H_2O   density:  1.000 g/cm3   RadL:  36.092 cm   Nucl.Int.Length:  75.416 cm   Imean:  75.000 eV 
    --->  Element: Hydrogen (H)   Z =  1.0   N =   1.0   A =   1.01 g/mole  ElmMassFraction:  11.21 %  ElmAbundance  66.67 %
    --->  Element: Oxygen (O)   Z =  8.0   N =  16.0   A =  16.00 g/mole  ElmMassFraction:  88.79 %  ElmAbundance  33.33 %
 
- Material: liquidArgon     density:  1.390 g/cm3   RadL:  14.065 cm   Imean: 187.200 eV 
+ Material: liquidArgon     density:  1.390 g/cm3   RadL:  14.065 cm   Nucl.Int.Length:  86.078 cm   Imean: 188.000 eV 
    --->  Element: liquidArgon ( )   Z = 18.0   N =  40.0   A =  39.95 g/mole  ElmMassFraction: 100.00 %  ElmAbundance 100.00 %
 
- Material:   Carbon     density:  2.267 g/cm3   RadL:  18.833 cm   Imean:  78.000 eV 
+ Material:   Carbon     density:  2.267 g/cm3   RadL:  18.833 cm   Nucl.Int.Length:  35.356 cm   Imean:  81.000 eV 
    --->  Element: Carbon ( )   Z =  6.0   N =  12.0   A =  12.01 g/mole  ElmMassFraction: 100.00 %  ElmAbundance 100.00 %
 
- Material: Aluminium     density:  2.700 g/cm3   RadL:   8.893 cm   Imean: 166.400 eV 
+ Material: Aluminium     density:  2.700 g/cm3   RadL:   8.893 cm   Nucl.Int.Length:  38.879 cm   Imean: 166.000 eV 
    --->  Element: Aluminium ( )   Z = 13.0   N =  27.0   A =  26.98 g/mole  ElmMassFraction: 100.00 %  ElmAbundance 100.00 %
 
- Material:  Silicon     density:  2.330 g/cm3   RadL:   9.368 cm   Imean: 173.600 eV 
+ Material:  Silicon     density:  2.330 g/cm3   RadL:   9.368 cm   Nucl.Int.Length:  45.663 cm   Imean: 173.000 eV 
    --->  Element: Silicon ( )   Z = 14.0   N =  28.1   A =  28.09 g/mole  ElmMassFraction: 100.00 %  ElmAbundance 100.00 %
 
- Material: Germanium     density:  5.323 g/cm3   RadL:   2.301 cm   Imean: 332.800 eV 
+ Material: Germanium     density:  5.323 g/cm3   RadL:   2.301 cm   Nucl.Int.Length:  27.431 cm   Imean: 350.000 eV 
    --->  Element: Germanium ( )   Z = 32.0   N =  72.6   A =  72.61 g/mole  ElmMassFraction: 100.00 %  ElmAbundance 100.00 %
 
- Material:      NaI     density:  3.670 g/cm3   RadL:   2.586 cm   Imean: 452.000 eV 
+ Material:      NaI     density:  3.670 g/cm3   RadL:   2.586 cm   Nucl.Int.Length:  42.878 cm   Imean: 452.000 eV 
    --->  Element: Sodium (Na)   Z = 11.0   N =  23.0   A =  22.99 g/mole  ElmMassFraction:  15.34 %  ElmAbundance  50.00 %
    --->  Element: Iodine (I)   Z = 53.0   N = 126.9   A = 126.90 g/mole  ElmMassFraction:  84.66 %  ElmAbundance  50.00 %
 
- Material:   Iodine     density:  4.930 g/cm3   RadL:   1.720 cm   Imean: 492.900 eV 
+ Material:   Iodine     density:  4.930 g/cm3   RadL:   1.720 cm   Nucl.Int.Length:  35.676 cm   Imean: 491.000 eV 
    --->  Element: Iodine (I)   Z = 53.0   N = 126.9   A = 126.90 g/mole  ElmMassFraction: 100.00 %  ElmAbundance 100.00 %
 
- Material:      BGO     density:  7.100 g/cm3   RadL:   1.123 cm   Imean: 469.142 eV 
+ Material:      BGO     density:  7.100 g/cm3   RadL:   1.123 cm   Nucl.Int.Length:  22.806 cm   Imean: 473.785 eV 
    --->  Element: Oxygen (O)   Z =  8.0   N =  16.0   A =  16.00 g/mole  ElmMassFraction:  15.41 %  ElmAbundance  63.16 %
    --->  Element: Germanium (Ge)   Z = 32.0   N =  72.6   A =  72.59 g/mole  ElmMassFraction:  17.48 %  ElmAbundance  15.79 %
    --->  Element: Bismuth (Bi)   Z = 83.0   N = 209.0   A = 208.98 g/mole  ElmMassFraction:  67.10 %  ElmAbundance  21.05 %
 
- Material:     Iron     density:  7.870 g/cm3   RadL:   1.759 cm   Imean: 286.000 eV 
-   --->  Element: Iron ( )   Z = 26.0   N =  55.9   A =  55.85 g/mole  ElmMassFraction: 100.00 %  ElmAbundance 100.00 %
-
- Material: Tungsten     density: 19.300 g/cm3   RadL:   3.504 mm   Imean: 725.200 eV 
+ Material:     Iron     density:  7.870 g/cm3   RadL:   1.759 cm   Nucl.Int.Length:  16.999 cm   Imean: 286.000 eV 
+   --->  Element: Iron ( )   Z = 26.0   N =  55.8   A =  55.85 g/mole  ElmMassFraction: 100.00 %  ElmAbundance 100.00 %
+
+ Material: Tungsten     density: 19.300 g/cm3   RadL:   3.504 mm   Nucl.Int.Length:  10.312 cm   Imean: 727.000 eV 
    --->  Element: Tungsten ( )   Z = 74.0   N = 183.8   A = 183.85 g/mole  ElmMassFraction: 100.00 %  ElmAbundance 100.00 %
 
- Material:     Lead     density: 11.350 g/cm3   RadL:   5.612 mm   Imean: 820.000 eV 
+ Material:     Lead     density: 11.350 g/cm3   RadL:   5.612 mm   Nucl.Int.Length:  18.247 cm   Imean: 823.000 eV 
    --->  Element: Lead ( )   Z = 82.0   N = 207.2   A = 207.19 g/mole  ElmMassFraction: 100.00 %  ElmAbundance 100.00 %
 
- Material:  Uranium     density: 18.950 g/cm3   RadL:   3.166 mm   Imean: 892.400 eV 
+ Material:  Uranium     density: 18.950 g/cm3   RadL:   3.166 mm   Nucl.Int.Length:  11.446 cm   Imean: 890.000 eV 
    --->  Element: Uranium ( )   Z = 92.0   N = 238.0   A = 238.03 g/mole  ElmMassFraction: 100.00 %  ElmAbundance 100.00 %
 
@@ -66,6 +70,6 @@
 #### /testem/det/setSize 100 m
 #
-#### /testem/phys/addPhysics livermore
-#### /testem/phys/addPhysics penelope
+/testem/phys/addPhysics standard
+PhysicsList::AddPhysicsList: <standard>
 #
 /run/initialize
@@ -76,4 +80,5 @@
 physicsList->Construct() start.
 physicsList->Construct() start.
+physicsList->CheckParticleList() start.
 physicsList->setCut() start.
 #
@@ -81,124 +86,153 @@
 /gun/energy 100 keV
 #
-/run/beamOn 100000
-
-phot:  Total cross sections from Sandia parametrisation. 
-      Sampling according PhotoElectric model
-
-compt:  Total cross sections has a good parametrisation from 10 KeV to (100/Z) GeV
-      Sampling according Klein-Nishina model
-      tables are built for  gamma
-      Lambda tables from 100 eV  to 100 GeV in 90 bins.
-
-conv:  Total cross sections has a good parametrisation from 1.5 MeV to 100 GeV for all Z;
-      sampling secondary e+e- according Bethe-Heitler model
-      tables are built for  gamma
-      Lambda tables from 1.022 MeV to 100 GeV in 100 bins.
-
-eIoni:   tables are built for  e-
-      dE/dx and range tables from 100 eV  to 100 TeV in 120 bins.
-      Lambda tables from threshold to 100 TeV in 120 bins.
-      Delta cross sections and sampling from MollerBhabha model
-      Good description from 1 KeV to 100 GeV.
-      Step function: finalRange(mm)= 1, dRoverRange= 1, integral: 0, fluct: 0
-
-eBrem:   tables are built for  e-
-      dE/dx and range tables from 100 eV  to 100 TeV in 120 bins.
-      Lambda tables from threshold to 100 TeV in 120 bins.
-      Total cross sections and sampling from StandBrem model (based on the EEDL data library) 
-      Good description from 1 KeV to 100 GeV, log scale extrapolation above 100 GeV. LPM flag 1
-
-eIoni:   tables are built for  e+
-      dE/dx and range tables from 100 eV  to 100 TeV in 120 bins.
-      Lambda tables from threshold to 100 TeV in 120 bins.
-      Delta cross sections and sampling from MollerBhabha model
-      Good description from 1 KeV to 100 GeV.
-      Step function: finalRange(mm)= 1, dRoverRange= 1, integral: 0, fluct: 0
-
-eBrem:   tables are built for  e+
-      dE/dx and range tables from 100 eV  to 100 TeV in 120 bins.
-      Lambda tables from threshold to 100 TeV in 120 bins.
-      Total cross sections and sampling from StandBrem model (based on the EEDL data library) 
-      Good description from 1 KeV to 100 GeV, log scale extrapolation above 100 GeV. LPM flag 1
-
-annihil:       Sampling according eplus2gg model
-      tables are built for  e+
-      Lambda tables from 100 eV  to 100 TeV in 120 bins.
-
-hIoni:   tables are built for  proton
-      dE/dx and range tables from 100 eV  to 100 TeV in 120 bins.
-      Lambda tables from threshold to 100 TeV in 120 bins.
-      Scaling relation is used from proton dE/dx and range.
-      Delta cross sections and sampling from BetheBloch model for scaled energy > 2 MeV
-      Parametrisation from Bragg for protons below. NuclearStopping= 1
-      Step function: finalRange(mm)= 1, dRoverRange= 1, integral: 0, fluct: 0
-
-ionIoni:   tables are built for  GenericIon
-      dE/dx and range tables from 100 eV  to 100 TeV in 120 bins.
-      Lambda tables from threshold to 100 TeV in 120 bins.
-      Scaling relation is used from proton dE/dx and range.
-      Delta cross sections and sampling from BetheBloch model for scaled energy > 2 MeV
-      Parametrisation from BraggIon for protons below. NuclearStopping= 1
-
-      Stopping Power data for 8 ion/material pairs are used.
-      Step function: finalRange(mm)= 1, dRoverRange= 1, integral: 0, fluct: 0
-
-hIoni:   tables are built for  anti_proton
-      dE/dx and range tables from 100 eV  to 100 TeV in 120 bins.
-      Lambda tables from threshold to 100 TeV in 120 bins.
-      Scaling relation is used from proton dE/dx and range.
-      Delta cross sections and sampling from BetheBloch model for scaled energy > 2 MeV
-      Parametrisation from Bragg for protons below. NuclearStopping= 1
-      Step function: finalRange(mm)= 1, dRoverRange= 1, integral: 0, fluct: 0
-
-muIoni:   tables are built for  mu+
-      dE/dx and range tables from 100 eV  to 100 TeV in 120 bins.
-      Lambda tables from threshold to 100 TeV in 120 bins.
-      Bether-Bloch model for E > 0.2 MeV, parametrisation of Bragg peak below, 
-      radiative corrections for E > 1 GeV
-      Step function: finalRange(mm)= 1, dRoverRange= 1, integral: 0, fluct: 0
-
-muBrems:   tables are built for  mu+
-      dE/dx and range tables from 100 eV  to 100 TeV in 120 bins.
-      Lambda tables from threshold to 100 TeV in 120 bins.
-      Parametrised model 
-
-muPairProd:   tables are built for  mu+
-      dE/dx and range tables from 100 eV  to 100 TeV in 120 bins.
-      Lambda tables from threshold to 100 TeV in 120 bins.
-      Parametrised model 
-
-muIoni:   tables are built for  mu-
-      dE/dx and range tables from 100 eV  to 100 TeV in 120 bins.
-      Lambda tables from threshold to 100 TeV in 120 bins.
-      Bether-Bloch model for E > 0.2 MeV, parametrisation of Bragg peak below, 
-      radiative corrections for E > 1 GeV
-      Step function: finalRange(mm)= 1, dRoverRange= 1, integral: 0, fluct: 0
-
-muBrems:   tables are built for  mu-
-      dE/dx and range tables from 100 eV  to 100 TeV in 120 bins.
-      Lambda tables from threshold to 100 TeV in 120 bins.
-      Parametrised model 
-
-muPairProd:   tables are built for  mu-
-      dE/dx and range tables from 100 eV  to 100 TeV in 120 bins.
-      Lambda tables from threshold to 100 TeV in 120 bins.
-      Parametrised model 
-
-hIoni:   tables are built for  pi+
-      dE/dx and range tables from 100 eV  to 100 TeV in 120 bins.
-      Lambda tables from threshold to 100 TeV in 120 bins.
-      Scaling relation is used from proton dE/dx and range.
-      Delta cross sections and sampling from BetheBloch model for scaled energy > 0.297504 MeV
-      Parametrisation from Bragg for protons below. NuclearStopping= 1
-      Step function: finalRange(mm)= 1, dRoverRange= 1, integral: 0, fluct: 0
-
-hIoni:   tables are built for  pi-
-      dE/dx and range tables from 100 eV  to 100 TeV in 120 bins.
-      Lambda tables from threshold to 100 TeV in 120 bins.
-      Scaling relation is used from proton dE/dx and range.
-      Delta cross sections and sampling from BetheBloch model for scaled energy > 0.297504 MeV
-      Parametrisation from Bragg for protons below. NuclearStopping= 1
-      Step function: finalRange(mm)= 1, dRoverRange= 1, integral: 0, fluct: 0
+/run/beamOn 1000000
+
+phot:   for  gamma    SubType= 12
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+       PhotoElectric :     Emin=          0 eV         Emax=   10 TeV
+
+compt:   for  gamma    SubType= 13
+      Lambda tables from 100 eV  to 10 TeV in 77 bins, spline: 1
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+       Klein-Nishina :     Emin=          0 eV         Emax=   10 TeV
+
+conv:   for  gamma    SubType= 14
+      Lambda tables from 1.022 MeV to 10 TeV in 77 bins, spline: 1
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+       Bethe-Heitler :     Emin=          0 eV         Emax=   10 TeV
+
+eIoni:   for  e-    SubType= 2
+      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
+      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
+      finalRange(mm)= 1, dRoverRange= 0.2, integral: 0, fluct: 1, linLossLimit= 0.01
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+        MollerBhabha :     Emin=          0 eV         Emax=   10 TeV
+
+eBrem:   for  e-    SubType= 3
+      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
+      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
+      LPM flag: 1 for E > 1 GeV
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+               eBrem :     Emin=          0 eV         Emax=   1 GeV
+            eBremRel :     Emin=          1 GeV        Emax=   10 TeV
+
+eIoni:   for  e+    SubType= 2
+      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
+      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
+      finalRange(mm)= 1, dRoverRange= 0.2, integral: 0, fluct: 1, linLossLimit= 0.01
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+        MollerBhabha :     Emin=          0 eV         Emax=   10 TeV
+
+eBrem:   for  e+    SubType= 3
+      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
+      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
+      LPM flag: 1 for E > 1 GeV
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+               eBrem :     Emin=          0 eV         Emax=   1 GeV
+            eBremRel :     Emin=          1 GeV        Emax=   10 TeV
+
+annihil:   for  e+    SubType= 5
+      Lambda tables from 100 eV  to 10 TeV in 77 bins, spline: 1
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+            eplus2gg :     Emin=          0 eV         Emax=   10 TeV
+
+hIoni:   for  proton    SubType= 2
+      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
+      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
+      finalRange(mm)= 1, dRoverRange= 0.2, integral: 0, fluct: 1, linLossLimit= 0.01
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+               Bragg :     Emin=          0 eV         Emax=   2 MeV
+          BetheBloch :     Emin=          2 MeV        Emax=   10 TeV
+
+ionIoni:   for  GenericIon    SubType= 2
+      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
+      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
+      finalRange(mm)= 0.1, dRoverRange= 0.1, integral: 0, fluct: 1, linLossLimit= 0.02
+      Stopping Power data for 17 ion/material pairs, nuclearStopping: 1
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+            BraggIon :     Emin=          0 eV         Emax=   2 MeV
+          BetheBloch :     Emin=          2 MeV        Emax=   10 TeV
+
+hIoni:   for  anti_proton    SubType= 2
+      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
+      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
+      finalRange(mm)= 1, dRoverRange= 0.2, integral: 0, fluct: 1, linLossLimit= 0.01
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+            ICRU73QO :     Emin=          0 eV         Emax=   2 MeV
+          BetheBloch :     Emin=          2 MeV        Emax=   10 TeV
+
+hIoni:   for  kaon+    SubType= 2
+      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
+      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
+      finalRange(mm)= 1, dRoverRange= 0.2, integral: 0, fluct: 1, linLossLimit= 0.01
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+               Bragg :     Emin=          0 eV         Emax=   1.05231 MeV
+          BetheBloch :     Emin=    1.05231 MeV        Emax=   10 TeV
+
+hIoni:   for  kaon-    SubType= 2
+      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
+      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
+      finalRange(mm)= 1, dRoverRange= 0.2, integral: 0, fluct: 1, linLossLimit= 0.01
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+            ICRU73QO :     Emin=          0 eV         Emax=   1.05231 MeV
+          BetheBloch :     Emin=    1.05231 MeV        Emax=   10 TeV
+
+muIoni:   for  mu+    SubType= 2
+      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
+      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
+      finalRange(mm)= 1, dRoverRange= 0.2, integral: 0, fluct: 1, linLossLimit= 0.01
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+               Bragg :     Emin=          0 eV         Emax=   200 keV
+          BetheBloch :     Emin=        200 keV        Emax=   1 GeV
+        MuBetheBloch :     Emin=          1 GeV        Emax=   10 TeV
+
+muBrems:   for  mu+    SubType= 3
+      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
+      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+              MuBrem :     Emin=          0 eV         Emax=   10 TeV
+
+muPairProd:   for  mu+    SubType= 4
+      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
+      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+          muPairProd :     Emin=          0 eV         Emax=   10 TeV
+
+muIoni:   for  mu-    SubType= 2
+      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
+      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
+      finalRange(mm)= 1, dRoverRange= 0.2, integral: 0, fluct: 1, linLossLimit= 0.01
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+            ICRU73QO :     Emin=          0 eV         Emax=   200 keV
+          BetheBloch :     Emin=        200 keV        Emax=   1 GeV
+        MuBetheBloch :     Emin=          1 GeV        Emax=   10 TeV
+
+muBrems:   for  mu-    SubType= 3
+      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
+      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+              MuBrem :     Emin=          0 eV         Emax=   10 TeV
+
+muPairProd:   for  mu-    SubType= 4
+      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
+      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+          muPairProd :     Emin=          0 eV         Emax=   10 TeV
+
+hIoni:   for  pi+    SubType= 2
+      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
+      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
+      finalRange(mm)= 1, dRoverRange= 0.2, integral: 0, fluct: 1, linLossLimit= 0.01
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+               Bragg :     Emin=          0 eV         Emax=   297.504 keV
+          BetheBloch :     Emin=    297.504 keV        Emax=   10 TeV
+
+hIoni:   for  pi-    SubType= 2
+      dE/dx and range tables from 100 eV  to 10 TeV in 77 bins
+      Lambda tables from threshold to 10 TeV in 77 bins, spline: 1
+      finalRange(mm)= 1, dRoverRange= 0.2, integral: 0, fluct: 1, linLossLimit= 0.01
+      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
+            ICRU73QO :     Emin=          0 eV         Emax=   297.504 keV
+          BetheBloch :     Emin=    297.504 keV        Emax=   10 TeV
 
 Region <DefaultRegionForTheWorld> -- appears in <Water> world volume
@@ -206,5 +240,5 @@
  Pointers : G4VUserRegionInformation[0], G4UserLimits[0], G4FastSimulationManager[0], G4UserSteppingAction[0]
  Materials : Water 
- Production cuts :  gamma 1 mm     e- 1 mm     e+ 1 mm 
+ Production cuts :   gamma 1 mm      e- 1 mm      e+ 1 mm  proton 0 fm 
 
 ========= Table of registered couples ==============================
@@ -212,6 +246,6 @@
 Index : 0     used in the geometry : Yes     recalculation needed : No 
  Material : Water
- Range cuts        :  gamma 1 mm     e- 1 mm     e+ 1 mm 
- Energy thresholds :  gamma 2.90186 keV    e- 347.138 keV    e+ 338.695 keV
+ Range cuts        :  gamma  1 mm     e-  1 mm     e+  1 mm  proton 0 fm 
+ Energy thresholds :  gamma  2.93991 keV    e-  349.408 keV    e+  341.455 keV proton 0 eV 
  Region(s) which use this couple : 
     DefaultRegionForTheWorld
@@ -234,41 +268,41 @@
 ---> Begin of Event: 0
 
----> Begin of Event: 10000
-
----> Begin of Event: 20000
-
----> Begin of Event: 30000
-
----> Begin of Event: 40000
-
----> Begin of Event: 50000
-
----> Begin of Event: 60000
-
----> Begin of Event: 70000
-
----> Begin of Event: 80000
-
----> Begin of Event: 90000
+---> Begin of Event: 100000
+
+---> Begin of Event: 200000
+
+---> Begin of Event: 300000
+
+---> Begin of Event: 400000
+
+---> Begin of Event: 500000
+
+---> Begin of Event: 600000
+
+---> Begin of Event: 700000
+
+---> Begin of Event: 800000
+
+---> Begin of Event: 900000
 Run terminated.
 Run Summary
-  Number of events processed : 100000
-  User=1.4s Real=1.4s Sys=0s
-
- The run consists of 100000 gamma of 100 keV through 100 m   of Water (density: 1 g/cm3 )
-
- Process calls frequency --->	compt = 98335	phot = 1665
-
- MeanFreePath:	6.0496 cm  +- 6.0503 cm 	massic: 6.0496 g/cm2 
- CrossSection:	0.1653 cm^-1 			massic: 0.1653 cm2/g
-
- mean energy of charged secondaries: 15.209 keV	mass_energy_transfer coef: 0.025141 cm2/g
+  Number of events processed : 1000000
+  User=8.8s Real=11s Sys=0s
+
+ The run consists of 1000000 gamma of 100 keV through 100 m   of Water (density: 1 g/cm3 )
+
+ Process calls frequency --->	compt = 983863	phot = 16137
+
+ MeanFreePath:	6.0708 cm  +- 6.0755 cm 	massic: 6.0708 g/cm2 
+ CrossSection:	0.16472 cm^-1 			massic: 0.16472 cm2/g
+
+ mean energy of charged secondaries: 15.188 keV	mass_energy_transfer coef: 0.025018 cm2/g
 
  Verification : crossSections from G4EmCalculator 
-	compt= 0.1623 cm2/g	phot= 0.0026853 cm2/g	total= 0.16498 cm2/g
+	compt= 0.1623 cm2/g	phot= 0.0026853 cm2/g	total= 0.16499 cm2/g
 
 --------- Ranecu engine status ---------
  Initial seed (index) = 0
- Current couple of seeds = 1982964064, 678286457
+ Current couple of seeds = 2024716243, 1456126694
 ----------------------------------------
 #
@@ -276,5 +310,5 @@
 /gun/energy 100 MeV
 #
-/run/beamOn 100000
+/run/beamOn 1000000
 
 Region <DefaultRegionForTheWorld> -- appears in <Water> world volume
@@ -282,5 +316,5 @@
  Pointers : G4VUserRegionInformation[0], G4UserLimits[0], G4FastSimulationManager[0], G4UserSteppingAction[0]
  Materials : Water 
- Production cuts :  gamma 1 mm     e- 1 mm     e+ 1 mm 
+ Production cuts :   gamma 1 mm      e- 1 mm      e+ 1 mm  proton 0 fm 
 
 ========= Table of registered couples ==============================
@@ -288,6 +322,6 @@
 Index : 0     used in the geometry : Yes     recalculation needed : No 
  Material : Water
- Range cuts        :  gamma 1 mm     e- 1 mm     e+ 1 mm 
- Energy thresholds :  gamma 2.9 keV    e- 3.5e+02 keV    e+ 3.4e+02 keV
+ Range cuts        :  gamma  1 mm     e-  1 mm     e+  1 mm  proton 0 fm 
+ Energy thresholds :  gamma  2.9 keV    e-  3.5e+02 keV    e+  3.4e+02 keV proton 0 eV 
  Region(s) which use this couple : 
     DefaultRegionForTheWorld
@@ -299,5 +333,5 @@
 --------- Ranecu engine status ---------
  Initial seed (index) = 0
- Current couple of seeds = 1982964064, 678286457
+ Current couple of seeds = 2024716243, 1456126694
 ----------------------------------------
 Start Run processing.
@@ -305,41 +339,41 @@
 ---> Begin of Event: 0
 
----> Begin of Event: 10000
-
----> Begin of Event: 20000
-
----> Begin of Event: 30000
-
----> Begin of Event: 40000
-
----> Begin of Event: 50000
-
----> Begin of Event: 60000
-
----> Begin of Event: 70000
-
----> Begin of Event: 80000
-
----> Begin of Event: 90000
+---> Begin of Event: 100000
+
+---> Begin of Event: 200000
+
+---> Begin of Event: 300000
+
+---> Begin of Event: 400000
+
+---> Begin of Event: 500000
+
+---> Begin of Event: 600000
+
+---> Begin of Event: 700000
+
+---> Begin of Event: 800000
+
+---> Begin of Event: 900000
 Run terminated.
 Run Summary
-  Number of events processed : 100000
-  User=1.4s Real=1.4s Sys=0s
-
- The run consists of 100000 e- of 100 MeV through 100 m   of Water (density: 1 g/cm3 )
-
- Process calls frequency --->	eBrem = 61697	eIoni = 38303
-
- MeanFreePath:	1.5679 cm  +- 1.5695 cm 	massic: 1.5679 g/cm2 
- CrossSection:	0.63781 cm^-1 			massic: 0.63781 cm2/g
-
- mean energy of charged secondaries: 705.83 keV	mass_energy_transfer coef: 0.0045019 cm2/g
+  Number of events processed : 1000000
+  User=9.8s Real=14s Sys=0s
+
+ The run consists of 1000000 e- of 100 MeV through 100 m   of Water (density: 1 g/cm3 )
+
+ Process calls frequency --->	eBrem = 604059	eIoni = 395941
+
+ MeanFreePath:	1.626 cm  +- 1.6247 cm 	massic: 1.626 g/cm2 
+ CrossSection:	0.61499 cm^-1 			massic: 0.61499 cm2/g
+
+ mean energy of charged secondaries: 750.63 keV	mass_energy_transfer coef: 0.0046163 cm2/g
 
  Verification : crossSections from G4EmCalculator 
-	eBrem= 0.39397 cm2/g	eIoni= 0.24497 cm2/g	total= 0.63894 cm2/g
+	eBrem= 0.37212 cm2/g	eIoni= 0.24337 cm2/g	total= 0.61549 cm2/g
 
 --------- Ranecu engine status ---------
  Initial seed (index) = 0
- Current couple of seeds = 679237908, 105871640
+ Current couple of seeds = 1860356547, 1898423253
 ----------------------------------------
 UserDetectorConstruction deleted.
@@ -349,5 +383,4 @@
 G4 kernel has come to Quit state.
 EventManager deleted.
-Default detector region deleted.
 UImanager deleted.
 Units table cleared.
@@ -355,2 +388,3 @@
 RunManagerKernel is deleted.
 RunManager is deleting.
+
Index: trunk/examples/extended/electromagnetic/TestEm14/include/DetectorConstruction.hh
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/include/DetectorConstruction.hh	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/include/DetectorConstruction.hh	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: DetectorConstruction.hh,v 1.3 2006/06/29 16:44:56 gunter Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 // 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/include/DetectorMessenger.hh
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/include/DetectorMessenger.hh	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/include/DetectorMessenger.hh	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: DetectorMessenger.hh,v 1.3 2006/06/29 16:44:58 gunter Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/include/EventAction.hh
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/include/EventAction.hh	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/include/EventAction.hh	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: EventAction.hh,v 1.3 2006/06/29 16:45:00 gunter Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 // 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/include/EventActionMessenger.hh
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/include/EventActionMessenger.hh	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/include/EventActionMessenger.hh	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: EventActionMessenger.hh,v 1.3 2006/06/29 16:45:02 gunter Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 // 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/include/HistoManager.hh
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/include/HistoManager.hh	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/include/HistoManager.hh	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: HistoManager.hh,v 1.4 2007/11/13 12:13:32 maire Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/include/HistoMessenger.hh
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/include/HistoMessenger.hh	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/include/HistoMessenger.hh	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: HistoMessenger.hh,v 1.4 2007/11/13 12:13:32 maire Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/include/PhysListEmLivermore.hh
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/include/PhysListEmLivermore.hh	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/include/PhysListEmLivermore.hh	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: PhysListEmLivermore.hh,v 1.4 2009/11/19 10:36:37 maire Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/include/PhysListEmPenelope.hh
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/include/PhysListEmPenelope.hh	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/include/PhysListEmPenelope.hh	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: PhysListEmPenelope.hh,v 1.4 2009/11/19 10:36:37 maire Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/include/PhysListEmStandard.hh
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/include/PhysListEmStandard.hh	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/include/PhysListEmStandard.hh	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: PhysListEmStandard.hh,v 1.3 2006/06/29 16:45:14 gunter Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/include/PhysicsList.hh
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/include/PhysicsList.hh	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/include/PhysicsList.hh	(revision 1337)
@@ -26,5 +26,5 @@
 //
 // $Id: PhysicsList.hh,v 1.3 2006/06/29 16:45:16 gunter Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/include/PhysicsListMessenger.hh
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/include/PhysicsListMessenger.hh	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/include/PhysicsListMessenger.hh	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: PhysicsListMessenger.hh,v 1.3 2006/06/29 16:45:18 gunter Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/include/PrimaryGeneratorAction.hh
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/include/PrimaryGeneratorAction.hh	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/include/PrimaryGeneratorAction.hh	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: PrimaryGeneratorAction.hh,v 1.3 2006/06/29 16:45:20 gunter Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 // 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/include/RunAction.hh
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/include/RunAction.hh	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/include/RunAction.hh	(revision 1337)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: RunAction.hh,v 1.4 2006/09/06 09:56:06 maire Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// $Id: RunAction.hh,v 1.5 2010/04/05 18:02:39 maire Exp $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -34,6 +34,6 @@
 
 #include "G4UserRunAction.hh"
-#include "ProcessesCount.hh"
 #include "globals.hh"
+#include <map>
 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -56,16 +56,17 @@
     void   EndOfRunAction(const G4Run*);
 
-    void CountProcesses(G4String);
+    void CountProcesses(G4String procName) 
+                  {procCounter[procName]++;};
     void SumTrack (G4double track) 
-         {totalCount++; sumTrack += track; sumTrack2 += track*track;};
+                  {totalCount++; sumTrack += track; sumTrack2 += track*track;};
     void SumeTransf (G4double energy) 
-         {eTransfer += energy;};	 
+                  {eTransfer += energy;};	 
                     
   private:
-    DetectorConstruction*   detector;
-    PrimaryGeneratorAction* primary;
-    ProcessesCount*         ProcCounter;
-    HistoManager*           histoManager;
+    DetectorConstruction*      detector;
+    PrimaryGeneratorAction*    primary;
+    HistoManager*              histoManager;
         
+    std::map<G4String,G4int>   procCounter;            
     G4int totalCount;      //all processes counter
     G4double sumTrack;     //sum of trackLength
Index: trunk/examples/extended/electromagnetic/TestEm14/include/SteppingAction.hh
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/include/SteppingAction.hh	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/include/SteppingAction.hh	(revision 1337)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: SteppingAction.hh,v 1.4 2006/09/06 09:56:06 maire Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// $Id: SteppingAction.hh,v 1.5 2010/04/02 13:22:02 maire Exp $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -39,5 +39,4 @@
 class RunAction;
 class HistoManager;
-class SteppingMessenger;
 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -51,13 +50,8 @@
     void UserSteppingAction(const G4Step*);
     
-    void SetMaxEdepForPlot(G4double value)  {fract = value;};
-    
   private:
     PrimaryGeneratorAction* primary;
     RunAction*              runAction;
     HistoManager*           histoManager;
-    SteppingMessenger*      stepMessenger;
-    
-    G4double                fract;   //max edep for plotting final state
 };
 
Index: trunk/examples/extended/electromagnetic/TestEm14/include/SteppingVerbose.hh
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/include/SteppingVerbose.hh	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/include/SteppingVerbose.hh	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: SteppingVerbose.hh,v 1.3 2006/06/29 16:45:31 gunter Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //   This class manages the verbose outputs in G4SteppingManager. 
Index: trunk/examples/extended/electromagnetic/TestEm14/src/DetectorConstruction.cc
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/src/DetectorConstruction.cc	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/src/DetectorConstruction.cc	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: DetectorConstruction.cc,v 1.4 2006/06/29 16:45:33 gunter Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/src/DetectorMessenger.cc
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/src/DetectorMessenger.cc	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/src/DetectorMessenger.cc	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: DetectorMessenger.cc,v 1.3 2006/06/29 16:45:35 gunter Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/src/EventAction.cc
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/src/EventAction.cc	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/src/EventAction.cc	(revision 1337)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: EventAction.cc,v 1.3 2006/06/29 16:45:37 gunter Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// $Id: EventAction.cc,v 1.6 2010/06/07 05:40:46 perl Exp $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 // 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -35,7 +35,4 @@
 
 #include "G4Event.hh"
-#include "G4TrajectoryContainer.hh"
-#include "G4Trajectory.hh"
-#include "G4VVisManager.hh"
 #include "G4UnitsTable.hh"
 
@@ -43,5 +40,5 @@
 
 EventAction::EventAction()
-:printModulo(10000),eventMessenger(0)
+:printModulo(100000),eventMessenger(0)
 {
   eventMessenger = new EventActionMessenger(this);
@@ -68,17 +65,6 @@
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
 
-void EventAction::EndOfEventAction(const G4Event* evt)
+void EventAction::EndOfEventAction(const G4Event*)
 {
-  if (G4VVisManager::GetConcreteInstance())
-  {
-    G4TrajectoryContainer* trajectoryContainer = evt->GetTrajectoryContainer();
-    G4int n_trajectories = 0;
-    if (trajectoryContainer) n_trajectories = trajectoryContainer->entries();  
-    for (G4int i=0; i<n_trajectories; i++) {
-       G4Trajectory* trj = (G4Trajectory*)
-                                       ((*(evt->GetTrajectoryContainer()))[i]);
-       trj->DrawTrajectory(1000);
-    }
-  }
 }
 
Index: trunk/examples/extended/electromagnetic/TestEm14/src/EventActionMessenger.cc
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/src/EventActionMessenger.cc	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/src/EventActionMessenger.cc	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: EventActionMessenger.cc,v 1.3 2006/06/29 16:45:39 gunter Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 // 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/src/HistoManager.cc
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/src/HistoManager.cc	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/src/HistoManager.cc	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: HistoManager.cc,v 1.7 2008/09/24 18:53:56 maire Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/src/HistoMessenger.cc
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/src/HistoMessenger.cc	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/src/HistoMessenger.cc	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: HistoMessenger.cc,v 1.4 2007/11/13 12:17:07 maire Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/src/PhysListEmLivermore.cc
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/src/PhysListEmLivermore.cc	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/src/PhysListEmLivermore.cc	(revision 1337)
@@ -25,6 +25,6 @@
 //
 //
-// $Id: PhysListEmLivermore.cc,v 1.4 2009/11/19 10:36:37 maire Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// $Id: PhysListEmLivermore.cc,v 1.5 2010/04/02 13:22:02 maire Exp $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -140,5 +140,5 @@
       eIoniModel->SetHighEnergyLimit(highEnergyLimit); 
       eIoni->AddEmModel(0, eIoniModel, new G4UniversalFluctuation() );
-      pmanager->AddProcess(eIoni,                   -1, 1, 1);
+      pmanager->AddProcess(eIoni,                   -1,-1, 1);
       
       G4eBremsstrahlung* eBrem = new G4eBremsstrahlung();
@@ -147,10 +147,10 @@
       eBremModel->SetHighEnergyLimit(highEnergyLimit);
       eBrem->AddEmModel(0, eBremModel);
-      pmanager->AddProcess(eBrem,                   -1, 2, 2);
+      pmanager->AddProcess(eBrem,                   -1,-1, 2);
       	    
     } else if (particleName == "e+") {
       //positron
-      pmanager->AddProcess(new G4eIonisation,       -1, 1, 1);
-      pmanager->AddProcess(new G4eBremsstrahlung,   -1, 2, 2);
+      pmanager->AddProcess(new G4eIonisation,       -1,-1, 1);
+      pmanager->AddProcess(new G4eBremsstrahlung,   -1,-1, 2);
       pmanager->AddProcess(new G4eplusAnnihilation,  0,-1, 3);
       
@@ -158,10 +158,10 @@
                particleName == "mu-"    ) {
       //muon  
-      pmanager->AddProcess(new G4MuIonisation,      -1, 1, 1);
-      pmanager->AddProcess(new G4MuBremsstrahlung,  -1, 2, 2);
-      pmanager->AddProcess(new G4MuPairProduction,  -1, 3, 3);       
+      pmanager->AddProcess(new G4MuIonisation,      -1,-1, 1);
+      pmanager->AddProcess(new G4MuBremsstrahlung,  -1,-1, 2);
+      pmanager->AddProcess(new G4MuPairProduction,  -1,-1, 3);       
      
     } else if( particleName == "alpha" || particleName == "GenericIon" ) { 
-      pmanager->AddProcess(new G4ionIonisation,     -1, 1, 1);
+      pmanager->AddProcess(new G4ionIonisation,     -1,-1, 1);
 
     } else if ((!particle->IsShortLived()) &&
@@ -169,5 +169,5 @@
 	       (particle->GetParticleName() != "chargedgeantino")) {
       //all others charged particles except geantino
-      pmanager->AddProcess(new G4hIonisation,       -1, 1, 1);
+      pmanager->AddProcess(new G4hIonisation,       -1,-1, 1);
     }
   }
Index: trunk/examples/extended/electromagnetic/TestEm14/src/PhysListEmPenelope.cc
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/src/PhysListEmPenelope.cc	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/src/PhysListEmPenelope.cc	(revision 1337)
@@ -25,6 +25,6 @@
 //
 //
-// $Id: PhysListEmPenelope.cc,v 1.4 2009/11/19 10:36:37 maire Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// $Id: PhysListEmPenelope.cc,v 1.5 2010/04/02 13:22:02 maire Exp $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -141,5 +141,5 @@
       eIoniModel->SetHighEnergyLimit(highEnergyLimit); 
       eIoni->AddEmModel(0, eIoniModel, new G4UniversalFluctuation() );
-      pmanager->AddProcess(eIoni,                   -1, 1, 1);
+      pmanager->AddProcess(eIoni,                   -1,-1, 1);
       
       G4eBremsstrahlung* eBrem = new G4eBremsstrahlung();
@@ -148,5 +148,5 @@
       eBremModel->SetHighEnergyLimit(highEnergyLimit);
       eBrem->AddEmModel(0, eBremModel);
-      pmanager->AddProcess(eBrem,                   -1, 2, 2);
+      pmanager->AddProcess(eBrem,                   -1,-1, 2);
       	    
     } else if (particleName == "e+") {
@@ -157,5 +157,5 @@
       eIoniModel->SetHighEnergyLimit(highEnergyLimit); 
       eIoni->AddEmModel(0, eIoniModel, new G4UniversalFluctuation() );
-      pmanager->AddProcess(eIoni,                   -1, 1, 1);
+      pmanager->AddProcess(eIoni,                   -1,-1, 1);
       
       G4eBremsstrahlung* eBrem = new G4eBremsstrahlung();
@@ -164,5 +164,5 @@
       eBremModel->SetHighEnergyLimit(highEnergyLimit);
       eBrem->AddEmModel(0, eBremModel);
-      pmanager->AddProcess(eBrem,                   -1, 2, 2);      
+      pmanager->AddProcess(eBrem,                   -1,-1, 2);      
 
       G4eplusAnnihilation* eAnni = new G4eplusAnnihilation();
@@ -176,10 +176,10 @@
                particleName == "mu-"    ) {
       //muon  
-      pmanager->AddProcess(new G4MuIonisation,      -1, 1, 1);
-      pmanager->AddProcess(new G4MuBremsstrahlung,  -1, 2, 2);
-      pmanager->AddProcess(new G4MuPairProduction,  -1, 3, 3);       
+      pmanager->AddProcess(new G4MuIonisation,      -1,-1, 1);
+      pmanager->AddProcess(new G4MuBremsstrahlung,  -1,-1, 2);
+      pmanager->AddProcess(new G4MuPairProduction,  -1,-1, 3);       
      
     } else if( particleName == "alpha" || particleName == "GenericIon" ) { 
-      pmanager->AddProcess(new G4ionIonisation,     -1, 1, 1);
+      pmanager->AddProcess(new G4ionIonisation,     -1,-1, 1);
 
     } else if ((!particle->IsShortLived()) &&
@@ -187,5 +187,5 @@
 	       (particle->GetParticleName() != "chargedgeantino")) {
       //all others charged particles except geantino
-      pmanager->AddProcess(new G4hIonisation,       -1, 1, 1);
+      pmanager->AddProcess(new G4hIonisation,       -1,-1, 1);
     }
   }
Index: trunk/examples/extended/electromagnetic/TestEm14/src/PhysListEmStandard.cc
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/src/PhysListEmStandard.cc	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/src/PhysListEmStandard.cc	(revision 1337)
@@ -25,6 +25,6 @@
 //
 //
-// $Id: PhysListEmStandard.cc,v 1.4 2006/10/24 16:54:16 maire Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// $Id: PhysListEmStandard.cc,v 1.5 2010/04/02 13:22:02 maire Exp $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -82,11 +82,11 @@
     } else if (particleName == "e-") {
       //electron
-      pmanager->AddProcess(new G4eIonisation,        -1, 1,1);
-      pmanager->AddProcess(new G4eBremsstrahlung,    -1, 2,2);
+      pmanager->AddProcess(new G4eIonisation,        -1,-1,1);
+      pmanager->AddProcess(new G4eBremsstrahlung,    -1,-1,2);
 	    
     } else if (particleName == "e+") {
       //positron
-      pmanager->AddProcess(new G4eIonisation,        -1, 1,1);
-      pmanager->AddProcess(new G4eBremsstrahlung,    -1, 2,2);
+      pmanager->AddProcess(new G4eIonisation,        -1,-1,1);
+      pmanager->AddProcess(new G4eBremsstrahlung,    -1,-1,2);
       pmanager->AddProcess(new G4eplusAnnihilation,   0,-1,3);
       
@@ -94,10 +94,10 @@
                particleName == "mu-"    ) {
       //muon  
-      pmanager->AddProcess(new G4MuIonisation,      -1, 1,1);
-      pmanager->AddProcess(new G4MuBremsstrahlung,  -1, 2,2);
-      pmanager->AddProcess(new G4MuPairProduction,  -1, 3,3);       
+      pmanager->AddProcess(new G4MuIonisation,      -1,-1,1);
+      pmanager->AddProcess(new G4MuBremsstrahlung,  -1,-1,2);
+      pmanager->AddProcess(new G4MuPairProduction,  -1,-1,3);       
      
     } else if( particleName == "alpha" || particleName == "GenericIon" ) { 
-      pmanager->AddProcess(new G4ionIonisation,     -1, 1,1);
+      pmanager->AddProcess(new G4ionIonisation,     -1,-1,1);
 
     } else if ((!particle->IsShortLived()) &&
@@ -105,5 +105,5 @@
 	       (particle->GetParticleName() != "chargedgeantino")) {
       //all others charged particles except geantino
-      pmanager->AddProcess(new G4hIonisation,       -1,1,1);
+      pmanager->AddProcess(new G4hIonisation,       -1,-1,1);
     }
   }
Index: trunk/examples/extended/electromagnetic/TestEm14/src/PhysicsList.cc
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/src/PhysicsList.cc	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/src/PhysicsList.cc	(revision 1337)
@@ -25,6 +25,6 @@
 //
 // 
-// $Id: PhysicsList.cc,v 1.6 2009/11/19 10:36:37 maire Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// $Id: PhysicsList.cc,v 1.8 2010/04/05 18:02:39 maire Exp $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -183,7 +183,5 @@
   //
   G4EmProcessOptions emOptions;
-  emOptions.SetStepFunction(1., 1*mm);  
   emOptions.SetIntegral(false);
-  emOptions.SetLossFluctuations(false);    
 }
 
@@ -227,10 +225,13 @@
 
 void PhysicsList::SetCuts()
-{    
-  // set cut values for gamma at first and for e- second and next for e+,
-  // because some processes for e+/e- need cut values for gamma
-  SetCutValue(cutForGamma, "gamma");
-  SetCutValue(cutForElectron, "e-");
-  SetCutValue(cutForPositron, "e+");
+{
+ // fixe lower limit for cut
+ G4ProductionCutsTable::GetProductionCutsTable()->SetEnergyRange(100*eV, 1*GeV);
+  
+ // set cut values for gamma at first and for e- second and next for e+,
+ // because some processes for e+/e- need cut values for gamma
+ SetCutValue(cutForGamma, "gamma");
+ SetCutValue(cutForElectron, "e-");
+ SetCutValue(cutForPositron, "e+");
 }
 
Index: trunk/examples/extended/electromagnetic/TestEm14/src/PhysicsListMessenger.cc
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/src/PhysicsListMessenger.cc	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/src/PhysicsListMessenger.cc	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: PhysicsListMessenger.cc,v 1.3 2006/06/29 16:45:55 gunter Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/src/PrimaryGeneratorAction.cc
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/src/PrimaryGeneratorAction.cc	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/src/PrimaryGeneratorAction.cc	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: PrimaryGeneratorAction.cc,v 1.3 2006/06/29 16:45:57 gunter Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 // 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/src/RunAction.cc
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/src/RunAction.cc	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/src/RunAction.cc	(revision 1337)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: RunAction.cc,v 1.4 2006/09/06 09:56:06 maire Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// $Id: RunAction.cc,v 1.5 2010/04/05 18:02:39 maire Exp $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 // 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -49,5 +49,5 @@
 RunAction::RunAction(DetectorConstruction* det, PrimaryGeneratorAction* prim,
                      HistoManager* histo)
-  : detector(det), primary(prim), ProcCounter(0), histoManager(histo)
+  : detector(det), primary(prim), histoManager(histo)
 { }
 
@@ -67,5 +67,4 @@
   CLHEP::HepRandom::showEngineStatus();
 
-  ProcCounter = new ProcessesCount;
   totalCount = 0;
   sumTrack = sumTrack2 = 0.;
@@ -73,17 +72,4 @@
   
   histoManager->book();
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
-
-void RunAction::CountProcesses(G4String procName)
-{
-   //does the process  already encounted ?
-   size_t nbProc = ProcCounter->size();
-   size_t i = 0;
-   while ((i<nbProc)&&((*ProcCounter)[i]->GetName()!=procName)) i++;
-   if (i == nbProc) ProcCounter->push_back( new OneProcessCount(procName));
-
-   (*ProcCounter)[i]->Count();
 }
 
@@ -113,11 +99,12 @@
   //frequency of processes
   G4cout << "\n Process calls frequency --->";
-  for (size_t i=0; i< ProcCounter->size();i++) {
-     G4String procName = (*ProcCounter)[i]->GetName();
-     G4int    count    = (*ProcCounter)[i]->GetCounter(); 
+  std::map<G4String,G4int>::iterator it;  
+  for (it = procCounter.begin(); it != procCounter.end(); it++) {
+     G4String procName = it->first;
+     G4int    count    = it->second;
      G4cout << "\t" << procName << " = " << count;
      if (procName == "Transportation") survive = count;
   }
-  
+      
   if (survive > 0) {
     G4cout << "\n\n Nb of incident particles surviving after "
@@ -160,6 +147,6 @@
   G4EmCalculator emCalculator;
   G4double sumc = 0.0;  
-  for (size_t i=0; i< ProcCounter->size();i++) {
-    G4String procName = (*ProcCounter)[i]->GetName();
+  for (it = procCounter.begin(); it != procCounter.end(); it++) {
+    G4String procName = it->first;      
     G4double massSigma = 
     emCalculator.GetCrossSectionPerVolume(energy,particle,
@@ -177,13 +164,8 @@
 	 	 
   //restore default format	 
-  G4cout.precision(prec);         
-
-  // delete and remove all contents in ProcCounter 
-  while (ProcCounter->size()>0){
-    OneProcessCount* aProcCount=ProcCounter->back();
-    ProcCounter->pop_back();
-    delete aProcCount;
-  }
-  delete ProcCounter;
+  G4cout.precision(prec);
+           
+  // remove all contents in procCounter 
+  procCounter.clear();
   
   histoManager->save();
Index: trunk/examples/extended/electromagnetic/TestEm14/src/SteppingAction.cc
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/src/SteppingAction.cc	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/src/SteppingAction.cc	(revision 1337)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: SteppingAction.cc,v 1.5 2007/06/23 22:23:20 maire Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// $Id: SteppingAction.cc,v 1.6 2010/04/02 13:22:02 maire Exp $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 // 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -34,5 +34,4 @@
 #include "RunAction.hh"
 #include "HistoManager.hh"
-#include "SteppingMessenger.hh"
 
 #include "G4RunManager.hh"
@@ -43,15 +42,10 @@
                                RunAction* RuAct, HistoManager* Hist)
 :primary(prim),runAction(RuAct), histoManager(Hist)
-{
-  stepMessenger = new SteppingMessenger(this);
-  fract = 0.1;
-}
+{ }
 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
 
 SteppingAction::~SteppingAction()
-{
-  delete stepMessenger;
-}
+{ }
 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -60,6 +54,5 @@
 {
   G4StepPoint* endPoint = aStep->GetPostStepPoint();
-  G4String procName = endPoint->GetProcessDefinedStep()->GetProcessName();
-  G4TrackVector* secondary = fpSteppingManager->GetSecondary();          
+  G4String procName = endPoint->GetProcessDefinedStep()->GetProcessName();     
   G4bool transmit = (endPoint->GetStepStatus() <= fGeomBoundary);  
   if (transmit) runAction->CountProcesses(procName);
@@ -67,48 +60,40 @@
     //count real processes and sum track length
     G4double stepLength = aStep->GetStepLength();
-    G4double charge = aStep->GetTrack()->GetDefinition()->GetPDGCharge();
-    if ((charge == 0.) || ((charge != 0.) && (((*secondary).size() > 0))))
-      {
-       runAction->CountProcesses(procName);  
-       runAction->SumTrack(stepLength);
-      }
+    runAction->CountProcesses(procName);  
+    runAction->SumTrack(stepLength);
   }
   
   //plot final state (only if continuous energy loss is small enough)
   //
-  G4double edep = aStep->GetTotalEnergyDeposit();
-  G4double E0 = primary->GetParticleGun()->GetParticleEnergy();
-  if (edep < fract*E0) {
    
-    //scattered primary particle
-    //
-    G4int id = 1;
-    if (aStep->GetTrack()->GetTrackStatus() == fAlive) {
-      G4double energy = endPoint->GetKineticEnergy();      
-      histoManager->FillHisto(id,energy);
+  //scattered primary particle
+  //
+  G4int id = 1;
+  if (aStep->GetTrack()->GetTrackStatus() == fAlive) {
+    G4double energy = endPoint->GetKineticEnergy();      
+    histoManager->FillHisto(id,energy);
 
-      id = 2;
-      G4ThreeVector direction = endPoint->GetMomentumDirection();
-      G4double costeta = direction.x();
-      histoManager->FillHisto(id,costeta);     
-    }  
+    id = 2;
+    G4ThreeVector direction = endPoint->GetMomentumDirection();
+    G4double costeta = direction.x();
+    histoManager->FillHisto(id,costeta);     
+  }  
   
-    //secondaries
-    //
-    //G4TrackVector* secondary = fpSteppingManager->GetSecondary();
-    for (size_t lp=0; lp<(*secondary).size(); lp++) {
-      G4double charge = (*secondary)[lp]->GetDefinition()->GetPDGCharge();
-      if (charge != 0.) id = 3; else id = 5;
-      G4double energy = (*secondary)[lp]->GetKineticEnergy();
-      histoManager->FillHisto(id,energy);
+  //secondaries
+  //
+  G4TrackVector* secondary = fpSteppingManager->GetSecondary();
+  for (size_t lp=0; lp<(*secondary).size(); lp++) {
+    G4double charge = (*secondary)[lp]->GetDefinition()->GetPDGCharge();
+    if (charge != 0.) id = 3; else id = 5;
+    G4double energy = (*secondary)[lp]->GetKineticEnergy();
+    histoManager->FillHisto(id,energy);
 
-      id++;
-      G4ThreeVector direction = (*secondary)[lp]->GetMomentumDirection();      
-      G4double costeta = direction.x();
-      histoManager->FillHisto(id,costeta);
+    id++;
+    G4ThreeVector direction = (*secondary)[lp]->GetMomentumDirection();      
+    G4double costeta = direction.x();
+    histoManager->FillHisto(id,costeta);
       
-      //energy tranferred to charged secondaries
-      if (charge != 0.) runAction->SumeTransf(energy);         
-    }
+    //energy tranferred to charged secondaries
+    if (charge != 0.) runAction->SumeTransf(energy);         
   }
          
Index: trunk/examples/extended/electromagnetic/TestEm14/src/SteppingVerbose.cc
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/src/SteppingVerbose.cc	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/src/SteppingVerbose.cc	(revision 1337)
@@ -25,5 +25,5 @@
 //
 // $Id: SteppingVerbose.cc,v 1.3 2006/06/29 16:46:05 gunter Exp $
-// GEANT4 tag $Name: geant4-09-03-cand-01 $
+// GEANT4 tag $Name: geant4-09-04-beta-01 $
 //
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/examples/extended/electromagnetic/TestEm14/vis.mac
===================================================================
--- trunk/examples/extended/electromagnetic/TestEm14/vis.mac	(revision 1230)
+++ trunk/examples/extended/electromagnetic/TestEm14/vis.mac	(revision 1337)
@@ -1,4 +1,4 @@
 #
-# Macro file for the initialization phase of "TestEm14.cc"
+# Macro file for the initialization phase of "TestEm6.cc"
 #
 # Sets some default verbose
@@ -10,20 +10,70 @@
 /run/initialize
 #
-# Create empty scene ("world" is default)
-/vis/scene/create
+# Use this open statement to create an OpenGL view:
+/vis/open OGL 600x600-0+0
 #
-# Create a scene handler for a specific graphics system
-# Edit the next line(s) to choose another graphic system
-#
-/vis/open OGLIX
-#
+# Use this open statement to create a .prim file suitable for
+# viewing in DAWN:
 #/vis/open DAWNFILE
 #
-# Draw scene
+# Use this open statement to create a .heprep file suitable for
+# viewing in HepRApp:
+#/vis/open HepRepFile
+#
+# Use this open statement to create a .wrl file suitable for
+# viewing in a VRML viewer:
+#/vis/open VRML2FILE
+#
+# Disable auto refresh and quieten vis messages whilst scene and
+# trajectories are established:
+/vis/viewer/set/autoRefresh false
+/vis/verbose errors
+#
+# Draw geometry:
+/vis/drawVolume
+#
+# Specify view angle:
+#/vis/viewer/set/viewpointThetaPhi 90. 0.
+#
+# Specify zoom value:
 /vis/viewer/zoom 1.4
-/vis/viewer/flush
 #
-# for drawing the tracks
-# if too many tracks cause core dump => storeTrajectory 0
-/tracking/storeTrajectory 1
+# Specify style (surface or wireframe):
+#/vis/viewer/set/style surface
+#
+# Draw coordinate axes:
+#/vis/scene/add/axes 0 0 0 1 m
+#
+# Draw smooth trajectories at end of event, showing trajectory points
+# as markers 2 pixels wide:
+/vis/scene/add/trajectories smooth
+/vis/modeling/trajectories/create/drawByCharge
+/vis/modeling/trajectories/drawByCharge-0/default/setDrawStepPts true
+/vis/modeling/trajectories/drawByCharge-0/default/setStepPtsSize 2
+# (if too many tracks cause core dump => /tracking/storeTrajectory 0)
+#
+# Draw hits at end of event:
+#/vis/scene/add/hits
+#
+# To draw only gammas:
+#/vis/filtering/trajectories/create/particleFilter
+#/vis/filtering/trajectories/particleFilter-0/add gamma
+#
+# To invert the above, drawing all particles except gammas,
+# keep the above two lines but also add:
+#/vis/filtering/trajectories/particleFilter-0/invert true
+#
+# Many other options are available with /vis/modeling and /vis/filtering.
+# For example, to select colour by particle ID:
+#/vis/modeling/trajectories/create/drawByParticleID
+#/vis/modeling/trajectories/drawByParticleID-0/set e- blue
+#
+# To superimpose all of the events from a given run:
 /vis/scene/endOfEventAction accumulate
+#
+# Re-establish auto refreshing and verbosity:
+/vis/viewer/set/autoRefresh true
+/vis/verbose warnings
+#
+# For file-based drivers, use this to create an empty detector view:
+#/vis/viewer/flush
