]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG3/vertexingHF/ConfigVertexingHF_highmult.C
Fix in Dplus filtering parameters
[u/mrichter/AliRoot.git] / PWG3 / vertexingHF / ConfigVertexingHF_highmult.C
index 37c6d00e9f4ac5429b0c4624545285a4a8398e5b..e55d0290126ec7e07446f1ce9c9d3e6514ad02d5 100644 (file)
@@ -7,7 +7,7 @@ AliAnalysisVertexingHF* ConfigVertexingHF() {
   //vHF->SetD0toKpiOff();
   vHF->SetJPSItoEleOff();
   //vHF->Set3ProngOff();
-  //vHF->SetLikeSignOn(); // like-sign pairs and triplets
+  vHF->SetLikeSignOn(); // like-sign pairs and triplets
   vHF->Set4ProngOff();
   //vHF->SetDstarOff();
   vHF->SetFindVertexForDstar(kFALSE);
@@ -26,10 +26,11 @@ AliAnalysisVertexingHF* ConfigVertexingHF() {
   //esdTrackCuts->SetMinNClustersITS(4);
   esdTrackCuts->SetClusterRequirementITS(AliESDtrackCuts::kSPD,
                                         AliESDtrackCuts::kAny);
-  esdTrackCuts->SetMinDCAToVertexXY(0.0100);
+  // |d0|>75 micron for pt<2GeV, no cut above 2
+  esdTrackCuts->SetMinDCAToVertexXYPtDep("0.0075*TMath::Max(0.,(1-TMath::Floor(TMath::Abs(pt)/2.)))");
   esdTrackCuts->SetMaxDCAToVertexXY(1.);  
   esdTrackCuts->SetMaxDCAToVertexZ(1.);
-  esdTrackCuts->SetPtRange(0.8,1.e10);
+  esdTrackCuts->SetPtRange(0.7,1.e10);
   esdTrackCuts->SetEtaRange(-0.8,+0.8);
   AliAnalysisFilter *trkFilter = new AliAnalysisFilter("trackFilter");
   trkFilter->AddCuts(esdTrackCuts);
@@ -45,9 +46,17 @@ AliAnalysisVertexingHF* ConfigVertexingHF() {
   trkFilterSoftPi->AddCuts(esdTrackCutsSoftPi);
   vHF->SetTrackFilterSoftPi(trkFilterSoftPi);
   //--- set cuts for candidates selection
+  Int_t nptbins=2; Float_t ptlimits[2]={0.,1000000.};
   AliRDHFCutsD0toKpi *cutsD0toKpi = new AliRDHFCutsD0toKpi("CutsD0toKpi");
-  Float_t cutsArrayD0toKpi[9]={0.2,999999.,1.1,0.,0.,999999.,999999.,0.,0.5};
-  cutsD0toKpi->SetCuts(9,cutsArrayD0toKpi);
+  cutsD0toKpi->SetStandardCutsPbPb2010();
+  cutsD0toKpi->SetMinPtCandidate(0.);
+  cutsD0toKpi->SetUsePID(kFALSE);
+  cutsD0toKpi->SetUsePhysicsSelection(kFALSE);
+  cutsD0toKpi->SetMaxVtxZ(1.e6);
+  cutsD0toKpi->SetTriggerClass("");
+  Float_t cutsArrayD0toKpi[11]={0.2,999999.,1.1,0.,0.,999999.,999999.,0.,0.5,-1,0.};
+  cutsD0toKpi->SetPtBins(nptbins,ptlimits);
+  cutsD0toKpi->SetCuts(11,cutsArrayD0toKpi);
   cutsD0toKpi->AddTrackCuts(esdTrackCuts);
   vHF->SetCutsD0toKpi(cutsD0toKpi);
   AliRDHFCutsJpsitoee *cutsJpsitoee = new AliRDHFCutsJpsitoee("CutsJpsitoee");
@@ -56,19 +65,31 @@ AliAnalysisVertexingHF* ConfigVertexingHF() {
   cutsJpsitoee->AddTrackCuts(esdTrackCuts);
   vHF->SetCutsJpsitoee(cutsJpsitoee);
   AliRDHFCutsDplustoKpipi *cutsDplustoKpipi = new AliRDHFCutsDplustoKpipi("CutsDplustoKpipi");
-  Float_t cutsArrayDplustoKpipi[12]={0.2,0.8,0.8,0.,0.,0.01,0.06,0.03,0.,0.85,0.,10000000000.};
-  cutsDplustoKpipi->SetCuts(12,cutsArrayDplustoKpipi);
+  cutsDplustoKpipi->SetStandardCutsPbPb2010();
+  cutsDplustoKpipi->SetUsePID(kFALSE);
+  Float_t cutsArrayDplustoKpipi[14]={0.2,0.3,0.3,0.,0.,0.01,0.06,0.05,1.,0.85,0.,10000000000.,0.,0.};
+  cutsDplustoKpipi->SetPtBins(nptbins,ptlimits);
+  cutsDplustoKpipi->SetCuts(14,cutsArrayDplustoKpipi);
   cutsDplustoKpipi->AddTrackCuts(esdTrackCuts);
+  cutsDplustoKpipi->SetMinPtCandidate(3.);
   vHF->SetCutsDplustoKpipi(cutsDplustoKpipi);
   AliRDHFCutsDstoKKpi *cutsDstoKKpi = new AliRDHFCutsDstoKKpi("CutsDstoKKpi");
-  Float_t cutsArrayDstoKKpi[14]={0.,999.,999.,0.,0.,0.005,0.06,0.,0.,0.7,0.,1000.,0.1,0.1};
-  cutsDstoKKpi->SetCuts(14,cutsArrayDstoKKpi);
+  cutsDstoKKpi->SetStandardCutsPbPb2010();
+  cutsDstoKKpi->SetUsePID(kFALSE);
+  Float_t cutsArrayDstoKKpi[16]={0.2,0.4,0.4,0.,0.,0.005,0.045,0.,0.,0.9,0.,100000.,0.035,0.05,-1.,1.};
+  cutsDstoKKpi->SetPtBins(nptbins,ptlimits);
+  cutsDstoKKpi->SetCuts(16,cutsArrayDstoKKpi);
   cutsDstoKKpi->AddTrackCuts(esdTrackCuts);
+  cutsDstoKKpi->SetMinPtCandidate(4.);
   vHF->SetCutsDstoKKpi(cutsDstoKKpi);
   AliRDHFCutsLctopKpi *cutsLctopKpi = new AliRDHFCutsLctopKpi("CutsLctopKpi");
-  Float_t cutsArrayLctopKpi[12]={0.13,0.5,0.6,0.,0.,0.01,0.04,0.006,0.8,0.3,0.,0.05};
-  cutsLctopKpi->SetCuts(12,cutsArrayLctopKpi);
+  cutsLctopKpi->SetStandardCutsPbPb2010();
+  cutsLctopKpi->SetUsePID(kFALSE);
+  Float_t cutsArrayLctopKpi[13]={0.13,0.9,1.,0.,0.,0.01,0.04,0.006,1.,0.5,0.,0.05,0.4};
+  cutsLctopKpi->SetPtBins(nptbins,ptlimits);
+  cutsLctopKpi->SetCuts(13,cutsArrayLctopKpi);
   cutsLctopKpi->AddTrackCuts(esdTrackCuts);
+  cutsLctopKpi->SetMinPtCandidate(4.);
   vHF->SetCutsLctopKpi(cutsLctopKpi);
   AliRDHFCutsD0toKpipipi *cutsD0toKpipipi = new AliRDHFCutsD0toKpipipi("CutsD0toKpipipi");
   Float_t cutsArrayD0toKpipipi[9]={0.2,0.04,0.00,0.01,0.02,0.8,0.,0.1,0.};
@@ -76,11 +97,74 @@ AliAnalysisVertexingHF* ConfigVertexingHF() {
   cutsD0toKpipipi->AddTrackCuts(esdTrackCuts);
   vHF->SetCutsD0toKpipipi(cutsD0toKpipipi);
   AliRDHFCutsDStartoKpipi *cutsDStartoKpipi = new AliRDHFCutsDStartoKpipi("CutsDStartoKpipi");
-  Float_t cutsArrayDStartoKpipi[14]={0.15,0.07.,0.85,0.8,0.8,0.06.,0.06.,0.001,0.6,0.15, 0.03, 0.2, 5, 0.5}; // first 9 for D0 from D*, last 5 for D*
-  cutsDStartoKpipi->SetCuts(14,cutsArrayDStartoKpipi);
+  cutsDStartoKpipi->SetStandardCutsPbPb2010();
+  cutsDStartoKpipi->SetUsePID(kFALSE);
+
+
+ // D* pt dependent cuts ------------------------------------------
+
+  AliRDHFCutsDStartoKpipi *cutsDStartoKpipi = new AliRDHFCutsDStartoKpipi("CutsDStartoKpipi");
+  
+  const Int_t nvars=16;
+  const Int_t nptbins=2;
+  
+  Float_t* ptbins;
+  ptbins=new Float_t[nptbins+1];
+  ptbins[0]=0.;
+  ptbins[1]=4.;
+  ptbins[2]=999.;
+  
+  cutsDStartoKpipi->SetPtBins(nptbins+1,ptbins);
+  
+  Float_t** rdcutsvalmine;
+  rdcutsvalmine=new Float_t*[nvars];
+  for(Int_t iv=0;iv<nvars;iv++){
+    rdcutsvalmine[iv]=new Float_t[nptbins];
+  }
+  //0-4
+  rdcutsvalmine[0][0]=0.15;
+  rdcutsvalmine[1][0]=0.07;
+  rdcutsvalmine[2][0]=0.8;
+  rdcutsvalmine[3][0]=0.8;
+  rdcutsvalmine[4][0]=0.8;
+  rdcutsvalmine[5][0]=0.08;
+  rdcutsvalmine[6][0]=0.08;
+  rdcutsvalmine[7][0]=-0.00002;
+  rdcutsvalmine[8][0]=0.72;
+  rdcutsvalmine[9][0]=0.15;
+  rdcutsvalmine[10][0]=0.03;
+  rdcutsvalmine[11][0]=0.2;
+  rdcutsvalmine[12][0]=100.;
+  rdcutsvalmine[13][0]=0.5;
+  rdcutsvalmine[14][0]=-1.;
+  rdcutsvalmine[15][0]=0.;
+  //4-999
+  rdcutsvalmine[0][1]=0.24;
+  rdcutsvalmine[1][1]=0.07;
+  rdcutsvalmine[2][1]=0.8;
+  rdcutsvalmine[3][1]=0.8;
+  rdcutsvalmine[4][1]=0.8;
+  rdcutsvalmine[5][1]=0.1;
+  rdcutsvalmine[6][1]=0.1;
+  rdcutsvalmine[7][1]=0.00001;
+  rdcutsvalmine[8][1]=0.72;
+  rdcutsvalmine[9][1]=0.15;
+  rdcutsvalmine[10][1]=0.03;
+  rdcutsvalmine[11][1]=0.2;
+  rdcutsvalmine[12][1]=100.;
+  rdcutsvalmine[13][1]=0.5;
+  rdcutsvalmine[14][1]=-1.;
+  rdcutsvalmine[15][1]=0.;
+
+  cutsDStartoKpipi->SetCuts(nvars,nptbins,rdcutsvalmine);
   cutsDStartoKpipi->AddTrackCuts(esdTrackCuts);
   cutsDStartoKpipi->AddTrackCutsSoftPi(esdTrackCutsSoftPi);
+  cutsDStartoKpipi->SetMinPtCandidate(3.);
   vHF->SetCutsDStartoKpipi(cutsDStartoKpipi);
+
+  //--------------------------------------------------------
+
   AliRDHFCutsLctoV0 *cutsLctoV0 = new AliRDHFCutsLctoV0("CutsLctoV0");
   Float_t cutsArrayLctoV0[9]={4.0,4.0,2.0,2.0,0.0,0.0,0.0,1000.,1000.};
   cutsLctoV0->SetCuts(9,cutsArrayLctoV0);