ATLAS Offline Software
Loading...
Searching...
No Matches
TauToolHolder Namespace Reference

Functions

 JetSeedBuilderCfg (flags)
 JetSeedBuilder.
 TauVertexFinderCfg (flags)
 TauAxisCfg (flags)
 Tau energy calibration and tau axis direction.
 getParticleCache (flags)
 TauTrackFinderCfg (flags)
 Tau-Track Association.
 TauClusterFinderCfg (flags)
 Associate the cluster in jet constituents to the tau candidate.
 TauVertexedClusterDecoratorCfg (flags)
 TauTrackRNNCfg (flags)
 TauTrackRNNClassifierCfg (flags)
 EnergyCalibrationLCCfg (flags)
 Tau energy calibration.
 CellVariablesCfg (flags)
 Tau cell variables calculation.
 ElectronVetoVarsCfg (flags)
 ele veto variables
 TauShotFinderCfg (flags)
 Photon Shot Finder.
 Pi0ClusterFinderCfg (flags)
 Pi0 algo Cluster finder for Pi0 algo.
 TauCellFinalizerCfg (flags)
 Cell finalizer tool for BuildAlg.
 TauCaloLCClassificationCfg (flags)
 Calo Tools.
 TauCaloLCWeightCfg (flags)
 TauCaloLCOutOfClusterCfg (flags)
 TauCaloLCOutPi0Cfg (flags)
 TauCaloLCDeadMaterialCfg (flags)
 TauCaloClusterLocalCalibCfg (flags)
 TauCaloOOCCalibCfg (flags)
 TauCaloDMCalibCfg (flags)
 TauCaloOOCPi0CalibCfg (flags)
 TauCaloTopoClusterMakerCfg (flags)
 TauCaloTopoClusterSplitterCfg (flags)
 TauCaloClusterMomentsMakerCfg (flags)
 TauCaloClusterBadChannelCfg (flags)
 Pi0ClusterCreatorCfg (flags)
 create Pi0 clusters
 Pi0ClusterScalerCfg (flags)
 Set energy of cluster to take care of charged pion energy deposited in the ECAL.
 Pi0ScoreCalculatorCfg (flags)
 calculate MVA scores of pi0 clusters
 Pi0SelectorCfg (flags)
 select pi0 clusters
 TauVertexVariablesCfg (flags)
 Tau Vertex Variables.
 TauCommonCalcVarsCfg (flags)
 Tau Variables.
 TauSubstructureCfg (flags)
 Tau Variables.
 MvaTESVariableDecoratorCfg (flags)
 MvaTESVariableDecorator.
 MvaTESEvaluatorCfg (flags)
 MvaTESEvaluator.
 TauIDVarCalculatorCfg (flags)
 TauJetRNNEvaluatorCfg (flags, applyLooseTrackSel=False)
 TauWPDecoratorJetRNNCfg (flags)
 TauGNNEvaluatorCfg (flags, version=0, applyLooseTrackSel=False, applyTightTrackSel=False, tauContainerName="")
 TauWPDecoratorGNNCfg (flags, version, tauContainerName="")
 TauGNNDisplacedEvaluatorCfg (flags, tauContainerName="")
 TauEleRNNEvaluatorCfg (flags, applyLooseTrackSel=False)
 TauWPDecoratorEleRNNCfg (flags)
 TauDecayModeNNClassifierCfg (flags)
 TauAODSelectorCfg (flags)
 TauCombinedTESCfg (flags, **kwargs)
 TauCombinedTES.
 TauAODMuonRemovalCfg (flags)
 muon removal tool
 TauEleOverlapChecker (flags)

Function Documentation

◆ CellVariablesCfg()

CellVariablesCfg ( flags)

Tau cell variables calculation.

Definition at line 208 of file TauToolHolder.py.

208def CellVariablesCfg(flags):
209 result = ComponentAccumulator()
210 _name = flags.Tau.ActiveConfig.prefix + 'CellVariables'
211
212 TauCellVariables = CompFactory.getComp("TauCellVariables")
213 TauCellVariables = TauCellVariables(name = _name,
214 VertexCorrection = flags.Tau.doVertexCorrection)
215
216 result.setPrivateTools(TauCellVariables)
217 return result
218
Calculate tau calorimeter variables from cell information.

◆ ElectronVetoVarsCfg()

ElectronVetoVarsCfg ( flags)

ele veto variables

Definition at line 221 of file TauToolHolder.py.

221def ElectronVetoVarsCfg(flags):
222 result = ComponentAccumulator()
223 _name = flags.Tau.ActiveConfig.prefix + 'TauElectronVetoVars'
224
225 from TrackToCalo.TrackToCaloConfig import ParticleCaloExtensionToolCfg
226
227 TauElectronVetoVariables = CompFactory.getComp("TauElectronVetoVariables")
228 TauElectronVetoVariables = TauElectronVetoVariables(name = _name,
229 VertexCorrection = flags.Tau.doVertexCorrection,
230 ParticleCaloExtensionTool = result.popToolsAndMerge(ParticleCaloExtensionToolCfg(flags)),
231 tauEVParticleCache = getParticleCache(flags))
232
233 result.setPrivateTools(TauElectronVetoVariables)
234 return result
235
Calculate variables sensitive on electrons.

◆ EnergyCalibrationLCCfg()

EnergyCalibrationLCCfg ( flags)

Tau energy calibration.

Definition at line 194 of file TauToolHolder.py.

194def EnergyCalibrationLCCfg(flags):
195 result = ComponentAccumulator()
196 _name = flags.Tau.ActiveConfig.prefix +'EnergyCalibrationLC'
197
198 TauCalibrateLC = CompFactory.getComp("TauCalibrateLC")
199 TauCalibrateLC = TauCalibrateLC(name = _name,
200 calibrationFile = flags.Tau.CalibrateLCConfig,
201 Key_vertexInputContainer = flags.Tau.ActiveConfig.VertexCollection)
202
203 result.setPrivateTools(TauCalibrateLC)
204 return result
205
Implementation of tau energy scale (TES) with eta and pile-up correction.

◆ getParticleCache()

getParticleCache ( flags)

Definition at line 70 of file TauToolHolder.py.

70def getParticleCache(flags):
71 #If reading from ESD we not create a cache of extrapolations to the calorimeter, so we should signify this by setting the cache key to a null string
72 if flags.Common.ProductionStep is ProductionStep.Reconstruction:
73 ParticleCache = "ParticleCaloExtension"
74 else:
75 ParticleCache = ""
76
77 return ParticleCache
78

◆ JetSeedBuilderCfg()

JetSeedBuilderCfg ( flags)

JetSeedBuilder.

Definition at line 20 of file TauToolHolder.py.

20def JetSeedBuilderCfg(flags):
21 result = ComponentAccumulator()
22 _name = flags.Tau.ActiveConfig.prefix + 'JetSeedBuilder'
23
24 JetSeedBuilder = CompFactory.getComp("JetSeedBuilder")
25 JetSeedBuilder = JetSeedBuilder(name = _name)
26
27 result.setPrivateTools(JetSeedBuilder)
28 return result
29
Class to build tau jet seed.

◆ MvaTESEvaluatorCfg()

MvaTESEvaluatorCfg ( flags)

MvaTESEvaluator.

Definition at line 680 of file TauToolHolder.py.

680def MvaTESEvaluatorCfg(flags):
681 result = ComponentAccumulator()
682 _name = flags.Tau.ActiveConfig.prefix + 'MvaTESEvaluator'
683
684 MvaTESEvaluator = CompFactory.getComp("MvaTESEvaluator")
685 MvaTESEvaluator = MvaTESEvaluator(name = _name,
686 WeightFileName = flags.Tau.MvaTESConfig,
687 WeightFileName0p = flags.Tau.MvaTESConfig0p )
688
689 result.setPrivateTools(MvaTESEvaluator)
690 return result
691

◆ MvaTESVariableDecoratorCfg()

MvaTESVariableDecoratorCfg ( flags)

MvaTESVariableDecorator.

Definition at line 660 of file TauToolHolder.py.

660def MvaTESVariableDecoratorCfg(flags):
661 result = ComponentAccumulator()
662 _name = flags.Tau.ActiveConfig.prefix + 'MvaTESVariableDecorator'
663
664 eventShapeCollection = flags.Tau.ActiveConfig.EventShapeCollection
665 if 'EMPFlow' in flags.Tau.ActiveConfig.SeedJetCollection:
666 eventShapeCollection = "Kt4EMPFlowEventShape"
667 elif 'EMTopo' in flags.Tau.ActiveConfig.SeedJetCollection:
668 eventShapeCollection ="Kt4EMTopoOriginEventShape"
669
670 MvaTESVariableDecorator = CompFactory.getComp("MvaTESVariableDecorator")
671 MvaTESVariableDecorator = MvaTESVariableDecorator(name = _name,
672 Key_vertexInputContainer = flags.Tau.ActiveConfig.VertexCollection,
673 EventShapeKey = eventShapeCollection,
674 VertexCorrection = flags.Tau.doVertexCorrection)
675 result.setPrivateTools(MvaTESVariableDecorator)
676 return result
677

◆ Pi0ClusterCreatorCfg()

Pi0ClusterCreatorCfg ( flags)

create Pi0 clusters

Definition at line 553 of file TauToolHolder.py.

553def Pi0ClusterCreatorCfg(flags):
554 result = ComponentAccumulator()
555 _name = flags.Tau.ActiveConfig.prefix + 'Pi0ClusterCreator'
556
557 # TauPi0ClusterCreator accesses cells via links only, which doesn't
558 # make a scheduler dependency. So make additional explicit dependencies
559 # on cells in the input file.
560 extraInputs = []
561 for typ, nam in [i.split('#') for i in flags.Input.TypedCollections]:
562 if typ == 'CaloCellContainer':
563 extraInputs += [('CaloCellContainer', nam)]
564
565 TauPi0ClusterCreator = CompFactory.getComp("TauPi0ClusterCreator")
566 TauPi0ClusterCreator = TauPi0ClusterCreator(name = _name,
567 ExtraInputs = extraInputs,
568 RecoFromAOD = flags.Common.ProductionStep is ProductionStep.Derivation)
569
570 result.setPrivateTools(TauPi0ClusterCreator)
571 return result
572
Creates Pi0 clusters (Pi0 Finder).

◆ Pi0ClusterFinderCfg()

Pi0ClusterFinderCfg ( flags)

Pi0 algo Cluster finder for Pi0 algo.

Definition at line 268 of file TauToolHolder.py.

268def Pi0ClusterFinderCfg(flags):
269 result = ComponentAccumulator()
270 _name = flags.Tau.ActiveConfig.prefix + 'Pi0ClusterFinder'
271
272 TauPi0CreateROI = CompFactory.getComp("TauPi0CreateROI")
273
274 myTauPi0CreateROI = TauPi0CreateROI(
275 name = _name,
276 Key_caloCellInputContainer = "AllCalo",
277 Key_RemovedClusterInputContainer = flags.Tau.ActiveConfig.RemovedElectronClusters,
278 inEleRM = flags.Tau.ActiveConfig.inTauEleRM,
279 RemoveElectronCells = flags.Tau.ActiveConfig.RemoveElectronCells,
280 )
281
282 result.setPrivateTools(myTauPi0CreateROI)
283 return result
284
Find the cells used to create pi0 cluster.

◆ Pi0ClusterScalerCfg()

Pi0ClusterScalerCfg ( flags)

Set energy of cluster to take care of charged pion energy deposited in the ECAL.

Definition at line 575 of file TauToolHolder.py.

575def Pi0ClusterScalerCfg(flags):
576 result = ComponentAccumulator()
577 _name = flags.Tau.ActiveConfig.prefix + 'Pi0ClusterScaler'
578
579 TauPi0ClusterScaler = CompFactory.getComp("TauPi0ClusterScaler")
580 TauPi0ClusterScaler = TauPi0ClusterScaler(name = _name,
581 MinNeutralPFOPt = flags.Tau.MinNeutralPFOPt)
582
583 result.setPrivateTools(TauPi0ClusterScaler)
584 return result
585
scale cluster energy to take care of charged pion energy

◆ Pi0ScoreCalculatorCfg()

Pi0ScoreCalculatorCfg ( flags)

calculate MVA scores of pi0 clusters

Definition at line 588 of file TauToolHolder.py.

588def Pi0ScoreCalculatorCfg(flags):
589 result = ComponentAccumulator()
590 _name = flags.Tau.ActiveConfig.prefix + 'Pi0ScoreCalculator'
591
592 TauPi0ScoreCalculator = CompFactory.getComp("TauPi0ScoreCalculator")
593 TauPi0ScoreCalculator = TauPi0ScoreCalculator(name = _name,
594 BDTWeightFile = flags.Tau.Pi0ScoreConfig)
595
596 result.setPrivateTools(TauPi0ScoreCalculator)
597 return result
598
Selectes pi0Candidates (Pi0 Finder).

◆ Pi0SelectorCfg()

Pi0SelectorCfg ( flags)

select pi0 clusters

Definition at line 601 of file TauToolHolder.py.

601def Pi0SelectorCfg(flags):
602 result = ComponentAccumulator()
603 _name = flags.Tau.ActiveConfig.prefix + 'Pi0Selector'
604
605 TauPi0Selector = CompFactory.getComp("TauPi0Selector")
606 TauPi0Selector = TauPi0Selector(name = _name,
607 Pi0EtCut = flags.Tau.pi0EtCuts,
608 Pi0BDTCut_1prong = flags.Tau.pi0MVACuts_1prong,
609 Pi0BDTCut_mprong = flags.Tau.pi0MVACuts_mprong)
610
611 result.setPrivateTools(TauPi0Selector)
612 return result
613
Apply Et and BDT score cut to pi0s.

◆ TauAODMuonRemovalCfg()

TauAODMuonRemovalCfg ( flags)

muon removal tool

Definition at line 948 of file TauToolHolder.py.

948def TauAODMuonRemovalCfg(flags):
949 result = ComponentAccumulator()
950 _name = flags.Tau.ActiveConfig.prefix + 'MuonRemoval'
951 TauAODMuonRemovalTool = CompFactory.getComp("TauAODMuonRemovalTool")
952 myMuonRemoval = TauAODMuonRemovalTool( name = _name,
953 Key_MuonInputContainer = 'Muons',
954 doMuonTrkRm = True,
955 doMuonClsRm = True,
956 muonIDWP = 'Medium'
957 )
958 result.setPrivateTools(myMuonRemoval)
959 return result
960
961# electron excluder tool
the tool meant to run at AOD level, to remove the muon found inside the TauJet.

◆ TauAODSelectorCfg()

TauAODSelectorCfg ( flags)

Definition at line 920 of file TauToolHolder.py.

920def TauAODSelectorCfg(flags):
921 result = ComponentAccumulator()
922 _name = flags.Tau.ActiveConfig.prefix + 'TauAODSelector'
923
924 TauAODSelector = CompFactory.getComp("TauAODSelector")
925 myTauAODSelector = TauAODSelector(name=_name,
926 Min0pTauPt = flags.Tau.MinPt0p,
927 MinTauPt = flags.Tau.MinPt,
928 doEarlyStopping = flags.Tau.doEarlyStopping and not flags.Output.doWriteESD)
929
930 result.setPrivateTools(myTauAODSelector)
931 return result
932

◆ TauAxisCfg()

TauAxisCfg ( flags)

Tau energy calibration and tau axis direction.

Definition at line 56 of file TauToolHolder.py.

56def TauAxisCfg(flags):
57 result = ComponentAccumulator()
58 _name = flags.Tau.ActiveConfig.prefix + 'TauAxis'
59
60 TauAxisSetter = CompFactory.getComp("TauAxisSetter")
61 TauAxisSetter = TauAxisSetter( name = _name,
62 ClusterCone = 0.2,
63 VertexCorrection = flags.Tau.doVertexCorrection )
64
65 result.setPrivateTools(TauAxisSetter)
66 return result
67
Set Tau "Detector Axis" and "Intermediate Axis".

◆ TauCaloClusterBadChannelCfg()

TauCaloClusterBadChannelCfg ( flags)

Definition at line 541 of file TauToolHolder.py.

541def TauCaloClusterBadChannelCfg(flags):
542 result = ComponentAccumulator()
543 _name = flags.Tau.ActiveConfig.prefix + 'CaloClusterBadChannelList'
544
545 CaloClusterBadChannelListCorr = CompFactory.getComp("CaloClusterBadChannelList")
546 BadChannelListCorrForTaus = CaloClusterBadChannelListCorr(_name)
547
548 result.setPrivateTools(BadChannelListCorrForTaus)
549 return result
550

◆ TauCaloClusterLocalCalibCfg()

TauCaloClusterLocalCalibCfg ( flags)

Definition at line 378 of file TauToolHolder.py.

378def TauCaloClusterLocalCalibCfg(flags):
379 result = ComponentAccumulator()
380 _name = flags.Tau.ActiveConfig.prefix + 'CaloLocalCalib'
381
382 CaloClusterLocalCalib = CompFactory.getComp("CaloClusterLocalCalib")
383 LocalCalib = CaloClusterLocalCalib(_name)
384 LocalCalib.ClusterClassificationTool = [result.popToolsAndMerge(TauCaloLCClassificationCfg(flags))]
385 LocalCalib.ClusterRecoStatus = [1,2]
386 LocalCalib.LocalCalibTools = [result.popToolsAndMerge(TauCaloLCWeightCfg(flags))]
387 LocalCalib.WeightingOfNegClusters = flags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
388
389 result.setPrivateTools(LocalCalib)
390 return result
391
Cluster correction tool which applies local hadronic calibration w eights to the cells.

◆ TauCaloClusterMomentsMakerCfg()

TauCaloClusterMomentsMakerCfg ( flags)

Definition at line 501 of file TauToolHolder.py.

501def TauCaloClusterMomentsMakerCfg(flags):
502 result = ComponentAccumulator()
503 _name = flags.Tau.ActiveConfig.prefix + 'Pi0TopoMoments'
504
505 # Schedule total noise cond alg
506 from CaloTools.CaloNoiseCondAlgConfig import CaloNoiseCondAlgCfg
507 result.merge(CaloNoiseCondAlgCfg(flags,"totalNoise"))
508 # Schedule electronic noise cond alg (needed for LC weights)
509 result.merge(CaloNoiseCondAlgCfg(flags,"electronicNoise"))
510
511 CaloClusterMomentsMaker = CompFactory.getComp("CaloClusterMomentsMaker")
512 TopoMomentsForTaus = CaloClusterMomentsMaker(_name)
513 TopoMomentsForTaus.WeightingOfNegClusters = flags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
514 TopoMomentsForTaus.MaxAxisAngle = 20*deg
515 TopoMomentsForTaus.TwoGaussianNoise = flags.Calo.TopoCluster.doTwoGaussianNoise
516 TopoMomentsForTaus.MinBadLArQuality = 4000
517 TopoMomentsForTaus.MomentsNames = ["FIRST_PHI"
518 ,"FIRST_ETA"
519 ,"SECOND_R"
520 ,"SECOND_LAMBDA"
521 ,"DELTA_PHI"
522 ,"DELTA_THETA"
523 ,"DELTA_ALPHA"
524 ,"CENTER_X"
525 ,"CENTER_Y"
526 ,"CENTER_Z"
527 ,"CENTER_MAG"
528 ,"CENTER_LAMBDA"
529 ,"LATERAL"
530 ,"LONGITUDINAL"
531 ,"ENG_FRAC_EM"
532 ,"ENG_FRAC_MAX"
533 ,"ENG_FRAC_CORE"
534 ,"FIRST_ENG_DENS"
535 ,"SECOND_ENG_DENS"
536 ,"ISOLATION"]
537
538 result.setPrivateTools(TopoMomentsForTaus)
539 return result
540
Calculate moments for CaloCluster objects.

◆ TauCaloDMCalibCfg()

TauCaloDMCalibCfg ( flags)

Definition at line 405 of file TauToolHolder.py.

405def TauCaloDMCalibCfg(flags):
406 result = ComponentAccumulator()
407 _name = flags.Tau.ActiveConfig.prefix + 'DMCalib'
408
409 CaloClusterLocalCalib = CompFactory.getComp("CaloClusterLocalCalib")
410 DMCalib = CaloClusterLocalCalib(_name)
411 DMCalib.ClusterRecoStatus = [1,2]
412 DMCalib.LocalCalibTools = [result.popToolsAndMerge(TauCaloLCDeadMaterialCfg(flags))]
413 DMCalib.WeightingOfNegClusters = flags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
414
415 result.setPrivateTools(DMCalib)
416 return result
417

◆ TauCaloLCClassificationCfg()

TauCaloLCClassificationCfg ( flags)

Calo Tools.

Definition at line 301 of file TauToolHolder.py.

301def TauCaloLCClassificationCfg(flags):
302 result = ComponentAccumulator()
303 _name = flags.Tau.ActiveConfig.prefix + 'LCClassify'
304
305 CaloLCClassificationTool = CompFactory.getComp("CaloLCClassificationTool")
306 LCClassify = CaloLCClassificationTool(_name)
307 LCClassify.ClassificationKey = "EMFracClassify"
308 LCClassify.UseSpread = False
309 LCClassify.MaxProbability = 0.5
310 # add the moments EM_PROBABILITY, HAD_WEIGHT, OOC_WEIGHT, DM_WEIGHT to the AOD:
311 LCClassify.StoreClassificationProbabilityInAOD = True
312 LCClassify.WeightingOfNegClusters = flags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
313 LCClassify.UseNormalizedEnergyDensity = True
314
315 result.setPrivateTools(LCClassify)
316 return result
317
classify clusters according to their probability to stem from an em object

◆ TauCaloLCDeadMaterialCfg()

TauCaloLCDeadMaterialCfg ( flags)

Definition at line 363 of file TauToolHolder.py.

363def TauCaloLCDeadMaterialCfg(flags):
364 result = ComponentAccumulator()
365 _name = flags.Tau.ActiveConfig.prefix + 'CaloLCDeadMaterialTool'
366
367 CaloLCDeadMaterialTool = CompFactory.getComp("CaloLCDeadMaterialTool")
368 LCDeadMaterial = CaloLCDeadMaterialTool(_name)
369 LCDeadMaterial.HadDMCoeffKey = "HadDMCoeff2"
370 LCDeadMaterial.ClusterRecoStatus = 0
371 LCDeadMaterial.WeightModeDM = 2
372 LCDeadMaterial.UseHadProbability = True
373 LCDeadMaterial.WeightingOfNegClusters = flags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
374
375 result.setPrivateTools(LCDeadMaterial)
376 return result
377
dead material correction tool for local hadronic calibration

◆ TauCaloLCOutOfClusterCfg()

TauCaloLCOutOfClusterCfg ( flags)

Definition at line 337 of file TauToolHolder.py.

337def TauCaloLCOutOfClusterCfg(flags):
338 result = ComponentAccumulator()
339 _name = flags.Tau.ActiveConfig.prefix + 'CaloLCOutOfClusterTool'
340
341 CaloLCOutOfClusterTool = CompFactory.getComp("CaloLCOutOfClusterTool")
342 LCOut = CaloLCOutOfClusterTool(_name)
343 LCOut.CorrectionKey = "OOCCorrection"
344 LCOut.UseEmProbability = False
345 LCOut.UseHadProbability = True
346
347 result.setPrivateTools(LCOut)
348 return result
349
calculates out-of-cluster corrections based on cluster quantities

◆ TauCaloLCOutPi0Cfg()

TauCaloLCOutPi0Cfg ( flags)

Definition at line 350 of file TauToolHolder.py.

350def TauCaloLCOutPi0Cfg(flags):
351 result = ComponentAccumulator()
352 _name = flags.Tau.ActiveConfig.prefix + 'LCOutPi0'
353
354 CaloLCOutOfClusterTool = CompFactory.getComp("CaloLCOutOfClusterTool")
355 LCOutPi0 = CaloLCOutOfClusterTool(_name)
356 LCOutPi0.CorrectionKey = "OOCPi0Correction"
357 LCOutPi0.UseEmProbability = True
358 LCOutPi0.UseHadProbability = False
359
360 result.setPrivateTools(LCOutPi0)
361 return result
362

◆ TauCaloLCWeightCfg()

TauCaloLCWeightCfg ( flags)

Definition at line 318 of file TauToolHolder.py.

318def TauCaloLCWeightCfg(flags):
319 result = ComponentAccumulator()
320 _name = flags.Tau.ActiveConfig.prefix + 'CaloLCWeightTool'
321
322 # Schedule total noise cond alg
323 from CaloTools.CaloNoiseCondAlgConfig import CaloNoiseCondAlgCfg
324 result.merge(CaloNoiseCondAlgCfg(flags,"totalNoise"))
325 # Schedule electronic noise cond alg (needed for LC weights)
326 result.merge(CaloNoiseCondAlgCfg(flags,"electronicNoise"))
327
328 CaloLCWeightTool = CompFactory.getComp("CaloLCWeightTool")
329 LCWeight = CaloLCWeightTool(_name)
330 LCWeight.CorrectionKey = "H1ClusterCellWeights"
331 LCWeight.SignalOverNoiseCut = 2.0
332 LCWeight.UseHadProbability = True
333
334 result.setPrivateTools(LCWeight)
335 return result
336
calculates hadronic cell weights based on cluster and cell quantities

◆ TauCaloOOCCalibCfg()

TauCaloOOCCalibCfg ( flags)

Definition at line 392 of file TauToolHolder.py.

392def TauCaloOOCCalibCfg(flags):
393 result = ComponentAccumulator()
394 _name = flags.Tau.ActiveConfig.prefix + 'OOCCalibTool'
395
396 CaloClusterLocalCalib = CompFactory.getComp("CaloClusterLocalCalib")
397 OOCCalib = CaloClusterLocalCalib (_name)
398 OOCCalib.ClusterRecoStatus = [1,2]
399 OOCCalib.LocalCalibTools = [result.popToolsAndMerge(TauCaloLCOutOfClusterCfg(flags))]
400 OOCCalib.WeightingOfNegClusters = flags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
401
402 result.setPrivateTools(OOCCalib)
403 return result
404

◆ TauCaloOOCPi0CalibCfg()

TauCaloOOCPi0CalibCfg ( flags)

Definition at line 418 of file TauToolHolder.py.

418def TauCaloOOCPi0CalibCfg(flags):
419 result = ComponentAccumulator()
420 _name = flags.Tau.ActiveConfig.prefix + 'OOCPi0CalibTool'
421
422 CaloClusterLocalCalib = CompFactory.getComp("CaloClusterLocalCalib")
423 OOCPi0Calib = CaloClusterLocalCalib (_name)
424 OOCPi0Calib.ClusterRecoStatus = [1,2]
425 OOCPi0Calib.LocalCalibTools = [result.popToolsAndMerge(TauCaloLCOutPi0Cfg(flags))]
426 OOCPi0Calib.WeightingOfNegClusters = flags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
427
428 result.setPrivateTools(OOCPi0Calib)
429 return result
430

◆ TauCaloTopoClusterMakerCfg()

TauCaloTopoClusterMakerCfg ( flags)

Definition at line 431 of file TauToolHolder.py.

431def TauCaloTopoClusterMakerCfg(flags):
432 result = ComponentAccumulator()
433 _name = flags.Tau.ActiveConfig.prefix + 'Pi0TopoClusterMaker'
434
435 # Schedule total noise cond alg
436 from CaloTools.CaloNoiseCondAlgConfig import CaloNoiseCondAlgCfg
437 result.merge(CaloNoiseCondAlgCfg(flags,"totalNoise"))
438 # Schedule electronic noise cond alg (needed for LC weights)
439 result.merge(CaloNoiseCondAlgCfg(flags,"electronicNoise"))
440
441 CaloTopoClusterMaker = CompFactory.getComp("CaloTopoClusterMaker")
442 TopoClusterForTaus = CaloTopoClusterMaker(_name)
443
444 TopoClusterForTaus.CellsName = flags.Tau.ActiveConfig.TauCommonPi0Cells
445 TopoClusterForTaus.CalorimeterNames=["LAREM"]
446 TopoClusterForTaus.SeedSamplingNames = ["PreSamplerB", "EMB1", "EMB2", "PreSamplerE", "EME1", "EME2"]
447 TopoClusterForTaus.NeighborOption = "super3D"
448 TopoClusterForTaus.RestrictHECIWandFCalNeighbors = False
449 TopoClusterForTaus.RestrictPSNeighbors = True
450 TopoClusterForTaus.CellThresholdOnEorAbsEinSigma = 0.0
451 TopoClusterForTaus.NeighborThresholdOnEorAbsEinSigma = 2.0
452 TopoClusterForTaus.SeedThresholdOnEorAbsEinSigma = 4.0
453 TopoClusterForTaus.SeedCutsInAbsE = True
454 TopoClusterForTaus.ClusterCutsInAbsEt = True
455 TopoClusterForTaus.ClusterEtorAbsEtCut = 0.5*GeV # 0.0*MeV in standard CaloCalTopoCluster JobOptions!
456 TopoClusterForTaus.TwoGaussianNoise = flags.Calo.TopoCluster.doTwoGaussianNoise
457 # timing cut on seed cell to suppress out-of-time pileup
458 TopoClusterForTaus.SeedCutsInT = flags.Calo.TopoCluster.doTimeCut
459 TopoClusterForTaus.CutOOTseed = flags.Calo.TopoCluster.extendTimeCut and flags.Calo.TopoCluster.doTimeCut
460 TopoClusterForTaus.UseTimeCutUpperLimit = flags.Calo.TopoCluster.useUpperLimitForTimeCut
461 TopoClusterForTaus.TimeCutUpperLimit = flags.Calo.TopoCluster.timeCutUpperLimit
462 TopoClusterForTaus.XTalkEM2 = flags.Calo.TopoCluster.xtalkEM2
463 TopoClusterForTaus.XTalkEM2D = flags.Calo.TopoCluster.xtalkEM2D
464 TopoClusterForTaus.XTalkEM2n = flags.Calo.TopoCluster.xtalkEM2n
465 TopoClusterForTaus.XTalkEM3 = flags.Calo.TopoCluster.xtalkEM3
466 TopoClusterForTaus.XTalkEMEta = flags.Calo.TopoCluster.xtalkEMEta
467 TopoClusterForTaus.XTalkDeltaT = flags.Calo.TopoCluster.xtalkDeltaT
468 TopoClusterForTaus.XTalk2Eratio1 = flags.Calo.TopoCluster.xtalk2Eratio1
469 TopoClusterForTaus.XTalk2Eratio2 = flags.Calo.TopoCluster.xtalk2Eratio2
470 TopoClusterForTaus.XTalk3Eratio = flags.Calo.TopoCluster.xtalk3Eratio
471 TopoClusterForTaus.XTalkEtaEratio = flags.Calo.TopoCluster.xtalkEtaEratio
472 TopoClusterForTaus.XTalk2DEratio = flags.Calo.TopoCluster.xtalk2DEratio
473
474 result.setPrivateTools(TopoClusterForTaus)
475 return result
476
topological cluster maker.

◆ TauCaloTopoClusterSplitterCfg()

TauCaloTopoClusterSplitterCfg ( flags)

Definition at line 477 of file TauToolHolder.py.

477def TauCaloTopoClusterSplitterCfg(flags):
478
479 result = ComponentAccumulator()
480 _name = flags.Tau.ActiveConfig.prefix + 'Pi0TopoClusterSplitter'
481
482 CaloTopoClusterSplitter = CompFactory.getComp("CaloTopoClusterSplitter")
483 TopoSplitterForTaus = CaloTopoClusterSplitter(_name)
484
485 # cells from the following samplings will be able to form local
486 # maxima. The excluded samplings are PreSamplerB, EMB1,
487 # PreSamplerE, EME1, all Tile samplings, all HEC samplings and the
488 # two rear FCal samplings.
489 TopoSplitterForTaus.SamplingNames = ["EMB2","EME2"] # Do we want to use EMB3 and EME3?
490 # cells from the following samplings will also be able to form
491 # local maxima but only if they are not overlapping in eta and phi
492 # with local maxima in previous samplings from the primary list.
493 TopoSplitterForTaus.SecondarySamplingNames = ["EMB1","EME1"]
494 TopoSplitterForTaus.ShareBorderCells = True
495 TopoSplitterForTaus.RestrictHECIWandFCalNeighbors = False
496 TopoSplitterForTaus.WeightingOfNegClusters = flags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
497
498 result.setPrivateTools(TopoSplitterForTaus)
499 return result
500
topological cluster splitter.

◆ TauCellFinalizerCfg()

TauCellFinalizerCfg ( flags)

Cell finalizer tool for BuildAlg.

Definition at line 287 of file TauToolHolder.py.

287def TauCellFinalizerCfg(flags):
288 result = ComponentAccumulator()
289 _name = flags.Tau.ActiveConfig.prefix + 'tauPi0CellContainerFinalizer'
290
291 CaloCellContainerFinalizerTool = CompFactory.getComp("CaloCellContainerFinalizerTool")
292 TauCellContainerFinalizer = CaloCellContainerFinalizerTool(name=_name)
293
294 result.setPrivateTools(TauCellContainerFinalizer)
295 return result
296

◆ TauClusterFinderCfg()

TauClusterFinderCfg ( flags)

Associate the cluster in jet constituents to the tau candidate.

Definition at line 122 of file TauToolHolder.py.

122def TauClusterFinderCfg(flags):
123 result = ComponentAccumulator()
124 _name = flags.Tau.ActiveConfig.prefix + 'TauClusterFinder'
125
126
127 TauClusterFinder = CompFactory.getComp("TauClusterFinder")
128 TauClusterFinder = TauClusterFinder(
129 name = _name,
130 inEleRM = flags.Tau.ActiveConfig.inTauEleRM,
131 )
132
133
134 result.setPrivateTools(TauClusterFinder)
135 return result
136
Associate the clusters used in the seed jet to the tau candidate.

◆ TauCombinedTESCfg()

TauCombinedTESCfg ( flags,
** kwargs )

TauCombinedTES.

Definition at line 935 of file TauToolHolder.py.

935def TauCombinedTESCfg(flags, **kwargs):
936 result = ComponentAccumulator()
937 _name = flags.Tau.ActiveConfig.prefix + 'TauCombinedTES'
938 kwargs.setdefault("WeightFileName", flags.Tau.CombinedTESConfig)
939
940 TauCombinedTES = CompFactory.getComp("TauCombinedTES")
941 myTauCombinedTES = TauCombinedTES(name = _name, **kwargs)
942
943 result.setPrivateTools(myTauCombinedTES)
944 return result
945

◆ TauCommonCalcVarsCfg()

TauCommonCalcVarsCfg ( flags)

Tau Variables.

Definition at line 634 of file TauToolHolder.py.

634def TauCommonCalcVarsCfg(flags):
635 result = ComponentAccumulator()
636 _name = flags.Tau.ActiveConfig.prefix + 'TauCommonCalcVars'
637
638 TauCommonCalcVars = CompFactory.getComp("TauCommonCalcVars")
639 TauCommonCalcVars = TauCommonCalcVars(name = _name,
640 doRun4 = flags.GeoModel.Run > LHCPeriod.Run3)
641
642 result.setPrivateTools(TauCommonCalcVars)
643 return result
644
Calculate variables which rely on tracks and precalculated cell/cluster information.

◆ TauDecayModeNNClassifierCfg()

TauDecayModeNNClassifierCfg ( flags)

Definition at line 909 of file TauToolHolder.py.

909def TauDecayModeNNClassifierCfg(flags):
910 result = ComponentAccumulator()
911 _name = flags.Tau.ActiveConfig.prefix + 'TauDecayModeNNClassifier'
912
913 TauDecayModeNNClassifier = CompFactory.getComp("TauDecayModeNNClassifier")
914 myTauDecayModeNNClassifier = TauDecayModeNNClassifier(name=_name,
915 WeightFile=flags.Tau.DecayModeNNClassifierConfig)
916
917 result.setPrivateTools(myTauDecayModeNNClassifier)
918 return result
919
Tau decay mode classifier using a neural network.

◆ TauEleOverlapChecker()

Definition at line 962 of file TauToolHolder.py.

962def TauEleOverlapChecker(flags):
963 result = ComponentAccumulator()
964 _name = flags.Tau.ActiveConfig.prefix + 'TauEleOverlapChecker'
965 TauEleOverlapChecker = CompFactory.getComp("TauEleOverlapChecker")
966 myTauEleOverlapChecker = TauEleOverlapChecker(
967 name = _name,
968 Key_RemovedClustersContainer = flags.Tau.ActiveConfig.RemovedElectronClusters,
969 Key_RemovedTracksContainer = flags.Tau.ActiveConfig.RemovedElectronTracks,
970 CheckingCone = flags.Tau.ActiveConfig.EleRM_CheckingConeSize,
971 )
972 result.setPrivateTools(myTauEleOverlapChecker)
973 return result
Select only the tau within the removal direction.

◆ TauEleRNNEvaluatorCfg()

TauEleRNNEvaluatorCfg ( flags,
applyLooseTrackSel = False )

Definition at line 831 of file TauToolHolder.py.

831def TauEleRNNEvaluatorCfg(flags, applyLooseTrackSel=False):
832 result = ComponentAccumulator()
833 _name = flags.Tau.ActiveConfig.prefix + 'TauEleRNN'
834
835 TauJetRNNEvaluator = CompFactory.getComp("TauJetRNNEvaluator")
836 RNNConf = flags.Tau.TauEleRNNConfig
837 myTauEleRNNEvaluator = TauJetRNNEvaluator(name = _name,
838 useTRT = flags.Detector.EnableTRT,
839 NetworkFile1P = RNNConf[0],
840 NetworkFile3P = RNNConf[1],
841 OutputVarname = "RNNEleScore",
842 MaxTracks = 10,
843 MaxClusters = 6,
844 MaxClusterDR = 1.0,
845 ApplyLooseTrackSel = applyLooseTrackSel,
846 VertexCorrection = flags.Tau.doVertexCorrection,
847 InputLayerScalar = "scalar",
848 InputLayerTracks = "tracks",
849 InputLayerClusters = "clusters",
850 OutputLayer = "rnneveto_output",
851 OutputNode = "sig_prob")
852
853 result.setPrivateTools(myTauEleRNNEvaluator)
854 return result
855
Tool to calculate a tau identification score based on neural networks.

◆ TauGNNDisplacedEvaluatorCfg()

TauGNNDisplacedEvaluatorCfg ( flags,
tauContainerName = "" )

Definition at line 811 of file TauToolHolder.py.

811def TauGNNDisplacedEvaluatorCfg(flags, tauContainerName=""):
812 # Displaced TauGNNEvaluator tool setup
813 result = ComponentAccumulator()
814
815 TauGNNEvaluator = CompFactory.TauGNNEvaluator(
816 name = flags.Tau.ActiveConfig.prefix + 'TauDisplacedGNN',
817 NetworkFileInclusive = flags.Tau.TauDisplacedGNNConfig[0],
818 OutputVarname = "GNdTauScore",
819 OutputPTau = "GNdTauProbTau",
820 OutputPJet = "GNdTauProbJet",
821 MaxClusterDR = 15.0,
822 MinTauPt = flags.Tau.MinPtDAOD,
823 VertexCorrection = flags.Tau.doVertexCorrection,
824 NodeNameTau="GNdTauv3_pb",
825 NodeNameJet="GNdTauv3_pu",
826 TauContainerName = tauContainerName,
827 )
828 result.setPrivateTools(TauGNNEvaluator)
829 return result
830

◆ TauGNNEvaluatorCfg()

TauGNNEvaluatorCfg ( flags,
version = 0,
applyLooseTrackSel = False,
applyTightTrackSel = False,
tauContainerName = "" )

Definition at line 760 of file TauToolHolder.py.

760def TauGNNEvaluatorCfg(flags, version=0, applyLooseTrackSel=False, applyTightTrackSel=False, tauContainerName=""):
761 result = ComponentAccumulator()
762 _name = flags.Tau.ActiveConfig.prefix + 'TauGNN_v' + str(version)
763
764 TauGNNEvaluator = CompFactory.getComp("TauGNNEvaluator")
765 GNNConf = flags.Tau.TauGNNConfig[version]
766 myTauGNNEvaluator = TauGNNEvaluator(name = _name,
767 useTRT = flags.Detector.EnableTRT,
768 NetworkFileInclusive = GNNConf,
769 OutputVarname = flags.Tau.GNTauScoreName[version],
770 OutputPTau = "GNTauProbTau",
771 OutputPJet = "GNTauProbJet",
772 MaxTracks = flags.Tau.GNTauMaxTracks[version],
773 MaxClusters = flags.Tau.GNTauMaxClusters[version],
774 MaxClusterDR = 15.0,
775 MinTauPt = flags.Tau.MinPtDAOD,
776 ApplyLooseTrackSel = applyLooseTrackSel,
777 ApplyTightTrackSel = applyTightTrackSel,
778 VertexCorrection = flags.Tau.doVertexCorrection,
779 InputLayerScalar = 'tau_vars',
780 InputLayerTracks = 'track_vars',
781 InputLayerClusters = 'cluster_vars',
782 NodeNameTau=flags.Tau.GNTauNodeNameTau,
783 NodeNameJet=flags.Tau.GNTauNodeNameJet,
784 TauContainerName = tauContainerName,
785 )
786
787 result.setPrivateTools(myTauGNNEvaluator)
788 return result
789
Tool to calculate tau identification score from .onnx inputs.

◆ TauIDVarCalculatorCfg()

TauIDVarCalculatorCfg ( flags)

Definition at line 692 of file TauToolHolder.py.

692def TauIDVarCalculatorCfg(flags):
693 result = ComponentAccumulator()
694 _name = flags.Tau.ActiveConfig.prefix + 'TauIDVarCalculator'
695
696 TauIDVarCalculator = CompFactory.getComp("TauIDVarCalculator")
697 myTauIDVarCalculator = TauIDVarCalculator(name=_name,
698 VertexCorrection = flags.Tau.doVertexCorrection,
699 doRun4 = flags.GeoModel.Run > LHCPeriod.Run3)
700
701 result.setPrivateTools(myTauIDVarCalculator)
702 return result
703
This class implements a tool to calculate ID input variables and add them to the tau aux store.

◆ TauJetRNNEvaluatorCfg()

TauJetRNNEvaluatorCfg ( flags,
applyLooseTrackSel = False )

Definition at line 704 of file TauToolHolder.py.

704def TauJetRNNEvaluatorCfg(flags, applyLooseTrackSel=False):
705 result = ComponentAccumulator()
706 _name = flags.Tau.ActiveConfig.prefix + 'TauJetRNN'
707
708 TauJetRNNEvaluator = CompFactory.getComp("TauJetRNNEvaluator")
709 RNNConf = flags.Tau.TauJetRNNConfig
710 myTauJetRNNEvaluator = TauJetRNNEvaluator(name = _name,
711 NetworkFile0P = "",
712 NetworkFile1P = RNNConf[0],
713 NetworkFile2P = RNNConf[1],
714 NetworkFile3P = RNNConf[2],
715 OutputVarname = "RNNJetScore",
716 MaxTracks = 10,
717 MaxClusters = 6,
718 MaxClusterDR = 1.0,
719 ApplyLooseTrackSel = applyLooseTrackSel,
720 VertexCorrection = flags.Tau.doVertexCorrection,
721 InputLayerScalar = "scalar",
722 InputLayerTracks = "tracks",
723 InputLayerClusters = "clusters",
724 OutputLayer = "rnnid_output",
725 OutputNode = "sig_prob")
726
727 result.setPrivateTools(myTauJetRNNEvaluator)
728 return result
729

◆ TauShotFinderCfg()

TauShotFinderCfg ( flags)

Photon Shot Finder.

Definition at line 238 of file TauToolHolder.py.

238def TauShotFinderCfg(flags):
239 result = ComponentAccumulator()
240 _name = flags.Tau.ActiveConfig.prefix + 'TauShotFinder'
241
242 shotPtCut_1Photon = flags.Tau.shotPtCut_1Photon
243 shotPtCut_2Photons = flags.Tau.shotPtCut_2Photons
244
245
246 from CaloClusterCorrection.StandardCellWeightCalib import getCellWeightTool
247 CaloWeightTool = getCellWeightTool(flags=flags)
248
249
250 TauShotFinder = CompFactory.getComp("TauShotFinder")
251 TauShotFinder = TauShotFinder(
252 name = _name,
253 CaloWeightTool = result.popToolsAndMerge(CaloWeightTool),
254 NCellsInEta = 5,
255 MinPtCut = shotPtCut_1Photon,
256 AutoDoubleShotCut = shotPtCut_2Photons,
257 Key_RemovedClusterInputContainer = flags.Tau.ActiveConfig.RemovedElectronClusters,
258 RemoveElectronCells = flags.Tau.ActiveConfig.RemoveElectronCells,
259 inEleRM = flags.Tau.ActiveConfig.inTauEleRM,
260 )
261
262 result.setPrivateTools(TauShotFinder)
263 return result
264

◆ TauSubstructureCfg()

TauSubstructureCfg ( flags)

Tau Variables.

Definition at line 647 of file TauToolHolder.py.

647def TauSubstructureCfg(flags):
648 result = ComponentAccumulator()
649 _name = flags.Tau.ActiveConfig.prefix + 'TauSubstructure'
650
651 TauSubstructureVariables = CompFactory.getComp("TauSubstructureVariables")
652 TauSubstructureVariables = TauSubstructureVariables( name = _name,
653 doRun4 = flags.GeoModel.Run > LHCPeriod.Run3)
654
655 result.setPrivateTools(TauSubstructureVariables)
656 return result
657
Calculate variables from the tau substructure.

◆ TauTrackFinderCfg()

TauTrackFinderCfg ( flags)

Tau-Track Association.

Definition at line 81 of file TauToolHolder.py.

81def TauTrackFinderCfg(flags):
82 result = ComponentAccumulator()
83 _name = flags.Tau.ActiveConfig.prefix + 'TauTrackFinder'
84
85 # BeamSpot Conditions
86 from BeamSpotConditions.BeamSpotConditionsConfig import BeamSpotCondAlgCfg
87 result.merge(BeamSpotCondAlgCfg(flags))
88
89 from TrackToVertex.TrackToVertexConfig import TrackToVertexCfg
90 from TrackToCalo.TrackToCaloConfig import ParticleCaloExtensionToolCfg
91 from TrkConfig.TrkVertexFitterUtilsConfig import AtlasTrackToVertexIPEstimatorCfg
92 from InDetConfig.InDetTrackSelectorToolConfig import TauRecInDetTrackSelectorToolCfg
93
94 _LargeD0TrackInputContainer = (flags.Tau.ActiveConfig.LargeD0TrackCollection if flags.Tau.associateLRT else "")
95
96 # Manually setting for TauLRT reco
97 if flags.Tau.ActiveConfig.inTauLRT:
98 _LargeD0TrackInputContainer = flags.Tau.ActiveConfig.LargeD0TrackCollection
99
100 TauTrackFinder = CompFactory.getComp("TauTrackFinder")
101 TauTrackFinder = TauTrackFinder(name = _name,
102 MaxJetDrTau = 0.2,
103 MaxJetDrWide = 0.4,
104 TrackSelectorToolTau = result.popToolsAndMerge(TauRecInDetTrackSelectorToolCfg(flags)),
105 TrackToVertexTool = result.popToolsAndMerge(TrackToVertexCfg(flags)),
106 ParticleCaloExtensionTool = result.popToolsAndMerge(ParticleCaloExtensionToolCfg(flags)),
107 tauParticleCache = getParticleCache(flags), # only returns a string
108 removeDuplicateCoreTracks = flags.Tau.RemoveDupeCoreTracks,
109 useGhostTracks = flags.Tau.useGhostTracks,
110 ghostTrackDR = flags.Tau.ghostTrackDR,
111 Key_jetContainer = (flags.Tau.ActiveConfig.SeedJetCollection if flags.Tau.useGhostTracks else ""),
112 Key_trackPartInputContainer = flags.Tau.ActiveConfig.TrackCollection,
113 Key_LargeD0TrackInputContainer = _LargeD0TrackInputContainer,
114 TrackToVertexIPEstimator = result.popToolsAndMerge(AtlasTrackToVertexIPEstimatorCfg(flags)),
115 inEleRM = flags.Tau.ActiveConfig.inTauEleRM,
116 )
117 result.setPrivateTools(TauTrackFinder)
118 return result
119
Associate tracks to the tau candidate.

◆ TauTrackRNNCfg()

TauTrackRNNCfg ( flags)

Definition at line 150 of file TauToolHolder.py.

150def TauTrackRNNCfg(flags):
151 result = ComponentAccumulator()
152 _name = flags.Tau.ActiveConfig.prefix + 'TauTrackRNNClassifier'
153
154 TrackRNN = CompFactory.tauRecTools.TrackRNN
155 _RNN = TrackRNN(name = _name + "_TrackRNN",
156 InputWeightsPath = flags.Tau.tauRNNTrackClassConfig,
157 calibFolder = flags.Tau.tauRecToolsCVMFSPath )
158
159 result.setPrivateTools(_RNN)
160 return result
161

◆ TauTrackRNNClassifierCfg()

TauTrackRNNClassifierCfg ( flags)

Definition at line 163 of file TauToolHolder.py.

163def TauTrackRNNClassifierCfg(flags):
164 result = ComponentAccumulator()
165 _name = flags.Tau.ActiveConfig.prefix + 'TauTrackRNNClassifier'
166
167 # create tool alg
168 TauTrackRNNClassifier = CompFactory.tauRecTools.TauTrackRNNClassifier
169
170 import cppyy
171 cppyy.load_library('libxAODTau_cDict')
172
173 _classifyLRT = True
174 _classifyLRTWithDedicated = flags.Tau.classifyLRTWithDedicated
175 if flags.Tau.associateLRT and not flags.Tau.classifyLRT:
176 _classifyLRT = False
177
178 # Manually setting for TauLRT reco
179 if flags.Tau.ActiveConfig.inTauLRT:
180 _classifyLRT = True
181 _classifyLRTWithDedicated = True
182
183
184 myTauTrackClassifier = TauTrackRNNClassifier( name = _name,
185 Classifiers = [ result.popToolsAndMerge(TauTrackRNNCfg(flags)) ],
186 classifyLRT = _classifyLRT,
187 classifyLRTWithDedicated = _classifyLRTWithDedicated)
188
189 result.setPrivateTools(myTauTrackClassifier)
190 return result
191

◆ TauVertexedClusterDecoratorCfg()

TauVertexedClusterDecoratorCfg ( flags)

Definition at line 138 of file TauToolHolder.py.

138def TauVertexedClusterDecoratorCfg(flags):
139 result = ComponentAccumulator()
140 _name = flags.Tau.ActiveConfig.prefix + 'TauVertexedClusterDecorator'
141
142 TauVertexedClusterDecorator = CompFactory.getComp("TauVertexedClusterDecorator")
143 myTauVertexedClusterDecorator = TauVertexedClusterDecorator(name = _name,
144 SeedJet = flags.Tau.ActiveConfig.SeedJetCollection)
145
146 result.setPrivateTools(myTauVertexedClusterDecorator)
147 return result
148
Decorate CaloVertexedTopoCluster to the tau candidate.

◆ TauVertexFinderCfg()

TauVertexFinderCfg ( flags)

Definition at line 31 of file TauToolHolder.py.

31def TauVertexFinderCfg(flags):
32 result = ComponentAccumulator()
33 _name = flags.Tau.ActiveConfig.prefix + 'TauVertexFinder'
34
35 from InDetTrackSelectionTool.InDetTrackSelectionToolConfig import (
36 Tau_InDetTrackSelectionToolForTJVACfg)
37 from TrackVertexAssociationTool.TrackVertexAssociationToolConfig import TauTTVAToolCfg
38
39 # Algorithm that overwrites numTrack() and charge() of tauJets in container
40 # from tauRecTools.tauRecToolsConf import TauVertexFinder
41 TauVertexFinder = CompFactory.getComp("TauVertexFinder")
42 TauVertexFinder = TauVertexFinder(name = _name,
43 UseTJVA = flags.Tau.doTJVA,
44 AssociatedTracks="GhostTrack", # OK??
45 InDetTrackSelectionToolForTJVA = result.popToolsAndMerge(Tau_InDetTrackSelectionToolForTJVACfg(flags)),
46 Key_vertexInputContainer = flags.Tau.ActiveConfig.VertexCollection,
47 TVATool = result.popToolsAndMerge(TauTTVAToolCfg(flags)),
48 inEleRM = flags.Tau.ActiveConfig.inTauEleRM,
49 )
50
51 result.setPrivateTools(TauVertexFinder)
52 return result
53
Associate a vertex (origin) to the tau candidate.

◆ TauVertexVariablesCfg()

TauVertexVariablesCfg ( flags)

Tau Vertex Variables.

Definition at line 616 of file TauToolHolder.py.

616def TauVertexVariablesCfg(flags):
617 result = ComponentAccumulator()
618 _name = flags.Tau.ActiveConfig.prefix + 'TauVertexVariables'
619
620 from TrkConfig.TrkVertexFittersConfig import TauAdaptiveVertexFitterCfg
621 from TrkConfig.TrkVertexSeedFinderToolsConfig import (
622 CrossDistancesSeedFinderCfg)
623
624 TauVertexVariables = CompFactory.getComp("TauVertexVariables")
625 TauVertexVariables = TauVertexVariables( name = _name,
626 VertexFitter = result.popToolsAndMerge(TauAdaptiveVertexFitterCfg(flags)),
627 SeedFinder = result.popToolsAndMerge(CrossDistancesSeedFinderCfg(flags)) )
628
629 result.setPrivateTools(TauVertexVariables)
630 return result
631
Class for calculating vertex variables.

◆ TauWPDecoratorEleRNNCfg()

TauWPDecoratorEleRNNCfg ( flags)

Definition at line 856 of file TauToolHolder.py.

856def TauWPDecoratorEleRNNCfg(flags):
857
858 result = ComponentAccumulator()
859
860 WPConf = flags.Tau.TauEleRNNWPConfig
861
862 from AthenaConfiguration.Enums import ProductionStep
863 # set the instance to run at derivation level
864 if flags.Common.ProductionStep is ProductionStep.Derivation:
865 _name = flags.Tau.ActiveConfig.prefix + 'TauWPDecoratorEleRNNFix_v1'
866 NewScoreName = "RNNEleScoreSigTrans_v1"
867 CutEnumVals = []
868 SigEff1P = []
869 SigEff3P = []
870 DecorWPNames = [ "EleRNNLoose_v1", "EleRNNMedium_v1", "EleRNNTight_v1" ]
871 DecorWPCutEffs1P = [0.95, 0.90, 0.85]
872 DecorWPCutEffs3P = [0.98, 0.95, 0.90]
873 else:
874 #this is the instance running in reconstruction level
875 import PyUtils.RootUtils as ru
876 ROOT = ru.import_root()
877 import cppyy
878 cppyy.load_library('libxAODTau_cDict')
879
880 _name = flags.Tau.ActiveConfig.prefix + 'TauWPDecoratorEleRNN'
881 NewScoreName = "RNNEleScoreSigTrans"
882 SigEff1P = [0.95, 0.90, 0.85]
883 SigEff3P = [0.98, 0.95, 0.90]
884 CutEnumVals = [ ROOT.xAOD.TauJetParameters.IsTauFlag.EleRNNLoose,
885 ROOT.xAOD.TauJetParameters.IsTauFlag.EleRNNMedium,
886 ROOT.xAOD.TauJetParameters.IsTauFlag.EleRNNTight ]
887 DecorWPNames = []
888 DecorWPCutEffs1P = []
889 DecorWPCutEffs3P = []
890
891 TauWPDecorator = CompFactory.getComp("TauWPDecorator")
892 myTauEleWPDecorator = TauWPDecorator( name=_name,
893 flatteningFile1Prong = WPConf[0],
894 flatteningFile3Prong = WPConf[1],
895 CutEnumVals = CutEnumVals,
896 DecorWPNames = DecorWPNames,
897 SigEff1P = SigEff1P,
898 SigEff3P = SigEff3P,
899 DecorWPCutEffs1P = DecorWPCutEffs1P,
900 DecorWPCutEffs3P = DecorWPCutEffs3P,
901 UseAbsEta = True ,
902 ScoreName = "RNNEleScore",
903 NewScoreName = NewScoreName,
904 DefineWPs = True)
905
906 result.setPrivateTools(myTauEleWPDecorator)
907 return result
908
Implementation of tool to decorate flattened BDT score and working points.

◆ TauWPDecoratorGNNCfg()

TauWPDecoratorGNNCfg ( flags,
version,
tauContainerName = "" )

Definition at line 790 of file TauToolHolder.py.

790def TauWPDecoratorGNNCfg(flags, version, tauContainerName=""):
791 result = ComponentAccumulator()
792 _name = flags.Tau.ActiveConfig.prefix + 'TauWPDecoratorGNN_v' + str(version)
793
794 TauWPDecorator = CompFactory.getComp("TauWPDecorator")
795 WPConf = flags.Tau.TauGNNWP[version]
796 myTauWPDecorator = TauWPDecorator(name=_name,
797 flatteningFile1Prong = WPConf[0],
798 flatteningFile2Prong = WPConf[1],
799 flatteningFile3Prong = WPConf[2],
800 TauContainerName = tauContainerName,
801 DecorWPNames = flags.Tau.GNTauDecorWPNames[version],
802 DecorWPCutEffs1P = [0.95, 0.85, 0.75, 0.60],
803 DecorWPCutEffs2P = [0.95, 0.75, 0.60, 0.45],
804 DecorWPCutEffs3P = [0.95, 0.75, 0.60, 0.45],
805 ScoreName = flags.Tau.GNTauScoreName[version],
806 NewScoreName = flags.Tau.GNTauTransScoreName[version],
807 DefineWPs = True)
808 result.setPrivateTools(myTauWPDecorator)
809 return result
810

◆ TauWPDecoratorJetRNNCfg()

TauWPDecoratorJetRNNCfg ( flags)

Definition at line 730 of file TauToolHolder.py.

730def TauWPDecoratorJetRNNCfg(flags):
731 import PyUtils.RootUtils as ru
732 ROOT = ru.import_root()
733 import cppyy
734 cppyy.load_library('libxAODTau_cDict')
735
736 result = ComponentAccumulator()
737 _name = flags.Tau.ActiveConfig.prefix + 'TauWPDecoratorJetRNN'
738
739 TauWPDecorator = CompFactory.getComp("TauWPDecorator")
740 WPConf = flags.Tau.TauJetRNNWPConfig
741 myTauWPDecorator = TauWPDecorator( name=_name,
742 flatteningFile1Prong = WPConf[0],
743 flatteningFile2Prong = WPConf[1],
744 flatteningFile3Prong = WPConf[2],
745 CutEnumVals =
746 [ ROOT.xAOD.TauJetParameters.IsTauFlag.JetRNNSigVeryLoose,
747 ROOT.xAOD.TauJetParameters.IsTauFlag.JetRNNSigLoose,
748 ROOT.xAOD.TauJetParameters.IsTauFlag.JetRNNSigMedium,
749 ROOT.xAOD.TauJetParameters.IsTauFlag.JetRNNSigTight ],
750 SigEff1P = [0.95, 0.85, 0.75, 0.60],
751 SigEff2P = [0.95, 0.75, 0.60, 0.45],
752 SigEff3P = [0.95, 0.75, 0.60, 0.45],
753 ScoreName = "RNNJetScore",
754 NewScoreName = "RNNJetScoreSigTrans",
755 DefineWPs = True )
756
757 result.setPrivateTools(myTauWPDecorator)
758 return result
759