EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FwdHoughTree Class Reference

#include <EicRoot/blob/master/eic/htree/FwdHoughTree.h>

+ Inheritance diagram for FwdHoughTree:
+ Collaboration diagram for FwdHoughTree:

Public Member Functions

 FwdHoughTree (FwdTrackFinder *tf)
 
double GetBzAtIP ()
 
void MappingCall (const double par[], t_hough_range id[])
 
MatchCandidateAllocateMatchCandidate ()
 
void ResolveAmbiguitiesNg (MatchCandidate *match)
 
void FinalFit (MatchCandidate *match)
 
TrKalmanNodeGetKfNode (MatchCandidate *match, unsigned gr, unsigned mm)
 
HoughNodeGroupAllocateNodeGroup (unsigned id)
 
FwdHoughNodeGroupAddNodeGroup (TrKalmanNodeLocation *location, unsigned id, unsigned cdim, const double min[], const double max[], const double gra[])
 
FwdHoughNodeGroupAddNodeGroup (TrKalmanNodeLocation *location, unsigned tmpl, bool cylindricalPreference, const std::set< double > &xMin, const std::set< double > &xMax, const std::set< double > &yMin, const std::set< double > &yMax, const std::set< double > &rMin, const std::set< double > &rMax)
 
FwdHoughNodeGroupGetNodeGroup (unsigned gr)
 
void SetupTrackQualityIteration (unsigned qua)
 
- Public Member Functions inherited from HoughTree
 HoughTree ()
 
 ~HoughTree ()
 
int AddDimension (const char *name, double min, double max)
 
int AddResolutionLevel (const unsigned div[])
 
HoughNodeGroupAddNodeGroup (unsigned id, unsigned cdim, const double min[], const double max[], const double gra[])
 
unsigned GetGdim () const
 
unsigned LaunchPatternFinder ()
 
void SetVerbosityLevel (unsigned level)
 
unsigned GetVerbosityLevel () const
 
unsigned GetDdim () const
 
const HoughDimensionGetDimension (unsigned id) const
 
int SetBlindCellDecisionLevel (unsigned level)
 
int SetOkHitCounterLimits (unsigned min, unsigned max)
 
int SetBorrowedHitCounterLimit (unsigned max)
 
int SetBorrowedPlusMissingHitCounterLimit (unsigned max)
 
unsigned GetGroupCount () const
 
HoughNodeGroupGetGroup (unsigned gr) const
 
unsigned GetLdim () const
 
ResolutionLevelGetLevel (unsigned lv) const
 
unsigned GetLinearMatchCandidateCount () const
 
MatchCandidateGetMatchCandidate (unsigned tc)
 
int AllocateLookUpTable ()
 
void SetFastTreeSearchMode (unsigned qualityItrNum)
 

Private Member Functions

bool SetupKalmanFilter (MatchCandidate *match)
 
 ClassDef (FwdHoughTree, 3)
 

Private Attributes

double mBzAtIP
 
FwdTrackFindermTrackFinder
 
bool mAmbiguityResolutionViaWorstHit
 

Additional Inherited Members

- Protected Attributes inherited from HoughTree
std::vector< HoughNodeGroup * > mGroups
 
unsigned mCurrMinOkHitCounter
 
bool mFastTreeSearchMode
 
unsigned mTrackQualityIterationNum
 
unsigned mMatchCandidateCount
 
std::vector< MatchCandidate * > mMatchCandidates
 

Detailed Description

Definition at line 24 of file FwdHoughTree.h.

View newest version in sPHENIX GitHub at line 24 of file FwdHoughTree.h

Constructor & Destructor Documentation

FwdHoughTree::FwdHoughTree ( FwdTrackFinder tf)
inline

Definition at line 27 of file FwdHoughTree.h.

View newest version in sPHENIX GitHub at line 27 of file FwdHoughTree.h

Member Function Documentation

FwdHoughNodeGroup * FwdHoughTree::AddNodeGroup ( TrKalmanNodeLocation location,
unsigned  id,
unsigned  cdim,
const double  min[],
const double  max[],
const double  gra[] 
)

Definition at line 125 of file FwdHoughTree.cxx.

View newest version in sPHENIX GitHub at line 125 of file FwdHoughTree.cxx

References HoughTree::AddNodeGroup(), and FwdHoughNodeGroup::SetLocation().

Referenced by AddNodeGroup(), and FwdTrackFinder::Init().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

FwdHoughNodeGroup * FwdHoughTree::AddNodeGroup ( TrKalmanNodeLocation location,
unsigned  tmpl,
bool  cylindricalPreference,
const std::set< double > &  xMin,
const std::set< double > &  xMax,
const std::set< double > &  yMin,
const std::set< double > &  yMax,
const std::set< double > &  rMin,
const std::set< double > &  rMax 
)
MatchCandidate* FwdHoughTree::AllocateMatchCandidate ( )
inlinevirtual

Implements HoughTree.

Definition at line 35 of file FwdHoughTree.h.

View newest version in sPHENIX GitHub at line 35 of file FwdHoughTree.h

HoughNodeGroup* FwdHoughTree::AllocateNodeGroup ( unsigned  id)
inlinevirtual

Reimplemented from HoughTree.

Definition at line 44 of file FwdHoughTree.h.

View newest version in sPHENIX GitHub at line 44 of file FwdHoughTree.h

FwdHoughTree::ClassDef ( FwdHoughTree  ,
 
)
private
void FwdHoughTree::FinalFit ( MatchCandidate match)
virtual

Implements HoughTree.

Definition at line 992 of file FwdHoughTree.cxx.

View newest version in sPHENIX GitHub at line 992 of file FwdHoughTree.cxx

References EicDetectorGroup::_fMCPoints, _TRUST_FILTER_FCN_, FwdTrackFinder::ccdf, KalmanFilter::Forward, KalmanFilter::FullChain(), MatchCandidate::GetAliveGroupCount(), MatchCandidate::GetAliveMemberCount(), KalmanNode::GetCS(), TrKalmanFilter::GetFieldMode(), KalmanFilter::GetFilterChiSquare(), KalmanFilter::GetFilterChiSquareCCDF(), KalmanFilter::GetFilterNdf(), KalmanFilter::GetHead(), TrKalmanNode::GetInversedMomentum(), EicHtcTask::GetKalmanFilter(), KalmanNodeWrapper::GetKfNode(), SensitiveVolume::GetKfNodeWrapper(), MatchCandidate::GetLinearMemberCount(), KalmanNode::GetMdim(), KalmanFilter::GetMinFilterChiSquareCCDF(), MatchCandidate::GetSelMember(), EicDetectorGroup::GetSensitiveVolume(), KalmanNode::GetSmootherChiSquare(), KalmanFilter::GetTail(), FairMCPoint::GetTrackID(), KalmanNode::GetX0(), KalmanNode::GetXs(), TrKalmanNode::GetZ(), TrKalmanNode::HasHit(), GroupMember::IsBooked(), GroupMember::IsBusy(), KalmanNode::IsFired(), HoughTree::mCurrMinOkHitCounter, HoughTree::mGroups, GroupMember::mPtr, mTrackFinder, printf(), MatchCandidate::ResetMemberPtr(), FwdMatchCandidate::SetAmbiguityFlag(), FwdMatchCandidate::SetFilterChiSquare(), MatchCandidate::SetInactive(), FwdMatchCandidate::SetMcTrackId(), SetupKalmanFilter(), FwdMatchCandidate::SetVtxCoord(), FwdMatchCandidate::SetVtxCoordSigma(), FwdMatchCandidate::SetVtxMomentum(), FwdMatchCandidate::SetVtxSlopeSigma(), FwdMatchCandidate::SetWrongHitCount(), FwdTrackFinder::UpdateVtxNode(), WithField, and FwdTrackFinder::WithMagneticField().

+ Here is the call graph for this function:

double FwdHoughTree::GetBzAtIP ( )

Definition at line 23 of file FwdHoughTree.cxx.

View newest version in sPHENIX GitHub at line 23 of file FwdHoughTree.cxx

References exit(), FairRunAna::GetField(), FairRunAna::Instance(), mBzAtIP, and printf().

Referenced by MappingCall().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TrKalmanNode * FwdHoughTree::GetKfNode ( MatchCandidate match,
unsigned  gr,
unsigned  mm 
)

Definition at line 796 of file FwdHoughTree.cxx.

View newest version in sPHENIX GitHub at line 796 of file FwdHoughTree.cxx

References KalmanNodeWrapper::GetKfNode(), SensitiveVolume::GetKfNodeWrapper(), MatchCandidate::GetSelMember(), EicDetectorGroup::GetSensitiveVolume(), and GroupMember::mPtr.

Referenced by ResolveAmbiguitiesNg().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

FwdHoughNodeGroup* FwdHoughTree::GetNodeGroup ( unsigned  gr)
inline

Definition at line 54 of file FwdHoughTree.h.

View newest version in sPHENIX GitHub at line 54 of file FwdHoughTree.h

References HoughTree::mGroups.

Referenced by MappingCall().

+ Here is the caller graph for this function:

void FwdHoughTree::MappingCall ( const double  par[],
t_hough_range  id[] 
)
virtual
bool FwdHoughTree::SetupKalmanFilter ( MatchCandidate match)
private

Definition at line 241 of file FwdHoughTree.cxx.

View newest version in sPHENIX GitHub at line 241 of file FwdHoughTree.cxx

References EicDetectorGroup::_fMCPoints, _USE_00_, KalmanNodeWrapper::AllocateNewKfNode(), TrKalmanFilter::BuildNodeList(), MatchCandidate::GetAliveMemberCount(), ResolutionLevel::GetCellSize(), HoughTree::GetDdim(), HoughTree::GetDimension(), KalmanFilter::GetHead(), MatchCandidate::GetIdPtr(), EicHtcTask::GetKalmanFilter(), KalmanNodeWrapper::GetKfNode(), SensitiveVolume::GetKfNodeWrapper(), HoughTree::GetLdim(), HoughTree::GetLevel(), MatchCandidate::GetLinearMemberCount(), EicKfNodeTemplate::GetMeasurementNoise(), FwdTrackFinder::GetMeasurementNoiseInflationFactor(), HoughDimension::GetMin(), MatchCandidate::GetSelMember(), EicDetectorGroup::GetSensitiveVolume(), FairMCPoint::GetTrackID(), KalmanFilter::HackGroupHitCountLimit(), TrKalmanNode::InflateMeasurementNoise(), KalmanNode::IsFired(), KalmanFilter::LatchGroupNdfControlFlags(), HoughTree::mCurrMinOkHitCounter, EicDetectorGroup::mDigi, HoughTree::mGroups, EicTrackingDigiHitProducer::mKfNodeTemplates, Acts::UnitConstants::mm, GroupMember::mMatchCandidates, EicHtcTask::mParticleHypothesis, EicHtcTask::mParticleMomentumSeed, GroupMember::mPtr, mTrackFinder, KalmanFilter::ResetFiredFlags(), MatchCandidate::ResetMemberPtr(), FwdTrackFinder::ResetVtxNode(), TrKalmanFilter::SelectActiveNodes(), KalmanNode::SetFiredFlag(), TrKalmanNode::SetHit(), TrKalmanNode::SetMeasurementNoise(), TrKalmanNode::SetMomentum(), and TrKalmanFilter::SetParticleGroup().

Referenced by FinalFit(), and ResolveAmbiguitiesNg().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void FwdHoughTree::SetupTrackQualityIteration ( unsigned  qua)
virtual

Implements HoughTree.

Definition at line 973 of file FwdHoughTree.cxx.

View newest version in sPHENIX GitHub at line 973 of file FwdHoughTree.cxx

References EicHtcTask::GetKalmanFilter(), FwdTrackFinder::GetStoredMinFilterChiSquareCCDF(), HoughTree::mFastTreeSearchMode, mTrackFinder, HoughTree::mTrackQualityIterationNum, and KalmanFilter::SetMinFilterChiSquareCCDF().

+ Here is the call graph for this function:

Member Data Documentation

bool FwdHoughTree::mAmbiguityResolutionViaWorstHit
private

Definition at line 73 of file FwdHoughTree.h.

View newest version in sPHENIX GitHub at line 73 of file FwdHoughTree.h

Referenced by ResolveAmbiguitiesNg().

double FwdHoughTree::mBzAtIP
private

Definition at line 68 of file FwdHoughTree.h.

View newest version in sPHENIX GitHub at line 68 of file FwdHoughTree.h

Referenced by GetBzAtIP().

FwdTrackFinder* FwdHoughTree::mTrackFinder
private

Definition at line 71 of file FwdHoughTree.h.

View newest version in sPHENIX GitHub at line 71 of file FwdHoughTree.h

Referenced by AddNodeGroup(), FinalFit(), MappingCall(), ResolveAmbiguitiesNg(), SetupKalmanFilter(), and SetupTrackQualityIteration().


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