]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/FLOW/macros/AddTaskFlowEPCascade.C
From Zhong-Bao Yin: Added AliAnalysisTaskFlowEPCascade
[u/mrichter/AliRoot.git] / PWGCF / FLOW / macros / AddTaskFlowEPCascade.C
1 AliAnalysisTask *AddTaskFlowEPCascade(Float_t centrMin=0, Float_t centrMax=100,\r
2                                       TString fileName, TString suffixName="",\r
3                                       Double_t vtxCut = 10., \r
4                                       Double_t etaCut = 0.9, \r
5                                       Int_t nTPCcls = 70,\r
6                                       Double_t mSigma = 0.0024)\r
7 {\r
8   /*\r
9   //-E-V-E-N-T- -c-u-t-s-----------------------------------------------------\r
10   AliFlowEventCuts* cutsEvent \r
11     = new AliFlowEventCuts(Form("event_cuts_%s", suffixName.Data()));\r
12   cutsEvent->SetCentralityPercentileRange(centrMin,centrMax);\r
13   cutsEvent->SetCentralityPercentileMethod(AliFlowEventCuts::kV0);\r
14   cutsEvent->SetRefMultMethod(AliFlowEventCuts::kV0);\r
15   cutsEvent->SetNContributorsRange(2);\r
16   cutsEvent->SetPrimaryVertexZrange( -10., 10. );\r
17   cutsEvent->SetCutSPDvertexerAnomaly();\r
18   cutsEvent->SetCutZDCtiming();\r
19   cutsEvent->SetCutTPCmultiplicityOutliers();\r
20 \r
21   AliFlowTrackCuts* cutsRP \r
22     = (AliFlowTrackCuts*) AliFlowTrackCuts::GetStandardGlobalTrackCuts2010();\r
23   cutsRP->SetPtRange(0.15, 10.);  //added to extend pt range\r
24   */\r
25 \r
26   AliFlowTrackCuts * cutsDaughter \r
27     = new AliFlowTrackCuts(Form("daughter_cuts_%s",suffixName.Data()));\r
28   cutsDaughter->SetPtRange(0.15,10.0);\r
29   cutsDaughter->SetEtaRange(-etaCut,etaCut);\r
30   cutsDaughter->SetMinNClustersTPC(nTPCcls);\r
31   cutsDaughter->SetMaxChi2PerClusterTPC(4.0);\r
32   cutsDaughter->SetAODfilterBit(1); //TPC track only\r
33   cutsDaughter->SetRequireITSRefit(kFALSE);\r
34   cutsDaughter->SetRequireTPCRefit(kTRUE);\r
35   cutsDaughter->SetMinNClustersITS(0);\r
36   cutsDaughter->SetAcceptKinkDaughters(kFALSE);\r
37 \r
38   AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();\r
39   AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();\r
40 \r
41   //____________________________________________//                           \r
42   double pdg = 1.32171; double hwid = mSigma;\r
43   double sep = 6*hwid; double XiStart = pdg-sep; \r
44   double XiBands[3][2];\r
45   XiBands[0][0]=(XiStart+6*hwid*0)-2*hwid; \r
46   XiBands[0][1]=(XiStart+6*hwid*0)+2*hwid;\r
47   XiBands[1][0]=(XiStart+6*hwid*1)-2*hwid;   \r
48   XiBands[1][1]=(XiStart+6*hwid*1)+2*hwid;\r
49   XiBands[2][0]=(XiStart+6*hwid*2)-2*hwid; \r
50   XiBands[2][1]=(XiStart+6*hwid*2)+2*hwid;\r
51 \r
52   double OmegaPDG = 1.67245;   \r
53   double Omegasg = mSigma; // 1 sigma?\r
54   double OmegaStart = OmegaPDG-6*Omegasg; \r
55   double OmegaBands[3][2];\r
56   OmegaBands[0][0]=(OmegaStart+6*Omegasg*0)-2*Omegasg;   \r
57   OmegaBands[0][1]=(OmegaStart+6*Omegasg*0)+2*Omegasg;\r
58   OmegaBands[1][0]=(OmegaStart+6*Omegasg*1)-2*Omegasg;     \r
59   OmegaBands[1][1]=(OmegaStart+6*Omegasg*1)+2*Omegasg;\r
60   OmegaBands[2][0]=(OmegaStart+6*Omegasg*2)-2*Omegasg;   \r
61   OmegaBands[2][1]=(OmegaStart+6*Omegasg*2)+2*Omegasg;\r
62 \r
63   AliAnalysisTaskFlowEPCascade * task\r
64     = new AliAnalysisTaskFlowEPCascade(Form("v2EP_%s", \r
65                                             suffixName.Data()), \r
66                                        centrMin, centrMax,\r
67                                        XiBands, OmegaBands);\r
68   // task->SetFlowEventCuts(cutsEvent);\r
69   //task->SetFlowTrackCuts(cutsRP);\r
70   task->SetVertexCut(vtxCut);\r
71   task->SetFlowDauTrackCuts(cutsDaughter);\r
72   task->SelectCollisionCandidates(AliVEvent::kMB);\r
73   mgr->AddTask(task);\r
74 \r
75   AliAnalysisDataContainer *coutput1 =\r
76     mgr->CreateContainer(Form("hist_%s", suffixName.Data()), \r
77                          TList::Class(),\r
78                          AliAnalysisManager::kOutputContainer,\r
79                          Form("%s.root",fileName.Data()));\r
80   // Connect input/output                                                      \r
81   mgr->ConnectInput(task, 0, cinput);\r
82   //mgr->ConnectInput(task, 1, cinput1);\r
83   mgr->ConnectOutput(task, 1, coutput1);\r
84   \r
85   return task;\r
86 }\r
87 \r