]>
Commit | Line | Data |
---|---|---|
ae0fdd7d | 1 | void runAODProof(Int_t c=1, const char * proofMode = "full") |
ed06106e | 2 | { //1 data AOD049 |
3 | //2 MC AOD048 | |
4 | //3 data AOD086 | |
5 | //4 MC AOD090 | |
6 | ||
0e268798 | 7 | // gEnv->SetValue("XSec.GSI.DelegProxy", "2"); |
ed06106e | 8 | |
9 | gSystem->Load("libTree.so"); | |
0e268798 | 10 | gSystem->Load("libGeom.so"); |
ae0fdd7d | 11 | gSystem->Load("libVMC.so"); |
12 | gSystem->Load("libPhysics.so"); | |
13 | gSystem->Load("libSTEERBase.so"); | |
14 | gSystem->Load("libESD.so"); | |
15 | gSystem->Load("libAOD.so"); | |
16 | gSystem->Load("libANALYSIS.so"); | |
17 | gSystem->Load("libOADB.so"); | |
18 | gSystem->Load("libANALYSISalice.so"); | |
19 | gSystem->AddIncludePath("-I$ALICE_ROOT/include"); | |
c88234ad | 20 | |
ae0fdd7d | 21 | AliAnalysisAlien * handler = new AliAnalysisAlien("test"); |
22 | handler->SetOverwriteMode(); | |
23 | handler->SetRunMode(proofMode); | |
24 | handler->SetProofReset(0); | |
25 | //handler->SetROOTVersion("v5-33-02a"); | |
26 | //handler->SetAliROOTVersion("v5-03-11-AN"); | |
27 | handler->SetAliROOTVersion("v5-04-25-AN"); | |
6522a8cb | 28 | |
ae0fdd7d | 29 | handler->SetNproofWorkers(54); |
30 | //handler->SetNproofWorkersPerSlave(4); | |
31 | handler->SetProofCluster(Form("%s@alice-caf.cern.ch", gSystem->Getenv("CAFUSER"))); | |
32 | //handler->SetProofCluster(Form("%s@skaf.saske.sk",gSystem->Getenv("CAFUSER"))); | |
33 | // Set handler for Real DATA: | |
34 | if (c == 1){ | |
35 | //handler->SetProofDataSet("/alice/data/LHC10h_000138653_p2_AOD049#aodTree"); | |
36 | //handler->SetProofDataSet("/alice/data/LHC10h_000138653_p2_AOD049#aodTree|/alice/data/LHC10h_000138662_p2_AOD049#aodTree|/alice/data/LHC10h_000138666_p2_AOD049#aodTree|/alice/data/LHC10h_000138795_p2_AOD049#aodTree|/alice/data/LHC10h_000139107_p2_AOD049#aodTree|/alice/data/LHC10h_000139110_p2_AOD049#aodTree"); | |
37 | handler->SetProofDataSet("/default/lmilano/LHC10h_000138653_AOD049_p2#aodTree|/default/lmilano/LHC10h_000138662_AOD049_p2#aodTree|/default/lmilano/LHC10h_000138666_AOD049_p2#aodTree|/default/lmilano/LHC10h_000138730_AOD049_p2#aodTree|/default/lmilano/LHC10h_000138732_AOD049_p2#aodTree|/default/lmilano/LHC10h_000139507_AOD049_p2#aodTree|/default/lmilano/LHC10h_000139465_AOD049_p2#aodTree|/default/lmilano/LHC10h_000139437_AOD049_p2#aodTree|/default/lmilano/LHC10h_000139107_AOD049_p2#aodTree|/default/lmilano/LHC10h_000139510_AOD049_p2#aodTree"); | |
38 | } | |
39 | if (c == 2){ | |
40 | //handler->SetProofDataSet("/alice/sim/LHC11a10a_000138653_AOD048#aodTree|/alice/sim/LHC11a10a_000138662_AOD048#aodTree|/alice/sim/LHC11a10a_000138666_AOD048#aodTree|/alice/sim/LHC11a10a_000138795_AOD048#aodTree|/alice/sim/LHC11a10a_000139107_AOD048#aodTree|/alice/sim/LHC11a10a_000139110_AOD048#aodTree"); | |
41 | handler->SetProofDataSet("/default/lmilano/LHC11a10a_138653_AOD048#aodTree|/default/lmilano/LHC11a10a_138662_AOD048#aodTree|/default/lmilano/LHC11a10a_138666_AOD048#aodTree|/default/lmilano/LHC11a10a_138730_AOD048#aodTree|/default/lmilano/LHC11a10a_138732_AOD048#aodTree|/default/lmilano/LHC11a10a_139507_AOD048#aodTree|/default/lmilano/LHC11a10a_139465_AOD048#aodTree|/default/lmilano/LHC11a10a_139437_AOD048#aodTree|/default/lmilano/LHC11a10a_139107_AOD048#aodTree|/default/lmilano/LHC11a10a_139510_AOD048#aodTree"); | |
42 | } | |
43 | if (c == 3){ | |
44 | handler->SetProofDataSet("/default/lmilano/LHC10h_000138653_AOD086_p2#aodTree|/default/lmilano/LHC10h_000138662_AOD086_p2#aodTree|/default/lmilano/LHC10h_000138666_AOD086_p2#aodTree|/default/lmilano/LHC10h_000139107_AOD086_p2#aodTree|/default/lmilano/LHC10h_000138275_AOD086_p2#aodTree"); | |
45 | // handler->SetProofDataSet("/default/lmilano/LHC10h_000138275_AOD086_p2#aodTree"); | |
46 | } | |
47 | if (c == 4){ | |
48 | handler->SetProofDataSet("/default/lmilano/LHC11a10a_bis_138653_AOD090#aodTree|/default/lmilano/LHC11a10a_bis_138662_AOD090#aodTree|/default/lmilano/LHC11a10a_bis_138666_AOD090#aodTree|/default/lmilano/LHC11a10a_bis_139107_AOD090#aodTree|/default/lmilano/LHC11a10a_bis_138653_AOD090#aodTree"); | |
49 | // handler->SetProofDataSet("/default/lmilano/LHC11a10a_bis_138653_AOD090#aodTree"); | |
50 | } | |
ed06106e | 51 | |
ae0fdd7d | 52 | gROOT->LoadMacro("AliSpectraAODTrackCuts.cxx+g"); |
53 | gROOT->LoadMacro("AliSpectraAODEventCuts.cxx+g"); | |
54 | gROOT->LoadMacro("AliSpectraAODHistoManager.cxx+g"); | |
55 | gROOT->LoadMacro("AliSpectraAODPID.cxx+g"); | |
56 | gROOT->LoadMacro("AliAnalysisTaskSpectraAOD.cxx+g"); | |
0e268798 | 57 | |
ae0fdd7d | 58 | handler->SetAliRootMode("default"); |
59 | handler->SetAdditionalLibs("AliSpectraAODHistoManager.cxx AliSpectraAODHistoManager.h AliSpectraAODPID.cxx AliSpectraAODPID.h AliSpectraAODTrackCuts.cxx AliSpectraAODTrackCuts.h AliSpectraAODEventCuts.cxx AliSpectraAODEventCuts.h AliAnalysisTaskSpectraAOD.cxx AliAnalysisTaskSpectraAOD.h"); | |
60 | handler->SetAnalysisSource("Histograms.h HistogramNames.h AliSpectraAODHistoManager.cxx+ AliSpectraAODTrackCuts.cxx+ AliSpectraAODEventCuts.cxx+ AliSpectraAODPID.cxx+ AliAnalysisTaskSpectraAOD.cxx+"); | |
61 | // handler->SetFileForTestMode("filelist.txt"); // list of local files for testing | |
62 | // handler->SetAliRootMode(""); | |
63 | handler->SetClearPackages(); | |
ed06106e | 64 | |
ae0fdd7d | 65 | AliAnalysisManager *mgr = new AliAnalysisManager("testAnalysis"); |
66 | mgr->SetGridHandler(handler); | |
67 | AliAODInputHandler* aodH = new AliAODInputHandler(); | |
68 | mgr->SetInputEventHandler(aodH); | |
ed06106e | 69 | |
ae0fdd7d | 70 | // Add PID task |
71 | gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskPIDResponse.C"); | |
72 | Bool_t isMC = kFALSE; | |
73 | if (c == 2 || c == 4) isMC = kTRUE; | |
74 | AliAnalysisTask * taskPID = AddTaskPIDResponse(isMC); | |
75 | mgr->AddTask(taskPID); | |
ed06106e | 76 | |
ae0fdd7d | 77 | //LOOP OVER SELECTION |
78 | Double_t CentCutMin[4]={0,0,20,20}; | |
79 | Double_t CentCutMax[4]={100,5,40,40}; | |
80 | Double_t QvecCutMin[4]={0,0,0,3}; | |
81 | Double_t QvecCutMax[4]={100,100,2,100}; | |
82 | // Double_t CentCutMin[4]={5,10,20,30}; | |
83 | // Double_t CentCutMax[4]={10,20,30,40}; | |
84 | // Double_t QvecCutMin[4]={0,0,0,0}; | |
85 | // Double_t QvecCutMax[4]={100,100,100,100}; | |
86 | using namespace AliSpectraNameSpace; | |
87 | AliSpectraAODPID *pid = new AliSpectraAODPID(kNSigmaTPCTOF); | |
88 | pid->SetNSigmaCut(3.); | |
97b01bb0 | 89 | |
ae0fdd7d | 90 | for(Int_t iCut=1;iCut<2;iCut++){ |
91 | AliAnalysisTaskSpectraAOD *task = new AliAnalysisTaskSpectraAOD("TaskAODExercise"); | |
92 | mgr->AddTask(task); | |
93 | //physics selection | |
94 | task->SelectCollisionCandidates(); | |
95 | // set pid object | |
96 | task->SetPID(pid); | |
97 | // Set the cuts | |
98 | AliSpectraAODEventCuts * vcuts = new AliSpectraAODEventCuts("Event Cuts"); | |
99 | AliSpectraAODTrackCuts * tcuts = new AliSpectraAODTrackCuts("Track Cuts"); | |
100 | if(c==1 || c==2)tcuts->SetTrackType(5); //AOD 046 & 047. Standard Cut with loose DCA | |
101 | //if(c==1 || c==2)tcuts->SetTrackType(6); //AOD 046 & 047. Standard Cut with tight DCA | |
102 | if(c==3 || c==4)tcuts->SetTrackType(10); //AOD 086 & 090. Standard Raa cut | |
103 | //if(c==3 || c==4)tcuts->SetTrackType(8); //AOD 086 & 090. TPC only | |
104 | //if(c==3 || c==4)tcuts->SetTrackType(2); //AOD 086 & 090. ITS strong | |
105 | tcuts->SetEta(.8); | |
106 | //tcuts->SetDCA(.1); | |
107 | tcuts->SetPt(5); | |
108 | tcuts->SetY(.5); | |
109 | tcuts->SetPtTOFMatching(.6); | |
110 | tcuts->SetQvecMin(QvecCutMin[iCut]); | |
111 | tcuts->SetQvecMax(QvecCutMax[iCut]); | |
112 | vcuts->SetCentralityCutMax(CentCutMax[iCut]); | |
113 | vcuts->SetCentralityCutMin(CentCutMin[iCut]); | |
114 | task->SetEventCuts(vcuts); | |
115 | task->SetTrackCuts(tcuts); | |
116 | vcuts->PrintCuts(); | |
117 | tcuts->PrintCuts(); | |
823864bf | 118 | |
ae0fdd7d | 119 | // check for MC or real data |
120 | if (c == 2 || c == 4) | |
121 | { | |
122 | task->SetIsMC(kTRUE); | |
123 | AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer(); | |
124 | AliAnalysisDataContainer *coutputpt1 = mgr->CreateContainer(Form("chistpt%d",iCut), AliSpectraAODHistoManager::Class(), AliAnalysisManager::kOutputContainer, | |
125 | Form("Pt.AOD.1._MC_Cent%.0fto%.0f_QVec%.1fto%.1f.root",CentCutMin[iCut],CentCutMax[iCut],QvecCutMin[iCut],QvecCutMax[iCut])); | |
126 | AliAnalysisDataContainer *coutputpt2 = mgr->CreateContainer(Form("cvcutpt%d",iCut), AliSpectraAODEventCuts::Class(), AliAnalysisManager::kOutputContainer, | |
127 | Form("Pt.AOD.1._MC_Cent%.0fto%.0f_QVec%.1fto%.1f.root",CentCutMin[iCut],CentCutMax[iCut],QvecCutMin[iCut],QvecCutMax[iCut])); | |
128 | AliAnalysisDataContainer *coutputpt3 = mgr->CreateContainer(Form("ctcutpt%d",iCut), AliSpectraAODTrackCuts::Class(), AliAnalysisManager::kOutputContainer, | |
129 | Form("Pt.AOD.1._MC_Cent%.0fto%.0f_QVec%.1fto%.1f.root",CentCutMin[iCut],CentCutMax[iCut],QvecCutMin[iCut],QvecCutMax[iCut])); | |
130 | AliAnalysisDataContainer *coutputpt4 = mgr->CreateContainer(Form("cpidpt%d",iCut), AliSpectraAODPID::Class(), AliAnalysisManager::kOutputContainer, | |
131 | Form("Pt.AOD.1._MC_Cent%.0fto%.0f_QVec%.1fto%.1f.root",CentCutMin[iCut],CentCutMax[iCut],QvecCutMin[iCut],QvecCutMax[iCut])); | |
132 | } | |
133 | if (c == 1 || c==3) | |
134 | { | |
135 | AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer(); | |
136 | AliAnalysisDataContainer *coutputpt1 = mgr->CreateContainer(Form("chistpt%d",iCut), AliSpectraAODHistoManager::Class(), AliAnalysisManager::kOutputContainer, | |
137 | Form("Pt.AOD.1._data_ptcut_Cent%.0fto%.0f_QVec%.1fto%.1f.root",CentCutMin[iCut],CentCutMax[iCut],QvecCutMin[iCut],QvecCutMax[iCut])); | |
138 | AliAnalysisDataContainer *coutputpt2 = mgr->CreateContainer(Form("cvcutpt%d",iCut), AliSpectraAODEventCuts::Class(), AliAnalysisManager::kOutputContainer, | |
139 | Form("Pt.AOD.1._data_ptcut_Cent%.0fto%.0f_QVec%.1fto%.1f.root",CentCutMin[iCut],CentCutMax[iCut],QvecCutMin[iCut],QvecCutMax[iCut])); | |
140 | AliAnalysisDataContainer *coutputpt3 = mgr->CreateContainer(Form("ctcutpt%d",iCut), AliSpectraAODTrackCuts::Class(), AliAnalysisManager::kOutputContainer, | |
141 | Form("Pt.AOD.1._data_ptcut_Cent%.0fto%.0f_QVec%.1fto%.1f.root",CentCutMin[iCut],CentCutMax[iCut],QvecCutMin[iCut],QvecCutMax[iCut])); | |
142 | AliAnalysisDataContainer *coutputpt4 = mgr->CreateContainer(Form("cpidpt%d",iCut), AliSpectraAODPID::Class(), AliAnalysisManager::kOutputContainer, | |
143 | Form("Pt.AOD.1._data_ptcut_Cent%.0fto%.0f_QVec%.1fto%.1f.root",CentCutMin[iCut],CentCutMax[iCut],QvecCutMin[iCut],QvecCutMax[iCut])); | |
823864bf | 144 | |
ae0fdd7d | 145 | } |
146 | mgr->ConnectInput(task, 0, cinput); | |
147 | mgr->ConnectOutput(task, 1, coutputpt1); | |
148 | mgr->ConnectOutput(task, 2, coutputpt2); | |
149 | mgr->ConnectOutput(task, 3, coutputpt3); | |
150 | mgr->ConnectOutput(task, 4, coutputpt4); | |
151 | } | |
152 | mgr->SetDebugLevel(2); | |
823864bf | 153 | |
ae0fdd7d | 154 | if (!mgr->InitAnalysis()) return; |
155 | mgr->PrintStatus(); | |
156 | mgr->StartAnalysis("proof"); | |
c88234ad | 157 | } |