22 """Configure the derivation framework driving algorithm (kernel) for LLP1"""
29 from DerivationFrameworkInDet.InDetToolsConfig
import InDetLRTMergeCfg
33 from DerivationFrameworkLLP.LLPToolsConfig
import LRTMuonMergerAlg
35 PromptMuonLocation =
"Muons",
36 LRTMuonLocation =
"MuonsLRT",
37 OutputMuonLocation = MergedMuonContainer,
38 CreateViewCollection =
True,
39 UseRun3WP = flags.GeoModel.Run == LHCPeriod.Run3))
42 from DerivationFrameworkLLP.LLPToolsConfig
import LRTElectronMergerAlg
44 PromptElectronLocation =
"Electrons",
45 LRTElectronLocation =
"LRTElectrons",
46 OutputCollectionName = MergedElectronContainer,
48 CreateViewCollection =
True))
51 from DerivationFrameworkCalo.DerivationFrameworkCaloConfig
import (
52 MaxCellDecoratorCfg, MaxCellDecoratorKernelCfg)
60 name =
"LLP1LRTMaxCellDecoratorTool",
61 SGKey_electrons =
"LRTElectrons",
62 SGKey_egammaClusters = (
"" if flags.GeoModel.Run == LHCPeriod.Run3
63 else "egammaClusters"),
65 acc.addPublicTool(LLP1LRTMaxCellDecoratorTool)
68 from TrkConfig.TrkVertexFitterUtilsConfig
import AtlasFullLinearizedTrackFactoryCfg
70 name =
"LLP1AtlasFullLinearizedTrackFactory"))
71 acc.addPublicTool(AtlasFullLinearizedTrackFactoryTool)
73 from TrkConfig.AtlasExtrapolatorConfig
import AtlasExtrapolatorCfg
75 name =
"LLP1ExtrapolatorTool"))
76 acc.addPublicTool(ExtrapolatorTool)
79 from DerivationFrameworkLLP.LLPToolsConfig
import TrackParametersKVUCfg
81 name =
"LLP1TrackParametersKVU",
82 TrackParticleContainerName =
"InDetDisappearingTrackParticles",
83 VertexContainerName =
"PrimaryVertices",
84 LinearizedTrackFactory = AtlasFullLinearizedTrackFactoryTool,
85 TrackExtrapolator = ExtrapolatorTool))
86 acc.addPublicTool(LLP1TrackParametersKVUTool)
90 isoPar = ROOT.xAOD.Iso.IsolationType
91 deco_ptcones = [isoPar.ptcone40, isoPar.ptcone30, isoPar.ptcone20]
92 deco_ptcones_suffix = [
"ptcone40",
"ptcone30",
"ptcone20"]
95 from InDetConfig.InDetTrackSelectionToolConfig
import InDetTrackSelectionTool_Loose_Cfg
97 name =
"TrackSelectionToolStd",
102 name =
"TrackSelectionToolPdEdx",
108 name =
"TrackSelectionToolPdEdxTight",
113 from IsolationAlgs.IsoToolsConfig
import TrackIsolationToolCfg, CaloIsolationToolCfg
115 name =
"TrackIsoToolStd",
116 TrackSelectionTool = TrackSelectionToolStd))
117 acc.addPublicTool(TrackIsoToolStd)
120 name =
"TrackIsoToolPdEdx",
121 TrackSelectionTool = TrackSelectionToolPdEdx))
122 acc.addPublicTool(TrackIsoToolPdEdx)
125 name =
"TrackIsoToolPdEdxTight",
126 TrackSelectionTool = TrackSelectionToolPdEdxTight))
127 acc.addPublicTool(TrackIsoToolPdEdxTight)
129 from CaloIdentifier
import SUBCALO
131 name =
"CaloIsoTool",
132 EMCaloNums = [SUBCALO.LAREM],
133 HadCaloNums = [SUBCALO.LARHEC, SUBCALO.TILE],
135 UseCaloExtensionCaching =
False,
136 saveOnlyRequestedCorrections =
True))
137 acc.addPublicTool(CaloIsoTool)
139 from DerivationFrameworkInDet.InDetToolsConfig
import IsolationTrackDecoratorCfg
141 name =
"LLP1IsolationTrackDecorator",
142 TrackIsolationTool = TrackIsoToolStd,
143 CaloIsolationTool = CaloIsoTool,
144 TargetContainer =
"InDetTrackParticles",
145 SelectionString =
"InDetTrackParticles.pt>10*GeV",
146 iso = [isoPar.ptcone40, isoPar.ptcone30, isoPar.ptcone20, isoPar.ptvarcone40, isoPar.ptvarcone30, isoPar.ptvarcone20, isoPar.topoetcone40, isoPar.topoetcone30, isoPar.topoetcone20],
147 isoSuffix = [
"ptcone40",
"ptcone30",
"ptcone20",
"ptvarcone40",
"ptvarcone30",
"ptvarcone20",
"topoetcone40",
"topoetcone30",
"topoetcone20"],
148 Prefix = deco_prefix))
149 acc.addPublicTool(LLP1IsolationTrackDecoratorTool)
152 name =
"LLP1IsolationTrackDecoratorDT",
153 TrackIsolationTool = TrackIsoToolStd,
154 CaloIsolationTool = CaloIsoTool,
155 TargetContainer =
"InDetDisappearingTrackParticles",
156 SelectionString =
"InDetDisappearingTrackParticles.pt>10*GeV",
157 iso = [isoPar.ptcone40, isoPar.ptcone30, isoPar.ptcone20, isoPar.ptvarcone40, isoPar.ptvarcone30, isoPar.ptvarcone20, isoPar.topoetcone40, isoPar.topoetcone30, isoPar.topoetcone20],
158 isoSuffix = [
"ptcone40",
"ptcone30",
"ptcone20",
"ptvarcone40",
"ptvarcone30",
"ptvarcone20",
"topoetcone40",
"topoetcone30",
"topoetcone20"],
159 Prefix = deco_prefix))
160 acc.addPublicTool(LLP1IsolationTrackDecoratorDTTool)
163 name =
"LLP1IsolationTrackDecoratorPdEdx",
164 TrackIsolationTool = TrackIsoToolPdEdx,
165 CaloIsolationTool = CaloIsoTool,
166 TargetContainer =
"InDetTrackParticles",
168 Prefix =
'TrkIsoPtPdEdx_',
169 isoSuffix = deco_ptcones_suffix))
170 acc.addPublicTool(LLP1IsolationTrackDecoratorPdEdxTool)
173 name =
"LLP1IsolationTrackDecoratorPdEdxDT",
174 TrackIsolationTool = TrackIsoToolPdEdx,
175 CaloIsolationTool = CaloIsoTool,
176 TargetContainer =
"InDetDisappearingTrackParticles",
178 Prefix =
'TrkIsoPtPdEdx_',
179 isoSuffix = deco_ptcones_suffix))
180 acc.addPublicTool(LLP1IsolationTrackDecoratorPdEdxDTTool)
183 name =
"LLP1IsolationTrackDecoratorPdEdxTight",
184 TrackIsolationTool = TrackIsoToolPdEdxTight,
185 CaloIsolationTool = CaloIsoTool,
186 TargetContainer =
"InDetTrackParticles",
188 Prefix =
'TrkIsoPtTightPdEdx_',
189 isoSuffix = deco_ptcones_suffix))
190 acc.addPublicTool(LLP1IsolationTrackDecoratorPdEdxTightTool)
193 name =
"LLP1IsolationTrackDecoratorPdEdxTightDT",
194 TrackIsolationTool = TrackIsoToolPdEdxTight,
195 CaloIsolationTool = CaloIsoTool,
196 TargetContainer =
"InDetDisappearingTrackParticles",
198 Prefix =
'TrkIsoPtTightPdEdx_',
199 isoSuffix = deco_ptcones_suffix))
200 acc.addPublicTool(LLP1IsolationTrackDecoratorPdEdxTightDTTool)
202 from DerivationFrameworkLLP.LLPToolsConfig
import TrackParticleCaloCellDecoratorCfg
204 name =
"LLP1TrackParticleCaloCellDecorator",
205 DecorationPrefix =
"LLP1",
206 ContainerName =
"InDetTrackParticles"))
207 acc.addPublicTool(LLP1TrackParticleCaloCellDecoratorTool)
209 augmentationTools = [ LLP1LRTMaxCellDecoratorTool,
210 LLP1TrackParametersKVUTool,
211 LLP1IsolationTrackDecoratorTool,
212 LLP1IsolationTrackDecoratorDTTool,
213 LLP1IsolationTrackDecoratorPdEdxTool,
214 LLP1IsolationTrackDecoratorPdEdxDTTool,
215 LLP1IsolationTrackDecoratorPdEdxTightTool,
216 LLP1IsolationTrackDecoratorPdEdxTightDTTool,
217 LLP1TrackParticleCaloCellDecoratorTool ]
222 name =
"LLP1TauMaxCellDecoratorTool",
223 SGKey_taus =
'TauJets',
224 SGKey_electrons =
'',
226 acc.addPublicTool(LLP1TauMaxCellDecoratorTool)
228 augmentationTools += [ LLP1TauMaxCellDecoratorTool ]
233 name =
"LLP1AntiKt4EMTopoJetMaxCellDecoratorTool",
234 SGKey_jets =
'AntiKt4EMTopoJets',
236 SGKey_electrons =
'',
238 acc.addPublicTool(LLP1AntiKt4EMTopoJetMaxCellDecoratorTool)
240 augmentationTools += [ LLP1AntiKt4EMTopoJetMaxCellDecoratorTool ]
245 name =
"LLP1AntiKt4EMPFlowJetMaxCellDecoratorTool",
246 SGKey_jets =
'AntiKt4EMPFlowJets',
248 SGKey_electrons =
'',
250 acc.addPublicTool(LLP1AntiKt4EMPFlowJetMaxCellDecoratorTool)
252 augmentationTools += [ LLP1AntiKt4EMPFlowJetMaxCellDecoratorTool ]
255 from JetRecConfig.JetRecConfig
import registerAsInputConstit, JetRecCfg
256 from JetRecConfig.StandardSmallRJets
import AntiKt4Truth, AntiKt4EMTopo
257 from JetRecConfig.JetDefinition
import JetDefinition
258 from JetRecConfig.StandardJetConstits
import stdConstitDic
as cst
262 cst.AntiKt4EMTopoJets.label =
"EMTopoRC"
263 cst.AntiKt4TruthJets.label =
"TruthRC"
265 AntiKt10RCEMTopo = JetDefinition(
"AntiKt",1.0,cst.AntiKt4EMTopoJets,
266 ghostdefs = [
"Track",
"TrackLRT",
"LCTopoOrigin"],
267 modifiers = (
"Sort",
"Filter:200000",),
268 standardRecoMode =
True,
272 AntiKt10RCTruth = JetDefinition(
"AntiKt",1.0,cst.AntiKt4TruthJets,
274 modifiers = (
"Sort",
"Filter:200000",),
275 standardRecoMode =
True,
279 from DerivationFrameworkPhys.PhysCommonConfig
import PhysCommonAugmentationsCfg
281 acc.merge(
JetRecCfg(flags,AntiKt10RCEMTopo))
282 if flags.Input.isMC: acc.merge(
JetRecCfg(flags,AntiKt10RCTruth))
285 from DerivationFrameworkJetEtMiss.METCommonConfig
import METLRTCfg
286 acc.merge(
METLRTCfg(flags,
"AntiKt4EMTopo"))
287 acc.merge(
METLRTCfg(flags,
"AntiKt4EMPFlow"))
290 from DerivationFrameworkEGamma.EGammaLRTConfig
import EGammaLRTCfg
293 from DerivationFrameworkLLP.LLPToolsConfig
import LRTElectronLHSelectorsCfg
297 from DerivationFrameworkLLP.LLPToolsConfig
import PhotonIsEMSelectorsCfg
301 from DerivationFrameworkMuons.MuonsCommonConfig
import MuonsCommonCfg
306 from DerivationFrameworkFlavourTag.FtagDerivationConfig
import FtagJetCollectionsCfg
310 from VrtSecInclusive.VrtSecInclusiveConfig
import VrtSecInclusiveCfg
313 name =
"VrtSecInclusive",
314 AugmentingVersionString =
"",
315 FillIntermediateVertices =
False,
316 TrackLocation = MergedTrackCollection))
317 LLP1VrtSecInclusiveSuffixes.append(
"")
320 if flags.Input.isMC
and flags.Derivation.LLP.doTrackSystematics:
321 from InDetTrackSystematicsTools.InDetTrackSystematicsToolsConfig
import TrackSystematicsAlgCfg
322 TrackSystSuffix =
"_TRK_EFF_LARGED0_GLOBAL__1down"
325 InputTrackContainer = MergedTrackCollection,
326 OutputTrackContainer = f
"{MergedTrackCollection}{TrackSystSuffix}"))
328 name = f
"VrtSecInclusive{TrackSystSuffix}",
329 AugmentingVersionString = TrackSystSuffix,
330 FillIntermediateVertices =
False,
331 TrackLocation = f
"{MergedTrackCollection}{TrackSystSuffix}"))
332 LLP1VrtSecInclusiveSuffixes.append(TrackSystSuffix)
335 shortLifetimeSuffix =
"_shortLifetime"
337 name =
"VrtSecInclusive_InDet"+shortLifetimeSuffix,
338 AugmentingVersionString = shortLifetimeSuffix,
339 FillIntermediateVertices =
False,
340 TrackLocation = MergedTrackCollection,
341 twoTrkVtxFormingD0Cut = 1.0))
342 LLP1VrtSecInclusiveSuffixes.append(shortLifetimeSuffix)
345 LeptonsSuffix =
"_Leptons"
347 name =
"VrtSecInclusive_InDet"+LeptonsSuffix,
348 AugmentingVersionString = LeptonsSuffix,
349 FillIntermediateVertices =
False,
350 TrackLocation = MergedTrackCollection,
351 twoTrkVtxFormingD0Cut = 1.0,
352 doSelectTracksFromMuons =
True,
353 doRemoveCaloTaggedMuons =
True,
354 doSelectTracksFromElectrons =
True,
355 MuonLocation = MergedMuonContainer,
356 ElectronLocation = MergedElectronContainer))
357 LLP1VrtSecInclusiveSuffixes.append(LeptonsSuffix)
360 LepTrackSuffix =
"_LepTrack"
362 name =
"VrtSecInclusive_InDet"+LepTrackSuffix,
363 AugmentingVersionString = LepTrackSuffix,
364 FillIntermediateVertices =
False,
365 TrackLocation = MergedTrackCollection,
366 MuonLocation = MergedMuonContainer,
367 ElectronLocation = MergedElectronContainer,
368 twoTrkVtxFormingD0Cut = 1.0,
369 doSelectIDAndGSFTracks =
True,
370 doRemoveCaloTaggedMuons =
True,
371 doRemoveNonLeptonVertices =
True,
372 doAssociateNonSelectedTracks=
False))
373 LLP1VrtSecInclusiveSuffixes.append(LepTrackSuffix)
376 BoostedMuonsSuffix =
"_BoostedMuons"
378 name =
"VrtSecInclusive_InDet"+BoostedMuonsSuffix,
379 AugmentingVersionString = BoostedMuonsSuffix,
380 FillIntermediateVertices =
False,
381 TrackLocation = MergedTrackCollection,
382 twoTrkVtxFormingD0Cut = 0.0,
383 doSelectTracksFromMuons =
True,
384 doRemoveCaloTaggedMuons =
True,
385 doSelectTracksFromElectrons =
False,
386 MuonLocation = MergedMuonContainer,
387 do_PVvetoCut =
False,
388 DoTwoTrSoftBtag =
True,
389 TwoTrVrtMinDistFromPVCut = 0.5))
390 LLP1VrtSecInclusiveSuffixes.append(BoostedMuonsSuffix)
393 jet_clean_prefix=
"DFCommonJets_"
394 jet_clean_container=
"AntiKt4EMTopoJets"
395 jet_clean_level=
"SuperLooseBadLLP"
396 from JetSelectorTools.JetSelectorToolsConfig
import EventCleaningToolCfg, JetCleaningToolCfg
398 "LLP1JetCleanSuperLLP",
402 acc.addPublicTool(LLP1JetCleanSuperLLPTool)
405 "LLP1EventCleanSuperLLP",
407 LLP1EventCleanSuperLLPTool.JetCleanPrefix = jet_clean_prefix
408 LLP1EventCleanSuperLLPTool.JetContainer = jet_clean_container
409 LLP1EventCleanSuperLLPTool.JetCleaningTool = LLP1JetCleanSuperLLPTool
410 acc.addPublicTool(LLP1EventCleanSuperLLPTool)
412 LLP1EventCleanAlg = CompFactory.EventCleaningTestAlg(
413 "LLP1JetCleanDecoratorSuperLLP",
414 EventCleaningTool = LLP1EventCleanSuperLLPTool,
415 JetCollectionName = jet_clean_container,
416 EventCleanPrefix = jet_clean_prefix,
417 CleaningLevel = jet_clean_level,
422 acc.addSequence(CompFactory.AthSequencer(
'EventCleanSeq', Sequential=
True))
423 acc.addEventAlgo(LLP1EventCleanAlg,
'EventCleanSeq')
425 from DerivationFrameworkLLP.LLPToolsConfig
import AugmentationToolLeadingJetsCfg
427 acc.addEventAlgo(CompFactory.DerivationFramework.DerivationKernel(name, AugmentationTools = [augmentationToolLeadingJets]))
430 from DerivationFrameworkInDet.InDetToolsConfig
import TrackParticleThinningCfg, EgammaTrackParticleThinningCfg, MuonTrackParticleThinningCfg, TauTrackParticleThinningCfg, DiTauTrackParticleThinningCfg
431 from DerivationFrameworkTools.DerivationFrameworkToolsConfig
import GenericObjectThinningCfg
432 from DerivationFrameworkTau.TauCommonConfig
import TauThinningCfg
437 name =
"LLP1TrackParticleThinningTool",
438 StreamName = kwargs[
'StreamName'],
439 SelectionString =
"InDetTrackParticles.pt>10*GeV",
440 InDetTrackParticlesKey =
"InDetTrackParticles"))
445 name =
"LLP1DTTrackParticleThinningTool",
446 StreamName = kwargs[
'StreamName'],
447 SelectionString =
"InDetDisappearingTrackParticles.pt>5*GeV",
448 InDetTrackParticlesKey =
"InDetDisappearingTrackParticles"))
453 name =
"LLP1ElectronTPThinningTool",
454 StreamName = kwargs[
'StreamName'],
456 InDetTrackParticlesKey =
"InDetTrackParticles"))
461 name =
"LLP1MuonTPThinningTool",
462 StreamName = kwargs[
'StreamName'],
464 InDetTrackParticlesKey =
"InDetTrackParticles"))
468 name =
"LLP1LRTMuonTPThinningTool",
469 StreamName = kwargs[
'StreamName'],
470 MuonKey =
"MuonsLRT",
471 InDetTrackParticlesKey =
"InDetLargeD0TrackParticles"))
474 tau_thinning_expression = f
"TauJets.pt >= {flags.Tau.MinPtDAOD}"
477 name =
"LLP1TauJetThinningTool",
478 StreamName = kwargs[
'StreamName'],
480 TauTracks =
"TauTracks",
481 TrackParticles =
"InDetTrackParticles",
482 TauNeutralPFOs =
"TauNeutralParticleFlowObjects",
483 TauSecondaryVertices =
"TauSecondaryVertices",
484 SelectionString = tau_thinning_expression))
489 name =
"LLP1TauTPThinningTool",
490 StreamName = kwargs[
'StreamName'],
492 InDetTrackParticlesKey =
"InDetTrackParticles",
493 DoTauTracksThinning =
True,
494 TauTracksKey =
"TauTracks"))
496 tau_murm_thinning_expression = tau_thinning_expression.replace(
'TauJets',
'TauJets_MuonRM')
497 LLP1TauJetMuonRMParticleThinningTool = acc.getPrimaryAndMerge(
TauThinningCfg(
499 name =
"LLP1TauJets_MuonRMThinningTool",
500 StreamName = kwargs[
'StreamName'],
501 Taus =
"TauJets_MuonRM",
502 TauTracks =
"TauTracks_MuonRM",
503 TrackParticles =
"InDetTrackParticles",
504 TauNeutralPFOs =
"TauNeutralParticleFlowObjects_MuonRM",
505 TauSecondaryVertices =
"TauSecondaryVertices_MuonRM",
506 SelectionString = tau_murm_thinning_expression))
511 name =
"LLP1DiTauTPThinningTool",
512 StreamName = kwargs[
'StreamName'],
513 DiTauKey =
"DiTauJets",
514 InDetTrackParticlesKey =
"InDetTrackParticles"))
519 name =
"LLP1DiTauLowPtThinningTool",
520 StreamName = kwargs[
'StreamName'],
521 ContainerName =
"DiTauJetsLowPt",
522 SelectionString =
"DiTauJetsLowPt.nSubjets > 1"))
527 name =
"LLP1DiTauLowPtTPThinningTool",
528 StreamName = kwargs[
'StreamName'],
529 DiTauKey =
"DiTauJetsLowPt",
530 InDetTrackParticlesKey =
"InDetTrackParticles",
531 SelectionString =
"DiTauJetsLowPt.nSubjets > 1"))
535 from DerivationFrameworkLLP.LLPToolsConfig
import VSITrackParticleThinningCfg
537 name =
"LLP1VSITPThinningTool",
538 StreamName = kwargs[
'StreamName'],
539 InDetTrackParticlesKey =
"InDetTrackParticles",
540 AugVerStrings = LLP1VrtSecInclusiveSuffixes))
542 name =
"LLP1LRTVSITPThinningTool",
543 StreamName = kwargs[
'StreamName'],
544 InDetTrackParticlesKey =
"InDetLargeD0TrackParticles",
545 AugVerStrings = LLP1VrtSecInclusiveSuffixes))
550 from DerivationFrameworkLLP.LLPToolsConfig
import JetTrackParticleThinningCfg, JetLargeD0TrackParticleThinningCfg
552 name =
"LLP1JetTPThinningTool",
553 StreamName = kwargs[
'StreamName'],
554 JetKey =
"AntiKt4EMTopoJets",
555 SelectionString =
"(AntiKt4EMTopoJets.pt > 20.*GeV) && (abs(AntiKt4EMTopoJets.eta) < 2.5)",
556 InDetTrackParticlesKey =
"InDetTrackParticles"))
559 name =
"LLP1FatJetTPThinningTool",
560 StreamName = kwargs[
'StreamName'],
561 JetKey =
"AntiKt10EMTopoRCJets",
562 SelectionString =
"(AntiKt10EMTopoRCJets.pt > 200.*GeV) && (abs(AntiKt10EMTopoRCJets.eta) < 2.5)",
563 InDetTrackParticlesKey =
"InDetTrackParticles",
567 if flags.Tracking.doLargeD0:
569 name =
"LLP1LRTJetTPThinningTool",
570 StreamName = kwargs[
'StreamName'],
571 JetKey =
"AntiKt4EMTopoJets",
572 SelectionString =
"(AntiKt4EMTopoJets.pt > 20.*GeV) && (abs(AntiKt4EMTopoJets.eta) < 2.5)",
573 InDetTrackParticlesKey =
"InDetLargeD0TrackParticles"))
576 name =
"LLP1LRTFatJetTPThinningTool",
577 StreamName = kwargs[
'StreamName'],
578 JetKey =
"AntiKt10EMTopoRCJets",
579 SelectionString =
"(AntiKt10EMTopoRCJets.pt > 200.*GeV) && (abs(AntiKt10EMTopoRCJets.eta) < 2.5)",
580 InDetTrackParticlesKey =
"InDetLargeD0TrackParticles",
584 from DerivationFrameworkLLP.LLPToolsConfig
import PixeldEdxTrackParticleThinningCfg
587 name =
"LLP1PixeldEdxTrackParticleThinningTool",
588 StreamName = kwargs[
'StreamName'],
589 InDetTrackParticlesKey =
"InDetTrackParticles"))
593 name =
"LLP1PixeldEdxDTTrackParticleThinningTool",
594 StreamName = kwargs[
'StreamName'],
595 InDetTrackParticlesKey =
"InDetDisappearingTrackParticles"))
599 from DerivationFrameworkCalo.DerivationFrameworkCaloConfig
import JetCaloClusterThinningCfg
604 StreamName = kwargs[
'StreamName'],
605 SGKey =
"AntiKt4EMTopoJets",
606 TopoClCollectionSGKey =
"CaloCalTopoClusters",
607 SelectionString =
"(AntiKt4EMTopoJets.DFDecoratorLeadingJets)",
608 AdditionalClustersKey = [
"EMOriginTopoClusters",
"LCOriginTopoClusters"]
616 thinningTools = [LLP1TrackParticleThinningTool,
617 LLP1DTTrackParticleThinningTool,
618 LLP1ElectronTPThinningTool,
619 LLP1MuonTPThinningTool,
620 LLP1LRTMuonTPThinningTool,
621 LLP1TauJetsThinningTool,
622 LLP1TauTPThinningTool,
623 LLP1TauJetMuonRMParticleThinningTool,
624 LLP1DiTauTPThinningTool,
625 LLP1DiTauLowPtThinningTool,
626 LLP1DiTauLowPtTPThinningTool,
627 LLP1VSITPThinningTool,
628 LLP1LRTVSITPThinningTool,
629 LLP1JetTPThinningTool,
630 LLP1FatJetTPThinningTool,
631 LLP1PixeldEdxTrackParticleThinningTool,
632 LLP1PixeldEdxDTTrackParticleThinningTool,
636 if flags.Tracking.doLargeD0:
637 thinningTools.append(LLP1LRTJetTPThinningTool)
638 thinningTools.append(LLP1LRTFatJetTPThinningTool)
643 from DerivationFrameworkLLP.LLPToolsConfig
import RCJetSubstructureAugCfg
645 name =
"LLP1RCJetSubstructureClustTrimAugTool",
646 StreamName = kwargs[
'StreamName'],
647 JetContainerKey =
"AntiKt10EMTopoRCJets",
648 SelectionString =
"(AntiKt10EMTopoRCJets.pt > 200.*GeV) && (abs(AntiKt10EMTopoRCJets.eta) < 2.5)",
649 GhostConstitNames = [
"GhostLCTopoOrigin"],
650 Suffix =
"clusterTrim",
651 Grooming =
"Trimming",
655 RCSubstructureClusterTrimAug = CompFactory.DerivationFramework.CommonAugmentation(
"RCSubstructureClusterTrimAug", AugmentationTools = [LLP1RCJetSubstructureClustTrimAugTool])
656 acc.addEventAlgo(RCSubstructureClusterTrimAug)
659 name =
"LLP1RCJetSubstructureClustSDAugTool",
660 StreamName = kwargs[
'StreamName'],
661 JetContainerKey =
"AntiKt10EMTopoRCJets",
662 SelectionString =
"(AntiKt10EMTopoRCJets.pt > 200.*GeV) && (abs(AntiKt10EMTopoRCJets.eta) < 2.5)",
663 GhostConstitNames = [
"GhostLCTopoOrigin"],
664 Suffix =
"clusterSoftDrop",
665 Grooming =
"SoftDrop",
669 RCSubstructureClusterSDAug = CompFactory.DerivationFramework.CommonAugmentation(
"RCSubstructureClusterSDAug", AugmentationTools = [LLP1RCJetSubstructureClustSDAugTool])
670 acc.addEventAlgo(RCSubstructureClusterSDAug)
673 from DerivationFrameworkLLP.LLPToolsConfig
import RCJetSubstructureAugCfg
675 name =
"LLP1RCJetSubstructureTrackTrimAugTool",
676 StreamName = kwargs[
'StreamName'],
677 JetContainerKey =
"AntiKt10EMTopoRCJets",
678 SelectionString =
"(AntiKt10EMTopoRCJets.pt > 200.*GeV) && (abs(AntiKt10EMTopoRCJets.eta) < 2.5)",
679 GhostConstitNames = [
"GhostTrack",
"GhostTrackLRT"],
680 Suffix =
"trackTrim",
681 Grooming =
"Trimming",
685 RCSubstructureTrackTrimAug = CompFactory.DerivationFramework.CommonAugmentation(
"RCSubstructureTrackTrimAug", AugmentationTools = [LLP1RCJetSubstructureTrackTrimAugTool])
686 acc.addEventAlgo(RCSubstructureTrackTrimAug)
688 from DerivationFrameworkLLP.LLPToolsConfig
import RCJetSubstructureAugCfg
690 name =
"LLP1RCJetSubstructureTrackSDAugTool",
691 StreamName = kwargs[
'StreamName'],
692 JetContainerKey =
"AntiKt10EMTopoRCJets",
693 SelectionString =
"(AntiKt10EMTopoRCJets.pt > 200.*GeV) && (abs(AntiKt10EMTopoRCJets.eta) < 2.5)",
694 GhostConstitNames = [
"GhostTrack",
"GhostTrackLRT"],
695 Suffix =
"trackSoftDrop",
696 Grooming =
"SoftDrop",
700 RCSubstructureTrackSDAug = CompFactory.DerivationFramework.CommonAugmentation(
"RCSubstructureTrackSDAug", AugmentationTools = [LLP1RCJetSubstructureTrackSDAugTool])
701 acc.addEventAlgo(RCSubstructureTrackSDAug)
708 from DerivationFrameworkLLP.LLPToolsConfig
import LLP1TriggerSkimmingToolCfg
710 name =
"LLP1TriggerSkimmingTool",
711 TriggerListsHelper = kwargs[
'TriggerListsHelper']))
713 skimmingTools.append(LLP1TriggerSkimmingTool)
715 DerivationKernel = CompFactory.DerivationFramework.DerivationKernel
717 SkimmingTools = skimmingTools,
718 ThinningTools = thinningTools,
719 AugmentationTools = augmentationTools))