ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LArCalorimeter
LArCalibDataQuality
LArCalibDataQuality
LArPedestalValidationAlg.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
14
15
16
17
18
#ifndef LARPEDESTALVALIDATIONALG_H
19
#define LARPEDESTALVALIDATIONALG_H
20
21
#include <vector>
22
#include <string>
23
24
#include "
LArRawConditions/LArPedestalComplete.h
"
25
#include "
LArCalibDataQuality/LArCalibValidationAlg.h
"
26
#include "
CaloIdentifier/CaloCellGroup.h
"
27
28
29
typedef
LArCalibValidationAlg<LArPedestalComplete,ILArPedestal>
LArPedestalValidationBase
;
30
31
39
40
class
LArPedestalValidationAlg
:
public
LArPedestalValidationBase
{
41
42
public
:
46
LArPedestalValidationAlg
(
const
std::string& name, ISvcLocator* pSvcLocator);
47
48
private
:
51
bool
validateChannel
(
const
LArCondObj
&
ref
,
const
LArCondObj
& val,
const
HWIdentifier
chid,
const
int
gain,
const
LArOnOffIdMapping
*cabling,
const
LArBadChannelCont
*bcCont)
override
final
;
52
53
virtual
LArCondObj
getRefObj
(
const
HWIdentifier
chid,
const
int
gain)
const
override
final
;
54
56
virtual
StatusCode
summary
(
const
LArOnOffIdMapping
*cabling,
const
LArBadChannelCont
*bcCont)
override
;
57
59
virtual
StatusCode
preLoop
()
override
;
60
61
63
//float m_pedTolerance;
65
//float m_rmsTolerance;
66
68
//Expectes three numbers (one per gain)
69
std::vector<std::string>
m_pedToleranceInit
;
70
CaloCellGroupList
m_pedTolerance
;
71
72
74
//Expectes three numbers (one per gain)
75
std::vector<std::string>
m_rmsToleranceInit
;
76
CaloCellGroupList
m_rmsTolerance
;
77
78
80
//float m_pedToleranceFEB;
81
std::vector<std::string>
m_pedToleranceFEBInit
;
82
CaloCellGroupList
m_pedToleranceFEB
;
83
85
//float m_rmsToleranceFEB;
86
std::vector<std::string>
m_rmsToleranceFEBInit
;
87
CaloCellGroupList
m_rmsToleranceFEB
;
88
89
//The following is for keeping track of entire FEBs
91
bool
febSummary
(
const
LArOnOffIdMapping
*cabling,
const
LArBadChannelCont
*bcCont);
92
93
94
class
DataPerFEB
{
95
public
:
96
DataPerFEB
() :
chid
(0),
febid
(0),
gain
(0),
97
pedVal
(0.),
rmsVal
(0.),
pedRef
(0.),
rmsRef
(0.),
nEntries
(0) {}
98
DataPerFEB
(
const
HWIdentifier
cid,
const
HWIdentifier
fid,
int
g) :
chid
(cid),
febid
(fid),
gain
(g),
99
pedVal
(0.),
rmsVal
(0.),
pedRef
(0.),
rmsRef
(0.),
nEntries
(0) {}
100
HWIdentifier
chid
;
//We need to remember the first connected channel for the offline id conversion
101
HWIdentifier
febid
;
102
int
gain
;
103
double
pedVal
;
104
double
rmsVal
;
105
double
pedRef
;
106
double
rmsRef
;
107
unsigned
nEntries
;
108
};
109
110
std::vector<DataPerFEB>
m_vDataPerFEB
;
111
112
//The following is for keeping track of the global average
113
double
m_pedGlobalVal
,
m_rmsGlobalVal
;
114
double
m_pedGlobalRef
,
m_rmsGlobalRef
;
115
unsigned
m_nEntriesGlobal
;
116
};
117
118
119
#endif
120
ref
const std::regex ref(r_ef)
CaloCellGroup.h
LArBadChannelCont
LArBadXCont< LArBadChannel > LArBadChannelCont
Definition
LArBadChannelCont.h:108
LArCalibValidationAlg.h
LArPedestalComplete.h
LArPedestalValidationBase
LArCalibValidationAlg< LArPedestalComplete, ILArPedestal > LArPedestalValidationBase
Definition
LArPedestalValidationAlg.h:29
CaloCellGroupList
Definition
CaloCellGroup.h:59
HWIdentifier
Definition
HWIdentifier.h:13
LArCalibValidationAlg
Algorithm to validate LAr Autocorr;.
Definition
LArCalibValidationAlg.h:47
LArCalibValidationAlg< LArPedestalComplete, ILArPedestal >::LArCondObj
LArPedestalComplete::LArCondObj LArCondObj
Definition
LArCalibValidationAlg.h:80
LArOnOffIdMapping
Definition
LArOnOffIdMapping.h:20
LArPedestalValidationAlg::DataPerFEB::gain
int gain
Definition
LArPedestalValidationAlg.h:102
LArPedestalValidationAlg::DataPerFEB::DataPerFEB
DataPerFEB(const HWIdentifier cid, const HWIdentifier fid, int g)
Definition
LArPedestalValidationAlg.h:98
LArPedestalValidationAlg::DataPerFEB::DataPerFEB
DataPerFEB()
Definition
LArPedestalValidationAlg.h:96
LArPedestalValidationAlg::DataPerFEB::nEntries
unsigned nEntries
Definition
LArPedestalValidationAlg.h:107
LArPedestalValidationAlg::DataPerFEB::febid
HWIdentifier febid
Definition
LArPedestalValidationAlg.h:101
LArPedestalValidationAlg::DataPerFEB::pedVal
double pedVal
Definition
LArPedestalValidationAlg.h:103
LArPedestalValidationAlg::DataPerFEB::chid
HWIdentifier chid
Definition
LArPedestalValidationAlg.h:100
LArPedestalValidationAlg::DataPerFEB::rmsRef
double rmsRef
Definition
LArPedestalValidationAlg.h:106
LArPedestalValidationAlg::DataPerFEB::pedRef
double pedRef
Definition
LArPedestalValidationAlg.h:105
LArPedestalValidationAlg::DataPerFEB::rmsVal
double rmsVal
Definition
LArPedestalValidationAlg.h:104
LArPedestalValidationAlg::m_nEntriesGlobal
unsigned m_nEntriesGlobal
Definition
LArPedestalValidationAlg.h:115
LArPedestalValidationAlg::m_pedTolerance
CaloCellGroupList m_pedTolerance
Definition
LArPedestalValidationAlg.h:70
LArPedestalValidationAlg::m_vDataPerFEB
std::vector< DataPerFEB > m_vDataPerFEB
Definition
LArPedestalValidationAlg.h:110
LArPedestalValidationAlg::m_rmsToleranceInit
std::vector< std::string > m_rmsToleranceInit
Pedestal RMS tolerances as CaloCellGroupList (job-Properties).
Definition
LArPedestalValidationAlg.h:75
LArPedestalValidationAlg::m_pedGlobalVal
double m_pedGlobalVal
Definition
LArPedestalValidationAlg.h:113
LArPedestalValidationAlg::summary
virtual StatusCode summary(const LArOnOffIdMapping *cabling, const LArBadChannelCont *bcCont) override
Summary method executed after the loop over all channels.
Definition
LArPedestalValidationAlg.cxx:196
LArPedestalValidationAlg::m_pedToleranceFEB
CaloCellGroupList m_pedToleranceFEB
Definition
LArPedestalValidationAlg.h:82
LArPedestalValidationAlg::m_rmsGlobalVal
double m_rmsGlobalVal
Definition
LArPedestalValidationAlg.h:113
LArPedestalValidationAlg::getRefObj
virtual LArCondObj getRefObj(const HWIdentifier chid, const int gain) const override final
Method implmented in derived class to get the reference object from ref-container.
Definition
LArPedestalValidationAlg.cxx:223
LArPedestalValidationAlg::m_rmsToleranceFEBInit
std::vector< std::string > m_rmsToleranceFEBInit
Tolerance fro the average pedestal RMS (noise) of one FEB (in ADC counts) (job-Property).
Definition
LArPedestalValidationAlg.h:86
LArPedestalValidationAlg::m_rmsToleranceFEB
CaloCellGroupList m_rmsToleranceFEB
Definition
LArPedestalValidationAlg.h:87
LArPedestalValidationAlg::febSummary
bool febSummary(const LArOnOffIdMapping *cabling, const LArBadChannelCont *bcCont)
Method to compare FEB averages.
Definition
LArPedestalValidationAlg.cxx:157
LArPedestalValidationAlg::LArPedestalValidationAlg
LArPedestalValidationAlg(const std::string &name, ISvcLocator *pSvcLocator)
Regular algorithm constructor.
Definition
LArPedestalValidationAlg.cxx:8
LArPedestalValidationAlg::m_rmsGlobalRef
double m_rmsGlobalRef
Definition
LArPedestalValidationAlg.h:114
LArPedestalValidationAlg::preLoop
virtual StatusCode preLoop() override
Executed before the loop over all channels to reset global sums.
Definition
LArPedestalValidationAlg.cxx:28
LArPedestalValidationAlg::m_pedToleranceFEBInit
std::vector< std::string > m_pedToleranceFEBInit
Tolerance fro the average pedestal of one FEB (in ADC counts) (job-Property).
Definition
LArPedestalValidationAlg.h:81
LArPedestalValidationAlg::m_rmsTolerance
CaloCellGroupList m_rmsTolerance
Definition
LArPedestalValidationAlg.h:76
LArPedestalValidationAlg::m_pedToleranceInit
std::vector< std::string > m_pedToleranceInit
Pedestal tolerance (in ADC counts) (job-Property).
Definition
LArPedestalValidationAlg.h:69
LArPedestalValidationAlg::m_pedGlobalRef
double m_pedGlobalRef
Definition
LArPedestalValidationAlg.h:114
LArPedestalValidationAlg::validateChannel
bool validateChannel(const LArCondObj &ref, const LArCondObj &val, const HWIdentifier chid, const int gain, const LArOnOffIdMapping *cabling, const LArBadChannelCont *bcCont) override final
Method to validate the pedestal single readout channels.
Definition
LArPedestalValidationAlg.cxx:95
Generated on
for ATLAS Offline Software by
1.17.0