![]() |
ATLAS Offline Software
|
#include <RtChebyshev.h>
Public Types | |
typedef std::vector< double > | ParVec |
Public Member Functions | |
RtChebyshev (const ParVec &vec) | |
initialization constructor, More... | |
std::string | name (void) const |
get the class name More... | |
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 radius of 99999 is returned More... | |
double | driftvelocity (double t) const |
double | tLower (void) const |
< get the lower drift-time bound More... | |
double | tUpper (void) const |
get the number of parameters used to describe the r(t) relationship More... | |
unsigned int | numberOfRtParameters (void) const |
get the coefficients of the r(t) polynomial More... | |
std::vector< double > | rtParameters (void) const |
get the reduced time which is the argument of the Chebyshev polynomial More... | |
double | get_reduced_time (const double &t) const |
virtual std::string | typeName () const |
float | GetTmaxDiff () const |
return the difference in total dirft time between the two multilayers (ML1 - ML2) More... | |
bool | HasTmaxDiff () const |
void | SetTmaxDiff (const float &d) |
set the difference in total drift time betwene the two multilayers (ML1 - ML2) More... | |
unsigned int | nPar () const |
const ParVec & | parameters () const |
double | par (unsigned int index) const |
Public Attributes | |
float | m_tmax_diff |
Private Member Functions | |
void | _init (void) |
initialization method More... | |
Private Attributes | |
const Tschebyscheff_polynomial * | m_Chebyshev |
pointer to the Chebyshev polynomials More... | |
ParVec | m_parameters |
This class contains the implementation of an r(t) relationship parametrized by a linear combination of Chebyshev polyonomials.
Convention:
\[ r(t) = \sum_{k=0}^{K} p_k*T_k(2*(t-0.5*(tupper+tlower))/(tupper-tlower) \]
where T_k is the Chebyshev polynomial of k-th order, tupper and tlower are upper and lower drift-time bounds.
Units: [t] = ns, [r] = mm, [v] = mm/ns.
Definition at line 52 of file RtChebyshev.h.
|
inherited |
Definition at line 36 of file CalibFunc.h.
initialization constructor,
size of ParVec - 2 = order of the r(t) polynomial,
ParVec[0] = t_low (smallest allowed drift time), ParVec[1] = t_up (largest allowed drift time). ParVec[2...] = parameters of the Chebyshev polynomial
Definition at line 73 of file RtChebyshev.h.
|
private |
initialization method
Definition at line 26 of file RtChebyshev.cxx.
|
virtual |
Implements MuonCalib::IRtRelation.
Definition at line 85 of file RtChebyshev.cxx.
double RtChebyshev::get_reduced_time | ( | const double & | t | ) | const |
Definition at line 125 of file RtChebyshev.cxx.
|
inlineinherited |
return the difference in total dirft time between the two multilayers (ML1 - ML2)
Definition at line 27 of file IRtRelation.h.
|
inlineinherited |
Definition at line 29 of file IRtRelation.h.
|
virtual |
|
inlineinherited |
Definition at line 39 of file CalibFunc.h.
unsigned int RtChebyshev::numberOfRtParameters | ( | void | ) | const |
|
inlineinherited |
Definition at line 41 of file CalibFunc.h.
Definition at line 40 of file CalibFunc.h.
|
virtual |
get the radius corresponding to the drift time t; if t is not within [t_low, t_up] an unphysical radius of 99999 is returned
get the drift velocity
Implements MuonCalib::IRtRelation.
Definition at line 54 of file RtChebyshev.cxx.
std::vector< double > RtChebyshev::rtParameters | ( | void | ) | const |
get the reduced time which is the argument of the Chebyshev polynomial
Definition at line 113 of file RtChebyshev.cxx.
|
inlineinherited |
set the difference in total drift time betwene the two multilayers (ML1 - ML2)
Definition at line 32 of file IRtRelation.h.
|
virtual |
< get the lower drift-time bound
get the upper drift-time bound
Implements MuonCalib::IRtRelation.
Definition at line 92 of file RtChebyshev.cxx.
|
virtual |
get the number of parameters used to describe the r(t) relationship
Implements MuonCalib::IRtRelation.
Definition at line 99 of file RtChebyshev.cxx.
|
inlinevirtualinherited |
Implements MuonCalib::CalibFunc.
Definition at line 18 of file IRtRelation.h.
|
private |
pointer to the Chebyshev polynomials
Definition at line 55 of file RtChebyshev.h.
|
privateinherited |
Definition at line 51 of file CalibFunc.h.
|
inherited |
Definition at line 34 of file IRtRelation.h.