ATLAS Offline Software
CalibratedSpacePoint.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
6 namespace MuonR4{
7 
9  Amg::Vector3D&& posInChamber,
10  State st):
11  m_parent{uncalibSpacePoint},
12  m_posInChamber{posInChamber},
13  m_state{st} {
14  }
18  static const Amg::Vector3D s_Dir{Amg::Vector3D::UnitX()};
19  return m_parent? m_parent->sensorDirection() : s_Dir;
20  }
22  static const Amg::Vector3D s_Dir{Amg::Vector3D::UnitY()};
23  return m_parent? m_parent->toNextSensor() : s_Dir;
24  }
26  static const Amg::Vector3D s_Dir{Amg::Vector3D::UnitZ()};
27  return m_parent? m_parent->planeNormal() : s_Dir;
28  }
31  return m_cov;
32  }
35  bool CalibratedSpacePoint::measuresLoc1() const { return measuresEta(); }
38  return m_driftRadius;
39  }
43  }
44  double CalibratedSpacePoint::time() const { return m_time; }
46  m_time = t;
47  m_measuresTime = true;
48  }
53  unsigned CalibratedSpacePoint::dimension() const { return measuresEta() + measuresPhi(); }
55 
56  void CalibratedSpacePoint::print(std::ostream& ostr) const {
58  ostr<<"Calibrated SP "<<spacePoint()->msSector()->idHelperSvc()->toString(spacePoint()->identify());
59  } else {
60  ostr<<"Auxiliary measurement";
61  }
62  ostr<<" @ "<<Amg::toString(localPosition());
64  ostr<<", wire: "<<Amg::toString(sensorDirection())<<", drift R: "<<driftRadius();
65  } else {
66  ostr<<", (dir/toNext/planeNormal): "<<Amg::toString(sensorDirection())
68  }
69  auto boolToStr = [](const bool B) -> std::string {
70  return B ? "yay" : "nay";
71  };
72  if (hasTime()) {
73  ostr<<", time: "<<time();
74  }
75  ostr<<", measures eta/phi/time: "<<boolToStr(measuresEta())
76  <<"/"<<boolToStr(measuresPhi())<<"/"<<boolToStr(hasTime());
77  ostr<<", covariance (eta/phi/time): ("<<m_cov[Acts::toUnderlying(CovIdx::etaCov)]<<", "
78  <<m_cov[Acts::toUnderlying(CovIdx::phiCov)]<<", "<<m_cov[Acts::toUnderlying(CovIdx::timeCov)]<<")";
79  }
80 }
MuonR4::CalibratedSpacePoint::print
void print(std::ostream &ostr) const
Definition: CalibratedSpacePoint.cxx:56
beamspotman.r
def r
Definition: beamspotman.py:672
MuonR4::SpacePoint::msSector
const MuonGMR4::SpectrometerSector * msSector() const
Definition: MuonSpectrometer/MuonPhaseII/Event/MuonSpacePoint/src/SpacePoint.cxx:84
xAOD::identify
const Identifier & identify(const UncalibratedMeasurement *meas)
Returns the associated identifier from the muon measurement.
Definition: MuonSpectrometer/MuonPhaseII/Event/xAOD/xAODMuonPrepData/Root/UtilFunctions.cxx:82
MuonR4::CalibratedSpacePoint::toNextSensor
const Amg::Vector3D & toNextSensor() const
Definition: CalibratedSpacePoint.cxx:21
MuonR4::SpacePoint::type
xAOD::UncalibMeasType type() const
Definition: MuonSpectrometer/MuonPhaseII/Event/MuonSpacePoint/src/SpacePoint.cxx:88
MuonR4::CalibratedSpacePoint::covariance
const Cov_t & covariance() const
Returns the covariance array.
Definition: CalibratedSpacePoint.cxx:30
MuonR4::SpacePoint::planeNormal
const Amg::Vector3D & planeNormal() const
Returns the vector pointing out of the measurement plane.
Definition: MuonSpectrometer/MuonPhaseII/Event/MuonSpacePoint/src/SpacePoint.cxx:53
MuonR4::SpacePoint::CovIdx::timeCov
@ timeCov
plotBeamSpotVxVal.cov
cov
Definition: plotBeamSpotVxVal.py:200
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
MuonR4::SpacePoint::CovIdx::etaCov
@ etaCov
MuonR4::CalibratedSpacePoint::localPosition
const Amg::Vector3D & localPosition() const
Definition: CalibratedSpacePoint.cxx:16
MuonR4::SpacePoint::measuresPhi
bool measuresPhi() const
: Does the space point contain a phi measurement
Definition: MuonSpectrometer/MuonPhaseII/Event/MuonSpacePoint/src/SpacePoint.cxx:91
MuonR4::CalibratedSpacePoint::m_posInChamber
Amg::Vector3D m_posInChamber
Definition: CalibratedSpacePoint.h:94
CalibratedSpacePoint.h
MuonR4::CalibratedSpacePoint::m_cov
Cov_t m_cov
Definition: CalibratedSpacePoint.h:97
MuonR4::CalibratedSpacePoint::m_measuresTime
bool m_measuresTime
By default the Mdt may measure time.
Definition: CalibratedSpacePoint.h:101
MuonR4::CalibratedSpacePoint::measuresPhi
bool measuresPhi() const
Returns whether the calibrated space point measures phi.
Definition: CalibratedSpacePoint.cxx:49
Amg::toString
std::string toString(const Translation3D &translation, int precision=4)
GeoPrimitvesToStringConverter.
Definition: GeoPrimitivesToStringConverter.h:40
MuonR4::CalibratedSpacePoint::setDriftRadius
void setDriftRadius(const double r)
Update the drift radius of the space point measurement.
Definition: CalibratedSpacePoint.cxx:40
MuonR4::CalibratedSpacePoint::isStraw
bool isStraw() const
Returns whether the measurement is a Mdt.
Definition: CalibratedSpacePoint.cxx:36
MuonR4::CalibratedSpacePoint::hasTime
bool hasTime() const
Returns whether the measurement carries time information.
Definition: CalibratedSpacePoint.cxx:33
python.getProblemFolderFromLogs.st
st
Definition: getProblemFolderFromLogs.py:68
MuonR4::CalibratedSpacePoint::m_driftRadius
double m_driftRadius
Definition: CalibratedSpacePoint.h:96
MuonR4::CalibratedSpacePoint::State
State
State flag to distinguish different space point states.
Definition: CalibratedSpacePoint.h:24
xAOD::Other
@ Other
MuonR4::CalibratedSpacePoint::type
xAOD::UncalibMeasType type() const
Returns the space point type.
Definition: CalibratedSpacePoint.cxx:41
MuonR4::SpacePoint
The muon space point is the combination of two uncalibrated measurements one of them measures the eta...
Definition: MuonSpectrometer/MuonPhaseII/Event/MuonSpacePoint/MuonSpacePoint/SpacePoint.h:24
MuonR4::CalibratedSpacePoint::setTimeMeasurement
void setTimeMeasurement(double t)
Set the time measurement.
Definition: CalibratedSpacePoint.cxx:45
MuonGMR4::SpectrometerSector::idHelperSvc
const Muon::IMuonIdHelperSvc * idHelperSvc() const
Returns the IdHelpeSvc.
Definition: SpectrometerSector.cxx:61
MuonR4::SpacePoint::CovIdx::phiCov
@ phiCov
MuonR4::CalibratedSpacePoint::fitState
State fitState() const
Returns the state of the calibrated space point.
Definition: CalibratedSpacePoint.cxx:51
MuonR4::SpacePoint::toNextSensor
const Amg::Vector3D & toNextSensor() const
Definition: MuonSpectrometer/MuonPhaseII/Event/MuonSpacePoint/src/SpacePoint.cxx:52
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
MuonR4::CalibratedSpacePoint::m_state
State m_state
Definition: CalibratedSpacePoint.h:102
MuonR4
This header ties the generic definitions in this package.
Definition: HoughEventData.h:16
MuonR4::CalibratedSpacePoint::dimension
unsigned dimension() const
Returns the local dimension of the measurement.
Definition: CalibratedSpacePoint.cxx:53
Muon::IMuonIdHelperSvc::toString
virtual std::string toString(const Identifier &id) const =0
print all fields to string
MuonR4::CalibratedSpacePoint::setCovariance
void setCovariance(const Cov_t &cov)
Set the covariance matrix of the calibrated space point.
Definition: CalibratedSpacePoint.cxx:54
MuonR4::SpacePoint::measuresEta
bool measuresEta() const
: Does the space point contain an eta measurement
Definition: MuonSpectrometer/MuonPhaseII/Event/MuonSpacePoint/src/SpacePoint.cxx:94
MuonR4::CalibratedSpacePoint::Cov_t
SpacePoint::Cov_t Cov_t
Definition: CalibratedSpacePoint.h:16
MuonR4::CalibratedSpacePoint::m_time
double m_time
Definition: CalibratedSpacePoint.h:99
MuonR4::CalibratedSpacePoint::planeNormal
const Amg::Vector3D & planeNormal() const
Returns the vector pointing out of the measurement plane.
Definition: CalibratedSpacePoint.cxx:25
xAOD::UncalibMeasType
UncalibMeasType
Define the type of the uncalibrated measurement.
Definition: MeasurementDefs.h:25
GeoPrimitivesToStringConverter.h
MuonR4::CalibratedSpacePoint::measuresLoc0
bool measuresLoc0() const
Returns whether the measurement constains the non-bending direction.
Definition: CalibratedSpacePoint.cxx:34
MuonR4::CalibratedSpacePoint::setFitState
void setFitState(State st)
Set the state of the calibrated space point.
Definition: CalibratedSpacePoint.cxx:52
MuonR4::CalibratedSpacePoint::sensorDirection
const Amg::Vector3D & sensorDirection() const
Definition: CalibratedSpacePoint.cxx:17
MuonR4::CalibratedSpacePoint::spacePoint
const SpacePoint * spacePoint() const
The pointer to the space point out of which this space point has been built.
Definition: CalibratedSpacePoint.cxx:15
MuonR4::CalibratedSpacePoint::CalibratedSpacePoint
CalibratedSpacePoint(const SpacePoint *uncalibSpacePoint, Amg::Vector3D &&posInChamber, State st=State::Valid)
Standard constructor.
Definition: CalibratedSpacePoint.cxx:8
MuonR4::CalibratedSpacePoint::driftRadius
double driftRadius() const
: Returns the size of the drift radius
Definition: CalibratedSpacePoint.cxx:37
xAOD::UncalibMeasType::MdtDriftCircleType
@ MdtDriftCircleType
MuonR4::CalibratedSpacePoint::time
double time() const
Returns the measurement's recorded time.
Definition: CalibratedSpacePoint.cxx:44
MuonR4::CalibratedSpacePoint::measuresLoc1
bool measuresLoc1() const
Returns whether the measurement constains the bending direction.
Definition: CalibratedSpacePoint.cxx:35
MuonR4::SpacePoint::sensorDirection
const Amg::Vector3D & sensorDirection() const
Definition: MuonSpectrometer/MuonPhaseII/Event/MuonSpacePoint/src/SpacePoint.cxx:51
MuonR4::CalibratedSpacePoint::m_parent
const SpacePoint * m_parent
Definition: CalibratedSpacePoint.h:93
MuonR4::CalibratedSpacePoint::measuresEta
bool measuresEta() const
Returns whether the calibrated space point measures eta.
Definition: CalibratedSpacePoint.cxx:50