ATLAS Offline Software
MdtCalibHitBase.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 // std
6 #include <float.h>
7 // other packages
8 
9 // this package
11 
12 namespace MuonCalib {
13 
14  MdtCalibHitBase::MdtCalibHitBase(int tdc, int adc, const Amg::Vector3D &globalPos, const Amg::Vector3D &localPos) {
15  m_pars.tdc = tdc;
16  m_pars.adc = adc;
17  m_pars.globalPosition = globalPos;
18  m_pars.localPosition = localPos;
19  }
21 
22  std::ostream &MdtCalibHitBase::dump(std::ostream &stream) const {
23  stream << "MdtCalibHitBase: " << std::endl;
24  stream << " Drift time " << driftTime() << " radius " << driftRadius() << " DistRO " << distanceToReadout() << std::endl;
25  stream << " Radial residual " << radialResidual() << std::endl;
26  stream << " Global position " << globalPosition() << " local position " << localPosition() << std::endl;
27  return stream;
28  }
30  void MdtCalibHitBase::setTdc(unsigned short tdc) { m_pars.tdc = tdc; }
31  void MdtCalibHitBase::setAdc(unsigned short adc) { m_pars.adc = adc; }
32  void MdtCalibHitBase::setGlobalPos(const Amg::Vector3D &globalPos) { m_pars.globalPosition = globalPos; }
33  void MdtCalibHitBase::setLocalPos(const Amg::Vector3D &localPos) { m_pars.localPosition = localPos; }
37  void MdtCalibHitBase::setDriftRadius(float r, float sigmaR) {
39  m_pars.sigma2DriftRadius = sigmaR * sigmaR;
40  }
42  void MdtCalibHitBase::setDistanceToTrack(float dist, float sigmaDist) {
44  m_pars.sigma2DistanceToTrack = sigmaDist * sigmaDist;
45  }
46  void MdtCalibHitBase::setTimeFromTrackDistance(float t, float sigmaT) {
48  m_pars.sigma2TimeFromTrackDistance = sigmaT * sigmaT;
49  }
50  void MdtCalibHitBase::setWiresagTime(float wsag) { m_pars.wiresagTime = wsag; }
51  void MdtCalibHitBase::setSlewingTime(float slew) { m_pars.slewingTime = slew; }
63  void MdtCalibHitBase::setTubeAdcCal(float adccal) { m_pars.tube_adccal = adccal; }
65  void MdtCalibHitBase::setSigmaLocXtwin(float sigmaXTwin) { m_pars.sigmaXTwin = sigmaXTwin; }
66  const MuonFixedId &MdtCalibHitBase::identify() const { return m_pars.id; }
71  unsigned short MdtCalibHitBase::tdcCount() const { return m_pars.tdc; }
72  unsigned short MdtCalibHitBase::adcCount() const { return m_pars.adc; }
73  float MdtCalibHitBase::driftTime() const { return m_pars.driftTime; }
75  float MdtCalibHitBase::sigmaDriftRadius() const { return std::sqrt(m_pars.sigma2DriftRadius); }
82  float MdtCalibHitBase::bFieldTime() const { return m_pars.bFieldTime; }
83  float MdtCalibHitBase::bFieldPerp() const { return m_pars.bFieldPerp; }
84  float MdtCalibHitBase::bFieldPara() const { return m_pars.bFieldPara; }
88  float MdtCalibHitBase::projSag() const { return m_pars.projSag; }
94  float MdtCalibHitBase::radialResidual() const { return std::abs(m_pars.driftRadius) - std::abs(m_pars.signedDistanceToTrack); }
97  float MdtCalibHitBase::tubeT0() const { return m_pars.tube_t0; }
99  float MdtCalibHitBase::xtwin() const { return m_pars.xtwin; }
104 } // namespace MuonCalib
105 
106 std::ostream &operator<<(std::ostream &stream, const MuonCalib::MdtCalibHitBase &hit) { return hit.dump(stream); }
MuonCalib::MdtCalibHitBase::setDistanceToReadout
void setDistanceToReadout(float dist)
sets the distance to read out
Definition: MdtCalibHitBase.cxx:55
make_hlt_rep.pars
pars
Definition: make_hlt_rep.py:90
beamspotman.r
def r
Definition: beamspotman.py:676
MuonCalib::MdtCalibHitBase::defineParams::signedDistanceToTrack
float signedDistanceToTrack
signed distance from track to wire
Definition: MdtCalibHitBase.h:60
MuonCalib::MdtCalibHitBase::setBackgroundTime
void setBackgroundTime(float bkgr)
sets the time correction due to background signal
Definition: MdtCalibHitBase.cxx:57
MuonCalib::MdtCalibHitBase::signedDistanceToTrack
float signedDistanceToTrack() const
retrieve the distance of the track to the wire
Definition: MdtCalibHitBase.cxx:77
MuonCalib::MdtCalibHitBase::globalPointOfClosestApproach
const Amg::Vector3D & globalPointOfClosestApproach() const
retrieve the point of closest approach in global coordinates
Definition: MdtCalibHitBase.cxx:69
MuonCalib::MdtCalibHitBase::bFieldPara
float bFieldPara() const
retrieve the Bfield parallel to the tube
Definition: MdtCalibHitBase.cxx:84
MuonCalib::MdtCalibHitBase::defineParams::timeOfFlight
float timeOfFlight
time correction due to the time of flight in ns
Definition: MdtCalibHitBase.h:58
MuonCalib::MdtCalibHitBase::defineParams::slewingTime
float slewingTime
time correction due to slewing (electronics)
Definition: MdtCalibHitBase.h:55
MuonCalib::MdtCalibHitBase::setTubeRadius
void setTubeRadius(float r)
sets tube inner radius
Definition: MdtCalibHitBase.cxx:41
MuonCalib::MdtCalibHitBase::radialResidual
float radialResidual() const
retrieve difference between driftcircle and distance to track (unsigned)
Definition: MdtCalibHitBase.cxx:94
MuonCalib::MdtCalibHitBase::defineParams::projSag
float projSag
projective sag
Definition: MdtCalibHitBase.h:68
MuonCalib::MdtCalibHitBase::WiresagTime
float WiresagTime() const
retrieve the timing correction due to wiresag
Definition: MdtCalibHitBase.cxx:87
MuonCalib::MdtCalibHitBase::defineParams::sigmaXTwin
float sigmaXTwin
twin position error
Definition: MdtCalibHitBase.h:72
MuonCalib::MdtCalibHitBase::setTimeFromTrackDistance
void setTimeFromTrackDistance(float t, float sigmaT)
sets the time of the distance to the fitted track (and its error)
Definition: MdtCalibHitBase.cxx:46
MuonCalib::MdtCalibHitBase::setSegmentT0Applied
void setSegmentT0Applied(bool flag)
sets flag if Segment T0 has been applied to hit
Definition: MdtCalibHitBase.cxx:102
MuonCalib::MdtCalibHitBase::defineParams::id
MuonFixedId id
Identifier of the hit (not an ATLAS ID, rather a MuonFixedId)
Definition: MdtCalibHitBase.h:43
MuonCalib::MdtCalibHitBase::setTimeOfFlight
void setTimeOfFlight(float tof)
sets the time correction due to the muon time of flight
Definition: MdtCalibHitBase.cxx:54
MuonCalib::MdtCalibHitBase::tdcCount
unsigned short tdcCount() const
retrieve the tdc counts
Definition: MdtCalibHitBase.cxx:71
MuonCalib::MdtCalibHitBase::defineParams::backgroundTime
float backgroundTime
extra time due to background
Definition: MdtCalibHitBase.h:64
ALFA_EventTPCnv_Dict::t0
std::vector< ALFA_RawData_p1 > t0
Definition: ALFA_EventTPCnvDict.h:42
MuonCalib::MdtCalibHitBase::defineParams::globalPosition
Amg::Vector3D globalPosition
position of the hit in global coordinates
Definition: MdtCalibHitBase.h:46
MuonCalib::MdtCalibHitBase::sigma2TimeFromTrackDistance
float sigma2TimeFromTrackDistance() const
retrieve the error squared of the time corresponding to distance to track
Definition: MdtCalibHitBase.cxx:93
MuonCalib::MdtCalibHitBase::defineParams::adc
int adc
ADC count.
Definition: MdtCalibHitBase.h:45
MuonCalib::MdtCalibHitBase::projSag
float projSag() const
retrieve the projected sag
Definition: MdtCalibHitBase.cxx:88
MuonCalib::MdtCalibHitBase::setTemperatureTime
void setTemperatureTime(float temp)
sets the time correction due to temperature effects
Definition: MdtCalibHitBase.cxx:56
MuonCalib::MdtCalibHitBase::setDriftRadius
void setDriftRadius(float r, float sigmaR)
sets drift radius and drift radius error
Definition: MdtCalibHitBase.cxx:37
MuonCalib::MdtCalibHitBase::sigmaXtwin
float sigmaXtwin() const
retrieve the local twin position error
Definition: MdtCalibHitBase.cxx:100
MuonCalib::MdtCalibHitBase::xtwin
float xtwin() const
retrieve the local twin position
Definition: MdtCalibHitBase.cxx:99
MuonCalib::MdtCalibHitBase::setWiresagTime
void setWiresagTime(float wsag)
sets the time correction due to wire sag
Definition: MdtCalibHitBase.cxx:50
MuonCalib::MdtCalibHitBase::setPropagationTime
void setPropagationTime(float prop)
sets the time correction due to the propagation of the signal over the wire
Definition: MdtCalibHitBase.cxx:53
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
MuonCalib::MdtCalibHitBase::defineParams::wiresagTime
float wiresagTime
extra time due to wiresag
Definition: MdtCalibHitBase.h:62
MuonCalib::MdtCalibHitBase::defineParams::driftRadius
float driftRadius
drift radius
Definition: MdtCalibHitBase.h:51
MuonCalib::MdtCalibHitBase::timeOfFlight
float timeOfFlight() const
retrieve the timing correction due to time of flight of the muon
Definition: MdtCalibHitBase.cxx:90
AthenaPoolTestWrite.stream
string stream
Definition: AthenaPoolTestWrite.py:12
MuonCalib::MdtCalibHitBase::setTubeT0
void setTubeT0(float t0)
sets the tube t0
Definition: MdtCalibHitBase.cxx:62
MuonCalib::MdtCalibHitBase::setDriftTime
void setDriftTime(float t)
sets drift time
Definition: MdtCalibHitBase.cxx:36
MuonCalib::MdtCalibHitBase::setGlobalPointOfClosestApproach
void setGlobalPointOfClosestApproach(const Amg::Vector3D &point)
sets point of closest approach in global coordinates
Definition: MdtCalibHitBase.cxx:34
MuonCalib::MdtCalibHitBase::globalPosition
const Amg::Vector3D & globalPosition() const
retrieve the position given in global coordinates
Definition: MdtCalibHitBase.cxx:67
MuonCalib::MdtCalibHitBase::setLocalPos
void setLocalPos(const Amg::Vector3D &localPos)
sets the position in the station coordinates
Definition: MdtCalibHitBase.cxx:33
MuonCalib::MdtCalibHitBase::tubeAdcCal
float tubeAdcCal() const
retrieve the tube mean ADC
Definition: MdtCalibHitBase.cxx:98
operator<<
std::ostream & operator<<(std::ostream &stream, const MuonCalib::MdtCalibHitBase &hit)
Definition: MdtCalibHitBase.cxx:106
MuonCalib::MdtCalibHitBase::tubeT0
float tubeT0() const
retrieve the tube T0
Definition: MdtCalibHitBase.cxx:97
MuonCalib::MdtCalibHitBase::tubeRadius
float tubeRadius() const
retrieve the inner radius of the drift tube
Definition: MdtCalibHitBase.cxx:103
MuonCalib::MdtCalibHitBase::temperature
float temperature() const
retrieve the temperature
Definition: MdtCalibHitBase.cxx:85
MuonCalib::MdtCalibHitBase::sigmaDriftRadius
float sigmaDriftRadius() const
retrieve the error on the radius of the drift circle
Definition: MdtCalibHitBase.cxx:75
MuonCalib::MdtCalibHitBase::bFieldTime
float bFieldTime() const
retrieve the timing correction due to the magnetic field (lorentz angle)
Definition: MdtCalibHitBase.cxx:82
MuonCalib::MdtCalibHitBase::sigmaDistanceToTrack
float sigmaDistanceToTrack() const
retrieve the error on the distance of the track to the wire
Definition: MdtCalibHitBase.cxx:78
MuonCalib::MdtCalibHitBase::setDistanceToTrack
void setDistanceToTrack(float dist, float sigmaDist)
sets the distance to the fitted track and its error
Definition: MdtCalibHitBase.cxx:42
MuonCalib::MdtCalibHitBase::propagationTime
float propagationTime() const
retrieve the timing correction due to the propagation of the signal
Definition: MdtCalibHitBase.cxx:89
MuonCalib::MdtCalibHitBase::defineParams::temperatureTime
float temperatureTime
extra time due to temperature
Definition: MdtCalibHitBase.h:63
master.flag
bool flag
Definition: master.py:29
MuonCalib
CscCalcPed - algorithm that finds the Cathode Strip Chamber pedestals from an RDO.
Definition: CscCalcPed.cxx:22
MuonCalib::MdtCalibHitBase::timeFromTrackDistance
float timeFromTrackDistance() const
retrieve the time corresponding to the distance to track
Definition: MdtCalibHitBase.cxx:91
MuonCalib::MdtCalibHitBase::setProjSag
void setProjSag(float sag)
sets the projected wire sag
Definition: MdtCalibHitBase.cxx:61
MuonCalib::MdtCalibHitBase::trackResidual
float trackResidual() const
retrieve difference between driftcircle and distance to track (signed)
Definition: MdtCalibHitBase.cxx:95
MuonCalib::MdtCalibHitBase::defineParams::localPointOfClosestApproach
Amg::Vector3D localPointOfClosestApproach
point of closest approach of track to wire in local coordinates
Definition: MdtCalibHitBase.h:48
MuonCalib::MdtCalibHitBase::defineParams::tube_adccal
float tube_adccal
tube mean ADC (calibration)
Definition: MdtCalibHitBase.h:70
MuonCalib::MdtCalibHitBase::defineParams::sigma2DriftRadius
float sigma2DriftRadius
error squared on the drift radius
Definition: MdtCalibHitBase.h:52
MuonCalib::MdtCalibHitBase::MdtCalibHitBase
MdtCalibHitBase()=default
default constructor
MuonCalib::MdtCalibHitBase::localPosition
const Amg::Vector3D & localPosition() const
retrieve the position expressed in local (station) coordinates
Definition: MdtCalibHitBase.cxx:68
MuonCalib::MdtCalibHitBase::m_pars
defineParams m_pars
Definition: MdtCalibHitBase.h:162
MuonCalib::MdtCalibHitBase::defineParams::segmentT0Applied
bool segmentT0Applied
true if segment t0 is substr.
Definition: MdtCalibHitBase.h:73
MuonCalib::MdtCalibHitBase::defineParams::driftTime
float driftTime
drift time after all corrections
Definition: MdtCalibHitBase.h:50
MuonCalib::MdtCalibHitBase::slewingTime
float slewingTime() const
retrieve the timing correction due to slewing
Definition: MdtCalibHitBase.cxx:81
MuonCalib::MdtCalibHitBase::distanceToReadout
float distanceToReadout() const
retrieve the distance to readout
Definition: MdtCalibHitBase.cxx:80
MuonCalib::MdtCalibHitBase::setBFieldPerp
void setBFieldPerp(float bfperp)
sets the B field perpendicular to the tube
Definition: MdtCalibHitBase.cxx:58
MuonCalib::MdtCalibHitBase::adcCount
unsigned short adcCount() const
retrieve the adc counts
Definition: MdtCalibHitBase.cxx:72
MuonCalib::MdtCalibHitBase::setAdc
void setAdc(unsigned short adc)
sets the adc counts
Definition: MdtCalibHitBase.cxx:31
MuonCalib::MdtCalibHitBase::setBFieldPara
void setBFieldPara(float bfpara)
sets the B field parallel to the tube
Definition: MdtCalibHitBase.cxx:59
MuonCalib::MdtCalibHitBase::setTdc
void setTdc(unsigned short tdc)
sets the tdc counts
Definition: MdtCalibHitBase.cxx:30
MuonCalib::MdtCalibHitBase::timeResidual
float timeResidual() const
retrieve difference between drifttime and timeFromTrackDistance
Definition: MdtCalibHitBase.cxx:96
id
SG::auxid_t id
Definition: Control/AthContainers/Root/debug.cxx:194
MuonCalib::MdtCalibHitBase::localPointOfClosestApproach
const Amg::Vector3D & localPointOfClosestApproach() const
retrieve the point of closest approach in local coordinates
Definition: MdtCalibHitBase.cxx:70
MuonCalib::MuonFixedId
Definition: MuonFixedId.h:50
MuonCalib::MdtCalibHitBase::defineParams
Definition: MdtCalibHitBase.h:41
MuonCalib::MdtCalibHitBase::setSigmaLocXtwin
void setSigmaLocXtwin(float xtwin)
sets the local twin position error
Definition: MdtCalibHitBase.cxx:65
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
MuonCalib::MdtCalibHitBase::setLocalPointOfClosestApproach
void setLocalPointOfClosestApproach(const Amg::Vector3D &point)
sets point of closest approach in local coordinates
Definition: MdtCalibHitBase.cxx:35
MuonCalib::MdtCalibHitBase::defineParams::tdc
int tdc
TDC count.
Definition: MdtCalibHitBase.h:44
MuonCalib::MdtCalibHitBase::defineParams::bFieldTime
float bFieldTime
time correction due to magnetic field
Definition: MdtCalibHitBase.h:56
MuonCalib::MdtCalibHitBase::sigma2DistanceToTrack
float sigma2DistanceToTrack() const
retrieve the error squared on the distance of the track to the wire
Definition: MdtCalibHitBase.cxx:79
MuonCalib::MdtCalibHitBase::defineParams::bFieldPerp
float bFieldPerp
local bfield perpendicular to the wire
Definition: MdtCalibHitBase.h:65
MuonCalib::MdtCalibHitBase::TemperatureTime
float TemperatureTime() const
retrieve the timing correction due to temperature
Definition: MdtCalibHitBase.cxx:86
MuonCalib::MdtCalibHitBase::defineParams::sigma2TimeFromTrackDistance
float sigma2TimeFromTrackDistance
(square of) sigma on timeFromTrackDistance
Definition: MdtCalibHitBase.h:54
MuonCalib::MdtCalibHitBase::defineParams::tube_t0
float tube_t0
tube t0 time offset
Definition: MdtCalibHitBase.h:69
MuonCalib::MdtCalibHitBase::driftTime
float driftTime() const
retrieve the drift time
Definition: MdtCalibHitBase.cxx:73
MuonCalib::MdtCalibHitBase::setGlobalPos
void setGlobalPos(const Amg::Vector3D &globalPos)
sets the position in ATLAS coordinates
Definition: MdtCalibHitBase.cxx:32
MuonCalib::MdtCalibHitBase::segmentT0Applied
bool segmentT0Applied() const
retrieve the segment T0 applied flag
Definition: MdtCalibHitBase.cxx:101
ReadFloatFromCool.adc
adc
Definition: ReadFloatFromCool.py:48
MuonCalib::MdtCalibHitBase
Definition: MdtCalibHitBase.h:38
MuonCalib::MdtCalibHitBase::sigma2DriftRadius
float sigma2DriftRadius() const
retrieve the error squared on the radius of the drift circle
Definition: MdtCalibHitBase.cxx:76
Pythia8_RapidityOrderMPI.val
val
Definition: Pythia8_RapidityOrderMPI.py:14
MuonCalib::MdtCalibHitBase::defineParams::globalPointOfClosestApproach
Amg::Vector3D globalPointOfClosestApproach
point of closest approach of track to wire in global coordinates
Definition: MdtCalibHitBase.h:49
MuonCalib::MdtCalibHitBase::defineParams::temperature
float temperature
local temperature
Definition: MdtCalibHitBase.h:67
MuonCalib::MdtCalibHitBase::sigmaTimeFromTrackDistance
float sigmaTimeFromTrackDistance() const
retrieve the error of the time corresponding to the distance to track
Definition: MdtCalibHitBase.cxx:92
MuonCalib::MdtCalibHitBase::bFieldPerp
float bFieldPerp() const
retrieve the Bfield perpendicular to the tube
Definition: MdtCalibHitBase.cxx:83
MuonCalib::MdtCalibHitBase::defineParams::distanceToReadout
float distanceToReadout
from hit to read-out side of tube
Definition: MdtCalibHitBase.h:59
MuonCalib::MdtCalibHitBase::setIdentifier
void setIdentifier(const MuonFixedId &id)
sets the MuonFixedIdentifier of the hit
Definition: MdtCalibHitBase.cxx:29
MuonCalib::MdtCalibHitBase::setSlewingTime
void setSlewingTime(float slew)
sets the time correction due to slewing
Definition: MdtCalibHitBase.cxx:51
MuonCalib::MdtCalibHitBase::setBFieldTime
void setBFieldTime(float lor)
sets the time correction due to the magnetic field
Definition: MdtCalibHitBase.cxx:52
MuonCalib::MdtCalibHitBase::setLocXtwin
void setLocXtwin(float xtwin)
sets the local twin position
Definition: MdtCalibHitBase.cxx:64
MuonCalib::MdtCalibHitBase::defineParams::propagationTime
float propagationTime
time correction due to signal propagation along the wire
Definition: MdtCalibHitBase.h:57
MuonCalib::MdtCalibHitBase::identify
const MuonFixedId & identify() const
retrieve the MuonFixedId of the hit
Definition: MdtCalibHitBase.cxx:66
MuonCalib::MdtCalibHitBase::defineParams::localPosition
Amg::Vector3D localPosition
position of the hit in local (station) coordinates
Definition: MdtCalibHitBase.h:47
MuonCalib::MdtCalibHitBase::setTubeAdcCal
void setTubeAdcCal(float adccal)
sets the tube mean ADC
Definition: MdtCalibHitBase.cxx:63
MuonCalib::MdtCalibHitBase::defineParams::timeFromTrackDistance
float timeFromTrackDistance
time calculated from 'distance to track', for calibration or trackfit in time-domain
Definition: MdtCalibHitBase.h:53
MuonCalib::MdtCalibHitBase::defineParams::tubeRadius
float tubeRadius
inner tube radius
Definition: MdtCalibHitBase.h:74
MuonCalib::MdtCalibHitBase::setTemperature
void setTemperature(float temp)
sets the temperature
Definition: MdtCalibHitBase.cxx:60
MuonCalib::MdtCalibHitBase::dump
std::ostream & dump(std::ostream &stream) const
dump to be used for operator<<() to dump the MdtCalibHitBase
Definition: MdtCalibHitBase.cxx:22
MdtCalibHitBase.h
MuonCalib::MdtCalibHitBase::defineParams::xtwin
float xtwin
twin position
Definition: MdtCalibHitBase.h:71
MuonCalib::MdtCalibHitBase::defineParams::bFieldPara
float bFieldPara
local bfield parallel to the wire
Definition: MdtCalibHitBase.h:66
MuonCalib::MdtCalibHitBase::driftRadius
float driftRadius() const
retrieve the radius of the drift circle
Definition: MdtCalibHitBase.cxx:74
MuonCalib::MdtCalibHitBase::defineParams::sigma2DistanceToTrack
float sigma2DistanceToTrack
square of sigma on signedDistanceToTrack
Definition: MdtCalibHitBase.h:61