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

Representation of a segment seed (a fully processed hough maximum) produced by the hough transform. More...

#include <SegmentSeed.h>

Collaboration diagram for MuonR4::SegmentSeed:

Public Types

using HitType = HoughHitType
 
using Parameters = SegmentFit::Parameters
 

Public Member Functions

 SegmentSeed (double tanTheta, double interceptY, double tanPhi, double interceptX, double counts, std::vector< HitType > &&hits, const SpacePointBucket *bucket)
 Constructor to write a segment seed from an eta maximum and a valid phi extension. More...
 
 SegmentSeed (const HoughMaximum &toCopy)
 Constructor to write a segment seed from an eta maximum without a valid phi extension. More...
 
double tanPhi () const
 Returns the angle from the phi extension. More...
 
double interceptX () const
 Returns the intercept from the phi extension. More...
 
double tanTheta () const
 Returns the angular coordinate of the eta transform. More...
 
double interceptY () const
 Returns the intercept coordinate of the eta transform. More...
 
const Parametersparameters () const
 Returns the parameter array. More...
 
double getCounts () const
 
const std::vector< HitType > & getHitsInMax () const
 Returns the list of assigned hits. More...
 
const SpacePointBucketparentBucket () const
 Returns the bucket out of which the seed was formed. More...
 
const MuonGMR4::SpectrometerSectormsSector () const
 Returns the associated chamber. More...
 
bool hasPhiExtension () const
 check whether the segment seed includes a valid phi extension More...
 
Amg::Vector3D positionInChamber () const
 Returns the position of the seed in the sector frame. More...
 
Amg::Vector3D directionInChamber () const
 Returns the direction of the seed in the sector frame. More...
 

Private Attributes

Parameters m_pars {Parameters::Zero()}
 Set of defining parameters. More...
 
const SpacePointBucketm_parent {nullptr}
 Pointer to the parent. More...
 
std::vector< HitTypem_hits {}
 List of associated hits. More...
 
bool m_hasPhiExt {false}
 Does the sed have a phi extension. More...
 
double m_counts {0.}
 Effective countsfrom the hough seed. More...
 

Detailed Description

Representation of a segment seed (a fully processed hough maximum) produced by the hough transform.


Definition at line 14 of file SegmentSeed.h.

Member Typedef Documentation

◆ HitType

Definition at line 16 of file SegmentSeed.h.

◆ Parameters

Definition at line 17 of file SegmentSeed.h.

Constructor & Destructor Documentation

◆ SegmentSeed() [1/2]

MuonR4::SegmentSeed::SegmentSeed ( double  tanTheta,
double  interceptY,
double  tanPhi,
double  interceptX,
double  counts,
std::vector< HitType > &&  hits,
const SpacePointBucket bucket 
)

Constructor to write a segment seed from an eta maximum and a valid phi extension.

Parameters
tanThetatan(theta) from the eta-transform
interceptYy axis intercept from the eta-transform
tanPhitan(phi) from the phi-extension
interceptXx axis intercept from the phi-extension
counts(weighted) counts for the given hough maximum
hitsMeasurements on this maximum
bucketSpace point bucket out of which the seed is built

Definition at line 8 of file SegmentSeed.cxx.

11  :
12  m_parent{bucket},
13  m_hits{std::move(hits)},
14  m_hasPhiExt{true},
15  m_counts{counts}{
19  m_pars[toInt(ParamDefs::theta)] = dir.theta();
20  m_pars[toInt(ParamDefs::phi)] = dir.phi();
21  }

◆ SegmentSeed() [2/2]

MuonR4::SegmentSeed::SegmentSeed ( const HoughMaximum toCopy)

Constructor to write a segment seed from an eta maximum without a valid phi extension.

Parameters
toCopyEta maximum

Definition at line 22 of file SegmentSeed.cxx.

22  :
23  m_parent{toCopy.parentBucket()},
24  m_hits{toCopy.getHitsInMax()},
25  m_counts{toCopy.getCounts()}{
26  const Amg::Vector3D dir = dirFromTangents(0., toCopy.tanTheta());
27  m_pars[toInt(ParamDefs::y0)] = toCopy.interceptY();
28  m_pars[toInt(ParamDefs::theta)] = dir.theta();
29  m_pars[toInt(ParamDefs::phi)] = dir.phi();
30  }

Member Function Documentation

◆ directionInChamber()

Amg::Vector3D MuonR4::SegmentSeed::directionInChamber ( ) const

Returns the direction of the seed in the sector frame.

Definition at line 42 of file SegmentSeed.cxx.

◆ getCounts()

double MuonR4::SegmentSeed::getCounts ( ) const
Returns
Returns the number of counts

Definition at line 36 of file SegmentSeed.cxx.

36 { return m_counts;}

◆ getHitsInMax()

const std::vector< SegmentSeed::HitType > & MuonR4::SegmentSeed::getHitsInMax ( ) const

Returns the list of assigned hits.

Definition at line 37 of file SegmentSeed.cxx.

37 { return m_hits; }

◆ hasPhiExtension()

bool MuonR4::SegmentSeed::hasPhiExtension ( ) const

check whether the segment seed includes a valid phi extension

Returns
true if an extension exists, false if we are dealing with a pure eta maximum

Definition at line 40 of file SegmentSeed.cxx.

40 { return m_hasPhiExt; }

◆ interceptX()

double MuonR4::SegmentSeed::interceptX ( ) const

Returns the intercept from the phi extension.

Definition at line 33 of file SegmentSeed.cxx.

33 { return m_pars[toInt(ParamDefs::x0)]; }

◆ interceptY()

double MuonR4::SegmentSeed::interceptY ( ) const

Returns the intercept coordinate of the eta transform.

Definition at line 34 of file SegmentSeed.cxx.

34 {return m_pars[toInt(ParamDefs::y0)]; }

◆ msSector()

const MuonGMR4::SpectrometerSector * MuonR4::SegmentSeed::msSector ( ) const

Returns the associated chamber.

Definition at line 39 of file SegmentSeed.cxx.

39 { return m_parent->msSector(); }

◆ parameters()

const Parameters & MuonR4::SegmentSeed::parameters ( ) const

Returns the parameter array.

Definition at line 35 of file SegmentSeed.cxx.

35 { return m_pars; }

◆ parentBucket()

const SpacePointBucket * MuonR4::SegmentSeed::parentBucket ( ) const

Returns the bucket out of which the seed was formed.

Definition at line 38 of file SegmentSeed.cxx.

38 { return m_parent; }

◆ positionInChamber()

Amg::Vector3D MuonR4::SegmentSeed::positionInChamber ( ) const

Returns the position of the seed in the sector frame.

Definition at line 41 of file SegmentSeed.cxx.

41 { return Amg::Vector3D{interceptX(), interceptY(),0.}; }

◆ tanPhi()

double MuonR4::SegmentSeed::tanPhi ( ) const

Returns the angle from the phi extension.

Definition at line 31 of file SegmentSeed.cxx.

31 { return houghTanPhi(directionInChamber()); }

◆ tanTheta()

double MuonR4::SegmentSeed::tanTheta ( ) const

Returns the angular coordinate of the eta transform.

Definition at line 32 of file SegmentSeed.cxx.

32 { return houghTanTheta(directionInChamber()); }

Member Data Documentation

◆ m_counts

double MuonR4::SegmentSeed::m_counts {0.}
private

Effective countsfrom the hough seed.

Definition at line 80 of file SegmentSeed.h.

◆ m_hasPhiExt

bool MuonR4::SegmentSeed::m_hasPhiExt {false}
private

Does the sed have a phi extension.

Definition at line 78 of file SegmentSeed.h.

◆ m_hits

std::vector<HitType> MuonR4::SegmentSeed::m_hits {}
private

List of associated hits.

Definition at line 76 of file SegmentSeed.h.

◆ m_parent

const SpacePointBucket* MuonR4::SegmentSeed::m_parent {nullptr}
private

Pointer to the parent.

Definition at line 74 of file SegmentSeed.h.

◆ m_pars

Parameters MuonR4::SegmentSeed::m_pars {Parameters::Zero()}
private

Set of defining parameters.

Definition at line 72 of file SegmentSeed.h.


The documentation for this class was generated from the following files:
MuonR4::SegmentSeed::m_hits
std::vector< HitType > m_hits
List of associated hits.
Definition: SegmentSeed.h:76
TRTCalib_Extractor.hits
hits
Definition: TRTCalib_Extractor.py:35
MuonR4::SpacePointBucket::msSector
const MuonGMR4::SpectrometerSector * msSector() const
returns th associated muonChamber
Definition: MuonSpectrometer/MuonPhaseII/Event/MuonSpacePoint/MuonSpacePoint/SpacePointContainer.h:35
MuonR4::SegmentSeed::tanPhi
double tanPhi() const
Returns the angle from the phi extension.
Definition: SegmentSeed.cxx:31
MuonR4::SegmentSeed::m_counts
double m_counts
Effective countsfrom the hough seed.
Definition: SegmentSeed.h:80
MuonR4::SegmentFit::ParamDefs::phi
@ phi
MuonR4::houghTanPhi
double houghTanPhi(const Amg::Vector3D &v)
: Returns the hough tanPhi [x] / [z]
Definition: SegmentFitterEventData.cxx:18
MuonR4::SegmentFit::dirFromTangents
Amg::Vector3D dirFromTangents(const double tanPhi, const double tanTheta)
Constructs a direction vector from tanPhi & tanTheta.
Definition: SegmentFitterEventData.cxx:23
MuonR4::SegmentSeed::tanTheta
double tanTheta() const
Returns the angular coordinate of the eta transform.
Definition: SegmentSeed.cxx:32
MuonR4::SegmentSeed::interceptY
double interceptY() const
Returns the intercept coordinate of the eta transform.
Definition: SegmentSeed.cxx:34
MuonR4::SegmentSeed::m_hasPhiExt
bool m_hasPhiExt
Does the sed have a phi extension.
Definition: SegmentSeed.h:78
MuonR4::SegmentSeed::m_parent
const SpacePointBucket * m_parent
Pointer to the parent.
Definition: SegmentSeed.h:74
MuonR4::SegmentFit::ParamDefs::x0
@ x0
MuonR4::SegmentSeed::m_pars
Parameters m_pars
Set of defining parameters.
Definition: SegmentSeed.h:72
beamspotman.dir
string dir
Definition: beamspotman.py:623
MuonR4::SegmentFit::ParamDefs::y0
@ y0
MuonR4::SegmentFit::toInt
constexpr int toInt(const ParamDefs p)
Definition: MuonHoughDefs.h:42
MuonR4::SegmentSeed::interceptX
double interceptX() const
Returns the intercept from the phi extension.
Definition: SegmentSeed.cxx:33
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
MuonR4::SegmentFit::dirFromAngles
Amg::Vector3D dirFromAngles(const double phi, const double theta)
Constructs a direction vector from the polar theta & phi angles.
Definition: SegmentFitterEventData.cxx:26
MuonR4::SegmentSeed::directionInChamber
Amg::Vector3D directionInChamber() const
Returns the direction of the seed in the sector frame.
Definition: SegmentSeed.cxx:42
MuonR4::houghTanTheta
double houghTanTheta(const Amg::Vector3D &v)
Returns the hough tanTheta [y] / [z].
Definition: SegmentFitterEventData.cxx:14
MuonR4::SegmentFit::ParamDefs::theta
@ theta