diff --git a/Trigger/TrigValidation/TrigAnalysisTest/share/ref_RDOtoRDOTrig_v1Dev_build.ref b/Trigger/TrigValidation/TrigAnalysisTest/share/ref_RDOtoRDOTrig_v1Dev_build.ref index 74d5ef40f1290a51fc99fc8f9649e697e8fd7cc0..8c12f7e02a8623bb919c5bf44fbe8521786c1dc6 100644 --- a/Trigger/TrigValidation/TrigAnalysisTest/share/ref_RDOtoRDOTrig_v1Dev_build.ref +++ b/Trigger/TrigValidation/TrigAnalysisTest/share/ref_RDOtoRDOTrig_v1Dev_build.ref @@ -12962,7 +12962,7 @@ HLT_j20_PhysicsTLA_L1jJ90_DETA20-jJ90J: 0: 140 1: 140 2: 15 -HLT_j20_calratio_roiftf_preselj20e24_L1J100: +HLT_j20_calratio_roiftf_preselj20emf24_L1J100: eventCount: 0 stepCounts: 0: 1 @@ -12970,10 +12970,58 @@ HLT_j20_calratio_roiftf_preselj20e24_L1J100: stepFeatures: 0: 1 1: 5 -HLT_j20_calratio_roiftf_preselj20e24_L1TAU40_EMPTY: +HLT_j20_calratio_roiftf_preselj20emf24_L1TAU100: eventCount: 0 -HLT_j20_calratio_roiftf_preselj20e24_L1TAU40_UNPAIRED_ISO: + stepCounts: + 0: 1 + 1: 1 + stepFeatures: + 0: 1 + 1: 5 +HLT_j20_calratio_roiftf_preselj20emf24_L1TAU40_EMPTY: + eventCount: 0 +HLT_j20_calratio_roiftf_preselj20emf24_L1TAU40_UNPAIRED_ISO: + eventCount: 0 +HLT_j20_calratio_roiftf_preselj20emf24_L1TAU60: + eventCount: 0 + stepCounts: + 0: 2 + 1: 2 + stepFeatures: + 0: 2 + 1: 12 +HLT_j20_calratio_roiftf_preselj20emf24_L1eTAU40HT: + eventCount: 0 + stepCounts: + 0: 4 + 1: 4 + stepFeatures: + 0: 4 + 1: 26 +HLT_j20_calratio_roiftf_preselj20emf24_L1eTAU60HL: eventCount: 0 + stepCounts: + 0: 4 + 1: 4 + stepFeatures: + 0: 4 + 1: 26 +HLT_j20_calratio_roiftf_preselj20emf24_L1eTAU60HM: + eventCount: 0 + stepCounts: + 0: 4 + 1: 4 + stepFeatures: + 0: 4 + 1: 26 +HLT_j20_calratio_roiftf_preselj20emf24_L1eTAU80HL: + eventCount: 0 + stepCounts: + 0: 2 + 1: 2 + stepFeatures: + 0: 2 + 1: 12 HLT_j20_pf_ftf_presel4j85_PhysicsTLA_L13J50: eventCount: 1 stepCounts: diff --git a/Trigger/TrigValidation/TrigP1Test/share/ref_v1Dev_decodeBS_build.ref b/Trigger/TrigValidation/TrigP1Test/share/ref_v1Dev_decodeBS_build.ref index de54b790f8a4f93d4f5b2752fac113a60406167b..7c7b46cd190650e227ec2a6db5aadb2ebe1e3353 100644 --- a/Trigger/TrigValidation/TrigP1Test/share/ref_v1Dev_decodeBS_build.ref +++ b/Trigger/TrigValidation/TrigP1Test/share/ref_v1Dev_decodeBS_build.ref @@ -5137,11 +5137,23 @@ HLT_j20_PhysicsTLA_L1jJ90_DETA20-jJ90J: 0: 13 1: 13 2: 3 -HLT_j20_calratio_roiftf_preselj20e24_L1J100: +HLT_j20_calratio_roiftf_preselj20emf24_L1J100: eventCount: 0 -HLT_j20_calratio_roiftf_preselj20e24_L1TAU40_EMPTY: +HLT_j20_calratio_roiftf_preselj20emf24_L1TAU100: eventCount: 0 -HLT_j20_calratio_roiftf_preselj20e24_L1TAU40_UNPAIRED_ISO: +HLT_j20_calratio_roiftf_preselj20emf24_L1TAU40_EMPTY: + eventCount: 0 +HLT_j20_calratio_roiftf_preselj20emf24_L1TAU40_UNPAIRED_ISO: + eventCount: 0 +HLT_j20_calratio_roiftf_preselj20emf24_L1TAU60: + eventCount: 0 +HLT_j20_calratio_roiftf_preselj20emf24_L1eTAU40HT: + eventCount: 0 +HLT_j20_calratio_roiftf_preselj20emf24_L1eTAU60HL: + eventCount: 0 +HLT_j20_calratio_roiftf_preselj20emf24_L1eTAU60HM: + eventCount: 0 +HLT_j20_calratio_roiftf_preselj20emf24_L1eTAU80HL: eventCount: 0 HLT_j20_pf_ftf_presel4j85_PhysicsTLA_L13J50: eventCount: 0 diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Jet/JetPresel.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Jet/JetPresel.py index e2b9bcbb79ee52fbe5f63be1964f1d4df139ff0a..4a4d701596948234bdde45e68cf1db0596366e23 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Jet/JetPresel.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Jet/JetPresel.py @@ -80,7 +80,7 @@ def _preselJetHypoToolFromDict(flags, mainChainDict, doBJetSel=False): preselCommonJetParts = dict(JetChainParts_Default) for ip,p in enumerate(presel_cut_str.split('XX')): - hascalSel= bool(re.match(r'.*e\w?\d+', p)) + hascalSel= bool(re.match(r'.*emf\w?\d+', p)) if not doBJetSel: # Removing b-jet parts if b-jet presel is not requested p = re.sub(r'b\w?\d+', '', p) hasBjetSel = bool(re.match(r'.*b\w?\d+', p)) @@ -92,7 +92,7 @@ def _preselJetHypoToolFromDict(flags, mainChainDict, doBJetSel=False): pattern_to_test = r'(?P<mult>\d?\d?)(?P<region>[jacf])' # jet multiplicity and region pattern_to_test += r'(?P<scenario>(HT)?)(?P<cut>\d+)' # scenario string # could be made more general pattern_to_test += r'b(?P<btagger>\D?)(?P<bwp>\d+)' if hasBjetSel else '' # b-tagging if needed - pattern_to_test += r'e(?P<emf>\D?)(?P<emfc>\d+)' if hascalSel else '' + pattern_to_test += r'emf(?P<emfc>\d+)' if hascalSel else '' if hasDIPZsel: pattern_to_test = r'(?P<scenario>Z)((?P<dipzwp>\d+))?(?P<prefilt>(MAXMULT\d+)?)' matched = re.match(pattern_to_test, p) assert matched is not None, "Impossible to extract preselection cut for \'{0}\' substring. Please investigate.".format(p) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Dev_pp_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Dev_pp_run3_v1.py index 62f25adbc8b8368c647b13855d5e8e02fece2f6d..955904d1115075fb2be9887f16b926376c4a4488 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Dev_pp_run3_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Dev_pp_run3_v1.py @@ -202,9 +202,15 @@ def getDevSignatures(): chains['Jet'] = [ # new calratio chain - ChainProp(name='HLT_j20_calratio_roiftf_preselj20e24_L1J100', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+DevGroup), - ChainProp(name='HLT_j20_calratio_roiftf_preselj20e24_L1TAU40_EMPTY', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+DevGroup), - ChainProp(name='HLT_j20_calratio_roiftf_preselj20e24_L1TAU40_UNPAIRED_ISO', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+DevGroup), + ChainProp(name='HLT_j20_calratio_roiftf_preselj20emf24_L1J100', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+DevGroup), + ChainProp(name='HLT_j20_calratio_roiftf_preselj20emf24_L1TAU40_EMPTY', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+DevGroup), + ChainProp(name='HLT_j20_calratio_roiftf_preselj20emf24_L1TAU40_UNPAIRED_ISO', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+DevGroup), + ChainProp(name='HLT_j20_calratio_roiftf_preselj20emf24_L1eTAU40HT', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+DevGroup), + ChainProp(name='HLT_j20_calratio_roiftf_preselj20emf24_L1eTAU60HM', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+DevGroup), + ChainProp(name='HLT_j20_calratio_roiftf_preselj20emf24_L1eTAU60HL', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+DevGroup), + ChainProp(name='HLT_j20_calratio_roiftf_preselj20emf24_L1eTAU80HL', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+DevGroup), + ChainProp(name='HLT_j20_calratio_roiftf_preselj20emf24_L1TAU100', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+DevGroup), + ChainProp(name='HLT_j20_calratio_roiftf_preselj20emf24_L1TAU60', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+DevGroup), # ATR-28412 test lower than VBF inclusive ChainProp(name='HLT_j70_j50a_j0_DJMASS900j50dphi200x400deta_L1MJJ-500-NFF', l1SeedThresholds=['FSNOSEED']*3,stream=['VBFDelayed'],groups=PrimaryLegGroup+MultiJetGroup+LegacyTopoGroup), # previously HLT_j70_j50_0eta490_invm1000j70_dphi20_deta40_L1MJJ-500-NFF diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/SignatureDicts.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/SignatureDicts.py index 09ac5f45c556b592b3a13902d7f9879789843da7..2695e12de5d0c724554bcff0b2705cd571b5b523 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/SignatureDicts.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/SignatureDicts.py @@ -146,7 +146,7 @@ JetChainParts = { 'trkpresel' : # Tracking preselection ['nopresel', # Single jet - 'preselj20e24', + 'preselj20emf24', 'preselj20', 'preselj50', 'preselj80', diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/ItemDef.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/ItemDef.py index d35851b65200d3df874b36190a9259f5fccd5274..bc4f8133d8956f7c68bbe7314395a834a77c18fe 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/ItemDef.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/ItemDef.py @@ -483,6 +483,10 @@ class ItemDef: MenuItem('L1_eTAU35' ).setLogic( d.eTAU35 & physcond).setTriggerType( TT.calo ) MenuItem('L1_cTAU35M' ).setLogic( d.cTAU35M & physcond).setTriggerType( TT.calo ) MenuItem('L1_eTAU40HM').setLogic( d.eTAU40HM & physcond).setTriggerType( TT.calo ) + MenuItem('L1_eTAU40HT').setLogic( d.eTAU40HT & physcond).setTriggerType( TT.calo ) + MenuItem('L1_eTAU60HM').setLogic( d.eTAU60HM & physcond).setTriggerType( TT.calo ) + MenuItem('L1_eTAU80HL').setLogic( d.eTAU80HL & physcond).setTriggerType( TT.calo ) + MenuItem('L1_eTAU60HL').setLogic( d.eTAU60HL & physcond).setTriggerType( TT.calo ) MenuItem('L1_eTAU60' ).setLogic( d.eTAU60 & physcond).setTriggerType( TT.calo ) MenuItem('L1_eTAU80' ).setLogic( d.eTAU80 & physcond).setTriggerType( TT.calo ) MenuItem('L1_eTAU140' ).setLogic( d.eTAU140 & physcond).setTriggerType( TT.calo ) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/ThresholdDef.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/ThresholdDef.py index 02645e7134cc579d30802ad6ce77b0b4cfbae880..0d383e1a041ee21db380558e74cb5f4bd888f2dc 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/ThresholdDef.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/ThresholdDef.py @@ -173,10 +173,16 @@ class ThresholdDef: eTAU_cuts = [20] for thrV in eTAU_cuts: eTauThreshold('eTAU%iM' % thrV, 'eTAU').setEt(get_threshold_cut('eTAU', thrV)).setIsolation( rCore = "Medium" ) + eTAU_cuts = [40] + for thrV in eTAU_cuts: + eTauThreshold('eTAU%iHT' % thrV, 'eTAU').setEt(get_threshold_cut('eTAU', thrV)).setIsolation( rHad = "Tight" ) + eTAU_cuts = [40,60] for thrV in eTAU_cuts: eTauThreshold('eTAU%iHM' % thrV, 'eTAU').setEt(get_threshold_cut('eTAU', thrV)).setIsolation( rHad = "Medium" ) - + eTAU_cuts = [60,80] + for thrV in eTAU_cuts: + eTauThreshold('eTAU%iHL' % thrV, 'eTAU').setEt(get_threshold_cut('eTAU', thrV)).setIsolation( rHad = "Loose" ) # eTAU SPARES for thrV in range(1,11): eTauThreshold('eTAUSPARE%i' % thrV, 'eTAU').setEt(thrVal_SPARE) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/TopoAlgoDefMultiplicity.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/TopoAlgoDefMultiplicity.py index 86c51feea1cfdcadee504c1a37d442f8dd2ffc76..2a7ce2ad429ff116c609eac8553a8e80ea04b181 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/TopoAlgoDefMultiplicity.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/TopoAlgoDefMultiplicity.py @@ -79,7 +79,7 @@ class TopoAlgoDefMultiplicity(object): 'eTAU20L', 'eTAU20M', 'eTAU30', 'eTAU35', 'eTAU40HM', 'eTAU60', 'eTAU80', 'eTAU140', #spares - 'eTAUSPARE2', 'eTAUSPARE3', 'eTAUSPARE4', 'eTAUSPARE5', 'eTAUSPARE6', 'eTAUSPARE7', + 'eTAU40HT', 'eTAU60HM','eTAU60HL', 'eTAU80HL', 'eTAUSPARE6', 'eTAUSPARE7', ] jtauThresholds_2bits = [ 'jTAU30', 'jTAU30M', @@ -130,6 +130,7 @@ class TopoAlgoDefMultiplicity(object): nbits = 2, classtype='cTauMultiplicity') tm.registerTopoAlgo(alg) + jJThresholds_3bits = [ 'jJ20', 'jJ30', 'jJ30p0ETA25', 'jJ40', 'jJ40p0ETA25', 'jJ50', 'jJ55', 'jJ55p0ETA23', 'jJ60', @@ -252,11 +253,11 @@ class TopoAlgoDefMultiplicity(object): multLimits( thrtype='eEM', conn='Topo1Opt0', nbit=2, startbit=24, endbit=43), multLimits( thrtype='eEMV', conn='Topo1Opt0', nbit=2, startbit=44, endbit=63), multLimits( thrtype='eTAU', conn='Topo1Opt1', nbit=3, startbit=0, endbit=8 ), - multLimits( thrtype='eTAU', conn='Topo1Opt1', nbit=2, startbit=12, endbit=39), - multLimits( thrtype='gLJ', conn='Topo1Opt1', nbit=2, startbit=44, endbit=59), - multLimits( thrtype='gJ', conn='Topo1Opt1', nbit=3, startbit=62, endbit=70), - multLimits( thrtype='gJ', conn='Topo1Opt1', nbit=2, startbit=74, endbit=79), - + multLimits( thrtype='eTAU', conn='Topo1Opt1', nbit=2, startbit=12, endbit=31), + multLimits( thrtype='gLJ', conn='Topo1Opt1', nbit=2, startbit=33, endbit=51), + multLimits( thrtype='gJ', conn='Topo1Opt1', nbit=3, startbit=54, endbit=62), + multLimits( thrtype='gJ', conn='Topo1Opt1', nbit=2, startbit=66, endbit=71), + multLimits( thrtype='eTAU', conn='Topo1Opt1', nbit=2, startbit=72, endbit=80), multLimits( thrtype='jJ', conn='Topo1Opt2', nbit=3, startbit=0, endbit=32), multLimits( thrtype='jJ', conn='Topo1Opt2', nbit=2, startbit=36, endbit=73), multLimits( thrtype='jLJ', conn='Topo1Opt2', nbit=2, startbit=78, endbit=93), diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/TypeWideThresholdConfig.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/TypeWideThresholdConfig.py index 1d20b63fc5a746886c7784b7a43e1d1eec628075..cd1bdcaf6a3977e97f25e82da85c6acd815f638a 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/TypeWideThresholdConfig.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/TypeWideThresholdConfig.py @@ -341,9 +341,9 @@ class L1Config_eTAU(): rCore_fw_loose = 2 # rCore = 1 - (3x2)/(9x2), rCore > threshold -> pass rCore_fw_medium = 12 # PLACEHOLDER rCore_fw_tight = 32 - rHad_fw_loose = 10 # PLACEHOLDER + rHad_fw_loose = 32 # PLACEHOLDER rHad_fw_medium = 72 # Only for HM, does not affect L/M/T which cut only on rCore - rHad_fw_tight = 72 + rHad_fw_tight = 152 def __call__(self) -> odict: diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_run3_v1.py index 5560e4e678fda70c6a3c69a2a6abe4a8ab4816f3..86fb49ba8f255b829fb872929bb6cf070b032a64 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_run3_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_run3_v1.py @@ -20,7 +20,11 @@ def defineMenu(): 'L1_MU14FCH_J40', # ATR-24037 'L1_jXEPerf100', - + # ATR-22696 + 'L1_eTAU40HT', + 'L1_eTAU60HM', + 'L1_eTAU60HL', + 'L1_eTAU80HL', # ATR-27782 - test eEM M/DR Topo 'L1_2DR15-M70-2eEM9L', 'L1_2DR15-M70-2eEM12L', diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_run3_v1_inputs.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_run3_v1_inputs.py index 565b907f60245e4590e56958c2685e75f3981d36..8942ab4d99b760e5825f574be3496596e0ce768c 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_run3_v1_inputs.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_run3_v1_inputs.py @@ -20,7 +20,22 @@ def defineInputsMenu(): conn["thresholds"] += [ ('jXEPerf100',1), ] - + if conn["name"] == "Topo1Opt1": + conn["thresholds"] += [ + ('eTAU40HT',2), + ] + if conn["name"] == "Topo1Opt1": + conn["thresholds"] += [ + ('eTAU60HM',2), + ] + if conn["name"] == "Topo1Opt1": + conn["thresholds"] += [ + ('eTAU60HL',2), + ] + if conn["name"] == "Topo1Opt1": + conn["thresholds"] += [ + ('eTAU80HL',2), + ] # Add more decision algorithms if conn["name"] == "Topo2El": for group in conn["algorithmGroups"]: diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_pp_run3_v1_inputs.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_pp_run3_v1_inputs.py index 5c0551ff3f7fe01986629f352fde0318f8490a89..2aca7fe48a6bb2b1e9a2b3ee8de05a3e256cbe28 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_pp_run3_v1_inputs.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_pp_run3_v1_inputs.py @@ -123,7 +123,7 @@ def defineInputsMenu(): 'eTAU40HM', # eTAU thresholds for production - 'eTAUSPARE2', 'eTAUSPARE3', 'eTAUSPARE4', 'eTAUSPARE5', 'eTAUSPARE6', 'eTAUSPARE7', + 'eTAUSPARE6', 'eTAUSPARE7', None, None,