BOSS 7.0.2
BESIII Offline Software System
Loading...
Searching...
No Matches
TFastFinder Class Reference

A class to find tracks with the conformal method. More...

#include <TFastFinder.h>

+ Inheritance diagram for TFastFinder:

Public Member Functions

 TFastFinder ()
 Constructor.
 
virtual ~TFastFinder ()
 Destructor.
 
std::string name (void) const
 returns name.
 
std::string version (void) const
 returns version.
 
void dump (const std::string &message=std::string(""), const std::string &prefix=std::string("")) const
 dumps debug information.
 
void clear (void)
 clear internal information.
 
int doit (const AList< TMDCWireHit > &axialHits, const AList< TMDCWireHit > &stereoHits, AList< TTrack > &tracks)
 finds tracks.
 
 TFastFinder ()
 Constructor.
 
virtual ~TFastFinder ()
 Destructor.
 
std::string name (void) const
 returns name.
 
std::string version (void) const
 returns version.
 
void dump (const std::string &message=std::string(""), const std::string &prefix=std::string("")) const
 dumps debug information.
 
void clear (void)
 clear internal information.
 
int doit (const AList< TMDCWireHit > &axialHits, const AList< TMDCWireHit > &stereoHits, AList< TTrack > &tracks)
 finds tracks.
 
- Public Member Functions inherited from TFinderBase
 TFinderBase ()
 Constructor.
 
virtual ~TFinderBase ()
 Destructor.
 
virtual std::string name (void) const =0
 returns name.
 
virtual std::string version (void) const =0
 returns version.
 
virtual void dump (const std::string &message=std::string(""), const std::string &prefix=std::string("")) const
 dumps debug information.
 
virtual int debugLevel (void) const
 returns debug level.
 
virtual void clear (void)=0
 clear internal information.
 
virtual int debugLevel (int)
 sets debug level.
 
virtual bool doStereo (bool)
 sets flag to reconstruct 3D.
 
virtual bool doSalvage (bool)
 sets flag to salvage hits.
 
virtual int doit (const AList< TMDCWireHit > &axialHits, const AList< TMDCWireHit > &stereoHits, AList< TTrack > &tracks3D, AList< TTrack > &tracks2D)=0
 finds tracks. 'hits' are used to reconstruct. 'tracks' can be used for both inputs and outputs. Return value = (0, +, -) means (success, warning, fatal error).
 
 TFinderBase ()
 Constructor.
 
virtual ~TFinderBase ()
 Destructor.
 
virtual std::string name (void) const =0
 returns name.
 
virtual std::string version (void) const =0
 returns version.
 
virtual void dump (const std::string &message=std::string(""), const std::string &prefix=std::string("")) const
 dumps debug information.
 
virtual int debugLevel (void) const
 returns debug level.
 
virtual void clear (void)=0
 clear internal information.
 
virtual int debugLevel (int)
 sets debug level.
 
virtual bool doStereo (bool)
 sets flag to reconstruct 3D.
 
virtual bool doSalvage (bool)
 sets flag to salvage hits.
 
virtual int doit (const AList< TMDCWireHit > &axialHits, const AList< TMDCWireHit > &stereoHits, AList< TTrack > &tracks3D, AList< TTrack > &tracks2D)=0
 finds tracks. 'hits' are used to reconstruct. 'tracks' can be used for both inputs and outputs. Return value = (0, +, -) means (success, warning, fatal error).
 

Detailed Description

A class to find tracks with the conformal method.

Definition at line 26 of file InstallArea/include/TrkReco/TrkReco/TFastFinder.h.

Constructor & Destructor Documentation

◆ TFastFinder() [1/2]

TFastFinder::TFastFinder ( )

Constructor.

Definition at line 20 of file TFastFinder.cxx.

20 : _builder("fast find builder", 30) {
21 _selector.nLinks(4);
22 _selector.nSuperLayers(2);
23 _selector.minPt(0.05);
24 _selector.maxImpact(100.);
25 _selector.maxSigma(30.);
26 _selector.nLinksStereo(3);
27 _selector.maxDistance(30.);
28 _builder.trackSelector(_selector);
29}
const TMSelector & trackSelector(void) const
returns a track selector.
double maxDistance(void) const
returns max. distance required for stereo hits.
unsigned nSuperLayers(void) const
returns min. # of super layers required.
double maxImpact(void) const
returns max. impact(2D) required.
unsigned nLinks(void) const
returns min. # of hits(TMLinks) requried.
double maxSigma(void) const
returns max. sigma for each TMLink.
unsigned nLinksStereo(void) const
returns min. # of stereo hits(TMLinks) requried.
double minPt(void) const
returns min. pt required.

◆ ~TFastFinder() [1/2]

TFastFinder::~TFastFinder ( )
virtual

Destructor.

Definition at line 31 of file TFastFinder.cxx.

31 {
32}

◆ TFastFinder() [2/2]

TFastFinder::TFastFinder ( )

Constructor.

◆ ~TFastFinder() [2/2]

virtual TFastFinder::~TFastFinder ( )
virtual

Destructor.

Member Function Documentation

◆ clear() [1/2]

void TFastFinder::clear ( void  )
virtual

clear internal information.

Implements TFinderBase.

Definition at line 46 of file TFastFinder.cxx.

46 {
47 _axialHits.removeAll();
48 _stereoHits.removeAll();
49 HepAListDeleteAll(_axialLinks);
50 HepAListDeleteAll(_stereoLinks);
51}

◆ clear() [2/2]

void TFastFinder::clear ( void  )
virtual

clear internal information.

Implements TFinderBase.

◆ doit() [1/2]

int TFastFinder::doit ( const AList< TMDCWireHit > &  axialHits,
const AList< TMDCWireHit > &  stereoHits,
AList< TTrack > &  tracks 
)

finds tracks.

Definition at line 54 of file TFastFinder.cxx.

56 {
57
58 //...Select good hits...
59 selectHits2(axialHits, stereoHits);
60
61 //...Conformal transformation with IP constraint...
63 _axialHits,
64 _axialLinks);
66 _stereoHits,
67 _stereoLinks);
68
69 //...Make a histogram...
70 THistogram hist(288);
71 hist.fillX(_axialLinks);
72 AList<TSegment0> clusters = hist.clusters0();
73
74 //...Cluster loop...
75 unsigned n = clusters.length();
76 for (unsigned i = 0; i < n; i++) {
77
78 //...2D track...
79 TTrack * t = _builder.buildRphi(clusters[i]->links());
80 if (t == NULL) continue;
81#ifdef TRKRECO_DEBUG_DETAIL
82 std::cout << "TFastFinder::doit ... 2D track found" << std::endl;
83#endif
84
85 //...Make it 3D...
86 TTrack * ts = t;
87 ts = _builder.buildStereo(* t,
88 findCloseHits(_stereoLinks,
89 * t));
90 if (ts == NULL) continue;
91#ifdef TRKRECO_DEBUG_DETAIL
92 std::cout << "TFastFinder::doit ... 3D track found" << std::endl;
93#endif
94
95 //...OK...
96 t->assign(WireHitFastFinder);
97 t->finder(TrackFastFinder);
98// t->assign(WireHitFastFinder, TrackFastFinder);
99 tracks.append(t);
100 _stereoLinks.remove(t->links());
101 }
102
103 //...Termination...
104 HepAListDeleteAll(clusters);
105 return 0;
106}
const Int_t n
const HepPoint3D ORIGIN
Constants.
Definition: TMDCUtil.cxx:47
TTrack * buildRphi(const AList< TMLink > &) const
builds a r/phi track from TMLinks or from Segments.
Definition: TBuilder0.cxx:83
virtual TTrack * buildStereo(TTrack &track, const AList< TMLink > &) const
appends stereo hits to a track.
Definition: TBuilder0.cxx:535
static void conformalTransformationRphi(const HepPoint3D &center, const AList< TMDCWireHit > &hits, AList< TMLink > &links)
transforms hits into a conformal plane. 'center' is a center of the transformation....
A class for a histogram used in tracking.
A class to represent a track in tracking.
int t()
Definition: t.c:1

◆ doit() [2/2]

int TFastFinder::doit ( const AList< TMDCWireHit > &  axialHits,
const AList< TMDCWireHit > &  stereoHits,
AList< TTrack > &  tracks 
)

finds tracks.

◆ dump() [1/2]

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

dumps debug information.

Reimplemented from TFinderBase.

Definition at line 40 of file TFastFinder.cxx.

40 {
41 std::cout << pre;
43}
virtual void dump(const std::string &message=std::string(""), const std::string &prefix=std::string("")) const
dumps debug information.
Definition: TFinderBase.cxx:23

◆ dump() [2/2]

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

dumps debug information.

Reimplemented from TFinderBase.

◆ name() [1/2]

std::string TFastFinder::name ( void  ) const
inlinevirtual

returns name.

Implements TFinderBase.

Definition at line 95 of file InstallArea/include/TrkReco/TrkReco/TFastFinder.h.

95 {
96 return "Fast Finder";
97}

◆ name() [2/2]

std::string TFastFinder::name ( void  ) const
virtual

returns name.

Implements TFinderBase.

◆ version() [1/2]

std::string TFastFinder::version ( void  ) const
virtual

returns version.

Implements TFinderBase.

Definition at line 35 of file TFastFinder.cxx.

35 {
36 return "0.00";
37}

◆ version() [2/2]

std::string TFastFinder::version ( void  ) const
virtual

returns version.

Implements TFinderBase.


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