]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Added new config under test
authordainesea <dainesea@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 18 Jun 2013 11:11:53 +0000 (11:11 +0000)
committerdainesea <dainesea@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 18 Jun 2013 11:11:53 +0000 (11:11 +0000)
PWGHF/vertexingHF/upgrade/ConfigVertexingHF_ITSUpgrade_wPID.C [new file with mode: 0644]

diff --git a/PWGHF/vertexingHF/upgrade/ConfigVertexingHF_ITSUpgrade_wPID.C b/PWGHF/vertexingHF/upgrade/ConfigVertexingHF_ITSUpgrade_wPID.C
new file mode 100644 (file)
index 0000000..1ed14ac
--- /dev/null
@@ -0,0 +1,219 @@
+AliAnalysisVertexingHF* ConfigVertexingHF() {\r
+\r
+  printf("Call to AliAnalysisVertexingHF parameters setting :\n");\r
+  vHF = new AliAnalysisVertexingHF();\r
\r
+  //--- switch-off candidates finding (default: all on)\r
+  //vHF->SetD0toKpiOff();\r
+  vHF->SetD0toKpiOn();\r
+  vHF->SetJPSItoEleOff();\r
+  //vHF->Set3ProngOff();\r
+  //vHF->SetLikeSignOn(); // like-sign pairs and triplets\r
+  vHF->SetLikeSign3prongOff();\r
+  vHF->Set4ProngOff();\r
+  //vHF->SetDstarOff();\r
+  vHF->SetFindVertexForDstar(kFALSE);\r
+  //--- secondary vertex with KF?\r
+  //vHF->SetSecVtxWithKF();\r
+  //Cascade\r
+  //vHF->SetCascadesOff();                 \r
+  vHF->SetCascadesOn();                 \r
+  vHF->SetFindVertexForCascades(kFALSE);//put kFALSE \r
+  vHF->SetV0TypeForCascadeVertex(AliRDHFCuts::kOnlyOfflineV0s); //All V0s 0, Offline 1, OnTheFly 2\r
+  vHF->SetUseProtonPIDforLambdaC2V0();\r
+\r
+  vHF->SetMassCutBeforeVertexing(kTRUE); // PbPb\r
+  //set PID\r
+  vHF->SetUseKaonPIDfor3Prong(kTRUE);\r
+  vHF->SetUseKaonPIDforDs(kTRUE);\r
+  vHF->SetUseProtonAndPionPIDforLambdaC();\r
+  vHF->SetnSigmaTOFforKaonSel(3., 5.);\r
+  vHF->SetnSigmaTPCforKaonSel(5., 5.);\r
+  vHF->SetnSigmaTOFforProtonSel(3.,5.);\r
+  vHF->SetnSigmaTPCforProtonSel(5., 5.);\r
+  vHF->SetnSigmaTPCforPionSel(4., 4.);\r
+  vHF->SetnSigmaTOFforPionSel(40.,40.);\r
+  vHF->SetMaxMomForTPCPid(9999999999.);\r
+  vHF->SetUseTPCPID(kTRUE);\r
+  vHF->SetUseTOFPID(kTRUE);\r
+  vHF->SetUseTPCPIDOnlyIfNoTOF(kTRUE);\r
+  \r
+  //--- set cuts for single-track selection  \r
+  //     displaced tracks\r
+  AliESDtrackCuts *esdTrackCuts = new AliESDtrackCuts("AliESDtrackCuts","default");\r
+  esdTrackCuts->SetRequireTPCRefit(kTRUE);\r
+  esdTrackCuts->SetMinNClustersTPC(70);\r
+  esdTrackCuts->SetRequireITSRefit(kTRUE);\r
+  //esdTrackCuts->SetMinNClustersITS(4);\r
+  esdTrackCuts->SetClusterRequirementITS(AliESDtrackCuts::kITSU012,\r
+                                        AliESDtrackCuts::kAny);\r
+  // |d0|>30 micron for pt<2GeV, no cut above 2\r
+  esdTrackCuts->SetMinDCAToVertexXYPtDep("0.003*TMath::Max(0.,(1-TMath::Floor(TMath::Abs(pt)/2.)))");\r
+  esdTrackCuts->SetMaxDCAToVertexXY(1.);  \r
+  esdTrackCuts->SetMaxDCAToVertexZ(1.);\r
+  esdTrackCuts->SetPtRange(0.5,1.e10);\r
+  esdTrackCuts->SetEtaRange(-0.9,+0.9);\r
+  AliAnalysisFilter *trkFilter = new AliAnalysisFilter("trackFilter");\r
+  trkFilter->AddCuts(esdTrackCuts);\r
+  vHF->SetTrackFilter(trkFilter);\r
+  //     D* soft pion tracks\r
+  AliESDtrackCuts *esdTrackCutsSoftPi = new AliESDtrackCuts("AliESDtrackCuts","default");\r
+  esdTrackCutsSoftPi->SetMinNClustersITS(2);\r
+  esdTrackCutsSoftPi->SetMaxDCAToVertexXY(1.);  \r
+  esdTrackCutsSoftPi->SetMaxDCAToVertexZ(1.);\r
+  esdTrackCutsSoftPi->SetPtRange(0.1,1.e10);// 0.2\r
+  esdTrackCutsSoftPi->SetEtaRange(-0.9,+0.9);\r
+  AliAnalysisFilter *trkFilterSoftPi = new AliAnalysisFilter("trackFilterSoftPi");\r
+  trkFilterSoftPi->AddCuts(esdTrackCutsSoftPi);\r
+  vHF->SetTrackFilterSoftPi(trkFilterSoftPi);\r
+  //--- set cuts for candidates selection\r
+  Int_t nptbins=2; Float_t ptlimits[2]={0.,1000000.};\r
+  AliRDHFCutsD0toKpi *cutsD0toKpi = new AliRDHFCutsD0toKpi("CutsD0toKpi");\r
+  cutsD0toKpi->SetStandardCutsPbPb2010();\r
+  cutsD0toKpi->SetMinCentrality(-10);\r
+  cutsD0toKpi->SetMaxCentrality(110);\r
+  cutsD0toKpi->SetUseSpecialCuts(kFALSE);\r
+  cutsD0toKpi->SetMinPtCandidate(0.);\r
+  cutsD0toKpi->SetUsePID(kFALSE);\r
+  cutsD0toKpi->SetUsePhysicsSelection(kFALSE);\r
+  cutsD0toKpi->SetMaxVtxZ(1.e6);\r
+  cutsD0toKpi->SetTriggerClass("");\r
+  Float_t cutsArrayD0toKpi[11]={0.4,999999.,1.1,0.,0.,999999.,999999.,0.,0.5,-1,0.};\r
+  cutsD0toKpi->SetPtBins(nptbins,ptlimits);\r
+  cutsD0toKpi->SetCuts(11,cutsArrayD0toKpi);\r
+  cutsD0toKpi->AddTrackCuts(esdTrackCuts);\r
+  vHF->SetCutsD0toKpi(cutsD0toKpi);\r
+  AliRDHFCutsJpsitoee *cutsJpsitoee = new AliRDHFCutsJpsitoee("CutsJpsitoee");\r
+  Float_t cutsArrayJpsitoee[9]={0.350,100000.,1.1,0.,0.,100000.,100000.,100000000.,-1.1};\r
+  cutsJpsitoee->SetCuts(9,cutsArrayJpsitoee);\r
+  cutsJpsitoee->AddTrackCuts(esdTrackCuts);\r
+  vHF->SetCutsJpsitoee(cutsJpsitoee);\r
+  AliRDHFCutsDplustoKpipi *cutsDplustoKpipi = new AliRDHFCutsDplustoKpipi("CutsDplustoKpipi");\r
+  cutsDplustoKpipi->SetStandardCutsPbPb2010();\r
+  cutsDplustoKpipi->SetUsePID(kFALSE);\r
+  Float_t cutsArrayDplustoKpipi[14]={0.25,0.3,0.3,0.,0.,0.01,0.05,0.05,0.,0.88,0.,10000000000.,0.,-1.};\r
+  cutsDplustoKpipi->SetPtBins(nptbins,ptlimits);\r
+  cutsDplustoKpipi->SetCuts(14,cutsArrayDplustoKpipi);\r
+  cutsDplustoKpipi->AddTrackCuts(esdTrackCuts);\r
+  cutsDplustoKpipi->SetMinPtCandidate(1000.); // D+ off to save spave\r
+  vHF->SetCutsDplustoKpipi(cutsDplustoKpipi);\r
+  AliRDHFCutsDstoKKpi *cutsDstoKKpi = new AliRDHFCutsDstoKKpi("CutsDstoKKpi");\r
+  cutsDstoKKpi->SetStandardCutsPbPb2010();\r
+  cutsDstoKKpi->SetUsePID(kFALSE);\r
+  Float_t cutsArrayDstoKKpi[20]={0.2,0.3,0.3,0.,0.,0.005,0.06,0.,0.,0.9,0.,100000.,0.035,0.0001,-1.,1.,0.,0.,0.,-1.};\r
+  cutsDstoKKpi->SetPtBins(nptbins,ptlimits);\r
+  cutsDstoKKpi->SetCuts(20,cutsArrayDstoKKpi);\r
+  cutsDstoKKpi->AddTrackCuts(esdTrackCuts);\r
+  cutsDstoKKpi->SetMinPtCandidate(1.);\r
+  vHF->SetCutsDstoKKpi(cutsDstoKKpi);\r
+  AliRDHFCutsLctopKpi *cutsLctopKpi = new AliRDHFCutsLctopKpi("CutsLctopKpi");\r
+  cutsLctopKpi->SetStandardCutsPbPb2010();\r
+  cutsLctopKpi->SetUsePID(kFALSE);\r
+  Float_t cutsArrayLctopKpi[13]={0.13,0.4,0.4,0.,0.,0.,0.06,0.,0.,0.,0.,0.05,0.4};\r
+  cutsLctopKpi->SetPtBins(nptbins,ptlimits);\r
+  cutsLctopKpi->SetCuts(13,cutsArrayLctopKpi);\r
+  cutsLctopKpi->AddTrackCuts(esdTrackCuts);\r
+  cutsLctopKpi->SetMinPtCandidate(2.);// era due\r
+  vHF->SetCutsLctopKpi(cutsLctopKpi);\r
+  AliRDHFCutsD0toKpipipi *cutsD0toKpipipi = new AliRDHFCutsD0toKpipipi("CutsD0toKpipipi");\r
+  Float_t cutsArrayD0toKpipipi[9]={0.2,0.04,0.00,0.01,0.02,0.8,0.,0.1,0.};\r
+  cutsD0toKpipipi->SetCuts(9,cutsArrayD0toKpipipi);\r
+  cutsD0toKpipipi->AddTrackCuts(esdTrackCuts);\r
+  vHF->SetCutsD0toKpipipi(cutsD0toKpipipi);\r
+\r
+\r
+ // D* pt dependent cuts ------------------------------------------\r
+\r
+  AliRDHFCutsDStartoKpipi *cutsDStartoKpipi = new AliRDHFCutsDStartoKpipi("CutsDStartoKpipi");\r
+  cutsDStartoKpipi->SetUsePID(kFALSE);\r
+  \r
+  const Int_t nvars=16;\r
+  const Int_t nptbins=2;\r
+  \r
+  Float_t* ptbins;\r
+  ptbins=new Float_t[nptbins+1];\r
+  ptbins[0]=0.;\r
+  ptbins[1]=5.;\r
+  ptbins[2]=999.;\r
+  \r
+  cutsDStartoKpipi->SetPtBins(nptbins+1,ptbins);\r
+  \r
+  Float_t** rdcutsvalmine;\r
+  rdcutsvalmine=new Float_t*[nvars];\r
+  for(Int_t iv=0;iv<nvars;iv++){\r
+    rdcutsvalmine[iv]=new Float_t[nptbins];\r
+  }\r
+  //0-5\r
+  rdcutsvalmine[0][0]=0.15;  //D0 inv mass window\r
+  rdcutsvalmine[1][0]=0.06;   // dca\r
+  rdcutsvalmine[2][0]=0.9;    // thetastar\r
+  rdcutsvalmine[3][0]=0.5;    // pt Pion\r
+  rdcutsvalmine[4][0]=0.5;    // Pt Kaon\r
+  rdcutsvalmine[5][0]=0.1;    // d0K\r
+  rdcutsvalmine[6][0]=0.1;    // d0Pi\r
+  rdcutsvalmine[7][0]=0.0001; // d0xd0\r
+  rdcutsvalmine[8][0]=0.8;    // costhetapoint\r
+  rdcutsvalmine[9][0]=0.20;   // Dstar inv mass window\r
+  rdcutsvalmine[10][0]=0.03;  // half width of (M_Kpipi-M_D0)\r
+  rdcutsvalmine[11][0]=0.1;   // Pt min of Pi soft\r
+  rdcutsvalmine[12][0]=100.;  // Pt max of pi soft\r
+  rdcutsvalmine[13][0]=9999.; // theta\r
+  rdcutsvalmine[14][0]=0.9;   // |cosThetaPointXY|\r
+  rdcutsvalmine[15][0]=1.;    // NormDecayLenghtXY\r
+ //5-999\r
+  rdcutsvalmine[0][1]=0.15;   //D0 inv mass window\r
+  rdcutsvalmine[1][1]=0.06;   // dca\r
+  rdcutsvalmine[2][1]=0.9;    // thetastar\r
+  rdcutsvalmine[3][1]=0.5;    // pt Pion\r
+  rdcutsvalmine[4][1]=0.5;    // Pt Kaon\r
+  rdcutsvalmine[5][1]=0.1;    // d0K\r
+  rdcutsvalmine[6][1]=0.1;    // d0Pi\r
+  rdcutsvalmine[7][1]=0.0001; // d0xd0\r
+  rdcutsvalmine[8][1]=0.7;    // costhetapoint\r
+  rdcutsvalmine[9][1]=0.20;   // Dstar inv mass window\r
+  rdcutsvalmine[10][1]=0.03;  // half width of (M_Kpipi-M_D0)\r
+  rdcutsvalmine[11][1]=0.1;   // Pt min of Pi soft\r
+  rdcutsvalmine[12][1]=100.;  // Pt max of pi soft\r
+  rdcutsvalmine[13][1]=9999.; // theta\r
+  rdcutsvalmine[14][1]=0.8;   // |cosThetaPointXY|\r
+  rdcutsvalmine[15][1]=0.;    // NormDecayLenghtXY\r
+\r
+  cutsDStartoKpipi->SetCuts(nvars,nptbins,rdcutsvalmine);\r
\r
+  cutsDStartoKpipi->AddTrackCuts(esdTrackCuts);\r
+  cutsDStartoKpipi->AddTrackCutsSoftPi(esdTrackCutsSoftPi);\r
+  cutsDStartoKpipi->SetMinPtCandidate(1.);\r
+  vHF->SetCutsDStartoKpipi(cutsDStartoKpipi);\r
+\r
+  //--------------------------------------------------------\r
+\r
+  AliRDHFCutsLctoV0 *cutsLctoV0 = new AliRDHFCutsLctoV0("CutsLctoV0");\r
+  /*\r
+  Float_t cutsArrayLctoV0[9]={4.0,4.0,2.0,2.0,0.0,0.0,0.0,1000.,1000.};\r
+  cutsLctoV0->SetCuts(9,cutsArrayLctoV0);\r
+  */\r
+  //last dummy\r
+  //Float_t cutsArrayLctoV0[10]={4.0,4.0,2.0,2.0,0.0,0.0,0.0,1000.,1000.,1.};\r
+  Float_t cutsArrayLctoV0[17]={1.0,1.0,0.05,0.05,0.0,0.0,0.0,1000.,1000.,0.99,3.,1000.,0.,0.,0.,0.,1.0};\r
+  cutsLctoV0->SetCuts(17,cutsArrayLctoV0);\r
+  cutsLctoV0->AddTrackCuts(esdTrackCuts);\r
+  vHF->SetCutsLctoV0(cutsLctoV0);\r
+  // \r
+  //--- set this if you want to reconstruct primary vertex candidate by\r
+  //    candidate using other tracks in the event (for pp, broad \r
+  //    interaction region)\r
+  //vHF->SetRecoPrimVtxSkippingTrks();\r
+  //--- OR set this if you want to remove the candidate daughters from \r
+  //    the primary vertex, without recostructing it from scratch\r
+  //vHF->SetRmTrksFromPrimVtx();\r
+\r
+  //--- check the settings\r
+  vHF->PrintStatus();\r
+  //--- verbose\r
+  //  AliLog::SetClassDebugLevel("AliAnalysisVertexingHF",2);\r
+\r
\r
+  return vHF;\r
+}\r
+\r
+\r