 |
ATLAS Offline Software
|
◆ HION5Cfg()
| def python.HION5.HION5Cfg |
( |
|
flags | ) |
|
Definition at line 163 of file HION5.py.
166 from DerivationFrameworkEGamma.PhotonsCPDetailedContent
import PhotonsCPDetailedContent
167 from DerivationFrameworkEGamma.ElectronsCPDetailedContent
import ExtraElectronShowerShapes,ExtraElectronGSFVar
169 from DerivationFrameworkPhys.TriggerListsHelper
import TriggerListsHelper
170 HION5TriggerListsHelper = TriggerListsHelper(flags)
172 acc.merge(
HION5KernelCfg(flags, name=
"HION5Kernel", StreamName=
"StreamDAOD_HION5", TriggerListsHelper = HION5TriggerListsHelper,))
175 from OutputStreamAthenaPool.OutputStreamConfig
import OutputStreamCfg
176 from xAODMetaDataCnv.InfileMetaDataConfig
import SetupMetaDataForStreamCfg
177 from DerivationFrameworkCore.SlimmingHelper
import SlimmingHelper
178 from DerivationFrameworkHI
import ListSlimming
180 HION5SlimmingHelper =
SlimmingHelper(
"HION5SlimmingHelper", NamesAndTypes = flags.Input.TypedCollections, flags = flags)
181 HION5SlimmingHelper.AppendToDictionary = {
'EventInfo':
'xAOD::EventInfo',
'EventInfoAux':
'xAOD::EventAuxInfo',
182 'TruthEvents':
'xAOD::TruthEventContainer',
'TruthEventsAux':
'xAOD::TruthEventAuxContainer',
183 'MET_Truth':
'xAOD::MissingETContainer',
'MET_TruthAux':
'xAOD::MissingETAuxContainer',
184 'TruthLHEParticles':
'xAOD::TruthParticleContainer',
'TruthLHEParticlesAux':
'xAOD::TruthParticleAuxContainer',
185 'TruthElectrons':
'xAOD::TruthParticleContainer',
'TruthElectronsAux':
'xAOD::TruthParticleAuxContainer',
186 'TruthMuons':
'xAOD::TruthParticleContainer',
'TruthMuonsAux':
'xAOD::TruthParticleAuxContainer',
187 'TruthPhotons':
'xAOD::TruthParticleContainer',
'TruthPhotonsAux':
'xAOD::TruthParticleAuxContainer',
188 'TruthTaus':
'xAOD::TruthParticleContainer',
'TruthTausAux':
'xAOD::TruthParticleAuxContainer',
189 'TruthNeutrinos':
'xAOD::TruthParticleContainer',
'TruthNeutrinosAux':
'xAOD::TruthParticleAuxContainer',
190 'TruthBSM':
'xAOD::TruthParticleContainer',
'TruthBSMAux':
'xAOD::TruthParticleAuxContainer',
191 'TruthBoson':
'xAOD::TruthParticleContainer',
'TruthBosonAux':
'xAOD::TruthParticleAuxContainer',
192 'TruthBottom':
'xAOD::TruthParticleContainer',
'TruthBottomAux':
'xAOD::TruthParticleAuxContainer',
193 'TruthTop':
'xAOD::TruthParticleContainer',
'TruthTopAux':
'xAOD::TruthParticleAuxContainer',
194 'TruthForwardProtons':
'xAOD::TruthParticleContainer',
'TruthForwardProtonsAux':
'xAOD::TruthParticleAuxContainer',
195 'BornLeptons':
'xAOD::TruthParticleContainer',
'BornLeptonsAux':
'xAOD::TruthParticleAuxContainer',
196 'TruthBosonsWithDecayParticles':
'xAOD::TruthParticleContainer',
'TruthBosonsWithDecayParticlesAux':
'xAOD::TruthParticleAuxContainer',
197 'TruthBosonsWithDecayVertices':
'xAOD::TruthVertexContainer',
'TruthBosonsWithDecayVerticesAux':
'xAOD::TruthVertexAuxContainer',
198 'TruthBSMWithDecayParticles':
'xAOD::TruthParticleContainer',
'TruthBSMWithDecayParticlesAux':
'xAOD::TruthParticleAuxContainer',
199 'TruthBSMWithDecayVertices':
'xAOD::TruthVertexContainer',
'TruthBSMWithDecayVerticesAux':
'xAOD::TruthVertexAuxContainer',
200 'AntiKt4TruthDressedWZJets':
'xAOD::JetContainer',
'AntiKt4TruthDressedWZJetsAux':
'xAOD::JetAuxContainer',
201 'AntiKt10TruthSoftDropBeta100Zcut10Jets':
'xAOD::JetContainer',
'AntiKt10TruthSoftDropBeta100Zcut10JetsAux':
'xAOD::JetAuxContainer',
202 'MET_Track1000':
'xAOD::MissingETContainer',
'MET_Track1000Aux':
'xAOD::MissingETAuxContainer',
203 'MET_Track2000':
'xAOD::MissingETContainer',
'MET_Track2000Aux':
'xAOD::MissingETAuxContainer',
204 'MET_Track3000':
'xAOD::MissingETContainer',
'MET_Track3000Aux':
'xAOD::MissingETAuxContainer',
205 'MET_Track4000':
'xAOD::MissingETContainer',
'MET_Track4000Aux':
'xAOD::MissingETAuxContainer',
206 'MET_Track5000':
'xAOD::MissingETContainer',
'MET_Track5000Aux':
'xAOD::MissingETAuxContainer',
209 from DerivationFrameworkHI.TrackMET_config
import Cfg_METTrack
210 met_ptCutList = [1000,2000,3000,4000,5000]
212 for ptCut
in met_ptCutList:
216 AllVariables += ListSlimming.HION5AllVariables(flags.Input.RunNumbers[0])
217 AllVariables += ListSlimming.HION5ExtraContainersTrigger()
220 from DerivationFrameworkMCTruth.MCTruthCommonConfig
import AddStandardTruthContentsCfg
222 AllVariables += ListSlimming.HION5AllTruthVariables()
224 HION5SlimmingHelper.SmartCollections = ListSlimming.HION5SmartCollections()
225 HION5SlimmingHelper.ExtraVariables = ListSlimming.HION5ExtraVariables()
226 HION5SlimmingHelper.ExtraVariables += PhotonsCPDetailedContent
227 HION5SlimmingHelper.ExtraVariables += ExtraElectronShowerShapes
228 HION5SlimmingHelper.ExtraVariables += ExtraElectronGSFVar
229 HION5SlimmingHelper.AllVariables = AllVariables
232 HION5SlimmingHelper.IncludeEGammaTriggerContent =
True
234 HION5SlimmingHelper.IncludeMuonTriggerContent =
True
236 HION5ItemList = HION5SlimmingHelper.GetItemList()
238 acc.merge(
OutputStreamCfg(flags,
"DAOD_HION5", ItemList=HION5ItemList, AcceptAlgs=[
"HION5Kernel"]))
239 acc.merge(
SetupMetaDataForStreamCfg(flags,
"DAOD_HION5", AcceptAlgs=[
"HION5Kernel"], createMetadata=[MetadataCategory.CutFlowMetaData]))
◆ HION5KernelCfg()
| def python.HION5.HION5KernelCfg |
( |
|
flags, |
|
|
|
name = "HION5Kernel", |
|
|
** |
kwargs |
|
) |
| |
Configure the derivation framework driving algorithm (kernel)
for HION5
Definition at line 89 of file HION5.py.
90 """Configure the derivation framework driving algorithm (kernel)
95 from JetRecConfig.StandardSmallRJets
import AntiKt4PV0Track
96 from JetRecConfig.JetRecConfig
import JetRecCfg
98 jetList = [AntiKt4PV0Track]
107 from DerivationFrameworkMuons.MuonsCommonConfig
import MuonsCommonCfg
108 from DerivationFrameworkEGamma.EGammaCommonConfig
import EGammaCommonCfg
124 from AssociationUtils.AssociationUtilsConfig
import OverlapRemovalToolCfg
126 outputLabel =
"DFCommonJets_passOR_HI"
130 orTool = acc.popToolsAndMerge(
132 flags, outputLabel=outputLabel, bJetLabel=bJetLabel, doTaus=
False
135 algOR = CompFactory.OverlapRemovalGenUseAlg(
136 "OverlapRemovalGenUseAlg",
137 OverlapLabel=outputLabel,
138 OverlapRemovalTool=orTool,
139 JetKey =
'AntiKt4HIJets',
144 acc.addEventAlgo(algOR)
154 CompFactory.DerivationFramework.DerivationKernel(
156 SkimmingTools = [skimmingTool],
157 ThinningTools = [thinningTool],
158 AugmentationTools = [],
◆ HION5SkimmingToolCfg()
| def python.HION5.HION5SkimmingToolCfg |
( |
|
flags | ) |
|
Configure the example skimming tool
Definition at line 9 of file HION5.py.
10 """Configure the example skimming tool"""
14 ExtraData += [
'xAOD::MuonContainer/Muons']
15 ExtraData += [
'xAOD::ElectronContainer/Electrons']
16 ExtraData += [
'xAOD::PhotonContainer/Photons']
17 ExtraData += [
'xAOD::TrackParticleContainer/InDetTrackParticles']
19 acc.addSequence(
seqAND(
"HION5Sequence") )
20 acc.getSequence(
"HION5Sequence").ExtraDataForDynamicConsumers = ExtraData
21 acc.getSequence(
"HION5Sequence").ProcessDynamicDataDependencies =
True
23 from DerivationFrameworkHI
import ListTriggers
25 triggers = ListTriggers.HION5SkimmingTriggers()
27 req_electrons =
'count( Electrons.DFCommonElectronsLHLoose && ( Electrons.pt > 15*GeV ))>0'
28 req_muons =
'count( Muons.DFCommonMuonPassPreselection && (Muons.pt > 15*GeV) && ( abs(Muons.eta) < 2.7))>0'
29 req_photons =
'count( Photons.DFCommonPhotonsIsEMLoose && (Photons.pt > 30*GeV) ) > 0'
30 req_total =
'(' + req_electrons +
' || ' + req_muons +
' || ' + req_photons +
')'
32 expression =
' ( ' +
' || '.
join(triggers) +
' ) && ' + req_total
35 from TrigDecisionTool.TrigDecisionToolConfig
import TrigDecisionToolCfg
37 acc.addPublicTool(CompFactory.DerivationFramework.xAODStringSkimmingTool(name =
"HION5StringSkimmingTool",
38 expression = expression,
39 TrigDecisionTool=tdt),
◆ HION5Thinning()
| def python.HION5.HION5Thinning |
( |
|
flags | ) |
|
Definition at line 44 of file HION5.py.
45 from DerivationFrameworkInDet.InDetToolsConfig
import TrackParticleThinningCfg,JetTrackParticleThinningCfg
49 from CoolConvUtilities.ParticleTypeUtil
import getTypeForRun
51 isOxygenOxygenCollision =
False
52 if (info.getBeam1Type() == 8)
or (info.getBeam2Type() == 8):
53 isOxygenOxygenCollision =
True
56 if isOxygenOxygenCollision:
59 track_thinning_expression = f
"InDetTrackParticles.pt > {pTCut}*GeV"
62 name =
"PHYSTrackParticleThinningTool",
63 StreamName =
"StreamDAOD_HION5",
64 SelectionString = track_thinning_expression,
65 InDetTrackParticlesKey =
"InDetTrackParticles"))
69 name =
"AntiKt2HIJetsThinningTool",
70 StreamName =
"StreamDAOD_HION5",
71 JetKey =
"AntiKt2HIJets",
72 SelectionString =
"AntiKt2HIJets.pt > 15*GeV",
73 InDetTrackParticlesKey =
"InDetTrackParticles"))
77 name =
"AntiKt4HIJetsThinningTool",
78 StreamName =
"StreamDAOD_HION5",
79 JetKey =
"AntiKt4HIJets",
80 SelectionString =
"AntiKt4HIJets.pt > 15*GeV",
81 InDetTrackParticlesKey =
"InDetTrackParticles"))
83 acc.addPublicTool(TrackParticleThinningTool,primary =
True)
84 acc.addPublicTool(AntiKt2HIJetsThinningTool)
85 acc.addPublicTool(AntiKt4HIJetsThinningTool)
def OutputStreamCfg(flags, streamName, ItemList=None, MetadataItemList=None, disableEventTag=False, trigNavThinningSvc=None, takeItemsFromInput=False, extendProvenanceRecord=True, keepProvenanceTagsRegEx=None, AcceptAlgs=None, HelperTools=None)
def OverlapRemovalToolCfg(ConfigFlags, masterName='OverlapRemovalTool', inputLabel='selected', outputLabel='overlaps', bJetLabel='', maxElePtForBJetAwareOR=100. *1000, boostedLeptons=False, outputPassValue=False, linkOverlapObjects=False, doEleEleOR=False, doElectrons=True, doMuons=True, doJets=True, doTaus=True, doPhotons=True, doFatJets=False, **kwargs)
def EGammaCommonCfg(ConfigFlags)
def getTypeForRun(run, quiet=False)
def HION5KernelCfg(flags, name="HION5Kernel", **kwargs)
def Cfg_METTrack(configFlags, ptCut)
def JetRecCfg(flags, jetdef, returnConfiguredDef=False)
Top level functions returning ComponentAccumulator out of JetDefinition.
def HION5SkimmingToolCfg(flags)
def MuonsCommonCfg(flags, suff="")
def AddStandardTruthContentsCfg(flags, decorationDressing='dressedPhoton', includeTausInDressingPhotonRemoval=False, navInputCollections=["TruthElectrons", "TruthMuons", "TruthPhotons", "TruthTaus", "TruthNeutrinos", "TruthBSM", "TruthBottom", "TruthTop", "TruthBoson"], prefix='')
std::string join(const std::vector< std::string > &v, const char c=',')
def TrigDecisionToolCfg(flags)
def seqAND(name, subs=[], invert=False)