AliPhysics  d497547 (d497547)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliIsolationCut.h
Go to the documentation of this file.
1 #ifndef ALIISOLATIONCUT_H
2 #define ALIISOLATIONCUT_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 
6 //_________________________________________________________________________
19 //_________________________________________________________________________
20 
21 // --- ROOT system ---
22 #include <TObject.h>
23 class TObjArray ;
24 #include <TLorentzVector.h>
25 
26 // --- ANALYSIS system ---
27 class AliAODPWG4ParticleCorrelation ;
28 class AliCaloTrackReader ;
29 class AliCaloPID;
30 
31 class AliIsolationCut : public TObject {
32 
33  public:
34 
35  AliIsolationCut() ; // default ctor
36 
38  virtual ~AliIsolationCut() { ; }
39 
40  // Enums
41 
43 
45 
46  // Main Methods
47 
48  void InitParameters() ;
49 
51 
52  Float_t GetCellDensity( AliAODPWG4ParticleCorrelation * pCandidate,
53  AliCaloTrackReader * reader) const ;
54 
55  void MakeIsolationCut(TObjArray * plCTS, TObjArray * plNe,
56  AliCaloTrackReader * reader,
57  AliCaloPID * pid,
58  Bool_t bFillAOD,
59  AliAODPWG4ParticleCorrelation * pCandidate, TString aodObjArrayName,
60  Int_t &n, Int_t & nfrac, Float_t &ptSum, Float_t &ptLead, Bool_t & isolated) ;
61 
62  void Print(const Option_t * opt) const ;
63 
64  Float_t Radius(Float_t etaCandidate, Float_t phiCandidate, Float_t eta, Float_t phi) const ;
65 
66  // Cone background studies medthods
67 
69 
71  Float_t phiUEptsumCluster, Float_t etaUEptsumCluster,
72  Float_t & phiUEptsumClusterNorm, Float_t & etaUEptsumClusterNorm,
73  Float_t & excessFracEta, Float_t & excessFracPhi ) const ;
74 
76  Float_t phiUEptsumTrack, Float_t etaUEptsumTrack,
77  Float_t & phiUEptsumTrackNorm, Float_t & etaUEptsumTrackNorm,
78  Float_t & excessFracEta, Float_t & excessFracPhi ) const ;
79 
80  void GetCoeffNormBadCell(AliAODPWG4ParticleCorrelation * pCandidate,
81  AliCaloTrackReader * reader,
82  Float_t & coneBadCellsCoeff,
83  Float_t & etaBandBadCellsCoeff , Float_t & phiBandBadCellsCoeff) ;
84 
85 
86  // Parameter setters and getters
87 
88  Float_t GetConeSize() const { return fConeSize ; }
89  Float_t GetPtThreshold() const { return fPtThreshold ; }
93  Float_t GetPtFraction() const { return fPtFraction ; }
94  Int_t GetICMethod() const { return fICMethod ; }
96  Int_t GetDebug() const { return fDebug ; }
97  Bool_t GetFracIsThresh() const { return fFracIsThresh ; }
99 
100  void SetConeSize(Float_t r) { fConeSize = r ; }
101  void SetPtThreshold(Float_t pt) { fPtThreshold = pt ; }
105  void SetPtFraction(Float_t pt) { fPtFraction = pt ; }
106  void SetICMethod(Int_t i ) { fICMethod = i ; }
108  void SetDebug(Int_t d) { fDebug = d ; }
112 
113  private:
114 
116 
118 
120 
122 
124 
126 
128 
130 
132 
134 
136 
138 
139  TLorentzVector fMomentum;
140 
141  TVector3 fTrackVector;
142 
144  AliIsolationCut( const AliIsolationCut & g) ;
145 
148 
150  ClassDef(AliIsolationCut,11) ;
152 
153 } ;
154 
155 #endif //ALIISOLATIONCUT_H
156 
157 
158 
void SetPtThreshold(Float_t pt)
void MakeIsolationCut(TObjArray *plCTS, TObjArray *plNe, AliCaloTrackReader *reader, AliCaloPID *pid, Bool_t bFillAOD, AliAODPWG4ParticleCorrelation *pCandidate, TString aodObjArrayName, Int_t &n, Int_t &nfrac, Float_t &ptSum, Float_t &ptLead, Bool_t &isolated)
Int_t GetDebug() const
Int_t GetICMethod() const
Bool_t fFracIsThresh
Use threshold instead of fraction when pt leading is small.
TLorentzVector fMomentum
! Momentum of cluster, temporal object.
Class with utils to perform Isolation Cuts.
void SetConeSize(Float_t r)
void SetPtFraction(Float_t pt)
Float_t GetMinDistToTrigger() const
void SetDebug(Int_t d)
Float_t GetPtFraction() const
void SetSumPtThresholdMax(Float_t s)
void SetSumPtThreshold(Float_t s)
Int_t fICMethod
Isolation cut method to be used: kPtIC, kSumPtIC, kPtFracIC, kSumPtFracIC.
Float_t fPtThreshold
Minimum pt of the particles in the cone or sum in cone (UE pt mean in the forward region cone) ...
Int_t fPartInCone
Type of particles inside cone: kNeutralAndCharged, kOnlyNeutral, kOnlyCharged.
TString GetICParametersList()
Float_t GetPtThreshold() const
void SetICMethod(Int_t i)
TVector3 fTrackVector
! Track moment, temporal object.
Float_t fSumPtThresholdMax
Maximum of sum pt of the particles in the cone (UE sum in the forward region cone) ...
virtual ~AliIsolationCut()
Virtual destructor.
int Int_t
Definition: External.C:63
Float_t GetCellDensity(AliAODPWG4ParticleCorrelation *pCandidate, AliCaloTrackReader *reader) const
Get good cell density (number of active cells over all cells in cone).
AliIsolationCut & operator=(const AliIsolationCut &g)
Assignment operator not implemented.
float Float_t
Definition: External.C:68
Float_t fConeSize
Size of the isolation cone.
Int_t GetParticleTypeInCone() const
Float_t GetSumPtThreshold() const
void CalculateUEBandClusterNormalization(AliCaloTrackReader *reader, Float_t etaC, Float_t phiC, Float_t phiUEptsumCluster, Float_t etaUEptsumCluster, Float_t &phiUEptsumClusterNorm, Float_t &etaUEptsumClusterNorm, Float_t &excessFracEta, Float_t &excessFracPhi) const
Get normalization of cluster background band.
Base class for event, clusters and tracks filtering and preparation for the analysis.
Bool_t GetFracIsThresh() const
void Print(const Option_t *opt) const
Print some relevant parameters set for the analysis.
void SetPtThresholdMax(Float_t pt)
Int_t fDebug
Debug level.
void CalculateUEBandTrackNormalization(AliCaloTrackReader *reader, Float_t etaC, Float_t phiC, Float_t phiUEptsumTrack, Float_t etaUEptsumTrack, Float_t &phiUEptsumTrackNorm, Float_t &etaUEptsumTrackNorm, Float_t &excessFracEta, Float_t &excessFracPhi) const
Get normalization of track background band.
void SetFracIsThresh(Bool_t f)
Float_t fDistMinToTrigger
Minimal distance between isolation candidate particle and particles in cone to count them for this is...
Float_t fPtThresholdMax
Maximum pt of the particles outside the cone (needed to fit shower distribution isolated/non-isolated...
Float_t GetPtThresholdMax() const
Bool_t fIsTMClusterInConeRejected
Enable to remove the Track matching removal of clusters in cone sum pt calculation in case of kNeutra...
void SetTrackMatchedClusterRejectionInCone(Bool_t tm)
Float_t fSumPtThreshold
Minimum of sum pt of the particles in the cone (UE sum in the forward region cone) ...
Float_t fPtFraction
Fraction of the momentum of particles in cone or sum in cone.
const char Option_t
Definition: External.C:48
Class for PID selection with calorimeters.
Definition: AliCaloPID.h:53
bool Bool_t
Definition: External.C:53
AliIsolationCut()
Default constructor. Initialize parameters.
Float_t Radius(Float_t etaCandidate, Float_t phiCandidate, Float_t eta, Float_t phi) const
Float_t GetSumPtThresholdMax() const
Float_t CalculateExcessAreaFraction(Float_t excess) const
void SetParticleTypeInCone(Int_t i)
void GetCoeffNormBadCell(AliAODPWG4ParticleCorrelation *pCandidate, AliCaloTrackReader *reader, Float_t &coneBadCellsCoeff, Float_t &etaBandBadCellsCoeff, Float_t &phiBandBadCellsCoeff)
Get good cell density (number of active cells over all cells in cone).
Float_t GetConeSize() const
void SetMinDistToTrigger(Float_t md)