1 void Pi0Spectrum(const char* dataset="")
4 gSystem->Load("libTree");
5 gSystem->Load("libGeom");
6 gSystem->Load("libVMC");
7 gSystem->Load("libPhysics");
9 //load analysis framework
10 gSystem->Load("libANALYSIS");
11 gSystem->Load("libANALYSISalice"); //AliAnalysisTaskSE
13 gSystem->AddIncludePath("-I$ALICE_ROOT/include -I$ALICE_ROOT/PHOS");
15 // A task can be compiled dynamically with AClic
16 gROOT->LoadMacro("AliCaloPhoton.cxx+g");
17 gROOT->LoadMacro("AliAnalysisTaskPi0.cxx+g");
20 TString token = gSystem->Getenv("GRID_TOKEN") ;
22 TGrid::Connect("alien://");
24 AliInfo("You are not connected to the GRID") ;
26 cout << "Pi0Analysis: processing collection " << dataset << endl;
29 TChain* chain = new TChain("esdTree");
30 TGridCollection * collection = dynamic_cast<TGridCollection*>(TAlienCollection::Open(dataset));
32 TAlienResult* result = collection->GetGridResult("",0 ,0);
33 TList* rawFileList = result->GetFileInfoList();
35 for (Int_t counter=0 ; counter < rawFileList->GetEntries() ; counter++) {
36 TFileInfo * fi = static_cast<TFileInfo*>(rawFileList->At(counter)) ;
37 const char * rawFile = fi->GetCurrentUrl()->GetUrl() ;
38 printf("Processing %s\n", rawFile) ;
40 printf("Chain: %d entries.\n",chain->GetEntries());
43 // Make the analysis manager
44 AliAnalysisManager *mgr = new AliAnalysisManager("Pi0Spectrum");
47 AliESDInputHandler* esdH = new AliESDInputHandler();
48 esdH->SetReadFriends(kFALSE);
49 mgr->SetInputEventHandler(esdH);
52 mgr->SetDebugLevel(0);
54 // Add physics selection
55 gROOT->LoadMacro("$ALICE_ROOT/OADB/macros/AddTaskPhysicsSelection.C");
56 AliPhysicsSelectionTask* physSelTask = AddTaskPhysicsSelection();
59 AliAnalysisTaskPi0 *task1 = new AliAnalysisTaskPi0("Pi0Spectrum");
61 TFile *fBadMap = TFile::Open("BadMap_LHC11a_pp2760_20130902.root");
62 if(fBadMap->IsOpen()){
63 printf("\n\n...Adding PHOS bad channel map \n") ;
66 for(Int_t mod=1;mod<4; mod++){
67 sprintf(key,"PHOS_BadMap_mod%d",mod) ;
68 TH2I * h = (TH2I*)fBadMap->Get(key) ;
70 task1->SetPHOSBadMap(mod,h) ;
74 // Set BC gap for LHC10e in seconds
75 task1->SetBCgap(525.e-09);
77 // Set abs.recalibration for LHC11a
78 task1->SetRecalib(1, 0.9942);
79 task1->SetRecalib(2, 0.9822);
80 task1->SetRecalib(3, 1.0072);
82 task1->SelectCollisionCandidates(AliVEvent::kMB);
85 // Create containers for input/output
86 AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
87 AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("histESD",TList::Class(),AliAnalysisManager::kOutputContainer,"histos.root");
89 // Connect input/output
90 mgr->ConnectInput(task1 , 0, cinput);
91 mgr->ConnectOutput(task1, 1, coutput1);
93 if (mgr->InitAnalysis()) {
95 mgr->StartAnalysis("local", chain);