ATLAS Offline Software
Loading...
Searching...
No Matches
python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig Class Reference
Collaboration diagram for python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig:

Public Member Functions

 same (self, val)
 __init__ (self, name, monGroups, cpart, tool=None)
 chain (self)
 pidname (self)
 etthr (self)
 tool (self)
 etcut (self)
 nocut (self)
 nominal (self)
 compile (self, flags)
 addMonitoring (self, flags)

Private Attributes

 __log = logging.getLogger('TrigEgammaFastPhotonHypoTool')
 __name = name
 __threshold = float(cpart['threshold'])
str __sel = 'ion' if 'ion' in cpart['extra'] else (cpart['addInfo'][0] if cpart['addInfo'] else cpart['IDinfo'])
 __monGroups = monGroups
 __tool = tool

Static Private Attributes

list __operation_points

Detailed Description

Definition at line 9 of file TrigEgammaFastPhotonHypoTool.py.

Constructor & Destructor Documentation

◆ __init__()

python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.__init__ ( self,
name,
monGroups,
cpart,
tool = None )

Definition at line 21 of file TrigEgammaFastPhotonHypoTool.py.

21 def __init__(self, name,monGroups, cpart, tool=None):
22
23 from AthenaCommon.Logging import logging
24 self.__log = logging.getLogger('TrigEgammaFastPhotonHypoTool')
25 self.__name = name
26 self.__threshold = float(cpart['threshold'])
27 self.__sel = 'ion' if 'ion' in cpart['extra'] else (cpart['addInfo'][0] if cpart['addInfo'] else cpart['IDinfo'])
28 self.__monGroups = monGroups
29
30 if not tool:
31 from AthenaConfiguration.ComponentFactory import CompFactory
32 tool = CompFactory.TrigEgammaFastPhotonHypoTool(name)
33
34 self.__tool = tool
35
36 tool.EtaBins = [0.0, 0.6, 0.8, 1.15, 1.37, 1.52, 1.81, 2.01, 2.37, 2.47]
37 tool.ETthr = self.same( 0.0 )
38 tool.CARCOREthr = self.same( 0.0 )
39 tool.CAERATIOthr = self.same( 0.0)
40 tool.F1thr = self.same( 0.005 )
41 tool.ET2thr = self.same( 90.0 * GeV )
42 tool.HADET2thr = self.same( 999. * GeV )
43 tool.HADETthr = self.same( 999. * GeV )
44
45
46
47
48 self.__log.debug( 'Chain :%s', self.__name )
49 self.__log.debug( 'Threshold :%s', self.__threshold )
50 self.__log.debug( 'Pidname :%s', self.__sel )
51
52
53
const bool debug

Member Function Documentation

◆ addMonitoring()

python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.addMonitoring ( self,
flags )

Definition at line 113 of file TrigEgammaFastPhotonHypoTool.py.

113 def addMonitoring(self, flags):
114
115 monTool = GenericMonitoringTool(flags, "MonTool"+self.chain(),
116 HistPath = 'FastPhotonHypo/'+self.chain())
117 monTool.defineHistogram('CutCounter', type='TH1I', path='EXPERT', title="FastPhoton Hypo Cut Counter;Cut Counter", xbins=8, xmin=-1.5, xmax=7.5, opt="kCumulative")
118 monTool.defineHistogram('Et', type='TH1F', path='EXPERT', title="FastPhoton Hypo E_{T}^{EM};E_{T}^{EM} [MeV]",xbins=50, xmin=-2000, xmax=100000)
119 monTool.defineHistogram('Eta', type='TH1F', path='EXPERT', title="FastPhoton Hypo #eta^{calo} ; #eta^{calo};Nevents", xbins=200, xmin=-2.5, xmax=2.5)
120 monTool.defineHistogram('Phi', type='TH1F', path='EXPERT', title="FastPhoton Hypo #phi^{calo} ; #phi^{calo};Nevents", xbins=320, xmin=-3.2, xmax=3.2)
121 monTool.defineHistogram('Rcore', type='TH1F', path='EXPERT', title="FastPhoton Hypo R_{core};E^{3x7}/E^{7x7} in sampling 2",xbins=48, xmin=-0.1, xmax=1.1)
122 monTool.defineHistogram('Eratio', type='TH1F', path='EXPERT',title="FastPhoton Hypo E_{ratio};E^{max1}-E^{max2}/E^{max1}+E^{max2} in sampling 1 (excl.crack)",xbins=64, xmin=-0.1, xmax=1.5)
123 monTool.defineHistogram('Et_had', type='TH1F', path='EXPERT', title="FastPhoton Hypo E_{T}^{had} in first layer;E_{T}^{had} [MeV]",xbins=50, xmin=-2000, xmax=100000)
124 monTool.defineHistogram('F1', type='TH1F', path='EXPERT', title="FastPhoton Hypo f_{1};f_{1}", xbins=34, xmin=-0.5, xmax=1.2)
125
126 self.__tool.MonTool = monTool
127
128
129
130

◆ chain()

python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.chain ( self)

Definition at line 54 of file TrigEgammaFastPhotonHypoTool.py.

54 def chain(self):
55 return self.__name
56

◆ compile()

python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.compile ( self,
flags )

Definition at line 89 of file TrigEgammaFastPhotonHypoTool.py.

89 def compile(self, flags):
90 if self.pidname() in ('etcut', 'ion', 'nopid'):
91 self.etcut()
92 elif 'noalg' == self.pidname():
93 self.nocut()
94 elif 0 == self.etthr():
95 self.nocut()
96 else:
97 self.nominal()
98
99
100 # add mon tool
101 if hasattr(self.tool(), "MonTool"):
102
103 doValidationMonitoring = flags.Trigger.doValidationMonitoring # True to monitor all chains for validation purposes
104 monGroups = self.__monGroups
105
106 if (any('egammaMon:online' in group for group in monGroups) or doValidationMonitoring):
107 self.addMonitoring(flags)
108
109

◆ etcut()

python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.etcut ( self)

Definition at line 66 of file TrigEgammaFastPhotonHypoTool.py.

66 def etcut(self):
67 self.__log.debug( 'Chain :%s configured with etcut selection', self.chain() )
68 self.tool().ETthr = self.same( self.etthr() *GeV - 3.* GeV) # Set the eT cut 3 GeV below HLT threshold
69

◆ etthr()

python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.etthr ( self)

Definition at line 60 of file TrigEgammaFastPhotonHypoTool.py.

60 def etthr(self):
61 return self.__threshold
62

◆ nocut()

python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.nocut ( self)

Definition at line 70 of file TrigEgammaFastPhotonHypoTool.py.

70 def nocut(self):
71 self.__log.debug( 'Chain :%s configured with nocut selection', self.chain() )
72 self.tool().AcceptAll = True
73

◆ nominal()

python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.nominal ( self)

Definition at line 74 of file TrigEgammaFastPhotonHypoTool.py.

74 def nominal(self):
75 from TrigEgammaHypo.TrigEgammaFastCutDefs import TrigFastPhotonCutMaps
76 self.__log.debug( 'Chain :%s configured with nominal selection', self.chain() )
77 self.tool().ETthr = self.same( self.etthr() *GeV - 3.* GeV) # Set the eT cut 3 GeV below HLT threshold
78 self.tool().CARCOREthr = TrigFastPhotonCutMaps( self.etthr() ).MapsCARCOREthr[ self.pidname() ]
79 self.tool().CAERATIOthr = TrigFastPhotonCutMaps( self.etthr() ).MapsCAERATIOthr [ self.pidname() ]
80 self.tool().HADETthr = TrigFastPhotonCutMaps( self.etthr() ).MapsHADETthr[ self.pidname() ]
81 self.tool().HADET2thr = self.same(999.0 * GeV)
82 self.tool().F1thr = self.same(0.005)
83 self.tool().ET2thr = self.same( 90.0*GeV )
84
85

◆ pidname()

python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.pidname ( self)

Definition at line 57 of file TrigEgammaFastPhotonHypoTool.py.

57 def pidname( self ):
58 return self.__sel
59

◆ same()

python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.same ( self,
val )

Definition at line 18 of file TrigEgammaFastPhotonHypoTool.py.

18 def same( self, val ):
19 return [val]*( len( self.tool().EtaBins ) - 1 )
20

◆ tool()

python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.tool ( self)

Definition at line 63 of file TrigEgammaFastPhotonHypoTool.py.

63 def tool(self):
64 return self.__tool
65

Member Data Documentation

◆ __log

python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.__log = logging.getLogger('TrigEgammaFastPhotonHypoTool')
private

Definition at line 24 of file TrigEgammaFastPhotonHypoTool.py.

◆ __monGroups

python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.__monGroups = monGroups
private

Definition at line 28 of file TrigEgammaFastPhotonHypoTool.py.

◆ __name

python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.__name = name
private

Definition at line 25 of file TrigEgammaFastPhotonHypoTool.py.

◆ __operation_points

list python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.__operation_points
staticprivate
Initial value:
= [ 'tight' ,
'medium' ,
'loose' ,
'etcut' ,
'nopid' ,
]

Definition at line 11 of file TrigEgammaFastPhotonHypoTool.py.

◆ __sel

python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.__sel = 'ion' if 'ion' in cpart['extra'] else (cpart['addInfo'][0] if cpart['addInfo'] else cpart['IDinfo'])
private

Definition at line 27 of file TrigEgammaFastPhotonHypoTool.py.

◆ __threshold

python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.__threshold = float(cpart['threshold'])
private

Definition at line 26 of file TrigEgammaFastPhotonHypoTool.py.

◆ __tool

python.TrigEgammaFastPhotonHypoTool.TrigEgammaFastPhotonHypoToolConfig.__tool = tool
private

Definition at line 34 of file TrigEgammaFastPhotonHypoTool.py.


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