]>
Commit | Line | Data |
---|---|---|
c88234ad | 1 | void runAODProof(Int_t c, const char * proofMode = "full") |
2 | { | |
3 | ||
4 | gEnv->SetValue("XSec.GSI.DelegProxy", "2"); | |
5 | ||
4070f709 | 6 | gSystem->Load("libMinuit"); |
7 | gSystem->Load("libTree"); | |
8 | gSystem->Load("libGeom"); | |
9 | gSystem->Load("libVMC"); | |
10 | gSystem->Load("libPhysics"); | |
11 | gSystem->Load("libSTEERBase"); | |
12 | gSystem->Load("libESD"); | |
13 | gSystem->Load("libAOD"); | |
14 | gSystem->Load("libANALYSIS"); | |
15 | gSystem->Load("libOADB"); | |
16 | gSystem->Load("libANALYSISalice"); | |
c88234ad | 17 | gSystem->AddIncludePath("-I$ALICE_ROOT/include"); |
18 | ||
19 | ||
20 | AliAnalysisAlien * handler = new AliAnalysisAlien("test"); | |
21 | handler->SetOverwriteMode(); | |
22 | handler->SetRunMode(proofMode); | |
23 | handler->SetProofReset(0); | |
e8b0fe64 | 24 | handler->SetAliROOTVersion("v5-02-20-AN"); |
c88234ad | 25 | |
e8b0fe64 | 26 | // handler->SetProofCluster(Form("%s@alice-caf.cern.ch", gSystem->Getenv("CAFUSER"))); |
27 | handler->SetProofCluster("alice-caf.cern.ch"); | |
c88234ad | 28 | // handler->SetProofCluster(Form("%s@skaf.saske.sk",gSystem->Getenv("CAFUSER"))); |
29 | ||
30 | // Set handler for Real DATA: | |
31 | if (c == 1) | |
32 | { | |
33 | handler->SetProofDataSet("/alice/data/LHC10h_000138653_p2_AOD049#aodTree"); | |
34 | // handler->SetProofDataSet("/alice/sim/LHC11a10a_000139107_AOD048#aodTree|alice/sim/LHC11a10a_000138653_AOD048#aodTree"); | |
35 | } | |
36 | if (c == 2) | |
37 | { | |
38 | handler->SetProofDataSet("/alice/sim/LHC11a10a_000139107_AOD048#aodTree|/alice/sim/LHC11a10a_000138653_AOD048#aodTree|/alice/sim/LHC11a10a_000139110_AOD048#aodTree|/alice/sim/LHC11a10a_000138662_AOD048#aodTree|/alice/sim/LHC11a10a_000138666_AOD048#aodTree|/alice/sim/LHC11a10a_000138795_AOD048#aodTree"); | |
39 | } | |
40 | handler->SetNproofWorkersPerSlave(1); | |
41 | handler->SetAliRootMode("default"); | |
42 | handler->SetAdditionalLibs("AliSpectraAODHistoManager.cxx AliSpectraAODHistoManager.h AliSpectraAODEventCuts.cxx AliSpectraAODEventCuts.h AliSpectraAODTrackCuts.cxx AliSpectraAODTrackCuts.h AliAnalysisTaskSpectraAOD.cxx AliAnalysisTaskSpectraAOD.h"); | |
43 | handler->SetAnalysisSource("AliSpectraAODHistoManager.cxx+ AliSpectraAODEventCuts.cxx+ AliSpectraAODTrackCuts.cxx+ AliAnalysisTaskSpectraAOD.cxx+"); | |
44 | handler->SetFileForTestMode("filelist.txt"); // list of local files for testing | |
45 | // handler->SetAliRootMode(""); | |
46 | handler->SetClearPackages(); | |
47 | ||
48 | ||
49 | AliAnalysisManager *mgr = new AliAnalysisManager("testAnalysis"); | |
50 | mgr->SetGridHandler(handler); | |
51 | AliAODInputHandler* aodH = new AliAODInputHandler(); | |
52 | mgr->SetInputEventHandler(aodH); | |
53 | ||
54 | gROOT->LoadMacro("AliSpectraAODTrackCuts.cxx+g"); | |
55 | gROOT->LoadMacro("AliSpectraAODEventCuts.cxx+g"); | |
56 | gROOT->LoadMacro("AliSpectraAODHistoManager.cxx+g"); | |
57 | gROOT->LoadMacro("AliAnalysisTaskSpectraAOD.cxx+g"); | |
58 | ||
59 | ||
60 | // Add PID task | |
61 | gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskPIDResponse.C"); | |
62 | Bool_t isMC = kFALSE; | |
63 | if (c == 2 || c == 3) isMC = kTRUE; | |
64 | AliAnalysisTask * taskPID = AddTaskPIDResponse(isMC); | |
65 | mgr->AddTask(taskPID); | |
66 | ||
67 | ||
68 | AliAnalysisTaskSpectraAOD *task = new AliAnalysisTaskSpectraAOD("TaskAODExercise"); | |
69 | mgr->AddTask(task); | |
70 | ||
71 | // Set the cuts | |
72 | AliSpectraAODEventCuts * vcuts = new AliSpectraAODEventCuts("Event Cuts"); | |
73 | AliSpectraAODTrackCuts * tcuts = new AliSpectraAODTrackCuts("Track Cuts"); | |
74 | tcuts->SetTrackType(6); | |
75 | tcuts->SetEta(.8); | |
76 | // tcuts->SetDCA(.1); | |
77 | tcuts->SetPt(1.2); | |
78 | vcuts->SetCentralityCutMax(5.); // example min max cuts | |
79 | vcuts->SetCentralityCutMin(0.); | |
80 | task->SetEventCuts(vcuts); | |
81 | task->SetTrackCuts(tcuts); | |
82 | task->SetNSigmaForIdentification(3.); // FIXME | |
83 | task->SetYCut(.5); | |
84 | // check for MC or real data | |
85 | if (c == 2 || c == 3) | |
86 | { | |
87 | task->SetIsMC(kTRUE); | |
88 | ||
89 | ||
90 | AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer(); | |
91 | AliAnalysisDataContainer *coutputpt1 = mgr->CreateContainer("chistpt", AliSpectraAODHistoManager::Class(), AliAnalysisManager::kOutputContainer, "Pt.AOD.1._MC.root"); | |
92 | AliAnalysisDataContainer *coutputpt2 = mgr->CreateContainer("cvcutpt", AliSpectraAODEventCuts::Class(), AliAnalysisManager::kOutputContainer, "Pt.AOD.1._MC.root"); | |
93 | AliAnalysisDataContainer *coutputpt3 = mgr->CreateContainer("ctcutpt", AliSpectraAODTrackCuts::Class(), AliAnalysisManager::kOutputContainer, "Pt.AOD.1._MC.root"); | |
94 | } | |
95 | if (c == 1) | |
96 | { | |
97 | AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer(); | |
98 | AliAnalysisDataContainer *coutputpt1 = mgr->CreateContainer("chistpt", AliSpectraAODHistoManager::Class(), AliAnalysisManager::kOutputContainer, "Pt.AOD.1._data_ptcut.root"); | |
99 | AliAnalysisDataContainer *coutputpt2 = mgr->CreateContainer("cvcutpt", AliSpectraAODEventCuts::Class(), AliAnalysisManager::kOutputContainer, "Pt.AOD.1._data_ptcut.root"); | |
100 | AliAnalysisDataContainer *coutputpt3 = mgr->CreateContainer("ctcutpt", AliSpectraAODTrackCuts::Class(), AliAnalysisManager::kOutputContainer, "Pt.AOD.1._data_ptcut.root"); | |
101 | ||
102 | } | |
103 | mgr->ConnectInput(task, 0, cinput); | |
104 | mgr->ConnectOutput(task, 1, coutputpt1); | |
105 | mgr->ConnectOutput(task, 2, coutputpt2); | |
106 | mgr->ConnectOutput(task, 3, coutputpt3); | |
107 | mgr->SetDebugLevel(2); | |
108 | ||
109 | if (!mgr->InitAnalysis()) return; | |
110 | mgr->PrintStatus(); | |
111 | if (c == 3) | |
112 | { | |
113 | mgr->StartAnalysis("local"); | |
114 | } | |
115 | if (c != 3) | |
116 | { | |
117 | mgr->StartAnalysis("proof"); | |
118 | } | |
119 | } |