![]() |
AliRoot Core
edcc906 (edcc906)
|
Steer EMCal-Track matching. More...
#include <AliEMCALTracker.h>
Classes | |
class | AliEMCALMatchCluster |
Public Types | |
enum | { kUnmatched = -99999 } |
Public Member Functions | |
AliEMCALTracker () | |
AliEMCALTracker (const AliEMCALTracker &t) | |
AliEMCALTracker & | operator= (const AliEMCALTracker &source) |
virtual | ~AliEMCALTracker () |
virtual void | Clear (Option_t *option="ALL") |
virtual Int_t | Clusters2Tracks (AliESDEvent *) |
void | InitParameters () |
virtual Int_t | LoadClusters (TTree *) |
Int_t | LoadClusters (AliESDEvent *esd) |
Int_t | LoadTracks (AliESDEvent *esd) |
virtual Int_t | PropagateBack (AliESDEvent *esd) |
virtual Int_t | RefitInward (AliESDEvent *) |
virtual void | UnloadClusters () |
virtual AliCluster * | GetCluster (Int_t) const |
void | SetCutEta (Double_t value) |
void | SetCutPhi (Double_t value) |
void | SetCutPt (Double_t value) |
void | SetCutNITS (Double_t value) |
void | SetCutNTPC (Double_t value) |
void | SetTrackInITS (Bool_t value) |
void | SetStepLength (Float_t length) |
void | SetTrackCorrectionMode (Option_t *option) |
void | SetEMCalSurfaceDistance (Double_t d) |
void | SetGeometry (AliEMCALGeometry *geom) |
![]() | |
AliTracker () | |
virtual | ~AliTracker () |
virtual Int_t | Clusters2TracksHLT (AliESDEvent *event, const AliESDEvent *) |
virtual Int_t | PostProcess (AliESDEvent *) |
virtual void | FillClusterArray (TObjArray *array) const |
virtual AliPlaneEff * | GetPlaneEff () |
virtual Bool_t | GetTrackPoint (Int_t, AliTrackPoint &) const |
virtual Bool_t | GetTrackPointTrackingError (Int_t, AliTrackPoint &, const AliESDtrack *) |
virtual void | UseClusters (const AliKalmanTrack *t, Int_t from=0) const |
virtual void | CookLabel (AliKalmanTrack *t, Float_t wrong) const |
void | SetEventInfo (AliEventInfo *evInfo) |
const AliEventInfo * | GetEventInfo () const |
virtual Bool_t | OwnsESDObjects () const |
virtual void | CleanESDFriendsObjects (AliESDEvent *) |
virtual void | CleanESDObjects (AliESDEvent *) |
virtual void | CleanESDTracksObjects (TObjArray *trList) |
Int_t | GetNumberOfClusters () const |
![]() | |
AliTrackerBase () | |
virtual | ~AliTrackerBase () |
void | SetVertex (const Double_t *xyz, const Double_t *ers=0) |
Double_t | GetX () const |
Double_t | GetY () const |
Double_t | GetZ () const |
Double_t | GetSigmaX () const |
Double_t | GetSigmaY () const |
Double_t | GetSigmaZ () const |
UInt_t | GetTimeStamp () const |
Int_t | GetRunNumber () const |
void | SetTimeStamp (UInt_t t) |
void | SetRunNumber (int run) |
Private Types | |
enum | ETrackCorr { kTrackCorrNone = 0, kTrackCorrMMB = 1 } |
Private Member Functions | |
Int_t | FindMatchedCluster (AliESDtrack *track) |
Private Attributes | |
Double_t | fCutPt |
Minimum pT cut on tracks. More... | |
Double_t | fCutNITS |
Minimum number of track hits in the ITS. More... | |
Double_t | fCutNTPC |
Minimum number of track hits in the TPC. More... | |
Float_t | fStep |
Length of each step in propagation. More... | |
ETrackCorr | fTrackCorrMode |
Material budget correction mode. More... | |
Float_t | fEMCalSurfaceDistance |
EMCal surface distance. More... | |
Double_t | fClusterWindow |
Select clusters in the window to be matched to tracks. More... | |
Double_t | fCutEta |
cut on eta difference More... | |
Double_t | fCutPhi |
cut on phi difference More... | |
Bool_t | fITSTrackSA |
If no TPC, use ITS Tracks. More... | |
Bool_t | fTrackInITS |
Requiere ITS refit with AliVTrack::kITSout. More... | |
TObjArray * | fTracks |
! Collection of tracks More... | |
TObjArray * | fClusters |
! Collection of EMCAL clusters (ESDCaloCluster or EMCALRecPoint) More... | |
AliEMCALGeometry * | fGeom |
! EMCAL geometry More... | |
Additional Inherited Members | |
![]() | |
static void | FillResiduals (const AliExternalTrackParam *t, Double_t *p, Double_t *cov, UShort_t id, Bool_t updated=kTRUE) |
static void | FillResiduals (const AliExternalTrackParam *t, const AliCluster *c, Bool_t updated=kTRUE) |
static void | SetFillResiduals (AliRecoParam::EventSpecie_t es, Bool_t flag=kTRUE) |
static void | SetResidualsArray (TObjArray **arr) |
static TObjArray ** | GetResidualsArray () |
![]() | |
static Double_t | GetTrackPredictedChi2 (AliExternalTrackParam *track, Double_t mass, Double_t step, const AliExternalTrackParam *backup) |
static void | UpdateTrack (AliExternalTrackParam &, const AliExternalTrackParam &) |
static Double_t | MeanMaterialBudget (const Double_t *start, const Double_t *end, Double_t *mparam) |
static Bool_t | PropagateTrackTo (AliExternalTrackParam *track, Double_t x, Double_t m, Double_t maxStep, Bool_t rotateTo=kTRUE, Double_t maxSnp=0.8, Int_t sign=0, Bool_t addTimeStep=kFALSE, Bool_t correctMaterialBudget=kTRUE) |
static Int_t | PropagateTrackTo2 (AliExternalTrackParam *track, Double_t x, Double_t m, Double_t maxStep, Bool_t rotateTo=kTRUE, Double_t maxSnp=0.8, Int_t sign=0, Bool_t addTimeStep=kFALSE, Bool_t correctMaterialBudget=kTRUE) |
static Bool_t | PropagateTrackToBxByBz (AliExternalTrackParam *track, Double_t x, Double_t m, Double_t maxStep, Bool_t rotateTo=kTRUE, Double_t maxSnp=0.8, Int_t sign=0, Bool_t addTimeStep=kFALSE, Bool_t correctMaterialBudget=kTRUE) |
static Bool_t | PropagateTrackParamOnlyToBxByBz (AliExternalTrackParam *track, Double_t xToGo, Double_t maxStep, Bool_t rotateTo=kTRUE, Double_t maxSnp=0.8) |
static Bool_t | PropagateTrackParamOnlyTo (AliExternalTrackParam *track, Double_t xToGo, Double_t maxStep, Bool_t rotateTo=kTRUE, Double_t maxSnp=0.8) |
static Double_t | GetBz (const Double_t *r) |
static void | GetBxByBz (const Double_t r[3], Double_t b[3]) |
static Double_t | GetBz () |
static Bool_t | UniformField () |
static Double_t | MakeC (Double_t x1, Double_t y1, Double_t x2, Double_t y2, Double_t x3, Double_t y3) |
static Double_t | MakeSnp (Double_t x1, Double_t y1, Double_t x2, Double_t y2, Double_t x3, Double_t y3) |
static Double_t | MakeTgl (Double_t x1, Double_t y1, Double_t x2, Double_t y2, Double_t z1, Double_t z2) |
static Double_t | MakeTgl (Double_t x1, Double_t y1, Double_t x2, Double_t y2, Double_t z1, Double_t z2, Double_t c) |
static AliExternalTrackParam * | MakeSeed (AliTrackPoint &point0, AliTrackPoint &point1, AliTrackPoint &point2) |
static Double_t | FitTrack (AliExternalTrackParam *trackParam, AliTrackPointArray *pointArray, Double_t mass, Double_t maxStep) |
![]() | |
AliTracker (const AliTracker &atr) | |
![]() | |
AliTrackerBase (const AliTrackerBase &atr) | |
![]() | |
Int_t | fNClusters |
pointer to the event info object More... | |
Steer EMCal-Track matching.
Implementation of the track matching method between barrel tracks and EMCAL clusters. Besides algorithm implementation, some cuts are required to be set in order to define, for each track, an acceptance window where clusters are searched to find best match (if any). The class accepts as input an ESD container, and works directly on it, simply setting, for each of its tracks, the fEMCALindex flag, for each track which is matched to a cluster. In order to use method, one must launch PropagateBack().
Definition at line 43 of file AliEMCALTracker.h.
anonymous enum |
Enumerator | |
---|---|
kUnmatched |
Definition at line 78 of file AliEMCALTracker.h.
|
private |
Enumerator | |
---|---|
kTrackCorrNone |
Do not correct for energy loss. |
kTrackCorrMMB |
Use MeanMaterialBudget() function to evaluate correction. |
Definition at line 108 of file AliEMCALTracker.h.
AliEMCALTracker::AliEMCALTracker | ( | ) |
Default constructor. Initializes all simple data members to default values, and all collections to NULL. Output file name is set to a default value.
Definition at line 56 of file AliEMCALTracker.cxx.
Referenced by operator=().
AliEMCALTracker::AliEMCALTracker | ( | const AliEMCALTracker & | copy | ) |
Copy constructor. Besides copying all parameters, duplicates all collections.
Definition at line 81 of file AliEMCALTracker.cxx.
|
inlinevirtual |
Definition at line 49 of file AliEMCALTracker.h.
|
virtual |
Clearing method. Deletes all objects in arrays and the arrays themselves.
Definition at line 141 of file AliEMCALTracker.cxx.
Referenced by LoadClusters(), LoadTracks(), UnloadClusters(), and ~AliEMCALTracker().
|
inlinevirtual |
Implements AliTracker.
Definition at line 53 of file AliEMCALTracker.h.
|
private |
For each track, extrapolate it to all the clusters. Find the closest one as matched if the residuals (dEta, dPhi) satisfy the cuts.
Definition at line 416 of file AliEMCALTracker.cxx.
Referenced by PropagateBack().
|
inlinevirtual |
Implements AliTracker.
Definition at line 64 of file AliEMCALTracker.h.
void AliEMCALTracker::InitParameters | ( | ) |
Retrieve initialization parameters.
Definition at line 116 of file AliEMCALTracker.cxx.
Referenced by AliEMCALTracker(), and Clusters2Tracks().
|
virtual |
Load EMCAL clusters in the form of AliEMCALRecPoint, from simulation temporary files. (When included in reconstruction chain, this method is used automatically).
Implements AliTracker.
Definition at line 175 of file AliEMCALTracker.cxx.
Referenced by Clusters2Tracks(), and PropagateBack().
Int_t AliEMCALTracker::LoadClusters | ( | AliESDEvent * | esd | ) |
Load EMCAL clusters in the form of AliESDCaloClusters, from an AliESD object.
Definition at line 222 of file AliEMCALTracker.cxx.
Int_t AliEMCALTracker::LoadTracks | ( | AliESDEvent * | esd | ) |
Load ESD tracks. Filter them depending on loose track and acceptance cuts.
If TPC is not present, try matching with ITS tracks only. Set the flag fITSTrackSA.
Definition at line 250 of file AliEMCALTracker.cxx.
Referenced by Clusters2Tracks(), and PropagateBack().
AliEMCALTracker & AliEMCALTracker::operator= | ( | const AliEMCALTracker & | source | ) |
Assignment operator; use copy ctor.
Definition at line 104 of file AliEMCALTracker.cxx.
|
virtual |
Main operation method. Gets external AliESD containing tracks to be matched. After executing match finding, stores in the same ESD object all infos and releases the object for further reconstruction steps.
Note: should always return 0=OK, because otherwise all tracking is aborted for this event.
Implements AliTracker.
Definition at line 369 of file AliEMCALTracker.cxx.
Referenced by Clusters2Tracks().
|
inlinevirtual |
Implements AliTracker.
Definition at line 61 of file AliEMCALTracker.h.
|
inline |
Definition at line 66 of file AliEMCALTracker.h.
|
inline |
Definition at line 69 of file AliEMCALTracker.h.
|
inline |
Definition at line 70 of file AliEMCALTracker.h.
|
inline |
Definition at line 67 of file AliEMCALTracker.h.
|
inline |
Definition at line 68 of file AliEMCALTracker.h.
|
inline |
Definition at line 75 of file AliEMCALTracker.h.
|
inline |
Definition at line 76 of file AliEMCALTracker.h.
|
inline |
Definition at line 72 of file AliEMCALTracker.h.
void AliEMCALTracker::SetTrackCorrectionMode | ( | Option_t * | option | ) |
Set track correction mode gets the choice in string format and converts into internal enum.
Definition at line 347 of file AliEMCALTracker.cxx.
Referenced by SetStepLength().
|
inline |
Definition at line 71 of file AliEMCALTracker.h.
|
virtual |
Free memory from all arrays. This method is called after the local tracking step. so we can safely delete everything.
Implements AliTracker.
Definition at line 505 of file AliEMCALTracker.cxx.
Referenced by RefitInward().
|
private |
! Collection of EMCAL clusters (ESDCaloCluster or EMCALRecPoint)
Definition at line 127 of file AliEMCALTracker.h.
Referenced by Clear(), FindMatchedCluster(), LoadClusters(), and PropagateBack().
|
private |
Select clusters in the window to be matched to tracks.
Definition at line 120 of file AliEMCALTracker.h.
Referenced by FindMatchedCluster().
|
private |
cut on eta difference
Definition at line 121 of file AliEMCALTracker.h.
Referenced by FindMatchedCluster(), InitParameters(), and SetCutEta().
|
private |
Minimum number of track hits in the ITS.
Definition at line 114 of file AliEMCALTracker.h.
Referenced by InitParameters(), and SetCutNITS().
|
private |
Minimum number of track hits in the TPC.
Definition at line 115 of file AliEMCALTracker.h.
Referenced by InitParameters(), LoadTracks(), and SetCutNTPC().
|
private |
cut on phi difference
Definition at line 122 of file AliEMCALTracker.h.
Referenced by FindMatchedCluster(), InitParameters(), and SetCutPhi().
|
private |
Minimum pT cut on tracks.
Definition at line 113 of file AliEMCALTracker.h.
Referenced by InitParameters(), LoadTracks(), and SetCutPt().
|
private |
EMCal surface distance.
Definition at line 119 of file AliEMCALTracker.h.
Referenced by FindMatchedCluster(), and SetEMCalSurfaceDistance().
|
private |
! EMCAL geometry
Definition at line 129 of file AliEMCALTracker.h.
Referenced by FindMatchedCluster(), LoadTracks(), PropagateBack(), and SetGeometry().
|
private |
If no TPC, use ITS Tracks.
Definition at line 123 of file AliEMCALTracker.h.
Referenced by FindMatchedCluster(), and LoadTracks().
|
private |
Length of each step in propagation.
Definition at line 117 of file AliEMCALTracker.h.
Referenced by FindMatchedCluster(), InitParameters(), and SetStepLength().
|
private |
Material budget correction mode.
Definition at line 118 of file AliEMCALTracker.h.
Referenced by SetTrackCorrectionMode().
|
private |
Requiere ITS refit with AliVTrack::kITSout.
Definition at line 124 of file AliEMCALTracker.h.
Referenced by InitParameters(), LoadTracks(), and SetTrackInITS().
|
private |
! Collection of tracks
Definition at line 126 of file AliEMCALTracker.h.
Referenced by Clear(), LoadTracks(), and PropagateBack().