55 if (
eta == -999.)
return;
56 float etamax = cluster->
etamax(CaloSampling::EME1);
57 float aeta = fabs(
eta);
82 float u = fmod(
eta-etamax, ufrac/2.);
84 if (
eta < 0.) u = ufrac-u;
85 float deta = correction_coef * interpolate (correction[corrndx],
92 cluster->
setEta( CaloSampling::EME1,
eta - deta);
98 static const std::string typeName =
"CaloSwEta_g3";
Scalar eta() const
pseudorapidity method
Principal data class for CaloCell clusters.
double etamax(sampling_type sampling) const
Retrieve of cell with maximum energy in given sampling.
virtual void setEta(double eta)
Set eta.
double etaSample(sampling_type sampling) const
Retrieve barycenter in a given sample.
bool inEndcap() const
Returns true if at least one clustered cell in EMEC.
Constant< float > m_correction_coef
static const float s_middle_layer_granularity
Constant< int > m_correction_degree
Constant< CxxUtils::Array< 3 > > m_correction
virtual void makeCorrection(const Context &myctx, xAOD::CaloCluster *cluster) const override
virtual const std::string & toolType() const override
Return the name of the type of this tool.
Read-only multidimensional array.
Polynomial interpolation in a table.
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.
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.