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 from DerivationFrameworkJetEtMiss.METCommonConfig import HadRecoilMETCfg
72 acc.merge(JetCommonCfg(flags))
73
74
75 from eflowRec.PFCfg import PFGlobalFlowElementLinkingCfg
76 acc.merge(PFGlobalFlowElementLinkingCfg(flags))
77 acc.merge(AddDiTauLowPtCfg(flags))
78 acc.merge(AddMuonRemovalTauAODReRecoAlgCfg(flags))
79
80 acc.merge(AddTauIDDecorationCfg(flags, TauContainerName="TauJets"))
81 acc.merge(AddTauIDDecorationCfg(flags, TauContainerName="TauJets_MuonRM"))
82
83 acc.merge(AddDiTauIDDecorationCfg(flags, DiTauContainerName="DiTauJets"))
84
85 if flags.Tau.TauEleRM_isAvailable:
86 acc.merge(AddTauIDDecorationCfg(flags, TauContainerName="TauJets_EleRM"))
87
88 acc.merge(AddDiTauChargeDecoratorCfg(flags, DiTauContainerName="DiTauJets"))
89 acc.merge(AddDiTauChargeDecoratorCfg(flags, DiTauContainerName="DiTauJetsLowPt"))
90 if flags.Reco.EnableBTagging:
91 from BTagging.FlavorTaggingConfig import FlavorTaggingCfg
92 acc.merge(FlavorTaggingCfg(flags, "AntiKt4EMPFlowJets"))
93 acc.merge(FlavorTaggingCfg(flags, "AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets"))
94 if flags.GeoModel.Run >= LHCPeriod.Run4:
95 acc.merge(FlavorTaggingCfg(flags, "AntiKt4EMTopoJets"))
96
97 acc.merge(METCommonCfg(flags))
98 acc.merge(HadRecoilMETCfg(flags))
99
100
101 if flags.Reco.EnableTrigger or flags.Trigger.triggerConfig == 'INFILE':
102 from JetTagDerivationUtils.TrigBTagCopierConfig import TrigBTagCopierAlgCfg
103 acc.merge(TrigBTagCopierAlgCfg(flags))
104
105 from DerivationFrameworkPhys.TriggerMatchingCommonConfig import TriggerMatchingCommonRun2Cfg
106 from DerivationFrameworkPhys.TriggerMatchingCommonConfig import TriggerMatchingCommonRun2ToRun3Cfg
107 from DerivationFrameworkPhys.TriggerMatchingCommonConfig import TriggerMatchingCommonRun3Cfg
108
109 triggerListsHelper = kwargs['TriggerListsHelper']
110 if flags.Trigger.EDMVersion == 2:
111
112
113
114
115
116 acc.merge(TriggerMatchingCommonRun2Cfg(
117 flags,
118 name = "PhysCommonTrigMatchNoTau",
119 OutputContainerPrefix = "TrigMatch_",
120 ChainNames = triggerListsHelper.Run2TriggerNamesNoTau))
121 acc.merge(TriggerMatchingCommonRun2Cfg(
122 flags,
123 name = "PhysCommonTrigMatchTau",
124 OutputContainerPrefix = "TrigMatch_",
125 ChainNames = triggerListsHelper.Run2TriggerNamesTau,
126 DRThreshold = 0.2))
127
128
129
130 acc.merge(TriggerMatchingCommonRun2ToRun3Cfg(
131 flags,
132 TriggerList = triggerListsHelper.Run2TriggerNamesNoTau +
133 triggerListsHelper.Run2TriggerNamesTau))
134 if flags.Trigger.EDMVersion == 3:
135
136 acc.merge(TriggerMatchingCommonRun3Cfg(
137 flags, TriggerList = triggerListsHelper.Run3TriggerNames))
138
139 return acc
140