9 #ifndef ALIANALYSISTASKPHIFLOW_H 10 #define ALIANALYSISTASKPHIFLOW_H 16 class AliESDtrackCuts;
21 class AliEventPoolManager;
25 #include "AliAnalysisTaskSE.h" 30 AliPhiMesonHelperTrack(
Float_t eta,
Float_t phi,
Float_t p,
Float_t px,
Float_t py,
Float_t pz,
Float_t pt,
Int_t charge) :
fEta(eta),
fPhi(phi),
fp(p),
fpX(px),
fpY(py),
fpZ(pz),
fpT(pt),
fCharge(charge) { }
62 TH1F* BookHistogram(
const char * name);
63 TH2F* BookPIDHistogram(
const char * name,
Bool_t TPC);
65 TH1F* BookPtHistogram(
const char* name);
66 void AddPhiIdentificationOutputObjects();
67 virtual void UserCreateOutputObjects();
68 AliEventPoolManager* InitializeEventMixing();
70 template <
typename T>
Double_t InvariantMass(
const T* track1,
const T* track2)
const;
73 template <
typename T>
Bool_t CheckCandidateEtaPtCut(
const T* track1,
const T* track2)
const;
78 fkCentralityMethodA = a;
79 fkCentralityMethodB = b;
80 fCentralityCut2010 =
c;
81 fCentralityCut2011 = d;}
95 template <
typename T>
Bool_t EventCut(
T* event);
96 template <
typename T>
void PlotMultiplcities(
const T* event)
const;
97 template <
typename T>
Bool_t CheckVertex(
const T* event);
98 template <
typename T>
Bool_t CheckCentrality(
T* event);
100 template <
typename T>
Bool_t PassesTPCbayesianCut(
T* track)
const;
101 Bool_t PassesDCACut(AliAODTrack* track)
const;
102 Bool_t IsKaon(AliAODTrack* track)
const;
103 template <
typename T>
Double_t PhiPt(
const T* track_1,
const T* track_2)
const;
104 template <
typename T>
void PtSelector(
Int_t _track_type,
const T* track_1,
const T* track_2)
const;
105 template <
typename T>
Bool_t PhiTrack(
T* track)
const;
106 template <
typename T>
void SetNullCuts(
T* esd);
107 void PrepareFlowEvent(
Int_t iMulti);
108 virtual void UserExec(
Option_t *option);
110 void ReconstructionWithEventMixing(
TObjArray* MixingCandidates)
const;
121 fVertexMixingBins[i] = v[i]; } }
125 fCandidateMaxEta = maxeta;
126 fCandidateMinPt = minpt;
127 fCandidateMaxPt = maxpt;
128 fCandidateEtaPtCut = kTRUE;}
130 fCandidateMinY = min;
131 fCandidateMaxY = max;
132 fCandidateYCut = kTRUE;
135 etapt[1] = fCandidateMaxEta;
136 etapt[2] = fCandidateMinPt;
137 etapt[3] = fCandidateMaxPt; }
144 fSkipEventSelection = s;
145 fUsePidResponse = kTRUE;
148 Double_t GetWDist(
const AliVVertex* v0,
const AliVVertex* v1);
202 TH1F *fPtSpectra[18];
234 TProfile *fV0Data[18][2];
TH1F * fEta
QA plot of p_t sectrum of tracks used for event plane estimation.
virtual Double_t Pt() const
TH1F * fVZEROA
QA plot of eta distribution of tracks used for event plane estimation.
TH1 * fHistCentralityWeights
Double_t fCentralityMin
QA profile of centralty vs multiplicity.
TH2F * fDCAAll
QA plot TPC multiplicity (tracks used for event plane estimation)
void SetUsePidResponse(Bool_t s)
AliFlowTrackCuts * fPOICuts
Bool_t fCandidateEtaPtCut
void SetCentralityEstimator(TString name)
AliFlowTrackCuts * fNullCuts
void SetCurrentCentralityBin(Double_t c)
AliFlowEvent * fFlowEvent
pid response object
TH2F * fPIDk
QA histogram of TPC response of all charged particles.
TH1F * fDCAXYQA
qa dca of all charged particles
TH2F * fDCASecondaryWeak
dca of primaries (mc) or kaons (data)
void SetHarmonic(Float_t h)
AliFlowTrackCuts * GetRPCuts() const
TH1F * fPtN
QA histogram of p_t distribution of positive particles.
void SetMixingParameters(Int_t p[3])
void SetPOICuts(AliFlowTrackCuts *cutsPOI)
AliPIDResponse * fPIDResponse
TH2F * fNOPIDTOF
QA histogram of TPC response of kaons.
TList * fOutputList
event pool manager
UShort_t T(UShort_t m, UShort_t t)
TH2F * fNOPID
QA histogram of events that do not pass centrality cut.
Bool_t fSkipEventSelection
profiles for vzero vn(minv)
void SetPOIDCAXYZ(Double_t dca[5])
void SetMultESDTPCdif(Int_t m)
void SetSkipEventSelection(Bool_t s)
void GetMixingParameters(Int_t p[3]) const
const char * fkCentralityMethodA
virtual Double_t Pz() const
const char * fkCentralityMethodB
void GetPIDConfiguration(Double_t prob[7]) const
virtual Double_t P() const
~AliPhiMesonHelperTrack()
const char * GetCentralityMethod() const
AliPhiMesonHelperTrack(Float_t eta, Float_t phi, Float_t p, Float_t px, Float_t py, Float_t pz, Float_t pt, Int_t charge)
Double_t GetCenMax() const
TH2F * fPIDTOF
QA histo of TOF repsonse charged particles.
Bool_t SetIsMC(Bool_t ismc)
virtual Double_t Eta() const
Double_t fCandidateMaxEta
AliFlowBayesianPID * fBayesianResponse
flow events (one for each inv mass band)
TProfile * fSubEventDPhiv2
dca material (mc) all (data)
Double_t GetCenMin() const
void InitializeHelperTrack(Float_t eta, Float_t phi, Float_t p, Float_t px, Float_t py, Float_t pz, Float_t pt, Int_t charge)
AliFlowTrackCuts * fCutsRP
TH2F * fMultvsCentr
QA profile global and tpc multiplicity after outlier cut.
Bool_t fCentralityCut2011
virtual Double_t Px() const
TH1F * fTPCM
QA plot vzeroc multiplicity (all tracks in event)
Double_t fCandidateMinEta
TH2F * fDCAPrim
qa plot of dca z
TObjArray * fCandidates
PID response object.
void SetRPCuts(AliFlowTrackCuts *cutsRP)
virtual Double_t Phi() const
void SetCentralityWeights(TH1 *hist)
Float_t fHarmonic
z vertex position
void SetCommonConstants(Int_t massBins, Double_t minMass, Double_t maxMass)
TH1F * fPtKN
QA histogram of p_t distribution of positive kaons.
void GetCandidateEtaAndPt(Double_t etapt[4]) const
TString fCentralityEstimator
Float_t fCentralityWeight
TH1F * fDCAZQA
qa plot of dca xz
void SetCandidateEtaAndPt(Double_t mineta, Double_t maxeta, Double_t minpt, Double_t maxpt)
AliEventPoolManager * fPoolManager
AOD oject.
TH2F * fDCAMaterial
dca of weak (mc)
TH2F * fMultCorAfterCuts
QA histogram of p_t distribution of negative kaons.
virtual Int_t Charge() const
Float_t GetVertexZ() const
void SetCentralityParameters(Double_t min, Double_t max, const char *a, const char *b, Bool_t c, Bool_t d)
void SetPIDConfiguration(Double_t prob[7])
void SetVertexZ(Float_t z)
TH1F * fVZEROC
QA plot vzeroa multiplicity (all tracks in event)
void GetPOIDCZXYZ(Double_t dca[5]) const
AliPIDCombined * fPIDCombined
TH1F * fPtKP
QA histogram of p_t distribution of negative particles.
void SetMixingBins(Int_t c[20], Int_t v[20])
Bool_t UseEventMixing(Bool_t mix, Bool_t type)
Bool_t fCentralityCut2010
void SetRemovePileup(Bool_t p)
virtual Double_t Py() const
AliFlowTrackCuts * GetPOICuts() const
void SetCandidateMinMaxY(Double_t min, Double_t max)
TH1F * fPt
QA plot of azimuthal distribution of tracks used for event plane estimation.
Int_t SetDebugLevelPhiTask(Int_t debug)
void SetPtBins(Float_t bin[19], Int_t n)