FairRoot/PandaRoot
Public Member Functions | Static Public Member Functions | Protected Attributes | Friends | List of all members
PndCAGBHit Class Reference

#include <PndCAGBHit.h>

Public Member Functions

 PndCAGBHit ()
 
float GlobalX () const
 
float GlobalY () const
 
float Z () const
 
float Err2X () const
 
float Err2Y () const
 
float Err2Z () const
 
void GetLocalX0X1X2 (float &x0, float &x1, float &x2) const
 
float Err2X0 () const
 
float Err2X1 () const
 
float ErrX12 () const
 
float Err2X2 () const
 
int IRow () const
 
int ID () const
 
float R () const
 
float Err2R () const
 
float Err2A () const
 
bool IsLeft () const
 
float XW () const
 
float YW () const
 
float ZW () const
 
float C (int i1, int i2) const
 
int PndDetID () const
 
int PndHitID () const
 
void SetGlobalX (float v)
 
void SetGlobalY (float v)
 
void SetZ (float v)
 
void SetErr2X (float v)
 
void SetErr2Y (float v)
 
void SetErr2Z (float v)
 
void SetIRow (int v)
 
void SetID (int v)
 
void SetErr2X0 (float v)
 
void SetErr2X1 (float v)
 
void SetErrX12 (float v)
 
void SetErr2X2 (float v)
 
void SetAngle (float v)
 
float Angle () const
 
void SetR (float v)
 
void SetErr2R (float v)
 
void SetIsLeft (bool v)
 
void SetXW (float v)
 
void SetYW (float v)
 
void SetZW (float v)
 
void SetTubeR (float v)
 
void SetTubeHalfLength (float v)
 
void SetC (float v, int i1, int i2)
 
void SetC (const TMatrixT< Double_t > c)
 
void SetPndDetID (int v)
 
void SetPndHitID (int v)
 
bool IsUsed () const
 
void SetAsUsed ()
 

Static Public Member Functions

static bool Compare (const PndCAGBHit &a, const PndCAGBHit &b)
 Hits reordering in accordance with the geometry and the track-finder needs: Hits are sorted by sector number at first, than by row number and at last by z-coordinate. More...
 
static bool CompareRowDown (const PndCAGBHit &a, const PndCAGBHit &b)
 Hits reordering in accordance with the geometry and the track-finder needs: Hits are sorted by sector number at first, than by row number and at last by z-coordinate. More...
 
static bool ComparePRowDown (const PndCAGBHit *a, const PndCAGBHit *b)
 

Protected Attributes

double fX
 
double fY
 
double fZ
 
float fErr2X0
 
float fErr2X1
 
float fErrX12
 
float fErr2X2
 
double fC [3][3]
 
int fIRow
 
int fID
 
double fPhi
 
double fR
 
double fErr2R
 
bool fIsLeft
 
double fXW
 
double fYW
 
double fZW
 
double fTubeR
 
double fHalfLength
 
int fPndDetID
 
int fPndHitID
 
bool fIsUsed
 

Friends

std::ostreamoperator<< (std::ostream &out, const PndCAGBHit &a)
 
std::istreamoperator>> (std::istream &in, PndCAGBHit &a)
 

Detailed Description

The PndCAGBHit class is the internal representation of the TPC clusters for the PndCAGBTracker algorithm.

Definition at line 27 of file PndCAGBHit.h.

Constructor & Destructor Documentation

PndCAGBHit::PndCAGBHit ( )
inline

Definition at line 30 of file PndCAGBHit.h.

31  : fX( 0 ), fY( 0 ), fZ( 0 ), fErr2X0( 0 ), fErr2X1( 0 ), fErrX12( 0 ), fErr2X2( 0 ),
32  fIRow( 0 ), fID( 0 ), fPhi( 0 )
33  , fR( 0 ), fErr2R( 0 ), fIsLeft( false ), fXW(0), fYW(0), fZW(0),
34  fTubeR( 0 ), fHalfLength( 0 ),
35  //fEX( 0 ), fEY( 0 ), fEZ( 0 ),
36  fPndDetID(0), fPndHitID(0),
37  fIsUsed(0)
38  {}
bool fIsUsed
Definition: PndCAGBHit.h:163
int fPndDetID
Definition: PndCAGBHit.h:161
double fX
Definition: PndCAGBHit.h:137
float fErrX12
Definition: PndCAGBHit.h:143
double fY
Definition: PndCAGBHit.h:138
double fTubeR
Definition: PndCAGBHit.h:159
double fZW
Definition: PndCAGBHit.h:157
double fXW
Definition: PndCAGBHit.h:155
double fPhi
Definition: PndCAGBHit.h:151
double fErr2R
Definition: PndCAGBHit.h:153
bool fIsLeft
Definition: PndCAGBHit.h:154
float fErr2X0
Definition: PndCAGBHit.h:141
double fZ
Definition: PndCAGBHit.h:139
double fYW
Definition: PndCAGBHit.h:156
double fHalfLength
Definition: PndCAGBHit.h:159
double fR
Definition: PndCAGBHit.h:153
float fErr2X1
Definition: PndCAGBHit.h:142
int fPndHitID
Definition: PndCAGBHit.h:162
float fErr2X2
Definition: PndCAGBHit.h:144

Member Function Documentation

float PndCAGBHit::Angle ( ) const
inline

Definition at line 92 of file PndCAGBHit.h.

References fPhi.

Referenced by PndCAGBTracker::SetHits().

92 { return fPhi; }
double fPhi
Definition: PndCAGBHit.h:151
float PndCAGBHit::C ( int  i1,
int  i2 
) const
inline

Definition at line 71 of file PndCAGBHit.h.

References fC.

71 { return fC[i1][i2]; }
double fC[3][3]
Definition: PndCAGBHit.h:146
bool PndCAGBHit::Compare ( const PndCAGBHit a,
const PndCAGBHit b 
)
inlinestatic

Hits reordering in accordance with the geometry and the track-finder needs: Hits are sorted by sector number at first, than by row number and at last by z-coordinate.

Definition at line 166 of file PndCAGBHit.h.

References fIRow, and fZ.

173 {
174  //* Comparison function for sorting hits
175  if ( a.fIRow < b.fIRow ) return 1;
176  if ( a.fIRow > b.fIRow ) return 0;
177  return ( a.fZ < b.fZ );
178 }
double fZ
Definition: PndCAGBHit.h:139
static bool PndCAGBHit::ComparePRowDown ( const PndCAGBHit a,
const PndCAGBHit b 
)
inlinestatic

Hits are sorted by row number

Definition at line 124 of file PndCAGBHit.h.

References fIRow.

124  {
125  return ( a->fIRow > b->fIRow );
127  }
static bool PndCAGBHit::CompareRowDown ( const PndCAGBHit a,
const PndCAGBHit b 
)
inlinestatic

Hits reordering in accordance with the geometry and the track-finder needs: Hits are sorted by sector number at first, than by row number and at last by z-coordinate.

Hits are sorted by row number

Definition at line 119 of file PndCAGBHit.h.

References fIRow.

119  {
120  return ( a.fIRow > b.fIRow );
121 
123  }
float PndCAGBHit::Err2A ( ) const
inline

Definition at line 62 of file PndCAGBHit.h.

References fHalfLength.

62 { return (fHalfLength/1.5)*(fHalfLength/1.5); }
double fHalfLength
Definition: PndCAGBHit.h:159
float PndCAGBHit::Err2R ( ) const
inline

Definition at line 61 of file PndCAGBHit.h.

References fErr2R.

Referenced by PndCAGBTracker::CATrackFinder().

61 { return fErr2R; }
double fErr2R
Definition: PndCAGBHit.h:153
float PndCAGBHit::Err2X ( ) const
inline

Definition at line 46 of file PndCAGBHit.h.

References fErr2X0.

46 { return fErr2X0; }
float fErr2X0
Definition: PndCAGBHit.h:141
float PndCAGBHit::Err2X0 ( ) const
inline

Definition at line 52 of file PndCAGBHit.h.

References fErr2X0.

52 { return fErr2X0; }
float fErr2X0
Definition: PndCAGBHit.h:141
float PndCAGBHit::Err2X1 ( ) const
inline

Definition at line 53 of file PndCAGBHit.h.

References fErr2X1.

Referenced by PndCAGBTracker::CATrackFinder().

53 { return fErr2X1; }
float fErr2X1
Definition: PndCAGBHit.h:142
float PndCAGBHit::Err2X2 ( ) const
inline

Definition at line 55 of file PndCAGBHit.h.

References fErr2X2.

Referenced by PndCAGBTracker::CATrackFinder().

55 { return fErr2X2; }
float fErr2X2
Definition: PndCAGBHit.h:144
float PndCAGBHit::Err2Y ( ) const
inline

Definition at line 47 of file PndCAGBHit.h.

References fErr2X1.

47 { return fErr2X1; }
float fErr2X1
Definition: PndCAGBHit.h:142
float PndCAGBHit::Err2Z ( ) const
inline

Definition at line 48 of file PndCAGBHit.h.

References fErr2X2.

48 { return fErr2X2; }
float fErr2X2
Definition: PndCAGBHit.h:144
float PndCAGBHit::ErrX12 ( ) const
inline

Definition at line 54 of file PndCAGBHit.h.

References fErrX12.

Referenced by PndCAGBTracker::CATrackFinder().

54 { return fErrX12; }
float fErrX12
Definition: PndCAGBHit.h:143
void PndCAGBHit::GetLocalX0X1X2 ( float &  x0,
float &  x1,
float &  x2 
) const

Definition at line 27 of file PndCAGBHit.cxx.

References fPhi, fX, fY, fZ, and PndCAParameters::GlobalToCALocal().

Referenced by PndCAHit::PndCAHit().

27  {
28  double x0_, x1_, x2_;
29  PndCAParameters::GlobalToCALocal( fX, fY, fZ, fPhi, x0_, x1_, x2_ );
30  x0 = x0_;
31  x1 = x1_;
32  x2 = x2_;
33 }
Double_t x0
Definition: checkhelixhit.C:70
double fX
Definition: PndCAGBHit.h:137
double fY
Definition: PndCAGBHit.h:138
double fPhi
Definition: PndCAGBHit.h:151
double fZ
Definition: PndCAGBHit.h:139
static void GlobalToCALocal(T x, T y, T angle, T &x0, T &x1)
float PndCAGBHit::GlobalX ( ) const
inline

Definition at line 42 of file PndCAGBHit.h.

References fX.

42 { return fX; }
double fX
Definition: PndCAGBHit.h:137
float PndCAGBHit::GlobalY ( ) const
inline

Definition at line 43 of file PndCAGBHit.h.

References fY.

43 { return fY; }
double fY
Definition: PndCAGBHit.h:138
int PndCAGBHit::ID ( ) const
inline

Definition at line 58 of file PndCAGBHit.h.

References fID.

58 { return fID; }
int PndCAGBHit::IRow ( ) const
inline
bool PndCAGBHit::IsLeft ( ) const
inline

Definition at line 65 of file PndCAGBHit.h.

References fIsLeft.

65 { return fIsLeft; }
bool fIsLeft
Definition: PndCAGBHit.h:154
bool PndCAGBHit::IsUsed ( ) const
inline

Definition at line 129 of file PndCAGBHit.h.

References fIsUsed.

Referenced by PndCAHit::IsUsed().

129 { return fIsUsed;}
bool fIsUsed
Definition: PndCAGBHit.h:163
int PndCAGBHit::PndDetID ( ) const
inline

Definition at line 73 of file PndCAGBHit.h.

References fPndDetID.

Referenced by PndCATracking::Exec().

73 { return fPndDetID; }
int fPndDetID
Definition: PndCAGBHit.h:161
int PndCAGBHit::PndHitID ( ) const
inline

Definition at line 74 of file PndCAGBHit.h.

References fPndHitID.

Referenced by PndCATracking::Exec().

74 { return fPndHitID; }
int fPndHitID
Definition: PndCAGBHit.h:162
float PndCAGBHit::R ( ) const
inline

Definition at line 60 of file PndCAGBHit.h.

References fR.

60 { return fR; }
double fR
Definition: PndCAGBHit.h:153
void PndCAGBHit::SetAngle ( float  v)
inline

Definition at line 91 of file PndCAGBHit.h.

References fPhi, and v.

Referenced by PndCATracking::Exec(), and PndCATracking::WriteMVDHits().

91 { fPhi = v; }
__m128 v
Definition: P4_F32vec4.h:4
double fPhi
Definition: PndCAGBHit.h:151
void PndCAGBHit::SetAsUsed ( )
inline

Definition at line 130 of file PndCAGBHit.h.

References fIsUsed.

Referenced by PndCAHit::SetAsUsed().

130 { fIsUsed=true; }
bool fIsUsed
Definition: PndCAGBHit.h:163
void PndCAGBHit::SetC ( float  v,
int  i1,
int  i2 
)
inline

Definition at line 105 of file PndCAGBHit.h.

References fC, and v.

Referenced by PndCATracking::Exec(), and PndCATracking::WriteMVDHits().

105 { fC[i1][i2] = v; }
double fC[3][3]
Definition: PndCAGBHit.h:146
__m128 v
Definition: P4_F32vec4.h:4
void PndCAGBHit::SetC ( const TMatrixT< Double_t c)
inline

Definition at line 106 of file PndCAGBHit.h.

References fC, and i.

106  {
107  for( int i=0; i<3; i++ )
108  for( int j=0; j<3; j++) fC[i][j] = c[i][j];
109  }
Int_t i
Definition: run_full.C:25
double fC[3][3]
Definition: PndCAGBHit.h:146
void PndCAGBHit::SetErr2R ( float  v)
inline

Definition at line 95 of file PndCAGBHit.h.

References fErr2R, and v.

Referenced by PndCATracking::Exec(), and PndCATracking::WriteMVDHits().

95 { fErr2R = v; }
__m128 v
Definition: P4_F32vec4.h:4
double fErr2R
Definition: PndCAGBHit.h:153
void PndCAGBHit::SetErr2X ( float  v)
inline

Definition at line 80 of file PndCAGBHit.h.

References fErr2X0, and v.

80 { fErr2X0 = v; }
__m128 v
Definition: P4_F32vec4.h:4
float fErr2X0
Definition: PndCAGBHit.h:141
void PndCAGBHit::SetErr2X0 ( float  v)
inline

Definition at line 86 of file PndCAGBHit.h.

References fErr2X0, and v.

Referenced by PndCAGBTracker::CATrackFinder().

86 { fErr2X0 = v; }
__m128 v
Definition: P4_F32vec4.h:4
float fErr2X0
Definition: PndCAGBHit.h:141
void PndCAGBHit::SetErr2X1 ( float  v)
inline

Definition at line 87 of file PndCAGBHit.h.

References fErr2X1, and v.

Referenced by PndCAGBTracker::CATrackFinder().

87 { fErr2X1 = v; }
__m128 v
Definition: P4_F32vec4.h:4
float fErr2X1
Definition: PndCAGBHit.h:142
void PndCAGBHit::SetErr2X2 ( float  v)
inline

Definition at line 89 of file PndCAGBHit.h.

References fErr2X2, and v.

Referenced by PndCAGBTracker::CATrackFinder().

89 { fErr2X2 = v; }
__m128 v
Definition: P4_F32vec4.h:4
float fErr2X2
Definition: PndCAGBHit.h:144
void PndCAGBHit::SetErr2Y ( float  v)
inline

Definition at line 81 of file PndCAGBHit.h.

References fErr2X1, and v.

81 { fErr2X1 = v; }
__m128 v
Definition: P4_F32vec4.h:4
float fErr2X1
Definition: PndCAGBHit.h:142
void PndCAGBHit::SetErr2Z ( float  v)
inline

Definition at line 82 of file PndCAGBHit.h.

References fErr2X2, and v.

82 { fErr2X2 = v; }
__m128 v
Definition: P4_F32vec4.h:4
float fErr2X2
Definition: PndCAGBHit.h:144
void PndCAGBHit::SetErrX12 ( float  v)
inline

Definition at line 88 of file PndCAGBHit.h.

References fErrX12, and v.

Referenced by PndCAGBTracker::CATrackFinder().

88 { fErrX12 = v; }
float fErrX12
Definition: PndCAGBHit.h:143
__m128 v
Definition: P4_F32vec4.h:4
void PndCAGBHit::SetGlobalX ( float  v)
inline

Definition at line 77 of file PndCAGBHit.h.

References fX, and v.

Referenced by PndCATracking::Exec(), and PndCATracking::WriteMVDHits().

77 { fX = v; }
double fX
Definition: PndCAGBHit.h:137
__m128 v
Definition: P4_F32vec4.h:4
void PndCAGBHit::SetGlobalY ( float  v)
inline

Definition at line 78 of file PndCAGBHit.h.

References fY, and v.

Referenced by PndCATracking::Exec(), and PndCATracking::WriteMVDHits().

78 { fY = v; }
double fY
Definition: PndCAGBHit.h:138
__m128 v
Definition: P4_F32vec4.h:4
void PndCAGBHit::SetID ( int  v)
inline

Definition at line 84 of file PndCAGBHit.h.

References fID, and v.

Referenced by PndCATracking::Exec(), and PndCATracking::WriteMVDHits().

84 { fID = v; }
__m128 v
Definition: P4_F32vec4.h:4
void PndCAGBHit::SetIRow ( int  v)
inline

Definition at line 83 of file PndCAGBHit.h.

References fIRow, and v.

Referenced by PndCATracking::Exec(), PndCAGBTracker::SetHits(), and PndCATracking::WriteMVDHits().

83 { fIRow = v; }
__m128 v
Definition: P4_F32vec4.h:4
void PndCAGBHit::SetIsLeft ( bool  v)
inline

Definition at line 96 of file PndCAGBHit.h.

References fIsLeft, and v.

Referenced by PndCAGBTracker::CATrackFinder().

96 { fIsLeft = v; }
__m128 v
Definition: P4_F32vec4.h:4
bool fIsLeft
Definition: PndCAGBHit.h:154
void PndCAGBHit::SetPndDetID ( int  v)
inline

Definition at line 111 of file PndCAGBHit.h.

References fPndDetID, and v.

Referenced by PndCATracking::Exec(), and PndCATracking::WriteMVDHits().

111 { fPndDetID = v; }
int fPndDetID
Definition: PndCAGBHit.h:161
__m128 v
Definition: P4_F32vec4.h:4
void PndCAGBHit::SetPndHitID ( int  v)
inline

Definition at line 112 of file PndCAGBHit.h.

References fPndHitID, and v.

Referenced by PndCATracking::Exec(), and PndCATracking::WriteMVDHits().

112 { fPndHitID = v; }
__m128 v
Definition: P4_F32vec4.h:4
int fPndHitID
Definition: PndCAGBHit.h:162
void PndCAGBHit::SetR ( float  v)
inline

Definition at line 94 of file PndCAGBHit.h.

References fR, and v.

Referenced by PndCATracking::Exec(), and PndCATracking::WriteMVDHits().

94 { fR = v; }
__m128 v
Definition: P4_F32vec4.h:4
double fR
Definition: PndCAGBHit.h:153
void PndCAGBHit::SetTubeHalfLength ( float  v)
inline

Definition at line 103 of file PndCAGBHit.h.

References fHalfLength, and v.

Referenced by PndCATracking::Exec(), and PndCATracking::WriteMVDHits().

103 { fHalfLength = v; }
__m128 v
Definition: P4_F32vec4.h:4
double fHalfLength
Definition: PndCAGBHit.h:159
void PndCAGBHit::SetTubeR ( float  v)
inline

Definition at line 102 of file PndCAGBHit.h.

References fTubeR, and v.

Referenced by PndCATracking::Exec(), and PndCATracking::WriteMVDHits().

102 { fTubeR = v; }
__m128 v
Definition: P4_F32vec4.h:4
double fTubeR
Definition: PndCAGBHit.h:159
void PndCAGBHit::SetXW ( float  v)
inline

Definition at line 98 of file PndCAGBHit.h.

References fXW, and v.

Referenced by PndCATracking::Exec(), and PndCATracking::WriteMVDHits().

98 { fXW = v; }
__m128 v
Definition: P4_F32vec4.h:4
double fXW
Definition: PndCAGBHit.h:155
void PndCAGBHit::SetYW ( float  v)
inline

Definition at line 99 of file PndCAGBHit.h.

References fYW, and v.

Referenced by PndCATracking::Exec(), and PndCATracking::WriteMVDHits().

99 { fYW = v; }
__m128 v
Definition: P4_F32vec4.h:4
double fYW
Definition: PndCAGBHit.h:156
void PndCAGBHit::SetZ ( float  v)
inline

Definition at line 79 of file PndCAGBHit.h.

References fZ, and v.

Referenced by PndCATracking::Exec(), and PndCATracking::WriteMVDHits().

79 { fZ = v; }
__m128 v
Definition: P4_F32vec4.h:4
double fZ
Definition: PndCAGBHit.h:139
void PndCAGBHit::SetZW ( float  v)
inline

Definition at line 100 of file PndCAGBHit.h.

References fZW, and v.

Referenced by PndCATracking::Exec(), and PndCATracking::WriteMVDHits().

100 { fZW = v; }
__m128 v
Definition: P4_F32vec4.h:4
double fZW
Definition: PndCAGBHit.h:157
float PndCAGBHit::XW ( ) const
inline

Definition at line 67 of file PndCAGBHit.h.

References fXW.

67 { return fXW; }
double fXW
Definition: PndCAGBHit.h:155
float PndCAGBHit::YW ( ) const
inline

Definition at line 68 of file PndCAGBHit.h.

References fYW.

68 { return fYW; }
double fYW
Definition: PndCAGBHit.h:156
float PndCAGBHit::Z ( ) const
inline

Definition at line 44 of file PndCAGBHit.h.

References fZ.

44 { return fZ; }
double fZ
Definition: PndCAGBHit.h:139
float PndCAGBHit::ZW ( ) const
inline

Definition at line 69 of file PndCAGBHit.h.

References fZW.

69 { return fZW; }
double fZW
Definition: PndCAGBHit.h:157

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream out,
const PndCAGBHit a 
)
friend

Definition at line 36 of file PndCAGBHit.cxx.

37 {
38  double tmp=0;
39  out << a.fX << " " << a.fY << " " << a.fZ << " " << a.fR << std::endl;
40  out << a.fC[0][0] << " " << a.fC[0][1] << " " << a.fC[0][2] << std::endl;// in global c.s.!
41  out << a.fC[1][0] << " " << a.fC[1][1] << " " << a.fC[1][2] << std::endl;
42  out << a.fC[2][0] << " " << a.fC[2][1] << " " << a.fC[2][2] << std::endl;
43  out << a.fErr2R << std::endl;
44  out << a.fTubeR << " " << a.fHalfLength << std::endl;
45  out << tmp << " "<< tmp <<" " << tmp <<std::endl
46  //out << a.fEX << " "<< a.fEY <<" " << a.fEZ <<std::endl
47  << a.fIRow << " " << a.fID << " " << -a.fPhi << std::endl;
48  return out;
49 }
double fX
Definition: PndCAGBHit.h:137
double fC[3][3]
Definition: PndCAGBHit.h:146
double fY
Definition: PndCAGBHit.h:138
double fTubeR
Definition: PndCAGBHit.h:159
double fPhi
Definition: PndCAGBHit.h:151
double fErr2R
Definition: PndCAGBHit.h:153
TFile * out
Definition: reco_muo.C:20
double fZ
Definition: PndCAGBHit.h:139
double fHalfLength
Definition: PndCAGBHit.h:159
double fR
Definition: PndCAGBHit.h:153
std::istream& operator>> ( std::istream in,
PndCAGBHit a 
)
friend

Definition at line 51 of file PndCAGBHit.cxx.

52 {
53  double tmp;
54  UNUSED_PARAM1(tmp);
55  in >> a.fX >> a.fY >> a.fZ >> a.fR
56  >> a.fC[0][0] >> a.fC[0][1] >> a.fC[0][2] // in global c.s.!
57  >> a.fC[1][0] >> a.fC[1][1] >> a.fC[1][2]
58  >> a.fC[2][0] >> a.fC[2][1] >> a.fC[2][2]
59  >> a.fErr2R
60  >> a.fTubeR >> a.fHalfLength
61  >> tmp >> tmp >> tmp
62  //>> a.fEX >> a.fEY >> a.fEZ
63  >> a.fIRow >> a.fID >> a.fPhi;
64  a.fPhi = - a.fPhi; // TODO: fix input files
65  a.fXW = a.fX;
66  a.fYW = a.fY;
67  a.fZW = a.fZ;
68 
69  // cout << " T0 " << endl;
70  // cout << a.fC[0][0] << " " << a.fC[0][1] << " " << a.fC[0][2] << endl;
71  // cout << a.fC[1][0] << " " << a.fC[1][1] << " " << a.fC[1][2] << endl;
72  // cout << a.fC[2][0] << " " << a.fC[2][1] << " " << a.fC[2][2] << endl;
73 
74  const double s = sin(a.fPhi);
75  const double c = cos(a.fPhi);
76  // double T[3][3];
77  // T[0][0] = -s; T[0][1] = c; T[0][2] = 0;
78  // T[1][0] = c; T[1][1] = s; T[1][2] = 0;
79  // T[2][0] = 0; T[2][1] = 0; T[2][2] = -1;
80 
81  // double TC[3][3];
82  // TC[0][0] = T[0][0]*a.fC[0][0] + T[0][1]*a.fC[1][0] + T[0][2]*a.fC[2][0];
83  // TC[0][1] = T[0][0]*a.fC[0][1] + T[0][1]*a.fC[1][1] + T[0][2]*a.fC[2][1];
84  // TC[0][2] = T[0][0]*a.fC[0][2] + T[0][1]*a.fC[1][2] + T[0][2]*a.fC[2][2];
85  // TC[1][0] = T[1][0]*a.fC[0][0] + T[1][1]*a.fC[1][0] + T[1][2]*a.fC[2][0];
86  // TC[1][1] = T[1][0]*a.fC[0][1] + T[1][1]*a.fC[1][1] + T[1][2]*a.fC[2][1];
87  // TC[1][2] = T[1][0]*a.fC[0][2] + T[1][1]*a.fC[1][2] + T[1][2]*a.fC[2][2];
88  // TC[2][0] = T[2][0]*a.fC[0][0] + T[2][1]*a.fC[1][0] + T[2][2]*a.fC[2][0];
89  // TC[2][1] = T[2][0]*a.fC[0][1] + T[2][1]*a.fC[1][1] + T[2][2]*a.fC[2][1];
90  // TC[2][2] = T[2][0]*a.fC[0][2] + T[2][1]*a.fC[1][2] + T[2][2]*a.fC[2][2];
91 
92  // double TCT[3][3]; // local C
93  // // TCT'
94  // TCT[0][0] = TC[0][0]*T[0][0] + TC[0][1]*T[0][1] + TC[0][2]*T[0][2];
95  // TCT[0][1] = TC[0][0]*T[1][0] + TC[0][1]*T[1][1] + TC[0][2]*T[1][2];
96  // TCT[0][2] = TC[0][0]*T[2][0] + TC[0][1]*T[2][1] + TC[0][2]*T[2][2];
97  // TCT[1][0] = TC[1][0]*T[0][0] + TC[1][1]*T[0][1] + TC[1][2]*T[0][2];
98  // TCT[1][1] = TC[1][0]*T[1][0] + TC[1][1]*T[1][1] + TC[1][2]*T[1][2];
99  // TCT[1][2] = TC[1][0]*T[2][0] + TC[1][1]*T[2][1] + TC[1][2]*T[2][2];
100  // TCT[2][0] = TC[2][0]*T[0][0] + TC[2][1]*T[0][1] + TC[2][2]*T[0][2];
101  // TCT[2][1] = TC[2][0]*T[1][0] + TC[2][1]*T[1][1] + TC[2][2]*T[1][2];
102  // TCT[2][2] = TC[2][0]*T[2][0] + TC[2][1]*T[2][1] + TC[2][2]*T[2][2];
103 
104  // // cout << " T1 " << endl;
105  // // cout << TCT[0][0] << " " << TCT[0][1] << " " << TCT[0][2] << endl;
106  // // cout << TCT[1][0] << " " << TCT[1][1] << " " << TCT[1][2] << endl;
107  // // cout << TCT[2][0] << " " << TCT[2][1] << " " << TCT[2][2] << endl;
108 
109  // double x,y,z;
110  // PndCAParameters::GlobalToCALocal( a.fEX, a.fEY, a.fEZ, a.fPhi, x, y, z );
111  // // cout << " A " << x << " " << y << " " << z << endl;
112  // double T2[3][3];
113  // T2[0][0] = 1; T2[0][1] = 0; T2[0][2] = 0;
114  // T2[1][0] = 0; T2[1][1] = z; T2[1][2] = -y;
115  // T2[2][0] = 0; T2[2][1] = y; T2[2][2] = z;
116 
117  // TC[0][0] = T2[0][0]*TCT[0][0] + T2[0][1]*TCT[1][0] + T2[0][2]*TCT[2][0];
118  // TC[0][1] = T2[0][0]*TCT[0][1] + T2[0][1]*TCT[1][1] + T2[0][2]*TCT[2][1];
119  // TC[0][2] = T2[0][0]*TCT[0][2] + T2[0][1]*TCT[1][2] + T2[0][2]*TCT[2][2];
120  // TC[1][0] = T2[1][0]*TCT[0][0] + T2[1][1]*TCT[1][0] + T2[1][2]*TCT[2][0];
121  // TC[1][1] = T2[1][0]*TCT[0][1] + T2[1][1]*TCT[1][1] + T2[1][2]*TCT[2][1];
122  // TC[1][2] = T2[1][0]*TCT[0][2] + T2[1][1]*TCT[1][2] + T2[1][2]*TCT[2][2];
123  // TC[2][0] = T2[2][0]*TCT[0][0] + T2[2][1]*TCT[1][0] + T2[2][2]*TCT[2][0];
124  // TC[2][1] = T2[2][0]*TCT[0][1] + T2[2][1]*TCT[1][1] + T2[2][2]*TCT[2][1];
125  // TC[2][2] = T2[2][0]*TCT[0][2] + T2[2][1]*TCT[1][2] + T2[2][2]*TCT[2][2];
126 
127  // TCT[0][0] = TC[0][0]*T2[0][0] + TC[0][1]*T2[0][1] + TC[0][2]*T2[0][2];
128  // TCT[0][1] = TC[0][0]*T2[1][0] + TC[0][1]*T2[1][1] + TC[0][2]*T2[1][2];
129  // TCT[0][2] = TC[0][0]*T2[2][0] + TC[0][1]*T2[2][1] + TC[0][2]*T2[2][2];
130  // TCT[1][0] = TC[1][0]*T2[0][0] + TC[1][1]*T2[0][1] + TC[1][2]*T2[0][2];
131  // TCT[1][1] = TC[1][0]*T2[1][0] + TC[1][1]*T2[1][1] + TC[1][2]*T2[1][2];
132  // TCT[1][2] = TC[1][0]*T2[2][0] + TC[1][1]*T2[2][1] + TC[1][2]*T2[2][2];
133  // TCT[2][0] = TC[2][0]*T2[0][0] + TC[2][1]*T2[0][1] + TC[2][2]*T2[0][2];
134  // TCT[2][1] = TC[2][0]*T2[1][0] + TC[2][1]*T2[1][1] + TC[2][2]*T2[1][2];
135  // TCT[2][2] = TC[2][0]*T2[2][0] + TC[2][1]*T2[2][1] + TC[2][2]*T2[2][2];
136 
137  // cout << " T2 " << endl;
138  // cout << TCT[0][0] << " " << TCT[0][1] << " " << TCT[0][2] << endl;
139  // cout << TCT[1][0] << " " << TCT[1][1] << " " << TCT[1][2] << endl;
140  // cout << TCT[2][0] << " " << TCT[2][1] << " " << TCT[2][2] << endl;
141 
142  // const float s = y;
143  // const float c = z;
144 
145  // const float s = sin( a.fPhi );
146  // const float c = cos( a.fPhi );
147  // T = sA cA
148  // cA -sA
149  a.fErr2X0 = s*s*a.fC[0][0] + 2*s*c*a.fC[0][1] + c*c*a.fC[1][1];
150  //a.fErrX01 = c*s*(a.fC[1][1] - a.fC[0][0]) + (c*c - s*s)*a.fC[0][1];
151  a.fErr2X1 = c*c*a.fC[0][0] - 2*s*c*a.fC[0][1] + s*s*a.fC[1][1];
152  a.fErrX12 = -(c*a.fC[0][2] - s*a.fC[1][2]);
153 
154  a.fErr2X2 = a.fC[2][2];
155  return in;
156 }
friend F32vec4 cos(const F32vec4 &a)
Definition: P4_F32vec4.h:112
double fX
Definition: PndCAGBHit.h:137
float fErrX12
Definition: PndCAGBHit.h:143
friend F32vec4 sin(const F32vec4 &a)
Definition: P4_F32vec4.h:111
TLorentzVector s
Definition: Pnd2DStar.C:50
double fC[3][3]
Definition: PndCAGBHit.h:146
double fY
Definition: PndCAGBHit.h:138
double fTubeR
Definition: PndCAGBHit.h:159
double fZW
Definition: PndCAGBHit.h:157
double fXW
Definition: PndCAGBHit.h:155
double fPhi
Definition: PndCAGBHit.h:151
double fErr2R
Definition: PndCAGBHit.h:153
float fErr2X0
Definition: PndCAGBHit.h:141
double fZ
Definition: PndCAGBHit.h:139
double fYW
Definition: PndCAGBHit.h:156
double fHalfLength
Definition: PndCAGBHit.h:159
double fR
Definition: PndCAGBHit.h:153
float fErr2X1
Definition: PndCAGBHit.h:142
float fErr2X2
Definition: PndCAGBHit.h:144

Member Data Documentation

double PndCAGBHit::fC[3][3]
protected

Definition at line 146 of file PndCAGBHit.h.

Referenced by C(), operator<<(), operator>>(), and SetC().

double PndCAGBHit::fErr2R
protected

Definition at line 153 of file PndCAGBHit.h.

Referenced by Err2R(), operator<<(), operator>>(), and SetErr2R().

float PndCAGBHit::fErr2X0
protected

Definition at line 141 of file PndCAGBHit.h.

Referenced by Err2X(), Err2X0(), operator>>(), SetErr2X(), and SetErr2X0().

float PndCAGBHit::fErr2X1
protected

Definition at line 142 of file PndCAGBHit.h.

Referenced by Err2X1(), Err2Y(), operator>>(), SetErr2X1(), and SetErr2Y().

float PndCAGBHit::fErr2X2
protected

Definition at line 144 of file PndCAGBHit.h.

Referenced by Err2X2(), Err2Z(), operator>>(), SetErr2X2(), and SetErr2Z().

float PndCAGBHit::fErrX12
protected

Definition at line 143 of file PndCAGBHit.h.

Referenced by ErrX12(), operator>>(), and SetErrX12().

double PndCAGBHit::fHalfLength
protected

Definition at line 159 of file PndCAGBHit.h.

Referenced by Err2A(), operator<<(), operator>>(), and SetTubeHalfLength().

int PndCAGBHit::fID
protected

Definition at line 149 of file PndCAGBHit.h.

Referenced by ID(), operator<<(), operator>>(), and SetID().

int PndCAGBHit::fIRow
protected
bool PndCAGBHit::fIsLeft
protected

Definition at line 154 of file PndCAGBHit.h.

Referenced by IsLeft(), and SetIsLeft().

bool PndCAGBHit::fIsUsed
protected

Definition at line 163 of file PndCAGBHit.h.

Referenced by IsUsed(), and SetAsUsed().

double PndCAGBHit::fPhi
protected

Definition at line 151 of file PndCAGBHit.h.

Referenced by Angle(), GetLocalX0X1X2(), operator<<(), operator>>(), and SetAngle().

int PndCAGBHit::fPndDetID
protected

Definition at line 161 of file PndCAGBHit.h.

Referenced by PndDetID(), and SetPndDetID().

int PndCAGBHit::fPndHitID
protected

Definition at line 162 of file PndCAGBHit.h.

Referenced by PndHitID(), and SetPndHitID().

double PndCAGBHit::fR
protected

Definition at line 153 of file PndCAGBHit.h.

Referenced by operator<<(), operator>>(), R(), and SetR().

double PndCAGBHit::fTubeR
protected

Definition at line 159 of file PndCAGBHit.h.

Referenced by operator<<(), operator>>(), and SetTubeR().

double PndCAGBHit::fX
protected

Definition at line 137 of file PndCAGBHit.h.

Referenced by GetLocalX0X1X2(), GlobalX(), operator<<(), operator>>(), and SetGlobalX().

double PndCAGBHit::fXW
protected

Definition at line 155 of file PndCAGBHit.h.

Referenced by operator>>(), SetXW(), and XW().

double PndCAGBHit::fY
protected

Definition at line 138 of file PndCAGBHit.h.

Referenced by GetLocalX0X1X2(), GlobalY(), operator<<(), operator>>(), and SetGlobalY().

double PndCAGBHit::fYW
protected

Definition at line 156 of file PndCAGBHit.h.

Referenced by operator>>(), SetYW(), and YW().

double PndCAGBHit::fZ
protected

Definition at line 139 of file PndCAGBHit.h.

Referenced by Compare(), GetLocalX0X1X2(), operator<<(), operator>>(), SetZ(), and Z().

double PndCAGBHit::fZW
protected

Definition at line 157 of file PndCAGBHit.h.

Referenced by operator>>(), SetZW(), and ZW().


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