Import Geant4 3.0.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-08 15:55:53 +02:00
parent e7d7193284
commit cfcb558cfe
3050 changed files with 91703 additions and 48310 deletions
@@ -1,4 +1,4 @@
# $Id: GNUmakefile,v 1.3 2000/05/17 10:56:35 maire Exp $
# $Id: GNUmakefile,v 1.4 2000/12/07 13:32:33 maire Exp $
# --------------------------------------------------------------
# GNUmakefile for examples module. Gabriele Cosmo, 06/04/98.
# --------------------------------------------------------------
@@ -16,11 +16,4 @@ all: lib bin
include $(G4INSTALL)/config/architecture.gmk
ifdef G4NOHIST
CPPFLAGS += -DG4NOHIST
else
LDFLAGS += -L$(CERN)/pro/lib
LOADLIBS += -lpacklib $(FCLIBS)
endif
include $(G4INSTALL)/config/binmake.gmk
@@ -1,4 +1,4 @@
$Id: History,v 1.3 2000/06/17 12:54:08 stesting Exp $
$Id: History,v 1.5 2000/12/07 13:32:34 maire Exp $
-------------------------------------------------------------------
=========================================================
@@ -14,6 +14,17 @@ track of all tags.
----------------------------------------------------------
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
07-12-00 mma (testem5-V02-00-03 & testem-noHist)
remove hbook histograms: GNUmakefile,runAction
06-12-00 mma (testem5-V02-00-02 & testem-withHist)
update of init.mac for new vis commands.
G4UItcsh in the main()
25th November 2000 Steve O'Neale (tagset210)
- update test outputs for min.delta energy cut and cut table
- Change in processes below ~ 1 per cent.
June 17, 2000 John Allison (testem5-V01-00-00)
- Updated TestEm5.out for geant4-01-01-ref-06.
@@ -5,24 +5,16 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: TestEm5.cc,v 1.3 1999/12/15 14:49:07 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// $Id: TestEm5.cc,v 1.4 2000/12/06 18:25:54 maire Exp $
// GEANT4 tag $Name: geant4-03-00 $
//
//
// --------------------------------------------------------------
// GEANT 4 - TestEm5
//
// For information related to this code contact:
// CERN, IT Division, ASD Group
// --------------------------------------------------------------
// Comments
//
//
// --------------------------------------------------------------
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
#include "G4RunManager.hh"
#include "G4UImanager.hh"
#include "G4UIterminal.hh"
#include "G4UItcsh.hh"
#include "Randomize.hh"
#ifdef G4VIS_USE
@@ -37,6 +29,8 @@
#include "Em5SteppingAction.hh"
#include "Em5SteppingVerbose.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
int main(int argc,char** argv) {
//choose the Random engine
@@ -80,7 +74,12 @@ int main(int argc,char** argv) {
if (argc==1) // Define UI terminal for interactive mode
{
G4UIsession * session = new G4UIterminal;
G4UIsession * session = 0;
#ifdef G4UI_USE_TCSH
session = new G4UIterminal(new G4UItcsh);
#else
session = new G4UIterminal();
#endif
UI->ApplyCommand("/control/execute init.mac");
session->SessionStart();
delete session;
@@ -101,3 +100,5 @@ int main(int argc,char** argv) {
return 0;
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
@@ -1,6 +1,6 @@
**********************************************
Geant4 version $Name: geant4-02-00 $
(10-Mar-2000)
Geant4 version $Name: geant4-03-00 $
(30-Jun-2000)
Copyright : Geant4 Collaboration
**********************************************
@@ -100,15 +100,15 @@ eIoni: delta cross sections from Moller+Bhabha. Good description from 1 KeV to
material min.delta energy(keV)
Beryllium 104.76
Aluminium 125.07
Silicon 116.08
liquidArgon 78.381
Iron 224.11
Copper 238.31
Gold 334.59
Lead 229.67
Water 81.518
Beryllium 104.75
Aluminium 125.06
Silicon 116.06
liquidArgon 78.362
Iron 224.07
Copper 238.25
Gold 334.85
Lead 229.56
Water 81.507
Air 0.27455
XenonGas 1.7521
CarbonicGas 0.54205
@@ -118,7 +118,8 @@ eIoni: delta cross sections from Moller+Bhabha. Good description from 1 KeV to
XenonMethanePropane 1.547
Galactic 0.25
eBrem: Total cross sections from a parametrisation. Good description from 10 KeV to 100 GeV.
eBrem: Total cross sections from a NEW parametrisation based on the EEDL data library.
Good description from 1 KeV to 100 GeV.
log scale extrapolation above 100 GeV
Gamma energy sampled from a parametrised formula.
PhysicsTables from 1 keV to 100 TeV in 100 bins.
@@ -154,15 +155,15 @@ msc: Tables of transport mean free paths.
material min.delta energy(keV)
Beryllium 104.76
Aluminium 125.07
Silicon 116.08
liquidArgon 78.381
Iron 224.11
Copper 238.31
Gold 334.59
Lead 229.67
Water 81.518
Beryllium 104.75
Aluminium 125.06
Silicon 116.06
liquidArgon 78.362
Iron 224.07
Copper 238.25
Gold 334.85
Lead 229.56
Water 81.507
Air 0.27455
XenonGas 1.7521
CarbonicGas 0.54205
@@ -177,26 +178,26 @@ hIoni: Knock-on electron cross sections .
delta ray energy sampled from differential Xsection.
PhysicsTables from 1 keV to 100 TeV in 100 bins.
============= The cut Energy ==============================
gamma e- mu- proton neutron
Cut in range 1 mm 1 mm 1 mm 1 mm
gamma e-
Cut in range 1 mm 1 mm
Cut in energy
Beryllium 1.99 keV 468 keV 4.32 MeV 11.4 MeV
Aluminium 6.91 keV 595 keV 5.04 MeV 13.2 MeV
Silicon 6.88 keV 546 keV 4.71 MeV 12.2 MeV
liquidArgon 6.15 keV 347 keV 3.24 MeV 8.31 MeV
Iron 20.7 keV 1.29 MeV 8.48 MeV 22 MeV
Copper 24.8 keV 1.39 MeV 8.98 MeV 23.1 MeV
Gold 112 keV 2.29 MeV 11.8 MeV 29.3 MeV
Lead 101 keV 1.36 MeV 8.48 MeV 20.9 MeV
Water 2.93 keV 351 keV 3.4 MeV 8.98 MeV
Air 250 eV 275 eV 48.8 keV 83.6 keV
XenonGas 250 eV 1.75 keV 80.4 keV 93.8 keV
CarbonicGas 250 eV 542 eV 67.6 keV 135 keV
ArgonCO2 250 eV 419 eV 53.7 keV 74.5 keV
NewArgonCO2 250 eV 419 eV 53.7 keV 74.5 keV
ArgonCH4 250 eV 369 eV 49.7 keV 59.1 keV
XenonMethanePropane 250 eV 1.55 keV 78.9 keV 101 keV
Galactic 250 eV 250 eV 250 eV 250 eV
Beryllium 1.99 keV 468 keV
Aluminium 6.91 keV 595 keV
Silicon 6.88 keV 546 keV
liquidArgon 6.15 keV 347 keV
Iron 20.7 keV 1.29 MeV
Copper 24.8 keV 1.39 MeV
Gold 112 keV 2.29 MeV
Lead 101 keV 1.36 MeV
Water 2.93 keV 351 keV
Air 250 eV 275 eV
XenonGas 250 eV 1.75 keV
CarbonicGas 250 eV 542 eV
ArgonCO2 250 eV 419 eV
NewArgonCO2 250 eV 419 eV
ArgonCH4 250 eV 369 eV
XenonMethanePropane 250 eV 1.55 keV
Galactic 250 eV 250 eV
===================================================
#
# Macro file for the initialization phase of "TestEm5.cc"
@@ -262,14 +263,14 @@ eIoni: delta cross sections from Moller+Bhabha. Good description from 1 KeV to
material min.delta energy(keV)
Beryllium 6.226
Aluminium 6.8788
Silicon 6.3418
liquidArgon 4.0987
Iron 11.402
Copper 11.941
Gold 14.391
Lead 9.9278
Beryllium 6.2257
Aluminium 6.878
Silicon 6.341
liquidArgon 4.0982
Iron 11.398
Copper 11.936
Gold 14.357
Lead 9.9052
Water 3.9978
Air 0.25
XenonGas 0.25
@@ -280,7 +281,8 @@ eIoni: delta cross sections from Moller+Bhabha. Good description from 1 KeV to
XenonMethanePropane 0.25
Galactic 0.25
eBrem: Total cross sections from a parametrisation. Good description from 10 KeV to 100 GeV.
eBrem: Total cross sections from a NEW parametrisation based on the EEDL data library.
Good description from 1 KeV to 100 GeV.
log scale extrapolation above 100 GeV
Gamma energy sampled from a parametrised formula.
PhysicsTables from 1 keV to 100 TeV in 100 bins.
@@ -316,14 +318,14 @@ msc: Tables of transport mean free paths.
material min.delta energy(keV)
Beryllium 6.226
Aluminium 6.8788
Silicon 6.3418
liquidArgon 4.0987
Iron 11.402
Copper 11.941
Gold 14.391
Lead 9.9278
Beryllium 6.2257
Aluminium 6.878
Silicon 6.341
liquidArgon 4.0982
Iron 11.398
Copper 11.936
Gold 14.357
Lead 9.9052
Water 3.9978
Air 0.25
XenonGas 0.25
@@ -339,26 +341,26 @@ hIoni: Knock-on electron cross sections .
delta ray energy sampled from differential Xsection.
PhysicsTables from 1 keV to 100 TeV in 100 bins.
============= The cut Energy ==============================
gamma e- mu- proton neutron
Cut in range 2.13 mm 7 mum 1 mm 1 mm
gamma e-
Cut in range 2.13 mm 7 mum
Cut in energy
Beryllium 2.47 keV 8.08 keV 4.32 MeV 11.4 MeV
Aluminium 9.83 keV 11.9 keV 5.04 MeV 13.2 MeV
Silicon 9.89 keV 10.2 keV 4.71 MeV 12.2 MeV
liquidArgon 8.97 keV 4.88 keV 3.24 MeV 8.31 MeV
Iron 30.6 keV 47.4 keV 8.48 MeV 22 MeV
Copper 37.1 keV 49.7 keV 8.98 MeV 23.1 MeV
Gold 146 keV 65.1 keV 11.8 MeV 29.3 MeV
Lead 123 keV 46.9 keV 8.48 MeV 20.9 MeV
Water 4.03 keV 4 keV 3.4 MeV 8.98 MeV
Air 250 eV 250 eV 48.8 keV 83.6 keV
XenonGas 250 eV 250 eV 80.4 keV 93.8 keV
CarbonicGas 250 eV 250 eV 67.6 keV 135 keV
ArgonCO2 250 eV 250 eV 53.7 keV 74.5 keV
NewArgonCO2 250 eV 250 eV 53.7 keV 74.5 keV
ArgonCH4 250 eV 250 eV 49.7 keV 59.1 keV
XenonMethanePropane 250 eV 250 eV 78.9 keV 101 keV
Galactic 250 eV 250 eV 250 eV 250 eV
Beryllium 2.47 keV 8.08 keV
Aluminium 9.83 keV 11.9 keV
Silicon 9.89 keV 10.2 keV
liquidArgon 8.97 keV 4.88 keV
Iron 30.6 keV 47.4 keV
Copper 37.1 keV 49.7 keV
Gold 146 keV 65.1 keV
Lead 123 keV 46.9 keV
Water 4.03 keV 4 keV
Air 250 eV 250 eV
XenonGas 250 eV 250 eV
CarbonicGas 250 eV 250 eV
ArgonCO2 250 eV 250 eV
NewArgonCO2 250 eV 250 eV
ArgonCH4 250 eV 250 eV
XenonMethanePropane 250 eV 250 eV
Galactic 250 eV 250 eV
===================================================
#
/gun/particle pi+
@@ -398,99 +400,99 @@ Start Run processing.
Run terminated.
Run Summary
Number of events processed : 100000
User=242.39s Real=259.71s Sys=14.95s
User=257.69s Real=286.45s Sys=14.71s
================== run summary =====================
end of Run TotNbofEvents = 100000
mean charged track length in absorber=0.0209265 +- 1.37984e-05 mm
mean charged track length in absorber=0.0209905 +- 1.66548e-05 mm
mean energy deposit in absorber=0.00675313 +- 2.06813e-05 MeV
mean energy deposit in absorber=0.00682286 +- 2.23919e-05 MeV
mean number of steps in absorber (charged) =0.03886 +- 0.000710985
mean number of steps in absorber (neutral) =0 +- 0
mean number of steps in absorber (charged) =0.04007 +- 0.000740165
mean number of steps in absorber (neutral) =5e-05 +- 2.23601e-05
mean number of charged secondaries = 0.03646 +- 0.000624425
mean number of charged secondaries = 0.03709 +- 0.000635093
mean number of neutral secondaries = 0 +- 0
mean number of neutral secondaries = 5e-05 +- 2.23601e-05
mean number of e-s =0.03646 and e+s =0
mean number of e-s =0.03709 and e+s =0
(number) transmission coeff=1 reflection coeff=0.49894
(number) transmission coeff=1 reflection coeff=0.50178
energy deposit distribution
#entries=100000 #underflows=0 #overflows=5844
#entries=100000 #underflows=0 #overflows=5815
bin nb Elow entries normalized
0 0 0 0
1 0.0002 0 0
2 0.0004 0 0
3 0.0006 0 0
4 0.0008 1 0.05
5 0.001 2 0.1
6 0.0012 6 0.3
7 0.0014 19 0.95
8 0.0016 57 2.85
9 0.0018 120 6
10 0.002 237 11.85
11 0.0022 417 20.85
12 0.0024 766 38.3
13 0.0026 1182 59.1
14 0.0028 1809 90.45
15 0.003 2458 122.9
16 0.0032 3111 155.55
17 0.0034 3716 185.8
18 0.0036 4281 214.05
19 0.0038 4566 228.3
20 0.004 4753 237.65
21 0.0042 4709 235.45
22 0.0044 4637 231.85
23 0.0046 4359 217.95
24 0.0048 4166 208.3
25 0.005 3758 187.9
26 0.0052 3518 175.9
27 0.0054 3163 158.15
28 0.0056 3008 150.4
29 0.0058 2749 137.45
30 0.006 2525 126.25
31 0.0062 2355 117.75
32 0.0064 2151 107.55
33 0.0066 1966 98.3
34 0.0068 1854 92.7
35 0.007 1789 89.45
36 0.0072 1684 84.2
37 0.0074 1548 77.4
38 0.0076 1408 70.4
39 0.0078 1338 66.9
40 0.008 1155 57.75
41 0.0082 1138 56.9
42 0.0084 1019 50.95
43 0.0086 978 48.9
44 0.0088 842 42.1
45 0.009 809 40.45
46 0.0092 727 36.35
47 0.0094 667 33.35
48 0.0096 658 32.9
49 0.0098 579 28.95
50 0.01 531 26.55
51 0.0102 550 27.5
52 0.0104 483 24.15
53 0.0106 430 21.5
54 0.0108 403 20.15
55 0.011 401 20.05
56 0.0112 386 19.3
57 0.0114 320 16
58 0.0116 313 15.65
59 0.0118 307 15.35
60 0.012 285 14.25
61 0.0122 271 13.55
62 0.0124 260 13
63 0.0126 231 11.55
64 0.0128 227 11.35
4 0.0008 0 0
5 0.001 4 0.2
6 0.0012 7 0.35
7 0.0014 9 0.45
8 0.0016 52 2.6
9 0.0018 104 5.2
10 0.002 232 11.6
11 0.0022 432 21.6
12 0.0024 751 37.55
13 0.0026 1268 63.4
14 0.0028 1785 89.25
15 0.003 2413 120.65
16 0.0032 3161 158.05
17 0.0034 3701 185.05
18 0.0036 4201 210.05
19 0.0038 4552 227.6
20 0.004 4729 236.45
21 0.0042 4816 240.8
22 0.0044 4543 227.15
23 0.0046 4361 218.05
24 0.0048 3999 199.95
25 0.005 3778 188.9
26 0.0052 3576 178.8
27 0.0054 3199 159.95
28 0.0056 2984 149.2
29 0.0058 2706 135.3
30 0.006 2445 122.25
31 0.0062 2400 120
32 0.0064 2238 111.9
33 0.0066 1984 99.2
34 0.0068 1911 95.55
35 0.007 1802 90.1
36 0.0072 1666 83.3
37 0.0074 1524 76.2
38 0.0076 1422 71.1
39 0.0078 1287 64.35
40 0.008 1235 61.75
41 0.0082 1180 59
42 0.0084 1042 52.1
43 0.0086 909 45.45
44 0.0088 880 44
45 0.009 805 40.25
46 0.0092 769 38.45
47 0.0094 680 34
48 0.0096 630 31.5
49 0.0098 624 31.2
50 0.01 545 27.25
51 0.0102 508 25.4
52 0.0104 482 24.1
53 0.0106 418 20.9
54 0.0108 428 21.4
55 0.011 403 20.15
56 0.0112 381 19.05
57 0.0114 353 17.65
58 0.0116 294 14.7
59 0.0118 304 15.2
60 0.012 276 13.8
61 0.0122 261 13.05
62 0.0124 249 12.45
63 0.0126 241 12.05
64 0.0128 246 12.3
Emp = 0.004 width= 0.003 MeV
Emp = 0.0042 width= 0.003 MeV
--------- Ranecu engine status ---------
Initial seed (index) = 0
Current couple of seeds = 1546919864, 265575626
Current couple of seeds = 1120554762, 1278607785
----------------------------------------
#
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5CalorHit.hh,v 1.2 1999/12/15 14:49:07 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5CalorimeterSD.hh,v 1.2 1999/12/15 14:49:07 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5DetectorConstruction.hh,v 1.2 1999/12/15 14:49:07 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5DetectorMessenger.hh,v 1.2 1999/12/15 14:49:07 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5EventAction.hh,v 1.2 1999/12/15 14:49:07 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5EventActionMessenger.hh,v 1.2 1999/12/15 14:49:08 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5PhysicsList.hh,v 1.2 1999/12/15 14:49:08 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5PhysicsListMessenger.hh,v 1.2 1999/12/15 14:49:08 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5PrimaryGeneratorAction.hh,v 1.2 1999/12/15 14:49:08 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5PrimaryGeneratorMessenger.hh,v 1.2 1999/12/15 14:49:08 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: Em5RunAction.hh,v 1.3 2000/01/20 15:34:39 maire Exp $
// GEANT4 tag $Name: geant4-02-00 $
// $Id: Em5RunAction.hh,v 1.4 2000/12/07 13:32:34 maire Exp $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -25,11 +25,6 @@
class Em5RunMessenger;
class G4Run;
#ifndef G4NOHIST
class HepTupleManager;
class HepHistogram;
#endif
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
class Em5RunAction : public G4UserRunAction
@@ -116,13 +111,6 @@ class Em5RunAction : public G4UserRunAction
G4String histName ;
#ifndef G4NOHIST
HepTupleManager* hbookManager;
HepHistogram *histo1, *histo2, *histo3, *histo4, *histo5 ;
HepHistogram *histo6, *histo7, *histo8, *histo9, *histo10;
HepHistogram *hi2bis;
#endif
G4double EnergySumAbs,EnergySquareSumAbs;
G4double tlSumAbs,tlsquareSumAbs;
G4double nStepSumCharged,nStepSum2Charged ;
@@ -7,7 +7,7 @@
// and all its terms.
//
// $Id: Em5RunMessenger.hh,v 1.2 1999/12/15 14:49:09 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5StepCut.hh,v 1.2 1999/12/15 14:49:09 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5SteppingAction.hh,v 1.2 1999/12/15 14:49:09 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5SteppingMessenger.hh,v 1.2 1999/12/15 14:49:09 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -5,20 +5,15 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: Em5SteppingVerbose.hh,v 1.3 2000/02/29 12:23:26 maire Exp $
// GEANT4 tag $Name: geant4-02-00 $
// $Id: Em5SteppingVerbose.hh,v 1.4 2000/12/06 18:25:55 maire Exp $
// GEANT4 tag $Name: geant4-03-00 $
//
//
//---------------------------------------------------------------
// This class manages the verbose outputs in G4SteppingManager.
// It inherits from G4SteppingVerbose.
// It shows how to extract informations during the tracking of a particle.
//
// Em5SteppingVerbose.hh
//
// Description:
// This class manages the vervose outputs in G4SteppingManager.
//
//
//
//---------------------------------------------------------------
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
class Em5SteppingVerbose;
@@ -27,16 +22,17 @@ class Em5SteppingVerbose;
#include "G4SteppingVerbose.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
class Em5SteppingVerbose : public G4SteppingVerbose {
public:
// Constructor/Destructor
Em5SteppingVerbose();
~Em5SteppingVerbose();
//
void StepInfo();
void TrackingStarted();
//
};
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5VisManager.hh,v 1.2 1999/12/15 14:49:09 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -9,25 +9,17 @@
# Create empty scene ("world" is default)
/vis/scene/create
#
# Add volume to scene
/vis/scene/add/volume
#
# Create a scene handler for a specific graphics system
# Edit the next line(s) to choose another graphic system
#
#/vis/sceneHandler/create DAWNFILE
/vis/sceneHandler/create OGLIX
#
# Create a viewer
/vis/viewer/create
#/vis/open DAWNFILE
/vis/open OGLIX
#
# Draw scene
/vis/scene/notifyHandlers
/vis/camera/zoom 1.4
/vis/drawVolume
#
# for drawing the tracks
# if too many tracks cause core dump => storeTrajectory 0
/tracking/storeTrajectory 1
/event/drawTracks charged
#
# Flush visualization
/vis/viewer/update
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5CalorHit.cc,v 1.2 1999/12/15 14:49:09 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5CalorimeterSD.cc,v 1.2 1999/12/15 14:49:09 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5DetectorConstruction.cc,v 1.4 2000/01/20 15:34:39 maire Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5DetectorMessenger.cc,v 1.2 1999/12/15 14:49:10 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5EventAction.cc,v 1.3 1999/12/15 14:49:10 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5EventActionMessenger.cc,v 1.2 1999/12/15 14:49:10 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5PhysicsList.cc,v 1.6 2000/05/24 16:13:21 maire Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5PhysicsListMessenger.cc,v 1.2 1999/12/15 14:49:10 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5PrimaryGeneratorAction.cc,v 1.2 1999/12/15 14:49:10 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5PrimaryGeneratorMessenger.cc,v 1.2 1999/12/15 14:49:10 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: Em5RunAction.cc,v 1.4 2000/01/20 15:34:40 maire Exp $
// GEANT4 tag $Name: geant4-02-00 $
// $Id: Em5RunAction.cc,v 1.5 2000/12/07 13:32:34 maire Exp $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -24,11 +24,6 @@
#include "Randomize.hh"
#ifndef G4NOHIST
#include "CLHEP/Hist/HBookFile.h"
#include <assert.h>
#endif
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
Em5RunAction::Em5RunAction()
@@ -36,12 +31,7 @@ Em5RunAction::Em5RunAction()
nbinTsec(0),nbinTh(0),nbinThback(0),nbinR(0),nbinGamma(0),nbinvertexz(0)
{
runMessenger = new Em5RunMessenger(this);
saveRndm = 1;
#ifndef G4NOHIST
histo1=0; histo2=0; histo3=0; histo4=0; histo5=0; histo6=0; histo7=0;
histo8=0; histo9=0; histo10=0;hi2bis=0;
#endif
saveRndm = 1;
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -49,98 +39,12 @@ Em5RunAction::Em5RunAction()
Em5RunAction::~Em5RunAction()
{
delete runMessenger;
#ifndef G4NOHIST
if(histo1) delete histo1 ;
if(histo2) {delete histo2 ; delete hi2bis;}
if(histo3) delete histo3 ;
if(histo4) delete histo4 ;
if(histo5) delete histo5 ;
if(histo6) delete histo6 ;
if(histo7) delete histo7 ;
if(histo8) delete histo8 ;
if(histo9) delete histo9 ;
if(histo10) delete histo10;
delete hbookManager;
#endif
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
void Em5RunAction::bookHisto()
{
#ifndef G4NOHIST
// init hbook
hbookManager = new HBookFile(histName, 68);
assert (hbookManager != 0);
// book histograms
if(nbinStep>0)
{
histo1 = hbookManager->histogram("number of steps/event"
,nbinStep,Steplow,Stephigh) ;
assert (histo1 != 0);
}
if(nbinEn>0)
{
histo2 = hbookManager->histogram("energy deposit in absorber(in MeV)"
,nbinEn,Enlow,Enhigh) ;
assert (histo2 != 0);
hi2bis = hbookManager->histogram("energy deposit: normalized distribution"
,nbinEn,Enlow,Enhigh) ;
assert (hi2bis != 0);
}
if(nbinTh>0)
{
histo3 = hbookManager->histogram("angle distribution at exit(deg)"
,nbinTh,Thlow/deg,Thhigh/deg) ;
assert (histo3 != 0);
}
if(nbinR>0)
{
histo4 = hbookManager->histogram("lateral distribution at exit(mm)"
,nbinR ,Rlow,Rhigh) ;
assert (histo4 != 0);
}
if(nbinTt>0)
{
histo5 = hbookManager->histogram("kinetic energy of the primary at exit(MeV)"
,nbinTt,Ttlow,Tthigh) ;
assert (histo5 != 0);
}
if(nbinThback>0)
{
histo6 = hbookManager->histogram("angle distribution of backscattered primaries(deg)"
,nbinThback,Thlowback/deg,Thhighback/deg) ;
assert (histo6 != 0);
}
if(nbinTb>0)
{
histo7 = hbookManager->histogram("kinetic energy of the backscattered primaries (MeV)"
,nbinTb,Tblow,Tbhigh) ;
assert (histo7 != 0);
}
if(nbinTsec>0)
{
histo8 = hbookManager->histogram("kinetic energy of the charged secondaries (MeV)"
,nbinTsec,Tseclow,Tsechigh) ;
assert (histo8 != 0);
}
if(nbinvertexz>0)
{
histo9 = hbookManager->histogram("z of secondary charged vertices(mm)"
,nbinvertexz ,zlow,zhigh) ;
assert (histo9 != 0);
}
if(nbinGamma>0)
{
histo10= hbookManager->histogram("kinetic energy of gammas escaping the absorber (MeV)"
// ,nbinGamma,ElowGamma,EhighGamma) ;
,nbinGamma,log10(ElowGamma),log10(EhighGamma)) ;
assert (histo10 != 0);
}
#endif
}
{}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -433,9 +337,7 @@ void Em5RunAction::EndOfRunAction(const G4Run* aRun)
for(G4int ien=0; ien<nbinEn; ien++)
{
E += dEn ;
#ifndef G4NOHIST
hi2bis->accumulate(E+0.5*dEn,distEn[ien]/TotNbofEvents);
#endif
if(distEn[ien]>fmax)
{
fmax=distEn[ien];
@@ -727,11 +629,6 @@ void Em5RunAction::EndOfRunAction(const G4Run* aRun)
if (G4VVisManager::GetConcreteInstance())
G4UImanager::GetUIpointer()->ApplyCommand("/vis/viewer/update");
#ifndef G4NOHIST
// Write histogram file
hbookManager->write();
#endif
// save Rndm status
if (saveRndm == 1)
@@ -810,9 +707,6 @@ void Em5RunAction::FillNbOfSteps(G4double ns)
ibin= bin ;
distStep[ibin] += 1. ;
}
#ifndef G4NOHIST
histo1->accumulate(ns);
#endif
}
}
@@ -837,9 +731,6 @@ void Em5RunAction::FillEn(G4double En)
ibin= bin ;
distEn[ibin] += 1. ;
}
#ifndef G4NOHIST
histo2->accumulate(En/MeV);
#endif
}
}
@@ -866,9 +757,6 @@ void Em5RunAction::FillTt(G4double En)
ibin= bin ;
distTt[ibin] += 1. ;
}
#ifndef G4NOHIST
histo5->accumulate(En/MeV);
#endif
}
}
@@ -895,9 +783,6 @@ void Em5RunAction::FillTb(G4double En)
ibin= bin ;
distTb[ibin] += 1. ;
}
#ifndef G4NOHIST
histo7->accumulate(En/MeV) ;
#endif
}
}
@@ -922,9 +807,6 @@ void Em5RunAction::FillTsec(G4double En)
ibin= bin ;
distTsec[ibin] += 1. ;
}
#ifndef G4NOHIST
histo8->accumulate(En/MeV) ;
#endif
}
}
@@ -949,9 +831,6 @@ void Em5RunAction::FillGammaSpectrum(G4double En)
ibin= bin ;
distGamma[ibin] += 1. ;
}
#ifndef G4NOHIST
histo10->accumulate(log10(En/MeV)) ;
#endif
}
}
@@ -990,10 +869,7 @@ void Em5RunAction::FillTh(G4double Th)
wg=0. ;
}
distTh[ibin] += wg ;
}
#ifndef G4NOHIST
histo3->accumulate(Th/deg, wg) ;
#endif
}
}
}
@@ -1031,11 +907,7 @@ void Em5RunAction::FillThBack(G4double Th)
}
distThback[ibin] += wg ;
}
#ifndef G4NOHIST
histo6->accumulate(Th/deg, wg) ;
#endif
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -1060,10 +932,7 @@ void Em5RunAction::FillR(G4double R )
bin = (R -Rlow)/dR ;
ibin= bin ;
distR[ibin] += 1. ;
}
#ifndef G4NOHIST
histo4->accumulate(R/mm) ;
#endif
}
}
}
@@ -1088,9 +957,6 @@ void Em5RunAction::Fillvertexz(G4double z )
ibin= bin ;
distvertexz[ibin] += 1. ;
}
#ifndef G4NOHIST
histo9->accumulate(z/mm) ;
#endif
}
}
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5RunMessenger.cc,v 1.2 1999/12/15 14:49:10 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5StepCut.cc,v 1.2 1999/12/15 14:49:10 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5SteppingAction.cc,v 1.2 1999/12/15 14:49:10 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5SteppingMessenger.cc,v 1.2 1999/12/15 14:49:10 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -5,39 +5,30 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: Em5SteppingVerbose.cc,v 1.3 2000/02/29 12:24:13 maire Exp $
// GEANT4 tag $Name: geant4-02-00 $
// $Id: Em5SteppingVerbose.cc,v 1.4 2000/12/06 18:25:55 maire Exp $
// GEANT4 tag $Name: geant4-03-00 $
//
//
//---------------------------------------------------------------
//
// Em5SteppingVerbose.cc
//
// Description:
// Implementation of the Em5SteppingVerbose class
//
//---------------------------------------------------------------
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
#include "Em5SteppingVerbose.hh"
#include "G4SteppingManager.hh"
#include "G4SteppingManager.hh"
#include "G4UnitsTable.hh"
////////////////////////////////////////////////
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
Em5SteppingVerbose::Em5SteppingVerbose()
////////////////////////////////////////////////
{
}
{}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
//////////////////////////////////////////////////
Em5SteppingVerbose::~Em5SteppingVerbose()
//////////////////////////////////////////////////
{
}
{}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
/////////////////////////////////////////
void Em5SteppingVerbose::StepInfo()
/////////////////////////////////////////
{
CopyState();
@@ -124,11 +115,11 @@ void Em5SteppingVerbose::StepInfo()
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
////////////////////////////////////////////////
void Em5SteppingVerbose::TrackingStarted()
////////////////////////////////////////////////
{
CopyState();
@@ -163,4 +154,6 @@ G4int prec = G4cout.precision(3);
G4cout << G4std::setw(10) << "initStep" << G4endl;
}
G4cout.precision(prec);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: Em5VisManager.cc,v 1.2 1999/12/15 14:49:11 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
//
// John Allison 24th January 1998.