16 """Configure the derivation framework driving algorithm (kernel) for HIGG9D1"""
17 acc = ComponentAccumulator()
19 doLRT = flags.Tracking.doLargeD0
21 log_HIGG9D1.info(
"flags.Tracking.doLargeD0 is True")
23 log_HIGG9D1.info(
"flags.Tracking.doLargeD0 is False")
25 mainMuonInput =
"StdWithLRTMuons" if doLRT
else "Muons"
26 mainIDInput =
"InDetWithLRTTrackParticles" if doLRT
else "InDetTrackParticles"
28 from DerivationFrameworkLLP.LLPToolsConfig
import LRTMuonMergerAlg
29 from AthenaConfiguration.Enums
import LHCPeriod
30 acc.merge(LRTMuonMergerAlg( flags,
31 PromptMuonLocation =
"Muons",
32 LRTMuonLocation =
"MuonsLRT",
33 OutputMuonLocation = mainMuonInput,
34 CreateViewCollection =
True,
35 UseRun3WP = flags.GeoModel.Run
is LHCPeriod.Run3 ))
36 from DerivationFrameworkInDet.InDetToolsConfig
import InDetLRTMergeCfg
37 acc.merge(InDetLRTMergeCfg( flags, OutputTrackParticleLocation = mainIDInput ))
39 MuonToRelink = [
"Muons",
"MuonsLRT" ]
if doLRT
else []
40 TrkToRelink = [
"InDetTrackParticles",
"InDetLargeD0TrackParticles"]
if doLRT
else []
42 from DerivationFrameworkBPhys.commonBPHYMethodsCfg
import (
43 BPHY_V0ToolCfg, BPHY_InDetDetailedTrackSelectorToolCfg,
44 BPHY_VertexPointEstimatorCfg, BPHY_TrkVKalVrtFitterCfg,
48 HIGG9D1_AugOriginalCounts = acc.popToolsAndMerge(
49 AugOriginalCountsCfg(flags, name =
"HIGG9D1_AugOriginalCounts"))
50 acc.addPublicTool(HIGG9D1_AugOriginalCounts)
52 V0Tools = acc.popToolsAndMerge(BPHY_V0ToolCfg(flags,
"HIGG9D1"))
53 vkalvrt = acc.popToolsAndMerge(BPHY_TrkVKalVrtFitterCfg(flags,
"HIGG9D1"))
54 acc.addPublicTool(vkalvrt)
55 acc.addPublicTool(V0Tools)
56 TrackSelector = acc.popToolsAndMerge(BPHY_InDetDetailedTrackSelectorToolCfg(flags,
"HIGG9D1"))
57 acc.addPublicTool(TrackSelector)
58 vpest = acc.popToolsAndMerge(BPHY_VertexPointEstimatorCfg(flags,
"HIGG9D1"))
59 acc.addPublicTool(vpest)
61 from JpsiUpsilonTools.JpsiUpsilonToolsConfig
import PrimaryVertexRefittingToolCfg
62 pvRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags))
63 acc.addPublicTool(pvRefitter)
65 HIGG9D1JpsiFinder = CompFactory.Analysis.JpsiFinder(
66 name =
"HIGG9D1JpsiFinder",
69 TrackAndTrack =
False,
71 trackThresholdPt = 2400.,
72 invMassLower = 2600.0,
73 invMassUpper = 3500.0,
75 oppChargesOnly =
True,
76 atLeastOneComb =
True,
77 useCombinedMeasurement =
False,
78 muonCollectionKey = mainMuonInput,
79 TrackParticleCollection = mainIDInput,
80 V0VertexFitterTool =
None,
82 TrkVertexFitterTool = vkalvrt,
83 TrackSelectorTool = TrackSelector,
84 VertexPointEstimator = vpest,
86 acc.addPublicTool(HIGG9D1JpsiFinder)
88 HIGG9D1UpsiFinder = CompFactory.Analysis.JpsiFinder(
89 name =
"HIGG9D1UpsiFinder",
92 TrackAndTrack =
False,
94 trackThresholdPt = 2400.,
95 invMassLower = 8900.0,
96 invMassUpper = 9900.0,
98 oppChargesOnly =
True,
99 atLeastOneComb =
True,
100 useCombinedMeasurement =
False,
101 muonCollectionKey = mainMuonInput,
102 TrackParticleCollection = mainIDInput,
103 V0VertexFitterTool =
None,
105 TrkVertexFitterTool = vkalvrt,
106 TrackSelectorTool = TrackSelector,
107 VertexPointEstimator = vpest,
109 acc.addPublicTool(HIGG9D1UpsiFinder)
111 HIGG9D1_Jpsi = CompFactory.DerivationFramework.Reco_Vertex(
112 name =
"HIGG9D1_Jpsi",
113 VertexSearchTool = HIGG9D1JpsiFinder,
114 OutputVtxContainerName =
"HIGG9D1_JpsiCandidates",
115 PVContainerName =
"PrimaryVertices",
116 RefPVContainerName =
"HIGG9D1_JpsiRefittedPrimaryVertices",
120 RelinkTracks = TrkToRelink,
121 RelinkMuons = MuonToRelink,
122 PVRefitter = pvRefitter,
124 acc.addPublicTool(HIGG9D1_Jpsi)
126 HIGG9D1_Upsi = CompFactory.DerivationFramework.Reco_Vertex(
127 name =
"HIGG9D1_Upsi",
128 VertexSearchTool = HIGG9D1UpsiFinder,
129 OutputVtxContainerName =
"HIGG9D1_UpsiCandidates",
130 PVContainerName =
"PrimaryVertices",
131 RefPVContainerName =
"HIGG9D1_UpsiRefittedPrimaryVertices",
135 RelinkTracks = TrkToRelink,
136 RelinkMuons = MuonToRelink,
137 PVRefitter = pvRefitter,
139 acc.addPublicTool(HIGG9D1_Upsi)
141 from InDetTrackSelectionTool.InDetTrackSelectionToolConfig
import (
142 InDetTrackSelectionTool_Loose_Cfg)
143 HIGG9D1_isoTrackSelTool = acc.popToolsAndMerge(InDetTrackSelectionTool_Loose_Cfg(
145 name =
"HIGG9D1_isoTrackSelTool",
149 from IsolationAlgs.IsoToolsConfig
import TrackIsolationToolCfg
150 HIGG9D1_TrackIsoTool = acc.popToolsAndMerge(TrackIsolationToolCfg(
152 name =
"HIGG9D1_TrackIsoTool",
153 TrackSelectionTool = HIGG9D1_isoTrackSelTool))
154 acc.addPublicTool(HIGG9D1_TrackIsoTool)
156 HIGG9D1_JpsiVtxTrkIsoDecor = CompFactory.DerivationFramework.VertexTrackIsolation(
157 name =
"HIGG9D1_JpsiVtxTrkIsoDecor",
158 TrackIsoTool = HIGG9D1_TrackIsoTool,
159 TrackContainer =
"InDetTrackParticles",
160 InputVertexContainer =
"HIGG9D1_JpsiCandidates",
161 FixElecExclusion =
False,
163 acc.addPublicTool(HIGG9D1_JpsiVtxTrkIsoDecor)
165 HIGG9D1_UpsiVtxTrkIsoDecor = CompFactory.DerivationFramework.VertexTrackIsolation(
166 name =
"HIGG9D1_UpsiVtxTrkIsoDecor",
167 TrackIsoTool = HIGG9D1_TrackIsoTool,
168 TrackContainer =
"InDetTrackParticles",
169 InputVertexContainer =
"HIGG9D1_UpsiCandidates",
170 FixElecExclusion =
False,
172 acc.addPublicTool(HIGG9D1_UpsiVtxTrkIsoDecor)
175 from AthenaCommon.CFElements
import seqAND
176 acc.addSequence( seqAND(
"HIGG9D1Sequence") )
179 from DerivationFrameworkPhys.PhysCommonConfig
import PhysCommonAugmentationsCfg
180 acc.merge(PhysCommonAugmentationsCfg(flags, TriggerListsHelper = kwargs[
'TriggerListsHelper']), sequenceName=
"HIGG9D1Sequence")
185 HIGG9D1_onia_skim = CompFactory.DerivationFramework.AnyVertexSkimmingTool(name =
"HIGG9D1_onia_skim", VertexContainerNames = [
"HIGG9D1_JpsiCandidates",
"HIGG9D1_UpsiCandidates"])
186 acc.addPublicTool(HIGG9D1_onia_skim)
188 HIGG9D1_onia_skimKernel = CompFactory.DerivationFramework.DerivationKernel(
189 "HIGG9D1_onia_skimKernel",
190 AugmentationTools = [ HIGG9D1_AugOriginalCounts, HIGG9D1_Jpsi, HIGG9D1_Upsi, HIGG9D1_JpsiVtxTrkIsoDecor, HIGG9D1_UpsiVtxTrkIsoDecor ],
191 SkimmingTools = [ HIGG9D1_onia_skim ])
193 acc.addEventAlgo(HIGG9D1_onia_skimKernel, sequenceName=
"HIGG9D1Sequence")
196 from BTagging.FlavorTaggingConfig
import FlavorTaggingCfg
197 acc.merge(FlavorTaggingCfg(flags,
"AntiKt4EMPFlowJets"), sequenceName=
"HIGG9D1Sequence")
203 from DerivationFrameworkTools.DerivationFrameworkToolsConfig
import (
204 xAODStringSkimmingToolCfg)
208 HIGG9D1_smallR_EMPFlow_2j_sel =
"count(AntiKt4EMPFlowJets.pt > 18*GeV && abs(AntiKt4EMPFlowJets.eta) < 2.8) >= 2"
209 HIGG9D1_smallR_EMPFlow_1j_sel =
"count(AntiKt4EMPFlowJets.pt > 33*GeV && abs(AntiKt4EMPFlowJets.eta) < 2.8) >= 1"
214 HIGG9D1_smallR_EMPFlow_1b_sel =
"count(AntiKt4EMPFlowJets.pt > 18*GeV && abs(AntiKt4EMPFlowJets.eta) < 2.8 && log(AntiKt4EMPFlowJets.GN2v01_pb/(0.2*AntiKt4EMPFlowJets.GN2v01_pc + (1.-0.2-0.01)*AntiKt4EMPFlowJets.GN2v01_pu + 0.01*AntiKt4EMPFlowJets.GN2v01_ptau))>=0.844) >= 1"
216 HIGG9D1_bjet_sel =
"%s && %s && %s" % (HIGG9D1_smallR_EMPFlow_2j_sel, HIGG9D1_smallR_EMPFlow_1j_sel, HIGG9D1_smallR_EMPFlow_1b_sel)
217 HIGG9D1_bb_skim = acc.getPrimaryAndMerge(xAODStringSkimmingToolCfg(
218 flags, name =
"HIGG9D1_bb_skim", expression = HIGG9D1_bjet_sel))
221 HIGG9D1_tauTrks =
'(TauJets.nTracks + TauJets.nTracksIsolation >= 1 && TauJets.nTracks + TauJets.nTracksIsolation <= 8)'
222 HIGG9D1_tauLead =
'(TauJets.pt > 23.0*GeV || TauJets.ptFinalCalib > 23.0*GeV)'
223 HIGG9D1_tauSubl =
'(TauJets.pt > 18.0*GeV || TauJets.ptFinalCalib > 18.0*GeV)'
224 HIGG9D1_tauId =
'TauJets.DFTauRNNLoose'
225 HIGG9D1_tauReq0 =
'count( '+HIGG9D1_tauSubl+
' && '+HIGG9D1_tauTrks+
' ) >= 2'
226 HIGG9D1_tauReq1 =
'count( '+HIGG9D1_tauSubl+
' && '+HIGG9D1_tauTrks+
' && '+HIGG9D1_tauId+
' ) >= 1'
227 HIGG9D1_tauReq2 =
'count( '+HIGG9D1_tauLead+
' && '+HIGG9D1_tauTrks+
' ) >= 1'
228 HIGG9D1_tau_sel =
"%s && %s && %s" % (HIGG9D1_tauReq0, HIGG9D1_tauReq1, HIGG9D1_tauReq2)
230 HIGG9D1_tautau_skim = acc.getPrimaryAndMerge(xAODStringSkimmingToolCfg(
231 flags, name =
"HIGG9D1_tautau_skim", expression = HIGG9D1_tau_sel))
234 from DerivationFrameworkHiggs.SkimmingToolHIGG1Config
import SkimmingToolHIGG1Cfg
235 HIGG9D1_yy_skim = acc.popToolsAndMerge(SkimmingToolHIGG1Cfg(
237 name =
"HIGG9D1_yy_skim",
239 ReqireLArError =
True,
240 RequireTrigger =
False,
241 RequirePreselection =
True,
242 RequireKinematic =
False,
243 RequireQuality =
False,
244 RequireIsolation =
False,
245 RequireInvariantMass =
False,
246 IncludeSingleMergedElectronPreselection =
False,
247 IncludeSingleElectronPreselection =
False,
248 IncludeDoubleElectronPreselection =
False,
249 IncludeSingleMuonPreselection =
False,
250 IncludeDoubleMuonPreselection =
False,
251 IncludePhotonDoubleElectronPreselection =
False,
252 IncludePhotonMergedElectronPreselection =
False,
253 IncludeHighPtPhotonElectronPreselection =
False,
254 IncludeDoublePhotonPreselection =
True,
255 MinimumPhotonPt = 4800.0,
258 acc.addPublicTool(HIGG9D1_yy_skim)
261 HIGG9D1_bb_tautau_yy_skim = CompFactory.DerivationFramework.FilterCombinationOR(
262 name =
"HIGG9D1_bb_tautau_yy_skim",
263 FilterList = [HIGG9D1_bb_skim, HIGG9D1_tautau_skim, HIGG9D1_yy_skim])
264 acc.addPublicTool(HIGG9D1_bb_tautau_yy_skim)
267 from DerivationFrameworkCalo.DerivationFrameworkCaloConfig
import (CaloDecoratorKernelCfg, ClusterEnergyPerLayerDecoratorCfg)
268 acc.merge(CaloDecoratorKernelCfg(flags), sequenceName=
"HIGG9D1Sequence")
271 augmentationTools = []
272 cluster_sizes = (3,5), (5,7), (7,7)
273 for neta, nphi
in cluster_sizes:
274 cename =
"ClusterEnergyPerLayerDecorator_%sx%s" % (neta, nphi)
275 ClusterEnergyPerLayerDecorator = acc.popToolsAndMerge( ClusterEnergyPerLayerDecoratorCfg(flags, neta = neta, nphi=nphi, name=cename ))
276 acc.addPublicTool(ClusterEnergyPerLayerDecorator)
277 augmentationTools.append(ClusterEnergyPerLayerDecorator)
279 HIGG9D1_bb_tautau_yy_skimKernel = CompFactory.DerivationFramework.DerivationKernel(
280 "HIGG9D1_bb_tautau_yy_skimKernel",
281 AugmentationTools = augmentationTools,
282 SkimmingTools = [ HIGG9D1_bb_tautau_yy_skim ])
284 acc.addEventAlgo(HIGG9D1_bb_tautau_yy_skimKernel, sequenceName=
"HIGG9D1Sequence")
286 from IsolationAlgs.DerivationTrackIsoConfig
import DerivationTrackIsoCfg
287 acc.merge(DerivationTrackIsoCfg(flags, object_types=(
"Electrons",
"Photons",
"Muons"), sequenceName=
"HIGG9D1Sequence"))
290 from LeptonTaggers.LeptonTaggersConfig
import DecoratePLITAlgsCfg
291 acc.merge(DecoratePLITAlgsCfg(flags), sequenceName=
"HIGG9D1Sequence")
293 from IsolationSelection.IsolationSelectionConfig
import IsoCloseByAlgsCfg
294 contNames = [
"Muons",
"Electrons",
"Photons" ]
295 acc.merge(IsoCloseByAlgsCfg(flags, isPhysLite =
False, containerNames = contNames, useSelTools =
True, stream_name = kwargs[
'StreamName']), sequenceName=
"HIGG9D1Sequence")
298 from DerivationFrameworkEGamma.EGammaToolsConfig
import PhotonVertexSelectionWrapperKernelCfg
299 acc.merge(PhotonVertexSelectionWrapperKernelCfg(flags), sequenceName=
"HIGG9D1Sequence")
300 from DerivationFrameworkHiggs.HIGG1D1CustomVertexConfig
import DiphotonVertexDecoratorCfg
301 DiphotonVertexDecorator = acc.popToolsAndMerge(DiphotonVertexDecoratorCfg(
303 MinimumPhotonPt = 4800.0,
304 DiphotonVertexName =
"HIGG9D1_DiphotonPrimaryVertices"))
305 acc.addPublicTool(DiphotonVertexDecorator)
306 acc.addEventAlgo(CompFactory.DerivationFramework.CommonAugmentation(name =
"DiphotonVertexAugmentation", AugmentationTools = [DiphotonVertexDecorator]), sequenceName=
"HIGG9D1Sequence")
312 HIGG9D1MuonTPThinningTool = CompFactory.DerivationFramework.MuonTrackParticleThinning(
313 name =
"HIGG9D1MuonTPThinningTool",
314 StreamName = kwargs[
'StreamName'],
316 InDetTrackParticlesKey =
"InDetTrackParticles")
317 acc.addPublicTool(HIGG9D1MuonTPThinningTool)
320 HIGG9D1ElectronTPThinningTool = CompFactory.DerivationFramework.EgammaTrackParticleThinning(
321 name =
"HIGG9D1ElectronTPThinningTool",
323 StreamName = kwargs[
'StreamName'],
324 GSFTrackParticlesKey =
"GSFTrackParticles",
325 InDetTrackParticlesKey =
"InDetTrackParticles")
326 acc.addPublicTool(HIGG9D1ElectronTPThinningTool)
329 HIGG9D1PhotonTPThinningTool = CompFactory.DerivationFramework.EgammaTrackParticleThinning(
330 name =
"HIGG9D1PhotonTPThinningTool",
332 StreamName = kwargs[
'StreamName'],
333 GSFTrackParticlesKey =
"GSFTrackParticles",
334 GSFConversionVerticesKey =
"GSFConversionVertices",
335 InDetTrackParticlesKey =
"InDetTrackParticles")
336 acc.addPublicTool(HIGG9D1PhotonTPThinningTool)
339 HIGG9D1TauTPThinningTool = CompFactory.DerivationFramework.TauTrackParticleThinning(
340 name =
"HIGG9D1TauTPThinningTool",
341 StreamName = kwargs[
'StreamName'],
343 InDetTrackParticlesKey =
"InDetTrackParticles",
344 DoTauTracksThinning =
True,
345 TauTracksKey =
"TauTracks")
346 acc.addPublicTool(HIGG9D1TauTPThinningTool)
349 HIGG9D1_ThinVtxTracks = CompFactory.DerivationFramework.Thin_vtxTrk(
350 name =
"HIGG9D1_ThinVtxTracks",
351 StreamName = kwargs[
'StreamName'],
352 TrackParticleContainerName =
"InDetTrackParticles",
353 VertexContainerNames = [ HIGG9D1_Jpsi.OutputVtxContainerName, HIGG9D1_Upsi.OutputVtxContainerName ],
355 acc.addPublicTool(HIGG9D1_ThinVtxTracks)
357 thinningTools = [HIGG9D1MuonTPThinningTool,
358 HIGG9D1ElectronTPThinningTool,
359 HIGG9D1PhotonTPThinningTool,
360 HIGG9D1TauTPThinningTool,
361 HIGG9D1_ThinVtxTracks]
365 from DerivationFrameworkMCTruth.TruthDerivationToolsConfig
import MenuTruthThinningCfg
366 HIGG9D1TruthTool = acc.getPrimaryAndMerge(MenuTruthThinningCfg(
368 name =
"HIGG9D1TruthTool",
369 StreamName = kwargs[
'StreamName'],
370 ParticlesKey =
"TruthParticles",
371 VerticesKey =
"TruthVertices",
372 WritePartons =
False,
374 WriteBHadrons =
True,
375 WriteCHadrons =
True,
380 WriteBSMProducts =
True,
381 WriteBosonProducts =
False,
382 WriteTopAndDecays =
True,
383 WriteEverything =
False,
384 WriteAllLeptons =
True,
385 WriteNotPhysical =
False,
386 PreserveDescendants =
False,
387 PreserveGeneratorDescendants =
True,
388 PreserveAncestors =
True))
389 acc.addPublicTool(HIGG9D1TruthTool)
390 thinningTools.append(HIGG9D1TruthTool)
395 from DerivationFrameworkMCTruth.HFClassificationCommonConfig
import HFClassificationCommonCfg
396 acc.merge(HFClassificationCommonCfg(flags), sequenceName=
"HIGG9D1Sequence")
399 acc.addEventAlgo(CompFactory.DerivationFramework.DerivationKernel(name, ThinningTools = thinningTools), sequenceName=
"HIGG9D1Sequence")
404 log_HIGG9D1.info(
'****************** STARTING HIGG9D1 ******************')
406 acc = ComponentAccumulator()
412 from DerivationFrameworkPhys.TriggerListsHelper
import TriggerListsHelper
413 HIGG9D1TriggerListsHelper = TriggerListsHelper(flags)
416 acc.merge(
HIGG9D1KernelCfg(flags, name=
"HIGG9D1Kernel", StreamName = streamName, TriggerListsHelper = HIGG9D1TriggerListsHelper))
421 from OutputStreamAthenaPool.OutputStreamConfig
import OutputStreamCfg
422 from xAODMetaDataCnv.InfileMetaDataConfig
import SetupMetaDataForStreamCfg
423 from DerivationFrameworkCore.SlimmingHelper
import SlimmingHelper
425 HIGG9D1SlimmingHelper =
SlimmingHelper(
"HIGG9D1SlimmingHelper", NamesAndTypes = flags.Input.TypedCollections, flags = flags)
426 HIGG9D1SlimmingHelper.SmartCollections = [
432 "InDetTrackParticles",
434 "AntiKt4EMPFlowJets",
436 "MET_Baseline_AntiKt4EMTopo",
437 "MET_Baseline_AntiKt4EMPFlow",
442 "AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets",
443 "AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets"]
445 if flags.Tau.TauEleRM_isAvailable:
446 HIGG9D1SlimmingHelper.SmartCollections.append(
"TauJets_EleRM")
448 from DerivationFrameworkBPhys.commonBPHYMethodsCfg
import getDefaultAllVariables
449 AllVariables = getDefaultAllVariables()
450 AllVariables += [
"PrimaryVertices"]
451 AllVariables += [
"CombinedMuonTrackParticles"]
453 doLRT = flags.Tracking.doLargeD0
454 AllVariables += [
"InDetTrackParticles",
"InDetLargeD0TrackParticles"]
if doLRT
else [
"InDetTrackParticles"]
455 AllVariables += [
"Muons",
"MuonsLRT"]
if doLRT
else [
"Muons"]
456 AllVariables += [
"MuonSegments"]
459 HIGG9D1SlimmingHelper.AppendToDictionary.update({
460 "HIGG9D1_DiphotonPrimaryVertices" :
"xAOD::VertexContainer",
461 "HIGG9D1_DiphotonPrimaryVerticesAux" :
"xAOD::ShallowAuxContainer"
463 AllVariables += [
"HIGG9D1_DiphotonPrimaryVertices"]
465 HIGG9D1_Jpsi = acc.getPublicTool(
"HIGG9D1_Jpsi")
466 HIGG9D1_Upsi = acc.getPublicTool(
"HIGG9D1_Upsi")
469 if HIGG9D1_Jpsi.RefitPV:
470 StaticContent += [
"xAOD::VertexContainer#%s" % HIGG9D1_Jpsi.RefPVContainerName ]
471 StaticContent += [
"xAOD::VertexAuxContainer#%sAux.-vxTrackAtVertex" % HIGG9D1_Jpsi.RefPVContainerName ]
472 if HIGG9D1_Upsi.RefitPV:
473 StaticContent += [
"xAOD::VertexContainer#%s" % HIGG9D1_Upsi.RefPVContainerName ]
474 StaticContent += [
"xAOD::VertexAuxContainer#%sAux.-vxTrackAtVertex" % HIGG9D1_Upsi.RefPVContainerName ]
475 StaticContent += [
"xAOD::VertexContainer#%s" % HIGG9D1_Jpsi.OutputVtxContainerName ]
476 StaticContent += [
"xAOD::VertexAuxContainer#%sAux.-vxTrackAtVertex" % HIGG9D1_Jpsi.OutputVtxContainerName ]
477 StaticContent += [
"xAOD::VertexContainer#%s" % HIGG9D1_Upsi.OutputVtxContainerName ]
478 StaticContent += [
"xAOD::VertexAuxContainer#%sAux.-vxTrackAtVertex" % HIGG9D1_Upsi.OutputVtxContainerName ]
480 excludedVertexAuxData =
"-vxTrackAtVertex.-MvfFitInfo.-isInitialized.-VTAV"
481 StaticContent += [
"xAOD::VertexContainer#SoftBVrtClusterTool_Tight_Vertices"]
482 StaticContent += [
"xAOD::VertexAuxContainer#SoftBVrtClusterTool_Tight_VerticesAux." + excludedVertexAuxData]
483 StaticContent += [
"xAOD::VertexContainer#SoftBVrtClusterTool_Medium_Vertices"]
484 StaticContent += [
"xAOD::VertexAuxContainer#SoftBVrtClusterTool_Medium_VerticesAux." + excludedVertexAuxData]
485 StaticContent += [
"xAOD::VertexContainer#SoftBVrtClusterTool_Loose_Vertices"]
486 StaticContent += [
"xAOD::VertexAuxContainer#SoftBVrtClusterTool_Loose_VerticesAux." + excludedVertexAuxData]
489 from DerivationFrameworkEGamma.PhotonsCPDetailedContent
import PhotonsCPDetailedContent
490 HIGG9D1SlimmingHelper.ExtraVariables += PhotonsCPDetailedContent
492 from DerivationFrameworkEGamma.ElectronsCPDetailedContent
import (ElectronsCPDetailedContent, GSFTracksCPDetailedContent, ElectronsAddAmbiguityContent)
493 HIGG9D1SlimmingHelper.ExtraVariables += ElectronsCPDetailedContent
494 HIGG9D1SlimmingHelper.ExtraVariables += GSFTracksCPDetailedContent
495 HIGG9D1SlimmingHelper.ExtraVariables += ElectronsAddAmbiguityContent
497 from DerivationFrameworkTau.TauJetsCPContent
import TauJetsCPContent
498 HIGG9D1SlimmingHelper.ExtraVariables += TauJetsCPContent
500 from DerivationFrameworkTau.TauJets_LepRMCPContent
import (TauJets_EleRMCPContent, TauJets_MuonRMCPContent)
501 HIGG9D1SlimmingHelper.ExtraVariables += TauJets_EleRMCPContent
502 HIGG9D1SlimmingHelper.ExtraVariables += TauJets_MuonRMCPContent
504 StaticContent += [
"xAOD::TauJetContainer#TauJets_MuonRM"]
505 StaticContent += [
"xAOD::TauJetAuxContainer#TauJets_MuonRMAux.-VertexedClusters"]
506 StaticContent += [
"xAOD::VertexContainer#TauSecondaryVertices_MuonRM"]
507 StaticContent += [
"xAOD::VertexAuxContainer#TauSecondaryVertices_MuonRMAux.-vxTrackAtVertex"]
509 HIGG9D1SlimmingHelper.StaticContent = StaticContent
511 HIGG9D1SlimmingHelper.ExtraVariables += [
512 "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.IsoFixedCone5PtPUsub",
513 "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.GhostPartons.isJvtHS.isJvtPU.IsoFixedCone5PtPUsub",
514 "InDetTrackParticles.TTVA_AMVFVertices.TTVA_AMVFWeights.eProbabilityHT.numberOfTRTHits.numberOfTRTOutliers",
515 "EventInfo.GenFiltHT.GenFiltMET.GenFiltHTinclNu.GenFiltPTZ.GenFiltFatJ.HF_Classification.HF_SimpleClassification",
516 "HLT_xAOD__TrigMissingETContainer_TrigEFMissingET.ex.ey",
517 "HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_mht.ex.ey"]
521 for tagger
in [
"GN2Xv01",
"GN2Xv02"]:
522 for score
in [
"phbb",
"phcc",
"ptop",
"pqcd"]:
523 extraList.append(f
"{tagger}_{score}")
524 HIGG9D1SlimmingHelper.ExtraVariables += [
"AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets." +
".".join(extraList)]
528 modelName =
"bJR10v00"
529 for score
in [
"mass",
"pt"]:
530 extraListReg.append(f
"{modelName}_{score}")
531 HIGG9D1SlimmingHelper.ExtraVariables += [
"AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets." +
".".join(extraListReg)]
535 from DerivationFrameworkMCTruth.MCTruthCommonConfig
import addTruth3ContentToSlimmerTool
536 addTruth3ContentToSlimmerTool(HIGG9D1SlimmingHelper)
537 HIGG9D1SlimmingHelper.ExtraVariables += [
"Electrons.TruthLink",
"Muons.TruthLink",
"Photons.TruthLink",
"AntiKt4TruthDressedWZJets.IsoFixedCone5Pt"]
539 AllVariables += [
"TruthLHEParticles",
"TruthHFWithDecayParticles",
"TruthHFWithDecayVertices",
"TruthCharm",
"TruthPileupParticles",
"InTimeAntiKt4TruthJets",
"OutOfTimeAntiKt4TruthJets",
540 "TruthPrimaryVertices",
"TruthEvents",
"TruthParticles",
"TruthVertices",
"TruthElectrons",
"TruthMuons",
"TruthTaus"]
542 from DerivationFrameworkMCTruth.MCTruthCommonConfig
import AddTauAndDownstreamParticlesCfg
543 acc.merge(AddTauAndDownstreamParticlesCfg(flags))
544 AllVariables += [
"TruthTausWithDecayParticles",
"TruthTausWithDecayVertices"]
546 HIGG9D1SlimmingHelper.SmartCollections += [
547 "AntiKt4TruthDressedWZJets",
548 "AntiKt4TruthWZJets",
553 EgammaExtraContent= [
554 "ptcone20",
"ptcone30",
"ptcone40",
"ptvarcone20",
"ptvarcone30",
"ptvarcone40",
"topoetcone20",
"topoetcone30",
555 "neflowisol20",
"neflowisol30",
"neflowisol40",
556 "ptvarcone20_Nonprompt_All_MaxWeightTTVA_pt500" ,
"ptvarcone20_Nonprompt_All_MaxWeightTTVA_pt1000",
557 "ptvarcone30_Nonprompt_All_MaxWeightTTVA_pt500",
"ptvarcone30_Nonprompt_All_MaxWeightTTVA_pt1000",
558 "ptvarcone40_Nonprompt_All_MaxWeightTTVA_pt500",
"ptvarcone40_Nonprompt_All_MaxWeightTTVA_pt1000",
559 "ptcone20_Nonprompt_All_MaxWeightTTVA_pt500",
"ptcone20_Nonprompt_All_MaxWeightTTVA_pt1000",
560 "ptcone30_Nonprompt_All_MaxWeightTTVA_pt500",
"ptcone30_Nonprompt_All_MaxWeightTTVA_pt1000",
561 "ptcone40_Nonprompt_All_MaxWeightTTVA_pt500",
"ptcone40_Nonprompt_All_MaxWeightTTVA_pt1000",
562 "topoetconecoreConeEnergyCorrection",
"isoSelIsOK",
"topoetcone20_CloseByCorr"
565 ElectronsExtraContent = [
".".join( [
"Electrons",
"deltaPhiRescaled2",
"deltaPhiFromLastMeasurement",
"originalTrackParticle",
"ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000",
"ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000",
"ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr",
"ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr"] + EgammaExtraContent ) ]
567 PhotonsExtraContent = [
".".join([
"Photons",
"topoetcone40",
"topoetcone40_CloseByCorr",
"ptcone20_CloseByCorr"] + EgammaExtraContent ) ]
569 MuonsExtraContent = [
".".join( [
571 "MeasEnergyLoss.MeasEnergyLossSigma.EnergyLossSigma.ParamEnergyLoss",
572 "ParamEnergyLossSigmaMinus.ParamEnergyLossSigmaPlus.clusterLink.scatteringCurvatureSignificance",
573 "deltaPhiRescaled2.deltaPhiFromLastMeasurement.scatteringNeighbourSignificance",
574 "ptcone20.ptcone30.ptcone40.ptvarcone20.ptvarcone30.ptvarcone40.topoetcone30",
575 "neflowisol20.neflowisol30.neflowisol40.ptvarcone20_Nonprompt_All_MaxWeightTTVA_pt500",
576 "ptvarcone20_Nonprompt_All_MaxWeightTTVA_pt1000.ptvarcone30_Nonprompt_All_MaxWeightTTVA_pt500",
577 "ptvarcone30_Nonprompt_All_MaxWeightTTVA_pt1000.ptvarcone40_Nonprompt_All_MaxWeightTTVA_pt500",
578 "ptvarcone40_Nonprompt_All_MaxWeightTTVA_pt1000.ptcone20_Nonprompt_All_MaxWeightTTVA_pt500",
579 "ptcone20_Nonprompt_All_MaxWeightTTVA_pt1000.ptcone30_Nonprompt_All_MaxWeightTTVA_pt500",
580 "ptcone30_Nonprompt_All_MaxWeightTTVA_pt1000.ptcone40_Nonprompt_All_MaxWeightTTVA_pt500",
581 "ptcone40_Nonprompt_All_MaxWeightTTVA_pt1000",
582 "msInnerMatchChi2",
"isoSelIsOK",
"ptvarcone30_Nonprompt_All_MaxWeightTTVA_pt500_CloseByCorr",
583 "ptvarcone30_Nonprompt_All_MaxWeightTTVA_pt1000_CloseByCorr",
"neflowisol20_CloseByCorr",
"topoetcone20_CloseByCorr"
586 HIGG9D1SlimmingHelper.ExtraVariables += ElectronsExtraContent
587 HIGG9D1SlimmingHelper.ExtraVariables += PhotonsExtraContent
588 HIGG9D1SlimmingHelper.ExtraVariables += MuonsExtraContent
590 from IsolationSelection.IsolationSelectionConfig
import setupIsoCloseBySlimmingVariables
591 setupIsoCloseBySlimmingVariables(HIGG9D1SlimmingHelper)
593 from LeptonTaggers.LeptonTaggersConfig
import GetExtraPLITVariablesForDxAOD
594 HIGG9D1SlimmingHelper.ExtraVariables += GetExtraPLITVariablesForDxAOD()
596 HIGG9D1SlimmingHelper.AllVariables = AllVariables
599 HIGG9D1SlimmingHelper.IncludeTriggerNavigation =
False
600 HIGG9D1SlimmingHelper.IncludeJetTriggerContent =
False
601 HIGG9D1SlimmingHelper.IncludeMuonTriggerContent =
False
602 HIGG9D1SlimmingHelper.IncludeEGammaTriggerContent =
False
603 HIGG9D1SlimmingHelper.IncludeTauTriggerContent =
False
604 HIGG9D1SlimmingHelper.IncludeEtMissTriggerContent =
False
605 HIGG9D1SlimmingHelper.IncludeBJetTriggerContent =
False
606 HIGG9D1SlimmingHelper.IncludeBPhysTriggerContent =
False
607 HIGG9D1SlimmingHelper.IncludeMinBiasTriggerContent =
False
609 HIGG9D1SlimmingHelper.IncludeBJetTriggerByYearContent =
True
613 if flags.Trigger.EDMVersion == 2:
614 from DerivationFrameworkPhys.TriggerMatchingCommonConfig
import AddRun2TriggerMatchingToSlimmingHelper
615 AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = HIGG9D1SlimmingHelper,
616 OutputContainerPrefix =
"TrigMatch_",
617 TriggerList = HIGG9D1TriggerListsHelper.Run2TriggerNamesTau)
618 AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = HIGG9D1SlimmingHelper,
619 OutputContainerPrefix =
"TrigMatch_",
620 TriggerList = HIGG9D1TriggerListsHelper.Run2TriggerNamesNoTau)
622 if flags.Trigger.EDMVersion == 3
or (flags.Trigger.EDMVersion == 2
and flags.Trigger.doEDMVersionConversion):
623 from TrigNavSlimmingMT.TrigNavSlimmingMTConfig
import AddRun3TrigNavSlimmingCollectionsToSlimmingHelper
624 AddRun3TrigNavSlimmingCollectionsToSlimmingHelper(HIGG9D1SlimmingHelper)
627 from Campaigns.Utils
import getDataYear
628 if getDataYear(flags) >= 2024:
630 from DerivationFrameworkPhys.TriggerMatchingCommonConfig
import AddjFexRoIsToSlimmingHelper
631 AddjFexRoIsToSlimmingHelper(SlimmingHelper = HIGG9D1SlimmingHelper)
632 elif getDataYear(flags) >= 2015:
634 from DerivationFrameworkPhys.TriggerMatchingCommonConfig
import AddLegacyL1JetRoIsToSlimmingHelper
635 AddLegacyL1JetRoIsToSlimmingHelper(SlimmingHelper = HIGG9D1SlimmingHelper)
638 HIGG9D1ItemList = HIGG9D1SlimmingHelper.GetItemList()
639 acc.merge(OutputStreamCfg(flags,
"DAOD_HIGG9D1", ItemList=HIGG9D1ItemList, AcceptAlgs=[
"HIGG9D1Kernel"]))
640 acc.merge(SetupMetaDataForStreamCfg(flags,
"DAOD_HIGG9D1", AcceptAlgs=[
"HIGG9D1Kernel"], createMetadata=[MetadataCategory.CutFlowMetaData, MetadataCategory.TruthMetaData]))
641 acc.printConfig(withDetails=
True, summariseProps=
True, onlyComponents = [], printDefaults=
True)