629 def makeAlgs (self, config) :
630
631 if config.dataType() is not DataType.Data:
632 log = logging.getLogger('TauTriggerAnalysisSF')
633
634
635 if config.campaign() is Campaign.MC23e:
636 log.warning("Tau trigger scale factors are not available yet for MC23e")
637 return
638
639 if config.campaign() is Campaign.MC23g:
640 log.warning("Tau trigger scale factors are not available yet for MC23g")
641 return
642
643 triggers = trigger_set(config, self.triggerChainsPerYear,
644 self.includeAllYearsPerRun)
645 for chain in triggers:
646 chain_noHLT = chain.replace("HLT_", "")
647 chain_out = chain_noHLT if self.removeHLTPrefix else chain
648 alg = config.createAlgorithm( 'CP::TauEfficiencyCorrectionsAlg',
649 'TauTrigEfficiencyCorrectionsAlg_' + chain )
650 config.addPrivateTool( 'efficiencyCorrectionsTool',
651 'TauAnalysisTools::TauEfficiencyCorrectionsTool' )
652
653
654 alg.efficiencyCorrectionsTool.EfficiencyCorrectionTypes = [12]
655 if config.geometry() is LHCPeriod.Run2:
656 alg.efficiencyCorrectionsTool.Campaign = "mc20"
657 else:
658 alg.efficiencyCorrectionsTool.Campaign = config.campaign().value
659 alg.efficiencyCorrectionsTool.TriggerName = chain
660
661
662
663 if self.tauID=="Loose":
664 JetIDLevel = 7
665 elif self.tauID=="Medium":
666 JetIDLevel = 8
667 elif self.tauID=="Tight":
668 JetIDLevel = 9
669 else:
670 raise ValueError ("invalid tauID: \"" + self.tauID + "\". Allowed values are loose, medium, tight")
671 alg.efficiencyCorrectionsTool.JetIDLevel = JetIDLevel
672 alg.efficiencyCorrectionsTool.TriggerSFMeasurement = "combined"
673 alg.efficiencyCorrectionsTool.useFastSim = config.dataType() is DataType.FastSim
674
675 alg.scaleFactorDecoration = f"tau_{self.prefixSF}_{chain_out}_%SYS%"
676 alg.outOfValidity = 2
677 alg.outOfValidityDeco = f"bad_eff_tautrig_{chain_out}"
678 alg.taus = config.readName (self.containerName)
679 alg.preselection = config.getPreselection (self.containerName, self.tauID)
680 config.addOutputVar (self.containerName, alg.scaleFactorDecoration, f"{self.prefixSF}_{chain_out}")
681
682@groupBlocks