14def PhysCommonAugmentationsCfg(flags,**kwargs):
15 """Configure the common augmentation"""
16 acc = ComponentAccumulator()
17
18
19 if flags.Input.isMC:
20 from DerivationFrameworkMCTruth.MCTruthCommonConfig import (
21 AddStandardTruthContentsCfg,
22 AddHFAndDownstreamParticlesCfg,
23 AddMiniTruthCollectionLinksCfg,
24 AddPVCollectionCfg,
25 TruthClassificationAugmentationsCfg)
26 acc.merge(TruthClassificationAugmentationsCfg(flags))
27 from DerivationFrameworkMCTruth.TruthDerivationToolsConfig import DFCommonTruthCharmToolCfg
28 PhysCommonTruthCharmTool = acc.getPrimaryAndMerge(DFCommonTruthCharmToolCfg(
29 flags,
30 name = "PhysCommonTruthCharmTool"))
31 CommonAugmentation = CompFactory.DerivationFramework.CommonAugmentation
32 acc.addEventAlgo(CommonAugmentation("PhysCommonTruthCharmKernel",AugmentationTools=[PhysCommonTruthCharmTool]))
33 acc.merge(AddHFAndDownstreamParticlesCfg(flags))
34 acc.merge(AddStandardTruthContentsCfg
35 (flags,
36 navInputCollections = ["TruthElectrons",
37 "TruthMuons",
38 "TruthPhotons",
39 "TruthTaus",
40 "TruthNeutrinos",
41 "TruthBSM",
42 "TruthBottom",
43 "TruthTop",
44 "TruthBoson",
45 "TruthCharm",
46 "TruthHFWithDecayParticles"]))
47
48 acc.merge(AddMiniTruthCollectionLinksCfg(flags))
49 acc.merge(AddPVCollectionCfg(flags))
50
51
52 from DerivationFrameworkInDet.InDetCommonConfig import InDetCommonCfg
53 from DerivationFrameworkMuons.MuonsCommonConfig import MuonsCommonCfg
54 from DerivationFrameworkEGamma.EGammaCommonConfig import EGammaCommonCfg
55
56
57 acc.merge(InDetCommonCfg(flags,
58 DoVertexFinding = flags.Tracking.doVertexFinding,
59 AddPseudoTracks = flags.Tracking.doPseudoTracking,
60 DecoLRTTTVA = False,
61 DoR3LargeD0 = flags.Tracking.doLargeD0,
62 StoreSeparateLargeD0Container = flags.Tracking.storeSeparateLargeD0Container,
63 MergeLRT = False))
64 acc.merge(MuonsCommonCfg(flags))
65 acc.merge(EGammaCommonCfg(flags))
66
67 from DerivationFrameworkJetEtMiss.JetCommonConfig import JetCommonCfg
68 from DerivationFrameworkTau.TauCommonConfig import (AddMuonRemovalTauAODReRecoAlgCfg, AddTauIDDecorationCfg)
69 from DerivationFrameworkTau.DiTauCommonConfig import (AddDiTauLowPtCfg, AddDiTauChargeDecoratorCfg, AddDiTauIDDecorationCfg)
70 from DerivationFrameworkJetEtMiss.METCommonConfig import METCommonCfg
71 acc.merge(JetCommonCfg(flags))
72
73
74 from eflowRec.PFCfg import PFGlobalFlowElementLinkingCfg
75 acc.merge(PFGlobalFlowElementLinkingCfg(flags))
76 acc.merge(AddDiTauLowPtCfg(flags))
77 acc.merge(AddMuonRemovalTauAODReRecoAlgCfg(flags))
78
79 acc.merge(AddTauIDDecorationCfg(flags, TauContainerName="TauJets"))
80 acc.merge(AddTauIDDecorationCfg(flags, TauContainerName="TauJets_MuonRM"))
81
82 acc.merge(AddDiTauIDDecorationCfg(flags, DiTauContainerName="DiTauJets"))
83
84 if flags.Tau.TauEleRM_isAvailable:
85 acc.merge(AddTauIDDecorationCfg(flags, TauContainerName="TauJets_EleRM"))
86
87 acc.merge(AddDiTauChargeDecoratorCfg(flags, DiTauContainerName="DiTauJets"))
88 acc.merge(AddDiTauChargeDecoratorCfg(flags, DiTauContainerName="DiTauJetsLowPt"))
89 if flags.Reco.EnableBTagging:
90 from BTagging.FlavorTaggingConfig import FlavorTaggingCfg
91 acc.merge(FlavorTaggingCfg(flags, "AntiKt4EMPFlowJets"))
92 acc.merge(FlavorTaggingCfg(flags, "AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets"))
93 if flags.GeoModel.Run >= LHCPeriod.Run4:
94 acc.merge(FlavorTaggingCfg(flags, "AntiKt4EMTopoJets"))
95
96 acc.merge(METCommonCfg(flags))
97
98
99 if flags.Reco.EnableTrigger or flags.Trigger.triggerConfig == 'INFILE':
100 from JetTagDerivationUtils.TrigBTagCopierConfig import TrigBTagCopierAlgCfg
101 acc.merge(TrigBTagCopierAlgCfg(flags))
102
103 from DerivationFrameworkPhys.TriggerMatchingCommonConfig import TriggerMatchingCommonRun2Cfg
104 from DerivationFrameworkPhys.TriggerMatchingCommonConfig import TriggerMatchingCommonRun2ToRun3Cfg
105 from DerivationFrameworkPhys.TriggerMatchingCommonConfig import TriggerMatchingCommonRun3Cfg
106
107 triggerListsHelper = kwargs['TriggerListsHelper']
108 if flags.Trigger.EDMVersion == 2:
109
110
111
112
113
114 acc.merge(TriggerMatchingCommonRun2Cfg(
115 flags,
116 name = "PhysCommonTrigMatchNoTau",
117 OutputContainerPrefix = "TrigMatch_",
118 ChainNames = triggerListsHelper.Run2TriggerNamesNoTau))
119 acc.merge(TriggerMatchingCommonRun2Cfg(
120 flags,
121 name = "PhysCommonTrigMatchTau",
122 OutputContainerPrefix = "TrigMatch_",
123 ChainNames = triggerListsHelper.Run2TriggerNamesTau,
124 DRThreshold = 0.2))
125
126
127
128 acc.merge(TriggerMatchingCommonRun2ToRun3Cfg(
129 flags,
130 TriggerList = triggerListsHelper.Run2TriggerNamesNoTau +
131 triggerListsHelper.Run2TriggerNamesTau))
132 if flags.Trigger.EDMVersion == 3:
133
134 acc.merge(TriggerMatchingCommonRun3Cfg(
135 flags, TriggerList = triggerListsHelper.Run3TriggerNames))
136
137 return acc
138