Main program of the parameterisations/gflash/gflash2 example.
More...
#include "G4Types.hh"
#include "G4ios.hh"
#include "G4Timer.hh"
#include "G4UImanager.hh"
#include "G4RunManager.hh"
#include "ExGflash2DetectorConstruction.hh"
#include "ExGflash2ParallelWorld.hh"
#include "ExGflashActionInitialization.hh"
#include "FTFP_BERT.hh"
#include "G4FastSimulationPhysics.hh"
#include "G4VisExecutive.hh"
#include "G4UIExecutive.hh"
Go to the source code of this file.
|
int | main (int argc, char **argv) |
|
Main program of the parameterisations/gflash/gflash2 example.
Definition in file ExGflash2.cc.
int main |
( |
int |
argc, |
|
|
char ** |
argv |
|
) |
| |
Definition at line 57 of file ExGflash2.cc.
60 G4UIExecutive* ui =
nullptr;
62 ui =
new G4UIExecutive(argc, argv);
69 G4cout<<
"+-------------------------------------------------------+"<<G4endl;
70 G4cout<<
"| |"<<G4endl;
71 G4cout<<
"| This is an example of Shower |"<<G4endl;
72 G4cout<<
"| Parameterization with GFLASH |"<<G4endl;
73 G4cout<<
"+-------------------------------------------------------+"<<G4endl;
77 #ifdef G4MULTITHREADED 78 G4MTRunManager * runManager =
new G4MTRunManager;
79 runManager->SetNumberOfThreads(1);
80 G4cout<<
"+-------------------------------------------------------+"<<G4endl;
81 G4cout<<
"| Constructing MT run manager |"<<G4endl;
82 G4cout<<
"+-------------------------------------------------------+"<<G4endl;
84 G4RunManager * runManager =
new G4RunManager;
85 G4cout<<
"+-------------------------------------------------------+"<<G4endl;
86 G4cout<<
"| Constructing sequential run manager |"<<G4endl;
87 G4cout<<
"+-------------------------------------------------------+"<<G4endl;
91 G4cout<<
"# GFlash Example: Detector Construction"<<G4endl;
92 auto detector =
new ExGflash2DetectorConstruction();
93 detector->RegisterParallelWorld(
new ExGflash2ParallelWorld(
"parallelWorld"));
94 runManager->SetUserInitialization(detector);
98 G4VModularPhysicsList* physicsList =
new FTFP_BERT();
101 G4FastSimulationPhysics* fastSimulationPhysics =
new G4FastSimulationPhysics();
107 fastSimulationPhysics->ActivateFastSimulation(
"e-",
"parallelWorld");
108 fastSimulationPhysics->ActivateFastSimulation(
"e+",
"parallelWorld");
114 physicsList->RegisterPhysics( fastSimulationPhysics );
115 runManager->SetUserInitialization(physicsList);
118 runManager->SetUserInitialization(
new ExGflashActionInitialization);
120 G4VisManager* visManager =
new G4VisExecutive;
121 visManager->Initialize();
123 G4UImanager* UImanager = G4UImanager::GetUIpointer();
124 UImanager->ApplyCommand(
"/run/verbose 0");
125 runManager->Initialize();
126 UImanager->ApplyCommand(
"/Step/Verbose 0");
130 UImanager->ApplyCommand(
"/control/execute vis.mac");
137 UImanager->ApplyCommand(
"/control/execute "+s);
145 G4cout <<
"******************************************";
147 G4cout <<
"Total Real Elapsed Time is: "<< timer.GetRealElapsed();
149 G4cout <<
"Total System Elapsed Time: " << timer.GetSystemElapsed();
151 G4cout <<
"Total GetUserElapsed Time: " << timer.GetUserElapsed();
153 G4cout <<
"******************************************";