BmnRoot
26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Toggle main menu visibility
Loading...
Searching...
No Matches
BmnGlobalTrack.cxx
Go to the documentation of this file.
1
// -------------------------------------------------------------------------
2
// ----- BmnGlobalTrack source file -----
3
// ----- Created S. Merts -----
4
// -------------------------------------------------------------------------
5
#include "
BmnGlobalTrack.h
"
6
7
#include <iostream>
8
9
using
std::cout;
10
using
std::endl;
11
12
// ----- Default constructor -------------------------------------------
13
BmnGlobalTrack::BmnGlobalTrack
()
14
:
fInnerTrack
(-1)
15
,
fScWallCellId
(-1)
16
,
fNDetHitIndex
(-1)
17
,
fTof400Hit
(
kNumParticleTypes
, -1)
18
,
fTof700Hit
(
kNumParticleTypes
, -1)
19
,
fTof400ResX
(
kNumParticleTypes
, -1000.0)
20
,
fTof700ResX
(
kNumParticleTypes
, -1000.0)
21
,
fTof400ResY
(
kNumParticleTypes
, -1000.0)
22
,
fTof700ResY
(
kNumParticleTypes
, -1000.0)
23
,
fMass2Tof400
(
kNumParticleTypes
, -1000.0)
24
,
fMass2Tof700
(
kNumParticleTypes
, -1000.0)
25
,
fScWallSignal
(-1000.0)
26
,
fDedx
(0.0)
27
,
fQ
(0)
28
,
fChi2InVertex
(0.0)
29
,
fDCAInVertex
(0.0)
30
{}
31
// -------------------------------------------------------------------------
32
33
// ----- Destructor ----------------------------------------------------
34
BmnGlobalTrack::~BmnGlobalTrack
() {}
35
// -------------------------------------------------------------------------
36
37
// ----- Public method Print -------------------------------------------
38
void
BmnGlobalTrack::Print
()
39
{
40
cout <<
"\nNumber of attached hits : "
<< this->
GetNHits
() << endl;
41
cout <<
"PARAM FIRST: "
<< endl;
42
this->
GetParamFirst
()->Print();
43
cout <<
"PARAM LAST: "
<< endl;
44
this->
GetParamLast
()->Print();
45
cout <<
"Index of inner track: "
<<
fInnerTrack
<< endl;
46
cout <<
"Index of ScWall cell: "
<<
fScWallCellId
<< endl;
47
cout <<
"Signal of ScWall: "
<<
fScWallSignal
<< endl;
48
cout <<
"dE/dx = "
<<
fDedx
<< endl;
49
cout <<
"P = "
<<
GetP
() << endl;
50
cout <<
"Q = "
<<
fQ
<< endl;
51
cout <<
"chi^2 in vertex = "
<<
fChi2InVertex
<< endl;
52
cout <<
"Impact parameter = "
<<
fDCAInVertex
<< endl;
53
cout <<
"Time-of-Flight info for different hypothesis [Common, Pi+, Pi-, Proton, Triton]:"
<< endl;
54
cout <<
"TOF400 hits indeces: ["
;
55
for
(
Int_t
i
= 0;
i
<
kNumParticleTypes
; ++
i
) {
56
cout <<
fTof400Hit
[
i
] <<
" "
;
57
}
58
cout <<
"]"
<< endl;
59
cout <<
"TOF700 hits indeces: ["
;
60
for
(
Int_t
i
= 0;
i
<
kNumParticleTypes
; ++
i
) {
61
cout <<
fTof700Hit
[
i
] <<
" "
;
62
}
63
cout <<
"]"
<< endl;
64
cout <<
"TOF400 residuals: ["
;
65
for
(
Int_t
i
= 0;
i
<
kNumParticleTypes
; ++
i
) {
66
cout <<
"X: "
<<
fTof400ResX
[
i
] <<
"\t Y: "
<<
fTof400ResY
[
i
] << endl;
67
}
68
cout <<
"]"
<< endl;
69
cout <<
"TOF700 residuals: ["
;
70
for
(
Int_t
i
= 0;
i
<
kNumParticleTypes
; ++
i
) {
71
cout <<
"X: "
<<
fTof700ResX
[
i
] <<
"\t Y: "
<<
fTof700ResY
[
i
] << endl;
72
}
73
cout <<
"]"
<< endl;
74
cout <<
"TOF400 M^2: ["
;
75
for
(
Int_t
i
= 0;
i
<
kNumParticleTypes
; ++
i
) {
76
cout <<
fMass2Tof400
[
i
] <<
" "
;
77
}
78
cout <<
"]"
<< endl;
79
cout <<
"TOF700 M^2: ["
;
80
for
(
Int_t
i
= 0;
i
<
kNumParticleTypes
; ++
i
) {
81
cout <<
fMass2Tof700
[
i
] <<
" "
;
82
}
83
cout <<
"]"
<< endl;
84
}
85
// -------------------------------------------------------------------------
86
87
// void BmnGlobalTrack::SetBeta(Double_t b, Int_t tofID)
88
// {
89
// if (tofID == 1)
90
// fBeta400 = b;
91
// else if (tofID == 2)
92
// fBeta700 = b;
93
// ;
94
// }
95
96
Float_t
BmnGlobalTrack::GetPx
()
97
{
98
FairTrackParam* par = this->
GetParamFirst
();
99
return
par->GetTx() * this->
GetPz
();
100
}
101
102
Float_t
BmnGlobalTrack::GetPy
()
103
{
104
FairTrackParam* par = this->
GetParamFirst
();
105
return
par->GetTy() * this->
GetPz
();
106
}
107
108
Float_t
BmnGlobalTrack::GetPz
()
109
{
110
FairTrackParam* par = this->
GetParamFirst
();
111
Float_t
tx2 =
TMath::Sq
(par->GetTx());
112
Float_t
ty2 =
TMath::Sq
(par->GetTy());
113
return
this->
GetP
() /
TMath::Sqrt
(tx2 + ty2 + 1);
114
}
115
116
Float_t
BmnGlobalTrack::GetTheta
()
117
{
118
return
TMath::ATan2
(this->
GetPt
(), this->
GetPz
());
119
}
120
121
Float_t
BmnGlobalTrack::GetPhi
()
122
{
123
return
TMath::ATan2
(this->
GetPy
(), this->
GetPx
());
124
}
125
126
Float_t
BmnGlobalTrack::GetPt
()
127
{
128
return
TMath::Sqrt
(this->
GetPx
() * this->
GetPx
() + this->
GetPy
() * this->
GetPy
());
129
}
130
131
Float_t
BmnGlobalTrack::GetEta
()
132
{
133
return
0.5 *
TMath::Log
((this->
GetP
() + this->
GetPz
()) / (this->
GetP
() - this->
GetPz
()));
134
}
135
136
TString
BmnGlobalTrack::GetParticleName
(
ParticleType
type)
137
{
138
if
(type ==
BmnGlobalTrack::kCommon
) {
139
return
"Common"
;
140
}
else
if
(type ==
BmnGlobalTrack::kPion
) {
141
return
"pi"
;
142
}
else
if
(type ==
BmnGlobalTrack::kProton
) {
143
return
"p"
;
144
}
else
if
(type ==
BmnGlobalTrack::kDeutron
) {
145
return
"d"
;
146
}
else
if
(type ==
BmnGlobalTrack::kTriton
) {
147
return
"t"
;
148
}
else
{
149
return
"Common"
;
150
}
151
}
i
int i
Definition
P4_F32vec4.h:22
Int_t
int Int_t
Float_t
float Float_t
BmnGlobalTrack.h
BmnGlobalTrack::fTof400ResY
vector< Float_t > fTof400ResY
Definition
BmnGlobalTrack.h:155
BmnGlobalTrack::fMass2Tof700
vector< Float_t > fMass2Tof700
Definition
BmnGlobalTrack.h:160
BmnGlobalTrack::fTof700Hit
vector< Int_t > fTof700Hit
Definition
BmnGlobalTrack.h:150
BmnGlobalTrack::GetParticleName
TString GetParticleName(ParticleType type)
Definition
BmnGlobalTrack.cxx:136
BmnGlobalTrack::fTof700ResY
vector< Float_t > fTof700ResY
Definition
BmnGlobalTrack.h:156
BmnGlobalTrack::fNDetHitIndex
Int_t fNDetHitIndex
Definition
BmnGlobalTrack.h:146
BmnGlobalTrack::GetTheta
Float_t GetTheta()
Definition
BmnGlobalTrack.cxx:116
BmnGlobalTrack::GetPt
Float_t GetPt()
Definition
BmnGlobalTrack.cxx:126
BmnGlobalTrack::ParticleType
ParticleType
Definition
BmnGlobalTrack.h:23
BmnGlobalTrack::kProton
@ kProton
Definition
BmnGlobalTrack.h:26
BmnGlobalTrack::kNumParticleTypes
@ kNumParticleTypes
Definition
BmnGlobalTrack.h:29
BmnGlobalTrack::kDeutron
@ kDeutron
Definition
BmnGlobalTrack.h:27
BmnGlobalTrack::kTriton
@ kTriton
Definition
BmnGlobalTrack.h:28
BmnGlobalTrack::kPion
@ kPion
Definition
BmnGlobalTrack.h:25
BmnGlobalTrack::kCommon
@ kCommon
Definition
BmnGlobalTrack.h:24
BmnGlobalTrack::GetPz
Float_t GetPz()
Definition
BmnGlobalTrack.cxx:108
BmnGlobalTrack::BmnGlobalTrack
BmnGlobalTrack()
Default constructor.
Definition
BmnGlobalTrack.cxx:13
BmnGlobalTrack::~BmnGlobalTrack
virtual ~BmnGlobalTrack()
Destructor.
Definition
BmnGlobalTrack.cxx:34
BmnGlobalTrack::fTof400ResX
vector< Float_t > fTof400ResX
Definition
BmnGlobalTrack.h:153
BmnGlobalTrack::GetPhi
Float_t GetPhi()
Definition
BmnGlobalTrack.cxx:121
BmnGlobalTrack::fDedx
Float_t fDedx
Definition
BmnGlobalTrack.h:163
BmnGlobalTrack::GetPx
Float_t GetPx()
Definition
BmnGlobalTrack.cxx:96
BmnGlobalTrack::fQ
Short_t fQ
Definition
BmnGlobalTrack.h:164
BmnGlobalTrack::fMass2Tof400
vector< Float_t > fMass2Tof400
Definition
BmnGlobalTrack.h:159
BmnGlobalTrack::fDCAInVertex
Float_t fDCAInVertex
Definition
BmnGlobalTrack.h:166
BmnGlobalTrack::fChi2InVertex
Float_t fChi2InVertex
Definition
BmnGlobalTrack.h:165
BmnGlobalTrack::Print
void Print()
Definition
BmnGlobalTrack.cxx:38
BmnGlobalTrack::fTof700ResX
vector< Float_t > fTof700ResX
Definition
BmnGlobalTrack.h:154
BmnGlobalTrack::GetPy
Float_t GetPy()
Definition
BmnGlobalTrack.cxx:102
BmnGlobalTrack::fInnerTrack
Int_t fInnerTrack
Indices of local parts of global track.
Definition
BmnGlobalTrack.h:144
BmnGlobalTrack::fTof400Hit
vector< Int_t > fTof400Hit
Definition
BmnGlobalTrack.h:149
BmnGlobalTrack::fScWallCellId
Int_t fScWallCellId
Definition
BmnGlobalTrack.h:145
BmnGlobalTrack::GetEta
Float_t GetEta()
Definition
BmnGlobalTrack.cxx:131
BmnGlobalTrack::fScWallSignal
Float_t fScWallSignal
Definition
BmnGlobalTrack.h:162
BmnTrack::GetParamFirst
FairTrackParam * GetParamFirst()
Definition
BmnTrack.h:63
BmnTrack::GetNHits
Int_t GetNHits() const
Accessors.
Definition
BmnTrack.h:49
BmnTrack::GetP
Double_t GetP()
Definition
BmnTrack.h:67
BmnTrack::GetParamLast
FairTrackParam * GetParamLast()
Definition
BmnTrack.h:65
TString
TMath::ATan2
Double_t ATan2(Double_t y, Double_t x)
TMath::Log
Double_t Log(Double_t x)
TMath::Sq
Double_t Sq(Double_t x)
TMath::Sqrt
Double_t Sqrt(Double_t x)
base
data
BmnGlobalTrack.cxx
Generated on
for BmnRoot by
1.17.0