Import Geant4 11.2.0 source tree

This commit is contained in:
Gabriele Cosmo
2023-12-08 10:43:34 +01:00
parent dd1f179cda
commit 860a2b92bf
3962 changed files with 139318 additions and 164259 deletions
+1 -1
View File
@@ -1,7 +1,7 @@
#----------------------------------------------------------------------------
# Setup the project
#
cmake_minimum_required(VERSION 3.16...3.21)
cmake_minimum_required(VERSION 3.16...3.27)
project(B2a)
#----------------------------------------------------------------------------
+10 -8
View File
@@ -59,29 +59,31 @@ int main(int argc,char** argv)
// Construct the default run manager
//
auto* runManager =
auto runManager =
G4RunManagerFactory::CreateRunManager(G4RunManagerType::Default);
// Set mandatory initialization classes
//
runManager->SetUserInitialization(new B2a::DetectorConstruction());
G4VModularPhysicsList* physicsList = new FTFP_BERT;
auto physicsList = new FTFP_BERT;
physicsList->RegisterPhysics(new G4StepLimiterPhysics());
runManager->SetUserInitialization(physicsList);
// Set user action classes
runManager->SetUserInitialization(new B2::ActionInitialization());
// Initialize visualization
//
G4VisManager* visManager = new G4VisExecutive;
// G4VisExecutive can take a verbosity argument - see /vis/verbose guidance.
// G4VisManager* visManager = new G4VisExecutive("Quiet");
// Initialize visualization with the default graphics system
auto visManager = new G4VisExecutive(argc, argv);
// Constructors can also take optional arguments:
// - a graphics system of choice, eg. "OGL"
// - and a verbosity argument - see /vis/verbose guidance.
// auto visManager = new G4VisExecutive(argc, argv, "OGL", "Quiet");
// auto visManager = new G4VisExecutive("Quiet");
visManager->Initialize();
// Get the pointer to the User Interface manager
G4UImanager* UImanager = G4UImanager::GetUIpointer();
auto UImanager = G4UImanager::GetUIpointer();
// Process macro or start UI session
//
+247 -384
View File
@@ -11,7 +11,7 @@ Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Fo
**************************************************************
Geant4 version Name: geant4-11-01-ref-06 (30-June-2023)
Geant4 version Name: geant4-11-02-ref-00 (8-December-2023)
Copyright : Geant4 Collaboration
References : NIM A 506 (2003), 250-303
: IEEE-TNS 53 (2006), 270-278
@@ -48,6 +48,10 @@ Registered graphics systems are:
TOOLSSG_XT_ZB (TSG_XT_ZB, TSGXtZB)
TOOLSSG_QT_GLES (TSG_QT_GLES, TSGQt, TSG)
TOOLSSG_QT_ZB (TSG_QT_ZB, TSGQtZB)
Default graphics system is: TSG_OFFSCREEN (based on batch session).
Default window size hint is: 600x600-0+0 (based on G4VisManager initialisation).
Note: Parameters specified on the command line will override these defaults.
Use "vis/open" without parameters to get these defaults.
Registering model factories...
@@ -594,384 +598,243 @@ CoulombScat: for pi- XStype:1 SubType=1 BuildTable=1
====================================================================
HADRONIC PROCESSES SUMMARY (verbose level 1)
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for neutron
Process: hadElastic
Model: hElasticCHIPS: 0 eV ---> 100 TeV
Cr_sctns: G4NeutronElasticXS: 0 eV ---> 100 TeV
Process: neutronInelastic
Model: FTFP: 3 GeV ---> 100 TeV
Model: BertiniCascade: 0 eV ---> 6 GeV
Cr_sctns: G4NeutronInelasticXS: 0 eV ---> 100 TeV
Process: nCapture
Model: nRadCapture: 0 eV ---> 100 TeV
Cr_sctns: G4NeutronCaptureXS: 0 eV ---> 100 TeV
Process: nKiller
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for B-
Process: hadElastic
Model: hElasticLHEP: 0 eV ---> 100 TeV
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
Process: B-Inelastic
Model: FTFP: 0 eV ---> 100 TeV
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for D-
Process: hadElastic
Model: hElasticLHEP: 0 eV ---> 100 TeV
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
Process: D-Inelastic
Model: FTFP: 0 eV ---> 100 TeV
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for GenericIon
Process: ionInelastic
Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n
Model: FTFP: 3 GeV/n ---> 100 TeV/n
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for He3
Process: hadElastic
Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV
Process: He3Inelastic
Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n
Model: FTFP: 3 GeV/n ---> 100 TeV/n
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for alpha
Process: hadElastic
Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV
Process: alphaInelastic
Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n
Model: FTFP: 3 GeV/n ---> 100 TeV/n
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for anti_He3
Process: hadElastic
Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n
Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
Process: anti_He3Inelastic
Model: FTFP: 0 eV /n ---> 100 TeV/n
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
Process: hFritiofCaptureAtRest
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for anti_alpha
Process: hadElastic
Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n
Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
Process: anti_alphaInelastic
Model: FTFP: 0 eV /n ---> 100 TeV/n
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
Process: hFritiofCaptureAtRest
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for anti_deuteron
Process: hadElastic
Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n
Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
Process: anti_deuteronInelastic
Model: FTFP: 0 eV /n ---> 100 TeV/n
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
Process: hFritiofCaptureAtRest
---------------------------------------------------
-------------------------------------------------------------------------
Hadronic Processes for anti_hypertriton
Process: hFritiofCaptureAtRest
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for anti_lambda
Process: hadElastic
Model: hElasticLHEP: 0 eV ---> 100 TeV
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
Process: anti_lambdaInelastic
Model: FTFP: 0 eV ---> 100 TeV
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
Process: hFritiofCaptureAtRest
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for anti_neutron
Process: hadElastic
Model: hElasticLHEP: 0 eV ---> 100.1 MeV
Model: AntiAElastic: 100 MeV ---> 100 TeV
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
Process: anti_neutronInelastic
Model: FTFP: 0 eV ---> 100 TeV
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
Process: hFritiofCaptureAtRest
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for anti_proton
Process: hadElastic
Model: hElasticLHEP: 0 eV ---> 100.1 MeV
Model: AntiAElastic: 100 MeV ---> 100 TeV
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
Process: anti_protonInelastic
Model: FTFP: 0 eV ---> 100 TeV
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
Process: hFritiofCaptureAtRest
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for anti_triton
Process: hadElastic
Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n
Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
Process: anti_tritonInelastic
Model: FTFP: 0 eV /n ---> 100 TeV/n
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
Process: hFritiofCaptureAtRest
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for deuteron
Process: hadElastic
Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV
Process: dInelastic
Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n
Model: FTFP: 3 GeV/n ---> 100 TeV/n
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for e+
Process: positronNuclear
Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV
Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for e-
Process: electronNuclear
Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV
Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for gamma
Process: photonNuclear
Model: GammaNPreco: 0 eV ---> 200 MeV
Model: BertiniCascade: 199 MeV ---> 6 GeV
Model: TheoFSGenerator: 3 GeV ---> 100 TeV
Cr_sctns: GammaNuclearXS: 0 eV ---> 100 TeV
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for kaon+
Process: hadElastic
Model: hElasticLHEP: 0 eV ---> 100 TeV
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
Process: kaon+Inelastic
Model: FTFP: 3 GeV ---> 100 TeV
Model: BertiniCascade: 0 eV ---> 6 GeV
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for kaon-
Process: hadElastic
Model: hElasticLHEP: 0 eV ---> 100 TeV
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
Process: kaon-Inelastic
Model: FTFP: 3 GeV ---> 100 TeV
Model: BertiniCascade: 0 eV ---> 6 GeV
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
Process: hBertiniCaptureAtRest
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for lambda
Process: hadElastic
Model: hElasticLHEP: 0 eV ---> 100 TeV
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
Process: lambdaInelastic
Model: FTFP: 3 GeV ---> 100 TeV
Model: BertiniCascade: 0 eV ---> 6 GeV
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for mu+
Process: muonNuclear
Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV
Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for mu-
Process: muonNuclear
Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV
Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV
Process: muMinusCaptureAtRest
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for pi+
Process: hadElastic
Model: hElasticGlauber: 0 eV ---> 100 TeV
Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV
Process: pi+Inelastic
Model: FTFP: 3 GeV ---> 100 TeV
Model: BertiniCascade: 0 eV ---> 6 GeV
Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for pi-
Process: hadElastic
Model: hElasticGlauber: 0 eV ---> 100 TeV
Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV
Process: pi-Inelastic
Model: FTFP: 3 GeV ---> 100 TeV
Model: BertiniCascade: 0 eV ---> 6 GeV
Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV
Process: hBertiniCaptureAtRest
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for proton
Process: hadElastic
Model: hElasticCHIPS: 0 eV ---> 100 TeV
Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV
Process: protonInelastic
Model: FTFP: 3 GeV ---> 100 TeV
Model: BertiniCascade: 0 eV ---> 6 GeV
Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for sigma-
Process: hadElastic
Model: hElasticLHEP: 0 eV ---> 100 TeV
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
Process: sigma-Inelastic
Model: FTFP: 3 GeV ---> 100 TeV
Model: BertiniCascade: 0 eV ---> 6 GeV
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
Process: hBertiniCaptureAtRest
---------------------------------------------------
-----------------------------------------------------------------------
Hadronic Processes for triton
Process: hadElastic
Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV
Process: tInelastic
Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n
Model: FTFP: 3 GeV/n ---> 100 TeV/n
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV
================================================================
=======================================================================
====== Geant4 Native Pre-compound Model Parameters ========
=======================================================================
@@ -1017,35 +880,35 @@ See commands in /vis/modeling/trajectories/ for other options.
>>> Event: 3
0 hits stored in this event
>>> Event: 4
32 hits stored in this event
0 hits stored in this event
>>> Event: 5
0 hits stored in this event
>>> Event: 6
0 hits stored in this event
>>> Event: 7
0 hits stored in this event
55 hits stored in this event
>>> Event: 8
0 hits stored in this event
38 hits stored in this event
>>> Event: 9
41 hits stored in this event
105 hits stored in this event
>>> Event: 10
63 hits stored in this event
>>> Event: 11
0 hits stored in this event
>>> Event: 11
9 hits stored in this event
>>> Event: 12
0 hits stored in this event
>>> Event: 13
107 hits stored in this event
93 hits stored in this event
>>> Event: 14
0 hits stored in this event
22 hits stored in this event
>>> Event: 15
0 hits stored in this event
>>> Event: 16
7 hits stored in this event
0 hits stored in this event
>>> Event: 17
0 hits stored in this event
>>> Event: 18
0 hits stored in this event
49 hits stored in this event
>>> Event: 19
0 hits stored in this event
>>> Event: 20
@@ -1053,27 +916,27 @@ See commands in /vis/modeling/trajectories/ for other options.
>>> Event: 21
0 hits stored in this event
>>> Event: 22
0 hits stored in this event
40 hits stored in this event
>>> Event: 23
0 hits stored in this event
165 hits stored in this event
>>> Event: 24
0 hits stored in this event
>>> Event: 25
0 hits stored in this event
>>> Event: 26
66 hits stored in this event
99 hits stored in this event
>>> Event: 27
0 hits stored in this event
78 hits stored in this event
>>> Event: 28
0 hits stored in this event
131 hits stored in this event
>>> Event: 29
0 hits stored in this event
>>> Event: 30
0 hits stored in this event
87 hits stored in this event
>>> Event: 31
0 hits stored in this event
>>> Event: 32
0 hits stored in this event
42 hits stored in this event
>>> Event: 33
0 hits stored in this event
>>> Event: 34
@@ -1083,7 +946,7 @@ See commands in /vis/modeling/trajectories/ for other options.
>>> Event: 36
0 hits stored in this event
>>> Event: 37
52 hits stored in this event
0 hits stored in this event
>>> Event: 38
0 hits stored in this event
>>> Event: 39
@@ -1109,13 +972,13 @@ See commands in /vis/modeling/trajectories/ for other options.
>>> Event: 49
0 hits stored in this event
>>> Event: 50
149 hits stored in this event
0 hits stored in this event
>>> Event: 51
0 hits stored in this event
>>> Event: 52
0 hits stored in this event
>>> Event: 53
0 hits stored in this event
12 hits stored in this event
>>> Event: 54
0 hits stored in this event
>>> Event: 55
@@ -1137,7 +1000,7 @@ See commands in /vis/modeling/trajectories/ for other options.
>>> Event: 63
0 hits stored in this event
>>> Event: 64
0 hits stored in this event
85 hits stored in this event
>>> Event: 65
0 hits stored in this event
>>> Event: 66
@@ -1153,7 +1016,7 @@ See commands in /vis/modeling/trajectories/ for other options.
>>> Event: 71
0 hits stored in this event
>>> Event: 72
73 hits stored in this event
0 hits stored in this event
>>> Event: 73
0 hits stored in this event
>>> Event: 74
@@ -1163,25 +1026,25 @@ See commands in /vis/modeling/trajectories/ for other options.
>>> Event: 76
0 hits stored in this event
>>> Event: 77
1 hits stored in this event
0 hits stored in this event
>>> Event: 78
0 hits stored in this event
>>> Event: 79
0 hits stored in this event
139 hits stored in this event
>>> Event: 80
0 hits stored in this event
>>> Event: 81
16 hits stored in this event
0 hits stored in this event
>>> Event: 82
145 hits stored in this event
0 hits stored in this event
>>> Event: 83
0 hits stored in this event
>>> Event: 84
0 hits stored in this event
>>> Event: 85
0 hits stored in this event
20 hits stored in this event
>>> Event: 86
0 hits stored in this event
94 hits stored in this event
>>> Event: 87
0 hits stored in this event
>>> Event: 88
@@ -1189,15 +1052,15 @@ See commands in /vis/modeling/trajectories/ for other options.
>>> Event: 89
0 hits stored in this event
>>> Event: 90
28 hits stored in this event
0 hits stored in this event
>>> Event: 91
0 hits stored in this event
>>> Event: 92
0 hits stored in this event
30 hits stored in this event
>>> Event: 93
5 hits stored in this event
0 hits stored in this event
>>> Event: 94
54 hits stored in this event
0 hits stored in this event
>>> Event: 95
0 hits stored in this event
>>> Event: 96
@@ -1211,205 +1074,205 @@ See commands in /vis/modeling/trajectories/ for other options.
### Run 1 starts.
--> Event 0 starts.
>>> Event: 0
88 hits stored in this event
>>> Event: 1
110 hits stored in this event
>>> Event: 2
60 hits stored in this event
>>> Event: 3
263 hits stored in this event
>>> Event: 4
760 hits stored in this event
>>> Event: 5
540 hits stored in this event
>>> Event: 6
529 hits stored in this event
>>> Event: 7
112 hits stored in this event
>>> Event: 8
81 hits stored in this event
>>> Event: 9
100 hits stored in this event
>>> Event: 10
81 hits stored in this event
>>> Event: 11
93 hits stored in this event
>>> Event: 12
82 hits stored in this event
>>> Event: 13
66 hits stored in this event
>>> Event: 14
300 hits stored in this event
>>> Event: 15
71 hits stored in this event
>>> Event: 16
462 hits stored in this event
>>> Event: 17
368 hits stored in this event
>>> Event: 18
169 hits stored in this event
>>> Event: 19
60 hits stored in this event
>>> Event: 20
26237 hits stored in this event
>>> Event: 21
85 hits stored in this event
>>> Event: 22
92 hits stored in this event
>>> Event: 23
148 hits stored in this event
>>> Event: 24
3163 hits stored in this event
>>> Event: 25
79 hits stored in this event
>>> Event: 26
150 hits stored in this event
>>> Event: 27
77 hits stored in this event
>>> Event: 28
541 hits stored in this event
>>> Event: 29
2445 hits stored in this event
>>> Event: 30
135 hits stored in this event
>>> Event: 31
132 hits stored in this event
>>> Event: 32
146 hits stored in this event
>>> Event: 33
102 hits stored in this event
>>> Event: 34
62 hits stored in this event
>>> Event: 35
109 hits stored in this event
>>> Event: 36
261 hits stored in this event
>>> Event: 37
261 hits stored in this event
>>> Event: 38
57 hits stored in this event
>>> Event: 39
68 hits stored in this event
>>> Event: 40
85 hits stored in this event
>>> Event: 41
94 hits stored in this event
>>> Event: 42
131 hits stored in this event
>>> Event: 43
178 hits stored in this event
>>> Event: 44
2918 hits stored in this event
>>> Event: 45
1679 hits stored in this event
>>> Event: 46
55 hits stored in this event
>>> Event: 47
90 hits stored in this event
>>> Event: 48
103 hits stored in this event
>>> Event: 49
191 hits stored in this event
>>> Event: 50
614 hits stored in this event
>>> Event: 51
121 hits stored in this event
>>> Event: 52
143 hits stored in this event
>>> Event: 53
54 hits stored in this event
>>> Event: 1
131 hits stored in this event
>>> Event: 2
77 hits stored in this event
>>> Event: 3
140 hits stored in this event
>>> Event: 4
74 hits stored in this event
>>> Event: 5
140 hits stored in this event
>>> Event: 6
106 hits stored in this event
>>> Event: 7
2043 hits stored in this event
>>> Event: 8
973 hits stored in this event
>>> Event: 9
114 hits stored in this event
>>> Event: 10
231 hits stored in this event
>>> Event: 11
236 hits stored in this event
>>> Event: 12
60 hits stored in this event
>>> Event: 13
82 hits stored in this event
>>> Event: 14
613 hits stored in this event
>>> Event: 15
112 hits stored in this event
>>> Event: 16
175 hits stored in this event
>>> Event: 17
733 hits stored in this event
>>> Event: 18
518 hits stored in this event
>>> Event: 19
69 hits stored in this event
>>> Event: 20
67 hits stored in this event
>>> Event: 21
74 hits stored in this event
>>> Event: 22
67 hits stored in this event
>>> Event: 23
142 hits stored in this event
>>> Event: 24
127 hits stored in this event
>>> Event: 25
95 hits stored in this event
>>> Event: 26
238 hits stored in this event
>>> Event: 27
88 hits stored in this event
>>> Event: 28
75 hits stored in this event
>>> Event: 29
88 hits stored in this event
>>> Event: 30
240 hits stored in this event
>>> Event: 31
839 hits stored in this event
>>> Event: 32
107 hits stored in this event
>>> Event: 33
80 hits stored in this event
>>> Event: 34
117 hits stored in this event
>>> Event: 35
73 hits stored in this event
>>> Event: 36
88 hits stored in this event
>>> Event: 37
59 hits stored in this event
>>> Event: 38
128 hits stored in this event
>>> Event: 39
52 hits stored in this event
>>> Event: 40
93 hits stored in this event
>>> Event: 41
91 hits stored in this event
>>> Event: 42
1050 hits stored in this event
>>> Event: 43
136 hits stored in this event
>>> Event: 44
775 hits stored in this event
>>> Event: 45
99 hits stored in this event
>>> Event: 46
94 hits stored in this event
>>> Event: 47
100 hits stored in this event
>>> Event: 48
101 hits stored in this event
>>> Event: 49
122 hits stored in this event
>>> Event: 50
74 hits stored in this event
>>> Event: 51
104 hits stored in this event
>>> Event: 52
68 hits stored in this event
>>> Event: 53
257 hits stored in this event
>>> Event: 54
70 hits stored in this event
110 hits stored in this event
>>> Event: 55
108 hits stored in this event
537 hits stored in this event
>>> Event: 56
82 hits stored in this event
>>> Event: 57
146 hits stored in this event
1093 hits stored in this event
>>> Event: 58
134 hits stored in this event
237 hits stored in this event
>>> Event: 59
58 hits stored in this event
95 hits stored in this event
>>> Event: 60
78 hits stored in this event
221 hits stored in this event
>>> Event: 61
199 hits stored in this event
168 hits stored in this event
>>> Event: 62
83 hits stored in this event
95 hits stored in this event
>>> Event: 63
112 hits stored in this event
216 hits stored in this event
>>> Event: 64
83 hits stored in this event
80 hits stored in this event
>>> Event: 65
90 hits stored in this event
>>> Event: 66
386 hits stored in this event
>>> Event: 67
73 hits stored in this event
>>> Event: 68
68 hits stored in this event
>>> Event: 69
197 hits stored in this event
>>> Event: 70
750 hits stored in this event
>>> Event: 71
77 hits stored in this event
>>> Event: 72
182 hits stored in this event
>>> Event: 73
94 hits stored in this event
>>> Event: 74
115 hits stored in this event
>>> Event: 75
107 hits stored in this event
>>> Event: 76
81 hits stored in this event
>>> Event: 77
74 hits stored in this event
>>> Event: 78
70 hits stored in this event
>>> Event: 79
72 hits stored in this event
>>> Event: 80
693 hits stored in this event
>>> Event: 81
75 hits stored in this event
>>> Event: 82
56 hits stored in this event
>>> Event: 83
82 hits stored in this event
>>> Event: 84
66 hits stored in this event
>>> Event: 85
73 hits stored in this event
>>> Event: 86
102 hits stored in this event
>>> Event: 87
75 hits stored in this event
>>> Event: 88
71 hits stored in this event
>>> Event: 89
491 hits stored in this event
>>> Event: 90
282 hits stored in this event
>>> Event: 91
87 hits stored in this event
>>> Event: 92
219 hits stored in this event
>>> Event: 93
140 hits stored in this event
>>> Event: 94
144 hits stored in this event
>>> Event: 95
>>> Event: 66
244 hits stored in this event
>>> Event: 67
63 hits stored in this event
>>> Event: 68
96 hits stored in this event
>>> Event: 69
78 hits stored in this event
>>> Event: 70
181 hits stored in this event
>>> Event: 96
1980 hits stored in this event
>>> Event: 97
59 hits stored in this event
>>> Event: 98
125 hits stored in this event
>>> Event: 99
>>> Event: 71
197 hits stored in this event
>>> Event: 72
725 hits stored in this event
>>> Event: 73
885 hits stored in this event
>>> Event: 74
70 hits stored in this event
>>> Event: 75
89 hits stored in this event
>>> Event: 76
534 hits stored in this event
>>> Event: 77
5020 hits stored in this event
>>> Event: 78
258 hits stored in this event
>>> Event: 79
561 hits stored in this event
>>> Event: 80
111 hits stored in this event
>>> Event: 81
93 hits stored in this event
>>> Event: 82
106 hits stored in this event
>>> Event: 83
102 hits stored in this event
>>> Event: 84
110 hits stored in this event
>>> Event: 85
102 hits stored in this event
>>> Event: 86
85 hits stored in this event
>>> Event: 87
79 hits stored in this event
>>> Event: 88
63 hits stored in this event
>>> Event: 89
47 hits stored in this event
>>> Event: 90
401 hits stored in this event
>>> Event: 91
76 hits stored in this event
>>> Event: 92
73 hits stored in this event
>>> Event: 93
67 hits stored in this event
>>> Event: 94
319 hits stored in this event
>>> Event: 95
124 hits stored in this event
>>> Event: 96
133 hits stored in this event
>>> Event: 97
1109 hits stored in this event
>>> Event: 98
425 hits stored in this event
>>> Event: 99
91 hits stored in this event
### Run 2 starts.
--> Event 0 starts.
@@ -56,9 +56,6 @@ class PrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction
G4ParticleGun* GetParticleGun() {return fParticleGun;}
// Set methods
void SetRandomFlag(G4bool );
private:
G4ParticleGun* fParticleGun = nullptr; // G4 particle gun
};
@@ -194,8 +194,8 @@ G4VPhysicalVolume* DetectorConstruction::DefineVolumes()
// Visualization attributes
auto boxVisAtt = new G4VisAttributes(G4Colour(1.0, 1.0, 1.0));
auto chamberVisAtt = new G4VisAttributes(G4Colour(1.0, 1.0, 0.0));
G4VisAttributes boxVisAtt(G4Colour::White());
G4VisAttributes chamberVisAtt(G4Colour::Yellow());
worldLV ->SetVisAttributes(boxVisAtt);
fLogicTarget ->SetVisAttributes(boxVisAtt);
+1 -1
View File
@@ -50,7 +50,7 @@ void EventAction::EndOfEventAction(const G4Event* event)
// get number of stored trajectories
G4TrajectoryContainer* trajectoryContainer = event->GetTrajectoryContainer();
G4int n_trajectories = 0;
std::size_t n_trajectories = 0;
if (trajectoryContainer) n_trajectories = trajectoryContainer->entries();
// periodic printing
+1 -2
View File
@@ -58,8 +58,7 @@ void TrackerHit::Draw()
G4Circle circle(fPos);
circle.SetScreenSize(4.);
circle.SetFillStyle(G4Circle::filled);
G4Colour colour(1.,0.,0.);
G4VisAttributes attribs(colour);
G4VisAttributes attribs(G4Colour::Red());
circle.SetVisAttributes(attribs);
pVVisManager->Draw(circle);
}
+2 -2
View File
@@ -92,11 +92,11 @@ G4bool TrackerSD::ProcessHits(G4Step* aStep,
void TrackerSD::EndOfEvent(G4HCofThisEvent*)
{
if ( verboseLevel>1 ) {
G4int nofHits = fHitsCollection->entries();
std::size_t nofHits = fHitsCollection->entries();
G4cout << G4endl
<< "-------->Hits Collection: in this event they are " << nofHits
<< " hits in the tracker chambers: " << G4endl;
for ( G4int i=0; i<nofHits; i++ ) (*fHitsCollection)[i]->Print();
for ( std::size_t i=0; i<nofHits; i++ ) (*fHitsCollection)[i]->Print();
}
}
+4 -20
View File
@@ -1,26 +1,10 @@
# Macro file for the visualization setting for the initialization phase
# of the B2 example when running in interactive mode
#
# Use these open statements to open selected visualization
#
# Use this open statement to create an OpenGL view:
/vis/open OGL 600x600-0+0
#
# Use this open statement to create an OpenInventor view:
#/vis/open OIX
#
# Use this open statement to create a .prim file suitable for
# viewing in DAWN:
#/vis/open DAWNFILE
#
# Use this open statement to create a .heprep file suitable for
# viewing in HepRApp:
#/vis/open HepRepFile
#
# Use this open statement to create a .wrl file suitable for
# viewing in a VRML viewer:
#/vis/open VRML2FILE
# Open a viewer
/vis/open
# This opens the default viewer - see examples/basic/B1/vis.mac for a
# more comprehensive overview of options. Also the documentation.
#
# Disable auto refresh and quieten vis messages whilst scene and
# trajectories are established:
+1 -1
View File
@@ -1,7 +1,7 @@
#----------------------------------------------------------------------------
# Setup the project
#
cmake_minimum_required(VERSION 3.16...3.21)
cmake_minimum_required(VERSION 3.16...3.27)
project(B2b)
#----------------------------------------------------------------------------
+10 -8
View File
@@ -59,29 +59,31 @@ int main(int argc,char** argv)
// Construct the default run manager
//
auto* runManager =
auto runManager =
G4RunManagerFactory::CreateRunManager(G4RunManagerType::Default);
// Set mandatory initialization classes
//
runManager->SetUserInitialization(new B2b::DetectorConstruction());
G4VModularPhysicsList* physicsList = new FTFP_BERT;
auto physicsList = new FTFP_BERT;
physicsList->RegisterPhysics(new G4StepLimiterPhysics());
runManager->SetUserInitialization(physicsList);
// Set user action classes
runManager->SetUserInitialization(new B2::ActionInitialization());
// Initialize visualization
//
G4VisManager* visManager = new G4VisExecutive;
// G4VisExecutive can take a verbosity argument - see /vis/verbose guidance.
// G4VisManager* visManager = new G4VisExecutive("Quiet");
// Initialize visualization with the default graphics system
auto visManager = new G4VisExecutive(argc, argv);
// Constructors can also take optional arguments:
// - a graphics system of choice, eg. "OGL"
// - and a verbosity argument - see /vis/verbose guidance.
// auto visManager = new G4VisExecutive(argc, argv, "OGL", "Quiet");
// auto visManager = new G4VisExecutive("Quiet");
visManager->Initialize();
// Get the pointer to the User Interface manager
G4UImanager* UImanager = G4UImanager::GetUIpointer();
auto UImanager = G4UImanager::GetUIpointer();
// Process macro or start UI session
//
File diff suppressed because it is too large Load Diff
@@ -61,13 +61,12 @@ namespace B2b
class ChamberParameterisation : public G4VPVParameterisation
{
public:
ChamberParameterisation(G4int noChambers,
G4double startZ,
G4double spacing,
G4double widthChamber,
G4double lengthInitial,
G4double lengthFinal );
G4double startZ,
G4double spacing,
G4double widthChamber,
G4double lengthInitial,
G4double lengthFinal );
~ChamberParameterisation() override = default;
@@ -78,7 +77,6 @@ class ChamberParameterisation : public G4VPVParameterisation
const G4VPhysicalVolume* physVol) const override;
private: // Dummy declarations to get rid of warnings ...
void ComputeDimensions (G4Box&,const G4int,
const G4VPhysicalVolume*) const override {}
void ComputeDimensions (G4Trd&,const G4int,
@@ -105,7 +103,6 @@ class ChamberParameterisation : public G4VPVParameterisation
const G4VPhysicalVolume*) const override {}
private:
G4int fNoChambers;
G4double fStartZ;
G4double fHalfWidth; // The half-width of each tracker chamber
@@ -56,9 +56,6 @@ class PrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction
G4ParticleGun* GetParticleGun() {return fParticleGun;}
// Set methods
void SetRandomFlag(G4bool );
private:
G4ParticleGun* fParticleGun = nullptr; // G4 particle gun
};
@@ -232,12 +232,13 @@ G4VPhysicalVolume* DetectorConstruction::DefineVolumes()
// Visualization attributes
auto boxVisAtt = new G4VisAttributes(G4Colour(1.0, 1.0, 1.0));
G4VisAttributes boxVisAtt(G4Colour::White());
worldLV ->SetVisAttributes(boxVisAtt);
fLogicTarget ->SetVisAttributes(boxVisAtt);
trackerLV ->SetVisAttributes(boxVisAtt);
auto chamberVisAtt = new G4VisAttributes(G4Colour(1.0, 1.0, 0.0));
G4VisAttributes chamberVisAtt(G4Colour::Yellow());
fLogicChamber->SetVisAttributes(chamberVisAtt);
// Example of User Limits
+1 -1
View File
@@ -50,7 +50,7 @@ void EventAction::EndOfEventAction(const G4Event* event)
// get number of stored trajectories
G4TrajectoryContainer* trajectoryContainer = event->GetTrajectoryContainer();
G4int n_trajectories = 0;
std::size_t n_trajectories = 0;
if (trajectoryContainer) n_trajectories = trajectoryContainer->entries();
// periodic printing
+1 -2
View File
@@ -58,8 +58,7 @@ void TrackerHit::Draw()
G4Circle circle(fPos);
circle.SetScreenSize(4.);
circle.SetFillStyle(G4Circle::filled);
G4Colour colour(1.,0.,0.);
G4VisAttributes attribs(colour);
G4VisAttributes attribs(G4Colour::Red());
circle.SetVisAttributes(attribs);
pVVisManager->Draw(circle);
}
+2 -2
View File
@@ -92,11 +92,11 @@ G4bool TrackerSD::ProcessHits(G4Step* aStep,
void TrackerSD::EndOfEvent(G4HCofThisEvent*)
{
if ( verboseLevel>1 ) {
G4int nofHits = fHitsCollection->entries();
std::size_t nofHits = fHitsCollection->entries();
G4cout << G4endl
<< "-------->Hits Collection: in this event they are " << nofHits
<< " hits in the tracker chambers: " << G4endl;
for ( G4int i=0; i<nofHits; i++ ) (*fHitsCollection)[i]->Print();
for ( std::size_t i=0; i<nofHits; i++ ) (*fHitsCollection)[i]->Print();
}
}
+4 -20
View File
@@ -1,26 +1,10 @@
# Macro file for the visualization setting for the initialization phase
# of the B2 example when running in interactive mode
#
# Use these open statements to open selected visualization
#
# Use this open statement to create an OpenGL view:
/vis/open OGL 600x600-0+0
#
# Use this open statement to create an OpenInventor view:
#/vis/open OI
#
# Use this open statement to create a .prim file suitable for
# viewing in DAWN:
#/vis/open DAWNFILE
#
# Use this open statement to create a .heprep file suitable for
# viewing in HepRApp:
#/vis/open HepRepFile
#
# Use this open statement to create a .wrl file suitable for
# viewing in a VRML viewer:
#/vis/open VRML2FILE
# Open a viewer
/vis/open
# This opens the default viewer - see examples/basic/B1/vis.mac for a
# more comprehensive overview of options. Also the documentation.
#
# Disable auto refresh and quieten vis messages whilst scene and
# trajectories are established:
+1 -1
View File
@@ -1,6 +1,6 @@
#---Adding example B2 subdirectories explicitly
# and a custom target to for building all example B2 options ----------
cmake_minimum_required(VERSION 3.16...3.21)
cmake_minimum_required(VERSION 3.16...3.27)
add_subdirectory(B2a)
add_subdirectory(B2b)
+23
View File
@@ -5,6 +5,29 @@ which **must** added in reverse chronological order (newest at the top). It must
be used as a substitute for writing good git commit messages!
## 2023-11-07 I. Hrivnacova (exampleB2-V11-01-03)
- Fixed and improved setting of G4VisAttribute
- Do not create vis attributes with new (causing memory leak)
- Use Geant4 predefined colours (for clarity)
## 2023-11-07 I. Hrivnacova (exampleB2-V11-01-02)
- Removed unsused and unimplemented method declaration
PrimaryGeneratorAction::SetRandomFlag
## 2023-11-03 I. Hrivnacova (exampleB2-V11-01-01)
- Applied auto in main where suitable and not done by clang-tidy
- Minor formatting changes
## 2023-09-06 John Allison (exampleB2-V11-01-00)
- For the new flexible run-time graphics system options:
- B2a and B2b:
- main programs:
- Use constructor with arguments: new G4VisExecutive(argc, argv).
- EventAction.cc, TrackerSD.cc:
- Change G4int to std::size_t to eliminate precision loss warnings.
- vis.mac in B2a/, B2b/ and macros/:
- Change "/vis/open OGL 600x600-0+0" to "/vis/open" to allow run-time choices.
## 2022-05-20 I. Hrivnacova (exampleB2-V11-00-01)
- Restore the top UI commands directory name ("B2") in B2a::DetectorMessenger
removed by mistake in exampleB2-V10-07-02
+4 -20
View File
@@ -1,26 +1,10 @@
# Macro file for the visualization setting for the initialization phase
# of the B2 example when running in interactive mode
#
# Use these open statements to open selected visualization
#
# Use this open statement to create an OpenGL view:
/vis/open OGL 600x600-0+0
#
# Use this open statement to create an OpenInventor view:
#/vis/open OIX
#
# Use this open statement to create a .prim file suitable for
# viewing in DAWN:
#/vis/open DAWNFILE
#
# Use this open statement to create a .heprep file suitable for
# viewing in HepRApp:
#/vis/open HepRepFile
#
# Use this open statement to create a .wrl file suitable for
# viewing in a VRML viewer:
#/vis/open VRML2FILE
# Open a viewer
/vis/open
# This opens the default viewer - see examples/basic/B1/vis.mac for a
# more comprehensive overview of options. Also the documentation.
#
# Disable auto refresh and quieten vis messages whilst scene and
# trajectories are established: