]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGHF/vertexingHF/ConfigVertexingHF_TrackRel.C
New methods for tagging decay channels
[u/mrichter/AliRoot.git] / PWGHF / vertexingHF / ConfigVertexingHF_TrackRel.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   vHF->SetV0TypeForCascadeVertex(AliRDHFCuts::kAllV0s);
19
20   //--- set cuts for single-track selection  
21   //     displaced tracks
22   AliESDtrackCuts *esdTrackCuts = new AliESDtrackCuts("AliESDtrackCuts","default");
23   esdTrackCuts->SetRequireTPCRefit(kTRUE);
24   esdTrackCuts->SetMinNClustersTPC(70);
25   esdTrackCuts->SetRequireITSRefit(kTRUE);
26   //esdTrackCuts->SetMinNClustersITS(4);
27   esdTrackCuts->SetClusterRequirementITS(AliESDtrackCuts::kSPD,
28                                          AliESDtrackCuts::kAny);
29   esdTrackCuts->SetMinDCAToVertexXY(0.);
30   esdTrackCuts->SetPtRange(0.3,1.e10);
31   esdTrackCuts->SetEtaRange(-0.8,+0.8);
32   AliAnalysisFilter *trkFilter = new AliAnalysisFilter("trackFilter");
33   trkFilter->AddCuts(esdTrackCuts);
34   vHF->SetTrackFilter(trkFilter);
35   //     D* soft pion tracks
36   AliESDtrackCuts *esdTrackCutsSoftPi = new AliESDtrackCuts("AliESDtrackCuts","default");
37   esdTrackCutsSoftPi->SetMinNClustersITS(2);
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   cutsD0toKpi->SetUsePhysicsSelection(kFALSE);
45   cutsD0toKpi->SetMaxVtxZ(1.e6);
46   cutsD0toKpi->SetTriggerClass("");
47   Float_t cutsArrayD0toKpi[11]={0.3,999999.,1.1,0.,0.,999999.,999999.,999999.,0.,-1,0.};
48   cutsD0toKpi->SetCuts(11,cutsArrayD0toKpi);
49   cutsD0toKpi->AddTrackCuts(esdTrackCuts);
50   vHF->SetCutsD0toKpi(cutsD0toKpi);
51   AliRDHFCutsJpsitoee *cutsJpsitoee = new AliRDHFCutsJpsitoee("CutsJpsitoee");
52   Float_t cutsArrayJpsitoee[9]={0.350,100000.,1.1,0.,0.,100000.,100000.,100000000.,-1.1};
53   cutsJpsitoee->SetCuts(9,cutsArrayJpsitoee);
54   cutsJpsitoee->AddTrackCuts(esdTrackCuts);
55   vHF->SetCutsJpsitoee(cutsJpsitoee);
56   AliRDHFCutsDplustoKpipi *cutsDplustoKpipi = new AliRDHFCutsDplustoKpipi("CutsDplustoKpipi");
57   Float_t cutsArrayDplustoKpipi[14]={0.2,0.3,0.3,0.,0.,0.01,0.06,0.02,0.,0.7,0.,10000000000.,0.,-1.};
58   cutsDplustoKpipi->SetCuts(14,cutsArrayDplustoKpipi);
59   cutsDplustoKpipi->AddTrackCuts(esdTrackCuts);
60   vHF->SetCutsDplustoKpipi(cutsDplustoKpipi);
61   AliRDHFCutsDstoKKpi *cutsDstoKKpi = new AliRDHFCutsDstoKKpi("CutsDstoKKpi");
62   Float_t cutsArrayDstoKKpi[20]={0.35,0.3,0.3,0.,0.,0.005,0.06,0.,0.,0.7,0.,1000.,0.1,0.1,-1.,1.,0.,0.,0.,-1.};
63   cutsDstoKKpi->SetCuts(20,cutsArrayDstoKKpi);
64   cutsDstoKKpi->AddTrackCuts(esdTrackCuts);
65   vHF->SetCutsDstoKKpi(cutsDstoKKpi);
66   AliRDHFCutsLctopKpi *cutsLctopKpi = new AliRDHFCutsLctopKpi("CutsLctopKpi");
67   //Float_t cutsArrayLctopKpi[12]={0.2,0.4,0.4,0.,0.,0.01,0.06,0.02,0.,0.85,0.,10000000000.};
68   Float_t cutsArrayLctopKpi[13]={0.18,0.4,0.5,0.,0.,0.01,0.06,0.005,0.7,0.,0.,0.05,0.4};
69   cutsLctopKpi->SetCuts(13,cutsArrayLctopKpi);
70   cutsLctopKpi->AddTrackCuts(esdTrackCuts);
71   vHF->SetCutsLctopKpi(cutsLctopKpi);
72   AliRDHFCutsD0toKpipipi *cutsD0toKpipipi = new AliRDHFCutsD0toKpipipi("CutsD0toKpipipi");
73   Float_t cutsArrayD0toKpipipi[9]={0.2,0.04,0.00,0.01,0.02,0.8,0.,0.1,0.};
74   cutsD0toKpipipi->SetCuts(9,cutsArrayD0toKpipipi);
75   cutsD0toKpipipi->AddTrackCuts(esdTrackCuts);
76   vHF->SetCutsD0toKpipipi(cutsD0toKpipipi);
77   AliRDHFCutsDStartoKpipi *cutsDStartoKpipi = new AliRDHFCutsDStartoKpipi("CutsDStartoKpipi");
78   Float_t cutsArrayDStartoKpipi[16]={0.3,999999.,1.1,0.,0.,999999.,999999.,999999.,0.,0.3, 0.1, 0.05, 100000000000.0, 0.5,-1.,0.}; // first 9 for D0 from D*, next 5 for D*, last 2 for D0 again
79   cutsDStartoKpipi->SetCuts(16,cutsArrayDStartoKpipi);
80   cutsDStartoKpipi->AddTrackCuts(esdTrackCuts);
81   cutsDStartoKpipi->AddTrackCutsSoftPi(esdTrackCutsSoftPi);
82   vHF->SetCutsDStartoKpipi(cutsDStartoKpipi);
83   AliRDHFCutsLctoV0 *cutsLctoV0 = new AliRDHFCutsLctoV0("CutsLctoV0");
84   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.,0.0};
85   cutsLctoV0->SetCuts(17,cutsArrayLctoV0);
86   cutsLctoV0->AddTrackCuts(esdTrackCuts);
87   AliESDtrackCuts *esdV0daughterTrackCuts = new AliESDtrackCuts("AliESDtrackCutsForV0D","default cuts for V0 daughters");
88   esdV0daughterTrackCuts->SetRequireTPCRefit(kTRUE);
89   esdV0daughterTrackCuts->SetMinNClustersTPC(30);
90   esdV0daughterTrackCuts->SetRequireITSRefit(kFALSE);
91   esdV0daughterTrackCuts->SetMinDCAToVertexXY(0.);
92   esdV0daughterTrackCuts->SetPtRange(0.05,1.e10);
93   esdV0daughterTrackCuts->SetEtaRange(-1.1,+1.1);
94   esdV0daughterTrackCuts->SetAcceptKinkDaughters(kTRUE);
95   esdV0daughterTrackCuts->SetRequireSigmaToVertex(kFALSE);
96   cutsLctoV0->AddTrackCutsV0daughters(esdV0daughterTrackCuts);
97   vHF->SetCutsLctoV0(cutsLctoV0);
98   // 
99   //--- set this if you want to reconstruct primary vertex candidate by
100   //    candidate using other tracks in the event (for pp, broad 
101   //    interaction region)
102   //vHF->SetRecoPrimVtxSkippingTrks();
103   //--- OR set this if you want to remove the candidate daughters from 
104   //    the primary vertex, without recostructing it from scratch
105   //vHF->SetRmTrksFromPrimVtx();
106
107   //--- check the settings
108   vHF->PrintStatus();
109   //--- verbose
110   //  AliLog::SetClassDebugLevel("AliAnalysisVertexingHF",2);
111
112  
113   return vHF;
114 }
115
116