ATLAS Offline Software
Loading...
Searching...
No Matches
TrkDriftCircleMath Namespace Reference

Function object to check whether two Segments are sub/super sets or different. More...

Classes

class  ChamberGeometry
class  Cluster
 class representing a cluster meaurement More...
class  ClusterId
class  CurvedSegmentFinder
class  DCOnTrack
 class representing a drift circle meaurement on segment More...
class  DCSLFitter
class  DCSLHitSelector
class  DCStatistics
 This class offers no functionality, but to define a standard device for the maker to transfer to the finder objects which are neither road, hits or geometry, i.e. More...
class  DriftCircle
 This class represents a drift time measurement. More...
struct  IsSubsetSegment
class  Line
class  LocVec2D
 Implementation of 2 dimensional vector class. More...
struct  MatchCrossedTubes
class  MatchDCWithLine
class  MdtChamberGeometry
class  MdtId
class  MdtMultiChamberGeometry
class  MdtSegmentT0Fitter
struct  NeighbourTube
class  ResidualWithLine
class  ResidualWithSegment
 class to calculate residual of a hit with a segment and calculate the local track errors More...
class  ResolvedCollection
class  Road
 TrkDriftCircleMath::Road - encodes the road given to the segment finder in station coordinates. More...
class  RotPhi
struct  SameTube
class  SegCandVec
class  Segment
class  SegmentCandidate
class  SegmentFinder
struct  SharedHitsSegments
 counts the number of hits shared by the two segments More...
struct  SortDcsByY
struct  SortSegByNumberOfHitsAndChi2
struct  SortSegByNumberOfMDTHitsAndChi2
class  TangentToCircles
class  TransformToLine

Typedefs

typedef std::vector< ClusterCLVec
typedef CLVec::iterator CLIt
typedef CLVec::const_iterator CLCit
typedef std::vector< DCOnTrackDCOnTrackVec
typedef DCOnTrackVec::iterator DCOnTrackIt
typedef DCOnTrackVec::const_iterator DCOnTrackCit
typedef DCStatistics::iterator DCStatIt
typedef DCStatistics::const_iterator DCStatCit
typedef std::vector< DriftCircleDCVec
typedef DCVec::iterator DCIt
typedef DCVec::const_iterator DCCit
using HitSelection = std::vector<bool>
typedef std::pair< DCOnTrackVec, DCVecMatchResult
 counts the number of hits shared by the two segments
typedef std::vector< SegmentSegVec
typedef SegVec::iterator SegIt
typedef SegVec::const_iterator SegCit
typedef SegCandVec::iterator SegCandIt
typedef SegCandVec::const_iterator SegCandCit

Functions

std::ostream & operator<< (std::ostream &os, const TrkDriftCircleMath::ClusterId &id)
std::ostream & operator<< (std::ostream &os, const TrkDriftCircleMath::DCOnTrack &dc)
MsgStream & operator<< (MsgStream &os, const TrkDriftCircleMath::DCOnTrack &dc)
std::ostream & operator<< (std::ostream &os, const TrkDriftCircleMath::Line &l)
std::ostream & operator<< (std::ostream &os, const TrkDriftCircleMath::LocVec2D &lv)
std::ostream & operator<< (std::ostream &os, const TrkDriftCircleMath::Segment &seg)
MsgStream & operator<< (MsgStream &os, const TrkDriftCircleMath::Segment &seg)
std::ostream & operator<< (std::ostream &os, const MdtId &id)

Detailed Description

Function object to check whether two Segments are sub/super sets or different.

local 2D vector

Typedef Documentation

◆ CLCit

◆ CLIt

◆ CLVec

◆ DCCit

typedef DCVec::const_iterator TrkDriftCircleMath::DCCit

Definition at line 119 of file DriftCircle.h.

◆ DCIt

typedef DCVec::iterator TrkDriftCircleMath::DCIt

Definition at line 118 of file DriftCircle.h.

◆ DCOnTrackCit

typedef DCOnTrackVec::const_iterator TrkDriftCircleMath::DCOnTrackCit

Definition at line 61 of file DCOnTrack.h.

◆ DCOnTrackIt

typedef DCOnTrackVec::iterator TrkDriftCircleMath::DCOnTrackIt

Definition at line 60 of file DCOnTrack.h.

◆ DCOnTrackVec

Definition at line 59 of file DCOnTrack.h.

◆ DCStatCit

typedef DCStatistics::const_iterator TrkDriftCircleMath::DCStatCit

Definition at line 21 of file DCStatistics.h.

◆ DCStatIt

typedef DCStatistics::iterator TrkDriftCircleMath::DCStatIt

Definition at line 20 of file DCStatistics.h.

◆ DCVec

typedef std::vector<DriftCircle> TrkDriftCircleMath::DCVec

Definition at line 117 of file DriftCircle.h.

◆ HitSelection

using TrkDriftCircleMath::HitSelection = std::vector<bool>

Definition at line 9 of file HitSelection.h.

◆ MatchResult

counts the number of hits shared by the two segments

Definition at line 15 of file MatchCrossedTubes.h.

◆ SegCandCit

typedef SegCandVec::const_iterator TrkDriftCircleMath::SegCandCit

Definition at line 49 of file SegmentCandidate.h.

◆ SegCandIt

typedef SegCandVec::iterator TrkDriftCircleMath::SegCandIt

Definition at line 48 of file SegmentCandidate.h.

◆ SegCit

◆ SegIt

◆ SegVec

Function Documentation

◆ operator<<() [1/8]

MsgStream & TrkDriftCircleMath::operator<< ( MsgStream & os,
const TrkDriftCircleMath::DCOnTrack & dc )

Definition at line 39 of file DCOnTrack.cxx.

39 {
41 os << " EarlyHit";
43 os << " InTime";
45 os << " LateHit";
47 os << " EmptyTube";
49 os << " NotCrossed";
50 else
51 os << " unknown state";
52 os << std::setw(7) << " res " << dc.residual() << std::setw(7) << " pull " << dc.residual() / dc.dr();
54 os << " OnTrack ";
56 os << " Delta ";
58 os << " OutOfTime ";
60 os << " CloseDC ";
61 return os;
62 }
void state(DCOnTrackState st)
set DCOnTrack state
Definition DCOnTrack.h:47
@ OutOfTime
delta electron
Definition DCOnTrack.h:22
@ CloseDC
too large drift time
Definition DCOnTrack.h:23
void residual(double res)
set residual
Definition DCOnTrack.h:35
double dr() const
access to error drift radius
Definition DriftCircle.h:89
const DriftState & driftState() const
access to drift state
Definition DriftCircle.h:95
@ EmptyTube
drift time too large to be compatible with drift spectrum
Definition DriftCircle.h:29
@ LateHit
drift time compatible with drift spectrum
Definition DriftCircle.h:28
@ InTime
drift time too small to be compatible with drift spectrum
Definition DriftCircle.h:27
@ NotCrossed
channel without drift measurement
Definition DriftCircle.h:30

◆ operator<<() [2/8]

MsgStream & TrkDriftCircleMath::operator<< ( MsgStream & os,
const TrkDriftCircleMath::Segment & seg )

Definition at line 27 of file Tracking/TrkUtilityPackages/TrkDriftCircleMath/src/Segment.cxx.

27 {
28 os << seg.line() << " chi2 " << seg.chi2() << " ndof " << seg.ndof() << " t0 shift " << seg.t0Shift() << "\n hot "
29 << seg.hitsOnTrack() << " deltas " << seg.deltas() << " hoo " << seg.hitsOutOfTime() << " cl " << seg.closeHits() << " ml1 "
30 << seg.hitsMl1() << " ml2 " << seg.hitsMl2() << " cls " << seg.clusterLayers() << " empty " << seg.emptyTubes().size()
31 << " cross ml1 " << seg.crossedTubesMl1() << " ml2 " << seg.crossedTubesMl2() << endmsg;
32
33 TrkDriftCircleMath::DCOnTrackCit it = seg.dcs().begin();
34 TrkDriftCircleMath::DCOnTrackCit it_end = seg.dcs().end();
35
36 for (; it != it_end; ++it) { os << *it << endmsg; }
37
38 return os;
39 }
#define endmsg
DCOnTrackVec::const_iterator DCOnTrackCit
Definition DCOnTrack.h:61

◆ operator<<() [3/8]

std::ostream & TrkDriftCircleMath::operator<< ( std::ostream & os,
const MdtId & id )

Definition at line 8 of file MdtId.cxx.

8 {
9 os << " ml " << id.ml() << " lay " << id.lay() << " tube " << id.tube();
10 return os;
11}

◆ operator<<() [4/8]

std::ostream & TrkDriftCircleMath::operator<< ( std::ostream & os,
const TrkDriftCircleMath::ClusterId & id )

Definition at line 9 of file ClusterId.cxx.

9 {
10 if (id.isTgc())
11 os << "TGC";
12 else
13 os << "RPC";
14 if (id.measuresPhi())
15 os << " phi";
16 else
17 os << " eta";
18 return os;
19 }

◆ operator<<() [5/8]

std::ostream & TrkDriftCircleMath::operator<< ( std::ostream & os,
const TrkDriftCircleMath::DCOnTrack & dc )

Definition at line 9 of file DCOnTrack.cxx.

9 {
10 double pull = dc.residual() / dc.dr();
11
12 os << dc.position() << std::setw(6) << " r " << dc.r() << " dr " << dc.dr() << " id " << dc.id();
14 os << " EarlyHit";
16 os << " InTime";
18 os << " LateHit";
20 os << " EmptyTube";
22 os << " NotCrossed";
23 else
24 os << " unknown state";
25 os << " res " << dc.residual() << " pull " << pull;
26 if (dc.dr() != dc.drPrecise()) { os << " pull(2) " << dc.residual() / dc.drPrecise(); }
27 os << " errTrk " << dc.errorTrack();
29 os << " OnTrack ";
31 os << " Delta ";
33 os << " OutOfTime ";
35 os << " CloseDC ";
36 return os;
37 }
void errorTrack(double error)
set track error
Definition DCOnTrack.h:41
double r() const
access to drift radius
Definition DriftCircle.h:86
const MdtId & id() const
access to identifier
Definition DriftCircle.h:77
const LocVec2D & position() const
access to local position
Definition DriftCircle.h:74
double drPrecise() const
access to precise error drift radius
Definition DriftCircle.h:92

◆ operator<<() [6/8]

std::ostream & TrkDriftCircleMath::operator<< ( std::ostream & os,
const TrkDriftCircleMath::Line & l )

Definition at line 9 of file Line.cxx.

9 {
10 os << " phi " << l.phi() << " pos " << l.position();
11 // << " pos " << l.position() << " dir " << l.direction();
12 return os;
13 }

◆ operator<<() [7/8]

std::ostream & TrkDriftCircleMath::operator<< ( std::ostream & os,
const TrkDriftCircleMath::LocVec2D & lv )

Definition at line 9 of file LocVec2D.cxx.

9 {
10 os << " x " << lv.x() << " y " << lv.y();
11 return os;
12 }
double y() const
Returns the y coordinate of the vector.
Definition LocVec2D.h:29
double x() const
Returns the x coordinate of the vector.
Definition LocVec2D.h:27

◆ operator<<() [8/8]

std::ostream & TrkDriftCircleMath::operator<< ( std::ostream & os,
const TrkDriftCircleMath::Segment & seg )

Definition at line 12 of file Tracking/TrkUtilityPackages/TrkDriftCircleMath/src/Segment.cxx.

12 {
13 os << seg.line() << " chi2 " << seg.chi2() << " ndof " << seg.ndof() << " t0 shift " << seg.t0Shift() << std::endl
14 << " hot " << seg.hitsOnTrack() << " deltas " << seg.deltas() << " hoo " << seg.hitsOutOfTime() << " cl " << seg.closeHits()
15 << " ml1 " << seg.hitsMl1() << " ml2 " << seg.hitsMl2() << " cls " << seg.clusterLayers() << " empty " << seg.emptyTubes().size()
16 << " cross ml1 " << seg.crossedTubesMl1() << " ml2 " << seg.crossedTubesMl2() << std::endl;
17
18 // TrkDriftCircleMath::ResidualWithLine resLine( seg.line() );
19
20 TrkDriftCircleMath::DCOnTrackCit it = seg.dcs().begin();
21 TrkDriftCircleMath::DCOnTrackCit it_end = seg.dcs().end();
22
23 for (; it != it_end; ++it) { os << *it << std::endl; }
24 return os;
25 }