AliPhysics  fc9925d (fc9925d)
 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 //_________________________________________________________________________
18 //_________________________________________________________________________
19 
20 // --- ROOT system ---
21 #include <TObject.h>
22 class TObjArray ;
23 #include <TLorentzVector.h>
24 
25 // --- ANALYSIS system ---
26 class AliAODPWG4ParticleCorrelation ;
27 class AliCaloTrackReader ;
28 class AliCaloPID;
29 
30 class AliIsolationCut : public TObject {
31 
32  public:
33 
34  AliIsolationCut() ; // default ctor
35 
37  virtual ~AliIsolationCut() { ; }
38 
39  // Enums
40 
42 
44 
45  // Main Methods
46 
47  void InitParameters() ;
48 
50 
51  Float_t GetCellDensity( AliAODPWG4ParticleCorrelation * pCandidate,
52  AliCaloTrackReader * reader) const ;
53 
54  void MakeIsolationCut(TObjArray * plCTS, TObjArray * plNe,
55  AliCaloTrackReader * reader,
56  AliCaloPID * pid,
57  Bool_t bFillAOD,
58  AliAODPWG4ParticleCorrelation * pCandidate, TString aodObjArrayName,
59  Int_t &n, Int_t & nfrac, Float_t &ptSum, Float_t &ptLead, Bool_t & isolated) ;
60 
61  void Print(const Option_t * opt) const ;
62 
63  Float_t Radius(Float_t etaCandidate, Float_t phiCandidate, Float_t eta, Float_t phi) const ;
64 
65  // Cone background studies medthods
66 
68 
70  Float_t phiUEptsumCluster, Float_t etaUEptsumCluster,
71  Float_t & phiUEptsumClusterNorm, Float_t & etaUEptsumClusterNorm,
72  Float_t & excessFracEta, Float_t & excessFracPhi ) const ;
73 
75  Float_t phiUEptsumTrack, Float_t etaUEptsumTrack,
76  Float_t & phiUEptsumTrackNorm, Float_t & etaUEptsumTrackNorm,
77  Float_t & excessFracEta, Float_t & excessFracPhi ) const ;
78 
79  void GetCoeffNormBadCell(AliAODPWG4ParticleCorrelation * pCandidate,
80  AliCaloTrackReader * reader,
81  Float_t & coneBadCellsCoeff,
82  Float_t & etaBandBadCellsCoeff , Float_t & phiBandBadCellsCoeff) ;
83 
84 
85  // Parameter setters and getters
86 
87  Float_t GetConeSize() const { return fConeSize ; }
88  Float_t GetPtThreshold() const { return fPtThreshold ; }
92  Float_t GetPtFraction() const { return fPtFraction ; }
93  Int_t GetICMethod() const { return fICMethod ; }
95  Int_t GetDebug() const { return fDebug ; }
96  Bool_t GetFracIsThresh() const { return fFracIsThresh ; }
98 
99  void SetConeSize(Float_t r) { fConeSize = r ; }
100  void SetPtThreshold(Float_t pt) { fPtThreshold = pt ; }
104  void SetPtFraction(Float_t pt) { fPtFraction = pt ; }
105  void SetICMethod(Int_t i ) { fICMethod = i ; }
107  void SetDebug(Int_t d) { fDebug = d ; }
111 
112  private:
113 
115 
117 
119 
121 
123 
125 
127 
129 
131 
133 
135 
137 
138  TLorentzVector fMomentum;
139 
140  TVector3 fTrackVector;
141 
143  AliIsolationCut( const AliIsolationCut & g) ;
144 
147 
149  ClassDef(AliIsolationCut,11) ;
151 
152 } ;
153 
154 #endif //ALIISOLATIONCUT_H
155 
156 
157 
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:51
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)