Enable D*
[u/mrichter/AliRoot.git] / PWG3 / vertexingHF / ConfigVertexingHF_highmult.C
1 AliAnalysisVertexingHF* ConfigVertexingHF() {
2
3   printf("Call to AliAnalysisVertexingHF parameters setting :\n");
4   vHF = new AliAnalysisVertexingHF();
5  
6   //--- switch-off candidates finding (default: all on)
7   //vHF->SetD0toKpiOff();
8   vHF->SetJPSItoEleOff();
9   //vHF->Set3ProngOff();
10   //vHF->SetLikeSignOn(); // like-sign pairs and triplets
11   vHF->Set4ProngOff();
12   //vHF->SetDstarOff();
13   vHF->SetFindVertexForDstar(kFALSE);
14   //--- secondary vertex with KF?
15   //vHF->SetSecVtxWithKF();
16   vHF->SetCascadesOff();
17   vHF->SetFindVertexForCascades(kFALSE);
18
19   //--- set cuts for single-track selection  
20   //     displaced tracks
21   AliESDtrackCuts *esdTrackCuts = new AliESDtrackCuts("AliESDtrackCuts","default");
22   esdTrackCuts->SetRequireTPCRefit(kTRUE);
23   esdTrackCuts->SetMinNClustersTPC(70);
24   esdTrackCuts->SetRequireITSRefit(kTRUE);
25   //esdTrackCuts->SetMinNClustersITS(4);
26   esdTrackCuts->SetClusterRequirementITS(AliESDtrackCuts::kSPD,
27                                          AliESDtrackCuts::kAny);
28   esdTrackCuts->SetMinDCAToVertexXY(0.0100);
29   esdTrackCuts->SetPtRange(0.8,1.e10);
30   esdTrackCuts->SetEtaRange(-0.8,+0.8);
31   AliAnalysisFilter *trkFilter = new AliAnalysisFilter("trackFilter");
32   trkFilter->AddCuts(esdTrackCuts);
33   vHF->SetTrackFilter(trkFilter);
34   //     D* soft pion tracks
35   AliESDtrackCuts *esdTrackCutsSoftPi = new AliESDtrackCuts("AliESDtrackCuts","default");
36   esdTrackCutsSoftPi->SetMinNClustersITS(4);
37   esdTrackCuts->SetPtRange(0.2,1.e10);
38   esdTrackCutsSoftPi->SetEtaRange(-0.8,+0.8);
39   AliAnalysisFilter *trkFilterSoftPi = new AliAnalysisFilter("trackFilterSoftPi");
40   trkFilterSoftPi->AddCuts(esdTrackCutsSoftPi);
41   vHF->SetTrackFilterSoftPi(trkFilterSoftPi);
42   //--- set cuts for candidates selection
43   AliRDHFCutsD0toKpi *cutsD0toKpi = new AliRDHFCutsD0toKpi("CutsD0toKpi");
44   Float_t cutsArrayD0toKpi[9]={0.2,999999.,1.1,0.,0.,999999.,999999.,0.,0.5};
45   cutsD0toKpi->SetCuts(9,cutsArrayD0toKpi);
46   cutsD0toKpi->AddTrackCuts(esdTrackCuts);
47   vHF->SetCutsD0toKpi(cutsD0toKpi);
48   AliRDHFCutsJpsitoee *cutsJpsitoee = new AliRDHFCutsJpsitoee("CutsJpsitoee");
49   Float_t cutsArrayJpsitoee[9]={0.350,100000.,1.1,0.,0.,100000.,100000.,100000000.,-1.1};
50   cutsJpsitoee->SetCuts(9,cutsArrayJpsitoee);
51   cutsJpsitoee->AddTrackCuts(esdTrackCuts);
52   vHF->SetCutsJpsitoee(cutsJpsitoee);
53   AliRDHFCutsDplustoKpipi *cutsDplustoKpipi = new AliRDHFCutsDplustoKpipi("CutsDplustoKpipi");
54   Float_t cutsArrayDplustoKpipi[12]={0.2,0.8,0.8,0.,0.,0.01,0.06,0.03,0.,0.85,0.,10000000000.};
55   cutsDplustoKpipi->SetCuts(12,cutsArrayDplustoKpipi);
56   cutsDplustoKpipi->AddTrackCuts(esdTrackCuts);
57   vHF->SetCutsDplustoKpipi(cutsDplustoKpipi);
58   AliRDHFCutsDstoKKpi *cutsDstoKKpi = new AliRDHFCutsDstoKKpi("CutsDstoKKpi");
59   Float_t cutsArrayDstoKKpi[14]={0.,999.,999.,0.,0.,0.005,0.06,0.,0.,0.7,0.,1000.,0.1,0.1};
60   cutsDstoKKpi->SetCuts(14,cutsArrayDstoKKpi);
61   cutsDstoKKpi->AddTrackCuts(esdTrackCuts);
62   vHF->SetCutsDstoKKpi(cutsDstoKKpi);
63   AliRDHFCutsLctopKpi *cutsLctopKpi = new AliRDHFCutsLctopKpi("CutsLctopKpi");
64   //Float_t cutsArrayLctopKpi[12]={0.2,0.4,0.4,0.,0.,0.01,0.06,0.02,0.,0.85,0.,10000000000.};
65   Float_t cutsArrayLctopKpi[12]={0.,999.,999.,0.,0.,0.01,0.06,0.005,0.7,0.,0.,0.05};
66   cutsLctopKpi->SetCuts(12,cutsArrayLctopKpi);
67   cutsLctopKpi->AddTrackCuts(esdTrackCuts);
68   vHF->SetCutsLctopKpi(cutsLctopKpi);
69   AliRDHFCutsD0toKpipipi *cutsD0toKpipipi = new AliRDHFCutsD0toKpipipi("CutsD0toKpipipi");
70   Float_t cutsArrayD0toKpipipi[9]={0.2,0.04,0.00,0.01,0.02,0.8,0.,0.1,0.};
71   cutsD0toKpipipi->SetCuts(9,cutsArrayD0toKpipipi);
72   cutsD0toKpipipi->AddTrackCuts(esdTrackCuts);
73   vHF->SetCutsD0toKpipipi(cutsD0toKpipipi);
74   AliRDHFCutsDStartoKpipi *cutsDStartoKpipi = new AliRDHFCutsDStartoKpipi("CutsDStartoKpipi");
75   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*
76   cutsDStartoKpipi->SetCuts(14,cutsArrayDStartoKpipi);
77   cutsDStartoKpipi->AddTrackCuts(esdTrackCuts);
78   cutsDStartoKpipi->AddTrackCutsSoftPi(esdTrackCutsSoftPi);
79   vHF->SetCutsDStartoKpipi(cutsDStartoKpipi);
80   AliRDHFCutsLctoV0 *cutsLctoV0 = new AliRDHFCutsLctoV0("CutsLctoV0");
81   Float_t cutsArrayLctoV0[9]={4.0,4.0,2.0,2.0,0.0,0.0,0.0,1000.,1000.};
82   cutsLctoV0->SetCuts(9,cutsArrayLctoV0);
83   cutsLctoV0->AddTrackCuts(esdTrackCuts);
84   vHF->SetCutsLctoV0(cutsLctoV0);
85   // 
86   //--- set this if you want to reconstruct primary vertex candidate by
87   //    candidate using other tracks in the event (for pp, broad 
88   //    interaction region)
89   //vHF->SetRecoPrimVtxSkippingTrks();
90   //--- OR set this if you want to remove the candidate daughters from 
91   //    the primary vertex, without recostructing it from scratch
92   //vHF->SetRmTrksFromPrimVtx();
93
94   //--- check the settings
95   vHF->PrintStatus();
96   //--- verbose
97   //  AliLog::SetClassDebugLevel("AliAnalysisVertexingHF",2);
98
99  
100   return vHF;
101 }
102
103