37 triggers = trigger_set(config, self.triggerChainsPerYear,
38 self.includeAllYearsPerRun)
39 decisionTool = TriggerAnalysisBlock.makeTriggerDecisionTool(config)
41 for chain
in triggers:
42 chain_noHLT = chain.replace(
"HLT_",
"")
43 chain_out = chain_noHLT
if self.removeHLTPrefix
else chain
44 chain_out = chain_out.replace(
"-",
"_").
replace(
".",
"p")
46 alg = config.createAlgorithm(
'CP::JetTriggerDecoratorAlg',
47 'JetTriggerDecoratorAlg_' + chain )
54 alg.triggerBugList = [
55 "HLT_j80c_020jvt_j55c_020jvt_j28c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bdl1d77_pf_ftf_presel2c20XX2c20b85_L1J45p0ETA21_3J15p0ETA25",
56 "HLT_j75c_020jvt_j50c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn177_pf_ftf_presel2c20XX2c20b85_L1J45p0ETA21_3J15p0ETA25"
59 alg.TrigDecisionTool = f
"{decisionTool.getType()}/{decisionTool.getName()}"
69 alg.useEmulationTool =
True
70 config.addPrivateTool(
'trigEmulationTool',
71 'Trig::TrigBtagEmulationTool' )
73 from TrigBtagEmulationTool.TrigBtagEmulationToolConfig
import (
74 TrigBtagEmulation_kwargs)
75 tool_kwargs = TrigBtagEmulation_kwargs(config.flags, [chain])
76 for prop, value
in tool_kwargs.items():
77 setattr(alg.trigEmulationTool, prop, value)
79 alg.trigEmulationTool.TrigDecisionTool = (
80 f
"{decisionTool.getType()}/{decisionTool.getName()}")
82 config.addPrivateTool(
'trigEmulationTool.JM_a4tcemsubjes_CNT',
83 'Trig::JetManagerTool' )
84 a4tcemsubjesJet = (
'HLT_xAOD__JetContainer_a4tcemsubjesFS'
85 if config.campaign()
is Campaign.MC20a
or config.dataYear()==2016
86 else 'HLT_xAOD__JetContainer_a4tcemsubjesISFS')
87 alg.trigEmulationTool.JM_a4tcemsubjes_CNT.JetContainerName = a4tcemsubjesJet
89 config.addPrivateTool(
'trigEmulationTool.JM_Split_CNT',
90 'Trig::JetManagerTool' )
91 alg.trigEmulationTool.JM_Split_CNT.JetContainerName =
'HLT_xAOD__JetContainer_SplitJet'
93 if not(config.campaign()
is Campaign.MC20a
or config.dataYear()==2016):
94 config.addPrivateTool(
'trigEmulationTool.JM_GSC_CNT',
95 'Trig::JetManagerTool' )
96 alg.trigEmulationTool.JM_GSC_CNT.JetContainerName =
'HLT_xAOD__JetContainer_GSCJet'
99 alg.L1Et =
"match_" + chain_out +
"_L1et_%SYS%"
100 alg.L1Eta =
"match_" + chain_out +
"_L1eta_%SYS%"
101 alg.L1Phi =
"match_" + chain_out +
"_L1phi_%SYS%"
102 alg.L1DR =
"match_" + chain_out +
"_L1dr_%SYS%"
103 alg.L1Threshold =
"match_" + chain_out +
"_L1thresholds_%SYS%"
104 for var
in [
"L1et",
"L1eta",
"L1phi",
"L1dr",
"L1thresholds"]:
106 "match_" + chain_out +
"_" + var +
"_%SYS%",
107 "match_" + chain_out +
"_" + var, noSys=
True)
110 alg.HLTPt =
"match_" + chain_out +
"_HLTpt_%SYS%"
111 alg.HLTEta =
"match_" + chain_out +
"_HLTeta_%SYS%"
112 alg.HLTPhi =
"match_" + chain_out +
"_HLTphi_%SYS%"
113 alg.HLTDR =
"match_" + chain_out +
"_HLTdr_%SYS%"
114 alg.HLTThreshold =
"match_" + chain_out +
"_HLTthresholds_%SYS%"
115 for var
in [
"HLTpt",
"HLTeta",
"HLTphi",
"HLTdr",
"HLTthresholds"]:
117 "match_" + chain_out +
"_" + var +
"_%SYS%",
118 "match_" + chain_out +
"_" + var, noSys=
True)