]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG4/macros/AnalysisTrainCAF.C
Add the connected pad info to the simulation (Raphaelle)
[u/mrichter/AliRoot.git] / PWG4 / macros / AnalysisTrainCAF.C
index 6c95390098c57ea3f5ff84fdeccf3aa6a57fe0ad..493cff40c23f2bdf5a7a632c0e1f7ddcd49b05d3 100644 (file)
@@ -14,16 +14,19 @@ void AnalysisTrainCAF(Int_t nEvents = 10000, Int_t nOffset = 0, char *ds = "/PWG
   Bool_t bLOCALPAR     = kFALSE;  // flag that swtiches on loading of local par files insead of loading libs, needed for grid and local testing\r
 \r
     \r
-  Int_t iAODanalysis   = 0;\r
+  Int_t iAODanalysis   = 1;\r
   Int_t iAODhandler    = 1;\r
   Int_t iESDfilter     = 1;  // Only active if iAODanalysis=0\r
   Int_t iJETAN         = 1;\r
-  Int_t iJETANESD      = 1;\r
-  Int_t iJETANMC       = 1;\r
-  Int_t iJETANMC2       = 1;\r
-  Int_t iDIJETAN       = 1;\r
-  Int_t iPWG4SPECTRUM  = 1;\r
-  Int_t iPWG4JFSYSTEMATICS  = 1;\r
+  Int_t iJETANESD      = 0;\r
+  Int_t iJETANMC       = 0;\r
+  Int_t iJETANMC2       = 0;\r
+  Int_t iFASTJET     = 1;\r
+  Int_t iDIJETAN       = 0;\r
+  Int_t iPWG4SPECTRUM  = 0;\r
+  Int_t iPWG4JFSYSTEMATICS  = 0;\r
+  Int_t iPWG4JETCORRECTION  = 0;\r
+  Int_t iPWG4THREEJETS  = 0;\r
   Int_t iPWG4UE        = 0;\r
   Int_t iPWG4PID        = 0;\r
 \r
@@ -31,7 +34,6 @@ void AnalysisTrainCAF(Int_t nEvents = 10000, Int_t nOffset = 0, char *ds = "/PWG
     useMC = kFALSE;\r
     readTR = kFALSE;\r
     iESDfilter = 0;\r
-    iMUONfilter = 0;\r
   }    \r
   if (iJETAN) iESDfilter=1;\r
   if (iESDfilter) iAODhandler=1;\r
@@ -41,7 +43,10 @@ void AnalysisTrainCAF(Int_t nEvents = 10000, Int_t nOffset = 0, char *ds = "/PWG
   TChain *chain = 0;\r
   // CKB quick hack for local analysis\r
   gROOT->LoadMacro("CreateESDChain.C");\r
-  TChain *chain = CreateESDChain("tmp.txt",1000);\r
+  TChain *chain = CreateChain("aodTree",ds,1);\r
+  //  TChain *chain = CreateChain("esdTree",ds,100);\r
+  //  chain = new TChain("aodTree");\r
+  //  chain->Add("/Users/kleinb/bigdisk/1/LHC09a3/001/AliAOD.root");\r
 \r
  \r
   printf("==================================================================\n");\r
@@ -54,9 +59,13 @@ void AnalysisTrainCAF(Int_t nEvents = 10000, Int_t nOffset = 0, char *ds = "/PWG
   if (iJETANESD)    printf("=  Jet analysis from ESD                                         =\n");\r
   if (iJETANMC)     printf("=  Jet analysis from Kinematics                                  =\n");\r
   if (iJETANMC2)     printf("=  Jet analysis 2 from Kinematics                               =\n");\r
+  if (iFASTJET)     printf("=  Loading FastJet                               =\n");\r
   if (iDIJETAN)     printf("=  DiJet analysis                                                 =\n");\r
   if (iPWG4SPECTRUM)printf("=  PWG4 Jet spectrum analysis                                    =\n");\r
   if (iPWG4JFSYSTEMATICS)printf("=  PWG4 Jet Finder systematics                                   =\n");\r
+  if (iPWG4JETCORRECTION)printf("=  PWG4 Jet Correction                                   =\n");\r
+  if (iPWG4THREEJETS)printf("=  PWG4 Three Jets                                   =\n");\r
+\r
   if (iPWG4UE)      printf("=  PWG4 UE                                                        =\n");\r
   printf("==================================================================\n");\r
   if (useMC) printf(":: use MC    TRUE\n");\r
@@ -71,14 +80,20 @@ void AnalysisTrainCAF(Int_t nEvents = 10000, Int_t nOffset = 0, char *ds = "/PWG
   gSystem->Load("libGeom.so");\r
   gSystem->Load("libVMC.so");\r
   gSystem->Load("libPhysics.so");\r
-  \r
+  if(iFASTJET){\r
+    gSystem->Load("libCGAL.so");\r
+    gSystem->Load("libfastjet.so");\r
+    gSystem->Load("libsiscone.so");\r
+    gSystem->Load("libSISConePlugin.so");  \r
+  }\r
+\r
 \r
   // Reset user processes if CAF if not responding anymore\r
   // TProof::Reset("alicecaf"); \r
   // One may enable a different ROOT version on CAF\r
   \r
-  const char* proofNode = "localhost";\r
-  //  const char* proofNode = "alicecaf";\r
+  //  const char* proofNode = "localhost";\r
+  const char* proofNode = "alicecaf";\r
   \r
   // Connect to proof\r
   if(bPROOF){\r
@@ -114,9 +129,15 @@ void AnalysisTrainCAF(Int_t nEvents = 10000, Int_t nOffset = 0, char *ds = "/PWG
     if (iJETAN||iJETANESD||iJETANMC||iJETANMC2) {\r
       gProof->UploadPackage("JETAN.par");\r
       gProof->EnablePackage("JETAN");\r
+      if(iFASTJET){\r
+       gProof->UploadPackage("FASTJETAN.par");\r
+       gProof->EnablePackage("FASTJETAN"); \r
+      }\r
     }   \r
     // --- Enable particle correlation analysis\r
-    if (iPWG4UE||iPWG4SPECTRUM||iPWGJFSYSTEMATICS) {\r
+    if (iPWG4UE||iPWG4SPECTRUM||iPWG4JFSYSTEMATICS||iPWG4JETCORRECTION||iPWG4THREEJETS) {\r
+      gProof->UploadPackage("JETAN.par");\r
+      gProof->EnablePackage("JETAN");\r
       gProof->UploadPackage("PWG4JetTasks.par");\r
       gProof->EnablePackage("PWG4JetTasks");\r
     }   \r
@@ -126,7 +147,7 @@ void AnalysisTrainCAF(Int_t nEvents = 10000, Int_t nOffset = 0, char *ds = "/PWG
 \r
     //  \r
     // We are local or on grid\r
-    // access remote files in lcoal case as well so open alien conection\r
+    // access remote files in lcoal case as well so open alien connection\r
 \r
     /*\r
     printf("*** Connect to AliEn ***\n");\r
@@ -141,8 +162,14 @@ void AnalysisTrainCAF(Int_t nEvents = 10000, Int_t nOffset = 0, char *ds = "/PWG
       SetupPar("AOD");    \r
       SetupPar("ANALYSIS"); \r
       SetupPar("ANALYSISalice");\r
-      if (iJETAN||iJETANESD||iJETANMC||iJETANMC2)SetupPar("JETAN");       \r
-      if (iPWG4UE||iPWG4SPECTRUM||iPWG4JFSYSTEMATICS)SetupPar("PWG4JetTasks");\r
+      if (iJETAN||iJETANESD||iJETANMC||iJETANMC2){\r
+       SetupPar("JETAN");         \r
+       if(iFASTJET)    SetupPar("FASTJETAN");     \r
+      }\r
+      if (iPWG4UE||iPWG4SPECTRUM||iPWG4JFSYSTEMATICS){\r
+       SetupPar("JETAN");         \r
+       SetupPar("PWG4JetTasks");\r
+      }\r
     }\r
     else{\r
       Printf("Loading Local libs");\r
@@ -152,9 +179,15 @@ void AnalysisTrainCAF(Int_t nEvents = 10000, Int_t nOffset = 0, char *ds = "/PWG
       gSystem->Load("libANALYSIS");\r
       gSystem->Load("libANALYSISalice");  \r
       // --- Enable the JETAN Package\r
-      if (iJETAN||iJETANESD||iJETANMC||iJETANMC2) gSystem->Load("libJETAN");\r
+      if (iJETAN||iJETANESD||iJETANMC||iJETANMC2){\r
+       gSystem->Load("libJETAN");\r
+       if(iFASTJET)gSystem->Load("libFASTJETAN");\r
+      }\r
       // --- Enable particle correlation analysis\r
-      if (iPWG4UE||iPWG4SPECTRUM||iPWG4JFSYSTEMATICS)gSystem->Load("libPWG4JetTasks"); \r
+      if (iPWG4UE||iPWG4SPECTRUM||iPWG4JFSYSTEMATICS||iPWG4THREEJETS){\r
+       gSystem->Load("libJETAN");\r
+       gSystem->Load("libPWG4JetTasks"); \r
+      }\r
     }\r
 \r
   }\r
@@ -188,7 +221,7 @@ void AnalysisTrainCAF(Int_t nEvents = 10000, Int_t nOffset = 0, char *ds = "/PWG
     if (iAODhandler) {\r
        // AOD output handler\r
        AliAODHandler* aodHandler   = new AliAODHandler();\r
-       aodHandler->SetFillAOD(kFALSE);\r
+       //      aodHandler->SetFillAOD(kFALSE);\r
        mgr->SetOutputEventHandler(aodHandler);       \r
        aodHandler->SetOutputFileName(Form("AliAODs_pwg4_%07d-%07d.root",nOffset,nOffset+nEvents));\r
        cout_aod = mgr->GetCommonOutputContainer();\r
@@ -196,54 +229,79 @@ void AnalysisTrainCAF(Int_t nEvents = 10000, Int_t nOffset = 0, char *ds = "/PWG
     }   \r
 \r
     // Debugging if needed\r
-    if (debug) mgr->SetDebugLevel(0);\r
+    if (debug) mgr->SetDebugLevel(10);\r
     //    AliLog::EnableDebug(kTRUE);\r
-    AliLog::SetGlobalLogLevel(0);\r
+    AliLog::SetGlobalLogLevel(1);\r
 \r
 \r
     if (iESDfilter && !iAODanalysis) {\r
-      gROOT->LoadMacro("AddTaskESDfilter.C");\r
-      AliAnalysisTaskESDfilter *esdfilter = esdfilter = AddTaskESDfilter();\r
+      gSystem->Load("libCORRFW.so");\r
+      gSystem->Load("libPWG3muon.so");\r
+\r
+      gROOT->LoadMacro(Form("%s/ANALYSIS/macros/AddTaskESDFilter.C",gSystem->ExpandPathName("${ALICE_ROOT}")));\r
+      //      gROOT->LoadMacro("AddTaskESDfilter.C");\r
+      AliAnalysisTaskESDfilter *esdfilter = AddTaskESDFilter();\r
+      Printf("esdFilter %p",esdfilter); \r
     }   \r
     // Jet analysis from the AOD\r
     if (iJETAN) {\r
       gROOT->LoadMacro("AddTaskJets.C");\r
-      AliAnalysisTaskJets *jetanaAOD = jetanaAOD = AddTaskJets("AOD","UA1");\r
+      //      AliAnalysisTaskJets *jetanaAOD  = AddTaskJets("AOD","UA1",0.4);\r
+      //      AliAnalysisTaskJets *jetanaAOD  = AddTaskJets("AOD","UA1",0.4);\r
+      //      jetanaAOD->SetNonStdBranch("jetsAOD_UA1");    \r
+      AliAnalysisTaskJets *jetanaAOD  = AddTaskJets();\r
+      Int_t i = AddTaskJetsDelta();\r
     }   \r
     // JETANALYSIS from the ESD\r
     if (iJETANESD && !iAODanalysis) {\r
       gROOT->LoadMacro("AddTaskJets.C");\r
       AliAnalysisTaskJets *jetanaESD = AddTaskJets("ESD","UA1");\r
-      jetanaESD->SetDebugLevel(10);\r
+      jetanaESD->SetDebugLevel(0);\r
       jetanaESD->SetNonStdBranch("jetsESD");    \r
     }   \r
     // Jet analysisMC\r
-    if (iJETANMC && useMC){ \r
+    if (iJETANMC ){ \r
       gROOT->LoadMacro("AddTaskJets.C");\r
-      AliAnalysisTaskJets *jetanaMC = jetanaMC = AddTaskJets("MC","UA1MC");\r
-      jetanaMC->SetDebugLevel(10);\r
-      jetanaMC->SetNonStdBranch("jetsMC");\r
+      //      AliAnalysisTaskJets *jetanaMC =  AddTaskJets("AODMC","UA1",0.4);\r
+      AliAnalysisTaskJets *jetanaMC =  AddTaskJets("AODMC","UA1",0.4);\r
+      jetanaMC->SetDebugLevel(0);\r
+      jetanaMC->SetNonStdBranch("jetsMC_UA1");\r
     }   \r
-    if (iJETANMC2 && useMC){ \r
+    if (iJETANMC2 ){ \r
       gROOT->LoadMacro("AddTaskJets.C");\r
-      AliAnalysisTaskJets *jetanaMC2 = AddTaskJets("MC2","UA1");\r
-      jetanaMC->SetDebugLevel(10);\r
-      jetanaMC->SetNonStdBranch("jetsMC2");\r
+      //      AliAnalysisTaskJets *jetanaMC2 = AddTaskJets("AODMC2","UA1",0.4);\r
+      AliAnalysisTaskJets *jetanaMC2 = AddTaskJets("AODMC2","UA1",0.4);\r
+      jetanaMC2->SetDebugLevel(0);\r
+      jetanaMC2->SetNonStdBranch("jetsMC2_UA1");\r
     }   \r
     // Dijet analysis\r
     if(iDIJETAN){\r
       gROOT->LoadMacro("AddTaskDiJets.C");\r
-      AliAnalysisTaskDiJets *dijetana = dijetana = AddTaskDiJets();\r
+      AliAnalysisTaskDiJets *dijetana  = AddTaskDiJets();\r
     }\r
     if (iPWG4SPECTRUM) {\r
-      gROOT->LoadMacro("AddTaskJetSpectrum.C");\r
-      AliAnalysisTaskJetSpectrum* pwg4spec = AddTaskJetSpectrum();\r
-      pwg4spec->SetDebugLevel(10);\r
+      gROOT->LoadMacro("AddTaskJetSpectrum2.C");\r
+      AliAnalysisTaskJetSpectrum2* pwg4spec = AddTaskJetSpectrum2();\r
+      pwg4spec->SetAODInput(kTRUE);\r
+      pwg4spec->SetBranchRec("jets");\r
+      pwg4spec->SetAnalysisType(0);\r
+      pwg4spec->SetDebugLevel(0);\r
     }   \r
     if (iPWG4JFSYSTEMATICS) {\r
       gROOT->LoadMacro("AddTaskJFSystematics.C");\r
-      AliAnalysisTaskJFSystematics* pwg4jfs = AddTaskJFSystematics();\r
-      pwg4jfs->SetDebugLevel(11);\r
+      AliAnalysisTaskJFSystematics* pwg4jfs = AddTaskJFSystematics("jetsMC","jets");\r
+      pwg4jfs->SetAODInput(kTRUE);\r
+      pwg4jfs->SetDebugLevel(0);\r
+    }   \r
+    if (iPWG4JETCORRECTION) {\r
+      gROOT->LoadMacro("AddTaskJetCorrections.C");\r
+      AliAnalysisTaskJetCorrections* pwg4jc = AddTaskJetCorrections();\r
+      pwg4jc->SetDebugLevel(11);\r
+    }   \r
+    if (iPWG4THREEJETS) {\r
+      gROOT->LoadMacro("AddTaskThreeJets.C");\r
+      AliAnalysisTaskThreeJets* pwg4jjj = AddTaskThreeJets();\r
+      pwg4jjj->SetDebugLevel(11);\r
     }   \r
     if (iPWG4UE) {\r
       gROOT->LoadMacro("AddTaskUE.C");\r
@@ -257,9 +315,10 @@ void AnalysisTrainCAF(Int_t nEvents = 10000, Int_t nOffset = 0, char *ds = "/PWG
     // Run the analysis\r
     //    \r
     if (mgr->InitAnalysis()) {\r
-       mgr->PrintStatus();\r
+      mgr->PrintStatus();\r
+      Printf("Chain with %d entries",chain->GetEntries()); \r
        if(bPROOF)mgr->StartAnalysis("proof",dataset.Data(), nEvents,nOffset);\r
-       else mgr->StartAnalysis("local",chain);\r
+       else mgr->StartAnalysis("local",chain,nEvents);\r
     }   \r
 }\r
 TChain *CreateChainFromCollection(const char* xmlfile, const char *treeName="esdTree",Int_t nFiles = 0)\r