ROOT logo
AliRoot » PWGCF » CORRELATIONS » DPHI » PIDPID » AliAnalysisTaskPidPidCorrelations

class AliAnalysisTaskPidPidCorrelations: public AliAnalysisTaskSE

Function Members (Methods)

public:
AliAnalysisTaskPidPidCorrelations()
AliAnalysisTaskPidPidCorrelations(const Char_t* name)
virtual~AliAnalysisTaskPidPidCorrelations()
virtual voidTTask::Abort()MENU
voidTObject::AbstractMethod(const char* method) const
TObjArray*AcceptMcRecoMachedTracks(Int_t centBin, Bool_t onlyprimaries, Bool_t useCuts)
TObjArray*AcceptMcTracks(Int_t centBin, Bool_t onlyprimaries, Bool_t useCuts)
TObjArray*AcceptTracks(Int_t centBin, TObject* arrayMC, Bool_t useCuts)
virtual voidTTask::Add(TTask* task)
virtual voidAliAnalysisTaskSE::AddAODBranch(const char* cname, void* addobj, const char* fname = "")
voidAddSettingsTree()
voidAnalyse()
virtual AliAODEvent*AliAnalysisTaskSE::AODEvent() const
virtual voidTObject::AppendPad(Option_t* option = "")
Bool_tAliAnalysisTask::AreSlotsConnected()
virtual voidTTask::Browse(TBrowser* b)
voidCalculateNSigmas(AliAODTrack* track, Int_t centBin, Bool_t* pidFlag, Bool_t fillQA)
Bool_tAliAnalysisTask::CheckCircularDeps()
Bool_tCheckMcDistributions(TClonesArray* arrayMC, AliAODMCHeader* mcHeader)
voidAliAnalysisTask::CheckNotify(Bool_t init = kFALSE)
virtual Bool_tAliAnalysisTask::CheckOwnership() const
virtual Bool_tAliAnalysisTask::CheckPostData() const
Bool_tCheckTrack(AliAODTrack* track)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTTask::CleanTasks()
voidCleanUp(TObjArray* tracks, TObject* mcObj)
virtual voidTTask::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
TObjArray*CloneAndReduceTrackList(TObjArray* tracks)
virtual Int_tTNamed::Compare(const TObject* obj) const
Bool_tAliAnalysisTask::ConnectInput(Int_t islot, AliAnalysisDataContainer* cont)
virtual voidAliAnalysisTaskSE::ConnectInputData(Option_t* option = "")
Bool_tAliAnalysisTask::ConnectOutput(Int_t islot, AliAnalysisDataContainer* cont)
virtual voidTTask::Continue()MENU
virtual voidTNamed::Copy(TObject& named) const
virtual voidAliAnalysisTaskSE::CreateOutputObjects()
virtual const char*AliAnalysisTaskSE::CurrentFileName()
virtual Int_tAliAnalysisTaskSE::DebugLevel() const
virtual voidTObject::Delete(Option_t* option = "")MENU
Double_tDeltaPhi(Double_t Dphi) const
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual Long64_tAliAnalysisTaskSE::Entry() const
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual AliESDfriend*AliAnalysisTaskSE::ESDfriend() const
virtual const AliEventTag*AliAnalysisTaskSE::EventTag() const
virtual voidAliAnalysisTaskSE::Exec(Option_t* option)
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTTask::ExecuteTask(Option_t* option = "0")MENU
virtual voidTTask::ExecuteTasks(Option_t* option)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidTNamed::FillBuffer(char*& buffer)
voidFillCFcontainers(TObjArray* mca, TObjArray* rec, TObjArray* recmatch, Double_t cent)
voidFillCorrelations(TObjArray* particles, TObjArray* particlesMixed, Double_t centrality, Double_t zVtx, Double_t bSign, Bool_t twoTrackEfficiencyCut, Double_t twoTrackEfficiencyCutValue, Double_t weight)
voidFillMcGeneratorHistos(TString genLabel)
Int_tFindNSigma(AliAODTrack* track)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual voidAliAnalysisTask::FinishTaskOutput()
Double_tGetBeta(AliAODTrack* track)
Double_t*GetBinning(const Char_t* configuration, const Char_t* tag, Int_t& nBins)
voidAliAnalysisTask::GetBranches(const char* type, TString& result) const
Int_tTTask::GetBreakin() const
Int_tTTask::GetBreakout() const
Int_tGetCentBin(Double_t centrality)
TStringGetCentralityEstimator() const
virtual UInt_tAliAnalysisTaskSE::GetCollisionCandidates() const
Double_tGetDPhiStar(Double_t phi1, Double_t pt1, Double_t charge1, Double_t phi2, Double_t pt2, Double_t charge2, Double_t radius, Double_t bSign)
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
Int_tGetEtaBin(Double_t valEta)
TStringGetGenerator(Int_t label, AliAODMCHeader* MCheader)
TH2F*GetHisto2D(const Char_t* name)
virtual const char*TObject::GetIconName() const
TObject*AliAnalysisTask::GetInputData(Int_t islot) const
AliAnalysisDataSlot*AliAnalysisTask::GetInputSlot(Int_t islot) const
TClass*AliAnalysisTask::GetInputType(Int_t islot) const
Float_tGetInvMassSquared(Float_t pt1, Float_t eta1, Float_t phi1, Float_t pt2, Float_t eta2, Float_t phi2, Float_t m0_1, Float_t m0_2)
Float_tGetInvMassSquaredCheap(Float_t pt1, Float_t eta1, Float_t phi1, Float_t pt2, Float_t eta2, Float_t phi2, Float_t m0_1, Float_t m0_2)
TList*TTask::GetListOfTasks() const
Double_tGetMaxVertexZ() const
Bool_tGetMC() const
virtual const char*TNamed::GetName() const
Int_tAliAnalysisTask::GetNinputs() const
Int_tAliAnalysisTask::GetNoutputs() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
TObject*AliAnalysisTask::GetOutputData(Int_t islot) const
TStringGetOutputListName() const
AliAnalysisDataSlot*AliAnalysisTask::GetOutputSlot(Int_t islot) const
TClass*AliAnalysisTask::GetOutputType(Int_t islot) const
Int_tGetParticleID(AliVTrack* trk, Int_t centbin, Bool_t fillQA)
Int_tGetParticleIDMC(AliVTrack* trk, Int_t centbin, Bool_t fillQA)
Int_tGetPtBin(Double_t valPt)
TObject*AliAnalysisTask::GetPublishedData() const
virtual TList*AliAnalysisTaskSE::GetQAHistos() const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
Int_tGetZvtxBin(Double_t zvtx)
virtual Bool_tTObject::HandleTimer(TTimer* timer)
Bool_tAliAnalysisTask::HasBranches() const
Bool_tAliAnalysisTask::HasExecuted() const
virtual ULong_tTNamed::Hash() const
Bool_tHasTOFPID(AliAODTrack* track) const
Bool_tHasTPCPID(AliAODTrack* track) const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidAliAnalysisTaskSE::Init()
virtual AliVEvent*AliAnalysisTaskSE::InputEvent() const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
Bool_tTTask::IsActive() const
Bool_tAliAnalysisTask::IsChecked() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tAliAnalysisTaskSE::IsEventInBinZero()
virtual Bool_tTTask::IsFolder() const
Bool_tIsFromHijingBg(Int_t mcTrackLabel)
Bool_tAliAnalysisTask::IsInitialized() const
Bool_tTObject::IsOnHeap() const
Bool_tAliAnalysisTask::IsOutputReady(Int_t islot) const
Bool_tAliAnalysisTask::IsPostEventLoop() const
Bool_tAliAnalysisTask::IsReady() const
virtual Bool_tTNamed::IsSortable() const
virtual Bool_tAliAnalysisTaskSE::IsStandardAOD() const
Bool_tAliAnalysisTask::IsUsed() const
Bool_tAliAnalysisTask::IsZombie() const
voidAliAnalysisTaskSE::LoadBranches() const
virtual voidAliAnalysisTask::LocalInit()
virtual voidTTask::ls(Option_t* option = "*") constMENU
Double_tMakeTOFPID(AliAODTrack* track, Double_t* nSigma)
Double_tMakeTPCPID(AliAODTrack* track, Double_t* nSigma)
voidTObject::MayNotUse(const char* method) const
virtual AliMCEvent*AliAnalysisTaskSE::MCEvent() const
virtual Bool_tAliAnalysisTaskSE::Notify()
virtual Bool_tAliAnalysisTask::NotifyBinChange()
virtual voidAliAnalysisTaskSE::NotifyRun()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
virtual TTree*AliAnalysisTaskSE::OutputTree() const
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTNamed::Print(Option_t* option = "") const
voidAliAnalysisTask::PrintContainers(Option_t* option = "all", Int_t indent = 0) const
voidPrintPoolManagerContents()
virtual voidAliAnalysisTask::PrintTask(Option_t* option = "all", Int_t indent = 0) const
Bool_tAliAnalysisTask::ProducersTouched() const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidRemoveDuplicates(TObjArray* tracks)
voidRemoveWeakDecays(TObjArray* tracks, TObject* mcObj)
virtual voidAliAnalysisTask::Reset()
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
virtual voidAliAnalysisTaskSE::SelectCollisionCandidates(UInt_t offlineTriggerMask = AliVEvent::kMB)
voidTTask::SetActive(Bool_t active = kTRUE)TOGGLE
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidAliAnalysisTask::SetBranches(const char* names)
voidTTask::SetBreakin(Int_t breakin = 1)TOGGLE
voidTTask::SetBreakout(Int_t breakout = 1)TOGGLE
voidSetCentBinning(Int_t nBins, Double_t* limits)
voidSetCentralityEstimator(const Char_t* centralityestimator)
voidSetCentralityRange(Float_t min, Float_t max)
voidAliAnalysisTask::SetChecked(Bool_t flag = kTRUE)
virtual voidAliAnalysisTaskSE::SetDebugLevel(Int_t level)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetEtaBinning(Int_t nBins, Double_t* limits)
voidSetEtaOrdering(Bool_t flag)
voidSetEventMixing(Bool_t flag)
voidSetFillpT(Bool_t flag)
voidSetKinematicsCutsAOD(Double_t ptmin, Double_t ptmax, Double_t etamin, Double_t etamax)
voidSetMaxVertexZ(Double_t maxVertexZ)
voidSetMC(Bool_t isMC)
voidSetMixingTracks(Int_t tracks, Int_t poolsize)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetOnlyOneEtaSide(Int_t flag)
voidSetPairCuts(Bool_t conversions, Bool_t resonances)
voidSetPIDsToCorrelate(Int_t triggerPID, Int_t assocPID)
voidAliAnalysisTask::SetPostEventLoop(Bool_t flag = kTRUE)
voidSetPtBinning(Int_t nBins, Double_t* limits)
voidSetPtOrder(Bool_t flag)
voidSetRejectResonanceDaughters(Int_t value)
voidSetSelectAssociatedCharge(Int_t selectCharge)
voidSetSelectCharge(Int_t selectCharge)
voidSetSelectTriggerCharge(Int_t selectCharge)
virtual voidTNamed::SetTitle(const char* title = "")MENU
voidSetTriggerMask(Int_t triggerType)
voidSetTriggerRestrictEta(Float_t eta)
voidSetTwoTrackEfficiencyCut(Float_t value = 0.02, Float_t min = 0.8)
virtual voidTObject::SetUniqueID(UInt_t uid)
voidSetupForMixing()
voidAliAnalysisTask::SetUsed(Bool_t flag = kTRUE)
voidSetVertexDiamond(Double_t vx, Double_t vy, Double_t vz)
voidSetWeightPerEvent(Bool_t flag = kTRUE)
voidAliAnalysisTask::SetZombie(Bool_t flag = kTRUE)
voidSetZvtxBinning(Int_t nBins, Double_t* limits)
virtual voidShowMembers(TMemberInspector&)
virtual Int_tTNamed::Sizeof() const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
virtual voidTerminate(Option_t* option)
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
voidUseMomentumDifferenceCut(Bool_t fqcut = kFALSE, Double_t gDeltaPtCutMin = 0.01)
virtual voidUserCreateOutputObjects()
virtual voidUserExec(Option_t* option)
virtual voidAliAnalysisTaskSE::UserExecMix(Option_t*)
virtual Bool_tAliAnalysisTaskSE::UserNotify()
Bool_tVertexSelection(TObject* obj, Int_t ntracks, Int_t centBin, Double_t gVxMax, Double_t gVyMax, Double_t gVzMax)
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
voidAliAnalysisTaskSE::ConnectMultiHandler()
voidAliAnalysisTask::DefineInput(Int_t islot, TClass* type)
voidAliAnalysisTask::DefineOutput(Int_t islot, TClass* type)
voidAliAnalysisTaskSE::DisconnectMultiHandler()
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidAliAnalysisTask::EnableBranch(Int_t islot, const char* bname) const
char*AliAnalysisTask::GetBranchAddress(Int_t islot, const char* branch) const
voidTObject::MakeZombie()
TFile*AliAnalysisTask::OpenFile(Int_t iout, Option_t* option = "RECREATE") const
Bool_tAliAnalysisTask::PostData(Int_t iout, TObject* data, Option_t* option = "")
Bool_tAliAnalysisTask::SetBranchAddress(Int_t islot, const char* branch, void* address) const

Data Members

public:
enum ECorrStep { kStepGen
kStepRec
kStepRecMatch
kNsteps
};
enum ECorrVars { kVarEta
kVarPt
kVarPID
kVarCent
kVarZvtx
kNvars
};
enum AliAnalysisTask::EAnalysisTaskFlags { kTaskUsed
kTaskZombie
kTaskChecked
kTaskPostEventLoop
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
Bool_tTTask::fActivetrue if task is active
TStringAliAnalysisTask::fBranchNamesList of input branches that need to be loaded for this task
Int_tTTask::fBreakin=1 if a break point set at task extry
Int_tTTask::fBreakout=1 if a break point set at task exit
Int_tAliAnalysisTaskSE::fCurrentRunNumber! Current run number
Int_tAliAnalysisTaskSE::fDebugDebug flag
AliESDfriend*AliAnalysisTaskSE::fESDfriend! ESD friend
Int_tAliAnalysisTaskSE::fEntryCurrent entry in the chain
Bool_tTTask::fHasExecutedTrue if task has executed
TList*AliAnalysisTaskSE::fHistosQA! Output histos for QA
Bool_tAliAnalysisTask::fInitializedTrue if Init() was called
AliVEvent*AliAnalysisTaskSE::fInputEvent! VEvent Input
AliInputEventHandler*AliAnalysisTaskSE::fInputHandler! Input Handler
TObjArray*AliAnalysisTask::fInputsArray of input slots
AliMCEvent*AliAnalysisTaskSE::fMCEvent! MC
AliInputEventHandler*AliAnalysisTaskSE::fMCEventHandler! pointer to MCEventHandler
AliMultiInputEventHandler*AliAnalysisTaskSE::fMultiInputHandler! pointer to multihandler
TStringTNamed::fNameobject identifier
Int_tAliAnalysisTask::fNinputsNumber of inputs
Int_tAliAnalysisTask::fNoutputsNumber of outputs
UInt_tAliAnalysisTaskSE::fOfflineTriggerMaskTask processes collision candidates only
TStringTTask::fOptionOption specified in ExecuteTask
AliAODEvent*AliAnalysisTaskSE::fOutputAOD! AOD out
Bool_t*AliAnalysisTask::fOutputReady[fNoutputs] Flags for output readyness
TObjArray*AliAnalysisTask::fOutputsArray of output slots
TObject*AliAnalysisTask::fPublishedData! published data
Bool_tAliAnalysisTask::fReadyFlag if the task is ready
TList*TTask::fTasksList of Tasks
TStringTNamed::fTitleobject title
TTree*AliAnalysisTaskSE::fTreeAAOD output Tree
static TClonesArray*AliAnalysisTaskSE::fgAODCaloClusters! CaloClusters for replication
static TClonesArray*AliAnalysisTaskSE::fgAODDimuons! Dimuons replication
static AliAODCaloTrigger*AliAnalysisTaskSE::fgAODEMCALTrigger! Emcal Trigger for replication
static AliAODCaloCells*AliAnalysisTaskSE::fgAODEmcalCells! Emcal Cell replication
static TClonesArray*AliAnalysisTaskSE::fgAODFMDClusters! FMDClusters for replication
static AliVHeader*AliAnalysisTaskSE::fgAODHeader! Header for replication
static TClonesArray*AliAnalysisTaskSE::fgAODHmpidRings! HMPID replication
static TClonesArray*AliAnalysisTaskSE::fgAODJets! Jets for replication
static TClonesArray*AliAnalysisTaskSE::fgAODMCParticles! MC Particles for replicatio
static AliAODCaloTrigger*AliAnalysisTaskSE::fgAODPHOSTrigger! Phos Trigger for replication
static TClonesArray*AliAnalysisTaskSE::fgAODPMDClusters! PMDClusters for replication
static AliAODCaloCells*AliAnalysisTaskSE::fgAODPhosCells! Phos Cell replication
static AliAODTracklets*AliAnalysisTaskSE::fgAODTracklets! Tracklets for replication
static TClonesArray*AliAnalysisTaskSE::fgAODTracks! Tracks for replication
static TClonesArray*AliAnalysisTaskSE::fgAODV0s! V0s for replication
static AliAODVZERO*AliAnalysisTaskSE::fgAODVZERO! VZERO for replication
static TClonesArray*AliAnalysisTaskSE::fgAODVertices! Vertices for replication
static TTask*TTask::fgBeginTaskpointer to task initiator
static TTask*TTask::fgBreakPointpointer to current break point
static AliTOFHeader*AliAnalysisTaskSE::fgTOFHeader! TOFHeader for replication
private:
Int_tfAssociatedSelectChargeselect charge of associated particle: 1: positive; -1 negative
TStringfBinningStringfinal binning string
TAxis*fCentAxis
Double_tfCentrality
TStringfCentralityEstimatorMethod to determine the centrality, e.g. "V0M","TRK","TKL","ZDC","FMD", "CL0", "CL1"
Double_tfCentralityPercentileMax
Double_tfCentralityPercentileMin
TStringfCustomBinningfor setting customized binning
Bool_tfCutConversionscut on conversions (inv mass)
Bool_tfCutResonancescut on resonances (inv mass)
Double_tfDeltaEtaMaxmaximum delta eta for output THnSparse
Double_tfDeltaPtMindelta pt cut: minimum value
TAxis*fEtaAxis
Double_tfEtaCut
Bool_tfEtaOrderingeta ordering, see AliUEHistograms.h for documentation
Bool_tfFillMixedenable event mixing (default: ON)
Bool_tfFillpT
UInt_tfFilterTypefilter type 0 = all, 1 = ITSTPC, 2 = TPC
TH2F*fHistCentStats!
TH1F*fHistCentralityClass10! centrality class by 10
TH1F*fHistCentralityClass5! centrality class by 5
TH1F*fHistCentralityPercentile! centrality class
TH2F*fHistControlConvResoncances!
THnSparseD*fHistCorrPair[2]!
TH1F*fHistEventStat!
TH2F*fHistHBTafter! Delta Eta vs. Delta Phi after HBT inspired cuts
TH2F*fHistHBTbefore! Delta Eta vs. Delta Phi before HBT inspired cuts
TH1F*fHistMcAllEta!
TH1F*fHistMcAllEta_Hijing!
TH1F*fHistMcAllEta_NotHijing!
TH1F*fHistMcAllPt!
TH1F*fHistMcAllPt_Dec!
TH1F*fHistMcAllPt_Hijing!
TH1F*fHistMcAllPt_Inj!
TH1F*fHistMcGenerator!
TH1F*fHistMcStats!
TH2F*fHistNSigmaTOF[1][5]! nsigma TOF
TH2F*fHistNSigmaTPC[1][5]! nsigma TPC
TH1I*fHistNev!
TH1F*fHistNumOfPartPerEvt!
TH1F*fHistQA[1][14]!
TH2F*fHistRefTracks!
TH2F*fHistRefTracksCent[1][6]!
TH2F*fHistSingleHadronsEtaPt[1]!
TH1F*fHistSingleHadronsPt[1]!
TH2F*fHistTOFbeta[1]! TOF beta
TH2F*fHistTOFbeta_selected[1]! TOF beta
TH2F*fHistTPCdEdx[1]! TPC dEdx
TH2F*fHistTPCdEdx_selected[1]! TPC dEdx
TH2F*fHistTracksEtaTrigVsEtaAssoc[1]!
TH2F*fHistTracksEtaTrigVsEtaAssocMixed[1]!
TH1F*fHistTriggerRun!
TH1F*fHistTriggerStats!
TH1D*fHistTriggerWeighting!
TH2F*fHistTwoTrackDistancePt[9][2]
TH2F*fHistV0M!
TH1F*fHist_HijingBg!
TH2F*fHistoNSigma[1]!
TList*fList
Int_tfMinNEventsToMix
Int_tfMinNumTrackAliEventPoolManager(), Size of track buffer for event mixing (number of tracks to fill the pool)
AliAODEvent*fMyAODEvent!
AliAODHeader*fMyAODHeader!
AliAODTrack*fMyAODTrack!
AliCFContainer*fMyCFCont!
TClonesArray*fMyMcArray!
AliMCEventHandler*fMyMcHandler!
AliAODMCHeader*fMyMcHeader!
Int_tfMyMcType
AliAODVertex*fMyPrimVtx!
TObjArray*fMyprimMCParticlesPID!
TObjArray*fMyprimRecoTracksMatchedPID!
TObjArray*fMyprimRecoTracksPID!
static const Int_tfNMaxBinsCentrality
static const Int_tfNMaxBinsEta
static const Int_tfNMaxBinsPt
static const Int_tfNMaxBinsZvtx
Int_tfNbinsCent
Int_tfNbinsEta
Int_tfNbinsPt
Int_tfNbinsZvtx
Int_tfOnlyOneEtaSidedecides that only trigger particle from one eta side are considered (0 = all; -1 = negative, 1 = positive)
AliPIDResponse*fPIDResponse! PID response object
Int_tfPIDassocTypePID assoc type to correlate
Int_tfPIDtrigTypePID trigger type to correlate
AliEventPoolManager*fPoolMgr!
Int_tfPoolSizeAliEventPoolManager(), max number of event to mix
TAxis*fPtAxis
Bool_tfPtOrderapply pT,a < pt,t condition; default: kTRUE
Bool_tfQCutcut on momentum difference to suppress femtoscopic effect correlations
Int_tfRejectResonanceDaughtersreject all daughters of all resonance candidates (1: test method (cut at m_inv=0.9); 2: k0; 3: lambda)
Bool_tfRejectZeroTrackEventsreject events which have no tracks (using the eta, pT cuts defined)
Bool_tfRemoveDuplicatesremove particles with the same label (double reconstruction)
Bool_tfRemoveWeakDecaysremove secondaries from weak decays from tracks and particles
Int_tfSelectCharge(un)like sign selection when building correlations: 0: no selection; 1: unlike sign; 2: like sign
Double_tfTrackEtaMax
Double_tfTrackEtaMin
Double_tfTrackPtMax
Double_tfTrackPtMin
UInt_tfTrackStatusif non-0, the bits set in this variable are required for each track
Float_tfTriggerRestrictEtarestrict eta range for trigger particle (default: -1 [off])
Int_tfTriggerSelectChargeselect charge of trigger particle: 1: positive; -1 negative
Int_tfTriggerTypesets trigger -> AliVEvent::kMB, AliVEvent::kHighMult
TAxis*fTriggerWeighting
Float_tfTwoTrackCutMinRadiusminimum radius for two-track efficiency cut
Float_tfTwoTrackEfficiencyCutenable two-track efficiency cut
Bool_tfUseMC
Double_tfVxMax
Double_tfVyMax
Double_tfVzMax
Bool_tfWeightPerEventweight with the number of trigger particles per event
TAxis*fZvtxAxis
Int_tfnTracksVertexQA tracks pointing to principal vertex
Double_tfnsigmas[5][4]nsigma values
Double_tnsigmaHMPID[5]
Double_tnsigmaITS[5]
Double_tnsigmaTOF[5]
Double_tnsigmaTPC[5]
Float_ttwoTrackEfficiencyCutValueset it 0.02 as default in dphicorrelations

Class Charts

Inheritance Chart:
TTask
AliAnalysisTask
AliAnalysisTaskSE
AliAnalysisTaskPidPidCorrelations

Function documentation

AliAnalysisTaskPidPidCorrelations()
   , fWriteCorrTree ( kTRUE )
   , fVariablesTreeCorr ( 0x0 )
   , fCorrVariables ( 0 )
   , fFilterBit ( 128 )
   , fHistCorrSingle ( 0x0 )
   , fHistPoolMgrQA ( 0x0 )
   , fHistCorrPairSame ( 0x0 )
   , fHistCorrPairMixed ( 0x0 )
   , fHistConversionbefore ( 0x0 )
   , fHistConversionafter ( 0x0 )
   , fHistPsiMinusPhi ( 0x0 )
   , fHistResonancesBefore ( 0x0 )
   , fHistResonancesRho ( 0x0 )
   , fHistResonancesK0 ( 0x0 )
   , fHistResonancesLambda ( 0x0 )
   , fHistQbefore ( 0x0 )
   , fHistQafter ( 0x0 )
 Dummy constructor ALWAYS needed for I/O.
AliAnalysisTaskPidPidCorrelations(const char *name)
   , fWriteCorrTree ( kTRUE )
   , fVariablesTreeCorr ( 0x0 )
   , fCorrVariables ( 0 )
   , fFilterBit ( 128 )
   , fHistCorrSingle ( 0x0 )
   , fHistPoolMgrQA ( 0x0 )
   , fHistCorrPairSame ( 0x0 )
   , fHistCorrPairMixed ( 0x0 )
   , fHistConversionbefore ( 0x0 )
   , fHistConversionafter ( 0x0 )
   , fHistPsiMinusPhi ( 0x0 )
   , fHistResonancesBefore ( 0x0 )
   , fHistResonancesRho ( 0x0 )
   , fHistResonancesK0 ( 0x0 )
   , fHistResonancesLambda ( 0x0 )
   , fHistQbefore ( 0x0 )
   , fHistQafter ( 0x0 )
 Constructor
~AliAnalysisTaskPidPidCorrelations()
 Destructor. Clean-up the output list, but not the histograms that are put inside
 (the list is owner and will clean-up these histograms). Protect in PROOF case.
void UserExec(Option_t* option)
 _____ get input event
void AddSettingsTree()
Write settings to output list
void Analyse()
void FillCorrelations(TObjArray* particles, TObjArray* particlesMixed, Double_t centrality, Double_t zVtx, Double_t bSign, Bool_t twoTrackEfficiencyCut, Double_t fTwoTrackEfficiencyCutValue, /*Int_t step,*/ Double_t weight)
Bool_t CheckMcDistributions(TClonesArray* arrayMC, AliAODMCHeader* mcHeader)
TString GetGenerator(Int_t label, AliAODMCHeader* MCheader)
 taken from .../PWGHF/vertexingHF/AliVertexingHFUtils.cxx
Bool_t IsFromHijingBg(Int_t mcTrackLabel)
void FillMcGeneratorHistos(TString genLabel)
Bool_t VertexSelection(TObject* obj, Int_t ntracks, Int_t centBin, Double_t gVxMax, Double_t gVyMax, Double_t gVzMax)
void CleanUp(TObjArray* tracks, TObject* mcObj)
TObjArray* AcceptTracks(Int_t centBin, TObject* arrayMC, /*Bool_t onlyprimaries,*/ Bool_t useCuts)
_____ number of RECO AOD tracks
TObjArray* AcceptMcTracks(Int_t centBin, Bool_t onlyprimaries, Bool_t useCuts)
_____ number of MC AOD particles
TObjArray* AcceptMcRecoMachedTracks(Int_t centBin, Bool_t onlyprimaries, Bool_t useCuts)
_____ number of RECO AOD tracks
void UserCreateOutputObjects()
   fList = new THashList;
Double_t* GetBinning(const Char_t* configuration, const Char_t* tag, Int_t& nBins)
 takes the binning from <configuration> identified by <tag>
 configuration syntax example:
 eta: 2.4, -2.3, -2.2, -2.1, -2.0, -1.9, -1.8, -1.7, -1.6, -1.5, -1.4, -1.3, -1.2, -1.1, -1.0, -0.9, -0.8, -0.7, -0.6, -0.5, -0.4, -0.3, -0.2, -0.1, 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 2.0, 2.1, 2.2, 2.3, 2.4
 phi: .....

 returns bin edges which have to be deleted by the caller
Bool_t CheckTrack(AliAODTrack* track)
 check if the track status flags are set
void CalculateNSigmas(AliAODTrack* track, Int_t centBin, Bool_t* pidFlag, Bool_t fillQA)
Int_t FindNSigma(AliAODTrack* track)
_____ ITS
Int_t GetParticleID(AliVTrack* trk, Int_t centbin, Bool_t fillQA)
Int_t GetParticleIDMC(AliVTrack* trk, Int_t centbin, Bool_t fillQA)
Double_t MakeTPCPID(AliAODTrack* track, Double_t* nSigma)
___ fills nSigma array with TPC nsigmas for e, mu, pi, K, p
Double_t MakeTOFPID(AliAODTrack* track, Double_t* nSigma)
___ fills nSigma array with TOF nsigmas for e, mu, pi, K, p
Bool_t HasTPCPID(AliAODTrack* track) const
 check PID signal
Bool_t HasTOFPID(AliAODTrack* track) const
void RemoveDuplicates(TObjArray* tracks)
 remove particles with the same label
void RemoveWeakDecays(TObjArray* tracks, TObject* mcObj)
 remove particles Form weak decays
 <tracks> can be the following cases:
 a. tracks: in this case the label is taken and then case b.
 b. particles: it is checked if IsSecondaryFromWeakDecay is true
 <mcObj> can be AOD (TClonesArray) or ESD (AliMCEvent)
Double_t DeltaPhi(Double_t Dphi) const
TH2F* GetHisto2D(const Char_t* name)
Int_t GetCentBin(Double_t centrality)
void SetCentBinning(Int_t nBins, Double_t* limits)
Int_t GetZvtxBin(Double_t zvtx)
void SetZvtxBinning(Int_t nBins, Double_t* limits)
Int_t GetPtBin(Double_t valPt)
void SetPtBinning(Int_t nBins, Double_t* limits)
Int_t GetEtaBin(Double_t valEta)
void SetEtaBinning(Int_t nBins, Double_t* limits)
Double_t GetDPhiStar(Double_t phi1, Double_t pt1, Double_t charge1, Double_t phi2, Double_t pt2, Double_t charge2, Double_t radius, Double_t bSign)
 calculates dphistar

Float_t GetInvMassSquared(Float_t pt1, Float_t eta1, Float_t phi1, Float_t pt2, Float_t eta2, Float_t phi2, Float_t m0_1, Float_t m0_2)
 calculate inv mass squared
 same can be achieved, but with more computing time with
TLorentzVector photon, p1, p2;
  p1.SetPtEtaPhiM(triggerParticle->Pt(), triggerEta, triggerParticle->Phi(), 0.510e-3);
  p2.SetPtEtaPhiM(particle->Pt(), eta[j], particle->Phi(), 0.510e-3);
  photon = p1+p2;
photon.M()
Float_t GetInvMassSquaredCheap(Float_t pt1, Float_t eta1, Float_t phi1, Float_t pt2, Float_t eta2, Float_t phi2, Float_t m0_1, Float_t m0_2)
 calculate inv mass squared approximately
void PrintPoolManagerContents()
 Determine the number of pools in the pool manager.
void SetupForMixing()
TObjArray* CloneAndReduceTrackList(TObjArray* tracks)
 clones a track list by using AliPidPidCorrelationReducedTrack which uses much less memory (used for event mixing)
void FillCFcontainers(TObjArray* mc, TObjArray* reco, TObjArray* recomatch, Double_t cent/*, Double_t zvtx*//*const AliVEvent* event*/)
TString GetOutputListName() const
void Terminate(Option_t* option)
AliInfo("Terminate","");
AliAnalysisTaskPidPidCorrelations()
void SetMaxVertexZ(Double_t maxVertexZ)
 Setters/Getters
{ fVzMax = maxVertexZ; }
void SetTriggerMask(Int_t triggerType)
   void	SetFilterBit(Int_t fbit)		{ fFilterBit = fbit; }
{ fTriggerType = triggerType; }
void SetCentralityEstimator(const Char_t* centralityestimator)
{ fCentralityEstimator = centralityestimator; }
void SetCentralityRange(Float_t min, Float_t max)
   void	SetEtaRange(Double_t etaMin, Double_t etaMax) { fTrackEtaMin = etaMin; fTrackEtaMax = etaMax; }
void SetVertexDiamond(Double_t vx, Double_t vy, Double_t vz)
{ fVxMax = vx; fVyMax = vy; fVzMax = vz;}
void SetKinematicsCutsAOD(Double_t ptmin, Double_t ptmax, Double_t etamin, Double_t etamax)
void SetFilterMask(UInt_t i,Int_t iType = 0){fFilterMask = i;fFilterType = iType;}
{ fTrackPtMin = ptmin; fTrackPtMax = ptmax; fTrackEtaMin = etamin; fTrackEtaMax = etamax; }
void SetMixingTracks(Int_t tracks, Int_t poolsize)
{ fMinNumTrack = tracks; fPoolSize = poolsize;}
void SetFillpT(Bool_t flag)
{ fFillpT = flag; }
void SetTwoTrackEfficiencyCut(Float_t value = 0.02, Float_t min = 0.8)
void SetPairCuts(Bool_t conversions, Bool_t resonances)
{ fCutConversions = conversions; fCutResonances = resonances; }
void SetWeightPerEvent(Bool_t flag = kTRUE)
{ fWeightPerEvent = flag; }
void SetPtOrder(Bool_t flag)
{ fPtOrder = flag; }
void SetEtaOrdering(Bool_t flag)
{ fEtaOrdering = flag; }
void SetEventMixing(Bool_t flag)
{ fFillMixed = flag; }
void SetRejectResonanceDaughters(Int_t value)
void SetSelectCharge(Int_t selectCharge)
{ fSelectCharge = selectCharge; }
void SetSelectTriggerCharge(Int_t selectCharge)
{ fTriggerSelectCharge = selectCharge; }
void SetSelectAssociatedCharge(Int_t selectCharge)
{ fAssociatedSelectCharge = selectCharge; }
void SetTriggerRestrictEta(Float_t eta)
void SetOnlyOneEtaSide(Int_t flag)
{ fOnlyOneEtaSide = flag; }
void SetPIDsToCorrelate(Int_t triggerPID, Int_t assocPID)
{ fPIDtrigType = triggerPID; fPIDassocType = assocPID; }
void SetMC(Bool_t isMC)
{fUseMC = isMC;}
Bool_t GetMC() const
{return fUseMC;}
TString GetCentralityEstimator() const
Double_t GetMaxVertexZ() const
   Int_t		GetMyFilterBit()		{ return fFilterBit; }
  Double_t* GetNSigmas(AliParticleSpecies species) { return fnsigmas[species]; }	// get nsigma[ipart][idet], calculated in CalculateNSigmas(trk)

  //_______ AliTHn
  AliTHn*	GetHistCorrSingle() {return fHistCorrSingle;}
  void 		SetHistCorrSingle(AliTHn *gHist) { fHistCorrSingle = gHist; }//fHistP->FillParent(); fHistP->DeleteContainers();}
  AliTHn*	GetHistCorrPairSame() {return fHistCorrPairSame;}
  void 		SetHistCorrPairSame(AliTHn *gHist) { fHistCorrPairSame = gHist; }//fHistN->FillParent(); fHistN->DeleteContainers();}
  AliTHn*	GetHistCorrPairMixed() {return fHistCorrPairMixed;}
  void 		SetHistCorrPairMixed(AliTHn *gHist) { fHistCorrPairMixed = gHist; }//fHistN->FillParent(); fHistN->DeleteContainers();}

AliTHn* MakeHistCorr(const Char_t* name) const;
{ return fVzMax; }
void UseMomentumDifferenceCut(Bool_t fqcut = kFALSE, Double_t gDeltaPtCutMin = 0.01)
{ fQCut = fqcut; fDeltaPtMin = fqcut ? gDeltaPtCutMin : 0.; }
Double_t GetBeta(AliAODTrack* track)
AliAnalysisTaskPidPidCorrelations& operator=(const AliAnalysisTaskPidPidCorrelations& )