AliRoot Core  edcc906 (edcc906)
AliEMCALTracker Class Reference

Steer EMCal-Track matching. More...

#include <AliEMCALTracker.h>

Inheritance diagram for AliEMCALTracker:

Classes

class  AliEMCALMatchCluster
 

Public Types

enum  { kUnmatched = -99999 }
 

Public Member Functions

 AliEMCALTracker ()
 
 AliEMCALTracker (const AliEMCALTracker &t)
 
AliEMCALTrackeroperator= (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 AliClusterGetCluster (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)
 
- Public Member Functions inherited from AliTracker
 AliTracker ()
 
virtual ~AliTracker ()
 
virtual Int_t Clusters2TracksHLT (AliESDEvent *event, const AliESDEvent *)
 
virtual Int_t PostProcess (AliESDEvent *)
 
virtual void FillClusterArray (TObjArray *array) const
 
virtual AliPlaneEffGetPlaneEff ()
 
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 AliEventInfoGetEventInfo () const
 
virtual Bool_t OwnsESDObjects () const
 
virtual void CleanESDFriendsObjects (AliESDEvent *)
 
virtual void CleanESDObjects (AliESDEvent *)
 
virtual void CleanESDTracksObjects (TObjArray *trList)
 
Int_t GetNumberOfClusters () const
 
- Public Member Functions inherited from AliTrackerBase
 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...
 
TObjArrayfTracks
 ! Collection of tracks More...
 
TObjArrayfClusters
 ! Collection of EMCAL clusters (ESDCaloCluster or EMCALRecPoint) More...
 
AliEMCALGeometryfGeom
 ! EMCAL geometry More...
 

Additional Inherited Members

- Static Public Member Functions inherited from AliTracker
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 Public Member Functions inherited from AliTrackerBase
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 AliExternalTrackParamMakeSeed (AliTrackPoint &point0, AliTrackPoint &point1, AliTrackPoint &point2)
 
static Double_t FitTrack (AliExternalTrackParam *trackParam, AliTrackPointArray *pointArray, Double_t mass, Double_t maxStep)
 
- Protected Member Functions inherited from AliTracker
 AliTracker (const AliTracker &atr)
 
- Protected Member Functions inherited from AliTrackerBase
 AliTrackerBase (const AliTrackerBase &atr)
 
- Protected Attributes inherited from AliTracker
Int_t fNClusters
 pointer to the event info object More...
 

Detailed Description

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().

Author
: A. Pulvirenti alber.nosp@m.to.p.nosp@m.ulvir.nosp@m.enti.nosp@m.@ct.i.nosp@m.nfn..nosp@m.it, Catania
: Rong Rong Ma, Yale: Adapt to data analysis tools and other fixes.
: Gustavo Conesa Balbastre Gusta.nosp@m.vo.C.nosp@m.onesa.nosp@m..Bal.nosp@m.bastr.nosp@m.e@ce.nosp@m.rn.ch, LPSC-IN2P3-CNRS, Run2 fixes

Definition at line 43 of file AliEMCALTracker.h.

Member Enumeration Documentation

anonymous enum
Enumerator
kUnmatched 

Definition at line 78 of file AliEMCALTracker.h.

Enumerator
kTrackCorrNone 

Do not correct for energy loss.

kTrackCorrMMB 

Use MeanMaterialBudget() function to evaluate correction.

Definition at line 108 of file AliEMCALTracker.h.

Constructor & Destructor Documentation

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.

virtual AliEMCALTracker::~AliEMCALTracker ( )
inlinevirtual

Definition at line 49 of file AliEMCALTracker.h.

Member Function Documentation

void AliEMCALTracker::Clear ( Option_t *  option = "ALL")
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().

virtual Int_t AliEMCALTracker::Clusters2Tracks ( AliESDEvent )
inlinevirtual

Implements AliTracker.

Definition at line 53 of file AliEMCALTracker.h.

Int_t AliEMCALTracker::FindMatchedCluster ( AliESDtrack track)
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().

virtual AliCluster* AliEMCALTracker::GetCluster ( Int_t  ) const
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().

Int_t AliEMCALTracker::LoadClusters ( TTree *  cTree)
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.

Int_t AliEMCALTracker::PropagateBack ( AliESDEvent esd)
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().

virtual Int_t AliEMCALTracker::RefitInward ( AliESDEvent )
inlinevirtual

Implements AliTracker.

Definition at line 61 of file AliEMCALTracker.h.

void AliEMCALTracker::SetCutEta ( Double_t  value)
inline

Definition at line 66 of file AliEMCALTracker.h.

void AliEMCALTracker::SetCutNITS ( Double_t  value)
inline

Definition at line 69 of file AliEMCALTracker.h.

void AliEMCALTracker::SetCutNTPC ( Double_t  value)
inline

Definition at line 70 of file AliEMCALTracker.h.

void AliEMCALTracker::SetCutPhi ( Double_t  value)
inline

Definition at line 67 of file AliEMCALTracker.h.

void AliEMCALTracker::SetCutPt ( Double_t  value)
inline

Definition at line 68 of file AliEMCALTracker.h.

void AliEMCALTracker::SetEMCalSurfaceDistance ( Double_t  d)
inline

Definition at line 75 of file AliEMCALTracker.h.

void AliEMCALTracker::SetGeometry ( AliEMCALGeometry geom)
inline

Definition at line 76 of file AliEMCALTracker.h.

void AliEMCALTracker::SetStepLength ( Float_t  length)
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().

void AliEMCALTracker::SetTrackInITS ( Bool_t  value)
inline

Definition at line 71 of file AliEMCALTracker.h.

void AliEMCALTracker::UnloadClusters ( )
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().

Member Data Documentation

TObjArray* AliEMCALTracker::fClusters
private

! Collection of EMCAL clusters (ESDCaloCluster or EMCALRecPoint)

Definition at line 127 of file AliEMCALTracker.h.

Referenced by Clear(), FindMatchedCluster(), LoadClusters(), and PropagateBack().

Double_t AliEMCALTracker::fClusterWindow
private

Select clusters in the window to be matched to tracks.

Definition at line 120 of file AliEMCALTracker.h.

Referenced by FindMatchedCluster().

Double_t AliEMCALTracker::fCutEta
private

cut on eta difference

Definition at line 121 of file AliEMCALTracker.h.

Referenced by FindMatchedCluster(), InitParameters(), and SetCutEta().

Double_t AliEMCALTracker::fCutNITS
private

Minimum number of track hits in the ITS.

Definition at line 114 of file AliEMCALTracker.h.

Referenced by InitParameters(), and SetCutNITS().

Double_t AliEMCALTracker::fCutNTPC
private

Minimum number of track hits in the TPC.

Definition at line 115 of file AliEMCALTracker.h.

Referenced by InitParameters(), LoadTracks(), and SetCutNTPC().

Double_t AliEMCALTracker::fCutPhi
private

cut on phi difference

Definition at line 122 of file AliEMCALTracker.h.

Referenced by FindMatchedCluster(), InitParameters(), and SetCutPhi().

Double_t AliEMCALTracker::fCutPt
private

Minimum pT cut on tracks.

Definition at line 113 of file AliEMCALTracker.h.

Referenced by InitParameters(), LoadTracks(), and SetCutPt().

Float_t AliEMCALTracker::fEMCalSurfaceDistance
private

EMCal surface distance.

Definition at line 119 of file AliEMCALTracker.h.

Referenced by FindMatchedCluster(), and SetEMCalSurfaceDistance().

AliEMCALGeometry* AliEMCALTracker::fGeom
private

! EMCAL geometry

Definition at line 129 of file AliEMCALTracker.h.

Referenced by FindMatchedCluster(), LoadTracks(), PropagateBack(), and SetGeometry().

Bool_t AliEMCALTracker::fITSTrackSA
private

If no TPC, use ITS Tracks.

Definition at line 123 of file AliEMCALTracker.h.

Referenced by FindMatchedCluster(), and LoadTracks().

Float_t AliEMCALTracker::fStep
private

Length of each step in propagation.

Definition at line 117 of file AliEMCALTracker.h.

Referenced by FindMatchedCluster(), InitParameters(), and SetStepLength().

ETrackCorr AliEMCALTracker::fTrackCorrMode
private

Material budget correction mode.

Definition at line 118 of file AliEMCALTracker.h.

Referenced by SetTrackCorrectionMode().

Bool_t AliEMCALTracker::fTrackInITS
private

Requiere ITS refit with AliVTrack::kITSout.

Definition at line 124 of file AliEMCALTracker.h.

Referenced by InitParameters(), LoadTracks(), and SetTrackInITS().

TObjArray* AliEMCALTracker::fTracks
private

! Collection of tracks

Definition at line 126 of file AliEMCALTracker.h.

Referenced by Clear(), LoadTracks(), and PropagateBack().


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