Loading...
Searching...
No Matches
Functions
RE01.cc File Reference

Main program of the runAndEvent/RE01 example. More...

#include "G4Types.hh"
#include "G4RunManagerFactory.hh"
#include "G4UImanager.hh"
#include "RE01DetectorConstruction.hh"
#include "RE01CalorimeterROGeometry.hh"
#include "QGSP_BERT.hh"
#include "G4UnknownDecayPhysics.hh"
#include "G4ParallelWorldPhysics.hh"
#include "RE01ActionInitialization.hh"
#include "G4VisExecutive.hh"
#include "G4UIExecutive.hh"

Go to the source code of this file.

Functions

int main (int argc, char **argv)
 

Detailed Description

Main program of the runAndEvent/RE01 example.

Definition in file RE01.cc.

Function Documentation

◆ main()

int main ( int  argc,
char **  argv 
)

Definition at line 56 of file RE01.cc.

57{
58 // Instantiate G4UIExecutive if there are no arguments (interactive mode)
59 G4UIExecutive* ui = nullptr;
60 if ( argc == 1 ) {
61 ui = new G4UIExecutive(argc, argv);
62 }
63
64 auto* runManager = G4RunManagerFactory::CreateRunManager();
65
66 // Visualization manager construction
67 G4VisManager* visManager = new G4VisExecutive;
68 visManager->Initialize();
69
70 G4String parallelWorldName = "ReadoutWorld";
73 detector->RegisterParallelWorld(
74 new RE01CalorimeterROGeometry(parallelWorldName));
75 runManager->SetUserInitialization(detector);
76
77 G4VModularPhysicsList* physicsList = new QGSP_BERT;
78 physicsList->RegisterPhysics(new G4UnknownDecayPhysics);
79 physicsList->RegisterPhysics(
80 new G4ParallelWorldPhysics(parallelWorldName));
81 runManager->SetUserInitialization(physicsList);
82
83 runManager->SetUserInitialization(
85
86 runManager->Initialize();
87
88 if(ui)
89 {
90 ui->SessionStart();
91 delete ui;
92 }
93 else
94 {
95 G4UImanager* UImanager = G4UImanager::GetUIpointer();
96 G4String command = "/control/execute ";
97 G4String fileName = argv[1];
98 UImanager->ApplyCommand(command+fileName);
99 }
100
101 delete visManager;
102
103 delete runManager;
104
105 return 0;
106}

Applications | User Support | Publications | Collaboration