|
ATLAS Offline Software
|
Go to the documentation of this file.
15 #ifndef CALOCLUSTERCORRECTION_CALOSWETAOFF_V3_H
16 #define CALOCLUSTERCORRECTION_CALOSWETAOFF_V3_H
252 {
this,
"correction",
"Tabulated arrays of function parameters." };
265 {
this,
"regions",
"Table of regions." };
279 {
this,
"energies",
"Table of energies at which the correction was tabulated." };
283 {
this,
"energy_degree",
"Degree of the polynomial interpolation in energy." };
289 {
this,
"forms",
"Functional form to use per region per energy." };
293 #endif // not CALOCLUSTERCORRECTION_CALOSWETAOFF_V3_H
static float calc4(float aeta, float u, const CaloRec::Array< 2 > &coef)
Evaluate the function Form 4.
static int find_region(const CxxUtils::Array< 2 > ®ions, float aeta)
Find the index of the region containing a given value.
Helper class for calculating the energy interpolation table.
This class groups all DetDescr information related to a CaloCell. Provides a generic interface for al...
Builder(const CxxUtils::Array< 4 > &correction, const CxxUtils::Array< 2 > ®ions, const CxxUtils::Array< 2 > &forms, float aeta, float u, int region_ndx)
Constructor.
static float calc13(float aeta, float u, const CaloRec::Array< 2 > &coef, float xlo, float xhi)
Evaluate the function Form 13.
Simple multidimensional arrays.
static float calc11(float aeta, float u, const CaloRec::Array< 2 > &coef)
Evaluate the function Form 11.
static float calc0(float aeta, float u, const CaloRec::Array< 2 > &coef)
Evaluate the function Form 0.
const CxxUtils::Array< 4 > & m_correction
@ u
Enums for curvilinear frames.
float m_u
The fractional offset in the cell of this cluster.
Helper, used to calculate the values of the energy interpolation table.
static float calc3(float aeta, float u, const CaloRec::Array< 2 > &coef)
Evaluate the function Form 3.
Description of a calorimeter cluster.
const CxxUtils::Array< 2 > & m_regions
Table of regions.
virtual float calculate(int energy_ndx, bool &good) const
Calculate the correction for tabulated energy ENERGY_NDX.
float m_aeta
The abs(eta) at which the correction is being evaluated (in cal-local coordinates).
static float calc5(float aeta, float u, const CaloRec::Array< 2 > &coef)
Evaluate the function Form 5.
CaloClusterCorrectionCommon(const std::string &type, const std::string &name, const IInterface *parent)
Inherit constructor.
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< CxxUtils::Array< 1 > > m_energies
Calibration constant: table of energies at which the correction was tabulated.
Constant< CxxUtils::Array< 2 > > m_forms
Calibration constant: Functional form to use per region per energy.
Constant< CxxUtils::Array< 2 > > m_regions
Calibration constant: table of regions.
Constant< int > m_energy_degree
Calibration constant: degree of the polynomial interpolation in energy.
static float calc10(float aeta, float u, const CaloRec::Array< 2 > &coef)
Evaluate the function Form 10.
Context object for retrieving ToolConstant values.
int m_region_ndx
The index of the region in which we're evaluating the correction.
Code common to cluster corrections.
const CxxUtils::Array< 2 > & m_forms
Functional form per region.
int m_form
The index of the functional form we're evaluating.
Constant< CxxUtils::Array< 4 > > m_correction
Calibration constant: tabulated arrays of function parameters.