ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LArCalorimeter
LArCalibDataQuality
LArCalibDataQuality
LArCaliWaveValidationAlg.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3
*/
4
11
12
13
14
#ifndef LARCALIWAVEVALIDATIONALG_H
15
#define LARCALIWAVEVALIDATIONALG_H
16
17
#include <vector>
18
#include <string>
19
20
#include "
LArRawConditions/LArCaliWaveContainer.h
"
21
#include "
LArCalibDataQuality/LArCalibValidationAlg.h
"
22
#include "
LArRawConditions/LArWaveHelper.h
"
23
#include "
CaloIdentifier/CaloCellGroup.h
"
24
25
typedef
LArCalibValidationAlg<LArCaliWaveContainer,LArCaliWaveContainer>
LArCaliWaveValidationBase
;
26
27
35
36
class
LArCaliWaveValidationAlg
:
public
LArCaliWaveValidationBase
{
37
38
public
:
42
LArCaliWaveValidationAlg
(
const
std::string& name, ISvcLocator* pSvcLocator);
43
44
private
:
47
bool
validateChannel
(
const
LArCondObj
&
ref
,
const
LArCondObj
& val,
const
HWIdentifier
chid,
const
int
gain,
const
LArOnOffIdMapping
*cabling,
const
LArBadChannelCont
*bcCont)
override
final
;
48
49
LArCondObj
getRefObj
(
const
HWIdentifier
chid,
const
int
gain)
const
override
final
{
50
return
m_reference
->get(chid,gain);
51
}
52
53
55
virtual
StatusCode
summary
(
const
LArOnOffIdMapping
*cabling,
const
LArBadChannelCont
*bcCont)
override
;
56
58
virtual
StatusCode
preLoop
()
override
;
59
60
62
std::vector<std::string>
m_ampToleranceInit
;
63
CaloCellGroupList
m_ampTolerance
;
64
66
std::vector<std::string>
m_ampToleranceFEBInit
;
67
CaloCellGroupList
m_ampToleranceFEB
;
68
70
std::vector<std::string>
m_fwhmToleranceInit
;
71
CaloCellGroupList
m_fwhmTolerance
;
72
74
std::vector<std::string>
m_fwhmToleranceFEBInit
;
75
CaloCellGroupList
m_fwhmToleranceFEB
;
76
77
bool
m_timeShift
;
78
79
//The following is for keeping track of entire FEBs
81
bool
febSummary
(
const
LArOnOffIdMapping
*cabling,
const
LArBadChannelCont
*bcCont);
82
83
class
DataPerFEB
{
84
public
:
85
DataPerFEB
() :
chid
(0),
febid
(0),
gain
(0),
86
ampVal
(0.),
fwhmVal
(0.),
ampRef
(0.),
fwhmRef
(0.),
nEntries
(0) {}
87
DataPerFEB
(
const
HWIdentifier
cid,
const
HWIdentifier
fid,
int
g) :
88
chid
(cid),
febid
(fid),
gain
(g),
ampVal
(0.),
fwhmVal
(0.),
ampRef
(0.),
fwhmRef
(0.),
nEntries
(0) {}
89
HWIdentifier
chid
;
90
HWIdentifier
febid
;
91
int
gain
;
92
double
ampVal
;
93
double
fwhmVal
;
94
double
ampRef
;
95
double
fwhmRef
;
96
unsigned
nEntries
;
97
};
98
99
std::vector<DataPerFEB>
m_vDataPerFEB
;
100
101
//The following is for keeping track of the global average
102
double
m_ampGlobalVal
=0;
103
double
m_fwhmGlobalVal
=0;
104
double
m_ampGlobalRef
=0;
105
double
m_fwhmGlobalRef
=0;
106
unsigned
m_nEntriesGlobal
=0;
107
108
LArWaveHelper
m_waveHelper
;
109
110
};
111
112
113
#endif
114
ref
const std::regex ref(r_ef)
CaloCellGroup.h
LArBadChannelCont
LArBadXCont< LArBadChannel > LArBadChannelCont
Definition
LArBadChannelCont.h:108
LArCaliWaveContainer.h
LArCaliWaveValidationBase
LArCalibValidationAlg< LArCaliWaveContainer, LArCaliWaveContainer > LArCaliWaveValidationBase
Definition
LArCaliWaveValidationAlg.h:25
LArCalibValidationAlg.h
LArWaveHelper.h
CaloCellGroupList
Definition
CaloCellGroup.h:59
HWIdentifier
Definition
HWIdentifier.h:13
LArCaliWaveValidationAlg::DataPerFEB::ampRef
double ampRef
Definition
LArCaliWaveValidationAlg.h:94
LArCaliWaveValidationAlg::DataPerFEB::DataPerFEB
DataPerFEB()
Definition
LArCaliWaveValidationAlg.h:85
LArCaliWaveValidationAlg::DataPerFEB::nEntries
unsigned nEntries
Definition
LArCaliWaveValidationAlg.h:96
LArCaliWaveValidationAlg::DataPerFEB::febid
HWIdentifier febid
Definition
LArCaliWaveValidationAlg.h:90
LArCaliWaveValidationAlg::DataPerFEB::fwhmRef
double fwhmRef
Definition
LArCaliWaveValidationAlg.h:95
LArCaliWaveValidationAlg::DataPerFEB::ampVal
double ampVal
Definition
LArCaliWaveValidationAlg.h:92
LArCaliWaveValidationAlg::DataPerFEB::chid
HWIdentifier chid
Definition
LArCaliWaveValidationAlg.h:89
LArCaliWaveValidationAlg::DataPerFEB::gain
int gain
Definition
LArCaliWaveValidationAlg.h:91
LArCaliWaveValidationAlg::DataPerFEB::fwhmVal
double fwhmVal
Definition
LArCaliWaveValidationAlg.h:93
LArCaliWaveValidationAlg::DataPerFEB::DataPerFEB
DataPerFEB(const HWIdentifier cid, const HWIdentifier fid, int g)
Definition
LArCaliWaveValidationAlg.h:87
LArCaliWaveValidationAlg::m_ampGlobalVal
double m_ampGlobalVal
Definition
LArCaliWaveValidationAlg.h:102
LArCaliWaveValidationAlg::summary
virtual StatusCode summary(const LArOnOffIdMapping *cabling, const LArBadChannelCont *bcCont) override
Summary method executed after the loop over all channels.
Definition
LArCaliWaveValidationAlg.cxx:216
LArCaliWaveValidationAlg::m_timeShift
bool m_timeShift
Definition
LArCaliWaveValidationAlg.h:77
LArCaliWaveValidationAlg::LArCaliWaveValidationAlg
LArCaliWaveValidationAlg(const std::string &name, ISvcLocator *pSvcLocator)
Regular algorithm constructor.
Definition
LArCaliWaveValidationAlg.cxx:8
LArCaliWaveValidationAlg::m_ampToleranceFEB
CaloCellGroupList m_ampToleranceFEB
Definition
LArCaliWaveValidationAlg.h:67
LArCaliWaveValidationAlg::febSummary
bool febSummary(const LArOnOffIdMapping *cabling, const LArBadChannelCont *bcCont)
Method to compare FEB averages.
Definition
LArCaliWaveValidationAlg.cxx:181
LArCaliWaveValidationAlg::m_ampToleranceFEBInit
std::vector< std::string > m_ampToleranceFEBInit
Tolerance for the average amplitude of one FEB (in permills) (job-Property).
Definition
LArCaliWaveValidationAlg.h:66
LArCaliWaveValidationAlg::m_ampTolerance
CaloCellGroupList m_ampTolerance
Definition
LArCaliWaveValidationAlg.h:63
LArCaliWaveValidationAlg::m_vDataPerFEB
std::vector< DataPerFEB > m_vDataPerFEB
Definition
LArCaliWaveValidationAlg.h:99
LArCaliWaveValidationAlg::m_fwhmGlobalVal
double m_fwhmGlobalVal
Definition
LArCaliWaveValidationAlg.h:103
LArCaliWaveValidationAlg::m_ampGlobalRef
double m_ampGlobalRef
Definition
LArCaliWaveValidationAlg.h:104
LArCaliWaveValidationAlg::m_waveHelper
LArWaveHelper m_waveHelper
Definition
LArCaliWaveValidationAlg.h:108
LArCaliWaveValidationAlg::m_fwhmGlobalRef
double m_fwhmGlobalRef
Definition
LArCaliWaveValidationAlg.h:105
LArCaliWaveValidationAlg::m_fwhmTolerance
CaloCellGroupList m_fwhmTolerance
Definition
LArCaliWaveValidationAlg.h:71
LArCaliWaveValidationAlg::getRefObj
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
LArCaliWaveValidationAlg.h:49
LArCaliWaveValidationAlg::preLoop
virtual StatusCode preLoop() override
Executed before the loop over all channels to reset global sums.
Definition
LArCaliWaveValidationAlg.cxx:24
LArCaliWaveValidationAlg::m_fwhmToleranceFEB
CaloCellGroupList m_fwhmToleranceFEB
Definition
LArCaliWaveValidationAlg.h:75
LArCaliWaveValidationAlg::m_nEntriesGlobal
unsigned m_nEntriesGlobal
Definition
LArCaliWaveValidationAlg.h:106
LArCaliWaveValidationAlg::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
LArCaliWaveValidationAlg.cxx:95
LArCaliWaveValidationAlg::m_ampToleranceInit
std::vector< std::string > m_ampToleranceInit
Amplitude tolerance (in permills) (job-Property).
Definition
LArCaliWaveValidationAlg.h:62
LArCaliWaveValidationAlg::m_fwhmToleranceFEBInit
std::vector< std::string > m_fwhmToleranceFEBInit
Tolerance for the average FWHM of one FEB (in permills) (job-Property).
Definition
LArCaliWaveValidationAlg.h:74
LArCaliWaveValidationAlg::m_fwhmToleranceInit
std::vector< std::string > m_fwhmToleranceInit
FWHM tolerance (in permills) (job-Property).
Definition
LArCaliWaveValidationAlg.h:70
LArCalibValidationAlg
Algorithm to validate LAr Autocorr;.
Definition
LArCalibValidationAlg.h:47
LArCalibValidationAlg< LArCaliWaveContainer, LArCaliWaveContainer >::LArCondObj
LArCaliWaveContainer::LArCondObj LArCondObj
Definition
LArCalibValidationAlg.h:80
LArCalibValidationAlg< LArCaliWaveContainer, LArCaliWaveContainer >::m_reference
const LArCaliWaveContainer * m_reference
Definition
LArCalibValidationAlg.h:182
LArOnOffIdMapping
Definition
LArOnOffIdMapping.h:20
LArWaveHelper
Definition
LArWaveHelper.h:14
Generated on
for ATLAS Offline Software by
1.17.0