Skip to content
Snippets Groups Projects
Commit ea6c5783 authored by Francisco Alonso's avatar Francisco Alonso Committed by Graeme Stewart
Browse files

tag TrigMETMonitoring-00-04-02 (TrigMETMonitoring-00-04-02)

parent 4d5aa7e5
No related branches found
No related tags found
No related merge requests found
......@@ -6,79 +6,56 @@
#define HLTMETMONTOOL_H
#include "TrigHLTMonitoring/IHLTMonTool.h"
//#include "TrigDecision/TrigDecisionTool.h"
#include "AnalysisTriggerEvent/LVL1_ROI.h"
//#include "TrigCaloEvent/TrigMissingET.h"
#include "TrigMissingEtEvent/TrigMissingET.h"
#include "MissingETEvent/MissingET.h"
#include "xAODTrigger/EnergySumRoI.h"
#include "xAODTrigMissingET/TrigMissingET.h"
#include "xAODTrigMissingET/TrigMissingETContainer.h"
#include <string>
#include <vector>
class HLTMETMonTool: public IHLTMonTool {
public:
public:
HLTMETMonTool(const std::string & type, const std::string & name, const IInterface* parent);
~HLTMETMonTool();
StatusCode init();
StatusCode book();
StatusCode fill();
StatusCode proc();
private:
/** methods called by book() */
void bookHistograms_allStats();
void bookL1Histograms();
void bookL2Histograms();
void bookEFHistograms();
void bookHLTHistograms();
void bookEfficHistograms();
/** methods to make booking easier */
void addBasicL1Histograms();
void addBasicL2Histograms();
void addMoreL2Histograms();
void addL2FEBHistograms();
void addL2StatusHistogram();
void addBasicEFHistograms();
void addMoreEFHistograms();
void addEFStatusHistogram();
void addBasicRecHistograms();
void addL1vsL2Histograms();
void addL1vsEFHistograms();
void addL2vsEFHistograms();
void addL1vsRecHistograms();
void addL2vsRecHistograms();
void addEFvsRecHistograms();
void addBasicHLTHistograms();
void addMoreHLTHistograms();
void addHLTStatusHistogram();
void addBasicOffHistograms();
void addL1vsHLTHistograms();
void addL1vsOffHistograms();
void addHLTvsOffHistograms();
void addDQFlagHistograms();
void bookXSCalibHistograms(int level);
void trigger_decision();
StatusCode fillMETHistos();
StatusCode fillL1ShiftHistos(const LVL1_ROI::energysums_type & L1METROI);
StatusCode fillL2ShiftHistos(const LVL1_ROI::energysums_type & L1METROI,
const TrigMissingET *& missETL2);
StatusCode fillL2FEBShiftHistos(const TrigMissingET *& missL2FEB);
StatusCode fillEFShiftHistos(const LVL1_ROI::energysums_type & L1METROI,
const TrigMissingET *& missETL2,
const TrigMissingET *& missETEF);
StatusCode fillRecShiftHistos(const LVL1_ROI::energysums_type & L1METROI,
const TrigMissingET *& missETL2,
const TrigMissingET *& missETEF,
const MissingET *& missETRec);
StatusCode fillExpertHistos(const LVL1_ROI::energysums_type & L1METROI,
const TrigMissingET *& missETL2,
const TrigMissingET *& missETEF,
const MissingET *& missETRec);
StatusCode fillL1ShiftHistos();
StatusCode fillHLTShiftHistos();
StatusCode fillOffShiftHistos();
StatusCode fillExpertHistos();
void getAllMETTriggers();
void checkTriggers(std::vector<std::string>& m_triggers,
......@@ -98,20 +75,16 @@ class HLTMETMonTool: public IHLTMonTool {
bool m_debuglevel; //!< private member to control debug messages
std::map<std::string,int> m_all_l1_met_triggers;
std::map<std::string,int> m_all_l2_met_triggers;
std::map<std::string,int> m_all_ef_met_triggers;
std::map<std::string,int> m_all_hlt_met_triggers;
std::map<std::string,int> m_l1_met_signatures;
std::map<std::string,int> m_l2_met_signatures;
std::map<std::string,int> m_ef_met_signatures;
std::map<std::string,int> m_hlt_met_signatures;
std::map<std::string, int> *m_l1_met_signatures_tolook;
std::map<std::string, int> *m_l2_met_signatures_tolook;
std::map<std::string, int> *m_ef_met_signatures_tolook;
std::map<std::string, int> *m_hlt_met_signatures_tolook;
std::map<std::string, int> m_sample_selection_signatures;
bool m_is_print_met_trig_stats;
bool m_is_make_histos_for_all_met_trig;
bool m_is_make_expert_histos;
......@@ -120,20 +93,19 @@ class HLTMETMonTool: public IHLTMonTool {
bool m_is_do_trigger_effic;
std::vector<std::string> m_met_triggers;
std::vector<std::string> m_sample_selection_triggers;
std::string m_lvl1_roi_key;
std::string m_l2met_key, m_l2feb_key;
std::string m_efmet_key;
std::string m_recmet_key;
std::string m_recmetcalo_key;
std::string m_lvl1_roi_key, m_hlt_met_key, m_hlt_met_feb_key, m_hlt_met_topocl_key;
std::string m_recmet_key, m_recmetcalo_key;
const LVL1_ROI * m_lvl1_roi;
const xAOD::EnergySumRoI *m_l1_roi_cont;
const xAOD::TrigMissingET *m_hlt_met;
const xAOD::TrigMissingETContainer *m_hlt_met_cont;
const xAOD::TrigMissingETContainer *m_hlt_met_feb_cont;
const xAOD::TrigMissingETContainer *m_hlt_met_topocl_cont;
private:
std::vector<std::string> m_compNamesL2, m_compNamesEF, m_bitNamesL2, m_bitNamesEF;
std::vector<std::string> m_compNames, m_bitNames;
};
#endif // HLTMETMONTOOL_H
......
......@@ -9,7 +9,8 @@ use TrigSteeringEvent TrigSteeringEvent-* Trigger/TrigEvent
use TrigMissingEtEvent TrigMissingEtEvent-* Trigger/TrigEvent
use MissingETEvent MissingETEvent-* Reconstruction
use TrigHLTMonitoring TrigHLTMonitoring-* Trigger/TrigMonitoring
use AnalysisTriggerEvent AnalysisTriggerEvent-* PhysicsAnalysis/AnalysisTrigger
use xAODTrigger xAODTrigger-* Event/xAOD
use xAODTrigMissingET xAODTrigMissingET-* Event/xAOD
private
apply_tag ROOTGraphicsLibs
......
......@@ -10,11 +10,11 @@ compNames_all = [ "PreSamplB", "EMB1", "EMB2", "EMB3", # LAr barrel
"FCalEM", "FCalHad1", "FCalHad2", # Forward cal endcap
"Muons" ] # Muons
compNames_L2FEB = [ "PreSamplB", "EMB1", "EMB2", "EMB3", # LAr barrel
"PreSamplE", "EME1", "EME2", "EME3", # LAr EM endcap
"HEC", "TileBar", "TileExt", # Hadronic end cap cal. Tile cal.
"FCalEM", "FCalHad1", "FCalHad2", # Forward cal endcap
"Muons" ] #Muons
compNames_FEB = [ "PreSamplB", "EMB1", "EMB2", "EMB3", # LAr barrel
"PreSamplE", "EME1", "EME2", "EME3", # LAr EM endcap
"HEC", "TileBar", "TileExt", # Hadronic end cap cal. Tile cal.
"FCalEM", "FCalHad1", "FCalHad2", # Forward cal endcap
"Muons" ] #Muons
compNames_topocl = [ "TCLCWB1 ", "TCLCWB2 ", #pos. and neg. eta barrel
"TCLCWE1 ", "TCLCWE2 ", #pos. and neg. eta endcap
......@@ -22,44 +22,7 @@ compNames_topocl = [ "TCLCWB1 ", "TCLCWB2 ", #pos. and neg. eta b
"TCEME1 ", "TCEME2 ", #pos. and neg. eta endcap
"Muons" ] #Muons
## L2 bits description
bitNames_allL2 = [
"ErrParityL1", # bit 0
"ErrL1mult", # bit 1
"ErrMuon", # bit 2
"spare", # bit 3
"L1OverflowExEy", # bit 4
"L1OverflowSumEt", # bit 5
"spare", # bit 6
"METinBadPhiRegion", # bit 7
"METinBadRegion", # bit 8
"ObjInPhiRegion", # bit 9
"ObjInRegion", # bit 10
"ObjInCrack", # bit 11
"PhiCorrJet1", # bit 12
"PhiCorrJet2", # bit 13
"PhiCorrJet3", # bit 14
"CompError", # bit 15
"EMB_A_Missing", # bit 16
"EMB_C_Missing", # bit 17
"EME_A_Missing", # bit 18
"EME_C_Missing", # bit 19
"HEC_A_Missing", # bit 20
"HEC_C_Missing", # bit 21
"FCAL_A_Missing", # bit 22
"FCAL_C_Missing", # bit 23
"TileB_A_Missing", # bit 24
"TileB_C_Missing", # bit 25
"TileE_A_Missing", # bit 26
"TileE_C_Missing", # bit 27
"L1Calo_Missing", # bit 28
"GlobBigMEtSEtRatio", # bit 29
"spare", # bit 30
"GlobError" # bit 31
]
## EF bits description
bitNames_allEF= [
bitNames_allHLT= [
"Processing", # bit 0
"ErrBSconv", # bit 1
"ErrMuon", # bit 2
......@@ -96,47 +59,51 @@ bitNames_allEF= [
def HLTMETMonitoringTool():
from TrigMETMonitoring.TrigMETMonitoringConf import HLTMETMonTool
HLTMETMon = HLTMETMonTool(name = 'HLTMETMon',
histoPathBase = "/Trigger/HLT",
MonPathBase = "/HLT/METMon",
L2METKey = "HLT_T2MissingET",
#L2FEBKey = "HLT_L2MissingET_FEB",
EFMETKey = "HLT_TrigEFMissingET",
compNamesEF = compNames_all,
compNamesL2 = compNames_L2FEB,
bitNamesL2 = bitNames_allL2,
bitNamesEF = bitNames_allEF
CompNames = compNames_all,
BitNames = bitNames_allHLT,
METTriggers = ["L1_XE35", "L1_XE50", "L1_XE70",
"HLT_xe50", "HLT_xe70"],
SampleSelectionTriggers = ["HLT_J10", # jet trigger
"HLT_MbSp", # minbias trigger
"HLT_mu6_rpc"] # other physics trigger
);
from AthenaCommon.AppMgr import ToolSvc
ToolSvc += HLTMETMon;
list = [ "HLTMETMonTool/HLTMETMon" ];
HLTMETMon_FEB = HLTMETMonTool(name = 'HLTMETMon_FEB',
histoPathBase = "/Trigger/HLT",
MonPathBase = "/HLT/METMon_FEB",
#L2METKey = "HLT_T2MissingET",
L2FEBKey = "HLT_L2MissingET_FEB",
EFMETKey = "HLT_TrigEFMissingET_FEB",
compNamesEF = compNames_all,
compNamesL2 = compNames_L2FEB,
bitNamesL2 = bitNames_allL2,
bitNamesEF = bitNames_allEF
);
ToolSvc += HLTMETMon_FEB;
list += [ "HLTMETMonTool/HLTMETMon_FEB" ];
# HLTMETMon_FEB = HLTMETMonTool(name = 'HLTMETMon_FEB',
# histoPathBase = "/Trigger/HLT",
# MonPathBase = "/HLT/METMon_FEB",
# #L2METKey = "HLT_T2MissingET",
# L2FEBKey = "HLT_L2MissingET_FEB",
# EFMETKey = "HLT_TrigEFMissingET_FEB",
# compNamesEF = compNames_all,
# compNamesL2 = compNames_L2FEB,
# bitNamesL2 = bitNames_allL2,
# bitNamesEF = bitNames_allEF
# );
# ToolSvc += HLTMETMon_FEB;
# list += [ "HLTMETMonTool/HLTMETMon_FEB" ];
HLTMETMon_topocl = HLTMETMonTool(name = 'HLTMETMon_topocl',
histoPathBase = "/Trigger/HLT",
MonPathBase = "/HLT/METMon_topocl",
#L2METKey = "HLT_T2MissingET",
#L2FEBKey = "HLT_L2MissingET_FEB",
EFMETKey = "HLT_TrigEFMissingET_topocl",
#compNamesEF = compNames_all,
compNamesEF = compNames_topocl,
compNamesL2 = compNames_L2FEB,
bitNamesL2 = bitNames_allL2,
bitNamesEF = bitNames_allEF
);
ToolSvc += HLTMETMon_topocl;
list += [ "HLTMETMonTool/HLTMETMon_topocl" ];
# HLTMETMon_topocl = HLTMETMonTool(name = 'HLTMETMon_topocl',
# histoPathBase = "/Trigger/HLT",
# MonPathBase = "/HLT/METMon_topocl",
# #L2METKey = "HLT_T2MissingET",
# #L2FEBKey = "HLT_L2MissingET_FEB",
# EFMETKey = "HLT_TrigEFMissingET_topocl",
# #compNamesEF = compNames_all,
# compNamesEF = compNames_topocl,
# compNamesL2 = compNames_L2FEB,
# bitNamesL2 = bitNames_allL2,
# bitNamesEF = bitNames_allEF
# );
# ToolSvc += HLTMETMon_topocl;
# list += [ "HLTMETMonTool/HLTMETMon_topocl" ];
return list
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment