BmnRoot
26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Toggle main menu visibility
Loading...
Searching...
No Matches
BmnInnerTrackingRun7.h
Go to the documentation of this file.
1
/*
2
* File: BmnInnerTrackingRun7.h
3
* Author: Sergei Merts
4
*
5
* Created on April 6, 2020
6
*
7
*
8
*/
9
10
#ifndef BMNINNERTRACKINGRUN7_H
11
#define BMNINNERTRACKINGRUN7_H
12
13
// Base Class Headers ----------------
14
15
#include "
BmnCellDuet.h
"
16
#include "BmnGemStripStationSet.h"
17
#include "BmnGlobalTrack.h"
18
#include "BmnKalmanFilter.h"
19
#include "BmnMath.h"
20
#include "BmnSiliconStationSet.h"
21
#include "BmnSteering.h"
22
#include "BmnTrack.h"
23
#include "CbmMCTrack.h"
24
#include "FairMCPoint.h"
25
#include "FairTask.h"
26
#include "FairTrackParam.h"
27
#include "
TClonesArray.h
"
28
#include "
TString.h
"
29
30
#include <map>
31
#include <vector>
32
33
using namespace
std
;
34
35
class
BmnInnerTrackingRun7
:
public
FairTask
36
{
37
public
:
38
// Constructors/Destructors ---------
39
40
BmnInnerTrackingRun7
() {};
41
BmnInnerTrackingRun7
(
Int_t
run,
Bool_t
target);
42
void
SetFiltration
(
Bool_t
f) {
fDoHitAsymFiltration
= f; }
43
virtual
~BmnInnerTrackingRun7
();
44
45
virtual
InitStatus
Init
();
46
virtual
void
Exec
(
Option_t
* opt);
47
virtual
void
Finish
();
48
49
private
:
50
BmnStatus
SortHits
(vector<BmnHit*>* sortedHits);
51
52
BmnStatus
FindTracks_4of4_OnLastGEMStations
();
53
BmnStatus
FindTracks_3of4_OnLastGEMStations
();
54
BmnStatus
FindTracks_2of2_OnFirstGEMStationsDownstream
();
55
BmnStatus
FindTracks_2of2_OnFirstGEMStationsUpstream
();
56
57
BmnStatus
MatchHit
(
BmnTrack
* cand, vector<BmnHit*> sortedHits,
Bool_t
downstream);
58
BmnStatus
FindCandidateByThreeStations
(
Short_t
st0,
59
Short_t
st1,
60
Short_t
st2,
61
vector<BmnTrack>& candidates,
62
vector<BmnHit*>* sortedHits);
63
BmnStatus
FindCandidateByTwoStations
(
Short_t
st0,
64
Short_t
st1,
65
vector<BmnTrack>& candidates,
66
vector<BmnHit*>* sortedHits);
67
68
BmnStatus
TrackUpdateByKalman
(vector<BmnTrack>& cands);
69
BmnStatus
TrackUpdateByLine
(vector<BmnTrack>& cands);
70
BmnStatus
SortTracks
(vector<BmnTrack>& inTracks, vector<BmnTrack>& sortedTracks);
71
BmnStatus
TrackSelection
(vector<BmnTrack>& cands);
72
73
Double_t
CalcQp
(
BmnTrack
* track,
Bool_t
doSimple);
74
BmnStatus
CalculateTrackParams
(
BmnTrack
* tr);
75
BmnStatus
CalcCovMatrix
(
BmnTrack
* tr);
76
TVector2
CalcMeanSigma
(vector<Double_t>);
77
Double_t
CalculateLength
(
BmnTrack
* tr);
78
BmnStatus
CheckSharedHits
(vector<BmnTrack>& sortedTracks);
79
void
SetHitsUsing
(
BmnTrack
* tr,
Bool_t
use);
80
BmnStatus
DrawHits
();
81
82
BmnGemStripStationSet
*
fGemDetector
;
//!
83
BmnSiliconStationSet
*
fSilDetector
;
//!
84
TString
fGemHitsBranchName
;
85
TString
fSilHitsBranchName
;
86
TString
fGlobTracksBranchName
;
87
TString
fGemTracksBranchName
;
88
TString
fSilTracksBranchName
;
89
90
TClonesArray
*
fGlobTracksArray
;
//!
91
TClonesArray
*
fSilTracksArray
;
//!
92
TClonesArray
*
fGemTracksArray
;
//!
93
TClonesArray
*
fSilHitsArray
;
//!
94
TClonesArray
*
fGemHitsArray
;
//!
95
TClonesArray
*
fHitsArray
;
//!
96
97
TClonesArray
*
fMCTracksArray
;
//!
98
TClonesArray
*
fSilPointsArray
;
//!
99
TClonesArray
*
fGemPointsArray
;
//!
100
101
BmnKalmanFilter
*
fKalman
;
//!
102
103
Bool_t
fIsTarget
;
// run with target or not
104
Bool_t
fDoHitAsymFiltration
;
105
106
UInt_t
fEventNo
;
107
Short_t
fNStations
;
108
Short_t
fNSiliconStations
;
109
110
TVector3
fRoughVertex
;
// for correct transformation
111
112
FairField
*
fField
;
//!
113
114
Double_t
fChiSquareCut
;
115
Double_t
*
fHitXCutMin
;
//!
116
Double_t
*
fHitXCutMax
;
//!
117
Double_t
*
fHitYCutMin
;
//!
118
Double_t
*
fHitYCutMax
;
//!
119
120
Int_t
fNHitsCut
;
121
Double_t
fDistCut
;
122
123
TString
fSteerFile
;
124
BmnSteering
*
fSteering
;
//!
125
126
ClassDef
(
BmnInnerTrackingRun7
, 1);
127
};
128
129
#endif
/* BMNINNERTRACKINGRUN7_H */
Bool_t
bool Bool_t
Int_t
int Int_t
Short_t
short Short_t
Double_t
double Double_t
Option_t
const char Option_t
ClassDef
#define ClassDef(name, id)
TClonesArray.h
TString.h
BmnStatus
BmnStatus
Define status code.
Definition
BmnEnums.h:93
BmnGemStripStationSet
Definition
BmnGemStripStationSet.h:15
BmnInnerTrackingRun7::FindTracks_3of4_OnLastGEMStations
BmnStatus FindTracks_3of4_OnLastGEMStations()
Definition
BmnInnerTrackingRun7.cxx:543
BmnInnerTrackingRun7::fGemTracksBranchName
TString fGemTracksBranchName
Definition
BmnInnerTrackingRun7.h:87
BmnInnerTrackingRun7::fNHitsCut
Int_t fNHitsCut
Definition
BmnInnerTrackingRun7.h:120
BmnInnerTrackingRun7::fSteering
BmnSteering * fSteering
Definition
BmnInnerTrackingRun7.h:124
BmnInnerTrackingRun7::MatchHit
BmnStatus MatchHit(BmnTrack *cand, vector< BmnHit * > sortedHits, Bool_t downstream)
Definition
BmnInnerTrackingRun7.cxx:586
BmnInnerTrackingRun7::fNStations
Short_t fNStations
Definition
BmnInnerTrackingRun7.h:107
BmnInnerTrackingRun7::FindCandidateByTwoStations
BmnStatus FindCandidateByTwoStations(Short_t st0, Short_t st1, vector< BmnTrack > &candidates, vector< BmnHit * > *sortedHits)
Definition
BmnInnerTrackingRun7.cxx:631
BmnInnerTrackingRun7::fField
FairField * fField
Definition
BmnInnerTrackingRun7.h:112
BmnInnerTrackingRun7::fHitXCutMax
Double_t * fHitXCutMax
Definition
BmnInnerTrackingRun7.h:116
BmnInnerTrackingRun7::SetFiltration
void SetFiltration(Bool_t f)
Definition
BmnInnerTrackingRun7.h:42
BmnInnerTrackingRun7::fSilPointsArray
TClonesArray * fSilPointsArray
Definition
BmnInnerTrackingRun7.h:98
BmnInnerTrackingRun7::fMCTracksArray
TClonesArray * fMCTracksArray
Definition
BmnInnerTrackingRun7.h:97
BmnInnerTrackingRun7::fSilTracksBranchName
TString fSilTracksBranchName
Definition
BmnInnerTrackingRun7.h:88
BmnInnerTrackingRun7::fGemTracksArray
TClonesArray * fGemTracksArray
Definition
BmnInnerTrackingRun7.h:92
BmnInnerTrackingRun7::fRoughVertex
TVector3 fRoughVertex
Definition
BmnInnerTrackingRun7.h:110
BmnInnerTrackingRun7::fChiSquareCut
Double_t fChiSquareCut
Definition
BmnInnerTrackingRun7.h:114
BmnInnerTrackingRun7::fGlobTracksArray
TClonesArray * fGlobTracksArray
Definition
BmnInnerTrackingRun7.h:90
BmnInnerTrackingRun7::FindCandidateByThreeStations
BmnStatus FindCandidateByThreeStations(Short_t st0, Short_t st1, Short_t st2, vector< BmnTrack > &candidates, vector< BmnHit * > *sortedHits)
Definition
BmnInnerTrackingRun7.cxx:440
BmnInnerTrackingRun7::CalculateLength
Double_t CalculateLength(BmnTrack *tr)
Definition
BmnInnerTrackingRun7.cxx:1476
BmnInnerTrackingRun7::fGemHitsArray
TClonesArray * fGemHitsArray
Definition
BmnInnerTrackingRun7.h:94
BmnInnerTrackingRun7::fDoHitAsymFiltration
Bool_t fDoHitAsymFiltration
Definition
BmnInnerTrackingRun7.h:104
BmnInnerTrackingRun7::SortHits
BmnStatus SortHits(vector< BmnHit * > *sortedHits)
Definition
BmnInnerTrackingRun7.cxx:1028
BmnInnerTrackingRun7::fSilHitsArray
TClonesArray * fSilHitsArray
Definition
BmnInnerTrackingRun7.h:93
BmnInnerTrackingRun7::fSilDetector
BmnSiliconStationSet * fSilDetector
Definition
BmnInnerTrackingRun7.h:83
BmnInnerTrackingRun7::fGlobTracksBranchName
TString fGlobTracksBranchName
Definition
BmnInnerTrackingRun7.h:86
BmnInnerTrackingRun7::DrawHits
BmnStatus DrawHits()
Definition
BmnInnerTrackingRun7.cxx:1534
BmnInnerTrackingRun7::CalculateTrackParams
BmnStatus CalculateTrackParams(BmnTrack *tr)
Definition
BmnInnerTrackingRun7.cxx:1303
BmnInnerTrackingRun7::fHitYCutMax
Double_t * fHitYCutMax
Definition
BmnInnerTrackingRun7.h:118
BmnInnerTrackingRun7::Init
virtual InitStatus Init()
Definition
BmnInnerTrackingRun7.cxx:84
BmnInnerTrackingRun7::SetHitsUsing
void SetHitsUsing(BmnTrack *tr, Bool_t use)
Definition
BmnInnerTrackingRun7.cxx:1176
BmnInnerTrackingRun7::fGemPointsArray
TClonesArray * fGemPointsArray
Definition
BmnInnerTrackingRun7.h:99
BmnInnerTrackingRun7::fHitsArray
TClonesArray * fHitsArray
Definition
BmnInnerTrackingRun7.h:95
BmnInnerTrackingRun7::FindTracks_2of2_OnFirstGEMStationsDownstream
BmnStatus FindTracks_2of2_OnFirstGEMStationsDownstream()
Definition
BmnInnerTrackingRun7.cxx:681
BmnInnerTrackingRun7::fNSiliconStations
Short_t fNSiliconStations
Definition
BmnInnerTrackingRun7.h:108
BmnInnerTrackingRun7::Finish
virtual void Finish()
Definition
BmnInnerTrackingRun7.cxx:1007
BmnInnerTrackingRun7::fIsTarget
Bool_t fIsTarget
Definition
BmnInnerTrackingRun7.h:103
BmnInnerTrackingRun7::BmnInnerTrackingRun7
BmnInnerTrackingRun7()
Definition
BmnInnerTrackingRun7.h:40
BmnInnerTrackingRun7::fGemDetector
BmnGemStripStationSet * fGemDetector
Definition
BmnInnerTrackingRun7.h:82
BmnInnerTrackingRun7::CheckSharedHits
BmnStatus CheckSharedHits(vector< BmnTrack > &sortedTracks)
Definition
BmnInnerTrackingRun7.cxx:1502
BmnInnerTrackingRun7::fSilHitsBranchName
TString fSilHitsBranchName
Definition
BmnInnerTrackingRun7.h:85
BmnInnerTrackingRun7::SortTracks
BmnStatus SortTracks(vector< BmnTrack > &inTracks, vector< BmnTrack > &sortedTracks)
Definition
BmnInnerTrackingRun7.cxx:975
BmnInnerTrackingRun7::FindTracks_4of4_OnLastGEMStations
BmnStatus FindTracks_4of4_OnLastGEMStations()
Definition
BmnInnerTrackingRun7.cxx:267
BmnInnerTrackingRun7::fHitXCutMin
Double_t * fHitXCutMin
Definition
BmnInnerTrackingRun7.h:115
BmnInnerTrackingRun7::fEventNo
UInt_t fEventNo
Definition
BmnInnerTrackingRun7.h:106
BmnInnerTrackingRun7::CalcQp
Double_t CalcQp(BmnTrack *track, Bool_t doSimple)
Definition
BmnInnerTrackingRun7.cxx:1361
BmnInnerTrackingRun7::fSteerFile
TString fSteerFile
Definition
BmnInnerTrackingRun7.h:123
BmnInnerTrackingRun7::FindTracks_2of2_OnFirstGEMStationsUpstream
BmnStatus FindTracks_2of2_OnFirstGEMStationsUpstream()
Definition
BmnInnerTrackingRun7.cxx:891
BmnInnerTrackingRun7::CalcMeanSigma
TVector2 CalcMeanSigma(vector< Double_t >)
Definition
BmnInnerTrackingRun7.cxx:1346
BmnInnerTrackingRun7::fHitYCutMin
Double_t * fHitYCutMin
Definition
BmnInnerTrackingRun7.h:117
BmnInnerTrackingRun7::fKalman
BmnKalmanFilter * fKalman
Definition
BmnInnerTrackingRun7.h:101
BmnInnerTrackingRun7::TrackUpdateByKalman
BmnStatus TrackUpdateByKalman(vector< BmnTrack > &cands)
Definition
BmnInnerTrackingRun7.cxx:1070
BmnInnerTrackingRun7::~BmnInnerTrackingRun7
virtual ~BmnInnerTrackingRun7()
Definition
BmnInnerTrackingRun7.cxx:73
BmnInnerTrackingRun7::TrackUpdateByLine
BmnStatus TrackUpdateByLine(vector< BmnTrack > &cands)
Definition
BmnInnerTrackingRun7.cxx:1050
BmnInnerTrackingRun7::TrackSelection
BmnStatus TrackSelection(vector< BmnTrack > &cands)
Definition
BmnInnerTrackingRun7.cxx:1102
BmnInnerTrackingRun7::fDistCut
Double_t fDistCut
Definition
BmnInnerTrackingRun7.h:121
BmnInnerTrackingRun7::fGemHitsBranchName
TString fGemHitsBranchName
Definition
BmnInnerTrackingRun7.h:84
BmnInnerTrackingRun7::CalcCovMatrix
BmnStatus CalcCovMatrix(BmnTrack *tr)
Definition
BmnInnerTrackingRun7.cxx:1203
BmnInnerTrackingRun7::fSilTracksArray
TClonesArray * fSilTracksArray
Definition
BmnInnerTrackingRun7.h:91
BmnInnerTrackingRun7::Exec
virtual void Exec(Option_t *opt)
Definition
BmnInnerTrackingRun7.cxx:159
BmnKalmanFilter
Definition
BmnKalmanFilter.h:28
BmnSiliconStationSet
Definition
BmnSiliconStationSet.h:14
BmnSteering
Definition
BmnSteering.h:28
BmnTrack
Definition
BmnTrack.h:20
FairField
FairTask
TClonesArray
TString
TVector2
TVector3
std
Definition
json.hpp:4446
BmnCellDuet.h
reconstruction
tracking
BmnInnerTrackingRun7.h
Generated on
for BmnRoot by
1.17.0