10 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
11 from AthenaConfiguration.ComponentFactory
import CompFactory
12 from AthenaConfiguration.Enums
import MetadataCategory
13 from GoodRunsLists.GoodRunsListsDictionary
import getGoodRunsLists
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 configSeq += subConfig
44 configSeq += factory.makeConfig (
'PileupReweighting')
47 configSeq += factory.makeConfig (
'EventCleaning')
48 configSeq.setOptionValue (
'.noFilter',
True)
53 logPLCPAlgCfg.info(
'Do Muons')
55 subConfig = factory.makeConfig (
'Muons')
56 subConfig.setOptionValue (
'.containerName',
'AnalysisMuons')
57 configSeq += subConfig
58 subConfig = factory.makeConfig (
'Muons.WorkingPoint')
59 subConfig.setOptionValue (
'.containerName',
'AnalysisMuons')
60 subConfig.setOptionValue (
'.selectionName',
'loose')
61 subConfig.setOptionValue (
'.trackSelection',
False)
62 subConfig.setOptionValue (
'.quality',
'Loose')
63 subConfig.setOptionValue (
'.isolation',
'NonIso')
64 configSeq += subConfig
65 subConfig = factory.makeConfig (
'Thinning')
66 subConfig.setOptionValue (
'.containerName',
'AnalysisMuons')
67 subConfig.setOptionValue (
'.selectionName',
'loose')
68 subConfig.setOptionValue (
'.deepCopy',
True)
69 subConfig.setOptionValue (
'.sortPt',
True)
70 subConfig.setOptionValue (
'.noUniformSelection',
True)
71 configSeq += subConfig
75 logPLCPAlgCfg.info(
'Do Electrons')
77 subConfig = factory.makeConfig (
'Electrons')
78 subConfig.setOptionValue (
'.containerName',
'AnalysisElectrons')
79 subConfig.setOptionValue (
'.forceFullSimConfigForIso', forceEGammaFullSimConfig)
80 subConfig.setOptionValue (
'.isolationCorrection',
True)
81 subConfig.setOptionValue (
'.minPt', 0.)
82 subConfig.setOptionValue (
'.decorateSamplingPattern',
True)
83 subConfig.setOptionValue (
'.decorateEmva',
True)
84 configSeq += subConfig
85 subConfig = factory.makeConfig (
'Electrons.WorkingPoint')
86 subConfig.setOptionValue (
'.containerName',
'AnalysisElectrons')
87 subConfig.setOptionValue (
'.selectionName',
'loose')
88 subConfig.setOptionValue (
'.trackSelection',
False)
89 subConfig.setOptionValue (
'.identificationWP',
'LooseLHElectron')
90 subConfig.setOptionValue (
'.isolationWP',
'NonIso')
91 subConfig.setOptionValue (
'.doFSRSelection',
True)
92 subConfig.setOptionValue (
'.noEffSF',
True)
93 configSeq += subConfig
94 subConfig = factory.makeConfig (
'Thinning')
95 subConfig.setOptionValue (
'.containerName',
'AnalysisElectrons')
96 subConfig.setOptionValue (
'.selectionName',
'loose')
97 subConfig.setOptionValue (
'.deepCopy',
True)
98 subConfig.setOptionValue (
'.sortPt',
True)
99 subConfig.setOptionValue (
'.noUniformSelection',
True)
100 configSeq += subConfig
103 subConfig = factory.makeConfig (
'Electrons')
104 subConfig.setOptionValue (
'.containerName',
'AnalysisSiHitElectrons')
105 subConfig.setOptionValue (
'.forceFullSimConfigForIso', forceEGammaFullSimConfig)
106 subConfig.setOptionValue (
'.isolationCorrection',
True)
107 subConfig.setOptionValue (
'.minPt', 0.)
108 subConfig.setOptionValue (
'.postfix',
'SiHit')
109 subConfig.setOptionValue (
'.decorateEmva',
True)
110 configSeq += subConfig
111 subConfig = factory.makeConfig (
'Electrons.WorkingPoint')
112 subConfig.setOptionValue (
'.containerName',
'AnalysisSiHitElectrons')
113 subConfig.setOptionValue (
'.selectionName',
'SiHits')
114 subConfig.setOptionValue (
'.trackSelection',
False)
115 subConfig.setOptionValue (
'.identificationWP',
'SiHitElectron')
116 subConfig.setOptionValue (
'.isolationWP',
'NonIso')
117 subConfig.setOptionValue (
'.doFSRSelection',
True)
118 subConfig.setOptionValue (
'.noEffSF',
True)
119 subConfig.setOptionValue (
'.postfix',
'SiHit')
120 configSeq += subConfig
121 subConfig = factory.makeConfig (
'Thinning')
122 subConfig.setOptionValue (
'.containerName',
'AnalysisSiHitElectrons')
123 subConfig.setOptionValue (
'.selectionName',
'SiHits')
124 subConfig.setOptionValue (
'.deepCopy',
True)
125 subConfig.setOptionValue (
'.sortPt',
True)
126 subConfig.setOptionValue (
'.noUniformSelection',
True)
127 configSeq += subConfig
131 logPLCPAlgCfg.info(
'Do Photons')
133 subConfig = factory.makeConfig (
'Photons')
134 subConfig.setOptionValue (
'.containerName',
'AnalysisPhotons')
135 subConfig.setOptionValue (
'.forceFullSimConfigForIso', forceEGammaFullSimConfig)
136 subConfig.setOptionValue (
'.recomputeIsEM',
False)
137 subConfig.setOptionValue (
'.minPt', 0.)
138 subConfig.setOptionValue (
'.decorateEmva',
True)
139 configSeq += subConfig
140 subConfig = factory.makeConfig (
'Photons.WorkingPoint')
141 subConfig.setOptionValue (
'.containerName',
'AnalysisPhotons')
142 subConfig.setOptionValue (
'.selectionName',
'loose')
143 subConfig.setOptionValue (
'.qualityWP',
'Loose')
144 subConfig.setOptionValue (
'.isolationWP',
'NonIso')
145 subConfig.setOptionValue (
'.doFSRSelection',
True)
146 subConfig.setOptionValue (
'.recomputeIsEM',
False)
147 subConfig.setOptionValue (
'.noEffSFForID',
True)
148 subConfig.setOptionValue (
'.noEffSFForIso',
True)
149 configSeq += subConfig
150 subConfig = factory.makeConfig (
'Thinning')
151 subConfig.setOptionValue (
'.containerName',
'AnalysisPhotons')
152 subConfig.setOptionValue (
'.selectionName',
'loose')
153 subConfig.setOptionValue (
'.deepCopy',
True)
154 subConfig.setOptionValue (
'.sortPt',
True)
155 subConfig.setOptionValue (
'.noUniformSelection',
True)
156 configSeq += subConfig
162 subConfig = factory.makeConfig (
'TauJets')
163 subConfig.setOptionValue (
'.containerName',
'AnalysisTauJets')
164 configSeq += subConfig
165 subConfig = factory.makeConfig (
'TauJets.WorkingPoint')
166 subConfig.setOptionValue (
'.containerName',
'AnalysisTauJets')
167 subConfig.setOptionValue (
'.selectionName',
'baseline')
168 subConfig.setOptionValue (
'.quality',
'Baseline')
169 configSeq += subConfig
170 subConfig = factory.makeConfig (
'Thinning')
171 subConfig.setOptionValue (
'.containerName',
'AnalysisTauJets')
172 subConfig.setOptionValue (
'.selectionName',
'baseline')
173 subConfig.setOptionValue (
'.deepCopy',
True)
174 subConfig.setOptionValue (
'.sortPt',
True)
175 subConfig.setOptionValue (
'.noUniformSelection',
True)
176 configSeq += subConfig
179 jetContainer =
'AntiKt4EMPFlowJets'
180 subConfig = factory.makeConfig (
'Jets', containerName=
'AnalysisJets',
181 jetCollection=jetContainer)
182 subConfig.setOptionValue (
'.runFJvtSelection',
False)
183 subConfig.setOptionValue (
'.runJvtSelection',
False)
184 configSeq += subConfig
185 subConfig = factory.makeConfig (
'Thinning')
186 subConfig.setOptionValue (
'.containerName',
'AnalysisJets')
187 subConfig.setOptionValue (
'.deepCopy',
True)
188 subConfig.setOptionValue (
'.sortPt',
True)
189 subConfig.setOptionValue (
'.noUniformSelection',
True)
190 configSeq += subConfig
192 largeRjetContainer=
'AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets'
193 subConfig = factory.makeConfig (
'Jets', containerName=
'AnalysisLargeRJets',
194 jetCollection=largeRjetContainer)
195 subConfig.setOptionValue (
'.runGhostMuonAssociation',
False)
197 subConfig.setOptionValue (
'.minPt', 0.)
198 subConfig.setOptionValue (
'.maxPt', 0.)
199 subConfig.setOptionValue (
'.maxRapidity', 0.)
200 subConfig.setOptionValue (
'.minMass', 0.)
201 subConfig.setOptionValue (
'.maxMass', 0.)
202 configSeq += subConfig
203 subConfig = factory.makeConfig (
'Thinning')
204 subConfig.setOptionValue (
'.containerName',
'AnalysisLargeRJets')
205 subConfig.setOptionValue (
'.deepCopy',
True)
206 subConfig.setOptionValue (
'.sortPt',
True)
207 subConfig.setOptionValue (
'.noUniformSelection',
True)
208 configSeq += subConfig
210 from AnalysisAlgorithmsConfig.ConfigAccumulator
import ConfigAccumulator
211 configAccumulator = ConfigAccumulator (dataType=
None, algSeq=
None,
212 autoconfigFromFlags=flags, noSysSuffix=
True, noSystematics=
True)
213 configSeq.fullConfigure (configAccumulator)
214 return configAccumulator.CA
220 """Configure the derivation framework driving algorithm (kernel) for PHYSLITE"""
225 if 'StreamAOD' in flags.Input.ProcessingTags:
227 from DerivationFrameworkPhys.PhysCommonConfig
import PhysCommonAugmentationsCfg
234 thinningToolsArgs = {
235 'ElectronCaloClusterThinningToolName' :
"PHYSLITEElectronCaloClusterThinningTool",
236 'PhotonCaloClusterThinningToolName' :
"PHYSLITEPhotonCaloClusterThinningTool",
237 'ElectronGSFTPThinningToolName' :
"PHYSLITEElectronGSFTPThinningTool",
238 'PhotonGSFTPThinningToolName' :
"PHYSLITEPhotonGSFTPThinningTool"
241 if 'StreamAOD' in flags.Input.ProcessingTags:
242 thinningToolsArgs.update({
243 'TrackParticleThinningToolName' :
"PHYSLITETrackParticleThinningTool",
244 'MuonTPThinningToolName' :
"PHYSLITEMuonTPThinningTool",
245 'TauJetThinningToolName' :
"PHYSLITETauJetThinningTool",
246 'TauJets_MuonRMThinningToolName' :
"PHYSLITETauJets_MuonRMThinningTool",
247 'DiTauTPThinningToolName' :
"PHYSLITEDiTauTPThinningTool",
248 'DiTauLowPtThinningToolName' :
"PHYSLITEDiTauLowPtThinningTool",
249 'DiTauLowPtTPThinningToolName' :
"PHYSLITEDiTauLowPtTPThinningTool",
252 from DerivationFrameworkPhys.PhysCommonThinningConfig
import PhysCommonThinningCfg
256 for key
in thinningToolsArgs:
257 thinningTools.append(acc.getPublicTool(thinningToolsArgs[key]))
264 if 'StreamAOD' in flags.Input.ProcessingTags:
267 from DerivationFrameworkHiggs.HiggsPhysContent
import HiggsAugmentationAlgsCfg
271 from IsolationSelection.IsolationSelectionConfig
import IsoCloseByAlgsCfg
288 if 'StreamAOD' in flags.Input.ProcessingTags:
289 from METReconstruction.METAssocCfg
import AssocConfig, METAssocConfig
290 from METReconstruction.METAssociatorCfg
import getAssocCA
291 associators = [AssocConfig(
'PFlowJet',
'AnalysisJets'),
292 AssocConfig(
'Muon',
'AnalysisMuons'),
293 AssocConfig(
'Ele',
'AnalysisElectrons'),
294 AssocConfig(
'Gamma',
'AnalysisPhotons'),
295 AssocConfig(
'Tau',
'AnalysisTauJets'),
296 AssocConfig(
'Soft',
'')]
297 PHYSLITE_cfg = METAssocConfig(
'AnalysisMET',
302 components_PHYSLITE_cfg =
getAssocCA(PHYSLITE_cfg,METName=
'AnalysisMET')
303 acc.merge(components_PHYSLITE_cfg)
304 elif 'StreamDAOD_PHYS' in flags.Input.ProcessingTags:
305 from DerivationFrameworkJetEtMiss.METCommonConfig
import METRemappingCfg
308 acc.merge(METRemap_cfg)
311 DerivationKernel = CompFactory.DerivationFramework.DerivationKernel
325 from DerivationFrameworkPhys.TriggerListsHelper
import TriggerListsHelper
326 PHYSLITETriggerListsHelper = TriggerListsHelper(flags)
329 streamName =
'StreamDAOD_PHYSLITE' if 'StreamAOD' in flags.Input.ProcessingTags
else 'StreamD2AOD_PHYSLITE'
332 acc.merge(
PHYSLITEKernelCfg(flags, name=
"PHYSLITEKernel", StreamName = streamName, TriggerListsHelper = PHYSLITETriggerListsHelper))
337 from OutputStreamAthenaPool.OutputStreamConfig
import OutputStreamCfg
338 from xAODMetaDataCnv.InfileMetaDataConfig
import SetupMetaDataForStreamCfg
339 from DerivationFrameworkCore.SlimmingHelper
import SlimmingHelper
341 PHYSLITESlimmingHelper =
SlimmingHelper(
"PHYSLITESlimmingHelper", NamesAndTypes = flags.Input.TypedCollections, flags = flags)
342 PHYSLITESlimmingHelper.ExtraVariables = []
344 PHYSLITESlimmingHelper.IncludeTriggerNavigation =
False
345 PHYSLITESlimmingHelper.IncludeJetTriggerContent =
False
346 PHYSLITESlimmingHelper.IncludeMuonTriggerContent =
False
347 PHYSLITESlimmingHelper.IncludeEGammaTriggerContent =
False
348 PHYSLITESlimmingHelper.IncludeTauTriggerContent =
False
349 PHYSLITESlimmingHelper.IncludeEtMissTriggerContent =
False
350 PHYSLITESlimmingHelper.IncludeBJetTriggerContent =
False
351 PHYSLITESlimmingHelper.IncludeBPhysTriggerContent =
False
352 PHYSLITESlimmingHelper.IncludeMinBiasTriggerContent =
False
356 if flags.Trigger.EDMVersion == 2:
358 from DerivationFrameworkPhys.TriggerMatchingCommonConfig
import TriggerMatchingCommonRun2Cfg
360 name =
"PHYSLITETrigMatchNoTau",
361 OutputContainerPrefix =
"AnalysisTrigMatch_",
362 ChainNames = PHYSLITETriggerListsHelper.Run2TriggerNamesNoTau,
363 InputElectrons =
"AnalysisElectrons",
364 InputPhotons =
"AnalysisPhotons",
365 InputMuons =
"AnalysisMuons",
366 InputTaus =
"AnalysisTauJets"))
368 name =
"PHYSLITETrigMatchTau",
369 OutputContainerPrefix =
"AnalysisTrigMatch_",
370 ChainNames = PHYSLITETriggerListsHelper.Run2TriggerNamesTau,
372 InputElectrons =
"AnalysisElectrons",
373 InputPhotons =
"AnalysisPhotons",
374 InputMuons =
"AnalysisMuons",
375 InputTaus =
"AnalysisTauJets"))
377 from DerivationFrameworkPhys.TriggerMatchingCommonConfig
import AddRun2TriggerMatchingToSlimmingHelper
379 OutputContainerPrefix =
"AnalysisTrigMatch_",
380 TriggerList = PHYSLITETriggerListsHelper.Run2TriggerNamesTau)
382 OutputContainerPrefix =
"AnalysisTrigMatch_",
383 TriggerList = PHYSLITETriggerListsHelper.Run2TriggerNamesNoTau)
386 if flags.Trigger.EDMVersion == 3
or (flags.Trigger.EDMVersion == 2
and flags.Trigger.doEDMVersionConversion):
388 from TrigNavSlimmingMT.TrigNavSlimmingMTConfig
import AddRun3TrigNavSlimmingCollectionsToSlimmingHelper
392 PHYSLITESlimmingHelper.AppendToDictionary.update({
393 'TruthEvents':
'xAOD::TruthEventContainer',
'TruthEventsAux':
'xAOD::TruthEventAuxContainer',
394 'MET_Truth':
'xAOD::MissingETContainer',
'MET_TruthAux':
'xAOD::MissingETAuxContainer',
395 'TruthElectrons':
'xAOD::TruthParticleContainer',
'TruthElectronsAux':
'xAOD::TruthParticleAuxContainer',
396 'TruthMuons':
'xAOD::TruthParticleContainer',
'TruthMuonsAux':
'xAOD::TruthParticleAuxContainer',
397 'TruthPhotons':
'xAOD::TruthParticleContainer',
'TruthPhotonsAux':
'xAOD::TruthParticleAuxContainer',
398 'TruthTaus':
'xAOD::TruthParticleContainer',
'TruthTausAux':
'xAOD::TruthParticleAuxContainer',
399 'TruthNeutrinos':
'xAOD::TruthParticleContainer',
'TruthNeutrinosAux':
'xAOD::TruthParticleAuxContainer',
400 'TruthBSM':
'xAOD::TruthParticleContainer',
'TruthBSMAux':
'xAOD::TruthParticleAuxContainer',
401 'TruthBoson':
'xAOD::TruthParticleContainer',
'TruthBosonAux':
'xAOD::TruthParticleAuxContainer',
402 'TruthTop':
'xAOD::TruthParticleContainer',
'TruthTopAux':
'xAOD::TruthParticleAuxContainer',
403 'TruthForwardProtons':
'xAOD::TruthParticleContainer',
'TruthForwardProtonsAux':
'xAOD::TruthParticleAuxContainer',
404 'BornLeptons':
'xAOD::TruthParticleContainer',
'BornLeptonsAux':
'xAOD::TruthParticleAuxContainer',
405 'TruthBosonsWithDecayParticles':
'xAOD::TruthParticleContainer',
'TruthBosonsWithDecayParticlesAux':
'xAOD::TruthParticleAuxContainer',
406 'TruthBosonsWithDecayVertices':
'xAOD::TruthVertexContainer',
'TruthBosonsWithDecayVerticesAux':
'xAOD::TruthVertexAuxContainer',
407 'TruthBSMWithDecayParticles':
'xAOD::TruthParticleContainer',
'TruthBSMWithDecayParticlesAux':
'xAOD::TruthParticleAuxContainer',
408 'TruthBSMWithDecayVertices':
'xAOD::TruthVertexContainer',
'TruthBSMWithDecayVerticesAux':
'xAOD::TruthVertexAuxContainer',
409 'TruthPrimaryVertices':
'xAOD::TruthVertexContainer',
'TruthPrimaryVerticesAux':
'xAOD::TruthVertexAuxContainer',
410 'AnalysisElectrons':
'xAOD::ElectronContainer',
'AnalysisElectronsAux':
'xAOD::ElectronAuxContainer',
411 'AnalysisSiHitElectrons':
'xAOD::ElectronContainer',
'AnalysisSiHitElectronsAux':
'xAOD::ElectronAuxContainer',
412 'AnalysisMuons':
'xAOD::MuonContainer',
'AnalysisMuonsAux':
'xAOD::MuonAuxContainer',
413 'AnalysisJets':
'xAOD::JetContainer',
'AnalysisJetsAux':
'xAOD::AuxContainerBase',
414 'AnalysisPhotons':
'xAOD::PhotonContainer',
'AnalysisPhotonsAux':
'xAOD::PhotonAuxContainer',
415 'AnalysisTauJets':
'xAOD::TauJetContainer',
'AnalysisTauJetsAux':
'xAOD::TauJetAuxContainer',
416 'MET_Core_AnalysisMET':
'xAOD::MissingETContainer',
'MET_Core_AnalysisMETAux':
'xAOD::MissingETAuxContainer',
417 'METAssoc_AnalysisMET':
'xAOD::MissingETAssociationMap',
'METAssoc_AnalysisMETAux':
'xAOD::MissingETAuxAssociationMap',
418 'AnalysisLargeRJets':
'xAOD::JetContainer',
'AnalysisLargeRJetsAux':
'xAOD::AuxContainerBase'
421 PHYSLITESlimmingHelper.SmartCollections = [
423 'InDetTrackParticles',
427 from DerivationFrameworkMuons.MuonsCommonConfig
import MuonVariablesCfg
430 from DerivationFrameworkHiggs.HiggsPhysContent
import setupHiggsSlimmingVariables
434 from DerivationFrameworkMCTruth.MCTruthCommonConfig
import addTruth3ContentToSlimmerTool
436 from DerivationFrameworkMCTruth.HFClassificationCommonConfig
import HFClassificationCommonCfg
440 btag_variables = [f
'GN2v01_p{x}' for x
in [
'b',
'c',
'u',
'tau']]
441 PHYSLITESlimmingHelper.ExtraVariables += [
442 'AnalysisElectrons.trackParticleLinks.f1.pt.eta.phi.m.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',
443 'AnalysisSiHitElectrons.pt.eta.phi.m.charge.author.topoetcone20_CloseByCorr.DFCommonElectronsLHVeryLoose.ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr.OQ.truthOrigin.truthType.firstEgMotherTruthType.firstEgMotherTruthOrigin.z0stheta.d0Normalized.nInnerExpPix.clEta.clPhi.E_mva_only',
444 'AnalysisPhotons.f1.pt.eta.phi.m.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',
445 'GSFTrackParticles.chiSquared.phi.d0.theta.qOverP.definingParametersCovMatrixDiag.definingParametersCovMatrixOffDiag.z0.vz.charge.vertexLink.numberOfPixelHits.numberOfSCTHits.expectInnermostPixelLayerHit.expectNextToInnermostPixelLayerHit.numberOfInnermostPixelLayerHits.numberOfNextToInnermostPixelLayerHits.originalTrackParticle',
446 'GSFConversionVertices.trackParticleLinks.x.y.z.px.py.pz.pt1.pt2.neutralParticleLinks.minRfirstHit',
447 'egammaClusters.calE.calEta.calPhi.calM.e_sampl.eta_sampl.ETACALOFRAME.PHICALOFRAME.ETA2CALOFRAME.PHI2CALOFRAME.constituentClusterLinks.samplingPattern',
449 'CombinedMuonTrackParticles.qOverP.d0.z0.vz.phi.theta.truthOrigin.truthType.definingParametersCovMatrixDiag.definingParametersCovMatrixOffDiag.numberOfPixelDeadSensors.numberOfPixelHits.numberOfPixelHoles.numberOfSCTDeadSensors.numberOfSCTHits.numberOfSCTHoles.numberOfTRTHits.numberOfTRTOutliers.chiSquared.numberDoF',
450 'ExtrapolatedMuonTrackParticles.d0.z0.vz.definingParametersCovMatrixDiag.definingParametersCovMatrixOffDiag.truthOrigin.truthType.qOverP.theta.phi',
451 'MuonSpectrometerTrackParticles.phi.d0.z0.vz.definingParametersCovMatrixDiag.definingParametersCovMatrixOffDiag.vertexLink.theta.qOverP',
452 'InDetForwardTrackParticles.vz.truthType.truthOrigin.numberDoF.numberOfTRTHits.numberOfSCTHoles.theta.numberOfTRTOutliers.numberOfPrecisionLayers.numberOfSCTDeadSensors.numberOfPixelHoles.numberOfSCTHits.numberOfPrecisionHoleLayers.numberOfPixelDeadSensors.phi.numberOfPixelHits.z0.d0.qOverP.chiSquared.definingParametersCovMatrixDiag.definingParametersCovMatrixOffDiag',
453 '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',
454 '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)),
455 'TruthPrimaryVertices.t.x.y.z',
456 'MET_Core_AnalysisMET.name.mpx.mpy.sumet.source',
457 'METAssoc_AnalysisMET.',
458 'InDetTrackParticles.TTVA_AMVFVertices.TTVA_AMVFWeights.numberOfTRTHits.numberOfTRTOutliers',
459 '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())),
460 'Kt4EMPFlowEventShape.Density',
461 'Kt4EMPFlowNeutEventShape.Density',
462 'TauTracks.pt.eta.phi.flagSet.trackLinks',
463 '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.GN2Xv02_phbb.GN2Xv02_phcc.GN2Xv02_ptop.GN2Xv02_pqcd',
467 PHYSLITEItemList = PHYSLITESlimmingHelper.GetItemList()
469 formatString =
'D2AOD_PHYSLITE' if 'StreamDAOD_PHYS' in flags.Input.ProcessingTags
else 'DAOD_PHYSLITE'
470 acc.merge(
OutputStreamCfg(flags, formatString, ItemList=PHYSLITEItemList, AcceptAlgs=[
"PHYSLITEKernel"]))
471 acc.merge(
SetupMetaDataForStreamCfg(flags, formatString, AcceptAlgs=[
"PHYSLITEKernel"], createMetadata=[MetadataCategory.CutFlowMetaData, MetadataCategory.TruthMetaData]))