ATLAS Offline Software
LArCalorimeter
LArCalibUtils
LArCalibUtils
LArAutoCorrMaker.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
//dear emacs, this is -*-c++-*-
6
7
#ifndef LARAUTOCORRMAKER_H
8
#define LARAUTOCORRMAKER_H
9
/********************************************************************
10
11
NAME: LArAutoCorrMaker.h
12
PACKAGE: offline/LArCalorimeter/LArCalibUtils
13
14
AUTHORS: M. AHARROUCHE
15
CREATED: Dec. 16, 2003
16
17
PURPOSE: Selects the good events and computes the autocorrelation
18
matrix for each cell. It processes all the gains
19
simultaneously.
20
In fact only the last (m_nsamples-1) elements of the
21
first line (or column) of autocorrelation matrix are
22
computed and stored in TDS, for these reasons:
23
- symetrie of autocorrelation matrix
24
- equivalence of autocorrelation elements:
25
B(n,n+i)\eq B(m,m+i) (eg B12 \eq B23).
26
27
********************************************************************/
28
29
#include "
AthenaBaseComps/AthAlgorithm.h
"
30
#include "GaudiKernel/ToolHandle.h"
31
#include "
LArRawEvent/LArAutoCorr.h
"
32
#include "
LArRawConditions/LArConditionsContainer.h
"
33
34
#include "
LumiBlockData/BunchCrossingCondData.h
"
35
#include "
StoreGate/ReadCondHandleKey.h
"
36
37
//-----------------------------------------------------------------------
38
class
LArAutoCorrMaker
:
public
AthAlgorithm
39
//-----------------------------------------------------------------------
40
{
41
public
:
42
43
// Constructor
44
LArAutoCorrMaker
(
const
std::string &
name
, ISvcLocator * pSvcLocator);
45
46
// Destructor
47
~LArAutoCorrMaker
();
48
49
// Algorithm initialization
50
StatusCode
initialize
();
51
52
// Algorithm execution
53
StatusCode
execute
();
54
55
// Algorithm finalization
56
StatusCode
stop
();
57
StatusCode
finalize
(){
return
StatusCode::SUCCESS;}
58
59
private
:
60
61
SG::ReadCondHandleKey<BunchCrossingCondData>
m_bcDataKey
{
this
,
"BunchCrossingCondDataKey"
,
"BunchCrossingData"
,
"SG Key of BunchCrossing CDO"
};
62
63
int
m_bunchCrossingsFromFront
;
64
65
// Container key list
66
std::vector<std::string>
m_keylist
,
m_keylistproperty
;
67
std::string
m_keyoutput
;
68
69
// Grouping type
70
std::string
m_groupingType
;
71
72
// Number of events used to define window
73
int
m_nref
;
74
75
// Number of sigma
76
int
m_rms_cut
;
77
int
m_nsamples
= 0;
78
79
//MGV Decide whether or not to normalize autocorr elements
80
int
m_normalize
;
81
82
// flag save full N(N+1)/2 matrix (relevant for pileup)
83
int
m_physics
;
84
85
typedef
LArConditionsContainer<LArAutoCorr>
LARACMAP
;
86
LARACMAP
m_autocorr
;
87
88
89
//counter for accepted events
90
unsigned
m_nEvents
;
91
};
92
93
#endif
94
LArAutoCorrMaker::m_rms_cut
int m_rms_cut
Definition:
LArAutoCorrMaker.h:94
LArAutoCorrMaker
Definition:
LArAutoCorrMaker.h:40
LArAutoCorrMaker::m_nref
int m_nref
Definition:
LArAutoCorrMaker.h:91
LArAutoCorrMaker::finalize
StatusCode finalize()
Definition:
LArAutoCorrMaker.h:75
LArAutoCorrMaker::m_nsamples
int m_nsamples
Definition:
LArAutoCorrMaker.h:95
LArConditionsContainer.h
LArAutoCorrMaker::m_nEvents
unsigned m_nEvents
Definition:
LArAutoCorrMaker.h:108
LArAutoCorrMaker::m_autocorr
LARACMAP m_autocorr
Definition:
LArAutoCorrMaker.h:104
LArConditionsContainer< LArAutoCorr >
AthAlgorithm.h
LArAutoCorrMaker::m_keylist
std::vector< std::string > m_keylist
Definition:
LArAutoCorrMaker.h:84
LArAutoCorrMaker::m_bcDataKey
SG::ReadCondHandleKey< BunchCrossingCondData > m_bcDataKey
Definition:
LArAutoCorrMaker.h:79
LArAutoCorrMaker::execute
StatusCode execute()
Definition:
LArAutoCorrMaker.cxx:89
LArAutoCorrMaker::~LArAutoCorrMaker
~LArAutoCorrMaker()
LArAutoCorrMaker::initialize
StatusCode initialize()
Definition:
LArAutoCorrMaker.cxx:60
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition:
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
LArAutoCorr.h
LArAutoCorrMaker::m_keyoutput
std::string m_keyoutput
Definition:
LArAutoCorrMaker.h:85
LArAutoCorrMaker::m_physics
int m_physics
Definition:
LArAutoCorrMaker.h:101
LArAutoCorrMaker::m_groupingType
std::string m_groupingType
Definition:
LArAutoCorrMaker.h:88
AthAlgorithm
Definition:
AthAlgorithm.h:47
ReadCondHandleKey.h
name
std::string name
Definition:
Control/AthContainers/Root/debug.cxx:195
SG::ReadCondHandleKey< BunchCrossingCondData >
LArAutoCorrMaker::LArAutoCorrMaker
LArAutoCorrMaker(const std::string &name, ISvcLocator *pSvcLocator)
Definition:
LArAutoCorrMaker.cxx:41
LArAutoCorrMaker::m_normalize
int m_normalize
Definition:
LArAutoCorrMaker.h:98
BunchCrossingCondData.h
Replaces the BunchCrossing AlgTool used in run1/2.
LArAutoCorrMaker::m_keylistproperty
std::vector< std::string > m_keylistproperty
Definition:
LArAutoCorrMaker.h:84
LArAutoCorrMaker::stop
StatusCode stop()
Definition:
LArAutoCorrMaker.cxx:180
LArAutoCorrMaker::m_bunchCrossingsFromFront
int m_bunchCrossingsFromFront
Definition:
LArAutoCorrMaker.h:81
LArAutoCorrMaker::LARACMAP
LArConditionsContainer< LArAutoCorr > LARACMAP
Definition:
LArAutoCorrMaker.h:103
Generated on Thu Jul 4 2024 21:19:54 for ATLAS Offline Software by
1.8.18