116 def __init__(self, name, monGroups, cpart, tool=None):
118 from AthenaCommon.Logging
import logging
119 self.
__log = logging.getLogger(
'TrigEgammaPrecisionElectronHypoTool')
122 self.
__sel = cpart[
'addInfo'][0]
if cpart[
'addInfo']
else cpart[
'IDinfo']
130 from AthenaConfiguration.ComponentFactory
import CompFactory
131 tool = CompFactory.TrigEgammaPrecisionElectronHypoTool( name )
133 tool.EtaBins = [0.0, 0.6, 0.8, 1.15, 1.37, 1.52, 1.81, 2.01, 2.37, 2.47]
135 tool.dETACLUSTERthr = 0.1
136 tool.dPHICLUSTERthr = 0.1
137 tool.RelPtConeCut = -999
140 tool.AcceptAll =
False
142 tool.UseRelptvarcone30 =
False
143 tool.UseTopoetcone20 =
False
216 valIsoCut = {
None:
None,
'ivarloose':flags.Trigger.egamma.isoWPs[0],
'ivarmedium':flags.Trigger.egamma.isoWPs[1],
'ivartight':flags.Trigger.egamma.isoWPs[2]}
217 topoIsoCut = {
None:
None,
'ivarloose':flags.Trigger.egamma.topoIsoWPs[0],
'ivarmedium':flags.Trigger.egamma.topoIsoWPs[1],
'ivartight':flags.Trigger.egamma.topoIsoWPs[2]}
218 if not self.
isoInfo()
in valIsoCut:
219 self.
__log.fatal(f
"Bad Iso selection name: {self.isoInfo()}")
220 self.
tool().UseRelptvarcone30 = flags.Trigger.egamma.useRelptvarcone30
221 self.
tool().RelPtConeCut = valIsoCut[self.
isoInfo()]
222 self.
tool().UseTopoetcone20 = flags.Trigger.egamma.useTopoetcone20
223 self.
tool().TopoEtConeCut = topoIsoCut[self.
isoInfo()]
269 monTool.defineHistogram(
'dEta', type=
'TH1F', path=
'EXPERT', title=
"PrecisionElectron Hypo #Delta#eta_{EF L1}; #Delta#eta_{EF L1}", xbins=80, xmin=-0.01, xmax=0.01)
270 monTool.defineHistogram(
'dPhi', type=
'TH1F', path=
'EXPERT', title=
"PrecisionElectron Hypo #Delta#phi_{EF L1}; #Delta#phi_{EF L1}", xbins=80, xmin=-0.01, xmax=0.01)
271 monTool.defineHistogram(
'Et_em', type=
'TH1F', path=
'EXPERT', title=
"PrecisionElectron Hypo cluster E_{T}^{EM};E_{T}^{EM} [MeV]", xbins=50, xmin=-2000, xmax=100000)
272 monTool.defineHistogram(
'Eta', type=
'TH1F', path=
'EXPERT', title=
"PrecisionElectron Hypo entries per Eta;Eta", xbins=100, xmin=-2.5, xmax=2.5)
273 monTool.defineHistogram(
'Phi', type=
'TH1F', path=
'EXPERT', title=
"PrecisionElectron Hypo entries per Phi;Phi", xbins=128, xmin=-3.2, xmax=3.2)
274 monTool.defineHistogram(
'EtaBin', type=
'TH1I', path=
'EXPERT', title=
"PrecisionElectron Hypo entries per Eta bin;Eta bin no.", xbins=11, xmin=-0.5, xmax=10.5)
275 monTool.defineHistogram(
'LikelihoodRatio', type=
'TH1F', path=
'EXPERT', title=
"PrecisionElectron Hypo LH", xbins=100, xmin=-5, xmax=5)
276 monTool.defineHistogram(
'mu', type=
'TH1F', path=
'EXPERT', title=
"Average interaction per crossing", xbins=100, xmin=0, xmax=100)
277 monTool.defineHistogram(
'relptvarcone20',type=
'TH1F',path=
'EXPERT',title=
"PrecisionElectron Hypo; ptvarcone20/pt;", xbins=50, xmin=0, xmax=2)
278 monTool.defineHistogram(
'relptvarcone30',type=
'TH1F',path=
'EXPERT',title=
"PrecisionElectron Hypo; ptvarcone30/pt;", xbins=50, xmin=0, xmax=2)
279 monTool.defineHistogram(
'ptvarcone20',type=
'TH1F',path=
'EXPERT',title=
"PrecisionElectron Hypo ptvarcone20; ptvarcone20;", xbins=50, xmin=0, xmax=5.0)
280 monTool.defineHistogram(
'ptvarcone30',type=
'TH1F',path=
'EXPERT',title=
"PrecisionElectron Hypo ptvarcone30; ptvarcone30;", xbins=50, xmin=0, xmax=5.0)
283 cuts=[
'Input',
'#Delta #eta EF-L1',
'#Delta #phi EF-L1',
'eta',
'E_{T}^{EM}',
'LH',
'Isolation']
284 monTool.defineHistogram(
'CutCounter', type=
'TH1I', path=
'EXPERT', title=
"PrecisionElectron Hypo Cut Counter;Cut Counter", xbins=7, xmin=0, xmax=7, opt=
"kCumulative",xlabels=cuts)
288 if flags.Trigger.doValidationMonitoring:
289 monTool.defineHistogram(
'relptcone20',type=
'TH1F',path=
'EXPERT',title=
"PrecisionElectron Hypo; ptcone20/pt;", xbins=50, xmin=0, xmax=2)
290 monTool.defineHistogram(
'relptcone30',type=
'TH1F',path=
'EXPERT',title=
"PrecisionElectron Hypo; ptcone30/pt;", xbins=50, xmin=0, xmax=2)
291 monTool.defineHistogram(
'ptcone20',type=
'TH1F',path=
'EXPERT',title=
"PrecisionElectron Hypo ptcone20; ptcone20;", xbins=50, xmin=0, xmax=5.0)
292 monTool.defineHistogram(
'ptcone30',type=
'TH1F',path=
'EXPERT',title=
"PrecisionElectron Hypo ptcone30; ptcone30;", xbins=50, xmin=0, xmax=5.0)
293 monTool.defineHistogram(
'trk_d0', type=
"TH1F", path=
'EXPERT', title=
"PrecisionElectron Hypo Track d0; d0 [mm]", xbins=100, xmin=-1, xmax=1)
295 self.
tool().MonTool = monTool