ATLAS Offline Software
ZdcMonitorAlgorithm.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ZDCMONITORALGORITHM_H
6 #define ZDCMONITORALGORITHM_H
7 
13 #include "TRandom3.h"
14 #include "array"
15 
16 #include "CoolKernel/IObject.h"
18 
19 //---------------------------------------------------
23 //---------------------------------------------------
24 #include "ZdcUtils/ZdcEventInfo.h"
26 
28 public:
33  };
42  };
43 
44  ZdcMonitorAlgorithm( const std::string& name, ISvcLocator* pSvcLocator );
45  virtual ~ZdcMonitorAlgorithm();
46  virtual StatusCode initialize() override;
47  virtual StatusCode fillHistograms( const EventContext& ctx ) const override;
48  StatusCode fillPhysicsDataHistograms( const EventContext& ctx ) const;
49 
50 private:
51  void calculate_log_bin_edges(float min_value, float max_value, int num_bins, std::vector<float>& bin_edges);
52  float calculate_inverse_bin_width(float event_value, const std::string& variable_name, const std::vector<float>& bin_edges) const;
53 
54  Gaudi::Property<unsigned int> m_runNumber {this, "RunNumber", 0, "Run number for current job"};
56 
57  Gaudi::Property<std::string> m_zdcModuleContainerName {this, "ZdcModuleContainerName", "ZdcModules", "Location of ZDC processed data"};
58  Gaudi::Property<std::string> m_zdcSumContainerName {this, "ZdcSumContainerName", "ZdcSums", "Location of ZDC processed sums"};
59  Gaudi::Property<std::string> m_auxSuffix{this, "AuxSuffix", "", "Append this tag onto end of AuxData"};
60 
61  Gaudi::Property<float> m_expected1N{this, "Expected1NADC", 1000., "Expected 1N position in ADC"}; // only needs to indicate the rough scale, only used in the >20N cut mask
62 
63  Gaudi::Property<float> m_energyCutForModuleFractMonitor{this, "EnergyCutForModuleFractMonitor", 13400., "Minimum energy sum required on each side for event to enter module fraction monitoring (default at 5 * 2680 GeV)"};
64  Gaudi::Property<float> m_ZDCEnergyCutForCentroidValidBitMonitor{this, "ZDCEnergyCutForCentroidValidBitMonitor", 13400., "Minimum energy required in ZDC for event to enter centroid valid bit monitoring (default at 5 * 2680 GeV)"};
65 
66  Gaudi::Property<float> m_moduleChisqHistMinValue{this, "ZDCModuleChisqHistMinValue", 1000., "Min value for logarithmic binning for ZDC module chisq distribution"}; // to manually calculate inverse-bin-width weight
67  Gaudi::Property<float> m_moduleChisqHistMaxvalue{this, "ZDCModuleChisqHistMaxvalue", 1000., "Max value for logarithmic binning for ZDC module chisq distribution"}; // to manually calculate inverse-bin-width weight
68  Gaudi::Property<float> m_moduleChisqHistNumBins{this, "ZDCModuleChisqHistNumBins", 1000., "Number of bins for logarithmic binning for ZDC module chisq distribution"}; // to manually calculate inverse-bin-width weight
69  Gaudi::Property<float> m_moduleChisqOverAmpHistMinValue{this, "ZDCModuleChisqOverAmpHistMinValue", 1000., "Min value for logarithmic binning for ZDC module chisq over amplitude distribution"}; // to manually calculate inverse-bin-width weight
70  Gaudi::Property<float> m_moduleChisqOverAmpHistMaxvalue{this, "ZDCModuleChisqOverAmpHistMaxvalue", 1000., "Max value for logarithmic binning for ZDC module chisq over amplitude distribution"}; // to manually calculate inverse-bin-width weight
71  Gaudi::Property<float> m_moduleChisqOverAmpHistNumBins{this, "ZDCModuleChisqOverAmpHistNumBins", 1000., "Number of bins for logarithmic binning for ZDC module chisq over amplitude distribution"}; // to manually calculate inverse-bin-width weight
72 
73  // single side triggers - less error-prone if defined as separate properties then in a vector (where order would be crucial)
74  Gaudi::Property<std::string> m_triggerSideA{this, "triggerSideA", "L1_ZDC_A", "Trigger on side A, needed for 1N-peak monitoring on side C"};
75  Gaudi::Property<std::string> m_triggerSideC{this, "triggerSideC", "L1_ZDC_C", "Trigger on side C, needed for 1N-peak monitoring on side A"};
76 
77  // ZDC UCC trigger - ultra-central event selection requiring energy sum in ZDC hadronic modules be below different thresholds
78  Gaudi::Property<std::string> m_UCCtriggerHELT15{this, "triggerUCCHELT15", "L1_ZDC_HELT15_jTE4000", "UCC trigger requiring ZDC hadronic energy be less than 15 TeV"};
79  Gaudi::Property<std::string> m_UCCtriggerHELT20{this, "triggerUCCHELT20", "L1_ZDC_HELT20_jTE4000", "UCC trigger requiring ZDC hadronic energy be less than 20 TeV"};
80  Gaudi::Property<std::string> m_UCCtriggerHELT25{this, "triggerUCCHELT25", "L1_ZDC_HELT25_jTE4000", "UCC trigger requiring ZDC hadronic energy be less than 25 TeV"};
81  Gaudi::Property<std::string> m_UCCtriggerHELT35{this, "triggerUCCHELT35", "L1_ZDC_HELT35_jTE4000", "UCC trigger requiring ZDC hadronic energy be less than 35 TeV"};
82  Gaudi::Property<std::string> m_UCCtriggerHELT50{this, "triggerUCCHELT50", "L1_ZDC_HELT50_jTE4000", "UCC trigger requiring ZDC hadronic energy be less than 50 TeV"};
83 
84  float m_timingCutsInjectorPulse [2][4][2] = {{{30, 38}, {30, 38}, {28, 38}, {30, 38}}, {{30, 38}, {30, 38}, {30, 38}, {30, 38}}}; // Timing cuts (array of dimension 2 * 4 * 2) for event to enter reco-amp-vs-input-voltage histograms in the injector pulse stream
85  Gaudi::Property<unsigned int> m_nSecondsRejectStartofLBInjectorPulse {this, "NSecondsRejectStartofLBInjectorPulse", 3, "The number of seconds to reject at beginning of each LB in reco-amp-vs-input-voltage histograms in the injector pulse stream"};
86  Gaudi::Property<float> m_minAmpRequiredHGInjectorPulse {this, "MinAmpRequiredHGInjectorPulse", 20, "HG Minimum amplitude required for event to enter reco-amp-vs-input-voltage histograms in the injector pulse stream"};
87  Gaudi::Property<float> m_minAmpRequiredLGInjectorPulse {this, "MinAmpRequiredLGInjectorPulse", 20, "LG Minimum amplitude required for event to enter reco-amp-vs-input-voltage histograms in the injector pulse stream"};
88  Gaudi::Property<float> m_minVInjToImposeAmpRequirementHGInjectorPulse {this, "MinVInjToImposeAmpRequirementHGInjectorPulse", 0.002, "Minimum input voltage to impose HG minimum amplitude requirement in the injector pulse stream; set to negative value to cancel HG minimum-amplitude requirement"};
89  Gaudi::Property<float> m_minVInjToImposeAmpRequirementLGInjectorPulse {this, "MinVInjToImposeAmpRequirementLGInjectorPulse", 0.002, "Minimum input voltage to impose LG minimum amplitude requirement in the injector pulse stream; set to negative value to cancel LG minimum-amplitude requirement"};
90 
91  Gaudi::Property<std::string > m_lbTimeCoolFolderName{ this, "LumiBlockTimeCoolFolderName", "/TRIGGER/LUMI/LBLB", "COOL folder in COOLONL_TRIGGER holding info about start and stop times for luminosity blocks" };
92 
93 
94  static const int m_nSides = 2;
95  static const int m_nModules = 4;
96  static const int m_nChannels = 16;
97  static const int m_nDecodingErrorBits = 3;
98  static const int m_nUCCTrigBits = 7;
99  static const int m_nZdcStatusBits = 18;
100  static const int m_nRpdStatusBits = 15;
101  static const int m_nRpdCentroidStatusBits = 21;
102 
103  // the 2D mapping maps a string "pair" to an integer: the index of the corresponding generic monitoring tool (GMT) in the array of all GMT's
104  std::map<std::string,int> m_ZDCSideToolIndices;
105  std::map<std::string,std::map<std::string,int>> m_ZDCModuleToolIndices;
106  std::map<std::string,std::map<std::string,int>> m_RPDChannelToolIndices;
107 
108  std::vector<float> m_ZdcModuleChisqBinEdges;
110 
111  std::shared_ptr<ZdcInjPulserAmpMap> m_zdcInjPulserAmpMap;
112 
113  //---------------------------------------------------
114 
115  // see the standalone version of the Gaudi::Property class (a wrapper in AsgTools) at
116  // athena/Control/AthToolSupport/AsgTools/AsgTools/PropertyWrapper.h
117  // input to constructor: owner, name, value, title = "" (by default)
118  Gaudi::Property<bool> m_isOnline {this,"IsOnline",false};
119  Gaudi::Property<bool> m_isSim {this,"IsSim",false}; // is simulation
120  Gaudi::Property<bool> m_CalInfoOn {this,"CalInfoOn",false};
121  Gaudi::Property<bool> m_EnableZDCSingleSideTriggers {this,"EnableZDCSingleSideTriggers",true};
122  Gaudi::Property<bool> m_EnableUCCTriggers {this,"EnableUCCTriggers",false};
123  Gaudi::Property<bool> m_isPPMode {this,"IsPPMode",true};
124  Gaudi::Property<bool> m_isInjectedPulse {this,"IsInjectedPulse",false};
125  Gaudi::Property<bool> m_isStandalone {this,"IsStandalone",false}; // determine if standalone via metadata
126  Gaudi::Property<bool> m_enableZDC {this,"EnableZDC",true};
127  Gaudi::Property<bool> m_enableZDCPhysics {this,"EnableZDCPhysics",true};
128  Gaudi::Property<bool> m_enableRPD {this,"EnableRPD",true};
129  Gaudi::Property<bool> m_enableRPDAmp {this,"EnableRPDAmp",true};
130  Gaudi::Property<bool> m_enableCentroid {this,"EnableCentroid",true};
131 
132 
133  // owner, name (allows us to modify the key in python configuration), key
134  SG::ReadHandleKey<xAOD::ZdcModuleContainer> m_ZdcSumContainerKey {this, "ZdcSumContainerKey", "ZdcSums"};
135  SG::ReadHandleKey<xAOD::ZdcModuleContainer> m_ZdcModuleContainerKey {this, "ZdcModuleContainerKey", "ZdcModules"};
136  SG::ReadHandleKey<xAOD::HIEventShapeContainer> m_HIEventShapeContainerKey {this, "HIEventShapeContainerKey", "HIEventShape"};
137 
138  SG::ReadCondHandleKey<AthenaAttributeList> m_LBLBFolderInputKey{ this, "LBLBFolderInputKey", "/TRIGGER/LUMI/LBLB" };
139 
141  // SG::ReadDecorHandleKey<xAOD::ZdcModuleContainer> m_ZdcBCIDKey {this, "ZdcBCIDKey", m_zdcSumContainerName + ".BCID" + m_auxSuffix};
143 
144  // Per-am (module sum) observables
149 
150  // Module observables
163 
164  // LG refit data
165  SG::ReadDecorHandleKey<xAOD::ZdcModuleContainer> m_ZdcModuleFitAmpLGRefitKey{this, "ZdcModuleFitAmpLGRefitKey", m_zdcModuleContainerName + ".FitAmpLGRefit" + m_auxSuffix, "ZDC module fit amp LG refit"};
166  SG::ReadDecorHandleKey<xAOD::ZdcModuleContainer> m_ZdcModuleAmpLGRefitKey{this, "ZdcModuleAmpLGRefitKey", m_zdcModuleContainerName + ".AmpLGRefit" + m_auxSuffix, "ZDC module fit amp LG refit"};
167  SG::ReadDecorHandleKey<xAOD::ZdcModuleContainer> m_ZdcModuleT0LGRefitKey{this, "ZdcModuleT0LGRefitKey", m_zdcModuleContainerName + ".T0LGRefit" + m_auxSuffix, "ZDC module fit t0 LG refit"};
168  SG::ReadDecorHandleKey<xAOD::ZdcModuleContainer> m_ZdcModuleT0SubLGRefitKey{this, "ZdcModuleT0SubLGRefitKey", m_zdcModuleContainerName + ".T0SubLGRefit" + m_auxSuffix, "ZDC module subtracted t0 LG refit"};
169  SG::ReadDecorHandleKey<xAOD::ZdcModuleContainer> m_ZdcModuleChisqLGRefitKey{this, "ZdcModuleChisqLGRefitKey", m_zdcModuleContainerName + ".ChisqLGRefit" + m_auxSuffix, "ZDC module LG refit chi square"};
170 
171  // RPD channel observables
173  SG::ReadDecorHandleKey<xAOD::ZdcModuleContainer> m_RPDChannelAmplitudeCalibKey {this, "RPDChannelAmplitudeCalibKey", m_zdcModuleContainerName + ".RPDChannelAmplitudeCalib" + m_auxSuffix};
177 
178 
180  this, "RpdChannelPileupExpFitParamsKey", m_zdcModuleContainerName+".RPDChannelPileupExpFitParams"+m_auxSuffix,
181  "RPD channel pileup exponential fit parameters: exp( [0] + [1]*sample )"};
183  this, "RPDChannelPileupFracKey", m_zdcModuleContainerName+".RPDChannelPileupFrac"+m_auxSuffix,
184  "RPD channel pileup as fraction of total (nominal baseline-subtracted) sum ADC"};
186  this, "RPDChannelSubtrAmpKey", m_zdcSumContainerName + ".RPDChannelSubtrAmp" + m_auxSuffix,
187  "RPD channel subtracted amplitudes (tile mass) used in centroid calculation"};
189  this, "RPDSubtrAmpSumKey", m_zdcSumContainerName + ".RPDSubtrAmpSum" + m_auxSuffix,
190  "Sum of RPD channel subtracted amplitudes (total mass) used in centroid calculation"};
192  this, "xCentroidKey", m_zdcSumContainerName + ".xCentroid" + m_auxSuffix,
193  "X centroid after geometry corrections and after average centroid subtraction"};
195  this, "yCentroidKey", m_zdcSumContainerName + ".yCentroid" + m_auxSuffix,
196  "Y centroid after geometry corrections and after average centroid subtraction"};
197 
199  this, "reactionPlaneAngleKey", m_zdcSumContainerName + ".reactionPlaneAngle" + m_auxSuffix,
200  "Reaction plane angle in [-pi, pi) from the positive x axis (angle of centorid on side C, angle of centroid + pi on side A)"};
202  this, "cosDeltaReactionPlaneAngleKey", m_zdcSumContainerName + ".cosDeltaReactionPlaneAngle" + m_auxSuffix,
203  "Cosine of the difference between the reaction plane angles of the two sides"};
205  this, "centroidStatusKey", m_zdcSumContainerName + ".centroidStatus" + m_auxSuffix,
206  "Centroid status word"};
208  this, "RPDSideStatusKey", m_zdcSumContainerName + ".RPDStatus" + m_auxSuffix,
209  "Centroid status word"};
210  //---------------------------------------------------
211 
212 };
213 #endif
ZdcInjPulserAmpMap.h
ZdcMonitorAlgorithm::fillPhysicsDataHistograms
StatusCode fillPhysicsDataHistograms(const EventContext &ctx) const
Definition: ZdcMonitorAlgorithm.cxx:189
ZdcMonitorAlgorithm::m_nSecondsRejectStartofLBInjectorPulse
Gaudi::Property< unsigned int > m_nSecondsRejectStartofLBInjectorPulse
Definition: ZdcMonitorAlgorithm.h:85
ZdcMonitorAlgorithm::m_ZdcSumAverageTimeKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcSumAverageTimeKey
Definition: ZdcMonitorAlgorithm.h:146
ZdcMonitorAlgorithm::m_ZdcModuleChisqKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleChisqKey
Definition: ZdcMonitorAlgorithm.h:157
ZdcMonitorAlgorithm::m_ZDCEnergyCutForCentroidValidBitMonitor
Gaudi::Property< float > m_ZDCEnergyCutForCentroidValidBitMonitor
Definition: ZdcMonitorAlgorithm.h:64
ZdcMonitorAlgorithm::m_minAmpRequiredLGInjectorPulse
Gaudi::Property< float > m_minAmpRequiredLGInjectorPulse
Definition: ZdcMonitorAlgorithm.h:87
ZdcMonitorAlgorithm::m_zdcSumContainerName
Gaudi::Property< std::string > m_zdcSumContainerName
Definition: ZdcMonitorAlgorithm.h:58
ReadDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
ZdcMonitorAlgorithm::UCCTrigDisabledBit
@ UCCTrigDisabledBit
Definition: ZdcMonitorAlgorithm.h:41
ZdcMonitorAlgorithm::TrigHELT35Bit
@ TrigHELT35Bit
Definition: ZdcMonitorAlgorithm.h:37
ZdcMonitorAlgorithm::m_moduleChisqHistMaxvalue
Gaudi::Property< float > m_moduleChisqHistMaxvalue
Definition: ZdcMonitorAlgorithm.h:67
ZdcMonitorAlgorithm::m_RPDChannelToolIndices
std::map< std::string, std::map< std::string, int > > m_RPDChannelToolIndices
Definition: ZdcMonitorAlgorithm.h:106
ZdcMonitorAlgorithm::m_nRpdStatusBits
static const int m_nRpdStatusBits
Definition: ZdcMonitorAlgorithm.h:100
ZdcMonitorAlgorithm::m_RPDSideStatusKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_RPDSideStatusKey
Definition: ZdcMonitorAlgorithm.h:207
ZdcMonitorAlgorithm::m_UCCtriggerHELT35
Gaudi::Property< std::string > m_UCCtriggerHELT35
Definition: ZdcMonitorAlgorithm.h:81
ZdcMonitorAlgorithm::m_ZdcSumUncalibSumKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcSumUncalibSumKey
Definition: ZdcMonitorAlgorithm.h:147
ZdcMonitorAlgorithm::m_ZdcModuleT0SubLGRefitKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleT0SubLGRefitKey
Definition: ZdcMonitorAlgorithm.h:168
ZdcMonitorAlgorithm::fillHistograms
virtual StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
Definition: ZdcMonitorAlgorithm.cxx:932
ZdcMonitorAlgorithm
Definition: ZdcMonitorAlgorithm.py:1
ZdcMonitorAlgorithm::m_RPDChannelPileupFracKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_RPDChannelPileupFracKey
Definition: ZdcMonitorAlgorithm.h:182
ZdcMonitorAlgorithm::m_ZdcModuleMaxADCHGKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleMaxADCHGKey
Definition: ZdcMonitorAlgorithm.h:161
ZdcMonitorAlgorithm::m_RPDyCentroidKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_RPDyCentroidKey
Definition: ZdcMonitorAlgorithm.h:194
ZdcMonitorAlgorithm::m_RPDChannelAmplitudeCalibKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_RPDChannelAmplitudeCalibKey
Definition: ZdcMonitorAlgorithm.h:173
ZdcMonitorAlgorithm::m_ZdcModuleContainerKey
SG::ReadHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleContainerKey
Definition: ZdcMonitorAlgorithm.h:135
ZdcMonitorAlgorithm::TrigHELT50Bit
@ TrigHELT50Bit
Definition: ZdcMonitorAlgorithm.h:36
ZdcMonitorAlgorithm::m_ZdcModuleFitT0Key
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleFitT0Key
Definition: ZdcMonitorAlgorithm.h:156
ZdcMonitorAlgorithm::m_isOnline
Gaudi::Property< bool > m_isOnline
Definition: ZdcMonitorAlgorithm.h:118
ZdcMonitorAlgorithm::m_ZdcModuleChisqLGRefitKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleChisqLGRefitKey
Definition: ZdcMonitorAlgorithm.h:169
ZdcMonitorAlgorithm::m_isSim
Gaudi::Property< bool > m_isSim
Definition: ZdcMonitorAlgorithm.h:119
ZdcMonitorAlgorithm::TrigHELT25Bit
@ TrigHELT25Bit
Definition: ZdcMonitorAlgorithm.h:38
ZdcMonitorAlgorithm::m_ZdcModuleAmpNoNonLinKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleAmpNoNonLinKey
Definition: ZdcMonitorAlgorithm.h:154
ZdcMonitorAlgorithm::m_zdcModuleContainerName
Gaudi::Property< std::string > m_zdcModuleContainerName
Definition: ZdcMonitorAlgorithm.h:57
ZdcMonitorAlgorithm::m_isPPMode
Gaudi::Property< bool > m_isPPMode
Definition: ZdcMonitorAlgorithm.h:123
ZdcMonitorAlgorithm::m_moduleChisqHistMinValue
Gaudi::Property< float > m_moduleChisqHistMinValue
Definition: ZdcMonitorAlgorithm.h:66
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
AthenaAttributeList.h
ZdcMonitorAlgorithm::m_ZdcModuleAmpLGRefitKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleAmpLGRefitKey
Definition: ZdcMonitorAlgorithm.h:166
ZdcMonitorAlgorithm::m_nSides
static const int m_nSides
Definition: ZdcMonitorAlgorithm.h:94
ZdcMonitorAlgorithm::m_enableCentroid
Gaudi::Property< bool > m_enableCentroid
Definition: ZdcMonitorAlgorithm.h:130
ZdcMonitorAlgorithm::m_ZdcModuleFitAmpKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleFitAmpKey
Definition: ZdcMonitorAlgorithm.h:155
ZdcMonitorAlgorithm::m_ZdcModuleChisqOverAmpBinEdges
std::vector< float > m_ZdcModuleChisqOverAmpBinEdges
Definition: ZdcMonitorAlgorithm.h:109
ZdcMonitorAlgorithm::m_triggerSideA
Gaudi::Property< std::string > m_triggerSideA
Definition: ZdcMonitorAlgorithm.h:74
ZdcMonitorAlgorithm::m_RPDChannelMaxADCKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_RPDChannelMaxADCKey
Definition: ZdcMonitorAlgorithm.h:174
ZdcMonitorAlgorithm::m_ZdcModuleCalibTimeKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleCalibTimeKey
Definition: ZdcMonitorAlgorithm.h:159
ZdcMonitorAlgorithm::m_UCCtriggerHELT50
Gaudi::Property< std::string > m_UCCtriggerHELT50
Definition: ZdcMonitorAlgorithm.h:82
AthMonitorAlgorithm
Base class for Athena Monitoring Algorithms.
Definition: AthMonitorAlgorithm.h:36
ZdcMonitorAlgorithm::m_triggerSideC
Gaudi::Property< std::string > m_triggerSideC
Definition: ZdcMonitorAlgorithm.h:75
ZdcMonitorAlgorithm::m_zdcInjPulserAmpMap
std::shared_ptr< ZdcInjPulserAmpMap > m_zdcInjPulserAmpMap
Definition: ZdcMonitorAlgorithm.h:111
ZdcMonitorAlgorithm::m_expected1N
Gaudi::Property< float > m_expected1N
Definition: ZdcMonitorAlgorithm.h:61
ZdcMonitorAlgorithm::m_HIEventShapeContainerKey
SG::ReadHandleKey< xAOD::HIEventShapeContainer > m_HIEventShapeContainerKey
Definition: ZdcMonitorAlgorithm.h:136
ZdcMonitorAlgorithm::m_moduleChisqOverAmpHistMaxvalue
Gaudi::Property< float > m_moduleChisqOverAmpHistMaxvalue
Definition: ZdcMonitorAlgorithm.h:70
ZdcMonitorAlgorithm::m_RPDSubtrAmpSumKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_RPDSubtrAmpSumKey
Definition: ZdcMonitorAlgorithm.h:188
ZdcMonitorAlgorithm::m_ZdcModuleStatusKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleStatusKey
Definition: ZdcMonitorAlgorithm.h:151
ZdcMonitorAlgorithm::m_RPDxCentroidKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_RPDxCentroidKey
Definition: ZdcMonitorAlgorithm.h:191
ZdcMonitorAlgorithm::m_DAQModeKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_DAQModeKey
Definition: ZdcMonitorAlgorithm.h:142
ZdcMonitorAlgorithm::m_nModules
static const int m_nModules
Definition: ZdcMonitorAlgorithm.h:95
ZdcMonitorAlgorithm::m_enableRPD
Gaudi::Property< bool > m_enableRPD
Definition: ZdcMonitorAlgorithm.h:128
ZdcMonitorAlgorithm::m_ZdcSumModuleMaskKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcSumModuleMaskKey
Definition: ZdcMonitorAlgorithm.h:148
ZdcMonitorAlgorithm::m_EnableZDCSingleSideTriggers
Gaudi::Property< bool > m_EnableZDCSingleSideTriggers
Definition: ZdcMonitorAlgorithm.h:121
ZdcMonitorAlgorithm::DecodingErrors
DecodingErrors
Definition: ZdcMonitorAlgorithm.h:29
ZdcMonitorAlgorithm::m_CalInfoOn
Gaudi::Property< bool > m_CalInfoOn
Definition: ZdcMonitorAlgorithm.h:120
ZdcMonitorAlgorithm::m_nUCCTrigBits
static const int m_nUCCTrigBits
Definition: ZdcMonitorAlgorithm.h:98
ZdcMonitorAlgorithm::m_RPDChannelStatusKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_RPDChannelStatusKey
Definition: ZdcMonitorAlgorithm.h:176
ZdcMonitorAlgorithm::m_RPDChannelSubtrAmpKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_RPDChannelSubtrAmpKey
Definition: ZdcMonitorAlgorithm.h:185
ZdcMonitorAlgorithm::m_ZdcModuleMaxADCLGKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleMaxADCLGKey
Definition: ZdcMonitorAlgorithm.h:162
ZdcMonitorAlgorithm::UCCTrigEnabledBit
@ UCCTrigEnabledBit
Definition: ZdcMonitorAlgorithm.h:35
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthMonitorAlgorithm.h
ZdcMonitorAlgorithm::m_RPDChannelMaxSampleKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_RPDChannelMaxSampleKey
Definition: ZdcMonitorAlgorithm.h:175
ZdcMonitorAlgorithm::m_injMapRunToken
ZdcInjPulserAmpMap::Token m_injMapRunToken
Definition: ZdcMonitorAlgorithm.h:55
HIEventShapeContainer.h
ZdcMonitorAlgorithm::m_enableZDC
Gaudi::Property< bool > m_enableZDC
Definition: ZdcMonitorAlgorithm.h:126
ZdcMonitorAlgorithm::~ZdcMonitorAlgorithm
virtual ~ZdcMonitorAlgorithm()
Definition: ZdcMonitorAlgorithm.cxx:16
ZdcMonitorAlgorithm::m_RPDChannelAmplitudeKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_RPDChannelAmplitudeKey
Definition: ZdcMonitorAlgorithm.h:172
ZdcMonitorAlgorithm::m_isStandalone
Gaudi::Property< bool > m_isStandalone
Definition: ZdcMonitorAlgorithm.h:125
ZdcMonitorAlgorithm::m_ZdcModuleCalibEnergyKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleCalibEnergyKey
Definition: ZdcMonitorAlgorithm.h:158
ZdcMonitorAlgorithm::m_minVInjToImposeAmpRequirementLGInjectorPulse
Gaudi::Property< float > m_minVInjToImposeAmpRequirementLGInjectorPulse
Definition: ZdcMonitorAlgorithm.h:89
ZdcMonitorAlgorithm::m_RPDChannelPileupExpFitParamsKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_RPDChannelPileupExpFitParamsKey
Definition: ZdcMonitorAlgorithm.h:179
ZdcMonitorAlgorithm::m_auxSuffix
Gaudi::Property< std::string > m_auxSuffix
Definition: ZdcMonitorAlgorithm.h:59
ZdcMonitorAlgorithm::m_ZdcSumContainerKey
SG::ReadHandleKey< xAOD::ZdcModuleContainer > m_ZdcSumContainerKey
Definition: ZdcMonitorAlgorithm.h:134
ZdcMonitorAlgorithm::m_nRpdCentroidStatusBits
static const int m_nRpdCentroidStatusBits
Definition: ZdcMonitorAlgorithm.h:101
Monitored.h
Header file to be included by clients of the Monitored infrastructure.
ZdcMonitorAlgorithm::m_enableRPDAmp
Gaudi::Property< bool > m_enableRPDAmp
Definition: ZdcMonitorAlgorithm.h:129
ZdcMonitorAlgorithm::m_minVInjToImposeAmpRequirementHGInjectorPulse
Gaudi::Property< float > m_minVInjToImposeAmpRequirementHGInjectorPulse
Definition: ZdcMonitorAlgorithm.h:88
ReadCondHandleKey.h
ZdcInjPulserAmpMap::Token
Definition: ZdcInjPulserAmpMap.h:28
ZdcMonitorAlgorithm::m_ZDCSideToolIndices
std::map< std::string, int > m_ZDCSideToolIndices
Definition: ZdcMonitorAlgorithm.h:104
ZdcMonitorAlgorithm::m_ZdcModuleFitAmpLGRefitKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleFitAmpLGRefitKey
Definition: ZdcMonitorAlgorithm.h:165
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
ZdcMonitorAlgorithm::NoDecodingErrorBit
@ NoDecodingErrorBit
Definition: ZdcMonitorAlgorithm.h:30
ZdcMonitorAlgorithm::m_ZDCModuleToolIndices
std::map< std::string, std::map< std::string, int > > m_ZDCModuleToolIndices
Definition: ZdcMonitorAlgorithm.h:105
ZdcMonitorAlgorithm::m_ZdcModuleT0LGRefitKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleT0LGRefitKey
Definition: ZdcMonitorAlgorithm.h:167
ZdcMonitorAlgorithm::m_eventTypeKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_eventTypeKey
Definition: ZdcMonitorAlgorithm.h:140
ZdcMonitorAlgorithm::m_ZdcModuleTimeKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleTimeKey
Definition: ZdcMonitorAlgorithm.h:153
ZdcMonitorAlgorithm::m_timingCutsInjectorPulse
float m_timingCutsInjectorPulse[2][4][2]
Definition: ZdcMonitorAlgorithm.h:84
EventInfo.h
ZdcMonitorAlgorithm::ZDCDecodingErrorBit
@ ZDCDecodingErrorBit
Definition: ZdcMonitorAlgorithm.h:31
SG::ReadCondHandleKey< AthenaAttributeList >
ZdcMonitorAlgorithm::m_ZdcModuleMaxADCKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleMaxADCKey
Definition: ZdcMonitorAlgorithm.h:160
ZdcMonitorAlgorithm::RPDDecodingErrorBit
@ RPDDecodingErrorBit
Definition: ZdcMonitorAlgorithm.h:32
ZdcMonitorAlgorithm::m_EnableUCCTriggers
Gaudi::Property< bool > m_EnableUCCTriggers
Definition: ZdcMonitorAlgorithm.h:122
ZdcMonitorAlgorithm::TrigHELT15Bit
@ TrigHELT15Bit
Definition: ZdcMonitorAlgorithm.h:40
ZdcMonitorAlgorithm::ZdcMonitorAlgorithm
ZdcMonitorAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Definition: ZdcMonitorAlgorithm.cxx:10
ZdcMonitorAlgorithm::m_ZdcModuleAmplitudeKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcModuleAmplitudeKey
Definition: ZdcMonitorAlgorithm.h:152
ZdcMonitorAlgorithm::calculate_inverse_bin_width
float calculate_inverse_bin_width(float event_value, const std::string &variable_name, const std::vector< float > &bin_edges) const
Definition: ZdcMonitorAlgorithm.cxx:38
ZdcMonitorAlgorithm::initialize
virtual StatusCode initialize() override
initialize
Definition: ZdcMonitorAlgorithm.cxx:74
ZdcMonitorAlgorithm::m_LBLBFolderInputKey
SG::ReadCondHandleKey< AthenaAttributeList > m_LBLBFolderInputKey
Definition: ZdcMonitorAlgorithm.h:138
ZdcMonitorAlgorithm::m_UCCtriggerHELT15
Gaudi::Property< std::string > m_UCCtriggerHELT15
Definition: ZdcMonitorAlgorithm.h:78
ZdcMonitorAlgorithm::m_UCCtriggerHELT20
Gaudi::Property< std::string > m_UCCtriggerHELT20
Definition: ZdcMonitorAlgorithm.h:79
ZdcMonitorAlgorithm::m_moduleChisqHistNumBins
Gaudi::Property< float > m_moduleChisqHistNumBins
Definition: ZdcMonitorAlgorithm.h:68
ZdcMonitorAlgorithm::m_nChannels
static const int m_nChannels
Definition: ZdcMonitorAlgorithm.h:96
ZdcMonitorAlgorithm::m_moduleChisqOverAmpHistMinValue
Gaudi::Property< float > m_moduleChisqOverAmpHistMinValue
Definition: ZdcMonitorAlgorithm.h:69
ZdcMonitorAlgorithm::m_moduleChisqOverAmpHistNumBins
Gaudi::Property< float > m_moduleChisqOverAmpHistNumBins
Definition: ZdcMonitorAlgorithm.h:71
ZdcMonitorAlgorithm::m_ZdcModuleChisqBinEdges
std::vector< float > m_ZdcModuleChisqBinEdges
Definition: ZdcMonitorAlgorithm.h:108
ZdcMonitorAlgorithm::m_RPDreactionPlaneAngleKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_RPDreactionPlaneAngleKey
Definition: ZdcMonitorAlgorithm.h:198
ZdcMonitorAlgorithm::m_isInjectedPulse
Gaudi::Property< bool > m_isInjectedPulse
Definition: ZdcMonitorAlgorithm.h:124
ReadDecorHandle.h
Handle class for reading a decoration on an object.
ZdcMonitorAlgorithm::m_runNumber
Gaudi::Property< unsigned int > m_runNumber
Definition: ZdcMonitorAlgorithm.h:54
ZdcMonitorAlgorithm::calculate_log_bin_edges
void calculate_log_bin_edges(float min_value, float max_value, int num_bins, std::vector< float > &bin_edges)
Definition: ZdcMonitorAlgorithm.cxx:19
SG::ReadDecorHandleKey
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Definition: StoreGate/StoreGate/ReadDecorHandleKey.h:85
ZdcMonitorAlgorithm::TrigHELT20Bit
@ TrigHELT20Bit
Definition: ZdcMonitorAlgorithm.h:39
ZdcMonitorAlgorithm::UCCTriggers
UCCTriggers
Definition: ZdcMonitorAlgorithm.h:34
ZdcMonitorAlgorithm::m_minAmpRequiredHGInjectorPulse
Gaudi::Property< float > m_minAmpRequiredHGInjectorPulse
Definition: ZdcMonitorAlgorithm.h:86
ZdcMonitorAlgorithm::m_RPDcosDeltaReactionPlaneAngleKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_RPDcosDeltaReactionPlaneAngleKey
Definition: ZdcMonitorAlgorithm.h:201
ZdcMonitorAlgorithm::m_ZdcSumCalibEnergyKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_ZdcSumCalibEnergyKey
Definition: ZdcMonitorAlgorithm.h:145
ZdcModuleContainer.h
ZdcEventInfo.h
Define enumerations for event-level ZDC data.
ZdcMonitorAlgorithm::m_UCCtriggerHELT25
Gaudi::Property< std::string > m_UCCtriggerHELT25
Definition: ZdcMonitorAlgorithm.h:80
ZdcMonitorAlgorithm::m_lbTimeCoolFolderName
Gaudi::Property< std::string > m_lbTimeCoolFolderName
Definition: ZdcMonitorAlgorithm.h:91
ZdcMonitorAlgorithm::m_enableZDCPhysics
Gaudi::Property< bool > m_enableZDCPhysics
Definition: ZdcMonitorAlgorithm.h:127
ZdcMonitorAlgorithm::m_RPDcentroidStatusKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_RPDcentroidStatusKey
Definition: ZdcMonitorAlgorithm.h:204
ZdcMonitorAlgorithm::m_nDecodingErrorBits
static const int m_nDecodingErrorBits
Definition: ZdcMonitorAlgorithm.h:97
ZdcMonitorAlgorithm::m_nZdcStatusBits
static const int m_nZdcStatusBits
Definition: ZdcMonitorAlgorithm.h:99
ZdcMonitorAlgorithm::m_energyCutForModuleFractMonitor
Gaudi::Property< float > m_energyCutForModuleFractMonitor
Definition: ZdcMonitorAlgorithm.h:63