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";
}
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);
}
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();
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);
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 =