Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
RtFromPoints.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef MuonCalib_RtFromPointsH
5 #define MuonCalib_RtFromPointsH
6 
7 // STL //
8 #include <vector>
9 #include <memory>
10 // MuonCalib //
15 
16 namespace MuonCalib {
17 
21 
22  class RtFromPoints {
23  public:
28  static std::unique_ptr<IRtRelation> getRtChebyshev(const std::vector<SamplePoint>& dataPoints, const unsigned order);
33  static std::unique_ptr<ITrRelation> getTrChebyshev(const std::vector<SamplePoint>& dataPoints, const unsigned order);
38  static std::unique_ptr<IRtResolution> getResoChebyshev(const std::vector<SamplePoint>& dataPoints, const unsigned order);
45  static std::unique_ptr<IRtResolution> getResoChebyshev(const std::vector<SamplePoint>& dataPoints,
46  const IRtRelationPtr rtRelPtr,
47  const double relUnc,
48  const unsigned order);
49 
54  static std::unique_ptr<IRtRelation> getRtLegendre(const std::vector<SamplePoint>& dataPoints, const unsigned order);
59  static std::unique_ptr<ITrRelation> getTrLegendre(const std::vector<SamplePoint>& dataPoints, const unsigned order);
64  static std::unique_ptr<IRtRelation> getRtSimplePoly(const std::vector<SamplePoint>& dataPoints, const unsigned order);
69  static std::unique_ptr<ITrRelation> getTrSimplePoly(const std::vector<SamplePoint>& dataPoints, const unsigned order);
70 
77  static std::unique_ptr<IRtRelation> getRtRelationLookUp(const std::vector<SamplePoint>& sample_points);
78 
79  private:
83  static CalibFunc::ParVec chebyFit(const std::vector<SamplePoint>& dataPoints,
84  const unsigned order);
85 
89  static CalibFunc::ParVec legendreFit(const std::vector<SamplePoint>& dataPoints,
90  const unsigned order);
94  static CalibFunc::ParVec simplePolyFit(const std::vector<SamplePoint>& dataPoints,
95  const unsigned order);
96 
97  };
98 
99 } // namespace MuonCalib
100 
101 #endif
MuonCalib::RtFromPoints::getTrChebyshev
static std::unique_ptr< ITrRelation > getTrChebyshev(const std::vector< SamplePoint > &dataPoints, const unsigned order)
Converts a list of r-t data points into a t(r) relation expressed as a series of chebychev polynomial...
Definition: RtFromPoints.cxx:82
GeoModel::TransientConstSharedPtr< IRtRelation >
MuonCalib::RtFromPoints::getRtRelationLookUp
static std::unique_ptr< IRtRelation > getRtRelationLookUp(const std::vector< SamplePoint > &sample_points)
Definition: RtFromPoints.cxx:112
MuonCalib::RtFromPoints::legendreFit
static CalibFunc::ParVec legendreFit(const std::vector< SamplePoint > &dataPoints, const unsigned order)
Executes the fit of Legendre polynomials to the data points.
Definition: RtFromPoints.cxx:37
MuonCalib::RtFromPoints::simplePolyFit
static CalibFunc::ParVec simplePolyFit(const std::vector< SamplePoint > &dataPoints, const unsigned order)
Exectues the fit of simple monomials to the data points.
Definition: RtFromPoints.cxx:66
MuonCalib::RtFromPoints::chebyFit
static CalibFunc::ParVec chebyFit(const std::vector< SamplePoint > &dataPoints, const unsigned order)
Executes the fit of chebychev polynomials to the data points.
Definition: RtFromPoints.cxx:51
MuonCalib::RtFromPoints::getResoChebyshev
static std::unique_ptr< IRtResolution > getResoChebyshev(const std::vector< SamplePoint > &dataPoints, const unsigned order)
Converts a list of reso - t into a reso(t) relation expressed as a series of chebychev polynomials.
Definition: RtFromPoints.cxx:85
MuonCalib::RtFromPoints::getRtChebyshev
static std::unique_ptr< IRtRelation > getRtChebyshev(const std::vector< SamplePoint > &dataPoints, const unsigned order)
Converts a list of r-t data points into a r(t) relation expressed as a series of chebychev polynomial...
Definition: RtFromPoints.cxx:79
MuonCalib::RtFromPoints::getRtSimplePoly
static std::unique_ptr< IRtRelation > getRtSimplePoly(const std::vector< SamplePoint > &dataPoints, const unsigned order)
Converts a list of r(t) data points into a r(t) relation expressed as a series of elementary monomoni...
Definition: RtFromPoints.cxx:101
mc.order
order
Configure Herwig7.
Definition: mc.Herwig7_Dijet.py:12
MuonCalib::RtFromPoints::getTrSimplePoly
static std::unique_ptr< ITrRelation > getTrSimplePoly(const std::vector< SamplePoint > &dataPoints, const unsigned order)
Converts a list of t(r) data points into a t(r) relation expressed as a series of elementary monomoni...
Definition: RtFromPoints.cxx:104
MuonCalib
CscCalcPed - algorithm that finds the Cathode Strip Chamber pedestals from an RDO.
Definition: CscCalcPed.cxx:22
MuonCalib::CalibFunc::ParVec
std::vector< double > ParVec
Definition: CalibFunc.h:35
IRtResolution.h
MuonCalib::RtFromPoints::getTrLegendre
static std::unique_ptr< ITrRelation > getTrLegendre(const std::vector< SamplePoint > &dataPoints, const unsigned order)
Converts a list of t(r) data points into a t(r) relation expressed as a series of legendre polynomial...
Definition: RtFromPoints.cxx:98
MuonCalib::RtFromPoints
Definition: RtFromPoints.h:22
ITrRelation.h
MuonCalib::RtFromPoints::getRtLegendre
static std::unique_ptr< IRtRelation > getRtLegendre(const std::vector< SamplePoint > &dataPoints, const unsigned order)
Converts a list of r-t data points into a r(t) relation expressed as a series of legendre polynomials...
Definition: RtFromPoints.cxx:95
IRtRelation.h
SamplePoint.h