ATLAS Offline Software
RtChebyshev.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
6 // 23.03.2005, AUTHOR: OLIVER KORTNER
7 // Modified: 31.05.2006 by O. Kortner: major redesign:
8 // driftvelocity implemented,
9 // resolution has been removed,
10 // set-method have been removed
11 // 04.06.2006 by O. Kortner: bug in constructor fixed,
12 // doxygen entry updated.
13 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
14 
15 #ifndef MUONCALIB_RTCHEBYSHEV_H
16 #define MUONCALIB_RTCHEBYSHEV_H
17 
19 // HEADER FILES //
21 
22 // standard C++ //
23 #include <cstdlib>
24 #include <iostream>
25 
26 // STL //
27 #include <vector>
28 
29 // MDT calibration //
32 
33 namespace MuonCalib {
52  class RtChebyshev : public IRtRelation {
53  private:
54  // Chebyshev polyonomials //
56 
57  // private methods //
59  void _init(void);
60 
61  public:
62  // Constructors
73  explicit RtChebyshev(const ParVec& vec) : IRtRelation(vec) { _init(); }
74 
75  // Methods //
76  // methods required by the base classes //
77  std::string name(void) const;
78 
79  double radius(double t) const;
82 
84  double driftvelocity(double t) const;
85 
86  // get-methods specific to the RtChebyshev class //
88  double tLower(void) const;
90  double tUpper(void) const;
91 
93  unsigned int numberOfRtParameters(void) const;
94 
96  std::vector<double> rtParameters(void) const;
97 
99  double get_reduced_time(const double& t) const;
100  };
101 } // namespace MuonCalib
102 
103 #endif
MuonCalib::RtChebyshev::RtChebyshev
RtChebyshev(const ParVec &vec)
initialization constructor,
Definition: RtChebyshev.h:73
MuonCalib::RtChebyshev
Definition: RtChebyshev.h:52
MuonCalib::RtChebyshev::numberOfRtParameters
unsigned int numberOfRtParameters(void) const
get the coefficients of the r(t) polynomial
Definition: RtChebyshev.cxx:106
vec
std::vector< size_t > vec
Definition: CombinationsGeneratorTest.cxx:12
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
MuonCalib::CalibFunc::ParVec
std::vector< double > ParVec
Definition: CalibFunc.h:36
MuonCalib::RtChebyshev::get_reduced_time
double get_reduced_time(const double &t) const
Definition: RtChebyshev.cxx:125
MuonCalib::Tschebyscheff_polynomial
Definition: Tschebyscheff_polynomial.h:24
MuonCalib
CscCalcPed - algorithm that finds the Cathode Strip Chamber pedestals from an RDO.
Definition: CscCalcPed.cxx:22
MuonCalib::RtChebyshev::_init
void _init(void)
initialization method
Definition: RtChebyshev.cxx:26
MuonCalib::RtChebyshev::tLower
double tLower(void) const
< get the lower drift-time bound
Definition: RtChebyshev.cxx:92
MuonCalib::RtChebyshev::m_Chebyshev
const Tschebyscheff_polynomial * m_Chebyshev
pointer to the Chebyshev polynomials
Definition: RtChebyshev.h:55
MuonCalib::RtChebyshev::driftvelocity
double driftvelocity(double t) const
Definition: RtChebyshev.cxx:85
MuonCalib::RtChebyshev::tUpper
double tUpper(void) const
get the number of parameters used to describe the r(t) relationship
Definition: RtChebyshev.cxx:99
MuonCalib::RtChebyshev::radius
double radius(double t) const
get the radius corresponding to the drift time t; if t is not within [t_low, t_up] an unphysical radi...
Definition: RtChebyshev.cxx:54
IRtRelation.h
MuonCalib::IRtRelation
generic interface for a rt-relation
Definition: IRtRelation.h:14
MuonCalib::RtChebyshev::name
std::string name(void) const
get the class name
Definition: RtChebyshev.cxx:47
Tschebyscheff_polynomial.h
MuonCalib::RtChebyshev::rtParameters
std::vector< double > rtParameters(void) const
get the reduced time which is the argument of the Chebyshev polynomial
Definition: RtChebyshev.cxx:113