37 acc = ComponentAccumulator()
42 augmentationTools = []
45 from DerivationFrameworkInDet.InDetToolsConfig
import (
46 TrackToVertexWrapperCfg)
47 IDTIDETrackToVertexWrapper = acc.getPrimaryAndMerge(
48 TrackToVertexWrapperCfg(
49 flags, name=
"IDTIDETrackToVertexWrapper",
50 DecorationPrefix=
"IDTIDE")
52 augmentationTools.append(IDTIDETrackToVertexWrapper)
54 from DerivationFrameworkInDet.InDetToolsConfig
import (
55 UsedInVertexFitTrackDecoratorCfg)
56 IDTIDEUsedInFitDecorator = acc.getPrimaryAndMerge(
57 UsedInVertexFitTrackDecoratorCfg(flags))
58 augmentationTools.append(IDTIDEUsedInFitDecorator)
61 from DerivationFrameworkInDet.InDetToolsConfig
import (
62 TrackParametersAtPVCfg)
63 DFCommonZ0AtPV = acc.getPrimaryAndMerge(TrackParametersAtPVCfg(
64 flags, name=
"IDTIDE_DFCommonZ0AtPV",
65 Z0SGEntryName=
"IDTIDEInDetTrackZ0AtPV")
67 augmentationTools.append(DFCommonZ0AtPV)
77 if not flags.Input.isMC:
79 sel_jet600 =
'AntiKt4EMPFlowJets.JetConstitScaleMomentum_pt >= 600.*GeV'
80 sel_jet800 =
'AntiKt4EMPFlowJets.JetConstitScaleMomentum_pt >= 800.*GeV'
81 sel_jet1000 =
'AntiKt4EMPFlowJets.JetConstitScaleMomentum_pt >= 1000.*GeV'
84 jetA_ph1 =
'( HLT_j110_pf_ftf_preselj80_L1jJ60 || HLT_j175_pf_ftf_preselj140_L1jJ90 || HLT_j260_pf_ftf_preselj200_L1jJ125 )'
85 jetC_ph1 =
'( HLT_j360_pf_ftf_preselj225_L1jJ160 )'
86 jetD_ph1 =
'( HLT_j400_pf_ftf_preselj225_L1jJ160 && !HLT_j460_pf_ftf_preselj225_L1jJ160 )'
87 jetE_ph1 =
'( HLT_j460_pf_ftf_preselj225_L1jJ160 )'
88 jetF_ph1 =
' HLT_j460_pf_ftf_preselj225_L1jJ160 '
89 jetG_ph1 =
' HLT_j460_pf_ftf_preselj225_L1jJ160 '
90 jetH_ph1 =
' HLT_j460_pf_ftf_preselj225_L1jJ160 '
93 desd_jetA = f
'( HLT_j110_pf_ftf_preselj80_L1J30 || HLT_j175_pf_ftf_preselj140_L1J50 || HLT_j260_pf_ftf_preselj200_L1J75 ) || {jetA_ph1} '
94 desd_jetC = f
'( HLT_j360_pf_ftf_preselj225_L1J100 ) || {jetC_ph1} '
95 desd_jetD = f
'( HLT_j420_pf_ftf_preselj225_L1J100 && !HLT_j460_pf_ftf_preselj225_L1J100 ) || {jetD_ph1} '
96 desd_jetE = f
'( HLT_j460_pf_ftf_preselj225_L1J100 ) || {jetE_ph1} '
98 f
'(( HLT_j460_pf_ftf_preselj225_L1J100 || {jetF_ph1} ) && count({sel_jet600})>0 && count({sel_jet800})==0 )'
100 f
'(( HLT_j460_pf_ftf_preselj225_L1J100 || {jetG_ph1} ) && count({sel_jet800})>0 && count({sel_jet1000})==0 )'
101 desd_jetH = f
'(( HLT_j460_pf_ftf_preselj225_L1J100 || {jetH_ph1} ) && count({sel_jet1000})>0 )'
112 from DerivationFrameworkTools.DerivationFrameworkToolsConfig
import (
113 xAODStringSkimmingToolCfg,
115 FilterCombinationANDCfg,
116 FilterCombinationORCfg)
118 IDTIDE_SkimmingToolA = acc.getPrimaryAndMerge(
119 xAODStringSkimmingToolCfg(flags, name=
"IDTIDE_SkimmingToolA",
120 expression=desd_jetA))
121 IDTIDE_PrescaleToolA = acc.getPrimaryAndMerge(PrescaleToolCfg(
122 flags, name=
"IDTIDE_PrescaleToolA", Prescale=prescaleA))
123 IDTIDE_ANDToolA = acc.getPrimaryAndMerge(FilterCombinationANDCfg(
124 flags, name=
"IDTIDE_ANDToolA",
125 FilterList=[IDTIDE_SkimmingToolA, IDTIDE_PrescaleToolA]))
127 IDTIDE_SkimmingToolC = acc.getPrimaryAndMerge(
128 xAODStringSkimmingToolCfg(flags, name=
"IDTIDE_SkimmingToolC",
129 expression=desd_jetC))
130 IDTIDE_PrescaleToolC = acc.getPrimaryAndMerge(PrescaleToolCfg(
131 flags, name=
"IDTIDE_PrescaleToolC", Prescale=prescaleC))
132 IDTIDE_ANDToolC = acc.getPrimaryAndMerge(FilterCombinationANDCfg(
133 flags, name=
"IDTIDE_ANDToolC",
134 FilterList=[IDTIDE_SkimmingToolC, IDTIDE_PrescaleToolC]))
136 IDTIDE_SkimmingToolD = acc.getPrimaryAndMerge(
137 xAODStringSkimmingToolCfg(flags, name=
"IDTIDE_SkimmingToolD",
138 expression=desd_jetD))
139 IDTIDE_PrescaleToolD = acc.getPrimaryAndMerge(PrescaleToolCfg(
140 flags, name=
"IDTIDE_PrescaleToolD", Prescale=prescaleD))
141 IDTIDE_ANDToolD = acc.getPrimaryAndMerge(FilterCombinationANDCfg(
142 flags, name=
"IDTIDE_ANDToolD",
143 FilterList=[IDTIDE_SkimmingToolD, IDTIDE_PrescaleToolD]))
145 IDTIDE_SkimmingToolE = acc.getPrimaryAndMerge(
146 xAODStringSkimmingToolCfg(flags, name=
"IDTIDE_SkimmingToolE",
147 expression=desd_jetE))
148 IDTIDE_PrescaleToolE = acc.getPrimaryAndMerge(PrescaleToolCfg(
149 flags, name=
"IDTIDE_PrescaleToolE", Prescale=prescaleE))
150 IDTIDE_ANDToolE = acc.getPrimaryAndMerge(FilterCombinationANDCfg(
151 flags, name=
"IDTIDE_ANDToolE",
152 FilterList=[IDTIDE_SkimmingToolE, IDTIDE_PrescaleToolE]))
154 IDTIDE_SkimmingToolF = acc.getPrimaryAndMerge(
155 xAODStringSkimmingToolCfg(flags, name=
"IDTIDE_SkimmingToolF",
156 expression=desd_jetF))
157 IDTIDE_PrescaleToolF = acc.getPrimaryAndMerge(PrescaleToolCfg(
158 flags, name=
"IDTIDE_PrescaleToolF", Prescale=prescaleF))
159 IDTIDE_ANDToolF = acc.getPrimaryAndMerge(FilterCombinationANDCfg(
160 flags, name=
"IDTIDE_ANDToolF",
161 FilterList=[IDTIDE_SkimmingToolF, IDTIDE_PrescaleToolF]))
163 IDTIDE_SkimmingToolG = acc.getPrimaryAndMerge(
164 xAODStringSkimmingToolCfg(flags, name=
"IDTIDE_SkimmingToolG",
165 expression=desd_jetG))
166 IDTIDE_PrescaleToolG = acc.getPrimaryAndMerge(PrescaleToolCfg(
167 flags, name=
"IDTIDE_PrescaleToolG", Prescale=prescaleG))
168 IDTIDE_ANDToolG = acc.getPrimaryAndMerge(FilterCombinationANDCfg(
169 flags, name=
"IDTIDE_ANDToolG",
170 FilterList=[IDTIDE_SkimmingToolG, IDTIDE_PrescaleToolG]))
172 IDTIDE_SkimmingToolH = acc.getPrimaryAndMerge(
173 xAODStringSkimmingToolCfg(flags, name=
"IDTIDE_SkimmingToolH",
174 expression=desd_jetH))
176 IDTIDE_ORTool = acc.getPrimaryAndMerge(FilterCombinationORCfg(
177 flags, name=
"IDTIDELogicalCombination",
178 FilterList=[IDTIDE_ANDToolA, IDTIDE_ANDToolC, IDTIDE_ANDToolD,
179 IDTIDE_ANDToolE, IDTIDE_ANDToolF,
180 IDTIDE_ANDToolG, IDTIDE_SkimmingToolH]))
182 skimmingTools.append(IDTIDE_ORTool)
186 CompFactory.DerivationFramework.DerivationKernel(
187 "IDTIDEKernelPresel",
188 SkimmingTools=skimmingTools,
189 doChronoStat=(flags.Concurrency.NumThreads <= 1)))
194 acc.addEventAlgo(CompFactory.DerivationFramework.DerivationKernel(
196 AugmentationTools=augmentationTools,
197 SkimmingTools=skimmingTools,
199 RunSkimmingFirst=
True,
200 doChronoStat=(flags.Concurrency.NumThreads <= 1)))
206 acc = ComponentAccumulator()
214 if flags.Detector.GeometryID:
215 from DerivationFrameworkInDet.InDetToolsConfig
import (
216 IDTIDEThinningToolCfg)
217 thinningTools.append(acc.getPrimaryAndMerge(
218 IDTIDEThinningToolCfg(flags, StreamName=StreamName)))
219 if flags.Detector.GeometryITk:
220 from DerivationFrameworkInDet.InDetToolsConfig
import (
221 ITkTIDEThinningToolCfg)
222 thinningTools.append(acc.getPrimaryAndMerge(
223 ITkTIDEThinningToolCfg(flags, StreamName=StreamName)))
227 from DerivationFrameworkInDet.InDetToolsConfig
import (
228 IDTIDETruthThinningToolCfg)
229 thinningTools.append(acc.getPrimaryAndMerge(
230 IDTIDETruthThinningToolCfg(flags, StreamName=StreamName)))
232 acc.addEventAlgo(CompFactory.DerivationFramework.DerivationKernel(
234 AugmentationTools=[],
235 ThinningTools=thinningTools,
236 doChronoStat=(flags.Concurrency.NumThreads <= 1)))
240 """Configure the derivation framework driving algorithm (kernel) for IDTIDE"""
241 acc = ComponentAccumulator()
246 IDTIDEPreselSequenceName=
'IDTIDEPreselSequence'
247 acc.addSequence(seqAND(IDTIDEPreselSequenceName))
268 IDTIDEPreselAlgSequenceName=
'IDTIDEPreselAlgSequence'
269 acc.addSequence(parAND(IDTIDEPreselAlgSequenceName),
270 parentName=IDTIDEPreselSequenceName)
272 from InDetConfig.InDetPrepRawDataToxAODConfig
import InDetPrepDataToxAODCfg
273 acc.merge(InDetPrepDataToxAODCfg(flags),
274 sequenceName=IDTIDEPreselAlgSequenceName)
276 IDTIDEPostProcSequenceName=
'IDTIDEPostProcSequence'
277 acc.addSequence(parAND(IDTIDEPostProcSequenceName),
278 parentName=IDTIDEPreselSequenceName)
281 from InDetPhysValMonitoring.InDetPhysValDecorationConfig
import (
282 InDetPhysValTruthDecoratorAlgCfg)
283 acc.merge(InDetPhysValTruthDecoratorAlgCfg(flags),
284 sequenceName=IDTIDEPostProcSequenceName)
286 from DerivationFrameworkInDet.InDetToolsConfig
import (
287 DFInDetTSOSKernelCfg)
288 acc.merge(DFInDetTSOSKernelCfg(flags),
289 sequenceName=IDTIDEPostProcSequenceName)
291 sequenceName=IDTIDEPostProcSequenceName)
295 """Configure the derivation framework driving algorithm (kernel) for IDTIDE"""
296 acc = ComponentAccumulator()
298 IDTIDEPreselSequenceName=
'IDTIDEPreselSequence'
299 acc.addSequence(seqAND(IDTIDEPreselSequenceName))
303 IDTIDEPreselAlgSequenceName=
'IDTIDEPreselAlgSequence'
304 acc.addSequence(parAND(IDTIDEPreselAlgSequenceName),
305 parentName=IDTIDEPreselSequenceName)
307 from InDetConfig.InDetPrepRawDataToxAODConfig
import ITkPrepDataToxAODCfg
308 acc.merge(ITkPrepDataToxAODCfg(flags),
309 sequenceName=IDTIDEPreselAlgSequenceName)
311 IDTIDEPostProcSequenceName=
'IDTIDEPostProcSequence'
312 acc.addSequence(parAND(IDTIDEPostProcSequenceName),
313 parentName=IDTIDEPreselSequenceName)
318 if not flags.Tracking.writeExtendedSi_PRDInfo:
319 from DerivationFrameworkInDet.InDetToolsConfig
import DFITkTSOSKernelCfg
320 acc.merge(DFITkTSOSKernelCfg(flags),
321 sequenceName=IDTIDEPostProcSequenceName)
324 from InDetPhysValMonitoring.InDetPhysValDecorationConfig
import (
325 InDetPhysValTruthDecoratorAlgCfg)
326 acc.merge(InDetPhysValTruthDecoratorAlgCfg(flags),
327 sequenceName=IDTIDEPostProcSequenceName)
330 sequenceName=IDTIDEPostProcSequenceName)
336 """Main config fragment for IDTIDE"""
337 acc = ComponentAccumulator()
340 if flags.Detector.GeometryID:
342 if flags.Detector.GeometryITk:
348 from OutputStreamAthenaPool.OutputStreamConfig
import OutputStreamCfg
349 from xAODMetaDataCnv.InfileMetaDataConfig
import SetupMetaDataForStreamCfg
350 from DerivationFrameworkCore.SlimmingHelper
import SlimmingHelper
352 "IDTIDESlimmingHelper",
353 NamesAndTypes=flags.Input.TypedCollections,
358 SmartCollections = []
361 IDTIDESlimmingHelper.AppendToDictionary.update({
362 "EventInfo":
"xAOD::EventInfo",
"EventInfoAux":
"xAOD::EventAuxInfo",
363 "CombinedMuonTrackParticles":
"xAOD::TrackParticleContainer",
"CombinedMuonTrackParticlesAux":
"xAOD::TrackParticleAuxContainer",
364 "Muons":
"xAOD::MuonContainer",
"MuonsAux":
"xAOD::MuonAuxContainer",
365 "Electrons":
"xAOD::ElectronContainer",
366 "ElectronsAux":
"xAOD::ElectronAuxContainer",
367 "Photons":
"xAOD::PhotonContainer",
368 "PhotonsAux":
"xAOD::PhotonAuxContainer",
369 "JetETMissNeutralParticleFlowObjects":
"xAOD::FlowElementContainer",
370 "JetETMissNeutralParticleFlowObjectsAux":
"xAOD::FlowElementAuxContainer",
371 "JetETMissChargedParticleFlowObjects":
"xAOD::FlowElementContainer",
372 "JetETMissChargedParticleFlowObjectsAux":
"xAOD::FlowElementAuxContainer",
373 "TauJets":
"xAOD::TauJetContainer",
374 "TauJetsAux":
"xAOD::TauJetAuxContainer",
375 "InDetTrackParticles":
"xAOD::TrackParticleContainer",
376 "InDetTrackParticlesAux":
"xAOD::TrackParticleAuxContainer",
377 "InDetLargeD0TrackParticles":
"xAOD::TrackParticleContainer",
378 "InDetLargeD0TrackParticlesAux":
"xAOD::TrackParticleAuxContainer",
379 "Kt4EMTopoOriginEventShape":
"xAOD::EventShape",
380 "Kt4EMTopoOriginEventShapeAux":
"xAOD::EventShapeAuxInfo",
381 "Kt4LCTopoOriginEventShape":
"xAOD::EventShape",
382 "Kt4LCTopoOriginEventShapeAux":
"xAOD::EventShapeAuxInfo",
383 "NeutralParticleFlowIsoCentralEventShape":
"xAOD::EventShape",
384 "NeutralParticleFlowIsoCentralEventShapeAux":
"xAOD::EventShapeAuxInfo",
385 "NeutralParticleFlowIsoForwardEventShape":
"xAOD::EventShape",
386 "NeutralParticleFlowIsoForwardEventShapeAux":
"xAOD::EventShapeAuxInfo",
387 "TopoClusterIsoCentralEventShape":
"xAOD::EventShape",
388 "TopoClusterIsoCentralEventShapeAux":
"xAOD::EventShapeAuxInfo",
389 "TopoClusterIsoForwardEventShape":
"xAOD::EventShape",
390 "TopoClusterIsoForwardEventShapeAux":
"xAOD::EventShapeAuxInfo"}
392 if flags.Detector.GeometryID:
393 IDTIDESlimmingHelper.AppendToDictionary.update({
394 "PixelClusters":
"xAOD::TrackMeasurementValidationContainer",
395 "PixelClustersAux":
"xAOD::TrackMeasurementValidationAuxContainer",
396 "SCT_Clusters":
"xAOD::TrackMeasurementValidationContainer",
397 "SCT_ClustersAux":
"xAOD::TrackMeasurementValidationAuxContainer"
399 if flags.Detector.GeometryITk:
400 IDTIDESlimmingHelper.AppendToDictionary.update({
401 "ITkPixelMeasurements":
"xAOD::TrackMeasurementValidationContainer",
402 "ITkPixelMeasurementsAux":
"xAOD::TrackMeasurementValidationAuxContainer",
403 "ITkStripMeasurements":
"xAOD::TrackMeasurementValidationContainer",
404 "ITkStripMeasurementsAux":
"xAOD::TrackMeasurementValidationAuxContainer"
406 if flags.ITk.DAODStorePLR:
407 IDTIDESlimmingHelper.AppendToDictionary.update({
408 "PLRMeasurements":
"xAOD::TrackMeasurementValidationContainer",
409 "PLRMeasurementsAux":
"xAOD::TrackMeasurementValidationAuxContainer"
412 SmartCollections += [
"Muons",
"Electrons",
"Photons",
"TauJets"]
414 AllVariables += [
"EventInfo",
415 "JetETMissNeutralParticleFlowObjects",
416 "JetETMissChargedParticleFlowObjects",
417 "InDetTrackParticles",
418 "InDetLargeD0TrackParticles",
421 "Kt4EMTopoOriginEventShape",
422 "Kt4LCTopoOriginEventShape",
423 "NeutralParticleFlowIsoCentralEventShape",
424 "NeutralParticleFlowIsoForwardEventShape",
425 "TopoClusterIsoCentralEventShape",
426 "TopoClusterIsoForwardEventShape",
428 if flags.Detector.GeometryID:
429 AllVariables += [
"PixelClusters",
"SCT_Clusters"]
430 if flags.Detector.GeometryITk:
431 AllVariables += [
"ITkPixelMeasurements",
"ITkStripMeasurements"]
432 if flags.ITk.DAODStorePLR:
433 AllVariables += [
"PLRMeasurements"]
435 IDTIDESlimmingHelper.AppendToDictionary.update({
436 "Kt4EMPFlowEventShape":
"xAOD::EventShape",
437 "Kt4EMPFlowEventShapeAux":
"xAOD::EventShapeAuxInfo",
438 "Kt4EMPFlowNeutEventShape":
"xAOD::EventShape",
439 "Kt4EMPFlowNeutEventShapeAux":
"xAOD::EventShapeAuxInfo",
440 "PrimaryVertices":
"xAOD::VertexContainer",
441 "PrimaryVerticesAux":
"xAOD::VertexAuxContainer",
442 "InDetTrackParticlesClusterAssociations":
"xAOD::TrackParticleClusterAssociationContainer",
443 "InDetTrackParticlesClusterAssociationsAux":
"xAOD::TrackParticleClusterAssociationAuxContainer",
444 "AntiKt4EMTopoJets":
"xAOD::JetContainer",
445 "AntiKt4EMTopoJetsAux":
"xAOD::JetAuxContainer",
446 "AntiKt4EMPFlowJets":
"xAOD::JetContainer",
447 "AntiKt4EMPFlowJetsAux":
"xAOD::JetAuxContainer"})
449 ExtraVariables += [
"TauJets.ABS_ETA_LEAD_TRACK.ClusterTotalEnergy.ClustersMeanCenterLambda.ClustersMeanEMProbability.ClustersMeanFirstEngDens.ClustersMeanPresamplerFrac.ClustersMeanSecondLambda.EMFracFixed.LeadClusterFrac.NNDecayMode.NNDecayModeProb_1p0n.NNDecayModeProb_1p1n.NNDecayModeProb_1pXn.NNDecayModeProb_3p0n.NNDecayModeProb_3pXn.PFOEngRelDiff.PanTau_DecayModeExtended.UpsilonCluster.absipSigLeadTrk.chargedFELinks.etHotShotWin.etHotShotWinOverPtLeadTrk.etaCombined.hadLeakFracFixed.leadTrackProbHT.mCombined.mu.nConversionTracks.nFakeTracks.nModifiedIsolationTracks.nVtxPU.neutralFELinks.passThinning.phiCombined.ptCombined.ptIntermediateAxisEM.rho"]
450 ExtraVariables += [
"PrimaryVertices.sumPt2.x.y.z"]
452 AllVariables += [
"Kt4EMPFlowEventShape",
"Kt4EMPFlowNeutEventShape",
453 "InDetTrackParticlesClusterAssociations",
454 "AntiKt4EMTopoJets",
"AntiKt4EMPFlowJets"]
456 if flags.Detector.EnablePixel:
457 IDTIDESlimmingHelper.AppendToDictionary.update(
458 {
'PixelMSOSs':
'xAOD::TrackStateValidationContainer',
459 'PixelMSOSsAux':
'xAOD::TrackStateValidationAuxContainer'})
460 AllVariables += [
"PixelMSOSs"]
462 if flags.Detector.EnableSCT:
463 IDTIDESlimmingHelper.AppendToDictionary.update(
464 {
'SCT_MSOSs':
'xAOD::TrackStateValidationContainer',
465 'SCT_MSOSsAux':
'xAOD::TrackStateValidationAuxContainer'})
466 AllVariables += [
"SCT_MSOSs"]
468 if flags.Detector.EnableTRT:
469 IDTIDESlimmingHelper.AppendToDictionary.update(
470 {
'TRT_MSOSs':
'xAOD::TrackStateValidationContainer',
471 'TRT_MSOSsAux':
'xAOD::TrackStateValidationAuxContainer'})
472 AllVariables += [
"TRT_MSOSs"]
474 if flags.Detector.EnableITkPixel:
475 IDTIDESlimmingHelper.AppendToDictionary.update(
476 {
'ITkPixelMSOSs':
'xAOD::TrackStateValidationContainer',
477 'ITkPixelMSOSsAux':
'xAOD::TrackStateValidationAuxContainer'})
478 AllVariables += [
"ITkPixelMSOSs"]
480 if flags.Detector.EnableITkStrip:
481 IDTIDESlimmingHelper.AppendToDictionary.update(
482 {
'ITkStripMSOSs':
'xAOD::TrackStateValidationContainer',
483 'ITkStripMSOSsAux':
'xAOD::TrackStateValidationAuxContainer'})
484 AllVariables += [
"ITkStripMSOSs"]
488 IDTIDESlimmingHelper.AppendToDictionary.update({
489 "AntiKt4TruthJets":
"xAOD::JetContainer",
490 "AntiKt4TruthJetsAux":
"xAOD::JetAuxContainer",
491 "InTimeAntiKt4TruthJets":
"xAOD::JetContainer",
492 "InTimeAntiKt4TruthJetsAux":
"xAOD::JetAuxContainer",
493 "JetInputTruthParticles":
"xAOD::TruthParticleContainer",
494 "JetInputTruthParticlesNoWZ":
"xAOD::TruthParticleContainer",
495 "TruthEvents":
"xAOD::TruthEventContainer",
496 "TruthEventsAux":
"xAOD::TruthEventAuxContainer",
497 "TruthParticles":
"xAOD::TruthParticleContainer",
498 "TruthParticlesAux":
"xAOD::TruthParticleAuxContainer",
499 "egammaTruthParticles":
"xAOD::TruthParticleContainer",
500 "egammaTruthParticlesAux":
"xAOD::TruthParticleAuxContainer",
501 "MuonTruthParticles":
"xAOD::TruthParticleContainer",
502 "MuonTruthParticlesAux":
"xAOD::TruthParticleAuxContainer",
503 "LRTegammaTruthParticles":
"xAOD::TruthParticleContainer",
504 "LRTegammaTruthParticlesAux":
"xAOD::TruthParticleAuxContainer",
505 "TruthVertices":
"xAOD::TruthVertexContainer",
506 "TruthVerticesAux":
"xAOD::TruthVertexAuxContainer"})
508 AllVariables += [
"AntiKt4TruthJets",
509 "InTimeAntiKt4TruthJets",
510 "JetInputTruthParticles",
511 "JetInputTruthParticlesNoWZ",
514 "egammaTruthParticles",
515 "MuonTruthParticles",
516 "LRTegammaTruthParticles",
519 list_aux = [
"BHadronsFinal",
"BHadronsInitial",
"BQuarksFinal",
520 "CHadronsFinal",
"CHadronsInitial",
"CQuarksFinal",
521 "HBosons",
"Partons",
"TQuarksFinal",
"TausFinal",
522 "WBosons",
"ZBosons"]
523 for item
in list_aux:
524 label =
"TruthLabel"+item
525 labelAux = label+
"Aux"
526 IDTIDESlimmingHelper.AppendToDictionary.update(
527 {label:
"xAOD::TruthParticleContainer",
528 labelAux:
"xAOD::TruthParticleAuxContainer"})
529 AllVariables += [label]
533 IDTIDESlimmingHelper.IncludeTriggerNavigation =
True
534 IDTIDESlimmingHelper.IncludeAdditionalTriggerContent =
True
536 IDTIDESlimmingHelper.AllVariables = AllVariables
537 IDTIDESlimmingHelper.StaticContent = StaticContent
538 IDTIDESlimmingHelper.SmartCollections = SmartCollections
539 IDTIDESlimmingHelper.ExtraVariables = ExtraVariables
542 IDTIDEItemList = IDTIDESlimmingHelper.GetItemList()
543 acc.merge(OutputStreamCfg(flags,
"DAOD_IDTIDE",
544 ItemList=IDTIDEItemList, AcceptAlgs=[
"IDTIDEKernel"]))
545 acc.merge(SetupMetaDataForStreamCfg(
546 flags,
"DAOD_IDTIDE", AcceptAlgs=[
"IDTIDEKernel"],
547 createMetadata=[MetadataCategory.CutFlowMetaData, MetadataCategory.TriggerMenuMetaData]))