BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
TTrackMC Class Reference

A class to have MC information of TTrack. More...

#include <TTrackMC.h>

Public Member Functions

virtual ~TTrackMC ()
 Destructor.
void dump (const std::string &message=std::string(""), const std::string &prefix=std::string("")) const
 dumps debug information.
int hepId (void) const
 returns HEP ID.
const TTrackHEP *const hep (void) const
 returns a pointer to TTrackHEP.
bool charge (void) const
 returns charge matching.
double wireFraction (void) const
 returns wire fraction(F1).
double wireFractionHEP (void) const
 returns wire fraction(F2).
double ptFraction (void) const
 returns pt fraction.
double pzFraction (void) const
 returns pz fraction.
const Hep3Vector & residual (void) const
 returns residual of momentum.
double ptResidual (void) const
 returns residual of pt.
double pzResidual (void) const
 returns residual of pz.
double ptPull (void) const
 returns pull of pt.
double pzPull (void) const
 returns pull of pz.
unsigned state (void) const
 returns state.
unsigned quality (void) const
 returns quality.
std::string qualityString (void) const
 returns quality.
void update (void)
 updates information.
virtual ~TTrackMC ()
 Destructor.
void dump (const std::string &message=std::string(""), const std::string &prefix=std::string("")) const
 dumps debug information.
int hepId (void) const
 returns HEP ID.
const TTrackHEP *const hep (void) const
 returns a pointer to TTrackHEP.
bool charge (void) const
 returns charge matching.
double wireFraction (void) const
 returns wire fraction(F1).
double wireFractionHEP (void) const
 returns wire fraction(F2).
double ptFraction (void) const
 returns pt fraction.
double pzFraction (void) const
 returns pz fraction.
const Hep3Vector & residual (void) const
 returns residual of momentum.
double ptResidual (void) const
 returns residual of pt.
double pzResidual (void) const
 returns residual of pz.
double ptPull (void) const
 returns pull of pt.
double pzPull (void) const
 returns pull of pz.
unsigned state (void) const
 returns state.
unsigned quality (void) const
 returns quality.
std::string qualityString (void) const
 returns quality.
void update (void)
 updates information.
virtual ~TTrackMC ()
 Destructor.
void dump (const std::string &message=std::string(""), const std::string &prefix=std::string("")) const
 dumps debug information.
int hepId (void) const
 returns HEP ID.
const TTrackHEP *const hep (void) const
 returns a pointer to TTrackHEP.
bool charge (void) const
 returns charge matching.
double wireFraction (void) const
 returns wire fraction(F1).
double wireFractionHEP (void) const
 returns wire fraction(F2).
double ptFraction (void) const
 returns pt fraction.
double pzFraction (void) const
 returns pz fraction.
const Hep3Vector & residual (void) const
 returns residual of momentum.
double ptResidual (void) const
 returns residual of pt.
double pzResidual (void) const
 returns residual of pz.
double ptPull (void) const
 returns pull of pt.
double pzPull (void) const
 returns pull of pz.
unsigned state (void) const
 returns state.
unsigned quality (void) const
 returns quality.
std::string qualityString (void) const
 returns quality.
void update (void)
 updates information.

Friends

class TrkReco

Detailed Description

A class to have MC information of TTrack.

Definition at line 54 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkReco/TTrackMC.h.

Constructor & Destructor Documentation

◆ ~TTrackMC() [1/3]

TTrackMC::~TTrackMC ( )
virtual

Destructor.

Definition at line 62 of file TTrackMC.cxx.

62{}

◆ ~TTrackMC() [2/3]

virtual TTrackMC::~TTrackMC ( )
virtual

Destructor.

◆ ~TTrackMC() [3/3]

virtual TTrackMC::~TTrackMC ( )
virtual

Destructor.

Member Function Documentation

◆ charge() [1/3]

bool TTrackMC::charge ( void ) const
inline

returns charge matching.

Definition at line 168 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkReco/TTrackMC.h.

168{ return _charge; }

Referenced by TTrackManager::saveMCTables().

◆ charge() [2/3]

bool TTrackMC::charge ( void ) const

returns charge matching.

◆ charge() [3/3]

bool TTrackMC::charge ( void ) const

returns charge matching.

◆ dump() [1/3]

void TTrackMC::dump ( const std::string & message = std::string( "" ),
const std::string & prefix = std::string( "" ) ) const

dumps debug information.

Definition at line 137 of file TTrackMC.cxx.

137 {
138 std::cout << msg;
139 std::cout << _t.name() << ":";
140 std::cout << "state=" << _state << ":";
141 if ( _quality & TTrackGood ) std::cout << "good :";
142 else if ( _quality & TTrackGhost ) std::cout << "ghost :";
143 else if ( _quality & TTrackBad ) std::cout << "bad :";
144 else if ( _quality & TTrackCharge ) std::cout << "bad :";
145 else if ( _quality & TTrackGarbage ) std::cout << "garbage:";
146 else std::cout << "classification error:";
147 bitDisplay( _quality, 23, 15 );
148 std::cout << ":";
149 std::cout << _hepID << ":";
150 std::cout << _wireFraction << "," << _wireFractionHEP << ":";
151 std::cout << _ptFraction << "," << _pzFraction;
152 std::cout << std::endl;
153}
void bitDisplay(unsigned)
Definition TMDCUtil.cxx:82

◆ dump() [2/3]

void TTrackMC::dump ( const std::string & message = std::string(""),
const std::string & prefix = std::string("") ) const

dumps debug information.

◆ dump() [3/3]

void TTrackMC::dump ( const std::string & message = std::string(""),
const std::string & prefix = std::string("") ) const

dumps debug information.

◆ hep() [1/3]

const TTrackHEP *const TTrackMC::hep ( void ) const
inline

returns a pointer to TTrackHEP.

Definition at line 166 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkReco/TTrackMC.h.

166{ return _hep; }

Referenced by TTrackManager::saveMCTables().

◆ hep() [2/3]

const TTrackHEP *const TTrackMC::hep ( void ) const

returns a pointer to TTrackHEP.

◆ hep() [3/3]

const TTrackHEP *const TTrackMC::hep ( void ) const

returns a pointer to TTrackHEP.

◆ hepId() [1/3]

int TTrackMC::hepId ( void ) const
inline

returns HEP ID.

Definition at line 164 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkReco/TTrackMC.h.

164{ return _hepID; }

◆ hepId() [2/3]

int TTrackMC::hepId ( void ) const

returns HEP ID.

◆ hepId() [3/3]

int TTrackMC::hepId ( void ) const

returns HEP ID.

◆ ptFraction() [1/3]

double TTrackMC::ptFraction ( void ) const
inline

returns pt fraction.

Definition at line 170 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkReco/TTrackMC.h.

170{ return _ptFraction; }

Referenced by TTrackManager::saveMCTables().

◆ ptFraction() [2/3]

double TTrackMC::ptFraction ( void ) const

returns pt fraction.

◆ ptFraction() [3/3]

double TTrackMC::ptFraction ( void ) const

returns pt fraction.

◆ ptPull() [1/3]

double TTrackMC::ptPull ( void ) const
inline

returns pull of pt.

Definition at line 188 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkReco/TTrackMC.h.

188{ return _ptPull; }

◆ ptPull() [2/3]

double TTrackMC::ptPull ( void ) const

returns pull of pt.

◆ ptPull() [3/3]

double TTrackMC::ptPull ( void ) const

returns pull of pt.

◆ ptResidual() [1/3]

double TTrackMC::ptResidual ( void ) const
inline

returns residual of pt.

Definition at line 184 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkReco/TTrackMC.h.

184{ return _ptResidual; }

◆ ptResidual() [2/3]

double TTrackMC::ptResidual ( void ) const

returns residual of pt.

◆ ptResidual() [3/3]

double TTrackMC::ptResidual ( void ) const

returns residual of pt.

◆ pzFraction() [1/3]

double TTrackMC::pzFraction ( void ) const
inline

returns pz fraction.

Definition at line 172 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkReco/TTrackMC.h.

172{ return _pzFraction; }

Referenced by TTrackManager::saveMCTables().

◆ pzFraction() [2/3]

double TTrackMC::pzFraction ( void ) const

returns pz fraction.

◆ pzFraction() [3/3]

double TTrackMC::pzFraction ( void ) const

returns pz fraction.

◆ pzPull() [1/3]

double TTrackMC::pzPull ( void ) const
inline

returns pull of pz.

Definition at line 190 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkReco/TTrackMC.h.

190{ return _pzPull; }

◆ pzPull() [2/3]

double TTrackMC::pzPull ( void ) const

returns pull of pz.

◆ pzPull() [3/3]

double TTrackMC::pzPull ( void ) const

returns pull of pz.

◆ pzResidual() [1/3]

double TTrackMC::pzResidual ( void ) const
inline

returns residual of pz.

Definition at line 186 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkReco/TTrackMC.h.

186{ return _pzResidual; }

◆ pzResidual() [2/3]

double TTrackMC::pzResidual ( void ) const

returns residual of pz.

◆ pzResidual() [3/3]

double TTrackMC::pzResidual ( void ) const

returns residual of pz.

◆ quality() [1/3]

unsigned TTrackMC::quality ( void ) const
inline

returns quality.

Definition at line 180 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkReco/TTrackMC.h.

180{ return _quality; }

Referenced by TTrackManager::saveMCTables(), and TrackMCStatus().

◆ quality() [2/3]

unsigned TTrackMC::quality ( void ) const

returns quality.

◆ quality() [3/3]

unsigned TTrackMC::quality ( void ) const

returns quality.

◆ qualityString() [1/3]

std::string TTrackMC::qualityString ( void ) const

returns quality.

Definition at line 275 of file TTrackMC.cxx.

275{ return TrackMCQualityString( _quality ); }
std::string TrackMCQualityString(unsigned quality)
Definition TTrackMC.cxx:294

◆ qualityString() [2/3]

std::string TTrackMC::qualityString ( void ) const

returns quality.

◆ qualityString() [3/3]

std::string TTrackMC::qualityString ( void ) const

returns quality.

◆ residual() [1/3]

const Hep3Vector & TTrackMC::residual ( void ) const
inline

returns residual of momentum.

Definition at line 182 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkReco/TTrackMC.h.

182{ return _residual; }

◆ residual() [2/3]

const Hep3Vector & TTrackMC::residual ( void ) const

returns residual of momentum.

◆ residual() [3/3]

const Hep3Vector & TTrackMC::residual ( void ) const

returns residual of momentum.

◆ state() [1/3]

unsigned TTrackMC::state ( void ) const
inline

returns state.

Definition at line 178 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkReco/TTrackMC.h.

178{ return _state; }

◆ state() [2/3]

unsigned TTrackMC::state ( void ) const

returns state.

◆ state() [3/3]

unsigned TTrackMC::state ( void ) const

returns state.

◆ update() [1/3]

void TTrackMC::update ( void )

updates information.

Definition at line 64 of file TTrackMC.cxx.

64 {
65 _state = 0;
66 _quality = 0;
67 /*
68 //...Prepare counters...
69 unsigned nHep = TTrackHEP::list().length();
70 unsigned nTrk = TrkReco::getTrkReco()->tracks().length();
71 unsigned * N1 = (unsigned *) malloc(nHep * sizeof(unsigned));
72 float * F1 = (float *) malloc(nHep * sizeof(float));
73 unsigned N2 = 0;
74 for (unsigned i = 0; i < nHep; i++) {
75 N1[i] = 0;
76 F1[i] = 0.;
77 }
78
79 //...Prepare for fraction F1...
80 // const AList<TMLink> & cores = _t.cores();
81 const AList<TMLink> & cores = _t.finalHits();
82 unsigned nCores = cores.length();
83 for (unsigned i = 0; i < nCores; i++) {
84 TMLink * t = cores[i];
85 int hepID = t->hit()->mc()->hep()->id();
86 ++N1[hepID];
87 }
88
89 //...Calculate fraction F1 and find the best HEP...
90 int bestHep = -1;
91 TTrackHEP * hep = 0;
92 float bestF1 = 0.;
93 for (unsigned i = 0; i < nHep; i++) {
94 if (nCores) F1[i] = (float) N1[i] / (float) nCores;
95 if (F1[i] > bestF1) {
96 bestHep = i;
97 bestF1 = F1[i];
98 }
99 }
100
101 //...Check HEP...
102 float F2 = 0.;
103 if (bestHep != -1) {
104 hep = TTrackHEP::list()[bestHep];
105 unsigned nAll = 0;
106 for (unsigned i = 0; i < hep->hits().length(); i++) {
107 const TMDCWireHit * hit = hep->hits()[i]->hit();
108 if (! hit) continue;
109 if (hit->state() & WireHitInvalidForFit) continue;
110
111 ++nAll;
112 if (hit->track() == & _t) ++N2;
113 }
114
115 //...Calculate fraction F2...
116 if (nAll) F2 = (float) N2 / (float) nAll;
117 }
118
119 //...Store results...
120 _hepID = bestHep;
121 _hep = hep;
122 _wireFraction = bestF1;
123 _wireFractionHEP = F2;
124
125 //...Compare charge and momentum...
126 compare();
127
128 //...Classification...
129 classify();
130
131 //...Termination...
132 free(N1);
133 free(F1);
134 */
135}

◆ update() [2/3]

void TTrackMC::update ( void )

updates information.

◆ update() [3/3]

void TTrackMC::update ( void )

updates information.

◆ wireFraction() [1/3]

double TTrackMC::wireFraction ( void ) const
inline

returns wire fraction(F1).

Definition at line 174 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkReco/TTrackMC.h.

174{ return _wireFraction; }

Referenced by TTrackManager::saveMCTables().

◆ wireFraction() [2/3]

double TTrackMC::wireFraction ( void ) const

returns wire fraction(F1).

◆ wireFraction() [3/3]

double TTrackMC::wireFraction ( void ) const

returns wire fraction(F1).

◆ wireFractionHEP() [1/3]

double TTrackMC::wireFractionHEP ( void ) const
inline

returns wire fraction(F2).

Definition at line 176 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkReco/TTrackMC.h.

176{ return _wireFractionHEP; }

Referenced by TTrackManager::saveMCTables().

◆ wireFractionHEP() [2/3]

double TTrackMC::wireFractionHEP ( void ) const

returns wire fraction(F2).

◆ wireFractionHEP() [3/3]

double TTrackMC::wireFractionHEP ( void ) const

returns wire fraction(F2).

◆ TrkReco

TrkReco
friend

Definition at line 144 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkReco/TTrackMC.h.

Referenced by TrkReco, and update().


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