]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG3/hfe/macros/ConfigHFEstandard_PbPb.C
Update of the hfe package
[u/mrichter/AliRoot.git] / PWG3 / hfe / macros / ConfigHFEstandard_PbPb.C
index fb25fbd3f64d2f34cd4b335b25960987fdd6d37c..9e4635ae861935f952cef8accc1ccc22150b0a8f 100644 (file)
@@ -1,22 +1,35 @@
 AliAnalysisTaskHFE* ConfigHFEstandard_PbPb(Bool_t useMC){
   //
   // HFE standard task configuration
-    //
+  //
 
   AliHFEcuts *hfecuts = new AliHFEcuts("hfeCuts","HFE Standard Cuts");
   hfecuts->CreateStandardCuts();
-  hfecuts->SetMinNClustersTPC(80);
-  hfecuts->SetMinNClustersITS(3);
+  hfecuts->SetMinNClustersTPC(120);
+  hfecuts->SetMinRatioTPCclusters(0.6);
+  hfecuts->SetTPCmodes(AliHFEextraCuts::kFound, AliHFEextraCuts::kFoundOverFindable);
+
+  hfecuts->SetMinNClustersITS(4);
   hfecuts->SetCutITSpixel(AliHFEextraCuts::kFirst);
   hfecuts->SetCheckITSLayerStatus(kFALSE);
-  hfecuts->UnsetVertexRequirement();
-  hfecuts->SetSigmaToVertex(10);
+
+  //hfecuts->UnsetVertexRequirement();
+  hfecuts->SetMaxImpactParam(3.,3.);
+
+  hfecuts->SetVertexRange(10.);
+  //hfecuts->SetMaxChi2perClusterITS(36);
+  //hfecuts->SetSigmaToVertex(10);
+  hfecuts->SetTOFPIDStep(kTRUE);
+  //hfecuts->SetTOFMISMATCHStep(kTRUE);
+  //hfecuts->SetTPCPIDCleanUpStep(kTRUE);
   hfecuts->SetQAOn();
   //hfecuts->SetMinNTrackletsTRD(5);
 
   AliAnalysisTaskHFE *task = new AliAnalysisTaskHFE("HFEanalysisStandard");
   task->SetHFECuts(hfecuts);
-//  task->SetRemovePileUp(kTRUE);
+  task->SetPbPbAnalysis(kTRUE);
+  //task->SetRemovePileUp(kTRUE);
+  task->GetPIDQAManager()->SetHighResolutionHistos();
 
   // Define Variables
   AliHFEvarManager *vm = task->GetVarManager();
@@ -28,16 +41,16 @@ AliAnalysisTaskHFE* ConfigHFEstandard_PbPb(Bool_t useMC){
   vm->AddVariable("centrality");
 
   if(!useMC){
-    TF1 *hBackground = new TF1("hadronicBackgroundFunction", "[0]+[1]*TMath::Erf([2]*x+[3])", 0, 20);
-    hBackground->SetParameter(0, 8.19639e-02);
-    hBackground->SetParameter(1, 7.66857e-02);
-    hBackground->SetParameter(2, 8.74797e-01);
-    hBackground->SetParameter(3, -2.69972e+00);
-/*    hBackground->SetParameter(0, 0.1249);
-    hBackground->SetParameter(1, 0.1239);
-    hBackground->SetParameter(2, 0.8156);
-    hBackground->SetParameter(3, -2.867);*/
-    task->SetBackGroundFactorsFunction(hBackground);
+
+      for(Int_t a=0;a<12;a++)
+      {
+         TF1 *hBackground = new TF1("hadronicBackgroundFunction","TMath::Exp([0]/x + [1])", 0., 20.);
+         hBackground->SetParameter(0, -43.87);
+         hBackground->SetParameter(1, 2.85);
+         task->SetBackGroundFactorsFunction(hBackground,a);
+      }
+
+
   }
 
   // Define PID
@@ -45,13 +58,67 @@ AliAnalysisTaskHFE* ConfigHFEstandard_PbPb(Bool_t useMC){
   if(useMC) pid->SetHasMCData(kTRUE);
   pid->AddDetector("TOF", 0);
   pid->AddDetector("TPC", 1);
-  pid->ConfigureTPCrejection();
+//  pid->ConfigureTPCrejection();
+
+  if(!useMC){
 
+      Double_t params_centr_0_5[1];
+      Double_t params_centr_5_10[1];
+      Double_t params_centr_10_20[1];
+      Double_t params_centr_20_30[1];
+      Double_t params_centr_per[1];
+      params_centr_0_5[0]=0.16;  // cut tuned for 0-10%
+      params_centr_5_10[0]=0.16; // cut tuned for 0-10%
+      params_centr_10_20[0]=0.29;
+      params_centr_20_30[0]=0.38;
+      params_centr_per[0]=0.44;
+      char *cutmodel;
+      cutmodel="pol0";
+
+
+      for(Int_t a=0;a<11;a++)
+      {
+         if(a>3)  pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_per,3.0);
+         if(a==0) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_0_5,3.0);    //  0-5%
+         if(a==1) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_5_10,3.0);    //  5-10%
+         if(a==2) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_10_20,3.0);    //  10-20%
+         if(a==3) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_20_30,3.0);    //  20-30%
+      }
+
+
+  }
+
+
+  // V0 tagged tracks
+  AliHFEcuts *v0trackCuts = new AliHFEcuts("V0trackCuts", "Track Cuts for tagged track Analysis");
+  v0trackCuts->CreateStandardCuts();
+  v0trackCuts->SetMinNClustersTPC(120);
+  v0trackCuts->SetMinRatioTPCclusters(0.6);
+  v0trackCuts->SetTPCmodes(AliHFEextraCuts::kFound, AliHFEextraCuts::kFoundOverFindable);
+  v0trackCuts->SetMinNClustersITS(1);
+  v0trackCuts->SetCutITSpixel(AliHFEextraCuts::kAny);
+  v0trackCuts->SetCheckITSLayerStatus(kFALSE);
+  v0trackCuts->UnsetVertexRequirement();
+  //v0trackCuts->SetMaxChi2perClusterITS(36);
+  //hfecuts->SetSigmaToVertex(10);
+  v0trackCuts->SetTOFPIDStep(kTRUE);
+//  v0trackCuts->SetTOFMISMATCHStep(kTRUE);
+  //v0trackCuts->SetTPCPIDCleanUpStep(kTRUE);
+  v0trackCuts->SetQAOn();
+  
+  task->SwitchOnPlugin(AliAnalysisTaskHFE::kTaggedTrackAnalysis);
+  task->SetTaggedTrackCuts(v0trackCuts);
+  task->SetCleanTaggedTrack(kFALSE);
+  
   // QA
   task->SetQAOn(AliAnalysisTaskHFE::kPIDqa);
-  task->SetQAOn(AliAnalysisTaskHFE::kMCqa);    
-  task->SwitchOnPlugin(AliAnalysisTaskHFE::kIsElecBackGround);
-  task->SwitchOnPlugin(AliAnalysisTaskHFE::kSecVtx);
+//  task->SetFillSignalOnly(kFALSE);    // for DE pluging for MC
+  task->SetQAOn(AliAnalysisTaskHFE::kMCqa);
+  //task->SwitchOnPlugin(AliAnalysisTaskHFE::kIsElecBackGround);
+  //task->SwitchOnPlugin(AliAnalysisTaskHFE::kSecVtx);
+  task->SwitchOnPlugin(AliAnalysisTaskHFE::kDEstep);
+
+
 
   printf("*************************************\n");
   printf("Configuring standard Task:\n");