ATLAS Offline Software
Public Member Functions | Private Attributes | Static Private Attributes | List of all members
python.TrigEgammaPrecisionPhotonCaloIsoHypoTool.TrigEgammaPrecisionPhotonCaloIsoHypoToolConfig Class Reference
Collaboration diagram for python.TrigEgammaPrecisionPhotonCaloIsoHypoTool.TrigEgammaPrecisionPhotonCaloIsoHypoToolConfig:

Public Member Functions

def __init__ (self, name, monGroups, cpart, tool=None)
 
def isoInfo (self)
 
def tool (self)
 
def isoCut (self)
 
def compile (self, flags)
 
def addMonitoring (self, flags)
 

Private Attributes

 __log
 
 __name
 
 __isoinfo
 
 __monGroups
 
 __tool
 

Static Private Attributes

 __caloIsolationCut
 
 __caloEtconeCut
 
 __caloIsolationOffset
 

Detailed Description

Definition at line 20 of file TrigEgammaPrecisionPhotonCaloIsoHypoTool.py.

Constructor & Destructor Documentation

◆ __init__()

def python.TrigEgammaPrecisionPhotonCaloIsoHypoTool.TrigEgammaPrecisionPhotonCaloIsoHypoToolConfig.__init__ (   self,
  name,
  monGroups,
  cpart,
  tool = None 
)

Definition at line 54 of file TrigEgammaPrecisionPhotonCaloIsoHypoTool.py.

54  def __init__(self, name, monGroups, cpart, tool=None):
55 
56  from AthenaCommon.Logging import logging
57  self.__log = logging.getLogger('TrigEgammaPrecisionPhotonCaloIsoHypoTool')
58  self.__name = name
59  self.__isoinfo = cpart['isoInfo']
60  self.__monGroups = monGroups
61 
62  if not tool:
63  tool = CompFactory.TrigEgammaPrecisionPhotonCaloIsoHypoTool( name )
64 
65  tool.EtaBins = [0.0, 0.6, 0.8, 1.15, 1.37, 1.52, 1.81, 2.01, 2.37, 2.47]
66 
67  self.__tool = tool
68  self.__log.debug( 'Chain :%s', self.__name )
69  self.__log.debug( 'isoinfo :%s', self.__isoinfo )
70 
71 

Member Function Documentation

◆ addMonitoring()

def python.TrigEgammaPrecisionPhotonCaloIsoHypoTool.TrigEgammaPrecisionPhotonCaloIsoHypoToolConfig.addMonitoring (   self,
  flags 
)

Definition at line 123 of file TrigEgammaPrecisionPhotonCaloIsoHypoTool.py.

123  def addMonitoring(self, flags):
124 
125  monTool = GenericMonitoringTool(flags, "MonTool_"+self.__name,
126  HistPath = 'PrecisionPhotonCaloIsoHypo/'+self.__name)
127  monTool.defineHistogram('Et_em', type='TH1F', path='EXPERT', title="PrecisionPhotonCaloIso Hypo cluster E_{T}^{EM};E_{T}^{EM} [MeV]", xbins=50, xmin=-2000, xmax=100000)
128  monTool.defineHistogram('Eta', type='TH1F', path='EXPERT', title="PrecisionPhotonCaloIso Hypo entries per Eta;Eta", xbins=100, xmin=-2.5, xmax=2.5)
129  monTool.defineHistogram('Phi', type='TH1F', path='EXPERT', title="PrecisionPhotonCaloIso Hypo entries per Phi;Phi", xbins=128, xmin=-3.2, xmax=3.2)
130  monTool.defineHistogram('EtaBin', type='TH1I', path='EXPERT', title="PrecisionPhotonCaloIso Hypo entries per Eta bin;Eta bin no.", xbins=11, xmin=-0.5, xmax=10.5)
131 
132  cuts=['Input','eta','Calo Iso']
133 
134  monTool.defineHistogram('CutCounter', type='TH1I', path='EXPERT', title="PrecisionPhotonCaloIso Hypo Passed Cuts;Cut",
135  xbins=13, xmin=-1.5, xmax=12.5, opt="kCumulative", xlabels=cuts)
136 
137  if flags.Trigger.doValidationMonitoring:
138  monTool.defineHistogram('etcone20',type='TH1F',path='EXPERT',title= "PrecisionPhotonCaloIso Hypo etcone20; etcone20;", xbins=50, xmin=0, xmax=5.0)
139  monTool.defineHistogram('topoetcone20',type='TH1F',path='EXPERT',title= "PrecisionPhotonCaloIso Hypo; topoetcone20;", xbins=50, xmin=-10, xmax=10)
140  monTool.defineHistogram('reletcone20',type='TH1F',path='EXPERT',title= "PrecisionPhotonCaloIso Hypo etcone20/et; etcone20/et;", xbins=50, xmin=-0.5, xmax=0.5)
141  monTool.defineHistogram('reltopoetcone20',type='TH1F',path='EXPERT',title= "PrecisionPhotonCaloIso Hypo; topoetcone20/pt;", xbins=50, xmin=-0.5, xmax=0.5)
142 
143  self.tool().MonTool = monTool
144 
145 
146 

◆ compile()

def python.TrigEgammaPrecisionPhotonCaloIsoHypoTool.TrigEgammaPrecisionPhotonCaloIsoHypoToolConfig.compile (   self,
  flags 
)

Definition at line 96 of file TrigEgammaPrecisionPhotonCaloIsoHypoTool.py.

96  def compile(self, flags):
97 
98  if self.isoInfo() != 'noiso':
99  if self.isoInfo() not in self.__caloIsolationCut.keys():
100  self.__log.error('Isolation cut %s not defined!', self.isoInfo())
101 
102  self.__log.debug('Configuring Isolation cut %s for [topoetcone20/et, topoetcone30/et, topoetcone40/et]', self.isoInfo())
103  self.__log.debug(' with values = %s and offsets = %s',
104  str(self.__caloIsolationCut[self.isoInfo()]),
105  str(self.__caloIsolationOffset[self.isoInfo()]))
106  else:
107  self.__log.debug('Configuring Isolation to AcceptAll (not applying any cut)')
108  self.isoCut()
109 
110 
111  if hasattr(self.tool(), "MonTool"):
112 
113  doValidationMonitoring = flags.Trigger.doValidationMonitoring # True to monitor all chains for validation purposes
114  monGroups = self.__monGroups
115 
116  if (any('egammaMon:online' in group for group in monGroups) or doValidationMonitoring):
117  self.addMonitoring(flags)
118 
119 

◆ isoCut()

def python.TrigEgammaPrecisionPhotonCaloIsoHypoTool.TrigEgammaPrecisionPhotonCaloIsoHypoToolConfig.isoCut (   self)

Definition at line 81 of file TrigEgammaPrecisionPhotonCaloIsoHypoTool.py.

81  def isoCut(self):
82 
83  if self.isoInfo() == 'noiso':
84  self.tool().AcceptAll = True
85  return
86  self.tool().RelTopoEtConeCut = self.__caloIsolationCut[self.isoInfo()]
87  self.tool().RelEtConeCut = self.__caloEtconeCut[self.isoInfo()]
88  self.tool().Offset = self.__caloIsolationOffset[self.isoInfo()]
89 
90 
91 
92 

◆ isoInfo()

def python.TrigEgammaPrecisionPhotonCaloIsoHypoTool.TrigEgammaPrecisionPhotonCaloIsoHypoToolConfig.isoInfo (   self)

Definition at line 72 of file TrigEgammaPrecisionPhotonCaloIsoHypoTool.py.

72  def isoInfo(self):
73  return self.__isoinfo
74 

◆ tool()

def python.TrigEgammaPrecisionPhotonCaloIsoHypoTool.TrigEgammaPrecisionPhotonCaloIsoHypoToolConfig.tool (   self)

Definition at line 75 of file TrigEgammaPrecisionPhotonCaloIsoHypoTool.py.

75  def tool(self):
76  return self.__tool
77 

Member Data Documentation

◆ __caloEtconeCut

python.TrigEgammaPrecisionPhotonCaloIsoHypoTool.TrigEgammaPrecisionPhotonCaloIsoHypoToolConfig.__caloEtconeCut
staticprivate

Definition at line 39 of file TrigEgammaPrecisionPhotonCaloIsoHypoTool.py.

◆ __caloIsolationCut

python.TrigEgammaPrecisionPhotonCaloIsoHypoTool.TrigEgammaPrecisionPhotonCaloIsoHypoToolConfig.__caloIsolationCut
staticprivate

Definition at line 32 of file TrigEgammaPrecisionPhotonCaloIsoHypoTool.py.

◆ __caloIsolationOffset

python.TrigEgammaPrecisionPhotonCaloIsoHypoTool.TrigEgammaPrecisionPhotonCaloIsoHypoToolConfig.__caloIsolationOffset
staticprivate

Definition at line 46 of file TrigEgammaPrecisionPhotonCaloIsoHypoTool.py.

◆ __isoinfo

python.TrigEgammaPrecisionPhotonCaloIsoHypoTool.TrigEgammaPrecisionPhotonCaloIsoHypoToolConfig.__isoinfo
private

Definition at line 59 of file TrigEgammaPrecisionPhotonCaloIsoHypoTool.py.

◆ __log

python.TrigEgammaPrecisionPhotonCaloIsoHypoTool.TrigEgammaPrecisionPhotonCaloIsoHypoToolConfig.__log
private

Definition at line 57 of file TrigEgammaPrecisionPhotonCaloIsoHypoTool.py.

◆ __monGroups

python.TrigEgammaPrecisionPhotonCaloIsoHypoTool.TrigEgammaPrecisionPhotonCaloIsoHypoToolConfig.__monGroups
private

Definition at line 60 of file TrigEgammaPrecisionPhotonCaloIsoHypoTool.py.

◆ __name

python.TrigEgammaPrecisionPhotonCaloIsoHypoTool.TrigEgammaPrecisionPhotonCaloIsoHypoToolConfig.__name
private

Definition at line 58 of file TrigEgammaPrecisionPhotonCaloIsoHypoTool.py.

◆ __tool

python.TrigEgammaPrecisionPhotonCaloIsoHypoTool.TrigEgammaPrecisionPhotonCaloIsoHypoToolConfig.__tool
private

Definition at line 67 of file TrigEgammaPrecisionPhotonCaloIsoHypoTool.py.


The documentation for this class was generated from the following file:
GenericMonitoringTool
Definition: GenericMonitoringTool.h:53
debug
const bool debug
Definition: MakeUncertaintyPlots.cxx:53
AtlCoolConsole.tool
tool
Definition: AtlCoolConsole.py:453
python.processes.powheg.ZZ.ZZ.__init__
def __init__(self, base_directory, **kwargs)
Constructor: all process options are set here.
Definition: ZZ.py:18
str
Definition: BTagTrackIpAccessor.cxx:11
python.Bindings.keys
keys
Definition: Control/AthenaPython/python/Bindings.py:798
error
Definition: IImpactPoint3dEstimator.h:70