![]() |
ATLAS Offline Software
|
#include <RtResolutionChebyshev.h>
Public Types | |
typedef std::vector< double > | ParVec |
Public Member Functions | |
RtResolutionChebyshev (const ParVec &vec) | |
initialization constructor, More... | |
std::string | name (void) 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 (void) const |
< get the lower drift-time bound More... | |
double | tUpper (void) const |
get the number of parameters used to describe the resolution More... | |
unsigned int | numberOfResParameters (void) const |
get the coefficients of the r(t) polynomial More... | |
std::vector< double > | resParameters (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 |
unsigned int | nPar () const |
const ParVec & | parameters () const |
double | par (unsigned int index) const |
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 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 50 of file RtResolutionChebyshev.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 70 of file RtResolutionChebyshev.h.
|
private |
initialization method
Definition at line 16 of file RtResolutionChebyshev.cxx.
|
inline |
Definition at line 111 of file RtResolutionChebyshev.cxx.
|
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 37 of file RtResolutionChebyshev.cxx.
|
inlineinherited |
Definition at line 39 of file CalibFunc.h.
unsigned int RtResolutionChebyshev::numberOfResParameters | ( | void | ) | const |
get the coefficients of the r(t) polynomial
Definition at line 92 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 44 of file RtResolutionChebyshev.cxx.
std::vector< double > RtResolutionChebyshev::resParameters | ( | void | ) | const |
get the reduced time which is the argument of the Chebyshev polynomial
Definition at line 99 of file RtResolutionChebyshev.cxx.
double RtResolutionChebyshev::tLower | ( | void | ) | const |
< get the lower drift-time bound
get the upper drift-time bound
Definition at line 78 of file RtResolutionChebyshev.cxx.
double RtResolutionChebyshev::tUpper | ( | void | ) | const |
get the number of parameters used to describe the resolution
Definition at line 85 of file RtResolutionChebyshev.cxx.
|
inlinevirtualinherited |
Implements MuonCalib::CalibFunc.
Definition at line 18 of file IRtResolution.h.
|
private |
pointer to the Chebyshev polynomials
Definition at line 53 of file RtResolutionChebyshev.h.
|
privateinherited |
Definition at line 51 of file CalibFunc.h.