18 """do the CP algorithm configuration for PHYSLITE"""
20 from AthenaCommon.Logging
import logging
21 logPLCPAlgCfg = logging.getLogger(
'PLCPAlgCfg')
22 logPLCPAlgCfg.info(
'****************** STARTING PHYSLITE CPAlgorithmsCfg *****************')
24 forceEGammaFullSimConfig =
False
25 if not flags.Sim.ISF.Simulator.isFullSim():
26 logPLCPAlgCfg.warning(
"Forcing full simulation configuration for EGamma algorithms. This is not recommended for fast simulation but no recommendations available yet.")
27 forceEGammaFullSimConfig =
True
29 from AnalysisAlgorithmsConfig.ConfigFactory
import ConfigFactory
30 from AnalysisAlgorithmsConfig.ConfigSequence
import ConfigSequence
31 configSeq = ConfigSequence ()
34 factory = ConfigFactory()
37 subConfig = factory.makeConfig (
'CommonServices')
38 subConfig.setOptionValue (
'.runSystematics',
False)
39 subConfig.setOptionValue (
'.fixDAODTruthRecord',
False)
40 configSeq += subConfig
44 from AnalysisAlgorithmsConfig.ConfigAccumulator
import ExpertModeWarning
45 warnings.simplefilter(
'ignore', ExpertModeWarning)
50 configSeq += factory.makeConfig (
'PileupReweighting')
53 configSeq += factory.makeConfig (
'EventCleaning')
54 configSeq.setOptionValue (
'.noFilter',
True)
55 configSeq.setOptionValue (
'.GRLDict', getGoodRunsLists())
59 logPLCPAlgCfg.info(
'Do Muons')
61 subConfig = factory.makeConfig (
'Muons')
62 subConfig.setOptionValue (
'.containerName',
'AnalysisMuons')
63 configSeq += subConfig
64 subConfig = factory.makeConfig (
'Muons.WorkingPoint')
65 subConfig.setOptionValue (
'.containerName',
'AnalysisMuons')
66 subConfig.setOptionValue (
'.selectionName',
'loose')
67 subConfig.setOptionValue (
'.trackSelection',
False)
68 subConfig.setOptionValue (
'.quality',
'Loose')
69 subConfig.setOptionValue (
'.isolation',
'NonIso')
70 configSeq += subConfig
71 subConfig = factory.makeConfig (
'Thinning')
72 subConfig.setOptionValue (
'.containerName',
'AnalysisMuons')
73 subConfig.setOptionValue (
'.selectionName',
'loose')
74 subConfig.setOptionValue (
'.deepCopy',
True)
75 subConfig.setOptionValue (
'.sortPt',
True)
76 subConfig.setOptionValue (
'.noUniformSelection',
True)
77 configSeq += subConfig
81 logPLCPAlgCfg.info(
'Do Electrons')
83 subConfig = factory.makeConfig (
'Electrons')
84 subConfig.setOptionValue (
'.containerName',
'AnalysisElectrons')
85 subConfig.setOptionValue (
'.forceFullSimConfigForIso', forceEGammaFullSimConfig)
86 subConfig.setOptionValue (
'.isolationCorrection',
True)
87 subConfig.setOptionValue (
'.minPt', 0.)
88 subConfig.setOptionValue (
'.decorateSamplingPattern',
True)
89 subConfig.setOptionValue (
'.decorateEmva',
True)
90 configSeq += subConfig
91 subConfig = factory.makeConfig (
'Electrons.WorkingPoint')
92 subConfig.setOptionValue (
'.containerName',
'AnalysisElectrons')
93 subConfig.setOptionValue (
'.selectionName',
'looseLH')
94 subConfig.setOptionValue (
'.trackSelection',
False)
95 subConfig.setOptionValue (
'.identificationWP',
'LooseLH')
96 subConfig.setOptionValue (
'.addSelectionToPreselection',
False)
97 subConfig.setOptionValue (
'.isolationWP',
'NonIso')
98 subConfig.setOptionValue (
'.doFSRSelection',
True)
99 subConfig.setOptionValue (
'.noEffSF',
True)
100 configSeq += subConfig
101 subConfig = factory.makeConfig (
'Electrons.WorkingPoint')
102 subConfig.setOptionValue (
'.containerName',
'AnalysisElectrons')
103 subConfig.setOptionValue (
'.selectionName',
'looseDNN')
104 subConfig.setOptionValue (
'.trackSelection',
False)
105 subConfig.setOptionValue (
'.identificationWP',
'LooseDNN')
106 subConfig.setOptionValue (
'.addSelectionToPreselection',
False)
107 subConfig.setOptionValue (
'.isolationWP',
'NonIso')
108 subConfig.setOptionValue (
'.doFSRSelection',
True)
109 subConfig.setOptionValue (
'.noEffSF',
True)
110 configSeq += subConfig
111 subConfig = factory.makeConfig (
'Thinning')
112 subConfig.setOptionValue (
'.containerName',
'AnalysisElectrons')
113 subConfig.setOptionValue (
'.selectionName',
'looseLH||looseDNN')
114 subConfig.setOptionValue (
'.deepCopy',
True)
115 subConfig.setOptionValue (
'.sortPt',
True)
116 subConfig.setOptionValue (
'.noUniformSelection',
True)
117 configSeq += subConfig
120 subConfig = factory.makeConfig (
'Electrons')
121 subConfig.setOptionValue (
'.containerName',
'AnalysisSiHitElectrons')
122 subConfig.setOptionValue (
'.forceFullSimConfigForIso', forceEGammaFullSimConfig)
123 subConfig.setOptionValue (
'.isolationCorrection',
True)
124 subConfig.setOptionValue (
'.minPt', 0.)
125 subConfig.setOptionValue (
'.postfix',
'SiHit')
126 subConfig.setOptionValue (
'.decorateEmva',
True)
127 configSeq += subConfig
128 subConfig = factory.makeConfig (
'Electrons.WorkingPoint')
129 subConfig.setOptionValue (
'.containerName',
'AnalysisSiHitElectrons')
130 subConfig.setOptionValue (
'.selectionName',
'SiHits')
131 subConfig.setOptionValue (
'.trackSelection',
False)
132 subConfig.setOptionValue (
'.identificationWP',
'SiHitElectron')
133 subConfig.setOptionValue (
'.isolationWP',
'NonIso')
134 subConfig.setOptionValue (
'.doFSRSelection',
True)
135 subConfig.setOptionValue (
'.noEffSF',
True)
136 subConfig.setOptionValue (
'.postfix',
'SiHit')
137 configSeq += subConfig
138 subConfig = factory.makeConfig (
'Thinning')
139 subConfig.setOptionValue (
'.containerName',
'AnalysisSiHitElectrons')
140 subConfig.setOptionValue (
'.selectionName',
'SiHits')
141 subConfig.setOptionValue (
'.deepCopy',
True)
142 subConfig.setOptionValue (
'.sortPt',
True)
143 subConfig.setOptionValue (
'.noUniformSelection',
True)
144 configSeq += subConfig
148 logPLCPAlgCfg.info(
'Do Photons')
150 subConfig = factory.makeConfig (
'Photons')
151 subConfig.setOptionValue (
'.containerName',
'AnalysisPhotons')
152 subConfig.setOptionValue (
'.forceFullSimConfigForIso', forceEGammaFullSimConfig)
153 subConfig.setOptionValue (
'.recomputeIsEM',
False)
154 subConfig.setOptionValue (
'.minPt', 0.)
155 subConfig.setOptionValue (
'.decorateEmva',
True)
156 configSeq += subConfig
157 subConfig = factory.makeConfig (
'Photons.WorkingPoint')
158 subConfig.setOptionValue (
'.containerName',
'AnalysisPhotons')
159 subConfig.setOptionValue (
'.selectionName',
'loose')
160 subConfig.setOptionValue (
'.qualityWP',
'Loose')
161 subConfig.setOptionValue (
'.isolationWP',
'NonIso')
162 subConfig.setOptionValue (
'.doFSRSelection',
True)
163 subConfig.setOptionValue (
'.recomputeIsEM',
False)
164 subConfig.setOptionValue (
'.noEffSFForID',
True)
165 subConfig.setOptionValue (
'.noEffSFForIso',
True)
166 configSeq += subConfig
167 subConfig = factory.makeConfig (
'Thinning')
168 subConfig.setOptionValue (
'.containerName',
'AnalysisPhotons')
169 subConfig.setOptionValue (
'.selectionName',
'loose')
170 subConfig.setOptionValue (
'.deepCopy',
True)
171 subConfig.setOptionValue (
'.sortPt',
True)
172 subConfig.setOptionValue (
'.noUniformSelection',
True)
173 configSeq += subConfig
179 subConfig = factory.makeConfig (
'TauJets')
180 subConfig.setOptionValue (
'.containerName',
'AnalysisTauJets')
181 configSeq += subConfig
182 subConfig = factory.makeConfig (
'TauJets.WorkingPoint')
183 subConfig.setOptionValue (
'.containerName',
'AnalysisTauJets')
184 subConfig.setOptionValue (
'.selectionName',
'baseline')
185 subConfig.setOptionValue (
'.quality',
'Baseline')
186 configSeq += subConfig
187 subConfig = factory.makeConfig (
'Thinning')
188 subConfig.setOptionValue (
'.containerName',
'AnalysisTauJets')
189 subConfig.setOptionValue (
'.selectionName',
'baseline')
190 subConfig.setOptionValue (
'.deepCopy',
True)
191 subConfig.setOptionValue (
'.sortPt',
True)
192 subConfig.setOptionValue (
'.noUniformSelection',
True)
193 configSeq += subConfig
196 jetContainer =
'AntiKt4EMPFlowJets'
197 subConfig = factory.makeConfig (
'Jets', containerName=
'AnalysisJets',
198 jetCollection=jetContainer)
199 subConfig.setOptionValue (
'.runFJvtSelection',
False)
200 subConfig.setOptionValue (
'.runJvtSelection',
False)
201 configSeq += subConfig
202 subConfig = factory.makeConfig (
'Jets.Uncertainties')
203 subConfig.setOptionValue (
'.containerName',
'AnalysisJets')
204 configSeq += subConfig
205 subConfig = factory.makeConfig (
'Thinning')
206 subConfig.setOptionValue (
'.containerName',
'AnalysisJets')
207 subConfig.setOptionValue (
'.deepCopy',
True)
208 subConfig.setOptionValue (
'.sortPt',
True)
209 subConfig.setOptionValue (
'.noUniformSelection',
True)
210 configSeq += subConfig
212 largeRjetContainer=
'AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets'
213 subConfig = factory.makeConfig (
'Jets', containerName=
'AnalysisLargeRJets',
214 jetCollection=largeRjetContainer)
215 subConfig.setOptionValue (
'.runGhostMuonAssociation',
False)
217 subConfig.setOptionValue (
'.minPt', 0.)
218 subConfig.setOptionValue (
'.maxPt', 0.)
219 subConfig.setOptionValue (
'.maxRapidity', 0.)
220 subConfig.setOptionValue (
'.minMass', 0.)
221 subConfig.setOptionValue (
'.maxMass', 0.)
222 configSeq += subConfig
223 subConfig = factory.makeConfig (
'Thinning')
224 subConfig.setOptionValue (
'.containerName',
'AnalysisLargeRJets')
225 subConfig.setOptionValue (
'.deepCopy',
True)
226 subConfig.setOptionValue (
'.sortPt',
True)
227 subConfig.setOptionValue (
'.noUniformSelection',
True)
228 configSeq += subConfig
230 from AnalysisAlgorithmsConfig.ConfigAccumulator
import ConfigAccumulator
231 configAccumulator = ConfigAccumulator (dataType=
None, algSeq=
None,
232 autoconfigFromFlags=flags, noSysSuffix=
True, noSystematics=
True)
233 configSeq.fullConfigure (configAccumulator)
234 return configAccumulator.CA
240 """Configure the derivation framework driving algorithm (kernel) for PHYSLITE"""
241 acc = ComponentAccumulator()
245 if 'StreamAOD' in flags.Input.ProcessingTags:
247 from DerivationFrameworkPhys.PhysCommonConfig
import PhysCommonAugmentationsCfg
248 acc.merge(PhysCommonAugmentationsCfg(flags, TriggerListsHelper = kwargs[
'TriggerListsHelper']))
254 thinningToolsArgs = {
255 'ElectronCaloClusterThinningToolName' :
"PHYSLITEElectronCaloClusterThinningTool",
256 'PhotonCaloClusterThinningToolName' :
"PHYSLITEPhotonCaloClusterThinningTool",
257 'ElectronGSFTPThinningToolName' :
"PHYSLITEElectronGSFTPThinningTool",
258 'PhotonGSFTPThinningToolName' :
"PHYSLITEPhotonGSFTPThinningTool"
261 if 'StreamAOD' in flags.Input.ProcessingTags:
262 thinningToolsArgs.update({
263 'TrackParticleThinningToolName' :
"PHYSLITETrackParticleThinningTool",
264 'MuonTPThinningToolName' :
"PHYSLITEMuonTPThinningTool",
265 'TauJetThinningToolName' :
"PHYSLITETauJetThinningTool",
266 'TauJets_MuonRMThinningToolName' :
"PHYSLITETauJets_MuonRMThinningTool",
267 'DiTauTPThinningToolName' :
"PHYSLITEDiTauTPThinningTool",
268 'DiTauLowPtThinningToolName' :
"PHYSLITEDiTauLowPtThinningTool",
269 'DiTauLowPtTPThinningToolName' :
"PHYSLITEDiTauLowPtTPThinningTool",
272 from DerivationFrameworkPhys.PhysCommonThinningConfig
import PhysCommonThinningCfg
273 acc.merge(PhysCommonThinningCfg(flags, StreamName = kwargs[
'StreamName'], **thinningToolsArgs))
276 for key
in thinningToolsArgs:
277 thinningTools.append(acc.getPublicTool(thinningToolsArgs[key]))
284 if 'StreamAOD' in flags.Input.ProcessingTags:
287 from DerivationFrameworkHiggs.HiggsPhysContent
import HiggsAugmentationAlgsCfg
288 acc.merge(HiggsAugmentationAlgsCfg(flags))
291 from IsolationSelection.IsolationSelectionConfig
import IsoCloseByAlgsCfg
292 acc.merge(IsoCloseByAlgsCfg(flags, isPhysLite =
True))
308 if 'StreamAOD' in flags.Input.ProcessingTags:
309 from METReconstruction.METAssocCfg
import AssocConfig, METAssocConfig
310 from METReconstruction.METAssociatorCfg
import getAssocCA
311 associators = [AssocConfig(
'PFlowJet',
'AnalysisJets'),
312 AssocConfig(
'Muon',
'AnalysisMuons'),
313 AssocConfig(
'Ele',
'AnalysisElectrons'),
314 AssocConfig(
'Gamma',
'AnalysisPhotons'),
315 AssocConfig(
'Tau',
'AnalysisTauJets'),
316 AssocConfig(
'Soft',
'')]
317 PHYSLITE_cfg = METAssocConfig(
'AnalysisMET',
322 components_PHYSLITE_cfg = getAssocCA(PHYSLITE_cfg,METName=
'AnalysisMET')
323 acc.merge(components_PHYSLITE_cfg)
324 elif 'StreamDAOD_PHYS' in flags.Input.ProcessingTags:
325 from DerivationFrameworkJetEtMiss.METCommonConfig
import METRemappingCfg
327 METRemap_cfg = METRemappingCfg(flags)
328 acc.merge(METRemap_cfg)
331 DerivationKernel = CompFactory.DerivationFramework.DerivationKernel
332 acc.addEventAlgo(DerivationKernel(name, ThinningTools = thinningTools))
339 acc = ComponentAccumulator()
345 from DerivationFrameworkPhys.TriggerListsHelper
import TriggerListsHelper
346 PHYSLITETriggerListsHelper = TriggerListsHelper(flags)
349 streamName =
'StreamDAOD_PHYSLITE' if 'StreamAOD' in flags.Input.ProcessingTags
else 'StreamD2AOD_PHYSLITE'
352 acc.merge(
PHYSLITEKernelCfg(flags, name=
"PHYSLITEKernel", StreamName = streamName, TriggerListsHelper = PHYSLITETriggerListsHelper))
357 from OutputStreamAthenaPool.OutputStreamConfig
import OutputStreamCfg
358 from xAODMetaDataCnv.InfileMetaDataConfig
import SetupMetaDataForStreamCfg
359 from DerivationFrameworkCore.SlimmingHelper
import SlimmingHelper
361 PHYSLITESlimmingHelper =
SlimmingHelper(
"PHYSLITESlimmingHelper", NamesAndTypes = flags.Input.TypedCollections, flags = flags)
362 PHYSLITESlimmingHelper.ExtraVariables = []
364 PHYSLITESlimmingHelper.IncludeTriggerNavigation =
False
365 PHYSLITESlimmingHelper.IncludeJetTriggerContent =
False
366 PHYSLITESlimmingHelper.IncludeMuonTriggerContent =
False
367 PHYSLITESlimmingHelper.IncludeEGammaTriggerContent =
False
368 PHYSLITESlimmingHelper.IncludeTauTriggerContent =
False
369 PHYSLITESlimmingHelper.IncludeEtMissTriggerContent =
False
370 PHYSLITESlimmingHelper.IncludeBJetTriggerContent =
False
371 PHYSLITESlimmingHelper.IncludeBPhysTriggerContent =
False
372 PHYSLITESlimmingHelper.IncludeMinBiasTriggerContent =
False
376 if flags.Trigger.EDMVersion == 2:
378 from DerivationFrameworkPhys.TriggerMatchingCommonConfig
import TriggerMatchingCommonRun2Cfg
379 acc.merge(TriggerMatchingCommonRun2Cfg(flags,
380 name =
"PHYSLITETrigMatchNoTau",
381 OutputContainerPrefix =
"AnalysisTrigMatch_",
382 ChainNames = PHYSLITETriggerListsHelper.Run2TriggerNamesNoTau,
383 InputElectrons =
"AnalysisElectrons",
384 InputPhotons =
"AnalysisPhotons",
385 InputMuons =
"AnalysisMuons",
386 InputTaus =
"AnalysisTauJets"))
387 acc.merge(TriggerMatchingCommonRun2Cfg(flags,
388 name =
"PHYSLITETrigMatchTau",
389 OutputContainerPrefix =
"AnalysisTrigMatch_",
390 ChainNames = PHYSLITETriggerListsHelper.Run2TriggerNamesTau,
392 InputElectrons =
"AnalysisElectrons",
393 InputPhotons =
"AnalysisPhotons",
394 InputMuons =
"AnalysisMuons",
395 InputTaus =
"AnalysisTauJets"))
397 from DerivationFrameworkPhys.TriggerMatchingCommonConfig
import AddRun2TriggerMatchingToSlimmingHelper
398 AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = PHYSLITESlimmingHelper,
399 OutputContainerPrefix =
"AnalysisTrigMatch_",
400 TriggerList = PHYSLITETriggerListsHelper.Run2TriggerNamesTau)
401 AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = PHYSLITESlimmingHelper,
402 OutputContainerPrefix =
"AnalysisTrigMatch_",
403 TriggerList = PHYSLITETriggerListsHelper.Run2TriggerNamesNoTau)
406 if flags.Trigger.EDMVersion == 3
or (flags.Trigger.EDMVersion == 2
and flags.Trigger.doEDMVersionConversion):
408 from TrigNavSlimmingMT.TrigNavSlimmingMTConfig
import AddRun3TrigNavSlimmingCollectionsToSlimmingHelper
409 AddRun3TrigNavSlimmingCollectionsToSlimmingHelper(PHYSLITESlimmingHelper)
412 PHYSLITESlimmingHelper.AppendToDictionary.update({
413 'TruthEvents':
'xAOD::TruthEventContainer',
'TruthEventsAux':
'xAOD::TruthEventAuxContainer',
414 'MET_Truth':
'xAOD::MissingETContainer',
'MET_TruthAux':
'xAOD::MissingETAuxContainer',
415 'TruthElectrons':
'xAOD::TruthParticleContainer',
'TruthElectronsAux':
'xAOD::TruthParticleAuxContainer',
416 'TruthMuons':
'xAOD::TruthParticleContainer',
'TruthMuonsAux':
'xAOD::TruthParticleAuxContainer',
417 'TruthPhotons':
'xAOD::TruthParticleContainer',
'TruthPhotonsAux':
'xAOD::TruthParticleAuxContainer',
418 'TruthTaus':
'xAOD::TruthParticleContainer',
'TruthTausAux':
'xAOD::TruthParticleAuxContainer',
419 'TruthNeutrinos':
'xAOD::TruthParticleContainer',
'TruthNeutrinosAux':
'xAOD::TruthParticleAuxContainer',
420 'TruthBSM':
'xAOD::TruthParticleContainer',
'TruthBSMAux':
'xAOD::TruthParticleAuxContainer',
421 'TruthBoson':
'xAOD::TruthParticleContainer',
'TruthBosonAux':
'xAOD::TruthParticleAuxContainer',
422 'TruthTop':
'xAOD::TruthParticleContainer',
'TruthTopAux':
'xAOD::TruthParticleAuxContainer',
423 'TruthForwardProtons':
'xAOD::TruthParticleContainer',
'TruthForwardProtonsAux':
'xAOD::TruthParticleAuxContainer',
424 'BornLeptons':
'xAOD::TruthParticleContainer',
'BornLeptonsAux':
'xAOD::TruthParticleAuxContainer',
425 'TruthBosonsWithDecayParticles':
'xAOD::TruthParticleContainer',
'TruthBosonsWithDecayParticlesAux':
'xAOD::TruthParticleAuxContainer',
426 'TruthBosonsWithDecayVertices':
'xAOD::TruthVertexContainer',
'TruthBosonsWithDecayVerticesAux':
'xAOD::TruthVertexAuxContainer',
427 'TruthBSMWithDecayParticles':
'xAOD::TruthParticleContainer',
'TruthBSMWithDecayParticlesAux':
'xAOD::TruthParticleAuxContainer',
428 'TruthBSMWithDecayVertices':
'xAOD::TruthVertexContainer',
'TruthBSMWithDecayVerticesAux':
'xAOD::TruthVertexAuxContainer',
429 'TruthPrimaryVertices':
'xAOD::TruthVertexContainer',
'TruthPrimaryVerticesAux':
'xAOD::TruthVertexAuxContainer',
430 'AnalysisElectrons':
'xAOD::ElectronContainer',
'AnalysisElectronsAux':
'xAOD::ElectronAuxContainer',
431 'AnalysisSiHitElectrons':
'xAOD::ElectronContainer',
'AnalysisSiHitElectronsAux':
'xAOD::ElectronAuxContainer',
432 'AnalysisMuons':
'xAOD::MuonContainer',
'AnalysisMuonsAux':
'xAOD::MuonAuxContainer',
433 'AnalysisJets':
'xAOD::JetContainer',
'AnalysisJetsAux':
'xAOD::AuxContainerBase',
434 'AnalysisPhotons':
'xAOD::PhotonContainer',
'AnalysisPhotonsAux':
'xAOD::PhotonAuxContainer',
435 'AnalysisTauJets':
'xAOD::TauJetContainer',
'AnalysisTauJetsAux':
'xAOD::TauJetAuxContainer',
436 'MET_Core_AnalysisMET':
'xAOD::MissingETContainer',
'MET_Core_AnalysisMETAux':
'xAOD::MissingETAuxContainer',
437 'METAssoc_AnalysisMET':
'xAOD::MissingETAssociationMap',
'METAssoc_AnalysisMETAux':
'xAOD::MissingETAuxAssociationMap',
438 'AnalysisLargeRJets':
'xAOD::JetContainer',
'AnalysisLargeRJetsAux':
'xAOD::AuxContainerBase'
441 PHYSLITESlimmingHelper.SmartCollections = [
443 'InDetTrackParticles',
447 from DerivationFrameworkMuons.MuonsCommonConfig
import MuonVariablesCfg
450 from DerivationFrameworkHiggs.HiggsPhysContent
import setupHiggsSlimmingVariables
451 setupHiggsSlimmingVariables(flags, PHYSLITESlimmingHelper)
454 from DerivationFrameworkMCTruth.MCTruthCommonConfig
import addTruth3ContentToSlimmerTool
455 addTruth3ContentToSlimmerTool(PHYSLITESlimmingHelper)
456 from DerivationFrameworkMCTruth.HFClassificationCommonConfig
import HFClassificationCommonCfg
457 acc.merge(HFClassificationCommonCfg(flags))
460 btag_variables = [f
'GN2v01_p{x}' for x
in [
'b',
'c',
'u',
'tau']]
461 PHYSLITESlimmingHelper.ExtraVariables += [
462 'AnalysisElectrons.trackParticleLinks.f1.pt.eta.phi.charge.author.DFCommonElectronsLHVeryLoose.DFCommonElectronsLHLoose.DFCommonElectronsLHLooseBL.DFCommonElectronsLHMedium.DFCommonElectronsLHTight.DFCommonElectronsLHVeryLooseIsEMValue.DFCommonElectronsLHLooseIsEMValue.DFCommonElectronsLHLooseBLIsEMValue.DFCommonElectronsLHMediumIsEMValue.DFCommonElectronsLHTightIsEMValue.DFCommonElectronsDNNLoose.DFCommonElectronsDNNMedium.DFCommonElectronsDNNTight.DFCommonElectronsDNNVeryLooseNoCF97.DFCommonElectronsDNNMediumNoCF.DFCommonElectronsDNNTightNoCF.DFCommonElectronsECIDS.DFCommonElectronsECIDSResult.topoetcone20.topoetcone20ptCorrection.neflowisol20.ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500.ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000.ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt500.ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000.topoetcone20_CloseByCorr.ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr.ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr.caloClusterLinks.ambiguityLink.TruthLink.truthOrigin.truthType.truthPdgId.firstEgMotherTruthType.firstEgMotherTruthOrigin.firstEgMotherTruthParticleLink.firstEgMotherPdgId.ambiguityType.OQ.Eadded_Lr2.Eadded_Lr3.E_mva_only.DFCommonAddAmbiguity',
463 'AnalysisSiHitElectrons.pt.eta.phi.charge.author.topoetcone20_CloseByCorr.DFCommonElectronsLHVeryLoose.ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr.OQ.truthOrigin.truthType.firstEgMotherTruthType.firstEgMotherTruthOrigin.z0stheta.d0Normalized.nInnerExpPix.clEta.clPhi.E_mva_only',
464 'AnalysisPhotons.f1.pt.eta.phi.author.OQ.DFCommonPhotonsIsEMLoose.DFCommonPhotonsIsEMMedium.DFCommonPhotonsIsEMTight.DFCommonPhotonsIsEMTightIsEMValue.DFCommonPhotonsCleaning.DFCommonPhotonsCleaningNoTime.ptcone20.topoetcone20.topoetcone40.topoetcone20ptCorrection.topoetcone40ptCorrection.topoetcone20_CloseByCorr.topoetcone40_CloseByCorr.ptcone20_CloseByCorr.caloClusterLinks.vertexLinks.ambiguityLink.TruthLink.truthOrigin.truthType.Eadded_Lr2.Eadded_Lr3.E_mva_only',
465 'GSFTrackParticles.chiSquared.phi.d0.theta.qOverP.definingParametersCovMatrixDiag.definingParametersCovMatrixOffDiag.z0.vz.charge.vertexLink.numberOfPixelHits.numberOfSCTHits.expectInnermostPixelLayerHit.expectNextToInnermostPixelLayerHit.numberOfInnermostPixelLayerHits.numberOfNextToInnermostPixelLayerHits.originalTrackParticle',
466 'GSFConversionVertices.trackParticleLinks.x.y.z.px.py.pz.pt1.pt2.neutralParticleLinks.minRfirstHit',
467 'egammaClusters.calE.calEta.calPhi.calM.e_sampl.eta_sampl.ETACALOFRAME.PHICALOFRAME.ETA2CALOFRAME.PHI2CALOFRAME.constituentClusterLinks.samplingPattern',
468 "AnalysisMuons.{var_string}".format(var_string =
".".join(MuonVariablesCfg(flags))),
469 'CombinedMuonTrackParticles.qOverP.d0.z0.vz.phi.theta.truthOrigin.truthType.definingParametersCovMatrixDiag.definingParametersCovMatrixOffDiag.numberOfPixelDeadSensors.numberOfPixelHits.numberOfPixelHoles.numberOfSCTDeadSensors.numberOfSCTHits.numberOfSCTHoles.numberOfTRTHits.numberOfTRTOutliers.chiSquared.numberDoF',
470 'ExtrapolatedMuonTrackParticles.d0.z0.vz.definingParametersCovMatrixDiag.definingParametersCovMatrixOffDiag.truthOrigin.truthType.qOverP.theta.phi',
471 'MuonSpectrometerTrackParticles.phi.d0.z0.vz.definingParametersCovMatrixDiag.definingParametersCovMatrixOffDiag.vertexLink.theta.qOverP',
472 'InDetForwardTrackParticles.vz.truthType.truthOrigin.numberDoF.numberOfTRTHits.numberOfSCTHoles.theta.numberOfTRTOutliers.numberOfPrecisionLayers.numberOfSCTDeadSensors.numberOfPixelHoles.numberOfSCTHits.numberOfPrecisionHoleLayers.numberOfPixelDeadSensors.phi.numberOfPixelHits.z0.d0.qOverP.chiSquared.definingParametersCovMatrixDiag.definingParametersCovMatrixOffDiag',
473 'AnalysisTauJets.pt.eta.phi.m.ptFinalCalib.etaFinalCalib.ptTauEnergyScale.etaTauEnergyScale.charge.isTauFlags.PanTau_DecayMode.NNDecayMode.RNNJetScoreSigTrans.GNTauScoreSigTrans_v0prune.GNTauVL_v0prune.GNTauL_v0prune.GNTauM_v0prune.GNTauT_v0prune.RNNEleScoreSigTrans_v1.EleRNNLoose_v1.EleRNNMedium_v1.EleRNNTight_v1.trackWidth.passTATTauMuonOLR.tauTrackLinks.vertexLink.truthParticleLink.truthJetLink.IsTruthMatched.truthOrigin.truthType',
474 'AnalysisJets.pt.eta.phi.m.JetConstitScaleMomentum_pt.JetConstitScaleMomentum_eta.JetConstitScaleMomentum_phi.JetConstitScaleMomentum_m.NumTrkPt500.SumPtTrkPt500.DetectorEta.JVFCorr.NNJvtPass.NumTrkPt1000.TrackWidthPt1000.GhostMuonSegmentCount.PartonTruthLabelID.HadronConeExclExtendedTruthLabelID.HadronConeExclTruthLabelID.TrueFlavor.DFCommonJets_jetClean_LooseBad.DFCommonJets_jetClean_TightBad.Timing.btagging.btaggingLink.GhostTrack.DFCommonJets_fJvt.DFCommonJets_QGTagger_NTracks.DFCommonJets_QGTagger_TracksWidth.DFCommonJets_QGTagger_TracksC1.PSFrac.JetAccessorMap.EMFrac.Width.ActiveArea4vec_pt.ActiveArea4vec_eta.ActiveArea4vec_m.ActiveArea4vec_phi.EnergyPerSampling.SumPtChargedPFOPt500.isJvtHS.{btag_var_string}'.format(btag_var_string =
".".join(btag_variables)),
475 'TruthPrimaryVertices.t.x.y.z',
476 'MET_Core_AnalysisMET.name.mpx.mpy.sumet.source',
477 'METAssoc_AnalysisMET.',
478 'InDetTrackParticles.TTVA_AMVFVertices.TTVA_AMVFWeights.numberOfTRTHits.numberOfTRTOutliers',
479 'EventInfo.RandomRunNumber.PileupWeight_NOSYS.GenFiltHT.GenFiltMET.GenFiltHTinclNu.GenFiltPTZ.GenFiltFatJ.HF_Classification.HF_SimpleClassification.{GRL_Deco_names}'.format(GRL_Deco_names=
'.'.join(str(key)
for key
in (getGoodRunsLists()).keys())),
480 'Kt4EMPFlowEventShape.Density',
481 'Kt4EMPFlowNeutEventShape.Density',
482 'TauTracks.flagSet.trackLinks',
483 'AnalysisLargeRJets.pt.eta.phi.m.JetConstitScaleMomentum_pt.JetConstitScaleMomentum_eta.JetConstitScaleMomentum_phi.JetConstitScaleMomentum_m.DetectorEta.TrackSumMass.TrackSumPt.constituentLinks.ECF1.ECF2.ECF3.Tau1_wta.Tau2_wta.Tau3_wta.Split12.Split23.Qw.D2.C2.R10TruthLabel_R22v1.R10TruthLabel_R21Precision_2022v1.R10TruthLabel_R21Precision.GhostBHadronsFinalCount.GhostCHadronsFinalCount.Parent.GN2Xv01_phbb.GN2Xv01_phcc.GN2Xv01_ptop.GN2Xv01_pqcd',
487 PHYSLITEItemList = PHYSLITESlimmingHelper.GetItemList()
489 formatString =
'D2AOD_PHYSLITE' if 'StreamDAOD_PHYS' in flags.Input.ProcessingTags
else 'DAOD_PHYSLITE'
490 acc.merge(OutputStreamCfg(flags, formatString, ItemList=PHYSLITEItemList, AcceptAlgs=[
"PHYSLITEKernel"]))
491 acc.merge(SetupMetaDataForStreamCfg(flags, formatString, AcceptAlgs=[
"PHYSLITEKernel"], createMetadata=[MetadataCategory.CutFlowMetaData, MetadataCategory.TruthMetaData]))