Geant4 VMC Version 6.6
Loading...
Searching...
No Matches
TG4RunConfiguration Class Reference

Takes care of creating Geant4 user action classes using VMC. More...

#include <TG4RunConfiguration.h>

Public Member Functions

 TG4RunConfiguration (const TString &userGeometry, const TString &physicsList="emStandard", const TString &specialProcess="stepLimiter", Bool_t specialStacking=false, Bool_t mtApplication=true)
 
virtual ~TG4RunConfiguration ()
 
virtual G4VUserDetectorConstructionCreateDetectorConstruction ()
 
virtual G4VUserPhysicsListCreatePhysicsList ()
 
virtual G4VUserPrimaryGeneratorActionCreatePrimaryGenerator ()
 
virtual G4UserRunActionCreateRunAction ()
 
virtual G4UserEventActionCreateEventAction ()
 
virtual TG4TrackingActionCreateTrackingAction ()
 
virtual TG4SteppingActionCreateSteppingAction ()
 
virtual G4UserStackingActionCreateStackingAction ()
 
virtual TG4VUserRegionConstructionCreateUserRegionConstruction ()
 
virtual TG4VUserPostDetConstructionCreateUserPostDetConstruction ()
 
virtual TG4VUserFastSimulationCreateUserFastSimulation ()
 
void SetMTApplication (Bool_t mtApplication)
 
void SetParameter (const TString &name, Double_t value)
 
void SetSpecialCutsOld ()
 
TString GetUserGeometry () const
 
TString GetPhysicsListSelection () const
 Return physics list selection.
 
Bool_t IsSpecialStacking () const
 
Bool_t IsSpecialControls () const
 
Bool_t IsSpecialCuts () const
 
Bool_t IsSpecialCutsOld () const
 
Bool_t IsMTApplication () const
 

Protected Attributes

TString fUserGeometry
 way of building geometry
 
TString fPhysicsListSelection
 physics list selection
 
TString fSpecialProcessSelection
 special process selection
 
Bool_t fSpecialStacking
 option for special stacking
 
Bool_t fMTApplication
 option for MT mode if available
 
Bool_t fSpecialControls
 option for special controls
 
Bool_t fSpecialCuts
 option for special cuts
 
Bool_t fSpecialCutsOld
 option for special cuts old
 
G4UImessengerfAGDDMessenger
 XML messenger.
 
G4UImessengerfGDMLMessenger
 XML messenger.
 
std::map< TString, Double_t > fParameters
 

Private Member Functions

 TG4RunConfiguration ()
 Not implemented.
 
 TG4RunConfiguration (const TG4RunConfiguration &right)
 Not implemented.
 
TG4RunConfigurationoperator= (const TG4RunConfiguration &right)
 Not implemented.
 

Detailed Description

Takes care of creating Geant4 user action classes using VMC.

This class takes care of creating all Geant4 user defined mandatory and action classes that will be initialized and managed by Geant4 kernel (G4RunManager).

The class can be extended in a user application by inheritence; this gives a user possibility to extend each Geant4 user defined class.

In constructor user has to specify the geometry input and select geometry navigation via the following options:

  • geomVMCtoGeant4 - geometry defined via VMC, G4 native navigation
  • geomVMCtoRoot - geometry defined via VMC, Root navigation
  • geomRoot - geometry defined via Root, Root navigation
  • geomRootToGeant4 - geometry defined via Root, G4 native navigation
  • geomGeant4 - geometry defined via Geant4, G4 native navigation

The second argument in the constructor selects physics list:

  • emStandard - standard em physics (default)
  • emStandard+optical - standard em physics + optical physics
  • XYZ - selected hadron physics list ( XYZ = LHEP, QGSP, ...)
  • XYZ+optical - selected hadron physics list + optical physics

The third argument activates the special processes in the TG4SpecialPhysicsList, which implement VMC features:

  • stepLimiter - step limiter (default)
  • specialCuts - VMC cuts
  • specialControls - VMC controls for activation/inactivation selected processes
  • stackPopper - stackPopper process When more than one options are selected, they should be separated with '+' character: eg. stepLimit+specialCuts.
Author
I. Hrivnacova; IPN, Orsay

Definition at line 76 of file TG4RunConfiguration.h.

Constructor & Destructor Documentation

◆ TG4RunConfiguration() [1/3]

TG4RunConfiguration::TG4RunConfiguration ( const TString & userGeometry,
const TString & physicsList = "emStandard",
const TString & specialProcess = "stepLimiter",
Bool_t specialStacking = false,
Bool_t mtApplication = true )

Standard constructor

Definition at line 41 of file TG4RunConfiguration.cxx.

◆ ~TG4RunConfiguration()

TG4RunConfiguration::~TG4RunConfiguration ( )
virtual

Destructor

Definition at line 128 of file TG4RunConfiguration.cxx.

◆ TG4RunConfiguration() [2/3]

TG4RunConfiguration::TG4RunConfiguration ( )
private

Not implemented.

◆ TG4RunConfiguration() [3/3]

TG4RunConfiguration::TG4RunConfiguration ( const TG4RunConfiguration & right)
private

Not implemented.

Member Function Documentation

◆ CreateDetectorConstruction()

G4VUserDetectorConstruction * TG4RunConfiguration::CreateDetectorConstruction ( )
virtual

Create and return Geant4 VMC default detector construction

Definition at line 141 of file TG4RunConfiguration.cxx.

Referenced by TG4RunManager::ConfigureRunManager().

◆ CreatePhysicsList()

G4VUserPhysicsList * TG4RunConfiguration::CreatePhysicsList ( )
virtual

Create default Geant4 VMC physics list

Definition at line 151 of file TG4RunConfiguration.cxx.

Referenced by TG4RunManager::ConfigureRunManager().

◆ CreatePrimaryGenerator()

G4VUserPrimaryGeneratorAction * TG4RunConfiguration::CreatePrimaryGenerator ( )
virtual

Create and return Geant4 VMC default primary generator

Definition at line 224 of file TG4RunConfiguration.cxx.

Referenced by TG4ActionInitialization::Build().

◆ CreateRunAction()

G4UserRunAction * TG4RunConfiguration::CreateRunAction ( )
virtual

Create and return Geant4 VMC default run action

Definition at line 232 of file TG4RunConfiguration.cxx.

Referenced by TG4ActionInitialization::Build(), and TG4ActionInitialization::BuildForMaster().

◆ CreateEventAction()

G4UserEventAction * TG4RunConfiguration::CreateEventAction ( )
virtual

Create and return Geant4 VMC default event action

Definition at line 240 of file TG4RunConfiguration.cxx.

Referenced by TG4ActionInitialization::Build(), and TG4ActionInitialization::TG4ActionInitialization().

◆ CreateTrackingAction()

TG4TrackingAction * TG4RunConfiguration::CreateTrackingAction ( )
virtual

Create and return Geant4 VMC default tracking action

Definition at line 248 of file TG4RunConfiguration.cxx.

Referenced by TG4ActionInitialization::Build(), and TG4ActionInitialization::TG4ActionInitialization().

◆ CreateSteppingAction()

TG4SteppingAction * TG4RunConfiguration::CreateSteppingAction ( )
virtual

Create and return Geant4 VMC default stepping action

Definition at line 256 of file TG4RunConfiguration.cxx.

Referenced by TG4ActionInitialization::Build(), and TG4ActionInitialization::TG4ActionInitialization().

◆ CreateStackingAction()

G4UserStackingAction * TG4RunConfiguration::CreateStackingAction ( )
virtual

Create and return Geant4 VMC special stacking action

Definition at line 264 of file TG4RunConfiguration.cxx.

Referenced by TG4ActionInitialization::Build(), and TG4ActionInitialization::TG4ActionInitialization().

◆ CreateUserRegionConstruction()

TG4VUserRegionConstruction * TG4RunConfiguration::CreateUserRegionConstruction ( )
virtual

No region construction is defined by default

Definition at line 274 of file TG4RunConfiguration.cxx.

Referenced by TG4RunManager::ConfigureRunManager().

◆ CreateUserPostDetConstruction()

TG4VUserPostDetConstruction * TG4RunConfiguration::CreateUserPostDetConstruction ( )
virtual

No user post detector construction is defined by default

Definition at line 283 of file TG4RunConfiguration.cxx.

Referenced by TG4RunManager::ConfigureRunManager().

◆ CreateUserFastSimulation()

TG4VUserFastSimulation * TG4RunConfiguration::CreateUserFastSimulation ( )
virtual

No user fast simulation is defined by default

Definition at line 291 of file TG4RunConfiguration.cxx.

Referenced by TG4RunManager::ConfigureRunManager().

◆ SetMTApplication()

void TG4RunConfiguration::SetMTApplication ( Bool_t mtApplication)

Select running application in MT mode, if available.

Definition at line 299 of file TG4RunConfiguration.cxx.

◆ SetParameter()

void TG4RunConfiguration::SetParameter ( const TString & name,
Double_t value )

Set a special paremeter which can be then used later. Actually used for monopole properties: monopoleMass, monopoleElCharge, monopoleMagCharge

Definition at line 307 of file TG4RunConfiguration.cxx.

◆ SetSpecialCutsOld()

void TG4RunConfiguration::SetSpecialCutsOld ( )

Activate usage of old regions manager that sets production thresholds by ranges

Definition at line 324 of file TG4RunConfiguration.cxx.

◆ GetUserGeometry()

TString TG4RunConfiguration::GetUserGeometry ( ) const

Return the way user geometry is built

Definition at line 337 of file TG4RunConfiguration.cxx.

Referenced by TG4RunManager::CloneRootNavigatorForWorker(), and TG4RunManager::ConfigureRunManager().

◆ GetPhysicsListSelection()

TString TG4RunConfiguration::GetPhysicsListSelection ( ) const
inline

Return physics list selection.

Definition at line 145 of file TG4RunConfiguration.h.

Referenced by TGeant4::TGeant4().

◆ IsSpecialStacking()

Bool_t TG4RunConfiguration::IsSpecialStacking ( ) const

Return true if special stacking is activated

Definition at line 349 of file TG4RunConfiguration.cxx.

◆ IsSpecialControls()

Bool_t TG4RunConfiguration::IsSpecialControls ( ) const

Return true if special controls are activated

Definition at line 357 of file TG4RunConfiguration.cxx.

Referenced by TG4ActionInitialization::Build().

◆ IsSpecialCuts()

Bool_t TG4RunConfiguration::IsSpecialCuts ( ) const

Return true if special cuts are activated

Definition at line 365 of file TG4RunConfiguration.cxx.

Referenced by TG4RunManager::ConfigureRunManager(), and TG4RunManager::LateInitialize().

◆ IsSpecialCutsOld()

Bool_t TG4RunConfiguration::IsSpecialCutsOld ( ) const

Return true if special cuts old are activated

Definition at line 373 of file TG4RunConfiguration.cxx.

Referenced by TG4RunManager::ConfigureRunManager().

◆ IsMTApplication()

Bool_t TG4RunConfiguration::IsMTApplication ( ) const

Return true if running in multi-threading mode is activated

Definition at line 381 of file TG4RunConfiguration.cxx.

Referenced by TG4RunManager::ConfigureRunManager(), and TG4ActionInitialization::~TG4ActionInitialization().

◆ operator=()

TG4RunConfiguration & TG4RunConfiguration::operator= ( const TG4RunConfiguration & right)
private

Not implemented.

Member Data Documentation

◆ fUserGeometry

TString TG4RunConfiguration::fUserGeometry
protected

way of building geometry

Definition at line 117 of file TG4RunConfiguration.h.

Referenced by CreateDetectorConstruction(), and GetUserGeometry().

◆ fPhysicsListSelection

TString TG4RunConfiguration::fPhysicsListSelection
protected

physics list selection

Definition at line 118 of file TG4RunConfiguration.h.

Referenced by CreatePhysicsList(), and GetPhysicsListSelection().

◆ fSpecialProcessSelection

TString TG4RunConfiguration::fSpecialProcessSelection
protected

special process selection

Definition at line 119 of file TG4RunConfiguration.h.

Referenced by CreatePhysicsList(), and TG4RunConfiguration().

◆ fSpecialStacking

Bool_t TG4RunConfiguration::fSpecialStacking
protected

option for special stacking

Definition at line 120 of file TG4RunConfiguration.h.

Referenced by CreateStackingAction(), and IsSpecialStacking().

◆ fMTApplication

Bool_t TG4RunConfiguration::fMTApplication
protected

option for MT mode if available

Definition at line 121 of file TG4RunConfiguration.h.

Referenced by IsMTApplication(), and SetMTApplication().

◆ fSpecialControls

Bool_t TG4RunConfiguration::fSpecialControls
protected

option for special controls

Definition at line 122 of file TG4RunConfiguration.h.

Referenced by IsSpecialControls(), and TG4RunConfiguration().

◆ fSpecialCuts

Bool_t TG4RunConfiguration::fSpecialCuts
protected

option for special cuts

Definition at line 123 of file TG4RunConfiguration.h.

Referenced by IsSpecialCuts(), and TG4RunConfiguration().

◆ fSpecialCutsOld

Bool_t TG4RunConfiguration::fSpecialCutsOld
protected

option for special cuts old

Definition at line 124 of file TG4RunConfiguration.h.

Referenced by IsSpecialCutsOld(), and SetSpecialCutsOld().

◆ fAGDDMessenger

G4UImessenger* TG4RunConfiguration::fAGDDMessenger
protected

XML messenger.

Definition at line 125 of file TG4RunConfiguration.h.

Referenced by TG4RunConfiguration(), and ~TG4RunConfiguration().

◆ fGDMLMessenger

G4UImessenger* TG4RunConfiguration::fGDMLMessenger
protected

XML messenger.

Definition at line 126 of file TG4RunConfiguration.h.

Referenced by TG4RunConfiguration(), and ~TG4RunConfiguration().

◆ fParameters

std::map<TString, Double_t> TG4RunConfiguration::fParameters
protected

The map of special parameters which need to be set before creating TGeant4 Actually used for monopole properties: monopoleMass, monopoleElCharge, monopoleMagCharge

Definition at line 131 of file TG4RunConfiguration.h.

Referenced by CreatePhysicsList(), and SetParameter().


The documentation for this class was generated from the following files: