]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGGA/PHOSTasks/PHOS_PbPb/macros/GRID/Pi0SpectrumLHC11h.C
organized some macros in subdirectories of PHOS_PbPb/macros
[u/mrichter/AliRoot.git] / PWGGA / PHOSTasks / PHOS_PbPb / macros / GRID / Pi0SpectrumLHC11h.C
CommitLineData
517e5005 1void Pi0SpectrumLHC11h(const char* dataset="collection.xml",
da09d42f 2 bool recompile = true
517e5005 3)
4{
b8bea077 5 /* $Id$ */
517e5005 6 TStopwatch timer;
7 timer.Start();
8
9
f19ba990 10 TStringToken libs("Core,Tree,Geom,VMC,Physics,Minuit,Gui,XMLParser,Minuit2,Proof,STEERBase,ESD,AOD,OADB,ANALYSIS,ANALYSISalice,CDB,RAWDatabase,STEER,CORRFW,PHOSUtils,PHOSbase,PHOSpi0Calib,PHOSrec,PHOSshuttle,PHOSsim", ",");
517e5005 11 while( libs.NextToken() )
12 gSystem->Load( Form("lib%s", libs.Data()) );
13
14 gSystem->Load("libTree.so");
15 gSystem->Load("libGeom.so");
16 gSystem->Load("libVMC.so");
17 gSystem->Load("libPhysics.so");
18
19 //load analysis framework
20 gSystem->Load("libANALYSIS");
21 gSystem->Load("libANALYSISalice"); //AliAnalysisTaskSE
22
23 gSystem->AddIncludePath("-I$ALICE_ROOT/include -I$ALICE_ROOT/PHOS");
24
25 // A task can be compiled dynamically with AClic
26 if( recompile ) {
27 gROOT->LoadMacro("AliCaloPhoton.cxx+g");
da09d42f 28 gROOT->LoadMacro("AliPHOSEPFlattener.cxx+g");
13a3d806 29 gROOT->LoadMacro("AliAnalysisTaskPi0Flow.cxx+g");
517e5005 30 }
31 else {
32 gSystem->Load("libPWGGAPHOSTasks.so");
33 }
34
35 // Connect to alien
36 TString token = gSystem->Getenv("GRID_TOKEN") ;
37 if (1) // token == "OK" )
38 TGrid::Connect("alien://");
39 else
40 AliInfo("You are not connected to the GRID") ;
41
42 cout << "Pi0Analysis: processing collection " << dataset << endl;
43
44 // Create the chain
45 TChain* chain = new TChain("aodTree");
46
47 TGridCollection * collection = dynamic_cast<TGridCollection*>(TAlienCollection::Open(dataset));
48
49 TAlienResult* result = collection->GetGridResult("",0 ,0);
50 TList* rawFileList = result->GetFileInfoList();
51
52 for (Int_t counter=0 ; counter < rawFileList->GetEntries() ; counter++) {
53 TFileInfo * fi = static_cast<TFileInfo*>(rawFileList->At(counter)) ;
54 const char * rawFile = fi->GetCurrentUrl()->GetUrl() ;
55 printf("Processing %s\n", rawFile) ;
56 chain->Add(rawFile);
57 printf("Chain: %d entries.\n",chain->GetEntriesFast());
58 }
59
60 // Make the analysis manager
61 AliAnalysisManager *mgr = new AliAnalysisManager("Pi0Spectrum");
62 mgr->SetCommonFileName("histos.root");
63
64 // AOD input handler
65 AliAODInputHandler* aodH = new AliAODInputHandler();
66 mgr->SetInputEventHandler(aodH);
67
68
69 // Debug level
85394e40 70 mgr->SetDebugLevel(2);
517e5005 71
72 gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskEventplane.C");
73 AliEPSelectionTask *taskEP = AddTaskEventplane() ;
74
75 gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskVZEROEPSelection.C");
76 AliVZEROEPSelectionTask *selTask = AddTaskVZEROEPSelection();
77
78 // Add my task
79 AliAnalysisTaskPi0Flow* task;
80 if ( recompile ) {
81 task = new AliAnalysisTaskPi0Flow("AliAnalysisTaskPi0Flow");
82 //task->SetPeriod(AliAnalysisTaskPi0Flow::kLHC11h);
83 mgr->AddTask(task);
84 mgr->ConnectInput(task, 0, mgr->GetCommonInputContainer());
f19ba990 85 mgr->ConnectOutput(task, 1, mgr->CreateContainer("outCont1", TList::Class(),AliAnalysisManager::kOutputContainer,"histos.root"));
517e5005 86 } else {
87 gROOT->LoadMacro("$ALICE_ROOT/PWGGA/PHOSTasks/PHOS_PbPb/AddTaskPHOSPi0Flow.C");
88 task = AddTaskPHOSPi0Flow();
89 }
90
91/*
92 TFile *fBadMap = TFile::Open("alien:///alice/cern.ch/user/p/prsnko/BadMaps/BadMap_LHC10h_period1.root");
93 // TFile *fBadMap = TFile::Open("BadMap_LHC10h_period1.root");
94 if(fBadMap->IsOpen()){
95 printf("\n\n...Adding PHOS bad channel map \n") ;
96 gROOT->cd();
97 char key[55] ;
98 for(Int_t mod=1;mod<4; mod++){
99 sprintf(key,"PHOS_BadMap_mod%d",mod) ;
100 TH2I * h = (TH2I*)fBadMap->Get(key) ;
101 if(h)
102 task1->SetPHOSBadMap(mod,h) ;
103 }
104 fBadMap->Close() ;
105 }
106*/
107
108
109
110 // // Create containers for input/output
111 // AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
112 // AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("pi0SpecOut1",TList::Class(),AliAnalysisManager::kOutputContainer,"histos.root");
113
114 // // Connect input/output
115 // mgr->ConnectInput(task1 , 0, cinput);
116 // mgr->ConnectOutput(task1, 1, coutput1);
117
118 if (mgr->InitAnalysis()) {
119 mgr->PrintStatus();
120 mgr->StartAnalysis("local", chain);
121 }
122
123 timer.Stop();
124 timer.Print();
125}