ATLAS Offline Software
Loading...
Searching...
No Matches
python.PIXELVALID Namespace Reference

Functions

 PIXELVALID_ANDToolCfg (flags, name='PIXELVALID_ANDTool')
 PIXELVALID_ZTAUTAUCfg (flags, name='PIXELVALID_ZTAUTAU')
 PIXELVALIDKernelCommonCfg (flags, name='PIXELVALIDKernelCommon')
 PIXELVALIDThinningKernelCfg (flags, name="PIXELVALIDThinningKernel", StreamName="")
 PIXELVALIDKernelCfg (flags, name="PIXELVALIDKernel", StreamName="")
 PixelVALIDCfg (flags)

Function Documentation

◆ PIXELVALID_ANDToolCfg()

python.PIXELVALID.PIXELVALID_ANDToolCfg ( flags,
name = 'PIXELVALID_ANDTool' )

Definition at line 18 of file PIXELVALID.py.

18def PIXELVALID_ANDToolCfg(flags, name='PIXELVALID_ANDTool'):
19 acc = ComponentAccumulator()
20
21 sel_muon1 = 'Muons.pt > 25*GeV && Muons.ptcone40/Muons.pt < 0.3 && Muons.passesIDCuts'
22 sel_muon2 = 'Muons.pt > 20*GeV && Muons.ptcone40/Muons.pt < 0.3 && Muons.passesIDCuts'
23 draw_zmumu = '( count ( DRZmumuMass > 70*GeV && DRZmumuMass < 110*GeV ) >= 1 ) '
24 from DerivationFrameworkTools.DerivationFrameworkToolsConfig import (InvariantMassToolCfg,xAODStringSkimmingToolCfg,FilterCombinationANDCfg)
25 PIXELVALID_ZmumuMass = acc.getPrimaryAndMerge(InvariantMassToolCfg(
26 flags, name="PIXELVALID_ZmumuMass",
27 ContainerName = "Muon",
28 ObjectRequirements = sel_muon1,
29 SecondObjectRequirements = sel_muon2,
30 MassHypothesis = 105.66,
31 SecondMassHypothesis = 105.66,
32 StoreGateEntryName = "DRZmumuMass",
33 InputDecorNames = ["Muons.ptcone40"]))
34
35 PIXELVALID_SkimmingTool = acc.getPrimaryAndMerge(xAODStringSkimmingToolCfg(
36 flags,
37 name="PIXELVALID_SkimmingTool",
38 expression=draw_zmumu))
39
40 PIXELVALID_ANDTool = acc.getPrimaryAndMerge(FilterCombinationANDCfg(
41 flags,
42 name,
43 FilterList=[PIXELVALID_ZmumuMass,PIXELVALID_SkimmingTool]))
44
45 acc.addPublicTool(PIXELVALID_ANDTool, primary=True)
46 return acc
47
48

◆ PIXELVALID_ZTAUTAUCfg()

python.PIXELVALID.PIXELVALID_ZTAUTAUCfg ( flags,
name = 'PIXELVALID_ZTAUTAU' )

Definition at line 49 of file PIXELVALID.py.

49def PIXELVALID_ZTAUTAUCfg(flags, name='PIXELVALID_ZTAUTAU'):
50 acc = ComponentAccumulator()
51
52# sel_mu = '(Muons.pt > 29*GeV) && Muons.passesIDCuts'
53 sel_mu = '(Muons.pt > 10*GeV) && Muons.passesIDCuts'
54 muRequirement = '( count( '+sel_mu+' ) == 1 )'
55# sel_tau = '(TauJets.pt > 30.0*GeV) && (TauJets.RNNJetScoreSigTrans>0.55) && ( TauJets.nTracks == 3)'
56 sel_tau = '(TauJets.pt > 10.0*GeV)'
57# tauRequirement = '( count( '+sel_tau+' ) == 1 )'
58 tauRequirement = '( count( '+sel_tau+' ) > 0 )'
59 draw_taumuh = muRequirement+' && '+tauRequirement
60 from DerivationFrameworkTools.DerivationFrameworkToolsConfig import (xAODStringSkimmingToolCfg)
61 PIXELVALID_ZTAUTAU = acc.getPrimaryAndMerge(xAODStringSkimmingToolCfg(flags,
62 name="PIXELVALID_ZTAUTAU",
63 expression=draw_taumuh))
64
65 acc.addPublicTool(PIXELVALID_ZTAUTAU, primary=True)
66 return acc
67
68

◆ PixelVALIDCfg()

python.PIXELVALID.PixelVALIDCfg ( flags)
Main config fragment for PIXELVALID

Definition at line 205 of file PIXELVALID.py.

205def PixelVALIDCfg(flags):
206 """Main config fragment for PIXELVALID"""
207 acc = ComponentAccumulator()
208
209 # Main algorithm (kernel)
210 if flags.Detector.GeometryID:
211 acc.merge(PIXELVALIDKernelCfg(flags, StreamName = 'StreamDAOD_PIXELVALID'))
212
213 # =============================
214 # Define contents of the format
215 # =============================
216 from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
217 from xAODMetaDataCnv.InfileMetaDataConfig import SetupMetaDataForStreamCfg
218 from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper
219 PIXELVALIDSlimmingHelper = SlimmingHelper(
220 "PIXELVALIDSlimmingHelper",
221 NamesAndTypes = flags.Input.TypedCollections,
222 flags = flags)
223
224 AllVariables = []
225 StaticContent = []
226 SmartCollections = []
227 ExtraVariables = []
228
229 PixelStoreMode = flags.InDet.PixelDumpMode
230 if flags.InDet.PixelDumpMode==3:
231 PixelStoreMode = 1
232
233 if flags.InDet.PixelDumpMode == 4:
234 PixelStoreMode = 3
235
236 if flags.InDet.PixelDumpMode == 5:
237 PixelStoreMode = 4
238
239 if PixelStoreMode==1:
240 PIXELVALIDSlimmingHelper.AppendToDictionary.update({
241 "EventInfo": "xAOD::EventInfo", "EventInfoAux": "xAOD::EventAuxInfo",
242 "Muons": "xAOD::MuonContainer", "MuonsAux": "xAOD::MuonAuxContainer",
243 "Electrons": "xAOD::ElectronContainer",
244 "ElectronsAux": "xAOD::ElectronAuxContainer",
245 "Photons": "xAOD::PhotonContainer",
246 "PhotonsAux": "xAOD::PhotonAuxContainer",
247 "JetETMissNeutralParticleFlowObjects": "xAOD::FlowElementContainer",
248 "JetETMissNeutralParticleFlowObjectsAux": "xAOD::FlowElementAuxContainer",
249 "JetETMissChargedParticleFlowObjects": "xAOD::FlowElementContainer",
250 "JetETMissChargedParticleFlowObjectsAux": "xAOD::FlowElementAuxContainer",
251 "TauJets": "xAOD::TauJetContainer",
252 "TauJetsAux": "xAOD::TauJetAuxContainer",
253 "InDetTrackParticles": "xAOD::TrackParticleContainer",
254 "InDetTrackParticlesAux": "xAOD::TrackParticleAuxContainer",
255 "InDetLargeD0TrackParticles": "xAOD::TrackParticleContainer",
256 "InDetLargeD0TrackParticlesAux": "xAOD::TrackParticleAuxContainer",
257 "PixelMSOSs": "xAOD::TrackStateValidationContainer",
258 "PixelMSOSsAux": "xAOD::TrackStateValidationAuxContainer",
259 "Kt4EMTopoOriginEventShape": "xAOD::EventShape",
260 "Kt4EMTopoOriginEventShapeAux": "xAOD::EventShapeAuxInfo",
261 "Kt4LCTopoOriginEventShape": "xAOD::EventShape",
262 "Kt4LCTopoOriginEventShapeAux": "xAOD::EventShapeAuxInfo",
263 "NeutralParticleFlowIsoCentralEventShape": "xAOD::EventShape",
264 "NeutralParticleFlowIsoCentralEventShapeAux": "xAOD::EventShapeAuxInfo",
265 "NeutralParticleFlowIsoForwardEventShape": "xAOD::EventShape",
266 "NeutralParticleFlowIsoForwardEventShapeAux": "xAOD::EventShapeAuxInfo",
267 "TopoClusterIsoCentralEventShape": "xAOD::EventShape",
268 "TopoClusterIsoCentralEventShapeAux": "xAOD::EventShapeAuxInfo",
269 "TopoClusterIsoForwardEventShape": "xAOD::EventShape",
270 "TopoClusterIsoForwardEventShapeAux": "xAOD::EventShapeAuxInfo",
271 "MET_Calo": "xAOD::MissingETContainer",
272 "MET_CaloAux": "xAOD::MissingETAuxContainer",
273 "MET_Track": "xAOD::MissingETContainer",
274 "MET_TrackAux": "xAOD::MissingETAuxContainer",
275 "MET_LocHadTopo": "xAOD::MissingETContainer",
276 "MET_LocHadTopoRegions": "xAOD::MissingETContainer",
277 "MET_LocHadTopoAux": "xAOD::MissingETAuxContainer",
278 "MET_LocHadTopoRegionsAux": "xAOD::MissingETAuxContainer",
279 "MET_Core_AntiKt4LCTopo": "xAOD::MissingETContainer",
280 "MET_Reference_AntiKt4LCTopo": "xAOD::MissingETContainer",
281 "MET_Core_AntiKt4LCTopoAux": "xAOD::MissingETAuxContainer",
282 "MET_Reference_AntiKt4LCTopoAux": "xAOD::MissingETAuxContainer"})
283
284 SmartCollections += ["Muons", "Electrons", "Photons"]
285
286 AllVariables += ["EventInfo",
287 "JetETMissNeutralParticleFlowObjects",
288 "JetETMissChargedParticleFlowObjects",
289 "InDetTrackParticles",
290 "InDetLargeD0TrackParticles",
291 "PixelMSOSs",
292 "Kt4EMTopoOriginEventShape",
293 "Kt4LCTopoOriginEventShape",
294 "NeutralParticleFlowIsoCentralEventShape",
295 "NeutralParticleFlowIsoForwardEventShape",
296 "TopoClusterIsoCentralEventShape",
297 "TopoClusterIsoForwardEventShape"]
298
299 PIXELVALIDSlimmingHelper.AppendToDictionary.update({
300 "TauJets": "xAOD::TauJetContainer",
301 "TauJetsAux": "xAOD::TauJetAuxContainer",
302 "Kt4EMPFlowEventShape": "xAOD::EventShape",
303 "Kt4EMPFlowEventShapeAux": "xAOD::EventShapeAuxInfo",
304 "PrimaryVertices": "xAOD::VertexContainer",
305 "PrimaryVerticesAux": "xAOD::VertexAuxContainer",
306 "AntiKt4EMTopoJets": "xAOD::JetContainer",
307 "AntiKt4EMTopoJetsAux": "xAOD::JetAuxContainer",
308 "AntiKt4EMPFlowJets": "xAOD::JetContainer",
309 "AntiKt4EMPFlowJetsAux": "xAOD::JetAuxContainer"})
310
311 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"]
312 ExtraVariables += ["PrimaryVertices.sumPt2.x.y.z"]
313
314 AllVariables += ["Kt4EMPFlowEventShape",
315 "AntiKt4EMTopoJets", "AntiKt4EMPFlowJets"]
316
317 if flags.Input.isMC:
318 PIXELVALIDSlimmingHelper.AppendToDictionary.update({
319 "AntiKt4TruthJets": "xAOD::JetContainer",
320 "AntiKt4TruthJetsAux": "xAOD::JetAuxContainer",
321 "JetInputTruthParticles": "xAOD::TruthParticleContainer",
322 "JetInputTruthParticlesNoWZ": "xAOD::TruthParticleContainer",
323 "TruthEvents": "xAOD::TruthEventContainer",
324 "TruthEventsAux": "xAOD::TruthEventAuxContainer",
325 "TruthParticles": "xAOD::TruthParticleContainer",
326 "TruthParticlesAux": "xAOD::TruthParticleAuxContainer",
327 "egammaTruthParticles": "xAOD::TruthParticleContainer",
328 "egammaTruthParticlesAux": "xAOD::TruthParticleAuxContainer",
329 "MuonTruthParticles": "xAOD::TruthParticleContainer",
330 "MuonTruthParticlesAux": "xAOD::TruthParticleAuxContainer",
331 "LRTegammaTruthParticles": "xAOD::TruthParticleContainer",
332 "LRTegammaTruthParticlesAux": "xAOD::TruthParticleAuxContainer",
333 "TruthVertices": "xAOD::TruthVertexContainer",
334 "TruthVerticesAux": "xAOD::TruthVertexAuxContainer",
335 "MET_Truth": "xAOD::MissingETContainer",
336 "MET_TruthRegions": "xAOD::MissingETContainer",
337 "MET_TruthAux": "xAOD::MissingETAuxContainer",
338 "MET_TruthRegionsAux": "xAOD::MissingETAuxContainer"})
339
340 AllVariables += ["AntiKt4TruthJets",
341 "JetInputTruthParticles",
342 "JetInputTruthParticlesNoWZ",
343 "TruthEvents",
344 "TruthParticles",
345 "egammaTruthParticles",
346 "MuonTruthParticles",
347 "LRTegammaTruthParticles",
348 "TruthVertices"]
349
350 list_aux = ["BHadronsFinal", "BHadronsInitial", "BQuarksFinal",
351 "CHadronsFinal", "CHadronsInitial", "CQuarksFinal",
352 "HBosons", "Partons", "TQuarksFinal", "TausFinal",
353 "WBosons", "ZBosons"]
354 for item in list_aux:
355 label = "TruthLabel"+item
356 labelAux = label+"Aux"
357 PIXELVALIDSlimmingHelper.AppendToDictionary.update(
358 {label: "xAOD::TruthParticleContainer",
359 labelAux: "xAOD::TruthParticleAuxContainer"})
360 AllVariables += [label]
361 # End of isMC block
362
363 # Trigger info is actually stored only when running on data...
364 PIXELVALIDSlimmingHelper.IncludeTriggerNavigation = True
365 PIXELVALIDSlimmingHelper.IncludeAdditionalTriggerContent = True
366
367 if PixelStoreMode==2:
368 PIXELVALIDSlimmingHelper.AppendToDictionary.update({
369 "EventInfo": "xAOD::EventInfo", "EventInfoAux": "xAOD::EventAuxInfo",
370 "PixelMonitoringTrack": "xAOD::TrackParticleContainer",
371 "PixelMonitoringTrackAux": "xAOD::TrackParticleAuxContainer"})
372
373 AllVariables += ["EventInfo",
374 "PixelMonitoringTrack"]
375
376 if flags.Input.isMC:
377 PIXELVALIDSlimmingHelper.AppendToDictionary.update({
378 "TruthEvents": "xAOD::TruthEventContainer",
379 "TruthEventsAux": "xAOD::TruthEventAuxContainer",
380 "TruthParticles": "xAOD::TruthParticleContainer",
381 "TruthParticlesAux": "xAOD::TruthParticleAuxContainer"})
382
383 AllVariables += ["TruthEvents",
384 "TruthParticles"]
385
386 list_aux = ["BHadronsFinal", "BHadronsInitial", "BQuarksFinal",
387 "CHadronsFinal", "CHadronsInitial", "CQuarksFinal",
388 "HBosons", "Partons", "TQuarksFinal", "TausFinal",
389 "WBosons", "ZBosons"]
390 for item in list_aux:
391 label = "TruthLabel"+item
392 labelAux = label+"Aux"
393 PIXELVALIDSlimmingHelper.AppendToDictionary.update(
394 {label: "xAOD::TruthParticleContainer",
395 labelAux: "xAOD::TruthParticleAuxContainer"})
396 AllVariables += [label]
397 # End of isMC block
398
399
400 if PixelStoreMode == 3:
401 PIXELVALIDSlimmingHelper.AppendToDictionary.update({
402 "EventInfo": "xAOD::EventInfo", "EventInfoAux": "xAOD::EventAuxInfo",
403 "InDetTrackParticles": "xAOD::TrackParticleContainer",
404 "InDetTrackParticlesAux": "xAOD::TrackParticleAuxContainer"})
405
406 AllVariables += ["EventInfo",
407 "InDetTrackParticles"]
408
409 PIXELVALIDSlimmingHelper.AppendToDictionary.update({
410 "PrimaryVertices": "xAOD::VertexContainer",
411 "PrimaryVerticesAux": "xAOD::VertexAuxContainer"})
412
413 ExtraVariables += ["PrimaryVertices.sumPt2.x.y.z"]
414
415 if flags.Input.isMC:
416 PIXELVALIDSlimmingHelper.AppendToDictionary.update({
417 "TruthEvents": "xAOD::TruthEventContainer",
418 "TruthEventsAux": "xAOD::TruthEventAuxContainer",
419 "TruthParticles": "xAOD::TruthParticleContainer",
420 "TruthParticlesAux": "xAOD::TruthParticleAuxContainer",
421 "TruthVertices": "xAOD::TruthVertexContainer",
422 "TruthVerticesAux": "xAOD::TruthVertexAuxContainer"})
423
424 AllVariables += ["TruthEvents",
425 "TruthParticles",
426 "TruthVertices"]
427
428 list_aux = ["BHadronsFinal", "BHadronsInitial", "BQuarksFinal",
429 "CHadronsFinal", "CHadronsInitial", "CQuarksFinal",
430 "HBosons", "Partons", "TQuarksFinal", "TausFinal",
431 "WBosons", "ZBosons"]
432 for item in list_aux:
433 label = "TruthLabel"+item
434 labelAux = label+"Aux"
435 PIXELVALIDSlimmingHelper.AppendToDictionary.update(
436 {label: "xAOD::TruthParticleContainer",
437 labelAux: "xAOD::TruthParticleAuxContainer"})
438 AllVariables += [label]
439 # End of isMC block
440
441 # Trigger info is actually stored only when running on data...
442 PIXELVALIDSlimmingHelper.IncludeTriggerNavigation = True
443 PIXELVALIDSlimmingHelper.IncludeAdditionalTriggerContent = True
444
445
446 if PixelStoreMode == 4:
447 PIXELVALIDSlimmingHelper.AppendToDictionary.update({
448 "EventInfo": "xAOD::EventInfo", "EventInfoAux": "xAOD::EventAuxInfo",
449 "InDetTrackParticles": "xAOD::TrackParticleContainer",
450 "InDetTrackParticlesAux": "xAOD::TrackParticleAuxContainer"})
451
452 AllVariables += ["EventInfo",
453 "InDetTrackParticles"]
454
455 PIXELVALIDSlimmingHelper.AppendToDictionary.update({
456 "PixelClusters": "xAOD::TrackMeasurementValidationContainer",
457 "PixelClustersAux": "xAOD::TrackMeasurementValidationAuxContainer"})
458
459 ExtraVariables += ["PixelClusters.charge.layer.bec.phi_module.eta_module.eta_pixel_index.phi_pixel_index.nRDO.sizePhi.sizeZ.ToT"]
460
461 PIXELVALIDSlimmingHelper.AppendToDictionary.update({
462 "PrimaryVertices": "xAOD::VertexContainer",
463 "PrimaryVerticesAux": "xAOD::VertexAuxContainer"})
464
465 ExtraVariables += ["PrimaryVertices.sumPt2.x.y.z"]
466
467 if flags.Input.isMC:
468 PIXELVALIDSlimmingHelper.AppendToDictionary.update({
469 "TruthEvents": "xAOD::TruthEventContainer",
470 "TruthEventsAux": "xAOD::TruthEventAuxContainer",
471 "TruthParticles": "xAOD::TruthParticleContainer",
472 "TruthParticlesAux": "xAOD::TruthParticleAuxContainer",
473 "TruthVertices": "xAOD::TruthVertexContainer",
474 "TruthVerticesAux": "xAOD::TruthVertexAuxContainer"})
475
476 AllVariables += ["TruthEvents",
477 "TruthParticles",
478 "TruthVertices"]
479
480 list_aux = ["BHadronsFinal", "BHadronsInitial", "BQuarksFinal",
481 "CHadronsFinal", "CHadronsInitial", "CQuarksFinal",
482 "HBosons", "Partons", "TQuarksFinal", "TausFinal",
483 "WBosons", "ZBosons"]
484
485 for item in list_aux:
486 label = "TruthLabel"+item
487 labelAux = label+"Aux"
488 PIXELVALIDSlimmingHelper.AppendToDictionary.update(
489 {label: "xAOD::TruthParticleContainer",
490 labelAux: "xAOD::TruthParticleAuxContainer"})
491 AllVariables += [label]
492 # End of isMC block
493
494 # Trigger info is actually stored only when running on data...
495 PIXELVALIDSlimmingHelper.IncludeTriggerNavigation = True
496 PIXELVALIDSlimmingHelper.IncludeAdditionalTriggerContent = True
497
498
499 PIXELVALIDSlimmingHelper.AllVariables = AllVariables
500 PIXELVALIDSlimmingHelper.StaticContent = StaticContent
501 PIXELVALIDSlimmingHelper.SmartCollections = SmartCollections
502 PIXELVALIDSlimmingHelper.ExtraVariables = ExtraVariables
503
504 # Output stream
505 PIXELVALIDItemList = PIXELVALIDSlimmingHelper.GetItemList()
506 acc.merge(OutputStreamCfg(flags, "DAOD_PIXELVALID",
507 ItemList=PIXELVALIDItemList, AcceptAlgs=["PIXELVALIDKernelCommon"]))
508
509 if flags.InDet.PixelDumpMode == 4 or flags.InDet.PixelDumpMode == 5:
510 acc.merge(SetupMetaDataForStreamCfg(
511 flags, "DAOD_PIXELVALID", AcceptAlgs=["PIXELVALIDKernelCommon"],
512 createMetadata=[MetadataCategory.CutFlowMetaData, MetadataCategory.TriggerMenuMetaData]))
513 else:
514 acc.merge(SetupMetaDataForStreamCfg(
515 flags, "DAOD_PIXELVALID", AcceptAlgs=["PIXELVALIDKernelCommon"],
516 createMetadata=[MetadataCategory.CutFlowMetaData]))
517
518 return acc

◆ PIXELVALIDKernelCfg()

python.PIXELVALID.PIXELVALIDKernelCfg ( flags,
name = "PIXELVALIDKernel",
StreamName = "" )
Configure the derivation framework driving algorithm (kernel) for PIXELVALID

Definition at line 160 of file PIXELVALID.py.

160def PIXELVALIDKernelCfg(flags, name="PIXELVALIDKernel", StreamName=""):
161 """Configure the derivation framework driving algorithm (kernel) for PIXELVALID"""
162 acc = ComponentAccumulator()
163
164 PIXELVALIDSequenceName='PIXELVALIDSequence'
165 acc.addSequence(seqAND(PIXELVALIDSequenceName))
166
167 acc.merge(PIXELVALIDKernelCommonCfg(flags),sequenceName=PIXELVALIDSequenceName)
168
169 from InDetConfig.InDetPrepRawDataToxAODConfig import InDetPrepDataToxAODCfg
170 acc.merge(InDetPrepDataToxAODCfg(flags),sequenceName=PIXELVALIDSequenceName)
171
172 # ====================================================================
173 # AUGMENTATION TOOLS
174 # ====================================================================
175 tsos_augmentationTools = []
176
177 from DerivationFrameworkInDet.InDetToolsConfig import DFTrackStateOnSurfaceDecoratorCfg
178 DFTSOS = acc.getPrimaryAndMerge(DFTrackStateOnSurfaceDecoratorCfg(flags))
179 tsos_augmentationTools.append(DFTSOS)
180
181 PixelStoreMode = flags.InDet.PixelDumpMode
182 if flags.InDet.PixelDumpMode==3:
183 PixelStoreMode = 1
184
185
186 if flags.InDet.PixelDumpMode < 4:
187 from DerivationFrameworkInDet.PixelNtupleMakerConfig import PixelNtupleMakerCfg
188 PixelMonitoringTool = acc.getPrimaryAndMerge(PixelNtupleMakerCfg(flags,
189 name = "PixelMonitoringTool",
190 StoreMode = PixelStoreMode))
191 tsos_augmentationTools.append(PixelMonitoringTool)
192
193 # shared between IDTIDE and PIXELVALID
194 acc.addEventAlgo(CompFactory.DerivationFramework.DerivationKernel(
195 name,
196 AugmentationTools=tsos_augmentationTools,
197 ThinningTools=[],
198 OutputLevel=INFO))
199
200 acc.merge(PIXELVALIDThinningKernelCfg(flags, StreamName=StreamName), sequenceName=PIXELVALIDSequenceName)
201
202 return acc
203
204# Main config

◆ PIXELVALIDKernelCommonCfg()

python.PIXELVALID.PIXELVALIDKernelCommonCfg ( flags,
name = 'PIXELVALIDKernelCommon' )

Definition at line 69 of file PIXELVALID.py.

69def PIXELVALIDKernelCommonCfg(flags, name='PIXELVALIDKernelCommon'):
70 acc = ComponentAccumulator()
71
72 # ====================================================================
73 # AUGMENTATION TOOLS
74 # ====================================================================
75 augmentationTools = []
76
77 # Add unbiased track parameters to track particles
78 from DerivationFrameworkInDet.InDetToolsConfig import (TrackToVertexWrapperCfg)
79 PIXELVALIDTrackToVertexWrapper = acc.getPrimaryAndMerge(TrackToVertexWrapperCfg(
80 flags,
81 name="PIXELVALIDTrackToVertexWrapper",
82 DecorationPrefix="PIXELVALID"))
83 augmentationTools.append(PIXELVALIDTrackToVertexWrapper)
84
85 from DerivationFrameworkInDet.InDetToolsConfig import (UsedInVertexFitTrackDecoratorCfg)
86 PIXELVALIDUsedInFitDecorator = acc.getPrimaryAndMerge(UsedInVertexFitTrackDecoratorCfg(flags))
87 augmentationTools.append(PIXELVALIDUsedInFitDecorator)
88
89 # @TODO eventually computed for other extra outputs. Possible to come up with a solution to use a common Z0AtPV if there is more than one client ?
90 from DerivationFrameworkInDet.InDetToolsConfig import TrackParametersAtPVCfg
91 DFCommonZ0AtPV = acc.getPrimaryAndMerge(TrackParametersAtPVCfg(
92 flags, name="PIXELVALID_DFCommonZ0AtPV",
93 Z0SGEntryName="PIXELVALIDInDetTrackZ0AtPV"))
94 augmentationTools.append(DFCommonZ0AtPV)
95
96 from DerivationFrameworkInDet.PixelNtupleMakerConfig import (EventInfoPixelModuleStatusMonitoringCfg)
97 DFEI = acc.getPrimaryAndMerge(EventInfoPixelModuleStatusMonitoringCfg(flags))
98 augmentationTools.append(DFEI)
99
100 # ====================================================================
101 # SKIMMING TOOLS
102 # ====================================================================
103
104 skimmingTools = []
105 if flags.InDet.DRAWZSelection:
106 PIXELVALID_ANDTool = acc.getPrimaryAndMerge(PIXELVALID_ANDToolCfg(flags))
107 skimmingTools.append(PIXELVALID_ANDTool)
108
109 if flags.InDet.PixelDumpMode==3:
110 PIXELVALID_ZTAUTAU = acc.getPrimaryAndMerge(PIXELVALID_ZTAUTAUCfg(flags))
111 skimmingTools.append(PIXELVALID_ZTAUTAU)
112
113 # ====================================================================
114 # CREATE THE DERIVATION KERNEL ALGORITHM AND PASS THE ABOVE TOOLS
115 # ====================================================================
116 acc.addEventAlgo(CompFactory.DerivationFramework.DerivationKernel(
117 name,
118 AugmentationTools = augmentationTools,
119 SkimmingTools = skimmingTools,
120 ThinningTools = [],
121 RunSkimmingFirst = True))
122
123 return acc
124
125

◆ PIXELVALIDThinningKernelCfg()

python.PIXELVALID.PIXELVALIDThinningKernelCfg ( flags,
name = "PIXELVALIDThinningKernel",
StreamName = "" )

Definition at line 126 of file PIXELVALID.py.

126def PIXELVALIDThinningKernelCfg(flags, name="PIXELVALIDThinningKernel", StreamName=""):
127 acc = ComponentAccumulator()
128
129 # ====================================================================
130 # THINNING TOOLS
131 # ====================================================================
132 thinningTools = []
133
134 # MC truth thinning
135 if flags.Input.isMC:
136 from DerivationFrameworkInDet.InDetToolsConfig import (IDTRKVALIDTruthThinningToolCfg)
137 thinningTools.append(acc.getPrimaryAndMerge(IDTRKVALIDTruthThinningToolCfg(flags, StreamName=StreamName)))
138 acc.addEventAlgo(CompFactory.DerivationFramework.DerivationKernel(
139 name,
140 AugmentationTools=[],
141 ThinningTools=thinningTools,
142 OutputLevel=INFO))
143
144 elif flags.InDet.PixelDumpMode == 5:
145 acc.addSequence( seqAND("PixelClusterThinningSequence") )
146 acc.getSequence("PixelClusterThinningSequence").ExtraDataForDynamicConsumers = ["xAOD::TrackMeasurementValidationContainer/PixelClusters"]
147 acc.getSequence("PixelClusterThinningSequence").ProcessDynamicDataDependencies = True
148 from DerivationFrameworkInDet.InDetToolsConfig import (PixelClusterThinningCfg)
149 thinningTools.append(acc.getPrimaryAndMerge(PixelClusterThinningCfg(flags, StreamName=StreamName)))
150 acc.addEventAlgo(CompFactory.DerivationFramework.DerivationKernel(
151 name,
152 AugmentationTools=[],
153 ThinningTools=thinningTools,
154 OutputLevel=INFO),
155 sequenceName="PixelClusterThinningSequence")
156
157 return acc
158
159