diff --git a/Control/AthenaMonitoring/python/AthenaMonitoringCfg.py b/Control/AthenaMonitoring/python/AthenaMonitoringCfg.py index 3706e49c96d9a55006bfc4d06edbd08274348032..a2d03306548ad1238b92165d57027583a7cd8011 100644 --- a/Control/AthenaMonitoring/python/AthenaMonitoringCfg.py +++ b/Control/AthenaMonitoring/python/AthenaMonitoringCfg.py @@ -122,6 +122,11 @@ def AthenaMonitoringCfg(flags): from Run3AFPMonitoring.Run3AFPExampleMonitorAlgorithm import Run3AFPExampleMonitoringConfig result.merge(Run3AFPExampleMonitoringConfig(flags)) + if flags.DQ.Steering.doZDCMon and not flags.Input.isMC and flags.GeoModel.Run > LHCPeriod.Run2: + info('Set up ZDC monitoring') + from ZdcMonitoring.ZdcMonitorAlgorithm import ZdcMonitoringConfig + result.merge(ZdcMonitoringConfig(flags)) + #According to ATR-25910, LV1CaloMon should not be run on run 1 data if flags.DQ.Steering.doLVL1CaloMon and flags.GeoModel.Run > LHCPeriod.Run1: info('Set up LVL1Calo monitoring') diff --git a/Control/AthenaMonitoring/python/DQConfigFlags.py b/Control/AthenaMonitoring/python/DQConfigFlags.py index 41a64e17cfa150402a986a3e36dd16e5ee559ede..7cc47179ea9ce2c31dad0f68337aa6dc9a0bf9cb 100644 --- a/Control/AthenaMonitoring/python/DQConfigFlags.py +++ b/Control/AthenaMonitoring/python/DQConfigFlags.py @@ -9,7 +9,7 @@ _steeringFlags = [ 'doGlobalMon', 'doLVL1CaloMon', 'doLVL1InterfacesMon', 'doCTP 'doPixelMon', 'doSCTMon', 'doTRTMon', 'doInDetMon', 'doLArMon', 'doTileMon', 'doCaloGlobalMon', 'doMuonMon', - 'doLucidMon', 'doAFPMon', + 'doLucidMon', 'doAFPMon', 'doZDCMon', 'doHIMon', 'doEgammaMon', 'doJetMon', 'doMissingEtMon', 'doJetInputsMon', 'doTauMon', 'doJetTagMon', 'doDataFlowMon' ] diff --git a/DataQuality/DataQualityConfigurations/config/L1Calo/collisions_run.config b/DataQuality/DataQualityConfigurations/config/L1Calo/collisions_run.config index 6eca9af96e8a8d9380efd41fe71a65a7840aa45b..3c53215e0bff503b12e32497be156baae19b325e 100644 --- a/DataQuality/DataQualityConfigurations/config/L1Calo/collisions_run.config +++ b/DataQuality/DataQualityConfigurations/config/L1Calo/collisions_run.config @@ -4,16 +4,10 @@ output top_level { output L1Calo { - output Legacy { - output .GlobalSummary { - output HAD { - } - output EM { - } - } - } output Expert { - output PPM { + output TREX { + output Overview { + } output SpareChannels { output ADC { } @@ -89,10 +83,22 @@ dir L1Calo { algorithm = L1Calo_GatherData reference = CentrallyManagedReferences_TriggerMain output = L1Calo + dir Overview { + hist l1calo_1d_NumberOfEvents { + output = L1Calo/Expert/TREX/Overview + } + dir Errors { + hist l1calo_2d_GlobalOverview { + output = L1Calo/Expert/TREX/Overview + display = SetPalette(1),SetGridx,SetGridy + algorithm = L1Calo_IsEmpty + } + } + } dir PPM { dir SpareChannels { dir ADC { - output = L1Calo/Expert/PPM/SpareChannels/ADC + output = L1Calo/Expert/TREX/SpareChannels/ADC hist ppmspare_1d_tt_adc_TriggeredSlice { display = LogY } @@ -101,7 +107,7 @@ dir L1Calo { } } dir Errors { - output = L1Calo/Expert/PPM/SpareChannels/Errors + output = L1Calo/Expert/TREX/SpareChannels/Errors hist ppmspare_1d_ErrorSummary { display = SetGridx,SetGridy } @@ -116,7 +122,7 @@ dir L1Calo { display = SetGridx,SetGridy } dir Detail { - output = L1Calo/Expert/PPM/SpareChannels/Errors/Detail + output = L1Calo/Expert/TREX/SpareChannels/Errors/Detail hist ppmspare_2d_Channel0DisabledChannel1DisabledCrate23 { display = SetGridx,SetGridy } @@ -157,7 +163,7 @@ dir L1Calo { } } dir Errors { - output = L1Calo/Expert/PPM/Errors + output = L1Calo/Expert/TREX/Errors hist ppm_1d_ErrorSummary { algorithm = L1Calo_IsEmpty } @@ -185,7 +191,7 @@ dir L1Calo { } dir Data_Simulation { dir MismatchEventNumbers { - output = L1Calo/Expert/PPM/Errors/Data_Simulation/MismatchEventNumbers + output = L1Calo/Expert/TREX/Errors/Data_Simulation/MismatchEventNumbers hist ppm_2d_LUT_MismatchEvents_cr0cr1 { } hist ppm_2d_LUT_MismatchEvents_cr2cr3 { @@ -196,7 +202,7 @@ dir L1Calo { } } dir PPMLUTSim { - output = L1Calo/Expert/PPM/Errors/Data_Simulation/PPMLUTSim + output = L1Calo/Expert/TREX/Errors/Data_Simulation/PPMLUTSim hist ppm_em_2d_etaPhi_tt_lutCp_DataNoSim { } hist ppm_em_2d_etaPhi_tt_lutCp_SimEqData { @@ -231,7 +237,7 @@ dir L1Calo { } } dir PPMBcidSim { - output = L1Calo/Expert/PPM/Errors/Data_Simulation/PPMBcidSim + output = L1Calo/Expert/TREX/Errors/Data_Simulation/PPMBcidSim hist ppm_2d_etaPhi_tt_satBcid_DataNoSim { } hist ppm_2d_etaPhi_tt_satBcid_NonZeroMatches { @@ -243,7 +249,7 @@ dir L1Calo { } } dir Detail { - output = L1Calo/Expert/PPM/Errors/Detail + output = L1Calo/Expert/TREX/Errors/Detail hist ppm_2d_Channel0DisabledChannel1DisabledCrate01 { } hist ppm_2d_Channel0DisabledChannel1DisabledCrate23 { @@ -296,7 +302,7 @@ dir L1Calo { } dir ADC { dir EtaPhiMaps { - output = L1Calo/Expert/PPM/ADC/EtaPhiMaps + output = L1Calo/Expert/TREX/ADC/EtaPhiMaps hist ppm_em_2d_etaPhi_tt_adc_HitMap { display = SetPalette(1),LogZ } @@ -311,15 +317,11 @@ dir L1Calo { } } dir Timeslices { - output = L1Calo/Expert/PPM/ADC/Timeslices + output = L1Calo/Expert/TREX/ADC/Timeslices hist ppm_2d_tt_adc_BcidBits { } hist ppm_em_1d_tt_adc_TriggeredSlice { } - hist ppm_em_1d_tt_adc_MaxTimeslice@gs { - output = L1Calo/Legacy/.GlobalSummary/EM - description = Original location L1Calo/Expert/PPM/ADC/Timeslices - } hist ppm_em_1d_tt_adc_MaxTimeslice { } hist ppm_em_2d_etaPhi_tt_adc_MaxTimeslice { @@ -327,10 +329,6 @@ dir L1Calo { } hist ppm_had_1d_tt_adc_TriggeredSlice { } - hist ppm_had_1d_tt_adc_MaxTimeslice@gs { - output = L1Calo/Legacy/.GlobalSummary/HAD - description = Original location L1Calo/Expert/PPM/ADC/Timeslices - } hist ppm_had_1d_tt_adc_MaxTimeslice { } hist ppm_had_2d_etaPhi_tt_adc_MaxTimeslice { @@ -372,7 +370,7 @@ dir L1Calo { } dir LUT-CP { dir EtaPhiMaps { - output = L1Calo/Expert/PPM/LUT-CP/EtaPhiMaps + output = L1Calo/Expert/TREX/LUT-CP/EtaPhiMaps hist ppm_em_2d_etaPhi_tt_lutcp_Threshold00 { display = SetPalette(1),LogZ } @@ -459,7 +457,7 @@ dir L1Calo { } } dir Distributions { - output = L1Calo/Expert/PPM/LUT-CP/Distributions + output = L1Calo/Expert/TREX/LUT-CP/Distributions hist ppm_em_1d_tt_lutcp_Et { display = LogX,LogY } @@ -480,7 +478,7 @@ dir L1Calo { } dir LUT-JEP { dir EtaPhiMaps { - output = L1Calo/Expert/PPM/LUT-JEP/EtaPhiMaps + output = L1Calo/Expert/TREX/LUT-JEP/EtaPhiMaps hist ppm_em_2d_etaPhi_tt_lutjep_Threshold00 { display = SetPalette(1),LogZ } @@ -567,7 +565,7 @@ dir L1Calo { } } dir Distributions { - output = L1Calo/Expert/PPM/LUT-JEP/Distributions + output = L1Calo/Expert/TREX/LUT-JEP/Distributions hist ppm_em_1d_tt_lutjep_Et { display = LogX,LogY } @@ -582,10 +580,6 @@ dir L1Calo { } hist ppm_had_1d_tt_lutjep_Phi { } - hist ppm_1d_tt_lutjep_LutPerBCN@gs { - output = L1Calo/Legacy/.GlobalSummary - description = Original location L1Calo/Expert/PPM/LUT-JEP/Distributions - } hist ppm_1d_tt_lutjep_LutPerBCN { } } @@ -593,502 +587,470 @@ dir L1Calo { dir Stability { dir FineTime { - hist ppm_em_1d_profile_adc_fineTime@gs { - output = L1Calo/Legacy/.GlobalSummary/EM - description = Original location L1Calo/Expert/PPM/Stability/FineTime - } hist ppm_em_1d_profile_adc_fineTime { - output = L1Calo/Expert/PPM/Stability/FineTime + output = L1Calo/Expert/TREX/Stability/FineTime } hist ppm_em_2d_profile_etaPhi_adc_fineTime { - output = L1Calo/Expert/PPM/Stability/FineTime - } - hist ppm_had_1d_profile_adc_fineTime@gs { - output = L1Calo/Legacy/.GlobalSummary/HAD - description = Original location L1Calo/Expert/PPM/Stability/FineTime + output = L1Calo/Expert/TREX/Stability/FineTime } hist ppm_had_1d_profile_adc_fineTime { - output = L1Calo/Expert/PPM/Stability/FineTime + output = L1Calo/Expert/TREX/Stability/FineTime } hist ppm_had_2d_profile_etaPhi_adc_fineTime { - output = L1Calo/Expert/PPM/Stability/FineTime + output = L1Calo/Expert/TREX/Stability/FineTime } hist ppm_em_1d_profile_adc_LArEMBA_fineTimeVsLumi { - output = L1Calo/Expert/PPM/Stability/FineTime/FineTime_Lumi + output = L1Calo/Expert/TREX/Stability/FineTime/FineTime_Lumi } hist ppm_em_1d_profile_adc_LArEMBC_fineTimeVsLumi { - output = L1Calo/Expert/PPM/Stability/FineTime/FineTime_Lumi + output = L1Calo/Expert/TREX/Stability/FineTime/FineTime_Lumi } hist ppm_em_1d_profile_adc_LArEMECA_fineTimeVsLumi { - output = L1Calo/Expert/PPM/Stability/FineTime/FineTime_Lumi + output = L1Calo/Expert/TREX/Stability/FineTime/FineTime_Lumi } hist ppm_em_1d_profile_adc_LArEMECC_fineTimeVsLumi { - output = L1Calo/Expert/PPM/Stability/FineTime/FineTime_Lumi + output = L1Calo/Expert/TREX/Stability/FineTime/FineTime_Lumi } hist ppm_em_1d_profile_adc_LArFCAL1A_fineTimeVsLumi { - output = L1Calo/Expert/PPM/Stability/FineTime/FineTime_Lumi + output = L1Calo/Expert/TREX/Stability/FineTime/FineTime_Lumi } hist ppm_em_1d_profile_adc_LArFCAL1C_fineTimeVsLumi { - output = L1Calo/Expert/PPM/Stability/FineTime/FineTime_Lumi + output = L1Calo/Expert/TREX/Stability/FineTime/FineTime_Lumi } hist ppm_em_1d_profile_adc_LArOverlapA_fineTimeVsLumi { - output = L1Calo/Expert/PPM/Stability/FineTime/FineTime_Lumi + output = L1Calo/Expert/TREX/Stability/FineTime/FineTime_Lumi } hist ppm_em_1d_profile_adc_LArOverlapC_fineTimeVsLumi { - output = L1Calo/Expert/PPM/Stability/FineTime/FineTime_Lumi + output = L1Calo/Expert/TREX/Stability/FineTime/FineTime_Lumi } hist ppm_had_1d_profile_adc_TileLBA_fineTimeVsLumi { - output = L1Calo/Expert/PPM/Stability/FineTime/FineTime_Lumi + output = L1Calo/Expert/TREX/Stability/FineTime/FineTime_Lumi } hist ppm_had_1d_profile_adc_TileLBC_fineTimeVsLumi { - output = L1Calo/Expert/PPM/Stability/FineTime/FineTime_Lumi + output = L1Calo/Expert/TREX/Stability/FineTime/FineTime_Lumi } hist ppm_had_1d_profile_adc_TileEBA_fineTimeVsLumi { - output = L1Calo/Expert/PPM/Stability/FineTime/FineTime_Lumi + output = L1Calo/Expert/TREX/Stability/FineTime/FineTime_Lumi } hist ppm_had_1d_profile_adc_TileEBC_fineTimeVsLumi { - output = L1Calo/Expert/PPM/Stability/FineTime/FineTime_Lumi + output = L1Calo/Expert/TREX/Stability/FineTime/FineTime_Lumi } hist ppm_had_1d_profile_adc_TileHECA_fineTimeVsLumi { - output = L1Calo/Expert/PPM/Stability/FineTime/FineTime_Lumi + output = L1Calo/Expert/TREX/Stability/FineTime/FineTime_Lumi } hist ppm_had_1d_profile_adc_TileHECC_fineTimeVsLumi { - output = L1Calo/Expert/PPM/Stability/FineTime/FineTime_Lumi + output = L1Calo/Expert/TREX/Stability/FineTime/FineTime_Lumi } hist ppm_had_1d_profile_adc_LArFCAL23A_fineTimeVsLumi { - output = L1Calo/Expert/PPM/Stability/FineTime/FineTime_Lumi + output = L1Calo/Expert/TREX/Stability/FineTime/FineTime_Lumi } hist ppm_had_1d_profile_adc_LArFCAL23C_fineTimeVsLumi { - output = L1Calo/Expert/PPM/Stability/FineTime/FineTime_Lumi + output = L1Calo/Expert/TREX/Stability/FineTime/FineTime_Lumi } } dir Pedestal { hist ppm_em_1d_profile_adc_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal - } - hist ppm_em_1d_profile_adc_pedestalVsLumi@gs { - output = L1Calo/Legacy/.GlobalSummary/EM - description = Original location L1Calo/Expert/PPM/Stability/Pedestal + output = L1Calo/Expert/TREX/Stability/Pedestal } hist ppm_em_1d_profile_adc_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal + output = L1Calo/Expert/TREX/Stability/Pedestal } hist ppm_em_pedestal_BCN_lumi { - output = L1Calo/Expert/PPM/Stability/Pedestal + output = L1Calo/Expert/TREX/Stability/Pedestal } hist ppm_em_2d_profile_etaPhi_adc_pedestal { - output = L1Calo/Expert/PPM/Stability/Pedestal + output = L1Calo/Expert/TREX/Stability/Pedestal } hist ppm_had_1d_profile_adc_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal - } - hist ppm_had_1d_profile_adc_pedestalVsLumi@gs { - output = L1Calo/Legacy/.GlobalSummary/HAD - description = Original location L1Calo/Expert/PPM/Stability/Pedestal + output = L1Calo/Expert/TREX/Stability/Pedestal } hist ppm_had_1d_profile_adc_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal + output = L1Calo/Expert/TREX/Stability/Pedestal } hist ppm_had_pedestal_BCN_lumi { - output = L1Calo/Expert/PPM/Stability/Pedestal + output = L1Calo/Expert/TREX/Stability/Pedestal } hist ppm_had_2d_profile_etaPhi_adc_pedestal { - output = L1Calo/Expert/PPM/Stability/Pedestal + output = L1Calo/Expert/TREX/Stability/Pedestal } hist ppm_em_1d_profile_adc_LArEMBA_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_BCN + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_BCN } hist ppm_em_1d_profile_adc_LArEMBC_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_BCN + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_BCN } hist ppm_em_1d_profile_adc_LArEMECA_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_BCN + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_BCN } hist ppm_em_1d_profile_adc_LArEMECC_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_BCN + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_BCN } hist ppm_em_1d_profile_adc_LArFCAL1A_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_BCN + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_BCN } hist ppm_em_1d_profile_adc_LArFCAL1C_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_BCN + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_BCN } hist ppm_em_1d_profile_adc_LArOverlapA_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_BCN + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_BCN } hist ppm_em_1d_profile_adc_LArOverlapC_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_BCN + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_BCN } hist ppm_had_1d_profile_adc_TileLBA_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_BCN + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_BCN } hist ppm_had_1d_profile_adc_TileLBC_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_BCN + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_BCN } hist ppm_had_1d_profile_adc_TileEBA_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_BCN + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_BCN } hist ppm_had_1d_profile_adc_TileEBC_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_BCN + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_BCN } hist ppm_had_1d_profile_adc_LArHECA_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_BCN + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_BCN } hist ppm_had_1d_profile_adc_LArHECC_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_BCN + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_BCN } hist ppm_had_1d_profile_adc_LArFCAL23A_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_BCN + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_BCN } hist ppm_had_1d_profile_adc_LArFCAL23C_pedestalVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_BCN + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_BCN } hist ppm_em_1d_profile_adc_LArEMBA_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Lumi + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Lumi } hist ppm_em_1d_profile_adc_LArEMBC_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Lumi + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Lumi } hist ppm_em_1d_profile_adc_LArEMECA_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Lumi + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Lumi } hist ppm_em_1d_profile_adc_LArEMECC_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Lumi + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Lumi } hist ppm_em_1d_profile_adc_LArFCAL1A_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Lumi + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Lumi } hist ppm_em_1d_profile_adc_LArFCAL1C_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Lumi + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Lumi } hist ppm_em_1d_profile_adc_LArOverlapA_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Lumi + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Lumi } hist ppm_em_1d_profile_adc_LArOverlapC_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Lumi + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Lumi } hist ppm_had_1d_profile_adc_TileLBA_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Lumi + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Lumi } hist ppm_had_1d_profile_adc_TileLBC_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Lumi + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Lumi } hist ppm_had_1d_profile_adc_TileEBA_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Lumi + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Lumi } hist ppm_had_1d_profile_adc_TileEBC_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Lumi + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Lumi } hist ppm_had_1d_profile_adc_LArHECA_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Lumi + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Lumi } hist ppm_had_1d_profile_adc_LArHECC_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Lumi + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Lumi } hist ppm_had_1d_profile_adc_LArFCAL23A_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Lumi + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Lumi } hist ppm_had_1d_profile_adc_LArFCAL23C_pedestalVsLumi { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Lumi + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Lumi } hist ppm_em_2d_profile_adc_LArEMBA_pedestalVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Summary + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Summary } hist ppm_em_2d_profile_adc_LArEMBA_pedestalVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Summary + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Summary } hist ppm_em_2d_profile_adc_LArEMBC_pedestalVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Summary + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Summary } hist ppm_em_2d_profile_adc_LArEMECA_pedestalVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Summary + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Summary } hist ppm_em_2d_profile_adc_LArEMECC_pedestalVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Summary + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Summary } hist ppm_em_2d_profile_adc_LArFCAL1A_pedestalVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Summary + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Summary } hist ppm_em_2d_profile_adc_LArFCAL1C_pedestalVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Summary + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Summary } hist ppm_em_2d_profile_adc_LArOverlapA_pedestalVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Summary + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Summary } hist ppm_em_2d_profile_adc_LArOverlapC_pedestalVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Summary + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Summary } hist ppm_had_2d_profile_adc_LArFCAL23A_pedestalVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Summary + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Summary } hist ppm_had_2d_profile_adc_LArFCAL23C_pedestalVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Summary + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Summary } hist ppm_had_2d_profile_adc_LArHECA_pedestalVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Summary + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Summary } hist ppm_had_2d_profile_adc_LArHECC_pedestalVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Summary + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Summary } hist ppm_had_2d_profile_adc_TileEBA_pedestalVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Summary + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Summary } hist ppm_had_2d_profile_adc_TileEBC_pedestalVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Summary + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Summary } hist ppm_had_2d_profile_adc_TileLBA_pedestalVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Summary + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Summary } hist ppm_had_2d_profile_adc_TileLBC_pedestalVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/Pedestal/Pedestal_Summary + output = L1Calo/Expert/TREX/Stability/Pedestal/Pedestal_Summary } } dir PedestalCorrection { hist ppm_em_1d_profile_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection - } - hist ppm_em_1d_profile_pedestalCorrectionVsLumi@gs { - output = L1Calo/Legacy/.GlobalSummary/EM - description = Original location L1Calo/Expert/PPM/Stability/PedestalCorrection + output = L1Calo/Expert/TREX/Stability/PedestalCorrection } hist ppm_em_1d_profile_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection + output = L1Calo/Expert/TREX/Stability/PedestalCorrection } hist ppm_em_pedestalCorrection_BCN_lumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection + output = L1Calo/Expert/TREX/Stability/PedestalCorrection } hist ppm_em_2d_profile_etaPhi_pedestalCorrection { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection + output = L1Calo/Expert/TREX/Stability/PedestalCorrection } hist ppm_had_1d_profile_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection - } - hist ppm_had_1d_profile_pedestalCorrectionVsLumi@gs { - output = L1Calo/Legacy/.GlobalSummary/HAD - description = Original location L1Calo/Expert/PPM/Stability/PedestalCorrection + output = L1Calo/Expert/TREX/Stability/PedestalCorrection } hist ppm_had_1d_profile_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection + output = L1Calo/Expert/TREX/Stability/PedestalCorrection } hist ppm_had_pedestalCorrection_BCN_lumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection + output = L1Calo/Expert/TREX/Stability/PedestalCorrection } hist ppm_had_2d_profile_etaPhi_pedestalCorrection { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection + output = L1Calo/Expert/TREX/Stability/PedestalCorrection } hist ppm_em_1d_profile_LArEMBA_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_BCN + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_BCN } hist ppm_em_1d_profile_LArEMBC_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_BCN + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_BCN } hist ppm_em_1d_profile_LArEMECA_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_BCN + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_BCN } hist ppm_em_1d_profile_LArEMECC_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_BCN + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_BCN } hist ppm_em_1d_profile_LArFCAL1A_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_BCN + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_BCN } hist ppm_em_1d_profile_LArFCAL1C_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_BCN + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_BCN } hist ppm_em_1d_profile_LArOverlapA_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_BCN + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_BCN } hist ppm_em_1d_profile_LArOverlapC_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_BCN + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_BCN } hist ppm_had_1d_profile_TileLBA_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_BCN + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_BCN } hist ppm_had_1d_profile_TileLBC_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_BCN + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_BCN } hist ppm_had_1d_profile_TileEBA_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_BCN + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_BCN } hist ppm_had_1d_profile_TileEBC_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_BCN + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_BCN } hist ppm_had_1d_profile_LArHECA_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_BCN + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_BCN } hist ppm_had_1d_profile_LArHECC_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_BCN + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_BCN } hist ppm_had_1d_profile_LArFCAL23A_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_BCN + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_BCN } hist ppm_had_1d_profile_LArFCAL23C_pedestalCorrectionVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_BCN + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_BCN } hist ppm_em_1d_profile_LArEMBA_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Lumi + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Lumi } hist ppm_em_1d_profile_LArEMBC_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Lumi + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Lumi } hist ppm_em_1d_profile_LArEMECA_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Lumi + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Lumi } hist ppm_em_1d_profile_LArEMECC_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Lumi + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Lumi } hist ppm_em_1d_profile_LArFCAL1A_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Lumi + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Lumi } hist ppm_em_1d_profile_LArFCAL1C_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Lumi + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Lumi } hist ppm_em_1d_profile_LArOverlapA_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Lumi + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Lumi } hist ppm_em_1d_profile_LArOverlapC_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Lumi + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Lumi } hist ppm_had_1d_profile_TileLBA_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Lumi + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Lumi } hist ppm_had_1d_profile_TileLBC_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Lumi + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Lumi } hist ppm_had_1d_profile_TileEBA_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Lumi + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Lumi } hist ppm_had_1d_profile_TileEBC_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Lumi + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Lumi } hist ppm_had_1d_profile_LArHECA_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Lumi + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Lumi } hist ppm_had_1d_profile_LArHECC_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Lumi + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Lumi } hist ppm_had_1d_profile_LArFCAL23A_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Lumi + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Lumi } hist ppm_had_1d_profile_LArFCAL23C_pedestalCorrectionVsLumi { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Lumi + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Lumi } hist ppm_em_2d_profile_LArEMBA_pedestalCorrectionVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Summary + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Summary } hist ppm_em_2d_profile_LArEMBC_pedestalCorrectionVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Summary + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Summary } hist ppm_em_2d_profile_LArEMECA_pedestalCorrectionVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Summary + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Summary } hist ppm_em_2d_profile_LArEMECC_pedestalCorrectionVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Summary + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Summary } hist ppm_em_2d_profile_LArFCAL1A_pedestalCorrectionVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Summary + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Summary } hist ppm_em_2d_profile_LArFCAL1C_pedestalCorrectionVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Summary + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Summary } hist ppm_em_2d_profile_LArOverlapA_pedestalCorrectionVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Summary + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Summary } hist ppm_em_2d_profile_LArOverlapC_pedestalCorrectionVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Summary + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Summary } hist ppm_had_2d_profile_LArFCAL23A_pedestalCorrectionVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Summary + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Summary } hist ppm_had_2d_profile_LArFCAL23C_pedestalCorrectionVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Summary + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Summary } hist ppm_had_2d_profile_LArHECA_pedestalCorrectionVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Summary + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Summary } hist ppm_had_2d_profile_LArHECC_pedestalCorrectionVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Summary + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Summary } hist ppm_had_2d_profile_TileEBA_pedestalCorrectionVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Summary + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Summary } hist ppm_had_2d_profile_TileEBC_pedestalCorrectionVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Summary + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Summary } hist ppm_had_2d_profile_TileLBA_pedestalCorrectionVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Summary + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Summary } hist ppm_had_2d_profile_TileLBC_pedestalCorrectionVsLumiVsBCN { - output = L1Calo/Expert/PPM/Stability/PedestalCorrection/PedestalCorrection_Summary + output = L1Calo/Expert/TREX/Stability/PedestalCorrection/PedestalCorrection_Summary } } dir EtCorrelation { - hist ppm_em_1d_profile_adc_etCorrelation@gs { - output = L1Calo/Legacy/.GlobalSummary/EM - description = Original location L1Calo/Expert/PPM/Stability/EtCorrelation - } hist ppm_em_1d_profile_adc_etCorrelation { - output = L1Calo/Expert/PPM/Stability/EtCorrelation + output = L1Calo/Expert/TREX/Stability/EtCorrelation } hist ppm_em_2d_profile_etaPhi_adc_etCorrelation { - output = L1Calo/Expert/PPM/Stability/EtCorrelation - } - hist ppm_had_1d_profile_adc_etCorrelation@gs { - output = L1Calo/Legacy/.GlobalSummary/HAD - description = Original location L1Calo/Expert/PPM/Stability/EtCorrelation + output = L1Calo/Expert/TREX/Stability/EtCorrelation } hist ppm_had_1d_profile_adc_etCorrelation { - output = L1Calo/Expert/PPM/Stability/EtCorrelation + output = L1Calo/Expert/TREX/Stability/EtCorrelation } hist ppm_had_2d_profile_etaPhi_adc_etCorrelation { - output = L1Calo/Expert/PPM/Stability/EtCorrelation + output = L1Calo/Expert/TREX/Stability/EtCorrelation } hist ppm_em_1d_profile_adc_LArEMBA_etCorrelationVsLumi { - output = L1Calo/Expert/PPM/Stability/EtCorrelation/EtCorrelation_Lumi + output = L1Calo/Expert/TREX/Stability/EtCorrelation/EtCorrelation_Lumi } hist ppm_em_1d_profile_adc_LArEMBC_etCorrelationVsLumi { - output = L1Calo/Expert/PPM/Stability/EtCorrelation/EtCorrelation_Lumi + output = L1Calo/Expert/TREX/Stability/EtCorrelation/EtCorrelation_Lumi } hist ppm_em_1d_profile_adc_LArEMECA_etCorrelationVsLumi { - output = L1Calo/Expert/PPM/Stability/EtCorrelation/EtCorrelation_Lumi + output = L1Calo/Expert/TREX/Stability/EtCorrelation/EtCorrelation_Lumi } hist ppm_em_1d_profile_adc_LArEMECC_etCorrelationVsLumi { - output = L1Calo/Expert/PPM/Stability/EtCorrelation/EtCorrelation_Lumi + output = L1Calo/Expert/TREX/Stability/EtCorrelation/EtCorrelation_Lumi } hist ppm_em_1d_profile_adc_LArFCAL1A_etCorrelationVsLumi { - output = L1Calo/Expert/PPM/Stability/EtCorrelation/EtCorrelation_Lumi + output = L1Calo/Expert/TREX/Stability/EtCorrelation/EtCorrelation_Lumi } hist ppm_em_1d_profile_adc_LArFCAL1C_etCorrelationVsLumi { - output = L1Calo/Expert/PPM/Stability/EtCorrelation/EtCorrelation_Lumi + output = L1Calo/Expert/TREX/Stability/EtCorrelation/EtCorrelation_Lumi } hist ppm_em_1d_profile_adc_LArOverlapA_etCorrelationVsLumi { - output = L1Calo/Expert/PPM/Stability/EtCorrelation/EtCorrelation_Lumi + output = L1Calo/Expert/TREX/Stability/EtCorrelation/EtCorrelation_Lumi } hist ppm_em_1d_profile_adc_LArOverlapC_etCorrelationVsLumi { - output = L1Calo/Expert/PPM/Stability/EtCorrelation/EtCorrelation_Lumi + output = L1Calo/Expert/TREX/Stability/EtCorrelation/EtCorrelation_Lumi } hist ppm_had_1d_profile_adc_TileLBA_etCorrelationVsLumi { - output = L1Calo/Expert/PPM/Stability/EtCorrelation/EtCorrelation_Lumi + output = L1Calo/Expert/TREX/Stability/EtCorrelation/EtCorrelation_Lumi } hist ppm_had_1d_profile_adc_TileLBC_etCorrelationVsLumi { - output = L1Calo/Expert/PPM/Stability/EtCorrelation/EtCorrelation_Lumi + output = L1Calo/Expert/TREX/Stability/EtCorrelation/EtCorrelation_Lumi } hist ppm_had_1d_profile_adc_TileEBA_etCorrelationVsLumi { - output = L1Calo/Expert/PPM/Stability/EtCorrelation/EtCorrelation_Lumi + output = L1Calo/Expert/TREX/Stability/EtCorrelation/EtCorrelation_Lumi } hist ppm_had_1d_profile_adc_TileEBC_etCorrelationVsLumi { - output = L1Calo/Expert/PPM/Stability/EtCorrelation/EtCorrelation_Lumi + output = L1Calo/Expert/TREX/Stability/EtCorrelation/EtCorrelation_Lumi } hist ppm_had_1d_profile_adc_TileHECA_etCorrelationVsLumi { - output = L1Calo/Expert/PPM/Stability/EtCorrelation/EtCorrelation_Lumi + output = L1Calo/Expert/TREX/Stability/EtCorrelation/EtCorrelation_Lumi } hist ppm_had_1d_profile_adc_TileHECC_etCorrelationVsLumi { - output = L1Calo/Expert/PPM/Stability/EtCorrelation/EtCorrelation_Lumi + output = L1Calo/Expert/TREX/Stability/EtCorrelation/EtCorrelation_Lumi } hist ppm_had_1d_profile_adc_LArFCAL23A_etCorrelationVsLumi { - output = L1Calo/Expert/PPM/Stability/EtCorrelation/EtCorrelation_Lumi + output = L1Calo/Expert/TREX/Stability/EtCorrelation/EtCorrelation_Lumi } hist ppm_had_1d_profile_adc_LArFCAL23C_etCorrelationVsLumi { - output = L1Calo/Expert/PPM/Stability/EtCorrelation/EtCorrelation_Lumi + output = L1Calo/Expert/TREX/Stability/EtCorrelation/EtCorrelation_Lumi } } } diff --git a/DataQuality/DataQualityConfigurations/config/ZDC/collisions_run.config b/DataQuality/DataQualityConfigurations/config/ZDC/collisions_run.config index fcbde2ec1cc12683ef85508f7d1d9cdf9b637604..9c47c427bc1747101213268c8252cbb103a02988 100644 --- a/DataQuality/DataQualityConfigurations/config/ZDC/collisions_run.config +++ b/DataQuality/DataQualityConfigurations/config/ZDC/collisions_run.config @@ -54,405 +54,420 @@ output top_level { } dir ZDC { - dir ZDC { - dir ZdcModule { - dir ModuleAmp { - hist zdcModuleAmp_0_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_halfrange_0_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_HG_0_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_0_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_halfrange_0_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_HG_0_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_0_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_halfrange_0_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_HG_0_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_0_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_halfrange_0_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_HG_0_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_1_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_halfrange_1_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_HG_1_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_1_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_halfrange_1_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_HG_1_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_1_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_halfrange_1_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_HG_1_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_1_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_halfrange_1_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_HG_1_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - } - dir ModuleAmpLBdep { - hist zdcModuleAmp_vs_lb_0_0 { - algorithm = ZDC_Mod_Stable_LB - output = ZDC/Module/SideC/AmpLB - } - hist zdcModuleAmp_vs_lb_0_1 { - algorithm = ZDC_Mod_Stable_LB - output = ZDC/Module/SideC/AmpLB - } - hist zdcModuleAmp_vs_lb_0_2 { - algorithm = ZDC_Mod_Stable_LB - output = ZDC/Module/SideC/AmpLB - } - hist zdcModuleAmp_vs_lb_0_3 { - algorithm = ZDC_Mod_Stable_LB - output = ZDC/Module/SideC/AmpLB - } - hist zdcModuleAmp_vs_lb_1_0 { - algorithm = ZDC_Mod_Stable_LB - output = ZDC/Module/SideA/AmpLB - } - hist zdcModuleAmp_vs_lb_1_1 { - algorithm = ZDC_Mod_Stable_LB - output = ZDC/Module/SideA/AmpLB - } - hist zdcModuleAmp_vs_lb_1_2 { - algorithm = ZDC_Mod_Stable_LB - output = ZDC/Module/SideA/AmpLB - } - hist zdcModuleAmp_vs_lb_1_3 { - algorithm = ZDC_Mod_Stable_LB - output = ZDC/Module/SideA/AmpLB - } - } - dir ModuleCalibAmp { - hist zdcModuleCalibAmp_0_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleCalibAmp_halfrange_0_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleCalibAmp_0_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleCalibAmp_halfrange_0_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleCalibAmp_0_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleCalibAmp_halfrange_0_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleCalibAmp_0_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleCalibAmp_halfrange_0_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleCalibAmp_1_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleCalibAmp_halfrange_1_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleCalibAmp_1_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleCalibAmp_halfrange_1_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleCalibAmp_1_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleCalibAmp_halfrange_1_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleCalibAmp_1_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleCalibAmp_halfrange_1_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - } - dir ModuleFractionLBdep { - hist zdcModuleFract_above20N_vs_lb_0_0 { - algorithm = ZDC_Frac_Stable_LB - output = ZDC/Module/SideC/FractionLB - } - hist zdcModuleFract_above20N_vs_lb_0_1 { - algorithm = ZDC_Frac_Stable_LB - output = ZDC/Module/SideC/FractionLB - } - hist zdcModuleFract_above20N_vs_lb_0_2 { - algorithm = ZDC_Frac_Stable_LB - output = ZDC/Module/SideC/FractionLB - } - hist zdcModuleFract_above20N_vs_lb_0_3 { - algorithm = ZDC_Frac_Stable_LB - output = ZDC/Module/SideC/FractionLB - } - hist zdcModuleFract_above20N_vs_lb_1_0 { - algorithm = ZDC_Frac_Stable_LB - output = ZDC/Module/SideA/FractionLB - } - hist zdcModuleFract_above20N_vs_lb_1_1 { - algorithm = ZDC_Frac_Stable_LB - output = ZDC/Module/SideA/FractionLB - } - hist zdcModuleFract_above20N_vs_lb_1_2 { - algorithm = ZDC_Frac_Stable_LB - output = ZDC/Module/SideA/FractionLB - } - hist zdcModuleFract_above20N_vs_lb_1_3 { - algorithm = ZDC_Frac_Stable_LB - output = ZDC/Module/SideA/FractionLB - } - } - dir ModuleTimeLBdep { - hist zdcModuleTime_HG_vs_lb_0_0 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideC/TimeLB - } - hist zdcModuleTime_LG_vs_lb_0_0 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideC/TimeLB - } - hist zdcModuleTime_HG_vs_lb_0_1 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideC/TimeLB - } - hist zdcModuleTime_LG_vs_lb_0_1 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideC/TimeLB - } - hist zdcModuleTime_HG_vs_lb_0_2 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideC/TimeLB - } - hist zdcModuleTime_LG_vs_lb_0_2 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideC/TimeLB - } - hist zdcModuleTime_HG_vs_lb_0_3 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideC/TimeLB - } - hist zdcModuleTime_LG_vs_lb_0_3 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideC/TimeLB - } - hist zdcModuleTime_HG_vs_lb_1_0 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideA/TimeLB - } - hist zdcModuleTime_LG_vs_lb_1_0 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideA/TimeLB - } - hist zdcModuleTime_HG_vs_lb_1_1 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideA/TimeLB - } - hist zdcModuleTime_LG_vs_lb_1_1 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideA/TimeLB - } - hist zdcModuleTime_HG_vs_lb_1_2 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideA/TimeLB - } - hist zdcModuleTime_LG_vs_lb_1_2 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideA/TimeLB - } - hist zdcModuleTime_HG_vs_lb_1_3 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideA/TimeLB - } - hist zdcModuleTime_LG_vs_lb_1_3 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideA/TimeLB - } + dir EXPERT { + dir ZDC { + dir ZdcModule { + dir ModuleAmp { + hist zdcModuleAmp_C_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_halfrange_C_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_HG_C_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_halfrange_C_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_HG_C_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_halfrange_C_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_HG_C_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_halfrange_C_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_HG_C_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_halfrange_A_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_HG_A_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_halfrange_A_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_HG_A_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_halfrange_A_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_HG_A_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_halfrange_A_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_HG_A_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + } + dir ModuleAmpLBdep { + hist zdcModuleAmp_vs_lb_C_0 { + algorithm = ZDC_Mod_Stable_LB + output = ZDC/Module/SideC/AmpLB + } + hist zdcModuleAmp_vs_lb_C_1 { + algorithm = ZDC_Mod_Stable_LB + output = ZDC/Module/SideC/AmpLB + } + hist zdcModuleAmp_vs_lb_C_2 { + algorithm = ZDC_Mod_Stable_LB + output = ZDC/Module/SideC/AmpLB + } + hist zdcModuleAmp_vs_lb_C_3 { + algorithm = ZDC_Mod_Stable_LB + output = ZDC/Module/SideC/AmpLB + } + hist zdcModuleAmp_vs_lb_A_0 { + algorithm = ZDC_Mod_Stable_LB + output = ZDC/Module/SideA/AmpLB + } + hist zdcModuleAmp_vs_lb_A_1 { + algorithm = ZDC_Mod_Stable_LB + output = ZDC/Module/SideA/AmpLB + } + hist zdcModuleAmp_vs_lb_A_2 { + algorithm = ZDC_Mod_Stable_LB + output = ZDC/Module/SideA/AmpLB + } + hist zdcModuleAmp_vs_lb_A_3 { + algorithm = ZDC_Mod_Stable_LB + output = ZDC/Module/SideA/AmpLB + } + } + dir ModuleCalibAmp { + hist zdcModuleCalibAmp_C_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleCalibAmp_halfrange_C_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleCalibAmp_C_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleCalibAmp_halfrange_C_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleCalibAmp_C_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleCalibAmp_halfrange_C_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleCalibAmp_C_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleCalibAmp_halfrange_C_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleCalibAmp_A_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleCalibAmp_halfrange_A_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleCalibAmp_A_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleCalibAmp_halfrange_A_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleCalibAmp_A_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleCalibAmp_halfrange_A_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleCalibAmp_A_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleCalibAmp_halfrange_A_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + } + dir ModuleFractionLBdep { + hist zdcModuleFract_above20N_vs_lb_C_0 { + algorithm = ZDC_Frac_Stable_LB + output = ZDC/Module/SideC/FractionLB + } + hist zdcModuleFract_above20N_vs_lb_C_1 { + algorithm = ZDC_Frac_Stable_LB + output = ZDC/Module/SideC/FractionLB + } + hist zdcModuleFract_above20N_vs_lb_C_2 { + algorithm = ZDC_Frac_Stable_LB + output = ZDC/Module/SideC/FractionLB + } + hist zdcModuleFract_above20N_vs_lb_C_3 { + algorithm = ZDC_Frac_Stable_LB + output = ZDC/Module/SideC/FractionLB + } + hist zdcModuleFract_above20N_vs_lb_A_0 { + algorithm = ZDC_Frac_Stable_LB + output = ZDC/Module/SideA/FractionLB + } + hist zdcModuleFract_above20N_vs_lb_A_1 { + algorithm = ZDC_Frac_Stable_LB + output = ZDC/Module/SideA/FractionLB + } + hist zdcModuleFract_above20N_vs_lb_A_2 { + algorithm = ZDC_Frac_Stable_LB + output = ZDC/Module/SideA/FractionLB + } + hist zdcModuleFract_above20N_vs_lb_A_3 { + algorithm = ZDC_Frac_Stable_LB + output = ZDC/Module/SideA/FractionLB + } + } + dir ModuleTimeLBdep { + hist zdcModuleTime_HG_vs_lb_C_0 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideC/TimeLB + } + hist zdcModuleTime_LG_vs_lb_C_0 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideC/TimeLB + } + hist zdcModuleTime_HG_vs_lb_C_1 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideC/TimeLB + } + hist zdcModuleTime_LG_vs_lb_C_1 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideC/TimeLB + } + hist zdcModuleTime_HG_vs_lb_C_2 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideC/TimeLB + } + hist zdcModuleTime_LG_vs_lb_C_2 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideC/TimeLB + } + hist zdcModuleTime_HG_vs_lb_C_3 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideC/TimeLB + } + hist zdcModuleTime_LG_vs_lb_C_3 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideC/TimeLB + } + hist zdcModuleTime_HG_vs_lb_A_0 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideA/TimeLB + } + hist zdcModuleTime_LG_vs_lb_A_0 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideA/TimeLB + } + hist zdcModuleTime_HG_vs_lb_A_1 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideA/TimeLB + } + hist zdcModuleTime_LG_vs_lb_A_1 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideA/TimeLB + } + hist zdcModuleTime_HG_vs_lb_A_2 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideA/TimeLB + } + hist zdcModuleTime_LG_vs_lb_A_2 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideA/TimeLB + } + hist zdcModuleTime_HG_vs_lb_A_3 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideA/TimeLB + } + hist zdcModuleTime_LG_vs_lb_A_3 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideA/TimeLB + } + } + } - - } - dir PerArm { - dir Energy { - dir SideA { - hist zdcEnergySumA { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Arm/SideA - display = LogY - } - hist zdcEnergySumA_zoomin_noTrigSelec { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Arm/SideA + dir PerArm { + dir Energy { + hist zdcEnergySum_A { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Arm/SideA display = LogY - } - hist zdcEnergySumA_zoomin_wTrigSelec { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Arm/SideA - display = LogY - } - hist zdcEnergySumA_vs_lb_wTrig { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Arm/SideA + } + hist zdcEnergySum_vs_lb_wTrig_A { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Arm/SideA display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumA_vs_lb_noTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideA + } + hist zdcEnergySum_vs_lb_noTrig_A { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideA display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumA_vs_lb_wTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideA + } + hist zdcEnergySum_vs_lb_wTrig_A { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideA display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumA_vs_bcid_noTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideA + } + hist zdcEnergySum_vs_bcid_noTrig_A { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideA display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumA_vs_bcid_noTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideA + } + hist zdcEnergySum_vs_bcid_noTrig_A { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideA display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumA_vs_bcid_wTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideA + } + hist zdcEnergySum_vs_bcid_wTrig_A { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideA display = LogZ,AxisRange(1500,4000,"Y") - } - } - dir SideC { - hist zdcEnergySumC { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Arm/SideC - display = LogY - } - hist zdcEnergySumC_zoomin_noTrigSelec { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Arm/SideC + } + + hist zdcEnergySum_C { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Arm/SideC display = LogY - } - hist zdcEnergySumC_zoomin_wTrigSelec { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Arm/SideC - display = LogY - } - hist zdcEnergySumC_vs_lb_wTrig { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Arm/SideC + } + hist zdcEnergySum_vs_lb_wTrig_C { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Arm/SideC display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumC_vs_lb_noTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideC + } + hist zdcEnergySum_vs_lb_noTrig_C { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideC display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumC_vs_lb_wTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideC + } + hist zdcEnergySum_vs_lb_wTrig_C { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideC display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumC_vs_bcid_noTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideC + } + hist zdcEnergySum_vs_bcid_noTrig_C { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideC display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumC_vs_bcid_noTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideC + } + hist zdcEnergySum_vs_bcid_noTrig_C { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideC display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumC_vs_bcid_wTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideC + } + hist zdcEnergySum_vs_bcid_wTrig_C { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideC display = LogZ,AxisRange(1500,4000,"Y") - } - - } + } + } + } + } + } + + dir SHIFT { + dir ZDC { + dir ZdcModule { + dir ModuleAmp { + hist zdcModuleAmp_C_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_C_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_C_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_C_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_A_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_A_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_A_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_A_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + } + } + dir PerArm { + dir Energy { + hist zdcEnergySum_zoomin_noTrigSelec_A { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Arm/SideA + display = LogY + } + hist zdcEnergySum_zoomin_wTrigSelec_A { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Arm/SideA + display = LogY + } + hist zdcEnergySum_zoomin_noTrigSelec_C { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Arm/SideC + display = LogY + } + hist zdcEnergySumC_zoomin_wTrigSelec { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Arm/SideC + display = LogY + } + } } } } @@ -538,7 +553,7 @@ algorithm ZDC_Time_Stable_LB { NBinsYellowToYellowStatus = 5 MinStat = 500 ignoreval = 0 - thresholds = ZD_Time_Stable_LB_thresh + thresholds = ZDC_Time_Stable_LB_thresh } thresholds ZDC_Time_Stable_LB_thresh { diff --git a/DataQuality/DataQualityConfigurations/config/ZDC/heavyions_run.config b/DataQuality/DataQualityConfigurations/config/ZDC/heavyions_run.config index fcbde2ec1cc12683ef85508f7d1d9cdf9b637604..9c47c427bc1747101213268c8252cbb103a02988 100644 --- a/DataQuality/DataQualityConfigurations/config/ZDC/heavyions_run.config +++ b/DataQuality/DataQualityConfigurations/config/ZDC/heavyions_run.config @@ -54,405 +54,420 @@ output top_level { } dir ZDC { - dir ZDC { - dir ZdcModule { - dir ModuleAmp { - hist zdcModuleAmp_0_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_halfrange_0_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_HG_0_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_0_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_halfrange_0_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_HG_0_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_0_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_halfrange_0_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_HG_0_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_0_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_halfrange_0_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_HG_0_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleAmp_1_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_halfrange_1_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_HG_1_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_1_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_halfrange_1_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_HG_1_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_1_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_halfrange_1_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_HG_1_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_1_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_halfrange_1_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleAmp_HG_1_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - } - dir ModuleAmpLBdep { - hist zdcModuleAmp_vs_lb_0_0 { - algorithm = ZDC_Mod_Stable_LB - output = ZDC/Module/SideC/AmpLB - } - hist zdcModuleAmp_vs_lb_0_1 { - algorithm = ZDC_Mod_Stable_LB - output = ZDC/Module/SideC/AmpLB - } - hist zdcModuleAmp_vs_lb_0_2 { - algorithm = ZDC_Mod_Stable_LB - output = ZDC/Module/SideC/AmpLB - } - hist zdcModuleAmp_vs_lb_0_3 { - algorithm = ZDC_Mod_Stable_LB - output = ZDC/Module/SideC/AmpLB - } - hist zdcModuleAmp_vs_lb_1_0 { - algorithm = ZDC_Mod_Stable_LB - output = ZDC/Module/SideA/AmpLB - } - hist zdcModuleAmp_vs_lb_1_1 { - algorithm = ZDC_Mod_Stable_LB - output = ZDC/Module/SideA/AmpLB - } - hist zdcModuleAmp_vs_lb_1_2 { - algorithm = ZDC_Mod_Stable_LB - output = ZDC/Module/SideA/AmpLB - } - hist zdcModuleAmp_vs_lb_1_3 { - algorithm = ZDC_Mod_Stable_LB - output = ZDC/Module/SideA/AmpLB - } - } - dir ModuleCalibAmp { - hist zdcModuleCalibAmp_0_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleCalibAmp_halfrange_0_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleCalibAmp_0_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleCalibAmp_halfrange_0_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleCalibAmp_0_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleCalibAmp_halfrange_0_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleCalibAmp_0_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleCalibAmp_halfrange_0_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideC/Amp - } - hist zdcModuleCalibAmp_1_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleCalibAmp_halfrange_1_0 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleCalibAmp_1_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleCalibAmp_halfrange_1_1 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleCalibAmp_1_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleCalibAmp_halfrange_1_2 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleCalibAmp_1_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - hist zdcModuleCalibAmp_halfrange_1_3 { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Module/SideA/Amp - } - } - dir ModuleFractionLBdep { - hist zdcModuleFract_above20N_vs_lb_0_0 { - algorithm = ZDC_Frac_Stable_LB - output = ZDC/Module/SideC/FractionLB - } - hist zdcModuleFract_above20N_vs_lb_0_1 { - algorithm = ZDC_Frac_Stable_LB - output = ZDC/Module/SideC/FractionLB - } - hist zdcModuleFract_above20N_vs_lb_0_2 { - algorithm = ZDC_Frac_Stable_LB - output = ZDC/Module/SideC/FractionLB - } - hist zdcModuleFract_above20N_vs_lb_0_3 { - algorithm = ZDC_Frac_Stable_LB - output = ZDC/Module/SideC/FractionLB - } - hist zdcModuleFract_above20N_vs_lb_1_0 { - algorithm = ZDC_Frac_Stable_LB - output = ZDC/Module/SideA/FractionLB - } - hist zdcModuleFract_above20N_vs_lb_1_1 { - algorithm = ZDC_Frac_Stable_LB - output = ZDC/Module/SideA/FractionLB - } - hist zdcModuleFract_above20N_vs_lb_1_2 { - algorithm = ZDC_Frac_Stable_LB - output = ZDC/Module/SideA/FractionLB - } - hist zdcModuleFract_above20N_vs_lb_1_3 { - algorithm = ZDC_Frac_Stable_LB - output = ZDC/Module/SideA/FractionLB - } - } - dir ModuleTimeLBdep { - hist zdcModuleTime_HG_vs_lb_0_0 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideC/TimeLB - } - hist zdcModuleTime_LG_vs_lb_0_0 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideC/TimeLB - } - hist zdcModuleTime_HG_vs_lb_0_1 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideC/TimeLB - } - hist zdcModuleTime_LG_vs_lb_0_1 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideC/TimeLB - } - hist zdcModuleTime_HG_vs_lb_0_2 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideC/TimeLB - } - hist zdcModuleTime_LG_vs_lb_0_2 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideC/TimeLB - } - hist zdcModuleTime_HG_vs_lb_0_3 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideC/TimeLB - } - hist zdcModuleTime_LG_vs_lb_0_3 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideC/TimeLB - } - hist zdcModuleTime_HG_vs_lb_1_0 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideA/TimeLB - } - hist zdcModuleTime_LG_vs_lb_1_0 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideA/TimeLB - } - hist zdcModuleTime_HG_vs_lb_1_1 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideA/TimeLB - } - hist zdcModuleTime_LG_vs_lb_1_1 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideA/TimeLB - } - hist zdcModuleTime_HG_vs_lb_1_2 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideA/TimeLB - } - hist zdcModuleTime_LG_vs_lb_1_2 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideA/TimeLB - } - hist zdcModuleTime_HG_vs_lb_1_3 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideA/TimeLB - } - hist zdcModuleTime_LG_vs_lb_1_3 { - algorithm = ZDC_Time_Stable_LB - output = ZDC/Module/SideA/TimeLB - } + dir EXPERT { + dir ZDC { + dir ZdcModule { + dir ModuleAmp { + hist zdcModuleAmp_C_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_halfrange_C_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_HG_C_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_halfrange_C_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_HG_C_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_halfrange_C_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_HG_C_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_halfrange_C_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_HG_C_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_halfrange_A_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_HG_A_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_halfrange_A_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_HG_A_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_halfrange_A_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_HG_A_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_halfrange_A_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_HG_A_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + } + dir ModuleAmpLBdep { + hist zdcModuleAmp_vs_lb_C_0 { + algorithm = ZDC_Mod_Stable_LB + output = ZDC/Module/SideC/AmpLB + } + hist zdcModuleAmp_vs_lb_C_1 { + algorithm = ZDC_Mod_Stable_LB + output = ZDC/Module/SideC/AmpLB + } + hist zdcModuleAmp_vs_lb_C_2 { + algorithm = ZDC_Mod_Stable_LB + output = ZDC/Module/SideC/AmpLB + } + hist zdcModuleAmp_vs_lb_C_3 { + algorithm = ZDC_Mod_Stable_LB + output = ZDC/Module/SideC/AmpLB + } + hist zdcModuleAmp_vs_lb_A_0 { + algorithm = ZDC_Mod_Stable_LB + output = ZDC/Module/SideA/AmpLB + } + hist zdcModuleAmp_vs_lb_A_1 { + algorithm = ZDC_Mod_Stable_LB + output = ZDC/Module/SideA/AmpLB + } + hist zdcModuleAmp_vs_lb_A_2 { + algorithm = ZDC_Mod_Stable_LB + output = ZDC/Module/SideA/AmpLB + } + hist zdcModuleAmp_vs_lb_A_3 { + algorithm = ZDC_Mod_Stable_LB + output = ZDC/Module/SideA/AmpLB + } + } + dir ModuleCalibAmp { + hist zdcModuleCalibAmp_C_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleCalibAmp_halfrange_C_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleCalibAmp_C_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleCalibAmp_halfrange_C_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleCalibAmp_C_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleCalibAmp_halfrange_C_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleCalibAmp_C_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleCalibAmp_halfrange_C_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleCalibAmp_A_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleCalibAmp_halfrange_A_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleCalibAmp_A_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleCalibAmp_halfrange_A_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleCalibAmp_A_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleCalibAmp_halfrange_A_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleCalibAmp_A_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleCalibAmp_halfrange_A_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + } + dir ModuleFractionLBdep { + hist zdcModuleFract_above20N_vs_lb_C_0 { + algorithm = ZDC_Frac_Stable_LB + output = ZDC/Module/SideC/FractionLB + } + hist zdcModuleFract_above20N_vs_lb_C_1 { + algorithm = ZDC_Frac_Stable_LB + output = ZDC/Module/SideC/FractionLB + } + hist zdcModuleFract_above20N_vs_lb_C_2 { + algorithm = ZDC_Frac_Stable_LB + output = ZDC/Module/SideC/FractionLB + } + hist zdcModuleFract_above20N_vs_lb_C_3 { + algorithm = ZDC_Frac_Stable_LB + output = ZDC/Module/SideC/FractionLB + } + hist zdcModuleFract_above20N_vs_lb_A_0 { + algorithm = ZDC_Frac_Stable_LB + output = ZDC/Module/SideA/FractionLB + } + hist zdcModuleFract_above20N_vs_lb_A_1 { + algorithm = ZDC_Frac_Stable_LB + output = ZDC/Module/SideA/FractionLB + } + hist zdcModuleFract_above20N_vs_lb_A_2 { + algorithm = ZDC_Frac_Stable_LB + output = ZDC/Module/SideA/FractionLB + } + hist zdcModuleFract_above20N_vs_lb_A_3 { + algorithm = ZDC_Frac_Stable_LB + output = ZDC/Module/SideA/FractionLB + } + } + dir ModuleTimeLBdep { + hist zdcModuleTime_HG_vs_lb_C_0 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideC/TimeLB + } + hist zdcModuleTime_LG_vs_lb_C_0 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideC/TimeLB + } + hist zdcModuleTime_HG_vs_lb_C_1 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideC/TimeLB + } + hist zdcModuleTime_LG_vs_lb_C_1 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideC/TimeLB + } + hist zdcModuleTime_HG_vs_lb_C_2 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideC/TimeLB + } + hist zdcModuleTime_LG_vs_lb_C_2 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideC/TimeLB + } + hist zdcModuleTime_HG_vs_lb_C_3 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideC/TimeLB + } + hist zdcModuleTime_LG_vs_lb_C_3 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideC/TimeLB + } + hist zdcModuleTime_HG_vs_lb_A_0 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideA/TimeLB + } + hist zdcModuleTime_LG_vs_lb_A_0 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideA/TimeLB + } + hist zdcModuleTime_HG_vs_lb_A_1 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideA/TimeLB + } + hist zdcModuleTime_LG_vs_lb_A_1 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideA/TimeLB + } + hist zdcModuleTime_HG_vs_lb_A_2 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideA/TimeLB + } + hist zdcModuleTime_LG_vs_lb_A_2 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideA/TimeLB + } + hist zdcModuleTime_HG_vs_lb_A_3 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideA/TimeLB + } + hist zdcModuleTime_LG_vs_lb_A_3 { + algorithm = ZDC_Time_Stable_LB + output = ZDC/Module/SideA/TimeLB + } + } + } - - } - dir PerArm { - dir Energy { - dir SideA { - hist zdcEnergySumA { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Arm/SideA - display = LogY - } - hist zdcEnergySumA_zoomin_noTrigSelec { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Arm/SideA + dir PerArm { + dir Energy { + hist zdcEnergySum_A { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Arm/SideA display = LogY - } - hist zdcEnergySumA_zoomin_wTrigSelec { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Arm/SideA - display = LogY - } - hist zdcEnergySumA_vs_lb_wTrig { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Arm/SideA + } + hist zdcEnergySum_vs_lb_wTrig_A { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Arm/SideA display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumA_vs_lb_noTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideA + } + hist zdcEnergySum_vs_lb_noTrig_A { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideA display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumA_vs_lb_wTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideA + } + hist zdcEnergySum_vs_lb_wTrig_A { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideA display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumA_vs_bcid_noTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideA + } + hist zdcEnergySum_vs_bcid_noTrig_A { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideA display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumA_vs_bcid_noTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideA + } + hist zdcEnergySum_vs_bcid_noTrig_A { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideA display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumA_vs_bcid_wTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideA + } + hist zdcEnergySum_vs_bcid_wTrig_A { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideA display = LogZ,AxisRange(1500,4000,"Y") - } - } - dir SideC { - hist zdcEnergySumC { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Arm/SideC - display = LogY - } - hist zdcEnergySumC_zoomin_noTrigSelec { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Arm/SideC + } + + hist zdcEnergySum_C { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Arm/SideC display = LogY - } - hist zdcEnergySumC_zoomin_wTrigSelec { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Arm/SideC - display = LogY - } - hist zdcEnergySumC_vs_lb_wTrig { - algorithm = ZDC_Histogram_Has_NonZero_Entries - output = ZDC/Arm/SideC + } + hist zdcEnergySum_vs_lb_wTrig_C { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Arm/SideC display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumC_vs_lb_noTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideC + } + hist zdcEnergySum_vs_lb_noTrig_C { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideC display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumC_vs_lb_wTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideC + } + hist zdcEnergySum_vs_lb_wTrig_C { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideC display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumC_vs_bcid_noTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideC + } + hist zdcEnergySum_vs_bcid_noTrig_C { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideC display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumC_vs_bcid_noTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideC + } + hist zdcEnergySum_vs_bcid_noTrig_C { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideC display = LogZ,AxisRange(1500,4000,"Y") - } - hist zdcEnergySumC_vs_bcid_wTrig { - algorithm = ZDC_1n_Stable_LB - output = ZDC/Arm/SideC + } + hist zdcEnergySum_vs_bcid_wTrig_C { + algorithm = ZDC_1n_Stable_LB + output = ZDC/Arm/SideC display = LogZ,AxisRange(1500,4000,"Y") - } - - } + } + } + } + } + } + + dir SHIFT { + dir ZDC { + dir ZdcModule { + dir ModuleAmp { + hist zdcModuleAmp_C_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_C_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_C_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_C_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideC/Amp + } + hist zdcModuleAmp_A_0 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_A_1 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_A_2 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + hist zdcModuleAmp_A_3 { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Module/SideA/Amp + } + } + } + dir PerArm { + dir Energy { + hist zdcEnergySum_zoomin_noTrigSelec_A { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Arm/SideA + display = LogY + } + hist zdcEnergySum_zoomin_wTrigSelec_A { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Arm/SideA + display = LogY + } + hist zdcEnergySum_zoomin_noTrigSelec_C { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Arm/SideC + display = LogY + } + hist zdcEnergySumC_zoomin_wTrigSelec { + algorithm = ZDC_Histogram_Has_NonZero_Entries/displayRef + output = ZDC/Arm/SideC + display = LogY + } + } } } } @@ -538,7 +553,7 @@ algorithm ZDC_Time_Stable_LB { NBinsYellowToYellowStatus = 5 MinStat = 500 ignoreval = 0 - thresholds = ZD_Time_Stable_LB_thresh + thresholds = ZDC_Time_Stable_LB_thresh } thresholds ZDC_Time_Stable_LB_thresh { diff --git a/DataQuality/DataQualityConfigurations/config/common/heavyions_run.config b/DataQuality/DataQualityConfigurations/config/common/heavyions_run.config index 548fd1918091249c736b76622ddc9bc6f45f102f..4feeef93853c849b6d3236e86c0e00deb75bac8f 100644 --- a/DataQuality/DataQualityConfigurations/config/common/heavyions_run.config +++ b/DataQuality/DataQualityConfigurations/config/common/heavyions_run.config @@ -76,7 +76,7 @@ reference CentrallyManagedReferences_TriggerHardProbes { reference CentrallyManagedReferences_ZDCCalib { location = /eos/atlas/atlascerngroupdisk/det-zdc/references/,root://eosatlas.cern.ch//eos/atlas/atlascerngroupdisk/det-zdc/references/ - file = data23_hi.00462201.calibration_ZDCCalib.merge.HIST.c1535_m2220._0001.1 + file = data23_hi.00462201.calibration_ZDCCalib.merge.HIST.c1549_m2220._0001.1 path = run_462201 info = Run 462201, calibration_ZDCCalib #database = heavyions diff --git a/InnerDetector/InDetCalibAlgs/TRT_CalibAlgs/scripts/TRTCalib_bhadd.cxx b/InnerDetector/InDetCalibAlgs/TRT_CalibAlgs/scripts/TRTCalib_bhadd.cxx index 47a781f85dfa0feb3120703d630c7b6e57f961d4..9d714eb962a19d8fd1f21ef6a1967c2695ab4b48 100644 --- a/InnerDetector/InDetCalibAlgs/TRT_CalibAlgs/scripts/TRTCalib_bhadd.cxx +++ b/InnerDetector/InDetCalibAlgs/TRT_CalibAlgs/scripts/TRTCalib_bhadd.cxx @@ -266,7 +266,8 @@ map<string, calibpars> readoldpars() oldconstfile.close(); } else{ - std::cerr << "Unable to open precision t0 file!\n"; + // Output to std::cout since for online calibration this file is not used. + std::cout << "Unable to open precision t0 file!\n"; } diff --git a/Reconstruction/RecExample/RecExOnline/share/GlobalMonitoring_CA.py b/Reconstruction/RecExample/RecExOnline/share/GlobalMonitoring_CA.py index ac9ddd74eb5ddfe148aa27d2596194cbf68c72c7..2cd798142ea10e40665d64dc2ccb3235e72d7c6a 100644 --- a/Reconstruction/RecExample/RecExOnline/share/GlobalMonitoring_CA.py +++ b/Reconstruction/RecExample/RecExOnline/share/GlobalMonitoring_CA.py @@ -169,6 +169,8 @@ if __name__=='__main__': flags.DQ.Steering.doHLTMon = True ### AFPmon flags.DQ.Steering.doAFPMon = True + ### AFPmon + flags.DQ.Steering.doZDCMon = False ### LVL1Calo flags.DQ.Steering.doLVL1CaloMon = False flags.DQ.Steering.doLVL1InterfacesMon = False diff --git a/Trigger/TrigAnalysis/TrigInDetAnalysisUser/Analysis/src/rmain.cxx b/Trigger/TrigAnalysis/TrigInDetAnalysisUser/Analysis/src/rmain.cxx index 1e2f819da7ac9345d7d1472d0b40b2230a4898b3..6f7b178f87a6451a0c38d828d6fa5f6f26c0bdcf 100644 --- a/Trigger/TrigAnalysis/TrigInDetAnalysisUser/Analysis/src/rmain.cxx +++ b/Trigger/TrigAnalysis/TrigInDetAnalysisUser/Analysis/src/rmain.cxx @@ -2278,10 +2278,11 @@ int main(int argc, char** argv) // (which is ideally pT ordered e.g. 0, 1, 3) } + /// check configuration is provided ... + if ( cf ) { - /// remove any tracks below the pt threshold if one is specifed for the analysis + /// remove any tracks below the pt threshold if one is specifed for the analysis - if ( cf ) { std::string ptconfig = cf->config().postvalue("pt"); if ( ptconfig!="" ) { double pt = std::atof( ptconfig.c_str() ); @@ -2293,6 +2294,21 @@ int main(int argc, char** argv) refp_vec = reft; } } + + /// remove any tracks outside the d0 region if one is specifed for the analysis + + std::string d0config = cf->config().postvalue("d0"); + if ( d0config!="" ) { + double d0 = std::atof( d0config.c_str() ); + if ( d0>0 ) { + std::vector<TIDA::Track*> reft; reft.reserve(refp_vec.size()); + for ( std::vector<TIDA::Track*>::const_iterator itr=refp_vec.begin() ; itr!=refp_vec.end() ; ++itr ) { + if ( std::fabs((*itr)->a0())<=d0 ) reft.push_back( *itr ); + } + refp_vec = reft; + } + } + } /// if requesting an object match, remove any tracks which correspond to an object diff --git a/Trigger/TrigAnalysis/TrigInDetAnalysisUser/share/TIDAdata-chains-run3.dat b/Trigger/TrigAnalysis/TrigInDetAnalysisUser/share/TIDAdata-chains-run3.dat index 53a3af2e20214a092ab0a1f3a82de9ccaa0b9464..347f0420a74115bb4b4197886d019d3b87db002d 100644 --- a/Trigger/TrigAnalysis/TrigInDetAnalysisUser/share/TIDAdata-chains-run3.dat +++ b/Trigger/TrigAnalysis/TrigInDetAnalysisUser/share/TIDAdata-chains-run3.dat @@ -9,17 +9,17 @@ testChains = { "HLT_mu6_idperf_L1MU5VF:HLT_IDTrack_Muon_FTF:HLT_Roi_L2SAMuon", "HLT_mu6_idperf_L1MU5VF:HLT_IDTrack_Muon_IDTrig:HLT_Roi_L2SAMuon", - "HLT_mu6_ivarmedium_L1MU5VF:HLT_IDTrack_MuonIso_FTF:HLT_Roi_MuonIso", - "HLT_mu6_ivarmedium_L1MU5VF:HLT_IDTrack_MuonIso_IDTrig:HLT_Roi_MuonIso", + "HLT_mu6_ivarmedium_L1MU5VF:HLT_IDTrack_MuonIso_FTF:HLT_Roi_MuonIso:post:d0=4", + "HLT_mu6_ivarmedium_L1MU5VF:HLT_IDTrack_MuonIso_IDTrig:HLT_Roi_MuonIso:post:d0=4", "HLT_mu24_idperf_L1MU14FCH:HLT_IDTrack_Muon_FTF:HLT_Roi_L2SAMuon", "HLT_mu24_idperf_L1MU14FCH:HLT_IDTrack_Muon_IDTrig:HLT_Roi_L2SAMuon", - "HLT_mu26_ivarmedium_L1MU14FCH:HLT_IDTrack_MuonIso_FTF:HLT_Roi_MuonIso", - "HLT_mu26_ivarmedium_L1MU14FCH:HLT_IDTrack_MuonIso_IDTrig:HLT_Roi_MuonIso", - "HLT_mu28_ivarmedium_L1MU14FCH:HLT_IDTrack_MuonIso_FTF:HLT_Roi_MuonIso", - "HLT_mu28_ivarmedium_L1MU14FCH:HLT_IDTrack_MuonIso_IDTrig:HLT_Roi_MuonIso", - "HLT_mu26_ivarperf_L1MU14FCH:HLT_IDTrack_MuonIso_FTF:HLT_Roi_MuonIso", - "HLT_mu26_ivarperf_L1MU14FCH:HLT_IDTrack_MuonIso_IDTrig:HLT_Roi_MuonIso", + "HLT_mu26_ivarmedium_L1MU14FCH:HLT_IDTrack_MuonIso_FTF:HLT_Roi_MuonIso:post:d0=4", + "HLT_mu26_ivarmedium_L1MU14FCH:HLT_IDTrack_MuonIso_IDTrig:HLT_Roi_MuonIso:post:d0=4", + "HLT_mu28_ivarmedium_L1MU14FCH:HLT_IDTrack_MuonIso_FTF:HLT_Roi_MuonIso:post:d0=4", + "HLT_mu28_ivarmedium_L1MU14FCH:HLT_IDTrack_MuonIso_IDTrig:HLT_Roi_MuonIso:post:d0=4", + "HLT_mu26_ivarperf_L1MU14FCH:HLT_IDTrack_MuonIso_FTF:HLT_Roi_MuonIso:post:d0=4", + "HLT_mu26_ivarperf_L1MU14FCH:HLT_IDTrack_MuonIso_IDTrig:HLT_Roi_MuonIso:post:d0=4", "HLT_mu6_idperf_L1MU5VF:HLT_IDTrack_Muon_IDTrig:HLT_Roi_L2SAMuon", diff --git a/Trigger/TrigHypothesis/TrigTauHypo/python/TrigTauHypoTool.py b/Trigger/TrigHypothesis/TrigTauHypo/python/TrigTauHypoTool.py index ab4b7a050596a22e210eedb4c5d912f343d6a92d..f935216860d56eeb2aa8ac8c05e0d19e7ad75b57 100644 --- a/Trigger/TrigHypothesis/TrigTauHypo/python/TrigTauHypoTool.py +++ b/Trigger/TrigHypothesis/TrigTauHypo/python/TrigTauHypoTool.py @@ -131,7 +131,7 @@ def TrigEFTauMVHypoToolFromDict( flags, chainDict ): currentHypo.AcceptAll = True # 2023 DeepSet triggers - if chainPart['preselection'] == 'tracktwoMVA': + if chainPart['reconstruction'] == 'tracktwoMVA': currentHypo.HighPtSelectionLooseIDThr = 200e3 currentHypo.HighPtSelectionJetThr = 430e3 currentHypo.TrackPtCut = 1.5e3 diff --git a/Trigger/TrigSteer/DecisionHandling/src/TestRecoAlg.cxx b/Trigger/TrigSteer/DecisionHandling/src/TestRecoAlg.cxx index c615b570ef82b95f073f0023be607d1034c3877c..f77933c0b068de3c958f6ad66550eb7b8944be7a 100644 --- a/Trigger/TrigSteer/DecisionHandling/src/TestRecoAlg.cxx +++ b/Trigger/TrigSteer/DecisionHandling/src/TestRecoAlg.cxx @@ -100,27 +100,38 @@ namespace HLTTest { auto roiLink = featureInfo.link; CHECK( roiLink.isValid() ); if ( roiLink.isValid() ) { - auto roiPtr(roiLink.cptr()); - ATH_MSG_DEBUG("RoI" << **roiPtr ); - // create new outpu objects and add the properties - if (objects.size() > output->size()) { - auto object=objects[output->size()]; - auto xobj = new xAOD::TrigComposite; - output->push_back( xobj ); - // maintain link to previous collections - xobj->setObjectLink( "initialRoI", roiLink );// this is used by the HypoAlg - - ATH_MSG_DEBUG( "Reconstructed object" ); - for ( const auto& prop : object ) { - xobj->setDetail( prop.first, prop.second ); - ATH_MSG_DEBUG( " " << prop.first << " : " << prop.second ); - } - } - else { - ATH_MSG_DEBUG( "No reco object created for this RoI because it's not found in the event"); - } + auto roiPtr(roiLink.cptr()); + ATH_MSG_DEBUG("RoI" << **roiPtr ); + bool foundObject = false; + // create new outpu objects and add the properties + if (objects.size() > output->size()) { + // attaching the correct object form input data: + for (auto object: objects){ + auto eta = object[0].second; + auto phi = object[1].second; + // check eta and phi + if (std::abs( eta - (*roiPtr)->eta()) <0.01 && std::abs(phi - (*roiPtr)->phi())< 0.01){ + foundObject = true; + ATH_MSG_DEBUG( "Found object: " << object[0].first << " : " << object[0].second <<" , " << object[1].first << " : " << object[1].second ); + auto xobj = new xAOD::TrigComposite; + output->push_back( xobj ); + // maintain link to previous collections + xobj->setObjectLink( "initialRoI", roiLink );// this is used by the HypoAlg + for ( const auto& prop : object ) { + xobj->setDetail( prop.first, prop.second ); + ATH_MSG_DEBUG( " " << prop.first << " : " << prop.second ); + } + } + } + if (!foundObject) { + ATH_MSG_ERROR("No reco object found in eta and phi range: this might be an error"); + } + } + else { + ATH_MSG_DEBUG( "No reco object created for this RoI because it's not found in the event"); + } } else { - ATH_MSG_DEBUG("RoI information missing"); + ATH_MSG_DEBUG("RoI information missing"); } } diff --git a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/python/L1CaloFEXAlgosConfig.py b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/python/L1CaloFEXAlgosConfig.py index a853c9e53df1d5e19149a2f5d4fdb472d916c055..1f798d082edf9516ec5ee3eb5c6dd24644b67222 100644 --- a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/python/L1CaloFEXAlgosConfig.py +++ b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/python/L1CaloFEXAlgosConfig.py @@ -46,10 +46,7 @@ def eFexTOBDecoratorCfg(flags, name, eFexEMRoIContainer = "L1_eEMRoI", eFexTauRo decorator.RhadHadDecDecorKey = eFexEMRoIContainer+".RhadHadDec" decorator.WstotDenDecDecorKey = eFexEMRoIContainer+".WstotDenDec" decorator.WstotNumDecDecorKey = eFexEMRoIContainer+".WstotNumDec" - decorator.ClusterEtSumPSDecorKey = eFexEMRoIContainer+".ClusterEtSumPS" - decorator.ClusterEtSumL1DecorKey = eFexEMRoIContainer+".ClusterEtSumL1" - decorator.ClusterEtSumL2DecorKey = eFexEMRoIContainer+".ClusterEtSumL2" - decorator.ClusterEtSumL3DecorKey = eFexEMRoIContainer+".ClusterEtSumL3" + decorator.ClusterSCellEtSumsDecorKey = eFexEMRoIContainer+".ClusterSCellEtSums" if eFexEMRoIContainer != "L1_eTauRoI": decorator.RCoreDecorKey = eFexTauRoIContainer+".RCoreDec" diff --git a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/src/eFexTOBDecorator.cxx b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/src/eFexTOBDecorator.cxx index a0e5e1ae6963a58e20ce66ed2b6d34e474069bc8..828b6869d07535294a5765364833178b931dce8e 100644 --- a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/src/eFexTOBDecorator.cxx +++ b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/src/eFexTOBDecorator.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration */ //*************************************************************************** @@ -34,10 +34,7 @@ namespace LVL1 { ATH_CHECK( m_WstotDenDec.initialize() ); ATH_CHECK( m_WstotNumDec.initialize() ); - ATH_CHECK( m_ClusterEtSumPSDec.initialize() ); - ATH_CHECK( m_ClusterEtSumL1Dec.initialize() ); - ATH_CHECK( m_ClusterEtSumL2Dec.initialize() ); - ATH_CHECK( m_ClusterEtSumL3Dec.initialize() ); + ATH_CHECK( m_ClusterSCellEtSumsDec.initialize() ); ATH_CHECK( m_RCoreDec.initialize() ); ATH_CHECK( m_REnvDec.initialize() ); @@ -75,10 +72,7 @@ namespace LVL1 { SG::WriteDecorHandle<xAOD::eFexEMRoIContainer, unsigned int > WstotDenDec (m_WstotDenDec ); SG::WriteDecorHandle<xAOD::eFexEMRoIContainer, unsigned int > WstotNumDec (m_WstotNumDec ); - SG::WriteDecorHandle<xAOD::eFexEMRoIContainer, unsigned int > ClusterEtSumPSDec (m_ClusterEtSumPSDec ); - SG::WriteDecorHandle<xAOD::eFexEMRoIContainer, unsigned int > ClusterEtSumL1Dec (m_ClusterEtSumL1Dec ); - SG::WriteDecorHandle<xAOD::eFexEMRoIContainer, unsigned int > ClusterEtSumL2Dec (m_ClusterEtSumL2Dec ); - SG::WriteDecorHandle<xAOD::eFexEMRoIContainer, unsigned int > ClusterEtSumL3Dec (m_ClusterEtSumL3Dec ); + SG::WriteDecorHandle<xAOD::eFexEMRoIContainer, std::vector<unsigned int > > ClusterSCellEtSumsDec (m_ClusterSCellEtSumsDec ); //looping over EM TOB to decorate them for ( const xAOD::eFexEMRoI* emRoI : *emEDMConstPtr ){ @@ -101,26 +95,7 @@ namespace LVL1 { WstotDenDec (*emRoI) = WstotSums[0]; WstotNumDec (*emRoI) = WstotSums[1]; - // cluster et per layer summed from SCells - unsigned int ps(0); // 0-1 - pre-sampler - unsigned int l1(0); // 2-7 - layer 1 - unsigned int l2(0); // 8-13 - layer 2 - unsigned int l3(0); // 14-15 - layer 3 - for(std::size_t i = 0; i < ClusterCellETs.size(); ++i) { - if (i<2) - ps += ClusterCellETs[i]; - else if (i < 8 ) - l1 += ClusterCellETs[i]; - else if (i < 14 ) - l2 += ClusterCellETs[i]; - else - l3 += ClusterCellETs[i]; - } - - ClusterEtSumPSDec (*emRoI) = ps; - ClusterEtSumL1Dec (*emRoI) = l1; - ClusterEtSumL2Dec (*emRoI) = l2; - ClusterEtSumL3Dec (*emRoI) = l3; + ClusterSCellEtSumsDec (*emRoI) = ClusterCellETs; } //Setup Tau Decorator Handlers diff --git a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/src/eFexTOBDecorator.h b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/src/eFexTOBDecorator.h index 434a287e1fe7455ac7c093f6f1f2ee1f116aed91..2c2dc326bd765d558611bba740429d2f36dd517c 100644 --- a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/src/eFexTOBDecorator.h +++ b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/src/eFexTOBDecorator.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration */ //*************************************************************************** @@ -50,11 +50,7 @@ namespace LVL1 { SG::WriteDecorHandleKey<xAOD::eFexEMRoIContainer> m_WstotDenDec { this, "WstotDenDecDecorKey" , m_ReadKeyEM_name+".WstotDenDec" , "Recalculated EM WstotDen" }; SG::WriteDecorHandleKey<xAOD::eFexEMRoIContainer> m_WstotNumDec { this, "WstotNumDecDecorKey" , m_ReadKeyEM_name+".WstotNumDec" , "Recalculated EM WstotNum" }; - SG::WriteDecorHandleKey<xAOD::eFexEMRoIContainer> m_ClusterEtSumPSDec { this, "ClusterEtSumPSDecorKey" , m_ReadKeyEM_name+".ClusterEtSumPS" , "Cluster ET sum PS PS" }; - SG::WriteDecorHandleKey<xAOD::eFexEMRoIContainer> m_ClusterEtSumL1Dec { this, "ClusterEtSumL1DecorKey" , m_ReadKeyEM_name+".ClusterEtSumL1" , "Cluster ET sum PSL1" }; - SG::WriteDecorHandleKey<xAOD::eFexEMRoIContainer> m_ClusterEtSumL2Dec { this, "ClusterEtSumL2DecorKey" , m_ReadKeyEM_name+".ClusterEtSumL2" , "Cluster ET sum PSL2" }; - SG::WriteDecorHandleKey<xAOD::eFexEMRoIContainer> m_ClusterEtSumL3Dec { this, "ClusterEtSumL3DecorKey" , m_ReadKeyEM_name+".ClusterEtSumL3" , "Cluster ET sum PSL3" }; - + SG::WriteDecorHandleKey<xAOD::eFexEMRoIContainer> m_ClusterSCellEtSumsDec { this, "ClusterSCellEtSumsDecorKey" , m_ReadKeyEM_name+".ClusterSCellEtSums", "name of the decoration key for SCell Ets of the cluster"}; // WriteDecor handles for the Tau RoI decorations SG::WriteDecorHandleKey<xAOD::eFexTauRoIContainer> m_RCoreDec { this, "RCoreDecorKey" , m_ReadKeyTau_name+".RCoreDec" , "Recalculated Tau RCore" }; diff --git a/Trigger/TrigT1/TrigT1CaloTools/src/L1TriggerTowerToolRun3.cxx b/Trigger/TrigT1/TrigT1CaloTools/src/L1TriggerTowerToolRun3.cxx index 441ef41bc62c2d803e72c1841d13d3d1385a17f1..3437fd837cae138c94149f18d31cde2fb480234e 100644 --- a/Trigger/TrigT1/TrigT1CaloTools/src/L1TriggerTowerToolRun3.cxx +++ b/Trigger/TrigT1/TrigT1CaloTools/src/L1TriggerTowerToolRun3.cxx @@ -217,7 +217,6 @@ void L1TriggerTowerToolRun3::simulateChannel(const xAOD::TriggerTower& tt, std:: //If we have 80 MHz readout, we need to extract the 40 MHz samples. The central 80 MHz sample is always a 40 MHz sample. We use the cool database (runParameters folder) to understand if we are in 80MHz readout - SG::ReadCondHandle<L1CaloRunParametersContainer> runParameters( m_runParametersContainer); unsigned int readoutConfigID = runParameters->runParameters(1)->readoutConfigID(); ATH_MSG_DEBUG("RunParameters:: readoutConfigID " << readoutConfigID); @@ -685,7 +684,6 @@ void L1TriggerTowerToolRun3::cpLut(const std::vector<int> &fir, const L1CaloCool int startBit = 0; int strategy = 0; int offset = 0; - double offsetReal = 0; int slope = 0; int cut = 0; unsigned short scale_menu = 0; @@ -713,17 +711,11 @@ void L1TriggerTowerToolRun3::cpLut(const std::vector<int> &fir, const L1CaloCool auto l1Menu = getL1Menu(ctx); scale_menu = l1Menu->thrExtraInfo().EM().emScale(); // Retrieve scale param from menu - for( auto &coeffs : *hwCoeffs) { hwCoeffSum += coeffs; } - if (strategy == 0){ - offsetReal = pedMean * hwCoeffSum / pow(2.,startBit); - } - else{ - offsetReal = pedMean * static_cast<double>(hwCoeffSum) * static_cast<double>(slope) / pow(2.,static_cast<double>(startBit)) - static_cast<double>(slope)/2.; - } - offset = static_cast<unsigned short>( offsetReal < 0. ? 0 : offsetReal + 0.5 ); + + offset = this->getLutOffset(pedMean, startBit, *hwCoeffs, slope, strategy); ATH_MSG_DEBUG( "::cpLut: Offset: offset/strategy/pedMean/firCoeffSum/startBit/slope: " << offset << " " << strategy << " " << " " << pedMean << " " << hwCoeffSum << " " << startBit << " " << slope ); @@ -760,7 +752,6 @@ void L1TriggerTowerToolRun3::jepLut(const std::vector<int> &fir, const L1CaloCoo int startBit = 0; int strategy = 0; int offset = 0; - double offsetReal = 0; int slope = 0; int cut = 0; unsigned short scale_db = 0; @@ -809,13 +800,8 @@ void L1TriggerTowerToolRun3::jepLut(const std::vector<int> &fir, const L1CaloCoo for( auto &coeffs : *hwCoeffs) { hwCoeffSum += coeffs; } - if (strategy == 0){ - offsetReal = pedMean * hwCoeffSum / pow(2.,startBit); - } - else{ - offsetReal = pedMean * static_cast<double>(hwCoeffSum) * static_cast<double>(slope) / pow(2.,static_cast<double>(startBit)) - static_cast<double>(slope)/2.; - } - offset = static_cast<unsigned short>( offsetReal < 0. ? 0 : offsetReal + 0.5 ); + + offset = this->getLutOffset(pedMean, startBit, *hwCoeffs, slope, strategy); ATH_MSG_VERBOSE( "::jepLut: Offset: offset/strategy/pedMean/firCoeffSum/startBit/slope: " << offset << " " << strategy << " " << " " << pedMean << " " << hwCoeffSum << " " << startBit << " " << slope ); @@ -1114,7 +1100,6 @@ void L1TriggerTowerToolRun3::cpLutParams(const L1CaloCoolChannelId& channelId, i startBit = 0; strategy = 0; offset = 0; - double offsetReal = 0; slope = 0; cut = 0; pedValue = 0; @@ -1122,6 +1107,7 @@ void L1TriggerTowerToolRun3::cpLutParams(const L1CaloCoolChannelId& channelId, i disabled = true; int hwCoeffSum = 0; const std::vector<short int>* hwCoeffs; + if(!isRun2()) { // assert instead ?! @@ -1145,13 +1131,8 @@ void L1TriggerTowerToolRun3::cpLutParams(const L1CaloCoolChannelId& channelId, i for( auto &coeffs : *hwCoeffs) { hwCoeffSum += coeffs; } - if (strategy == 0){ - offsetReal = pedMean * hwCoeffSum / pow(2.,startBit); - } - else{ - offsetReal = pedMean * hwCoeffSum * slope / pow(2.,startBit) - slope/2.; - } - offset = static_cast<unsigned short>( offsetReal < 0. ? 0 : offsetReal + 0.5 ); + + offset = this->getLutOffset(pedMean, startBit, *hwCoeffs, slope, strategy); ATH_MSG_VERBOSE( "::jepLutParams: Offset: offset/strategy/pedMean/firCoeffSum/startBit/slope: " << offset << " " << strategy << " " << " " << pedMean << " " << hwCoeffSum << " " << startBit << " " << slope ); @@ -1171,7 +1152,6 @@ void L1TriggerTowerToolRun3::jepLutParams(const L1CaloCoolChannelId& channelId, startBit = 0; strategy = 0; offset = 0; - double offsetReal = 0; slope = 0; cut = 0; pedValue = 0; @@ -1201,13 +1181,8 @@ void L1TriggerTowerToolRun3::jepLutParams(const L1CaloCoolChannelId& channelId, for( auto &coeffs : *hwCoeffs) { hwCoeffSum += coeffs; } - if (strategy == 0){ - offsetReal = pedMean * hwCoeffSum / pow(2.,startBit); - } - else{ - offsetReal = pedMean * hwCoeffSum * slope / pow(2.,startBit) - slope/2.; - } - offset = static_cast<unsigned short>( offsetReal < 0. ? 0 : offsetReal + 0.5 ); + + offset = this->getLutOffset(pedMean, startBit, *hwCoeffs, slope, strategy); ATH_MSG_VERBOSE( "::jepLutParams: Offset: offset/strategy/pedMean/firCoeffSum/startBit/slope: " << offset << " " << strategy << " " << " " << pedMean << " " << hwCoeffSum << " " << startBit << " " << slope ); @@ -1506,7 +1481,31 @@ bool L1TriggerTowerToolRun3::isRun2() const return false; } +unsigned int L1TriggerTowerToolRun3::getLutOffset(const double &pedMean, const unsigned int &firStartBit, const std::vector<short int> &firCoeff, const unsigned int &lutSlope, const unsigned int &lutStrategy) const +{ + unsigned int lutOffset = 0; + // essential to save in long long to avoid rounding errors + long long int lutOffsetLong = 0; + long long int lutSlopeLong = lutSlope; + long long int firStartBitLong = firStartBit; + long long int pedMeanLong = std::lround(pedMean * 10000.); + long long int firCoeffSum = 0; + + for (unsigned int i=0; i<firCoeff.size(); i++) { + firCoeffSum += firCoeff.at(i); + } + + if ( lutStrategy == 0 ) { + lutOffsetLong = ((pedMeanLong*firCoeffSum) >> firStartBitLong); + } + else { + lutOffsetLong = ((pedMeanLong*firCoeffSum*lutSlopeLong) >> firStartBitLong) - ((lutSlopeLong * 10000) >> 1); + } + lutOffsetLong = (lutOffsetLong + (10000-1))/10000; + lutOffset = static_cast<unsigned int>( lutOffsetLong < 0 ? 0 : lutOffsetLong ); + return lutOffset; +} const TrigConf::L1Menu* L1TriggerTowerToolRun3::getL1Menu(const EventContext& ctx) const { const TrigConf::L1Menu* menu = nullptr; diff --git a/Trigger/TrigT1/TrigT1CaloTools/src/L1TriggerTowerToolRun3.h b/Trigger/TrigT1/TrigT1CaloTools/src/L1TriggerTowerToolRun3.h index 86dc381f1c0aa44d04677e0b4896ad439ff6ced4..9bdd1c1412a27f7e1586f2271cd3ebb3fabbbd7b 100644 --- a/Trigger/TrigT1/TrigT1CaloTools/src/L1TriggerTowerToolRun3.h +++ b/Trigger/TrigT1/TrigT1CaloTools/src/L1TriggerTowerToolRun3.h @@ -126,6 +126,8 @@ namespace LVL1 /** Get extra noise cut with disabled channel */ bool disabledChannel(const L1CaloCoolChannelId& channelId, unsigned int& noiseCut) const; + // calculate the LUT offset from DB parameters + unsigned int getLutOffset(const double &pedMean, const unsigned int &firStartBit, const std::vector<short int> &firCoeff, const unsigned int &lutSlope, const unsigned int &lutStrategy) const; /// Id managers const CaloIdManager* m_caloMgr; diff --git a/Trigger/TrigT1/TrigT1ZDC/src/TrigT1Run3ZDC.cxx b/Trigger/TrigT1/TrigT1ZDC/src/TrigT1Run3ZDC.cxx index c93e32923a1f66decfb437fc439f357102b55ad4..3cc45fac167a58f0d928dd0fe7b48bdce7dc89d2 100644 --- a/Trigger/TrigT1/TrigT1ZDC/src/TrigT1Run3ZDC.cxx +++ b/Trigger/TrigT1/TrigT1ZDC/src/TrigT1Run3ZDC.cxx @@ -178,11 +178,12 @@ StatusCode TrigT1Run3ZDC::execute(const EventContext& ctx) const { FADCSamplesLG.at((side == 1)).at(module).at(counter) = sample; counter++; } - } else { + } else if(gain == 1) { unsigned int counter = 0; for (const auto& sample : zlc.waveform) { // fill high gain FADC samples FADCSamplesHG.at((side == 1)).at(module).at(counter) = sample; + counter++; } } // retrive Trig Avg amp for debugging diff --git a/Trigger/TrigValidation/TriggerTest/share/ref_mc_v1DevHI_build.ref b/Trigger/TrigValidation/TriggerTest/share/ref_mc_v1DevHI_build.ref index 65dd0b0f4873c178b4f89097c86f829f98391382..9a1fdcdf21044ddc27661fbe5b4b90d0467c4aef 100644 --- a/Trigger/TrigValidation/TriggerTest/share/ref_mc_v1DevHI_build.ref +++ b/Trigger/TrigValidation/TriggerTest/share/ref_mc_v1DevHI_build.ref @@ -2481,10 +2481,14 @@ HLT_mb_sp_vpix60_hi_FgapAC5_L12eTAU1_VjTE200_UNPAIRED_NONISO: eventCount: 0 HLT_mb_sp_vpix60_hi_FgapAC5_L1DPHI-2eEM1_VjTE200: eventCount: 0 +HLT_mb_sp_vpix60_hi_FgapAC5_L1DPHI-2eEM1_VjTE200_EMPTY: + eventCount: 0 HLT_mb_sp_vpix60_hi_FgapAC5_L1DPHI-2eEM1_VjTE200_GAP_AANDC: eventCount: 0 HLT_mb_sp_vpix60_hi_FgapAC5_L1DPHI-2eTAU1_VjTE200: eventCount: 0 +HLT_mb_sp_vpix60_hi_FgapAC5_L1DPHI-2eTAU1_VjTE200_EMPTY: + eventCount: 0 HLT_mb_sp_vpix60_hi_FgapAC5_L1DPHI-2eTAU1_VjTE200_GAP_AANDC: eventCount: 0 HLT_mb_sp_vpix60_hi_FgapAC5_L1TAU1_TE4_VTE200: diff --git a/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py b/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py index 6b9b785809abf1027693dd11f7a88526d87d99c4..0876ee74ef228f2b06434b0b7485ef464498b2d2 100644 --- a/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py +++ b/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py @@ -666,13 +666,13 @@ TriggerHLTListRun3 = [ ('xAOD::TrackParticleAuxContainer#HLT_IDTrack_TauIso_FTFAux.', 'BS ESD AODFULL', 'Tau'), - ('xAOD::TrackParticleContainer#HLT_IDTrack_Tau_IDTrig', 'BS ESD AODFULL', 'Tau', [InViews('precIsoTrackViews')]), + ('xAOD::TrackParticleContainer#HLT_IDTrack_Tau_IDTrig', 'BS ESD AODFULL', 'Tau', [InViews('precIsoTrackViews'), InViews('tauPrecTrackIsoViews')]), ('xAOD::TrackParticleAuxContainer#HLT_IDTrack_Tau_IDTrigAux.eProbabilityNN', 'BS ESD AODFULL', 'Tau'), - ('xAOD::TrackParticleContainer#HLT_IDTrack_TauLRT_IDTrig', 'BS ESD AODFULL', 'Tau', [InViews('precLRTTauViews'), InViews('precLRTTrackViews')]), + ('xAOD::TrackParticleContainer#HLT_IDTrack_TauLRT_IDTrig', 'BS ESD AODFULL', 'Tau', [InViews('precLRTTauViews'), InViews('precLRTTrackViews'), InViews('tauPrecTrackLRTViews')]), ('xAOD::TrackParticleAuxContainer#HLT_IDTrack_TauLRT_IDTrigAux.eProbabilityNN', 'BS ESD AODFULL', 'Tau'), - ('xAOD::VertexContainer#HLT_IDVertex_Tau', 'BS ESD AODFULL', 'Tau', [InViews('precIsoTrackViews'),InViews('precLRTTrackViews')]), + ('xAOD::VertexContainer#HLT_IDVertex_Tau', 'BS ESD AODFULL', 'Tau', [InViews('precIsoTrackViews'), InViews('tauPrecTrackIsoViews'), InViews('precLRTTrackViews'), InViews('tauPrecTrackLRTViews')]), ('xAOD::VertexAuxContainer#HLT_IDVertex_TauAux.', 'BS ESD AODFULL', 'Tau'), ('TrigRoiDescriptorCollection#HLT_Roi_Tau', 'BS ESD AODFULL', 'Tau'), @@ -960,21 +960,21 @@ TriggerHLTListRun3 = [ ('xAOD::TauJetContainer#HLT_TrigTauRecMerged_CaloMVAOnly', 'BS ESD AODFULL', 'Tau', [InViews('tauCaloMVAViews')]), ('xAOD::TauJetAuxContainer#HLT_TrigTauRecMerged_CaloMVAOnlyAux.', 'BS ESD AODFULL', 'Tau'), - ('xAOD::TauJetContainer#HLT_TrigTauRecMerged_MVA', 'BS ESD AODFULL AODSLIM', 'Tau', [InViews('precMVATauViews')]), + ('xAOD::TauJetContainer#HLT_TrigTauRecMerged_MVA', 'BS ESD AODFULL AODSLIM', 'Tau', [InViews('precMVATauViews'), InViews('tauPrecisionReco_MVAViews')]), ('xAOD::TauJetAuxContainer#HLT_TrigTauRecMerged_MVAAux.', 'BS ESD AODFULL AODSLIM', 'Tau'), - ('xAOD::TauJetContainer#HLT_TrigTauRecMerged_LLP', 'BS ESD AODFULL AODSLIM', 'Tau', [InViews('precLLPTauViews')]), + ('xAOD::TauJetContainer#HLT_TrigTauRecMerged_LLP', 'BS ESD AODFULL AODSLIM', 'Tau', [InViews('precLLPTauViews'), InViews('tauPrecisionReco_LLPViews')]), ('xAOD::TauJetAuxContainer#HLT_TrigTauRecMerged_LLPAux.', 'BS ESD AODFULL AODSLIM', 'Tau'), - ('xAOD::TauJetContainer#HLT_TrigTauRecMerged_LRT', 'BS ESD AODFULL AODSLIM', 'Tau', [InViews('precLRTTauViews')]), + ('xAOD::TauJetContainer#HLT_TrigTauRecMerged_LRT', 'BS ESD AODFULL AODSLIM', 'Tau', [InViews('precLRTTauViews'), InViews('tauPrecisionReco_LRTViews')]), ('xAOD::TauJetAuxContainer#HLT_TrigTauRecMerged_LRTAux.', 'BS ESD AODFULL AODSLIM', 'Tau'), # tau tracks - ('xAOD::TauTrackContainer#HLT_tautrack_MVA', 'BS ESD AODFULL AODSLIM', 'Tau', [InViews('precMVATauViews')]), + ('xAOD::TauTrackContainer#HLT_tautrack_MVA', 'BS ESD AODFULL AODSLIM', 'Tau', [InViews('precMVATauViews'), InViews('tauPrecisionReco_MVAViews')]), ('xAOD::TauTrackAuxContainer#HLT_tautrack_MVAAux.'+TauTrackVars, 'BS ESD AODFULL AODSLIM', 'Tau'), - ('xAOD::TauTrackContainer#HLT_tautrack_LLP', 'BS ESD AODFULL AODSLIM', 'Tau', [InViews('precLLPTauViews')]), + ('xAOD::TauTrackContainer#HLT_tautrack_LLP', 'BS ESD AODFULL AODSLIM', 'Tau', [InViews('precLLPTauViews'), InViews('tauPrecisionReco_LLPViews')]), ('xAOD::TauTrackAuxContainer#HLT_tautrack_LLPAux.'+TauTrackVars, 'BS ESD AODFULL AODSLIM', 'Tau'), - ('xAOD::TauTrackContainer#HLT_tautrack_LRT', 'BS ESD AODFULL AODSLIM', 'Tau', [InViews('precLRTTauViews')]), + ('xAOD::TauTrackContainer#HLT_tautrack_LRT', 'BS ESD AODFULL AODSLIM', 'Tau', [InViews('precLRTTauViews'), InViews('tauPrecisionReco_LRTViews')]), ('xAOD::TauTrackAuxContainer#HLT_tautrack_LRTAux.'+TauTrackVars, 'BS ESD AODFULL AODSLIM', 'Tau'), # bjet RoI Descriptor used for EventView creation diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/CFtest/EmuStepProcessingConfig.py b/Trigger/TriggerCommon/TriggerMenuMT/python/CFtest/EmuStepProcessingConfig.py index 26e6f9b4fa1b9ed431fd9dd46d473616d5f293ef..8c87379cc3624a17762dce0ec54e1f9cabf3df8c 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/CFtest/EmuStepProcessingConfig.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/CFtest/EmuStepProcessingConfig.py @@ -57,20 +57,23 @@ def generateEmuEvents(): HLT_2TestChain6_mv1_L12MU5VF \ HLT_TestChain10_mv2_L1MU8F \ HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF \ + HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF \ HLT_2TestChain4_mv1_dr_L12MU5VF' data['l1emroi'][1] = '1,1,0,EM3,EM7,EM20,EM30,EM100; 2.,-1.2,0,EM3,EM7; 3.,0.2,0,EM3;' - data['emclusters'][1]= 'eta:1,phi:1,et:180000; eta:1,phi:-1.2,et:6000; eta:0.5,phi:-1.2,et:3000;' + data['emclusters'][1]= 'eta:1,phi:1,et:180000; eta:2,phi:-1.2,et:6000; eta:3.,phi:0.2,et:3000;' data['l1muroi'][1] = '2,0.5,0,MU5VF; 3,0.5,0,MU5VF;' - data['msmu'][1] = 'eta:-1.2,phi:0.7,pt:1500,pt2:1500; eta:-1.1,phi:0.6,pt:1500,pt2:1500;' + data['msmu'][1] = 'eta:2,phi:0.5,pt:1500,pt2:1500; eta:3,phi:0.5,pt:1500,pt2:1500;' # event 2: 2e+ 3mu : HLT_TestChain5_ev1_TestChain8_ev1_2TestChain6_mv1_L1_2EM8VH_MU8F, HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F data['ctp'] [2] = 'HLT_TestChain6_mv1_L1MU5VF \ HLT_TestChain8_mv1_L1MU8F \ HLT_TestChain10_mv2_L1MU8F \ - HLT_TestChain8_mv1step_L1MU5VF \ + HLT_TestChain8_mv1step_L1MU8F \ HLT_TestChain5_ev1_L1EM3 \ HLT_TestChain8_ev1_L1EM3 \ - HLT_TestChain6_mEmpty2_L1MU5VF \ + HLT_TestChain8_mEmpty2_L1MU8F \ + HLT_TestChain8_mEmpty3_L1MU8F \ + HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF \ HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F \ HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F \ HLT_2TestChain6_mv1_L12MU5VF \ @@ -83,22 +86,25 @@ def generateEmuEvents(): HLT_TestChain5_ev1_TestChain8_ev1_merge_L12EM3 \ HLT_TestChain5_ev1_TestChain8_ev1_L12EM3 \ HLT_TestChain6_mv1_TestChain5_ev1_dr_L12MU5VF' - data['l1emroi'][2] = '2,0.2,0,EM3,EM7,EM15,EM20,EM30,EM100; 1,-1.1,0,EM3,EM7,EM15,EM20,EM30;' - data['emclusters'][2]= 'eta:0.5,phi:0,et:120000; eta:1,phi:-1.2,et:65000;' - data['l1muroi'][2] = '2,0.5,0,MU5VF,MU8VF; 3,0.5,0,MU5VF,MU8F,MU8VF;2.2,0.6,0,MU5VF;' - data['msmu'][2] = 'eta:-1.2,phi:0.7,pt:6500,pt2:8500; eta:-1.1,phi:0.6,pt:10500,pt2:8500;eta:-1.1,phi:0.6,pt:8500,pt2:8500;' + data['l1emroi'][2] = '0.5,0.1,0,EM3,EM7,EM15,EM20,EM30,EM100; 1,-1.2,0,EM3,EM7,EM15,EM20,EM30;' + data['emclusters'][2]= 'eta:0.5,phi:0.1,et:120000; eta:1,phi:-1.2,et:65000;' + data['l1muroi'][2] = '-1.2,0.7,0,MU5VF,MU8VF; -1.1,0.6,0,MU5VF,MU8F,MU8VF;1.1,0.6,0,MU5VF;' + data['msmu'][2] = 'eta:-1.2,phi:0.7,pt:6500,pt2:8500; eta:-1.1,phi:0.6,pt:10500,pt2:8500;eta:1.1,phi:0.6,pt:8500,pt2:8500;' #event 3: 1e + 1mu; HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F does not pass because of e10 data['ctp'] [3] = 'HLT_TestChain20_mv1_L1MU8F \ HLT_TestChain10_mv1_L1MU8F \ HLT_TestChain8_mv1_L1MU8F \ - HLT_TestChain8_mv1step_L1MU5VF \ + HLT_TestChain8_mEmpty3_L1MU8F \ + HLT_TestChain8_mEmpty2_L1MU8F \ + HLT_TestChain6_mEmpty3_TestChain8_mv1_L12MU5VF \ + HLT_TestChain8_mv1step_L1MU8F \ HLT_TestChain8_ev1_L1EM3 \ HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F\ HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F' - data['l1emroi'][3] = '1,1.5,0,EM3,EM7;' + data['l1emroi'][3] = '-0.6,1.7,0,EM3,EM7;' data['emclusters'][3]= 'eta:-0.6,phi:1.7,et:9000;' - data['l1muroi'][3] = '2,-0.1,0,MU5VF,MU8F,MU8VF;' + data['l1muroi'][3] = '-1.7,-0.2,0,MU5VF,MU8F,MU8VF;' data['msmu'][3] = 'eta:-1.7,phi:-0.2,pt:29500,pt2:8500;' # otehr vectors @@ -167,11 +173,11 @@ def generateChainsManually(flags, maskbit=0x7): step_empy= makeChainStep("Step2_mu1empty", isEmpty=True) MuChains = [ - makeChain(flags, name='HLT_TestChain8_mv1step_L1MU5VF', L1Thresholds=["MU5VF"], ChainSteps=[step_mu11]), + makeChain(flags, name='HLT_TestChain8_mv1step_L1MU8F', L1Thresholds=["MU5VF"], ChainSteps=[step_mu11]), makeChain(flags, name='HLT_TestChain8_mv1_L1MU8F', L1Thresholds=["MU8F"], ChainSteps=[step_mu11 , step_mu21 , step_mu31, step_mu41] ), makeChain(flags, name='HLT_TestChain20_mv1_L1MU8F', L1Thresholds=["MU8F"], ChainSteps=[step_mu11 , step_mu21 , step_mu31, step_mu41] ), makeChain(flags, name='HLT_TestChain10_mv2_L1MU8F', L1Thresholds=["MU8F"], ChainSteps=[step_mu11 , step_mu22 , step_mu31] ), - makeChain(flags, name='HLT_TestChain6_mEmpty2_L1MU5VF', L1Thresholds=["MU5VF"], ChainSteps=[step_mu11 , step_empy , step_mu32, step_mu41] ) + makeChain(flags, name='HLT_TestChain8_mEmpty2_L1MU8F', L1Thresholds=["MU5VF"], ChainSteps=[step_mu11 , step_empy , step_mu32, step_mu41] ) ] diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Dev_pp_run3_emu_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Dev_pp_run3_emu_v1.py index d7cc187307791ac0fdce0975b886748bef4e9970..a0dcee8f4caa1dbc5598c2e4806d8ba5cb6284b2 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Dev_pp_run3_emu_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Dev_pp_run3_emu_v1.py @@ -14,11 +14,14 @@ def setupMenu(): chains['Test'] = [ # muons - ChainProp(name='HLT_TestChain8_mv1step_L1MU5VF', stream=['Main'], groups=['RATE:Test','BW:Other'] ), + ChainProp(name='HLT_TestChain8_mv1step_L1MU8F', stream=['Main'], groups=['RATE:Test','BW:Other'] ), ChainProp(name='HLT_TestChain8_mv1_L1MU8F', stream=['Main'], groups=['RATE:Test','BW:Other'] ), ChainProp(name='HLT_TestChain20_mv1_L1MU8F',stream=['Main'], groups=['RATE:Test','BW:Other'] ), ChainProp(name='HLT_TestChain10_mv2_L1MU8F',stream=['Main'], groups=['RATE:Test','BW:Other'] ), - ChainProp(name='HLT_TestChain6_mEmpty2_L1MU5VF', stream=['Main'], groups=['RATE:Test','BW:Other'] ), + ChainProp(name='HLT_TestChain8_mEmpty2_L1MU8F', stream=['Main'], groups=['RATE:Test','BW:Other'] ), + ChainProp(name='HLT_TestChain8_mEmpty3_L1MU8F', stream=['Main'], groups=['RATE:Test','BW:Other'] ), + + # egamma ChainProp(name='HLT_TestChain5_ev1_L1EM3', stream=['Main'], groups=['RATE:Test','BW:Other'] ), @@ -35,6 +38,8 @@ def setupMenu(): ChainProp(name='HLT_TestChain6_mv1_TestChain5_ev1dr_L12eEM10L_MU8F', l1SeedThresholds=['MU8F','EM7'], stream=['Main'], groups=['RATE:Test','BW:Other'], mergingStrategy = 'parallel'), ChainProp(name='HLT_2TestChain4_mv1dr_L12MU5VF', stream=['Main'], groups=['RATE:Test','BW:Other'] ), + ChainProp(name='HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF', stream=['Main'], groups=['RATE:Test','BW:Other'] , mergingStrategy = 'parallel' ), + # FSNOSEED not implemented in emulation ChainProp(name='HLT_TestChain10_mEmpty1_TestChain6_mEmpty1_L12MU5VF', l1SeedThresholds=['MU5VF','MU5VF'], stream=['Main'], groups=['RATE:Test','BW:Other'], mergingStrategy = 'parallel'), ] diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/P1_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/P1_run3_v1.py index 48b1b953427f12e7dbfa8d86561ba679ef0f2752..dd76a6b1d5d10ad2045ae4b61f8d7e8aa49273c3 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/P1_run3_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/P1_run3_v1.py @@ -603,6 +603,8 @@ def addHeavyIonP1Signatures(chains): ChainProp(name='HLT_noalg_L1eEM1_EMPTY', l1SeedThresholds=['FSNOSEED'], stream=['CosmicCalo'],groups=['RATE:Cosmic_Calo','BW:MinBias','RATE:Calibration']+SupportPhIGroup), ChainProp(name='HLT_noalg_L1eEM2_EMPTY', l1SeedThresholds=['FSNOSEED'], stream=['CosmicCalo'],groups=['RATE:Cosmic_Calo','BW:MinBias','RATE:Calibration']+SupportPhIGroup), ChainProp(name='HLT_noalg_L1eEM5_EMPTY', l1SeedThresholds=['FSNOSEED'], stream=['CosmicCalo'],groups=['RATE:Cosmic_Calo','BW:MinBias','RATE:Calibration']+SupportPhIGroup), + ChainProp(name='HLT_noalg_L1DPHI-2eTAU1_VjTE200_EMPTY', l1SeedThresholds=['FSNOSEED'], stream=['CosmicCalo'],groups=['RATE:Cosmic_Calo','BW:MinBias','RATE:Calibration']+SupportPhIGroup), + ChainProp(name='HLT_noalg_L1DPHI-2eEM1_VjTE200_EMPTY', l1SeedThresholds=['FSNOSEED'], stream=['CosmicCalo'],groups=['RATE:Cosmic_Calo','BW:MinBias','RATE:Calibration']+SupportPhIGroup), ] addP1Signatures(chains,chainsP1) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/PhysicsP1_HI_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/PhysicsP1_HI_run3_v1.py index 09add8f9b516bd713f74b02b336c06d0ef3704a0..87a02d05a156e4f7d4e16e63413415352f0a1272 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/PhysicsP1_HI_run3_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/PhysicsP1_HI_run3_v1.py @@ -413,6 +413,8 @@ def getPhysicsHISignatures(): ChainProp(name='HLT_mb_sptrk_hi_FgapAC5_L12eTAU1_VjTE200', l1SeedThresholds=['FSNOSEED']*2,stream=[UPCStream],groups=MinBiasGroup+SupportPhIGroup), ChainProp(name='HLT_mb_sptrk_hi_FgapAC5_L1eTAU1_TRT_VjTE200', l1SeedThresholds=['FSNOSEED']*2,stream=[UPCStream],groups=MinBiasGroup+SupportPhIGroup), ChainProp(name='HLT_mb_sp_vpix60_hi_FgapAC5_L1eEM9_VjTE200_EMPTY', l1SeedThresholds=['FSNOSEED']*2,stream=[UPCStream],groups=MinBiasGroup+SupportPhIGroup), + ChainProp(name='HLT_mb_sp_vpix60_hi_FgapAC5_L1DPHI-2eEM1_VjTE200_EMPTY', l1SeedThresholds=['FSNOSEED']*2,stream=[UPCStream],groups=MinBiasGroup+SupportPhIGroup+['PS:NoHLTRepro']), + ChainProp(name='HLT_mb_sp_vpix60_hi_FgapAC5_L1DPHI-2eTAU1_VjTE200_EMPTY', l1SeedThresholds=['FSNOSEED']*2,stream=[UPCStream],groups=MinBiasGroup+SupportPhIGroup+['PS:NoHLTRepro']), #----------- UPC ditaus - Phase-1 #primary diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/SignatureDicts.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/SignatureDicts.py index 1fb41641900f1e29cbc78eec17f8150fca0a8e92..fe33d1c6ed80cf19e89e490c2bf97a91950628a5 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/SignatureDicts.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/SignatureDicts.py @@ -78,7 +78,7 @@ TestChainParts = { 'alignmentGroup' : ['Test'], 'chainPartName' : '', 'multiplicity' : '', - 'extra' : ['mv1', 'mv1step', 'mv2', 'ev1', 'ev2', 'ev3', 'gv1', 'mEmpty1', 'mEmpty2', 'ev1dr', 'mv1dr','merge'], + 'extra' : ['mv1', 'mv1step', 'mv2', 'ev1', 'ev2', 'ev3', 'gv1', 'mEmpty1', 'mEmpty2', 'mEmpty3', 'ev1dr', 'mv1dr','merge'], 'trigType' : ['TestChain'], 'threshold' : '', 'addInfo' : [''], @@ -608,20 +608,39 @@ AllowedTopos_tau = [] TauChainParts = { 'signature' : ['Tau'], 'alignmentGroup': ['Tau'], + 'extra' : [], 'L1threshold' : '', 'chainPartName' : '', 'threshold' : '', - 'preselection' : ['tracktwoMVA', 'tracktwoLLP', 'ptonly', 'trackLRT' ], - 'selection' : ['looseRNN', 'mediumRNN', 'tightRNN', 'perf', 'idperf', - 'kaonpi1', 'kaonpi2', 'dipion1', 'dipion2', 'dipion3', 'dipion4', 'dikaonmass', 'singlepion'], + 'reconstruction': [ + # BRT calibration (no-tracking) + 'ptonly', + + # Standard reconstruction triggers + # 2-step FTF (Core + Iso) + PT + # Split in different sequences to avoid running unnecesary TauIDs + 'tracktwoMVA', # DeepSet and MesonCuts triggers + 'tracktwoLLP', # RNNLLP triggers + + # LRT reconstruction triggers + # 1-step FTF (LRT) + PT + 'trackLRT', # RNNLLP triggers + ], + 'jet' : ['lc', 'pf'], # Only use LCTopo jets for now + 'preselection' : [], + 'selection' : [ + 'idperf', # No selection + 'perf', # NTrk selection + + # RNN/DeepSet ID WPs (for tracktwoMVA/LLP/LRT reco with DeepSet/RNNLLP TauIDs): + 'looseRNN', 'mediumRNN', 'tightRNN', + + # Meson b-phys triggers (used with tracktwoMVA reco without cutting on the RNN/DeepSet score): + 'kaonpi1', 'kaonpi2', 'dipion1', 'dipion2', 'dipion3', 'dipion4', 'dikaonmass', 'singlepion', + ], 'multiplicity' : '', 'trigType' : ['tau'], - 'trkInfo' : '', 'tnpInfo' : ['probe'], - 'extra' : '', - 'recoAlg' : '', - 'calib' : '', - 'addInfo' : ['IdTest'], 'topo' : AllowedTopos_tau, 'sigFolder' : ['Tau'], 'subSigs' : ['Tau'], @@ -630,25 +649,24 @@ TauChainParts = { TauChainParts_Default = { 'signature' : ['Tau'], 'alignmentGroup': ['Tau'], + 'extra' : '', 'L1threshold' : '', 'chainPartName' : '', - 'threshold' : '20', + 'threshold' : '', + 'reconstruction': '', + 'jet' : 'lc', 'preselection' : '', 'selection' : '', 'multiplicity' : '', 'trigType' : '', - 'trkInfo' : [], 'tnpInfo' : '', - 'extra' : '', - 'recoAlg' : '', - 'calib' : '', - 'addInfo' : '', 'topo' : [], 'sigFolder' : ['Tau'], 'subSigs' : ['Tau'], 'chainPartIndex': 0 } + #========================================================== # MET #========================================================== diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Tau/README.md b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Tau/README.md index 491becac6196a30b9facd8fce2abf8ba926088e5..e654aa42aa42cba55c8ffded0be0a4c33e49dbf1 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Tau/README.md +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Tau/README.md @@ -7,4 +7,5 @@ Modules in this directory * Defines the ChainConfiguration object that interprets the chain dict and builds the chain * [TauMenuSequences](TauMenuSequences.py) * Defines the top-level sequences containing the input maker and hypothesis alg - +* [TauConfigurationTools](TauConfigurationTools.py) + * Defines the tools used by multiple modules to parse the Tau Trigger configuration diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Tau/TauChainConfiguration.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Tau/TauChainConfiguration.py index c0fabd96ecced616bbb02878da466daa822c0757..3fe7a0ad631af7334e5fc98eabff5eadac7f0fa3 100755 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Tau/TauChainConfiguration.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Tau/TauChainConfiguration.py @@ -2,133 +2,144 @@ ######################################################################## # -# SliceDef file for muon chains/signatures +# SliceDef file for tau chains # ######################################################################### + +from typing import List + from AthenaCommon.Logging import logging -logging.getLogger().info("Importing %s",__name__) +logging.getLogger().info(f'Importing {__name__}') log = logging.getLogger(__name__) from TriggerMenuMT.HLT.Config.ChainConfigurationBase import ChainConfigurationBase from .TauMenuSequences import ( - tauCaloMVAMenuSequenceGenCfg, tauFTFTauCoreSequenceGenCfg, - tauFTFTauIsoSequenceGenCfg, tauFTFTauLRTSequenceGenCfg, + tauCaloMVAMenuSequenceGenCfg, + tauFTFTauCoreSequenceGenCfg, tauFTFTauLRTSequenceGenCfg, + tauFTFTauIsoSequenceGenCfg, tauPrecTrackIsoSequenceGenCfg, tauPrecTrackLRTSequenceGenCfg, - tauTrackTwoMVASequenceGenCfg, tauTrackTwoLLPSequenceGenCfg, - tauTrackLRTSequenceGenCfg ) + tauPrecisionSequenceGenCfg, tauPrecisionLRTSequenceGenCfg) + +from .TauConfigurationTools import getChainSequenceConfigName, getChainPrecisionSeqName ############################################# -### Class/function to configure muon chains +### Class to configure tau chains ############################################# class TauChainConfiguration(ChainConfigurationBase): - def __init__(self, chainDict): - ChainConfigurationBase.__init__(self,chainDict) + ChainConfigurationBase.__init__(self, chainDict) - # ---------------------- - # Assemble the chain depending on information from chainName - # ---------------------- def assembleChainImpl(self, flags): - chainSteps = [] - log.debug("Assembling chain for %s", self.chainName) - - # -------------------- - # define here the names of the steps and obtain the chainStep configuration - # -------------------- - stepDictionary = { - "ptonly" :['getCaloMVASeq', 'getFTFEmpty', 'getTrkEmpty' , 'getPTEmpty' , 'getIDEmpty' ], - "tracktwoMVA" :['getCaloMVASeq', 'getFTFCore' , 'getFTFIso' , 'getPrecTrackIso' , 'getTrackTwoMVA' ], - "tracktwoLLP" :['getCaloMVASeq', 'getFTFCore' , 'getFTFIso' , 'getPrecTrackIso' , 'getTrackTwoLLP' ], - "trackLRT" :['getCaloMVASeq', 'getFTFLRT' , 'getTrkEmpty' , 'getPrecTrackLRT' , 'getTrackLRT' ], + log.debug(f'Assembling chain for {self.chainName}') + + chain_steps = [] + + # Overall Tau Trigger sequences steps: + step_dictionary = { + # BRT calibration chains + 'ptonly' : ['getCaloMVA', 'getFTFCoreEmpty', 'getFTFIsoEmpty', 'getPrecTrackEmpty', 'getPrecisionEmpty'], + + # 2-step tracking + ID chains + 'tracktwoMVA' : ['getCaloMVA', 'getFTFCore' , 'getFTFIso' , 'getPrecTrackIso' , 'getPrecision' ], + 'tracktwoLLP' : ['getCaloMVA', 'getFTFCore' , 'getFTFIso' , 'getPrecTrackIso' , 'getPrecision' ], + + # LRT chains + 'trackLRT' : ['getCaloMVA', 'getFTFLRT' , 'getFTFIsoEmpty', 'getPrecTrackLRT' , 'getPrecisionLRT' ], } - # this should be extended by the signature expert to make full use of the dictionary! - key = self.chainPart['preselection'] - steps=stepDictionary[key] + steps = step_dictionary[getChainSequenceConfigName(self.chainPart)] for step in steps: - is_probe_leg = self.chainPart['tnpInfo']=='probe' if 'Empty' in step: - chainstep = getattr(self, step)(flags) + chain_step = getattr(self, step)(flags) else: - chainstep = getattr(self, step)(flags, is_probe_leg=is_probe_leg) - chainSteps+=[chainstep] - - myChain = self.buildChain(chainSteps) - return myChain + is_probe_leg = self.chainPart['tnpInfo']=='probe' + chain_step = getattr(self, step)(flags, is_probe_leg=is_probe_leg) + chain_steps.append(chain_step) + + return self.buildChain(chain_steps) + - # -------------------- - def getCaloMVASeq(self, flags, is_probe_leg=False): - stepName = 'MVA_tau' + #-------------------------------------------------- + # Step 1: CaloMVA reconstruction + #-------------------------------------------------- + def getCaloMVA(self, flags, is_probe_leg=False): + stepName = 'CaloMVA_tau' return self.getStep(flags, stepName, [tauCaloMVAMenuSequenceGenCfg], is_probe_leg=is_probe_leg) + - # -------------------- + #-------------------------------------------------- + # Step 2: 1st FTF stage (FTFCore/LRT) + #-------------------------------------------------- def getFTFCore(self, flags, is_probe_leg=False): stepName = 'FTFCore_tau' return self.getStep(flags, stepName, [tauFTFTauCoreSequenceGenCfg], is_probe_leg=is_probe_leg) - # -------------------- def getFTFLRT(self, flags, is_probe_leg=False): stepName = 'FTFLRT_tau' return self.getStep(flags, stepName, [tauFTFTauLRTSequenceGenCfg], is_probe_leg=is_probe_leg) - # -------------------- + def getFTFCoreEmpty(self, flags): + stepName = 'FTFCoreEmpty_tau' + return self.getEmptyStep(2, stepName) - def getFTFEmpty(self, flags): - stepName = 'FTFEmpty_tau' - return self.getEmptyStep(2,stepName) - - # -------------------- + #-------------------------------------------------- + # Step 3: 2nd FTF stage (FTFIso) + #-------------------------------------------------- def getFTFIso(self, flags, is_probe_leg=False): stepName = 'FTFIso_tau' return self.getStep(flags, stepName, [tauFTFTauIsoSequenceGenCfg], is_probe_leg=is_probe_leg) - # -------------------- - - def getTrkEmpty(self, flags): - stepName = 'TrkEmpty_tau' - return self.getEmptyStep(3,stepName) + def getFTFIsoEmpty(self, flags): + stepName = 'FTFIsoEmpty_tau' + return self.getEmptyStep(3, stepName) - # -------------------- + #-------------------------------------------------- + # Step 4: Precision tracking + #-------------------------------------------------- def getPrecTrackIso(self, flags, is_probe_leg=False): stepName = 'PrecTrkIso_tau' - return self.getStep(flags, stepName,[tauPrecTrackIsoSequenceGenCfg],is_probe_leg=is_probe_leg) + return self.getStep(flags, stepName, [tauPrecTrackIsoSequenceGenCfg], is_probe_leg=is_probe_leg) - # -------------------- def getPrecTrackLRT(self, flags, is_probe_leg=False): stepName = 'PrecTrkLRT_tau' - return self.getStep(flags, stepName,[tauPrecTrackLRTSequenceGenCfg],is_probe_leg=is_probe_leg) - - # -------------------- - - def getPTEmpty(self, flags): - stepName = 'PTEmpty_tau' - return self.getEmptyStep(4,stepName) - - # -------------------- - - def getTrackTwoMVA(self, flags, is_probe_leg=False): - stepName = "TrkTwoMVA_tau" - return self.getStep(flags, stepName,[tauTrackTwoMVASequenceGenCfg],is_probe_leg=is_probe_leg) - - # -------------------- - - def getTrackTwoLLP(self, flags, is_probe_leg=False): - stepName = "TrkTwoLLP_tau" - return self.getStep(flags, stepName,[tauTrackTwoLLPSequenceGenCfg],is_probe_leg=is_probe_leg) - - # -------------------- - def getTrackLRT(self, flags, is_probe_leg=False): - stepName = "TrkLRT_tau" - return self.getStep(flags, stepName,[tauTrackLRTSequenceGenCfg],is_probe_leg=is_probe_leg) - - # -------------------- - - def getIDEmpty(self, flags): - stepName = 'IDEmpty_tau' - return self.getEmptyStep(5,stepName) + return self.getStep(flags, stepName, [tauPrecTrackLRTSequenceGenCfg], is_probe_leg=is_probe_leg) + + def getPrecTrackEmpty(self, flags): + stepName = 'PrecTrkEmpty_tau' + return self.getEmptyStep(4, stepName) + + + #-------------------------------------------------- + # Step 5: Precision reconstruction + ID + #-------------------------------------------------- + def getPrecision(self, flags, is_probe_leg=False): + sequenceName = getChainPrecisionSeqName(self.chainPart) + stepName = f'Precision_{sequenceName}_tau' + return self.getStep( + flags, + stepName, + [tauPrecisionSequenceGenCfg], + seq_name=sequenceName, + is_probe_leg=is_probe_leg, + ) + + def getPrecisionLRT(self, flags, is_probe_leg=False): + sequenceName = getChainPrecisionSeqName(self.chainPart) + stepName = f'Precision_{sequenceName}_tau' + return self.getStep( + flags, + stepName, + [tauPrecisionLRTSequenceGenCfg], + seq_name=sequenceName, + is_probe_leg=is_probe_leg, + ) + + def getPrecisionEmpty(self, flags): + stepName = 'PrecisionEmpty_tau' + return self.getEmptyStep(5, stepName) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Tau/TauConfigurationTools.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Tau/TauConfigurationTools.py new file mode 100644 index 0000000000000000000000000000000000000000..f33ea29e090c8730c1018c7162f3a99168bb937b --- /dev/null +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Tau/TauConfigurationTools.py @@ -0,0 +1,85 @@ +# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration + +from AthenaCommon.Logging import logging +log = logging.getLogger(__name__) + +##################################################################### +# Sequence TauIDs +##################################################################### + +# List of Tau ID inference algorithms to be executed in each reco sequence +# Since the TrigTauRecMerged reco (TES, track association, variable calculation, etc.) is very fast, +# we split the reconstruction according to the primary ID algorithm to be used, to avoid running unnecesary long inferences +# The configuration for each TauID algorithm is contained in the flags.Trigger.Offline.Tau.<TauID> subdirectory + +def getPrecisionSequenceTauIDs(precision_sequence: str) -> list[str]: + '''Get the list of TauIDs for each HLT tau trigger sequence''' + tau_ids = { + 'MVA': ['DeepSet', 'MesonCuts'], + 'LLP': ['RNNLLP'], + 'LRT': ['RNNLLP'], + } + + return tau_ids[precision_sequence] + +##################################################################### +# This file contains helper functions for the Tau Trigger signature +##################################################################### + +# The following functions are only required while we still have triggers +# with the RNN/DeepSet naming scheme in the Menu (e.g. mediumRNN_tracktwoMVA/LLP) +rnn_wps = ['verylooseRNN', 'looseRNN', 'mediumRNN', 'tightRNN'] +noid_selections = ['perf', 'idperf'] +meson_selections = ['kaonpi1', 'kaonpi2', 'dipion1', 'dipion2', 'dipion3', 'dipion4', 'dikaonmass', 'singlepion'] + +def getChainIDConfigName(chainPart) -> str: + '''Clean the ID configuration for a chainPart dict''' + sel = chainPart['selection'] + + # Support for the Legacy trigger names: + if chainPart['reconstruction'] == 'tracktwoMVA': + if sel in rnn_wps: + return 'DeepSet' + elif sel in meson_selections: + return 'MesonCuts' + elif chainPart['reconstruction'] in ['tracktwoLLP', 'trackLRT'] and sel in rnn_wps: + return 'RNNLLP' + + + # Retrieve the TauID name from the selection string + if sel.startswith('veryloose'): sel = sel.removeprefix('veryloose') + if sel.startswith('loose'): sel = sel.removeprefix('loose') + if sel.startswith('medium'): sel = sel.removeprefix('medium') + if sel.startswith('tight'): sel = sel.removeprefix('tight') + + # Remap names (e.g. DS -> DeepSet) + name_mapping: dict[str, str] = {'DS': 'DeepSet', 'GNT': 'GNTau'} + if sel in name_mapping: sel = name_mapping[sel] + + return sel + + +def getChainSequenceConfigName(chainPart) -> str: + '''Get the HLT Tau signature sequence name (e.g. ptonly, tracktwo, trackLRT, etc...)''' + return chainPart['reconstruction'] + + +def getChainPrecisionSeqName(chainPart) -> str: + ''' + Get the HLT Tau Precision sequence name suffix. + This is also used for the HLT_TrigTauRecMerged_... and HLT_tautrack_... EDM collection names. + ''' + ret = chainPart['reconstruction'] + + # Support for the Legacy trigger names: + if ret == 'tracktwoMVA': return 'MVA' + elif ret == 'tracktwoLLP': return 'LLP' + elif ret == 'trackLRT': return 'LRT' + + return ret + + +def useBuiltInTauJetRNNScore(chainPart) -> bool: + '''Check if the TauJet's built-in RNN score and WP variables have to be used, instead of the decorator-based variables''' + if getChainPrecisionSeqName(chainPart) in ['MVA', 'LLP', 'LRT'] and chainPart['selection'] in rnn_wps: return True + return False diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Tau/TauMenuSequences.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Tau/TauMenuSequences.py index d9507fb45f69fdb4c2b4014845baa831dd703161..c0128c9e8b57915bbc8d5d3da7a6a6cdab79b16f 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Tau/TauMenuSequences.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Tau/TauMenuSequences.py @@ -2,303 +2,484 @@ from TriggerMenuMT.HLT.Config.MenuComponents import MenuSequence, SelectionCA, InViewRecoCA from AthenaConfiguration.ComponentFactory import CompFactory - from AthenaConfiguration.AccumulatorCache import AccumulatorCache from TrigEDMConfig.TriggerEDM import recordable - from TrigInDetConfig.utils import getFlagsForActiveConfig + from AthenaCommon.Logging import logging log = logging.getLogger(__name__) -def _caloSeq(flags, is_probe_leg=False): - selAcc = SelectionCA('CaloTau', isProbe=is_probe_leg) +# Check the ATLAS Software Docs for more details about the different sub-sequences, CAs, and details +# about the step configuration. + + +#================================================================ +# CaloMVA sequences +#================================================================ +@AccumulatorCache +def tauCaloMVAMenuSequenceGenCfg(flags, is_probe_leg=False): + '''Calorimeter-only reconstruction and hypothesis (BRT-calibrated pT cut)''' + + # Reconstruction sequence CA (parOR), executting all reco algorithms within the View (from the RoI) + # in parallel whenever possible, according to their data dependencies. + # Create the EventViews based on the HLTSeeding RoIs (from the input L1 TOBs) + recoAcc = InViewRecoCA(name='tauCaloMVA', InViewRoIs='CaloMVA_RoIs', isProbe=is_probe_leg) + RoIs = recoAcc.inputMaker().InViewRoIs + + + # VDV with all the required collections/objects in the View + # (the VDV checks are disabled unless running with -l DEBUG) + recoAcc.addRecoAlgo(CompFactory.AthViews.ViewDataVerifier( + name=f'{recoAcc.name}RecoVDV', + DataObjects={ + ('TrigRoiDescriptorCollection', f'StoreGateSvc+{RoIs}'), + ('xAOD::EventInfo', 'StoreGateSvc+EventInfo'), + ('SG::AuxElement', 'StoreGateSvc+EventInfo.actualInteractionsPerCrossing'), + ('SG::AuxElement', 'StoreGateSvc+EventInfo.averageInteractionsPerCrossing'), + ('CaloBCIDAverage', 'StoreGateSvc+CaloBCIDAverage'), + } + )) - recoAcc = InViewRecoCA(name = 'tauCaloMVA', - InViewRoIs = 'CaloMVA_RoIs', - isProbe = is_probe_leg) - recoAcc.addRecoAlgo(CompFactory.AthViews.ViewDataVerifier(name=recoAcc.name+'RecoVDV', - DataObjects={('TrigRoiDescriptorCollection', 'StoreGateSvc+'+recoAcc.inputMaker().InViewRoIs.Path), - #( 'TrigRoiDescriptorCollection' , 'StoreGateSvc+HLT_TAURoI'), - ('CaloBCIDAverage', 'StoreGateSvc+CaloBCIDAverage'), - ( 'xAOD::EventInfo' , 'StoreGateSvc+EventInfo' ), - ( 'SG::AuxElement' , 'StoreGateSvc+EventInfo.actualInteractionsPerCrossing'), - ( 'SG::AuxElement' , 'StoreGateSvc+EventInfo.averageInteractionsPerCrossing')})) + # Reconstruction tools/algorithms: + # Topo-clustering from TrigCaloRec.TrigCaloRecConfig import tauTopoClusteringCfg - recoAcc.mergeReco(tauTopoClusteringCfg(flags, - RoIs = recoAcc.inputMaker().InViewRoIs)) + recoAcc.mergeReco(tauTopoClusteringCfg(flags, RoIs=RoIs)) - from TrigTauRec.TrigTauRecConfig import trigTauRecMergedCaloOnlyMVACfg + # Create new RoIs with an updated position, based on the central axis of the clusters from TrigTauHypo.TrigTauHypoConfig import tauCaloRoiUpdaterCfg + recoAcc.mergeReco(tauCaloRoiUpdaterCfg(flags, inputRoIs=RoIs, clusters='HLT_TopoCaloClustersLC')) - recoAcc.mergeReco(tauCaloRoiUpdaterCfg(flags,inputRoIs=recoAcc.inputMaker().InViewRoIs,clusters = 'HLT_TopoCaloClustersLC')) + # Construct the calo-only TauJet (with BRT calibration) + from TrigTauRec.TrigTauRecConfig import trigTauRecMergedCaloOnlyMVACfg + recoAcc.mergeReco(trigTauRecMergedCaloOnlyMVACfg(flags)) - recoAcc.mergeReco(trigTauRecMergedCaloOnlyMVACfg(flags)) + # Calo ROB prefetching, to reduce number of calls to the readout from TrigGenericAlgs.TrigGenericAlgsConfig import ROBPrefetchingAlgCfg_Calo - robPrefetchAlg = ROBPrefetchingAlgCfg_Calo( flags, nameSuffix='IM_'+recoAcc.name+'_probe' if is_probe_leg else 'IM_'+recoAcc.name) + robPrefetchAlg = ROBPrefetchingAlgCfg_Calo(flags, nameSuffix=f'IM_{recoAcc.name}_probe' if is_probe_leg else f'IM_{recoAcc.name}') + + + # Selection sequence CA (seqAND), executing the recoAcc view creation alg. first, the rob prefetching alg. second, + # the reco CA (with all the reco algs) after, and the Hypo alg. at last + selAcc = SelectionCA('tauCalo', isProbe=is_probe_leg) selAcc.mergeReco(recoAcc, robPrefetchCA=robPrefetchAlg) - hypoAlg = CompFactory.TrigTauCaloHypoAlg("TauL2CaloMVAHypo", - taujets = "HLT_TrigTauRecMerged_CaloMVAOnly" ) - selAcc.addHypoAlgo(hypoAlg) + # Hypothesis: + # The Hypotools in the Hypo algorithm will execute the BRT-calibrated Tau pT cut + selAcc.addHypoAlgo(CompFactory.TrigTauCaloHypoAlg('TauCaloMVAHypoAlg', taujets='HLT_TrigTauRecMerged_CaloMVAOnly')) + + + # Menu sequence, connecting everything internally for the step, and configuring the tools for the Hypo alg. + # based on the partDict for each chain tau leg from TrigTauHypo.TrigTauHypoTool import TrigL2TauHypoToolFromDict - menuCA = MenuSequence(flags, selAcc, HypoToolGen=TrigL2TauHypoToolFromDict) - return (selAcc , menuCA) + menuSeq = MenuSequence(flags, selAcc, HypoToolGen=TrigL2TauHypoToolFromDict) + return menuSeq -@AccumulatorCache -def tauCaloMVAMenuSequenceGenCfg(flags, is_probe_leg=False): - (selAcc , menuCA) = _caloSeq(flags, is_probe_leg) - return menuCA -def _ftfCoreSeq(flags,name,is_probe_leg=False): - selAcc=SelectionCA('tau'+name+'FTF', isProbe=is_probe_leg) +#================================================================ +# 1st FTF step: FTFCore / FTFLRT +#================================================================ - newRoITool = CompFactory.ViewCreatorFetchFromViewROITool( - RoisWriteHandleKey = recordable(flags.Tracking.ActiveConfig.roi), - InViewRoIs = 'UpdatedCaloRoI') +def _ftfCoreSeq(flags, name, is_probe_leg=False): + '''1st FTF step sequence, for both the tauCore and tauLRT RoIs''' - # Resize the RoI before running the tracking to either 'tauCore' or 'tauIso' - newRoITool.doResize = True - newRoITool.RoIEtaWidth = flags.Tracking.ActiveConfig.etaHalfWidth - newRoITool.RoIPhiWidth = flags.Tracking.ActiveConfig.phiHalfWidth - newRoITool.RoIZedWidth = flags.Tracking.ActiveConfig.zedHalfWidth - + if name not in ['Core', 'LRT']: + raise ValueError('Invalid name') - from TrigGenericAlgs.TrigGenericAlgsConfig import ROBPrefetchingAlgCfg_Si + + # Create new RoIs from 'UpdatedCaloRoI', resized to 'tauCore/LRT' before running the FTF algorithms + newRoITool = CompFactory.ViewCreatorFetchFromViewROITool( + RoisWriteHandleKey=recordable(flags.Tracking.ActiveConfig.roi), + InViewRoIs='UpdatedCaloRoI', + doResize=True, + RoIEtaWidth=flags.Tracking.ActiveConfig.etaHalfWidth, + RoIPhiWidth=flags.Tracking.ActiveConfig.phiHalfWidth, + RoIZedWidth=flags.Tracking.ActiveConfig.zedHalfWidth, + ) + + + # If we're running on tauCore RoIs, we will optionally prefetch ROBs for the larger 'tauIso' RoIs ahead of time, + # to avoid retrieving more detector information again later in the next step from TriggerJobOpts.TriggerConfigFlags import ROBPrefetching + if doExtraPrefetching := name == 'Core' and ROBPrefetching.TauCoreLargeRoI in flags.Trigger.ROBPrefetchingOptions: + prefetchRoIUpdater = CompFactory.RoiUpdaterTool( + useBeamSpot=True, + NSigma=1.5, + EtaWidth=flags.Trigger.InDetTracking.tauIso.etaHalfWidth, + PhiWidth=flags.Trigger.InDetTracking.tauIso.phiHalfWidth, + ZedWidth=flags.Trigger.InDetTracking.tauIso.zedHalfWidth, + ) + + prefetchRoITool = CompFactory.ViewCreatorExtraPrefetchROITool( + RoiCreator=newRoITool, + RoiUpdater=prefetchRoIUpdater, + ExtraPrefetchRoIsKey=f'{newRoITool.RoisWriteHandleKey}_forPrefetching', + PrefetchRoIsLinkName='prefetchRoI', + MergeWithOriginal=True, + ) + + + # Reconstruction sequence CA (parOR), executting all reco algorithms within the View (from the RoI) + # in parallel whenever possible, according to their data dependencies. + # Create the EventViews from the resized RoIs, based on the 'UpdatedCaloRoI' created in the CaloMVA step + recoAcc = InViewRecoCA( + f'tauFastTrack{name}', + RoITool=prefetchRoITool if doExtraPrefetching else newRoITool, + ViewFallThrough=True, + RequireParentView=True, + mergeUsingFeature=True, + isProbe=is_probe_leg + ) + RoIs = recoAcc.inputMaker().InViewRoIs + + + # VDV with all the required collections/objects in the View + # (the VDV checks are disabled unless running with -l DEBUG) + recoAcc.addRecoAlgo(CompFactory.AthViews.ViewDataVerifier( + name=f'{recoAcc.name}RecoVDV', + DataObjects={ + ('TrigRoiDescriptorCollection', f'StoreGateSvc+{RoIs}'), + } + )) - extraPrefetching = ROBPrefetching.TauCoreLargeRoI in flags.Trigger.ROBPrefetchingOptions and 'Core' in name - if extraPrefetching: - # Add extra RoI to prefetch ROBs for the subsequent tauIso step together with ROBs for tauCore - prefetchRoIUpdater = CompFactory.RoiUpdaterTool() - prefetchRoIUpdater.useBeamSpot = True - prefetchRoIUpdater.NSigma = 1.5 - prefetchRoIUpdater.EtaWidth = flags.Trigger.InDetTracking.tauIso.etaHalfWidth - prefetchRoIUpdater.PhiWidth = flags.Trigger.InDetTracking.tauIso.phiHalfWidth - prefetchRoIUpdater.ZedWidth = flags.Trigger.InDetTracking.tauIso.zedHalfWidth - prefetchRoITool = CompFactory.ViewCreatorExtraPrefetchROITool() - prefetchRoITool.RoiCreator = newRoITool - prefetchRoITool.RoiUpdater = prefetchRoIUpdater - prefetchRoITool.ExtraPrefetchRoIsKey = str(newRoITool.RoisWriteHandleKey) + "_forPrefetching" - prefetchRoITool.PrefetchRoIsLinkName = "prefetchRoI" - prefetchRoITool.MergeWithOriginal = True - - fastInDetReco = InViewRecoCA('tauFastTrack'+name,RoITool = prefetchRoITool if extraPrefetching else newRoITool, - ViewFallThrough = True, - RequireParentView = True, - mergeUsingFeature = True, - isProbe = is_probe_leg) - - robPrefetchAlg = ROBPrefetchingAlgCfg_Si( flags, nameSuffix='IM_'+fastInDetReco.name) - if extraPrefetching: - robPrefetchAlg.RoILinkName = str(prefetchRoITool.PrefetchRoIsLinkName) + + # Reconstruction tools/algorithms: + # Fast Track Finder (FTF) sequence (the main point of this step) from TrigInDetConfig.TrigInDetConfig import trigInDetFastTrackingCfg - fastInDetReco.mergeReco(trigInDetFastTrackingCfg(flags, roisKey=fastInDetReco.inputMaker().InViewRoIs, signatureName='tau'+name)) - fastInDetReco.addRecoAlgo(CompFactory.AthViews.ViewDataVerifier( - name='VDVFastTau'+name, - DataObjects={( 'TrigRoiDescriptorCollection' , 'StoreGateSvc+{}'.format(fastInDetReco.inputMaker().InViewRoIs) ), - ( 'xAOD::TauJetContainer' , 'StoreGateSvc+HLT_TrigTauRecMerged_CaloMVAOnly')}) ) + recoAcc.mergeReco(trigInDetFastTrackingCfg(flags, roisKey=RoIs, signatureName=f'tau{name}')) - RoIs = fastInDetReco.inputMaker().InViewRoIs + # Create new RoIs for the next tracking steps (FTFIso and PrecTrack), based on the found tracks TrackCollection = flags.Tracking.ActiveConfig.trkTracks_FTF + if name == 'Core': + from TrigTauHypo.TrigTauHypoConfig import tauTrackRoiUpdaterCfg + recoAcc.mergeReco(tauTrackRoiUpdaterCfg(flags, inputRoIs=RoIs, tracks=TrackCollection)) + elif name == 'LRT': + from TrigTauHypo.TrigTauHypoConfig import tauLRTRoiUpdaterCfg + recoAcc.mergeReco(tauLRTRoiUpdaterCfg(flags, inputRoIs=RoIs, tracks=TrackCollection)) - from TrigTauHypo.TrigTauHypoConfig import tauTrackRoiUpdaterCfg,tauLRTRoiUpdaterCfg - if 'LRT' in name: - fastInDetReco.mergeReco(tauLRTRoiUpdaterCfg(flags,inputRoIs = RoIs,tracks = TrackCollection)) - else: - fastInDetReco.mergeReco(tauTrackRoiUpdaterCfg(flags,inputRoIs = RoIs,tracks = TrackCollection)) + # ROB prefetching for the Pixel and SCT data + from TrigGenericAlgs.TrigGenericAlgsConfig import ROBPrefetchingAlgCfg_Si + robPrefetchAlg = ROBPrefetchingAlgCfg_Si(flags, nameSuffix=f'IM_{recoAcc.name}') + if doExtraPrefetching: + robPrefetchAlg.RoILinkName = prefetchRoITool.PrefetchRoIsLinkName - selAcc.mergeReco(fastInDetReco, robPrefetchCA=robPrefetchAlg) - hypoAlg = CompFactory.TrigTrackPreSelHypoAlg('TrackPreSelHypoAlg_PassBy'+name, - RoIForIDReadHandleKey = 'UpdatedTrackLRTRoI' if 'LRT' in name else '', - trackcollection = flags.Tracking.ActiveConfig.trkTracks_FTF ) - selAcc.addHypoAlgo(hypoAlg) + + # Selection sequence CA (seqAND), executing the recoAcc view creation alg. first, the rob prefetching alg. second, + # the reco CA (with all the reco algs) after, and the Hypo alg. at last + selAcc = SelectionCA(f'tauFTF{name}', isProbe=is_probe_leg) + selAcc.mergeReco(recoAcc, robPrefetchCA=robPrefetchAlg) + + + # Hypothesis: + # The hypothesis algorithm/tool does not perform any action (online monitoring of tracks only) + selAcc.addHypoAlgo(CompFactory.TrigTrackPreSelHypoAlg( + f'TauFastTrackHypoAlg_PassBy{name}', + RoIForIDReadHandleKey='UpdatedTrackLRTRoI' if name == 'LRT' else '', + trackcollection=TrackCollection + )) + + + # Menu sequence, connecting everything internally for the step, and configuring the tools for the Hypo alg. + # based on the partDict for each chain tau leg from TrigTauHypo.TrigTauHypoTool import TrigTauTrackHypoToolFromDict - menuCA = MenuSequence(flags, selAcc, HypoToolGen=TrigTauTrackHypoToolFromDict) - return (selAcc , menuCA) + menuSeq = MenuSequence(flags, selAcc, HypoToolGen=TrigTauTrackHypoToolFromDict) + + return menuSeq @AccumulatorCache def tauFTFTauCoreSequenceGenCfg(flags, is_probe_leg=False): - newflags = getFlagsForActiveConfig(flags,'tauCore',log) + # Retrieve 'tauCore' RoI tracking configuration + newflags = getFlagsForActiveConfig(flags, 'tauCore', log) - name='Core' - (selAcc , menuCA) = _ftfCoreSeq(newflags,name,is_probe_leg) - return menuCA + return _ftfCoreSeq(newflags, name='Core', is_probe_leg=is_probe_leg) @AccumulatorCache def tauFTFTauLRTSequenceGenCfg(flags, is_probe_leg=False): - newflags = getFlagsForActiveConfig(flags,'tauLRT',log) - name='LRT' - (selAcc , menuCA) = _ftfCoreSeq(newflags,name,is_probe_leg) - return menuCA + # Retrieve 'tauLRT' RoI tracking configuration + newflags = getFlagsForActiveConfig(flags, 'tauLRT', log) + return _ftfCoreSeq(newflags, name='LRT', is_probe_leg=is_probe_leg) -def _ftfTauIsoSeq(flags,name,is_probe_leg=False): - selAcc=SelectionCA('tau'+name+'FTF', isProbe=is_probe_leg) - newRoITool = CompFactory.ViewCreatorFetchFromViewROITool( - RoisWriteHandleKey = recordable(flags.Tracking.ActiveConfig.roi), - InViewRoIs = 'UpdatedTrackRoI') - from TrigGenericAlgs.TrigGenericAlgsConfig import ROBPrefetchingAlgCfg_Si +#================================================================ +# 2nd FTF step: FTFIso +#================================================================ + +def _ftfTauIsoSeq(flags, name, is_probe_leg=False): + '''2nd FTF step sequence, for the tauIso RoI''' + + if name not in ['Iso']: + raise ValueError('Invalid name') - fastInDetReco = InViewRecoCA('tauFastTrack'+name,RoITool = newRoITool, - RequireParentView = True, - ViewFallThrough = True, - isProbe = is_probe_leg) - robPrefetchAlg = ROBPrefetchingAlgCfg_Si( flags, nameSuffix='IM_'+fastInDetReco.name) + # Create new RoIs from , resized to 'tauCore/LRT' before running the FTF algorithms + newRoITool = CompFactory.ViewCreatorFetchFromViewROITool( + RoisWriteHandleKey=recordable(flags.Tracking.ActiveConfig.roi), + InViewRoIs='UpdatedTrackRoI' + ) + + + # Reconstruction sequence CA (parOR), executting all reco algorithms within the View (from the RoI) + # in parallel whenever possible, according to their data dependencies. + # Create the EventViews based on the RoIs created in the previous step + recoAcc = InViewRecoCA( + f'tauFastTrack{name}', + RoITool=newRoITool, + RequireParentView=True, + ViewFallThrough=True, + isProbe=is_probe_leg + ) + RoIs = recoAcc.inputMaker().InViewRoIs + + + # VDV with all the required collections/objects in the View + # (the VDV checks are disabled unless running with -l DEBUG) + recoAcc.addRecoAlgo(CompFactory.AthViews.ViewDataVerifier( + name=f'{recoAcc.name}RecoVDV', + DataObjects={ + ('TrigRoiDescriptorCollection', f'StoreGateSvc+{RoIs}'), + ('TrackCollection', f'StoreGateSvc+{flags.Trigger.InDetTracking.tauCore.trkTracks_FTF}'), + } + )) + + + # Reconstruction tools/algorithms: + # Fast Track Finder (FTF) sequence (the main point of this step) from TrigInDetConfig.TrigInDetConfig import trigInDetFastTrackingCfg - idTracking = trigInDetFastTrackingCfg(flags, roisKey=fastInDetReco.inputMaker().InViewRoIs, signatureName='tau'+name) - fastInDetReco.mergeReco(idTracking) - fastInDetReco.addRecoAlgo(CompFactory.AthViews.ViewDataVerifier( - name='VDVFastTau'+name, - DataObjects={( 'TrigRoiDescriptorCollection' , 'StoreGateSvc+{}'.format(fastInDetReco.inputMaker().InViewRoIs) ), - ( 'xAOD::TauJetContainer' , 'StoreGateSvc+HLT_TrigTauRecMerged_CaloMVAOnly')}) ) - - selAcc.mergeReco(fastInDetReco, robPrefetchCA=robPrefetchAlg) - hypoAlg = CompFactory.TrigTrackPreSelHypoAlg('TrackPreSelHypoAlg_PassBy'+name, - trackcollection = flags.Tracking.ActiveConfig.trkTracks_FTF ) - selAcc.addHypoAlgo(hypoAlg) + recoAcc.mergeReco(trigInDetFastTrackingCfg(flags, roisKey=RoIs, signatureName=f'tau{name}')) + + + # ROB prefetching for the Pixel and SCT data + # Note: if enabled in the config flags, the tauIso RoI would have already been prefetched in the previous step + # through the 'extra prefetching' procedure, so we can skip it + from TriggerJobOpts.TriggerConfigFlags import ROBPrefetching + if name == 'Iso' and ROBPrefetching.TauCoreLargeRoI in flags.Trigger.ROBPrefetchingOptions: + robPrefetchAlg = None + else: + from TrigGenericAlgs.TrigGenericAlgsConfig import ROBPrefetchingAlgCfg_Si + robPrefetchAlg = ROBPrefetchingAlgCfg_Si(flags, nameSuffix=f'IM_{recoAcc.name}') + + # Selection sequence CA (seqAND), executing the recoAcc view creation alg. first, the rob prefetching alg. second (if enabled), + # the reco CA (with all the reco algs) after, and the Hypo alg. at last + selAcc = SelectionCA(f'tauFTF{name}', isProbe=is_probe_leg) + selAcc.mergeReco(recoAcc, robPrefetchCA=robPrefetchAlg) + + # Hypothesis: + # The hypothesis algorithm/tool does not perform any action (debug logging of number of tracks only) + selAcc.addHypoAlgo(CompFactory.TrigTrackPreSelHypoAlg( + f'TauFastTrackHypoAlg_PassBy{name}', + trackcollection=flags.Tracking.ActiveConfig.trkTracks_FTF, + )) + + + # Menu sequence, connecting everything internally for the step, and configuring the tools for the Hypo alg. + # based on the partDict for each chain tau leg from TrigTauHypo.TrigTauHypoTool import TrigTauTrackHypoToolFromDict - menuCA = MenuSequence(flags, selAcc, HypoToolGen=TrigTauTrackHypoToolFromDict) - return (selAcc , menuCA) + menuSeq = MenuSequence(flags, selAcc, HypoToolGen=TrigTauTrackHypoToolFromDict) + + return menuSeq @AccumulatorCache def tauFTFTauIsoSequenceGenCfg(flags, is_probe_leg=False): - newflags = getFlagsForActiveConfig(flags,'tauIso',log) - name = 'Iso' - (selAcc , menuCA) = _ftfTauIsoSeq(newflags,name,is_probe_leg) - return menuCA + # Retrieve 'tauIso' RoI tracking configuration + newflags = getFlagsForActiveConfig(flags, 'tauIso', log) + return _ftfTauIsoSeq(newflags, name='Iso', is_probe_leg=is_probe_leg) -def _precTrackSeq(flags,name,is_probe_leg=False): - selAcc=SelectionCA('tau'+name+'Track', isProbe=is_probe_leg) - recoAcc = InViewRecoCA(name = 'prec'+name+'Track', - RoITool = CompFactory.ViewCreatorPreviousROITool(), - InViewRoIs = 'tauFastTrack'+name, - RequireParentView = True, - ViewFallThrough = True, - isProbe = is_probe_leg) - from TrigInDetConfig.TrigInDetConfig import trigInDetPrecisionTrackingCfg - precTracking = trigInDetPrecisionTrackingCfg(flags, rois=recoAcc.inputMaker().InViewRoIs, signatureName='tau'+name) - recoAcc.mergeReco(precTracking) +#================================================================ +# Precision Tracking step +#================================================================ + +def _precTrackSeq(flags, name, is_probe_leg=False): + '''Precision Tracking step sequence, for both the tauIso and tauLRT RoIs''' + + if name not in ['Iso', 'LRT']: + raise ValueError('Invalid name') + + + # Reconstruction sequence CA (parOR), executting all reco algorithms within the View (from the RoI) + # in parallel whenever possible, according to their data dependencies. + # Create the EventViews based on the RoIs created in the previous steps (tauIso and tauLRT) + recoAcc = InViewRecoCA( + name=f'tauPrecTrack{name}', + RoITool=CompFactory.ViewCreatorPreviousROITool(), + InViewRoIs=f'tauFastTrack{name}', + RequireParentView=True, + ViewFallThrough=True, + isProbe=is_probe_leg, + ) + RoIs = recoAcc.inputMaker().InViewRoIs + - ViewVerifyTrk = CompFactory.AthViews.ViewDataVerifier( - name='VDVPrecTrkTau'+name, - DataObjects = {( 'xAOD::TrackParticleContainer' , 'StoreGateSvc+%s' % flags.Tracking.ActiveConfig.tracks_FTF ), - ( 'SG::AuxElement' , 'StoreGateSvc+EventInfo.averageInteractionsPerCrossing' ), - ( 'TrigRoiDescriptorCollection' , 'StoreGateSvc+{}'.format(recoAcc.inputMaker().InViewRoIs) ), - ( 'xAOD::TauTrackContainer' , 'StoreGateSvc+HLT_tautrack_dummy' ), - ( 'xAOD::TauJetContainer' , 'StoreGateSvc+HLT_TrigTauRecMerged_CaloMVAOnly' ), - ( 'xAOD::IParticleContainer' , 'StoreGateSvc+%s' % flags.Tracking.ActiveConfig.tracks_FTF ), - }) + # VDV with all the required collections/objects in the View + # (the VDV checks are disabled unless running with -l DEBUG) + recoAcc.addRecoAlgo(CompFactory.AthViews.ViewDataVerifier( + name=f'{recoAcc.name}RecoVDV', + DataObjects={ + ('TrigRoiDescriptorCollection', f'StoreGateSvc+{RoIs}'), + ('SG::AuxElement', 'StoreGateSvc+EventInfo.averageInteractionsPerCrossing'), + } + )) - recoAcc.addRecoAlgo(ViewVerifyTrk) - precTracks = flags.Tracking.ActiveConfig.tracks_IDTrig + # Reconstruction tools/algorithms: + # Precision Tracking sequence (track extension to the TRT and refitting) + from TrigInDetConfig.TrigInDetConfig import trigInDetPrecisionTrackingCfg + recoAcc.mergeReco(trigInDetPrecisionTrackingCfg(flags, rois=RoIs, signatureName=f'tau{name}')) + + # Vertexing sequence from TrigInDetConfig.TrigInDetConfig import trigInDetVertexingCfg - recoAcc.mergeReco(trigInDetVertexingCfg(flags,precTracks,flags.Tracking.ActiveConfig.vertex)) + recoAcc.mergeReco(trigInDetVertexingCfg(flags, flags.Tracking.ActiveConfig.tracks_IDTrig, flags.Tracking.ActiveConfig.vertex)) + + # Selection sequence CA (seqAND), executing the recoAcc view creation alg. first, + # the reco CA (with all the reco algs) after, and the Hypo alg. at last + # Note: no need to prefetch anything from Pixel or SCT, since we already prefetched + # all the necesary information in the previous step + selAcc = SelectionCA(f'tauPT{name}', isProbe=is_probe_leg) selAcc.mergeReco(recoAcc) - hypoAlg = CompFactory.TrigTrkPrecHypoAlg('TrkPrec'+name+'HypoAlg', - trackparticles = precTracks, - RoIForIDReadHandleKey = '' ) - selAcc.addHypoAlgo(hypoAlg) + + # Hypothesis: + # The hypothesis algorithm/tool does not perform any action (debug logging of number of tracks only) + selAcc.addHypoAlgo(CompFactory.TrigTrkPrecHypoAlg( + f'TauPrecTrackHypoAlg_PassBy{name}', + trackparticles=flags.Tracking.ActiveConfig.tracks_IDTrig, + RoIForIDReadHandleKey='', + )) + + + # Menu sequence, connecting everything internally for the step, and configuring the tools for the Hypo alg. + # based on the partDict for each chain tau leg from TrigTauHypo.TrigTauHypoTool import TrigTrkPrecHypoToolFromDict - menuCA = MenuSequence(flags, selAcc, HypoToolGen=TrigTrkPrecHypoToolFromDict) - return (selAcc , menuCA) + menuSeq = MenuSequence(flags, selAcc, HypoToolGen=TrigTrkPrecHypoToolFromDict) + + return menuSeq @AccumulatorCache def tauPrecTrackIsoSequenceGenCfg(flags, is_probe_leg=False): - newflags = getFlagsForActiveConfig(flags,'tauIso',log) - name = 'Iso' - (selAcc , menuCA) = _precTrackSeq(newflags,name,is_probe_leg) - return menuCA + # Retrieve 'tauIso' RoI tracking configuration + newflags = getFlagsForActiveConfig(flags, 'tauIso', log) + + return _precTrackSeq(newflags, name='Iso', is_probe_leg=is_probe_leg) @AccumulatorCache def tauPrecTrackLRTSequenceGenCfg(flags, is_probe_leg=False): - newflags = getFlagsForActiveConfig(flags,'tauLRT',log) - name = 'LRT' - (selAcc , menuCA) = _precTrackSeq(newflags,name,is_probe_leg) - return menuCA + # Retrieve 'tauLRT' RoI tracking configuration + newflags = getFlagsForActiveConfig(flags, 'tauLRT', log) + + return _precTrackSeq(newflags, name='LRT', is_probe_leg=is_probe_leg) -def _tauPrecSeq(flags,name,is_probe_leg=False): - selAcc=SelectionCA('tauPrec'+name, isProbe=is_probe_leg) +#================================================================ +# Precision Tau step +#================================================================ + +def _tauPrecisionSeq(flags, name, tau_ids: list[str], output_name=None, is_probe_leg=False): + '''Precision Tau step sequence, for all ID and reconstruction settings''' + + # 'tauIso' (and its derivatives) for all chains except for trackLRT InViewName = 'Iso' if 'LRT' not in name else 'LRT' - recoAcc = InViewRecoCA(name = 'prec'+name+'Tau', - RoITool = CompFactory.ViewCreatorPreviousROITool(), - InViewRoIs = 'tauFastTrack'+InViewName, - RequireParentView = True, - ViewFallThrough = True, - isProbe = is_probe_leg) - - ViewVerifyID = CompFactory.AthViews.ViewDataVerifier( - name='VDVPrecTau'+name, - DataObjects = {( 'TrigRoiDescriptorCollection' , 'StoreGateSvc+{}'.format(recoAcc.inputMaker().InViewRoIs)), - ( 'SG::AuxElement' , 'StoreGateSvc+EventInfo.averageInteractionsPerCrossing' ), - ( 'xAOD::VertexContainer', 'StoreGateSvc+'+flags.Tracking.ActiveConfig.vertex), - ( 'xAOD::TauTrackContainer' , 'StoreGateSvc+HLT_tautrack_dummy' ), - ( 'xAOD::TauJetContainer' , 'StoreGateSvc+HLT_TrigTauRecMerged_CaloMVAOnly' ), - ( 'xAOD::TrackParticleContainer' , 'StoreGateSvc+'+flags.Tracking.ActiveConfig.tracks_IDTrig )}) - - recoAcc.addRecoAlgo(ViewVerifyID) + # Reconstruction sequence CA (parOR), executting all reco algorithms within the View (from the RoI) + # in parallel whenever possible, according to their data dependencies. + # Create the EventViews based on the RoIs created in the previous steps (tauIso and tauLRT) + recoAcc = InViewRecoCA( + name=f'tauPrecisionReco_{name}', + RoITool=CompFactory.ViewCreatorPreviousROITool(), + InViewRoIs=f'tauFastTrack{InViewName}', + RequireParentView=True, + ViewFallThrough=True, + isProbe=is_probe_leg, + ) + RoIs = recoAcc.inputMaker().InViewRoIs + + + # VDV with all the required collections/objects in the View + # (the VDV checks are disabled unless running with -l DEBUG) + recoAcc.addRecoAlgo(CompFactory.AthViews.ViewDataVerifier( + name=f'{recoAcc.name}RecoVDV', + DataObjects={ + ('TrigRoiDescriptorCollection', f'StoreGateSvc+{RoIs}'), + ('SG::AuxElement', 'StoreGateSvc+EventInfo.averageInteractionsPerCrossing'), + ('xAOD::VertexContainer', f'StoreGateSvc+{flags.Tracking.ActiveConfig.vertex}'), + ('xAOD::TrackParticleContainer', f'StoreGateSvc+{flags.Tracking.ActiveConfig.tracks_IDTrig}'), + ('xAOD::TauTrackContainer', 'StoreGateSvc+HLT_tautrack_dummy'), + ('xAOD::TauJetContainer', 'StoreGateSvc+HLT_TrigTauRecMerged_CaloMVAOnly'), + } + )) + + + # Reconstruction tools/algorithms: + + # Precision TauJet reconstruction sequence from TrigTauRec.TrigTauRecConfig import trigTauRecMergedPrecisionMVACfg - tauPrecisionAlg = trigTauRecMergedPrecisionMVACfg(flags, name, inputRoIs = recoAcc.inputMaker().InViewRoIs, tracks = flags.Tracking.ActiveConfig.tracks_IDTrig) + recoAcc.mergeReco(trigTauRecMergedPrecisionMVACfg( + flags, + name, + inputRoIs=RoIs, + tracks=flags.Tracking.ActiveConfig.tracks_IDTrig, + )) - recoAcc.mergeReco(tauPrecisionAlg) + # Selection sequence CA (seqAND), executing the recoAcc view creation alg. first, + # the reco CA (with all the reco algs) after, and the Hypo alg. at last (no ROB prefetching) + selAcc = SelectionCA(f'tauPrecision_{name}', isProbe=is_probe_leg) selAcc.mergeReco(recoAcc) - hypoAlg = CompFactory.TrigEFTauMVHypoAlg('EFTauMVHypoAlg'+name, - taujetcontainer = 'HLT_TrigTauRecMerged_'+name) - selAcc.addHypoAlgo(hypoAlg) + + # Hypothesis: + # The Hypotools in the Hypo algorithm will execute the calibrated Tau pT cut, + # NTrack cut, NWideTrack cut, and ID WP selections (or meson variable cuts) + selAcc.addHypoAlgo(CompFactory.TrigEFTauMVHypoAlg( + f'TauPrecisionHypoAlg_{name}', + taujetcontainer=f'HLT_TrigTauRecMerged_{output_name if output_name else name}' + )) + + + # Menu sequence, connecting everything internally for the step, and configuring the tools for the Hypo alg. + # based on the partDict for each chain tau leg from TrigTauHypo.TrigTauHypoTool import TrigEFTauMVHypoToolFromDict - menuCA = MenuSequence(flags, selAcc, HypoToolGen=TrigEFTauMVHypoToolFromDict) - return (selAcc , menuCA) + menuSeq = MenuSequence(flags, selAcc, HypoToolGen=TrigEFTauMVHypoToolFromDict) + + return menuSeq @AccumulatorCache -def tauTrackTwoMVASequenceGenCfg(flags, is_probe_leg=False): - newflags = getFlagsForActiveConfig(flags,'tauIso',log) - name = 'MVA' - (selAcc , menuCA) = _tauPrecSeq(newflags,name,is_probe_leg) - return menuCA +def tauPrecisionSequenceGenCfg(flags, seq_name, output_name=None, is_probe_leg=False): + # Retrieve 'tauIso' RoI tracking configuration + newflags = getFlagsForActiveConfig(flags, 'tauIso', log) + from TriggerMenuMT.HLT.Tau.TauConfigurationTools import getPrecisionSequenceTauIDs -@AccumulatorCache -def tauTrackTwoLLPSequenceGenCfg(flags, is_probe_leg=False): - newflags = getFlagsForActiveConfig(flags,'tauIso',log) - name = 'LLP' - (selAcc , menuCA) = _tauPrecSeq(newflags,name,is_probe_leg) - return menuCA + return _tauPrecisionSeq(newflags, seq_name, tau_ids=getPrecisionSequenceTauIDs(seq_name), output_name=output_name, is_probe_leg=is_probe_leg) @AccumulatorCache -def tauTrackLRTSequenceGenCfg(flags, is_probe_leg=False): - newflags = getFlagsForActiveConfig(flags,'tauLRT',log) - name = 'LRT' - (selAcc , menuCA) = _tauPrecSeq(newflags,name,is_probe_leg) - return menuCA +def tauPrecisionLRTSequenceGenCfg(flags, seq_name, output_name=None, is_probe_leg=False): + # Retrieve 'tauLRT' RoI tracking configuration + newflags = getFlagsForActiveConfig(flags, 'tauLRT', log) + + from TriggerMenuMT.HLT.Tau.TauConfigurationTools import getPrecisionSequenceTauIDs + + return _tauPrecisionSeq(newflags, seq_name, tau_ids=getPrecisionSequenceTauIDs(seq_name), output_name=output_name, is_probe_leg=is_probe_leg) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Test/TestChainConfiguration.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Test/TestChainConfiguration.py index 7d3b6a8d202d8c870cd045b99ec3dbe7b94aad12..854acadd5b7e87f25940b52c0ffab7ff099c9a55 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Test/TestChainConfiguration.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Test/TestChainConfiguration.py @@ -9,7 +9,7 @@ from ..Config.ChainConfigurationBase import ChainConfigurationBase from TriggerMenuMT.CFtest.HLTSignatureConfig import muMenuSequence, elMenuSequence, gamMenuSequence from TriggerMenuMT.CFtest.HLTSignatureHypoTools import dimuDrComboHypoTool - +from TriggerMenuMT.HLT.Config.MenuComponents import EmptyMenuSequenceCfg #-------------------------------------------------------- # fragments generating config will be functions in new JO @@ -108,9 +108,10 @@ class TestChainConfiguration(ChainConfigurationBase): 'mv1step': ['Step_mu11'], 'mv1': ['Step_mu11', 'Step_mu21', 'Step_mu31', 'Step_mu41'], 'mv2': ['Step_mu11', 'Step_mu22', 'Step_mu31'], - 'mEmpty1': ['Step_empty1', 'Step_mu21'], + 'mEmpty1': ['Step_empty1', 'Step_mu21'], # empty step #'mEmpty1': ['Step_empty1', 'Step_mu11'], # try to break 'Step_mu21'], - 'mEmpty2': ['Step_mu11' ,'Step_empty2' ,'Step_mu32', 'Step_mu41'], + 'mEmpty2': ['Step_mu11' ,'Step_empty2' ,'Step_mu31', 'Step_mu41'], # same as mv1 with empty step + 'mEmpty3': ['Step_mu11' ,'Step_empty2' ,'Step_empty3', 'Step_mu41'], # empty step + emtpy sequence 'mv1dr' : ['Step_mu11Dr', 'Step_mu21', 'Step_mu31', 'Step_mu41'], #egamma 'ev1': ['Step_em11', 'Step_em21', 'Step_em31'], @@ -153,6 +154,9 @@ class TestChainConfiguration(ChainConfigurationBase): def Step_empty2(self, flags): return self.getEmptyStep(2,'empty') + def Step_empty3(self, flags): + return self.getStep(flags,'emptySeq', [EmptyMenuSequenceCfg], name="EmptySequence") + # Electrons def Step_em11(self, flags): diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/ItemDef.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/ItemDef.py index bc9d229efa94c20f7259fab339918ba2ee2aa750..f521adb603cb23f46c6f7067e4d8efe28296df12 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/ItemDef.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/ItemDef.py @@ -218,6 +218,9 @@ class ItemDef: MenuItem('L1_2eEM9_EMPTY' ).setLogic(d.eEM9.x(2) & cosmiccond ).setTriggerType( TT.calo ) MenuItem('L1_eEM9_UNPAIRED_ISO' ).setLogic(d.eEM9 & unpaired_isocond).setTriggerType( TT.calo ) MenuItem('L1_eEM15_EMPTY' ).setLogic(d.eEM15 & cosmiccond ).setTriggerType( TT.calo ) + # ATR-29025 + MenuItem('L1_DPHI-2eEM1_VjTE200_EMPTY' ).setLogic(d.TOPO_23DPHI32_2eEM1s & Not(d.jTE200) & cosmiccond ).setTriggerType( TT.calo ) + MenuItem('L1_DPHI-2eTAU1_VjTE200_EMPTY' ).setLogic(d.TOPO_23DPHI32_2eTAU1s & Not(d.jTE200) & cosmiccond ).setTriggerType( TT.calo ) MenuItem('L1_eEM22A' ).setLogic( d.eEM22A & physcond).setTriggerType( TT.calo ) MenuItem('L1_eEM22C' ).setLogic( d.eEM22C & physcond).setTriggerType( TT.calo ) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_HI_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_HI_run3_v1.py index 5f036c79cfa544335b417cde6f0b464ce6e47f84..af735247e18eed80dd26bd0de64757f544fe39f2 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_HI_run3_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_HI_run3_v1.py @@ -109,7 +109,7 @@ def defineMenu(): 'L1_eEM1_TRT_VjTE200', 'L1_eTAU1_TRT_VjTE200', 'L1_2eTAU1_VjTE200_EMPTY','L1_2eTAU1_VjTE200_UNPAIRED_ISO','L1_2eTAU1_VjTE200_UNPAIRED_NONISO', 'L1_eTAU1_TRT_VjTE200_EMPTY','L1_eTAU1_TRT_VjTE200_UNPAIRED_ISO','L1_eTAU1_TRT_VjTE200_UNPAIRED_NONISO', - 'L1_eEM1_TRT_VjTE50', 'L1_eTAU1_TRT_VjTE50', + 'L1_eEM1_TRT_VjTE50', 'L1_eTAU1_TRT_VjTE50', 'L1_DPHI-2eEM1_VjTE200_EMPTY', 'L1_DPHI-2eTAU1_VjTE200_EMPTY', 'L1_eTAU1', 'L1_jTAU1', diff --git a/Trigger/TriggerCommon/TriggerMenuMT/share/emu_step_menu_processing_cf.ref b/Trigger/TriggerCommon/TriggerMenuMT/share/emu_step_menu_processing_cf.ref index 4a34161110ee3b9820195996a930809d31df5205..7f255696a93d8c6d3cd44c0d9a15757ee9fa2908 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/share/emu_step_menu_processing_cf.ref +++ b/Trigger/TriggerCommon/TriggerMenuMT/share/emu_step_menu_processing_cf.ref @@ -1,11 +1,14 @@ TriggerSummaryStep1 0 0 DEBUG In summary 0 chains passed: TriggerSummaryStep2 0 0 DEBUG In summary 0 chains passed: -TriggerSummaryStep1 1 0 DEBUG In summary 6 chains passed: +TriggerSummaryStep1 1 0 DEBUG In summary 9 chains passed: +TriggerSummaryStep1 1 0 DEBUG +++ leg001_HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF ID#458301162 TriggerSummaryStep1 1 0 DEBUG +++ leg001_HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#931732457 +TriggerSummaryStep1 1 0 DEBUG +++ HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF ID#967078229 TriggerSummaryStep1 1 0 DEBUG +++ HLT_2TestChain6_mv1_L12MU5VF ID#990018667 TriggerSummaryStep1 1 0 DEBUG +++ HLT_TestChain5_ev1_L1EM3 ID#1756953305 TriggerSummaryStep1 1 0 DEBUG +++ HLT_TestChain8_ev1_L1EM3 ID#2478217953 TriggerSummaryStep1 1 0 DEBUG +++ leg000_HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#2480879969 +TriggerSummaryStep1 1 0 DEBUG +++ leg000_HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF ID#2783798395 TriggerSummaryStep1 1 0 DEBUG +++ HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#3152849864 TriggerSummaryStep2 1 0 DEBUG In summary 2 chains passed: TriggerSummaryStep2 1 0 DEBUG +++ HLT_TestChain5_ev1_L1EM3 ID#1756953305 @@ -13,100 +16,125 @@ TriggerSummaryStep2 1 0 DEBUG +++ HLT_ TriggerSummaryStep3 1 0 DEBUG In summary 2 chains passed: TriggerSummaryStep3 1 0 DEBUG +++ HLT_TestChain5_ev1_L1EM3 ID#1756953305 TriggerSummaryStep3 1 0 DEBUG +++ HLT_TestChain8_ev1_L1EM3 ID#2478217953 -TriggerSummaryStep1 2 0 DEBUG In summary 20 chains passed: +TriggerSummaryStep1 2 0 DEBUG In summary 24 chains passed: TriggerSummaryStep1 2 0 DEBUG +++ leg000_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#76736659 -TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain6_mEmpty2_L1MU5VF ID#85064081 -TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain8_mv1step_L1MU5VF ID#824940527 +TriggerSummaryStep1 2 0 DEBUG +++ leg001_HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF ID#458301162 +TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain8_mv1step_L1MU8F ID#903751990 TriggerSummaryStep1 2 0 DEBUG +++ leg001_HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#931732457 TriggerSummaryStep1 2 0 DEBUG +++ HLT_2TestChain6_mEmpty1_L12MU5VF ID#944986735 +TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF ID#967078229 TriggerSummaryStep1 2 0 DEBUG +++ HLT_2TestChain6_mv1_L12MU5VF ID#990018667 TriggerSummaryStep1 2 0 DEBUG +++ leg001_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#1384293364 TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1428614389 TriggerSummaryStep1 2 0 DEBUG +++ leg000_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1615293783 +TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain8_mEmpty2_L1MU8F ID#1700149127 TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain5_ev1_L1EM3 ID#1756953305 TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain10_mv2_L1MU8F ID#2181831554 TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain8_ev1_L1EM3 ID#2478217953 TriggerSummaryStep1 2 0 DEBUG +++ leg000_HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#2480879969 TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain10_mEmpty1_TestChain6_mEmpty1_L12MU5VF ID#2602477051 +TriggerSummaryStep1 2 0 DEBUG +++ leg000_HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF ID#2783798395 TriggerSummaryStep1 2 0 DEBUG +++ leg001_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#3149326070 TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#3152849864 TriggerSummaryStep1 2 0 DEBUG +++ leg001_HLT_TestChain10_mEmpty1_TestChain6_mEmpty1_L12MU5VF ID#3425170122 TriggerSummaryStep1 2 0 DEBUG +++ leg000_HLT_TestChain10_mEmpty1_TestChain6_mEmpty1_L12MU5VF ID#3877948827 +TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain8_mEmpty3_L1MU8F ID#4023034509 TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#4097032382 TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain8_mv1_L1MU8F ID#4120305671 -TriggerSummaryStep2 2 0 DEBUG In summary 20 chains passed: +TriggerSummaryStep2 2 0 DEBUG In summary 24 chains passed: TriggerSummaryStep2 2 0 DEBUG +++ leg000_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#76736659 -TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain6_mEmpty2_L1MU5VF ID#85064081 -TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain8_mv1step_L1MU5VF ID#824940527 +TriggerSummaryStep2 2 0 DEBUG +++ leg001_HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF ID#458301162 +TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain8_mv1step_L1MU8F ID#903751990 TriggerSummaryStep2 2 0 DEBUG +++ leg001_HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#931732457 TriggerSummaryStep2 2 0 DEBUG +++ HLT_2TestChain6_mEmpty1_L12MU5VF ID#944986735 +TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF ID#967078229 TriggerSummaryStep2 2 0 DEBUG +++ HLT_2TestChain6_mv1_L12MU5VF ID#990018667 TriggerSummaryStep2 2 0 DEBUG +++ leg001_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#1384293364 TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1428614389 TriggerSummaryStep2 2 0 DEBUG +++ leg000_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1615293783 +TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain8_mEmpty2_L1MU8F ID#1700149127 TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain5_ev1_L1EM3 ID#1756953305 TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain10_mv2_L1MU8F ID#2181831554 TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain8_ev1_L1EM3 ID#2478217953 TriggerSummaryStep2 2 0 DEBUG +++ leg000_HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#2480879969 TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain10_mEmpty1_TestChain6_mEmpty1_L12MU5VF ID#2602477051 +TriggerSummaryStep2 2 0 DEBUG +++ leg000_HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF ID#2783798395 TriggerSummaryStep2 2 0 DEBUG +++ leg001_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#3149326070 TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#3152849864 TriggerSummaryStep2 2 0 DEBUG +++ leg001_HLT_TestChain10_mEmpty1_TestChain6_mEmpty1_L12MU5VF ID#3425170122 TriggerSummaryStep2 2 0 DEBUG +++ leg000_HLT_TestChain10_mEmpty1_TestChain6_mEmpty1_L12MU5VF ID#3877948827 +TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain8_mEmpty3_L1MU8F ID#4023034509 TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#4097032382 TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain8_mv1_L1MU8F ID#4120305671 -TriggerSummaryStep3 2 0 DEBUG In summary 14 chains passed: +TriggerSummaryStep3 2 0 DEBUG In summary 19 chains passed: TriggerSummaryStep3 2 0 DEBUG +++ leg000_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#76736659 -TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain6_mEmpty2_L1MU5VF ID#85064081 +TriggerSummaryStep3 2 0 DEBUG +++ leg001_HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF ID#458301162 TriggerSummaryStep3 2 0 DEBUG +++ leg001_HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#931732457 +TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF ID#967078229 TriggerSummaryStep3 2 0 DEBUG +++ HLT_2TestChain6_mv1_L12MU5VF ID#990018667 TriggerSummaryStep3 2 0 DEBUG +++ leg001_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#1384293364 TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1428614389 TriggerSummaryStep3 2 0 DEBUG +++ leg000_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1615293783 +TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain8_mEmpty2_L1MU8F ID#1700149127 TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain5_ev1_L1EM3 ID#1756953305 +TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain10_mv2_L1MU8F ID#2181831554 TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain8_ev1_L1EM3 ID#2478217953 TriggerSummaryStep3 2 0 DEBUG +++ leg000_HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#2480879969 +TriggerSummaryStep3 2 0 DEBUG +++ leg000_HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF ID#2783798395 TriggerSummaryStep3 2 0 DEBUG +++ leg001_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#3149326070 TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#3152849864 +TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain8_mEmpty3_L1MU8F ID#4023034509 TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#4097032382 TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain8_mv1_L1MU8F ID#4120305671 -TriggerSummaryStep4 2 0 DEBUG In summary 9 chains passed: -TriggerSummaryStep4 2 0 DEBUG +++ HLT_TestChain6_mEmpty2_L1MU5VF ID#85064081 +TriggerSummaryStep4 2 0 DEBUG In summary 13 chains passed: +TriggerSummaryStep4 2 0 DEBUG +++ leg001_HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF ID#458301162 TriggerSummaryStep4 2 0 DEBUG +++ leg001_HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#931732457 +TriggerSummaryStep4 2 0 DEBUG +++ HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF ID#967078229 TriggerSummaryStep4 2 0 DEBUG +++ HLT_2TestChain6_mv1_L12MU5VF ID#990018667 TriggerSummaryStep4 2 0 DEBUG +++ HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1428614389 TriggerSummaryStep4 2 0 DEBUG +++ leg000_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1615293783 +TriggerSummaryStep4 2 0 DEBUG +++ HLT_TestChain8_mEmpty2_L1MU8F ID#1700149127 TriggerSummaryStep4 2 0 DEBUG +++ leg000_HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#2480879969 +TriggerSummaryStep4 2 0 DEBUG +++ leg000_HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF ID#2783798395 TriggerSummaryStep4 2 0 DEBUG +++ leg001_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#3149326070 TriggerSummaryStep4 2 0 DEBUG +++ HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#3152849864 +TriggerSummaryStep4 2 0 DEBUG +++ HLT_TestChain8_mEmpty3_L1MU8F ID#4023034509 TriggerSummaryStep4 2 0 DEBUG +++ HLT_TestChain8_mv1_L1MU8F ID#4120305671 -TriggerSummaryStep1 3 0 DEBUG In summary 9 chains passed: +TriggerSummaryStep1 3 0 DEBUG In summary 11 chains passed: TriggerSummaryStep1 3 0 DEBUG +++ leg000_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#76736659 -TriggerSummaryStep1 3 0 DEBUG +++ HLT_TestChain8_mv1step_L1MU5VF ID#824940527 +TriggerSummaryStep1 3 0 DEBUG +++ HLT_TestChain8_mv1step_L1MU8F ID#903751990 TriggerSummaryStep1 3 0 DEBUG +++ HLT_TestChain20_mv1_L1MU8F ID#1240516424 TriggerSummaryStep1 3 0 DEBUG +++ leg001_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#1384293364 TriggerSummaryStep1 3 0 DEBUG +++ HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1428614389 TriggerSummaryStep1 3 0 DEBUG +++ leg000_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1615293783 +TriggerSummaryStep1 3 0 DEBUG +++ HLT_TestChain8_mEmpty2_L1MU8F ID#1700149127 TriggerSummaryStep1 3 0 DEBUG +++ HLT_TestChain8_ev1_L1EM3 ID#2478217953 +TriggerSummaryStep1 3 0 DEBUG +++ HLT_TestChain8_mEmpty3_L1MU8F ID#4023034509 TriggerSummaryStep1 3 0 DEBUG +++ HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#4097032382 TriggerSummaryStep1 3 0 DEBUG +++ HLT_TestChain8_mv1_L1MU8F ID#4120305671 -TriggerSummaryStep2 3 0 DEBUG In summary 7 chains passed: +TriggerSummaryStep2 3 0 DEBUG In summary 9 chains passed: TriggerSummaryStep2 3 0 DEBUG +++ leg000_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#76736659 -TriggerSummaryStep2 3 0 DEBUG +++ HLT_TestChain8_mv1step_L1MU5VF ID#824940527 +TriggerSummaryStep2 3 0 DEBUG +++ HLT_TestChain8_mv1step_L1MU8F ID#903751990 TriggerSummaryStep2 3 0 DEBUG +++ HLT_TestChain20_mv1_L1MU8F ID#1240516424 TriggerSummaryStep2 3 0 DEBUG +++ leg001_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#1384293364 +TriggerSummaryStep2 3 0 DEBUG +++ HLT_TestChain8_mEmpty2_L1MU8F ID#1700149127 TriggerSummaryStep2 3 0 DEBUG +++ HLT_TestChain8_ev1_L1EM3 ID#2478217953 +TriggerSummaryStep2 3 0 DEBUG +++ HLT_TestChain8_mEmpty3_L1MU8F ID#4023034509 TriggerSummaryStep2 3 0 DEBUG +++ HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#4097032382 TriggerSummaryStep2 3 0 DEBUG +++ HLT_TestChain8_mv1_L1MU8F ID#4120305671 -TriggerSummaryStep3 3 0 DEBUG In summary 6 chains passed: +TriggerSummaryStep3 3 0 DEBUG In summary 8 chains passed: TriggerSummaryStep3 3 0 DEBUG +++ leg000_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#76736659 TriggerSummaryStep3 3 0 DEBUG +++ HLT_TestChain20_mv1_L1MU8F ID#1240516424 TriggerSummaryStep3 3 0 DEBUG +++ leg001_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#1384293364 +TriggerSummaryStep3 3 0 DEBUG +++ HLT_TestChain8_mEmpty2_L1MU8F ID#1700149127 TriggerSummaryStep3 3 0 DEBUG +++ HLT_TestChain8_ev1_L1EM3 ID#2478217953 +TriggerSummaryStep3 3 0 DEBUG +++ HLT_TestChain8_mEmpty3_L1MU8F ID#4023034509 TriggerSummaryStep3 3 0 DEBUG +++ HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#4097032382 TriggerSummaryStep3 3 0 DEBUG +++ HLT_TestChain8_mv1_L1MU8F ID#4120305671 -TriggerSummaryStep4 3 0 DEBUG In summary 2 chains passed: +TriggerSummaryStep4 3 0 DEBUG In summary 4 chains passed: TriggerSummaryStep4 3 0 DEBUG +++ HLT_TestChain20_mv1_L1MU8F ID#1240516424 +TriggerSummaryStep4 3 0 DEBUG +++ HLT_TestChain8_mEmpty2_L1MU8F ID#1700149127 +TriggerSummaryStep4 3 0 DEBUG +++ HLT_TestChain8_mEmpty3_L1MU8F ID#4023034509 TriggerSummaryStep4 3 0 DEBUG +++ HLT_TestChain8_mv1_L1MU8F ID#4120305671 TrigSignatureMoni INFO HLT_2TestChain4_mv1dr_L12MU5VF #1512251310 TrigSignatureMoni INFO -- #1512251310 Events 0 0 0 0 0 0 0 0 @@ -124,17 +152,17 @@ TrigSignatureMoni INFO HLT_TestC TrigSignatureMoni INFO -- #2602477051 Events 1 1 - 1 - - 1 1 TrigSignatureMoni INFO -- #2602477051 Features - 4 - - 0 TrigSignatureMoni INFO HLT_TestChain10_mv2_L1MU8F #2181831554 -TrigSignatureMoni INFO -- #2181831554 Events 2 2 1 0 0 - 0 0 -TrigSignatureMoni INFO -- #2181831554 Features 1 0 0 - 0 +TrigSignatureMoni INFO -- #2181831554 Events 2 2 1 1 1 - 1 1 +TrigSignatureMoni INFO -- #2181831554 Features 1 1 1 - 0 TrigSignatureMoni INFO HLT_TestChain20_mv1_L1MU8F #1240516424 TrigSignatureMoni INFO -- #1240516424 Events 1 1 1 1 1 1 1 1 TrigSignatureMoni INFO -- #1240516424 Features 1 1 1 1 0 TrigSignatureMoni INFO HLT_TestChain5_ev1_L1EM3 #1756953305 TrigSignatureMoni INFO -- #1756953305 Events 3 3 2 2 2 - 2 2 TrigSignatureMoni INFO -- #1756953305 Features 4 4 4 - 0 -TrigSignatureMoni INFO HLT_TestChain6_mEmpty2_L1MU5VF #85064081 -TrigSignatureMoni INFO -- #85064081 Events 1 1 1 - 1 1 1 1 -TrigSignatureMoni INFO -- #85064081 Features 3 - 3 3 0 +TrigSignatureMoni INFO HLT_TestChain6_mEmpty3_TestChain10_mv1_L12MU5VF #967078229 +TrigSignatureMoni INFO -- #967078229 Events 2 2 1 1 1 1 1 1 +TrigSignatureMoni INFO -- #967078229 Features 4 1 1 4 0 TrigSignatureMoni INFO HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F #1428614389 TrigSignatureMoni INFO -- #1428614389 Events 2 2 1 1 1 1 1 1 TrigSignatureMoni INFO -- #1428614389 Features 4 3 3 1 0 @@ -150,9 +178,15 @@ TrigSignatureMoni INFO -- #40970 TrigSignatureMoni INFO HLT_TestChain8_ev1_L1EM3 #2478217953 TrigSignatureMoni INFO -- #2478217953 Events 4 4 3 3 3 - 3 3 TrigSignatureMoni INFO -- #2478217953 Features 4 4 4 - 0 +TrigSignatureMoni INFO HLT_TestChain8_mEmpty2_L1MU8F #1700149127 +TrigSignatureMoni INFO -- #1700149127 Events 2 2 2 - 2 2 2 2 +TrigSignatureMoni INFO -- #1700149127 Features 2 - 2 2 0 +TrigSignatureMoni INFO HLT_TestChain8_mEmpty3_L1MU8F #4023034509 +TrigSignatureMoni INFO -- #4023034509 Events 2 2 2 - 2 2 2 2 +TrigSignatureMoni INFO -- #4023034509 Features 2 - 0 2 0 TrigSignatureMoni INFO HLT_TestChain8_mv1_L1MU8F #4120305671 TrigSignatureMoni INFO -- #4120305671 Events 2 2 2 2 2 2 2 2 TrigSignatureMoni INFO -- #4120305671 Features 2 2 2 2 0 -TrigSignatureMoni INFO HLT_TestChain8_mv1step_L1MU5VF #824940527 -TrigSignatureMoni INFO -- #824940527 Events 2 2 2 - - - 2 2 -TrigSignatureMoni INFO -- #824940527 Features 3 - - - 0 +TrigSignatureMoni INFO HLT_TestChain8_mv1step_L1MU8F #903751990 +TrigSignatureMoni INFO -- #903751990 Events 2 2 2 - - - 2 2 +TrigSignatureMoni INFO -- #903751990 Features 2 - - - 0 diff --git a/Trigger/TriggerCommon/TriggerMenuMT/share/emu_step_processing_cf.ref b/Trigger/TriggerCommon/TriggerMenuMT/share/emu_step_processing_cf.ref index a77344fd57d5ec1264a5adec7444825c46555cd6..e382a29d5ad4b6a7ee7cb9f9fff99215cc4b85d3 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/share/emu_step_processing_cf.ref +++ b/Trigger/TriggerCommon/TriggerMenuMT/share/emu_step_processing_cf.ref @@ -19,9 +19,8 @@ TriggerSummaryStep3 1 0 DEBUG +++ HLT_ TriggerSummaryStep3 1 0 DEBUG +++ HLT_TestChain8_ev1_L1EM3 ID#2478217953 TriggerSummaryStep1 2 0 DEBUG In summary 25 chains passed: TriggerSummaryStep1 2 0 DEBUG +++ leg000_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#76736659 -TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain6_mEmpty2_L1MU5VF ID#85064081 TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain5_ev1_TestChain8_ev1_2TestChain6_mv1_L12EM8VH_MU8F ID#612769372 -TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain8_mv1step_L1MU5VF ID#824940527 +TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain8_mv1step_L1MU8F ID#903751990 TriggerSummaryStep1 2 0 DEBUG +++ leg001_HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#931732457 TriggerSummaryStep1 2 0 DEBUG +++ HLT_2TestChain6_mEmpty1_L12MU5VF ID#944986735 TriggerSummaryStep1 2 0 DEBUG +++ HLT_2TestChain6_mv1_L12MU5VF ID#990018667 @@ -30,6 +29,7 @@ TriggerSummaryStep1 2 0 DEBUG +++ leg0 TriggerSummaryStep1 2 0 DEBUG +++ leg001_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#1384293364 TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1428614389 TriggerSummaryStep1 2 0 DEBUG +++ leg000_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1615293783 +TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain8_mEmpty2_L1MU8F ID#1700149127 TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain5_ev1_L1EM3 ID#1756953305 TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain10_mv2_L1MU8F ID#2181831554 TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain8_ev1_L1EM3 ID#2478217953 @@ -43,10 +43,10 @@ TriggerSummaryStep1 2 0 DEBUG +++ leg0 TriggerSummaryStep1 2 0 DEBUG +++ leg000_HLT_TestChain10_mEmpty1_TestChain6_mEmpty1_L12MU5VF ID#3877948827 TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#4097032382 TriggerSummaryStep1 2 0 DEBUG +++ HLT_TestChain8_mv1_L1MU8F ID#4120305671 -TriggerSummaryStep2 2 0 DEBUG In summary 20 chains passed: +TriggerSummaryStep2 2 0 DEBUG In summary 23 chains passed: TriggerSummaryStep2 2 0 DEBUG +++ leg000_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#76736659 -TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain6_mEmpty2_L1MU5VF ID#85064081 -TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain8_mv1step_L1MU5VF ID#824940527 +TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain8_mv1step_L1MU8F ID#903751990 +TriggerSummaryStep2 2 0 DEBUG +++ leg001_HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#931732457 TriggerSummaryStep2 2 0 DEBUG +++ HLT_2TestChain6_mEmpty1_L12MU5VF ID#944986735 TriggerSummaryStep2 2 0 DEBUG +++ HLT_2TestChain6_mv1_L12MU5VF ID#990018667 TriggerSummaryStep2 2 0 DEBUG +++ leg000_HLT_TestChain5_ev1_TestChain8_ev1_L12EM3 ID#1092141028 @@ -54,53 +54,63 @@ TriggerSummaryStep2 2 0 DEBUG +++ leg0 TriggerSummaryStep2 2 0 DEBUG +++ leg001_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#1384293364 TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1428614389 TriggerSummaryStep2 2 0 DEBUG +++ leg000_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1615293783 +TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain8_mEmpty2_L1MU8F ID#1700149127 TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain5_ev1_L1EM3 ID#1756953305 TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain10_mv2_L1MU8F ID#2181831554 TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain8_ev1_L1EM3 ID#2478217953 +TriggerSummaryStep2 2 0 DEBUG +++ leg000_HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#2480879969 TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain10_mEmpty1_TestChain6_mEmpty1_L12MU5VF ID#2602477051 TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain5_ev1_TestChain8_ev1_L12EM3 ID#2709794009 TriggerSummaryStep2 2 0 DEBUG +++ leg001_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#3149326070 +TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF ID#3152849864 TriggerSummaryStep2 2 0 DEBUG +++ leg001_HLT_TestChain10_mEmpty1_TestChain6_mEmpty1_L12MU5VF ID#3425170122 TriggerSummaryStep2 2 0 DEBUG +++ leg000_HLT_TestChain10_mEmpty1_TestChain6_mEmpty1_L12MU5VF ID#3877948827 TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#4097032382 TriggerSummaryStep2 2 0 DEBUG +++ HLT_TestChain8_mv1_L1MU8F ID#4120305671 -TriggerSummaryStep3 2 0 DEBUG In summary 6 chains passed: -TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain6_mEmpty2_L1MU5VF ID#85064081 +TriggerSummaryStep3 2 0 DEBUG In summary 8 chains passed: TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1428614389 TriggerSummaryStep3 2 0 DEBUG +++ leg000_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1615293783 +TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain8_mEmpty2_L1MU8F ID#1700149127 TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain5_ev1_L1EM3 ID#1756953305 +TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain10_mv2_L1MU8F ID#2181831554 TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain8_ev1_L1EM3 ID#2478217953 TriggerSummaryStep3 2 0 DEBUG +++ leg001_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#3149326070 -TriggerSummaryStep4 2 0 DEBUG In summary 4 chains passed: -TriggerSummaryStep4 2 0 DEBUG +++ HLT_TestChain6_mEmpty2_L1MU5VF ID#85064081 +TriggerSummaryStep3 2 0 DEBUG +++ HLT_TestChain8_mv1_L1MU8F ID#4120305671 +TriggerSummaryStep4 2 0 DEBUG In summary 5 chains passed: TriggerSummaryStep4 2 0 DEBUG +++ HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1428614389 TriggerSummaryStep4 2 0 DEBUG +++ leg000_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1615293783 +TriggerSummaryStep4 2 0 DEBUG +++ HLT_TestChain8_mEmpty2_L1MU8F ID#1700149127 TriggerSummaryStep4 2 0 DEBUG +++ leg001_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#3149326070 -TriggerSummaryStep1 3 0 DEBUG In summary 10 chains passed: +TriggerSummaryStep4 2 0 DEBUG +++ HLT_TestChain8_mv1_L1MU8F ID#4120305671 +TriggerSummaryStep1 3 0 DEBUG In summary 11 chains passed: TriggerSummaryStep1 3 0 DEBUG +++ leg000_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#76736659 -TriggerSummaryStep1 3 0 DEBUG +++ HLT_TestChain8_mv1step_L1MU5VF ID#824940527 +TriggerSummaryStep1 3 0 DEBUG +++ HLT_TestChain8_mv1step_L1MU8F ID#903751990 TriggerSummaryStep1 3 0 DEBUG +++ HLT_TestChain20_mv1_L1MU8F ID#1240516424 TriggerSummaryStep1 3 0 DEBUG +++ leg001_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#1384293364 TriggerSummaryStep1 3 0 DEBUG +++ HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1428614389 TriggerSummaryStep1 3 0 DEBUG +++ leg000_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#1615293783 +TriggerSummaryStep1 3 0 DEBUG +++ HLT_TestChain8_mEmpty2_L1MU8F ID#1700149127 TriggerSummaryStep1 3 0 DEBUG +++ HLT_TestChain8_ev1_L1EM3 ID#2478217953 TriggerSummaryStep1 3 0 DEBUG +++ leg001_HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F ID#3149326070 TriggerSummaryStep1 3 0 DEBUG +++ HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#4097032382 TriggerSummaryStep1 3 0 DEBUG +++ HLT_TestChain8_mv1_L1MU8F ID#4120305671 -TriggerSummaryStep2 3 0 DEBUG In summary 7 chains passed: +TriggerSummaryStep2 3 0 DEBUG In summary 8 chains passed: TriggerSummaryStep2 3 0 DEBUG +++ leg000_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#76736659 -TriggerSummaryStep2 3 0 DEBUG +++ HLT_TestChain8_mv1step_L1MU5VF ID#824940527 +TriggerSummaryStep2 3 0 DEBUG +++ HLT_TestChain8_mv1step_L1MU8F ID#903751990 TriggerSummaryStep2 3 0 DEBUG +++ HLT_TestChain20_mv1_L1MU8F ID#1240516424 TriggerSummaryStep2 3 0 DEBUG +++ leg001_HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#1384293364 +TriggerSummaryStep2 3 0 DEBUG +++ HLT_TestChain8_mEmpty2_L1MU8F ID#1700149127 TriggerSummaryStep2 3 0 DEBUG +++ HLT_TestChain8_ev1_L1EM3 ID#2478217953 TriggerSummaryStep2 3 0 DEBUG +++ HLT_TestChain6_mv2_TestChain8_ev2_L12eEM10L_MU8F ID#4097032382 TriggerSummaryStep2 3 0 DEBUG +++ HLT_TestChain8_mv1_L1MU8F ID#4120305671 -TriggerSummaryStep3 3 0 DEBUG In summary 3 chains passed: +TriggerSummaryStep3 3 0 DEBUG In summary 4 chains passed: TriggerSummaryStep3 3 0 DEBUG +++ HLT_TestChain20_mv1_L1MU8F ID#1240516424 +TriggerSummaryStep3 3 0 DEBUG +++ HLT_TestChain8_mEmpty2_L1MU8F ID#1700149127 TriggerSummaryStep3 3 0 DEBUG +++ HLT_TestChain8_ev1_L1EM3 ID#2478217953 TriggerSummaryStep3 3 0 DEBUG +++ HLT_TestChain8_mv1_L1MU8F ID#4120305671 -TriggerSummaryStep4 3 0 DEBUG In summary 2 chains passed: +TriggerSummaryStep4 3 0 DEBUG In summary 3 chains passed: TriggerSummaryStep4 3 0 DEBUG +++ HLT_TestChain20_mv1_L1MU8F ID#1240516424 +TriggerSummaryStep4 3 0 DEBUG +++ HLT_TestChain8_mEmpty2_L1MU8F ID#1700149127 TriggerSummaryStep4 3 0 DEBUG +++ HLT_TestChain8_mv1_L1MU8F ID#4120305671 TrigSignatureMoni INFO HLT_2TestChain4_mv1dr_L12MU5VF #1512251310 TrigSignatureMoni INFO -- #1512251310 Events 0 0 0 0 - - 0 0 @@ -118,8 +128,8 @@ TrigSignatureMoni INFO HLT_TestC TrigSignatureMoni INFO -- #2602477051 Events 1 1 - 1 - - 1 1 TrigSignatureMoni INFO -- #2602477051 Features - 4 - - 0 TrigSignatureMoni INFO HLT_TestChain10_mv2_L1MU8F #2181831554 -TrigSignatureMoni INFO -- #2181831554 Events 2 2 1 0 0 - 0 0 -TrigSignatureMoni INFO -- #2181831554 Features 1 0 0 - 0 +TrigSignatureMoni INFO -- #2181831554 Events 2 2 1 1 1 - 1 1 +TrigSignatureMoni INFO -- #2181831554 Features 1 1 1 - 0 TrigSignatureMoni INFO HLT_TestChain20_mv1_L1MU8F #1240516424 TrigSignatureMoni INFO -- #1240516424 Events 1 1 1 1 1 1 1 1 TrigSignatureMoni INFO -- #1240516424 Features 1 1 1 1 0 @@ -141,15 +151,12 @@ TrigSignatureMoni INFO -- #23365 TrigSignatureMoni INFO HLT_TestChain5_gv1_L1EM7 #3893303900 TrigSignatureMoni INFO -- #3893303900 Events 1 1 1 - - - 1 1 TrigSignatureMoni INFO -- #3893303900 Features 2 - - - 0 -TrigSignatureMoni INFO HLT_TestChain6_mEmpty2_L1MU5VF #85064081 -TrigSignatureMoni INFO -- #85064081 Events 1 1 1 - 1 1 1 1 -TrigSignatureMoni INFO -- #85064081 Features 3 - 3 3 0 TrigSignatureMoni INFO HLT_TestChain6_mv1_TestChain10_ev1_L12eEM10L_MU8F #1428614389 TrigSignatureMoni INFO -- #1428614389 Events 2 2 2 1 - 1 1 1 TrigSignatureMoni INFO -- #1428614389 Features 4 2 - 5 0 TrigSignatureMoni INFO HLT_TestChain6_mv1_TestChain10_mv1_L12MU5VF #3152849864 -TrigSignatureMoni INFO -- #3152849864 Events 2 2 1 0 - - 0 0 -TrigSignatureMoni INFO -- #3152849864 Features 4 3 - - 0 +TrigSignatureMoni INFO -- #3152849864 Events 2 2 1 1 - - 1 1 +TrigSignatureMoni INFO -- #3152849864 Features 4 4 - - 0 TrigSignatureMoni INFO HLT_TestChain6_mv1_TestChain5_ev1dr_L12MU5VF #3269608020 TrigSignatureMoni INFO -- #3269608020 Events 0 0 0 0 - - 0 0 TrigSignatureMoni INFO -- #3269608020 Features 0 0 - - 0 @@ -159,9 +166,12 @@ TrigSignatureMoni INFO -- #40970 TrigSignatureMoni INFO HLT_TestChain8_ev1_L1EM3 #2478217953 TrigSignatureMoni INFO -- #2478217953 Events 4 4 3 3 3 - 3 3 TrigSignatureMoni INFO -- #2478217953 Features 4 4 4 - 0 +TrigSignatureMoni INFO HLT_TestChain8_mEmpty2_L1MU8F #1700149127 +TrigSignatureMoni INFO -- #1700149127 Events 2 2 2 - 2 2 2 2 +TrigSignatureMoni INFO -- #1700149127 Features 3 - 3 3 0 TrigSignatureMoni INFO HLT_TestChain8_mv1_L1MU8F #4120305671 -TrigSignatureMoni INFO -- #4120305671 Events 2 2 2 1 1 1 1 1 -TrigSignatureMoni INFO -- #4120305671 Features 2 1 1 1 0 -TrigSignatureMoni INFO HLT_TestChain8_mv1step_L1MU5VF #824940527 -TrigSignatureMoni INFO -- #824940527 Events 2 2 2 - - - 2 2 -TrigSignatureMoni INFO -- #824940527 Features 3 - - - 0 +TrigSignatureMoni INFO -- #4120305671 Events 2 2 2 2 2 2 2 2 +TrigSignatureMoni INFO -- #4120305671 Features 2 2 2 2 0 +TrigSignatureMoni INFO HLT_TestChain8_mv1step_L1MU8F #903751990 +TrigSignatureMoni INFO -- #903751990 Events 2 2 2 - - - 2 2 +TrigSignatureMoni INFO -- #903751990 Features 3 - - - 0