ATLAS Offline Software
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Attributes | Private Attributes | List of all members
MDTRIO_OnTrackErrorScaling Class Referencefinal

#include <MDTRIO_OnTrackErrorScaling.h>

Inheritance diagram for MDTRIO_OnTrackErrorScaling:
Collaboration diagram for MDTRIO_OnTrackErrorScaling:

Public Types

enum  EMDTErrorScalingRegions { kBarrel, kEndcap, kNParamTypes }
 
enum  Type {
  Pixel = 0, SCT = 1, TRT = 2, MuonEtaPhi = 3,
  Unknown = 99
}
 

Public Member Functions

virtual CLID clid () const override final
 
Amg::MatrixX getScaledCovariance (const Amg::MatrixX &cov_input, bool is_endcap) const
 
virtual bool postProcess () override final
 
std::vector< std::vector< double > > & params ()
 
const std::vector< std::vector< double > > & params () const
 
virtual Type type () const
 

Static Public Member Functions

static const char *constparamNames ()
 

Protected Member Functions

void checkParameters (const char *label, unsigned int n_paramter_sets, const char *const *param_names, unsigned int n_paramters) const
 Convenience function to check whether the number of parameters is correct. More...
 

Static Protected Attributes

static const char *const s_names [kNParamTypes]
 

Private Attributes

std::vector< std::vector< double > > m_params
 

Detailed Description

Definition at line 10 of file MDTRIO_OnTrackErrorScaling.h.

Member Enumeration Documentation

◆ EMDTErrorScalingRegions

Enumerator
kBarrel 
kEndcap 
kNParamTypes 

Definition at line 18 of file MDTRIO_OnTrackErrorScaling.h.

19  {
20  kBarrel,
21  kEndcap,
23  };

◆ Type

Enumerator
Pixel 
SCT 
TRT 
MuonEtaPhi 
Unknown 

Definition at line 16 of file RIO_OnTrackErrorScaling.h.

16  {
17  Pixel = 0,
18  SCT = 1,
19  TRT = 2,
20  MuonEtaPhi = 3,
21  Unknown = 99
22  };

Member Function Documentation

◆ checkParameters()

void RIO_OnTrackErrorScaling::checkParameters ( const char *  label,
unsigned int  n_paramter_sets,
const char *const param_names,
unsigned int  n_paramters 
) const
protectedinherited

Convenience function to check whether the number of parameters is correct.

Parameters
labela label for the error scaling class in case an error is issued.
n_paramter_setsthe number of parameter sets
param_namesthe names of the parameter sets
n_paramtersthe number of parameters per set.

Definition at line 14 of file RIO_OnTrackErrorScaling.cxx.

18 {
19  if (params().size() != n_paramter_sets ) {
20  std::stringstream message;
21  message << label << ": Expecting parameters for 2 parameters for";
22  for (unsigned int idx=0; idx < n_paramter_sets; ++idx) {
23  message << " " << param_names[idx];
24  }
25  message << " But got " << params().size() << ".";
26  throw std::runtime_error( message.str() );
27  }
28  for (unsigned int idx=0; idx<params().size(); ++idx) {
29  if (params()[idx].size() != n_paramters) {
30  assert( idx < n_paramter_sets );
31  std::stringstream message;
32  message << label << ": Expected 2 parameters for " << param_names[idx] << " but got " << params()[idx].size()
33  << ".";
34  throw std::runtime_error( message.str() );
35  }
36  }
37 }

◆ clid()

CLID MDTRIO_OnTrackErrorScaling::clid ( ) const
finaloverridevirtual

Reimplemented from RIO_OnTrackErrorScaling.

Definition at line 16 of file MDTRIO_OnTrackErrorScaling.cxx.

◆ getScaledCovariance()

Amg::MatrixX MDTRIO_OnTrackErrorScaling::getScaledCovariance ( const Amg::MatrixX cov_input,
bool  is_endcap 
) const

Definition at line 25 of file MDTRIO_OnTrackErrorScaling.cxx.

27 {
28  Amg::MatrixX newCov(cov_input);
29  double a = (is_endcap) ? params()[kEndcap][0] : params()[kBarrel][0];
30  double b = (is_endcap) ? params()[kEndcap][1] : params()[kBarrel][1];
31  newCov(0,0) *= square(a);
32  newCov(0,0) += square(b);
33  return newCov;
34 }

◆ paramNames()

static const char* const* MDTRIO_OnTrackErrorScaling::paramNames ( )
inlinestatic

Definition at line 25 of file MDTRIO_OnTrackErrorScaling.h.

25 { return s_names; }

◆ params() [1/2]

std::vector<std::vector<double> >& RIO_OnTrackErrorScaling::params ( )
inlineinherited

Definition at line 29 of file RIO_OnTrackErrorScaling.h.

29 { return m_params; }

◆ params() [2/2]

const std::vector<std::vector<double> >& RIO_OnTrackErrorScaling::params ( ) const
inlineinherited

Definition at line 30 of file RIO_OnTrackErrorScaling.h.

30 { return m_params; }

◆ postProcess()

bool MDTRIO_OnTrackErrorScaling::postProcess ( )
finaloverridevirtual

Reimplemented from RIO_OnTrackErrorScaling.

Definition at line 20 of file MDTRIO_OnTrackErrorScaling.cxx.

20  {
21  checkParameters("MDTRIO_OnTrackErrorScaling", kNParamTypes, s_names, 2);
22  return true;
23 }

◆ type()

virtual Type RIO_OnTrackErrorScaling::type ( ) const
inlinevirtualinherited

Member Data Documentation

◆ m_params

std::vector<std::vector<double> > RIO_OnTrackErrorScaling::m_params
privateinherited

Definition at line 47 of file RIO_OnTrackErrorScaling.h.

◆ s_names

const char *const MDTRIO_OnTrackErrorScaling::s_names
staticprotected
Initial value:
={
"MDT Barrel",
"MDT Endcap"
}

Definition at line 29 of file MDTRIO_OnTrackErrorScaling.h.


The documentation for this class was generated from the following files:
Amg::MatrixX
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Definition: EventPrimitives.h:27
ID
std::vector< Identifier > ID
Definition: CalibHitIDCheck.h:24
MDTRIO_OnTrackErrorScaling::s_names
static const char *const s_names[kNParamTypes]
Definition: MDTRIO_OnTrackErrorScaling.h:29
Pixel
Definition: PixelFEUtils.h:16
PlotCalibFromCool.label
label
Definition: PlotCalibFromCool.py:78
MDTRIO_OnTrackErrorScaling::kEndcap
@ kEndcap
Definition: MDTRIO_OnTrackErrorScaling.h:21
MDTRIO_OnTrackErrorScaling::kNParamTypes
@ kNParamTypes
Definition: MDTRIO_OnTrackErrorScaling.h:22
ReweightUtils.message
message
Definition: ReweightUtils.py:15
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
TRT
Definition: HitInfo.h:33
RIO_OnTrackErrorScaling::m_params
std::vector< std::vector< double > > m_params
Definition: RIO_OnTrackErrorScaling.h:47
ClassID_traits
Default, invalid implementation of ClassID_traits.
Definition: Control/AthenaKernel/AthenaKernel/ClassID_traits.h:40
SCT
Definition: SCT_ChipUtils.h:14
plotBeamSpotMon.b
b
Definition: plotBeamSpotMon.py:77
a
TList * a
Definition: liststreamerinfos.cxx:10
LArNewCalib_DelayDump_OFC_Cali.idx
idx
Definition: LArNewCalib_DelayDump_OFC_Cali.py:69
RIO_OnTrackErrorScaling::Unknown
@ Unknown
Definition: RIO_OnTrackErrorScaling.h:21
RIO_OnTrackErrorScaling::checkParameters
void checkParameters(const char *label, unsigned int n_paramter_sets, const char *const *param_names, unsigned int n_paramters) const
Convenience function to check whether the number of parameters is correct.
Definition: RIO_OnTrackErrorScaling.cxx:14
RIO_OnTrackErrorScaling::MuonEtaPhi
@ MuonEtaPhi
Definition: RIO_OnTrackErrorScaling.h:20
RIO_OnTrackErrorScaling::params
std::vector< std::vector< double > > & params()
Definition: RIO_OnTrackErrorScaling.h:29
MDTRIO_OnTrackErrorScaling::kBarrel
@ kBarrel
Definition: MDTRIO_OnTrackErrorScaling.h:20