ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Simulation
G4Utilities
G4UserActions
src
AthenaStackingAction.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef G4ATLASALG_ATHENASTACKINGACTION_H
6
#define G4ATLASALG_ATHENASTACKINGACTION_H
7
8
#include "G4UserStackingAction.hh"
9
10
class
PrimaryParticleInformation
;
11
12
namespace
G4UA
13
{
14
22
class
AthenaStackingAction
:
public
G4UserStackingAction
23
{
24
25
public
:
26
28
struct
Config
29
{
31
bool
killAllNeutrinos
;
33
double
photonEnergyCut
;
35
bool
applyNRR
;
37
double
russianRouletteNeutronThreshold
;
39
double
russianRouletteNeutronWeight
;
41
bool
applyPRR
;
43
double
russianRoulettePhotonThreshold
;
45
double
russianRoulettePhotonWeight
;
47
bool
isISFJob
;
48
};
49
51
AthenaStackingAction
(
const
Config
& config);
52
55
virtual
G4ClassificationOfNewTrack
56
ClassifyNewTrack
(
const
G4Track* track)
override
;
57
58
protected
:
59
61
Config
m_config
;
62
66
bool
isNeutrino
(
const
G4Track*)
const
;
67
69
bool
isGamma
(
const
G4Track*)
const
;
70
72
bool
isNeutron
(
const
G4Track*)
const
;
73
75
PrimaryParticleInformation
*
getPrimaryParticleInformation
(
const
G4Track *track)
const
;
76
77
// one over m_config.russianRouletteNeutronWeight
78
double
m_oneOverWeightNeutron
;
79
80
// one over m_config.russianRoulettePhotonWeight
81
double
m_oneOverWeightPhoton
;
82
83
};
// class AthenaStackingAction
84
85
}
// namespace G4UA
86
87
#endif
G4UA::AthenaStackingAction::m_config
Config m_config
Configuration options.
Definition
AthenaStackingAction.h:61
G4UA::AthenaStackingAction::m_oneOverWeightNeutron
double m_oneOverWeightNeutron
Definition
AthenaStackingAction.h:78
G4UA::AthenaStackingAction::m_oneOverWeightPhoton
double m_oneOverWeightPhoton
Definition
AthenaStackingAction.h:81
G4UA::AthenaStackingAction::AthenaStackingAction
AthenaStackingAction(const Config &config)
Constructor with configuration.
Definition
AthenaStackingAction.cxx:42
G4UA::AthenaStackingAction::isNeutrino
bool isNeutrino(const G4Track *) const
Identify track as a neutrino.
Definition
AthenaStackingAction.cxx:176
G4UA::AthenaStackingAction::isNeutron
bool isNeutron(const G4Track *) const
Identify track as a neutron.
Definition
AthenaStackingAction.cxx:194
G4UA::AthenaStackingAction::ClassifyNewTrack
virtual G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track *track) override
Classify a new track.
Definition
AthenaStackingAction.cxx:60
G4UA::AthenaStackingAction::isGamma
bool isGamma(const G4Track *) const
Identify track as a photon.
Definition
AthenaStackingAction.cxx:188
G4UA::AthenaStackingAction::getPrimaryParticleInformation
PrimaryParticleInformation * getPrimaryParticleInformation(const G4Track *track) const
obtain the PrimaryParticleInformation from the current G4Track
Definition
AthenaStackingAction.cxx:158
PrimaryParticleInformation
This class is attached to G4PrimaryParticle objects as UserInformation.
Definition
PrimaryParticleInformation.h:39
G4UA
for nSW
Definition
CalibrationDefaultProcessing.h:19
G4UA::AthenaStackingAction::Config
Configuration option struct for AthenaStackingAction.
Definition
AthenaStackingAction.h:29
G4UA::AthenaStackingAction::Config::applyPRR
bool applyPRR
Apply the Photon Russian Roulette.
Definition
AthenaStackingAction.h:41
G4UA::AthenaStackingAction::Config::killAllNeutrinos
bool killAllNeutrinos
Flag to toggle killing neutrinos at tracking stage.
Definition
AthenaStackingAction.h:31
G4UA::AthenaStackingAction::Config::applyNRR
bool applyNRR
Apply the Neutron Russian Roulette.
Definition
AthenaStackingAction.h:35
G4UA::AthenaStackingAction::Config::russianRoulettePhotonThreshold
double russianRoulettePhotonThreshold
Energy threshold for the Photon Russian Roulette.
Definition
AthenaStackingAction.h:43
G4UA::AthenaStackingAction::Config::russianRouletteNeutronWeight
double russianRouletteNeutronWeight
Weight for the Neutron Russian Roulette.
Definition
AthenaStackingAction.h:39
G4UA::AthenaStackingAction::Config::russianRouletteNeutronThreshold
double russianRouletteNeutronThreshold
Energy threshold for the Neutron Russian Roulette.
Definition
AthenaStackingAction.h:37
G4UA::AthenaStackingAction::Config::photonEnergyCut
double photonEnergyCut
Photon energy cut.
Definition
AthenaStackingAction.h:33
G4UA::AthenaStackingAction::Config::russianRoulettePhotonWeight
double russianRoulettePhotonWeight
Weight for the Photon Russian Roulette.
Definition
AthenaStackingAction.h:45
G4UA::AthenaStackingAction::Config::isISFJob
bool isISFJob
Is this an ISF job.
Definition
AthenaStackingAction.h:47
Generated on
for ATLAS Offline Software by
1.17.0