ATLAS Offline Software
Functions
python.HIGG1D1 Namespace Reference

Functions

def HIGG1D1KernelCfg (flags, name='HIGG1D1Kernel', **kwargs)
 
def HIGG1D1Cfg (flags)
 

Function Documentation

◆ HIGG1D1Cfg()

def python.HIGG1D1.HIGG1D1Cfg (   flags)

Definition at line 238 of file HIGG1D1.py.

238 def HIGG1D1Cfg(flags):
239 
240  acc = ComponentAccumulator()
241 
242  from DerivationFrameworkPhys.TriggerListsHelper import TriggerListsHelper
243  HIGG1D1TriggerListsHelper = TriggerListsHelper(flags)
244 
245  acc.merge(HIGG1D1KernelCfg(flags, name="HIGG1D1Kernel", StreamName = 'StreamDAOD_HIGG1D1', TriggerListsHelper = HIGG1D1TriggerListsHelper))
246 
247 
248  # ============================
249  # Define contents of the format
250  # =============================
251  from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
252  from xAODMetaDataCnv.InfileMetaDataConfig import SetupMetaDataForStreamCfg
253  from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper
254 
255  HIGG1D1SlimmingHelper = SlimmingHelper("HIGG1D1SlimmingHelper", NamesAndTypes = flags.Input.TypedCollections, flags = flags)
256  HIGG1D1SlimmingHelper.SmartCollections = ["EventInfo",
257  "Electrons",
258  "Photons",
259  "Muons",
260  "PrimaryVertices",
261  "InDetTrackParticles",
262  "AntiKt4EMTopoJets",
263  "AntiKt4EMPFlowJets",
264  "BTagging_AntiKt4EMPFlow",
265  "BTagging_AntiKtVR30Rmax4Rmin02Track",
266  "MET_Baseline_AntiKt4EMTopo",
267  "MET_Baseline_AntiKt4EMPFlow",
268  "TauJets",
269  "DiTauJets",
270  "DiTauJetsLowPt",
271  "AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets",
272  "AntiKtVR30Rmax4Rmin02PV0TrackJets"]
273 
274  excludedVertexAuxData = "-vxTrackAtVertex.-MvfFitInfo.-isInitialized.-VTAV"
275  StaticContent = []
276  StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Tight_Vertices"]
277  StaticContent += ["xAOD::VertexAuxContainer#SoftBVrtClusterTool_Tight_VerticesAux." + excludedVertexAuxData]
278  StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Medium_Vertices"]
279  StaticContent += ["xAOD::VertexAuxContainer#SoftBVrtClusterTool_Medium_VerticesAux." + excludedVertexAuxData]
280  StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Loose_Vertices"]
281  StaticContent += ["xAOD::VertexAuxContainer#SoftBVrtClusterTool_Loose_VerticesAux." + excludedVertexAuxData]
282 
283  HIGG1D1SlimmingHelper.StaticContent = StaticContent
284 
285  # Trigger content
286  HIGG1D1SlimmingHelper.IncludeTriggerNavigation = False
287  HIGG1D1SlimmingHelper.IncludeJetTriggerContent = False
288  HIGG1D1SlimmingHelper.IncludeMuonTriggerContent = False
289  HIGG1D1SlimmingHelper.IncludeEGammaTriggerContent = False
290  HIGG1D1SlimmingHelper.IncludeTauTriggerContent = False
291  HIGG1D1SlimmingHelper.IncludeEtMissTriggerContent = False
292  HIGG1D1SlimmingHelper.IncludeBJetTriggerContent = False
293  HIGG1D1SlimmingHelper.IncludeBPhysTriggerContent = False
294  HIGG1D1SlimmingHelper.IncludeMinBiasTriggerContent = False
295 
296  # Truth containers
297  if flags.Input.isMC:
298  HIGG1D1SlimmingHelper.AppendToDictionary = {
299  'TruthEvents':'xAOD::TruthEventContainer',
300  'TruthEventsAux':'xAOD::TruthEventAuxContainer',
301  'MET_Truth':'xAOD::MissingETContainer',
302  'MET_TruthAux':'xAOD::MissingETAuxContainer',
303  'TruthElectrons':'xAOD::TruthParticleContainer',
304  'TruthElectronsAux':'xAOD::TruthParticleAuxContainer',
305  'TruthMuons':'xAOD::TruthParticleContainer',
306  'TruthMuonsAux':'xAOD::TruthParticleAuxContainer',
307  'TruthPhotons':'xAOD::TruthParticleContainer',
308  'TruthPhotonsAux':'xAOD::TruthParticleAuxContainer',
309  'TruthTaus':'xAOD::TruthParticleContainer',
310  'TruthTausAux':'xAOD::TruthParticleAuxContainer',
311  'TruthNeutrinos':'xAOD::TruthParticleContainer',
312  'TruthNeutrinosAux':'xAOD::TruthParticleAuxContainer',
313  'TruthBSM':'xAOD::TruthParticleContainer',
314  'TruthBSMAux':'xAOD::TruthParticleAuxContainer',
315  'TruthBoson':'xAOD::TruthParticleContainer',
316  'TruthBosonAux':'xAOD::TruthParticleAuxContainer',
317  'TruthTop':'xAOD::TruthParticleContainer',
318  'TruthTopAux':'xAOD::TruthParticleAuxContainer',
319  'TruthForwardProtons':'xAOD::TruthParticleContainer',
320  'TruthForwardProtonsAux':'xAOD::TruthParticleAuxContainer',
321  'BornLeptons':'xAOD::TruthParticleContainer',
322  'BornLeptonsAux':'xAOD::TruthParticleAuxContainer',
323  'TruthBosonsWithDecayParticles':'xAOD::TruthParticleContainer',
324  'TruthBosonsWithDecayParticlesAux':'xAOD::TruthParticleAuxContainer',
325  'TruthBosonsWithDecayVertices':'xAOD::TruthVertexContainer',
326  'TruthBosonsWithDecayVerticesAux':'xAOD::TruthVertexAuxContainer',
327  'TruthBSMWithDecayParticles':'xAOD::TruthParticleContainer',
328  'TruthBSMWithDecayParticlesAux':'xAOD::TruthParticleAuxContainer',
329  'TruthBSMWithDecayVertices':'xAOD::TruthVertexContainer',
330  'TruthBSMWithDecayVerticesAux':'xAOD::TruthVertexAuxContainer',
331  'TruthHFWithDecayParticles':'xAOD::TruthParticleContainer',
332  'TruthHFWithDecayParticlesAux':'xAOD::TruthParticleAuxContainer',
333  'TruthHFWithDecayVertices':'xAOD::TruthVertexContainer',
334  'TruthHFWithDecayVerticesAux':'xAOD::TruthVertexAuxContainer',
335  'TruthCharm':'xAOD::TruthParticleContainer',
336  'TruthCharmAux':'xAOD::TruthParticleAuxContainer',
337  'TruthPrimaryVertices':'xAOD::TruthVertexContainer',
338  'TruthPrimaryVerticesAux':'xAOD::TruthVertexAuxContainer'
339  }
340 
341  from DerivationFrameworkMCTruth.MCTruthCommonConfig import addTruth3ContentToSlimmerTool
342  addTruth3ContentToSlimmerTool(HIGG1D1SlimmingHelper)
343  HIGG1D1SlimmingHelper.AllVariables += ["TruthHFWithDecayParticles",
344  "TruthHFWithDecayVertices",
345  "TruthCharm",
346  "TruthPileupParticles",
347  "InTimeAntiKt4TruthJets",
348  "OutOfTimeAntiKt4TruthJets",
349  "AntiKt4TruthDressedWZJets",
350  "AntiKt4TruthWZJets",
351  "TruthEvents",
352  "TruthPrimaryVertices",
353  "TruthVertices",
354  "TruthParticles"]
355 
356  HIGG1D1SlimmingHelper.ExtraVariables += ["Electrons.TruthLink",
357  "Muons.TruthLink",
358  "Photons.TruthLink",
359  "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",
360  "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",
361  "TruthPrimaryVertices.t.x.y.z",
362  "EventInfo.DFCommonJetsCustomVtx_eventClean_LooseBad.DFCommonJetsCustomVtx_eventClean_TightBad.hardScatterVertexLink.timeStampNSOffset",
363  "TauJets.dRmax.etOverPtLeadTrk"]
364  if flags.Reco.EnableTrigger:
365  HIGG1D1SlimmingHelper.ExtraVariables += [
366  "HLT_xAOD__TrigMissingETContainer_TrigEFMissingET.ex.ey",
367  "HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_mht.ex.ey"
368  ]
369 
370  # Additional content for HIGG1D1
371  HIGG1D1SlimmingHelper.AppendToDictionary.update({
372  "AntiKt4EMPFlowCustomVtxJets": "xAOD::JetContainer",
373  "AntiKt4EMPFlowCustomVtxJetsAux":"xAOD::JetAuxContainer",
374  "METAssoc_AntiKt4EMPFlowCustomVtx": "xAOD::MissingETAssociationMap",
375  "METAssoc_AntiKt4EMPFlowCustomVtxAux":"xAOD::MissingETAuxAssociationMap",
376  "MET_Core_AntiKt4EMPFlowCustomVtx": "xAOD::MissingETContainer",
377  "MET_Core_AntiKt4EMPFlowCustomVtxAux":"xAOD::MissingETAuxContainer",
378  "HggPrimaryVertices":"xAOD::VertexContainer",
379  "HggPrimaryVerticesAux":"xAOD::ShallowAuxContainer",
380  "Kt4EMPFlowCustomVtxEventShape":"xAOD::EventShape",
381  "Kt4EMPFlowCustomVtxEventShapeAux":"xAOD::EventShapeAuxInfo",
382  "Kt4EMPFlowEventShape":"xAOD::EventShape",
383  "Kt4EMPFlowEventShapeAux":"xAOD::EventShapeAuxInfo",
384  "ZeeRefittedPrimaryVertices":"xAOD::VertexContainer",
385  "ZeeRefittedPrimaryVerticesAux":"xAOD::VertexAuxContainer",
386  "AFPSiHitContainer":"xAOD::AFPSiHitContainer",
387  "AFPSiHitContainerAux":"xAOD::AFPSiHitAuxContainer",
388  "AFPToFHitContainer":"xAOD::AFPToFHitContainer",
389  "AFPToFHitContainerAux":"xAOD::AFPToFHitAuxContainer",
390  "AFPVertexContainer":"xAOD::AFPVertexContainer",
391  "AFPVertexContainerAux":"xAOD::AFPVertexAuxContainer",
392  "AFPToFTrackContainer":"xAOD::AFPToFTrackContainer",
393  "AFPToFTrackContainerAux":"xAOD::AFPToFTrackAuxContainer",
394  "BTagging_AntiKt4EMPFlowCustomVtx":"xAOD::BTaggingContainer",
395  "BTagging_AntiKt4EMPFlowCustomVtxAux":"xAOD::BTaggingAuxContainer"
396  })
397 
398  HIGG1D1SlimmingHelper.AllVariables += [
399  "HggPrimaryVertices",
400  "ZeeRefittedPrimaryVertices",
401  "AntiKt4EMPFlowCustomVtxJets",
402  "Kt4EMPFlowCustomVtxEventShape",
403  "Kt4EMPFlowEventShape",
404  "METAssoc_AntiKt4EMPFlowCustomVtx",
405  "MET_Core_AntiKt4EMPFlowCustomVtx"
406  ]
407 
408  # Add AFP information
409  HIGG1D1SlimmingHelper.AllVariables += ["AFPSiHitContainer",
410  "AFPToFHitContainer",
411  "AFPVertexContainer",
412  "AFPToFTrackContainer"]
413  # Add Btagging information
414  from DerivationFrameworkFlavourTag.BTaggingContent import BTaggingStandardContent,BTaggingXbbContent
415  HIGG1D1SlimmingHelper.ExtraVariables += BTaggingStandardContent("AntiKt4EMPFlowCustomVtxJets", flags)
416  HIGG1D1SlimmingHelper.ExtraVariables += BTaggingStandardContent("AntiKt4EMPFlowJets", flags)
417  HIGG1D1SlimmingHelper.ExtraVariables += BTaggingXbbContent("AntiKt4EMPFlowCustomVtxJets", flags)
418  HIGG1D1SlimmingHelper.ExtraVariables += BTaggingXbbContent("AntiKt4EMPFlowJets", flags)
419 
420  # is this really needed given Photons are in the AllVariables list ?
421  from DerivationFrameworkEGamma.PhotonsCPDetailedContent import PhotonsCPDetailedContent
422  HIGG1D1SlimmingHelper.ExtraVariables += PhotonsCPDetailedContent
423 
424 
425  # Add the variables for Gain and Cluster energy
426  from DerivationFrameworkCalo.DerivationFrameworkCaloConfig import (
427  getGainDecorations, getClusterEnergyPerLayerDecorations )
428  gainDecorations = getGainDecorations(acc, flags, 'HIGG1D1Kernel')
429  HIGG1D1SlimmingHelper.ExtraVariables.extend(gainDecorations)
430  clusterEnergyDecorations = getClusterEnergyPerLayerDecorations(
431  acc, 'HIGG1D1Kernel' )
432  HIGG1D1SlimmingHelper.ExtraVariables.extend(clusterEnergyDecorations)
433 
434  # Add HTXS variables
435  HIGG1D1SlimmingHelper.ExtraVariables.extend(["EventInfo.HTXS_prodMode",
436  "EventInfo.HTXS_errorCode",
437  "EventInfo.HTXS_Stage0_Category",
438  "EventInfo.HTXS_Stage1_Category_pTjet25",
439  "EventInfo.HTXS_Stage1_Category_pTjet30",
440  "EventInfo.HTXS_Stage1_FineIndex_pTjet30",
441  "EventInfo.HTXS_Stage1_FineIndex_pTjet25",
442  "EventInfo.HTXS_Stage1_2_Category_pTjet25",
443  "EventInfo.HTXS_Stage1_2_Category_pTjet30",
444  "EventInfo.HTXS_Stage1_2_FineIndex_pTjet30",
445  "EventInfo.HTXS_Stage1_2_FineIndex_pTjet25",
446  "EventInfo.HTXS_Stage1_2_Fine_Category_pTjet25",
447  "EventInfo.HTXS_Stage1_2_Fine_Category_pTjet30",
448  "EventInfo.HTXS_Stage1_2_Fine_FineIndex_pTjet30",
449  "EventInfo.HTXS_Stage1_2_Fine_FineIndex_pTjet25",
450  "EventInfo.HTXS_Njets_pTjet25",
451  "EventInfo.HTXS_Njets_pTjet30",
452  "EventInfo.HTXS_isZ2vvDecay",
453  "EventInfo.HTXS_Higgs_eta",
454  "EventInfo.HTXS_Higgs_m",
455  "EventInfo.HTXS_Higgs_phi",
456  "EventInfo.HTXS_Higgs_pt",
457  "EventInfo.HTXS_V_jets30_eta",
458  "EventInfo.HTXS_V_jets30_m",
459  "EventInfo.HTXS_V_jets30_phi",
460  "EventInfo.HTXS_V_jets30_pt",
461  "EventInfo.HTXS_V_pt"])
462 
463  # Add variables from MaxCell decorator and PhotonPointing decorator
464  HIGG1D1SlimmingHelper.ExtraVariables.extend(["Electrons.maxEcell_time",
465  "Electrons.maxEcell_energy",
466  "Electrons.maxEcell_gain",
467  "Electrons.maxEcell_onlId",
468  "Photons.maxEcell_time",
469  "Photons.maxEcell_energy",
470  "Photons.maxEcell_gain",
471  "Photons.maxEcell_onlId",
472  "Photons.zvertex"])
473  # Add TTVA variables
474  HIGG1D1SlimmingHelper.ExtraVariables.extend(["InDetTrackParticles.TTVA_AMVFVertices.TTVA_AMVFWeights.TTVA_AMVFVertices_forReco.TTVA_AMVFWeights_forReco.TTVA_AMVFVertices_forHiggs.TTVA_AMVFWeights_forHiggs.eProbabilityHT.numberOfTRTHits.numberOfTRTOutliers"])
475 
476  # Trigger content
477  HIGG1D1SlimmingHelper.IncludeTriggerNavigation = False
478  HIGG1D1SlimmingHelper.IncludeJetTriggerContent = False
479  HIGG1D1SlimmingHelper.IncludeMuonTriggerContent = False
480  HIGG1D1SlimmingHelper.IncludeEGammaTriggerContent = False
481  HIGG1D1SlimmingHelper.IncludeTauTriggerContent = False
482  HIGG1D1SlimmingHelper.IncludeEtMissTriggerContent = False
483  HIGG1D1SlimmingHelper.IncludeBJetTriggerContent = False
484  HIGG1D1SlimmingHelper.IncludeBPhysTriggerContent = False
485  HIGG1D1SlimmingHelper.IncludeMinBiasTriggerContent = False
486 
487  # Trigger matching
488  # Run 2
489  if flags.Trigger.EDMVersion == 2:
490  from DerivationFrameworkPhys.TriggerMatchingCommonConfig import AddRun2TriggerMatchingToSlimmingHelper
491  AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = HIGG1D1SlimmingHelper,
492  OutputContainerPrefix = "TrigMatch_",
493  TriggerList = HIGG1D1TriggerListsHelper.Run2TriggerNamesTau)
494  AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = HIGG1D1SlimmingHelper,
495  OutputContainerPrefix = "TrigMatch_",
496  TriggerList = HIGG1D1TriggerListsHelper.Run2TriggerNamesNoTau)
497  # Run 3, or Run 2 with navigation conversion
498  if flags.Trigger.EDMVersion == 3 or (flags.Trigger.EDMVersion == 2 and flags.Trigger.doEDMVersionConversion):
499  from TrigNavSlimmingMT.TrigNavSlimmingMTConfig import AddRun3TrigNavSlimmingCollectionsToSlimmingHelper
501 
502  # Output stream
503  HIGG1D1ItemList = HIGG1D1SlimmingHelper.GetItemList()
504  acc.merge(OutputStreamCfg(flags, "DAOD_HIGG1D1", ItemList=HIGG1D1ItemList, AcceptAlgs=["HIGG1D1Kernel"]))
505  acc.merge(SetupMetaDataForStreamCfg(flags, "DAOD_HIGG1D1", AcceptAlgs=["HIGG1D1Kernel"], createMetadata=[MetadataCategory.CutFlowMetaData, MetadataCategory.TruthMetaData]))
506 
507  return acc

◆ HIGG1D1KernelCfg()

def python.HIGG1D1.HIGG1D1KernelCfg (   flags,
  name = 'HIGG1D1Kernel',
**  kwargs 
)
Configure the derivation framework driving algorithm (kernel) for HIGG1D1

Definition at line 16 of file HIGG1D1.py.

16 def HIGG1D1KernelCfg(flags, name='HIGG1D1Kernel', **kwargs):
17  """Configure the derivation framework driving algorithm (kernel) for HIGG1D1"""
18  acc = ComponentAccumulator()
19 
20  # Common augmentations
21  from DerivationFrameworkPhys.PhysCommonConfig import PhysCommonAugmentationsCfg
22  acc.merge(PhysCommonAugmentationsCfg(flags, TriggerListsHelper = kwargs['TriggerListsHelper']))
23 
24  # Diphoton Vertex creation
25  from DerivationFrameworkHiggs.HIGG1D1CustomVertexConfig import ZeeVertexRefitterCfg, DiPhotonVertexCfg
26  from DerivationFrameworkHiggs.HIGG1D1CustomJetsConfig import HIGG1D1CustomJetsCfg, HIGG1D1CustomJetsCleaningCfg
27  acc.merge(ZeeVertexRefitterCfg(flags))
28  acc.merge(DiPhotonVertexCfg(flags))
29 
30  #CustomJetsConfig
31  acc.merge(HIGG1D1CustomJetsCfg(flags))
32  acc.merge(HIGG1D1CustomJetsCleaningCfg(flags))
33 
34  from DerivationFrameworkFlavourTag.FtagDerivationConfig import FtagJetCollectionsCfg
35  acc.merge(FtagJetCollectionsCfg(flags, ['AntiKt4EMPFlowCustomVtxJets'], ['HggPrimaryVertices'], trackAugmenterPrefix='btagIpHgg_'))
36 
37  #Custom MET
38  from DerivationFrameworkJetEtMiss.METCommonConfig import METCustomVtxCfg
39  acc.merge(METCustomVtxCfg(flags, 'HggPrimaryVertices', 'AntiKt4EMPFlowCustomVtx', 'CHSGCustomVtxParticleFlowObjects'))
40 
41  # Thinning tools...
42  from DerivationFrameworkInDet.InDetToolsConfig import TrackParticleThinningCfg, MuonTrackParticleThinningCfg, TauTrackParticleThinningCfg, DiTauTrackParticleThinningCfg
43  from DerivationFrameworkMCTruth.TruthDerivationToolsConfig import GenericTruthThinningCfg
44  from DerivationFrameworkTools.DerivationFrameworkToolsConfig import GenericObjectThinningCfg
45 
46  thinningTools = []
47 
48  # Truth thinning
49  if flags.Input.isMC:
50  truth_conditions = ["((abs(TruthParticles.pdgId) >= 23) && (abs(TruthParticles.pdgId) <= 25))", # W, Z and Higgs
51  "((abs(TruthParticles.pdgId) >= 11) && (abs(TruthParticles.pdgId) <= 16))", # Leptons
52  "((abs(TruthParticles.pdgId) == 6))", # Top quark
53  "((abs(TruthParticles.pdgId) == 22) && (TruthParticles.pt > 1*GeV))", # Photon
54  "(abs(TruthParticles.pdgId) >= 1000000)", # BSM
55  "(TruthParticles.status == 1 && TruthParticles.barcode < 200000)"] # stable particles
56  truth_expression = f'({" || ".join(truth_conditions)})'
57 
58  HIGG1D1GenericTruthThinningTool = acc.getPrimaryAndMerge(GenericTruthThinningCfg(
59  flags,
60  name = "HIGG1D1GenericTruthThinningTool",
61  StreamName = kwargs['StreamName'],
62  ParticleSelectionString = truth_expression,
63  PreserveDescendants = False,
64  PreserveGeneratorDescendants = True,
65  PreserveAncestors = True))
66  thinningTools.append(HIGG1D1GenericTruthThinningTool)
67 
68  # Inner detector group recommendations for indet tracks in analysis
69  # https://twiki.cern.ch/twiki/bin/viewauth/AtlasProtected/DaodRecommendations
70  HIGG1D1_thinning_expression = "InDetTrackParticles.DFCommonTightPrimary && \
71  abs(DFCommonInDetTrackZ0AtPV)*sin(InDetTrackParticles.theta) < 3.0*mm && \
72  InDetTrackParticles.pt > 10*GeV"
73  HIGG1D1TrackParticleThinningTool = acc.getPrimaryAndMerge(TrackParticleThinningCfg(
74  flags,
75  name = "HIGG1D1TrackParticleThinningTool",
76  StreamName = kwargs['StreamName'],
77  SelectionString = HIGG1D1_thinning_expression,
78  InDetTrackParticlesKey = "InDetTrackParticles"))
79 
80  # Include inner detector tracks associated with muons
81  HIGG1D1MuonTPThinningTool = acc.getPrimaryAndMerge(MuonTrackParticleThinningCfg(
82  flags,
83  name = "HIGG1D1MuonTPThinningTool",
84  StreamName = kwargs['StreamName'],
85  MuonKey = "Muons",
86  InDetTrackParticlesKey = "InDetTrackParticles"))
87 
88  # Only keep tau tracks (and associated ID tracks) classified as charged tracks
89  HIGG1D1TauTPThinningTool = acc.getPrimaryAndMerge(TauTrackParticleThinningCfg(
90  flags,
91  name = "HIGG1D1TauTPThinningTool",
92  StreamName = kwargs['StreamName'],
93  TauKey = "TauJets",
94  InDetTrackParticlesKey = "InDetTrackParticles",
95  DoTauTracksThinning = True,
96  TauTracksKey = "TauTracks"))
97 
98  # ID tracks associated with high-pt di-tau
99  HIGG1D1DiTauTPThinningTool = acc.getPrimaryAndMerge(DiTauTrackParticleThinningCfg(
100  flags,
101  name = "HIGG1D1DiTauTPThinningTool",
102  StreamName = kwargs['StreamName'],
103  DiTauKey = "DiTauJets",
104  InDetTrackParticlesKey = "InDetTrackParticles"))
105 
106 
107  HIGG1D1DiTauLowPtThinningTool = acc.getPrimaryAndMerge(GenericObjectThinningCfg(flags,
108  name = "PHYSDiTauLowPtThinningTool",
109  StreamName = kwargs['StreamName'],
110  ContainerName = "DiTauJetsLowPt",
111  SelectionString = "DiTauJetsLowPt.nSubjets > 1"))
112 
113  # ID tracks associated with low-pt ditau
114  HIGG1D1DiTauLowPtTPThinningTool = acc.getPrimaryAndMerge(DiTauTrackParticleThinningCfg(flags,
115  name = "PHYSDiTauLowPtTPThinningTool",
116  StreamName = kwargs['StreamName'],
117  DiTauKey = "DiTauJetsLowPt",
118  InDetTrackParticlesKey = "InDetTrackParticles",
119  SelectionString = "DiTauJetsLowPt.nSubjets > 1"))
120 
121 
122  # SkimmingTool
123  from DerivationFrameworkHiggs.SkimmingToolHIGG1Config import SkimmingToolHIGG1Cfg
124 
125  # Requires something in this list of triggers
126  SkipTriggerRequirement = (flags.Input.isMC and float(flags.Beam.Energy) == 4000000.0) or not flags.Reco.EnableTrigger
127  # 8 TeV MC does not have trigger information
128  print("HIGG1D1.py SkipTriggerRequirement", SkipTriggerRequirement)
129  TriggerExp = []
130  if not SkipTriggerRequirement:
131  if float(flags.Beam.Energy) == 4000000.0:
132  # 8 TeV data
133  TriggerExp = ["EF_g35_loose_g25_loose"]
134  if float(flags.Beam.Energy) == 6500000.0:
135  # 13 TeV MC
136  TriggerExp = ["HLT_g35_medium_g25_medium",
137  "HLT_g35_medium_g25_medium_L12EM20VH",
138  "HLT_g35_medium_g25_medium_L12EM15VH",
139  "HLT_g35_loose_g25_loose",
140  "HLT_g35_loose_g25_loose_L12EM15VH",
141  "HLT_g120_loose",
142  "HLT_g140_loose",
143  "HLT_3g20_loose",
144  "HLT_3g15_loose",
145  "HLT_2g6_tight_icalotight_L1J50",
146  "HLT_2g6_tight_icalotight_L1J100",
147  "HLT_2g6_loose_L1J50",
148  "HLT_2g6_loose_L1J100",
149  "HLT_2g50_loose",
150  "HLT_2g25_tight_L12EM20VH",
151  "HLT_2g25_loose_g15_loose",
152  "HLT_2g22_tight",
153  "HLT_2g22_tight_L12EM15VHI",
154  "HLT_2g22_tight_icalovloose",
155  "HLT_2g22_tight_icalovloose_L12EM15VHI",
156  "HLT_2g22_tight_icalotight_L12EM15VHI",
157  "HLT_2g20_tight",
158  "HLT_2g20_tight_icalovloose_L12EM15VHI",
159  "HLT_2g20_tight_icalotight_L12EM15VHI",
160  "HLT_2g20_loose",
161  "HLT_2g20_loose_L12EM15",
162  "HLT_2g20_loose_g15_loose",
163  "HLT_2g50_loose_L12EM20VH"
164  ]
165  if float(flags.Beam.Energy) == 6800000.0:
166  # 13.6 TeV
167  TriggerExp = ["HLT_g35_medium_g25_medium_L12EM20VH",
168  "HLT_g35_medium_g25_medium_L12eEM24L",
169  "HLT_g140_loose_L1EM22VHI",
170  "HLT_g140_loose_L1eEM26M"
171  "HLT_g120_loose_L1EM22VHI",
172  "HLT_g120_loose_L1eEM26M",
173  "HLT_2g9_loose_25dphiAA_invmAA80_L1DPHI-M70-2eEM9",
174  "HLT_2g9_loose_25dphiAA_invmAA80_L12EM7",
175  "HLT_2g50_loose_L12EM20VH",
176  "HLT_2g50_loose_L12eEM24L",
177  "HLT_2g25_loose_g15_loose_L12EM20VH",
178  "HLT_2g25_loose_g15_loose_L12eEM24L",
179  "HLT_2g22_tight_L12EM15VHI",
180  "HLT_2g22_tight_L12eEM18M",
181  "HLT_2g20_tight_icaloloose_L12EM15VHI",
182  "HLT_2g20_tight_icaloloose_L12eEM18M",
183  "HLT_2g20_loose_L12EM15VH",
184  "HLT_2g20_loose_L12eEM18L",
185  "HLT_2g15_tight_L1DPHI-M70-2eEM15M",
186  "HLT_2g15_tight_25dphiAA_L1DPHI-M70-2eEM15M",
187  "HLT_2g15_tight_25dphiAA_L12EM7",
188  "HLT_2g15_tight_25dphiAA_invmAA80_L12EM7",
189  "HLT_2g15_loose_25dphiAA_invmAA80_L1DPHI-M70-2eEM15M",
190  "HLT_2g15_loose_25dphiAA_invmAA80_L12EM7",
191  ]
192  print("HIGG1D1.py Skimming Tool Triggers:", ",".join(TriggerExp))
193  skimmingTool = acc.popToolsAndMerge( SkimmingToolHIGG1Cfg(flags,RequireTrigger=not SkipTriggerRequirement,Triggers=TriggerExp) )
194  acc.addPublicTool(skimmingTool)
195 
196 
197  # Finally the kernel itself
198  thinningTools += [HIGG1D1TrackParticleThinningTool,
199  HIGG1D1MuonTPThinningTool,
200  HIGG1D1TauTPThinningTool,
201  HIGG1D1DiTauTPThinningTool,
202  HIGG1D1DiTauLowPtThinningTool,
203  HIGG1D1DiTauLowPtTPThinningTool]
204 
205  augmentationTools = []
206 
207  #====================================================================
208  # Common calo decoration tools
209  #====================================================================
210 
211  from DerivationFrameworkCalo.DerivationFrameworkCaloConfig import (
212  CaloDecoratorKernelCfg, ClusterEnergyPerLayerDecoratorCfg)
213  acc.merge(CaloDecoratorKernelCfg(flags))
214 
215  # Adding missing cluster energy decorators
216  cluster_sizes = (3,5), (5,7), (7,7)
217  for neta, nphi in cluster_sizes:
218  cename = "ClusterEnergyPerLayerDecorator_%sx%s" % (neta, nphi)
219  ClusterEnergyPerLayerDecorator = acc.popToolsAndMerge( ClusterEnergyPerLayerDecoratorCfg(flags, neta = neta, nphi=nphi, name=cename ))
220  acc.addPublicTool(ClusterEnergyPerLayerDecorator)
221  augmentationTools.append(ClusterEnergyPerLayerDecorator)
222 
223  #====================================================================
224  # Truth categories decoration tool
225  #====================================================================
226  if flags.Input.isMC:
227  from DerivationFrameworkHiggs.TruthCategoriesConfig import TruthCategoriesDecoratorCfg
228  acc.merge(TruthCategoriesDecoratorCfg(flags, name="TruthCategoriesDecorator"))
229 
230  DerivationKernel = CompFactory.DerivationFramework.DerivationKernel
231  acc.addEventAlgo(DerivationKernel(name,
232  SkimmingTools = [skimmingTool],
233  ThinningTools = thinningTools,
234  AugmentationTools = augmentationTools))
235  return acc
236 
237 
TrigNavSlimmingMTConfig.AddRun3TrigNavSlimmingCollectionsToSlimmingHelper
def AddRun3TrigNavSlimmingCollectionsToSlimmingHelper(slimmingHelper)
Definition: TrigNavSlimmingMTConfig.py:98
python.HIGG1D1.HIGG1D1Cfg
def HIGG1D1Cfg(flags)
Definition: HIGG1D1.py:238
python.HIGG1D1.HIGG1D1KernelCfg
def HIGG1D1KernelCfg(flags, name='HIGG1D1Kernel', **kwargs)
Definition: HIGG1D1.py:16
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
python.SkimmingToolHIGG1Config.SkimmingToolHIGG1Cfg
def SkimmingToolHIGG1Cfg(ConfigFlags, **kwargs)
Definition: SkimmingToolHIGG1Config.py:7
python.FtagDerivationConfig.FtagJetCollectionsCfg
def FtagJetCollectionsCfg(cfgFlags, jet_cols, pv_cols=None, trackAugmenterPrefix=None)
Definition: FtagDerivationConfig.py:33
python.OutputStreamConfig.OutputStreamCfg
def OutputStreamCfg(flags, streamName, ItemList=[], MetadataItemList=[], disableEventTag=False, trigNavThinningSvc=None, takeItemsFromInput=False, extendProvenanceRecord=True, AcceptAlgs=[], HelperTools=[])
Definition: OutputStreamConfig.py:12
python.HIGG1D1CustomJetsConfig.HIGG1D1CustomJetsCleaningCfg
def HIGG1D1CustomJetsCleaningCfg(ConfigFlags)
Definition: HIGG1D1CustomJetsConfig.py:229
python.BTaggingContent.BTaggingXbbContent
def BTaggingXbbContent(jetcol, ConfigFlags=None)
Definition: BTaggingContent.py:177
python.InDetToolsConfig.TrackParticleThinningCfg
def TrackParticleThinningCfg(flags, name, **kwargs)
Definition: InDetToolsConfig.py:458
python.InDetToolsConfig.DiTauTrackParticleThinningCfg
def DiTauTrackParticleThinningCfg(flags, name, **kwargs)
Definition: InDetToolsConfig.py:549
python.TriggerMatchingCommonConfig.AddRun2TriggerMatchingToSlimmingHelper
def AddRun2TriggerMatchingToSlimmingHelper(**kwargs)
Definition: TriggerMatchingCommonConfig.py:49
python.HIGG1D1CustomVertexConfig.ZeeVertexRefitterCfg
def ZeeVertexRefitterCfg(flags, name="ZeeVertexRefitKernel")
Definition: HIGG1D1CustomVertexConfig.py:41
python.HIGG1D1CustomJetsConfig.HIGG1D1CustomJetsCfg
def HIGG1D1CustomJetsCfg(ConfigFlags)
Definition: HIGG1D1CustomJetsConfig.py:28
python.BTaggingContent.BTaggingStandardContent
def BTaggingStandardContent(jetcol, ConfigFlags=None)
Definition: BTaggingContent.py:163
python.HIGG1D1CustomVertexConfig.DiPhotonVertexCfg
def DiPhotonVertexCfg(flags)
Definition: HIGG1D1CustomVertexConfig.py:81
python.TruthCategoriesConfig.TruthCategoriesDecoratorCfg
def TruthCategoriesDecoratorCfg(ConfigFlags, name="TruthCategoriesDecorator", **kwargs)
Definition: TruthCategoriesConfig.py:5
python.TruthDerivationToolsConfig.GenericTruthThinningCfg
def GenericTruthThinningCfg(flags, name, **kwargs)
Definition: TruthDerivationToolsConfig.py:409
DerivationFrameworkCaloConfig.ClusterEnergyPerLayerDecoratorCfg
def ClusterEnergyPerLayerDecoratorCfg(flags, **kwargs)
Definition: DerivationFrameworkCaloConfig.py:44
python.DerivationFrameworkToolsConfig.GenericObjectThinningCfg
def GenericObjectThinningCfg(ConfigFlags, name, **kwargs)
Definition: DerivationFrameworkToolsConfig.py:20
python.InDetToolsConfig.MuonTrackParticleThinningCfg
def MuonTrackParticleThinningCfg(flags, name, **kwargs)
Definition: InDetToolsConfig.py:528
python.InDetToolsConfig.TauTrackParticleThinningCfg
def TauTrackParticleThinningCfg(flags, name, **kwargs)
Definition: InDetToolsConfig.py:539
TCS::join
std::string join(const std::vector< std::string > &v, const char c=',')
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/Root/StringUtils.cxx:10
python.MCTruthCommonConfig.addTruth3ContentToSlimmerTool
def addTruth3ContentToSlimmerTool(slimmer)
Definition: MCTruthCommonConfig.py:462
DerivationFrameworkCaloConfig.CaloDecoratorKernelCfg
def CaloDecoratorKernelCfg(flags, name="CaloDecoratorKernel", **kwargs)
Definition: DerivationFrameworkCaloConfig.py:77
python.METCommonConfig.METCustomVtxCfg
def METCustomVtxCfg(ConfigFlags, vxColl, jetColl, constituentColl)
Definition: METCommonConfig.py:28
DerivationFrameworkCaloConfig.getClusterEnergyPerLayerDecorations
def getClusterEnergyPerLayerDecorations(acc, kernel)
Definition: DerivationFrameworkCaloConfig.py:159
DerivationFrameworkCaloConfig.getGainDecorations
def getGainDecorations(acc, flags, kernel, collections=None, info=["E", "nCells"])
Definition: DerivationFrameworkCaloConfig.py:127
python.PhysCommonConfig.PhysCommonAugmentationsCfg
def PhysCommonAugmentationsCfg(flags, **kwargs)
Definition: PhysCommonConfig.py:14
dbg::print
void print(std::FILE *stream, std::format_string< Args... > fmt, Args &&... args)
Definition: SGImplSvc.cxx:70
InfileMetaDataConfig.SetupMetaDataForStreamCfg
def SetupMetaDataForStreamCfg(flags, streamName="", AcceptAlgs=None, createMetadata=None, propagateMetadataFromInput=True, *args, **kwargs)
Definition: InfileMetaDataConfig.py:219
SlimmingHelper
Definition: SlimmingHelper.py:1
python.HION12.DerivationKernel
DerivationKernel
Definition: HION12.py:67
readCCLHist.float
float
Definition: readCCLHist.py:83