]>
Commit | Line | Data |
---|---|---|
00221bed | 1 | void runAODProof(Int_t c=4, 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"); |
c88234ad | 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"); | |
20 | ||
c88234ad | 21 | AliAnalysisAlien * handler = new AliAnalysisAlien("test"); |
22 | handler->SetOverwriteMode(); | |
23 | handler->SetRunMode(proofMode); | |
24 | handler->SetProofReset(0); | |
823864bf | 25 | //handler->SetROOTVersion("v5-33-02a"); |
26 | //handler->SetAliROOTVersion("v5-03-11-AN"); | |
d42a22a2 | 27 | handler->SetAliROOTVersion("v5-04-25-AN"); |
6522a8cb | 28 | |
00221bed | 29 | handler->SetNproofWorkers(54); |
30 | //handler->SetNproofWorkersPerSlave(4); | |
d42a22a2 | 31 | handler->SetProofCluster(Form("%s@alice-caf.cern.ch", gSystem->Getenv("CAFUSER"))); |
32 | //handler->SetProofCluster(Form("%s@skaf.saske.sk",gSystem->Getenv("CAFUSER"))); | |
823864bf | 33 | // Set handler for Real DATA: |
ed06106e | 34 | if (c == 1){ |
742d45e0 | 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"); | |
ed06106e | 37 | } |
38 | if (c == 2){ | |
39 | 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"); | |
40 | } | |
41 | if (c == 3){ | |
d42a22a2 | 42 | //handler->SetProofDataSet("/default/lmilano/LHC10h_000138653_AOD086_p2#aodTree"); |
ed06106e | 43 | 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"); |
44 | } | |
45 | if (c == 4){ | |
46 | 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"); | |
47 | } | |
48 | ||
97b01bb0 | 49 | gROOT->LoadMacro("AliSpectraAODTrackCuts.cxx+g"); |
50 | gROOT->LoadMacro("AliSpectraAODEventCuts.cxx+g"); | |
51 | gROOT->LoadMacro("AliSpectraAODHistoManager.cxx+g"); | |
52 | gROOT->LoadMacro("AliSpectraAODPID.cxx+g"); | |
53 | gROOT->LoadMacro("AliAnalysisTaskSpectraAOD.cxx+g"); | |
0e268798 | 54 | |
c88234ad | 55 | handler->SetAliRootMode("default"); |
f6a38178 | 56 | handler->SetAdditionalLibs("AliSpectraAODHistoManager.cxx AliSpectraAODHistoManager.h AliSpectraAODPID.cxx AliSpectraAODPID.h AliSpectraAODTrackCuts.cxx AliSpectraAODTrackCuts.h AliSpectraAODEventCuts.cxx AliSpectraAODEventCuts.h AliAnalysisTaskSpectraAOD.cxx AliAnalysisTaskSpectraAOD.h"); |
57 | handler->SetAnalysisSource("Histograms.h HistogramNames.h AliSpectraAODHistoManager.cxx+ AliSpectraAODTrackCuts.cxx+ AliSpectraAODEventCuts.cxx+ AliSpectraAODPID.cxx+ AliAnalysisTaskSpectraAOD.cxx+"); | |
0e268798 | 58 | // handler->SetFileForTestMode("filelist.txt"); // list of local files for testing |
c88234ad | 59 | // handler->SetAliRootMode(""); |
60 | handler->SetClearPackages(); | |
ed06106e | 61 | |
c88234ad | 62 | AliAnalysisManager *mgr = new AliAnalysisManager("testAnalysis"); |
63 | mgr->SetGridHandler(handler); | |
64 | AliAODInputHandler* aodH = new AliAODInputHandler(); | |
65 | mgr->SetInputEventHandler(aodH); | |
ed06106e | 66 | |
c88234ad | 67 | // Add PID task |
68 | gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskPIDResponse.C"); | |
823864bf | 69 | Bool_t isMC = kFALSE; |
ed06106e | 70 | if (c == 2 || c == 4) isMC = kTRUE; |
823864bf | 71 | AliAnalysisTask * taskPID = AddTaskPIDResponse(isMC); |
c88234ad | 72 | mgr->AddTask(taskPID); |
ed06106e | 73 | |
823864bf | 74 | //LOOP OVER SELECTION |
75 | Double_t CentCutMin[4]={0,0,20,20}; | |
76 | Double_t CentCutMax[4]={100,5,40,40}; | |
77 | Double_t QvecCutMin[4]={0,0,0,3}; | |
78 | Double_t QvecCutMax[4]={100,100,2,100}; | |
624a6bb0 | 79 | // Double_t CentCutMin[4]={5,10,20,30}; |
80 | // Double_t CentCutMax[4]={10,20,30,40}; | |
81 | // Double_t QvecCutMin[4]={0,0,0,0}; | |
82 | // Double_t QvecCutMax[4]={100,100,100,100}; | |
0e268798 | 83 | using namespace AliSpectraNameSpace; |
84 | AliSpectraAODPID *pid = new AliSpectraAODPID(kNSigmaTPCTOF); | |
f6a38178 | 85 | pid->SetNSigmaCut(3.); |
97b01bb0 | 86 | |
6522a8cb | 87 | for(Int_t iCut=1;iCut<2;iCut++){ |
823864bf | 88 | AliAnalysisTaskSpectraAOD *task = new AliAnalysisTaskSpectraAOD("TaskAODExercise"); |
89 | mgr->AddTask(task); | |
90 | //physics selection | |
91 | task->SelectCollisionCandidates(); | |
e8b0fe64 | 92 | // set pid object |
93 | task->SetPID(pid); | |
823864bf | 94 | // Set the cuts |
95 | AliSpectraAODEventCuts * vcuts = new AliSpectraAODEventCuts("Event Cuts"); | |
96 | AliSpectraAODTrackCuts * tcuts = new AliSpectraAODTrackCuts("Track Cuts"); | |
97b01bb0 | 97 | //if(c==1 || c==2)tcuts->SetTrackType(5); //AOD 046 & 047. Standard Cut with loose DCA |
742d45e0 | 98 | if(c==1 || c==2)tcuts->SetTrackType(6); //AOD 046 & 047. Standard Cut with tight DCA |
ed06106e | 99 | if(c==3 || c==4)tcuts->SetTrackType(10); //AOD 086 & 090. Standard Raa cut |
d42a22a2 | 100 | //if(c==3 || c==4)tcuts->SetTrackType(8); //AOD 086 & 090. TPC only |
101 | //if(c==3 || c==4)tcuts->SetTrackType(2); //AOD 086 & 090. ITS strong | |
823864bf | 102 | tcuts->SetEta(.8); |
103 | //tcuts->SetDCA(.1); | |
624a6bb0 | 104 | tcuts->SetPt(5); |
97b01bb0 | 105 | tcuts->SetY(.5); |
d42a22a2 | 106 | tcuts->SetPtTOFMatching(.6); |
823864bf | 107 | tcuts->SetQvecMin(QvecCutMin[iCut]); |
108 | tcuts->SetQvecMax(QvecCutMax[iCut]); | |
109 | vcuts->SetCentralityCutMax(CentCutMax[iCut]); | |
110 | vcuts->SetCentralityCutMin(CentCutMin[iCut]); | |
111 | task->SetEventCuts(vcuts); | |
112 | task->SetTrackCuts(tcuts); | |
823864bf | 113 | vcuts->PrintCuts(); |
114 | tcuts->PrintCuts(); | |
115 | ||
116 | // check for MC or real data | |
ed06106e | 117 | if (c == 2 || c == 4) |
823864bf | 118 | { |
119 | task->SetIsMC(kTRUE); | |
120 | AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer(); | |
121 | AliAnalysisDataContainer *coutputpt1 = mgr->CreateContainer(Form("chistpt%d",iCut), AliSpectraAODHistoManager::Class(), AliAnalysisManager::kOutputContainer, | |
122 | Form("Pt.AOD.1._MC_Cent%.0fto%.0f_QVec%.1fto%.1f.root",CentCutMin[iCut],CentCutMax[iCut],QvecCutMin[iCut],QvecCutMax[iCut])); | |
123 | AliAnalysisDataContainer *coutputpt2 = mgr->CreateContainer(Form("cvcutpt%d",iCut), AliSpectraAODEventCuts::Class(), AliAnalysisManager::kOutputContainer, | |
124 | Form("Pt.AOD.1._MC_Cent%.0fto%.0f_QVec%.1fto%.1f.root",CentCutMin[iCut],CentCutMax[iCut],QvecCutMin[iCut],QvecCutMax[iCut])); | |
125 | AliAnalysisDataContainer *coutputpt3 = mgr->CreateContainer(Form("ctcutpt%d",iCut), AliSpectraAODTrackCuts::Class(), AliAnalysisManager::kOutputContainer, | |
126 | Form("Pt.AOD.1._MC_Cent%.0fto%.0f_QVec%.1fto%.1f.root",CentCutMin[iCut],CentCutMax[iCut],QvecCutMin[iCut],QvecCutMax[iCut])); | |
e8b0fe64 | 127 | AliAnalysisDataContainer *coutputpt4 = mgr->CreateContainer(Form("cpidpt%d",iCut), AliSpectraAODPID::Class(), AliAnalysisManager::kOutputContainer, |
128 | Form("Pt.AOD.1._MC_Cent%.0fto%.0f_QVec%.1fto%.1f.root",CentCutMin[iCut],CentCutMax[iCut],QvecCutMin[iCut],QvecCutMax[iCut])); | |
823864bf | 129 | } |
ed06106e | 130 | if (c == 1 || c==3) |
823864bf | 131 | { |
132 | AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer(); | |
133 | AliAnalysisDataContainer *coutputpt1 = mgr->CreateContainer(Form("chistpt%d",iCut), AliSpectraAODHistoManager::Class(), AliAnalysisManager::kOutputContainer, | |
134 | Form("Pt.AOD.1._data_ptcut_Cent%.0fto%.0f_QVec%.1fto%.1f.root",CentCutMin[iCut],CentCutMax[iCut],QvecCutMin[iCut],QvecCutMax[iCut])); | |
135 | AliAnalysisDataContainer *coutputpt2 = mgr->CreateContainer(Form("cvcutpt%d",iCut), AliSpectraAODEventCuts::Class(), AliAnalysisManager::kOutputContainer, | |
136 | Form("Pt.AOD.1._data_ptcut_Cent%.0fto%.0f_QVec%.1fto%.1f.root",CentCutMin[iCut],CentCutMax[iCut],QvecCutMin[iCut],QvecCutMax[iCut])); | |
137 | AliAnalysisDataContainer *coutputpt3 = mgr->CreateContainer(Form("ctcutpt%d",iCut), AliSpectraAODTrackCuts::Class(), AliAnalysisManager::kOutputContainer, | |
138 | Form("Pt.AOD.1._data_ptcut_Cent%.0fto%.0f_QVec%.1fto%.1f.root",CentCutMin[iCut],CentCutMax[iCut],QvecCutMin[iCut],QvecCutMax[iCut])); | |
e8b0fe64 | 139 | AliAnalysisDataContainer *coutputpt4 = mgr->CreateContainer(Form("cpidpt%d",iCut), AliSpectraAODPID::Class(), AliAnalysisManager::kOutputContainer, |
0e268798 | 140 | Form("Pt.AOD.1._data_ptcut_Cent%.0fto%.0f_QVec%.1fto%.1f.root",CentCutMin[iCut],CentCutMax[iCut],QvecCutMin[iCut],QvecCutMax[iCut])); |
823864bf | 141 | |
142 | } | |
143 | mgr->ConnectInput(task, 0, cinput); | |
144 | mgr->ConnectOutput(task, 1, coutputpt1); | |
145 | mgr->ConnectOutput(task, 2, coutputpt2); | |
146 | mgr->ConnectOutput(task, 3, coutputpt3); | |
e8b0fe64 | 147 | mgr->ConnectOutput(task, 4, coutputpt4); |
823864bf | 148 | } |
c88234ad | 149 | mgr->SetDebugLevel(2); |
823864bf | 150 | |
c88234ad | 151 | if (!mgr->InitAnalysis()) return; |
152 | mgr->PrintStatus(); | |
ed06106e | 153 | mgr->StartAnalysis("proof"); |
c88234ad | 154 | } |