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 35 of file PndRiemannHit.h.

Constructor & Destructor Documentation

◆ PndRiemannHit() [1/4]

PndRiemannHit::PndRiemannHit ( )
inline

Definition at line 38 of file PndRiemannHit.h.

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

38 : 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 44 of file PndRiemannHit.h.

45  : 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),
46  fAlpha(myHit.fAlpha), fVerbose(myHit.fVerbose)
47  {
48  }

Member Function Documentation

◆ alpha()

double PndRiemannHit::alpha ( ) const
inline

Definition at line 76 of file PndRiemannHit.h.

References sigmaXY().

76 { return fAlpha; }

◆ calcPosOnTrk()

void PndRiemannHit::calcPosOnTrk ( PndRiemannTrack trk)

Referenced by operator<().

◆ covX() [1/2]

const TMatrixD& PndRiemannHit::covX ( ) const
inline

Definition at line 81 of file PndRiemannHit.h.

81 { return fCovX; }

◆ covX() [2/2]

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

Definition at line 82 of file PndRiemannHit.h.

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

◆ hit()

const FairHit* PndRiemannHit::hit ( ) const
inline

Definition at line 72 of file PndRiemannHit.h.

72 { return fHit; }

◆ hitID()

int PndRiemannHit::hitID ( ) const
inline

Definition at line 73 of file PndRiemannHit.h.

Referenced by PndRiemannHit().

73 { return fHitID; }

◆ operator<()

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

< Sort hits by arclength, fails if track curls

Definition at line 83 of file PndRiemannHit.h.

References calcPosOnTrk(), and s().

84  {
85  if (s() >= 0 && aHit.s() >= 0) {
86  return s() < aHit.s();
87  } else if (s() <= 0 && aHit.s() <= 0) {
88  return -s() < -aHit.s();
89  } else
90  return s() < aHit.s();
91  }
double s() const
Definition: PndRiemannHit.h:74

◆ operator=()

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

Definition at line 50 of file PndRiemannHit.h.

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

51  {
52  if (this != &myHit) {
53  fX = myHit.fX;
54  fSigmaX = myHit.fSigmaX;
55  fCovX = myHit.fCovX;
56  fHit = myHit.fHit;
57  fHitID = myHit.fHitID;
58  fS = myHit.fS;
59  fZ = myHit.fZ;
60  fDeltaZ = myHit.fDeltaZ;
61  fAlpha = myHit.fAlpha;
62  fVerbose = myHit.fVerbose;
63  }
64  return *this;
65  }

◆ s()

double PndRiemannHit::s ( ) const
inline

Definition at line 74 of file PndRiemannHit.h.

References z().

Referenced by operator<().

74 { 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 80 of file PndRiemannHit.h.

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

80 { 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:78
static T Sqrt(const T &x)
Definition: PndCAMath.h:45
double sigmaY() const
Definition: PndRiemannHit.h:79
const TVector3 & x() const
Definition: PndRiemannHit.h:71

◆ sigmaX()

double PndRiemannHit::sigmaX ( ) const
inline

Definition at line 78 of file PndRiemannHit.h.

References CAMath::Sqrt().

Referenced by sigmaW().

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

◆ sigmaXY()

double PndRiemannHit::sigmaXY ( ) const

Referenced by alpha().

◆ sigmaY()

double PndRiemannHit::sigmaY ( ) const
inline

Definition at line 79 of file PndRiemannHit.h.

References CAMath::Sqrt().

Referenced by sigmaW().

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

◆ x()

const TVector3& PndRiemannHit::x ( ) const
inline

Definition at line 71 of file PndRiemannHit.h.

Referenced by PndRiemannHit(), and sigmaW().

71 { return fX; }

◆ z()

double PndRiemannHit::z ( ) const

Referenced by PndRiemannHit(), and s().


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