Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Public Types | Public Member Functions | Private Attributes | List of all members
MuonCalib::ITrRelation Class Referenceabstract

#include <ITrRelation.h>

Inheritance diagram for MuonCalib::ITrRelation:
Collaboration diagram for MuonCalib::ITrRelation:

Public Types

using ParVec = std::vector< double >
 

Public Member Functions

 ITrRelation (const ParVec &parameters)
 Constructor taking the input r-t relation & the vector of parameters. More...
 
virtual ~ITrRelation ()=default
 Desctructor. More...
 
virtual std::string typeName () const override final
 
virtual std::optional< double > driftTime (const double r) const =0
 Interface method for fetching the drift-time from the radius Returns a nullopt if the time is out of the boundaries. More...
 
virtual std::optional< double > driftTimePrime (const double r) const =0
 
virtual std::optional< double > driftTime2Prime (const double r) const =0
 
virtual double minRadius () const =0
 Returns the minimum drift-radius. More...
 
virtual double maxRadius () const =0
 Returns the maximum drift-radius. More...
 
virtual unsigned nDoF () const =0
 Returns the number of degrees of freedom of the tr relation. More...
 
double getReducedR (const double r) const
 Maps the radius interval [minRadius;maxRadius] to [-1;1] where the minimal radius is on the lower end. More...
 
double getReducedRPrime () const
 Returns the derivative of the reduced radisu w.r.t r. More...
 
unsigned int nPar () const
 
const ParVecparameters () const
 
double par (unsigned int index) const
 
virtual std::string name () const =0
 

Private Attributes

ParVec m_parameters {}
 

Detailed Description

Definition at line 17 of file ITrRelation.h.

Member Typedef Documentation

◆ ParVec

using MuonCalib::CalibFunc::ParVec = std::vector<double>
inherited

Definition at line 35 of file CalibFunc.h.

Constructor & Destructor Documentation

◆ ITrRelation()

MuonCalib::ITrRelation::ITrRelation ( const ParVec parameters)
inline

Constructor taking the input r-t relation & the vector of parameters.

Definition at line 20 of file ITrRelation.h.

20  :

◆ ~ITrRelation()

virtual MuonCalib::ITrRelation::~ITrRelation ( )
virtualdefault

Desctructor.

Member Function Documentation

◆ driftTime()

virtual std::optional<double> MuonCalib::ITrRelation::driftTime ( const double  r) const
pure virtual

Interface method for fetching the drift-time from the radius Returns a nullopt if the time is out of the boundaries.

Implemented in MuonCalib::TrRelationLookUp, MuonCalib::TrChebyshev, MuonCalib::TrLegendre, and MuonCalib::TrSimplePolynomial.

◆ driftTime2Prime()

virtual std::optional<double> MuonCalib::ITrRelation::driftTime2Prime ( const double  r) const
pure virtual

◆ driftTimePrime()

virtual std::optional<double> MuonCalib::ITrRelation::driftTimePrime ( const double  r) const
pure virtual

◆ getReducedR()

double MuonCalib::ITrRelation::getReducedR ( const double  r) const
inline

Maps the radius interval [minRadius;maxRadius] to [-1;1] where the minimal radius is on the lower end.

Definition at line 42 of file ITrRelation.h.

42  {
43  return mapToUnitInterval(r, minRadius(), maxRadius());
44  }

◆ getReducedRPrime()

double MuonCalib::ITrRelation::getReducedRPrime ( ) const
inline

Returns the derivative of the reduced radisu w.r.t r.

Definition at line 46 of file ITrRelation.h.

46  {
48  }

◆ maxRadius()

virtual double MuonCalib::ITrRelation::maxRadius ( ) const
pure virtual

◆ minRadius()

virtual double MuonCalib::ITrRelation::minRadius ( ) const
pure virtual

◆ name()

virtual std::string MuonCalib::CalibFunc::name ( ) const
pure virtualinherited

◆ nDoF()

virtual unsigned MuonCalib::ITrRelation::nDoF ( ) const
pure virtual

Returns the number of degrees of freedom of the tr relation.

Implemented in MuonCalib::TrRelationLookUp, MuonCalib::TrChebyshev, MuonCalib::TrLegendre, and MuonCalib::TrSimplePolynomial.

◆ nPar()

unsigned int MuonCalib::CalibFunc::nPar ( ) const
inlineinherited

Definition at line 39 of file CalibFunc.h.

39 { return m_parameters.size(); }

◆ par()

double MuonCalib::CalibFunc::par ( unsigned int  index) const
inlineinherited

Definition at line 41 of file CalibFunc.h.

41  {
42  return index < nPar() ? m_parameters[index] : 0.;
43  }

◆ parameters()

const ParVec& MuonCalib::CalibFunc::parameters ( ) const
inlineinherited

Definition at line 40 of file CalibFunc.h.

40 { return m_parameters; }

◆ typeName()

virtual std::string MuonCalib::ITrRelation::typeName ( ) const
inlinefinaloverridevirtual

Implements MuonCalib::CalibFunc.

Definition at line 24 of file ITrRelation.h.

24 { return "ITrRelation"; }

Member Data Documentation

◆ m_parameters

ParVec MuonCalib::CalibFunc::m_parameters {}
privateinherited

Definition at line 48 of file CalibFunc.h.


The documentation for this class was generated from the following file:
beamspotman.r
def r
Definition: beamspotman.py:676
index
Definition: index.py:1
MuonCalib::ITrRelation::maxRadius
virtual double maxRadius() const =0
Returns the maximum drift-radius.
MuonCalib::unitIntervalPrime
double unitIntervalPrime(const double lowerEdge, const double upperEdge)
Definition: UtilFunc.h:15
MuonCalib::ITrRelation::minRadius
virtual double minRadius() const =0
Returns the minimum drift-radius.
DeMoScan.index
string index
Definition: DeMoScan.py:364
MuonCalib::CalibFunc::parameters
const ParVec & parameters() const
Definition: CalibFunc.h:40
MuonCalib::CalibFunc::m_parameters
ParVec m_parameters
Definition: CalibFunc.h:48
MuonCalib::CalibFunc::nPar
unsigned int nPar() const
Definition: CalibFunc.h:39
MuonCalib::mapToUnitInterval
double mapToUnitInterval(const double x, const double lowerEdge, const double upperEdge)
Maps the number x which is in [lowEdge;upperEdge] to the interval [-1;1].
Definition: UtilFunc.h:12
MuonCalib::CalibFunc::CalibFunc
CalibFunc(const ParVec &vec)
Definition: CalibFunc.h:36