![]() |
AliRoot Core
v5-06-30 (35d6c57)
|
Standard class for the MUON track reconstruction. More...
#include <AliMUONTrackReconstructor.h>
Protected Member Functions | |
virtual Bool_t | MakeTrackCandidates (AliMUONVClusterStore &clusterStore) |
Make track candidates from clusters in stations(1..) 4 and 5. More... | |
virtual Bool_t | MakeMoreTrackCandidates (AliMUONVClusterStore &clusterStore) |
Make extra track candidates from clusters in stations(1..) 4 and 5. More... | |
virtual Bool_t | FollowTracks (AliMUONVClusterStore &clusterStore) |
Follow tracks in stations(1..) 3, 2 and 1. More... | |
virtual Bool_t | ComplementTracks (const AliMUONVClusterStore &clusterStore) |
Complement the reconstructed tracks. More... | |
virtual void | ImproveTrack (AliMUONTrack &track) |
Improve the given reconstructed track. More... | |
virtual Bool_t | FinalizeTrack (AliMUONTrack &track) |
Finalize the given track. More... | |
![]() | |
AliMUONVTrackReconstructor (const AliMUONVTrackReconstructor &rhs) | |
copy constructor More... | |
AliMUONVTrackReconstructor & | operator= (const AliMUONVTrackReconstructor &rhs) |
assignment operator More... | |
void | ImproveTracks () |
void | Finalize () |
void | DiscardMonoCathodClusters () |
void | ChangeMonoCathodClusterRes (AliMUONTrack &track) |
Bool_t | IsAcceptable (AliMUONTrackParam &trackParam) |
TClonesArray * | MakeSegmentsBetweenChambers (const AliMUONVClusterStore &clusterStore, Int_t ch1, Int_t ch2) |
void | RemoveUsedSegments (TClonesArray &segments) |
void | RemoveIdenticalTracks () |
void | RemoveDoubleTracks () |
void | RemoveBadTracks () |
void | RemoveConnectedTracks (Int_t stMin, Int_t stMax, Bool_t all) |
void | TagConnectedTracks (Int_t stMin, Int_t stMax, Bool_t all) |
void | AskForNewClustersInStation (const AliMUONTrackParam &trackParam, AliMUONVClusterStore &clusterStore, Int_t station) |
void | AskForNewClustersInChamber (const AliMUONTrackParam &trackParam, AliMUONVClusterStore &clusterStore, Int_t chamber) |
Double_t | TryOneCluster (const AliMUONTrackParam &trackParam, AliMUONVCluster *cluster, AliMUONTrackParam &trackParamAtCluster, Bool_t updatePropagator=kFALSE) |
Bool_t | TryOneClusterFast (const AliMUONTrackParam &trackParam, const AliMUONVCluster *cluster) |
Double_t | TryTwoClustersFast (const AliMUONTrackParam &trackParamAtCluster1, AliMUONVCluster *cluster2, AliMUONTrackParam &trackParamAtCluster2) |
Bool_t | FollowLinearTrackInChamber (AliMUONTrack &trackCandidate, const AliMUONVClusterStore &clusterStore, Int_t nextChamber) |
Bool_t | FollowLinearTrackInStation (AliMUONTrack &trackCandidate, const AliMUONVClusterStore &clusterStore, Int_t nextStation) |
Private Member Functions | |
AliMUONTrackReconstructor (const AliMUONTrackReconstructor &rhs) | |
Not implemented copy constructor. More... | |
AliMUONTrackReconstructor & | operator= (const AliMUONTrackReconstructor &rhs) |
Not implemented copy assignment operator. More... | |
Bool_t | FollowTrackInChamber (AliMUONTrack &trackCandidate, AliMUONVClusterStore &clusterStore, Int_t nextChamber) |
Bool_t | FollowTrackInStation (AliMUONTrack &trackCandidate, AliMUONVClusterStore &clusterStore, Int_t nextStation) |
Double_t | TryTwoClusters (const AliMUONTrackParam &trackParamAtCluster, AliMUONVCluster *cluster2, AliMUONTrackParam &trackParamAtCluster2) |
void | UpdateTrack (AliMUONTrack &track, AliMUONTrackParam &trackParamAtCluster) |
void | UpdateTrack (AliMUONTrack &track, AliMUONTrackParam &trackParamAtCluster1, AliMUONTrackParam &trackParamAtCluster2) |
Bool_t | RecoverTrack (AliMUONTrack &track, AliMUONVClusterStore &clusterStore, Int_t nextStation) |
void | SetVertexErrXY2ForFit (AliMUONTrack &trackCandidate) |
void | Fit (AliMUONTrack &track, Bool_t includeMCS, Bool_t fitWithVertex, Bool_t calcCov) |
Additional Inherited Members | |
![]() | |
TClonesArray * | fRecTracksPtr |
pointer to array of reconstructed tracks More... | |
Int_t | fNRecTracks |
number of reconstructed tracks More... | |
AliMUONVClusterServer * | fClusterServer |
reference to our cluster server More... | |
const AliMUONRecoParam * | fkRecoParam |
reference to reco parameters More... | |
const AliMUONGeometryTransformer * | fkTransformer |
! geometry transformer (not owner) More... | |
Double_t * | fMaxMCSAngle2 |
maximum angle dispersion due to MCS More... | |
Standard class for the MUON track reconstruction.
MUON track reconstructor using the original method
This class contains as data:
It contains as methods, among others:
Definition at line 20 of file AliMUONTrackReconstructor.h.
AliMUONTrackReconstructor::AliMUONTrackReconstructor | ( | const AliMUONRecoParam * | recoParam, |
AliMUONVClusterServer * | clusterServer, | ||
const AliMUONGeometryTransformer * | transformer | ||
) |
Constructor
Definition at line 61 of file AliMUONTrackReconstructor.cxx.
|
virtual |
Destructor
Definition at line 69 of file AliMUONTrackReconstructor.cxx.
|
private |
Not implemented copy constructor.
|
protectedvirtual |
Complement the reconstructed tracks.
Complete tracks by adding missing clusters (if there is an overlap between two detection elements, the track may have two clusters in the same chamber). Re-fit track parameters and covariances. Return kTRUE if one or more tracks have been complemented.
Implements AliMUONVTrackReconstructor.
Definition at line 1311 of file AliMUONTrackReconstructor.cxx.
Referenced by FollowTracks().
|
protectedvirtual |
Finalize the given track.
Recompute track parameters and covariances at each attached cluster from those at the first one, if not already done
Implements AliMUONVTrackReconstructor.
Definition at line 1477 of file AliMUONTrackReconstructor.cxx.
Referenced by RefitTrack().
|
private |
Fit the track w/wo multiple Coulomb scattering according to "includeMCS". w/wo constraining the vertex according to "fitWithVertex". calculating or not the covariance matrix according to "calcCov".
Definition at line 1168 of file AliMUONTrackReconstructor.cxx.
Referenced by ComplementTracks(), FollowTracks(), ImproveTrack(), RecoverTrack(), and RefitTrack().
|
private |
Follow trackCandidate in chamber(0..) nextChamber and search for compatible cluster(s) Keep all possibilities or only the best one(s) according to the flag fgkTrackAllTracks: kTRUE: duplicate "trackCandidate" if there are several possibilities and add the new tracks at the end of fRecTracksPtr to avoid conficts with other track candidates at this current stage of the tracking procedure. Remove the obsolete "trackCandidate" at the end. kFALSE: add only the best cluster(s) to the "trackCandidate". Try to add a couple of clusters in priority.
Definition at line 455 of file AliMUONTrackReconstructor.cxx.
|
private |
Follow trackCandidate in station(0..) nextStation and search for compatible cluster(s) Keep all possibilities or only the best one(s) according to the flag fgkTrackAllTracks: kTRUE: duplicate "trackCandidate" if there are several possibilities and add the new tracks at the end of fRecTracksPtr to avoid conficts with other track candidates at this current stage of the tracking procedure. Remove the obsolete "trackCandidate" at the end. kFALSE: add only the best cluster(s) to the "trackCandidate". Try to add a couple of clusters in priority.
Definition at line 593 of file AliMUONTrackReconstructor.cxx.
Referenced by FollowTracks(), MakeTrackCandidates(), and RecoverTrack().
|
protectedvirtual |
Follow tracks in stations(1..) 3, 2 and 1.
Follow tracks in stations(1..) 3, 2 and 1
Implements AliMUONVTrackReconstructor.
Definition at line 232 of file AliMUONTrackReconstructor.cxx.
|
protectedvirtual |
Improve the given reconstructed track.
Improve the given track by removing clusters with local chi2 highter than the defined cut Recompute track parameters and covariances at the remaining clusters
Implements AliMUONVTrackReconstructor.
Definition at line 1403 of file AliMUONTrackReconstructor.cxx.
Referenced by RefitTrack().
|
protectedvirtual |
Make extra track candidates from clusters in stations(1..) 4 and 5.
To make extra track candidates (assuming linear propagation if the flag fgkMakeTrackCandidatesFast is set to kTRUE): clustering is supposed to be already done Start with segments made of 1 cluster in each of the stations 4 and 5 then follow track in remaining chambers. Good candidates are made of at least three clusters if both station are requested (two otherwise). Keep only best candidates or all of them according to the flag fgkTrackAllTracks.
Remove segments already attached to a track
Implements AliMUONVTrackReconstructor.
Definition at line 156 of file AliMUONTrackReconstructor.cxx.
|
protectedvirtual |
Make track candidates from clusters in stations(1..) 4 and 5.
To make track candidates (assuming linear propagation if the flag fgkMakeTrackCandidatesFast is set to kTRUE): Start with segments station(1..) 4 or 5 then follow track in station 5 or 4. Good candidates are made of at least three clusters. Keep only best candidates or all of them according to the flag fgkTrackAllTracks.
Implements AliMUONVTrackReconstructor.
Definition at line 75 of file AliMUONTrackReconstructor.cxx.
|
private |
Not implemented copy assignment operator.
|
private |
Try to recover the track candidate in the next station by removing the worst of the two clusters attached in the current station Return kTRUE if recovering succeeds
Definition at line 1079 of file AliMUONTrackReconstructor.cxx.
Referenced by FollowTracks().
|
virtual |
Re-fit the given track.
re-fit the given track
Implements AliMUONVTrackReconstructor.
Definition at line 1490 of file AliMUONTrackReconstructor.cxx.
|
private |
Compute the vertex resolution square from natural vertex dispersion and multiple scattering effets according to trackCandidate path in absorber It is necessary to account for multiple scattering effects here instead of during the fit of the "trackCandidate" to do not influence the result by changing track resolution at vertex
Definition at line 1137 of file AliMUONTrackReconstructor.cxx.
Referenced by Fit().
|
private |
Test the compatibility between the track and the 2 clusters together (using trackParam's covariance matrix): return the corresponding Chi2 accounting for covariances between the 2 clusters return trackParamAtCluster1 & 2
Definition at line 914 of file AliMUONTrackReconstructor.cxx.
Referenced by FollowTrackInStation().
|
private |
Add 1 cluster to the track candidate Update chi2 of the track
Definition at line 1015 of file AliMUONTrackReconstructor.cxx.
Referenced by FollowTrackInChamber(), and FollowTrackInStation().
|
private |
Add 2 clusters to the track candidate Update track and local chi2
Definition at line 1042 of file AliMUONTrackReconstructor.cxx.