From 9fb90465389e02bbc78f8f2d47e8be9bba8f5374 Mon Sep 17 00:00:00 2001 From: rbertens Date: Fri, 13 Dec 2013 21:37:50 +0100 Subject: [PATCH] removed deprecated code, slight optimizations by commenting out deprecated cuts, added flag for using the PIDresponse object instead of bayesian response for pid (for LTD mc study) --- PWG/FLOW/Tasks/AliAnalysisTaskPhiFlow.cxx | 48 +++++++++++------------ PWG/FLOW/Tasks/AliAnalysisTaskPhiFlow.h | 36 +++++++++-------- 2 files changed, 43 insertions(+), 41 deletions(-) diff --git a/PWG/FLOW/Tasks/AliAnalysisTaskPhiFlow.cxx b/PWG/FLOW/Tasks/AliAnalysisTaskPhiFlow.cxx index 45f935235ad..b00b6610225 100644 --- a/PWG/FLOW/Tasks/AliAnalysisTaskPhiFlow.cxx +++ b/PWG/FLOW/Tasks/AliAnalysisTaskPhiFlow.cxx @@ -20,26 +20,19 @@ // new in this version (use with caution): vzero event plane, event mixing #include "TChain.h" -#include "TTree.h" #include "TH1.h" #include "TH1F.h" #include "TH2F.h" -#include "TCanvas.h" #include "TMath.h" #include "TObjArray.h" -#include "AliAnalysisTask.h" #include "AliAnalysisTaskSE.h" #include "AliAnalysisManager.h" -#include "AliESDEvent.h" #include "AliAODEvent.h" -#include "AliESDInputHandler.h" #include "AliAODInputHandler.h" #include "AliCentrality.h" -#include "AliVEvent.h" #include "AliAnalysisTaskPhiFlow.h" #include "AliFlowBayesianPID.h" -#include "AliStack.h" -#include "AliESDtrackCuts.h" +#include "AliPIDCombined.h" #include "AliMCEvent.h" #include "TProfile.h" #include "AliFlowCandidateTrack.h" @@ -49,9 +42,7 @@ #include "AliFlowCommonConstants.h" #include "AliFlowEvent.h" #include "TVector3.h" -#include "AliESDVZERO.h" #include "AliAODVZERO.h" -#include "AliPID.h" #include "AliPIDResponse.h" #include "AliAODMCParticle.h" #include "AliAnalysisTaskVnV0.h" @@ -66,7 +57,7 @@ ClassImp(AliAnalysisTaskPhiFlow) ClassImp(AliPhiMesonHelperTrack) AliAnalysisTaskPhiFlow::AliAnalysisTaskPhiFlow() : AliAnalysisTaskSE(), - fDebug(0), fIsMC(0), fEventMixing(0), fTypeMixing(0), fQA(0), fV0(0), fAODAnalysis(0), fMassBins(1), fMinMass(-1.), fMaxMass(0.), fCutsRP(NULL), fNullCuts(0), fPIDResponse(0), fFlowEvent(0), fBayesianResponse(0), fCandidates(0), fOldTrackParam(0), fRequireTPCStandAlone(0), fCandidateEtaPtCut(0), fCandidateMinEta(0), fCandidateMaxEta(0), fCandidateMinPt(0), fCandidateMaxPt(0), fNPtBins(18), fCentrality(999), fVertex(999), fESD(0), fAOD(0), fPoolManager(0), fOutputList(0), fEventStats(0), fCentralityPass(0), fCentralityNoPass(0), fNOPID(0), fPIDk(0),fNOPIDTOF(0), fPIDTOF(0), fPtP(0), fPtN(0), fPtKP(0), fPtKN(0), fMultCorAfterCuts(0), fMultvsCentr(0), fCentralityMin(0), fCentralityMax(100), fkCentralityMethodA(0), fkCentralityMethodB(0), fCentralityCut2010(0), fCentralityCut2011(0), fPOICuts(0), fVertexRange(0), fPhi(0), fPt(0), fEta(0), fVZEROA(0), fVZEROC(0), fTPCM(0), fDeltaDipAngle(0), fDeltaDipPt(0), fApplyDeltaDipCut(0), fDCAAll(0), fDCAXYQA(0), fDCAZQA(0), fDCAPrim(0), fDCASecondaryWeak(0), fDCAMaterial(0), fSubEventDPhiv2(0), fSkipEventSelection(0) + fDebug(0), fIsMC(0), fEventMixing(0), fTypeMixing(0), fQA(0), fV0(0), fMassBins(1), fMinMass(-1.), fMaxMass(0.), fCutsRP(NULL), fNullCuts(0), fPIDResponse(0), fFlowEvent(0), fBayesianResponse(0), fCandidates(0), fCandidateEtaPtCut(0), fCandidateMinEta(0), fCandidateMaxEta(0), fCandidateMinPt(0), fCandidateMaxPt(0), fNPtBins(18), fCentrality(999), fVertex(999), fAOD(0), fPoolManager(0), fOutputList(0), fEventStats(0), fCentralityPass(0), fCentralityNoPass(0), fNOPID(0), fPIDk(0),fNOPIDTOF(0), fPIDTOF(0), fPtP(0), fPtN(0), fPtKP(0), fPtKN(0), fMultCorAfterCuts(0), fMultvsCentr(0), fCentralityMin(0), fCentralityMax(100), fkCentralityMethodA(0), fkCentralityMethodB(0), fCentralityCut2010(0), fCentralityCut2011(0), fPOICuts(0), fVertexRange(0), fPhi(0), fPt(0), fEta(0), fVZEROA(0), fVZEROC(0), fTPCM(0)/*, fDeltaDipAngle(0), fDeltaDipPt(0), fApplyDeltaDipCut(0)*/, fDCAAll(0), fDCAXYQA(0), fDCAZQA(0), fDCAPrim(0), fDCASecondaryWeak(0), fDCAMaterial(0), fSubEventDPhiv2(0), fSkipEventSelection(0), fUsePidResponse(0), fPIDCombined(0) { // Default constructor for(Int_t i(0); i < 7; i++) fPIDConfig[i] = 0.; @@ -83,7 +74,7 @@ AliAnalysisTaskPhiFlow::AliAnalysisTaskPhiFlow() : AliAnalysisTaskSE(), } //_____________________________________________________________________________ AliAnalysisTaskPhiFlow::AliAnalysisTaskPhiFlow(const char *name) : AliAnalysisTaskSE(name), - fDebug(0), fIsMC(0), fEventMixing(0), fTypeMixing(0), fQA(0), fV0(0), fAODAnalysis(0), fMassBins(1), fMinMass(-1.), fMaxMass(0.), fCutsRP(NULL), fNullCuts(0), fPIDResponse(0), fFlowEvent(0), fBayesianResponse(0), fCandidates(0), fOldTrackParam(0), fRequireTPCStandAlone(0), fCandidateEtaPtCut(0), fCandidateMinEta(0), fCandidateMaxEta(0), fCandidateMinPt(0), fCandidateMaxPt(0), fNPtBins(18), fCentrality(999), fVertex(999), fESD(0), fAOD(0), fPoolManager(0), fOutputList(0), fEventStats(0), fCentralityPass(0), fCentralityNoPass(0), fNOPID(0), fPIDk(0), fNOPIDTOF(0), fPIDTOF(0), fPtP(0), fPtN(0), fPtKP(0), fPtKN(0), fMultCorAfterCuts(0), fMultvsCentr(0), fCentralityMin(0), fCentralityMax(100), fkCentralityMethodA(0), fkCentralityMethodB(0), fCentralityCut2010(0), fCentralityCut2011(0), fPOICuts(0), fVertexRange(0), fPhi(0), fPt(0), fEta(0), fVZEROA(0), fVZEROC(0), fTPCM(0), fDeltaDipAngle(0), fDeltaDipPt(0), fApplyDeltaDipCut(0), fDCAAll(0), fDCAXYQA(0), fDCAZQA(0), fDCAPrim(0), fDCASecondaryWeak(0), fDCAMaterial(0), fSubEventDPhiv2(0), fSkipEventSelection(0) + fDebug(0), fIsMC(0), fEventMixing(0), fTypeMixing(0), fQA(0), fV0(0), fMassBins(1), fMinMass(-1.), fMaxMass(0.), fCutsRP(NULL), fNullCuts(0), fPIDResponse(0), fFlowEvent(0), fBayesianResponse(0), fCandidates(0), fCandidateEtaPtCut(0), fCandidateMinEta(0), fCandidateMaxEta(0), fCandidateMinPt(0), fCandidateMaxPt(0), fNPtBins(18), fCentrality(999), fVertex(999), fAOD(0), fPoolManager(0), fOutputList(0), fEventStats(0), fCentralityPass(0), fCentralityNoPass(0), fNOPID(0), fPIDk(0), fNOPIDTOF(0), fPIDTOF(0), fPtP(0), fPtN(0), fPtKP(0), fPtKN(0), fMultCorAfterCuts(0), fMultvsCentr(0), fCentralityMin(0), fCentralityMax(100), fkCentralityMethodA(0), fkCentralityMethodB(0), fCentralityCut2010(0), fCentralityCut2011(0), fPOICuts(0), fVertexRange(0), fPhi(0), fPt(0), fEta(0), fVZEROA(0), fVZEROC(0), fTPCM(0)/*, fDeltaDipAngle(0), fDeltaDipPt(0), fApplyDeltaDipCut(0)*/, fDCAAll(0), fDCAXYQA(0), fDCAZQA(0), fDCAPrim(0), fDCASecondaryWeak(0), fDCAMaterial(0), fSubEventDPhiv2(0), fSkipEventSelection(0), fUsePidResponse(0), fPIDCombined(0) { // Constructor for(Int_t i(0); i < 7; i++) fPIDConfig[i] = 0.; @@ -112,6 +103,7 @@ AliAnalysisTaskPhiFlow::~AliAnalysisTaskPhiFlow() if (fFlowEvent) delete fFlowEvent; if (fBayesianResponse) delete fBayesianResponse; if (fEventMixing) delete fPoolManager; + if (fPIDCombined) delete fPIDCombined; if (fDebug > 0) cout << " === Deleted instance of AliAnalysisTaskPhiFlow === " << endl; } //_____________________________________________________________________________ @@ -255,7 +247,11 @@ void AliAnalysisTaskPhiFlow::UserCreateOutputObjects() if(fDebug > 0) cout << " *** UserCreateOutputObjects() *** " << endl; fNullCuts = new AliFlowTrackCuts("null_cuts"); fBayesianResponse = new AliFlowBayesianPID(); - // assume we want to skip event selection only for mc tracks, so set the + // combined pid + fPIDCombined = new AliPIDCombined; + fPIDCombined->SetDefaultTPCPriors(); + fPIDCombined->SetDetectorMask(AliPIDResponse::kDetTPC|AliPIDResponse::kDetTOF); + // flag to mc if(fSkipEventSelection || fIsMC) fBayesianResponse->SetMC(kTRUE); Double_t t(0); @@ -269,7 +265,7 @@ void AliAnalysisTaskPhiFlow::UserCreateOutputObjects() cc->SetNbinsMass(fMassBins); cc->SetNbinsEta(200); (fMassBins == 1) ? cc->SetNbinsPt(15) : cc->SetNbinsPt(100); // high pt cc->SetMassMin(fMinMass); cc->SetEtaMin(-5.0); cc->SetPtMin(0); cc->SetMassMax(fMaxMass); cc->SetEtaMax(+5.0); (fMassBins == 1) ? cc->SetPtMax(15) : cc->SetPtMax(10); // high pt - if (!fOldTrackParam) fBayesianResponse->SetNewTrackParam(); + fBayesianResponse->SetNewTrackParam(); AliAnalysisManager *man = AliAnalysisManager::GetAnalysisManager(); if (man) { AliInputEventHandler* inputHandler = (AliInputEventHandler*)(man->GetInputEventHandler()); @@ -327,6 +323,7 @@ template Double_t AliAnalysisTaskPhiFlow::InvariantMass(const T* tr return TMath::Sqrt((es - (pxs + pys + pzs))); } //_____________________________________________________________________________ +/* template Double_t AliAnalysisTaskPhiFlow::DeltaDipAngle(const T* track1, const T* track2) const { // Calculate the delta dip angle between two particles @@ -342,6 +339,7 @@ template Bool_t AliAnalysisTaskPhiFlow::CheckDeltaDipAngle(const T* if ((TMath::Abs(DeltaDipAngle(track1, track2)) < fDeltaDipAngle) && (PhiPt(track1, track2) < fDeltaDipPt)) return kFALSE; return kTRUE; } +*/ //_____________________________________________________________________________ template Bool_t AliAnalysisTaskPhiFlow::CheckCandidateEtaPtCut(const T* track1, const T* track2) const { @@ -526,7 +524,11 @@ Bool_t AliAnalysisTaskPhiFlow::IsKaon(AliAODTrack* track) const { // Kaon identification routine, based on multiple detectors and approaches if(fDebug > 1) cout << " *** IsKaon() *** " << endl; - if(fRequireTPCStandAlone && (!track->TestFilterBit(1))) return kFALSE; + if(fUsePidResponse) { + Double_t prob[10] = {0.,0.,0.,0.,0.,0.,0.,0.,0.,0.}; + fPIDCombined->ComputeProbabilities(track, fPIDResponse, prob); + if(prob[3] > fPIDConfig[6]) return kTRUE; + } if(!PassesDCACut(track)) return kFALSE; if(fQA) {fNOPID->Fill(track->P(), track->GetTPCsignal());fNOPIDTOF->Fill(track->P(), track->GetTOFsignal());} if(track->Pt() < fPIDConfig[1]) { @@ -703,7 +705,6 @@ void AliAnalysisTaskPhiFlow::UserExec(Option_t *) } fAOD = dynamic_cast(InputEvent()); // check for aod data type if (fAOD) { - fAODAnalysis = kTRUE; if (!EventCut(fAOD)) return; // check for event cuts InitializeBayesianPID(fAOD); // init event objects SetNullCuts(fAOD); @@ -741,7 +742,7 @@ void AliAnalysisTaskPhiFlow::UserExec(Option_t *) } for (Int_t pTracks = 0; pTracks < unp ; pTracks++) { // perform analysis for (Int_t nTracks = 0; nTracks < unn ; nTracks++) { - if (fApplyDeltaDipCut && (!CheckDeltaDipAngle(up[pTracks], un[nTracks]))) continue; +// if (fApplyDeltaDipCut && (!CheckDeltaDipAngle(up[pTracks], un[nTracks]))) continue; if (fCandidateEtaPtCut && (!CheckCandidateEtaPtCut(up[pTracks], un[nTracks]))) continue; PtSelector(0, up[pTracks], un[nTracks]); Double_t pt = PhiPt(up[pTracks], un[nTracks]); @@ -784,14 +785,14 @@ void AliAnalysisTaskPhiFlow::UserExec(Option_t *) if(!fEventMixing) { // combinatorial background for (Int_t pTracks = 0; pTracks < unp ; pTracks++) { for (Int_t nTracks = pTracks + 1; nTracks < unp ; nTracks++) { - if (fApplyDeltaDipCut && (!CheckDeltaDipAngle(up[pTracks], up[nTracks]))) continue; +// if (fApplyDeltaDipCut && (!CheckDeltaDipAngle(up[pTracks], up[nTracks]))) continue; if (fCandidateEtaPtCut && (!CheckCandidateEtaPtCut(up[pTracks], up[nTracks]))) continue; PtSelector(1, up[pTracks], up[nTracks]); } } for (Int_t nTracks = 0; nTracks < unn ; nTracks++) { for (Int_t pTracks = nTracks + 1; pTracks < unn ; pTracks++) { - if (fApplyDeltaDipCut && (!CheckDeltaDipAngle(un[nTracks], un[pTracks]))) continue; +// if (fApplyDeltaDipCut && (!CheckDeltaDipAngle(un[nTracks], un[pTracks]))) continue; if (fCandidateEtaPtCut && (!CheckCandidateEtaPtCut(un[nTracks], un[pTracks]))) continue; PtSelector(2, un[nTracks], un[pTracks]); } @@ -801,7 +802,6 @@ void AliAnalysisTaskPhiFlow::UserExec(Option_t *) PostData(1, fOutputList); PostData(2, fFlowEvent); } - if (fESD) AliFatal(" ESD analysis no longer supported ! " ); } //_____________________________________________________________________________ void AliAnalysisTaskPhiFlow::Exec(Option_t* c) @@ -864,7 +864,7 @@ void AliAnalysisTaskPhiFlow::ReconstructionWithEventMixing(TObjArray* MixingCand if(!fTypeMixing) { // mix with like-sign kaons for(Int_t pBuf = 0; pBuf < buffer_unp; pBuf++) { if(fDebug > 1 ) cout << Form(" buffered k+ track %d", pBuf) << endl; - if (fApplyDeltaDipCut && (!CheckDeltaDipAngle(mix_up[pMix], buffer_up[pBuf]))) continue; +// if (fApplyDeltaDipCut && (!CheckDeltaDipAngle(mix_up[pMix], buffer_up[pBuf]))) continue; if (fCandidateMinEta && (!CheckCandidateEtaPtCut(mix_up[pMix], buffer_up[pBuf]))) continue; PtSelector(1, mix_up[pMix], buffer_up[pBuf]); } @@ -872,7 +872,7 @@ void AliAnalysisTaskPhiFlow::ReconstructionWithEventMixing(TObjArray* MixingCand else if(fTypeMixing) { // mix with unlike-sign kaons for(Int_t nBuf = 0; nBuf < buffer_unn; nBuf++) { if(fDebug > 1 ) cout << Form(" buffered k- track %d", nBuf) << endl; - if (fApplyDeltaDipCut && (!CheckDeltaDipAngle(mix_up[pMix], buffer_un[nBuf]))) continue; +// if (fApplyDeltaDipCut && (!CheckDeltaDipAngle(mix_up[pMix], buffer_un[nBuf]))) continue; if (fCandidateMinEta && (!CheckCandidateEtaPtCut(mix_up[pMix], buffer_un[nBuf]))) continue; PtSelector(2, mix_up[pMix], buffer_un[nBuf]); } @@ -883,7 +883,7 @@ void AliAnalysisTaskPhiFlow::ReconstructionWithEventMixing(TObjArray* MixingCand if(!fTypeMixing) { // mix with like-sign kaons for(Int_t nBuf = 0; nBuf < buffer_unn; nBuf++) { if(fDebug > 1 ) cout << Form(" buffered k- track %d", nBuf) << endl; - if (fApplyDeltaDipCut && (!CheckDeltaDipAngle(mix_un[nMix], buffer_un[nBuf]))) continue; +// if (fApplyDeltaDipCut && (!CheckDeltaDipAngle(mix_un[nMix], buffer_un[nBuf]))) continue; if (fCandidateMinEta && (!CheckCandidateEtaPtCut(mix_un[nMix], buffer_un[nBuf]))) continue; PtSelector(2, mix_un[nMix], buffer_un[nBuf]); } @@ -891,7 +891,7 @@ void AliAnalysisTaskPhiFlow::ReconstructionWithEventMixing(TObjArray* MixingCand else if(fTypeMixing) { // mix with unlike-sign kaons for(Int_t pBuf = 0; pBuf < buffer_unp; pBuf++) { if(fDebug > 1 ) cout << Form(" buffered k+ track %d", pBuf) << endl; - if (fApplyDeltaDipCut && (!CheckDeltaDipAngle(mix_un[nMix], buffer_up[pBuf]))) continue; +// if (fApplyDeltaDipCut && (!CheckDeltaDipAngle(mix_un[nMix], buffer_up[pBuf]))) continue; if (fCandidateMinEta && (!CheckCandidateEtaPtCut(mix_un[nMix], buffer_up[pBuf]))) continue; PtSelector(1, mix_un[nMix], buffer_up[pBuf]); } diff --git a/PWG/FLOW/Tasks/AliAnalysisTaskPhiFlow.h b/PWG/FLOW/Tasks/AliAnalysisTaskPhiFlow.h index 21b69de0708..89992e20884 100644 --- a/PWG/FLOW/Tasks/AliAnalysisTaskPhiFlow.h +++ b/PWG/FLOW/Tasks/AliAnalysisTaskPhiFlow.h @@ -19,6 +19,7 @@ class AliFlowEvent; class AliFlowCandidateTrack; class AliFlowBayesianPID; class AliEventPoolManager; +class AliPIDCombined; #include "AliAnalysisTaskSE.h" @@ -67,8 +68,8 @@ public: AliEventPoolManager* InitializeEventMixing(); void SetPtBins(Float_t bin[19], Int_t n) { for(Int_t i = 0; i < n+1; i++) fPtBins[i] = bin[i]; fNPtBins = n; } template Double_t InvariantMass(const T* track1, const T* track2) const; - template Double_t DeltaDipAngle(const T* track1, const T* track2) const; - template Bool_t CheckDeltaDipAngle(const T* track1, const T* track2) const; +// template Double_t DeltaDipAngle(const T* track1, const T* track2) const; +// template Bool_t CheckDeltaDipAngle(const T* track1, const T* track2) const; template Bool_t CheckCandidateEtaPtCut(const T* track1, const T* track2) const; void SetCentralityParameters(Double_t min, Double_t max, const char* a, const char* b, Bool_t c, Bool_t d) { fCentralityMin = min; @@ -77,16 +78,17 @@ public: fkCentralityMethodB = b; fCentralityCut2010 = c; fCentralityCut2011 = d;} + void SetCurrentCentralityBin(Double_t c) {fCentrality = c; } Double_t GetCenMin() const {return fCentralityMin; } Double_t GetCenMax() const {return fCentralityMax; } const char* GetCentralityMethod() const {return fkCentralityMethodA; } void SetVertexZ(Float_t z) { fVertexRange = z; } Float_t GetVertexZ() const { return fVertexRange; } - void SetMaxDeltaDipAngleAndPt(Float_t a, Float_t pt) { fDeltaDipAngle = a; - fDeltaDipPt = pt; - fApplyDeltaDipCut = kTRUE; }; - Float_t GetDeltaDipAngle() const {return fDeltaDipAngle; } - Float_t GetDeltaDipPt() const {return fDeltaDipPt; } +// void SetMaxDeltaDipAngleAndPt(Float_t a, Float_t pt) { fDeltaDipAngle = a; +// fDeltaDipPt = pt; +// fApplyDeltaDipCut = kTRUE; }; +// Float_t GetDeltaDipAngle() const {return fDeltaDipAngle; } +// Float_t GetDeltaDipPt() const {return fDeltaDipPt; } template Bool_t EventCut(T* event); template void PlotMultiplcities(const T* event) const; template Bool_t CheckVertex(const T* event); @@ -109,8 +111,6 @@ public: void SetRPCuts(AliFlowTrackCuts *cutsRP) { fCutsRP = cutsRP; } AliFlowTrackCuts* GetPOICuts() const {return fPOICuts;} AliFlowTrackCuts* GetRPCuts() const {return fCutsRP;} - void SetRequireTPCStandAloneKaons() { fRequireTPCStandAlone = kTRUE; } - void SetOlderThanPbPbPass2() { fOldTrackParam = kTRUE; } void SetPIDConfiguration(Double_t prob[7]) { for(Int_t i = 0; i < 7; i++) fPIDConfig[i] = prob[i]; } void GetPIDConfiguration(Double_t prob[7]) const {for(Int_t i = 0; i < 7; i++) prob[i] = fPIDConfig[i]; } void SetPOIDCAXYZ(Double_t dca[5]) { for(Int_t i = 0; i < 5; i++) fDCAConfig[i] = dca[i]; } @@ -133,7 +133,11 @@ public: fMaxMass= maxMass; } void IsMC(); Bool_t SetQA(Bool_t qa) {fQA = qa; return fQA;} - void SetSkipEventSelection(Bool_t s) {fSkipEventSelection = s;} + void SetSkipEventSelection(Bool_t s) { + fSkipEventSelection = s; + fUsePidResponse = kTRUE; // bayesian pid object will require some event info + fCentrality = 5.;} // should be set by user, skipping event selection will also forego centrality selection + void SetUsePidResponse(Bool_t s) {fUsePidResponse = s;} private: @@ -143,7 +147,6 @@ private: Bool_t fTypeMixing; // select type: kTRUE for unlike sign background, kFALSE for like sign background Bool_t fQA; // make qa plots Bool_t fV0; // use three subevents including vzero - Bool_t fAODAnalysis; // set aod analysis Int_t fMassBins; // mass bins Double_t fMinMass; // mass range Double_t fMaxMass; // mass range @@ -153,8 +156,6 @@ private: AliFlowEvent *fFlowEvent; //! flow events (one for each inv mass band) AliFlowBayesianPID *fBayesianResponse; //!PID response object TObjArray *fCandidates; // candidate array - Bool_t fOldTrackParam; // set to true if data is older than pbpb pass 2 production - Bool_t fRequireTPCStandAlone; // set TPC standalone cut for kaon selection Bool_t fCandidateEtaPtCut; // set eta and pt cut for candidate tracks and combinatorial background Double_t fCandidateMinEta; // minimum eta for candidates Double_t fCandidateMaxEta; // maximum eta for candidates @@ -169,7 +170,6 @@ private: Int_t fNPtBins; // no of pt bins + 1 Double_t fCentrality; // event centrality Double_t fVertex; // event vertex z - AliESDEvent *fESD; //! ESD object AliAODEvent *fAOD; //! AOD oject AliEventPoolManager *fPoolManager; //! event pool manager TList *fOutputList; // ! Output list @@ -204,9 +204,9 @@ private: TH1F *fVZEROA; //! QA plot vzeroa multiplicity (all tracks in event) TH1F *fVZEROC; //! QA plot vzeroc multiplicity (all tracks in event) TH1F *fTPCM; //! QA plot TPC multiplicity (tracks used for event plane estimation) - Float_t fDeltaDipAngle; // absolute value of delta dip angle to be excluded - Float_t fDeltaDipPt; // upper value of pt range in which delta dip angle must be applied - Bool_t fApplyDeltaDipCut; // enforce delta dip cut +// Float_t fDeltaDipAngle; // absolute value of delta dip angle to be excluded +// Float_t fDeltaDipPt; // upper value of pt range in which delta dip angle must be applied +// Bool_t fApplyDeltaDipCut; // enforce delta dip cut TH2F *fDCAAll;//! qa dca of all charged particles TH1F *fDCAXYQA; //! qa plot of dca xz TH1F *fDCAZQA; //!qa plot of dca z @@ -216,6 +216,8 @@ private: TProfile *fSubEventDPhiv2; //! subevent resolution info for v2 TProfile *fV0Data[18][2]; //! profiles for vzero vn(minv) Bool_t fSkipEventSelection;// skip event selection and set bayesian pid object to MC mode + Bool_t fUsePidResponse;//use pid response instead of aliflowbayesianpid object for pid + AliPIDCombined* fPIDCombined; // pid combined AliAnalysisTaskPhiFlow(const AliAnalysisTaskPhiFlow&); // Not implemented AliAnalysisTaskPhiFlow& operator=(const AliAnalysisTaskPhiFlow&); // Not implemented void MakeTrack(Double_t, Double_t, Double_t, Double_t, Int_t , Int_t[]) const; -- 2.39.3