ATLAS Offline Software
|
#include <RtResolutionChebyshev.h>
Public Types | |
using | ParVec = std::vector< double > |
Public Member Functions | |
RtResolutionChebyshev (const ParVec &vec) | |
initialization constructor, More... | |
std::string | name () const |
get the class name More... | |
double | resolution (double t, double bgRate=0.0) const |
returns resolution for a give time and background rate More... | |
double | tLower () const |
< get the lower drift-time bound More... | |
double | tUpper () const |
get the number of parameters used to describe the resolution More... | |
unsigned int | numberOfResParameters () const |
get the coefficients of the r(t) polynomial More... | |
std::vector< double > | resParameters () 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 override |
CalibFunc (const ParVec &vec) | |
unsigned int | nPar () const |
const ParVec & | parameters () const |
double | par (unsigned int index) const |
Private Attributes | |
ParVec | m_parameters {} |
This class contains the implementation of a spatial resolution \( \sigma \) parametrized by a linear combination of Chebyshev polyonomials.
Convention:
\[ \sigma(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 34 of file RtResolutionChebyshev.h.
|
inherited |
Definition at line 35 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 10 of file RtResolutionChebyshev.cxx.
|
inlineexplicitinherited |
Definition at line 36 of file CalibFunc.h.
|
inline |
|
virtual |
get the class name
get the resolution corresponding to the drift time t; if t is not within [t_low, t_up] an unphysical radius of 99999 is returned; the background rate is ignored in present implementation
Implements MuonCalib::CalibFunc.
Definition at line 20 of file RtResolutionChebyshev.cxx.
|
inlineinherited |
Definition at line 39 of file CalibFunc.h.
unsigned int RtResolutionChebyshev::numberOfResParameters | ( | ) | const |
get the coefficients of the r(t) polynomial
Definition at line 51 of file RtResolutionChebyshev.cxx.
|
inlineinherited |
Definition at line 41 of file CalibFunc.h.
Definition at line 40 of file CalibFunc.h.
|
virtual |
returns resolution for a give time and background rate
Implements MuonCalib::IRtResolution.
Definition at line 21 of file RtResolutionChebyshev.cxx.
std::vector< double > RtResolutionChebyshev::resParameters | ( | ) | const |
get the reduced time which is the argument of the Chebyshev polynomial
Definition at line 52 of file RtResolutionChebyshev.cxx.
double RtResolutionChebyshev::tLower | ( | ) | const |
< get the lower drift-time bound
get the upper drift-time bound
Definition at line 49 of file RtResolutionChebyshev.cxx.
double RtResolutionChebyshev::tUpper | ( | ) | const |
get the number of parameters used to describe the resolution
Definition at line 50 of file RtResolutionChebyshev.cxx.
|
inlineoverridevirtualinherited |
Implements MuonCalib::CalibFunc.
Definition at line 17 of file IRtResolution.h.
|
privateinherited |
Definition at line 51 of file CalibFunc.h.