|
ATLAS Offline Software
|
Go to the documentation of this file.
36 #include "CLHEP/Units/PhysicalConstants.h"
84 the_aeta = std::abs (adj_eta);
89 the_aeta = std::abs (eta);
100 else if (the_aeta < 2.5)
117 the_aeta, adj_phi, nabs),
141 float correction_coef,
146 m_interp_barriers (interp_barriers),
148 m_correction_coef (correction_coef),
166 for (
int j=0; j<4; j++) {
175 (
a*
cos(m_nabs*m_phi +
par[1]) +
176 (1-
a)*
cos (2*m_nabs*m_phi +
par[3]));
Helper class for calculating the energy interpolation table.
Scalar phi() const
phi method
Scalar eta() const
pseudorapidity method
This class groups all DetDescr information related to a CaloCell. Provides a generic interface for al...
virtual float calculate(int energy_ndx, bool &good) const
Calculate the correction for tabulated energy ENERGY_NDX.
virtual void setenergy(xAOD::CaloCluster *cluster, float energy) const
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.
Definition of CaloDetDescrManager.
Constant< CxxUtils::Array< 1 > > m_interp_barriers
Calibration constant: allow breaking up the interpolation into independent regions.
def rfac(flags, cells_name, *args, **kw)
Principal data class for CaloCell clusters.
Constant< int > m_rfac_degree
Constant< CxxUtils::Array< 2 > > m_rfac
Constant< int > m_energy_degree
Calibration constant: degree of the polynomial interpolation in energy.
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.
Constant< bool > m_use_raw_eta
Calibration constant: If true, tabulated values are in terms of raw (local) eta.
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.
Constant< CxxUtils::Array< 1 > > m_energies
Calibration constant: table of energies at which the correction was tabulated.
virtual double e() const
Retrieve energy independent of signal state.
Context object for retrieving ToolConstant values.
Builder(const CxxUtils::Array< 3 > &correction, const CxxUtils::Array< 1 > &interp_barriers, int degree, float correction_coef, float aeta, float phi, int nabs)
Constructor.
Constant< int > m_degree
Calibration constant: degree of the polynomial interpolation.
Polynomial interpolation in a table.
Constant< CxxUtils::Array< 3 > > m_correction
Calibration constant: tabulated arrays of function parameters.
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.
EM calorimeter phi modulation corrections.
Constant< float > m_correction_coef
Calibration constant: coefficient by which to scale the entire correction.