ATLAS Offline Software
CaloTopoEMsshape.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef CALOCLUSTERCORRECTION_CALOTOPOEMSSHAPE_H
6 #define CALOCLUSTERCORRECTION_CALOTOPOEMSSHAPE_H
7 /********************************************************************
8 
9 NAME: CaloTopoEMsshape.h
10 PACKAGE: offline/Calorimeter/CaloClusterCorrection
11 
12 AUTHORS: M.Boonekamp, N.Kerschen
13 CREATED: March 2005
14 
15 PURPOSE: s-shape corrections
16  base class: CaloClusterCorrection (AlgTool)
17 
18 Updated: March 12, 2005 (MB)
19  corrections for the TopoCluster
20 ********************************************************************/
21 
23 class CaloCluster;
24 
26 {
27 public:
30 
31 
32  // virtual method in CaloClusterCorrection
33  virtual void makeTheCorrection(const Context& myctx,
34  xAOD::CaloCluster* cluster,
35  const CaloDetDescrElement* elt,
36  float eta,
37  float adj_eta,
38  float phi,
39  float adj_phi,
40  CaloSampling::CaloSample samp) const;
41 
42  private:
43  // Comments on the parametrization :
44  // f(x) = P0 + atan(P1*(x-0.5)) + P2(x-0.5) + P3*|x-0.5| + P4
45  // x is the position on the cell (0<x<1)
46  // Tuned on 100 GeV electrons, no energy dependence
47  Constant<CxxUtils::Array<1> > m_P0 { this, "P0", "" };
48  Constant<CxxUtils::Array<1> > m_P1 { this, "P1", "" };
49  Constant<CxxUtils::Array<1> > m_P2 { this, "P2", "" };
50  Constant<CxxUtils::Array<1> > m_P3 { this, "P3", "" };
51  Constant<CxxUtils::Array<1> > m_P4 { this, "P4", "" };
52  Constant<CxxUtils::Array<1> > m_EtaFrontier { this, "EtaFrontier", "" };
53  Constant<float> m_Granularity { this, "Granularity", "" };
54 };
55 
56 #endif
CaloTopoEMsshape
Definition: CaloTopoEMsshape.h:26
phi
Scalar phi() const
phi method
Definition: AmgMatrixBasePlugin.h:64
CaloTopoEMsshape::m_P3
Constant< CxxUtils::Array< 1 > > m_P3
Definition: CaloTopoEMsshape.h:50
CaloTopoEMsshape::m_P4
Constant< CxxUtils::Array< 1 > > m_P4
Definition: CaloTopoEMsshape.h:51
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
CaloDetDescrElement
This class groups all DetDescr information related to a CaloCell. Provides a generic interface for al...
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:66
CaloTopoEMsshape::makeTheCorrection
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
Virtual function for the correction-specific code.
Definition: CaloTopoEMsshape.cxx:27
CaloTopoEMsshape::m_P0
Constant< CxxUtils::Array< 1 > > m_P0
Definition: CaloTopoEMsshape.h:47
CaloTopoEMsshape::m_EtaFrontier
Constant< CxxUtils::Array< 1 > > m_EtaFrontier
Definition: CaloTopoEMsshape.h:52
xAOD::CaloCluster_v1
Description of a calorimeter cluster.
Definition: CaloCluster_v1.h:59
CaloSampling::CaloSample
CaloSample
Definition: Calorimeter/CaloGeoHelpers/CaloGeoHelpers/CaloSampling.h:22
CaloClusterCorrectionCommon::CaloClusterCorrectionCommon
CaloClusterCorrectionCommon(const std::string &type, const std::string &name, const IInterface *parent)
Inherit constructor.
Definition: CaloClusterCorrectionCommon.cxx:408
CaloCluster
Principal data class for CaloCell clusters.
Definition: Calorimeter/CaloEvent/CaloEvent/CaloCluster.h:79
CaloClusterCorrectionCommon.h
CaloTopoEMsshape::m_Granularity
Constant< float > m_Granularity
Definition: CaloTopoEMsshape.h:53
CaloTopoEMsshape::m_P2
Constant< CxxUtils::Array< 1 > > m_P2
Definition: CaloTopoEMsshape.h:49
CaloTopoEMsshape::m_P1
Constant< CxxUtils::Array< 1 > > m_P1
Definition: CaloTopoEMsshape.h:48
CaloUtils::ToolConstantsContext
Context object for retrieving ToolConstant values.
Definition: ToolWithConstants.h:61
CaloClusterCorrectionCommon
Code common to cluster corrections.
Definition: CaloClusterCorrectionCommon.h:42
CaloUtils::ToolConstant
Constant of a ToolWithConstants.
Definition: ToolWithConstants.h:202