FairRoot/PandaRoot
Public Member Functions | Protected Attributes | List of all members
PndSttPoint Class Reference

#include <PndSttPoint.h>

Inheritance diagram for PndSttPoint:

Public Member Functions

 PndSttPoint ()
 
 PndSttPoint (Int_t trackID, Int_t detID, TVector3 pos, TVector3 posInLocal, TVector3 posOutLocal, TVector3 momIn, TVector3 momOut, Double_t tof, Double_t length, Double_t eLoss, Double_t mass)
 
 PndSttPoint (const PndSttPoint &point)
 
virtual ~PndSttPoint ()
 
Double_t GetXOutLocal () const
 
Double_t GetYOutLocal () const
 
Double_t GetZOutLocal () const
 
Double_t GetXInLocal () const
 
Double_t GetYInLocal () const
 
Double_t GetZInLocal () const
 
Double_t GetXtot () const
 
Double_t GetYtot () const
 
Double_t GetZtot () const
 
Double_t GetPxOut () const
 
Double_t GetPyOut () const
 
Double_t GetPzOut () const
 
Double_t GetMass () const
 
Double_t GetTrueDistance ()
 
void PositionOutLocal (TVector3 &pos)
 
void PositionInLocal (TVector3 &pos)
 
void MomentumOut (TVector3 &mom)
 
void SetPositionOutLocal (TVector3 pos)
 
void SetPositionInLocal (TVector3 pos)
 
void SetMomentumOut (TVector3 mom)
 
void SetTubeID (Int_t tubeid)
 
Int_t GetTubeID ()
 
virtual void Print (const Option_t *opt) const
 

Protected Attributes

Double_t fX_out_local
 
Double_t fY_out_local
 
Double_t fZ_out_local
 
Double_t fX_in_local
 
Double_t fY_in_local
 
Double_t fZ_in_local
 
Double_t fPx_in
 
Double_t fPy_in
 
Double_t fPz_in
 
Double_t fPx_out
 
Double_t fPy_out
 
Double_t fPz_out
 
Double_t fMass
 
Int_t fTubeID
 

Detailed Description

Definition at line 10 of file PndSttPoint.h.

Constructor & Destructor Documentation

PndSttPoint::PndSttPoint ( )

Default constructor

Definition at line 12 of file PndSttPoint.cxx.

12  : FairMCPoint(),
15  fPx_in(0), fPy_in(0), fPz_in(0),
16  fPx_out(0), fPy_out(0), fPz_out(0),
17  fMass(0), fTubeID(0)
18 {
19 }
Double_t fPz_out
Definition: PndSttPoint.h:95
Double_t fPy_out
Definition: PndSttPoint.h:94
Double_t fY_out_local
Definition: PndSttPoint.h:86
Int_t fTubeID
Definition: PndSttPoint.h:100
Double_t fPz_in
Definition: PndSttPoint.h:92
Double_t fPx_in
Definition: PndSttPoint.h:90
Double_t fZ_out_local
Definition: PndSttPoint.h:86
Double_t fPy_in
Definition: PndSttPoint.h:91
Double_t fZ_in_local
Definition: PndSttPoint.h:88
Double_t fPx_out
Definition: PndSttPoint.h:93
Double_t fX_in_local
Definition: PndSttPoint.h:88
Double_t fY_in_local
Definition: PndSttPoint.h:88
Double_t fMass
Definition: PndSttPoint.h:98
Double_t fX_out_local
Definition: PndSttPoint.h:86
PndSttPoint::PndSttPoint ( Int_t  trackID,
Int_t  detID,
TVector3  pos,
TVector3  posInLocal,
TVector3  posOutLocal,
TVector3  momIn,
TVector3  momOut,
Double_t  tof,
Double_t  length,
Double_t  eLoss,
Double_t  mass 
)

Constructor with arguments

Parameters
trackIDIndex of MCTrack
detIDDetector ID
tubeIDNumber of tube
posCoordinates of MC point [cm]
posInLocalLocal coordinates at entrance to active volume [cm]
posOutLocalLocal coordinates at exit of active volume [cm]
momInMomentum of track at entrance [GeV]
momOutMomentum of track at exit [GeV]
tofTime since event start [ns]
lengthTrack length since creation [cm]
eLossEnergy deposit [GeV]

Definition at line 25 of file PndSttPoint.cxx.

29  : FairMCPoint(trackID, detID, pos, momIn, tof, length, eLoss),
30  fX_out_local(posOutLocal.X()), fY_out_local(posOutLocal.Y()), fZ_out_local(posOutLocal.Z()),
31  fX_in_local(posInLocal.X()), fY_in_local(posInLocal.Y()), fZ_in_local(posInLocal.Z()),
32  fPx_in(momIn.Px()), fPy_in(momIn.Py()), fPz_in(momIn.Pz()),
33  fPx_out(momOut.Px()), fPy_out(momOut.Py()), fPz_out(momOut.Pz()),
34  fMass(mass), fTubeID(0)
35 {
36  // reset MC monentum
37  fPx = (momIn.Px() + momOut.Px()) / 2.;
38  fPy = (momIn.Py() + momOut.Py()) / 2.;
39  fPz = (momIn.Pz() + momOut.Pz()) / 2.;
40  SetLink(FairLink("MCTrack", trackID));
41 }
TVector3 pos
Double_t fPz_out
Definition: PndSttPoint.h:95
Double_t fPy_out
Definition: PndSttPoint.h:94
Double_t fY_out_local
Definition: PndSttPoint.h:86
Int_t fTubeID
Definition: PndSttPoint.h:100
Double_t fPz_in
Definition: PndSttPoint.h:92
Double_t fPx_in
Definition: PndSttPoint.h:90
Double_t fZ_out_local
Definition: PndSttPoint.h:86
Double_t fPy_in
Definition: PndSttPoint.h:91
Double_t fZ_in_local
Definition: PndSttPoint.h:88
Double_t fPx_out
Definition: PndSttPoint.h:93
Double_t fX_in_local
Definition: PndSttPoint.h:88
Double_t fY_in_local
Definition: PndSttPoint.h:88
Double_t fMass
Definition: PndSttPoint.h:98
Double_t fX_out_local
Definition: PndSttPoint.h:86
PndSttPoint::PndSttPoint ( const PndSttPoint point)

Copy constructor

Definition at line 43 of file PndSttPoint.cxx.

43  :
44  FairMCPoint(point.fTrackID, point.fDetectorID, TVector3(point.fX, point.fY, point.fZ), TVector3(point.fPx, point.fPy, point.fPz), point.fTime, point.fLength, point.fELoss, point.fEventId),
48  fX_in_local(point.fX_in_local),
49  fY_in_local(point.fY_in_local),
50  fZ_in_local(point.fZ_in_local),
51  fPx_in(point.fPx_in),
52  fPy_in(point.fPy_in),
53  fPz_in(point.fPz_in),
54  fPx_out(point.fPx_out),
55  fPy_out(point.fPy_out),
56  fPz_out(point.fPz_out),
57  fMass(point.fMass),
58  fTubeID(point.fTubeID)
59 {
60  SetLink(FairLink("MCTrack", point.fTrackID));
61 }
Double_t fPz_out
Definition: PndSttPoint.h:95
Double_t fPy_out
Definition: PndSttPoint.h:94
Double_t fY_out_local
Definition: PndSttPoint.h:86
Int_t fTubeID
Definition: PndSttPoint.h:100
Double_t fPz_in
Definition: PndSttPoint.h:92
Double_t fPx_in
Definition: PndSttPoint.h:90
Double_t fZ_out_local
Definition: PndSttPoint.h:86
Double_t fPy_in
Definition: PndSttPoint.h:91
Double_t fZ_in_local
Definition: PndSttPoint.h:88
Double_t fPx_out
Definition: PndSttPoint.h:93
Double_t fX_in_local
Definition: PndSttPoint.h:88
Double_t fY_in_local
Definition: PndSttPoint.h:88
Double_t fMass
Definition: PndSttPoint.h:98
Double_t fX_out_local
Definition: PndSttPoint.h:86
PndSttPoint::~PndSttPoint ( )
virtual

Destructor

Definition at line 75 of file PndSttPoint.cxx.

75 { }

Member Function Documentation

Double_t PndSttPoint::GetMass ( ) const
inline

Definition at line 62 of file PndSttPoint.h.

References fMass.

Referenced by PndSttHitProducerRealFast::Exec(), and PndSttHitProducerRealFull::Exec().

62 {return fMass;}
Double_t fMass
Definition: PndSttPoint.h:98
Double_t PndSttPoint::GetPxOut ( ) const
inline

Definition at line 58 of file PndSttPoint.h.

References fPx_out.

Referenced by PndSttHitProducerRealFast::Exec(), and PndSttHitProducerRealFull::Exec().

58 { return fPx_out; }
Double_t fPx_out
Definition: PndSttPoint.h:93
Double_t PndSttPoint::GetPyOut ( ) const
inline

Definition at line 59 of file PndSttPoint.h.

References fPy_out.

Referenced by PndSttHitProducerRealFast::Exec(), and PndSttHitProducerRealFull::Exec().

59 { return fPy_out; }
Double_t fPy_out
Definition: PndSttPoint.h:94
Double_t PndSttPoint::GetPzOut ( ) const
inline

Definition at line 60 of file PndSttPoint.h.

References fPz_out.

Referenced by PndSttHitProducerRealFast::Exec(), and PndSttHitProducerRealFull::Exec().

60 { return fPz_out; }
Double_t fPz_out
Definition: PndSttPoint.h:95
Double_t PndSttPoint::GetTrueDistance ( )

Definition at line 64 of file PndSttPoint.cxx.

References fabs(), fX_in_local, fX_out_local, fY_in_local, fY_out_local, fZ_in_local, and fZ_out_local.

Referenced by PndSttIsochroneDraw::Exec().

64  {
65 
66  TVector3 x1(0., 0., -75.); // CHECK
67  TVector3 x2(0., 0., 75.); // CHECK
68  TVector3 x3(fX_in_local, fY_in_local, fZ_in_local);
69  TVector3 x4(fX_out_local, fY_out_local, fZ_out_local);
70 
71  return fabs((x3 - x1).Dot((x2 - x1).Cross(x4 - x3))) / fabs(((x2 - x1).Cross(x4 - x3)).Mag()) ;
72 }
Double_t fY_out_local
Definition: PndSttPoint.h:86
friend F32vec4 fabs(const F32vec4 &a)
Definition: P4_F32vec4.h:47
Double_t fZ_out_local
Definition: PndSttPoint.h:86
Double_t fZ_in_local
Definition: PndSttPoint.h:88
Double_t fX_in_local
Definition: PndSttPoint.h:88
Double_t fY_in_local
Definition: PndSttPoint.h:88
Double_t fX_out_local
Definition: PndSttPoint.h:86
Int_t PndSttPoint::GetTubeID ( )
inline
Double_t PndSttPoint::GetXInLocal ( ) const
inline
Double_t PndSttPoint::GetXOutLocal ( ) const
inline

Accessors

Definition at line 46 of file PndSttPoint.h.

References fX_out_local.

Referenced by PndSttHitProducerRealFast::Exec(), PndSttHitProducerRealFull::Exec(), and PndSttHitProducerIdeal::Exec().

46 { return fX_out_local; }
Double_t fX_out_local
Definition: PndSttPoint.h:86
Double_t PndSttPoint::GetXtot ( ) const
inline

Definition at line 54 of file PndSttPoint.h.

Referenced by FairGeaneTrKalStt::Exec(), FairGeaneTrT::Exec(), and PndSttMCPointDraw::GetVector().

54 { return GetX(); }
Double_t PndSttPoint::GetYInLocal ( ) const
inline
Double_t PndSttPoint::GetYOutLocal ( ) const
inline

Definition at line 47 of file PndSttPoint.h.

References fY_out_local.

Referenced by PndSttHitProducerRealFast::Exec(), PndSttHitProducerRealFull::Exec(), and PndSttHitProducerIdeal::Exec().

47 { return fY_out_local; }
Double_t fY_out_local
Definition: PndSttPoint.h:86
Double_t PndSttPoint::GetYtot ( ) const
inline

Definition at line 55 of file PndSttPoint.h.

Referenced by FairGeaneTrKalStt::Exec(), FairGeaneTrT::Exec(), and PndSttMCPointDraw::GetVector().

55 { return GetY(); }
Double_t PndSttPoint::GetZInLocal ( ) const
inline

Definition at line 51 of file PndSttPoint.h.

References fZ_in_local.

Referenced by PndSttHitProducerRealFast::Exec(), PndSttHitProducerRealFull::Exec(), and PndSttHitProducerIdeal::Exec().

51 { return fZ_in_local; }
Double_t fZ_in_local
Definition: PndSttPoint.h:88
Double_t PndSttPoint::GetZOutLocal ( ) const
inline

Definition at line 48 of file PndSttPoint.h.

References fZ_out_local.

Referenced by PndSttHitProducerRealFast::Exec(), PndSttHitProducerRealFull::Exec(), and PndSttHitProducerIdeal::Exec().

48 { return fZ_out_local; }
Double_t fZ_out_local
Definition: PndSttPoint.h:86
Double_t PndSttPoint::GetZtot ( ) const
inline

Definition at line 56 of file PndSttPoint.h.

Referenced by FairGeaneTrKalStt::Exec(), FairGeaneTrT::Exec(), and PndSttMCPointDraw::GetVector().

56 { return GetZ(); }
void PndSttPoint::MomentumOut ( TVector3 &  mom)
inline

Definition at line 68 of file PndSttPoint.h.

References fPx_out, fPy_out, and fPz_out.

68 { mom.SetXYZ(fPx_out,fPy_out,fPz_out); }
Double_t fPz_out
Definition: PndSttPoint.h:95
Double_t mom
Definition: plot_dirc.C:14
Double_t fPy_out
Definition: PndSttPoint.h:94
Double_t fPx_out
Definition: PndSttPoint.h:93
void PndSttPoint::PositionInLocal ( TVector3 &  pos)
inline

Definition at line 67 of file PndSttPoint.h.

References fX_in_local, fY_in_local, and fZ_in_local.

TVector3 pos
Double_t fZ_in_local
Definition: PndSttPoint.h:88
Double_t fX_in_local
Definition: PndSttPoint.h:88
Double_t fY_in_local
Definition: PndSttPoint.h:88
void PndSttPoint::PositionOutLocal ( TVector3 &  pos)
inline

Definition at line 66 of file PndSttPoint.h.

References fX_out_local, fY_out_local, and fZ_out_local.

TVector3 pos
Double_t fY_out_local
Definition: PndSttPoint.h:86
Double_t fZ_out_local
Definition: PndSttPoint.h:86
Double_t fX_out_local
Definition: PndSttPoint.h:86
void PndSttPoint::Print ( const Option_t *  opt) const
virtual

Output to screen

Definition at line 79 of file PndSttPoint.cxx.

References fX, fY, and fZ.

79  {
80  cout << "-I- CbmStsPoint: STS Point for track " << fTrackID
81  << " in detector " << fDetectorID << endl;
82  cout << " Position (" << fX << ", " << fY << ", " << fZ
83  << ") cm" << endl;
84  cout << " Momentum (" << fPx << ", " << fPy << ", " << fPz
85  << ") GeV" << endl;
86  cout << " Time " << fTime << " ns, Length " << fLength
87  << " cm, Energy loss " << fELoss*1.0e06 << " keV" << " opt = "<<opt<<endl;
88 }
Double_t fX
Definition: PndCaloDraw.cxx:34
Double_t fZ
Definition: PndCaloDraw.cxx:34
Double_t fY
Definition: PndCaloDraw.cxx:34
void PndSttPoint::SetMomentumOut ( TVector3  mom)
inline

Definition at line 121 of file PndSttPoint.h.

References fPx_out, fPy_out, and fPz_out.

121  {
122  fPx_out = mom.Px();
123  fPy_out = mom.Py();
124  fPz_out = mom.Pz();
125 }
Double_t fPz_out
Definition: PndSttPoint.h:95
Double_t mom
Definition: plot_dirc.C:14
Double_t fPy_out
Definition: PndSttPoint.h:94
Double_t fPx_out
Definition: PndSttPoint.h:93
void PndSttPoint::SetPositionInLocal ( TVector3  pos)
inline

Definition at line 114 of file PndSttPoint.h.

References fX_in_local, fY_in_local, and fZ_in_local.

114  {
115  fX_in_local = pos.X();
116  fY_in_local = pos.Y();
117  fZ_in_local = pos.Z();
118 }
TVector3 pos
Double_t fZ_in_local
Definition: PndSttPoint.h:88
Double_t fX_in_local
Definition: PndSttPoint.h:88
Double_t fY_in_local
Definition: PndSttPoint.h:88
void PndSttPoint::SetPositionOutLocal ( TVector3  pos)
inline

Modifiers

Definition at line 108 of file PndSttPoint.h.

References fX_out_local, fY_out_local, and fZ_out_local.

108  {
109  fX_out_local = pos.X();
110  fY_out_local = pos.Y();
111  fZ_out_local = pos.Z();
112 }
TVector3 pos
Double_t fY_out_local
Definition: PndSttPoint.h:86
Double_t fZ_out_local
Definition: PndSttPoint.h:86
Double_t fX_out_local
Definition: PndSttPoint.h:86
void PndSttPoint::SetTubeID ( Int_t  tubeid)
inline

Definition at line 76 of file PndSttPoint.h.

References fTubeID.

Referenced by PndStt::AddHit().

76 { fTubeID = tubeid; }
Int_t fTubeID
Definition: PndSttPoint.h:100

Member Data Documentation

Double_t PndSttPoint::fMass
protected

Definition at line 98 of file PndSttPoint.h.

Referenced by GetMass().

Double_t PndSttPoint::fPx_in
protected

Definition at line 90 of file PndSttPoint.h.

Double_t PndSttPoint::fPx_out
protected

Definition at line 93 of file PndSttPoint.h.

Referenced by GetPxOut(), MomentumOut(), and SetMomentumOut().

Double_t PndSttPoint::fPy_in
protected

Definition at line 91 of file PndSttPoint.h.

Double_t PndSttPoint::fPy_out
protected

Definition at line 94 of file PndSttPoint.h.

Referenced by GetPyOut(), MomentumOut(), and SetMomentumOut().

Double_t PndSttPoint::fPz_in
protected

Definition at line 92 of file PndSttPoint.h.

Double_t PndSttPoint::fPz_out
protected

Definition at line 95 of file PndSttPoint.h.

Referenced by GetPzOut(), MomentumOut(), and SetMomentumOut().

Int_t PndSttPoint::fTubeID
protected

Definition at line 100 of file PndSttPoint.h.

Referenced by GetTubeID(), and SetTubeID().

Double_t PndSttPoint::fX_in_local
protected

Definition at line 88 of file PndSttPoint.h.

Referenced by GetTrueDistance(), GetXInLocal(), PositionInLocal(), and SetPositionInLocal().

Double_t PndSttPoint::fX_out_local
protected

Definition at line 86 of file PndSttPoint.h.

Referenced by GetTrueDistance(), GetXOutLocal(), PositionOutLocal(), and SetPositionOutLocal().

Double_t PndSttPoint::fY_in_local
protected

Definition at line 88 of file PndSttPoint.h.

Referenced by GetTrueDistance(), GetYInLocal(), PositionInLocal(), and SetPositionInLocal().

Double_t PndSttPoint::fY_out_local
protected

Definition at line 86 of file PndSttPoint.h.

Referenced by GetTrueDistance(), GetYOutLocal(), PositionOutLocal(), and SetPositionOutLocal().

Double_t PndSttPoint::fZ_in_local
protected

Definition at line 88 of file PndSttPoint.h.

Referenced by GetTrueDistance(), GetZInLocal(), PositionInLocal(), and SetPositionInLocal().

Double_t PndSttPoint::fZ_out_local
protected

Definition at line 86 of file PndSttPoint.h.

Referenced by GetTrueDistance(), GetZOutLocal(), PositionOutLocal(), and SetPositionOutLocal().


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