PandaRoot
PndRiemannHit Class Reference

#include <PndRiemannHit.h>

Inheritance diagram for PndRiemannHit:

Public Member Functions

 PndRiemannHit ()
 
 PndRiemannHit (double x, double y, double z, double dx, double dy, double dz)
 
 PndRiemannHit (FairHit *cl, int hitID=-1)
 
 ~PndRiemannHit ()
 
 PndRiemannHit (const PndRiemannHit &myHit)
 
PndRiemannHitoperator= (const PndRiemannHit &myHit)
 
void setXYZ (double x, double y, double z)
 
void setDXYZ (double dx, double dy, double dz)
 
void setHit (FairHit *cl)
 
const TVector3 & x () const
 
const FairHit * hit () const
 
int hitID () const
 
double s () const
 
double z () const
 
double alpha () const
 
double sigmaXY () const
 
double sigmaX () const
 
double sigmaY () const
 
double sigmaW () const
 
const TMatrixDcovX () const
 
double covX (int row, int col) const
 
bool operator< (const PndRiemannHit &aHit) const
 
void calcPosOnTrk (PndRiemannTrack *trk)
 

Detailed Description

Definition at line 47 of file PndRiemannHit.h.

Constructor & Destructor Documentation

◆ PndRiemannHit() [1/4]

PndRiemannHit::PndRiemannHit ( )
inline

Definition at line 50 of file PndRiemannHit.h.

References hitID(), x(), z(), and ~PndRiemannHit().

50 : fX(0., 0., 0.), fSigmaX(0., 0., 0.), fCovX(3, 3), fHit(0), fHitID(-1), fS(-1.), fZ(-1.), fDeltaZ(-1.), fAlpha(-1.), fVerbose(0){};

◆ PndRiemannHit() [2/4]

PndRiemannHit::PndRiemannHit ( double  x,
double  y,
double  z,
double  dx,
double  dy,
double  dz 
)

◆ PndRiemannHit() [3/4]

PndRiemannHit::PndRiemannHit ( FairHit *  cl,
int  hitID = -1 
)

◆ ~PndRiemannHit()

PndRiemannHit::~PndRiemannHit ( )

Referenced by PndRiemannHit().

◆ PndRiemannHit() [4/4]

PndRiemannHit::PndRiemannHit ( const PndRiemannHit myHit)
inline

Definition at line 56 of file PndRiemannHit.h.

57  : TObject(myHit), fX(myHit.fX), fSigmaX(myHit.fSigmaX), fCovX(myHit.fCovX), fHit(myHit.fHit), fHitID(myHit.fHitID), fS(myHit.fS), fZ(myHit.fZ), fDeltaZ(myHit.fDeltaZ),
58  fAlpha(myHit.fAlpha), fVerbose(myHit.fVerbose)
59  {
60  }

Member Function Documentation

◆ alpha()

double PndRiemannHit::alpha ( ) const
inline

Definition at line 88 of file PndRiemannHit.h.

References sigmaXY().

88 { return fAlpha; }

◆ calcPosOnTrk()

void PndRiemannHit::calcPosOnTrk ( PndRiemannTrack trk)

Referenced by operator<().

◆ covX() [1/2]

const TMatrixD& PndRiemannHit::covX ( ) const
inline

Definition at line 93 of file PndRiemannHit.h.

93 { return fCovX; }

◆ covX() [2/2]

double PndRiemannHit::covX ( int  row,
int  col 
) const
inline

Definition at line 94 of file PndRiemannHit.h.

94 { return fCovX[row][col]; }

◆ hit()

const FairHit* PndRiemannHit::hit ( ) const
inline

Definition at line 84 of file PndRiemannHit.h.

84 { return fHit; }

◆ hitID()

int PndRiemannHit::hitID ( ) const
inline

Definition at line 85 of file PndRiemannHit.h.

Referenced by PndRiemannHit().

85 { return fHitID; }

◆ operator<()

bool PndRiemannHit::operator< ( const PndRiemannHit aHit) const
inline

< Sort hits by arclength, fails if track curls

Definition at line 95 of file PndRiemannHit.h.

References calcPosOnTrk(), and s().

96  {
97  if (s() >= 0 && aHit.s() >= 0) {
98  return s() < aHit.s();
99  } else if (s() <= 0 && aHit.s() <= 0) {
100  return -s() < -aHit.s();
101  } else
102  return s() < aHit.s();
103  }
double s() const
Definition: PndRiemannHit.h:86

◆ operator=()

PndRiemannHit& PndRiemannHit::operator= ( const PndRiemannHit myHit)
inline

Definition at line 62 of file PndRiemannHit.h.

References setDXYZ(), setHit(), and setXYZ().

63  {
64  if (this != &myHit) {
65  fX = myHit.fX;
66  fSigmaX = myHit.fSigmaX;
67  fCovX = myHit.fCovX;
68  fHit = myHit.fHit;
69  fHitID = myHit.fHitID;
70  fS = myHit.fS;
71  fZ = myHit.fZ;
72  fDeltaZ = myHit.fDeltaZ;
73  fAlpha = myHit.fAlpha;
74  fVerbose = myHit.fVerbose;
75  }
76  return *this;
77  }

◆ s()

double PndRiemannHit::s ( ) const
inline

Definition at line 86 of file PndRiemannHit.h.

References z().

Referenced by operator<().

86 { return fS; }

◆ setDXYZ()

void PndRiemannHit::setDXYZ ( double  dx,
double  dy,
double  dz 
)

Referenced by operator=().

◆ setHit()

void PndRiemannHit::setHit ( FairHit *  cl)

Referenced by operator=().

◆ setXYZ()

void PndRiemannHit::setXYZ ( double  x,
double  y,
double  z 
)

Referenced by operator=().

◆ sigmaW()

double PndRiemannHit::sigmaW ( ) const
inline

Definition at line 92 of file PndRiemannHit.h.

References sigmaX(), sigmaY(), CAMath::Sqrt(), and x().

92 { return TMath::Sqrt(TMath::Power(2 * x().x() * sigmaX(), 2) + TMath::Power(2 * x().y() * sigmaY(), 2)); } // error of z-Coordinate (x2+y2) in RiemannSpace
double sigmaX() const
Definition: PndRiemannHit.h:90
static T Sqrt(const T &x)
Definition: PndCAMath.h:57
double sigmaY() const
Definition: PndRiemannHit.h:91
const TVector3 & x() const
Definition: PndRiemannHit.h:83

◆ sigmaX()

double PndRiemannHit::sigmaX ( ) const
inline

Definition at line 90 of file PndRiemannHit.h.

References CAMath::Sqrt().

Referenced by sigmaW().

90 { return TMath::Sqrt(fCovX[0][0]); }
static T Sqrt(const T &x)
Definition: PndCAMath.h:57

◆ sigmaXY()

double PndRiemannHit::sigmaXY ( ) const

Referenced by alpha().

◆ sigmaY()

double PndRiemannHit::sigmaY ( ) const
inline

Definition at line 91 of file PndRiemannHit.h.

References CAMath::Sqrt().

Referenced by sigmaW().

91 { return TMath::Sqrt(fCovX[1][1]); }
static T Sqrt(const T &x)
Definition: PndCAMath.h:57

◆ x()

const TVector3& PndRiemannHit::x ( ) const
inline

Definition at line 83 of file PndRiemannHit.h.

Referenced by PndRiemannHit(), and sigmaW().

83 { return fX; }

◆ z()

double PndRiemannHit::z ( ) const

Referenced by PndRiemannHit(), and s().


The documentation for this class was generated from the following file: