]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG4/totEt/macros/runHadEt.C
Macros for running Et analysis
[u/mrichter/AliRoot.git] / PWG4 / totEt / macros / runHadEt.C
1 //Create by Christine Nattrass, Rebecca Scott, Irakli Martashvili
2 //University of Tennessee at Knoxville
3
4 //by default this runs locally
5 //With the argument true this submits jobs to the grid
6 //As written this requires an xml script tag.xml in the ~/et directory on the grid to submit jobs
7 void runHadEt(bool submit = false) {
8     TStopwatch timer;
9     timer.Start();
10     gSystem->Load("libTree.so");
11     gSystem->Load("libGeom.so");
12     gSystem->Load("libVMC.so");
13     gSystem->Load("libXMLIO.so");
14
15     gSystem->Load("libSTEERBase.so");
16     gSystem->Load("libESD.so");
17     gSystem->Load("libAOD.so");
18
19     gSystem->Load("libANALYSIS");
20     gSystem->Load("libANALYSISalice");
21
22     gSystem->AddIncludePath("-I$ALICE_ROOT/include");
23    gROOT->ProcessLine(".L AliAnalysisHadEt.cxx+g");
24    gROOT->ProcessLine(".L AliAnalysisHadEtMonteCarlo.cxx+g");
25    gROOT->ProcessLine(".L AliAnalysisHadEtReconstructed.cxx+g");
26    gROOT->ProcessLine(".L AliAnalysisTaskHadEt.cxx+g");
27
28
29   char *kTreeName = "esdTree" ;
30   TChain * chain   = new TChain(kTreeName,"myESDTree") ;
31   if(submit){      
32     gSystem->Load("libNetx.so") ; 
33     gSystem->Load("libgapiUI.so");
34     gSystem->Load("libRAliEn.so"); 
35     TGrid::Connect("alien://") ;
36   }
37   chain->Add("/data/LHC10d15/1821/AliESDs.root");
38
39   // Make the analysis manager
40   AliAnalysisManager *mgr = new AliAnalysisManager("TotEtManager");
41   if(submit){
42     gROOT->LoadMacro("CreateAlienHandlerHadEtSim.C");
43     AliAnalysisGrid *alienHandler = CreateAlienHandlerHadEtSim();  
44     if (!alienHandler) return;
45     mgr->SetGridHandler(alienHandler);
46   }
47
48   AliVEventHandler* esdH = new AliESDInputHandler;
49   mgr->SetInputEventHandler(esdH);
50   AliMCEventHandler* handler = new AliMCEventHandler;
51   handler->SetReadTR(kFALSE);
52   mgr->SetMCtruthEventHandler(handler);
53   AliAnalysisTaskHadEt *task2 = new AliAnalysisTaskHadEt("TaskHadEt");
54   mgr->AddTask(task2);
55   AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer();
56   AliAnalysisDataContainer *coutput2 = mgr->CreateContainer("out2", TList::Class(), AliAnalysisManager::kOutputContainer,"Et.ESD.new.sim.root");
57   mgr->ConnectInput(task2,0,cinput1);
58   mgr->ConnectOutput(task2,1,coutput2);
59   
60   mgr->SetDebugLevel(0);
61   
62   if (!mgr->InitAnalysis()) return;
63   mgr->PrintStatus();
64   if(submit){
65     mgr->StartAnalysis("grid");
66   }
67   else{
68     mgr->StartAnalysis("local",chain);
69   }
70
71   timer.Stop();
72   timer.Print();
73 }