ATLAS Offline Software
Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
MuonCalib::MuonCalibPattern Class Reference

#include <MuonCalibPattern.h>

Collaboration diagram for MuonCalib::MuonCalibPattern:

Classes

struct  defineParams
 

Public Types

using MuonCalibSegPtr = std::shared_ptr< MuonCalibSegment >
 typedef for a set of (pointers to) MuonCalibSegments More...
 
using MuonSegmentVec = std::vector< MuonCalibSegPtr >
 typedef for the iterator of the set of MuonCalibSegments More...
 

Public Member Functions

 MuonCalibPattern ()=default
 Default constructor. More...
 
 MuonCalibPattern (const MuonCalibPattern &pat)
 Copy constructor. More...
 
MuonCalibPatternoperator= (const MuonCalibPattern &pat)
 assignment operator. More...
 
 ~MuonCalibPattern ()=default
 destructor More...
 
 MuonCalibPattern (const defineParams &pars)
 constructor initializing the pattern with trackparameters, chi2 and More...
 
unsigned int muonSegments () const
 retrieve number of segments More...
 
const MuonSegmentVecmuonSegs () const
 retrieve the whole set of MuonCalibSegments: reference to the segment vector More...
 
MuonSegmentVecmuonSegs ()
 retrieve the whole set of MuonCalibSegments: reference to the segment vector More...
 
double chi2 () const
 retrieve chi2 of the pattern More...
 
double z0 () const
 retrieve the z0 (track)parameter of the pattern More...
 
double r0 () const
 retrieve the r0 (track)parameter of the pattern More...
 
double invP () const
 retrieve the invP (track)parameter of the pattern More...
 
double phi () const
 retrieve the phi (track)parameter of the pattern More...
 
double theta () const
 retrieve the theta (track)parameter of the pattern More...
 
unsigned int nmdtHits () const
 < retrieve number of MDT hits. Counting convention: 1000*eta hits + phi hits. Note that MDTs only measure eta hits More...
 
unsigned int nrpcHits () const
 retrieve number of TGC hits. More...
 
unsigned int ntgcHits () const
 retrieve number of CSC hits. More...
 
unsigned int ncscHits () const
 
void addMuonSegment (MuonCalibSegPtr seg)
 
std::ostream & dump (std::ostream &os) const
 

Private Member Functions

void copy (const MuonCalibPattern &other)
 

Private Attributes

MuonSegmentVec m_muonSegments
 set of MuonCalibSegments assigned to this MuonCalibPattern More...
 
defineParams m_pars
 

Detailed Description

Class to store the information belonging to a global pattern in the muon system. It contains all information needed to calibrate the different technologies in the muon system.

The pattern recognition provides the MuonCalibPattern, optionally one can provide the number of hits associated to the pattern. MuonCalibSegment s that are identified to belong to the same trajectory are assigned to the MuonCalibPattern. Furthermore, the MuonCalibPattern contains a goodness of fit and an estimate of the track parameters.

Definition at line 42 of file MuonCalibPattern.h.

Member Typedef Documentation

◆ MuonCalibSegPtr

typedef for a set of (pointers to) MuonCalibSegments

Definition at line 44 of file MuonCalibPattern.h.

◆ MuonSegmentVec

typedef for the iterator of the set of MuonCalibSegments

Definition at line 46 of file MuonCalibPattern.h.

Constructor & Destructor Documentation

◆ MuonCalibPattern() [1/3]

MuonCalib::MuonCalibPattern::MuonCalibPattern ( )
default

Default constructor.

◆ MuonCalibPattern() [2/3]

MuonCalib::MuonCalibPattern::MuonCalibPattern ( const MuonCalibPattern pat)

Copy constructor.

Not sure wether we need it...

Definition at line 46 of file MuonCalibPattern.cxx.

46 { copy(other); }

◆ ~MuonCalibPattern()

MuonCalib::MuonCalibPattern::~MuonCalibPattern ( )
default

destructor

◆ MuonCalibPattern() [3/3]

MuonCalib::MuonCalibPattern::MuonCalibPattern ( const defineParams pars)

constructor initializing the pattern with trackparameters, chi2 and

number of hits in the different technologies.

Definition at line 34 of file MuonCalibPattern.cxx.

34  : m_pars{pars} {
35  std::cout << "Consider to add NSW information here " << __FILE__ << ":" << __LINE__ << std::endl;
36  }

Member Function Documentation

◆ addMuonSegment()

void MuonCalib::MuonCalibPattern::addMuonSegment ( MuonCalibSegPtr  seg)

Definition at line 32 of file MuonCalibPattern.cxx.

32 { m_muonSegments.emplace_back(std::move(seg)); }

◆ chi2()

double MuonCalib::MuonCalibPattern::chi2 ( ) const

retrieve chi2 of the pattern

Definition at line 19 of file MuonCalibPattern.cxx.

19 { return m_pars.chi2; }

◆ copy()

void MuonCalib::MuonCalibPattern::copy ( const MuonCalibPattern other)
private

Need to find out whether the segment should be copied or not

Definition at line 38 of file MuonCalibPattern.cxx.

38  {
39  m_pars = other.m_pars;
41  for (const MuonCalibSegPtr& other_seg : other.muonSegs()) {
42  MuonCalibSegPtr seg{new MuonCalibSegment(*other_seg)};
43  addMuonSegment(seg);
44  }
45  }

◆ dump()

std::ostream & MuonCalib::MuonCalibPattern::dump ( std::ostream &  os) const

Definition at line 52 of file MuonCalibPattern.cxx.

52  {
53  os << "MuonCalibPattern: chi2 " << chi2() << " invP " << invP() << " nsegments " << muonSegments() << std::endl
54  << " (r0,z0) = (" << r0() << "," << z0() << ") (phi,theta) = (" << phi() << "," << theta() << ")";
55  return os;
56  }

◆ invP()

double MuonCalib::MuonCalibPattern::invP ( ) const

retrieve the invP (track)parameter of the pattern

Definition at line 22 of file MuonCalibPattern.cxx.

22 { return m_pars.invP; }

◆ muonSegments()

unsigned int MuonCalib::MuonCalibPattern::muonSegments ( ) const

retrieve number of segments

Definition at line 14 of file MuonCalibPattern.cxx.

14 { return m_muonSegments.size(); }

◆ muonSegs() [1/2]

MuonCalibPattern::MuonSegmentVec & MuonCalib::MuonCalibPattern::muonSegs ( )

retrieve the whole set of MuonCalibSegments: reference to the segment vector

Definition at line 16 of file MuonCalibPattern.cxx.

16 { return m_muonSegments; }

◆ muonSegs() [2/2]

const MuonCalibPattern::MuonSegmentVec & MuonCalib::MuonCalibPattern::muonSegs ( ) const

retrieve the whole set of MuonCalibSegments: reference to the segment vector

Definition at line 15 of file MuonCalibPattern.cxx.

15 { return m_muonSegments; }

◆ ncscHits()

unsigned int MuonCalib::MuonCalibPattern::ncscHits ( ) const

Definition at line 29 of file MuonCalibPattern.cxx.

29 { return m_pars.ncsc; }

◆ nmdtHits()

unsigned int MuonCalib::MuonCalibPattern::nmdtHits ( ) const

< retrieve number of MDT hits. Counting convention: 1000*eta hits + phi hits. Note that MDTs only measure eta hits

retrieve number of RPC hits. Counting convention: 1000*eta hits + phi hits.

Definition at line 26 of file MuonCalibPattern.cxx.

26 { return m_pars.nmdt; }

◆ nrpcHits()

unsigned int MuonCalib::MuonCalibPattern::nrpcHits ( ) const

retrieve number of TGC hits.

Counting convention: 1000*eta hits + phi hits.

Definition at line 27 of file MuonCalibPattern.cxx.

27 { return m_pars.nrpc; }

◆ ntgcHits()

unsigned int MuonCalib::MuonCalibPattern::ntgcHits ( ) const

retrieve number of CSC hits.

Counting convention: 1000*eta hits + phi hits.

Definition at line 28 of file MuonCalibPattern.cxx.

28 { return m_pars.ntgc; }

◆ operator=()

MuonCalibPattern & MuonCalib::MuonCalibPattern::operator= ( const MuonCalibPattern pat)

assignment operator.

Not sure whether we need it...

Definition at line 47 of file MuonCalibPattern.cxx.

47  {
48  if (this != &pat) { copy(pat); }
49  return *this;
50  }

◆ phi()

double MuonCalib::MuonCalibPattern::phi ( ) const

retrieve the phi (track)parameter of the pattern

Definition at line 23 of file MuonCalibPattern.cxx.

23 { return m_pars.phi; }

◆ r0()

double MuonCalib::MuonCalibPattern::r0 ( ) const

retrieve the r0 (track)parameter of the pattern

Definition at line 21 of file MuonCalibPattern.cxx.

21 { return m_pars.dist0; }

◆ theta()

double MuonCalib::MuonCalibPattern::theta ( ) const

retrieve the theta (track)parameter of the pattern

Definition at line 24 of file MuonCalibPattern.cxx.

24 { return m_pars.theta; }

◆ z0()

double MuonCalib::MuonCalibPattern::z0 ( ) const

retrieve the z0 (track)parameter of the pattern

Definition at line 20 of file MuonCalibPattern.cxx.

20 { return m_pars.z0; }

Member Data Documentation

◆ m_muonSegments

MuonSegmentVec MuonCalib::MuonCalibPattern::m_muonSegments
private

set of MuonCalibSegments assigned to this MuonCalibPattern

Definition at line 111 of file MuonCalibPattern.h.

◆ m_pars

defineParams MuonCalib::MuonCalibPattern::m_pars
private

Definition at line 114 of file MuonCalibPattern.h.


The documentation for this class was generated from the following files:
MuonCalib::MuonCalibPattern::chi2
double chi2() const
retrieve chi2 of the pattern
Definition: MuonCalibPattern.cxx:19
make_hlt_rep.pars
pars
Definition: make_hlt_rep.py:90
MuonCalib::MuonCalibPattern::defineParams::ntgc
unsigned int ntgc
number of CSC hits.
Definition: MuonCalibPattern.h:69
MuonCalib::MuonCalibPattern::defineParams::ncsc
unsigned int ncsc
Definition: MuonCalibPattern.h:72
MuonCalib::MuonCalibPattern::defineParams::chi2
double chi2
Chi2 of the MuonCalibPattern.
Definition: MuonCalibPattern.h:56
MuonCalib::MuonCalibPattern::defineParams::nmdt
unsigned int nmdt
number of RPC hits.
Definition: MuonCalibPattern.h:64
MuonCalib::MuonCalibPattern::z0
double z0() const
retrieve the z0 (track)parameter of the pattern
Definition: MuonCalibPattern.cxx:20
MuonCalib::MuonCalibPattern::r0
double r0() const
retrieve the r0 (track)parameter of the pattern
Definition: MuonCalibPattern.cxx:21
MuonCalib::MuonCalibPattern::copy
void copy(const MuonCalibPattern &other)
Definition: MuonCalibPattern.cxx:38
MuonCalib::MuonCalibPattern::muonSegments
unsigned int muonSegments() const
retrieve number of segments
Definition: MuonCalibPattern.cxx:14
MuonCalib::MuonCalibPattern::phi
double phi() const
retrieve the phi (track)parameter of the pattern
Definition: MuonCalibPattern.cxx:23
MuonCalib::MuonCalibPattern::m_muonSegments
MuonSegmentVec m_muonSegments
set of MuonCalibSegments assigned to this MuonCalibPattern
Definition: MuonCalibPattern.h:111
MuonCalib::MuonCalibPattern::defineParams::dist0
double dist0
d0 (track)parameter of the MuonCalibPattern
Definition: MuonCalibPattern.h:58
MuonCalib::MuonCalibPattern::invP
double invP() const
retrieve the invP (track)parameter of the pattern
Definition: MuonCalibPattern.cxx:22
MuonCalib::MuonCalibPattern::defineParams::nrpc
unsigned int nrpc
number of TGC hits.
Definition: MuonCalibPattern.h:66
MuonCalib::MuonCalibPattern::defineParams::z0
double z0
z0 (track)parameter of the MuonCalibPattern
Definition: MuonCalibPattern.h:57
MuonCalib::MuonCalibPattern::defineParams::theta
double theta
theta (track)parameter of the MuonCalibPattern
Definition: MuonCalibPattern.h:61
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
MuonCalib::MuonCalibPattern::defineParams::invP
double invP
invP (track)parameter of the MuonCalibPattern
Definition: MuonCalibPattern.h:59
dso-stats.pat
pat
Definition: dso-stats.py:39
MuonCalib::MuonCalibPattern::addMuonSegment
void addMuonSegment(MuonCalibSegPtr seg)
Definition: MuonCalibPattern.cxx:32
MuonCalib::MuonCalibPattern::MuonCalibSegPtr
std::shared_ptr< MuonCalibSegment > MuonCalibSegPtr
typedef for a set of (pointers to) MuonCalibSegments
Definition: MuonCalibPattern.h:45
InDetDD::other
@ other
Definition: InDetDD_Defs.h:16
MuonCalib::MuonCalibPattern::theta
double theta() const
retrieve the theta (track)parameter of the pattern
Definition: MuonCalibPattern.cxx:24
MuonCalib::MuonCalibPattern::m_pars
defineParams m_pars
Definition: MuonCalibPattern.h:114
MuonCalib::MuonCalibPattern::defineParams::phi
double phi
phi (track)parameter of the MuonCalibPattern
Definition: MuonCalibPattern.h:60