]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Changes needed to run the correction tasks
authorpchrist <pchrist@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 9 Dec 2009 14:41:28 +0000 (14:41 +0000)
committerpchrist <pchrist@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 9 Dec 2009 14:41:28 +0000 (14:41 +0000)
PWG2/SPECTRA/macros/configProtonCorrectionAnalysisTask.C
PWG2/SPECTRA/macros/runProtonsCorrectionAnalysis.C

index ad8a10fec3f57ca176a5557e9c382b1618115587..9160233f4639dd4621d9b9743c56c7db952ca6b7 100644 (file)
@@ -3,7 +3,7 @@ AliProtonCorrectionAnalysisTask* GetAliProtonCorrectionAnalysisTask(const char*
   AliProtonCorrectionAnalysisTask *taskProtons = new AliProtonCorrectionAnalysisTask("TaskProtonsProtonCorrection");
   if(fIsOn_AliProtonAbsorptionCorrection||fIsOn_AliProtonFeedDownAnalysis||fIsOn_AliProtonSpectraCorrection) {
     gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonAnalysisBaseObject.C"); 
-    AliProtonAnalysisBase *baseAnalysis = GetProtonAnalysisBaseObject(mode,analysisType,pidMode);
+    AliProtonAnalysisBase *baseAnalysis = GetProtonAnalysisBaseObject(mode,kTRUE,analysisType,pidMode);
     taskProtons->SetBaseAnalysis(baseAnalysis);
   }    
   else
index e25c5c703f7c957c06c6ccdf64cb3f1a2e4f1323..d7de38bb0650aa774eafb86a5918ef808674db37 100644 (file)
@@ -1,4 +1,8 @@
-void runProtonsCorrectionAnalysis(const char* analysisType  = "Hybrid",const char* pidMode = "Bayesian",Bool_t fIsOn_AliProtonAbsorptionCorrection=kTRUE, Bool_t fIsOn_AliProtonFeedDownAnalysis=kTRUE,Bool_t fIsOn_AliProtonSpectraCorrection=kTRUE) 
+void runProtonsCorrectionAnalysis(const char* analysisType  = "Hybrid",
+                                 const char* pidMode = "Bayesian",
+                                 Bool_t fIsOn_AliProtonAbsorptionCorrection=kTRUE, 
+                                 Bool_t fIsOn_AliProtonFeedDownAnalysis=kTRUE,
+                                 Bool_t fIsOn_AliProtonSpectraCorrection=kTRUE) 
 {
   //Macro to run the proton feed-down analysis tested for local, proof & GRID.
   //Local: Takes four arguments, the analysis mode, the type of the ESD 
@@ -22,393 +26,407 @@ void runProtonsCorrectionAnalysis(const char* analysisType  = "Hybrid",const cha
   TStopwatch timer;
   timer.Start();
   
-  // runLocal("ESD","TPC","Bayesian","/home/mbroz/FeedDownAnalysis/",fIsOn_AliProtonAbsorptionCorrection,fIsOn_AliProtonFeedDownAnalysis, fIsOn_AliProtonSpectraCorrection);
-  runInteractive("ESD","TPC","Bayesian","/home/marek/Analysis/global_xml/tagtest81627.xml",fIsOn_AliProtonAbsorptionCorrection,fIsOn_AliProtonFeedDownAnalysis, fIsOn_AliProtonSpectraCorrection);
+  //runLocal("ESD","TPC","Bayesian","/home/pchrist/ALICE/Baryons/Analysis/Protons/Local/data",fIsOn_AliProtonAbsorptionCorrection,fIsOn_AliProtonFeedDownAnalysis, fIsOn_AliProtonSpectraCorrection);
+  //runInteractive("ESD","TPC","Bayesian","/home/marek/Analysis/global_xml/tagtest81627.xml",fIsOn_AliProtonAbsorptionCorrection,fIsOn_AliProtonFeedDownAnalysis, fIsOn_AliProtonSpectraCorrection);
   //runBatch("ESD","TPC","Bayesian","wn.xml",fIsOn_AliProtonAbsorptionCorrection,fIsOn_AliProtonFeedDownAnalysis, fIsOn_AliProtonSpectraCorrection);  
-  // runProof("ESD","TPC","Bayesian",200000,"/COMMON/COMMON/LHC09a4_run8101X",fIsOn_AliProtonAbsorptionCorrection,fIsOn_AliProtonFeedDownAnalysis, fIsOn_AliProtonSpectraCorrection);
+  runProof("ESD","TPC","Bayesian",100000,"/COMMON/COMMON/LHC09d9_0.9TeV_0.5T#esdTree",fIsOn_AliProtonAbsorptionCorrection,fIsOn_AliProtonFeedDownAnalysis, fIsOn_AliProtonSpectraCorrection);
   
   timer.Stop();
   timer.Print();
 }
 
 //_________________________________________________//
-void runLocal(const char* mode = "ESD",const char* analysisType = 0x0,const char* pidMode = 0x0, const char* path = 0x0,Bool_t fIsOn_AliProtonAbsorptionCorrection=kTRUE, Bool_t fIsOn_AliProtonFeedDownAnalysis=kTRUE,Bool_t fIsOn_AliProtonSpectraCorrection=kTRUE) 
-{
-       TString smode = mode;
-        TString outputFilename = "ProtonCorrection."; outputFilename += mode;
-       if(analysisType) 
-       {
-               outputFilename += "."; outputFilename += analysisType;
-       }
-       outputFilename += ".root";
+void runLocal(const char* mode = "ESD",
+             const char* analysisType = 0x0,
+             const char* pidMode = 0x0, 
+             const char* path = 0x0,
+             Bool_t fIsOn_AliProtonAbsorptionCorrection=kTRUE, 
+             Bool_t fIsOn_AliProtonFeedDownAnalysis=kTRUE,
+             Bool_t fIsOn_AliProtonSpectraCorrection=kTRUE) {
+  TString smode = mode;
+  TString outputFilename = "ProtonCorrection."; outputFilename += mode;
+  if(analysisType) {
+    outputFilename += "."; outputFilename += analysisType;
+  }
+  outputFilename += ".root";
 
   //____________________________________________________//
   //_____________Setting up the par files_______________//
   //____________________________________________________//
-       //setupPar("STEERBase");
-       gSystem->Load("libSTEERBase.so");
-       //setupPar("ESD");
-       gSystem->Load("libVMC.so");
-       gSystem->Load("libESD.so");
-       //setupPar("AOD");
-       gSystem->Load("libAOD.so");
-       //setupPar("ANALYSIS");
-       gSystem->Load("libANALYSIS.so");
-       //setupPar("ANALYSISalice");
-       gSystem->Load("libANALYSISalice.so");
-       //setupPar("CORRFW");
-       gSystem->Load("libCORRFW.so");
-       //setupPar("PWG2spectra");
-       gSystem->Load("libPWG2spectra.so");
+  setupPar("STEERBase");
+  gSystem->Load("libSTEERBase.so");
+  setupPar("ESD");
+  gSystem->Load("libVMC.so");
+  gSystem->Load("libESD.so");
+  setupPar("AOD");
+  gSystem->Load("libAOD.so");
+  setupPar("ANALYSIS");
+  gSystem->Load("libANALYSIS.so");
+  setupPar("ANALYSISalice");
+  gSystem->Load("libANALYSISalice.so");
+  setupPar("CORRFW");
+  gSystem->Load("libCORRFW.so");
+  setupPar("PWG2spectra");
+  gSystem->Load("libPWG2spectra.so");
   //____________________________________________________//  
   
   //____________________________________________//
-       AliTagAnalysis *tagAnalysis = new AliTagAnalysis("ESD"); 
-       tagAnalysis->ChainLocalTags(path);
-       
-       AliRunTagCuts *runCuts = new AliRunTagCuts();
-       AliLHCTagCuts *lhcCuts = new AliLHCTagCuts();
-       AliDetectorTagCuts *detCuts = new AliDetectorTagCuts();
-       AliEventTagCuts *evCuts = new AliEventTagCuts();
-       
-       TChain* chain = 0x0;
-       chain = tagAnalysis->QueryTags(runCuts,lhcCuts,detCuts,evCuts);
-       //chain->SetBranchStatus("*Calo*",0);
-
-       //____________________________________________//
-       // Make the analysis manager
-       AliAnalysisManager *mgr = new AliAnalysisManager("protonAnalysisManagerProtonCorrection");
-       AliVEventHandler* esdH = new AliESDInputHandler;
-       mgr->SetInputEventHandler(esdH);
-       AliMCEventHandler *mc = new AliMCEventHandler();
-       mgr->SetMCtruthEventHandler(mc);
-       
-       //____________________________________________//
-       /*AliProtonCorrectionAnalysisTask *taskProtons = new AliProtonCorrectionAnalysisTask("TaskProtonsProtonCorrection");
-
-       if(fIsOn_AliProtonAbsorptionCorrection||fIsOn_AliProtonFeedDownAnalysis||fIsOn_AliProtonSpectraCorrection)
-       {
-               gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonAnalysisBaseObject.C"); 
-               AliProtonAnalysisBase *baseAnalysis = GetProtonAnalysisBaseObject(mode,analysisType,pidMode);
-               taskProtons->SetBaseAnalysis(baseAnalysis);
-       }       
-       else
-               return;
-       if(fIsOn_AliProtonAbsorptionCorrection)
-       {
-                 AliProtonAbsorptionCorrection * absorptioncorrection=new AliProtonAbsorptionCorrection();
-                 taskProtons->SetAnalysisObjectAbsorptionCorrection(absorptioncorrection);
-       }
-       if(fIsOn_AliProtonFeedDownAnalysis)
-       {
-               gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonFeedDownAnalysis.C");
-               AliProtonFeedDownAnalysis *analysisFeedDown = GetProtonFeedDownAnalysisObject();
-               taskProtons->SetAnalysisObjectFeedDown(analysisFeedDown);
-       }       
-       if(fIsOn_AliProtonSpectraCorrection)
-       {
-               AliProtonSpectraCorrection* spectracorrection=new AliProtonSpectraCorrection();
-               taskProtons->SetAnalysisObjectSpectraCorrection(spectracorrection);
-       }*/
-       gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configAliProtonCorrectionAnalysisTask.C"); 
-       AliProtonCorrectionAnalysisTask* taskProtons=GetAliProtonCorrectionAnalysisTask(mode,analysisType,pidMode ,fIsOn_AliProtonAbsorptionCorrection, fIsOn_AliProtonFeedDownAnalysis, fIsOn_AliProtonSpectraCorrection); 
-       mgr->AddTask(taskProtons);
-
+  AliTagAnalysis *tagAnalysis = new AliTagAnalysis("ESD"); 
+  tagAnalysis->ChainLocalTags(path);
+  
+  AliRunTagCuts *runCuts = new AliRunTagCuts();
+  AliLHCTagCuts *lhcCuts = new AliLHCTagCuts();
+  AliDetectorTagCuts *detCuts = new AliDetectorTagCuts();
+  AliEventTagCuts *evCuts = new AliEventTagCuts();
+  
+  TChain* chain = 0x0;
+  chain = tagAnalysis->QueryTags(runCuts,lhcCuts,detCuts,evCuts);
+  //chain->SetBranchStatus("*Calo*",0);
+  
+  //____________________________________________//
+  // Make the analysis manager
+  AliAnalysisManager *mgr = new AliAnalysisManager("protonAnalysisManagerProtonCorrection");
+  AliVEventHandler* esdH = new AliESDInputHandler;
+  mgr->SetInputEventHandler(esdH);
+  AliMCEventHandler *mc = new AliMCEventHandler();
+  mgr->SetMCtruthEventHandler(mc);
+  
+  //____________________________________________//
+  /*AliProtonCorrectionAnalysisTask *taskProtons = new AliProtonCorrectionAnalysisTask("TaskProtonsProtonCorrection");
+    
+  if(fIsOn_AliProtonAbsorptionCorrection||fIsOn_AliProtonFeedDownAnalysis||fIsOn_AliProtonSpectraCorrection)
+  {
+  gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonAnalysisBaseObject.C"); 
+  AliProtonAnalysisBase *baseAnalysis = GetProtonAnalysisBaseObject(mode,analysisType,pidMode);
+  taskProtons->SetBaseAnalysis(baseAnalysis);
+  }    
+  else
+  return;
+  if(fIsOn_AliProtonAbsorptionCorrection)
+  {
+  AliProtonAbsorptionCorrection * absorptioncorrection=new AliProtonAbsorptionCorrection();
+  taskProtons->SetAnalysisObjectAbsorptionCorrection(absorptioncorrection);
+  }
+  if(fIsOn_AliProtonFeedDownAnalysis)
+  {
+  gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonFeedDownAnalysis.C");
+  AliProtonFeedDownAnalysis *analysisFeedDown = GetProtonFeedDownAnalysisObject();
+  taskProtons->SetAnalysisObjectFeedDown(analysisFeedDown);
+  }    
+  if(fIsOn_AliProtonSpectraCorrection)
+  {
+  AliProtonSpectraCorrection* spectracorrection=new AliProtonSpectraCorrection();
+  taskProtons->SetAnalysisObjectSpectraCorrection(spectracorrection);
+  }*/
+  gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonCorrectionAnalysisTask.C"); 
+  AliProtonCorrectionAnalysisTask* taskProtons=GetAliProtonCorrectionAnalysisTask(mode,analysisType,pidMode ,fIsOn_AliProtonAbsorptionCorrection, fIsOn_AliProtonFeedDownAnalysis, fIsOn_AliProtonSpectraCorrection); 
+  mgr->AddTask(taskProtons);
+  
   // Create containers for input/output
-       AliAnalysisDataContainer *cinput1 = mgr->CreateContainer("dataChain",TChain::Class(),AliAnalysisManager::kInputContainer);
-       AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("outputList",TList::Class(),AliAnalysisManager::kOutputContainer,outputFilename.Data());
-
+  AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer();
+  AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("outputList",TList::Class(),AliAnalysisManager::kOutputContainer,outputFilename.Data());
+  
   //____________________________________________//
-       mgr->ConnectInput(taskProtons,0,mgr->GetCommonInputContainer());
-       mgr->ConnectOutput(taskProtons,0,coutput1);
-       if (!mgr->InitAnalysis()) 
-               return;
-       mgr->PrintStatus();
-       mgr->StartAnalysis("local",chain);
+  mgr->ConnectInput(taskProtons,0,cinput1);
+  mgr->ConnectOutput(taskProtons,0,coutput1);
+  if (!mgr->InitAnalysis()) 
+    return;
+  mgr->PrintStatus();
+  mgr->StartAnalysis("local",chain);
 }
 
 //_________________________________________________//
-void runInteractive(const char* mode = "ESD",const char* analysisType = 0x0,const char* pidMode = 0x0,const char* collectionName = "tag.xml",Bool_t fIsOn_AliProtonAbsorptionCorrection=kTRUE, Bool_t fIsOn_AliProtonFeedDownAnalysis=kTRUE,Bool_t fIsOn_AliProtonSpectraCorrection=kTRUE) 
-{
-        gSystem->Load("libProofPlayer.so");
-
-       TString smode = mode;
-       TString outputFilename = "ProtonCorrection."; outputFilename += mode;
-       if(analysisType) 
-       {
-               outputFilename += "."; outputFilename += analysisType;
-       }
-        outputFilename += ".root";
-
-       printf("*** Connect to AliEn ***\n");
-       TGrid::Connect("alien://");
-       
-       //____________________________________________________//
-       //_____________Setting up the par files_______________//
-       //____________________________________________________//
-       //setupPar("STEERBase");
-       gSystem->Load("libSTEERBase.so");
-       //setupPar("ESD");
-       gSystem->Load("libVMC.so");
-       gSystem->Load("libESD.so");
-       //setupPar("AOD");
-       gSystem->Load("libAOD.so");
-       //setupPar("ANALYSIS");
-       gSystem->Load("libANALYSIS.so");
-       //setupPar("ANALYSISalice");
-       gSystem->Load("libANALYSISalice.so");
-       //setupPar("CORRFW");
-       gSystem->Load("libCORRFW.so");
-       //setupPar("PWG2spectra");
-       gSystem->Load("libPWG2spectra.so");
+void runInteractive(const char* mode = "ESD",
+                   const char* analysisType = 0x0,
+                   const char* pidMode = 0x0,
+                   const char* collectionName = "tag.xml",
+                   Bool_t fIsOn_AliProtonAbsorptionCorrection=kTRUE, 
+                   Bool_t fIsOn_AliProtonFeedDownAnalysis=kTRUE,
+                   Bool_t fIsOn_AliProtonSpectraCorrection=kTRUE) {
+  gSystem->Load("libProofPlayer.so");
+  
+  TString smode = mode;
+  TString outputFilename = "ProtonCorrection."; outputFilename += mode;
+  if(analysisType) {
+    outputFilename += "."; outputFilename += analysisType;
+  }
+  outputFilename += ".root";
+  
+  printf("*** Connect to AliEn ***\n");
+  TGrid::Connect("alien://");
+  
+  //____________________________________________________//
+  //_____________Setting up the par files_______________//
+  //____________________________________________________//
+  setupPar("STEERBase");
+  gSystem->Load("libSTEERBase.so");
+  setupPar("ESD");
+  gSystem->Load("libVMC.so");
+  gSystem->Load("libESD.so");
+  setupPar("AOD");
+  gSystem->Load("libAOD.so");
+  setupPar("ANALYSIS");
+  gSystem->Load("libANALYSIS.so");
+  setupPar("ANALYSISalice");
+  gSystem->Load("libANALYSISalice.so");
+  setupPar("CORRFW");
+  gSystem->Load("libCORRFW.so");
+  setupPar("PWG2spectra");
+  gSystem->Load("libPWG2spectra.so");
   //____________________________________________________//  
+  
   //____________________________________________//
-       AliTagAnalysis *tagAnalysis = new AliTagAnalysis("ESD");
-       
-       AliRunTagCuts *runCuts = new AliRunTagCuts();
-       AliLHCTagCuts *lhcCuts = new AliLHCTagCuts();
-       AliDetectorTagCuts *detCuts = new AliDetectorTagCuts();
-       AliEventTagCuts *evCuts = new AliEventTagCuts();
-       
-       //grid tags
-       TAlienCollection* coll = TAlienCollection::Open(collectionName);
-       TGridResult* TagResult = coll->GetGridResult("",0,0);
-       tagAnalysis->ChainGridTags(TagResult);
-       TChain* chain = 0x0;
-       chain = tagAnalysis->QueryTags(runCuts,lhcCuts,detCuts,evCuts);
+  AliTagAnalysis *tagAnalysis = new AliTagAnalysis("ESD");
+  
+  AliRunTagCuts *runCuts = new AliRunTagCuts();
+  AliLHCTagCuts *lhcCuts = new AliLHCTagCuts();
+  AliDetectorTagCuts *detCuts = new AliDetectorTagCuts();
+  AliEventTagCuts *evCuts = new AliEventTagCuts();
+  
+  //grid tags
+  TAlienCollection* coll = TAlienCollection::Open(collectionName);
+  TGridResult* TagResult = coll->GetGridResult("",0,0);
+  tagAnalysis->ChainGridTags(TagResult);
+  TChain* chain = 0x0;
+  chain = tagAnalysis->QueryTags(runCuts,lhcCuts,detCuts,evCuts);
   //chain->SetBranchStatus("*Calo*",0);
   
   //____________________________________________//
   // Make the analysis manager
-  // Make the analysis manager
-       AliAnalysisManager *mgr = new AliAnalysisManager("protonAnalysisManagerProtonCorrection");
-       AliVEventHandler* esdH = new AliESDInputHandler;
-       mgr->SetInputEventHandler(esdH);
-       AliMCEventHandler *mc = new AliMCEventHandler();
-       mgr->SetMCtruthEventHandler(mc);
-
+  AliAnalysisManager *mgr = new AliAnalysisManager("protonAnalysisManagerProtonCorrection");
+  AliVEventHandler* esdH = new AliESDInputHandler;
+  mgr->SetInputEventHandler(esdH);
+  AliMCEventHandler *mc = new AliMCEventHandler();
+  mgr->SetMCtruthEventHandler(mc);
+  
   //____________________________________________//
-       /*AliProtonCorrectionAnalysisTask *taskProtons = new AliProtonCorrectionAnalysisTask("TaskProtonsProtonCorrection");
-       if(fIsOn_AliProtonAbsorptionCorrection||fIsOn_AliProtonFeedDownAnalysis||fIsOn_AliProtonSpectraCorrection)
-       {
-               gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonAnalysisBaseObject.C"); 
-               AliProtonAnalysisBase *baseAnalysis = GetProtonAnalysisBaseObject(mode,analysisType,pidMode);
-               taskProtons->SetBaseAnalysis(baseAnalysis);
-       }       
-       else
-               return;
-       if(fIsOn_AliProtonAbsorptionCorrection)
-       {
-                 AliProtonAbsorptionCorrection* absorptioncorrection=new AliProtonAbsorptionCorrection();
-                 taskProtons->SetAnalysisObjectAbsorptionCorrection(absorptioncorrection);
-       }
-       if(fIsOn_AliProtonFeedDownAnalysis)
-       {
-               gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonFeedDownAnalysis.C");
-               AliProtonFeedDownAnalysis* analysisFeedDown = GetProtonFeedDownAnalysisObject();
-               taskProtons->SetAnalysisObjectFeedDown(analysisFeedDown);
-       }       
-       if(fIsOn_AliProtonSpectraCorrection)
-       {
-               AliProtonSpectraCorrection* spectracorrection=new AliProtonSpectraCorrection();
-               taskProtons->SetAnalysisObjectSpectraCorrection(spectracorrection);
-       }*/
-       gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configAliProtonCorrectionAnalysisTask.C"); 
-       AliProtonCorrectionAnalysisTask* taskProtons=GetAliProtonCorrectionAnalysisTask(mode,analysisType,pidMode ,fIsOn_AliProtonAbsorptionCorrection, fIsOn_AliProtonFeedDownAnalysis, fIsOn_AliProtonSpectraCorrection); 
-       mgr->AddTask(taskProtons);
-       
-       // Create containers for input/output
-       AliAnalysisDataContainer *cinput1 = mgr->CreateContainer("dataChain",TChain::Class(),AliAnalysisManager::kInputContainer);
-       AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("outputList",TList::Class(),AliAnalysisManager::kOutputContainer,outputFilename.Data());
-       
+  /*AliProtonCorrectionAnalysisTask *taskProtons = new AliProtonCorrectionAnalysisTask("TaskProtonsProtonCorrection");
+    if(fIsOn_AliProtonAbsorptionCorrection||fIsOn_AliProtonFeedDownAnalysis||fIsOn_AliProtonSpectraCorrection)
+    {
+    gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonAnalysisBaseObject.C"); 
+    AliProtonAnalysisBase *baseAnalysis = GetProtonAnalysisBaseObject(mode,analysisType,pidMode);
+    taskProtons->SetBaseAnalysis(baseAnalysis);
+    }  
+    else
+    return;
+    if(fIsOn_AliProtonAbsorptionCorrection)
+    {
+    AliProtonAbsorptionCorrection* absorptioncorrection=new AliProtonAbsorptionCorrection();
+    taskProtons->SetAnalysisObjectAbsorptionCorrection(absorptioncorrection);
+    }
+    if(fIsOn_AliProtonFeedDownAnalysis)
+    {
+    gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonFeedDownAnalysis.C");
+    AliProtonFeedDownAnalysis* analysisFeedDown = GetProtonFeedDownAnalysisObject();
+    taskProtons->SetAnalysisObjectFeedDown(analysisFeedDown);
+    }  
+    if(fIsOn_AliProtonSpectraCorrection)
+    {
+    AliProtonSpectraCorrection* spectracorrection=new AliProtonSpectraCorrection();
+    taskProtons->SetAnalysisObjectSpectraCorrection(spectracorrection);
+    }*/
+  gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonCorrectionAnalysisTask.C"); 
+  AliProtonCorrectionAnalysisTask* taskProtons=GetAliProtonCorrectionAnalysisTask(mode,analysisType,pidMode ,fIsOn_AliProtonAbsorptionCorrection, fIsOn_AliProtonFeedDownAnalysis, fIsOn_AliProtonSpectraCorrection); 
+  mgr->AddTask(taskProtons);
+  
+  // Create containers for input/output
+  AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer();
+  AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("outputList",TList::Class(),AliAnalysisManager::kOutputContainer,outputFilename.Data());
+  
   //____________________________________________//
-       mgr->ConnectInput(taskProtons,0,mgr->GetCommonInputContainer());
-       mgr->ConnectOutput(taskProtons,0,coutput1);
-       if (!mgr->InitAnalysis()) 
-               return;
-       mgr->PrintStatus();
-       mgr->StartAnalysis("local",chain);
+  mgr->ConnectInput(taskProtons,0,cinput1);
+  mgr->ConnectOutput(taskProtons,0,coutput1);
+  if (!mgr->InitAnalysis()) 
+    return;
+  mgr->PrintStatus();
+  mgr->StartAnalysis("local",chain);
 }
 
 //_________________________________________________//
-void runBatch(const char* mode = "ESD",const char* analysisType = 0x0,const char* pidMode = 0x0,const char *collectionfile = "wn.xml",Bool_t fIsOn_AliProtonAbsorptionCorrection=kTRUE, Bool_t fIsOn_AliProtonFeedDownAnalysis=kTRUE,Bool_t fIsOn_AliProtonSpectraCorrection=kTRUE) 
-{
-       TString smode = mode;
-       TString outputFilename = "ProtonCorrection."; outputFilename += mode;
-       if(analysisType) 
-       {
-               outputFilename += "."; outputFilename += analysisType;
-       }
-       outputFilename += ".root";
-       
-       printf("*** Connect to AliEn ***\n");
-       TGrid::Connect("alien://");
-       gSystem->Load("libProofPlayer.so");
-
+void runBatch(const char* mode = "ESD",
+             const char* analysisType = 0x0,
+             const char* pidMode = 0x0,
+             const char *collectionfile = "wn.xml",
+             Bool_t fIsOn_AliProtonAbsorptionCorrection=kTRUE, 
+             Bool_t fIsOn_AliProtonFeedDownAnalysis=kTRUE,
+             Bool_t fIsOn_AliProtonSpectraCorrection=kTRUE) {
+  TString smode = mode;
+  TString outputFilename = "ProtonCorrection."; outputFilename += mode;
+  if(analysisType) {
+    outputFilename += "."; outputFilename += analysisType;
+  }
+  outputFilename += ".root";
+  
+  printf("*** Connect to AliEn ***\n");
+  TGrid::Connect("alien://");
+  gSystem->Load("libProofPlayer.so");
+  
   //____________________________________________________//
   //_____________Setting up the par files_______________//
   //____________________________________________________//
-       gSystem->Load("libSTEERBase.so");
-       gSystem->Load("libESD.so");
-       gSystem->Load("libAOD.so");
-       gSystem->Load("libANALYSIS") ;
-       gSystem->Load("libANALYSISalice") ;
-       gSystem->Load("libCORRFW.so") ;
-
-       //setupPar("PWG2spectra");
-       gSystem->Load("libPWG2spectra.so");
+  gSystem->Load("libSTEERBase.so");
+  gSystem->Load("libESD.so");
+  gSystem->Load("libAOD.so");
+  gSystem->Load("libANALYSIS") ;
+  gSystem->Load("libANALYSISalice") ;
+  gSystem->Load("libCORRFW.so") ;
+  
+  //setupPar("PWG2spectra");
+  gSystem->Load("libPWG2spectra.so");
   //____________________________________________________//  
-
+  
   //____________________________________________//
-       AliTagAnalysis *tagAnalysis = new AliTagAnalysis("ESD");
-       TChain *chain = 0x0;
-       chain = tagAnalysis->GetChainFromCollection(collectionfile,"esdTree");
-       
-       //____________________________________________//
-       // Make the analysis manager
-       AliAnalysisManager *mgr = new AliAnalysisManager("protonAnalysisManagerProtonCorrection");
-       AliVEventHandler* esdH = new AliESDInputHandler;
-       mgr->SetInputEventHandler(esdH);
-       AliMCEventHandler *mc = new AliMCEventHandler();
-       mgr->SetMCtruthEventHandler(mc);
-
+  AliTagAnalysis *tagAnalysis = new AliTagAnalysis("ESD");
+  TChain *chain = 0x0;
+  chain = tagAnalysis->GetChainFromCollection(collectionfile,"esdTree");
+  
   //____________________________________________//
-       /*AliProtonCorrectionAnalysisTask *taskProtons = new AliProtonCorrectionAnalysisTask("TaskProtonsProtonCorrection");
-       if(fIsOn_AliProtonAbsorptionCorrection||fIsOn_AliProtonFeedDownAnalysis||fIsOn_AliProtonSpectraCorrection)
-       {
-               gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonAnalysisBaseObject.C"); 
-               AliProtonAnalysisBase *baseAnalysis = GetProtonAnalysisBaseObject(mode,analysisType ,pidMode);
-               taskProtons->SetBaseAnalysis(baseAnalysis);
-       }       
-       else
-               return;
-       if(fIsOn_AliProtonAbsorptionCorrection)
-       {
-                 AliProtonAbsorptionCorrection * absorptioncorrection=new AliProtonAbsorptionCorrection();
-                 taskProtons->SetAnalysisObjectAbsorptionCorrection(absorptioncorrection);
-       }
-       if(fIsOn_AliProtonFeedDownAnalysis)
-       {
-               gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonFeedDownAnalysis.C");
-               AliProtonFeedDownAnalysis *analysisFeedDown = GetProtonFeedDownAnalysisObject();
-               taskProtons->SetAnalysisObjectFeedDown(analysisFeedDown);
-       }       
-       if(fIsOn_AliProtonSpectraCorrection)
-       {
-               AliProtonSpectraCorrection* spectracorrection=new AliProtonSpectraCorrection();
-               taskProtons->SetAnalysisObjectSpectraCorrection(spectracorrection);
-       }*/
-       gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configAliProtonCorrectionAnalysisTask.C"); 
-       AliProtonCorrectionAnalysisTask* taskProtons=GetAliProtonCorrectionAnalysisTask(mode,analysisType,pidMode ,fIsOn_AliProtonAbsorptionCorrection, fIsOn_AliProtonFeedDownAnalysis, fIsOn_AliProtonSpectraCorrection); 
-       mgr->AddTask(taskProtons);
-
+  // Make the analysis manager
+  AliAnalysisManager *mgr = new AliAnalysisManager("protonAnalysisManagerProtonCorrection");
+  AliVEventHandler* esdH = new AliESDInputHandler;
+  mgr->SetInputEventHandler(esdH);
+  AliMCEventHandler *mc = new AliMCEventHandler();
+  mgr->SetMCtruthEventHandler(mc);
+  
+  //____________________________________________//
+  /*AliProtonCorrectionAnalysisTask *taskProtons = new AliProtonCorrectionAnalysisTask("TaskProtonsProtonCorrection");
+    if(fIsOn_AliProtonAbsorptionCorrection||fIsOn_AliProtonFeedDownAnalysis||fIsOn_AliProtonSpectraCorrection)
+    {
+    gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonAnalysisBaseObject.C"); 
+    AliProtonAnalysisBase *baseAnalysis = GetProtonAnalysisBaseObject(mode,analysisType ,pidMode);
+    taskProtons->SetBaseAnalysis(baseAnalysis);
+    }  
+    else
+    return;
+    if(fIsOn_AliProtonAbsorptionCorrection)
+    {
+    AliProtonAbsorptionCorrection * absorptioncorrection=new AliProtonAbsorptionCorrection();
+    taskProtons->SetAnalysisObjectAbsorptionCorrection(absorptioncorrection);
+    }
+    if(fIsOn_AliProtonFeedDownAnalysis)
+    {
+    gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonFeedDownAnalysis.C");
+    AliProtonFeedDownAnalysis *analysisFeedDown = GetProtonFeedDownAnalysisObject();
+    taskProtons->SetAnalysisObjectFeedDown(analysisFeedDown);
+    }  
+    if(fIsOn_AliProtonSpectraCorrection)
+    {
+    AliProtonSpectraCorrection* spectracorrection=new AliProtonSpectraCorrection();
+    taskProtons->SetAnalysisObjectSpectraCorrection(spectracorrection);
+    }*/
+  gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonCorrectionAnalysisTask.C"); 
+  AliProtonCorrectionAnalysisTask* taskProtons=GetAliProtonCorrectionAnalysisTask(mode,analysisType,pidMode ,fIsOn_AliProtonAbsorptionCorrection, fIsOn_AliProtonFeedDownAnalysis, fIsOn_AliProtonSpectraCorrection); 
+  mgr->AddTask(taskProtons);
+  
   // Create containers for input/output
-       AliAnalysisDataContainer *cinput1 = mgr->CreateContainer("dataChain",TChain::Class(),AliAnalysisManager::kInputContainer);
-       AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("outputList",TList::Class(),AliAnalysisManager::kOutputContainer,outputFilename.Data());
+  AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer();
+  AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("outputList",TList::Class(),AliAnalysisManager::kOutputContainer,outputFilename.Data());
 
   //____________________________________________//
-       mgr->ConnectInput(taskProtons,0,mgr->GetCommonInputContainer());
-       mgr->ConnectOutput(taskProtons,0,coutput1);
-       if (!mgr->InitAnalysis()) 
-               return;
-       mgr->PrintStatus();
-       mgr->StartAnalysis("local",chain);
+  mgr->ConnectInput(taskProtons,0,cinput);
+  mgr->ConnectOutput(taskProtons,0,coutput1);
+  if (!mgr->InitAnalysis()) 
+    return;
+  mgr->PrintStatus();
+  mgr->StartAnalysis("local",chain);
 }
 
 //_________________________________________________//
-void runProof(const char* mode = "ESD",const char* analysisType = 0x0,const char* pidMode = 0x0,Int_t stats = 0, const char* dataset = 0x0,Bool_t fIsOn_AliProtonAbsorptionCorrection=kTRUE, Bool_t fIsOn_AliProtonFeedDownAnalysis=kTRUE,Bool_t fIsOn_AliProtonSpectraCorrection=kTRUE) 
-{  
-       TString smode = mode;
-       TString outputFilename = "ProtonCorrection."; outputFilename += mode;
-       if(analysisType) 
-       {
-               outputFilename += "."; outputFilename += analysisType;
-       }
-        outputFilename += ".root";
-
-       printf("****** Connect to PROOF *******\n");
-       TProof::Open("alicecaf.cern.ch"); 
-       //gProof->SetParallel();
-       
-       // Enable the Analysis Package
-       gProof->UploadPackage("STEERBase.par");
-       gProof->EnablePackage("STEERBase");
-       gProof->UploadPackage("ESD.par");
-       gProof->EnablePackage("ESD");
-       gProof->UploadPackage("AOD.par");
-       gProof->EnablePackage("AOD");
-       gProof->UploadPackage("ANALYSIS.par");
-       gProof->EnablePackage("ANALYSIS");
-       gProof->UploadPackage("ANALYSISalice.par");
-       gProof->EnablePackage("ANALYSISalice");
-       gProof->UploadPackage("CORRFW.par");
-       gProof->EnablePackage("CORRFW");
-       gProof->UploadPackage("PWG2spectra.par");
-       gProof->EnablePackage("PWG2spectra");
-  
-  //____________________________________________//);
+void runProof(const char* mode = "ESD",
+             const char* analysisType = 0x0,
+             const char* pidMode = 0x0,
+             Int_t stats = 0, 
+             const char* dataset = 0x0,
+             Bool_t fIsOn_AliProtonAbsorptionCorrection=kTRUE, 
+             Bool_t fIsOn_AliProtonFeedDownAnalysis=kTRUE,
+             Bool_t fIsOn_AliProtonSpectraCorrection=kTRUE) {  
+  TString smode = mode;
+  TString outputFilename = "ProtonCorrection."; outputFilename += mode;
+  if(analysisType) {
+    outputFilename += "."; outputFilename += analysisType;
+  }
+  outputFilename += ".root";
+  
+  printf("****** Connect to PROOF *******\n");
+  TProof::Open("alicecaf.cern.ch"); 
+  //gProof->SetParallel();
+  
+  // Enable the Analysis Package
+  gProof->UploadPackage("STEERBase.par");
+  gProof->EnablePackage("STEERBase");
+  gProof->UploadPackage("ESD.par");
+  gProof->EnablePackage("ESD");
+  gProof->UploadPackage("AOD.par");
+  gProof->EnablePackage("AOD");
+  gProof->UploadPackage("ANALYSIS.par");
+  gProof->EnablePackage("ANALYSIS");
+  gProof->UploadPackage("ANALYSISalice.par");
+  gProof->EnablePackage("ANALYSISalice");
+  gProof->UploadPackage("CORRFW.par");
+  gProof->EnablePackage("CORRFW");
+  gProof->UploadPackage("PWG2spectra.par");
+  gProof->EnablePackage("PWG2spectra");
   //____________________________________________//
-
+  
   //____________________________________________//
   // Make the analysis manager
-       AliAnalysisManager *mgr = new AliAnalysisManager("protonAnalysisManagerProtonCorrection");
-       AliVEventHandler* esdH = new AliESDInputHandler;
-       mgr->SetInputEventHandler(esdH);
-       AliMCEventHandler *mc = new AliMCEventHandler();
-       mgr->SetMCtruthEventHandler(mc);
+  AliAnalysisManager *mgr = new AliAnalysisManager("protonAnalysisManagerProtonCorrection");
+  AliVEventHandler* esdH = new AliESDInputHandler;
+  mgr->SetInputEventHandler(esdH);
+  AliMCEventHandler *mc = new AliMCEventHandler();
+  mgr->SetMCtruthEventHandler(mc);
   //____________________________________________//
   //Create the proton task
-       /*AliProtonCorrectionAnalysisTask *taskProtons = new AliProtonCorrectionAnalysisTask("TaskProtonsProtonCorrection");
-       if(fIsOn_AliProtonAbsorptionCorrection||fIsOn_AliProtonFeedDownAnalysis||fIsOn_AliProtonSpectraCorrection)
-       {
-               gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonAnalysisBaseObject.C"); 
-               AliProtonAnalysisBase *baseAnalysis = GetProtonAnalysisBaseObject(mode,analysisType ,pidMode);
-               taskProtons->SetBaseAnalysis(baseAnalysis);
-       }       
-       else
-               return
-       if(fIsOn_AliProtonAbsorptionCorrection)
-       {
-                 AliProtonAbsorptionCorrection * absorptioncorrection=new AliProtonAbsorptionCorrection();
-                 taskProtons->SetAnalysisObjectAbsorptionCorrection(absorptioncorrection);
-       }
-       if(fIsOn_AliProtonFeedDownAnalysis)
-       {
-               gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonFeedDownAnalysis.C");
-               AliProtonFeedDownAnalysis *analysisFeedDown = GetProtonFeedDownAnalysisObject();
-               taskProtons->SetAnalysisObjectFeedDown(analysisFeedDown);
-       }       
-       if(fIsOn_AliProtonSpectraCorrection)
-       {
-               AliProtonSpectraCorrection* spectracorrection=new AliProtonSpectraCorrection();
-               taskProtons->SetAnalysisObjectSpectraCorrection(spectracorrection);
-       }*/
-       gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configAliProtonCorrectionAnalysisTask.C"); 
-       AliProtonCorrectionAnalysisTask* taskProtons=GetAliProtonCorrectionAnalysisTask(mode,analysisType,pidMode ,fIsOn_AliProtonAbsorptionCorrection, fIsOn_AliProtonFeedDownAnalysis, fIsOn_AliProtonSpectraCorrection); 
-       mgr->AddTask(taskProtons);
-
+  /*AliProtonCorrectionAnalysisTask *taskProtons = new AliProtonCorrectionAnalysisTask("TaskProtonsProtonCorrection");
+    if(fIsOn_AliProtonAbsorptionCorrection||fIsOn_AliProtonFeedDownAnalysis||fIsOn_AliProtonSpectraCorrection)
+    {
+    gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonAnalysisBaseObject.C"); 
+    AliProtonAnalysisBase *baseAnalysis = GetProtonAnalysisBaseObject(mode,analysisType ,pidMode);
+    taskProtons->SetBaseAnalysis(baseAnalysis);
+    }  
+    else
+    return
+    if(fIsOn_AliProtonAbsorptionCorrection)
+    {
+    AliProtonAbsorptionCorrection * absorptioncorrection=new AliProtonAbsorptionCorrection();
+    taskProtons->SetAnalysisObjectAbsorptionCorrection(absorptioncorrection);
+    }
+    if(fIsOn_AliProtonFeedDownAnalysis)
+    {
+    gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonFeedDownAnalysis.C");
+    AliProtonFeedDownAnalysis *analysisFeedDown = GetProtonFeedDownAnalysisObject();
+    taskProtons->SetAnalysisObjectFeedDown(analysisFeedDown);
+    }  
+    if(fIsOn_AliProtonSpectraCorrection)
+    {
+    AliProtonSpectraCorrection* spectracorrection=new AliProtonSpectraCorrection();
+    taskProtons->SetAnalysisObjectSpectraCorrection(spectracorrection);
+    }*/
+  gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonCorrectionAnalysisTask.C"); 
+  AliProtonCorrectionAnalysisTask* taskProtons=GetAliProtonCorrectionAnalysisTask(mode,analysisType,pidMode ,fIsOn_AliProtonAbsorptionCorrection, fIsOn_AliProtonFeedDownAnalysis, fIsOn_AliProtonSpectraCorrection); 
+  mgr->AddTask(taskProtons);
+  
   // Create containers for input/output
-       AliAnalysisDataContainer *cinput1 = mgr->CreateContainer("dataChain",TChain::Class(),AliAnalysisManager::kInputContainer);
-       AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("outputList",TList::Class(),AliAnalysisManager::kOutputContainer,outputFilename.Data());
-       
-       //____________________________________________//
-       mgr->ConnectInput(taskProtons,0,mgr->GetCommonInputContainer());
-       mgr->ConnectOutput(taskProtons,0,coutput1);
-       if (!mgr->InitAnalysis()) return;
-       mgr->PrintStatus();
-       
-       if(dataset)
-       mgr->StartAnalysis("proof",dataset,stats);
-       else {
-       // You should get this macro and the txt file from:
-       // http://aliceinfo.cern.ch/Offline/Analysis/CAF/
-       gROOT->LoadMacro("CreateESDChain.C");
-       TChain* chain = 0x0;
-       chain = CreateESDChain("ESD82XX_30K.txt",stats);
-       chain->SetBranchStatus("*Calo*",0);
-       
-       mgr->StartAnalysis("proof",chain);
+  AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer();
+  AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("outputList",TList::Class(),AliAnalysisManager::kOutputContainer,outputFilename.Data());
+  
+  //____________________________________________//
+  mgr->ConnectInput(taskProtons,0,cinput1);
+  mgr->ConnectOutput(taskProtons,0,coutput1);
+  if (!mgr->InitAnalysis()) return;
+  mgr->PrintStatus();
+  
+  if(dataset)
+    mgr->StartAnalysis("proof",dataset,stats);
+  else {
+    // You should get this macro and the txt file from:
+    // http://aliceinfo.cern.ch/Offline/Analysis/CAF/
+    gROOT->LoadMacro("CreateESDChain.C");
+    TChain* chain = 0x0;
+    chain = CreateESDChain("ESD82XX_30K.txt",stats);
+    chain->SetBranchStatus("*Calo*",0);
+    
+    mgr->StartAnalysis("proof",chain);
   }
 }