#include <CaloSwEta2e_g3.h>
|
| virtual void | makeCorrection (const Context &myctx, xAOD::CaloCluster *cluster) const override |
| virtual const std::string & | toolType () const override |
| virtual StatusCode | initialize () override |
| virtual void | setsample (xAOD::CaloCluster *cluster, CaloSampling::CaloSample sampling, float em, float etam, float phim, float emax, float etamax, float phimax, float etas, float phis) const |
| virtual void | setenergy (xAOD::CaloCluster *cluster, float energy) const |
| StatusCode | execute (const EventContext &ctx, xAOD::CaloCluster *cluster) const override |
| virtual StatusCode | execute (const EventContext &ctx, xAOD::CaloClusterContainer *collection) const |
| | Execute on an entire collection of clusters.
|
Definition at line 36 of file CaloSwEta2e_g3.h.
◆ CaloSwEta2e_g3()
| CaloSwEta2e_g3::CaloSwEta2e_g3 |
( |
| ) |
|
|
privatedelete |
◆ execute() [1/2]
Definition at line 52 of file CaloClusterCorrection.cxx.
54{
56
57#if 0
60 <<
" " << cluster->
etaSample(CaloSampling::EMB1)
61 <<
" " << cluster->
etaSample(CaloSampling::EMB2)
64 <<
" " << cluster->
phiSample(CaloSampling::EMB1)
65 <<
" " << cluster->
phiSample(CaloSampling::EMB2)
67#endif
68
69 return StatusCode::SUCCESS;
70}
virtual void makeCorrection(const Context &myctx, xAOD::CaloCluster *) const =0
float phiBE(const unsigned layer) const
Get the phi in one layer of the EM Calo.
float phiSample(const CaloSample sampling) const
Retrieve barycenter in a given sample.
virtual double eta() const
The pseudorapidity ( ) of the particle.
virtual double e() const
The total energy of the particle.
virtual double phi() const
The azimuthal angle ( ) of the particle.
float etaSample(const CaloSample sampling) const
Retrieve barycenter in a given sample.
float etaBE(const unsigned layer) const
Get the eta in one layer of the EM Calo.
◆ execute() [2/2]
Execute on an entire collection of clusters.
- Parameters
-
| collection | The container of clusters. |
This will iterate over all the clusters in collection and call execute on each one individually.
- Parameters
-
| collection | The container of clusters. |
| ctx | The event context. |
This will iterate over all the clusters in collection and call execute on each one individually.
Definition at line 65 of file CaloClusterProcessor.cxx.
46{
49 }
50 return StatusCode::SUCCESS;
51}
#define ATH_CHECK
Evaluate an expression and check for errors.
StatusCode execute(const EventContext &ctx, xAOD::CaloCluster *cluster) const override
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.
◆ initialize()
| StatusCode CaloClusterCorrection::initialize |
( |
| ) |
|
|
overridevirtualinherited |
◆ makeCorrection()
Implements CaloClusterCorrection.
Definition at line 44 of file CaloSwEta2e_g3.cxx.
46{
47
49 return;
50
52 if (
eta == -999.)
return;
53 float etamax = cluster->
etamax(CaloSampling::EME2);
54 float aeta = fabs(
eta);
55
56
59
61
62
64 u2,
66
68 etc2 = -etc2;
69
70
71 cluster->
setEta( CaloSampling::EME2, etc2);
72}
Scalar eta() const
pseudorapidity method
Constant< int > m_correction_degree
Constant< CxxUtils::Array< 2 > > m_correction
static const float s_middle_layer_granularity
bool setEta(const CaloSample sampling, const float eta)
Set in a given sampling. Returns false if the sample isn't part of the cluster.
bool inEndcap() const
Returns true if at least one clustered cell in the endcap.
float etamax(const CaloSample sampling) const
Retrieve of cell with maximum energy in given sampling.
float interpolate(const CaloRec::Array< 2 > &a, float x, unsigned int degree, unsigned int ycol=1, const CaloRec::Array< 1 > ®ions=CaloRec::Array< 1 >(), int n_points=-1, bool fixZero=false)
Polynomial interpolation in a table.
◆ setenergy()
| void CaloClusterCorrection::setenergy |
( |
xAOD::CaloCluster * | cluster, |
|
|
float | energy ) const |
|
virtualinherited |
Definition at line 93 of file CaloClusterCorrection.cxx.
94{
95 if (cluster->
e() == 0) {
96 if (energy != 0)
98 <<
"Attempt to rescale zero-energy cluster to energy " <<
energy
99 << " ignored.";
100 return;
101 }
102
104 cluster->
setE(energy);
105
106
107
108 for (int iSample=CaloSampling::PreSamplerB;
109 iSample < CaloSampling::Unknown;
110 ++iSample)
111 {
114 double e = cluster->
eSample(sampling);
115 cluster->
setEnergy(sampling,e*correction) ;
116 }
117 }
118}
#define REPORT_MESSAGE(LVL)
Report a message.
float eSample(const CaloSample sampling) const
bool setEnergy(const CaloSample sampling, const float e)
Set energy for a given sampling. Returns false if the sample isn't part of the cluster.
bool hasSampling(const CaloSample s) const
Checks if certain smapling contributes to cluster.
◆ setsample()
| void CaloClusterCorrection::setsample |
( |
xAOD::CaloCluster * | cluster, |
|
|
CaloSampling::CaloSample | sampling, |
|
|
float | em, |
|
|
float | etam, |
|
|
float | phim, |
|
|
float | emax, |
|
|
float | etamax, |
|
|
float | phimax, |
|
|
float | etas, |
|
|
float | phis ) const |
|
virtualinherited |
Definition at line 73 of file CaloClusterCorrection.cxx.
78{
80 cluster->
setEta(sampling, etam);
81 cluster->
setPhi(sampling, phim);
82
83 cluster->
setEmax(sampling,emax);
86
89}
bool setPhi(const CaloSample sampling, const float phi)
Set in a given sampling. Returns false if the sample isn't part of the cluster.
bool setEtasize(const CaloSample sampling, const float etaSize)
Set the cluster size in for a given sampling.
bool setPhisize(const CaloSample sampling, const float phiSize)
Set the cluster size in for a given sampling.
bool setPhimax(const CaloSample sampling, const float phiMax)
Set the phi of the cell with the highest energy in a particular sampling.
bool setEmax(const CaloSample sampling, const float eMax)
Set the Energy of the cell with the highest energy in a particular sampling.
bool setEtamax(const CaloSample sampling, const float etaMax)
Set the eta of the cell with the highest energy in a particular sampling.
◆ toolType()
| const std::string & CaloSwEta2e_g3::toolType |
( |
| ) |
const |
|
overridevirtual |
◆ m_caloMgrKey
◆ m_correction
| Constant<CxxUtils::Array<2> > CaloSwEta2e_g3::m_correction { this, "correction", "" } |
|
private |
◆ m_correction_degree
| Constant<int> CaloSwEta2e_g3::m_correction_degree { this, "correction_degree", "" } |
|
private |
◆ m_region
| Constant<int> CaloSwEta2e_g3::m_region { this, "region", 1, "" } |
|
private |
◆ s_middle_layer_granularity
| const float CaloSwEta2e_g3::s_middle_layer_granularity = 0.025 |
|
staticprivate |
The documentation for this class was generated from the following files: