ATLAS Offline Software
Public Types | Public Member Functions | Private Attributes | List of all members
MuonR4::CalibratedSpacePoint Class Reference

The calibrated Space point is created during the calibration process. More...

#include <CalibratedSpacePoint.h>

Collaboration diagram for MuonR4::CalibratedSpacePoint:

Public Types

enum  State : uint8_t { State::Valid = 0, State::FailedCalib = 1, State::Outlier = 2 }
 State flag to distinguish different space point states. More...
 
using Covariance_t = std::variant< AmgSymMatrix(2), AmgSymMatrix(3)>
 The spatial covariance matrix of the calibrated space point. More...
 

Public Member Functions

 CalibratedSpacePoint (const SpacePoint *uncalibSpacePoint, Amg::Vector3D &&posInChamber, Amg::Vector3D &&dirInChamber, State st=State::Valid)
 Standard constructor. More...
 
 ~CalibratedSpacePoint ()=default
 
const Amg::Vector3DpositionInChamber () const
 The position of the calibrated space point inside the chamber. More...
 
const Amg::Vector3DdirectionInChamber () const
 The direction of the calibrated space point inside the chamber. More...
 
double driftRadius () const
 The drift radius of the calibrated space point. More...
 
void setDriftRadius (const double r)
 Set the drift radius of the calibrated space point after the calibration procedure. More...
 
const Covariance_tcovariance () const
 
template<unsigned k>
void setCovariance (const AmgSymMatrix(k)&cov)
 Set the covariance matrix of the calibrated space pooint. More...
 
const SpacePointspacePoint () const
 The pointer to the space point out of which this space point has been built. More...
 
xAOD::UncalibMeasType type () const
 Returns the space point type. More...
 
double time () const
 Current time of the calibrated space point. More...
 
void setTimeMeasurement (double t)
 Set the time measurement. More...
 
bool measuresTime () const
 Returns whether the calibrated space point measures time. More...
 
bool measuresPhi () const
 Returns whether the calibrated space point measures phi. More...
 
bool measuresEta () const
 Returns whether the calibrated space point measures eta. More...
 
State fitState () const
 Returns the state of the calibrated space point. More...
 
void setFitState (State st)
 Set the state of the calibrated space point. More...
 
unsigned dimension () const
 Returns the local dimension of the measurement. More...
 

Private Attributes

const SpacePointm_parent {nullptr}
 
Amg::Vector3D m_posInChamber {Amg::Vector3D::Zero()}
 
Amg::Vector3D m_dirInChamber {Amg::Vector3D::Zero()}
 
double m_driftRadius {0.}
 
Covariance_t m_cov {}
 
double m_time {0.}
 
bool m_measuresTime {type() == xAOD::UncalibMeasType::MdtDriftCircleType}
 By default the Mdt may measure time. More...
 
State m_state {State::Valid}
 

Detailed Description

The calibrated Space point is created during the calibration process.

It usually exploits the information of the external tracking seed. Calibrated space points may also be created without a link to a measurement space point. In this case, they serve in an analogous way as the Trk::PseudoMeasurement

Definition at line 15 of file CalibratedSpacePoint.h.

Member Typedef Documentation

◆ Covariance_t

The spatial covariance matrix of the calibrated space point.

Definition at line 49 of file CalibratedSpacePoint.h.

Member Enumeration Documentation

◆ State

enum MuonR4::CalibratedSpacePoint::State : uint8_t
strong

State flag to distinguish different space point states.

  • Valid: Calibration of the space point was successful and it should be used in the fit
  • FailedCalib: The calibration procedure produced invalid constants and the space point shall not be included in the current chi2 iteration, but may tried in the next cycle
  • Outlier: The Space point is an outlier and shall never be included in the fit. It's kept for the hit counting purpose but nothing else
Enumerator
Valid 
FailedCalib 
Outlier 

Definition at line 24 of file CalibratedSpacePoint.h.

24  : uint8_t {
25  Valid = 0,
26  FailedCalib = 1,
27  Outlier = 2,
28  };

Constructor & Destructor Documentation

◆ CalibratedSpacePoint()

MuonR4::CalibratedSpacePoint::CalibratedSpacePoint ( const SpacePoint uncalibSpacePoint,
Amg::Vector3D &&  posInChamber,
Amg::Vector3D &&  dirInChamber,
State  st = State::Valid 
)

Standard constructor.

Parameters
uncalibSpacePointPointer to the underyling uncalibrated space point
posInChamberCalibrated position of the space point inside the chamber
dirInChamberDirection of the space point in chamber

Definition at line 9 of file CalibratedSpacePoint.cxx.

12  :
13  m_parent{uncalibSpacePoint},
14  m_posInChamber{posInChamber},
15  m_dirInChamber{dirInChamber},
16  m_state{st} {
17  }

◆ ~CalibratedSpacePoint()

MuonR4::CalibratedSpacePoint::~CalibratedSpacePoint ( )
default

Member Function Documentation

◆ covariance()

const Covariance_t & MuonR4::CalibratedSpacePoint::covariance ( ) const

Definition at line 33 of file CalibratedSpacePoint.cxx.

33  {
34  return m_cov;
35  }

◆ dimension()

unsigned MuonR4::CalibratedSpacePoint::dimension ( ) const

Returns the local dimension of the measurement.

Definition at line 61 of file CalibratedSpacePoint.cxx.

61  {
62  return measuresEta() + measuresPhi();
63  }

◆ directionInChamber()

const Amg::Vector3D & MuonR4::CalibratedSpacePoint::directionInChamber ( ) const

The direction of the calibrated space point inside the chamber.

Definition at line 24 of file CalibratedSpacePoint.cxx.

24  {
25  return m_dirInChamber;
26  }

◆ driftRadius()

double MuonR4::CalibratedSpacePoint::driftRadius ( ) const

The drift radius of the calibrated space point.

Needs to be set externally

Definition at line 27 of file CalibratedSpacePoint.cxx.

27  {
28  return m_driftRadius;
29  }

◆ fitState()

CalibratedSpacePoint::State MuonR4::CalibratedSpacePoint::fitState ( ) const

Returns the state of the calibrated space point.

Definition at line 55 of file CalibratedSpacePoint.cxx.

55  {
56  return m_state;
57  }

◆ measuresEta()

bool MuonR4::CalibratedSpacePoint::measuresEta ( ) const

Returns whether the calibrated space point measures eta.

Definition at line 52 of file CalibratedSpacePoint.cxx.

52  {
53  return !m_parent || m_parent->measuresEta();
54  }

◆ measuresPhi()

bool MuonR4::CalibratedSpacePoint::measuresPhi ( ) const

Returns whether the calibrated space point measures phi.

Definition at line 49 of file CalibratedSpacePoint.cxx.

49  {
50  return !m_parent || m_parent->measuresPhi();
51  }

◆ measuresTime()

bool MuonR4::CalibratedSpacePoint::measuresTime ( ) const

Returns whether the calibrated space point measures time.

Definition at line 46 of file CalibratedSpacePoint.cxx.

46  {
47  return m_measuresTime;
48  }

◆ positionInChamber()

const Amg::Vector3D & MuonR4::CalibratedSpacePoint::positionInChamber ( ) const

The position of the calibrated space point inside the chamber.

Definition at line 21 of file CalibratedSpacePoint.cxx.

21  {
22  return m_posInChamber;
23  }

◆ setCovariance()

template<unsigned k>
void MuonR4::CalibratedSpacePoint::setCovariance ( const AmgSymMatrix(k)&  cov)
inline

Set the covariance matrix of the calibrated space pooint.

Definition at line 53 of file CalibratedSpacePoint.h.

53  {
54  static_assert(k==2 || k==3, "Covariance dimension needs to be 2 or 3");
55  m_cov = cov;
56  }

◆ setDriftRadius()

void MuonR4::CalibratedSpacePoint::setDriftRadius ( const double  r)

Set the drift radius of the calibrated space point after the calibration procedure.

Definition at line 30 of file CalibratedSpacePoint.cxx.

30  {
31  m_driftRadius = r;
32  }

◆ setFitState()

void MuonR4::CalibratedSpacePoint::setFitState ( State  st)

Set the state of the calibrated space point.

Definition at line 58 of file CalibratedSpacePoint.cxx.

58  {
59  m_state = st;
60  }

◆ setTimeMeasurement()

void MuonR4::CalibratedSpacePoint::setTimeMeasurement ( double  t)

Set the time measurement.

Parameters
tTime of arrival

Definition at line 42 of file CalibratedSpacePoint.cxx.

42  {
43  m_time = t;
44  m_measuresTime = true;
45  }

◆ spacePoint()

const SpacePoint * MuonR4::CalibratedSpacePoint::spacePoint ( ) const

The pointer to the space point out of which this space point has been built.

Definition at line 18 of file CalibratedSpacePoint.cxx.

18  {
19  return m_parent;
20  }

◆ time()

double MuonR4::CalibratedSpacePoint::time ( ) const

Current time of the calibrated space point.

Definition at line 39 of file CalibratedSpacePoint.cxx.

39  {
40  return m_time;
41  }

◆ type()

xAOD::UncalibMeasType MuonR4::CalibratedSpacePoint::type ( ) const

Returns the space point type.

If the calibrated space point is built without a valid point to a spacePoint, e.g. external beamspot constraint, Other is returned

Definition at line 36 of file CalibratedSpacePoint.cxx.

36  {
38  }

Member Data Documentation

◆ m_cov

Covariance_t MuonR4::CalibratedSpacePoint::m_cov {}
private

Definition at line 85 of file CalibratedSpacePoint.h.

◆ m_dirInChamber

Amg::Vector3D MuonR4::CalibratedSpacePoint::m_dirInChamber {Amg::Vector3D::Zero()}
private

Definition at line 82 of file CalibratedSpacePoint.h.

◆ m_driftRadius

double MuonR4::CalibratedSpacePoint::m_driftRadius {0.}
private

Definition at line 84 of file CalibratedSpacePoint.h.

◆ m_measuresTime

bool MuonR4::CalibratedSpacePoint::m_measuresTime {type() == xAOD::UncalibMeasType::MdtDriftCircleType}
private

By default the Mdt may measure time.

Definition at line 89 of file CalibratedSpacePoint.h.

◆ m_parent

const SpacePoint* MuonR4::CalibratedSpacePoint::m_parent {nullptr}
private

Definition at line 80 of file CalibratedSpacePoint.h.

◆ m_posInChamber

Amg::Vector3D MuonR4::CalibratedSpacePoint::m_posInChamber {Amg::Vector3D::Zero()}
private

Definition at line 81 of file CalibratedSpacePoint.h.

◆ m_state

State MuonR4::CalibratedSpacePoint::m_state {State::Valid}
private

Definition at line 90 of file CalibratedSpacePoint.h.

◆ m_time

double MuonR4::CalibratedSpacePoint::m_time {0.}
private

Definition at line 87 of file CalibratedSpacePoint.h.


The documentation for this class was generated from the following files:
beamspotman.r
def r
Definition: beamspotman.py:676
MuonR4::SpacePoint::type
xAOD::UncalibMeasType type() const
Definition: MuonSpectrometer/MuonPhaseII/Event/MuonSpacePoint/src/SpacePoint.cxx:131
xAOD::uint8_t
uint8_t
Definition: Muon_v1.cxx:557
plotBeamSpotVxVal.cov
cov
Definition: plotBeamSpotVxVal.py:201
MuonR4::CalibratedSpacePoint::m_dirInChamber
Amg::Vector3D m_dirInChamber
Definition: CalibratedSpacePoint.h:82
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
MuonR4::SpacePoint::measuresPhi
bool measuresPhi() const
: Does the space point contain a phi measurement
Definition: MuonSpectrometer/MuonPhaseII/Event/MuonSpacePoint/src/SpacePoint.cxx:134
MuonR4::CalibratedSpacePoint::m_posInChamber
Amg::Vector3D m_posInChamber
Definition: CalibratedSpacePoint.h:81
MuonR4::CalibratedSpacePoint::m_measuresTime
bool m_measuresTime
By default the Mdt may measure time.
Definition: CalibratedSpacePoint.h:89
MuonR4::CalibratedSpacePoint::measuresPhi
bool measuresPhi() const
Returns whether the calibrated space point measures phi.
Definition: CalibratedSpacePoint.cxx:49
MuonR4::CalibratedSpacePoint::m_driftRadius
double m_driftRadius
Definition: CalibratedSpacePoint.h:84
xAOD::Other
@ Other
MuonR4::CalibratedSpacePoint::m_cov
Covariance_t m_cov
Definition: CalibratedSpacePoint.h:85
MuonR4::CalibratedSpacePoint::m_state
State m_state
Definition: CalibratedSpacePoint.h:90
MuonR4::SpacePoint::measuresEta
bool measuresEta() const
: Does the space point contain an eta measurement
Definition: MuonSpectrometer/MuonPhaseII/Event/MuonSpacePoint/src/SpacePoint.cxx:137
MuonR4::CalibratedSpacePoint::m_time
double m_time
Definition: CalibratedSpacePoint.h:87
OfflineHitType::Outlier
@ Outlier
fitman.k
k
Definition: fitman.py:528
MuonR4::CalibratedSpacePoint::m_parent
const SpacePoint * m_parent
Definition: CalibratedSpacePoint.h:80
MuonR4::CalibratedSpacePoint::measuresEta
bool measuresEta() const
Returns whether the calibrated space point measures eta.
Definition: CalibratedSpacePoint.cxx:52