165def STDM6CoreCfg(flags, name_tag='STDM6', StreamName='StreamDAOD_STDM6', TriggerListsHelper=None, TauJets_EleRM_in_input=None):
166
167 if TriggerListsHelper is None:
168 from DerivationFrameworkPhys.TriggerListsHelper import TriggerListsHelper
169 TriggerListsHelper = TriggerListsHelper(flags)
170
171 if TauJets_EleRM_in_input is None:
172
173 TauJets_EleRM_in_input = (flags.Input.TypedCollections.count('xAOD::TauJetContainer#TauJets_EleRM') > 0)
174
175 acc = ComponentAccumulator()
176
177
178 from DerivationFrameworkHiggs.HiggsPhysContent import HiggsAugmentationAlgsCfg
179 acc.merge(HiggsAugmentationAlgsCfg(flags))
180
181
183 from IsolationSelection.IsolationSelectionConfig import IsoCloseByAlgsCfg
184 acc.merge(IsoCloseByAlgsCfg(flags, suff = "_"+name_tag, isPhysLite = False, stream_name = StreamName))
185
186
187
188
189 from DerivationFrameworkMCTruth.HFClassificationCommonConfig import HFClassificationCommonCfg
190 acc.merge(HFClassificationCommonCfg(flags))
191
192
193
194
195 from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
196 from xAODMetaDataCnv.InfileMetaDataConfig import SetupMetaDataForStreamCfg
197 from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper
198
199 STDM6SlimmingHelper =
SlimmingHelper(name_tag+
"SlimmingHelper", NamesAndTypes = flags.Input.TypedCollections, flags = flags)
200 STDM6SlimmingHelper.SmartCollections = ["EventInfo",
201 "Electrons",
202 "Photons",
203 "Muons",
204 "PrimaryVertices",
205 "InDetTrackParticles",
206 "AntiKt4EMTopoJets",
207 "AntiKt4EMPFlowJets",
208 "AntiKt10UFOCSSKJets",
209 "AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets",
210 "MET_Baseline_AntiKt4EMTopo",
211 "MET_Baseline_AntiKt4EMPFlow",
212 "TauJets",
213 "TauJets_MuonRM",
214 "DiTauJets",
215 "DiTauJetsLowPt",
216 "AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets",
217 "AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets",
218 ]
219 if TauJets_EleRM_in_input:
220 STDM6SlimmingHelper.SmartCollections.append("TauJets_EleRM")
221
222
223
224
225 STDM6SlimmingHelper.AllVariables += [ "AFPSiHitContainer",
226 "AFPToFHitContainer",
227 "AFPSiHitsClusterContainer",
228 "AFPTrackContainer",
229 "AFPToFTrackContainer",
230 "AFPProtonContainer",
231 "AFPVertexContainer",
232 "CaloCalTopoClusters",
233 ]
234
235
236
237 STDM6SlimmingHelper.AllVariables += ["MuonSegments", "EventInfo",
238 "Kt4EMTopoOriginEventShape","Kt4EMPFlowEventShape","Kt4EMPFlowPUSBEventShape","Kt4EMPFlowNeutEventShape","Kt4UFOCSSKEventShape","Kt4UFOCSSKNeutEventShape",
239 "AntiKt4EMPFlowJets"]
240
241 excludedVertexAuxData = "-vxTrackAtVertex.-MvfFitInfo.-isInitialized.-VTAV"
242 StaticContent = []
243 StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Tight_Vertices"]
244 StaticContent += ["xAOD::VertexAuxContainer#SoftBVrtClusterTool_Tight_VerticesAux." + excludedVertexAuxData]
245 StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Medium_Vertices"]
246 StaticContent += ["xAOD::VertexAuxContainer#SoftBVrtClusterTool_Medium_VerticesAux." + excludedVertexAuxData]
247 StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Loose_Vertices"]
248 StaticContent += ["xAOD::VertexAuxContainer#SoftBVrtClusterTool_Loose_VerticesAux." + excludedVertexAuxData]
249
250 STDM6SlimmingHelper.StaticContent = StaticContent
251
252
253 STDM6SlimmingHelper.ExtraVariables += ["AntiKt4EMTopoJets.DFCommonJets_QGTagger_truthjet_nCharged.DFCommonJets_QGTagger_truthjet_pt.DFCommonJets_QGTagger_truthjet_eta.DFCommonJets_QGTagger_NTracks.DFCommonJets_QGTagger_TracksWidth.DFCommonJets_QGTagger_TracksC1.ConeExclBHadronsFinal.ConeExclCHadronsFinal.GhostBHadronsFinal.GhostCHadronsFinal.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.GhostCHadronsFinalPt",
254 "AntiKt4EMPFlowJets.DFCommonJets_QGTagger_truthjet_nCharged.DFCommonJets_QGTagger_truthjet_pt.DFCommonJets_QGTagger_truthjet_eta.DFCommonJets_QGTagger_NTracks.DFCommonJets_QGTagger_TracksWidth.DFCommonJets_QGTagger_TracksC1.ConeExclBHadronsFinal.ConeExclCHadronsFinal.GhostBHadronsFinal.GhostCHadronsFinal.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.GhostCHadronsFinalPt.isJvtHS.isJvtPU",
255 "TruthPrimaryVertices.t.x.y.z",
256 "InDetTrackParticles.TTVA_AMVFVertices.TTVA_AMVFWeights.eProbabilityHT.numberOfTRTHits.numberOfTRTOutliers",
257 "EventInfo.GenFiltHT.GenFiltMET.GenFiltHTinclNu.GenFiltPTZ.GenFiltFatJ.HF_Classification.HF_SimpleClassification",
258 "TauJets.dRmax.etOverPtLeadTrk",
259 "TauJets_MuonRM.dRmax.etOverPtLeadTrk",
260 "HLT_xAOD__TrigMissingETContainer_TrigEFMissingET.ex.ey",
261 "HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_mht.ex.ey"]
262 if TauJets_EleRM_in_input:
263 STDM6SlimmingHelper.ExtraVariables += ["TauJets_EleRM.dRmax.etOverPtLeadTrk"]
264
265
266
267 STDM6SlimmingHelper.ExtraVariables += ["AntiKt4EMTopoJets.DFCommonJets_QGTagger_NTracks.DFCommonJets_QGTagger_TracksWidth.DFCommonJets_QGTagger_TracksC1",
268 "AntiKt4EMPFlowJets.DFCommonJets_QGTagger_NTracks.DFCommonJets_QGTagger_TracksWidth.DFCommonJets_QGTagger_TracksC1",
269 "AntiKt4EMPFlowJets.passOnlyBJVT.DFCommonJets_bJvt.isJvtHS.isJvtPU",
270 "InDetTrackParticles.truthMatchProbability",
271 "AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets.zg.rg.NumTrkPt1000.TrackWidthPt1000.GhostMuonSegmentCount.EnergyPerSampling.GhostTrack",
272 "AntiKt10UFOCSSKJets.NumTrkPt1000.TrackWidthPt1000.GhostMuonSegmentCount.EnergyPerSampling.GhostTrack"]
273
274
275
276 extraList = []
277 for tagger in ["GN2Xv00", "GN2XWithMassv00", "GN2Xv01"]:
278 for score in ["phbb", "phcc", "ptop", "pqcd"]:
279 extraList.append(f"{tagger}_{score}")
280 STDM6SlimmingHelper.ExtraVariables += ["AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets." + ".".join(extraList)]
281
282
283
284
285
286
287
288 if flags.Input.isMC:
289
290 from DerivationFrameworkMCTruth.MCTruthCommonConfig import addTruth3ContentToSlimmerTool
291 addTruth3ContentToSlimmerTool(STDM6SlimmingHelper)
292
293
294 STDM6SlimmingHelper.AppendToDictionary.update({'TruthParticles': 'xAOD::TruthParticleContainer',
295 'TruthParticlesAux': 'xAOD::TruthParticleAuxContainer'})
296
297 STDM6SlimmingHelper.AllVariables += ['TruthHFWithDecayParticles','TruthHFWithDecayVertices','TruthCharm','TruthPileupParticles','InTimeAntiKt4TruthJets','OutOfTimeAntiKt4TruthJets']
298 STDM6SlimmingHelper.AllVariables += ["TruthEvents", "TruthParticles", "TruthVertices", "AntiKt4TruthJets","AntiKt4TruthWZJets"]
299 STDM6SlimmingHelper.ExtraVariables += ["Electrons.TruthLink",
300 "Muons.TruthLink",
301 "Photons.TruthLink",
302 "AntiKt4EMTopoJets.DFCommonJets_QGTagger_truthjet_nCharged.DFCommonJets_QGTagger_truthjet_pt.DFCommonJets_QGTagger_truthjet_eta.DFCommonJets_QGTagger_NTracks.DFCommonJets_QGTagger_TracksWidth.DFCommonJets_QGTagger_TracksC1.ConeExclBHadronsFinal.ConeExclCHadronsFinal.GhostBHadronsFinal.GhostCHadronsFinal.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.GhostCHadronsFinalPt",
303 "AntiKt4EMPFlowJets.DFCommonJets_QGTagger_truthjet_nCharged.DFCommonJets_QGTagger_truthjet_pt.DFCommonJets_QGTagger_truthjet_eta.DFCommonJets_QGTagger_NTracks.DFCommonJets_QGTagger_TracksWidth.DFCommonJets_QGTagger_TracksC1.ConeExclBHadronsFinal.ConeExclCHadronsFinal.GhostBHadronsFinal.GhostCHadronsFinal.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.GhostCHadronsFinalPt",
304 "TruthPrimaryVertices.t.x.y.z",
305 "InDetTrackParticles.TTVA_AMVFVertices.TTVA_AMVFWeights.eProbabilityHT.numberOfTRTHits.numberOfTRTOutliers",
306 "PrimaryVertices.x.y.z.covariance.trackWeights.vertexType.sumPt2",
307 ]
308
309
310 STDM6SlimmingHelper.SmartCollections += ["AntiKt4TruthWZJets"]
311 STDM6SlimmingHelper.AllVariables += ["TruthTopQuarkWithDecayParticles","TruthTopQuarkWithDecayVertices",
312 "AntiKt4TruthJets", "InTimeAntiKt4TruthJets", "OutOfTimeAntiKt4TruthJets", "TruthParticles"]
313 STDM6SlimmingHelper.ExtraVariables += ["TruthVertices.uid.z"]
314
315 from DerivationFrameworkMCTruth.MCTruthCommonConfig import AddTauAndDownstreamParticlesCfg
316 acc.merge(AddTauAndDownstreamParticlesCfg(flags))
317 STDM6SlimmingHelper.AllVariables += ['TruthTausWithDecayParticles','TruthTausWithDecayVertices']
318
319 STDM6SlimmingHelper.AppendToDictionary.update({'Kt4UFOCSSKEventShape':'xAOD::EventShape',
320 'Kt4UFOCSSKEventShapeAux':'xAOD::EventShapeAuxInfo',
321 'Kt4UFOCSSKNeutEventShape':'xAOD::EventShape',
322 'Kt4UFOCSSKNeutEventShapeAux':'xAOD::EventShapeAuxInfo'})
323
324
325 from DerivationFrameworkHiggs.HiggsPhysContent import setupHiggsSlimmingVariables
326 setupHiggsSlimmingVariables(flags, STDM6SlimmingHelper)
327
328
329 STDM6SlimmingHelper.IncludeTriggerNavigation = False
330
331 STDM6SlimmingHelper.IncludeJetTriggerContent = True
332 STDM6SlimmingHelper.IncludeMuonTriggerContent = False
333 STDM6SlimmingHelper.IncludeEGammaTriggerContent = False
334 STDM6SlimmingHelper.IncludeJetTauEtMissTriggerContent = False
335 STDM6SlimmingHelper.IncludeTauTriggerContent = False
336 STDM6SlimmingHelper.IncludeEtMissTriggerContent = False
337 STDM6SlimmingHelper.IncludeBJetTriggerContent = False
338 STDM6SlimmingHelper.IncludeBPhysTriggerContent = False
339 STDM6SlimmingHelper.IncludeMinBiasTriggerContent = False
340
341
342
343 if flags.Trigger.EDMVersion == 2:
344 from DerivationFrameworkPhys.TriggerMatchingCommonConfig import AddRun2TriggerMatchingToSlimmingHelper
345 AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = STDM6SlimmingHelper,
346 OutputContainerPrefix = "TrigMatch_",
347 TriggerList = TriggerListsHelper.Run2TriggerNamesTau)
348 AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = STDM6SlimmingHelper,
349 OutputContainerPrefix = "TrigMatch_",
350 TriggerList = TriggerListsHelper.Run2TriggerNamesNoTau)
351 triggerNames = ["a4tcemsubjesFS", "a4tcemsubjesISFS", "a10tclcwsubjesFS", "a10tclcwsubFS", "a10ttclcwjesFS", "GSCJet"]
352 for trigger in triggerNames:
353 STDM6SlimmingHelper.FinalItemList.append('xAOD::AuxContainerBase!#HLT_xAOD__JetContainer_'+trigger+'Aux.pt.eta.phi.m')
354
355
356 if flags.Trigger.EDMVersion == 3 or (flags.Trigger.EDMVersion == 2 and flags.Trigger.doEDMVersionConversion):
357 from TrigNavSlimmingMT.TrigNavSlimmingMTConfig import AddRun3TrigNavSlimmingCollectionsToSlimmingHelper
358 AddRun3TrigNavSlimmingCollectionsToSlimmingHelper(STDM6SlimmingHelper)
359
360 jetOutputList = ["AntiKt4PV0TrackJets", "AntiKt4UFOCSSKJets"]
361 if flags.Input.isMC:
362 jetOutputList = ["AntiKt4PV0TrackJets","AntiKt4UFOCSSKNoPtCutJets","AntiKt4EMPFlowNoPtCutJets","AntiKt4EMTopoNoPtCutJets","AntiKt4EMPFlowMLJets"]
363 from DerivationFrameworkJetEtMiss.JetCommonConfig import addJetsToSlimmingTool
364 addJetsToSlimmingTool(STDM6SlimmingHelper, jetOutputList, STDM6SlimmingHelper.SmartCollections)
365
366
367
368 STDM6ItemList = STDM6SlimmingHelper.GetItemList()
369 acc.merge(OutputStreamCfg(flags, "DAOD_"+name_tag, ItemList=STDM6ItemList, AcceptAlgs=[name_tag+"Kernel"]))
370 acc.merge(SetupMetaDataForStreamCfg(flags, "DAOD_"+name_tag, AcceptAlgs=[name_tag+"Kernel"], createMetadata=[MetadataCategory.CutFlowMetaData, MetadataCategory.TruthMetaData]))
371
372 return acc
373