1 //Create by Christine Nattrass, Rebecca Scott, Irakli Martashvili
2 //University of Tennessee at Knoxville
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, bool data = false, Int_t dataset = 20111, Bool_t test = kTRUE, Int_t material = 0, Bool_t altV0Scale = kFALSE, bool runCompiledVersion = kFALSE
11 gSystem->Load("libTree.so");
12 gSystem->Load("libGeom.so");
13 gSystem->Load("libVMC.so");
14 gSystem->Load("libPhysics.so");
15 gSystem->Load("libXMLIO.so");
17 gSystem->Load("libSTEERBase.so");
18 gSystem->Load("libESD.so");
19 gSystem->Load("libAOD.so");
21 gSystem->Load("libANALYSIS");
22 gSystem->Load("libOADB.so");
23 gSystem->Load("libANALYSISalice");
24 gSystem->Load("libPWGUDbase.so");
26 gSystem->AddIncludePath("-I$ALICE_ROOT/include");
27 gSystem->AddIncludePath("-I$ALICE_ROOT/PWGUD/base");
28 if(runCompiledVersion){
29 gSystem->Load("libPWGLFtotEt.so");
32 gROOT->ProcessLine(".L AliAnalysisEtCuts.cxx+g");
33 gROOT->ProcessLine(".L AliAnalysisHadEtCorrections.cxx+g");
34 gROOT->ProcessLine(".L AliAnalysisEtCommon.cxx+g");
35 gROOT->ProcessLine(".L AliAnalysisHadEt.cxx+g");
36 gROOT->ProcessLine(".L AliAnalysisHadEtMonteCarlo.cxx+g");
37 gROOT->ProcessLine(".L AliAnalysisHadEtReconstructed.cxx+g");
38 gROOT->ProcessLine(".L AliAnalysisTaskTransverseEnergy.cxx+g");
39 gROOT->ProcessLine(".L AliAnalysisTaskHadEt.cxx+g");
42 char *kTreeName = "esdTree" ;
43 TChain * chain = new TChain(kTreeName,"myESDTree") ;
45 gSystem->Load("libNetx.so") ;
46 gSystem->Load("libgapiUI.so");
47 gSystem->Load("libRAliEn.so");
48 TGrid::Connect("alien://") ;
54 chain->Add("/data/LHC10h/pass2_rev15/10000137366041.860/AliESDs.root");//Data Pb+Pb
55 chain->Add("/data/LHC10h/pass2_rev15/10000137366041.870/AliESDs.root");//Data Pb+Pb
56 chain->Add("/data/LHC10h/pass2_rev15/10000137366041.880/AliESDs.root");//Data Pb+Pb
57 chain->Add("/data/LHC10h/pass2_rev15/10000137366041.890/AliESDs.root");//Data Pb+Pb
58 chain->Add("/data/LHC10h/pass2_rev15/10000137366041.900/AliESDs.root");//Data Pb+Pb
61 chain->Add("/data/LHC10h8/137161/999/AliESDs.root");//Hijing Pb+Pb
62 chain->Add("/data/LHC10h8/137161/111/AliESDs.root");//Hijing Pb+Pb
63 chain->Add("/data/LHC10h8/137161/222/AliESDs.root");//Hijing Pb+Pb
64 //chain->Add("/data/LHC11a4_bis/137161/999/AliESDs.root");//Hijing Pb+Pb
65 //chain->Add("/data/LHC10h12/999/AliESDs.root");//Hijing Pb+Pb
70 cout<<"Yes I am analyzing the correct file"<<endl;
71 //chain->Add("/data/LHC10dpass2/10000126403050.70/AliESDs.root");//data
72 //chain->Add("/data/LHC11a/11000146856042.90/AliESDs.root");//data pp 2.76 TeV w/SDD pass 2
73 chain->Add("/data/LHC11a/11000146860043.90/AliESDs.root");//data pp 2.76 TeV w/SDD pass 3
76 //chain->Add("/data/LHC10d15/1821/AliESDs.root");//simulation p+p
77 chain->Add("/data/LHC11b10a/001/AliESDs.root");
81 // Make the analysis manager
82 AliAnalysisManager *mgr = new AliAnalysisManager("TotEtManager");
85 gROOT->LoadMacro("CreateAlienHandlerHadEt.C");
86 AliAnalysisGrid *alienHandler = CreateAlienHandlerHadEt(dataset,data,test,material,altV0Scale,runCompiledVersion);//integer dataset, boolean isData, bool submit-in-test-mode, bool use alternatve V0 scaling
87 if (!alienHandler) return;
88 mgr->SetGridHandler(alienHandler);
91 AliVEventHandler* esdH = new AliESDInputHandler;
92 mgr->SetInputEventHandler(esdH);
93 AliMCEventHandler* handler = new AliMCEventHandler;
95 handler->SetReadTR(kFALSE);
96 mgr->SetMCtruthEventHandler(handler);
100 gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskPhysicsSelection.C");
101 AliPhysicsSelectionTask *physSelTask = AddTaskPhysicsSelection(!data);
102 if(!physSelTask) { Printf("no physSelTask"); return; }
103 AliPhysicsSelection *physSel = physSelTask->GetPhysicsSelection();
104 //physSel->AddCollisionTriggerClass("+CINT1B-ABCE-NOPF-ALL");// #3119 #769");
107 gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskCentrality.C");
109 AliCentralitySelectionTask *centTask;
112 AliCentralitySelectionTask *centTask = AddTaskCentrality();
114 cout<<"Setting up centrality for MC"<<endl;
115 centTask->SetMCInput();
118 cout<<"Setting up centrality for data"<<endl;
122 if(dataset==20100){//PbPb 2.76 TeV
123 if(data){gSystem->CopyFile("rootFiles/corrections/corrections.LHC11a4_bis.PbPb.ForData.root","corrections.root",kTRUE);}
124 else{gSystem->CopyFile("rootFiles/corrections/corrections.LHC11a4_bis.PbPb.ForSimulations.root","corrections.root",kTRUE);}
125 gSystem->CopyFile("ConfigHadEtMonteCarloPbPb.C","ConfigHadEtMonteCarlo.C",kTRUE);
126 gSystem->CopyFile("ConfigHadEtReconstructedPbPb.C","ConfigHadEtReconstructed.C",kTRUE);
127 //centTask->SetPass(1);
130 if(dataset==2009){//pp 900 GeV
131 gSystem->CopyFile("ConfigHadEtMonteCarlopp900GeV.C","ConfigHadEtMonteCarlo.C",kTRUE);
132 gSystem->CopyFile("ConfigHadEtReconstructedpp900GeV.C","ConfigHadEtReconstructed.C",kTRUE);
133 if(data){gSystem->CopyFile("rootFiles/corrections/corrections.LHC11b1a.pp.ForData.root","corrections.root",kTRUE);}
134 else{gSystem->CopyFile("rootFiles/corrections/corrections.LHC11b1a.pp.ForSimulations.root","corrections.root",kTRUE);}
136 if(dataset==20111){//pp 2.76 TeV
137 if(altV0Scale)gSystem->CopyFile("ConfigHadEtMonteCarlopp276TeVAlt.C","ConfigHadEtMonteCarlo.C",kTRUE);
138 else{gSystem->CopyFile("ConfigHadEtMonteCarlopp276TeV.C","ConfigHadEtMonteCarlo.C",kTRUE);}
139 gSystem->CopyFile("ConfigHadEtReconstructedpp276TeV.C","ConfigHadEtReconstructed.C",kTRUE);
140 if(data){gSystem->CopyFile("rootFiles/corrections/corrections.LHC11b10a.pp.ForData.root","corrections.root",kTRUE);}
141 else{gSystem->CopyFile("rootFiles/corrections/corrections.LHC11b10a.pp.ForSimulations.root","corrections.root",kTRUE);}
143 if(dataset==2010){//pp 7 TeV
144 gSystem->CopyFile("ConfigHadEtMonteCarlopp7TeV.C","ConfigHadEtMonteCarlo.C",kTRUE);
145 gSystem->CopyFile("ConfigHadEtReconstructedpp7TeV.C","ConfigHadEtReconstructed.C",kTRUE);
146 if(data){gSystem->CopyFile("rootFiles/corrections/corrections.LHC10e20.pp.ForData.root","corrections.root",kTRUE);}
147 else{gSystem->CopyFile("rootFiles/corrections/corrections.LHC10e20.pp.ForSimulations.root","corrections.root",kTRUE);}
150 AliAnalysisTaskHadEt *task2 = new AliAnalysisTaskHadEt("TaskHadEt",!data);//,recoFile,mcFile);
151 if(!data) task2->SetMcData();
152 //Add thing here to select collision type!!
153 //if(dataset!=20100){task2->SelectCollisionCandidates(AliVEvent::kMB ) ;}
154 if(dataset!=20100){task2->SelectCollisionCandidates(AliVEvent::kMB ) ;}
156 AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer();
157 AliAnalysisDataContainer *coutput2 = mgr->CreateContainer("out2", TList::Class(), AliAnalysisManager::kOutputContainer,"Et.ESD.new.sim.root");
158 // mgr->ConnectInput(task2,0,cinput1);
159 // mgr->ConnectOutput(task2,1,coutput2);
160 mgr->ConnectInput(task2,0,cinput1);
161 mgr->ConnectOutput(task2,1,coutput2);
163 mgr->SetDebugLevel(0);
165 if (!mgr->InitAnalysis()) return;
168 mgr->StartAnalysis("grid");
171 mgr->StartAnalysis("local",chain);