diff --git a/Trigger/TrigMonitoring/TrigMETMonitoring/python/TrigMETMonitorAlgorithm.py b/Trigger/TrigMonitoring/TrigMETMonitoring/python/TrigMETMonitorAlgorithm.py index 3090bec3e6ced6ee492c8c8e50db22739ac4286f..b6b12f34db129d05445d1bc91df301ddb2cc5365 100644 --- a/Trigger/TrigMonitoring/TrigMETMonitoring/python/TrigMETMonitorAlgorithm.py +++ b/Trigger/TrigMonitoring/TrigMETMonitoring/python/TrigMETMonitorAlgorithm.py @@ -50,24 +50,79 @@ def TrigMETMonConfig(inputFlags): # without filters, all events are processed. TrigMETMonChain1Alg.TriggerChain = 'HLT_xe65_cell_L1XE50' + ### check Run2 or Run3 MT + mt_chains = True + if ( inputFlags.Trigger.EDMDecodingVersion < 3 ) : + mt_chains = False - ### use the follwoing if you run on Run2 AOD - #TrigMETMonAlg.hlt_cell_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET' - #TrigMETMonAlg.hlt_mt_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_mht' - #TrigMETMonAlg.hlt_tc_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl' - #TrigMETMonAlg.hlt_tcpufit_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl_PUC' + ### container name selection + if mt_chains: + TrigMETMonAlg.hlt_pfsum_key = 'HLT_MET_pfsum' + else: + TrigMETMonAlg.l1_jnc_key = 'LVL1EnergySumRoI' + TrigMETMonAlg.l1_jrho_key = 'LVL1EnergySumRoI' + TrigMETMonAlg.l1_gnc_key = 'LVL1EnergySumRoI' + TrigMETMonAlg.l1_grho_key = 'LVL1EnergySumRoI' + TrigMETMonAlg.l1_gjwoj_key = 'LVL1EnergySumRoI' + TrigMETMonAlg.l1_gpufit_key = 'LVL1EnergySumRoI' + TrigMETMonAlg.hlt_cell_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET' + TrigMETMonAlg.hlt_mt_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_mht' + TrigMETMonAlg.hlt_tc_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl' + TrigMETMonAlg.hlt_tc_em_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl' + TrigMETMonAlg.hlt_tcpufit_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl_PUC' + TrigMETMonAlg.hlt_trkmht_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl' + TrigMETMonAlg.hlt_pfsum_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl' + TrigMETMonAlg.hlt_pfsum_vssk_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl' + TrigMETMonAlg.hlt_pfsum_cssk_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl' + TrigMETMonAlg.hlt_pfopufit_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl' + TrigMETMonAlg.hlt_cvfpufit_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl' + TrigMETMonAlg.hlt_mhtpufit_pf_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl' + TrigMETMonAlg.hlt_mhtpufit_em_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl' - ### use the follwoing if you run on older Run3 AOD - #TrigMETMonAlg.hlt_tcpufit_key = 'HLT_MET_tcPufit' - #TrigMETMonAlg.hlt_trkmht_key = 'HLT_MET_mht' - - ### set chain names - ### These are the active chains as of 01 April 2020 for testing - #TrigMETMonAlg.L1Chain1 = 'L1_XE10' - #TrigMETMonAlg.HLTChain1 = 'HLT_xe65_cell_L1XE50' - #TrigMETMonAlg.HLTChain2 = 'HLT_xe100_tcpufit_L1XE50' - TrigMETMonAlg.HLTChain2 = 'HLT_xe100_trkmht_L1XE50' - #TrigMETMonAlg.HLTChain2 = 'HLT_xe100_pfsum_L1XE50' + ### chain name selection + ### these are default chains ###### + #TrigMETMonAlg.L1Chain02 = 'L1_XE50' + #TrigMETMonAlg.L1Chain02 = 'L1_jXENC50' + #TrigMETMonAlg.L1Chain03 = 'L1_jXERHO50' + #TrigMETMonAlg.L1Chain04 = 'L1_gXENC50' + #TrigMETMonAlg.L1Chain05 = 'L1_gXERHO50' + #TrigMETMonAlg.L1Chain06 = 'L1_gXEJWOJ50' + #TrigMETMonAlg.L1Chain07 = 'L1_gXEPUFIT50' + #TrigMETMonAlg.HLTChain01 = 'HLT_xe65_cell_L1XE50' + #TrigMETMonAlg.HLTChain02 = 'HLT_xe100_mht_L1XE50' + #TrigMETMonAlg.HLTChain03 = 'HLT_xe100_tcpufit_L1XE50' + #TrigMETMonAlg.HLTChain04 = 'HLT_xe100_trkmht_L1XE50' + #TrigMETMonAlg.HLTChain05 = 'HLT_xe100_pfsum_L1XE50' + #TrigMETMonAlg.HLTChain06 = 'HLT_xe100_pfopufit_L1XE50' + #TrigMETMonAlg.HLTChain07 = 'HLT_xe100_cvfpufit_L1XE50' + #TrigMETMonAlg.HLTChain08 = 'HLT_xe100_mhtpufit_em_subjesgscIS_L1XE50' + #TrigMETMonAlg.HLTChain09 = 'HLT_xe100_mhtpufit_pf_subjesgscIS_L1XE50' + #TrigMETMonAlg.HLTChain10 = 'HLT_xe100_pfsum_cssk_L1XE50' + #TrigMETMonAlg.HLTChain11 = 'HLT_xe100_pfsum_vssk_L1XE50' + #TrigMETMonAlg.HLTChain12 = 'HLT_xe65_cell_xe110_tcpuft_L1XE50' + #TrigMETMonAlg.HLTChain13 = 'HLT_xe100_trkmht_xe85_tcpufit_xe65_cell_L1XE50' + #TrigMETMonAlg.HLTChain14 = 'HLT_xe95_trkmht_xe90_tcpufit_xe75_cell_L1XE50' + if mt_chains: + TrigMETMonAlg.HLTChain02 = 'HLT_xe110_mht_L1XE50' + TrigMETMonAlg.HLTChain03 = 'HLT_xe110_tcpufit_L1XE50' + TrigMETMonAlg.HLTChain05 = 'HLT_xe110_pfsum_L1XE50' + TrigMETMonAlg.HLTChain10 = 'HLT_xe110_pfsum_cssk_L1XE50' + TrigMETMonAlg.HLTChain11 = 'HLT_xe110_pfsum_vssk_L1XE50' + else: + TrigMETMonAlg.L1Chain02 = 'L1_XE10' + TrigMETMonAlg.L1Chain03 = 'L1_XE30' + TrigMETMonAlg.L1Chain04 = 'L1_XE55' + TrigMETMonAlg.L1Chain05 = 'L1_XE60' + TrigMETMonAlg.L1Chain06 = 'L1_XE70' + TrigMETMonAlg.L1Chain07 = 'L1_XE75' + TrigMETMonAlg.HLTChain01 = 'HLT_xe70_mht_L1XE50' + TrigMETMonAlg.HLTChain02 = 'HLT_xe90_mht_L1XE50' + TrigMETMonAlg.HLTChain03 = 'HLT_xe110_mht_L1XE50' + TrigMETMonAlg.HLTChain04 = 'HLT_xe90_pufit_L1XE50' + TrigMETMonAlg.HLTChain05 = 'HLT_xe100_pufit_L1XE50' + TrigMETMonAlg.HLTChain06 = 'HLT_xe110_pufit_L1XE50' + TrigMETMonAlg.HLTChain07 = 'HLT_xe110_pufit_xe65_L1XE50' + TrigMETMonAlg.HLTChain08 = 'HLT_xe110_pufit_xe70_L1XE50' ### STEP 4 ### @@ -113,17 +168,19 @@ def TrigMETMonConfig(inputFlags): sumet_bins_log=20 #sumEt_log sumet_min_log=-1.875 sumet_max_log=4.125 - sume_bins=153 #sumE - sume_min=-27.0 - sume_max=24003.0 - sume_bins_log=40 #sumE_log - sume_min_log=-1.875 - sume_max_log=6.125 + ## These bin settings are for future use. + ## commented to avoid compiler warning. + #sume_bins=153 #sumE + #sume_min=-27.0 + #sume_max=24003.0 + #sume_bins_log=40 #sumE_log + #sume_min_log=-1.875 + #sume_max_log=6.125 phi_bins=100 # phi phi_bins_2d=24 # phi phi_min=-3.1416 phi_max=3.1416 - eta_bins=100 # eta + #eta_bins=100 # eta eta_bins_2d=24# eta eta_min=-4.8 eta_max=4.8 @@ -141,286 +198,67 @@ def TrigMETMonConfig(inputFlags): metGroup.defineHistogram('offline_sumEt',title='Offline sumE_{T};sumE_{T} [GeV];Events', path='Expert/Offline',xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max) ## L1 - metGroup.defineHistogram('L1_Ex',title='L1 Missing E_{x};E_{x} [GeV];Events', - path='Shifter/L1',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('L1_Ey',title='L1 Missing E_{y};E_{y} [GeV];Events', - path='Shifter/L1',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('L1_Et',title='L1 Missing E_{T};E_{T} [GeV];Events', - path='Shifter/L1',xbins=et_bins,xmin=et_min,xmax=et_max) - ## HLT cell - metGroup.defineHistogram('cell_Ex',title='cell Missing E_{x};E_{x} [GeV];Events', - path='Shifter/cell',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('cell_Ex_log',title='cell Missing E_{x} log;sgn(E_{x}) log_{10}(E_{x}/GeV);Events', - path='Shifter/cell',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('cell_Ey',title='cell Missing E_{y};E_{y} [GeV];Events', - path='Shifter/cell',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('cell_Ey_log',title='cell Missing E_{y} log;sgn(E_{y}) log_{10}(E_{y}/GeV);Events', - path='Shifter/cell',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('cell_Et',title='cell Missing E_{T};E_{T} [GeV];Events', - path='Shifter/cell',xbins=et_bins,xmin=et_min,xmax=et_max) - metGroup.defineHistogram('cell_Et_log',title='cell Missing E_{T} log;log_{10}(E_{T}/GeV);Events', - path='Shifter/cell',xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log) - metGroup.defineHistogram('cell_sumEt',title='cell sumEt;sumEt [GeV];Events', - path='Shifter/cell',xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max) - metGroup.defineHistogram('cell_sumEt_log',title='cell sumEt log;log_{10}(sumEt/GeV);Events', - path='Shifter/cell',xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log) - metGroup.defineHistogram('cell_phi',title='cell #phi;#phi;Events', - path='Shifter/cell',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - metGroup.defineHistogram('cell_phi;cell_phi_etweight', title='cell #phi (etweighted);#phi;E_{T} weighted events', - weight='cell_Et', - path='Shifter/cell',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - metGroup.defineHistogram('cell_eta,cell_phi;cell_eta_phi', type='TH2F', title='cell #eta - #phi;#eta;#phi', - path='Shifter/cell', - xbins=eta_bins_2d,xmin=eta_min,xmax=eta_max,ybins=phi_bins_2d,ymin=phi_min,ymax=phi_max) - metGroup.defineHistogram('cell_eta,cell_phi;cell_eta_phi_etweight', type='TH2F', title='cell #eta - #phi (etweighted);#eta;#phi', - weight='cell_Et', - path='Shifter/cell', - xbins=eta_bins_2d,xmin=eta_min,xmax=eta_max,ybins=phi_bins_2d,ymin=phi_min,ymax=phi_max) - ## HLT trkmht - metGroup.defineHistogram('trkmht_Ex',title='trkmht Missing E_{x};E_{x} [GeV];Events', - path='Shifter/trkmht',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('trkmht_Ex_log',title='trkmht Missing E_{x} log;sgn(E_{x}) log_{10}(E_{x}/GeV);Events', - path='Shifter/trkmht',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('trkmht_Ey',title='trkmht Missing E_{y};E_{y} [GeV];Events', - path='Shifter/trkmht',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('trkmht_Ey_log',title='trkmht Missing E_{y} log;sgn(E_{y}) log_{10}(E_{y}/GeV);Events', - path='Shifter/trkmht',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('trkmht_Et',title='trkmht Missing E_{T};E_{T} [GeV];Events', - path='Shifter/trkmht',xbins=et_bins,xmin=et_min,xmax=et_max) - metGroup.defineHistogram('trkmht_Et_log',title='trkmht Missing E_{T} log;log_{10}(E_{T}/GeV);Events', - path='Shifter/trkmht',xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log) - metGroup.defineHistogram('trkmht_sumEt',title='trkmht sumEt;sumEt [GeV];Events', - path='Shifter/trkmht',xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max) - metGroup.defineHistogram('trkmht_sumEt_log',title='trkmht sumEt log;log_{10}(sumEt/GeV);Events', - path='Shifter/trkmht',xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log) - metGroup.defineHistogram('trkmht_phi',title='trkmht #phi;#phi;Events', - path='Shifter/trkmht',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - metGroup.defineHistogram('trkmht_phi;trkmht_phi_etweight', title='trkmht #phi (etweighted);#phi;E_{T} weighted events', - weight='trkmht_Et', - path='Shifter/trkmht',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - ## HLT tcpufit - metGroup.defineHistogram('tcpufit_Ex',title='tcpufit Missing E_{x};E_{x} [GeV];Events', - path='Shifter/tcpufit',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('tcpufit_Ex_log',title='tcpufit Missing E_{x} log;sgn(E_{x}) log_{10}(E_{x}/GeV);Events', - path='Shifter/tcpufit',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('tcpufit_Ey',title='tcpufit Missing E_{y};E_{y} [GeV];Events', - path='Shifter/tcpufit',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('tcpufit_Ey_log',title='tcpufit Missing E_{y} log;sgn(E_{y}) log_{10}(E_{y}/GeV);Events', - path='Shifter/tcpufit',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('tcpufit_Ez',title='tcpufit Missing E_{z};E_{z} [GeV];Events', - path='Shifter/tcpufit',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('tcpufit_Ez_log',title='tcpufit Missing E_{z} log;sgn(E_{z}) log_{10}(E_{x}/GeV);Events', - path='Shifter/tcpufit',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('tcpufit_Et',title='tcpufit Missing E_{T};E_{T} [GeV];Events', - path='Shifter/tcpufit',xbins=et_bins,xmin=et_min,xmax=et_max) - metGroup.defineHistogram('tcpufit_Et_log',title='tcpufit Missing E_{T} log;log_{10}(E_{T}/GeV);Events', - path='Shifter/tcpufit',xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log) - metGroup.defineHistogram('tcpufit_sumEt',title='tcpufit sumEt;sumEt [GeV];Events', - path='Shifter/tcpufit',xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max) - metGroup.defineHistogram('tcpufit_sumEt_log',title='tcpufit sumEt log;log_{10}(sumEt/GeV);Events', - path='Shifter/tcpufit',xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log) - metGroup.defineHistogram('tcpufit_sumEt;tcpufit_sumEt_etweight',title='tcpufit sumEt (etweighted);sumEt [GeV];E_{T} weighted events', - weight='tcpufit_Et', - path='Shifter/tcpufit',xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max) - metGroup.defineHistogram('tcpufit_sumE',title='tcpufit sumE;sumE [GeV];Events', - path='Shifter/tcpufit',xbins=sume_bins,xmin=sume_min,xmax=sume_max) - metGroup.defineHistogram('tcpufit_sumE_log',title='tcpufit sumE log;log_{10}(sumE/GeV);Events', - path='Shifter/tcpufit',xbins=sume_bins_log,xmin=sume_min_log,xmax=sume_max_log) - metGroup.defineHistogram('tcpufit_eta',title='tcpufit #eta;#eta;Events', - path='Shifter/tcpufit',xbins=eta_bins,xmin=eta_min,xmax=eta_max) - metGroup.defineHistogram('tcpufit_phi',title='tcpufit #phi;#phi;Events', - path='Shifter/tcpufit',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - metGroup.defineHistogram('tcpufit_phi;tcpufit_phi_etweight', title='tcpufit #phi (etweighted);#phi;E_{T} weighted events', - weight='tcpufit_Et', - path='Shifter/tcpufit',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - metGroup.defineHistogram('tcpufit_eta,tcpufit_phi;tcpufit_eta_phi', type='TH2F', title='tcpufit #eta - #phi;#eta;#phi', - path='Shifter/tcpufit', + algsL1 = ["roi", "jnc", "jrho", "gnc", "grho", "gjwoj", "gpufit"] + for alg in algsL1: + metGroup.defineHistogram('L1_{}_Ex'.format(alg),title='L1_{} Missing Ex;Ex [GeV];Events'.format(alg), + path='Shifter/L1_{}'.format(alg),xbins=ec_bins,xmin=ec_min,xmax=ec_max) + metGroup.defineHistogram('L1_{}_Ey'.format(alg),title='L1_{} Missing Ey;Ey [GeV];Events'.format(alg), + path='Shifter/L1_{}'.format(alg),xbins=ec_bins,xmin=ec_min,xmax=ec_max) + metGroup.defineHistogram('L1_{}_Et'.format(alg),title='L1_{} Missing Et;Et [GeV];Events'.format(alg), + path='Shifter/L1_{}'.format(alg),xbins=et_bins,xmin=et_min,xmax=et_max) + metGroup.defineHistogram('L1_{}_sumEt'.format(alg),title='L1_{} sumEt;sumEt [GeV];Events'.format(alg), + path='Shifter/L1_{}'.format(alg),xbins=et_bins,xmin=et_min,xmax=et_max) + ## HLT + algsHLT = ["cell", "tcpufit", "trkmht", "mht", "tc_em", "pfsum", "pfsum_cssk", "pfsum_vssk", "pfopufit", "cvfpufit", "mhtpufit_pf", "mhtpufit_em"] + for alg in algsHLT: + metGroup.defineHistogram('{}_Ex'.format(alg),title='{} Missing Ex;Ex [GeV];Events'.format(alg), + path='Shifter/{}'.format(alg),xbins=ec_bins,xmin=ec_min,xmax=ec_max) + metGroup.defineHistogram('{}_Ex_log'.format(alg),title='{} Missing Ex log;sgn(Ex) log(Ex/GeV);Events'.format(alg), + path='Shifter/{}'.format(alg),xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) + metGroup.defineHistogram('{}_Ey'.format(alg),title='{} Missing Ey;Ey [GeV];Events'.format(alg), + path='Shifter/{}'.format(alg),xbins=ec_bins,xmin=ec_min,xmax=ec_max) + metGroup.defineHistogram('{}_Ey_log',title='{} Missing Ey log;sgn(Ey) log(Ey/GeV);Events'.format(alg), + path='Shifter/{}'.format(alg),xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) + metGroup.defineHistogram('{}_Et'.format(alg),title='{} Missing Et;Et [GeV];Events'.format(alg), + path='Shifter/{}'.format(alg),xbins=et_bins,xmin=et_min,xmax=et_max) + metGroup.defineHistogram('{}_Et_log'.format(alg),title='{} Missing Et log;log(Et/GeV);Events'.format(alg), + path='Shifter/{}'.format(alg),xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log) + metGroup.defineHistogram('{}_sumEt'.format(alg),title='{} sumEt;sumEt [GeV];Events'.format(alg), + path='Shifter/{}'.format(alg),xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max) + metGroup.defineHistogram('{}_sumEt_log'.format(alg),title='{} sumEt log;log(sumEt/GeV);Events'.format(alg), + path='Shifter/{}'.format(alg),xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log) + metGroup.defineHistogram('{}_phi'.format(alg),title='{} #phi;#phi;Events'.format(alg), + path='Shifter/{}'.format(alg),xbins=phi_bins,xmin=phi_min,xmax=phi_max) + metGroup.defineHistogram('{}_phi;{}_phi_etweight'.format(alg,alg), title='{} #phi (etweighted);#phi;Et weighted events'.format(alg), + weight='{}_Et'.format(alg), + path='Shifter/{}'.format(alg),xbins=phi_bins,xmin=phi_min,xmax=phi_max) + + ## HLT 2d eta-phi histos + algsHLT2d = ["cell", "tcpufit"] + for alg in algsHLT2d: + metGroup.defineHistogram('{}_eta,{}_phi;{}_eta_phi'.format(alg,alg,alg), type='TH2F', title='{} #eta - #phi;#eta;#phi'.format(alg), + path='Shifter/{}'.format(alg), xbins=eta_bins_2d,xmin=eta_min,xmax=eta_max,ybins=phi_bins_2d,ymin=phi_min,ymax=phi_max) - metGroup.defineHistogram('tcpufit_eta,tcpufit_phi;tcpufit_eta_phi_etweight', type='TH2F', title='tcpufit #eta - #phi (etweighted);#eta;#phi', - weight='tcpufit_Et', - path='Shifter/tcpufit', + metGroup.defineHistogram('{}_eta,{}_phi;{}_eta_phi_etweight'.format(alg,alg,alg), type='TH2F', title='{} #eta - #phi (etweighted);#eta;#phi'.format(alg), + weight='{}_Et'.format(alg), + path='Shifter/{}'.format(alg), xbins=eta_bins_2d,xmin=eta_min,xmax=eta_max,ybins=phi_bins_2d,ymin=phi_min,ymax=phi_max) - ## Efficiency - metGroup.defineHistogram('offline_Et,pass_L11;L11_eff', type='TProfile',title='L1 efficiency;offline E_{T} [GeV];Efficiency', + ## L1 efficiency + effL1 = ["01", "02", "03", "04", "05", "06", "07"] + for eff in effL1: + metGroup.defineHistogram('offline_Et,pass_L1{};L1{}_eff'.format(eff,eff), type='TProfile',title='L1{} efficiency;offline Et [GeV];Efficiency'.format(eff), path='Shifter/eff',xbins=eff_bins,xmin=eff_min,xmax=eff_max) - metGroup.defineHistogram('offline_Et,pass_HLT1;HLT1_eff', type='TProfile',title='HLT1 efficiency;offline E_{T} [GeV];Efficiency', + ## HLT efficiency + effHLT = ["01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14"] + for eff in effHLT: + metGroup.defineHistogram('offline_Et,pass_HLT{};HLT{}_eff'.format(eff,eff), type='TProfile',title='HLT{} efficiency;offline Et [GeV];Efficiency'.format(eff), path='Shifter/eff',xbins=eff_bins,xmin=eff_min,xmax=eff_max) - metGroup.defineHistogram('offline_Et,pass_HLT2;HLT2_eff', type='TProfile',title='HLT2 efficiency;offline E_{T} [GeV];Efficiency', - path='Shifter/eff',xbins=eff_bins,xmin=eff_min,xmax=eff_max) - ## HLT mht - metGroup.defineHistogram('mht_Ex',title='mht Missing E_{x};E_{x} [GeV];Events', - path='Shifter/mht',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('mht_Ex_log',title='mht Missing E_{x} log;sgn(E_{x}) log_{10}(E_{x}/GeV);Events', - path='Shifter/mht',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('mht_Ey',title='mht Missing E_{y};E_{y} [GeV];Events', - path='Shifter/mht',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('mht_Ey_log',title='mht Missing E_{y} log;sgn(E_{y}) log_{10}(E_{y}/GeV);Events', - path='Shifter/mht',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('mht_Et', title='mht Missing E_{T};E_{T} [GeV];Events', - path='Shifter/mht',xbins=et_bins,xmin=et_min,xmax=et_max) - metGroup.defineHistogram('mht_Et_log',title='mht Missing E_{T} log;log_{10}(E_{T}/GeV);Events', - path='Shifter/mht',xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log) - metGroup.defineHistogram('mht_sumEt',title='mht sumEt;sumEt [GeV];Events', - path='Shifter/mht',xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max) - metGroup.defineHistogram('mht_sumEt_log',title='mht sumEt log;log_{10}(sumEt/GeV);Events', - path='Shifter/mht',xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log) - metGroup.defineHistogram('mht_phi',title='mht #phi;#phi;Events', - path='Shifter/mht',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - metGroup.defineHistogram('mht_phi;mht_phi_etweight', title='mht #phi (etweighted);#phi;E_{T} weighted events', - weight='mht_Et', - path='Shifter/mht',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - metGroup.defineHistogram('mht_eta,cell_phi;mht_eta_phi', type='TH2F', title='mht #eta - #phi;#eta;#phi', - path='Shifter/mht', - xbins=eta_bins_2d,xmin=eta_min,xmax=eta_max,ybins=phi_bins_2d,ymin=phi_min,ymax=phi_max) - metGroup.defineHistogram('mht_eta,mht_phi;mht_eta_phi_etweight', type='TH2F', title='mht #eta - #phi (etweighted);#eta;#phi', - weight='mht_Et', - path='Shifter/mht', - xbins=eta_bins_2d,xmin=eta_min,xmax=eta_max,ybins=phi_bins_2d,ymin=phi_min,ymax=phi_max) - ## HLT tc_em - metGroup.defineHistogram('tc_em_Ex',title='tc_em Missing E_{x};E_{x} [GeV];Events', - path='Shifter/tc_em',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('tc_em_Ex_log',title='tc_em Missing E_{x} log;sgn(E_{x}) log_{10}(E_{x}/GeV);Events', - path='Shifter/tc_em',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('tc_em_Ey',title='tc_em Missing E_{y};E_{y} [GeV];Events', - path='Shifter/tc_em',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('tc_em_Ey_log',title='tc_em Missing E_{y} log;sgn(E_{y}) log_{10}(E_{y}/GeV);Events', - path='Shifter/tc_em',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('tc_em_Et', title='tc_em Missing E_{T};E_{T} [GeV];Events', - path='Shifter/tc_em',xbins=et_bins,xmin=et_min,xmax=et_max) - metGroup.defineHistogram('tc_em_Et_log',title='tc_em Missing E_{T} log;log_{10}(E_{T}/GeV);Events', - path='Shifter/tc_em',xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log) - metGroup.defineHistogram('tc_em_sumEt',title='tc_em sumEt;sumEt [GeV];Events', - path='Shifter/tc_em',xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max) - metGroup.defineHistogram('tc_em_sumEt_log',title='tc_em sumEt log;log_{10}(sumEt/GeV);Events', - path='Shifter/tc_em',xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log) - metGroup.defineHistogram('tc_em_phi',title='tc_em #phi;#phi;Events', - path='Shifter/tc_em',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - metGroup.defineHistogram('tc_em_phi;tc_em_phi_etweight', title='tc_em #phi (etweighted);#phi;E_{T} weighted events', - weight='tc_em_Et', - path='Shifter/tc_em',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - metGroup.defineHistogram('tc_em_eta,cell_phi;tc_em_eta_phi', type='TH2F', title='tc_em #eta - #phi;#eta;#phi', - path='Shifter/tc_em', - xbins=eta_bins_2d,xmin=eta_min,xmax=eta_max,ybins=phi_bins_2d,ymin=phi_min,ymax=phi_max) - metGroup.defineHistogram('tc_em_eta,tc_em_phi;tc_em_eta_phi_etweight', type='TH2F', title='tc_em #eta - #phi (etweighted);#eta;#phi', - weight='tc_em_Et', - path='Shifter/tc_em', - xbins=eta_bins_2d,xmin=eta_min,xmax=eta_max,ybins=phi_bins_2d,ymin=phi_min,ymax=phi_max) - ## HLT pfsum - metGroup.defineHistogram('pfsum_Ex',title='pfsum Missing E_{x};E_{x} [GeV];Events', - path='Shifter/pfsum',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('pfsum_Ex_log',title='pfsum Missing E_{x} log;sgn(E_{x}) log_{10}(E_{x}/GeV);Events', - path='Shifter/pfsum',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('pfsum_Ey',title='pfsum Missing E_{y};E_{y} [GeV];Events', - path='Shifter/pfsum',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('pfsum_Ey_log',title='pfsum Missing E_{y} log;sgn(E_{y}) log_{10}(E_{y}/GeV);Events', - path='Shifter/pfsum',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('pfsum_Et', title='pfsum Missing E_{T};E_{T} [GeV];Events', - path='Shifter/pfsum',xbins=et_bins,xmin=et_min,xmax=et_max) - metGroup.defineHistogram('pfsum_Et_log',title='pfsum Missing E_{T} log;log_{10}(E_{T}/GeV);Events', - path='Shifter/pfsum',xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log) - metGroup.defineHistogram('pfsum_sumEt',title='pfsum sumEt;sumEt [GeV];Events', - path='Shifter/pfsum',xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max) - metGroup.defineHistogram('pfsum_sumEt_log',title='pfsum sumEt log;log_{10}(sumEt/GeV);Events', - path='Shifter/pfsum',xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log) - metGroup.defineHistogram('pfsum_phi',title='pfsum #phi;#phi;Events', - path='Shifter/pfsum',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - metGroup.defineHistogram('pfsum_phi;pfsum_phi_etweight', title='pfsum #phi (etweighted);#phi;E_{T} weighted events', - weight='pfsum_Et', - path='Shifter/pfsum',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - ## HLT pfopufit - metGroup.defineHistogram('pfopufit_Ex',title='pfopufit Missing E_{x};E_{x} [GeV];Events', - path='Shifter/pfopufit',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('pfopufit_Ex_log',title='pfopufit Missing E_{x} log;sgn(E_{x}) log_{10}(E_{x}/GeV);Events', - path='Shifter/pfopufit',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('pfopufit_Ey',title='pfopufit Missing E_{y};E_{y} [GeV];Events', - path='Shifter/pfopufit',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('pfopufit_Ey_log',title='pfopufit Missing E_{y} log;sgn(E_{y}) log_{10}(E_{y}/GeV);Events', - path='Shifter/pfopufit',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('pfopufit_Et', title='pfopufit Missing E_{T};E_{T} [GeV];Events', - path='Shifter/pfopufit',xbins=et_bins,xmin=et_min,xmax=et_max) - metGroup.defineHistogram('pfopufit_Et_log',title='pfopufit Missing E_{T} log;log_{10}(E_{T}/GeV);Events', - path='Shifter/pfopufit',xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log) - metGroup.defineHistogram('pfopufit_sumEt',title='pfopufit sumEt;sumEt [GeV];Events', - path='Shifter/pfopufit',xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max) - metGroup.defineHistogram('pfopufit_sumEt_log',title='pfopufit sumEt log;log_{10}(sumEt/GeV);Events', - path='Shifter/pfopufit',xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log) - metGroup.defineHistogram('pfopufit_phi',title='pfopufit #phi;#phi;Events', - path='Shifter/pfopufit',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - metGroup.defineHistogram('pfopufit_phi;pfopufit_phi_etweight', title='pfopufit #phi (etweighted);#phi;E_{T} weighted events', - weight='pfopufit_Et', - path='Shifter/pfopufit',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - ## cvfpufit - metGroup.defineHistogram('cvfpufit_Ex',title='cvfpufit Missing E_{x};E_{x} [GeV];Events', - path='Shifter/cvfpufit',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('cvfpufit_Ex_log',title='cvfpufit Missing E_{x} log;sgn(E_{x}) log_{10}(E_{x}/GeV);Events', - path='Shifter/cvfpufit',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('cvfpufit_Ey',title='cvfpufit Missing E_{y};E_{y} [GeV];Events', - path='Shifter/cvfpufit',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('cvfpufit_Ey_log',title='cvfpufit Missing E_{y} log;sgn(E_{y}) log_{10}(E_{y}/GeV);Events', - path='Shifter/cvfpufit',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('cvfpufit_Et', title='cvfpufit Missing E_{T};E_{T} [GeV];Events', - path='Shifter/cvfpufit',xbins=et_bins,xmin=et_min,xmax=et_max) - metGroup.defineHistogram('cvfpufit_Et_log',title='cvfpufit Missing E_{T} log;log_{10}(E_{T}/GeV);Events', - path='Shifter/cvfpufit',xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log) - metGroup.defineHistogram('cvfpufit_sumEt',title='cvfpufit sumEt;sumEt [GeV];Events', - path='Shifter/cvfpufit',xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max) - metGroup.defineHistogram('cvfpufit_sumEt_log',title='cvfpufit sumEt log;log_{10}(sumEt/GeV);Events', - path='Shifter/cvfpufit',xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log) - metGroup.defineHistogram('cvfpufit_phi',title='cvfpufit #phi;#phi;Events', - path='Shifter/cvfpufit',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - metGroup.defineHistogram('cvfpufit_phi;cvfpufit_phi_etweight', title='cvfpufit #phi (etweighted);#phi;E_{T} weighted events', - weight='cvfpufit_Et', - path='Shifter/cvfpufit',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - ## mhtpufit_pf - metGroup.defineHistogram('mhtpufit_pf_Ex',title='mhtpufit_pf Missing E_{x};E_{x} [GeV];Events', - path='Shifter/mhtpufit_pf',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('mhtpufit_pf_Ex_log',title='mhtpufit_pf Missing E_{x} log;sgn(E_{x}) log_{10}(E_{x}/GeV);Events', - path='Shifter/mhtpufit_pf',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('mhtpufit_pf_Ey',title='mhtpufit_pf Missing E_{y};E_{y} [GeV];Events', - path='Shifter/mhtpufit_pf',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('mhtpufit_pf_Ey_log',title='mhtpufit_pf Missing E_{y} log;sgn(E_{y}) log_{10}(E_{y}/GeV);Events', - path='Shifter/mhtpufit_pf',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('mhtpufit_pf_Et', title='mhtpufit_pf Missing E_{T};E_{T} [GeV];Events', - path='Shifter/mhtpufit_pf',xbins=et_bins,xmin=et_min,xmax=et_max) - metGroup.defineHistogram('mhtpufit_pf_Et_log',title='mhtpufit_pf Missing E_{T} log;log_{10}(E_{T}/GeV);Events', - path='Shifter/mhtpufit_pf',xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log) - metGroup.defineHistogram('mhtpufit_pf_sumEt',title='mhtpufit_pf sumEt;sumEt [GeV];Events', - path='Shifter/mhtpufit_pf',xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max) - metGroup.defineHistogram('mhtpufit_pf_sumEt_log',title='mhtpufit_pf sumEt log;log_{10}(sumEt/GeV);Events', - path='Shifter/mhtpufit_pf',xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log) - metGroup.defineHistogram('mhtpufit_pf_phi',title='mhtpufit_pf #phi;#phi;Events', - path='Shifter/mhtpufit_pf',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - metGroup.defineHistogram('mhtpufit_pf_phi;mhtpufit_pf_phi_etweight', title='mhtpufit_pf #phi (etweighted);#phi;E_{T} weighted events', - weight='mhtpufit_pf_Et', - path='Shifter/mhtpufit_pf',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - ## mhtpufit_em - metGroup.defineHistogram('mhtpufit_em_Ex',title='mhtpufit_em Missing E_{x};E_{x} [GeV];Events', - path='Shifter/mhtpufit_em',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('mhtpufit_em_Ex_log',title='mhtpufit_em Missing E_{x} log;sgn(E_{x}) log_{10}(E_{x}/GeV);Events', - path='Shifter/mhtpufit_em',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('mhtpufit_em_Ey',title='mhtpufit_em Missing E_{y};E_{y} [GeV];Events', - path='Shifter/mhtpufit_em',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('mhtpufit_em_Ey_log',title='mhtpufit_em Missing E_{y} log;sgn(E_{y}) log_{10}(E_{y}/GeV);Events', - path='Shifter/mhtpufit_em',xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log) - metGroup.defineHistogram('mhtpufit_em_Et', title='mhtpufit_em Missing E_{T};E_{T} [GeV];Events', - path='Shifter/mhtpufit_em',xbins=et_bins,xmin=et_min,xmax=et_max) - metGroup.defineHistogram('mhtpufit_em_Et_log',title='mhtpufit_em Missing E_{T} log;log_{10}(E_{T}/GeV);Events', - path='Shifter/mhtpufit_em',xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log) - metGroup.defineHistogram('mhtpufit_em_sumEt',title='mhtpufit_em sumEt;sumEt [GeV];Events', - path='Shifter/mhtpufit_em',xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max) - metGroup.defineHistogram('mhtpufit_em_sumEt_log',title='mhtpufit_em sumEt log;log_{10}(sumEt/GeV);Events', - path='Shifter/mhtpufit_em',xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log) - metGroup.defineHistogram('mhtpufit_em_phi',title='mhtpufit_em #phi;#phi;Events', - path='Shifter/mhtpufit_em',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - metGroup.defineHistogram('mhtpufit_em_phi;mhtpufit_em_phi_etweight', title='mhtpufit_em #phi (etweighted);#phi;E_{T} weighted events', - weight='mhtpufit_em_Et', - path='Shifter/mhtpufit_em',xbins=phi_bins,xmin=phi_min,xmax=phi_max) - ## HLT tc - metGroup.defineHistogram('tc_Ex',title='tc Missing E_{x};E_{x} [GeV];Events', + ## HLT tc (Expert) + metGroup.defineHistogram('tc_Ex',title='tc Missing Ex;Ex [GeV];Events', path='Expert/tc',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('tc_Ey',title='tc Missing E_{y};E_{y} [GeV];Events', + metGroup.defineHistogram('tc_Ey',title='tc Missing Ey;Ey [GeV];Events', path='Expert/tc',xbins=ec_bins,xmin=ec_min,xmax=ec_max) - metGroup.defineHistogram('tc_Et', title='tc Missing E_{T};E_{T} [GeV];Events', + metGroup.defineHistogram('tc_Et', title='tc Missing Et;Et [GeV];Events', path='Expert/tc',xbins=et_bins,xmin=et_min,xmax=et_max) ## Chain specific metChain1Group.defineHistogram('cell_Ex',title='cell Missing E_{x};E_{x} [GeV];Events', @@ -466,8 +304,7 @@ if __name__=='__main__': from AthenaConfiguration.AllConfigFlags import ConfigFlags nightly = '/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/CommonInputs/' file = 'data16_13TeV.00311321.physics_Main.recon.AOD.r9264/AOD.11038520._000001.pool.root.1' - #ConfigFlags.Input.Files = [nightly+file] - ConfigFlags.Input.Files = ['/hep300/data/khamano/data18_athenaMT/fromElin/AOD_old.pool.root'] + ConfigFlags.Input.Files = [nightly+file] ConfigFlags.Input.isMC = True ConfigFlags.Output.HISTFileName = 'TrigMETMonitorOutput.root' diff --git a/Trigger/TrigMonitoring/TrigMETMonitoring/src/TrigMETMonitorAlgorithm.cxx b/Trigger/TrigMonitoring/TrigMETMonitoring/src/TrigMETMonitorAlgorithm.cxx index 8794ce5dcf0941801706118095df97554609d037..2969f23957a6935584c0e3ccd307ad121e7e488b 100644 --- a/Trigger/TrigMonitoring/TrigMETMonitoring/src/TrigMETMonitorAlgorithm.cxx +++ b/Trigger/TrigMonitoring/TrigMETMonitoring/src/TrigMETMonitorAlgorithm.cxx @@ -9,6 +9,12 @@ TrigMETMonitorAlgorithm::TrigMETMonitorAlgorithm( const std::string& name, ISvcL : AthMonitorAlgorithm(name,pSvcLocator) , m_offline_met_key("MET_EMTopo") , m_lvl1_roi_key("LVL1EnergySumRoI") + , m_lvl1_jnc_key("jNOISECUT_MET") + , m_lvl1_jrho_key("jXERHO_MET") + , m_lvl1_gnc_key("gXENOISECUT_MET") + , m_lvl1_grho_key("gXERHO_MET") + , m_lvl1_gjwoj_key("gXEJWOJ_MET") + , m_lvl1_gpufit_key("gXEPUFIT_MET") , m_hlt_cell_met_key("HLT_MET_cell") , m_hlt_mht_met_key("HLT_MET_mht") , m_hlt_tc_met_key("HLT_MET_tc") @@ -16,6 +22,8 @@ TrigMETMonitorAlgorithm::TrigMETMonitorAlgorithm( const std::string& name, ISvcL , m_hlt_tcpufit_met_key("HLT_MET_tcpufit") , m_hlt_trkmht_met_key("HLT_MET_trkmht") , m_hlt_pfsum_met_key("HLT_MET_pfsum") + , m_hlt_pfsum_cssk_met_key("HLT_MET_pfsum_cssk") + , m_hlt_pfsum_vssk_met_key("HLT_MET_pfsum_vssk") , m_hlt_pfopufit_met_key("HLT_MET_pfopufit") , m_hlt_cvfpufit_met_key("HLT_MET_cvfpufit") , m_hlt_mhtpufit_pf_met_key("HLT_MET_mhtpufit_pf_subjesgscIS") @@ -24,6 +32,12 @@ TrigMETMonitorAlgorithm::TrigMETMonitorAlgorithm( const std::string& name, ISvcL { declareProperty("offline_met_key", m_offline_met_key); declareProperty("l1_roi_key", m_lvl1_roi_key); + declareProperty("l1_jnc_key", m_lvl1_jnc_key); + declareProperty("l1_jrho_key", m_lvl1_jrho_key); + declareProperty("l1_gnc_key", m_lvl1_gnc_key); + declareProperty("l1_grho_key", m_lvl1_grho_key); + declareProperty("l1_gjwoj_key", m_lvl1_gjwoj_key); + declareProperty("l1_gpufit_key", m_lvl1_gpufit_key); declareProperty("hlt_cell_key", m_hlt_cell_met_key); declareProperty("hlt_mht_key", m_hlt_mht_met_key); declareProperty("hlt_tc_key", m_hlt_tc_met_key); @@ -31,14 +45,34 @@ TrigMETMonitorAlgorithm::TrigMETMonitorAlgorithm( const std::string& name, ISvcL declareProperty("hlt_tcpufit_key", m_hlt_tcpufit_met_key); declareProperty("hlt_trkmht_key", m_hlt_trkmht_met_key); declareProperty("hlt_pfsum_key", m_hlt_pfsum_met_key); + declareProperty("hlt_pfsum_cssk_key", m_hlt_pfsum_cssk_met_key); + declareProperty("hlt_pfsum_vssk_key", m_hlt_pfsum_vssk_met_key); declareProperty("hlt_pfopufit_key", m_hlt_pfopufit_met_key); declareProperty("hlt_cvfpufit_key", m_hlt_cvfpufit_met_key); declareProperty("hlt_mhtpufit_pf_key", m_hlt_mhtpufit_pf_met_key); declareProperty("hlt_mhtpufit_em_key", m_hlt_mhtpufit_em_met_key); - declareProperty("L1Chain1", m_L1Chain1="L1_XE50"); - declareProperty("HLTChain1", m_HLTChain1="HLT_xe65_cell_L1XE50"); - declareProperty("HLTChain2", m_HLTChain2="HLT_xe100_tcpuft_L1XE50"); + declareProperty("L1Chain01", m_L1Chain01="L1_XE50"); + declareProperty("L1Chain02", m_L1Chain02="L1_jXENC50"); + declareProperty("L1Chain03", m_L1Chain03="L1_jXERHO50"); + declareProperty("L1Chain04", m_L1Chain04="L1_gXENC50"); + declareProperty("L1Chain05", m_L1Chain05="L1_gXERHO50"); + declareProperty("L1Chain06", m_L1Chain06="L1_gXEJWOJ50"); + declareProperty("L1Chain01", m_L1Chain07="L1_gXEPUFIT50"); + declareProperty("HLTChain01", m_HLTChain01="HLT_xe65_cell_L1XE50"); + declareProperty("HLTChain02", m_HLTChain02="HLT_xe100_mht_L1XE50"); + declareProperty("HLTChain03", m_HLTChain03="HLT_xe100_tcpufit_L1XE50"); + declareProperty("HLTChain04", m_HLTChain04="HLT_xe100_trkmht_L1XE50"); + declareProperty("HLTChain05", m_HLTChain05="HLT_xe100_pfsum_L1XE50"); + declareProperty("HLTChain06", m_HLTChain06="HLT_xe100_pfopuft_L1XE50"); + declareProperty("HLTChain07", m_HLTChain07="HLT_xe100_cvfpufit_L1XE50"); + declareProperty("HLTChain08", m_HLTChain08="HLT_xe100_mhtpufit_em_subjesgscIS_L1XE50"); + declareProperty("HLTChain09", m_HLTChain09="HLT_xe100_mhtpufit_pf_subjesgscIS_L1XE50"); + declareProperty("HLTChain10", m_HLTChain10="HLT_xe100_pfsum_cssk_L1XE50"); + declareProperty("HLTChain11", m_HLTChain11="HLT_xe100_pfsum_vssk_L1XE50"); + declareProperty("HLTChain12", m_HLTChain12="HLT_xe65_cell_xe110_tcpuft_L1XE50"); + declareProperty("HLTChain13", m_HLTChain13="HLT_xe100_trkmht_xe85_tcpufit_xe65_cell_L1XE50"); + declareProperty("HLTChain14", m_HLTChain14="HLT_xe95_trkmht_xe90_tcpufit_xe75_cell_L1XE50"); } @@ -48,6 +82,12 @@ TrigMETMonitorAlgorithm::~TrigMETMonitorAlgorithm() {} StatusCode TrigMETMonitorAlgorithm::initialize() { ATH_CHECK( m_offline_met_key.initialize() ); ATH_CHECK( m_lvl1_roi_key.initialize() ); + ATH_CHECK( m_lvl1_jnc_key.initialize() ); + ATH_CHECK( m_lvl1_jrho_key.initialize() ); + ATH_CHECK( m_lvl1_gnc_key.initialize() ); + ATH_CHECK( m_lvl1_grho_key.initialize() ); + ATH_CHECK( m_lvl1_gjwoj_key.initialize() ); + ATH_CHECK( m_lvl1_gpufit_key.initialize() ); ATH_CHECK( m_hlt_cell_met_key.initialize() ); ATH_CHECK( m_hlt_mht_met_key.initialize() ); ATH_CHECK( m_hlt_tc_met_key.initialize() ); @@ -59,6 +99,8 @@ StatusCode TrigMETMonitorAlgorithm::initialize() { ATH_CHECK( m_hlt_cvfpufit_met_key.initialize() ); ATH_CHECK( m_hlt_mhtpufit_pf_met_key.initialize() ); ATH_CHECK( m_hlt_mhtpufit_em_met_key.initialize() ); + ATH_CHECK( m_hlt_pfsum_cssk_met_key.initialize() ); + ATH_CHECK( m_hlt_pfsum_vssk_met_key.initialize() ); ATH_CHECK( m_trigDecTool.retrieve() ); @@ -79,12 +121,42 @@ StatusCode TrigMETMonitorAlgorithm::fillHistograms( const EventContext& ctx ) co if (! l1_roi_cont.isValid() ) { ATH_MSG_DEBUG("Container "<< m_lvl1_roi_key << " does not exist or is empty"); } - + + SG::ReadHandle<xAOD::EnergySumRoI> l1_jnc_cont(m_lvl1_jnc_key, ctx); + if (! l1_jnc_cont.isValid() ) { + ATH_MSG_DEBUG("Container "<< m_lvl1_jnc_key << " does not exist or is empty"); + } + + SG::ReadHandle<xAOD::EnergySumRoI> l1_jrho_cont(m_lvl1_jrho_key, ctx); + if (! l1_jrho_cont.isValid() ) { + ATH_MSG_DEBUG("Container "<< m_lvl1_jrho_key << " does not exist or is empty"); + } + + SG::ReadHandle<xAOD::EnergySumRoI> l1_gnc_cont(m_lvl1_gnc_key, ctx); + if (! l1_gnc_cont.isValid() ) { + ATH_MSG_DEBUG("Container "<< m_lvl1_gnc_key << " does not exist or is empty"); + } + + SG::ReadHandle<xAOD::EnergySumRoI> l1_grho_cont(m_lvl1_grho_key, ctx); + if (! l1_grho_cont.isValid() ) { + ATH_MSG_DEBUG("Container "<< m_lvl1_grho_key << " does not exist or is empty"); + } + + SG::ReadHandle<xAOD::EnergySumRoI> l1_gjwoj_cont(m_lvl1_gjwoj_key, ctx); + if (! l1_gjwoj_cont.isValid() ) { + ATH_MSG_DEBUG("Container "<< m_lvl1_gjwoj_key << " does not exist or is empty"); + } + + SG::ReadHandle<xAOD::EnergySumRoI> l1_gpufit_cont(m_lvl1_gpufit_key, ctx); + if (! l1_gpufit_cont.isValid() ) { + ATH_MSG_DEBUG("Container "<< m_lvl1_gpufit_key << " does not exist or is empty"); + } + SG::ReadHandle<xAOD::TrigMissingETContainer> hlt_cell_met_cont(m_hlt_cell_met_key, ctx); if (! hlt_cell_met_cont.isValid() || hlt_cell_met_cont->size()==0 ) { ATH_MSG_DEBUG("Container "<< m_hlt_cell_met_key << " does not exist or is empty"); } - + SG::ReadHandle<xAOD::TrigMissingETContainer> hlt_mht_met_cont(m_hlt_mht_met_key, ctx); if (! hlt_mht_met_cont.isValid() || hlt_mht_met_cont->size()==0 ) { ATH_MSG_DEBUG("Container "<< m_hlt_mht_met_key << " does not exist or is empty"); @@ -115,6 +187,16 @@ StatusCode TrigMETMonitorAlgorithm::fillHistograms( const EventContext& ctx ) co ATH_MSG_DEBUG("Container "<< m_hlt_pfsum_met_key << " does not exist or is empty"); } + SG::ReadHandle<xAOD::TrigMissingETContainer> hlt_pfsum_cssk_met_cont(m_hlt_pfsum_cssk_met_key, ctx); + if (! hlt_pfsum_cssk_met_cont.isValid() || hlt_pfsum_cssk_met_cont->size()==0 ) { + ATH_MSG_DEBUG("Container "<< m_hlt_pfsum_cssk_met_key << " does not exist or is empty"); + } + + SG::ReadHandle<xAOD::TrigMissingETContainer> hlt_pfsum_vssk_met_cont(m_hlt_pfsum_vssk_met_key, ctx); + if (! hlt_pfsum_vssk_met_cont.isValid() || hlt_pfsum_vssk_met_cont->size()==0 ) { + ATH_MSG_DEBUG("Container "<< m_hlt_pfsum_vssk_met_key << " does not exist or is empty"); + } + SG::ReadHandle<xAOD::TrigMissingETContainer> hlt_pfopufit_met_cont(m_hlt_pfopufit_met_key, ctx); if (! hlt_pfopufit_met_cont.isValid() || hlt_pfopufit_met_cont->size()==0 ) { ATH_MSG_DEBUG("Container "<< m_hlt_pfopufit_met_key << " does not exist or is empty"); @@ -147,9 +229,34 @@ StatusCode TrigMETMonitorAlgorithm::fillHistograms( const EventContext& ctx ) co auto offline_Ey = Monitored::Scalar<float>("offline_Ey",0.0); auto offline_Et = Monitored::Scalar<float>("offline_Et",0.0); auto offline_sumEt = Monitored::Scalar<float>("offline_sumEt",0.0); - auto L1_Ex = Monitored::Scalar<float>("L1_Ex",0.0); - auto L1_Ey = Monitored::Scalar<float>("L1_Ey",0.0); - auto L1_Et = Monitored::Scalar<float>("L1_Et",0.0); + auto L1_roi_Ex = Monitored::Scalar<float>("L1_roi_Ex",0.0); + auto L1_roi_Ey = Monitored::Scalar<float>("L1_roi_Ey",0.0); + auto L1_roi_Et = Monitored::Scalar<float>("L1_roi_Et",0.0); + auto L1_roi_sumEt = Monitored::Scalar<float>("L1_roi_sumEt",0.0); + auto L1_jnc_Ex = Monitored::Scalar<float>("L1_jnc_Ex",0.0); + auto L1_jnc_Ey = Monitored::Scalar<float>("L1_jnc_Ey",0.0); + auto L1_jnc_Et = Monitored::Scalar<float>("L1_jnc_Et",0.0); + auto L1_jnc_sumEt = Monitored::Scalar<float>("L1_jnc_sumEt",0.0); + auto L1_jrho_Ex = Monitored::Scalar<float>("L1_jrho_Ex",0.0); + auto L1_jrho_Ey = Monitored::Scalar<float>("L1_jrho_Ey",0.0); + auto L1_jrho_Et = Monitored::Scalar<float>("L1_jrho_Et",0.0); + auto L1_jrho_sumEt = Monitored::Scalar<float>("L1_jrho_sumEt",0.0); + auto L1_gnc_Ex = Monitored::Scalar<float>("L1_gnc_Ex",0.0); + auto L1_gnc_Ey = Monitored::Scalar<float>("L1_gnc_Ey",0.0); + auto L1_gnc_Et = Monitored::Scalar<float>("L1_gnc_Et",0.0); + auto L1_gnc_sumEt = Monitored::Scalar<float>("L1_gnc_sumEt",0.0); + auto L1_grho_Ex = Monitored::Scalar<float>("L1_grho_Ex",0.0); + auto L1_grho_Ey = Monitored::Scalar<float>("L1_grho_Ey",0.0); + auto L1_grho_Et = Monitored::Scalar<float>("L1_grho_Et",0.0); + auto L1_grho_sumEt = Monitored::Scalar<float>("L1_grho_sumEt",0.0); + auto L1_gjwoj_Ex = Monitored::Scalar<float>("L1_gjwoj_Ex",0.0); + auto L1_gjwoj_Ey = Monitored::Scalar<float>("L1_gjwoj_Ey",0.0); + auto L1_gjwoj_Et = Monitored::Scalar<float>("L1_gjwoj_Et",0.0); + auto L1_gjwoj_sumEt = Monitored::Scalar<float>("L1_gjwoj_sumEt",0.0); + auto L1_gpufit_Ex = Monitored::Scalar<float>("L1_gpufit_Ex",0.0); + auto L1_gpufit_Ey = Monitored::Scalar<float>("L1_gpufit_Ey",0.0); + auto L1_gpufit_Et = Monitored::Scalar<float>("L1_gpufit_Et",0.0); + auto L1_gpufit_sumEt = Monitored::Scalar<float>("L1_gpufit_sumEt",0.0); auto cell_Ex = Monitored::Scalar<float>("cell_Ex",0.0); auto cell_Ey = Monitored::Scalar<float>("cell_Ey",0.0); auto cell_Et = Monitored::Scalar<float>("cell_Et",0.0); @@ -215,6 +322,24 @@ StatusCode TrigMETMonitorAlgorithm::fillHistograms( const EventContext& ctx ) co auto pfsum_Et_log = Monitored::Scalar<float>("pfsum_Et_log",0.0); auto pfsum_sumEt_log = Monitored::Scalar<float>("pfsum_sumEt_log",0.0); auto pfsum_phi = Monitored::Scalar<float>("pfsum_phi",0.0); + auto pfsum_cssk_Ex = Monitored::Scalar<float>("pfsum_cssk_Ex",0.0); + auto pfsum_cssk_Ey = Monitored::Scalar<float>("pfsum_cssk_Ey",0.0); + auto pfsum_cssk_Et = Monitored::Scalar<float>("pfsum_cssk_Et",0.0); + auto pfsum_cssk_sumEt = Monitored::Scalar<float>("pfsum_cssk_sumEt",0.0); + auto pfsum_cssk_Ex_log = Monitored::Scalar<float>("pfsum_cssk_Ex_log",0.0); + auto pfsum_cssk_Ey_log = Monitored::Scalar<float>("pfsum_cssk_Ey_log",0.0); + auto pfsum_cssk_Et_log = Monitored::Scalar<float>("pfsum_cssk_Et_log",0.0); + auto pfsum_cssk_sumEt_log = Monitored::Scalar<float>("pfsum_cssk_sumEt_log",0.0); + auto pfsum_cssk_phi = Monitored::Scalar<float>("pfsum_cssk_phi",0.0); + auto pfsum_vssk_Ex = Monitored::Scalar<float>("pfsum_vssk_Ex",0.0); + auto pfsum_vssk_Ey = Monitored::Scalar<float>("pfsum_vssk_Ey",0.0); + auto pfsum_vssk_Et = Monitored::Scalar<float>("pfsum_vssk_Et",0.0); + auto pfsum_vssk_sumEt = Monitored::Scalar<float>("pfsum_vssk_sumEt",0.0); + auto pfsum_vssk_Ex_log = Monitored::Scalar<float>("pfsum_vssk_Ex_log",0.0); + auto pfsum_vssk_Ey_log = Monitored::Scalar<float>("pfsum_vssk_Ey_log",0.0); + auto pfsum_vssk_Et_log = Monitored::Scalar<float>("pfsum_vssk_Et_log",0.0); + auto pfsum_vssk_sumEt_log = Monitored::Scalar<float>("pfsum_vssk_sumEt_log",0.0); + auto pfsum_vssk_phi = Monitored::Scalar<float>("pfsum_vssk_phi",0.0); auto pfopufit_Ex = Monitored::Scalar<float>("pfopufit_Ex",0.0); auto pfopufit_Ey = Monitored::Scalar<float>("pfopufit_Ey",0.0); auto pfopufit_Et = Monitored::Scalar<float>("pfopufit_Et",0.0); @@ -251,9 +376,27 @@ StatusCode TrigMETMonitorAlgorithm::fillHistograms( const EventContext& ctx ) co auto mhtpufit_em_Et_log = Monitored::Scalar<float>("mhtpufit_em_Et_log",0.0); auto mhtpufit_em_sumEt_log = Monitored::Scalar<float>("mhtpufit_em_sumEt_log",0.0); auto mhtpufit_em_phi = Monitored::Scalar<float>("mhtpufit_em_phi",0.0); - auto pass_L11 = Monitored::Scalar<float>("pass_L11",0.0); - auto pass_HLT1 = Monitored::Scalar<float>("pass_HLT1",0.0); - auto pass_HLT2 = Monitored::Scalar<float>("pass_HLT2",0.0); + auto pass_L101 = Monitored::Scalar<float>("pass_L101",0.0); + auto pass_L102 = Monitored::Scalar<float>("pass_L102",0.0); + auto pass_L103 = Monitored::Scalar<float>("pass_L103",0.0); + auto pass_L104 = Monitored::Scalar<float>("pass_L104",0.0); + auto pass_L105 = Monitored::Scalar<float>("pass_L105",0.0); + auto pass_L106 = Monitored::Scalar<float>("pass_L106",0.0); + auto pass_L107 = Monitored::Scalar<float>("pass_L107",0.0); + auto pass_HLT01 = Monitored::Scalar<float>("pass_HLT01",0.0); + auto pass_HLT02 = Monitored::Scalar<float>("pass_HLT02",0.0); + auto pass_HLT03 = Monitored::Scalar<float>("pass_HLT03",0.0); + auto pass_HLT04 = Monitored::Scalar<float>("pass_HLT04",0.0); + auto pass_HLT05 = Monitored::Scalar<float>("pass_HLT05",0.0); + auto pass_HLT06 = Monitored::Scalar<float>("pass_HLT06",0.0); + auto pass_HLT07 = Monitored::Scalar<float>("pass_HLT07",0.0); + auto pass_HLT08 = Monitored::Scalar<float>("pass_HLT08",0.0); + auto pass_HLT09 = Monitored::Scalar<float>("pass_HLT09",0.0); + auto pass_HLT10 = Monitored::Scalar<float>("pass_HLT10",0.0); + auto pass_HLT11 = Monitored::Scalar<float>("pass_HLT11",0.0); + auto pass_HLT12 = Monitored::Scalar<float>("pass_HLT12",0.0); + auto pass_HLT13 = Monitored::Scalar<float>("pass_HLT13",0.0); + auto pass_HLT14 = Monitored::Scalar<float>("pass_HLT14",0.0); // constant floor for log plots @@ -268,15 +411,77 @@ StatusCode TrigMETMonitorAlgorithm::fillHistograms( const EventContext& ctx ) co offline_Et = std::sqrt(offline_Ex*offline_Ex + offline_Ey*offline_Ey); } - // access L1 MET values + // access L1 roi MET values if ( l1_roi_cont.isValid() ) { if ((l1_roi_cont->energyX())>-9e12 && (l1_roi_cont->energyX())<9e12 && (l1_roi_cont->energyY())>-9e12 && (l1_roi_cont->energyY())<9e12) { - L1_Ex = - (l1_roi_cont->energyX())/1000.; - L1_Ey = - (l1_roi_cont->energyY())/1000.; - L1_Et = (l1_roi_cont->energyT())/1000.; + L1_roi_Ex = - (l1_roi_cont->energyX())/1000.; + L1_roi_Ey = - (l1_roi_cont->energyY())/1000.; + L1_roi_Et = std::sqrt(L1_roi_Ex*L1_roi_Ex + L1_roi_Ey*L1_roi_Ey); + L1_roi_sumEt = (l1_roi_cont->energyT())/1000.; + } + } + + // access L1 jnc MET values + if ( l1_jnc_cont.isValid() ) { + if ((l1_jnc_cont->energyX())>-9e12 && (l1_jnc_cont->energyX())<9e12 && (l1_jnc_cont->energyY())>-9e12 && (l1_jnc_cont->energyY())<9e12) { + L1_jnc_Ex = - (l1_jnc_cont->energyX())/1000.; + L1_jnc_Ey = - (l1_jnc_cont->energyY())/1000.; + L1_jnc_Et = std::sqrt(L1_jnc_Ex*L1_jnc_Ex + L1_jnc_Ey*L1_jnc_Ey); + L1_jnc_sumEt = (l1_jnc_cont->energyT())/1000.; + } + } + + // access L1 jrho MET values + if ( l1_jrho_cont.isValid() ) { + if ((l1_jrho_cont->energyX())>-9e12 && (l1_jrho_cont->energyX())<9e12 && (l1_jrho_cont->energyY())>-9e12 && (l1_jrho_cont->energyY())<9e12) { + L1_jrho_Ex = - (l1_jrho_cont->energyX())/1000.; + L1_jrho_Ey = - (l1_jrho_cont->energyY())/1000.; + L1_jrho_Et = std::sqrt(L1_jrho_Ex*L1_jrho_Ex + L1_jrho_Ey*L1_jrho_Ey); + L1_jrho_sumEt = (l1_jrho_cont->energyT())/1000.; + } + } + + // access L1 gnc MET values + if ( l1_gnc_cont.isValid() ) { + if ((l1_gnc_cont->energyX())>-9e12 && (l1_gnc_cont->energyX())<9e12 && (l1_gnc_cont->energyY())>-9e12 && (l1_gnc_cont->energyY())<9e12) { + L1_gnc_Ex = - (l1_gnc_cont->energyX())/1000.; + L1_gnc_Ey = - (l1_gnc_cont->energyY())/1000.; + L1_gnc_Et = std::sqrt(L1_gnc_Ex*L1_gnc_Ex + L1_gnc_Ey*L1_gnc_Ey); + L1_gnc_sumEt = (l1_gnc_cont->energyT())/1000.; + } + } + + // access L1 grho MET values + if ( l1_grho_cont.isValid() ) { + if ((l1_grho_cont->energyX())>-9e12 && (l1_grho_cont->energyX())<9e12 && (l1_grho_cont->energyY())>-9e12 && (l1_grho_cont->energyY())<9e12) { + L1_grho_Ex = - (l1_grho_cont->energyX())/1000.; + L1_grho_Ey = - (l1_grho_cont->energyY())/1000.; + L1_grho_Et = std::sqrt(L1_grho_Ex*L1_grho_Ex + L1_grho_Ey*L1_grho_Ey); + L1_grho_sumEt = (l1_grho_cont->energyT())/1000.; } } + // access L1 gjwoj MET values + if ( l1_gjwoj_cont.isValid() ) { + if ((l1_gjwoj_cont->energyX())>-9e12 && (l1_gjwoj_cont->energyX())<9e12 && (l1_gjwoj_cont->energyY())>-9e12 && (l1_gjwoj_cont->energyY())<9e12) { + L1_gjwoj_Ex = - (l1_gjwoj_cont->energyX())/1000.; + L1_gjwoj_Ey = - (l1_gjwoj_cont->energyY())/1000.; + L1_gjwoj_Et = std::sqrt(L1_gjwoj_Ex*L1_gjwoj_Ex + L1_gjwoj_Ey*L1_gjwoj_Ey); + L1_gjwoj_sumEt = (l1_gjwoj_cont->energyT())/1000.; + } + } + + // access L1 gpufit MET values + if ( l1_gpufit_cont.isValid() ) { + if ((l1_gpufit_cont->energyX())>-9e12 && (l1_gpufit_cont->energyX())<9e12 && (l1_gpufit_cont->energyY())>-9e12 && (l1_gpufit_cont->energyY())<9e12) { + L1_gpufit_Ex = - (l1_gpufit_cont->energyX())/1000.; + L1_gpufit_Ey = - (l1_gpufit_cont->energyY())/1000.; + L1_gpufit_Et = std::sqrt(L1_gpufit_Ex*L1_gpufit_Ex + L1_gpufit_Ey*L1_gpufit_Ey); + L1_gpufit_sumEt = (l1_gpufit_cont->energyT())/1000.; + } + } + + // access HLT cell MET values if ( hlt_cell_met_cont.isValid() && hlt_cell_met_cont->size() > 0 ) { hlt_met = hlt_cell_met_cont->at(0); @@ -401,6 +606,42 @@ StatusCode TrigMETMonitorAlgorithm::fillHistograms( const EventContext& ctx ) co } ATH_MSG_DEBUG("pfsum_Et = " <<pfsum_Et); + // access HLT pfsum_cssk MET values + if ( hlt_pfsum_cssk_met_cont.isValid() && hlt_pfsum_cssk_met_cont->size() > 0 ) { + hlt_met = hlt_pfsum_cssk_met_cont->at(0); + pfsum_cssk_Ex = (hlt_met->ex())/1000.; + pfsum_cssk_Ey = (hlt_met->ey())/1000.; + float pfsum_cssk_Ez = (hlt_met->ez())/1000.; + pfsum_cssk_Et = std::sqrt(pfsum_cssk_Ex*pfsum_cssk_Ex + pfsum_cssk_Ey*pfsum_cssk_Ey); + pfsum_cssk_sumEt = (hlt_met->sumEt())/1000.; + pfsum_cssk_Ex_log = signed_log(pfsum_cssk_Ex, epsilon); + pfsum_cssk_Ey_log = signed_log(pfsum_cssk_Ey, epsilon); + pfsum_cssk_Et_log = signed_log(pfsum_cssk_Et, epsilon); + pfsum_cssk_sumEt_log = signed_log(pfsum_cssk_sumEt, epsilon); + + TVector3 v(pfsum_cssk_Ex, pfsum_cssk_Ey, pfsum_cssk_Ez); + pfsum_cssk_phi = v.Phi(); + } + ATH_MSG_DEBUG("pfsum_cssk_Et = " <<pfsum_cssk_Et); + + // access HLT pfsum_vssk MET values + if ( hlt_pfsum_vssk_met_cont.isValid() && hlt_pfsum_vssk_met_cont->size() > 0 ) { + hlt_met = hlt_pfsum_vssk_met_cont->at(0); + pfsum_vssk_Ex = (hlt_met->ex())/1000.; + pfsum_vssk_Ey = (hlt_met->ey())/1000.; + float pfsum_vssk_Ez = (hlt_met->ez())/1000.; + pfsum_vssk_Et = std::sqrt(pfsum_vssk_Ex*pfsum_vssk_Ex + pfsum_vssk_Ey*pfsum_vssk_Ey); + pfsum_vssk_sumEt = (hlt_met->sumEt())/1000.; + pfsum_vssk_Ex_log = signed_log(pfsum_vssk_Ex, epsilon); + pfsum_vssk_Ey_log = signed_log(pfsum_vssk_Ey, epsilon); + pfsum_vssk_Et_log = signed_log(pfsum_vssk_Et, epsilon); + pfsum_vssk_sumEt_log = signed_log(pfsum_vssk_sumEt, epsilon); + + TVector3 v(pfsum_vssk_Ex, pfsum_vssk_Ey, pfsum_vssk_Ez); + pfsum_vssk_phi = v.Phi(); + } + ATH_MSG_DEBUG("pfsum_vssk_Et = " <<pfsum_vssk_Et); + // acccess HLT pfopufit MET values if ( hlt_pfopufit_met_cont.isValid() && hlt_pfopufit_met_cont->size() > 0 ) { hlt_met = hlt_pfopufit_met_cont->at(0); @@ -474,12 +715,30 @@ StatusCode TrigMETMonitorAlgorithm::fillHistograms( const EventContext& ctx ) co ATH_MSG_DEBUG("mhtpufit_em_Et = " << mhtpufit_em_Et); // efficiency plots - if (m_trigDecTool->isPassed(m_L1Chain1)) pass_L11 = 1.0; - if (m_trigDecTool->isPassed(m_HLTChain1)) pass_HLT1 = 1.0; - if (m_trigDecTool->isPassed(m_HLTChain2)) pass_HLT2 = 1.0; - ATH_MSG_DEBUG("pass " << m_L1Chain1 << " = " << pass_L11); - ATH_MSG_DEBUG("pass " << m_HLTChain1 << " = " << pass_HLT1); - ATH_MSG_DEBUG("pass " << m_HLTChain2 << " = " << pass_HLT2); + if (m_trigDecTool->isPassed(m_L1Chain01)) pass_L101 = 1.0; + if (m_trigDecTool->isPassed(m_L1Chain02)) pass_L102 = 1.0; + if (m_trigDecTool->isPassed(m_L1Chain03)) pass_L103 = 1.0; + if (m_trigDecTool->isPassed(m_L1Chain04)) pass_L104 = 1.0; + if (m_trigDecTool->isPassed(m_L1Chain05)) pass_L105 = 1.0; + if (m_trigDecTool->isPassed(m_L1Chain06)) pass_L106 = 1.0; + if (m_trigDecTool->isPassed(m_L1Chain07)) pass_L107 = 1.0; + if (m_trigDecTool->isPassed(m_HLTChain01)) pass_HLT01 = 1.0; + if (m_trigDecTool->isPassed(m_HLTChain02)) pass_HLT02 = 1.0; + if (m_trigDecTool->isPassed(m_HLTChain03)) pass_HLT03 = 1.0; + if (m_trigDecTool->isPassed(m_HLTChain04)) pass_HLT04 = 1.0; + if (m_trigDecTool->isPassed(m_HLTChain05)) pass_HLT05 = 1.0; + if (m_trigDecTool->isPassed(m_HLTChain06)) pass_HLT06 = 1.0; + if (m_trigDecTool->isPassed(m_HLTChain07)) pass_HLT07 = 1.0; + if (m_trigDecTool->isPassed(m_HLTChain08)) pass_HLT08 = 1.0; + if (m_trigDecTool->isPassed(m_HLTChain09)) pass_HLT09 = 1.0; + if (m_trigDecTool->isPassed(m_HLTChain10)) pass_HLT10 = 1.0; + if (m_trigDecTool->isPassed(m_HLTChain11)) pass_HLT11 = 1.0; + if (m_trigDecTool->isPassed(m_HLTChain12)) pass_HLT12 = 1.0; + if (m_trigDecTool->isPassed(m_HLTChain13)) pass_HLT13 = 1.0; + if (m_trigDecTool->isPassed(m_HLTChain14)) pass_HLT14 = 1.0; + ATH_MSG_DEBUG("pass " << m_L1Chain01 << " = " << pass_L101); + ATH_MSG_DEBUG("pass " << m_HLTChain01 << " = " << pass_HLT01); + ATH_MSG_DEBUG("pass " << m_HLTChain02 << " = " << pass_HLT02); // Fill. First argument is the tool (GMT) name as defined in the py file, @@ -488,8 +747,18 @@ StatusCode TrigMETMonitorAlgorithm::fillHistograms( const EventContext& ctx ) co // Alternative fill method. Get the group yourself, and pass it to the fill function. auto tool = getGroup("TrigMETMonitor"); fill(tool,offline_Ex,offline_Ey,offline_Et,offline_sumEt, - L1_Ex,L1_Ey,L1_Et, - pass_L11,pass_HLT1,pass_HLT2); + L1_roi_Ex,L1_roi_Ey,L1_roi_Et,L1_roi_sumEt, + L1_jnc_Ex,L1_jnc_Ey,L1_jnc_Et,L1_jnc_sumEt, + L1_jrho_Ex,L1_jrho_Ey,L1_jrho_Et,L1_jrho_sumEt, + L1_gnc_Ex,L1_gnc_Ey,L1_gnc_Et,L1_gnc_sumEt, + L1_grho_Ex,L1_grho_Ey,L1_grho_Et,L1_grho_sumEt, + L1_gjwoj_Ex,L1_gjwoj_Ey,L1_gjwoj_Et,L1_gjwoj_sumEt, + L1_gpufit_Ex,L1_gpufit_Ey,L1_gpufit_Et,L1_gpufit_sumEt, + pass_L101,pass_L102,pass_L103,pass_L104,pass_L105, + pass_L106,pass_L107, + pass_HLT01,pass_HLT02,pass_HLT03,pass_HLT04,pass_HLT05, + pass_HLT05,pass_HLT06,pass_HLT07,pass_HLT08,pass_HLT09, + pass_HLT11,pass_HLT12,pass_HLT13,pass_HLT14); if (hlt_cell_met_cont->size() > 0) { fill(tool,cell_Ex,cell_Ey,cell_Et,cell_sumEt, cell_Ex_log,cell_Ey_log,cell_Et_log,cell_sumEt_log, @@ -507,6 +776,12 @@ StatusCode TrigMETMonitorAlgorithm::fillHistograms( const EventContext& ctx ) co pfsum_Ex,pfsum_Ey,pfsum_Et,pfsum_sumEt, pfsum_Ex_log,pfsum_Ey_log,pfsum_Et_log,pfsum_sumEt_log, pfsum_phi, + pfsum_cssk_Ex,pfsum_cssk_Ey,pfsum_cssk_Et,pfsum_cssk_sumEt, + pfsum_cssk_Ex_log,pfsum_cssk_Ey_log,pfsum_cssk_Et_log,pfsum_cssk_sumEt_log, + pfsum_cssk_phi, + pfsum_vssk_Ex,pfsum_vssk_Ey,pfsum_vssk_Et,pfsum_vssk_sumEt, + pfsum_vssk_Ex_log,pfsum_vssk_Ey_log,pfsum_vssk_Et_log,pfsum_vssk_sumEt_log, + pfsum_vssk_phi, pfopufit_Ex,pfopufit_Ey,pfopufit_Et,pfopufit_sumEt, pfopufit_Ex_log,pfopufit_Ey_log,pfopufit_Et_log,pfopufit_sumEt_log, pfopufit_phi, diff --git a/Trigger/TrigMonitoring/TrigMETMonitoring/src/TrigMETMonitorAlgorithm.h b/Trigger/TrigMonitoring/TrigMETMonitoring/src/TrigMETMonitorAlgorithm.h index de40caf14e901ec0fd71b2f43d7225ebc94bf646..090cce9b8fc0afff8207e412ff23a03ef60c96d6 100644 --- a/Trigger/TrigMonitoring/TrigMETMonitoring/src/TrigMETMonitorAlgorithm.h +++ b/Trigger/TrigMonitoring/TrigMETMonitoring/src/TrigMETMonitorAlgorithm.h @@ -29,6 +29,12 @@ class TrigMETMonitorAlgorithm : public AthMonitorAlgorithm { SG::ReadHandleKey<xAOD::MissingETContainer> m_offline_met_key; SG::ReadHandleKey<xAOD::EnergySumRoI> m_lvl1_roi_key; + SG::ReadHandleKey<xAOD::EnergySumRoI> m_lvl1_jnc_key; + SG::ReadHandleKey<xAOD::EnergySumRoI> m_lvl1_jrho_key; + SG::ReadHandleKey<xAOD::EnergySumRoI> m_lvl1_gnc_key; + SG::ReadHandleKey<xAOD::EnergySumRoI> m_lvl1_grho_key; + SG::ReadHandleKey<xAOD::EnergySumRoI> m_lvl1_gjwoj_key; + SG::ReadHandleKey<xAOD::EnergySumRoI> m_lvl1_gpufit_key; SG::ReadHandleKey<xAOD::TrigMissingETContainer> m_hlt_cell_met_key; SG::ReadHandleKey<xAOD::TrigMissingETContainer> m_hlt_mht_met_key; @@ -37,14 +43,34 @@ class TrigMETMonitorAlgorithm : public AthMonitorAlgorithm { SG::ReadHandleKey<xAOD::TrigMissingETContainer> m_hlt_tcpufit_met_key; SG::ReadHandleKey<xAOD::TrigMissingETContainer> m_hlt_trkmht_met_key; SG::ReadHandleKey<xAOD::TrigMissingETContainer> m_hlt_pfsum_met_key; + SG::ReadHandleKey<xAOD::TrigMissingETContainer> m_hlt_pfsum_cssk_met_key; + SG::ReadHandleKey<xAOD::TrigMissingETContainer> m_hlt_pfsum_vssk_met_key; SG::ReadHandleKey<xAOD::TrigMissingETContainer> m_hlt_pfopufit_met_key; SG::ReadHandleKey<xAOD::TrigMissingETContainer> m_hlt_cvfpufit_met_key; SG::ReadHandleKey<xAOD::TrigMissingETContainer> m_hlt_mhtpufit_pf_met_key; SG::ReadHandleKey<xAOD::TrigMissingETContainer> m_hlt_mhtpufit_em_met_key; - std::string m_L1Chain1; - std::string m_HLTChain1; - std::string m_HLTChain2; + std::string m_L1Chain01; + std::string m_L1Chain02; + std::string m_L1Chain03; + std::string m_L1Chain04; + std::string m_L1Chain05; + std::string m_L1Chain06; + std::string m_L1Chain07; + std::string m_HLTChain01; + std::string m_HLTChain02; + std::string m_HLTChain03; + std::string m_HLTChain04; + std::string m_HLTChain05; + std::string m_HLTChain06; + std::string m_HLTChain07; + std::string m_HLTChain08; + std::string m_HLTChain09; + std::string m_HLTChain10; + std::string m_HLTChain11; + std::string m_HLTChain12; + std::string m_HLTChain13; + std::string m_HLTChain14; ToolHandle<Trig::ITrigDecisionTool> m_trigDecTool;