ATLAS Offline Software
TileCalCellMonTool.h
Go to the documentation of this file.
1 //Dear emacs, this is -*-c++-*-
2 
3 /*
4  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 #ifndef TILEMONTOOL_H
8 #define TILEMONTOOL_H
9 
10 #include "CaloMonToolBase.h"
11 #include "GaudiKernel/ToolHandle.h"
12 
13 
18 
19 class CaloCell;
20 class TileID;
21 
22 class TH1F;
23 class TH1D;
24 class TH2F;
25 class TProfile2D;
26 class TProfile;
27 
28 
30 
31  public:
32 
33  TileCalCellMonTool(const std::string & type, const std::string& name,
34  const IInterface* parent);
36 
37  virtual StatusCode initialize() override;
38  virtual StatusCode bookHistograms() override;
39  virtual StatusCode procHistograms() override;
40  virtual StatusCode fillHistograms() override;
41 
42 
43 private:
44  const std::string m_tilePath{"/CaloMonitoring/TileCellMon_NoTrigSel/General"};
45 
46  //Private methods:
47  void initParam();
48  static void getRMSdevNoise(TProfile *t1, TProfile *t2, TH1F *t3);
49 
50  //Job Properties and other private variables
51  SG::ReadHandleKey<CaloCellContainer> m_cellContainerName { this, "CaloCellContainer", "AllCalo", "SG key of the input cell container" };
52 
55  { this, "NoiseKey", "totalNoise", "SG key for noise" };
56 
57  // tile energy threshold
59 
60  const TileID* m_tile_id;
61 
62  // Tile histograms parameters
63  std::vector<double> m_b_Ncells;
64 
65  std::vector<double> m_b_CellsE;
66 
67  std::vector<double> m_b_CellsEta;
68  std::vector<double> m_b_CellsEtaTile;
69 
70  std::vector<double> m_b_CellsPhi;
71 
72  std::vector<double> m_b_CellsTower;
73  std::vector<double> m_b_CellsModule;
74 
75  std::vector<double> m_b_CellsEtaPhi;
76 
77  // Tile histograms
78  TH1F* m_h_CellsNoiseE=nullptr; // E/DBnoise distribution for all not bad tile cells in sample <3
79 
80  // for tile cells with energy > m_tileThreshold
81  TH1F* m_h_Ncells=nullptr;
82  TH1F* m_h_CellsE=nullptr;
91 
92  // for not bad tile cells with |E/DBnoise| >4.0 in sample<3
98 
99  // for all not bad tile cells in sample <3; h_CellsRMSdivDBnoiseEta(Phi) are derived from temporary plots h_CellsNoiseEta(phi) and h_CellsRMSEta(Phi)
106 
107 
108 };
109 
110 #endif
111 
TileCalCellMonTool::m_h_CellsRMSPhi
TProfile * m_h_CellsRMSPhi
Definition: TileCalCellMonTool.h:102
TileCalCellMonTool::m_b_CellsEtaTile
std::vector< double > m_b_CellsEtaTile
Definition: TileCalCellMonTool.h:68
TileCalCellMonTool::TileCalCellMonTool
TileCalCellMonTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: TileCalCellMonTool.cxx:29
TileCalCellMonTool::m_h_CellsModuleS1
TProfile * m_h_CellsModuleS1
Definition: TileCalCellMonTool.h:86
TileCalCellMonTool::m_h_CellsEtaPhi
TH2F * m_h_CellsEtaPhi
Definition: TileCalCellMonTool.h:83
TileCalCellMonTool::m_cellContainerName
SG::ReadHandleKey< CaloCellContainer > m_cellContainerName
Definition: TileCalCellMonTool.h:51
TH2F
Definition: rootspy.cxx:420
TileCalCellMonTool::m_h_CellsModuleS3
TProfile * m_h_CellsModuleS3
Definition: TileCalCellMonTool.h:88
TileCalCellMonTool::m_tile_id
const TileID * m_tile_id
Definition: TileCalCellMonTool.h:60
LUCID_EventTPCnv_Dict::t3
std::vector< LUCID_RawData_p1 > t3
Definition: LUCID_EventTPCnvDict.h:28
TileCalCellMonTool::m_h_CellsPhi
TProfile * m_h_CellsPhi
Definition: TileCalCellMonTool.h:85
ALFA_EventTPCnv_Dict::t1
std::vector< ALFA_RawDataCollection_p1 > t1
Definition: ALFA_EventTPCnvDict.h:43
TProfile2D
Definition: rootspy.cxx:531
TileCalCellMonTool::m_b_CellsPhi
std::vector< double > m_b_CellsPhi
Definition: TileCalCellMonTool.h:70
TH1D
Definition: rootspy.cxx:342
TileCalCellMonTool::initialize
virtual StatusCode initialize() override
Definition: TileCalCellMonTool.cxx:48
TrigDecisionTool.h
TileCalCellMonTool::m_h_CellsE
TH1F * m_h_CellsE
Definition: TileCalCellMonTool.h:82
TileCalCellMonTool::m_tileThreshold
float m_tileThreshold
Definition: TileCalCellMonTool.h:58
SG::ReadHandleKey< CaloCellContainer >
TileCalCellMonTool::m_b_CellsEta
std::vector< double > m_b_CellsEta
Definition: TileCalCellMonTool.h:67
TileCalCellMonTool::m_h_CellsNoiseEtaPhiBC
TH2F * m_h_CellsNoiseEtaPhiBC
Definition: TileCalCellMonTool.h:95
CaloMonToolBase.h
TileCalCellMonTool::m_b_CellsEtaPhi
std::vector< double > m_b_CellsEtaPhi
Definition: TileCalCellMonTool.h:75
TileCalCellMonTool::m_h_CellsModuleS4
TProfile * m_h_CellsModuleS4
Definition: TileCalCellMonTool.h:89
TileCalCellMonTool::m_h_CellsRMSEta
TProfile * m_h_CellsRMSEta
Definition: TileCalCellMonTool.h:103
TileCalCellMonTool::getRMSdevNoise
static void getRMSdevNoise(TProfile *t1, TProfile *t2, TH1F *t3)
Definition: TileCalCellMonTool.cxx:378
TileID
Helper class for TileCal offline identifiers.
Definition: TileID.h:68
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TileCalCellMonTool::bookHistograms
virtual StatusCode bookHistograms() override
An inheriting class should either override this function or bookHists().
Definition: TileCalCellMonTool.cxx:118
TileCalCellMonTool::m_h_CellsEta
TProfile * m_h_CellsEta
Definition: TileCalCellMonTool.h:84
test_pyathena.parent
parent
Definition: test_pyathena.py:15
TileCalCellMonTool::m_b_CellsE
std::vector< double > m_b_CellsE
Definition: TileCalCellMonTool.h:65
TileCalCellMonTool::~TileCalCellMonTool
virtual ~TileCalCellMonTool()
TileCalCellMonTool::m_h_Ncells
TH1F * m_h_Ncells
Definition: TileCalCellMonTool.h:81
TileCalCellMonTool::m_h_CellsNoisePhi
TProfile * m_h_CellsNoisePhi
Definition: TileCalCellMonTool.h:101
ReadCondHandleKey.h
CaloMonToolBase
Definition: CaloMonToolBase.h:17
TileCalCellMonTool::initParam
void initParam()
Definition: TileCalCellMonTool.cxx:69
TileCalCellMonTool::m_h_CellsNoiseEtaPhi
TH2F * m_h_CellsNoiseEtaPhi
Definition: TileCalCellMonTool.h:93
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
TileCalCellMonTool::m_tilePath
const std::string m_tilePath
Definition: TileCalCellMonTool.h:44
CaloNoise.h
TileCalCellMonTool::m_h_CellsNoiseE
TH1F * m_h_CellsNoiseE
Definition: TileCalCellMonTool.h:78
TileCalCellMonTool
Definition: TileCalCellMonTool.h:29
TProfile
Definition: rootspy.cxx:515
TileCalCellMonTool::m_h_CellsRMSdivDBnoiseEta
TH1F * m_h_CellsRMSdivDBnoiseEta
Definition: TileCalCellMonTool.h:104
TileCalCellMonTool::m_h_CellsNoiseHash
TH1F * m_h_CellsNoiseHash
Definition: TileCalCellMonTool.h:97
TileCalCellMonTool::m_b_CellsModule
std::vector< double > m_b_CellsModule
Definition: TileCalCellMonTool.h:73
SG::ReadCondHandleKey< CaloNoise >
ALFA_EventTPCnv_Dict::t2
std::vector< ALFA_RawDataContainer_p1 > t2
Definition: ALFA_EventTPCnvDict.h:44
TileCalCellMonTool::m_h_CellsNoiseEtaPhiA
TH2F * m_h_CellsNoiseEtaPhiA
Definition: TileCalCellMonTool.h:94
CaloCell
Data object for each calorimeter readout cell.
Definition: CaloCell.h:57
TH1F
Definition: rootspy.cxx:320
TileCalCellMonTool::m_useTwoGaus
bool m_useTwoGaus
Definition: TileCalCellMonTool.h:53
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
TileCalCellMonTool::m_h_CellsRMSdivDBnoisePhi
TH1F * m_h_CellsRMSdivDBnoisePhi
Definition: TileCalCellMonTool.h:105
TileCalCellMonTool::m_h_CellsTower
TProfile * m_h_CellsTower
Definition: TileCalCellMonTool.h:90
TileCalCellMonTool::m_b_Ncells
std::vector< double > m_b_Ncells
Definition: TileCalCellMonTool.h:63
TileCalCellMonTool::m_h_CellsModuleS2
TProfile * m_h_CellsModuleS2
Definition: TileCalCellMonTool.h:87
TileCalCellMonTool::m_b_CellsTower
std::vector< double > m_b_CellsTower
Definition: TileCalCellMonTool.h:72
TileCalCellMonTool::fillHistograms
virtual StatusCode fillHistograms() override
An inheriting class should either override this function or fillHists().
Definition: TileCalCellMonTool.cxx:274
TileCalCellMonTool::m_noiseKey
SG::ReadCondHandleKey< CaloNoise > m_noiseKey
Definition: TileCalCellMonTool.h:55
IDQFilterTool.h
TileCalCellMonTool::procHistograms
virtual StatusCode procHistograms() override
An inheriting class should either override this function or finalHists().
Definition: TileCalCellMonTool.cxx:365
TileCalCellMonTool::m_h_CellsNoiseEta
TProfile * m_h_CellsNoiseEta
Definition: TileCalCellMonTool.h:100
TileCalCellMonTool::m_h_CellsNoiseEtaPhiD
TH2F * m_h_CellsNoiseEtaPhiD
Definition: TileCalCellMonTool.h:96