]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGGA/GammaConv/macros/AddTask_GammaConvV1.C
added new addtask + major modifications for pPb
[u/mrichter/AliRoot.git] / PWGGA / GammaConv / macros / AddTask_GammaConvV1.C
index fac9321fd23af7b40428405a1404763d16eb0620..6ffff56e56785bd4705ea1845da3d30269426eca 100644 (file)
@@ -30,13 +30,16 @@ void AddTask_GammaConvV1(TString trainConfig = "pp",   Bool_t isMC  = kFALSE){
    if (trainConfig.Contains("PbPb")) IsHeavyIon=1;
    else if (trainConfig.Contains("pPb")) IsHeavyIon=2;
 
-   
+   Bool_t doEtaShift = kFALSE;
+   Int_t forceEtaShift = 0; // Carefull !!! Should be zero otherwise will shift eta cut for all periods
+                            // Use doEtaShift flag for pPb or Pbp instead (1: shift +0.465, 2: shift -0.465)
 
    TString cutnumber = "";
    if(IsHeavyIon == 1){
       cutnumber = "1000000002084001001500000";
     } else if (IsHeavyIon==2){
-     cutnumber = "8000000002084001001500000";   
+     cutnumber = "8000000062084001001500000";
+     doEtaShift = kTRUE;
    } else{
       cutnumber = "0000000002084000002200000";
    }
@@ -74,6 +77,11 @@ void AddTask_GammaConvV1(TString trainConfig = "pp",   Bool_t isMC   = kFALSE){
    if(cutnumber!=""){
       fCuts= new AliConversionCuts(cutnumber.Data(),cutnumber.Data());
       if(fCuts->InitializeCutsFromCutString(cutnumber.Data())){
+         if (IsHeavyIon==2){
+            fCuts->SelectCollisionCandidates(AliVEvent::kINT7);
+            fCuts->DoEtaShift(doEtaShift);
+         }
+         fCuts->ForceEtaShift(forceEtaShift);
          fV0ReaderV1->SetConversionCuts(fCuts);
          fCuts->SetFillCutHistograms("",kTRUE);
       }
@@ -104,23 +112,28 @@ void AddTask_GammaConvV1(TString trainConfig = "pp",   Bool_t isMC        = kFALSE){
    task= new AliAnalysisTaskGammaConvV1("GammaConvV1");
    task->SetIsHeavyIon(IsHeavyIon);
    // Cut Numbers to use in Analysis
-   Int_t numberOfCuts = 1;
+   Int_t numberOfCuts = 2;
    if(trainConfig.Contains("PbPb")) numberOfCuts = 3;
-   else numberOfCuts = 1;
+   else if(trainConfig.Contains("pPb")) numberOfCuts = 4;
+   else numberOfCuts = 3;
 
    TString *cutarray = new TString[numberOfCuts];
    TString *mesonCutArray = new TString[numberOfCuts];
 
    if(trainConfig.Contains("PbPb")){
-      cutarray[ 0] = "1000003042092970723220000"; mesonCutArray[ 0] = "01022045000";  // all centralities
-      cutarray[ 1] = "3010003042092970723220000"; mesonCutArray[ 1] = "01022045000";  // most central
-      cutarray[ 2] = "1680003042092970723220000"; mesonCutArray[ 2] = "01022065000";  // peripheral
-
-   }
-   else if(trainConfig.Contains("pPb")){ //pA needs thighter rapidity cut y < 0.5
-      cutarray[ 0] = "8000000042092172023290000"; mesonCutArray[0] = "01024045000";  //standard cut Pi0 PbPb 00-100
+      cutarray[ 0] = "1010001042092970023220000"; mesonCutArray[ 0] = "01522045000"; // Standard cut 0-10
+      cutarray[ 1] = "3120001042092970023220000"; mesonCutArray[ 1] = "01522045000"; // Standard cut 5-10
+      cutarray[ 2] = "1120001042092970023220000"; mesonCutArray[ 2] = "01522045000"; // Standard cut 10-20
+   } else if(trainConfig.Contains("pPb")){ //pA needs thighter rapidity cut y < 0.5
+     cutarray[ 0] = "8020000082093172023290000"; mesonCutArray[0] = "01629045000";  //standard cut Pi0 Pb 00-20 shifted Eta 0.4
+     cutarray[ 1] = "8240000082093172023290000"; mesonCutArray[1] = "01629045000";  //standard cut Pi0 Pb 20-40 shifted Eta 0.4
+     cutarray[ 2] = "8460000082093172023290000"; mesonCutArray[2] = "01629045000";  //standard cut Pi0 Pb 40-60 shifted Eta 0.4
+     cutarray[ 3] = "8680000082093172023290000"; mesonCutArray[3] = "01629045000";  //standard cut Pi0 Pb 60-80 shifted Eta 0.4
    } else {
-      cutarray[ 0] = "0000011002093663003800000"; mesonCutArray[0] = "01631031009";
+      cutarray[ 0] = "0000012002093663003800000"; mesonCutArray[0] = "01631031009"; //standard cut Pi0 pp 2.76TeV without SDD , only boxes
+      cutarray[ 1] = "0001012002093663003800000"; mesonCutArray[1] = "01631031009"; //standard cut Pi0 pp 2.76TeV without SDD, V0AND , only boxes
+      cutarray[ 2] = "0000012002093260003800000"; mesonCutArray[2] = "01631031009"; //standard cut Gamma pp 2-76TeV , only boxes
+
    }
 
    TList *ConvCutList = new TList();
@@ -146,7 +159,10 @@ void AddTask_GammaConvV1(TString trainConfig = "pp",   Bool_t isMC = kFALSE){
    for(Int_t i = 0; i<numberOfCuts; i++){
       analysisCuts[i] = new AliConversionCuts();
       analysisCuts[i]->InitializeCutsFromCutString(cutarray[i].Data());
-      if (trainConfig.Contains("pPb")) analysisCuts[i]->SelectCollisionCandidates(AliVEvent::kINT7|AliVEvent::kTRD);
+      if (trainConfig.Contains("pPb")){
+         analysisCuts[i]->SelectCollisionCandidates(AliVEvent::kINT7);
+         if (i<4) analysisCuts[i]->DoEtaShift(1);
+      }
       ConvCutList->Add(analysisCuts[i]);
 
       analysisCuts[i]->SetFillCutHistograms("",kFALSE);
@@ -162,6 +178,8 @@ void AddTask_GammaConvV1(TString trainConfig = "pp",   Bool_t isMC  = kFALSE){
    task->SetMesonCutList(numberOfCuts,MesonCutList);
    task->SetMoveParticleAccordingToVertex(kTRUE);
    task->SetDoMesonAnalysis(kTRUE);
+//    if (trainConfig.Contains("pPb") || trainConfig.Contains("pp") )task->SetDoMesonQA(kTRUE); //Attention new switch for Pi0 QA
+//    if (trainConfig.Contains("pPb") || trainConfig.Contains("pp") )task->SetDoPhotonQA(kTRUE);  //Attention new switch small for Photon QA
 
    //connect containers
    AliAnalysisDataContainer *coutput =