ATLAS Offline Software
Functions | Variables
IsolationSteeringDerivConfig Namespace Reference

Functions

def IsolationSteeringDerivCfg (flags, name='IsolationSteeringDeriv', inType='EMPFlow')
 
def LRTElectronIsolationSteeringDerivCfg (flags, name='LRTElectronCaloIsolationSteeringDeriv')
 
def LRTMuonIsolationSteeringDerivCfg (flags, name='LRTMuonCaloIsolationSteeringDeriv')
 

Variables

 flags = initConfigFlags()
 
 Files
 
 doWriteESD
 
 doWriteAOD
 
 mlog = logging.getLogger("isolationConfigTest")
 
 acc = MainServicesCfg(flags)
 
 withDetails
 
 printDefaults
 
 nestLevel
 

Function Documentation

◆ IsolationSteeringDerivCfg()

def IsolationSteeringDerivConfig.IsolationSteeringDerivCfg (   flags,
  name = 'IsolationSteeringDeriv',
  inType = 'EMPFlow' 
)

Definition at line 9 of file IsolationSteeringDerivConfig.py.

9 def IsolationSteeringDerivCfg(flags, name = 'IsolationSteeringDeriv', inType = 'EMPFlow'):
10 
11  mlog = logging.getLogger(name)
12  mlog.info('Starting Isolation steering')
13 
14  acc = ComponentAccumulator()
15 
16  suff = 'CSSK' if inType.find('CSSK') >= 0 else ''
17  from IsolationAlgs.IsoDensityConfig import NFlowInputAlgCfg
18  acc.merge(NFlowInputAlgCfg(flags,InputType = inType))
19  # Prepare densities (not needed in HI, because no pu subtraction)
20  if not flags.HeavyIon.Egamma.doSubtractedClusters:
21  from IsolationAlgs.IsoDensityConfig import DensityForIsoAlgCfg
22  acc.merge(DensityForIsoAlgCfg(flags,name='CentralDensityFor'+suff+'NFlowIso'))
23  acc.merge(DensityForIsoAlgCfg(flags,name='ForwardDensityFor'+suff+'NFlowIso'))
24 
25  # Prepare CaloIsolationTool
26  kwargs = dict()
27  margs = dict()
28  margs['FlowElementsInConeTool'] = CompFactory.xAOD.FlowElementsInConeTool(
29  name=suff+'FlowElementsInConeTool')
30  if len(suff) > 0:
31  kwargs['CustomConfigurationNameEl'] = suff
32  kwargs['CustomConfigurationNamePh'] = suff
33  margs['EFlowEDCentralContainer'] = 'NeutralParticle'+suff+'FlowIsoCentralEventShape'
34  margs['EFlowEDForwardContainer'] = 'NeutralParticle'+suff+'FlowIsoForwardEventShape'
35  margs['FlowElementsInConeTool'].PFlowKey=suff+'NeutralParticleFlowObjects'
36  from IsolationAlgs.IsoToolsConfig import EGammaCaloIsolationToolCfg
37  kwargs['PFlowIsolationTool'] = acc.popToolsAndMerge(EGammaCaloIsolationToolCfg(flags,**margs))
38 
39  # Prepare IsolationBuilder
40  from xAODPrimitives.xAODIso import xAODIso as isoPar
41  isoType = [ [ isoPar.neflowisol20, isoPar.neflowisol30, isoPar.neflowisol40 ] ]
42  isoCor = [ [ isoPar.coreCone ] ]
43  if not flags.HeavyIon.Egamma.doSubtractedClusters:
44  isoCor[0].append(isoPar.pileupCorrection)
45  isoExCor = [ [ isoPar.coreConeSC ] ]
46  kwargs['ElIsoTypes'] = isoType
47  kwargs['ElCorTypes'] = isoCor
48  kwargs['ElCorTypesExtra'] = isoExCor
49  kwargs['PhIsoTypes'] = isoType
50  kwargs['PhCorTypes'] = isoCor
51  kwargs['PhCorTypesExtra'] = isoExCor
52 
53  kwargs['name'] = suff+'PFlowIsolationBuilder'
54 
55  acc.addEventAlgo(CompFactory.IsolationBuilder(**kwargs))
56 
57  mlog.info("PFlow isolation configured")
58 
59  return acc
60 

◆ LRTElectronIsolationSteeringDerivCfg()

def IsolationSteeringDerivConfig.LRTElectronIsolationSteeringDerivCfg (   flags,
  name = 'LRTElectronCaloIsolationSteeringDeriv' 
)

Definition at line 61 of file IsolationSteeringDerivConfig.py.

61 def LRTElectronIsolationSteeringDerivCfg(flags, name = 'LRTElectronCaloIsolationSteeringDeriv'):
62 
63  mlog = logging.getLogger(name)
64  mlog.info('Starting LRT electron calo Isolation steering')
65 
66  acc = ComponentAccumulator()
67 
68  # Need to add density inputs for mc20 (containers present in MC21 AODs)
69  from IsolationAlgs.IsoDensityConfig import (
70  NFlowInputAlgCfg, DensityForIsoAlgCfg)
71  acc.merge(NFlowInputAlgCfg(flags,InputType = "EMPFlow"))
72  acc.merge(DensityForIsoAlgCfg(flags,name='CentralDensityForNFlowIso'))
73  acc.merge(DensityForIsoAlgCfg(flags,name='ForwardDensityForNFlowIso'))
74 
75  # Prepare CaloIsolationTool
76  kwargs = dict()
77  the_pflowElementsTool = CompFactory.xAOD.FlowElementsInConeTool(
78  name='FlowElementsInConeTool')
79 
80  from IsolationAlgs.IsoToolsConfig import EGammaCaloIsolationToolCfg
81  cisoTool = acc.popToolsAndMerge(EGammaCaloIsolationToolCfg(flags,
82  FlowElementsInConeTool = the_pflowElementsTool))
83 
84  # Prepare IsolationBuilder
85  from xAODPrimitives.xAODIso import xAODIso as isoPar
86  isoType = [ [ isoPar.topoetcone20, isoPar.topoetcone30, isoPar.topoetcone40 ],
87  [ isoPar.neflowisol20, isoPar.neflowisol30, isoPar.neflowisol40 ] ]
88  isoCor = [ [ isoPar.core57cells, isoPar.ptCorrection, isoPar.pileupCorrection ],
89  [ isoPar.coreCone, isoPar.pileupCorrection ] ]
90  isoExCor = [ [ ], [ isoPar.coreConeSC ] ]
91 
92  acc.addEventAlgo(CompFactory.IsolationBuilder(**kwargs,
93  name = 'LRTElectronCaloIsolationBuilder',
94  ElectronCollectionContainerName = 'LRT'+flags.Egamma.Keys.Output.Electrons,
95  ElIsoTypes = isoType,
96  ElCorTypes = isoCor,
97  ElCorTypesExtra = isoExCor,
98  CaloTopoIsolationTool = cisoTool,
99  PFlowIsolationTool = cisoTool))
100 
101  mlog.info("LRTElectron calo isolation configured")
102 
103  return acc
104 

◆ LRTMuonIsolationSteeringDerivCfg()

def IsolationSteeringDerivConfig.LRTMuonIsolationSteeringDerivCfg (   flags,
  name = 'LRTMuonCaloIsolationSteeringDeriv' 
)

Definition at line 105 of file IsolationSteeringDerivConfig.py.

105 def LRTMuonIsolationSteeringDerivCfg(flags, name = 'LRTMuonCaloIsolationSteeringDeriv'):
106 
107  mlog = logging.getLogger(name)
108  mlog.info('Starting LRT muon calo Isolation steering')
109 
110  acc = ComponentAccumulator()
111 
112  # Need to add density inputs for mc20 (containers present in MC21 AODs)
113  from IsolationAlgs.IsoDensityConfig import (
114  NFlowInputAlgCfg, DensityForIsoAlgCfg)
115  acc.merge(NFlowInputAlgCfg(flags,InputType = "EMPFlow"))
116  acc.merge(DensityForIsoAlgCfg(flags,name='CentralDensityForNFlowIso'))
117  acc.merge(DensityForIsoAlgCfg(flags,name='ForwardDensityForNFlowIso'))
118 
119  # Prepare CaloIsolationTool
120  the_pflowElementsTool = CompFactory.xAOD.FlowElementsInConeTool(
121  name='FlowElementsInConeTool')
122 
123  from IsolationAlgs.IsoToolsConfig import MuonCaloIsolationToolCfg
124  cisoTool = acc.popToolsAndMerge(MuonCaloIsolationToolCfg(flags,
125  FlowElementsInConeTool = the_pflowElementsTool ))
126  # Prepare IsolationBuilder
127  from xAODPrimitives.xAODIso import xAODIso as isoPar
128  misoType = [ [ isoPar.topoetcone20, isoPar.topoetcone30, isoPar.topoetcone40 ],
129  [ isoPar.neflowisol20, isoPar.neflowisol30, isoPar.neflowisol40 ] ]
130  misoCor = [ [ isoPar.coreCone, isoPar.pileupCorrection ],
131  [ isoPar.coreCone, isoPar.pileupCorrection ] ]
132  misoExCor = [ [ ], [ ] ]
133 
134  acc.addEventAlgo(CompFactory.IsolationBuilder(name= "LRTMuonCaloIsolationBuilder",
135  MuonCollectionContainerName = "MuonsLRT",
136  MuCorTypesExtra = misoExCor,
137  MuCorTypes = misoCor,
138  CaloTopoIsolationTool = cisoTool,
139  PFlowIsolationTool = cisoTool,
140  MuIsoTypes = misoType ))
141 
142  mlog.info("MuonLRT calo isolation configured")
143 
144  return acc
145 

Variable Documentation

◆ acc

IsolationSteeringDerivConfig.acc = MainServicesCfg(flags)

Definition at line 160 of file IsolationSteeringDerivConfig.py.

◆ doWriteAOD

IsolationSteeringDerivConfig.doWriteAOD

Definition at line 154 of file IsolationSteeringDerivConfig.py.

◆ doWriteESD

IsolationSteeringDerivConfig.doWriteESD

Definition at line 153 of file IsolationSteeringDerivConfig.py.

◆ Files

IsolationSteeringDerivConfig.Files

Definition at line 152 of file IsolationSteeringDerivConfig.py.

◆ flags

IsolationSteeringDerivConfig.flags = initConfigFlags()

Definition at line 151 of file IsolationSteeringDerivConfig.py.

◆ mlog

IsolationSteeringDerivConfig.mlog = logging.getLogger("isolationConfigTest")

Definition at line 157 of file IsolationSteeringDerivConfig.py.

◆ nestLevel

IsolationSteeringDerivConfig.nestLevel

Definition at line 168 of file IsolationSteeringDerivConfig.py.

◆ printDefaults

IsolationSteeringDerivConfig.printDefaults

Definition at line 165 of file IsolationSteeringDerivConfig.py.

◆ withDetails

IsolationSteeringDerivConfig.withDetails

Definition at line 164 of file IsolationSteeringDerivConfig.py.

IsolationSteeringDerivConfig.LRTMuonIsolationSteeringDerivCfg
def LRTMuonIsolationSteeringDerivCfg(flags, name='LRTMuonCaloIsolationSteeringDeriv')
Definition: IsolationSteeringDerivConfig.py:105
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
IsolationSteeringDerivConfig.IsolationSteeringDerivCfg
def IsolationSteeringDerivCfg(flags, name='IsolationSteeringDeriv', inType='EMPFlow')
Definition: IsolationSteeringDerivConfig.py:9
IsoDensityConfig.NFlowInputAlgCfg
def NFlowInputAlgCfg(flags, name='NFlowInputAlg', **kwargs)
Definition: IsoDensityConfig.py:28
dumpHVPathFromNtuple.append
bool append
Definition: dumpHVPathFromNtuple.py:91
IsoDensityConfig.DensityForIsoAlgCfg
def DensityForIsoAlgCfg(flags, name="CentralDensityForTopoIso", **kwargs)
Definition: IsoDensityConfig.py:62
IsoToolsConfig.MuonCaloIsolationToolCfg
def MuonCaloIsolationToolCfg(flags, **kwargs)
Definition: IsoToolsConfig.py:88
IsolationSteeringDerivConfig.LRTElectronIsolationSteeringDerivCfg
def LRTElectronIsolationSteeringDerivCfg(flags, name='LRTElectronCaloIsolationSteeringDeriv')
Definition: IsolationSteeringDerivConfig.py:61
IsoToolsConfig.EGammaCaloIsolationToolCfg
def EGammaCaloIsolationToolCfg(flags, **kwargs)
Definition: IsoToolsConfig.py:55