Import Geant4 11.0.0.beta source tree

This commit is contained in:
Gabriele Cosmo
2021-06-25 16:12:29 +02:00
parent c968e26a39
commit 6399a014b6
4200 changed files with 207479 additions and 237366 deletions
@@ -1,9 +1,6 @@
#---Adding all electromagnetic examples subdirectories explicitly
cmake_minimum_required(VERSION 3.8...3.18)
if(${CMAKE_VERSION} VERSION_LESS 3.12)
cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
endif()
cmake_minimum_required(VERSION 3.12...3.20)
add_subdirectory(TestEm0)
add_subdirectory(TestEm1)
@@ -13,6 +13,9 @@ track of all tags.
----------------------------------------------------------
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
24-05-21 B. Morgan (electromagnetic-V10-07-00)
- Bump required CMake version range to 3.12...3.20, matching core Geant4
13-11-20 B. Morgan (electromagnetic-V10-06-01)
- Enforce use of Serial RunManager for serial-only examples.
@@ -1,9 +1,6 @@
#----------------------------------------------------------------------------
# Setup the project
cmake_minimum_required(VERSION 3.8...3.18)
if(${CMAKE_VERSION} VERSION_LESS 3.12)
cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
endif()
cmake_minimum_required(VERSION 3.12...3.20)
project(TestEm0)
#----------------------------------------------------------------------------
@@ -14,6 +14,10 @@ track of all tags.
----------------------------------------------------------
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
17-12-20 mma (testem0-V10-07-00)
- updated PhysListEmStandard.cc
- DetectorConstruction : print only used material
03-10-19 V.Ivant (testem0-V10-05-02)
- PhysicsList : define options, specific for this example after
@@ -3,8 +3,14 @@
!!! WARNING - FPE detection is activated !!!
############################################
################################
!!! G4Backtrace is activated !!!
################################
**************************************************************
Geant4 version Name: geant4-10-07-patch-02 (11-June-2021)
Geant4 version Name: geant4-10-07-ref-06 (25-June-2021)
Copyright : Geant4 Collaboration
References : NIM A 506 (2003), 250-303
: IEEE-TNS 53 (2006), 270-278
@@ -13,133 +19,7 @@
**************************************************************
***** Table : Nb of materials = 19 *****
Material: Air density: 1.290 mg/cm3 RadL: 285.161 m Nucl.Int.Length: 662.680 m
Imean: 85.703 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Nitrogen (N) Z = 7.0 N = 14 A = 14.010 g/mole
---> Isotope: N14 Z = 7 N = 14 A = 14.00 g/mole abundance: 99.632 %
---> Isotope: N15 Z = 7 N = 15 A = 15.00 g/mole abundance: 0.368 %
ElmMassFraction: 70.00 % ElmAbundance 72.71 %
---> Element: Oxygen (O) Z = 8.0 N = 16 A = 16.000 g/mole
---> Isotope: O16 Z = 8 N = 16 A = 15.99 g/mole abundance: 99.757 %
---> Isotope: O17 Z = 8 N = 17 A = 17.00 g/mole abundance: 0.038 %
---> Isotope: O18 Z = 8 N = 18 A = 18.00 g/mole abundance: 0.205 %
ElmMassFraction: 30.00 % ElmAbundance 27.29 %
Material: H2liquid density: 70.800 mg/cm3 RadL: 8.923 m Nucl.Int.Length: 4.944 m
Imean: 19.200 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Hydrogen (H) Z = 1.0 N = 1 A = 1.010 g/mole
---> Isotope: H1 Z = 1 N = 1 A = 1.01 g/mole abundance: 99.989 %
---> Isotope: H2 Z = 1 N = 2 A = 2.01 g/mole abundance: 0.011 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Water density: 1.000 g/cm3 RadL: 36.092 cm Nucl.Int.Length: 75.356 cm
Imean: 78.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Hydrogen (H) Z = 1.0 N = 1 A = 1.010 g/mole
---> Isotope: H1 Z = 1 N = 1 A = 1.01 g/mole abundance: 99.989 %
---> Isotope: H2 Z = 1 N = 2 A = 2.01 g/mole abundance: 0.011 %
ElmMassFraction: 11.21 % ElmAbundance 66.67 %
---> Element: Oxygen (O) Z = 8.0 N = 16 A = 16.000 g/mole
---> Isotope: O16 Z = 8 N = 16 A = 15.99 g/mole abundance: 99.757 %
---> Isotope: O17 Z = 8 N = 17 A = 17.00 g/mole abundance: 0.038 %
---> Isotope: O18 Z = 8 N = 18 A = 18.00 g/mole abundance: 0.205 %
ElmMassFraction: 88.79 % ElmAbundance 33.33 %
Material: WaterSteam density: 1.000 mg/cm3 RadL: 360.924 m Nucl.Int.Length: 753.560 m
Imean: 71.600 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Hydrogen (H) Z = 1.0 N = 1 A = 1.010 g/mole
---> Isotope: H1 Z = 1 N = 1 A = 1.01 g/mole abundance: 99.989 %
---> Isotope: H2 Z = 1 N = 2 A = 2.01 g/mole abundance: 0.011 %
ElmMassFraction: 11.21 % ElmAbundance 66.67 %
---> Element: Oxygen (O) Z = 8.0 N = 16 A = 16.000 g/mole
---> Isotope: O16 Z = 8 N = 16 A = 15.99 g/mole abundance: 99.757 %
---> Isotope: O17 Z = 8 N = 17 A = 17.00 g/mole abundance: 0.038 %
---> Isotope: O18 Z = 8 N = 18 A = 18.00 g/mole abundance: 0.205 %
ElmMassFraction: 88.79 % ElmAbundance 33.33 %
Material: BGO density: 7.100 g/cm3 RadL: 1.123 cm Nucl.Int.Length: 22.806 cm
Imean: 473.785 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Oxygen (O) Z = 8.0 N = 16 A = 16.000 g/mole
---> Isotope: O16 Z = 8 N = 16 A = 15.99 g/mole abundance: 99.757 %
---> Isotope: O17 Z = 8 N = 17 A = 17.00 g/mole abundance: 0.038 %
---> Isotope: O18 Z = 8 N = 18 A = 18.00 g/mole abundance: 0.205 %
ElmMassFraction: 15.41 % ElmAbundance 63.16 %
---> Element: Germanium (Ge) Z = 32.0 N = 73 A = 72.590 g/mole
---> Isotope: Ge70 Z = 32 N = 70 A = 69.92 g/mole abundance: 20.840 %
---> Isotope: Ge72 Z = 32 N = 72 A = 71.92 g/mole abundance: 27.540 %
---> Isotope: Ge73 Z = 32 N = 73 A = 72.92 g/mole abundance: 7.730 %
---> Isotope: Ge74 Z = 32 N = 74 A = 73.92 g/mole abundance: 36.280 %
---> Isotope: Ge76 Z = 32 N = 76 A = 75.92 g/mole abundance: 7.610 %
ElmMassFraction: 17.48 % ElmAbundance 15.79 %
---> Element: Bismuth (Bi) Z = 83.0 N = 209 A = 208.980 g/mole
---> Isotope: Bi209 Z = 83 N = 209 A = 208.98 g/mole abundance: 100.000 %
ElmMassFraction: 67.10 % ElmAbundance 21.05 %
Material: Aluminium density: 2.700 g/cm3 RadL: 8.893 cm Nucl.Int.Length: 38.880 cm
Imean: 166.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Al (Al) Z = 13.0 N = 27 A = 26.982 g/mole
---> Isotope: Al27 Z = 13 N = 27 A = 26.98 g/mole abundance: 100.000 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Silicon density: 2.330 g/cm3 RadL: 9.366 cm Nucl.Int.Length: 45.660 cm
Imean: 173.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Si (Si) Z = 14.0 N = 28 A = 28.085 g/mole
---> Isotope: Si28 Z = 14 N = 28 A = 27.98 g/mole abundance: 92.230 %
---> Isotope: Si29 Z = 14 N = 29 A = 28.98 g/mole abundance: 4.683 %
---> Isotope: Si30 Z = 14 N = 30 A = 29.97 g/mole abundance: 3.087 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: liquidArgon density: 1.390 g/cm3 RadL: 14.064 cm Nucl.Int.Length: 86.076 cm
Imean: 188.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Ar (Ar) Z = 18.0 N = 40 A = 39.948 g/mole
---> Isotope: Ar36 Z = 18 N = 36 A = 35.97 g/mole abundance: 0.337 %
---> Isotope: Ar38 Z = 18 N = 38 A = 37.96 g/mole abundance: 0.063 %
---> Isotope: Ar40 Z = 18 N = 40 A = 39.96 g/mole abundance: 99.600 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Iron density: 7.870 g/cm3 RadL: 1.758 cm Nucl.Int.Length: 16.999 cm
Imean: 286.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Fe (Fe) Z = 26.0 N = 56 A = 55.845 g/mole
---> Isotope: Fe54 Z = 26 N = 54 A = 53.94 g/mole abundance: 5.845 %
---> Isotope: Fe56 Z = 26 N = 56 A = 55.93 g/mole abundance: 91.754 %
---> Isotope: Fe57 Z = 26 N = 57 A = 56.94 g/mole abundance: 2.119 %
---> Isotope: Fe58 Z = 26 N = 58 A = 57.93 g/mole abundance: 0.282 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Copper density: 8.960 g/cm3 RadL: 1.436 cm Nucl.Int.Length: 15.588 cm
Imean: 322.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Cu (Cu) Z = 29.0 N = 64 A = 63.546 g/mole
---> Isotope: Cu63 Z = 29 N = 63 A = 62.93 g/mole abundance: 69.170 %
---> Isotope: Cu65 Z = 29 N = 65 A = 64.93 g/mole abundance: 30.830 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Germanium density: 5.323 g/cm3 RadL: 2.301 cm Nucl.Int.Length: 27.431 cm
Material: Germanium density: 5.323 g/cm3 RadL: 2.301 cm Nucl.Int.Length: 27.431 cm
Imean: 350.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Ge (Ge) Z = 32.0 N = 73 A = 72.613 g/mole
@@ -150,132 +30,20 @@
---> Isotope: Ge76 Z = 32 N = 76 A = 75.92 g/mole abundance: 7.610 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Silver density: 10.500 g/cm3 RadL: 8.543 mm Nucl.Int.Length: 15.868 cm
Imean: 470.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Ag (Ag) Z = 47.0 N = 108 A = 107.868 g/mole
---> Isotope: Ag107 Z = 47 N = 107 A = 106.91 g/mole abundance: 51.839 %
---> Isotope: Ag109 Z = 47 N = 109 A = 108.91 g/mole abundance: 48.161 %
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 temperature: 293.15 K pressure: 1.00 atm
---> Element: W (W) Z = 74.0 N = 184 A = 183.842 g/mole
---> Isotope: W180 Z = 74 N = 180 A = 179.95 g/mole abundance: 0.120 %
---> Isotope: W182 Z = 74 N = 182 A = 181.95 g/mole abundance: 26.500 %
---> Isotope: W183 Z = 74 N = 183 A = 182.95 g/mole abundance: 14.310 %
---> Isotope: W184 Z = 74 N = 184 A = 183.95 g/mole abundance: 30.640 %
---> Isotope: W186 Z = 74 N = 186 A = 185.95 g/mole abundance: 28.430 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Lead density: 11.350 g/cm3 RadL: 5.613 mm Nucl.Int.Length: 18.248 cm
Imean: 823.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Pb (Pb) Z = 82.0 N = 207 A = 207.217 g/mole
---> Isotope: Pb204 Z = 82 N = 204 A = 203.97 g/mole abundance: 1.400 %
---> Isotope: Pb206 Z = 82 N = 206 A = 205.97 g/mole abundance: 24.100 %
---> Isotope: Pb207 Z = 82 N = 207 A = 206.98 g/mole abundance: 22.100 %
---> Isotope: Pb208 Z = 82 N = 208 A = 207.98 g/mole abundance: 52.400 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Uranium density: 18.950 g/cm3 RadL: 3.166 mm Nucl.Int.Length: 11.446 cm
Imean: 890.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: U (U) Z = 92.0 N = 238 A = 238.029 g/mole
---> Isotope: U234 Z = 92 N = 234 A = 234.04 g/mole abundance: 0.005 %
---> Isotope: U235 Z = 92 N = 235 A = 235.04 g/mole abundance: 0.720 %
---> Isotope: U238 Z = 92 N = 238 A = 238.05 g/mole abundance: 99.275 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: ams density: 7.409 g/cm3 RadL: 8.996 mm Nucl.Int.Length: 25.515 cm
Imean: 691.183 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Lead (Pb) Z = 82.0 N = 207 A = 207.190 g/mole
---> Isotope: Pb204 Z = 82 N = 204 A = 203.97 g/mole abundance: 1.400 %
---> Isotope: Pb206 Z = 82 N = 206 A = 205.97 g/mole abundance: 24.100 %
---> Isotope: Pb207 Z = 82 N = 207 A = 206.98 g/mole abundance: 22.100 %
---> Isotope: Pb208 Z = 82 N = 208 A = 207.98 g/mole abundance: 52.400 %
ElmMassFraction: 94.81 % ElmAbundance 36.54 %
---> Element: Carbon (C) Z = 6.0 N = 12 A = 12.010 g/mole
---> Isotope: C12 Z = 6 N = 12 A = 12.00 g/mole abundance: 98.930 %
---> Isotope: C13 Z = 6 N = 13 A = 13.00 g/mole abundance: 1.070 %
ElmMassFraction: 4.79 % ElmAbundance 31.84 %
---> Element: Hydrogen (H) Z = 1.0 N = 1 A = 1.010 g/mole
---> Isotope: H1 Z = 1 N = 1 A = 1.01 g/mole abundance: 99.989 %
---> Isotope: H2 Z = 1 N = 2 A = 2.01 g/mole abundance: 0.011 %
ElmMassFraction: 0.40 % ElmAbundance 31.62 %
Material: ArgonGas density: 1.782 mg/cm3 RadL: 109.701 m Nucl.Int.Length: 671.415 m
Imean: 188.000 eV temperature: 273.15 K pressure: 1.00 atm
---> Element: Ar (Ar) Z = 18.0 N = 40 A = 39.948 g/mole
---> Isotope: Ar36 Z = 18 N = 36 A = 35.97 g/mole abundance: 0.337 %
---> Isotope: Ar38 Z = 18 N = 38 A = 37.96 g/mole abundance: 0.063 %
---> Isotope: Ar40 Z = 18 N = 40 A = 39.96 g/mole abundance: 99.600 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Isobutane density: 2.420 mg/cm3 RadL: 186.951 m Nucl.Int.Length: 270.571 m
Imean: 53.040 eV temperature: 273.15 K pressure: 1.00 atm
---> Element: Carbon (C) Z = 6.0 N = 12 A = 12.010 g/mole
---> Isotope: C12 Z = 6 N = 12 A = 12.00 g/mole abundance: 98.930 %
---> Isotope: C13 Z = 6 N = 13 A = 13.00 g/mole abundance: 1.070 %
ElmMassFraction: 82.63 % ElmAbundance 28.57 %
---> Element: Hydrogen (H) Z = 1.0 N = 1 A = 1.010 g/mole
---> Isotope: H1 Z = 1 N = 1 A = 1.01 g/mole abundance: 99.989 %
---> Isotope: H2 Z = 1 N = 2 A = 2.01 g/mole abundance: 0.011 %
ElmMassFraction: 17.37 % ElmAbundance 71.43 %
Material: ArgonButane density: 1.835 mg/cm3 RadL: 128.411 m Nucl.Int.Length: 522.378 m
Imean: 119.602 eV temperature: 273.15 K pressure: 1.00 atm
---> Element: Ar (Ar) Z = 18.0 N = 40 A = 39.948 g/mole
---> Isotope: Ar36 Z = 18 N = 36 A = 35.97 g/mole abundance: 0.337 %
---> Isotope: Ar38 Z = 18 N = 38 A = 37.96 g/mole abundance: 0.063 %
---> Isotope: Ar40 Z = 18 N = 40 A = 39.96 g/mole abundance: 99.600 %
ElmMassFraction: 70.00 % ElmAbundance 19.52 %
---> Element: Carbon (C) Z = 6.0 N = 12 A = 12.010 g/mole
---> Isotope: C12 Z = 6 N = 12 A = 12.00 g/mole abundance: 98.930 %
---> Isotope: C13 Z = 6 N = 13 A = 13.00 g/mole abundance: 1.070 %
ElmMassFraction: 24.79 % ElmAbundance 22.99 %
---> Element: Hydrogen (H) Z = 1.0 N = 1 A = 1.010 g/mole
---> Isotope: H1 Z = 1 N = 1 A = 1.01 g/mole abundance: 99.989 %
---> Isotope: H2 Z = 1 N = 2 A = 2.01 g/mole abundance: 0.011 %
ElmMassFraction: 5.21 % ElmAbundance 57.48 %
PhysicsList::AddPhysicsList: <emstandard_opt0>
PhysicsList::AddPhysicsList: <emstandard_opt3>
=======================================================================
====== Electromagnetic Physics Parameters ========
=======================================================================
LPM effect enabled 1
Spline of EM tables enabled 1
Enable creation and use of sampling tables 0
Apply cuts on all EM processes 0
Use integral approach for tracking 1
Use general process 0
Enable linear polarisation for gamma 0
Enable sampling of quantum entanglement 0
X-section factor for integral approach 0.8
Min kinetic energy for tables 10 eV
Max kinetic energy for tables 100 TeV
Number of bins in tables 260
Number of bins per decade of a table 20
Verbose level 0
Verbose level for worker thread 0
@@ -303,7 +71,6 @@ Use built-in Birks satuaration 0
Build CSDA range enabled 1
Use cut as a final range enabled 0
Enable angular generator interface 1
Factor of cut reduction for sub-cutoff method 1
Max kinetic energy for CSDA tables 1 GeV
Max kinetic energy for NIEL computation 1 MeV
Linear loss limit 0.01
@@ -343,6 +110,18 @@ Type of PIXE cross section for hadrons Empirical
Type of PIXE cross section for e+- Livermore
=======================================================================
Material: Germanium density: 5.323 g/cm3 RadL: 2.301 cm Nucl.Int.Length: 27.431 cm
Imean: 350.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Ge (Ge) Z = 32.0 N = 73 A = 72.613 g/mole
---> Isotope: Ge70 Z = 32 N = 70 A = 69.92 g/mole abundance: 20.840 %
---> Isotope: Ge72 Z = 32 N = 72 A = 71.92 g/mole abundance: 27.540 %
---> Isotope: Ge73 Z = 32 N = 73 A = 72.92 g/mole abundance: 7.730 %
---> Isotope: Ge74 Z = 32 N = 74 A = 73.92 g/mole abundance: 36.280 %
---> Isotope: Ge76 Z = 32 N = 76 A = 75.92 g/mole abundance: 7.610 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
========= Table of registered couples ============================
Index : 0 used in the geometry : Yes
@@ -375,7 +154,22 @@ Index : 0 used in the geometry : Yes
Run terminated.
Run Summary
Number of events processed : 1
User=0.000000s Real=0.000457s Sys=0.000000s
User=0.000000s Real=0.000360s Sys=0.000000s
Material: Water density: 1.000 g/cm3 RadL: 36.092 cm Nucl.Int.Length: 75.356 cm
Imean: 78.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Hydrogen (H) Z = 1.0 N = 1 A = 1.010 g/mole
---> Isotope: H1 Z = 1 N = 1 A = 1.01 g/mole abundance: 99.989 %
---> Isotope: H2 Z = 1 N = 2 A = 2.01 g/mole abundance: 0.011 %
ElmMassFraction: 11.21 % ElmAbundance 66.67 %
---> Element: Oxygen (O) Z = 8.0 N = 16 A = 16.000 g/mole
---> Isotope: O16 Z = 8 N = 16 A = 15.99 g/mole abundance: 99.757 %
---> Isotope: O17 Z = 8 N = 17 A = 17.00 g/mole abundance: 0.038 %
---> Isotope: O18 Z = 8 N = 18 A = 18.00 g/mole abundance: 0.205 %
ElmMassFraction: 88.79 % ElmAbundance 33.33 %
========= Table of registered couples ============================
@@ -430,7 +224,7 @@ Index : 1 used in the geometry : Yes
Run terminated.
Run Summary
Number of events processed : 1
User=0.000000s Real=0.000271s Sys=0.000000s
User=0.000000s Real=0.000198s Sys=0.000000s
G4 kernel has come to Quit state.
================== Deleting memory pools ===================
Number of memory pools allocated: 9 of which, static: 0
@@ -152,7 +152,7 @@ void DetectorConstruction::DefineMaterials()
ArButane->AddMaterial(argonGas, fractionmass=70*perCent);
ArButane->AddMaterial(butane , fractionmass=30*perCent);
G4cout << *(G4Material::GetMaterialTable()) << G4endl;
////G4cout << *(G4Material::GetMaterialTable()) << G4endl;
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -206,6 +206,7 @@ void DetectorConstruction::SetMaterial(const G4String& materialChoice)
fMaterial = pttoMaterial;
if(fBox) { fBox->GetLogicalVolume()->SetMaterial(fMaterial); }
G4RunManager::GetRunManager()->PhysicsHasBeenModified();
G4cout << "\n " << fMaterial << G4endl;
} else {
G4cout << "\n--> warning from DetectorConstruction::SetMaterial : "
<< materialChoice << " not found" << G4endl;
@@ -23,12 +23,9 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file electromagnetic/TestEm0/src/PhysListEmStandard.cc
/// \brief Implementation of the PhysListEmStandard class
//
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "PhysListEmStandard.hh"
#include "G4ParticleDefinition.hh"
@@ -59,13 +56,20 @@
#include "G4ionIonisation.hh"
#include "G4IonParametrisedLossModel.hh"
#include "G4NuclearStopping.hh"
#include "G4BuilderType.hh"
#include "G4SystemOfUnits.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
PhysListEmStandard::PhysListEmStandard(const G4String& name)
: G4VPhysicsConstructor(name)
{}
{
G4EmParameters* param = G4EmParameters::Instance();
param->SetDefaults();
param->SetVerbose(0);
SetPhysicsType(bElectromagnetic);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -88,42 +92,31 @@ void PhysListEmStandard::ConstructProcess()
if (particleName == "gamma") {
////ph->RegisterProcess(new G4RayleighScattering, particle);
ph->RegisterProcess(new G4PhotoElectricEffect, particle);
ph->RegisterProcess(new G4RayleighScattering, particle);
ph->RegisterProcess(new G4PhotoElectricEffect, particle);
G4ComptonScattering* cs = new G4ComptonScattering;
cs->SetEmModel(new G4KleinNishinaModel());
ph->RegisterProcess(cs, particle);
ph->RegisterProcess(new G4GammaConversion, particle);
} else if (particleName == "e-") {
ph->RegisterProcess(new G4eMultipleScattering(), particle);
//
G4eIonisation* eIoni = new G4eIonisation();
eIoni->SetStepFunction(0.1, 100*um);
ph->RegisterProcess(eIoni, particle);
//
ph->RegisterProcess(new G4eMultipleScattering(), particle);
ph->RegisterProcess(new G4eIonisation(), particle);
ph->RegisterProcess(new G4eBremsstrahlung(), particle);
} else if (particleName == "e+") {
ph->RegisterProcess(new G4eMultipleScattering(), particle);
//
G4eIonisation* eIoni = new G4eIonisation();
eIoni->SetStepFunction(0.1, 100*um);
ph->RegisterProcess(eIoni, particle);
//
ph->RegisterProcess(new G4eMultipleScattering(), particle);
ph->RegisterProcess(new G4eIonisation(), particle);
ph->RegisterProcess(new G4eBremsstrahlung(), particle);
//
ph->RegisterProcess(new G4eplusAnnihilation(), particle);
ph->RegisterProcess(new G4eplusAnnihilation(), particle);
} else if (particleName == "mu+" ||
particleName == "mu-" ) {
ph->RegisterProcess(new G4MuMultipleScattering(), particle);
G4MuIonisation* muIoni = new G4MuIonisation();
muIoni->SetStepFunction(0.1, 50*um);
ph->RegisterProcess(muIoni, particle);
ph->RegisterProcess(new G4MuMultipleScattering(), particle);
ph->RegisterProcess(new G4MuIonisation(), particle);
ph->RegisterProcess(new G4MuBremsstrahlung(), particle);
ph->RegisterProcess(new G4MuPairProduction(), particle);
@@ -132,9 +125,7 @@ void PhysListEmStandard::ConstructProcess()
particleName == "pi+" ) {
ph->RegisterProcess(new G4hMultipleScattering(), particle);
G4hIonisation* hIoni = new G4hIonisation();
hIoni->SetStepFunction(0.1, 20*um);
ph->RegisterProcess(hIoni, particle);
ph->RegisterProcess(new G4hIonisation(), particle);
ph->RegisterProcess(new G4hBremsstrahlung(), particle);
ph->RegisterProcess(new G4hPairProduction(), particle);
@@ -142,9 +133,7 @@ void PhysListEmStandard::ConstructProcess()
particleName == "He3" ) {
ph->RegisterProcess(new G4hMultipleScattering(), particle);
G4ionIonisation* ionIoni = new G4ionIonisation();
ionIoni->SetStepFunction(0.1, 1*um);
ph->RegisterProcess(ionIoni, particle);
ph->RegisterProcess(new G4ionIonisation(), particle);
ph->RegisterProcess(new G4NuclearStopping(), particle);
} else if( particleName == "GenericIon" ) {
@@ -152,7 +141,6 @@ void PhysListEmStandard::ConstructProcess()
ph->RegisterProcess(new G4hMultipleScattering(), particle);
G4ionIonisation* ionIoni = new G4ionIonisation();
ionIoni->SetEmModel(new G4IonParametrisedLossModel());
ionIoni->SetStepFunction(0.1, 1*um);
ph->RegisterProcess(ionIoni, particle);
ph->RegisterProcess(new G4NuclearStopping(), particle);
@@ -52,10 +52,6 @@
Physics lists and options can be (re)set with UI commands
Please, notice that options set through G4EmProcessOptions are global, eg
for all particle types. In G4 builders (geant4/source/physics_lists/builders)
it is shown how to set options per particle type.
A few commands have been added to PhysicsList, in order to set the production
threshold for secondaries for gamma and e-/e+.
@@ -126,6 +122,7 @@ Idle> exit
- decayinfly.mac: To visualise decay in fly of N16
- gammaconversion.mac: To visualise gamma conversion and e+ annihilation
- photon.mac: To visualiza p300 keV photon beam
- stepMax.mac: to test command /testem/stepMax
- vis.mac: To activate visualization
\section TestEm1_s7 TRACKING : StepMax
@@ -1,9 +1,6 @@
#----------------------------------------------------------------------------
# Setup the project
cmake_minimum_required(VERSION 3.8...3.18)
if(${CMAKE_VERSION} VERSION_LESS 3.12)
cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
endif()
cmake_minimum_required(VERSION 3.12...3.20)
project(TestEm1)
#----------------------------------------------------------------------------
@@ -44,8 +41,8 @@ target_link_libraries(TestEm1 ${Geant4_LIBRARIES} ${HBOOK_LIBRARIES})
#
set(TestEm1_SCRIPTS
annihil.mac brems.mac decayinfly.mac erange.mac gammaconversion.mac
geantino.mac photoelec.mac photon.mac radioactive.mac range.mac runs.mac TestEm1.in
TestEm1.out vis.mac
geantino.mac photoelec.mac photon.mac radioactive.mac range.mac runs.mac
stepMax.mac TestEm1.in TestEm1.out vis.mac
)
foreach(_script ${TestEm1_SCRIPTS})
@@ -13,7 +13,25 @@ track of all tags.
----------------------------------------------------------
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
29-04-21 mma (testem1-V10-07-03)
- Additional migration to new G4SteppingVerbose.
26-02-21 M.Asai (testem1-V10-07-02)
- Migrating to G4RunManagerFactory and G4SteppingVerboseWithUnits
classes.
10-02-21 V.Ivanchenko (testem1-V10-07-01)
- fixed README
09-12-20 mma (testem1-V10-07-00)
- updated PhysListEmStandard.cc
- DetectorConstruction : do not print materials table
- StepMax.hh and StepMax.cc : purely cosmetic
- Added macro stepMax.mac
- cosmetic in TestEm1.in
03-09-20 I.Hrivnacova, mma (testem1-V10-06-02)
- Revied macros:
Added macro description in README.
@@ -54,10 +54,6 @@
low-energy models
Physics lists and options can be (re)set with UI commands
Please, notice that options set through G4EmProcessOptions are global, eg
for all particle types. In G4 builders (geant4/source/physics_lists/builders)
it is shown how to set options per particle type.
A few commands have been added to PhysicsList, in order to set the production
threshold for secondaries for gamma and e-/e+.
@@ -123,6 +119,7 @@
- decayinfly.mac: To visualise decay in fly of N16
- gammaconversion.mac: To visualise gamma conversion and e+ annihilation
- photon.mac: To visualiza p300 keV photon beam
- stepMax.mac: to test command /testem/stepMax
- vis.mac: To activate visualization
7 - TRACKING : StepMax
@@ -30,21 +30,17 @@
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "G4Types.hh"
#ifdef G4MULTITHREADED
#include "G4MTRunManager.hh"
#else
#include "G4RunManager.hh"
#endif
#include "G4RunManagerFactory.hh"
#include "G4UImanager.hh"
#include "G4SteppingVerbose.hh"
#include "Randomize.hh"
#include "DetectorConstruction.hh"
#include "PhysicsList.hh"
#include "ActionInitialization.hh"
#include "SteppingVerbose.hh"
#include "G4UIExecutive.hh"
#include "G4VisExecutive.hh"
@@ -57,16 +53,16 @@ int main(int argc,char** argv) {
G4UIExecutive* ui = nullptr;
if (argc == 1) { ui = new G4UIExecutive(argc,argv); }
//construct the default run manager
#ifdef G4MULTITHREADED
G4MTRunManager* runManager = new G4MTRunManager;
G4int nThreads = 4;
if (argc==3) nThreads = G4UIcommand::ConvertToInt(argv[2]);
runManager->SetNumberOfThreads(nThreads);
#else
G4VSteppingVerbose::SetInstance(new SteppingVerbose);
G4RunManager* runManager = new G4RunManager;
#endif
//use G4SteppingVerboseWithUnits
G4int precision = 4;
G4SteppingVerbose::UseBestUnit(precision);
//construct the run manager
auto runManager = G4RunManagerFactory::CreateRunManager();
if (argc==3) {
G4int nThreads = G4UIcommand::ConvertToInt(argv[2]);
runManager->SetNumberOfThreads(nThreads);
}
//set mandatory initialization classes
DetectorConstruction* det = new DetectorConstruction;
@@ -9,22 +9,22 @@
/testem/det/setMat Aluminium
/testem/det/setSize 10 m
#
/process/em/verbose 0
/testem/phys/addPhysics emstandard_opt0
###/testem/phys/addPhysics local
/process/em/printParameters
#
/run/setCut 1 mm
#
/run/initialize
/process/em/printParameters
#
##/globalField/setValue 0 0 5 tesla
#
/testem/gun/setDefault
/gun/particle e-
/gun/energy 100 MeV
#
/run/verbose 1
/run/printProgress 200
#
/run/beamOn 2000
#
/gun/particle proton
@@ -1,10 +1,17 @@
Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type...
############################################
!!! WARNING - FPE detection is activated !!!
############################################
################################
!!! G4Backtrace is activated !!!
################################
**************************************************************
Geant4 version Name: geant4-10-07-patch-02 (11-June-2021)
Geant4 version Name: geant4-10-07-ref-06 (25-June-2021)
Copyright : Geant4 Collaboration
References : NIM A 506 (2003), 250-303
: IEEE-TNS 53 (2006), 270-278
@@ -12,271 +19,6 @@
WWW : http://geant4.org/
**************************************************************
***** Table : Nb of materials = 21 *****
Material: Air density: 1.290 mg/cm3 RadL: 285.161 m Nucl.Int.Length: 662.680 m
Imean: 85.703 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Nitrogen (N) Z = 7.0 N = 14 A = 14.010 g/mole
---> Isotope: N14 Z = 7 N = 14 A = 14.00 g/mole abundance: 99.632 %
---> Isotope: N15 Z = 7 N = 15 A = 15.00 g/mole abundance: 0.368 %
ElmMassFraction: 70.00 % ElmAbundance 72.71 %
---> Element: Oxygen (O) Z = 8.0 N = 16 A = 16.000 g/mole
---> Isotope: O16 Z = 8 N = 16 A = 15.99 g/mole abundance: 99.757 %
---> Isotope: O17 Z = 8 N = 17 A = 17.00 g/mole abundance: 0.038 %
---> Isotope: O18 Z = 8 N = 18 A = 18.00 g/mole abundance: 0.205 %
ElmMassFraction: 30.00 % ElmAbundance 27.29 %
Material: H2liquid density: 70.800 mg/cm3 RadL: 8.923 m Nucl.Int.Length: 4.944 m
Imean: 19.200 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Hydrogen (H) Z = 1.0 N = 1 A = 1.010 g/mole
---> Isotope: H1 Z = 1 N = 1 A = 1.01 g/mole abundance: 99.989 %
---> Isotope: H2 Z = 1 N = 2 A = 2.01 g/mole abundance: 0.011 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Water density: 1.000 g/cm3 RadL: 36.092 cm Nucl.Int.Length: 75.356 cm
Imean: 78.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Hydrogen (H) Z = 1.0 N = 1 A = 1.010 g/mole
---> Isotope: H1 Z = 1 N = 1 A = 1.01 g/mole abundance: 99.989 %
---> Isotope: H2 Z = 1 N = 2 A = 2.01 g/mole abundance: 0.011 %
ElmMassFraction: 11.21 % ElmAbundance 66.67 %
---> Element: Oxygen (O) Z = 8.0 N = 16 A = 16.000 g/mole
---> Isotope: O16 Z = 8 N = 16 A = 15.99 g/mole abundance: 99.757 %
---> Isotope: O17 Z = 8 N = 17 A = 17.00 g/mole abundance: 0.038 %
---> Isotope: O18 Z = 8 N = 18 A = 18.00 g/mole abundance: 0.205 %
ElmMassFraction: 88.79 % ElmAbundance 33.33 %
Material: CO2 density: 0.001 mg/cm3 RadL: 361.873 km Nucl.Int.Length: 858.384 km
Imean: 90.958 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Hydrogen (C) Z = 6.0 N = 12 A = 12.000 g/mole
---> Isotope: C12 Z = 6 N = 12 A = 12.00 g/mole abundance: 98.930 %
---> Isotope: C13 Z = 6 N = 13 A = 13.00 g/mole abundance: 1.070 %
ElmMassFraction: 27.27 % ElmAbundance 33.33 %
---> Element: Oxygen (O) Z = 8.0 N = 16 A = 16.000 g/mole
---> Isotope: O16 Z = 8 N = 16 A = 15.99 g/mole abundance: 99.757 %
---> Isotope: O17 Z = 8 N = 17 A = 17.00 g/mole abundance: 0.038 %
---> Isotope: O18 Z = 8 N = 18 A = 18.00 g/mole abundance: 0.205 %
ElmMassFraction: 72.73 % ElmAbundance 66.67 %
Material: D2_gas density: 0.036 mg/cm3 RadL: 34.993 km Nucl.Int.Length: 9.722 km
Imean: 19.200 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Heavy-Hydrogen (D) Z = 1.0 N = 2 A = 2.014 g/mole
---> Isotope: d Z = 1 N = 2 A = 2.01 g/mole abundance: 100.000 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: liquidArgon density: 1.390 g/cm3 RadL: 14.064 cm Nucl.Int.Length: 86.076 cm
Imean: 188.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Ar (Ar) Z = 18.0 N = 40 A = 39.948 g/mole
---> Isotope: Ar36 Z = 18 N = 36 A = 35.97 g/mole abundance: 0.337 %
---> Isotope: Ar38 Z = 18 N = 38 A = 37.96 g/mole abundance: 0.063 %
---> Isotope: Ar40 Z = 18 N = 40 A = 39.96 g/mole abundance: 99.600 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Aluminium density: 2.700 g/cm3 RadL: 8.893 cm Nucl.Int.Length: 38.880 cm
Imean: 166.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Al (Al) Z = 13.0 N = 27 A = 26.982 g/mole
---> Isotope: Al27 Z = 13 N = 27 A = 26.98 g/mole abundance: 100.000 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Silicon density: 2.330 g/cm3 RadL: 9.366 cm Nucl.Int.Length: 45.660 cm
Imean: 173.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Si (Si) Z = 14.0 N = 28 A = 28.085 g/mole
---> Isotope: Si28 Z = 14 N = 28 A = 27.98 g/mole abundance: 92.230 %
---> Isotope: Si29 Z = 14 N = 29 A = 28.98 g/mole abundance: 4.683 %
---> Isotope: Si30 Z = 14 N = 30 A = 29.97 g/mole abundance: 3.087 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Chromium density: 7.140 g/cm3 RadL: 2.093 cm Nucl.Int.Length: 18.296 cm
Imean: 257.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Cr (Cr) Z = 24.0 N = 52 A = 51.996 g/mole
---> Isotope: Cr50 Z = 24 N = 50 A = 49.95 g/mole abundance: 4.345 %
---> Isotope: Cr52 Z = 24 N = 52 A = 51.94 g/mole abundance: 83.789 %
---> Isotope: Cr53 Z = 24 N = 53 A = 52.94 g/mole abundance: 9.501 %
---> Isotope: Cr54 Z = 24 N = 54 A = 53.94 g/mole abundance: 2.365 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Germanium density: 5.323 g/cm3 RadL: 2.301 cm Nucl.Int.Length: 27.431 cm
Imean: 350.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Ge (Ge) Z = 32.0 N = 73 A = 72.613 g/mole
---> Isotope: Ge70 Z = 32 N = 70 A = 69.92 g/mole abundance: 20.840 %
---> Isotope: Ge72 Z = 32 N = 72 A = 71.92 g/mole abundance: 27.540 %
---> Isotope: Ge73 Z = 32 N = 73 A = 72.92 g/mole abundance: 7.730 %
---> Isotope: Ge74 Z = 32 N = 74 A = 73.92 g/mole abundance: 36.280 %
---> Isotope: Ge76 Z = 32 N = 76 A = 75.92 g/mole abundance: 7.610 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: BGO density: 7.100 g/cm3 RadL: 1.123 cm Nucl.Int.Length: 22.806 cm
Imean: 473.785 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Oxygen (O) Z = 8.0 N = 16 A = 16.000 g/mole
---> Isotope: O16 Z = 8 N = 16 A = 15.99 g/mole abundance: 99.757 %
---> Isotope: O17 Z = 8 N = 17 A = 17.00 g/mole abundance: 0.038 %
---> Isotope: O18 Z = 8 N = 18 A = 18.00 g/mole abundance: 0.205 %
ElmMassFraction: 15.41 % ElmAbundance 63.16 %
---> Element: Germanium (Ge) Z = 32.0 N = 73 A = 72.590 g/mole
---> Isotope: Ge70 Z = 32 N = 70 A = 69.92 g/mole abundance: 20.840 %
---> Isotope: Ge72 Z = 32 N = 72 A = 71.92 g/mole abundance: 27.540 %
---> Isotope: Ge73 Z = 32 N = 73 A = 72.92 g/mole abundance: 7.730 %
---> Isotope: Ge74 Z = 32 N = 74 A = 73.92 g/mole abundance: 36.280 %
---> Isotope: Ge76 Z = 32 N = 76 A = 75.92 g/mole abundance: 7.610 %
ElmMassFraction: 17.48 % ElmAbundance 15.79 %
---> Element: Bismuth (Bi) Z = 83.0 N = 209 A = 208.980 g/mole
---> Isotope: Bi209 Z = 83 N = 209 A = 208.98 g/mole abundance: 100.000 %
ElmMassFraction: 67.10 % ElmAbundance 21.05 %
Material: Iron density: 7.870 g/cm3 RadL: 1.758 cm Nucl.Int.Length: 16.999 cm
Imean: 286.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Fe (Fe) Z = 26.0 N = 56 A = 55.845 g/mole
---> Isotope: Fe54 Z = 26 N = 54 A = 53.94 g/mole abundance: 5.845 %
---> Isotope: Fe56 Z = 26 N = 56 A = 55.93 g/mole abundance: 91.754 %
---> Isotope: Fe57 Z = 26 N = 57 A = 56.94 g/mole abundance: 2.119 %
---> Isotope: Fe58 Z = 26 N = 58 A = 57.93 g/mole abundance: 0.282 %
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 temperature: 293.15 K pressure: 1.00 atm
---> Element: W (W) Z = 74.0 N = 184 A = 183.842 g/mole
---> Isotope: W180 Z = 74 N = 180 A = 179.95 g/mole abundance: 0.120 %
---> Isotope: W182 Z = 74 N = 182 A = 181.95 g/mole abundance: 26.500 %
---> Isotope: W183 Z = 74 N = 183 A = 182.95 g/mole abundance: 14.310 %
---> Isotope: W184 Z = 74 N = 184 A = 183.95 g/mole abundance: 30.640 %
---> Isotope: W186 Z = 74 N = 186 A = 185.95 g/mole abundance: 28.430 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Gold density: 19.320 g/cm3 RadL: 3.344 mm Nucl.Int.Length: 10.540 cm
Imean: 790.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Au (Au) Z = 79.0 N = 197 A = 196.967 g/mole
---> Isotope: Au197 Z = 79 N = 197 A = 196.97 g/mole abundance: 100.000 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Lead density: 11.350 g/cm3 RadL: 5.613 mm Nucl.Int.Length: 18.248 cm
Imean: 823.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Pb (Pb) Z = 82.0 N = 207 A = 207.217 g/mole
---> Isotope: Pb204 Z = 82 N = 204 A = 203.97 g/mole abundance: 1.400 %
---> Isotope: Pb206 Z = 82 N = 206 A = 205.97 g/mole abundance: 24.100 %
---> Isotope: Pb207 Z = 82 N = 207 A = 206.98 g/mole abundance: 22.100 %
---> Isotope: Pb208 Z = 82 N = 208 A = 207.98 g/mole abundance: 52.400 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Uranium density: 18.950 g/cm3 RadL: 3.166 mm Nucl.Int.Length: 11.446 cm
Imean: 890.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: U (U) Z = 92.0 N = 238 A = 238.029 g/mole
---> Isotope: U234 Z = 92 N = 234 A = 234.04 g/mole abundance: 0.005 %
---> Isotope: U235 Z = 92 N = 235 A = 235.04 g/mole abundance: 0.720 %
---> Isotope: U238 Z = 92 N = 238 A = 238.05 g/mole abundance: 99.275 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: ArgonGas density: 1.782 mg/cm3 RadL: 109.701 m Nucl.Int.Length: 671.415 m
Imean: 188.000 eV temperature: 273.15 K pressure: 1.00 atm
---> Element: Ar (Ar) Z = 18.0 N = 40 A = 39.948 g/mole
---> Isotope: Ar36 Z = 18 N = 36 A = 35.97 g/mole abundance: 0.337 %
---> Isotope: Ar38 Z = 18 N = 38 A = 37.96 g/mole abundance: 0.063 %
---> Isotope: Ar40 Z = 18 N = 40 A = 39.96 g/mole abundance: 99.600 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Isobutane density: 2.420 mg/cm3 RadL: 186.822 m Nucl.Int.Length: 270.486 m
Imean: 53.040 eV temperature: 273.15 K pressure: 1.00 atm
---> Element: Hydrogen (C) Z = 6.0 N = 12 A = 12.000 g/mole
---> Isotope: C12 Z = 6 N = 12 A = 12.00 g/mole abundance: 98.930 %
---> Isotope: C13 Z = 6 N = 13 A = 13.00 g/mole abundance: 1.070 %
ElmMassFraction: 82.62 % ElmAbundance 28.57 %
---> Element: Hydrogen (H) Z = 1.0 N = 1 A = 1.010 g/mole
---> Isotope: H1 Z = 1 N = 1 A = 1.01 g/mole abundance: 99.989 %
---> Isotope: H2 Z = 1 N = 2 A = 2.01 g/mole abundance: 0.011 %
ElmMassFraction: 17.38 % ElmAbundance 71.43 %
Material: ArgonButane density: 1.835 mg/cm3 RadL: 128.397 m Nucl.Int.Length: 522.306 m
Imean: 119.578 eV temperature: 273.15 K pressure: 1.00 atm
---> Element: Ar (Ar) Z = 18.0 N = 40 A = 39.948 g/mole
---> Isotope: Ar36 Z = 18 N = 36 A = 35.97 g/mole abundance: 0.337 %
---> Isotope: Ar38 Z = 18 N = 38 A = 37.96 g/mole abundance: 0.063 %
---> Isotope: Ar40 Z = 18 N = 40 A = 39.96 g/mole abundance: 99.600 %
ElmMassFraction: 70.00 % ElmAbundance 19.51 %
---> Element: Hydrogen (C) Z = 6.0 N = 12 A = 12.000 g/mole
---> Isotope: C12 Z = 6 N = 12 A = 12.00 g/mole abundance: 98.930 %
---> Isotope: C13 Z = 6 N = 13 A = 13.00 g/mole abundance: 1.070 %
ElmMassFraction: 24.78 % ElmAbundance 23.00 %
---> Element: Hydrogen (H) Z = 1.0 N = 1 A = 1.010 g/mole
---> Isotope: H1 Z = 1 N = 1 A = 1.01 g/mole abundance: 99.989 %
---> Isotope: H2 Z = 1 N = 2 A = 2.01 g/mole abundance: 0.011 %
ElmMassFraction: 5.22 % ElmAbundance 57.49 %
Material: Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc
Imean: 19.200 eV temperature: 2.73 K pressure: 0.00 atm
---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole
---> Isotope: H1 Z = 1 N = 1 A = 1.01 g/mole abundance: 99.989 %
---> Isotope: H2 Z = 1 N = 2 A = 2.01 g/mole abundance: 0.011 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Lu2SiO5 density: 7.400 g/cm3 RadL: 1.143 cm Nucl.Int.Length: 20.920 cm
Imean: 418.807 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Lu (Lu) Z = 71.0 N = 175 A = 174.967 g/mole
---> Isotope: Lu175 Z = 71 N = 175 A = 174.94 g/mole abundance: 97.410 %
---> Isotope: Lu176 Z = 71 N = 176 A = 175.94 g/mole abundance: 2.590 %
ElmMassFraction: 76.40 % ElmAbundance 25.00 %
---> Element: Si (Si) Z = 14.0 N = 28 A = 28.085 g/mole
---> Isotope: Si28 Z = 14 N = 28 A = 27.98 g/mole abundance: 92.230 %
---> Isotope: Si29 Z = 14 N = 29 A = 28.98 g/mole abundance: 4.683 %
---> Isotope: Si30 Z = 14 N = 30 A = 29.97 g/mole abundance: 3.087 %
ElmMassFraction: 6.13 % ElmAbundance 12.50 %
---> Element: Oxygen (O) Z = 8.0 N = 16 A = 16.000 g/mole
---> Isotope: O16 Z = 8 N = 16 A = 15.99 g/mole abundance: 99.757 %
---> Isotope: O17 Z = 8 N = 17 A = 17.00 g/mole abundance: 0.038 %
---> Isotope: O18 Z = 8 N = 18 A = 18.00 g/mole abundance: 0.205 %
ElmMassFraction: 17.47 % ElmAbundance 62.50 %
PhysicsList::AddPhysicsList: <emstandard_opt3>
G4NIELCalculator: is created with the model <ICRU49NucStopping>
/control/cout/ignoreThreadsExcept 0
@@ -288,25 +30,36 @@ Command is ignored.
/testem/det/setMat Aluminium
/testem/det/setSize 10 m
#
/process/em/verbose 0
/testem/phys/addPhysics emstandard_opt0
PhysicsList::AddPhysicsList: <emstandard_opt0>
###/testem/phys/addPhysics local
#
/run/setCut 1 mm
#
/run/initialize
The Box is 10 m of Aluminium
Material: Aluminium density: 2.700 g/cm3 RadL: 8.893 cm Nucl.Int.Length: 38.880 cm
Imean: 166.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Al (Al) Z = 13.0 N = 27 A = 26.982 g/mole
---> Isotope: Al27 Z = 13 N = 27 A = 26.98 g/mole abundance: 100.000 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
/process/em/printParameters
=======================================================================
====== Electromagnetic Physics Parameters ========
=======================================================================
LPM effect enabled 1
Spline of EM tables enabled 1
Enable creation and use of sampling tables 0
Apply cuts on all EM processes 0
Use integral approach for tracking 1
Use general process 0
Enable linear polarisation for gamma 0
Enable sampling of quantum entanglement 0
X-section factor for integral approach 0.8
Min kinetic energy for tables 100 eV
Max kinetic energy for tables 100 TeV
Number of bins in tables 84
Number of bins per decade of a table 7
Verbose level 1
Verbose level for worker thread 0
@@ -334,9 +87,8 @@ Use built-in Birks satuaration 0
Build CSDA range enabled 1
Use cut as a final range enabled 0
Enable angular generator interface 0
Factor of cut reduction for sub-cutoff method 1
Max kinetic energy for CSDA tables 1 GeV
Max kinetic energy for NIEL computation 0 eV
Max kinetic energy for NIEL computation 0 meV
Linear loss limit 0.01
Read data from file for e+e- pair production by mu 0
=======================================================================
@@ -364,68 +116,61 @@ Type of nuclear form-factor 1
Screening factor 1
=======================================================================
#
/run/setCut 1 mm
#
/run/initialize
The Box is 10 m of Aluminium
##/globalField/setValue 0 0 5 tesla
#
/testem/gun/setDefault
/gun/particle e-
/gun/energy 100 MeV
#
/run/verbose 1
/run/printProgress 200
#
/run/beamOn 2000
phot: for gamma SubType=12 BuildTable=0
LambdaPrime table from 200 keV to 100 TeV in 61 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
LivermorePhElectric : Emin= 0 eV Emax= 100 TeV SauterGavrila Fluo
LivermorePhElectric : Emin= 0 meV Emax= 100 TeV SauterGavrila Fluo
compt: for gamma SubType=13 BuildTable=1
Lambda table from 100 eV to 1 MeV, 7 bins/decade, spline: 1
LambdaPrime table from 1 MeV to 100 TeV in 56 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
Klein-Nishina : Emin= 0 eV Emax= 100 TeV
Klein-Nishina : Emin= 0 meV Emax= 100 TeV
conv: for gamma SubType=14 BuildTable=1
Lambda table from 1.022 MeV to 100 TeV, 18 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
BetheHeitlerLPM : Emin= 0 eV Emax= 100 TeV ModifiedTsai
BetheHeitlerLPM : Emin= 0 meV Emax= 100 TeV ModifiedTsai
Rayl: for gamma SubType=11 BuildTable=1
Lambda table from 100 eV to 100 keV, 7 bins/decade, spline: 0
LambdaPrime table from 100 keV to 100 TeV in 63 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator
LivermoreRayleigh : Emin= 0 meV Emax= 100 TeV CullenGenerator
msc: for e- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
eIoni: for e- SubType=2
eIoni: for e- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
MollerBhabha : Emin= 0 eV Emax= 100 TeV
MollerBhabha : Emin= 0 meV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
eBrem: for e- SubType=3
eBrem: for e- XStype:4 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000
===== EM models for the G4Region DefaultRegionForTheWorld ======
eBremSB : Emin= 0 eV Emax= 1 GeV ModifiedTsai
eBremSB : Emin= 0 meV Emax= 1 GeV ModifiedTsai
eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai
CoulombScat: for e-, integral:1 SubType=1 BuildTable=1
CoulombScat: for e- XStype:3 SubType=1 BuildTable=1
Lambda table from 100 MeV to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
@@ -433,32 +178,32 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1
msc: for e+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
eIoni: for e+ SubType=2
eIoni: for e+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
MollerBhabha : Emin= 0 eV Emax= 100 TeV
MollerBhabha : Emin= 0 meV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
eBrem: for e+ SubType=3
eBrem: for e+ XStype:4 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000
===== EM models for the G4Region DefaultRegionForTheWorld ======
eBremSB : Emin= 0 eV Emax= 1 GeV ModifiedTsai
eBremSB : Emin= 0 meV Emax= 1 GeV ModifiedTsai
eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai
annihil: for e+, integral:1 SubType=5 BuildTable=0
annihil: for e+ XStype:2 SubType=5 BuildTable=0
===== EM models for the G4Region DefaultRegionForTheWorld ======
eplus2gg : Emin= 0 eV Emax= 100 TeV
eplus2gg : Emin= 0 meV Emax= 100 TeV
CoulombScat: for e+, integral:1 SubType=1 BuildTable=1
CoulombScat: for e+ XStype:3 SubType=1 BuildTable=1
Lambda table from 100 MeV to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
@@ -466,49 +211,49 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1
msc: for proton SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for proton SubType=2
hIoni: for proton XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 2 MeV
Bragg : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
hBrems: for proton SubType=3
hBrems: for proton XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for proton SubType=4
hPairProd: for proton XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 17x1001 from 7.50618 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for proton, integral:1 SubType=1 BuildTable=1
CoulombScat: for proton XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for GenericIon SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
ionIoni: for GenericIon SubType=2
ionIoni: for GenericIon XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.02
Stopping Power data for 17 ion/material pairs
===== EM models for the G4Region DefaultRegionForTheWorld ======
BraggIon : Emin= 0 eV Emax= 2 MeV
BraggIon : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
======================================================================
@@ -524,254 +269,255 @@ Auger electron emission enabled 0
Auger cascade enabled 0
Check EM cuts disabled for atomic de-excitation 0
Use Bearden atomic level energies 0
Threshold for very long decay time at rest 1e+27 ns
======================================================================
msc: for alpha SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
ionIoni: for alpha SubType=2
ionIoni: for alpha XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.02
===== EM models for the G4Region DefaultRegionForTheWorld ======
BraggIon : Emin= 0 eV Emax=7.9452 MeV
BraggIon : Emin= 0 meV Emax=7.9452 MeV
BetheBloch : Emin=7.9452 MeV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
msc: for anti_proton SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for anti_proton SubType=2
hIoni: for anti_proton XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax= 2 MeV
ICRU73QO : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
hBrems: for anti_proton SubType=3
hBrems: for anti_proton XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for anti_proton SubType=4
hPairProd: for anti_proton XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 17x1001 from 7.50618 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1
CoulombScat: for anti_proton XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for kaon+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for kaon+ SubType=2
hIoni: for kaon+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax=1.05231 MeV
Bragg : Emin= 0 meV Emax=1.05231 MeV
BetheBloch : Emin=1.05231 MeV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
hBrems: for kaon+ SubType=3
hBrems: for kaon+ XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for kaon+ SubType=4
hPairProd: for kaon+ XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 18x1001 from 3.94942 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1
CoulombScat: for kaon+ XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for kaon- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for kaon- SubType=2
hIoni: for kaon- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax=1.05231 MeV
ICRU73QO : Emin= 0 meV Emax=1.05231 MeV
BetheBloch : Emin=1.05231 MeV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
hBrems: for kaon- SubType=3
hBrems: for kaon- XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for kaon- SubType=4
hPairProd: for kaon- XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 18x1001 from 3.94942 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1
CoulombScat: for kaon- XStype:3 SubType=1 BuildTable=1
Used Lambda table of kaon+
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for mu+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
muIoni: for mu+ SubType=2
muIoni: for mu+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 200 keV
Bragg : Emin= 0 meV Emax= 200 keV
BetheBloch : Emin= 200 keV Emax= 1 GeV
MuBetheBloch : Emin= 1 GeV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
muBrems: for mu+ SubType=3
muBrems: for mu+ XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
MuBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
muPairProd: for mu+ SubType=4
muPairProd: for mu+ XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 21x1001 from 1 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
muPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1
CoulombScat: for mu+ XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for mu- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
muIoni: for mu- SubType=2
muIoni: for mu- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax= 200 keV
ICRU73QO : Emin= 0 meV Emax= 200 keV
BetheBloch : Emin= 200 keV Emax= 1 GeV
MuBetheBloch : Emin= 1 GeV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
muBrems: for mu- SubType=3
muBrems: for mu- XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
MuBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
muPairProd: for mu- SubType=4
muPairProd: for mu- XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 21x1001 from 1 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
muPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1
CoulombScat: for mu- XStype:3 SubType=1 BuildTable=1
Used Lambda table of mu+
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for pi+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for pi+ SubType=2
hIoni: for pi+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax=297.505 keV
Bragg : Emin= 0 meV Emax=297.505 keV
BetheBloch : Emin=297.505 keV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
hBrems: for pi+ SubType=3
hBrems: for pi+ XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for pi+ SubType=4
hPairProd: for pi+ XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 20x1001 from 1.11656 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1
CoulombScat: for pi+ XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for pi- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for pi- SubType=2
hIoni: for pi- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax=297.505 keV
ICRU73QO : Emin= 0 meV Emax=297.505 keV
BetheBloch : Emin=297.505 keV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
hBrems: for pi- SubType=3
hBrems: for pi- XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for pi- SubType=4
hPairProd: for pi- XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 20x1001 from 1.11656 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1
CoulombScat: for pi- XStype:3 SubType=1 BuildTable=1
Used Lambda table of pi+
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
========= Table of registered couples ============================
@@ -804,31 +550,31 @@ N=17 V[N]={906770732717044781, 629165745432651234, 1235682547346241386, 68420008
Run terminated.
Run Summary
Number of events processed : 2000
User=1.270000s Real=1.328429s Sys=0.000000s
User=1.110000s Real=1.145453s Sys=0.000000s
======================== run summary ======================
The run is: 2000 e- of 100 MeV through 10 m of Aluminium (density: 2.7 g/cm3 )
Total energy deposit: 99.827 MeV
NIEL energy calculated: 0 eV
NIEL energy calculated: 0 meV
Nb tracks/event neutral: 25.128 charged: 137.12
Nb steps/event neutral: 139.35 charged: 202.9
Nb tracks/event neutral: 25.436 charged: 138.41
Nb steps/event neutral: 140.65 charged: 204.52
Process calls frequency :
Rayl= 17745 Transportation= 1796 annihil= 2806
compt= 210700 conv= 2785 eBrem= 45775
eIoni= 356921 msc= 296 phot= 45680
CoulombScat= 1 Rayl= 17810 Transportation= 1802
annihil= 2818 compt= 212618 conv= 2805
eBrem= 46415 eIoni= 359501 msc= 298
phot= 46267
---------------------------------------------------------
Primary particle :
true Range = 11.099 cm rms = 3.8634 cm
proj Range = 9.6568 cm rms = 3.5968 cm
proj/true = 0.87009
transverse dispersion at end = 1.6112 cm
mass true Range from simulation = 29.966 g/cm2
true Range = 11.12 cm rms = 3.8669 cm
proj Range = 9.6726 cm rms = 3.5911 cm
proj/true = 0.86986
transverse dispersion at end = 1.6299 cm
mass true Range from simulation = 30.023 g/cm2
from PhysicsTable (csda range) = 32.101 g/cm2
---------------------------------------------------------
@@ -836,7 +582,7 @@ Run Summary
------- MixMaxRng engine status -------
Current state vector is:
mixmax state, file version 1.0
N=17 V[N]={511862276547668598, 1471172288461575206, 1128851390031159049, 986176925366361558, 1714976611656641989, 585612007627498246, 1310561837954673793, 1928477068593323800, 1745855577386704779, 1426413875986992036, 1452014596195759837, 144364650739019718, 1973405502184080304, 364138860850256971, 100193770972482617, 2029412755232034316, 1686421473982614873} counter= 2sumtot= 2113167396059296082
N=17 V[N]={105848426377752035, 727510900120485432, 1732892373175767764, 246849931442645562, 1056562556875218579, 1714987142974046772, 394122810429885113, 2081430332929602852, 439284098192822769, 1590186265841107719, 1895423095489310140, 1174703954929006868, 389343310157508848, 636145705617010307, 892789608646591379, 2194304760782867823, 266134741987688324} counter= 7sumtot= 1397618951473460629
---------------------------------------
#
/gun/particle proton
@@ -858,7 +604,7 @@ Index : 0 used in the geometry : Yes
------- MixMaxRng engine status -------
Current state vector is:
mixmax state, file version 1.0
N=17 V[N]={511862276547668598, 1471172288461575206, 1128851390031159049, 986176925366361558, 1714976611656641989, 585612007627498246, 1310561837954673793, 1928477068593323800, 1745855577386704779, 1426413875986992036, 1452014596195759837, 144364650739019718, 1973405502184080304, 364138860850256971, 100193770972482617, 2029412755232034316, 1686421473982614873} counter= 2sumtot= 2113167396059296082
N=17 V[N]={105848426377752035, 727510900120485432, 1732892373175767764, 246849931442645562, 1056562556875218579, 1714987142974046772, 394122810429885113, 2081430332929602852, 439284098192822769, 1590186265841107719, 1895423095489310140, 1174703954929006868, 389343310157508848, 636145705617010307, 892789608646591379, 2194304760782867823, 266134741987688324} counter= 7sumtot= 1397618951473460629
---------------------------------------
--> Event 0 starts.
--> Event 200 starts.
@@ -873,29 +619,29 @@ N=17 V[N]={511862276547668598, 1471172288461575206, 1128851390031159049, 9861769
Run terminated.
Run Summary
Number of events processed : 2000
User=0.070000s Real=0.072521s Sys=0.000000s
User=0.060000s Real=0.059503s Sys=0.000000s
======================== run summary ======================
The run is: 2000 proton of 100 MeV through 10 m of Aluminium (density: 2.7 g/cm3 )
Total energy deposit: 100 MeV
NIEL energy calculated: 226.62 eV
NIEL energy calculated: 219.92 eV
Nb tracks/event neutral: 0 charged: 1.0095
Nb steps/event neutral: 0 charged: 19.299
Nb tracks/event neutral: 0 charged: 1.008
Nb steps/event neutral: 0 charged: 19.262
Process calls frequency :
CoulombScat= 50 RadioactiveDecayBase= 19 hIoni= 38509
ionIoni= 19
CoulombScat= 38 RadioactiveDecayBase= 16 hIoni= 38455
ionIoni= 16
---------------------------------------------------------
Primary particle :
true Range = 3.7133 cm rms = 409.61 um
proj Range = 3.7049 cm rms = 435.36 um
proj/true = 0.99774
transverse dispersion at end = 1.1429 mm
mass true Range from simulation = 10.026 g/cm2
true Range = 3.7117 cm rms = 404.89 um
proj Range = 3.7035 cm rms = 421.53 um
proj/true = 0.99777
transverse dispersion at end = 1.1209 mm
mass true Range from simulation = 10.022 g/cm2
from PhysicsTable (csda range) = 10.011 g/cm2
---------------------------------------------------------
@@ -903,12 +649,12 @@ Run Summary
------- MixMaxRng engine status -------
Current state vector is:
mixmax state, file version 1.0
N=17 V[N]={913425094942195650, 1669804377416371868, 676410091410990968, 1285517587114154658, 125323819510907687, 1370135114624171332, 1168103701194230878, 2238977698225572169, 1302655875947126391, 2300980640291497885, 1798177981595136014, 402371273733732173, 1760031994401657307, 997255217082257182, 1964862088753589191, 1126655732531703662, 431701229884682265} counter= 7sumtot= 779802435736731721
N=17 V[N]={463801636166275432, 1902701038293068693, 1443145873808964124, 2090161407370062499, 430606058036414585, 2159205321872790559, 1474854659820946407, 1535288354860988630, 2144128321960280774, 1441019047699424149, 1315413612406491217, 388194663231388911, 1842133628433286643, 88823166776025868, 434594621934851300, 2004571832288562517, 1241104542866579889} counter= 13sumtot= 1647160704903156638
---------------------------------------
#
G4 kernel has come to Quit state.
================== Deleting memory pools ===================
Number of memory pools allocated: 9 of which, static: 0
Dynamic pools deleted: 9 / Total memory freed: 0.037 MB
Dynamic pools deleted: 9 / Total memory freed: 0.035 MB
============================================================
RunManagerKernel is deleted. Good bye :)
@@ -33,7 +33,6 @@
#include "G4VUserActionInitialization.hh"
class DetectorConstruction;
class G4VSteppingVerbose;
/// Action initialization class.
///
@@ -47,8 +46,6 @@ class ActionInitialization : public G4VUserActionInitialization
virtual void BuildForMaster() const;
virtual void Build() const;
virtual G4VSteppingVerbose* InitializeSteppingVerbose() const;
private:
DetectorConstruction* fDetector;
@@ -46,29 +46,28 @@ class StepMax : public G4VDiscreteProcess
{
public:
StepMax(const G4String& processName = "UserMaxStep");
~StepMax();
StepMax(const G4String& processName = "UserMaxStep");
~StepMax();
virtual G4bool IsApplicable(const G4ParticleDefinition&);
G4bool IsApplicable(const G4ParticleDefinition&) override;
void SetMaxStep(G4double);
void SetMaxStep(G4double);
G4double GetMaxStep() {return fMaxChargedStep;};
G4double GetMaxStep() {return fMaxChargedStep;};
virtual G4double PostStepGetPhysicalInteractionLength(const G4Track& track,
G4double previousStepSize,
G4ForceCondition* condition);
G4double PostStepGetPhysicalInteractionLength(const G4Track& track,
G4double previousStepSize,
G4ForceCondition* condition) override;
virtual G4VParticleChange* PostStepDoIt(const G4Track&, const G4Step&);
G4VParticleChange* PostStepDoIt(const G4Track&, const G4Step&) override;
virtual G4double GetMeanFreePath(const G4Track&,G4double,G4ForceCondition*)
{return DBL_MAX;};
G4double GetMeanFreePath(const G4Track&,G4double,G4ForceCondition*) override;
private:
G4double fMaxChargedStep;
G4double fMaxChargedStep;
StepMaxMessenger* fMess;
StepMaxMessenger* fMess;
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -35,7 +35,6 @@
#include "TrackingAction.hh"
#include "SteppingAction.hh"
#include "StackingAction.hh"
#include "SteppingVerbose.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -78,9 +77,3 @@ void ActionInitialization::Build() const
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
G4VSteppingVerbose* ActionInitialization::InitializeSteppingVerbose() const
{
return new SteppingVerbose();
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -184,7 +184,7 @@ void DetectorConstruction::DefineMaterials()
LSO->AddElement(Si, 1);
LSO->AddElement(O , 5);
G4cout << *(G4Material::GetMaterialTable()) << G4endl;
///G4cout << *(G4Material::GetMaterialTable()) << G4endl;
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -220,6 +220,7 @@ void DetectorConstruction::PrintParameters()
{
G4cout << "\n The Box is " << G4BestUnit(fBoxSize,"Length")
<< " of " << fMaterial->GetName() << G4endl;
G4cout << fMaterial << G4endl;
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -73,10 +73,16 @@ PhysListEmStandard::PhysListEmStandard(const G4String& name)
{
G4EmParameters* param = G4EmParameters::Instance();
param->SetDefaults();
param->SetVerbose(0);
param->SetMinEnergy(10*eV);
param->SetMaxEnergy(10*TeV);
param->SetNumberOfBinsPerDecade(10);
param->SetMscStepLimitType(fUseSafetyPlus);
param->SetStepFunction(0.1, 100*um);
param->SetStepFunctionMuHad(0.1, 50*um);
param->SetStepFunctionLightIons(0.1, 20*um);
param->SetStepFunctionIons(0.1, 1*um);
param->SetMscStepLimitType(fUseDistanceToBoundary);
param->SetDeexcitationIgnoreCut(true);
SetPhysicsType(bElectromagnetic);
}
@@ -101,12 +107,8 @@ void PhysListEmStandard::ConstructProcess()
if (particleName == "gamma") {
////ph->RegisterProcess(new G4RayleighScattering, particle);
ph->RegisterProcess(new G4RayleighScattering, particle);
ph->RegisterProcess(new G4PhotoElectricEffect, particle);
///G4PhotoElectricEffect* phot = new G4PhotoElectricEffect();
///phot->SetEmModel(new G4LivermorePhotoElectricModel(), 1);
///ph->RegisterProcess(phot, particle);
G4ComptonScattering* cs = new G4ComptonScattering;
cs->SetEmModel(new G4KleinNishinaModel());
ph->RegisterProcess(cs, particle);
@@ -114,33 +116,22 @@ void PhysListEmStandard::ConstructProcess()
} else if (particleName == "e-") {
ph->RegisterProcess(new G4eMultipleScattering(), particle);
//
G4eIonisation* eIoni = new G4eIonisation();
eIoni->SetStepFunction(0.1, 100*um);
ph->RegisterProcess(eIoni, particle);
//
ph->RegisterProcess(new G4eMultipleScattering(), particle);
ph->RegisterProcess(new G4eIonisation(), particle);
ph->RegisterProcess(new G4eBremsstrahlung(), particle);
} else if (particleName == "e+") {
ph->RegisterProcess(new G4eMultipleScattering(), particle);
//
G4eIonisation* eIoni = new G4eIonisation();
eIoni->SetStepFunction(0.1, 100*um);
ph->RegisterProcess(eIoni, particle);
//
ph->RegisterProcess(new G4eMultipleScattering(), particle);
ph->RegisterProcess(new G4eIonisation(), particle);
ph->RegisterProcess(new G4eBremsstrahlung(), particle);
//
ph->RegisterProcess(new G4eplusAnnihilation(), particle);
} else if (particleName == "mu+" ||
particleName == "mu-" ) {
ph->RegisterProcess(new G4MuMultipleScattering(), particle);
G4MuIonisation* muIoni = new G4MuIonisation();
muIoni->SetStepFunction(0.1, 50*um);
ph->RegisterProcess(muIoni, particle);
ph->RegisterProcess(new G4MuMultipleScattering(), particle);
ph->RegisterProcess(new G4MuIonisation(), particle);
ph->RegisterProcess(new G4MuBremsstrahlung(), particle);
ph->RegisterProcess(new G4MuPairProduction(), particle);
@@ -149,9 +140,7 @@ void PhysListEmStandard::ConstructProcess()
particleName == "pi+" ) {
ph->RegisterProcess(new G4hMultipleScattering(), particle);
G4hIonisation* hIoni = new G4hIonisation();
hIoni->SetStepFunction(0.1, 20*um);
ph->RegisterProcess(hIoni, particle);
ph->RegisterProcess(new G4hIonisation(), particle);
ph->RegisterProcess(new G4hBremsstrahlung(), particle);
ph->RegisterProcess(new G4hPairProduction(), particle);
@@ -159,9 +148,7 @@ void PhysListEmStandard::ConstructProcess()
particleName == "He3" ) {
ph->RegisterProcess(new G4hMultipleScattering(), particle);
G4ionIonisation* ionIoni = new G4ionIonisation();
ionIoni->SetStepFunction(0.1, 1*um);
ph->RegisterProcess(ionIoni, particle);
ph->RegisterProcess(new G4ionIonisation(), particle);
ph->RegisterProcess(new G4NuclearStopping(), particle);
} else if( particleName == "GenericIon" ) {
@@ -169,7 +156,6 @@ void PhysListEmStandard::ConstructProcess()
ph->RegisterProcess(new G4hMultipleScattering(), particle);
G4ionIonisation* ionIoni = new G4ionIonisation();
ionIoni->SetEmModel(new G4IonParametrisedLossModel());
ionIoni->SetStepFunction(0.1, 1*um);
ph->RegisterProcess(ionIoni, particle);
ph->RegisterProcess(new G4NuclearStopping(), particle);
@@ -186,9 +172,6 @@ void PhysListEmStandard::ConstructProcess()
// Deexcitation
//
G4VAtomDeexcitation* de = new G4UAtomicDeexcitation();
de->SetFluo(true);
de->SetAuger(false);
de->SetPIXE(false);
G4LossTableManager::Instance()->SetAtomDeexcitation(de);
}
@@ -36,7 +36,7 @@
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
StepMax::StepMax(const G4String& processName)
: G4VDiscreteProcess(processName),fMaxChargedStep(DBL_MAX),fMess(0)
: G4VDiscreteProcess(processName),fMaxChargedStep(DBL_MAX),fMess(nullptr)
{
fMess = new StepMaxMessenger(this);
}
@@ -79,3 +79,9 @@ G4VParticleChange* StepMax::PostStepDoIt(const G4Track& aTrack, const G4Step&)
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
G4double StepMax::GetMeanFreePath(const G4Track&,G4double,G4ForceCondition*)
{
return fMaxChargedStep;
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -1,157 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file electromagnetic/TestEm1/src/SteppingVerbose.cc
/// \brief Implementation of the SteppingVerbose class
//
//
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "SteppingVerbose.hh"
#include "G4SteppingManager.hh"
#include "G4ParticleTypes.hh"
#include "G4UnitsTable.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::SteppingVerbose()
: G4SteppingVerbose()
{ }
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::~SteppingVerbose()
{}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::TrackingStarted()
{
CopyState();
G4int prec = G4cout.precision(3);
//Step zero
//
if( verboseLevel > 0 ){
G4cout << std::setw( 5) << "Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
G4cout << std::setw(5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName()
<< " initStep" << G4endl;
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::StepInfo()
{
CopyState();
G4int prec = G4cout.precision(3);
if( verboseLevel >= 1 ){
if( verboseLevel >= 4 ) VerboseTrack();
if( verboseLevel >= 3 ){
G4cout << G4endl;
G4cout << std::setw( 5) << "#Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
}
G4cout << std::setw( 5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName();
const G4VProcess* process
= fStep->GetPostStepPoint()->GetProcessDefinedStep();
G4String procName = " UserLimit";
if (process) procName = process->GetProcessName();
if (fStepStatus == fWorldBoundary) procName = "OutOfWorld";
G4cout << " " << std::setw(10) << procName;
G4cout << G4endl;
if (verboseLevel == 2) {
const std::vector<const G4Track*>* secondary
= fStep->GetSecondaryInCurrentStep();
size_t nbtrk = (*secondary).size();
if (nbtrk) {
G4cout << "\n :----- List of secondaries ----------------" << G4endl;
G4cout.precision(4);
for (size_t lp=0; lp<(*secondary).size(); lp++) {
G4cout << " "
<< std::setw(13)
<< (*secondary)[lp]->GetDefinition()->GetParticleName()
<< ": energy ="
<< std::setw(6)
<< G4BestUnit((*secondary)[lp]->GetKineticEnergy(),"Energy")
<< " time ="
<< std::setw(6)
<< G4BestUnit((*secondary)[lp]->GetGlobalTime(),"Time");
G4cout << G4endl;
}
G4cout << " :------------------------------------------\n" << G4endl;
}
}
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -0,0 +1,21 @@
#
# macro file for TestEm1.cc
#
/control/verbose 2
/run/verbose 1
#
/process/em/verbose 0
#
/run/initialize
#
/testem/gun/setDefault
/gun/particle chargedgeantino
#
/tracking/verbose 1
#
/testem/stepMax 1 m
/run/beamOn 1
#
/testem/stepMax 3 m
/run/beamOn 1
@@ -1,9 +1,6 @@
#----------------------------------------------------------------------------
# Setup the project
cmake_minimum_required(VERSION 3.8...3.18)
if(${CMAKE_VERSION} VERSION_LESS 3.12)
cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
endif()
cmake_minimum_required(VERSION 3.12...3.20)
project(TestEm10)
#----------------------------------------------------------------------------
@@ -3,8 +3,14 @@
!!! WARNING - FPE detection is activated !!!
############################################
################################
!!! G4Backtrace is activated !!!
################################
**************************************************************
Geant4 version Name: geant4-10-07-patch-02 (11-June-2021)
Geant4 version Name: geant4-10-07-ref-06 (25-June-2021)
Copyright : Geant4 Collaboration
References : NIM A 506 (2003), 250-303
: IEEE-TNS 53 (2006), 270-278
@@ -39,48 +45,48 @@ Regular transparent X-ray TR radiator EM process is called
phot: for gamma SubType=12 BuildTable=0
LambdaPrime table from 200 keV to 100 TeV in 61 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
LivermorePhElectric : Emin= 0 eV Emax= 100 TeV SauterGavrila Fluo
LivermorePhElectric : Emin= 0 meV Emax= 100 TeV SauterGavrila Fluo
compt: for gamma SubType=13 BuildTable=1
Lambda table from 100 eV to 1 MeV, 7 bins/decade, spline: 1
LambdaPrime table from 1 MeV to 100 TeV in 56 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
Klein-Nishina : Emin= 0 eV Emax= 100 TeV
Klein-Nishina : Emin= 0 meV Emax= 100 TeV
conv: for gamma SubType=14 BuildTable=1
Lambda table from 1.022 MeV to 100 TeV, 18 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
BetheHeitlerLPM : Emin= 0 eV Emax= 100 TeV ModifiedTsai
BetheHeitlerLPM : Emin= 0 meV Emax= 100 TeV ModifiedTsai
Rayl: for gamma SubType=11 BuildTable=1
Lambda table from 100 eV to 100 keV, 7 bins/decade, spline: 0
LambdaPrime table from 100 keV to 100 TeV in 63 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator
LivermoreRayleigh : Emin= 0 meV Emax= 100 TeV CullenGenerator
msc: for e- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
eIoni: for e- SubType=2
eIoni: for e- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
MollerBhabha : Emin= 0 eV Emax= 100 TeV
MollerBhabha : Emin= 0 meV Emax= 100 TeV
eBrem: for e- SubType=3
eBrem: for e- XStype:4 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000
===== EM models for the G4Region DefaultRegionForTheWorld ======
eBremSB : Emin= 0 eV Emax= 1 GeV ModifiedTsai
eBremSB : Emin= 0 meV Emax= 1 GeV ModifiedTsai
eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai
CoulombScat: for e-, integral:1 SubType=1 BuildTable=1
CoulombScat: for e- XStype:3 SubType=1 BuildTable=1
Lambda table from 100 MeV to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
@@ -139,7 +145,7 @@ Lorentz Factor XTR photon number
8.085e+04 3.156
9.283e+04 3.157
total time for build X-ray TR energy loss tables = 0.14 s
total time for build X-ray TR energy loss tables = 0.13 s
Build angle for energy distribution according the current radiator
Lorentz Factor XTR photon number
@@ -149,31 +155,31 @@ total time for build XTR angle for given energy tables = 0.13 s
msc: for e+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
eIoni: for e+ SubType=2
eIoni: for e+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
MollerBhabha : Emin= 0 eV Emax= 100 TeV
MollerBhabha : Emin= 0 meV Emax= 100 TeV
eBrem: for e+ SubType=3
eBrem: for e+ XStype:4 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000
===== EM models for the G4Region DefaultRegionForTheWorld ======
eBremSB : Emin= 0 eV Emax= 1 GeV ModifiedTsai
eBremSB : Emin= 0 meV Emax= 1 GeV ModifiedTsai
eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai
annihil: for e+, integral:1 SubType=5 BuildTable=0
annihil: for e+ XStype:2 SubType=5 BuildTable=0
===== EM models for the G4Region DefaultRegionForTheWorld ======
eplus2gg : Emin= 0 eV Emax= 100 TeV
eplus2gg : Emin= 0 meV Emax= 100 TeV
CoulombScat: for e+, integral:1 SubType=1 BuildTable=1
CoulombScat: for e+ XStype:3 SubType=1 BuildTable=1
Lambda table from 100 MeV to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
@@ -232,298 +238,298 @@ Lorentz Factor XTR photon number
8.085e+04 3.156
9.283e+04 3.157
total time for build X-ray TR energy loss tables = 0.14 s
total time for build X-ray TR energy loss tables = 0.13 s
Build angle for energy distribution according the current radiator
Lorentz Factor XTR photon number
total time for build XTR angle for given energy tables = 0.14 s
total time for build XTR angle for given energy tables = 0.12 s
msc: for proton SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for proton SubType=2
hIoni: for proton XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 2 MeV
Bragg : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
hBrems: for proton SubType=3
hBrems: for proton XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for proton SubType=4
hPairProd: for proton XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 17x1001 from 7.50618 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for proton, integral:1 SubType=1 BuildTable=1
CoulombScat: for proton XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for GenericIon SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
ionIoni: for GenericIon SubType=2
ionIoni: for GenericIon XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.02
Stopping Power data for 17 ion/material pairs
===== EM models for the G4Region DefaultRegionForTheWorld ======
BraggIon : Emin= 0 eV Emax= 2 MeV
BraggIon : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
msc: for alpha SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
ionIoni: for alpha SubType=2
ionIoni: for alpha XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.02
===== EM models for the G4Region DefaultRegionForTheWorld ======
BraggIon : Emin= 0 eV Emax=7.9452 MeV
BraggIon : Emin= 0 meV Emax=7.9452 MeV
BetheBloch : Emin=7.9452 MeV Emax= 100 TeV
msc: for anti_proton SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for anti_proton SubType=2
hIoni: for anti_proton XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax= 2 MeV
ICRU73QO : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
hBrems: for anti_proton SubType=3
hBrems: for anti_proton XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for anti_proton SubType=4
hPairProd: for anti_proton XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 17x1001 from 7.50618 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1
CoulombScat: for anti_proton XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for kaon+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for kaon+ SubType=2
hIoni: for kaon+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax=1.05231 MeV
Bragg : Emin= 0 meV Emax=1.05231 MeV
BetheBloch : Emin=1.05231 MeV Emax= 100 TeV
hBrems: for kaon+ SubType=3
hBrems: for kaon+ XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for kaon+ SubType=4
hPairProd: for kaon+ XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 18x1001 from 3.94942 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1
CoulombScat: for kaon+ XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for kaon- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for kaon- SubType=2
hIoni: for kaon- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax=1.05231 MeV
ICRU73QO : Emin= 0 meV Emax=1.05231 MeV
BetheBloch : Emin=1.05231 MeV Emax= 100 TeV
hBrems: for kaon- SubType=3
hBrems: for kaon- XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for kaon- SubType=4
hPairProd: for kaon- XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 18x1001 from 3.94942 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1
CoulombScat: for kaon- XStype:3 SubType=1 BuildTable=1
Used Lambda table of kaon+
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for mu+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
muIoni: for mu+ SubType=2
muIoni: for mu+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 200 keV
Bragg : Emin= 0 meV Emax= 200 keV
BetheBloch : Emin= 200 keV Emax= 1 GeV
MuBetheBloch : Emin= 1 GeV Emax= 100 TeV
muBrems: for mu+ SubType=3
muBrems: for mu+ XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
MuBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
muPairProd: for mu+ SubType=4
muPairProd: for mu+ XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 21x1001 from 1 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
muPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1
CoulombScat: for mu+ XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for mu- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
muIoni: for mu- SubType=2
muIoni: for mu- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax= 200 keV
ICRU73QO : Emin= 0 meV Emax= 200 keV
BetheBloch : Emin= 200 keV Emax= 1 GeV
MuBetheBloch : Emin= 1 GeV Emax= 100 TeV
muBrems: for mu- SubType=3
muBrems: for mu- XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
MuBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
muPairProd: for mu- SubType=4
muPairProd: for mu- XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 21x1001 from 1 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
muPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1
CoulombScat: for mu- XStype:3 SubType=1 BuildTable=1
Used Lambda table of mu+
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for pi+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for pi+ SubType=2
hIoni: for pi+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax=297.505 keV
Bragg : Emin= 0 meV Emax=297.505 keV
BetheBloch : Emin=297.505 keV Emax= 100 TeV
hBrems: for pi+ SubType=3
hBrems: for pi+ XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for pi+ SubType=4
hPairProd: for pi+ XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 20x1001 from 1.11656 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1
CoulombScat: for pi+ XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for pi- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for pi- SubType=2
hIoni: for pi- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax=297.505 keV
ICRU73QO : Emin= 0 meV Emax=297.505 keV
BetheBloch : Emin=297.505 keV Emax= 100 TeV
hBrems: for pi- SubType=3
hBrems: for pi- XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for pi- SubType=4
hPairProd: for pi- XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 20x1001 from 1.11656 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1
CoulombScat: for pi- XStype:3 SubType=1 BuildTable=1
Used Lambda table of pi+
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
========= Table of registered couples ============================
@@ -563,22 +569,22 @@ Index : 2 used in the geometry : Yes
Run terminated.
Run Summary
Number of events processed : 1000
User=0.240000s Real=0.294948s Sys=0.000000s
User=0.210000s Real=0.241026s Sys=0.000000s
================== run summary =====================
End of Run TotNbofEvents = 1000
Mean energy deposit in absorber = 0.0488395 +-0.0194561 MeV
Total number of XTR gammas = 2704
Total number of all gammas = 2816
Mean energy deposit in absorber = 0.0489248 +-0.0191237 MeV
Total number of XTR gammas = 2731
Total number of all gammas = 2822
--------- Ranecu engine status ---------
Initial seed (index) = 0
Current couple of seeds = 1047670955, 1936905201
Current couple of seeds = 1061505375, 1894607203
----------------------------------------
... write file : testem10.root - done
... close file : testem10.root - done
G4 kernel has come to Quit state.
================== Deleting memory pools ===================
Number of memory pools allocated: 10 of which, static: 0
Dynamic pools deleted: 10 / Total memory freed: 0.045 MB
Dynamic pools deleted: 10 / Total memory freed: 0.04 MB
============================================================
RunManagerKernel is deleted. Good bye :)
@@ -54,10 +54,6 @@
Physics lists and options can be (re)set with UI commands
Please, notice that options set through G4EmProcessOptions are global, eg
for all particle types. In G4 builders, it is shown how to set options per
particle type.
\section TestEm11_s3 ACTION INITIALIZATION
A newly introduced class, ActionInitialization, instantiates and registers
@@ -1,9 +1,6 @@
#----------------------------------------------------------------------------
# Setup the project
cmake_minimum_required(VERSION 3.8...3.18)
if(${CMAKE_VERSION} VERSION_LESS 3.12)
cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
endif()
cmake_minimum_required(VERSION 3.12...3.20)
project(TestEm11)
#----------------------------------------------------------------------------
@@ -13,6 +13,17 @@ track of all tags.
----------------------------------------------------------
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
10-05-21 mma (testem11-V10-07-02)
- Migration to G4RunManagerFactory and G4SteppingVerboseWithUnits.
10-02-21 V.Ivanchenko (testem11-V10-07-01)
- fixed README
17-12-20 mma (testem11-V10-07-00)
- updated PhysListEmStandard.cc
- DetectorConstruction : print used materials
- RunAction : dump G4EmParameters
27-10-20 mma (testem11-V11-06-01)
- add macros description in Readme
@@ -61,10 +61,6 @@
Physics lists and options can be (re)set with UI commands
Please, notice that options set through G4EmProcessOptions are global, eg
for all particle types. In G4 builders, it is shown how to set options per
particle type.
3- ACTION INITIALIZATION
A newly introduced class, ActionInitialization, instantiates and registers
@@ -32,19 +32,14 @@
#include "G4Types.hh"
#ifdef G4MULTITHREADED
#include "G4MTRunManager.hh"
#else
#include "G4RunManager.hh"
#endif
#include "G4RunManagerFactory.hh"
#include "G4UImanager.hh"
#include "G4SteppingVerbose.hh"
#include "Randomize.hh"
#include "DetectorConstruction.hh"
#include "PhysicsList.hh"
#include "ActionInitialization.hh"
#include "SteppingVerbose.hh"
#include "G4UIExecutive.hh"
#include "G4VisExecutive.hh"
@@ -59,22 +54,18 @@ int main(int argc,char** argv) {
//choose the Random engine
G4Random::setTheEngine(new CLHEP::RanecuEngine);
//choose local stepping verbose
G4VSteppingVerbose::SetInstance(new SteppingVerbose);
//Construct the default run manager
#ifdef G4MULTITHREADED
G4MTRunManager* runManager = new G4MTRunManager;
// Number of threads can be defined via 3rd argument
G4int nThreads = std::min(G4Threading::G4GetNumberOfCores(),4);
if (argc==3) nThreads = G4UIcommand::ConvertToInt(argv[2]);
runManager->SetNumberOfThreads(nThreads);
G4cout << "===== TestEm11 is started with "
<< runManager->GetNumberOfThreads() << " threads =====" << G4endl;
#else
G4RunManager* runManager = new G4RunManager;
#endif
//Use SteppingVerbose with Unit
G4int precision = 4;
G4SteppingVerbose::UseBestUnit(precision);
//Creating run manager
auto runManager = G4RunManagerFactory::CreateRunManager();
if (argc==3) {
G4int nThreads = G4UIcommand::ConvertToInt(argv[2]);
runManager->SetNumberOfThreads(nThreads);
}
//set mandatory initialization classes
DetectorConstruction* det = new DetectorConstruction;
@@ -1,10 +1,17 @@
Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type...
############################################
!!! WARNING - FPE detection is activated !!!
############################################
################################
!!! G4Backtrace is activated !!!
################################
**************************************************************
Geant4 version Name: geant4-10-07-patch-02 (11-June-2021)
Geant4 version Name: geant4-10-07-ref-06 (25-June-2021)
Copyright : Geant4 Collaboration
References : NIM A 506 (2003), 250-303
: IEEE-TNS 53 (2006), 270-278
@@ -12,11 +19,31 @@
WWW : http://geant4.org/
**************************************************************
Material: G4_Si density: 2.330 g/cm3 RadL: 9.366 cm Nucl.Int.Length: 45.660 cm
Imean: 173.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Si (Si) Z = 14.0 N = 28 A = 28.085 g/mole
---> Isotope: Si28 Z = 14 N = 28 A = 27.98 g/mole abundance: 92.230 %
---> Isotope: Si29 Z = 14 N = 29 A = 28.98 g/mole abundance: 4.683 %
---> Isotope: Si30 Z = 14 N = 30 A = 29.97 g/mole abundance: 3.087 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
/run/verbose 1
#
/testem/det/setNbOfAbsor 1
/run/reinitializeGeometry
/testem/det/setAbsor 1 G4_Si 1 mm
Material: G4_Si density: 2.330 g/cm3 RadL: 9.366 cm Nucl.Int.Length: 45.660 cm
Imean: 173.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Si (Si) Z = 14.0 N = 28 A = 28.085 g/mole
---> Isotope: Si28 Z = 14 N = 28 A = 27.98 g/mole abundance: 92.230 %
---> Isotope: Si29 Z = 14 N = 29 A = 28.98 g/mole abundance: 4.683 %
---> Isotope: Si30 Z = 14 N = 30 A = 29.97 g/mole abundance: 3.087 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
/run/reinitializeGeometry
/testem/det/setSizeYZ 1 mm
/run/reinitializeGeometry
@@ -53,132 +80,132 @@ PhysicsList::AddPhysicsList: <emstandard_opt3>
phot: for gamma SubType=12 BuildTable=0
LambdaPrime table from 200 keV to 100 TeV in 174 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
LivermorePhElectric : Emin= 0 eV Emax= 100 TeV SauterGavrila Fluo
LivermorePhElectric : Emin= 0 meV Emax= 100 TeV SauterGavrila Fluo
compt: for gamma SubType=13 BuildTable=1
Lambda table from 10 eV to 1 MeV, 20 bins/decade, spline: 1
LambdaPrime table from 1 MeV to 100 TeV in 160 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
KleinNishina : Emin= 0 eV Emax= 100 TeV Fluo
KleinNishina : Emin= 0 meV Emax= 100 TeV Fluo
conv: for gamma SubType=14 BuildTable=1
Lambda table from 1.022 MeV to 100 TeV, 20 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
BetheHeitlerLPM : Emin= 0 eV Emax= 100 TeV ModifiedTsai
BetheHeitlerLPM : Emin= 0 meV Emax= 100 TeV ModifiedTsai
Rayl: for gamma SubType=11 BuildTable=1
Lambda table from 10 eV to 100 keV, 20 bins/decade, spline: 0
LambdaPrime table from 100 keV to 100 TeV in 180 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator
LivermoreRayleigh : Emin= 0 meV Emax= 100 TeV CullenGenerator
msc: for e- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
eIoni: for e- SubType=2
eIoni: for e- XStype:1 SubType=2
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
MollerBhabha : Emin= 0 eV Emax= 100 TeV deltaVI
MollerBhabha : Emin= 0 meV Emax= 100 TeV deltaVI
CSDA range table up to 1 GeV in 160 bins
eBrem: for e- SubType=3
eBrem: for e- XStype:4 SubType=3
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000
===== EM models for the G4Region DefaultRegionForTheWorld ======
eBremSB : Emin= 0 eV Emax= 1 GeV AngularGen2BS
eBremSB : Emin= 0 meV Emax= 1 GeV AngularGen2BS
eBremLPM : Emin= 1 GeV Emax= 100 TeV AngularGen2BS
ePairProd: for e- SubType=4
ePairProd: for e- XStype:1 SubType=4
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
Sampling table 25x1001 from 0.1 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
ePairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
msc: for e+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
eIoni: for e+ SubType=2
eIoni: for e+ XStype:1 SubType=2
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
MollerBhabha : Emin= 0 eV Emax= 100 TeV deltaVI
MollerBhabha : Emin= 0 meV Emax= 100 TeV deltaVI
CSDA range table up to 1 GeV in 160 bins
eBrem: for e+ SubType=3
eBrem: for e+ XStype:4 SubType=3
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000
===== EM models for the G4Region DefaultRegionForTheWorld ======
eBremSB : Emin= 0 eV Emax= 1 GeV AngularGen2BS
eBremSB : Emin= 0 meV Emax= 1 GeV AngularGen2BS
eBremLPM : Emin= 1 GeV Emax= 100 TeV AngularGen2BS
ePairProd: for e+ SubType=4
ePairProd: for e+ XStype:1 SubType=4
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
Sampling table 25x1001 from 0.1 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
ePairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
annihil: for e+, integral:1 SubType=5 BuildTable=0
annihil: for e+ XStype:2 SubType=5 BuildTable=0
===== EM models for the G4Region DefaultRegionForTheWorld ======
eplus2gg : Emin= 0 eV Emax= 100 TeV
eplus2gg : Emin= 0 meV Emax= 100 TeV
msc: for proton SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
hIoni: for proton SubType=2
hIoni: for proton XStype:1 SubType=2
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 2 MeV deltaVI
Bragg : Emin= 0 meV Emax= 2 MeV deltaVI
BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI
CSDA range table up to 1 GeV in 160 bins
hBrems: for proton SubType=3
hBrems: for proton XStype:1 SubType=3
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for proton SubType=4
hPairProd: for proton XStype:1 SubType=4
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
Sampling table 17x1001 from 7.50618 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
nuclearStopping: for proton SubType=8 BuildTable=0
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV
ICRU49NucStopping : Emin= 0 meV Emax= 1 MeV
msc: for GenericIon SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
ionIoni: for GenericIon SubType=2
ionIoni: for GenericIon XStype:1 SubType=2
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.02
===== EM models for the G4Region DefaultRegionForTheWorld ======
ParamICRU73 : Emin= 0 eV Emax= 100 TeV deltaVI
ParamICRU73 : Emin= 0 meV Emax= 100 TeV deltaVI
CSDA range table up to 1 GeV in 160 bins
nuclearStopping: for GenericIon SubType=8 BuildTable=0
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV
ICRU49NucStopping : Emin= 0 meV Emax= 1 MeV
======================================================================
====== Radioactive Decay Physics Parameters =======
======================================================================
@@ -192,216 +219,217 @@ Auger electron emission enabled 0
Auger cascade enabled 0
Check EM cuts disabled for atomic de-excitation 0
Use Bearden atomic level energies 0
Threshold for very long decay time at rest 1e+27 ns
======================================================================
msc: for alpha SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
ionIoni: for alpha SubType=2
ionIoni: for alpha XStype:1 SubType=2
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.02
===== EM models for the G4Region DefaultRegionForTheWorld ======
BraggIon : Emin= 0 eV Emax=7.9452 MeV deltaVI
BraggIon : Emin= 0 meV Emax=7.9452 MeV deltaVI
BetheBloch : Emin=7.9452 MeV Emax= 100 TeV deltaVI
CSDA range table up to 1 GeV in 160 bins
nuclearStopping: for alpha SubType=8 BuildTable=0
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV
ICRU49NucStopping : Emin= 0 meV Emax= 1 MeV
msc: for anti_proton SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
hIoni: for anti_proton SubType=2
hIoni: for anti_proton XStype:1 SubType=2
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax= 2 MeV deltaVI
ICRU73QO : Emin= 0 meV Emax= 2 MeV deltaVI
BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI
CSDA range table up to 1 GeV in 160 bins
hBrems: for anti_proton SubType=3
hBrems: for anti_proton XStype:1 SubType=3
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for anti_proton SubType=4
hPairProd: for anti_proton XStype:1 SubType=4
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
Sampling table 17x1001 from 7.50618 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
msc: for kaon+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
hIoni: for kaon+ SubType=2
hIoni: for kaon+ XStype:1 SubType=2
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax=1.05231 MeV deltaVI
Bragg : Emin= 0 meV Emax=1.05231 MeV deltaVI
BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI
CSDA range table up to 1 GeV in 160 bins
hBrems: for kaon+ SubType=3
hBrems: for kaon+ XStype:1 SubType=3
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for kaon+ SubType=4
hPairProd: for kaon+ XStype:1 SubType=4
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
Sampling table 18x1001 from 3.94942 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
msc: for kaon- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
hIoni: for kaon- SubType=2
hIoni: for kaon- XStype:1 SubType=2
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax=1.05231 MeV deltaVI
ICRU73QO : Emin= 0 meV Emax=1.05231 MeV deltaVI
BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI
CSDA range table up to 1 GeV in 160 bins
hBrems: for kaon- SubType=3
hBrems: for kaon- XStype:1 SubType=3
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for kaon- SubType=4
hPairProd: for kaon- XStype:1 SubType=4
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
Sampling table 18x1001 from 3.94942 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
msc: for mu+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
muIoni: for mu+ SubType=2
muIoni: for mu+ XStype:1 SubType=2
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 200 keV deltaVI
Bragg : Emin= 0 meV Emax= 200 keV deltaVI
BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI
MuBetheBloch : Emin= 1 GeV Emax= 100 TeV
CSDA range table up to 1 GeV in 160 bins
muBrems: for mu+ SubType=3
muBrems: for mu+ XStype:1 SubType=3
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
MuBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
muPairProd: for mu+ SubType=4
muPairProd: for mu+ XStype:1 SubType=4
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
Sampling table 21x1001 from 1 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
muPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
msc: for mu- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
muIoni: for mu- SubType=2
muIoni: for mu- XStype:1 SubType=2
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax= 200 keV deltaVI
ICRU73QO : Emin= 0 meV Emax= 200 keV deltaVI
BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI
MuBetheBloch : Emin= 1 GeV Emax= 100 TeV
CSDA range table up to 1 GeV in 160 bins
muBrems: for mu- SubType=3
muBrems: for mu- XStype:1 SubType=3
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
MuBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
muPairProd: for mu- SubType=4
muPairProd: for mu- XStype:1 SubType=4
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
Sampling table 21x1001 from 1 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
muPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
msc: for pi+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
hIoni: for pi+ SubType=2
hIoni: for pi+ XStype:1 SubType=2
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax=297.505 keV deltaVI
Bragg : Emin= 0 meV Emax=297.505 keV deltaVI
BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI
CSDA range table up to 1 GeV in 160 bins
hBrems: for pi+ SubType=3
hBrems: for pi+ XStype:1 SubType=3
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for pi+ SubType=4
hPairProd: for pi+ XStype:1 SubType=4
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
Sampling table 20x1001 from 1.11656 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
msc: for pi- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=240 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
hIoni: for pi- SubType=2
hIoni: for pi- XStype:1 SubType=2
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax=297.505 keV deltaVI
ICRU73QO : Emin= 0 meV Emax=297.505 keV deltaVI
BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI
CSDA range table up to 1 GeV in 160 bins
hBrems: for pi- SubType=3
hBrems: for pi- XStype:1 SubType=3
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for pi- SubType=4
hPairProd: for pi- XStype:1 SubType=4
dE/dx and range tables from 10 eV to 100 TeV in 260 bins
Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1
Sampling table 20x1001 from 1.11656 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
========= Table of registered couples ============================
@@ -427,36 +455,113 @@ Index : 1 used in the geometry : Yes
Initial seed (index) = 0
Current couple of seeds = 9876, 54321
----------------------------------------
=======================================================================
====== Electromagnetic Physics Parameters ========
=======================================================================
LPM effect enabled 1
Enable creation and use of sampling tables 0
Apply cuts on all EM processes 0
Use general process 0
Enable linear polarisation for gamma 0
Enable sampling of quantum entanglement 0
X-section factor for integral approach 0.8
Min kinetic energy for tables 10 eV
Max kinetic energy for tables 100 TeV
Number of bins per decade of a table 20
Verbose level 1
Verbose level for worker thread 0
Bremsstrahlung energy threshold above which
primary e+- is added to the list of secondary 100 TeV
Bremsstrahlung energy threshold above which primary
muon/hadron is added to the list of secondary 100 TeV
Lowest triplet kinetic energy 1 MeV
Enable sampling of gamma linear polarisation 0
5D gamma conversion model type 0
5D gamma conversion model on isolated ion 0
Livermore data directory livermore
=======================================================================
====== Ionisation Parameters ========
=======================================================================
Step function for e+- (0.2, 0.1 mm)
Step function for muons/hadrons (0.2, 0.05 mm)
Step function for light ions (0.1, 0.02 mm)
Step function for general ions (0.1, 0.001 mm)
Lowest e+e- kinetic energy 100 eV
Lowest muon/hadron kinetic energy 1 keV
Fluctuations of dE/dx are enabled 1
Use ICRU90 data 1
Use built-in Birks satuaration 0
Build CSDA range enabled 1
Use cut as a final range enabled 0
Enable angular generator interface 1
Max kinetic energy for CSDA tables 1 GeV
Max kinetic energy for NIEL computation 1 MeV
Linear loss limit 0.01
Read data from file for e+e- pair production by mu 0
=======================================================================
====== Multiple Scattering Parameters ========
=======================================================================
Type of msc step limit algorithm for e+- 3
Type of msc step limit algorithm for muons/hadrons 0
Msc lateral displacement for e+- enabled 1
Msc lateral displacement for muons and hadrons 1
Urban msc model lateral displacement alg96 1
Range factor for msc step limit for e+- 0.04
Range factor for msc step limit for muons/hadrons 0.2
Geometry factor for msc step limitation of e+- 2.5
Safety factor for msc step limit for e+- 0.6
Skin parameter for msc step limitation of e+- 1
Lambda limit for msc step limit for e+- 1 mm
Use Mott correction for e- scattering 1
Factor used for dynamic computation of angular
limit between single and multiple scattering 1
Fixed angular limit between single
and multiple scattering 3.1416 rad
Upper energy limit for e+- multiple scattering 100 MeV
Type of electron single scattering model 0
Type of nuclear form-factor 1
Screening factor 1
=======================================================================
====== Atomic Deexcitation Parameters ========
=======================================================================
Fluorescence enabled 1
Fluorescence Bearden data files enabled 0
Auger electron cascade enabled 0
PIXE atomic de-excitation enabled 0
De-excitation module ignores cuts 0
Type of PIXE cross section for hadrons Empirical
Type of PIXE cross section for e+- Livermore
=======================================================================
--> Event 0 starts.
--> Event 10000 starts.
Run terminated.
Run Summary
Number of events processed : 20000
User=0.670000s Real=0.903690s Sys=0.000000s
User=0.640000s Real=0.655069s Sys=0.000000s
======================== run summary =====================
The run is 20000 e- of 500.00 keV through 1 absorbers:
1 1.00 mm of G4_Si (density: 2.33 g/cm3 )
Edep in absorber 1 = 448.186 keV (17.351 keV-->500.000 keV)
Edep in absorber 1 = 447.527 keV (17.351 keV-->500.000 keV)
Track length of primary track = 883.096 um +- 192.370 um
Track length of primary track = 882.059 um +- 192.822 um
Range from EmCalculator = 942.776 um (from full dE/dx)
Projected range = 321.214 um +- 195.220 um
Projected range = 321.076 um +- 196.557 um
Nb of steps of primary track = 11.40 +- 2.83 Step size= 80.255 um +- 21.135 um
Nb of steps of primary track = 11.40 +- 2.83 Step size= 80.134 um +- 21.075 um
absorbed = 78.10 % transmit = 5.17 % reflected = 16.73 %
absorbed = 77.69 % transmit = 5.10 % reflected = 17.21 %
--------- Ranecu engine status ---------
Initial seed (index) = 0
Current couple of seeds = 431014072, 1945144233
Current couple of seeds = 177879595, 1755351050
----------------------------------------
G4 kernel has come to Quit state.
================== Deleting memory pools ===================
Number of memory pools allocated: 9 of which, static: 0
Dynamic pools deleted: 9 / Total memory freed: 0.015 MB
Dynamic pools deleted: 9 / Total memory freed: 0.014 MB
============================================================
RunManagerKernel is deleted. Good bye :)
@@ -34,7 +34,6 @@
class DetectorConstruction;
class PhysicsList;
class G4VSteppingVerbose;
/// Action initialization class.
///
@@ -42,13 +41,11 @@ class G4VSteppingVerbose;
class ActionInitialization : public G4VUserActionInitialization
{
public:
ActionInitialization(DetectorConstruction* detector, PhysicsList* physics);
virtual ~ActionInitialization();
ActionInitialization(DetectorConstruction*, PhysicsList*);
~ActionInitialization() override;
virtual void BuildForMaster() const;
virtual void Build() const;
virtual G4VSteppingVerbose* InitializeSteppingVerbose() const;
void BuildForMaster() const override;
void Build() const override;
private:
DetectorConstruction* fDetector;
@@ -33,7 +33,6 @@
#include "EventAction.hh"
#include "TrackingAction.hh"
#include "SteppingAction.hh"
#include "SteppingVerbose.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -75,10 +74,3 @@ void ActionInitialization::Build() const
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
G4VSteppingVerbose* ActionInitialization::InitializeSteppingVerbose() const
{
return new SteppingVerbose();
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -285,6 +285,7 @@ void DetectorConstruction::SetAbsorMaterial(G4int iabs,const G4String& material)
if (pttoMaterial) {
fAbsorMaterial[iabs] = pttoMaterial;
G4RunManager::GetRunManager()->PhysicsHasBeenModified();
G4cout << "\n " << pttoMaterial << G4endl;
}
}
@@ -37,6 +37,7 @@
#include "G4PhotoElectricEffect.hh"
#include "G4RayleighScattering.hh"
#include "G4KleinNishinaModel.hh"
#include "G4LivermorePhotoElectricModel.hh"
#include "G4eMultipleScattering.hh"
#include "G4eIonisation.hh"
@@ -63,7 +64,6 @@
#include "G4UAtomicDeexcitation.hh"
#include "G4BuilderType.hh"
#include "G4SystemOfUnits.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -71,14 +71,19 @@
PhysListEmStandard::PhysListEmStandard(const G4String& name)
: G4VPhysicsConstructor(name)
{
G4EmParameters* param = G4EmParameters::Instance();
param->SetDefaults();
param->SetMinEnergy(10*eV);
param->SetMaxEnergy(10*TeV);
param->SetNumberOfBinsPerDecade(10);
param->SetMscStepLimitType(fUseSafetyPlus);
param->SetFluo(true);
SetPhysicsType(bElectromagnetic);
G4EmParameters* param = G4EmParameters::Instance();
param->SetDefaults();
param->SetVerbose(0);
param->SetMinEnergy(10*eV);
param->SetMaxEnergy(10*TeV);
param->SetNumberOfBinsPerDecade(10);
param->SetStepFunction(0.1, 100*um);
param->SetStepFunctionMuHad(0.1, 50*um);
param->SetStepFunctionLightIons(0.1, 20*um);
param->SetStepFunctionIons(0.1, 1*um);
param->SetMscStepLimitType(fUseDistanceToBoundary);
param->SetDeexcitationIgnoreCut(true);
SetPhysicsType(bElectromagnetic);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -102,42 +107,31 @@ void PhysListEmStandard::ConstructProcess()
if (particleName == "gamma") {
ph->RegisterProcess(new G4RayleighScattering, particle);
ph->RegisterProcess(new G4PhotoElectricEffect, particle);
G4ComptonScattering* cs = new G4ComptonScattering;
cs->SetEmModel(new G4KleinNishinaModel());
ph->RegisterProcess(cs, particle);
ph->RegisterProcess(new G4GammaConversion, particle);
////ph->RegisterProcess(new G4RayleighScattering, particle);
} else if (particleName == "e-") {
ph->RegisterProcess(new G4eMultipleScattering(), particle);
//
G4eIonisation* eIoni = new G4eIonisation();
eIoni->SetStepFunction(0.1, 100*um);
ph->RegisterProcess(eIoni, particle);
//
ph->RegisterProcess(new G4eMultipleScattering(), particle);
ph->RegisterProcess(new G4eIonisation(), particle);
ph->RegisterProcess(new G4eBremsstrahlung(), particle);
} else if (particleName == "e+") {
ph->RegisterProcess(new G4eMultipleScattering(), particle);
//
G4eIonisation* eIoni = new G4eIonisation();
eIoni->SetStepFunction(0.1, 100*um);
ph->RegisterProcess(eIoni, particle);
//
ph->RegisterProcess(new G4eMultipleScattering(), particle);
ph->RegisterProcess(new G4eIonisation(), particle);
ph->RegisterProcess(new G4eBremsstrahlung(), particle);
//
ph->RegisterProcess(new G4eplusAnnihilation(), particle);
} else if (particleName == "mu+" ||
particleName == "mu-" ) {
ph->RegisterProcess(new G4MuMultipleScattering(), particle);
G4MuIonisation* muIoni = new G4MuIonisation();
muIoni->SetStepFunction(0.1, 50*um);
ph->RegisterProcess(muIoni, particle);
ph->RegisterProcess(new G4MuMultipleScattering(), particle);
ph->RegisterProcess(new G4MuIonisation(), particle);
ph->RegisterProcess(new G4MuBremsstrahlung(), particle);
ph->RegisterProcess(new G4MuPairProduction(), particle);
@@ -146,9 +140,7 @@ void PhysListEmStandard::ConstructProcess()
particleName == "pi+" ) {
ph->RegisterProcess(new G4hMultipleScattering(), particle);
G4hIonisation* hIoni = new G4hIonisation();
hIoni->SetStepFunction(0.1, 20*um);
ph->RegisterProcess(hIoni, particle);
ph->RegisterProcess(new G4hIonisation(), particle);
ph->RegisterProcess(new G4hBremsstrahlung(), particle);
ph->RegisterProcess(new G4hPairProduction(), particle);
@@ -156,9 +148,7 @@ void PhysListEmStandard::ConstructProcess()
particleName == "He3" ) {
ph->RegisterProcess(new G4hMultipleScattering(), particle);
G4ionIonisation* ionIoni = new G4ionIonisation();
ionIoni->SetStepFunction(0.1, 1*um);
ph->RegisterProcess(ionIoni, particle);
ph->RegisterProcess(new G4ionIonisation(), particle);
ph->RegisterProcess(new G4NuclearStopping(), particle);
} else if( particleName == "GenericIon" ) {
@@ -166,14 +156,13 @@ void PhysListEmStandard::ConstructProcess()
ph->RegisterProcess(new G4hMultipleScattering(), particle);
G4ionIonisation* ionIoni = new G4ionIonisation();
ionIoni->SetEmModel(new G4IonParametrisedLossModel());
ionIoni->SetStepFunction(0.1, 1*um);
ph->RegisterProcess(ionIoni, particle);
ph->RegisterProcess(new G4NuclearStopping(), particle);
} else if ((!particle->IsShortLived()) &&
(particle->GetPDGCharge() != 0.0) &&
(particle->GetParticleName() != "chargedgeantino")) {
(particle->GetPDGCharge() != 0.0) &&
(particle->GetParticleName() != "chargedgeantino")) {
//all others charged particles except geantino
ph->RegisterProcess(new G4hMultipleScattering(), particle);
ph->RegisterProcess(new G4hIonisation(), particle);
@@ -184,7 +173,6 @@ void PhysListEmStandard::ConstructProcess()
//
G4VAtomDeexcitation* de = new G4UAtomicDeexcitation();
G4LossTableManager::Instance()->SetAtomDeexcitation(de);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -39,6 +39,7 @@
#include "G4Run.hh"
#include "G4EmCalculator.hh"
#include "G4EmParameters.hh"
#include "G4UnitsTable.hh"
#include "G4SystemOfUnits.hh"
@@ -75,9 +76,12 @@ G4Run* RunAction::GenerateRun()
void RunAction::BeginOfRunAction(const G4Run*)
{
// shpw Rndm status
if (isMaster) G4Random::showEngineStatus();
// show Rndm status
if (isMaster) {
G4Random::showEngineStatus();
G4EmParameters::Instance()->Dump();
}
// keep run condition
if ( fPrimary ) {
G4ParticleDefinition* particle
@@ -1,160 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file electromagnetic/TestEm11/src/SteppingVerbose.cc
/// \brief Implementation of the SteppingVerbose class
//
//
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "SteppingVerbose.hh"
#include "G4SteppingManager.hh"
#include "G4ParticleTypes.hh"
#include "G4UnitsTable.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::SteppingVerbose()
: G4SteppingVerbose()
{ }
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::~SteppingVerbose()
{}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::TrackingStarted()
{
CopyState();
G4int prec = G4cout.precision(3);
//Step zero
//
if( verboseLevel > 0 ){
G4cout << std::setw( 5) << "Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
G4cout << std::setw(5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName()
<< " initStep" << G4endl;
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::StepInfo()
{
CopyState();
G4int prec = G4cout.precision(3);
if( verboseLevel >= 1 ){
if( verboseLevel >= 4 ) VerboseTrack();
if( verboseLevel >= 3 ){
G4cout << G4endl;
G4cout << std::setw( 5) << "#Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
}
G4cout << std::setw( 5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName();
const G4VProcess* process
= fStep->GetPostStepPoint()->GetProcessDefinedStep();
G4String procName = " UserLimit";
if (process) procName = process->GetProcessName();
if (fStepStatus == fWorldBoundary) procName = "OutOfWorld";
G4cout << " " << std::setw(10) << procName;
G4cout << G4endl;
if( verboseLevel == 2 ){
G4int tN2ndariesTot = fN2ndariesAtRestDoIt +
fN2ndariesAlongStepDoIt +
fN2ndariesPostStepDoIt;
if(tN2ndariesTot>0){
G4cout << "\n :----- List of secondaries ----------------"
<< G4endl;
G4cout.precision(4);
for(size_t lp1=(*fSecondary).size()-tN2ndariesTot;
lp1<(*fSecondary).size(); lp1++){
G4cout << " "
<< std::setw(13)
<< (*fSecondary)[lp1]->GetDefinition()->GetParticleName()
<< ": energy ="
<< std::setw(6)
<< G4BestUnit((*fSecondary)[lp1]->GetKineticEnergy(),"Energy")
<< " time ="
<< std::setw(6)
<< G4BestUnit((*fSecondary)[lp1]->GetGlobalTime(),"Time");
G4cout << G4endl;
}
G4cout << " :------------------------------------------\n"
<< G4endl;
}
}
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -60,10 +60,6 @@
Physics lists and options can be (re)set with UI commands
Please, notice that options set through G4EmProcessOptions are global, eg
for all particle types. In G4 builders, it is shown how to set options per
particle type.
\section TestEm12_s3 AN EVENT : THE PRIMARY GENERATOR
The primary kinematic consists of a single particle randomly shot at
@@ -1,9 +1,6 @@
#----------------------------------------------------------------------------
# Setup the project
cmake_minimum_required(VERSION 3.8...3.18)
if(${CMAKE_VERSION} VERSION_LESS 3.12)
cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
endif()
cmake_minimum_required(VERSION 3.12...3.20)
project(TestEm12)
#----------------------------------------------------------------------------
@@ -14,6 +14,15 @@ track of all tags.
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
10-05-21 mma (testem12-V10-07-02)
- Migration to G4RunManagerFactory and G4SteppingVerboseWithUnits.
10-02-21 V.Ivanchenko (testem12-V10-07-01)
- fixed README
18-12-20 mma (testem12-V10-07-00)
- updated PhysListEmStandard.cc
27-10-20 mma (testem12-V10-06-00)
- add macros description in Readme
@@ -63,10 +63,6 @@
Physics lists and options can be (re)set with UI commands
Please, notice that options set through G4EmProcessOptions are global, eg
for all particle types. In G4 builders, it is shown how to set options per
particle type.
3- AN EVENT : THE PRIMARY GENERATOR
The primary kinematic consists of a single particle randomly shot at
@@ -32,19 +32,14 @@
#include "G4Types.hh"
#ifdef G4MULTITHREADED
#include "G4MTRunManager.hh"
#else
#include "G4RunManager.hh"
#endif
#include "G4RunManagerFactory.hh"
#include "G4UImanager.hh"
#include "G4SteppingVerbose.hh"
#include "Randomize.hh"
#include "DetectorConstruction.hh"
#include "PhysicsList.hh"
#include "ActionInitialization.hh"
#include "SteppingVerbose.hh"
#include "G4UIExecutive.hh"
#include "G4VisExecutive.hh"
@@ -59,19 +54,18 @@ int main(int argc,char** argv) {
//choose the Random engine
G4Random::setTheEngine(new CLHEP::RanecuEngine);
//construct the default run manager
#ifdef G4MULTITHREADED
G4MTRunManager* runManager = new G4MTRunManager;
G4int nThreads = std::min(4,G4Threading::G4GetNumberOfCores());
if (argc==3) nThreads = G4UIcommand::ConvertToInt(argv[2]);
runManager->SetNumberOfThreads(nThreads);
G4cout << "### TestEm12 run in MT mode with "
<< nThreads << " threads " << G4endl;
#else
G4VSteppingVerbose::SetInstance(new SteppingVerbose);
G4RunManager* runManager = new G4RunManager;
#endif
//Use SteppingVerbose with Unit
G4int precision = 4;
G4SteppingVerbose::UseBestUnit(precision);
//Creating run manager
auto runManager = G4RunManagerFactory::CreateRunManager();
if (argc==3) {
G4int nThreads = G4UIcommand::ConvertToInt(argv[2]);
runManager->SetNumberOfThreads(nThreads);
}
//set mandatory initialization classes
DetectorConstruction* det = new DetectorConstruction;
@@ -1,10 +1,17 @@
Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type...
############################################
!!! WARNING - FPE detection is activated !!!
############################################
################################
!!! G4Backtrace is activated !!!
################################
**************************************************************
Geant4 version Name: geant4-10-07-patch-02 (11-June-2021)
Geant4 version Name: geant4-10-07-ref-06 (25-June-2021)
Copyright : Geant4 Collaboration
References : NIM A 506 (2003), 250-303
: IEEE-TNS 53 (2006), 270-278
@@ -62,49 +69,49 @@ PhysicsList::AddPhysicsList: <emstandard_opt0>
phot: for gamma SubType=12 BuildTable=0
LambdaPrime table from 200 keV to 100 TeV in 61 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
LivermorePhElectric : Emin= 0 eV Emax= 100 TeV SauterGavrila Fluo
LivermorePhElectric : Emin= 0 meV Emax= 100 TeV SauterGavrila Fluo
compt: for gamma SubType=13 BuildTable=1
Lambda table from 100 eV to 1 MeV, 7 bins/decade, spline: 1
LambdaPrime table from 1 MeV to 100 TeV in 56 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
Klein-Nishina : Emin= 0 eV Emax= 100 TeV
Klein-Nishina : Emin= 0 meV Emax= 100 TeV
conv: for gamma SubType=14 BuildTable=1
Lambda table from 1.022 MeV to 100 TeV, 18 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
BetheHeitlerLPM : Emin= 0 eV Emax= 100 TeV ModifiedTsai
BetheHeitlerLPM : Emin= 0 meV Emax= 100 TeV ModifiedTsai
Rayl: for gamma SubType=11 BuildTable=1
Lambda table from 100 eV to 100 keV, 7 bins/decade, spline: 0
LambdaPrime table from 100 keV to 100 TeV in 63 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator
LivermoreRayleigh : Emin= 0 meV Emax= 100 TeV CullenGenerator
msc: for e- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
eIoni: for e- SubType=2
eIoni: for e- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
MollerBhabha : Emin= 0 eV Emax= 100 TeV
MollerBhabha : Emin= 0 meV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
eBrem: for e- SubType=3
eBrem: for e- XStype:4 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000
===== EM models for the G4Region DefaultRegionForTheWorld ======
eBremSB : Emin= 0 eV Emax= 1 GeV ModifiedTsai
eBremSB : Emin= 0 meV Emax= 1 GeV ModifiedTsai
eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai
CoulombScat: for e-, integral:1 SubType=1 BuildTable=1
CoulombScat: for e- XStype:3 SubType=1 BuildTable=1
Lambda table from 100 MeV to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
@@ -112,32 +119,32 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1
msc: for e+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
eIoni: for e+ SubType=2
eIoni: for e+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
MollerBhabha : Emin= 0 eV Emax= 100 TeV
MollerBhabha : Emin= 0 meV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
eBrem: for e+ SubType=3
eBrem: for e+ XStype:4 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000
===== EM models for the G4Region DefaultRegionForTheWorld ======
eBremSB : Emin= 0 eV Emax= 1 GeV ModifiedTsai
eBremSB : Emin= 0 meV Emax= 1 GeV ModifiedTsai
eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai
annihil: for e+, integral:1 SubType=5 BuildTable=0
annihil: for e+ XStype:2 SubType=5 BuildTable=0
===== EM models for the G4Region DefaultRegionForTheWorld ======
eplus2gg : Emin= 0 eV Emax= 100 TeV
eplus2gg : Emin= 0 meV Emax= 100 TeV
CoulombScat: for e+, integral:1 SubType=1 BuildTable=1
CoulombScat: for e+ XStype:3 SubType=1 BuildTable=1
Lambda table from 100 MeV to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
@@ -145,298 +152,298 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1
msc: for proton SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for proton SubType=2
hIoni: for proton XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 2 MeV
Bragg : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
hBrems: for proton SubType=3
hBrems: for proton XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for proton SubType=4
hPairProd: for proton XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 17x1001 from 7.50618 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for proton, integral:1 SubType=1 BuildTable=1
CoulombScat: for proton XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for GenericIon SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
ionIoni: for GenericIon SubType=2
ionIoni: for GenericIon XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.02
Stopping Power data for 17 ion/material pairs
===== EM models for the G4Region DefaultRegionForTheWorld ======
BraggIon : Emin= 0 eV Emax= 2 MeV
BraggIon : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
msc: for alpha SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
ionIoni: for alpha SubType=2
ionIoni: for alpha XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.02
===== EM models for the G4Region DefaultRegionForTheWorld ======
BraggIon : Emin= 0 eV Emax=7.9452 MeV
BraggIon : Emin= 0 meV Emax=7.9452 MeV
BetheBloch : Emin=7.9452 MeV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
msc: for anti_proton SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for anti_proton SubType=2
hIoni: for anti_proton XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax= 2 MeV
ICRU73QO : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
hBrems: for anti_proton SubType=3
hBrems: for anti_proton XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for anti_proton SubType=4
hPairProd: for anti_proton XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 17x1001 from 7.50618 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1
CoulombScat: for anti_proton XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for kaon+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for kaon+ SubType=2
hIoni: for kaon+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax=1.05231 MeV
Bragg : Emin= 0 meV Emax=1.05231 MeV
BetheBloch : Emin=1.05231 MeV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
hBrems: for kaon+ SubType=3
hBrems: for kaon+ XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for kaon+ SubType=4
hPairProd: for kaon+ XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 18x1001 from 3.94942 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1
CoulombScat: for kaon+ XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for kaon- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for kaon- SubType=2
hIoni: for kaon- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax=1.05231 MeV
ICRU73QO : Emin= 0 meV Emax=1.05231 MeV
BetheBloch : Emin=1.05231 MeV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
hBrems: for kaon- SubType=3
hBrems: for kaon- XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for kaon- SubType=4
hPairProd: for kaon- XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 18x1001 from 3.94942 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1
CoulombScat: for kaon- XStype:3 SubType=1 BuildTable=1
Used Lambda table of kaon+
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for mu+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
muIoni: for mu+ SubType=2
muIoni: for mu+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 200 keV
Bragg : Emin= 0 meV Emax= 200 keV
BetheBloch : Emin= 200 keV Emax= 1 GeV
MuBetheBloch : Emin= 1 GeV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
muBrems: for mu+ SubType=3
muBrems: for mu+ XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
MuBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
muPairProd: for mu+ SubType=4
muPairProd: for mu+ XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 21x1001 from 1 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
muPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1
CoulombScat: for mu+ XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for mu- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
muIoni: for mu- SubType=2
muIoni: for mu- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax= 200 keV
ICRU73QO : Emin= 0 meV Emax= 200 keV
BetheBloch : Emin= 200 keV Emax= 1 GeV
MuBetheBloch : Emin= 1 GeV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
muBrems: for mu- SubType=3
muBrems: for mu- XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
MuBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
muPairProd: for mu- SubType=4
muPairProd: for mu- XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 21x1001 from 1 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
muPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1
CoulombScat: for mu- XStype:3 SubType=1 BuildTable=1
Used Lambda table of mu+
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for pi+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for pi+ SubType=2
hIoni: for pi+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax=297.505 keV
Bragg : Emin= 0 meV Emax=297.505 keV
BetheBloch : Emin=297.505 keV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
hBrems: for pi+ SubType=3
hBrems: for pi+ XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for pi+ SubType=4
hPairProd: for pi+ XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 20x1001 from 1.11656 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1
CoulombScat: for pi+ XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for pi- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for pi- SubType=2
hIoni: for pi- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax=297.505 keV
ICRU73QO : Emin= 0 meV Emax=297.505 keV
BetheBloch : Emin=297.505 keV Emax= 100 TeV
CSDA range table up to 1 GeV in 49 bins
hBrems: for pi- SubType=3
hBrems: for pi- XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for pi- SubType=4
hPairProd: for pi- XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 20x1001 from 1.11656 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1
CoulombScat: for pi- XStype:3 SubType=1 BuildTable=1
Used Lambda table of pi+
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
========= Table of registered couples ============================
@@ -459,17 +466,14 @@ Index : 0 used in the geometry : Yes
====== Electromagnetic Physics Parameters ========
=======================================================================
LPM effect enabled 1
Spline of EM tables enabled 1
Enable creation and use of sampling tables 0
Apply cuts on all EM processes 0
Use integral approach for tracking 1
Use general process 0
Enable linear polarisation for gamma 0
Enable sampling of quantum entanglement 0
X-section factor for integral approach 0.8
Min kinetic energy for tables 100 eV
Max kinetic energy for tables 100 TeV
Number of bins in tables 84
Number of bins per decade of a table 7
Verbose level 1
Verbose level for worker thread 0
@@ -497,9 +501,8 @@ Use built-in Birks satuaration 0
Build CSDA range enabled 1
Use cut as a final range enabled 0
Enable angular generator interface 0
Factor of cut reduction for sub-cutoff method 1
Max kinetic energy for CSDA tables 1 GeV
Max kinetic energy for NIEL computation 0 eV
Max kinetic energy for NIEL computation 0 meV
Linear loss limit 0.01
Read data from file for e+e- pair production by mu 0
=======================================================================
@@ -539,28 +542,28 @@ Screening factor 1
Run terminated.
Run Summary
Number of events processed : 10000
User=0.810000s Real=0.953843s Sys=0.000000s
User=0.710000s Real=0.739205s Sys=0.000000s
======================== run summary =====================
The run is 10000 e- of 4.00 MeV through 3.00 cm of G4_WATER (density: 1.00 g/cm3 )
Total Energy deposited = 3.943 MeV +- 223.028 keV
Total Energy deposited = 3.946 MeV +- 213.042 keV
Track length of primary track = 2.047 cm +- 2.831 mm
Track length of primary track = 2.050 cm +- 2.787 mm
Range from EmCalculator = 2.045 cm (from full dE/dx)
Projected range = 1.325 cm +- 3.580 mm
Projected range = 1.326 cm +- 3.553 mm
Nb of steps of primary track = 16.29 +- 3.04 Step size= 1.295 mm +- 282.026 um
Nb of steps of primary track = 16.10 +- 2.97 Step size= 1.312 mm +- 284.836 um
--------- Ranecu engine status ---------
Initial seed (index) = 0
Current couple of seeds = 2062153558, 1360634937
Current couple of seeds = 530569173, 667125941
----------------------------------------
G4 kernel has come to Quit state.
================== Deleting memory pools ===================
Number of memory pools allocated: 9 of which, static: 0
Dynamic pools deleted: 9 / Total memory freed: 0.027 MB
Dynamic pools deleted: 9 / Total memory freed: 0.026 MB
============================================================
RunManagerKernel is deleted. Good bye :)
@@ -34,7 +34,6 @@
class DetectorConstruction;
class PhysicsList;
class G4VSteppingVerbose;
/// Action initialization class.
///
@@ -42,14 +41,12 @@ class G4VSteppingVerbose;
class ActionInitialization : public G4VUserActionInitialization
{
public:
ActionInitialization(DetectorConstruction* detector, PhysicsList* physics);
virtual ~ActionInitialization();
ActionInitialization(DetectorConstruction*, PhysicsList* );
~ActionInitialization() override;
void BuildForMaster() const override;
void Build() const override;
virtual void BuildForMaster() const;
virtual void Build() const;
virtual G4VSteppingVerbose* InitializeSteppingVerbose() const;
private:
DetectorConstruction* fDetector;
PhysicsList* fPhysics;
@@ -33,7 +33,6 @@
#include "EventAction.hh"
#include "TrackingAction.hh"
#include "SteppingAction.hh"
#include "SteppingVerbose.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -76,10 +75,3 @@ void ActionInitialization::Build() const
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
G4VSteppingVerbose* ActionInitialization::InitializeSteppingVerbose() const
{
return new SteppingVerbose();
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -37,6 +37,7 @@
#include "G4PhotoElectricEffect.hh"
#include "G4RayleighScattering.hh"
#include "G4KleinNishinaModel.hh"
#include "G4LivermorePhotoElectricModel.hh"
#include "G4eMultipleScattering.hh"
#include "G4eIonisation.hh"
@@ -72,11 +73,16 @@ PhysListEmStandard::PhysListEmStandard(const G4String& name)
{
G4EmParameters* param = G4EmParameters::Instance();
param->SetDefaults();
param->SetVerbose(0);
param->SetMinEnergy(10*eV);
param->SetMaxEnergy(10*TeV);
param->SetNumberOfBinsPerDecade(10);
param->SetMscStepLimitType(fUseSafetyPlus);
param->SetFluo(true);
param->SetStepFunction(0.1, 100*um);
param->SetStepFunctionMuHad(0.1, 50*um);
param->SetStepFunctionLightIons(0.1, 20*um);
param->SetStepFunctionIons(0.1, 1*um);
param->SetMscStepLimitType(fUseDistanceToBoundary);
param->SetDeexcitationIgnoreCut(true);
SetPhysicsType(bElectromagnetic);
}
@@ -101,8 +107,8 @@ void PhysListEmStandard::ConstructProcess()
if (particleName == "gamma") {
////ph->RegisterProcess(new G4RayleighScattering, particle);
ph->RegisterProcess(new G4PhotoElectricEffect, particle);
ph->RegisterProcess(new G4RayleighScattering, particle);
ph->RegisterProcess(new G4PhotoElectricEffect, particle);
G4ComptonScattering* cs = new G4ComptonScattering;
cs->SetEmModel(new G4KleinNishinaModel());
ph->RegisterProcess(cs, particle);
@@ -110,33 +116,22 @@ void PhysListEmStandard::ConstructProcess()
} else if (particleName == "e-") {
ph->RegisterProcess(new G4eMultipleScattering(), particle);
//
G4eIonisation* eIoni = new G4eIonisation();
eIoni->SetStepFunction(0.1, 100*um);
ph->RegisterProcess(eIoni, particle);
//
ph->RegisterProcess(new G4eMultipleScattering(), particle);
ph->RegisterProcess(new G4eIonisation(), particle);
ph->RegisterProcess(new G4eBremsstrahlung(), particle);
} else if (particleName == "e+") {
ph->RegisterProcess(new G4eMultipleScattering(), particle);
//
G4eIonisation* eIoni = new G4eIonisation();
eIoni->SetStepFunction(0.1, 100*um);
ph->RegisterProcess(eIoni, particle);
//
ph->RegisterProcess(new G4eMultipleScattering(), particle);
ph->RegisterProcess(new G4eIonisation(), particle);
ph->RegisterProcess(new G4eBremsstrahlung(), particle);
//
ph->RegisterProcess(new G4eplusAnnihilation(), particle);
} else if (particleName == "mu+" ||
particleName == "mu-" ) {
ph->RegisterProcess(new G4MuMultipleScattering(), particle);
G4MuIonisation* muIoni = new G4MuIonisation();
muIoni->SetStepFunction(0.1, 50*um);
ph->RegisterProcess(muIoni, particle);
ph->RegisterProcess(new G4MuMultipleScattering(), particle);
ph->RegisterProcess(new G4MuIonisation(), particle);
ph->RegisterProcess(new G4MuBremsstrahlung(), particle);
ph->RegisterProcess(new G4MuPairProduction(), particle);
@@ -145,9 +140,7 @@ void PhysListEmStandard::ConstructProcess()
particleName == "pi+" ) {
ph->RegisterProcess(new G4hMultipleScattering(), particle);
G4hIonisation* hIoni = new G4hIonisation();
hIoni->SetStepFunction(0.1, 20*um);
ph->RegisterProcess(hIoni, particle);
ph->RegisterProcess(new G4hIonisation(), particle);
ph->RegisterProcess(new G4hBremsstrahlung(), particle);
ph->RegisterProcess(new G4hPairProduction(), particle);
@@ -155,9 +148,7 @@ void PhysListEmStandard::ConstructProcess()
particleName == "He3" ) {
ph->RegisterProcess(new G4hMultipleScattering(), particle);
G4ionIonisation* ionIoni = new G4ionIonisation();
ionIoni->SetStepFunction(0.1, 1*um);
ph->RegisterProcess(ionIoni, particle);
ph->RegisterProcess(new G4ionIonisation(), particle);
ph->RegisterProcess(new G4NuclearStopping(), particle);
} else if( particleName == "GenericIon" ) {
@@ -165,7 +156,6 @@ void PhysListEmStandard::ConstructProcess()
ph->RegisterProcess(new G4hMultipleScattering(), particle);
G4ionIonisation* ionIoni = new G4ionIonisation();
ionIoni->SetEmModel(new G4IonParametrisedLossModel());
ionIoni->SetStepFunction(0.1, 1*um);
ph->RegisterProcess(ionIoni, particle);
ph->RegisterProcess(new G4NuclearStopping(), particle);
@@ -1,157 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file electromagnetic/TestEm12/src/SteppingVerbose.cc
/// \brief Implementation of the SteppingVerbose class
//
//
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "SteppingVerbose.hh"
#include "G4SteppingManager.hh"
#include "G4ParticleTypes.hh"
#include "G4UnitsTable.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::SteppingVerbose()
: G4SteppingVerbose()
{ }
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::~SteppingVerbose()
{}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::TrackingStarted()
{
CopyState();
G4int prec = G4cout.precision(3);
//Step zero
//
if( verboseLevel > 0 ){
G4cout << std::setw( 5) << "Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
G4cout << std::setw(5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName()
<< " initStep" << G4endl;
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::StepInfo()
{
CopyState();
G4int prec = G4cout.precision(3);
if( verboseLevel >= 1 ){
if( verboseLevel >= 4 ) VerboseTrack();
if( verboseLevel >= 3 ){
G4cout << G4endl;
G4cout << std::setw( 5) << "#Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
}
G4cout << std::setw( 5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName();
const G4VProcess* process
= fStep->GetPostStepPoint()->GetProcessDefinedStep();
G4String procName = " UserLimit";
if (process) procName = process->GetProcessName();
if (fStepStatus == fWorldBoundary) procName = "OutOfWorld";
G4cout << " " << std::setw(10) << procName;
G4cout << G4endl;
if (verboseLevel == 2) {
const std::vector<const G4Track*>* secondary
= fStep->GetSecondaryInCurrentStep();
size_t nbtrk = (*secondary).size();
if (nbtrk) {
G4cout << "\n :----- List of secondaries ----------------" << G4endl;
G4cout.precision(4);
for (size_t lp=0; lp<(*secondary).size(); lp++) {
G4cout << " "
<< std::setw(13)
<< (*secondary)[lp]->GetDefinition()->GetParticleName()
<< ": energy ="
<< std::setw(6)
<< G4BestUnit((*secondary)[lp]->GetKineticEnergy(),"Energy")
<< " time ="
<< std::setw(6)
<< G4BestUnit((*secondary)[lp]->GetGlobalTime(),"Time");
G4cout << G4endl;
}
G4cout << " :------------------------------------------\n" << G4endl;
}
}
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -1,9 +1,6 @@
#----------------------------------------------------------------------------
# Setup the project
cmake_minimum_required(VERSION 3.8...3.18)
if(${CMAKE_VERSION} VERSION_LESS 3.12)
cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
endif()
cmake_minimum_required(VERSION 3.12...3.20)
project(TestEm13)
#----------------------------------------------------------------------------
@@ -14,6 +14,9 @@ track of all tags.
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
10-05-21 mma (testem13-V10-07-00)
- Migration to G4RunManagerFactory and G4SteppingVerboseWithUnits.
26-11-19 I. Hrivnacova (testem13-V10-05-01)
- Fixed Doxygen warnings
@@ -29,21 +29,17 @@
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "G4Types.hh"
#ifdef G4MULTITHREADED
#include "G4MTRunManager.hh"
#else
#include "G4RunManager.hh"
#endif
#include "G4RunManagerFactory.hh"
#include "G4UImanager.hh"
#include "G4SteppingVerbose.hh"
#include "Randomize.hh"
#include "DetectorConstruction.hh"
#include "PhysicsList.hh"
#include "ActionInitialization.hh"
#include "SteppingVerbose.hh"
#include "G4UIExecutive.hh"
#include "G4VisExecutive.hh"
@@ -59,16 +55,17 @@ int main(int argc,char** argv) {
//choose the Random engine
G4Random::setTheEngine(new CLHEP::RanecuEngine);
// Construct the default run manager
#ifdef G4MULTITHREADED
G4MTRunManager* runManager = new G4MTRunManager;
G4int nThreads = G4Threading::G4GetNumberOfCores();
if (argc==3) nThreads = G4UIcommand::ConvertToInt(argv[2]);
runManager->SetNumberOfThreads(nThreads);
#else
G4VSteppingVerbose::SetInstance(new SteppingVerbose);
G4RunManager* runManager = new G4RunManager;
#endif
//Use SteppingVerbose with Unit
G4int precision = 4;
G4SteppingVerbose::UseBestUnit(precision);
//Creating run manager
auto runManager = G4RunManagerFactory::CreateRunManager();
if (argc==3) {
G4int nThreads = G4UIcommand::ConvertToInt(argv[2]);
runManager->SetNumberOfThreads(nThreads);
}
//set mandatory initialization classes
DetectorConstruction* det = new DetectorConstruction;
@@ -1,10 +1,17 @@
Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type...
############################################
!!! WARNING - FPE detection is activated !!!
############################################
################################
!!! G4Backtrace is activated !!!
################################
**************************************************************
Geant4 version Name: geant4-10-07-patch-02 (11-June-2021)
Geant4 version Name: geant4-10-07-ref-06 (25-June-2021)
Copyright : Geant4 Collaboration
References : NIM A 506 (2003), 250-303
: IEEE-TNS 53 (2006), 270-278
@@ -16,17 +23,14 @@
====== Electromagnetic Physics Parameters ========
=======================================================================
LPM effect enabled 1
Spline of EM tables enabled 1
Enable creation and use of sampling tables 0
Apply cuts on all EM processes 0
Use integral approach for tracking 1
Use general process 0
Enable linear polarisation for gamma 0
Enable sampling of quantum entanglement 0
X-section factor for integral approach 0.8
Min kinetic energy for tables 10 eV
Max kinetic energy for tables 10 TeV
Number of bins in tables 120
Number of bins per decade of a table 10
Verbose level 0
Verbose level for worker thread 0
@@ -54,9 +58,8 @@ Use built-in Birks satuaration 0
Build CSDA range enabled 0
Use cut as a final range enabled 0
Enable angular generator interface 0
Factor of cut reduction for sub-cutoff method 1
Max kinetic energy for CSDA tables 1 GeV
Max kinetic energy for NIEL computation 0 eV
Max kinetic energy for NIEL computation 0 meV
Linear loss limit 0.01
Read data from file for e+e- pair production by mu 0
=======================================================================
@@ -176,7 +179,7 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics
Run terminated.
Run Summary
Number of events processed : 1000000
User=2.350000s Real=2.439820s Sys=0.000000s
User=1.930000s Real=1.945233s Sys=0.000000s
======================== run summary ======================
@@ -243,16 +246,16 @@ Index : 0 used in the geometry : Yes
Run terminated.
Run Summary
Number of events processed : 1000000
User=2.510000s Real=2.567225s Sys=0.000000s
User=2.080000s Real=2.122032s Sys=0.000000s
======================== run summary ======================
The run is: 1000000 e- of 100 MeV through 1 cm of Water (density: 1 g/cm3 )
Process calls frequency ---> Transportation = 537515 eBrem = 281135 eIoni = 181350
Process calls frequency ---> Transportation = 538014 eBrem = 280639 eIoni = 181347
Nb of incident particles unaltered after 1 cm of Water : 537515 over 1000000 incident particles. Ratio = 53.751 %
---> CrossSection per volume: 0.6208 cm^-1 CrossSection per mass: 62.08 mm2/g
Nb of incident particles unaltered after 1 cm of Water : 538014 over 1000000 incident particles. Ratio = 53.801 %
---> CrossSection per volume: 0.61987 cm^-1 CrossSection per mass: 61.987 mm2/g
Verification from G4EmCalculator:
eBrem= 37.788 mm2/g eIoni= 24.337 mm2/g total= 62.125 mm2/g
@@ -260,19 +263,23 @@ Run Summary
--------- Ranecu engine status ---------
Initial seed (index) = 0
Current couple of seeds = 685999699, 1687796440
Current couple of seeds = 720054777, 1392214585
----------------------------------------
G4 kernel has come to Quit state.
UserDetectorConstruction deleted.
UserPhysicsList deleted.
UserActionInitialization deleted.
UserWorkerInitialization deleted.
UserWorkerThreadInitialization deleted.
UserRunAction deleted.
UserPrimaryGenerator deleted.
RunManager is deleting RunManagerKernel.
G4SDManager deleted.
EventManager deleted.
Units table cleared.
TransportationManager deleted.
Total navigation history collections cleaned: 6
G4RNGHelper object is deleted.
================== Deleting memory pools ===================
Pool ID '20G4NavigationLevelRep', size : 0.00673 MB
Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB
@@ -290,3 +297,4 @@ G4Allocator objects are deleted.
UImanager deleted.
StateManager deleted.
RunManagerKernel is deleted. Good bye :)
RunManager is deleted.
@@ -33,7 +33,6 @@
#include "G4VUserActionInitialization.hh"
class DetectorConstruction;
class G4VSteppingVerbose;
/// Action initialization class.
///
@@ -42,16 +41,13 @@ class ActionInitialization : public G4VUserActionInitialization
{
public:
ActionInitialization(DetectorConstruction*);
virtual ~ActionInitialization();
~ActionInitialization() override;
void BuildForMaster() const override;
void Build() const override;
virtual void BuildForMaster() const;
virtual void Build() const;
virtual G4VSteppingVerbose* InitializeSteppingVerbose() const;
private:
DetectorConstruction* fDetector;
};
#endif
@@ -32,7 +32,6 @@
#include "PrimaryGeneratorAction.hh"
#include "RunAction.hh"
#include "SteppingAction.hh"
#include "SteppingVerbose.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -56,8 +55,7 @@ void ActionInitialization::BuildForMaster() const
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void ActionInitialization::Build() const
{
{
PrimaryGeneratorAction* prim = new PrimaryGeneratorAction(fDetector);
SetUserAction(prim);
@@ -65,14 +63,6 @@ void ActionInitialization::Build() const
SetUserAction(run);
SetUserAction(new SteppingAction());
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
G4VSteppingVerbose* ActionInitialization::InitializeSteppingVerbose() const
{
return new SteppingVerbose();
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -1,157 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file electromagnetic/TestEm13/src/SteppingVerbose.cc
/// \brief Implementation of the SteppingVerbose class
//
//
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "SteppingVerbose.hh"
#include "G4SteppingManager.hh"
#include "G4ParticleTypes.hh"
#include "G4UnitsTable.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::SteppingVerbose()
: G4SteppingVerbose()
{ }
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::~SteppingVerbose()
{}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::TrackingStarted()
{
CopyState();
G4int prec = G4cout.precision(3);
//Step zero
//
if( verboseLevel > 0 ){
G4cout << std::setw( 5) << "Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
G4cout << std::setw(5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName()
<< " initStep" << G4endl;
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::StepInfo()
{
CopyState();
G4int prec = G4cout.precision(3);
if( verboseLevel >= 1 ){
if( verboseLevel >= 4 ) VerboseTrack();
if( verboseLevel >= 3 ){
G4cout << G4endl;
G4cout << std::setw( 5) << "#Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
}
G4cout << std::setw( 5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName();
const G4VProcess* process
= fStep->GetPostStepPoint()->GetProcessDefinedStep();
G4String procName = " UserLimit";
if (process) procName = process->GetProcessName();
if (fStepStatus == fWorldBoundary) procName = "OutOfWorld";
G4cout << " " << std::setw(10) << procName;
G4cout << G4endl;
if (verboseLevel == 2) {
const std::vector<const G4Track*>* secondary
= fStep->GetSecondaryInCurrentStep();
size_t nbtrk = (*secondary).size();
if (nbtrk) {
G4cout << "\n :----- List of secondaries ----------------" << G4endl;
G4cout.precision(4);
for (size_t lp=0; lp<(*secondary).size(); lp++) {
G4cout << " "
<< std::setw(13)
<< (*secondary)[lp]->GetDefinition()->GetParticleName()
<< ": energy ="
<< std::setw(6)
<< G4BestUnit((*secondary)[lp]->GetKineticEnergy(),"Energy")
<< " time ="
<< std::setw(6)
<< G4BestUnit((*secondary)[lp]->GetGlobalTime(),"Time");
G4cout << G4endl;
}
G4cout << " :------------------------------------------\n" << G4endl;
}
}
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -1,9 +1,6 @@
#----------------------------------------------------------------------------
# Setup the project
cmake_minimum_required(VERSION 3.8...3.18)
if(${CMAKE_VERSION} VERSION_LESS 3.12)
cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
endif()
cmake_minimum_required(VERSION 3.12...3.20)
project(TestEm14)
#----------------------------------------------------------------------------
@@ -14,6 +14,9 @@ track of all tags.
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
10-05-21 mma (testem14-V10-07-00)
- Migration to G4RunManagerFactory and G4SteppingVerboseWithUnits.
03-11-20 mma (testem14-V10-06-02)
- add a comment in atomicDeexcitation.mac
@@ -29,21 +29,17 @@
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "G4Types.hh"
#ifdef G4MULTITHREADED
#include "G4MTRunManager.hh"
#else
#include "G4RunManager.hh"
#endif
#include "G4RunManagerFactory.hh"
#include "G4UImanager.hh"
#include "G4SteppingVerbose.hh"
#include "Randomize.hh"
#include "DetectorConstruction.hh"
#include "PhysicsList.hh"
#include "ActionInitialization.hh"
#include "SteppingVerbose.hh"
#include "G4UIExecutive.hh"
#include "G4VisExecutive.hh"
@@ -59,16 +55,17 @@ int main(int argc,char** argv) {
//choose the Random engine
G4Random::setTheEngine(new CLHEP::RanecuEngine);
// Construct the default run manager
#ifdef G4MULTITHREADED
G4MTRunManager* runManager = new G4MTRunManager;
G4int nThreads = G4Threading::G4GetNumberOfCores();
if (argc==3) nThreads = G4UIcommand::ConvertToInt(argv[2]);
runManager->SetNumberOfThreads(nThreads);
#else
G4VSteppingVerbose::SetInstance(new SteppingVerbose);
G4RunManager* runManager = new G4RunManager;
#endif
//Use SteppingVerbose with Unit
G4int precision = 4;
G4SteppingVerbose::UseBestUnit(precision);
//Creating run manager
auto runManager = G4RunManagerFactory::CreateRunManager();
if (argc==3) {
G4int nThreads = G4UIcommand::ConvertToInt(argv[2]);
runManager->SetNumberOfThreads(nThreads);
}
// set mandatory initialization classes
DetectorConstruction* det = new DetectorConstruction;
@@ -1,10 +1,17 @@
Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type...
############################################
!!! WARNING - FPE detection is activated !!!
############################################
################################
!!! G4Backtrace is activated !!!
################################
**************************************************************
Geant4 version Name: geant4-10-07-patch-02 (11-June-2021)
Geant4 version Name: geant4-10-07-ref-06 (25-June-2021)
Copyright : Geant4 Collaboration
References : NIM A 506 (2003), 250-303
: IEEE-TNS 53 (2006), 270-278
@@ -16,17 +23,14 @@
====== Electromagnetic Physics Parameters ========
=======================================================================
LPM effect enabled 1
Spline of EM tables enabled 1
Enable creation and use of sampling tables 0
Apply cuts on all EM processes 0
Use integral approach for tracking 1
Use general process 0
Enable linear polarisation for gamma 0
Enable sampling of quantum entanglement 0
X-section factor for integral approach 0.8
Min kinetic energy for tables 10 eV
Max kinetic energy for tables 10 TeV
Number of bins in tables 120
Number of bins per decade of a table 10
Verbose level 0
Verbose level for worker thread 0
@@ -54,9 +58,8 @@ Use built-in Birks satuaration 0
Build CSDA range enabled 0
Use cut as a final range enabled 0
Enable angular generator interface 0
Factor of cut reduction for sub-cutoff method 1
Max kinetic energy for CSDA tables 1 GeV
Max kinetic energy for NIEL computation 0 eV
Max kinetic energy for NIEL computation 0 meV
Linear loss limit 0.01
Read data from file for e+e- pair production by mu 0
=======================================================================
@@ -176,7 +179,7 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics
Run terminated.
Run Summary
Number of events processed : 1000000
User=3.360000s Real=3.478362s Sys=0.000000s
User=3.080000s Real=3.110162s Sys=0.000000s
======================== run summary ======================
@@ -246,38 +249,42 @@ Index : 0 used in the geometry : Yes
Run terminated.
Run Summary
Number of events processed : 1000000
User=2.900000s Real=3.325603s Sys=0.000000s
User=3.050000s Real=3.075968s Sys=0.000000s
======================== run summary ======================
The run is: 1000000 e- of 100 MeV through 100 m of Water (density: 1 g/cm3 )
Process calls frequency ---> eBrem = 608555 eIoni = 391445
Process calls frequency ---> eBrem = 608449 eIoni = 391551
MeanFreePath: 1.6102 cm +- 1.6103 cm massic: 1.6102 g/cm2
CrossSection: 0.62103 cm^-1 massic: 62.103 mm2/g
MeanFreePath: 1.6125 cm +- 1.6128 cm massic: 1.6125 g/cm2
CrossSection: 0.62015 cm^-1 massic: 62.015 mm2/g
mean energy of charged secondaries: 743.85 keV
---> mass_energy_transfer coef: 461.95 um2/mg
mean energy of charged secondaries: 740.99 keV
---> mass_energy_transfer coef: 459.52 um2/mg
Verification : crossSections from G4EmCalculator
eBrem= 37.788 mm2/g eIoni= 24.337 mm2/g total= 62.125 mm2/g
--------- Ranecu engine status ---------
Initial seed (index) = 0
Current couple of seeds = 419401041, 1685305101
Current couple of seeds = 116422662, 1893707566
----------------------------------------
G4 kernel has come to Quit state.
UserDetectorConstruction deleted.
UserPhysicsList deleted.
UserActionInitialization deleted.
UserWorkerInitialization deleted.
UserWorkerThreadInitialization deleted.
UserRunAction deleted.
UserPrimaryGenerator deleted.
RunManager is deleting RunManagerKernel.
G4SDManager deleted.
EventManager deleted.
Units table cleared.
TransportationManager deleted.
Total navigation history collections cleaned: 5
G4RNGHelper object is deleted.
================== Deleting memory pools ===================
Pool ID '20G4NavigationLevelRep', size : 0.00481 MB
Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB
@@ -295,3 +302,4 @@ G4Allocator objects are deleted.
UImanager deleted.
StateManager deleted.
RunManagerKernel is deleted. Good bye :)
RunManager is deleted.
@@ -33,7 +33,6 @@
#include "G4VUserActionInitialization.hh"
class DetectorConstruction;
class G4VSteppingVerbose;
/// Action initialization class.
///
@@ -42,16 +41,13 @@ class ActionInitialization : public G4VUserActionInitialization
{
public:
ActionInitialization(DetectorConstruction*);
virtual ~ActionInitialization();
~ActionInitialization() override;
virtual void BuildForMaster() const;
virtual void Build() const;
virtual G4VSteppingVerbose* InitializeSteppingVerbose() const;
void BuildForMaster() const override;
void Build() const override;
private:
DetectorConstruction* fDetector;
};
#endif
@@ -1,54 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file SteppingVerbose.hh
/// \brief Definition of the SteppingVerbose class
//
//
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#ifndef SteppingVerbose_h
#define SteppingVerbose_h 1
#include "G4SteppingVerbose.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
class SteppingVerbose : public G4SteppingVerbose {
public:
SteppingVerbose();
~SteppingVerbose();
virtual void TrackingStarted();
virtual void StepInfo();
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#endif
@@ -32,7 +32,6 @@
#include "PrimaryGeneratorAction.hh"
#include "RunAction.hh"
#include "SteppingAction.hh"
#include "SteppingVerbose.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -52,12 +51,10 @@ void ActionInitialization::BuildForMaster() const
SetUserAction(new RunAction(fDetector,0));
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void ActionInitialization::Build() const
{
{
PrimaryGeneratorAction* prim = new PrimaryGeneratorAction(fDetector);
SetUserAction(prim);
@@ -65,14 +62,6 @@ void ActionInitialization::Build() const
SetUserAction(run);
SetUserAction(new SteppingAction());
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
G4VSteppingVerbose* ActionInitialization::InitializeSteppingVerbose() const
{
return new SteppingVerbose();
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -1,157 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file SteppingVerbose.cc
/// \brief Implementation of the SteppingVerbose class
//
//
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "SteppingVerbose.hh"
#include "G4SteppingManager.hh"
#include "G4ParticleTypes.hh"
#include "G4UnitsTable.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::SteppingVerbose()
: G4SteppingVerbose()
{ }
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::~SteppingVerbose()
{}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::TrackingStarted()
{
CopyState();
G4int prec = G4cout.precision(3);
//Step zero
//
if( verboseLevel > 0 ){
G4cout << std::setw( 5) << "Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
G4cout << std::setw(5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName()
<< " initStep" << G4endl;
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::StepInfo()
{
CopyState();
G4int prec = G4cout.precision(3);
if( verboseLevel >= 1 ){
if( verboseLevel >= 4 ) VerboseTrack();
if( verboseLevel >= 3 ){
G4cout << G4endl;
G4cout << std::setw( 5) << "#Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
}
G4cout << std::setw( 5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName();
const G4VProcess* process
= fStep->GetPostStepPoint()->GetProcessDefinedStep();
G4String procName = " UserLimit";
if (process) procName = process->GetProcessName();
if (fStepStatus == fWorldBoundary) procName = "OutOfWorld";
G4cout << " " << std::setw(10) << procName;
G4cout << G4endl;
if (verboseLevel == 2) {
const std::vector<const G4Track*>* secondary
= fStep->GetSecondaryInCurrentStep();
size_t nbtrk = (*secondary).size();
if (nbtrk) {
G4cout << "\n :----- List of secondaries ----------------" << G4endl;
G4cout.precision(4);
for (size_t lp=0; lp<(*secondary).size(); lp++) {
G4cout << " "
<< std::setw(13)
<< (*secondary)[lp]->GetDefinition()->GetParticleName()
<< ": energy ="
<< std::setw(6)
<< G4BestUnit((*secondary)[lp]->GetKineticEnergy(),"Energy")
<< " time ="
<< std::setw(6)
<< G4BestUnit((*secondary)[lp]->GetGlobalTime(),"Time");
G4cout << G4endl;
}
G4cout << " :------------------------------------------\n" << G4endl;
}
}
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -1,9 +1,6 @@
#----------------------------------------------------------------------------
# Setup the project
cmake_minimum_required(VERSION 3.8...3.18)
if(${CMAKE_VERSION} VERSION_LESS 3.12)
cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
endif()
cmake_minimum_required(VERSION 3.12...3.20)
project(TestEm15)
#----------------------------------------------------------------------------
@@ -13,6 +13,14 @@ track of all tags.
----------------------------------------------------------
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
11-05-21 mma (testem15-V10-07-01)
- Migration to G4SteppingVerboseWithUnits.
19-03-2021 V.Ivanchenko (testem15-V10-07-00)
- PhysicsList - clean-up for 11.0; removed PhysList5DStandard,
because 5D model is a part of Opt4 EM physics
30-10-2019 IgS (testem15-V10-05-01)
- SteppingAction, PhysList5DStandard : added G4GammaConversionToMuons process
@@ -29,14 +29,15 @@
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "G4RunManager.hh"
#include "G4UImanager.hh"
#include "G4SteppingVerbose.hh"
#include "Randomize.hh"
#include "DetectorConstruction.hh"
#include "PhysicsList.hh"
#include "PrimaryGeneratorAction.hh"
#include "SteppingVerbose.hh"
#include "RunAction.hh"
#include "SteppingAction.hh"
@@ -52,9 +53,10 @@ int main(int argc,char** argv) {
G4UIExecutive* ui = nullptr;
if (argc == 1) ui = new G4UIExecutive(argc,argv);
//my Verbose output class
G4VSteppingVerbose::SetInstance(new SteppingVerbose);
//Use SteppingVerbose with Unit
G4int precision = 4;
G4SteppingVerbose::UseBestUnit(precision);
//construct the default run manager
G4RunManager * runManager = new G4RunManager;
@@ -3,8 +3,14 @@
!!! WARNING - FPE detection is activated !!!
############################################
################################
!!! G4Backtrace is activated !!!
################################
**************************************************************
Geant4 version Name: geant4-10-07-patch-02 (11-June-2021)
Geant4 version Name: geant4-10-07-ref-06 (25-June-2021)
Copyright : Geant4 Collaboration
References : NIM A 506 (2003), 250-303
: IEEE-TNS 53 (2006), 270-278
@@ -228,220 +234,220 @@ physicsList->setCut() start.
phot: for gamma SubType=12 BuildTable=0
LambdaPrime table from 200 keV to 100 TeV in 61 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
PhotoElectric : Emin= 0 eV Emax= 100 TeV SauterGavrila
PhotoElectric : Emin= 0 meV Emax= 100 TeV SauterGavrila
compt: for gamma SubType=13 BuildTable=1
Lambda table from 100 eV to 1 MeV, 7 bins/decade, spline: 1
LambdaPrime table from 1 MeV to 100 TeV in 56 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
Klein-Nishina : Emin= 0 eV Emax= 100 TeV
Klein-Nishina : Emin= 0 meV Emax= 100 TeV
conv: for gamma SubType=14 BuildTable=1
Lambda table from 1.022 MeV to 100 TeV, 18 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
BetheHeitlerLPM : Emin= 0 eV Emax= 100 TeV ModifiedTsai
BetheHeitlerLPM : Emin= 0 meV Emax= 100 TeV ModifiedTsai
msc: for e- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
eIoni: for e- SubType=2
eIoni: for e- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(1, 1 mm), integ: 0, fluct: 0, linLossLim= 0.01
StepFunction=(1, 1 mm), integ: 1, fluct: 0, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
MollerBhabha : Emin= 0 eV Emax= 100 TeV
MollerBhabha : Emin= 0 meV Emax= 100 TeV
eBrem: for e- SubType=3
eBrem: for e- XStype:4 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000
===== EM models for the G4Region DefaultRegionForTheWorld ======
eBremSB : Emin= 0 eV Emax= 1 GeV ModifiedTsai
eBremSB : Emin= 0 meV Emax= 1 GeV ModifiedTsai
eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai
msc: for e+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
eIoni: for e+ SubType=2
eIoni: for e+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(1, 1 mm), integ: 0, fluct: 0, linLossLim= 0.01
StepFunction=(1, 1 mm), integ: 1, fluct: 0, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
MollerBhabha : Emin= 0 eV Emax= 100 TeV
MollerBhabha : Emin= 0 meV Emax= 100 TeV
eBrem: for e+ SubType=3
eBrem: for e+ XStype:4 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000
===== EM models for the G4Region DefaultRegionForTheWorld ======
eBremSB : Emin= 0 eV Emax= 1 GeV ModifiedTsai
eBremSB : Emin= 0 meV Emax= 1 GeV ModifiedTsai
eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai
annihil: for e+, integral:1 SubType=5 BuildTable=0
annihil: for e+ XStype:2 SubType=5 BuildTable=0
===== EM models for the G4Region DefaultRegionForTheWorld ======
eplus2gg : Emin= 0 eV Emax= 100 TeV
eplus2gg : Emin= 0 meV Emax= 100 TeV
msc: for proton SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for proton SubType=2
hIoni: for proton XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 0, fluct: 0, linLossLim= 0.01
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 0, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 2 MeV
Bragg : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
msc: for GenericIon SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
ionIoni: for GenericIon SubType=2
ionIoni: for GenericIon XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 0, fluct: 0, linLossLim= 0.02
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 0, linLossLim= 0.02
Stopping Power data for 17 ion/material pairs
===== EM models for the G4Region DefaultRegionForTheWorld ======
BraggIon : Emin= 0 eV Emax= 2 MeV
BraggIon : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
msc: for alpha SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for alpha SubType=2
hIoni: for alpha XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 0, fluct: 0, linLossLim= 0.01
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 0, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax=7.9452 MeV
Bragg : Emin= 0 meV Emax=7.9452 MeV
BetheBloch : Emin=7.9452 MeV Emax= 100 TeV
msc: for anti_proton SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for anti_proton SubType=2
hIoni: for anti_proton XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 0, fluct: 0, linLossLim= 0.01
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 0, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax= 2 MeV
ICRU73QO : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
msc: for kaon+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for kaon+ SubType=2
hIoni: for kaon+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 0, fluct: 0, linLossLim= 0.01
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 0, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax=1.05231 MeV
Bragg : Emin= 0 meV Emax=1.05231 MeV
BetheBloch : Emin=1.05231 MeV Emax= 100 TeV
msc: for kaon- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for kaon- SubType=2
hIoni: for kaon- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 0, fluct: 0, linLossLim= 0.01
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 0, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax=1.05231 MeV
ICRU73QO : Emin= 0 meV Emax=1.05231 MeV
BetheBloch : Emin=1.05231 MeV Emax= 100 TeV
msc: for mu+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
muIoni: for mu+ SubType=2
muIoni: for mu+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 0, fluct: 0, linLossLim= 0.01
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 0, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 200 keV
Bragg : Emin= 0 meV Emax= 200 keV
BetheBloch : Emin= 200 keV Emax= 1 GeV
MuBetheBloch : Emin= 1 GeV Emax= 100 TeV
muBrems: for mu+ SubType=3
muBrems: for mu+ XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
MuBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
muPairProd: for mu+ SubType=4
muPairProd: for mu+ XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 21x1001 from 1 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
muPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
msc: for mu- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
muIoni: for mu- SubType=2
muIoni: for mu- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 0, fluct: 0, linLossLim= 0.01
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 0, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax= 200 keV
ICRU73QO : Emin= 0 meV Emax= 200 keV
BetheBloch : Emin= 200 keV Emax= 1 GeV
MuBetheBloch : Emin= 1 GeV Emax= 100 TeV
muBrems: for mu- SubType=3
muBrems: for mu- XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
MuBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
muPairProd: for mu- SubType=4
muPairProd: for mu- XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 21x1001 from 1 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
muPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
msc: for pi+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for pi+ SubType=2
hIoni: for pi+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 0, fluct: 0, linLossLim= 0.01
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 0, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax=297.505 keV
Bragg : Emin= 0 meV Emax=297.505 keV
BetheBloch : Emin=297.505 keV Emax= 100 TeV
msc: for pi- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for pi- SubType=2
hIoni: for pi- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 0, fluct: 0, linLossLim= 0.01
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 0, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax=297.505 keV
ICRU73QO : Emin= 0 meV Emax=297.505 keV
BetheBloch : Emin=297.505 keV Emax= 100 TeV
Region <DefaultRegionForTheWorld> -- -- appears in <World> world volume
@@ -490,7 +496,7 @@ N=17 V[N]={906770732717044781, 629165745432651234, 1235682547346241386, 68420008
Run terminated.
Run Summary
Number of events processed : 10000
User=0.040000s Real=0.054917s Sys=0.000000s
User=0.030000s Real=0.034615s Sys=0.000000s
The run consists of 10000 e- of 5 MeV through 100 m of Water (density: 1 g/cm3 )
@@ -562,7 +568,7 @@ N=17 V[N]={906770732717044781, 629165745432651234, 1235682547346241386, 68420008
Run terminated.
Run Summary
Number of events processed : 10000
User=0.070000s Real=0.066656s Sys=0.000000s
User=0.050000s Real=0.048781s Sys=0.000000s
The run consists of 10000 e- of 100 keV through 100 m of Water (density: 1 g/cm3 )
@@ -592,13 +598,18 @@ N=17 V[N]={310976880687426508, 1713548588833330960, 1561521303267605489, 5885692
G4 kernel has come to Quit state.
UserDetectorConstruction deleted.
UserPhysicsList deleted.
UserActionInitialization deleted.
UserWorkerInitialization deleted.
UserWorkerThreadInitialization deleted.
UserRunAction deleted.
UserPrimaryGenerator deleted.
RunManager is deleting RunManagerKernel.
G4SDManager deleted.
EventManager deleted.
Units table cleared.
TransportationManager deleted.
Total navigation history collections cleaned: 6
G4RNGHelper object is deleted.
================== Deleting memory pools ===================
Pool ID '20G4NavigationLevelRep', size : 0.00673 MB
Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB
@@ -616,3 +627,4 @@ G4Allocator objects are deleted.
UImanager deleted.
StateManager deleted.
RunManagerKernel is deleted. Good bye :)
RunManager is deleted.
@@ -1,67 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
//
//
//---------------------------------------------------------------------------
//
// ClassName: PhysListEm5DStandard
//
// Author: IgS 07.11.2017
//
// Modified:
// 17.11.2017 Created using PhysListEmStandard from V.Ivanchenko
//----------------------------------------------------------------------------
//
// This class provides construction of default EM standard physics which
// 5D generator model for gamma conversion
//
#ifndef PhysListEm5DStandard_h
#define PhysListEm5DStandard_h 1
#include "G4VPhysicsConstructor.hh"
#include "globals.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
class PhysListEm5DStandard : public G4VPhysicsConstructor
{
public:
explicit PhysListEm5DStandard(G4int ver=0, const G4String& name="");
virtual ~PhysListEm5DStandard();
virtual void ConstructParticle();
virtual void ConstructProcess();
private:
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#endif
@@ -1,54 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file electromagnetic/TestEm15/include/SteppingVerbose.hh
/// \brief Definition of the SteppingVerbose class
//
//
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#ifndef SteppingVerbose_h
#define SteppingVerbose_h 1
#include "G4SteppingVerbose.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
class SteppingVerbose : public G4SteppingVerbose {
public:
SteppingVerbose();
~SteppingVerbose();
virtual void TrackingStarted();
virtual void StepInfo();
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#endif
@@ -1,351 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
//
//---------------------------------------------------------------------------
//
// ClassName: PhysListEm5DStandard
//
// Author: IgS 07.11.2017
//
// Modified:
// 17.11.2017 Created using PhysListEm5DStandard from V.Ivanchenko
//
//----------------------------------------------------------------------------
//
#include "PhysListEm5DStandard.hh"
#include "G4SystemOfUnits.hh"
#include "G4ParticleDefinition.hh"
#include "G4EmParameters.hh"
#include "G4LossTableManager.hh"
#include "G4ComptonScattering.hh"
#include "G4GammaConversion.hh"
#include "G4PhotoElectricEffect.hh"
#include "G4RayleighScattering.hh"
#include "G4BetheHeitler5DModel.hh"
#include "G4GammaConversionToMuons.hh"
#include "G4eMultipleScattering.hh"
#include "G4MuMultipleScattering.hh"
#include "G4hMultipleScattering.hh"
#include "G4CoulombScattering.hh"
#include "G4eCoulombScatteringModel.hh"
#include "G4WentzelVIModel.hh"
#include "G4UrbanMscModel.hh"
#include "G4MuBremsstrahlungModel.hh"
#include "G4MuPairProductionModel.hh"
#include "G4hBremsstrahlungModel.hh"
#include "G4hPairProductionModel.hh"
#include "G4eIonisation.hh"
#include "G4eBremsstrahlung.hh"
#include "G4eplusAnnihilation.hh"
#include "G4UAtomicDeexcitation.hh"
#include "G4MuIonisation.hh"
#include "G4MuBremsstrahlung.hh"
#include "G4MuPairProduction.hh"
#include "G4hBremsstrahlung.hh"
#include "G4hPairProduction.hh"
#include "G4hIonisation.hh"
#include "G4ionIonisation.hh"
#include "G4alphaIonisation.hh"
#include "G4Gamma.hh"
#include "G4Electron.hh"
#include "G4Positron.hh"
#include "G4MuonPlus.hh"
#include "G4MuonMinus.hh"
#include "G4PionPlus.hh"
#include "G4PionMinus.hh"
#include "G4KaonPlus.hh"
#include "G4KaonMinus.hh"
#include "G4Proton.hh"
#include "G4AntiProton.hh"
#include "G4Deuteron.hh"
#include "G4Triton.hh"
#include "G4He3.hh"
#include "G4Alpha.hh"
#include "G4GenericIon.hh"
#include "G4PhysicsListHelper.hh"
#include "G4BuilderType.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
PhysListEm5DStandard::PhysListEm5DStandard(G4int ver, const G4String&)
: G4VPhysicsConstructor("G4EmStandard_5D")
{
G4EmParameters* param = G4EmParameters::Instance();
param->SetDefaults();
param->SetVerbose(ver);
param->SetNumberOfBinsPerDecade(10);
param->SetMscStepLimitType(fUseSafetyPlus);
param->SetLateralDisplacementAlg96(false);
param->SetFluo(true);
SetPhysicsType(bElectromagnetic);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
PhysListEm5DStandard::~PhysListEm5DStandard()
{}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void PhysListEm5DStandard::ConstructParticle()
{
// gamma
G4Gamma::Gamma();
// leptons
G4Electron::Electron();
G4Positron::Positron();
G4MuonPlus::MuonPlus();
G4MuonMinus::MuonMinus();
// mesons
G4PionPlus::PionPlusDefinition();
G4PionMinus::PionMinusDefinition();
G4KaonPlus::KaonPlusDefinition();
G4KaonMinus::KaonMinusDefinition();
// barions
G4Proton::Proton();
G4AntiProton::AntiProton();
// ions
G4Deuteron::Deuteron();
G4Triton::Triton();
G4He3::He3();
G4Alpha::Alpha();
G4GenericIon::GenericIonDefinition();
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void PhysListEm5DStandard::ConstructProcess()
{
if(G4EmParameters::Instance()->Verbose() > 1) {
G4cout << "### " << GetPhysicsName() << " Construct Processes " << G4endl;
}
G4PhysicsListHelper* ph = G4PhysicsListHelper::GetPhysicsListHelper();
// muon & hadron bremsstrahlung and pair production
G4MuBremsstrahlung* mub = new G4MuBremsstrahlung();
G4MuPairProduction* mup = new G4MuPairProduction();
G4hBremsstrahlung* pib = new G4hBremsstrahlung();
G4hPairProduction* pip = new G4hPairProduction();
G4hBremsstrahlung* kb = new G4hBremsstrahlung();
G4hPairProduction* kp = new G4hPairProduction();
G4hBremsstrahlung* pb = new G4hBremsstrahlung();
G4hPairProduction* pp = new G4hPairProduction();
// muon & hadron multiple scattering
G4MuMultipleScattering* mumsc = new G4MuMultipleScattering();
mumsc->AddEmModel(0, new G4WentzelVIModel());
G4CoulombScattering* muss = new G4CoulombScattering();
G4MuMultipleScattering* pimsc = new G4MuMultipleScattering();
pimsc->AddEmModel(0, new G4WentzelVIModel());
G4CoulombScattering* piss = new G4CoulombScattering();
G4MuMultipleScattering* kmsc = new G4MuMultipleScattering();
kmsc->AddEmModel(0, new G4WentzelVIModel());
G4CoulombScattering* kss = new G4CoulombScattering();
G4hMultipleScattering* hmsc = new G4hMultipleScattering("ionmsc");
// high energy limit for e+- scattering models
G4double highEnergyLimit = 100*MeV;
// Add standard EM Processes
auto myParticleIterator=GetParticleIterator();
myParticleIterator->reset();
while( (*myParticleIterator)() ){
G4ParticleDefinition* particle = myParticleIterator->value();
G4String particleName = particle->GetParticleName();
if (particleName == "gamma") {
// photo-effect and Compton
ph->RegisterProcess(new G4PhotoElectricEffect(), particle);
ph->RegisterProcess(new G4ComptonScattering(), particle);
// Gamma conversion to e+ e-
G4GammaConversion* gc = new G4GammaConversion();
G4VEmModel* theGC5DModel = new G4BetheHeitler5DModel();
gc->SetEmModel(theGC5DModel);
ph->RegisterProcess(gc, particle);
// Gamma conversion to mu+ mu-
ph->RegisterProcess(new G4GammaConversionToMuons(), particle);
// Rayleigh scattering
ph->RegisterProcess(new G4RayleighScattering(), particle);
} else if (particleName == "e-") {
G4eMultipleScattering* msc = new G4eMultipleScattering;
G4UrbanMscModel* msc1 = new G4UrbanMscModel();
G4WentzelVIModel* msc2 = new G4WentzelVIModel();
msc1->SetHighEnergyLimit(highEnergyLimit);
msc2->SetLowEnergyLimit(highEnergyLimit);
msc->AddEmModel(0, msc1);
msc->AddEmModel(0, msc2);
G4eCoulombScatteringModel* ssm = new G4eCoulombScatteringModel();
G4CoulombScattering* ss = new G4CoulombScattering();
ss->SetEmModel(ssm, 1);
ss->SetMinKinEnergy(highEnergyLimit);
ssm->SetLowEnergyLimit(highEnergyLimit);
ssm->SetActivationLowEnergyLimit(highEnergyLimit);
ph->RegisterProcess(msc, particle);
ph->RegisterProcess(new G4eIonisation(), particle);
ph->RegisterProcess(new G4eBremsstrahlung(), particle);
ph->RegisterProcess(ss, particle);
} else if (particleName == "e+") {
G4eMultipleScattering* msc = new G4eMultipleScattering;
G4UrbanMscModel* msc1 = new G4UrbanMscModel();
G4WentzelVIModel* msc2 = new G4WentzelVIModel();
msc1->SetHighEnergyLimit(highEnergyLimit);
msc2->SetLowEnergyLimit(highEnergyLimit);
msc->AddEmModel(0, msc1);
msc->AddEmModel(0, msc2);
G4eCoulombScatteringModel* ssm = new G4eCoulombScatteringModel();
G4CoulombScattering* ss = new G4CoulombScattering();
ss->SetEmModel(ssm, 1);
ss->SetMinKinEnergy(highEnergyLimit);
ssm->SetLowEnergyLimit(highEnergyLimit);
ssm->SetActivationLowEnergyLimit(highEnergyLimit);
ph->RegisterProcess(msc, particle);
ph->RegisterProcess(new G4eIonisation(), particle);
ph->RegisterProcess(new G4eBremsstrahlung(), particle);
ph->RegisterProcess(new G4eplusAnnihilation(), particle);
ph->RegisterProcess(ss, particle);
} else if (particleName == "mu+" ||
particleName == "mu-" ) {
ph->RegisterProcess(mumsc, particle);
ph->RegisterProcess(new G4MuIonisation(), particle);
ph->RegisterProcess(mub, particle);
ph->RegisterProcess(mup, particle);
ph->RegisterProcess(muss, particle);
} else if (particleName == "alpha" ||
particleName == "He3") {
ph->RegisterProcess(new G4hMultipleScattering(), particle);
ph->RegisterProcess(new G4ionIonisation(), particle);
} else if (particleName == "GenericIon") {
ph->RegisterProcess(hmsc, particle);
ph->RegisterProcess(new G4ionIonisation(), particle);
} else if (particleName == "pi+" ||
particleName == "pi-" ) {
ph->RegisterProcess(pimsc, particle);
ph->RegisterProcess(new G4hIonisation(), particle);
ph->RegisterProcess(pib, particle);
ph->RegisterProcess(pip, particle);
ph->RegisterProcess(piss, particle);
} else if (particleName == "kaon+" ||
particleName == "kaon-" ) {
ph->RegisterProcess(kmsc, particle);
ph->RegisterProcess(new G4hIonisation(), particle);
ph->RegisterProcess(kb, particle);
ph->RegisterProcess(kp, particle);
ph->RegisterProcess(kss, particle);
} else if (particleName == "proton" ||
particleName == "anti_proton") {
G4hMultipleScattering* pmsc = new G4hMultipleScattering();
pmsc->SetEmModel(new G4WentzelVIModel());
G4hIonisation* hIoni = new G4hIonisation();
hIoni->SetStepFunction(0.1, 10*um);
ph->RegisterProcess(pmsc, particle);
ph->RegisterProcess(hIoni, particle);
ph->RegisterProcess(pb, particle);
ph->RegisterProcess(pp, particle);
ph->RegisterProcess(new G4CoulombScattering(), particle);
} else if (particleName == "B+" ||
particleName == "B-" ||
particleName == "D+" ||
particleName == "D-" ||
particleName == "Ds+" ||
particleName == "Ds-" ||
particleName == "anti_He3" ||
particleName == "anti_alpha" ||
particleName == "anti_deuteron" ||
particleName == "anti_lambda_c+" ||
particleName == "anti_omega-" ||
particleName == "anti_sigma_c+" ||
particleName == "anti_sigma_c++" ||
particleName == "anti_sigma+" ||
particleName == "anti_sigma-" ||
particleName == "anti_triton" ||
particleName == "anti_xi_c+" ||
particleName == "anti_xi-" ||
particleName == "deuteron" ||
particleName == "lambda_c+" ||
particleName == "omega-" ||
particleName == "sigma_c+" ||
particleName == "sigma_c++" ||
particleName == "sigma+" ||
particleName == "sigma-" ||
particleName == "tau+" ||
particleName == "tau-" ||
particleName == "triton" ||
particleName == "xi_c+" ||
particleName == "xi-" ) {
ph->RegisterProcess(hmsc, particle);
ph->RegisterProcess(new G4hIonisation(), particle);
}
}
// Deexcitation
//
G4VAtomDeexcitation* de = new G4UAtomicDeexcitation();
G4LossTableManager::Instance()->SetAtomDeexcitation(de);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -35,39 +35,16 @@
#include "PhysicsListMessenger.hh"
#include "PhysListEmStandard.hh"
#include "G4EmStandardPhysics_option3.hh"
#include "G4EmStandardPhysics_option4.hh"
#include "G4EmStandardPhysicsWVI.hh"
#include "G4EmStandardPhysicsGS.hh"
#include "G4EmStandardPhysicsSS.hh"
#include "G4LossTableManager.hh"
#include "G4UnitsTable.hh"
#include "G4SystemOfUnits.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
PhysicsList::PhysicsList()
: G4VModularPhysicsList(),
fEmPhysicsList(0), fMessenger(0)
{
G4LossTableManager::Instance();
SetDefaultCutValue(1*mm);
fMessenger = new PhysicsListMessenger(this);
SetVerboseLevel(1);
// EM physics
fEmName = G4String("local");
fEmPhysicsList = new PhysListEmStandard(fEmName);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
PhysicsList::~PhysicsList()
{
delete fMessenger;
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
// Bosons
#include "G4ChargedGeantino.hh"
#include "G4Geantino.hh"
@@ -111,6 +88,34 @@ PhysicsList::~PhysicsList()
#include "G4Alpha.hh"
#include "G4GenericIon.hh"
#include "G4ProcessManager.hh"
#include "StepMax.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
PhysicsList::PhysicsList()
: G4VModularPhysicsList(),
fEmPhysicsList(0), fMessenger(0)
{
G4LossTableManager::Instance();
SetDefaultCutValue(1*mm);
fMessenger = new PhysicsListMessenger(this);
SetVerboseLevel(1);
// EM physics
fEmName = G4String("local");
fEmPhysicsList = new PhysListEmStandard(fEmName);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
PhysicsList::~PhysicsList()
{
delete fMessenger;
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void PhysicsList::ConstructParticle()
@@ -188,13 +193,6 @@ void PhysicsList::ConstructProcess()
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "G4EmStandardPhysics_option3.hh"
#include "G4EmStandardPhysicsWVI.hh"
#include "G4EmStandardPhysicsGS.hh"
#include "G4EmStandardPhysicsSS.hh"
#include "G4EmLivermorePolarizedPhysics.hh"
#include "PhysListEm5DStandard.hh"
void PhysicsList::AddPhysicsList(const G4String& name)
{
if (verboseLevel>0) {
@@ -215,33 +213,29 @@ void PhysicsList::AddPhysicsList(const G4String& name)
delete fEmPhysicsList;
fEmPhysicsList = new G4EmStandardPhysics_option3();
} else if (name == "emstandardSS") {
} else if (name == "emstandard_opt4") {
fEmName = name;
delete fEmPhysicsList;
fEmPhysicsList = new G4EmStandardPhysicsSS();
} else if (name == "emstandardWVI") {
fEmName = name;
delete fEmPhysicsList;
fEmPhysicsList = new G4EmStandardPhysicsWVI();
} else if (name == "emstandardGS") {
fEmName = name;
delete fEmPhysicsList;
fEmPhysicsList = new G4EmStandardPhysicsGS();
} else if (name == "emstandard5D") {
fEmName = name;
delete fEmPhysicsList;
fEmPhysicsList = new PhysListEm5DStandard();
fEmPhysicsList = new G4EmStandardPhysics_option4();
} else if (name == "emstandardSS") {
} else if (name == "emlivermorePola") {
fEmName = name;
delete fEmPhysicsList;
fEmPhysicsList = new G4EmLivermorePolarizedPhysics();
fEmPhysicsList = new G4EmStandardPhysicsSS();
} else if (name == "emstandardWVI") {
fEmName = name;
delete fEmPhysicsList;
fEmPhysicsList = new G4EmStandardPhysicsWVI();
} else if (name == "emstandardGS") {
fEmName = name;
delete fEmPhysicsList;
fEmPhysicsList = new G4EmStandardPhysicsGS();
} else {
G4cout << "PhysicsList::AddPhysicsList: <" << name << ">"
@@ -252,9 +246,6 @@ void PhysicsList::AddPhysicsList(const G4String& name)
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "G4ProcessManager.hh"
#include "StepMax.hh"
void PhysicsList::AddStepMax()
{
// Step limitation seen as a process
@@ -1,157 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file electromagnetic/TestEm15/src/SteppingVerbose.cc
/// \brief Implementation of the SteppingVerbose class
//
//
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "SteppingVerbose.hh"
#include "G4SteppingManager.hh"
#include "G4ParticleTypes.hh"
#include "G4UnitsTable.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::SteppingVerbose()
: G4SteppingVerbose()
{ }
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::~SteppingVerbose()
{}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::TrackingStarted()
{
CopyState();
G4int prec = G4cout.precision(3);
//Step zero
//
if( verboseLevel > 0 ){
G4cout << std::setw( 5) << "Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
G4cout << std::setw(5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName()
<< " initStep" << G4endl;
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::StepInfo()
{
CopyState();
G4int prec = G4cout.precision(3);
if( verboseLevel >= 1 ){
if( verboseLevel >= 4 ) VerboseTrack();
if( verboseLevel >= 3 ){
G4cout << G4endl;
G4cout << std::setw( 5) << "#Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
}
G4cout << std::setw( 5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName();
const G4VProcess* process
= fStep->GetPostStepPoint()->GetProcessDefinedStep();
G4String procName = " UserLimit";
if (process) procName = process->GetProcessName();
if (fStepStatus == fWorldBoundary) procName = "OutOfWorld";
G4cout << " " << std::setw(10) << procName;
G4cout << G4endl;
if (verboseLevel == 2) {
const std::vector<const G4Track*>* secondary
= fStep->GetSecondaryInCurrentStep();
size_t nbtrk = (*secondary).size();
if (nbtrk) {
G4cout << "\n :----- List of secondaries ----------------" << G4endl;
G4cout.precision(4);
for (size_t lp=0; lp<(*secondary).size(); lp++) {
G4cout << " "
<< std::setw(13)
<< (*secondary)[lp]->GetDefinition()->GetParticleName()
<< ": energy ="
<< std::setw(6)
<< G4BestUnit((*secondary)[lp]->GetKineticEnergy(),"Energy")
<< " time ="
<< std::setw(6)
<< G4BestUnit((*secondary)[lp]->GetGlobalTime(),"Time");
G4cout << G4endl;
}
G4cout << " :------------------------------------------\n" << G4endl;
}
}
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -1,9 +1,6 @@
#----------------------------------------------------------------------------
# Setup the project
cmake_minimum_required(VERSION 3.8...3.18)
if(${CMAKE_VERSION} VERSION_LESS 3.12)
cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
endif()
cmake_minimum_required(VERSION 3.12...3.20)
project(TestEm16)
#----------------------------------------------------------------------------
@@ -13,7 +13,10 @@ track of all tags.
----------------------------------------------------------
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
11-05-21 mma (testem16-V10-07-00)
- Migration to G4RunManagerFactory and G4SteppingVerboseWithUnits.
28-11-19 I. Hrivnacova (testem16-V10-05-02)
- Fixed a link in .README.txt
@@ -29,21 +29,17 @@
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "G4Types.hh"
#ifdef G4MULTITHREADED
#include "G4MTRunManager.hh"
#else
#include "G4RunManager.hh"
#endif
#include "G4RunManagerFactory.hh"
#include "G4UImanager.hh"
#include "G4SteppingVerbose.hh"
#include "Randomize.hh"
#include "DetectorConstruction.hh"
#include "PhysicsList.hh"
#include "ActionInitialization.hh"
#include "SteppingVerbose.hh"
#include "G4UIExecutive.hh"
#include "G4VisExecutive.hh"
@@ -56,16 +52,17 @@ int main(int argc,char** argv) {
G4UIExecutive* ui = nullptr;
if (argc == 1) ui = new G4UIExecutive(argc,argv);
//construct the default run manager
#ifdef G4MULTITHREADED
G4MTRunManager* runManager = new G4MTRunManager;
G4int nThreads = G4Threading::G4GetNumberOfCores();
if (argc==3) nThreads = G4UIcommand::ConvertToInt(argv[2]);
runManager->SetNumberOfThreads(nThreads);
#else
G4VSteppingVerbose::SetInstance(new SteppingVerbose);
G4RunManager* runManager = new G4RunManager;
#endif
//Use SteppingVerbose with Unit
G4int precision = 4;
G4SteppingVerbose::UseBestUnit(precision);
//Creating run manager
auto runManager = G4RunManagerFactory::CreateRunManager();
if (argc==3) {
G4int nThreads = G4UIcommand::ConvertToInt(argv[2]);
runManager->SetNumberOfThreads(nThreads);
}
//set mandatory initialization classes
DetectorConstruction* det;
@@ -1,10 +1,17 @@
Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type...
############################################
!!! WARNING - FPE detection is activated !!!
############################################
################################
!!! G4Backtrace is activated !!!
################################
**************************************************************
Geant4 version Name: geant4-10-07-patch-02 (11-June-2021)
Geant4 version Name: geant4-10-07-ref-06 (25-June-2021)
Copyright : Geant4 Collaboration
References : NIM A 506 (2003), 250-303
: IEEE-TNS 53 (2006), 270-278
@@ -97,151 +104,150 @@ Command is ignored.
phot: for gamma SubType=12 BuildTable=0
LambdaPrime table from 200 keV to 100 TeV in 61 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
PhotoElectric : Emin= 0 eV Emax= 100 TeV SauterGavrila
PhotoElectric : Emin= 0 meV Emax= 100 TeV SauterGavrila
compt: for gamma SubType=13 BuildTable=1
Lambda table from 100 eV to 1 MeV, 7 bins/decade, spline: 1
LambdaPrime table from 1 MeV to 100 TeV in 56 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
Klein-Nishina : Emin= 0 eV Emax= 100 TeV
Klein-Nishina : Emin= 0 meV Emax= 100 TeV
conv: for gamma SubType=14 BuildTable=1
Lambda table from 1.022 MeV to 100 TeV, 18 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
BetheHeitlerLPM : Emin= 0 eV Emax= 100 TeV ModifiedTsai
BetheHeitlerLPM : Emin= 0 meV Emax= 100 TeV ModifiedTsai
Rayl: for gamma SubType=11 BuildTable=1
Lambda table from 100 eV to 100 keV, 7 bins/decade, spline: 0
LambdaPrime table from 100 keV to 100 TeV in 63 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator
LivermoreRayleigh : Emin= 0 meV Emax= 100 TeV CullenGenerator
msc: for e- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
eIoni: for e- SubType=2
eIoni: for e- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
MollerBhabha : Emin= 0 eV Emax= 100 TeV
MollerBhabha : Emin= 0 meV Emax= 100 TeV
eBrem: for e- SubType=3
eBrem: for e- XStype:4 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000
===== EM models for the G4Region DefaultRegionForTheWorld ======
eBremSB : Emin= 0 eV Emax= 1 GeV ModifiedTsai
eBremSB : Emin= 0 meV Emax= 1 GeV ModifiedTsai
eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai
SynRad: Incoherent Synchrotron Radiation
good description for long magnets at all energies
Good description for long magnets at all energies.
msc: for e+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
eIoni: for e+ SubType=2
eIoni: for e+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
MollerBhabha : Emin= 0 eV Emax= 100 TeV
MollerBhabha : Emin= 0 meV Emax= 100 TeV
eBrem: for e+ SubType=3
eBrem: for e+ XStype:4 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000
===== EM models for the G4Region DefaultRegionForTheWorld ======
eBremSB : Emin= 0 eV Emax= 1 GeV ModifiedTsai
eBremSB : Emin= 0 meV Emax= 1 GeV ModifiedTsai
eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai
annihil: for e+, integral:1 SubType=5 BuildTable=0
annihil: for e+ XStype:2 SubType=5 BuildTable=0
===== EM models for the G4Region DefaultRegionForTheWorld ======
eplus2gg : Emin= 0 eV Emax= 100 TeV
eplus2gg : Emin= 0 meV Emax= 100 TeV
msc: for proton SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for proton SubType=2
hIoni: for proton XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 2 MeV
Bragg : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
hBrems: for proton SubType=3
hBrems: for proton XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for proton SubType=4
hPairProd: for proton XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 17x1001 from 7.50618 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
msc: for mu+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
muIoni: for mu+ SubType=2
muIoni: for mu+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 200 keV
Bragg : Emin= 0 meV Emax= 200 keV
BetheBloch : Emin= 200 keV Emax= 1 GeV
MuBetheBloch : Emin= 1 GeV Emax= 100 TeV
muBrems: for mu+ SubType=3
muBrems: for mu+ XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
MuBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
muPairProd: for mu+ SubType=4
muPairProd: for mu+ XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 21x1001 from 1 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
muPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
msc: for mu- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
muIoni: for mu- SubType=2
muIoni: for mu- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax= 200 keV
ICRU73QO : Emin= 0 meV Emax= 200 keV
BetheBloch : Emin= 200 keV Emax= 1 GeV
MuBetheBloch : Emin= 1 GeV Emax= 100 TeV
muBrems: for mu- SubType=3
muBrems: for mu- XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
MuBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
muPairProd: for mu- SubType=4
muPairProd: for mu- XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 21x1001 from 1 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
muPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
========= Table of registered couples ============================
@@ -270,7 +276,7 @@ G4SynchrotronRadiation::GetRandomEnergySR :
Run terminated.
Run Summary
Number of events processed : 100
User=0.190000s Real=0.248772s Sys=0.000000s
User=0.160000s Real=0.161014s Sys=0.000000s
Summary for synchrotron radiation :
Number of photons = 65086
Emean = 20.39 +/- 0.1444 keV
@@ -33,7 +33,6 @@
#include "G4VUserActionInitialization.hh"
class DetectorConstruction;
class G4VSteppingVerbose;
/// Action initialization class.
///
@@ -42,16 +41,13 @@ class ActionInitialization : public G4VUserActionInitialization
{
public:
ActionInitialization(DetectorConstruction*);
virtual ~ActionInitialization();
~ActionInitialization() override;
void BuildForMaster() const override;
void Build() const override;
virtual void BuildForMaster() const;
virtual void Build() const;
virtual G4VSteppingVerbose* InitializeSteppingVerbose() const;
private:
DetectorConstruction* fDetector;
};
#endif
@@ -1,54 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file electromagnetic/TestEm16/include/SteppingVerbose.hh
/// \brief Definition of the SteppingVerbose class
//
//
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#ifndef SteppingVerbose_h
#define SteppingVerbose_h 1
#include "G4SteppingVerbose.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
class SteppingVerbose : public G4SteppingVerbose {
public:
SteppingVerbose();
~SteppingVerbose();
virtual void TrackingStarted();
virtual void StepInfo();
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#endif
@@ -32,7 +32,6 @@
#include "PrimaryGeneratorAction.hh"
#include "RunAction.hh"
#include "SteppingAction.hh"
#include "SteppingVerbose.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -67,10 +66,3 @@ void ActionInitialization::Build() const
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
G4VSteppingVerbose* ActionInitialization::InitializeSteppingVerbose() const
{
return new SteppingVerbose();
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -1,157 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file electromagnetic/TestEm16/src/SteppingVerbose.cc
/// \brief Implementation of the SteppingVerbose class
//
//
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "SteppingVerbose.hh"
#include "G4SteppingManager.hh"
#include "G4ParticleTypes.hh"
#include "G4UnitsTable.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::SteppingVerbose()
: G4SteppingVerbose()
{ }
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::~SteppingVerbose()
{}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::TrackingStarted()
{
CopyState();
G4int prec = G4cout.precision(3);
//Step zero
//
if( verboseLevel > 0 ){
G4cout << std::setw( 5) << "Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
G4cout << std::setw(5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName()
<< " initStep" << G4endl;
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::StepInfo()
{
CopyState();
G4int prec = G4cout.precision(3);
if( verboseLevel >= 1 ){
if( verboseLevel >= 4 ) VerboseTrack();
if( verboseLevel >= 3 ){
G4cout << G4endl;
G4cout << std::setw( 5) << "#Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
}
G4cout << std::setw( 5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName();
const G4VProcess* process
= fStep->GetPostStepPoint()->GetProcessDefinedStep();
G4String procName = " UserLimit";
if (process) procName = process->GetProcessName();
if (fStepStatus == fWorldBoundary) procName = "OutOfWorld";
G4cout << " " << std::setw(10) << procName;
G4cout << G4endl;
if (verboseLevel == 2) {
const std::vector<const G4Track*>* secondary
= fStep->GetSecondaryInCurrentStep();
size_t nbtrk = (*secondary).size();
if (nbtrk) {
G4cout << "\n :----- List of secondaries ----------------" << G4endl;
G4cout.precision(4);
for (size_t lp=0; lp<(*secondary).size(); lp++) {
G4cout << " "
<< std::setw(13)
<< (*secondary)[lp]->GetDefinition()->GetParticleName()
<< ": energy ="
<< std::setw(6)
<< G4BestUnit((*secondary)[lp]->GetKineticEnergy(),"Energy")
<< " time ="
<< std::setw(6)
<< G4BestUnit((*secondary)[lp]->GetGlobalTime(),"Time");
G4cout << G4endl;
}
G4cout << " :------------------------------------------\n" << G4endl;
}
}
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -1,9 +1,6 @@
#----------------------------------------------------------------------------
# Setup the project
cmake_minimum_required(VERSION 3.8...3.18)
if(${CMAKE_VERSION} VERSION_LESS 3.12)
cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
endif()
cmake_minimum_required(VERSION 3.12...3.20)
project(TestEm17)
#----------------------------------------------------------------------------
@@ -13,6 +13,9 @@ track of all tags.
----------------------------------------------------------
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
11-05-21 mma (testem17-V10-07-00)
- Migration to G4SteppingVerboseWithUnits.
08-11-19 V.Ivanchenko (testem17-V10-05-02)
- HistoManager - fixed histo title and index; fixed macro
@@ -33,6 +33,7 @@
#include "G4RunManager.hh"
#include "G4UImanager.hh"
#include "G4SteppingVerbose.hh"
#include "Randomize.hh"
#include "DetectorConstruction.hh"
@@ -41,7 +42,6 @@
#include "RunAction.hh"
#include "SteppingAction.hh"
#include "SteppingVerbose.hh"
#include "StackingAction.hh"
#include "HistoManager.hh"
@@ -56,9 +56,10 @@ int main(int argc,char** argv) {
G4UIExecutive* ui = nullptr;
if (argc == 1) ui = new G4UIExecutive(argc,argv);
//my Verbose output class
G4VSteppingVerbose::SetInstance(new SteppingVerbose);
//Use SteppingVerbose with Unit
G4int precision = 4;
G4SteppingVerbose::UseBestUnit(precision);
//construct the default run manager
G4RunManager * runManager = new G4RunManager;
@@ -3,8 +3,14 @@
!!! WARNING - FPE detection is activated !!!
############################################
################################
!!! G4Backtrace is activated !!!
################################
**************************************************************
Geant4 version Name: geant4-10-07-patch-02 (11-June-2021)
Geant4 version Name: geant4-10-07-ref-06 (25-June-2021)
Copyright : Geant4 Collaboration
References : NIM A 506 (2003), 250-303
: IEEE-TNS 53 (2006), 270-278
@@ -142,48 +148,48 @@ physicsList->setCut() start.
phot: for gamma SubType=12 BuildTable=0
LambdaPrime table from 200 keV to 1000 PeV in 89 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
LivermorePhElectric : Emin= 0 eV Emax= 1000 PeV SauterGavrila Fluo
LivermorePhElectric : Emin= 0 meV Emax= 1000 PeV SauterGavrila Fluo
compt: for gamma SubType=13 BuildTable=1
Lambda table from 100 eV to 1 MeV, 7 bins/decade, spline: 1
LambdaPrime table from 1 MeV to 1000 PeV in 84 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
Klein-Nishina : Emin= 0 eV Emax= 1000 PeV
Klein-Nishina : Emin= 0 meV Emax= 1000 PeV
conv: for gamma SubType=14 BuildTable=1
Lambda table from 1.022 MeV to 1000 PeV, 14 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
BetheHeitlerLPM : Emin= 0 eV Emax= 1000 PeV ModifiedTsai
BetheHeitlerLPM : Emin= 0 meV Emax= 1000 PeV ModifiedTsai
Rayl: for gamma SubType=11 BuildTable=1
Lambda table from 100 eV to 100 keV, 7 bins/decade, spline: 0
LambdaPrime table from 100 keV to 1000 PeV in 91 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator
LivermoreRayleigh : Emin= 0 meV Emax= 100 TeV CullenGenerator
msc: for e- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
eIoni: for e- SubType=2
eIoni: for e- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
MollerBhabha : Emin= 0 eV Emax= 1000 PeV
MollerBhabha : Emin= 0 meV Emax= 1000 PeV
eBrem: for e- SubType=3
eBrem: for e- XStype:4 SubType=3
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000
===== EM models for the G4Region DefaultRegionForTheWorld ======
eBremSB : Emin= 0 eV Emax= 1 GeV ModifiedTsai
eBremSB : Emin= 0 meV Emax= 1 GeV ModifiedTsai
eBremLPM : Emin= 1 GeV Emax= 1000 PeV ModifiedTsai
CoulombScat: for e-, integral:1 SubType=1 BuildTable=1
CoulombScat: for e- XStype:3 SubType=1 BuildTable=1
Lambda table from 100 MeV to 1000 PeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
@@ -191,31 +197,31 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1
msc: for e+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
eIoni: for e+ SubType=2
eIoni: for e+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
MollerBhabha : Emin= 0 eV Emax= 1000 PeV
MollerBhabha : Emin= 0 meV Emax= 1000 PeV
eBrem: for e+ SubType=3
eBrem: for e+ XStype:4 SubType=3
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000
===== EM models for the G4Region DefaultRegionForTheWorld ======
eBremSB : Emin= 0 eV Emax= 1 GeV ModifiedTsai
eBremSB : Emin= 0 meV Emax= 1 GeV ModifiedTsai
eBremLPM : Emin= 1 GeV Emax= 1000 PeV ModifiedTsai
annihil: for e+, integral:1 SubType=5 BuildTable=0
annihil: for e+ XStype:2 SubType=5 BuildTable=0
===== EM models for the G4Region DefaultRegionForTheWorld ======
eplus2gg : Emin= 0 eV Emax= 100 TeV
eplus2gg : Emin= 0 meV Emax= 100 TeV
CoulombScat: for e+, integral:1 SubType=1 BuildTable=1
CoulombScat: for e+ XStype:3 SubType=1 BuildTable=1
Lambda table from 100 MeV to 1000 PeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
@@ -223,288 +229,288 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1
msc: for proton SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for proton SubType=2
hIoni: for proton XStype:1 SubType=2
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 2 MeV
Bragg : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 1000 PeV
hBrems: for proton SubType=3
hBrems: for proton XStype:1 SubType=3
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 1000 PeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 1000 PeV ModifiedMephi
hPairProd: for proton SubType=4
hPairProd: for proton XStype:1 SubType=4
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
Sampling table 33x1001 from 7.50618 GeV to 1e+06 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 1000 PeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 1000 PeV ModifiedMephi
CoulombScat: for proton, integral:1 SubType=1 BuildTable=1
CoulombScat: for proton XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 1000 PeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for GenericIon SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
ionIoni: for GenericIon SubType=2
ionIoni: for GenericIon XStype:1 SubType=2
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.02
Stopping Power data for 17 ion/material pairs
===== EM models for the G4Region DefaultRegionForTheWorld ======
BraggIon : Emin= 0 eV Emax= 2 MeV
BraggIon : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 1000 PeV
msc: for alpha SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
ionIoni: for alpha SubType=2
ionIoni: for alpha XStype:1 SubType=2
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.02
===== EM models for the G4Region DefaultRegionForTheWorld ======
BraggIon : Emin= 0 eV Emax=7.9452 MeV
BraggIon : Emin= 0 meV Emax=7.9452 MeV
BetheBloch : Emin=7.9452 MeV Emax= 1000 PeV
msc: for anti_proton SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for anti_proton SubType=2
hIoni: for anti_proton XStype:1 SubType=2
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax= 2 MeV
ICRU73QO : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 1000 PeV
hBrems: for anti_proton SubType=3
hBrems: for anti_proton XStype:1 SubType=3
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 1000 PeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 1000 PeV ModifiedMephi
hPairProd: for anti_proton SubType=4
hPairProd: for anti_proton XStype:1 SubType=4
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
Sampling table 33x1001 from 7.50618 GeV to 1e+06 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 1000 PeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 1000 PeV ModifiedMephi
CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1
CoulombScat: for anti_proton XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 1000 PeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for kaon+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for kaon+ SubType=2
hIoni: for kaon+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax=1.05231 MeV
Bragg : Emin= 0 meV Emax=1.05231 MeV
BetheBloch : Emin=1.05231 MeV Emax= 1000 PeV
hBrems: for kaon+ SubType=3
hBrems: for kaon+ XStype:1 SubType=3
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 1000 PeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 1000 PeV ModifiedMephi
hPairProd: for kaon+ SubType=4
hPairProd: for kaon+ XStype:1 SubType=4
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
Sampling table 34x1001 from 3.94942 GeV to 1e+06 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 1000 PeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 1000 PeV ModifiedMephi
CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1
CoulombScat: for kaon+ XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 1000 PeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for kaon- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for kaon- SubType=2
hIoni: for kaon- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax=1.05231 MeV
ICRU73QO : Emin= 0 meV Emax=1.05231 MeV
BetheBloch : Emin=1.05231 MeV Emax= 1000 PeV
hBrems: for kaon- SubType=3
hBrems: for kaon- XStype:1 SubType=3
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 1000 PeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 1000 PeV ModifiedMephi
hPairProd: for kaon- SubType=4
hPairProd: for kaon- XStype:1 SubType=4
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
Sampling table 34x1001 from 3.94942 GeV to 1e+06 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 1000 PeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 1000 PeV ModifiedMephi
CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1
CoulombScat: for kaon- XStype:3 SubType=1 BuildTable=1
Used Lambda table of kaon+
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for mu+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
muIoni: for mu+ SubType=2
muIoni: for mu+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 200 keV
Bragg : Emin= 0 meV Emax= 200 keV
BetheBloch : Emin= 200 keV Emax= 1 GeV
MuBetheBloch : Emin= 1 GeV Emax= 1000 PeV
muBrems: for mu+ SubType=3
muBrems: for mu+ XStype:1 SubType=3
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
MuBrem : Emin= 0 eV Emax= 1000 PeV ModifiedMephi
MuBrem : Emin= 0 meV Emax= 1000 PeV ModifiedMephi
muPairProd: for mu+ SubType=4
muPairProd: for mu+ XStype:1 SubType=4
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
Sampling table 37x1001 from 1 GeV to 1e+06 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
muPairProd : Emin= 0 eV Emax= 1000 PeV ModifiedMephi
muPairProd : Emin= 0 meV Emax= 1000 PeV ModifiedMephi
CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1
CoulombScat: for mu+ XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 1000 PeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for mu- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
muIoni: for mu- SubType=2
muIoni: for mu- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax= 200 keV
ICRU73QO : Emin= 0 meV Emax= 200 keV
BetheBloch : Emin= 200 keV Emax= 1 GeV
MuBetheBloch : Emin= 1 GeV Emax= 1000 PeV
muBrems: for mu- SubType=3
muBrems: for mu- XStype:1 SubType=3
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
MuBrem : Emin= 0 eV Emax= 1000 PeV ModifiedMephi
MuBrem : Emin= 0 meV Emax= 1000 PeV ModifiedMephi
muPairProd: for mu- SubType=4
muPairProd: for mu- XStype:1 SubType=4
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
Sampling table 37x1001 from 1 GeV to 1e+06 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
muPairProd : Emin= 0 eV Emax= 1000 PeV ModifiedMephi
muPairProd : Emin= 0 meV Emax= 1000 PeV ModifiedMephi
CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1
CoulombScat: for mu- XStype:3 SubType=1 BuildTable=1
Used Lambda table of mu+
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for pi+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for pi+ SubType=2
hIoni: for pi+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax=297.505 keV
Bragg : Emin= 0 meV Emax=297.505 keV
BetheBloch : Emin=297.505 keV Emax= 1000 PeV
hBrems: for pi+ SubType=3
hBrems: for pi+ XStype:1 SubType=3
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 1000 PeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 1000 PeV ModifiedMephi
hPairProd: for pi+ SubType=4
hPairProd: for pi+ XStype:1 SubType=4
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
Sampling table 36x1001 from 1.11656 GeV to 1e+06 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 1000 PeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 1000 PeV ModifiedMephi
CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1
CoulombScat: for pi+ XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 1000 PeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for pi- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for pi- SubType=2
hIoni: for pi- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax=297.505 keV
ICRU73QO : Emin= 0 meV Emax=297.505 keV
BetheBloch : Emin=297.505 keV Emax= 1000 PeV
hBrems: for pi- SubType=3
hBrems: for pi- XStype:1 SubType=3
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 1000 PeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 1000 PeV ModifiedMephi
hPairProd: for pi- SubType=4
hPairProd: for pi- XStype:1 SubType=4
dE/dx and range tables from 100 eV to 1000 PeV in 112 bins
Lambda tables from threshold to 1000 PeV, 7 bins/decade, spline: 1
Sampling table 36x1001 from 1.11656 GeV to 1e+06 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 1000 PeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 1000 PeV ModifiedMephi
CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1
CoulombScat: for pi- XStype:3 SubType=1 BuildTable=1
Used Lambda table of pi+
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
Region <DefaultRegionForTheWorld> -- -- appears in <Iron> world volume
This region is in the mass world.
@@ -556,13 +562,13 @@ N=17 V[N]={906770732717044781, 629165745432651234, 1235682547346241386, 68420008
Run terminated.
Run Summary
Number of events processed : 10000
User=1.560000s Real=1.621130s Sys=0.000000s
User=1.250000s Real=1.304037s Sys=0.000000s
The run consists of 10000 mu+ of 10 TeV through 1 m of Iron (density: 7.9 g/cm3 )
Number of process calls ---> CoulombScat : 5678 muIoni : 464109 muPairProd : 63342 muBrems : 681
Number of process calls ---> CoulombScat : 5605 muIoni : 463516 muPairProd : 63848 muBrems : 652
Simulation: total CrossSection = 0.53381 /cm MeanFreePath = 1.8733 cm massicCrossSection = 0.067828 cm2/g
Simulation: total CrossSection = 0.53362 /cm MeanFreePath = 1.874 cm massicCrossSection = 0.067804 cm2/g
Theory: total CrossSection = 0.52677 /cm MeanFreePath = 1.8984 cm massicCrossSection = 0.066934 cm2/g
#
/gun/particle pi+
@@ -598,7 +604,7 @@ Index : 0 used in the geometry : Yes
------- MixMaxRng engine status -------
Current state vector is:
mixmax state, file version 1.0
N=17 V[N]={390989001462590597, 2165133204863311347, 854974819548217897, 2126485118342897292, 1043827090844452939, 1153945593924229687, 1492456639939297216, 170725670497924326, 271262107949827517, 605115632054846954, 986185566339304190, 439176016835494735, 879520380644875766, 793553958454628956, 1863967334887151092, 1831154685294334696, 265599519600268147} counter= 12sumtot= 1193171276987795697
N=17 V[N]={2137148051328017863, 1306592737363773246, 2248344025554575640, 614811550767327511, 167067813530840680, 932066575894560784, 1163922638737620863, 2247180461233602618, 1806372044515299724, 2233633600495131281, 674521006833485956, 2088503965876132481, 539073150544031657, 1157517650962223855, 75701368395734007, 1832189988479540997, 1062560039391624031} counter= 8sumtot= 1534619586980277635
---------------------------------------
--> Event 0 starts.
--> Event 1000 starts.
@@ -613,13 +619,13 @@ N=17 V[N]={390989001462590597, 2165133204863311347, 854974819548217897, 21264851
Run terminated.
Run Summary
Number of events processed : 10000
User=1.430000s Real=1.470740s Sys=0.000000s
User=1.130000s Real=1.155753s Sys=0.000000s
The run consists of 10000 pi+ of 10 TeV through 1 m of Iron (density: 7.9 g/cm3 )
Number of process calls ---> hIoni : 434607 hPairProd : 59197 CoulombScat : 5635 hBrems : 365
Number of process calls ---> hIoni : 434617 hPairProd : 59309 CoulombScat : 5681 hBrems : 375
Simulation: total CrossSection = 0.4998 /cm MeanFreePath = 2.0008 cm massicCrossSection = 0.063507 cm2/g
Simulation: total CrossSection = 0.49998 /cm MeanFreePath = 2.0001 cm massicCrossSection = 0.06353 cm2/g
#
/gun/particle proton
/run/beamOn 10000
@@ -654,7 +660,7 @@ Index : 0 used in the geometry : Yes
------- MixMaxRng engine status -------
Current state vector is:
mixmax state, file version 1.0
N=17 V[N]={2298238080532625205, 1178087240650624566, 1997045959359451701, 1839152004624977817, 17394026815102248, 750372274557854376, 1884977897583905302, 992851946312358541, 2003537805941153099, 1052213940802144931, 1875254901294267785, 667592037758835967, 830020360070016604, 582202057381135542, 1032263805990655081, 2204166422926943861, 1021198113789617211} counter= 8sumtot= 1473981793468424278
N=17 V[N]={258274478493436593, 1260568209023888627, 2278351532077370112, 1708302836002206626, 666871633542483904, 386204232715117362, 926225966041690599, 213672474273074535, 550182794123989207, 196721445335155426, 181478418519015952, 1194324481748079636, 2187892996334852918, 1000026112388491225, 1305526376563601359, 2199652335130653675, 1485008803309123906} counter= 16sumtot= 1858384061126374005
---------------------------------------
--> Event 0 starts.
--> Event 1000 starts.
@@ -669,38 +675,44 @@ N=17 V[N]={2298238080532625205, 1178087240650624566, 1997045959359451701, 183915
Run terminated.
Run Summary
Number of events processed : 10000
User=1.360000s Real=1.508928s Sys=0.000000s
User=1.080000s Real=1.093630s Sys=0.000000s
The run consists of 10000 proton of 10 TeV through 1 m of Iron (density: 7.9 g/cm3 )
Number of process calls ---> hIoni : 435051 hPairProd : 34071 CoulombScat : 5507 hBrems : 6
Number of process calls ---> hIoni : 434049 hPairProd : 34229 CoulombScat : 5475 hBrems : 11
Simulation: total CrossSection = 0.47463 /cm MeanFreePath = 2.1069 cm massicCrossSection = 0.060309 cm2/g
Simulation: total CrossSection = 0.47376 /cm MeanFreePath = 2.1108 cm massicCrossSection = 0.060199 cm2/g
#
G4 kernel has come to Quit state.
UserDetectorConstruction deleted.
UserPhysicsList deleted.
UserActionInitialization deleted.
UserWorkerInitialization deleted.
UserWorkerThreadInitialization deleted.
UserRunAction deleted.
UserPrimaryGenerator deleted.
RunManager is deleting RunManagerKernel.
G4SDManager deleted.
EventManager deleted.
Units table cleared.
TransportationManager deleted.
Total navigation history collections cleaned: 6
G4RNGHelper object is deleted.
================== Deleting memory pools ===================
Pool ID '20G4NavigationLevelRep', size : 0.00673 MB
Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB
Pool ID '7G4Event', size : 0.000961 MB
Pool ID '15G4PrimaryVertex', size : 0.000961 MB
Pool ID '17G4PrimaryParticle', size : 0.000961 MB
Pool ID '17G4DynamicParticle', size : 0.0163 MB
Pool ID '7G4Track', size : 0.0327 MB
Pool ID '17G4DynamicParticle', size : 0.0154 MB
Pool ID '7G4Track', size : 0.0308 MB
Pool ID '18G4TouchableHistory', size : 0.000961 MB
Pool ID '15G4CountedObjectIvE', size : 0.000961 MB
Number of memory pools allocated: 9 of which, static: 0
Dynamic pools deleted: 9 / Total memory freed: 0.062 MB
Dynamic pools deleted: 9 / Total memory freed: 0.059 MB
============================================================
G4Allocator objects are deleted.
UImanager deleted.
StateManager deleted.
RunManagerKernel is deleted. Good bye :)
RunManager is deleted.
@@ -1,54 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file electromagnetic/TestEm17/include/SteppingVerbose.hh
/// \brief Definition of the SteppingVerbose class
//
//
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#ifndef SteppingVerbose_h
#define SteppingVerbose_h 1
#include "G4SteppingVerbose.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
class SteppingVerbose : public G4SteppingVerbose {
public:
SteppingVerbose();
~SteppingVerbose();
virtual void TrackingStarted();
virtual void StepInfo();
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#endif
@@ -1,157 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file electromagnetic/TestEm17/src/SteppingVerbose.cc
/// \brief Implementation of the SteppingVerbose class
//
//
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "SteppingVerbose.hh"
#include "G4SteppingManager.hh"
#include "G4ParticleTypes.hh"
#include "G4UnitsTable.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::SteppingVerbose()
: G4SteppingVerbose()
{ }
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::~SteppingVerbose()
{}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::TrackingStarted()
{
CopyState();
G4int prec = G4cout.precision(3);
//Step zero
//
if( verboseLevel > 0 ){
G4cout << std::setw( 5) << "Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
G4cout << std::setw(5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName()
<< " initStep" << G4endl;
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::StepInfo()
{
CopyState();
G4int prec = G4cout.precision(3);
if( verboseLevel >= 1 ){
if( verboseLevel >= 4 ) VerboseTrack();
if( verboseLevel >= 3 ){
G4cout << G4endl;
G4cout << std::setw( 5) << "#Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
}
G4cout << std::setw( 5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName();
const G4VProcess* process
= fStep->GetPostStepPoint()->GetProcessDefinedStep();
G4String procName = " UserLimit";
if (process) procName = process->GetProcessName();
if (fStepStatus == fWorldBoundary) procName = "OutOfWorld";
G4cout << " " << std::setw(10) << procName;
G4cout << G4endl;
if (verboseLevel == 2) {
const std::vector<const G4Track*>* secondary
= fStep->GetSecondaryInCurrentStep();
size_t nbtrk = (*secondary).size();
if (nbtrk) {
G4cout << "\n :----- List of secondaries ----------------" << G4endl;
G4cout.precision(4);
for (size_t lp=0; lp<(*secondary).size(); lp++) {
G4cout << " "
<< std::setw(13)
<< (*secondary)[lp]->GetDefinition()->GetParticleName()
<< ": energy ="
<< std::setw(6)
<< G4BestUnit((*secondary)[lp]->GetKineticEnergy(),"Energy")
<< " time ="
<< std::setw(6)
<< G4BestUnit((*secondary)[lp]->GetGlobalTime(),"Time");
G4cout << G4endl;
}
G4cout << " :------------------------------------------\n" << G4endl;
}
}
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -1,9 +1,6 @@
#----------------------------------------------------------------------------
# Setup the project
cmake_minimum_required(VERSION 3.8...3.18)
if(${CMAKE_VERSION} VERSION_LESS 3.12)
cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
endif()
cmake_minimum_required(VERSION 3.12...3.20)
project(TestEm18)
#----------------------------------------------------------------------------
@@ -13,6 +13,9 @@ track of all tags.
----------------------------------------------------------
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
11-05-21 mma (testem18-V10-07-00)
- Migration to G4SteppingVerboseWithUnits.
09-11-20 mma (testem18-V10-06-00)
- cleanup macros
@@ -33,6 +33,7 @@
#include "G4RunManager.hh"
#include "G4UImanager.hh"
#include "G4SteppingVerbose.hh"
#include "Randomize.hh"
#include "DetectorConstruction.hh"
@@ -42,7 +43,6 @@
#include "EventAction.hh"
#include "TrackingAction.hh"
#include "SteppingAction.hh"
#include "SteppingVerbose.hh"
#include "StackingAction.hh"
#include "G4UIExecutive.hh"
@@ -59,9 +59,10 @@ int main(int argc,char** argv) {
//choose the Random engine
CLHEP::HepRandom::setTheEngine(new CLHEP::RanecuEngine);
//my Verbose output class
G4VSteppingVerbose::SetInstance(new SteppingVerbose);
//Use SteppingVerbose with Unit
G4int precision = 4;
G4SteppingVerbose::UseBestUnit(precision);
// Construct the default run manager
G4RunManager * runManager = new G4RunManager;
@@ -3,8 +3,14 @@
!!! WARNING - FPE detection is activated !!!
############################################
################################
!!! G4Backtrace is activated !!!
################################
**************************************************************
Geant4 version Name: geant4-10-07-patch-02 (11-June-2021)
Geant4 version Name: geant4-10-07-ref-06 (25-June-2021)
Copyright : Geant4 Collaboration
References : NIM A 506 (2003), 250-303
: IEEE-TNS 53 (2006), 270-278
@@ -17,17 +23,14 @@
====== Electromagnetic Physics Parameters ========
=======================================================================
LPM effect enabled 1
Spline of EM tables enabled 1
Enable creation and use of sampling tables 0
Apply cuts on all EM processes 0
Use integral approach for tracking 1
Use general process 0
Enable linear polarisation for gamma 0
Enable sampling of quantum entanglement 0
X-section factor for integral approach 0.8
Min kinetic energy for tables 10 eV
Max kinetic energy for tables 10 TeV
Number of bins in tables 120
Number of bins per decade of a table 10
Verbose level 0
Verbose level for worker thread 0
@@ -55,9 +58,8 @@ Use built-in Birks satuaration 0
Build CSDA range enabled 1
Use cut as a final range enabled 0
Enable angular generator interface 0
Factor of cut reduction for sub-cutoff method 1
Max kinetic energy for CSDA tables 10 TeV
Max kinetic energy for NIEL computation 0 eV
Max kinetic energy for NIEL computation 0 meV
Linear loss limit 0.01
Read data from file for e+e- pair production by mu 0
=======================================================================
@@ -95,23 +97,19 @@ Screening factor 1
/run/setCut 1 mm
#
/process/em/verbose 0
/run/physicsModified
/process/em/printParameters
=======================================================================
====== Electromagnetic Physics Parameters ========
=======================================================================
LPM effect enabled 1
Spline of EM tables enabled 1
Enable creation and use of sampling tables 0
Apply cuts on all EM processes 0
Use integral approach for tracking 1
Use general process 0
Enable linear polarisation for gamma 0
Enable sampling of quantum entanglement 0
X-section factor for integral approach 0.8
Min kinetic energy for tables 10 eV
Max kinetic energy for tables 10 TeV
Number of bins in tables 120
Number of bins per decade of a table 10
Verbose level 0
Verbose level for worker thread 0
@@ -139,9 +137,8 @@ Use built-in Birks satuaration 0
Build CSDA range enabled 1
Use cut as a final range enabled 0
Enable angular generator interface 0
Factor of cut reduction for sub-cutoff method 1
Max kinetic energy for CSDA tables 10 TeV
Max kinetic energy for NIEL computation 0 eV
Max kinetic energy for NIEL computation 0 meV
Linear loss limit 0.01
Read data from file for e+e- pair production by mu 0
=======================================================================
@@ -212,42 +209,42 @@ Index : 0 used in the geometry : Yes
Run terminated.
Run Summary
Number of events processed : 100000
User=0.640000s Real=0.675717s Sys=0.010000s
User=0.440000s Real=0.457865s Sys=0.000000s
======================== run summary ======================
The run was 100000 e- of 100 MeV through 1 cm of Water (density: 1 g/cm3 )
Process defining step :
Edep alone= 53 Transportation= 99993 eBrem= 37462 eIoni= 23966
Edep alone= 53 Transportation= 99993 eBrem= 37481 eIoni= 23961
TrackLength = 1 cm nb of steps = 1.615 stepSize = 6.193 mm (27.09 nm --> 1 cm )
TrackLength = 1 cm nb of steps = 1.615 stepSize = 6.192 mm (27.09 nm --> 1 cm )
Energy continuously deposited along primary track (restricted dE/dx) dE1 = 1.744 MeV (754 keV --> 2.993 MeV)
Evaluation of dE1 from reading restricted Range table : dE1_table = 1.744 MeV ---> dE1/dE1_table = 1
Energy transfered to secondary particles :
due to eBrem: dE2 = 2.324 MeV (2.943 keV --> 99.25 MeV)
due to eIoni: dE2 = 443.1 keV (351.9 keV --> 49.39 MeV)
due to eBrem: dE2 = 2.327 MeV (2.943 keV --> 99.25 MeV)
due to eIoni: dE2 = 442.6 keV (351.9 keV --> 49.39 MeV)
Total energy transfered to secondaries : dE3 = sum of dE2 = 2.767 MeV (2.943 keV --> 99.25 MeV)
Total energy transfered to secondaries : dE3 = sum of dE2 = 2.769 MeV (2.943 keV --> 99.25 MeV)
Total energy lost by incident particle : dE4 = dE1 + dE3 = 4.511 MeV (1.33 MeV --> 100 MeV)
Total energy lost by incident particle : dE4 = dE1 + dE3 = 4.513 MeV (1.33 MeV --> 100 MeV)
calcul of dE4 from energy balance : dE4_bal = E_in - E_out = 4.511 MeV (1.33 MeV --> 100 MeV)
calcul of dE4 from energy balance : dE4_bal = E_in - E_out = 4.513 MeV (1.33 MeV --> 100 MeV)
Evaluation of dE4 from reading full Range table : dE4_table = 4.578 MeV ---> dE4/dE4_table = 0.9854
Evaluation of dE4 from reading full Range table : dE4_table = 4.578 MeV ---> dE4/dE4_table = 0.9859
Energy spectrum of secondary particles :
e-: 23966 Emean = 1.849 MeV (351.9 keV --> 49.39 MeV)
gamma: 37451 Emean = 6.205 MeV (2.943 keV --> 99.25 MeV)
e-: 23961 Emean = 1.847 MeV (351.9 keV --> 49.39 MeV)
gamma: 37467 Emean = 6.21 MeV (2.943 keV --> 99.25 MeV)
--------- Ranecu engine status ---------
Initial seed (index) = 0
Current couple of seeds = 1416005071, 1830164595
Current couple of seeds = 1469352328, 720023459
----------------------------------------
G4 kernel has come to Quit state.
================== Deleting memory pools ===================
@@ -1,54 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file electromagnetic/TestEm18/include/SteppingVerbose.hh
/// \brief Definition of the SteppingVerbose class
//
//
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#ifndef SteppingVerbose_h
#define SteppingVerbose_h 1
#include "G4SteppingVerbose.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
class SteppingVerbose : public G4SteppingVerbose {
public:
SteppingVerbose();
~SteppingVerbose();
virtual void TrackingStarted();
virtual void StepInfo();
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#endif
@@ -1,157 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file electromagnetic/TestEm18/src/SteppingVerbose.cc
/// \brief Implementation of the SteppingVerbose class
//
//
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "SteppingVerbose.hh"
#include "G4SteppingManager.hh"
#include "G4ParticleTypes.hh"
#include "G4UnitsTable.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::SteppingVerbose()
: G4SteppingVerbose()
{ }
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
SteppingVerbose::~SteppingVerbose()
{}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::TrackingStarted()
{
CopyState();
G4int prec = G4cout.precision(3);
//Step zero
//
if( verboseLevel > 0 ){
G4cout << std::setw( 5) << "Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
G4cout << std::setw(5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName()
<< " initStep" << G4endl;
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void SteppingVerbose::StepInfo()
{
CopyState();
G4int prec = G4cout.precision(3);
if( verboseLevel >= 1 ){
if( verboseLevel >= 4 ) VerboseTrack();
if( verboseLevel >= 3 ){
G4cout << G4endl;
G4cout << std::setw( 5) << "#Step#" << " "
<< std::setw( 6) << "X" << " "
<< std::setw( 6) << "Y" << " "
<< std::setw( 6) << "Z" << " "
<< std::setw( 9) << "KineE" << " "
<< std::setw( 9) << "dEStep" << " "
<< std::setw(10) << "StepLeng"
<< std::setw(10) << "TrakLeng"
<< std::setw(10) << "Volume" << " "
<< std::setw(10) << "Process" << G4endl;
}
G4cout << std::setw( 5) << fTrack->GetCurrentStepNumber() << " "
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy")
<< std::setw(6) << G4BestUnit(fStep->GetStepLength(),"Length")
<< std::setw(6) << G4BestUnit(fTrack->GetTrackLength(),"Length")
<< std::setw(10) << fTrack->GetVolume()->GetName();
const G4VProcess* process
= fStep->GetPostStepPoint()->GetProcessDefinedStep();
G4String procName = " UserLimit";
if (process) procName = process->GetProcessName();
if (fStepStatus == fWorldBoundary) procName = "OutOfWorld";
G4cout << " " << std::setw(10) << procName;
G4cout << G4endl;
if (verboseLevel == 2) {
const std::vector<const G4Track*>* secondary
= fStep->GetSecondaryInCurrentStep();
size_t nbtrk = (*secondary).size();
if (nbtrk) {
G4cout << "\n :----- List of secondaries ----------------" << G4endl;
G4cout.precision(4);
for (size_t lp=0; lp<(*secondary).size(); lp++) {
G4cout << " "
<< std::setw(13)
<< (*secondary)[lp]->GetDefinition()->GetParticleName()
<< ": energy ="
<< std::setw(6)
<< G4BestUnit((*secondary)[lp]->GetKineticEnergy(),"Energy")
<< " time ="
<< std::setw(6)
<< G4BestUnit((*secondary)[lp]->GetGlobalTime(),"Time");
G4cout << G4endl;
}
G4cout << " :------------------------------------------\n" << G4endl;
}
}
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -67,10 +67,6 @@
low-energy models
Physics lists and options can be (re)set with UI commands
Please, notice that options set through G4EmProcessOptions are global, eg
for all particle types. In G4 builders, it is shown how to set options per
particle type.
\section TestEm2_s3 AN EVENT : THE PRIMARY GENERATOR
@@ -1,9 +1,6 @@
#----------------------------------------------------------------------------
# Setup the project
cmake_minimum_required(VERSION 3.8...3.18)
if(${CMAKE_VERSION} VERSION_LESS 3.12)
cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
endif()
cmake_minimum_required(VERSION 3.12...3.20)
project(TestEm2)
#----------------------------------------------------------------------------
@@ -43,7 +40,7 @@ target_link_libraries(TestEm2 ${Geant4_LIBRARIES})
# relies on these scripts being in the current working directory.
#
set(TestEm2_SCRIPTS
egs4.mac run01.mac run02.mac run03.mac TestEm2.in TestEm2.out vis.mac
egs4.mac run01.mac run02.mac run03.mac stepMax.mac TestEm2.in TestEm2.out vis.mac
)
foreach(_script ${TestEm2_SCRIPTS})
@@ -14,6 +14,34 @@ track of all tags.
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
25-03-21 M.Asai (testem2-V10-07-06)
- Additional migration to new G4SteppingVerbose.
21-03-21 V.Ivanchenko (testem2-V10-07-05)
- removed obsolete PhysList5DEmStandard - 5D model is a part of
Opt4 and other physics configurations
26-02-21 M.Asai (testem2-V10-07-04)
- Migrating to G4SteppingVerboseWithUnits.
22-02-21 mma (testem2-V10-07-03)
- SteppingVerbose : modify blank space for Process name (cosmetic)
14-02-21 mma (testem2-V10-07-02)
- SteppingVerbose : set precision via data member
- TestEm2.cc : use RunManagerFactory
10-02-21 V.Ivanchenko (testem2-V10-07-01)
- fixed README
11-12-20 mma (testem2-V10-07-00)
- update PhysListEmStandard.cc
- DetectorConstruction : do not print materials table
- StepMax, StepMaxMessenger, PhysicsList, PhysicsListMessenger :
revert, to make command /testem/stepMax working in interactive mode
- Added macro stepMax.mac
- cosmetic in TestEm2.in
28-08-20 I. Hrivnacova (testem2-V10-06-00)
- Macro & commands review:
- Added macro descriptions in README
@@ -63,10 +63,6 @@
Physics lists and options can be (re)set with UI commands
Please, notice that options set through G4EmProcessOptions are global, eg
for all particle types. In G4 builders, it is shown how to set options per
particle type.
3- AN EVENT : THE PRIMARY GENERATOR
The primary kinematic consists of a single particle which hits the
@@ -31,16 +31,16 @@
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#include "G4RunManager.hh"
#include "G4MTRunManager.hh"
#include "G4Types.hh"
#include "G4RunManagerFactory.hh"
#include "G4UImanager.hh"
#include "G4UIcommand.hh"
#include "G4SteppingVerbose.hh"
#include "Randomize.hh"
#include "DetectorConstruction.hh"
#include "PhysicsList.hh"
#include "ActionInitialization.hh"
#include "SteppingVerbose.hh"
#include "G4UIExecutive.hh"
#include "G4VisExecutive.hh"
@@ -52,17 +52,19 @@ int main(int argc,char** argv) {
//detect interactive mode (if no arguments) and define UI session
G4UIExecutive* ui = nullptr;
if (argc == 1) { ui = new G4UIExecutive(argc,argv); }
#ifdef G4MULTITHREADED
G4MTRunManager * runManager = new G4MTRunManager();
G4int nThreads = G4Threading::G4GetNumberOfCores();
if (argc==3) nThreads = G4UIcommand::ConvertToInt(argv[2]);
runManager->SetNumberOfThreads(nThreads);
#else
G4VSteppingVerbose::SetInstance(new SteppingVerbose);
G4RunManager * runManager = new G4RunManager();
#endif
//Use SteppingVerbose with Unit
G4int precision = 4;
G4SteppingVerbose::UseBestUnit(precision);
//Creating run manager
auto runManager = G4RunManagerFactory::CreateRunManager();
if (argc==3) {
G4int nThreads = G4UIcommand::ConvertToInt(argv[2]);
runManager->SetNumberOfThreads(nThreads);
}
//set mandatory initialization classes
DetectorConstruction* detector = new DetectorConstruction();
runManager->SetUserInitialization(detector);
@@ -22,6 +22,7 @@
#
/process/em/verbose 1
/process/em/workerVerbose 0
/process/em/printParameters
/run/initialize
#
/gun/particle e-
@@ -1,10 +1,17 @@
Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type...
############################################
!!! WARNING - FPE detection is activated !!!
############################################
################################
!!! G4Backtrace is activated !!!
################################
**************************************************************
Geant4 version Name: geant4-10-07-patch-02 (11-June-2021)
Geant4 version Name: geant4-10-07-ref-06 (25-June-2021)
Copyright : Geant4 Collaboration
References : NIM A 506 (2003), 250-303
: IEEE-TNS 53 (2006), 270-278
@@ -12,118 +19,6 @@
WWW : http://geant4.org/
**************************************************************
***** Table : Nb of materials = 9 *****
Material: Water density: 1.000 g/cm3 RadL: 36.092 cm Nucl.Int.Length: 75.356 cm
Imean: 78.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Hydrogen (H) Z = 1.0 N = 1 A = 1.010 g/mole
---> Isotope: H1 Z = 1 N = 1 A = 1.01 g/mole abundance: 99.989 %
---> Isotope: H2 Z = 1 N = 2 A = 2.01 g/mole abundance: 0.011 %
ElmMassFraction: 11.21 % ElmAbundance 66.67 %
---> Element: Oxygen (O) Z = 8.0 N = 16 A = 16.000 g/mole
---> Isotope: O16 Z = 8 N = 16 A = 15.99 g/mole abundance: 99.757 %
---> Isotope: O17 Z = 8 N = 17 A = 17.00 g/mole abundance: 0.038 %
---> Isotope: O18 Z = 8 N = 18 A = 18.00 g/mole abundance: 0.205 %
ElmMassFraction: 88.79 % ElmAbundance 33.33 %
Material: liquidArgon density: 1.390 g/cm3 RadL: 14.064 cm Nucl.Int.Length: 86.076 cm
Imean: 188.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Ar (Ar) Z = 18.0 N = 40 A = 39.948 g/mole
---> Isotope: Ar36 Z = 18 N = 36 A = 35.97 g/mole abundance: 0.337 %
---> Isotope: Ar38 Z = 18 N = 38 A = 37.96 g/mole abundance: 0.063 %
---> Isotope: Ar40 Z = 18 N = 40 A = 39.96 g/mole abundance: 99.600 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Aluminium density: 2.700 g/cm3 RadL: 8.893 cm Nucl.Int.Length: 38.880 cm
Imean: 166.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Al (Al) Z = 13.0 N = 27 A = 26.982 g/mole
---> Isotope: Al27 Z = 13 N = 27 A = 26.98 g/mole abundance: 100.000 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Iron density: 7.870 g/cm3 RadL: 1.758 cm Nucl.Int.Length: 16.999 cm
Imean: 286.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Fe (Fe) Z = 26.0 N = 56 A = 55.845 g/mole
---> Isotope: Fe54 Z = 26 N = 54 A = 53.94 g/mole abundance: 5.845 %
---> Isotope: Fe56 Z = 26 N = 56 A = 55.93 g/mole abundance: 91.754 %
---> Isotope: Fe57 Z = 26 N = 57 A = 56.94 g/mole abundance: 2.119 %
---> Isotope: Fe58 Z = 26 N = 58 A = 57.93 g/mole abundance: 0.282 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Copper density: 8.960 g/cm3 RadL: 1.436 cm Nucl.Int.Length: 15.588 cm
Imean: 322.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Cu (Cu) Z = 29.0 N = 64 A = 63.546 g/mole
---> Isotope: Cu63 Z = 29 N = 63 A = 62.93 g/mole abundance: 69.170 %
---> Isotope: Cu65 Z = 29 N = 65 A = 64.93 g/mole abundance: 30.830 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Tungsten density: 19.350 g/cm3 RadL: 3.495 mm Nucl.Int.Length: 10.285 cm
Imean: 727.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: W (W) Z = 74.0 N = 184 A = 183.842 g/mole
---> Isotope: W180 Z = 74 N = 180 A = 179.95 g/mole abundance: 0.120 %
---> Isotope: W182 Z = 74 N = 182 A = 181.95 g/mole abundance: 26.500 %
---> Isotope: W183 Z = 74 N = 183 A = 182.95 g/mole abundance: 14.310 %
---> Isotope: W184 Z = 74 N = 184 A = 183.95 g/mole abundance: 30.640 %
---> Isotope: W186 Z = 74 N = 186 A = 185.95 g/mole abundance: 28.430 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Lead density: 11.350 g/cm3 RadL: 5.613 mm Nucl.Int.Length: 18.248 cm
Imean: 823.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Pb (Pb) Z = 82.0 N = 207 A = 207.217 g/mole
---> Isotope: Pb204 Z = 82 N = 204 A = 203.97 g/mole abundance: 1.400 %
---> Isotope: Pb206 Z = 82 N = 206 A = 205.97 g/mole abundance: 24.100 %
---> Isotope: Pb207 Z = 82 N = 207 A = 206.98 g/mole abundance: 22.100 %
---> Isotope: Pb208 Z = 82 N = 208 A = 207.98 g/mole abundance: 52.400 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: Uranium density: 18.950 g/cm3 RadL: 3.166 mm Nucl.Int.Length: 11.446 cm
Imean: 890.000 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: U (U) Z = 92.0 N = 238 A = 238.029 g/mole
---> Isotope: U234 Z = 92 N = 234 A = 234.04 g/mole abundance: 0.005 %
---> Isotope: U235 Z = 92 N = 235 A = 235.04 g/mole abundance: 0.720 %
---> Isotope: U238 Z = 92 N = 238 A = 238.05 g/mole abundance: 99.275 %
ElmMassFraction: 100.00 % ElmAbundance 100.00 %
Material: BGO density: 7.100 g/cm3 RadL: 1.123 cm Nucl.Int.Length: 22.806 cm
Imean: 473.785 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: Oxygen (O) Z = 8.0 N = 16 A = 16.000 g/mole
---> Isotope: O16 Z = 8 N = 16 A = 15.99 g/mole abundance: 99.757 %
---> Isotope: O17 Z = 8 N = 17 A = 17.00 g/mole abundance: 0.038 %
---> Isotope: O18 Z = 8 N = 18 A = 18.00 g/mole abundance: 0.205 %
ElmMassFraction: 15.41 % ElmAbundance 63.16 %
---> Element: Germanium (Ge) Z = 32.0 N = 73 A = 72.590 g/mole
---> Isotope: Ge70 Z = 32 N = 70 A = 69.92 g/mole abundance: 20.840 %
---> Isotope: Ge72 Z = 32 N = 72 A = 71.92 g/mole abundance: 27.540 %
---> Isotope: Ge73 Z = 32 N = 73 A = 72.92 g/mole abundance: 7.730 %
---> Isotope: Ge74 Z = 32 N = 74 A = 73.92 g/mole abundance: 36.280 %
---> Isotope: Ge76 Z = 32 N = 76 A = 75.92 g/mole abundance: 7.610 %
ElmMassFraction: 17.48 % ElmAbundance 15.79 %
---> Element: Bismuth (Bi) Z = 83.0 N = 209 A = 208.980 g/mole
---> Isotope: Bi209 Z = 83 N = 209 A = 208.98 g/mole abundance: 100.000 %
ElmMassFraction: 67.10 % ElmAbundance 21.05 %
/control/cout/ignoreThreadsExcept 0
/run/numberOfThreads 2
*** /run/numberOfThreads command is issued in sequential mode.
@@ -136,11 +31,103 @@ Command is ignored.
/testem/phys/addPhysics emstandard_opt0
/run/setCut 1.0 mm
/process/em/verbose 1
/run/physicsModified
/process/em/workerVerbose 0
/run/physicsModified
/process/em/printParameters
=======================================================================
====== Electromagnetic Physics Parameters ========
=======================================================================
LPM effect enabled 1
Enable creation and use of sampling tables 0
Apply cuts on all EM processes 0
Use general process 0
Enable linear polarisation for gamma 0
Enable sampling of quantum entanglement 0
X-section factor for integral approach 0.8
Min kinetic energy for tables 100 eV
Max kinetic energy for tables 100 TeV
Number of bins per decade of a table 7
Verbose level 1
Verbose level for worker thread 0
Bremsstrahlung energy threshold above which
primary e+- is added to the list of secondary 100 TeV
Bremsstrahlung energy threshold above which primary
muon/hadron is added to the list of secondary 100 TeV
Lowest triplet kinetic energy 1 MeV
Enable sampling of gamma linear polarisation 0
5D gamma conversion model type 0
5D gamma conversion model on isolated ion 0
Livermore data directory livermore
=======================================================================
====== Ionisation Parameters ========
=======================================================================
Step function for e+- (0.2, 1 mm)
Step function for muons/hadrons (0.2, 0.1 mm)
Step function for light ions (0.2, 0.1 mm)
Step function for general ions (0.2, 0.1 mm)
Lowest e+e- kinetic energy 1 keV
Lowest muon/hadron kinetic energy 1 keV
Fluctuations of dE/dx are enabled 1
Use ICRU90 data 0
Use built-in Birks satuaration 0
Build CSDA range enabled 0
Use cut as a final range enabled 0
Enable angular generator interface 0
Max kinetic energy for CSDA tables 1 GeV
Max kinetic energy for NIEL computation 0 meV
Linear loss limit 0.01
Read data from file for e+e- pair production by mu 0
=======================================================================
====== Multiple Scattering Parameters ========
=======================================================================
Type of msc step limit algorithm for e+- 1
Type of msc step limit algorithm for muons/hadrons 0
Msc lateral displacement for e+- enabled 1
Msc lateral displacement for muons and hadrons 0
Urban msc model lateral displacement alg96 1
Range factor for msc step limit for e+- 0.04
Range factor for msc step limit for muons/hadrons 0.2
Geometry factor for msc step limitation of e+- 2.5
Safety factor for msc step limit for e+- 0.6
Skin parameter for msc step limitation of e+- 1
Lambda limit for msc step limit for e+- 1 mm
Use Mott correction for e- scattering 0
Factor used for dynamic computation of angular
limit between single and multiple scattering 1
Fixed angular limit between single
and multiple scattering 3.1416 rad
Upper energy limit for e+- multiple scattering 100 MeV
Type of electron single scattering model 0
Type of nuclear form-factor 1
Screening factor 1
=======================================================================
/run/initialize
Absorber is 17.8491 cm of G4_PbWO4 R= 4.46227 cm
Absorber is 17.8491 cm of G4_PbWO4 R= 4.46227 cm
Material: G4_PbWO4 density: 8.280 g/cm3 RadL: 8.925 mm Nucl.Int.Length: 20.740 cm
Imean: 542.741 eV temperature: 293.15 K pressure: 1.00 atm
---> Element: O (O) Z = 8.0 N = 16 A = 15.999 g/mole
---> Isotope: O16 Z = 8 N = 16 A = 15.99 g/mole abundance: 99.757 %
---> Isotope: O17 Z = 8 N = 17 A = 17.00 g/mole abundance: 0.038 %
---> Isotope: O18 Z = 8 N = 18 A = 18.00 g/mole abundance: 0.205 %
ElmMassFraction: 14.06 % ElmAbundance 66.67 %
---> Element: Pb (Pb) Z = 82.0 N = 207 A = 207.217 g/mole
---> Isotope: Pb204 Z = 82 N = 204 A = 203.97 g/mole abundance: 1.400 %
---> Isotope: Pb206 Z = 82 N = 206 A = 205.97 g/mole abundance: 24.100 %
---> Isotope: Pb207 Z = 82 N = 207 A = 206.98 g/mole abundance: 22.100 %
---> Isotope: Pb208 Z = 82 N = 208 A = 207.98 g/mole abundance: 52.400 %
ElmMassFraction: 45.54 % ElmAbundance 16.67 %
---> Element: W (W) Z = 74.0 N = 184 A = 183.842 g/mole
---> Isotope: W180 Z = 74 N = 180 A = 179.95 g/mole abundance: 0.120 %
---> Isotope: W182 Z = 74 N = 182 A = 181.95 g/mole abundance: 26.500 %
---> Isotope: W183 Z = 74 N = 183 A = 182.95 g/mole abundance: 14.310 %
---> Isotope: W184 Z = 74 N = 184 A = 183.95 g/mole abundance: 30.640 %
---> Isotope: W186 Z = 74 N = 186 A = 185.95 g/mole abundance: 28.430 %
ElmMassFraction: 40.40 % ElmAbundance 16.67 %
/gun/particle e-
/gun/energy 5 GeV
/run/printProgress 20
@@ -150,48 +137,48 @@ Absorber is 17.8491 cm of G4_PbWO4 R= 4.46227 cm
phot: for gamma SubType=12 BuildTable=0
LambdaPrime table from 200 keV to 100 TeV in 61 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
LivermorePhElectric : Emin= 0 eV Emax= 100 TeV SauterGavrila Fluo
LivermorePhElectric : Emin= 0 meV Emax= 100 TeV SauterGavrila Fluo
compt: for gamma SubType=13 BuildTable=1
Lambda table from 100 eV to 1 MeV, 7 bins/decade, spline: 1
LambdaPrime table from 1 MeV to 100 TeV in 56 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
Klein-Nishina : Emin= 0 eV Emax= 100 TeV
Klein-Nishina : Emin= 0 meV Emax= 100 TeV
conv: for gamma SubType=14 BuildTable=1
Lambda table from 1.022 MeV to 100 TeV, 18 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
BetheHeitlerLPM : Emin= 0 eV Emax= 100 TeV ModifiedTsai
BetheHeitlerLPM : Emin= 0 meV Emax= 100 TeV ModifiedTsai
Rayl: for gamma SubType=11 BuildTable=1
Lambda table from 100 eV to 100 keV, 7 bins/decade, spline: 0
LambdaPrime table from 100 keV to 100 TeV in 63 bins
===== EM models for the G4Region DefaultRegionForTheWorld ======
LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator
LivermoreRayleigh : Emin= 0 meV Emax= 100 TeV CullenGenerator
msc: for e- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
eIoni: for e- SubType=2
eIoni: for e- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
MollerBhabha : Emin= 0 eV Emax= 100 TeV
MollerBhabha : Emin= 0 meV Emax= 100 TeV
eBrem: for e- SubType=3
eBrem: for e- XStype:4 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000
===== EM models for the G4Region DefaultRegionForTheWorld ======
eBremSB : Emin= 0 eV Emax= 1 GeV ModifiedTsai
eBremSB : Emin= 0 meV Emax= 1 GeV ModifiedTsai
eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai
CoulombScat: for e-, integral:1 SubType=1 BuildTable=1
CoulombScat: for e- XStype:3 SubType=1 BuildTable=1
Lambda table from 100 MeV to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
@@ -199,31 +186,31 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1
msc: for e+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 MeV Nbins=42 100 eV - 100 MeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
eIoni: for e+ SubType=2
eIoni: for e+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
MollerBhabha : Emin= 0 eV Emax= 100 TeV
MollerBhabha : Emin= 0 meV Emax= 100 TeV
eBrem: for e+ SubType=3
eBrem: for e+ XStype:4 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000
===== EM models for the G4Region DefaultRegionForTheWorld ======
eBremSB : Emin= 0 eV Emax= 1 GeV ModifiedTsai
eBremSB : Emin= 0 meV Emax= 1 GeV ModifiedTsai
eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai
annihil: for e+, integral:1 SubType=5 BuildTable=0
annihil: for e+ XStype:2 SubType=5 BuildTable=0
===== EM models for the G4Region DefaultRegionForTheWorld ======
eplus2gg : Emin= 0 eV Emax= 100 TeV
eplus2gg : Emin= 0 meV Emax= 100 TeV
CoulombScat: for e+, integral:1 SubType=1 BuildTable=1
CoulombScat: for e+ XStype:3 SubType=1 BuildTable=1
Lambda table from 100 MeV to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
@@ -231,288 +218,288 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1
msc: for proton SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for proton SubType=2
hIoni: for proton XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 2 MeV
Bragg : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
hBrems: for proton SubType=3
hBrems: for proton XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for proton SubType=4
hPairProd: for proton XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 17x1001 from 7.50618 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for proton, integral:1 SubType=1 BuildTable=1
CoulombScat: for proton XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for GenericIon SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
ionIoni: for GenericIon SubType=2
ionIoni: for GenericIon XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.02
Stopping Power data for 17 ion/material pairs
===== EM models for the G4Region DefaultRegionForTheWorld ======
BraggIon : Emin= 0 eV Emax= 2 MeV
BraggIon : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
msc: for alpha SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
ionIoni: for alpha SubType=2
ionIoni: for alpha XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.02
===== EM models for the G4Region DefaultRegionForTheWorld ======
BraggIon : Emin= 0 eV Emax=7.9452 MeV
BraggIon : Emin= 0 meV Emax=7.9452 MeV
BetheBloch : Emin=7.9452 MeV Emax= 100 TeV
msc: for anti_proton SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for anti_proton SubType=2
hIoni: for anti_proton XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax= 2 MeV
ICRU73QO : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
hBrems: for anti_proton SubType=3
hBrems: for anti_proton XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for anti_proton SubType=4
hPairProd: for anti_proton XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 17x1001 from 7.50618 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1
CoulombScat: for anti_proton XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for kaon+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for kaon+ SubType=2
hIoni: for kaon+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax=1.05231 MeV
Bragg : Emin= 0 meV Emax=1.05231 MeV
BetheBloch : Emin=1.05231 MeV Emax= 100 TeV
hBrems: for kaon+ SubType=3
hBrems: for kaon+ XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for kaon+ SubType=4
hPairProd: for kaon+ XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 18x1001 from 3.94942 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1
CoulombScat: for kaon+ XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for kaon- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for kaon- SubType=2
hIoni: for kaon- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax=1.05231 MeV
ICRU73QO : Emin= 0 meV Emax=1.05231 MeV
BetheBloch : Emin=1.05231 MeV Emax= 100 TeV
hBrems: for kaon- SubType=3
hBrems: for kaon- XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for kaon- SubType=4
hPairProd: for kaon- XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 18x1001 from 3.94942 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1
CoulombScat: for kaon- XStype:3 SubType=1 BuildTable=1
Used Lambda table of kaon+
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for mu+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
muIoni: for mu+ SubType=2
muIoni: for mu+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 200 keV
Bragg : Emin= 0 meV Emax= 200 keV
BetheBloch : Emin= 200 keV Emax= 1 GeV
MuBetheBloch : Emin= 1 GeV Emax= 100 TeV
muBrems: for mu+ SubType=3
muBrems: for mu+ XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
MuBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
muPairProd: for mu+ SubType=4
muPairProd: for mu+ XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 21x1001 from 1 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
muPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1
CoulombScat: for mu+ XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for mu- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
muIoni: for mu- SubType=2
muIoni: for mu- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax= 200 keV
ICRU73QO : Emin= 0 meV Emax= 200 keV
BetheBloch : Emin= 200 keV Emax= 1 GeV
MuBetheBloch : Emin= 1 GeV Emax= 100 TeV
muBrems: for mu- SubType=3
muBrems: for mu- XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
MuBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
muPairProd: for mu- SubType=4
muPairProd: for mu- XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 21x1001 from 1 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
muPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1
CoulombScat: for mu- XStype:3 SubType=1 BuildTable=1
Used Lambda table of mu+
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for pi+ SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for pi+ SubType=2
hIoni: for pi+ XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax=297.505 keV
Bragg : Emin= 0 meV Emax=297.505 keV
BetheBloch : Emin=297.505 keV Emax= 100 TeV
hBrems: for pi+ SubType=3
hBrems: for pi+ XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for pi+ SubType=4
hPairProd: for pi+ XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 20x1001 from 1.11656 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1
CoulombScat: for pi+ XStype:3 SubType=1 BuildTable=1
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
msc: for pi- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
WentzelVIUni : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for pi- SubType=2
hIoni: for pi- XStype:1 SubType=2
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax=297.505 keV
ICRU73QO : Emin= 0 meV Emax=297.505 keV
BetheBloch : Emin=297.505 keV Emax= 100 TeV
hBrems: for pi- SubType=3
hBrems: for pi- XStype:1 SubType=3
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
===== EM models for the G4Region DefaultRegionForTheWorld ======
hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hBrem : Emin= 0 meV Emax= 100 TeV ModifiedMephi
hPairProd: for pi- SubType=4
hPairProd: for pi- XStype:1 SubType=4
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
Sampling table 20x1001 from 1.11656 GeV to 100 TeV
===== EM models for the G4Region DefaultRegionForTheWorld ======
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
hPairProd : Emin= 0 meV Emax= 100 TeV ModifiedMephi
CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1
CoulombScat: for pi- XStype:3 SubType=1 BuildTable=1
Used Lambda table of pi+
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
===== EM models for the G4Region DefaultRegionForTheWorld ======
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
eCoulombScattering : Emin= 0 meV Emax= 100 TeV
========= Table of registered couples ============================
@@ -542,51 +529,51 @@ N=17 V[N]={906770732717044781, 629165745432651234, 1235682547346241386, 68420008
Run terminated.
Run Summary
Number of events processed : 100
User=2.430000s Real=3.274242s Sys=0.010000s
User=2.310000s Real=2.389198s Sys=0.000000s
LOGITUDINAL PROFILE CUMULATIVE LOGITUDINAL PROFILE
bin Mean rms bin Mean rms
0.00-> 0.50 radl: 0.19% 0.10% 0-> 0.50 radl: 0.19% 0.10%
0.50-> 1.00 radl: 0.43% 0.25% 0-> 1.00 radl: 0.62% 0.31%
1.00-> 1.50 radl: 0.94% 0.47% 0-> 1.50 radl: 1.56% 0.72%
1.50-> 2.00 radl: 1.69% 0.76% 0-> 2.00 radl: 3.25% 1.34%
2.00-> 2.50 radl: 2.70% 1.19% 0-> 2.50 radl: 5.95% 2.39%
2.50-> 3.00 radl: 3.50% 1.39% 0-> 3.00 radl: 9.45% 3.53%
3.00-> 3.50 radl: 4.38% 1.45% 0-> 3.50 radl: 13.83% 4.71%
3.50-> 4.00 radl: 5.00% 1.52% 0-> 4.00 radl: 18.83% 5.86%
4.00-> 4.50 radl: 5.48% 1.53% 0-> 4.50 radl: 24.31% 6.93%
4.50-> 5.00 radl: 5.79% 1.39% 0-> 5.00 radl: 30.10% 7.81%
5.00-> 5.50 radl: 6.02% 1.37% 0-> 5.50 radl: 36.13% 8.48%
5.50-> 6.00 radl: 5.83% 1.33% 0-> 6.00 radl: 41.95% 8.92%
6.00-> 6.50 radl: 5.65% 1.18% 0-> 6.50 radl: 47.61% 9.19%
6.50-> 7.00 radl: 5.23% 1.14% 0-> 7.00 radl: 52.84% 9.24%
7.00-> 7.50 radl: 4.89% 1.06% 0-> 7.50 radl: 57.73% 9.13%
7.50-> 8.00 radl: 4.51% 1.02% 0-> 8.00 radl: 62.24% 8.90%
8.00-> 8.50 radl: 4.13% 1.11% 0-> 8.50 radl: 66.37% 8.47%
8.50-> 9.00 radl: 3.72% 0.97% 0-> 9.00 radl: 70.09% 8.04%
9.00-> 9.50 radl: 3.32% 1.00% 0-> 9.50 radl: 73.41% 7.52%
9.50->10.00 radl: 2.97% 0.95% 0->10.00 radl: 76.38% 7.00%
10.00->10.50 radl: 2.66% 0.94% 0->10.50 radl: 79.04% 6.50%
10.50->11.00 radl: 2.39% 1.01% 0->11.00 radl: 81.43% 5.94%
11.00->11.50 radl: 2.02% 0.83% 0->11.50 radl: 83.45% 5.42%
11.50->12.00 radl: 1.73% 0.76% 0->12.00 radl: 85.17% 4.93%
12.00->12.50 radl: 1.44% 0.69% 0->12.50 radl: 86.61% 4.50%
12.50->13.00 radl: 1.31% 0.61% 0->13.00 radl: 87.92% 4.08%
13.00->13.50 radl: 1.15% 0.58% 0->13.50 radl: 89.07% 3.66%
13.50->14.00 radl: 1.01% 0.58% 0->14.00 radl: 90.08% 3.26%
14.00->14.50 radl: 0.86% 0.58% 0->14.50 radl: 90.94% 2.83%
14.50->15.00 radl: 0.77% 0.55% 0->15.00 radl: 91.71% 2.42%
15.00->15.50 radl: 0.62% 0.42% 0->15.50 radl: 92.33% 2.09%
15.50->16.00 radl: 0.54% 0.36% 0->16.00 radl: 92.87% 1.85%
16.00->16.50 radl: 0.48% 0.36% 0->16.50 radl: 93.35% 1.61%
16.50->17.00 radl: 0.39% 0.30% 0->17.00 radl: 93.74% 1.42%
17.00->17.50 radl: 0.33% 0.26% 0->17.50 radl: 94.07% 1.28%
17.50->18.00 radl: 0.30% 0.26% 0->18.00 radl: 94.37% 1.12%
18.00->18.50 radl: 0.29% 0.21% 0->18.50 radl: 94.66% 1.00%
18.50->19.00 radl: 0.20% 0.17% 0->19.00 radl: 94.85% 0.93%
19.00->19.50 radl: 0.18% 0.16% 0->19.50 radl: 95.03% 0.85%
19.50->20.00 radl: 0.14% 0.16% 0->20.00 radl: 95.17% 0.79%
0.50-> 1.00 radl: 0.49% 0.31% 0-> 1.00 radl: 0.68% 0.38%
1.00-> 1.50 radl: 1.06% 0.70% 0-> 1.50 radl: 1.75% 1.01%
1.50-> 2.00 radl: 1.67% 0.85% 0-> 2.00 radl: 3.41% 1.77%
2.00-> 2.50 radl: 2.45% 1.15% 0-> 2.50 radl: 5.87% 2.75%
2.50-> 3.00 radl: 3.26% 1.28% 0-> 3.00 radl: 9.13% 3.76%
3.00-> 3.50 radl: 4.09% 1.48% 0-> 3.50 radl: 13.22% 4.93%
3.50-> 4.00 radl: 4.80% 1.56% 0-> 4.00 radl: 18.02% 6.09%
4.00-> 4.50 radl: 5.28% 1.61% 0-> 4.50 radl: 23.30% 7.23%
4.50-> 5.00 radl: 5.65% 1.50% 0-> 5.00 radl: 28.95% 8.24%
5.00-> 5.50 radl: 5.77% 1.42% 0-> 5.50 radl: 34.72% 9.03%
5.50-> 6.00 radl: 5.86% 1.23% 0-> 6.00 radl: 40.58% 9.44%
6.00-> 6.50 radl: 5.62% 1.21% 0-> 6.50 radl: 46.20% 9.59%
6.50-> 7.00 radl: 5.42% 1.12% 0-> 7.00 radl: 51.62% 9.46%
7.00-> 7.50 radl: 5.05% 1.00% 0-> 7.50 radl: 56.66% 9.18%
7.50-> 8.00 radl: 4.56% 1.07% 0-> 8.00 radl: 61.23% 8.81%
8.00-> 8.50 radl: 4.18% 1.03% 0-> 8.50 radl: 65.41% 8.45%
8.50-> 9.00 radl: 3.83% 1.04% 0-> 9.00 radl: 69.23% 8.02%
9.00-> 9.50 radl: 3.49% 0.91% 0-> 9.50 radl: 72.73% 7.50%
9.50->10.00 radl: 3.09% 0.94% 0->10.00 radl: 75.82% 6.87%
10.00->10.50 radl: 2.73% 0.94% 0->10.50 radl: 78.55% 6.20%
10.50->11.00 radl: 2.44% 0.89% 0->11.00 radl: 80.99% 5.54%
11.00->11.50 radl: 2.15% 0.76% 0->11.50 radl: 83.14% 5.04%
11.50->12.00 radl: 1.84% 0.70% 0->12.00 radl: 84.98% 4.56%
12.00->12.50 radl: 1.64% 0.65% 0->12.50 radl: 86.61% 4.09%
12.50->13.00 radl: 1.37% 0.63% 0->13.00 radl: 87.99% 3.65%
13.00->13.50 radl: 1.18% 0.60% 0->13.50 radl: 89.17% 3.20%
13.50->14.00 radl: 1.04% 0.55% 0->14.00 radl: 90.21% 2.78%
14.00->14.50 radl: 0.89% 0.46% 0->14.50 radl: 91.10% 2.44%
14.50->15.00 radl: 0.78% 0.45% 0->15.00 radl: 91.88% 2.09%
15.00->15.50 radl: 0.65% 0.40% 0->15.50 radl: 92.52% 1.84%
15.50->16.00 radl: 0.56% 0.36% 0->16.00 radl: 93.09% 1.60%
16.00->16.50 radl: 0.44% 0.28% 0->16.50 radl: 93.53% 1.41%
16.50->17.00 radl: 0.37% 0.28% 0->17.00 radl: 93.89% 1.22%
17.00->17.50 radl: 0.29% 0.23% 0->17.50 radl: 94.18% 1.09%
17.50->18.00 radl: 0.29% 0.20% 0->18.00 radl: 94.47% 0.99%
18.00->18.50 radl: 0.23% 0.17% 0->18.50 radl: 94.70% 0.89%
18.50->19.00 radl: 0.19% 0.16% 0->19.00 radl: 94.89% 0.85%
19.00->19.50 radl: 0.17% 0.15% 0->19.50 radl: 95.06% 0.78%
19.50->20.00 radl: 0.12% 0.13% 0->20.00 radl: 95.18% 0.73%
@@ -594,86 +581,86 @@ Run Summary
bin Mean rms bin Mean rms
0.00-> 0.10 radl: 17.79% 2.18% 0-> 0.10 radl: 17.79% 2.18%
0.10-> 0.20 radl: 13.38% 1.36% 0-> 0.20 radl: 31.16% 2.60%
0.20-> 0.30 radl: 10.13% 1.07% 0-> 0.30 radl: 41.30% 2.68%
0.30-> 0.40 radl: 7.81% 0.88% 0-> 0.40 radl: 49.11% 2.69%
0.40-> 0.50 radl: 5.96% 0.72% 0-> 0.50 radl: 55.07% 2.57%
0.50-> 0.60 radl: 4.83% 0.69% 0-> 0.60 radl: 59.91% 2.31%
0.60-> 0.70 radl: 3.89% 0.70% 0-> 0.70 radl: 63.80% 2.18%
0.70-> 0.80 radl: 3.21% 0.54% 0-> 0.80 radl: 67.01% 2.04%
0.80-> 0.90 radl: 2.73% 0.52% 0-> 0.90 radl: 69.74% 1.91%
0.90-> 1.00 radl: 2.32% 0.45% 0-> 1.00 radl: 72.06% 1.87%
1.00-> 1.10 radl: 2.03% 0.38% 0-> 1.10 radl: 74.08% 1.81%
1.10-> 1.20 radl: 1.81% 0.41% 0-> 1.20 radl: 75.90% 1.74%
1.20-> 1.30 radl: 1.57% 0.35% 0-> 1.30 radl: 77.46% 1.72%
1.30-> 1.40 radl: 1.46% 0.38% 0-> 1.40 radl: 78.92% 1.65%
1.40-> 1.50 radl: 1.32% 0.31% 0-> 1.50 radl: 80.24% 1.58%
1.50-> 1.60 radl: 1.21% 0.26% 0-> 1.60 radl: 81.46% 1.53%
1.60-> 1.70 radl: 1.05% 0.25% 0-> 1.70 radl: 82.51% 1.47%
1.70-> 1.80 radl: 1.00% 0.26% 0-> 1.80 radl: 83.51% 1.42%
1.80-> 1.90 radl: 0.88% 0.21% 0-> 1.90 radl: 84.39% 1.37%
1.90-> 2.00 radl: 0.78% 0.19% 0-> 2.00 radl: 85.17% 1.33%
2.00-> 2.10 radl: 0.78% 0.23% 0-> 2.10 radl: 85.95% 1.31%
2.10-> 2.20 radl: 0.67% 0.20% 0-> 2.20 radl: 86.63% 1.26%
2.20-> 2.30 radl: 0.63% 0.18% 0-> 2.30 radl: 87.25% 1.21%
2.30-> 2.40 radl: 0.58% 0.18% 0-> 2.40 radl: 87.84% 1.17%
2.40-> 2.50 radl: 0.55% 0.18% 0-> 2.50 radl: 88.39% 1.14%
2.50-> 2.60 radl: 0.51% 0.15% 0-> 2.60 radl: 88.89% 1.13%
2.60-> 2.70 radl: 0.49% 0.15% 0-> 2.70 radl: 89.38% 1.10%
2.70-> 2.80 radl: 0.45% 0.14% 0-> 2.80 radl: 89.83% 1.09%
2.80-> 2.90 radl: 0.41% 0.14% 0-> 2.90 radl: 90.24% 1.07%
2.90-> 3.00 radl: 0.39% 0.13% 0-> 3.00 radl: 90.63% 1.06%
3.00-> 3.10 radl: 0.38% 0.14% 0-> 3.10 radl: 91.01% 1.01%
3.10-> 3.20 radl: 0.35% 0.14% 0-> 3.20 radl: 91.36% 0.97%
3.20-> 3.30 radl: 0.33% 0.12% 0-> 3.30 radl: 91.69% 0.94%
3.30-> 3.40 radl: 0.32% 0.11% 0-> 3.40 radl: 92.01% 0.92%
3.40-> 3.50 radl: 0.29% 0.11% 0-> 3.50 radl: 92.29% 0.90%
3.50-> 3.60 radl: 0.26% 0.10% 0-> 3.60 radl: 92.56% 0.88%
3.60-> 3.70 radl: 0.25% 0.10% 0-> 3.70 radl: 92.81% 0.86%
3.70-> 3.80 radl: 0.25% 0.10% 0-> 3.80 radl: 93.06% 0.84%
3.80-> 3.90 radl: 0.23% 0.09% 0-> 3.90 radl: 93.29% 0.84%
3.90-> 4.00 radl: 0.22% 0.10% 0-> 4.00 radl: 93.51% 0.82%
4.00-> 4.10 radl: 0.20% 0.08% 0-> 4.10 radl: 93.72% 0.81%
4.10-> 4.20 radl: 0.20% 0.09% 0-> 4.20 radl: 93.92% 0.80%
4.20-> 4.30 radl: 0.21% 0.10% 0-> 4.30 radl: 94.13% 0.78%
4.30-> 4.40 radl: 0.18% 0.08% 0-> 4.40 radl: 94.31% 0.79%
4.40-> 4.50 radl: 0.16% 0.08% 0-> 4.50 radl: 94.48% 0.78%
4.50-> 4.60 radl: 0.16% 0.08% 0-> 4.60 radl: 94.64% 0.79%
4.60-> 4.70 radl: 0.16% 0.08% 0-> 4.70 radl: 94.80% 0.80%
4.70-> 4.80 radl: 0.14% 0.07% 0-> 4.80 radl: 94.94% 0.79%
4.80-> 4.90 radl: 0.13% 0.06% 0-> 4.90 radl: 95.06% 0.79%
4.90-> 5.00 radl: 0.11% 0.05% 0-> 5.00 radl: 95.17% 0.79%
0.00-> 0.10 radl: 17.67% 2.01% 0-> 0.10 radl: 17.67% 2.01%
0.10-> 0.20 radl: 13.33% 1.33% 0-> 0.20 radl: 31.00% 2.38%
0.20-> 0.30 radl: 10.23% 1.06% 0-> 0.30 radl: 41.23% 2.61%
0.30-> 0.40 radl: 7.76% 0.73% 0-> 0.40 radl: 49.00% 2.52%
0.40-> 0.50 radl: 5.99% 0.79% 0-> 0.50 radl: 54.99% 2.28%
0.50-> 0.60 radl: 4.73% 0.62% 0-> 0.60 radl: 59.71% 2.26%
0.60-> 0.70 radl: 3.79% 0.61% 0-> 0.70 radl: 63.50% 2.17%
0.70-> 0.80 radl: 3.18% 0.49% 0-> 0.80 radl: 66.68% 2.02%
0.80-> 0.90 radl: 2.76% 0.51% 0-> 0.90 radl: 69.44% 1.94%
0.90-> 1.00 radl: 2.38% 0.42% 0-> 1.00 radl: 71.82% 1.89%
1.00-> 1.10 radl: 2.09% 0.39% 0-> 1.10 radl: 73.91% 1.78%
1.10-> 1.20 radl: 1.78% 0.36% 0-> 1.20 radl: 75.69% 1.72%
1.20-> 1.30 radl: 1.58% 0.41% 0-> 1.30 radl: 77.27% 1.62%
1.30-> 1.40 radl: 1.44% 0.36% 0-> 1.40 radl: 78.71% 1.60%
1.40-> 1.50 radl: 1.27% 0.31% 0-> 1.50 radl: 79.99% 1.56%
1.50-> 1.60 radl: 1.15% 0.29% 0-> 1.60 radl: 81.14% 1.47%
1.60-> 1.70 radl: 1.04% 0.24% 0-> 1.70 radl: 82.17% 1.45%
1.70-> 1.80 radl: 0.96% 0.23% 0-> 1.80 radl: 83.13% 1.42%
1.80-> 1.90 radl: 0.86% 0.24% 0-> 1.90 radl: 83.99% 1.37%
1.90-> 2.00 radl: 0.84% 0.22% 0-> 2.00 radl: 84.83% 1.33%
2.00-> 2.10 radl: 0.77% 0.20% 0-> 2.10 radl: 85.59% 1.32%
2.10-> 2.20 radl: 0.71% 0.20% 0-> 2.20 radl: 86.30% 1.26%
2.20-> 2.30 radl: 0.65% 0.18% 0-> 2.30 radl: 86.95% 1.24%
2.30-> 2.40 radl: 0.61% 0.17% 0-> 2.40 radl: 87.56% 1.23%
2.40-> 2.50 radl: 0.57% 0.16% 0-> 2.50 radl: 88.13% 1.20%
2.50-> 2.60 radl: 0.59% 0.17% 0-> 2.60 radl: 88.71% 1.18%
2.60-> 2.70 radl: 0.51% 0.14% 0-> 2.70 radl: 89.22% 1.16%
2.70-> 2.80 radl: 0.47% 0.17% 0-> 2.80 radl: 89.70% 1.13%
2.80-> 2.90 radl: 0.43% 0.15% 0-> 2.90 radl: 90.13% 1.10%
2.90-> 3.00 radl: 0.42% 0.16% 0-> 3.00 radl: 90.55% 1.07%
3.00-> 3.10 radl: 0.38% 0.14% 0-> 3.10 radl: 90.93% 1.03%
3.10-> 3.20 radl: 0.36% 0.13% 0-> 3.20 radl: 91.28% 0.98%
3.20-> 3.30 radl: 0.34% 0.12% 0-> 3.30 radl: 91.62% 0.96%
3.30-> 3.40 radl: 0.31% 0.13% 0-> 3.40 radl: 91.93% 0.94%
3.40-> 3.50 radl: 0.30% 0.12% 0-> 3.50 radl: 92.23% 0.92%
3.50-> 3.60 radl: 0.28% 0.11% 0-> 3.60 radl: 92.51% 0.90%
3.60-> 3.70 radl: 0.27% 0.13% 0-> 3.70 radl: 92.78% 0.88%
3.70-> 3.80 radl: 0.26% 0.11% 0-> 3.80 radl: 93.04% 0.87%
3.80-> 3.90 radl: 0.24% 0.11% 0-> 3.90 radl: 93.28% 0.87%
3.90-> 4.00 radl: 0.22% 0.09% 0-> 4.00 radl: 93.49% 0.86%
4.00-> 4.10 radl: 0.22% 0.10% 0-> 4.10 radl: 93.72% 0.85%
4.10-> 4.20 radl: 0.21% 0.10% 0-> 4.20 radl: 93.93% 0.84%
4.20-> 4.30 radl: 0.21% 0.11% 0-> 4.30 radl: 94.14% 0.82%
4.30-> 4.40 radl: 0.18% 0.09% 0-> 4.40 radl: 94.32% 0.81%
4.40-> 4.50 radl: 0.16% 0.08% 0-> 4.50 radl: 94.48% 0.80%
4.50-> 4.60 radl: 0.16% 0.08% 0-> 4.60 radl: 94.64% 0.78%
4.60-> 4.70 radl: 0.15% 0.08% 0-> 4.70 radl: 94.79% 0.77%
4.70-> 4.80 radl: 0.15% 0.09% 0-> 4.80 radl: 94.94% 0.75%
4.80-> 4.90 radl: 0.13% 0.07% 0-> 4.90 radl: 95.07% 0.75%
4.90-> 5.00 radl: 0.11% 0.06% 0-> 5.00 radl: 95.18% 0.73%
===== SUMMARY =====
Total number of events: 100
Mean number of charged steps: 7276.64
Mean number of neutral steps: 4120.93
Mean number of charged steps: 7280.00
Mean number of neutral steps: 4125.01
energy deposit : 95.17 % E0 +- 0.79 % E0
charged traklen: 484.99 radl +- 4.47 radl
neutral traklen: 4227.07 radl +- 115.66 radl
energy deposit : 95.18 % E0 +- 0.73 % E0
charged traklen: 485.20 radl +- 4.35 radl
neutral traklen: 4230.19 radl +- 107.49 radl
90.00 % confinement: radius = 2.84 radl (2.53 cm )
90.00 % confinement: radius = 2.87 radl (2.56 cm )
<<<<ACCEPTANCE>>>> 100 events for Total Energy in Absorber
Edep: 0.951746 delEdep= 0.0027458 nrms= 3.34853
Erms: 0.00785038 delErms= -0.000349624 nrms= -0.426371
Edep: 0.951773 delEdep= 0.00277309 nrms= 3.38181
Erms: 0.00733693 delErms= -0.000863071 nrms= -1.05253
<<<<END>>>> IS NOT ACCEPTED
------- MixMaxRng engine status -------
Current state vector is:
mixmax state, file version 1.0
N=17 V[N]={851434535752920704, 888539176679964768, 315678774786267687, 921965249393603455, 431656495543229842, 1479312182916538139, 638552150678385958, 388339336885198511, 382715861733027773, 2262160206525218158, 832818704021629363, 139561543447700225, 1422938963155495486, 118603380232983629, 2056990588665516613, 841707889787774152, 236456093093737758} counter= 9sumtot= 374373078017028515
N=17 V[N]={1728475492522437111, 1896895982948760406, 1304518485618037050, 224361142566559494, 2022767543217034269, 1173031045218921983, 1053962588606076485, 1483636640976982168, 384773044070923900, 2282294343350227860, 2098205996758262652, 2021031915428187993, 891936359270330697, 654292916068645559, 631684707763250460, 498034599554538950, 1798597983505012765} counter= 9sumtot= 1395913704520944243
---------------------------------------
... write file : testem2.root - done
... close file : testem2.root - done
G4 kernel has come to Quit state.
================== Deleting memory pools ===================
Number of memory pools allocated: 9 of which, static: 0
Dynamic pools deleted: 9 / Total memory freed: 0.067 MB
Dynamic pools deleted: 9 / Total memory freed: 0.073 MB
============================================================
RunManagerKernel is deleted. Good bye :)
@@ -47,8 +47,6 @@ public:
virtual void BuildForMaster() const;
virtual G4VSteppingVerbose* InitializeSteppingVerbose() const;
private:
DetectorConstruction* fDetector;
@@ -1,65 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
//---------------------------------------------------------------------------
//
// ClassName: PhysListEm5DStandard
//
// Author: IgS 07.11.2017
//
// Modified:
// 17.11.2017 Created using PhysListEmStandard from V.Ivanchenko
//----------------------------------------------------------------------------
//
// This class provides construction of default EM standard physics which
// 5D generator model for gamma conversion
//
#ifndef PhysListEm5DStandard_h
#define PhysListEm5DStandard_h 1
#include "G4VPhysicsConstructor.hh"
#include "globals.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
class PhysListEm5DStandard : public G4VPhysicsConstructor
{
public:
explicit PhysListEm5DStandard(G4int ver=0, const G4String& name="");
virtual ~PhysListEm5DStandard();
virtual void ConstructParticle();
virtual void ConstructProcess();
private:
G4int fVerbose;
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#endif
@@ -45,13 +45,12 @@ class PhysicsList: public G4VModularPhysicsList
{
public:
PhysicsList();
~PhysicsList();
~PhysicsList() override;
virtual void ConstructParticle();
void ConstructParticle() override;
void ConstructProcess() override;
void AddPhysicsList(const G4String& name);
virtual void ConstructProcess();
void AddStepMax();
private:

Some files were not shown because too many files have changed in this diff Show More