Scalar phi() const
phi method
Definition of CaloDetDescrManager.
CaloPhiRange class declaration.
EM calorimeter phi offset corrections.
static float energy_interpolation(float energy, const TableBuilder &builder, const CaloRec::Array< 1 > &energies, int energy_degree)
Many of the corrections use the same method for doing the final interpolation in energy.
Principal data class for CaloCell clusters.
virtual double e() const
Retrieve energy independent of signal state.
virtual void setPhi(double phi)
Set phi.
This class groups all DetDescr information related to a CaloCell.
float eta_raw() const
cell eta_raw
static double fix(double phi)
virtual float calculate(int energy_ndx, bool &good) const
Calculate the correction for tabulated energy ENERGY_NDX.
const CxxUtils::Array< 3 > m_correction
Tabulated arrays of function parameters.
Builder(const CxxUtils::Array< 3 > &correction, const CxxUtils::Array< 1 > &interp_barriers, int degree, float aeta)
Constructor.
const CxxUtils::Array< 1 > m_interp_barriers
Allow breaking up the interpolation into independent regions.
int m_degree
Degree of the polynomial interpolation.
float m_aeta
The abs(eta) at which the correction is being evaluated (in cal-local coordinates).
Constant< CaloRec::Array< 3 > > m_correction
Calibration constant: tabulated arrays of function parameters.
Constant< CxxUtils::Array< 1 > > m_interp_barriers
Calibration constant: allow breaking up the interpolation into independent regions.
Constant< bool > m_flip_phi
Calibration constant: if true, the correction gets an opposite sign if eta < 0.
Constant< CxxUtils::Array< 1 > > m_energies
Calibration constant: table of energies at which the correction was tabulated.
virtual void makeTheCorrection(const Context &myctx, xAOD::CaloCluster *cluster, const CaloDetDescrElement *elt, float eta, float adj_eta, float phi, float adj_phi, CaloSampling::CaloSample samp) const override
Virtual function for the correction-specific code.
Constant< int > m_energy_degree
Calibration constant: degree of the polynomial interpolation in energy.
Constant< int > m_degree
Calibration constant: degree of the polynomial interpolation.
Constant< float > m_correction_coef
Calibration constant: coefficient by which to scale the entire correction.
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.