]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG3/vertexingHF/ConfigVertexingHF_highmult.C
Analysis code for D0->4prong (Fabio)
[u/mrichter/AliRoot.git] / PWG3 / vertexingHF / ConfigVertexingHF_highmult.C
CommitLineData
289fa632 1AliAnalysisVertexingHF* ConfigVertexingHF() {
2f1e74b9 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();
484e74f5 8 vHF->SetJPSItoEleOff();
9 //vHF->Set3ProngOff();
a0f51fc6 10 vHF->SetLikeSignOn(); // like-sign pairs and triplets
2f1e74b9 11 vHF->Set4ProngOff();
61313538 12 //vHF->SetDstarOff();
2f1e74b9 13 vHF->SetFindVertexForDstar(kFALSE);
14 //--- secondary vertex with KF?
15 //vHF->SetSecVtxWithKF();
484e74f5 16 vHF->SetCascadesOff();
a07ad8e0 17 vHF->SetFindVertexForCascades(kFALSE);
e0732246 18 vHF->SetMassCutBeforeVertexing(kTRUE); // PbPb
2f1e74b9 19
20 //--- set cuts for single-track selection
21 // displaced tracks
22 AliESDtrackCuts *esdTrackCuts = new AliESDtrackCuts("AliESDtrackCuts","default");
23 esdTrackCuts->SetRequireTPCRefit(kTRUE);
e06be5c8 24 esdTrackCuts->SetMinNClustersTPC(70);
2f1e74b9 25 esdTrackCuts->SetRequireITSRefit(kTRUE);
484e74f5 26 //esdTrackCuts->SetMinNClustersITS(4);
2f1e74b9 27 esdTrackCuts->SetClusterRequirementITS(AliESDtrackCuts::kSPD,
a9b75906 28 AliESDtrackCuts::kAny);
81858e84 29 // |d0|>100 micron for pt<2GeV, no cut above 2
abe53e01 30 esdTrackCuts->SetMinDCAToVertexXYPtDep("0.0050*TMath::Max(0.,(1-TMath::Floor(TMath::Abs(pt)/2.)))");
e0732246 31 esdTrackCuts->SetMaxDCAToVertexXY(1.);
32 esdTrackCuts->SetMaxDCAToVertexZ(1.);
484e74f5 33 esdTrackCuts->SetPtRange(0.8,1.e10);
e06be5c8 34 esdTrackCuts->SetEtaRange(-0.8,+0.8);
2f1e74b9 35 AliAnalysisFilter *trkFilter = new AliAnalysisFilter("trackFilter");
36 trkFilter->AddCuts(esdTrackCuts);
37 vHF->SetTrackFilter(trkFilter);
38 // D* soft pion tracks
39 AliESDtrackCuts *esdTrackCutsSoftPi = new AliESDtrackCuts("AliESDtrackCuts","default");
aaa9b040 40 esdTrackCutsSoftPi->SetMinNClustersITS(4);
e0732246 41 esdTrackCutsSoftPi->SetMaxDCAToVertexXY(1.);
42 esdTrackCutsSoftPi->SetMaxDCAToVertexZ(1.);
85a93b90 43 esdTrackCutsSoftPi->SetPtRange(0.2,1.e10);
e06be5c8 44 esdTrackCutsSoftPi->SetEtaRange(-0.8,+0.8);
2f1e74b9 45 AliAnalysisFilter *trkFilterSoftPi = new AliAnalysisFilter("trackFilterSoftPi");
46 trkFilterSoftPi->AddCuts(esdTrackCutsSoftPi);
47 vHF->SetTrackFilterSoftPi(trkFilterSoftPi);
48 //--- set cuts for candidates selection
8de02e31 49 Int_t nptbins=2; Float_t ptlimits[2]={0.,1000000.};
a9b75906 50 AliRDHFCutsD0toKpi *cutsD0toKpi = new AliRDHFCutsD0toKpi("CutsD0toKpi");
939850df 51 cutsD0toKpi->SetStandardCutsPbPb2010();
52 cutsD0toKpi->SetUsePID(kFALSE);
484e74f5 53 Float_t cutsArrayD0toKpi[9]={0.2,999999.,1.1,0.,0.,999999.,999999.,0.,0.5};
8de02e31 54 cutsD0toKpi->SetPtBins(nptbins,ptlimits);
e3d40058 55 cutsD0toKpi->SetCuts(9,cutsArrayD0toKpi);
56 cutsD0toKpi->AddTrackCuts(esdTrackCuts);
57 vHF->SetCutsD0toKpi(cutsD0toKpi);
a9b75906 58 AliRDHFCutsJpsitoee *cutsJpsitoee = new AliRDHFCutsJpsitoee("CutsJpsitoee");
59 Float_t cutsArrayJpsitoee[9]={0.350,100000.,1.1,0.,0.,100000.,100000.,100000000.,-1.1};
e3d40058 60 cutsJpsitoee->SetCuts(9,cutsArrayJpsitoee);
61 cutsJpsitoee->AddTrackCuts(esdTrackCuts);
62 vHF->SetCutsJpsitoee(cutsJpsitoee);
a9b75906 63 AliRDHFCutsDplustoKpipi *cutsDplustoKpipi = new AliRDHFCutsDplustoKpipi("CutsDplustoKpipi");
939850df 64 cutsDplustoKpipi->SetStandardCutsPbPb2010();
65 cutsDplustoKpipi->SetUsePID(kFALSE);
abe53e01 66 Float_t cutsArrayDplustoKpipi[12]={0.2,0.8,0.8,0.,0.,0.01,0.06,0.05,1.,0.85,0.,10000000000.};
8de02e31 67 cutsDplustoKpipi->SetPtBins(nptbins,ptlimits);
e3d40058 68 cutsDplustoKpipi->SetCuts(12,cutsArrayDplustoKpipi);
69 cutsDplustoKpipi->AddTrackCuts(esdTrackCuts);
70 vHF->SetCutsDplustoKpipi(cutsDplustoKpipi);
a9b75906 71 AliRDHFCutsDstoKKpi *cutsDstoKKpi = new AliRDHFCutsDstoKKpi("CutsDstoKKpi");
939850df 72 cutsDstoKKpi->SetStandardCutsPbPb2010();
73 cutsDstoKKpi->SetUsePID(kFALSE);
abe53e01 74 Float_t cutsArrayDstoKKpi[14]={0.2,0.4,0.4,0.,0.,0.005,0.045,0.,0.,0.9,0.,100000.,0.035,0.05};
8de02e31 75 cutsDstoKKpi->SetPtBins(nptbins,ptlimits);
e3d40058 76 cutsDstoKKpi->SetCuts(14,cutsArrayDstoKKpi);
77 cutsDstoKKpi->AddTrackCuts(esdTrackCuts);
78 vHF->SetCutsDstoKKpi(cutsDstoKKpi);
a9b75906 79 AliRDHFCutsLctopKpi *cutsLctopKpi = new AliRDHFCutsLctopKpi("CutsLctopKpi");
939850df 80 cutsLctopKpi->SetStandardCutsPbPb2010();
81 cutsLctopKpi->SetUsePID(kFALSE);
abe53e01 82 Float_t cutsArrayLctopKpi[12]={0.13,0.9,1.,0.,0.,0.01,0.04,0.006,1.,0.5,0.,0.05};
8de02e31 83 cutsLctopKpi->SetPtBins(nptbins,ptlimits);
e3d40058 84 cutsLctopKpi->SetCuts(12,cutsArrayLctopKpi);
85 cutsLctopKpi->AddTrackCuts(esdTrackCuts);
abe53e01 86 cutsLctopKpi->SetMinPtCandidate(3.);
e3d40058 87 vHF->SetCutsLctopKpi(cutsLctopKpi);
a9b75906 88 AliRDHFCutsD0toKpipipi *cutsD0toKpipipi = new AliRDHFCutsD0toKpipipi("CutsD0toKpipipi");
e3d40058 89 Float_t cutsArrayD0toKpipipi[9]={0.2,0.04,0.00,0.01,0.02,0.8,0.,0.1,0.};
90 cutsD0toKpipipi->SetCuts(9,cutsArrayD0toKpipipi);
91 cutsD0toKpipipi->AddTrackCuts(esdTrackCuts);
92 vHF->SetCutsD0toKpipipi(cutsD0toKpipipi);
484e74f5 93 AliRDHFCutsDStartoKpipi *cutsDStartoKpipi = new AliRDHFCutsDStartoKpipi("CutsDStartoKpipi");
939850df 94 cutsDStartoKpipi->SetStandardCutsPbPb2010();
95 cutsDStartoKpipi->SetUsePID(kFALSE);
abe53e01 96
97
98 // D* pt dependent cuts ------------------------------------------
99
100 AliRDHFCutsDStartoKpipi *cutsDStartoKpipi = new AliRDHFCutsDStartoKpipi("CutsDStartoKpipi");
101
102 const Int_t nvars=14;
103 const Int_t nptbins=2;
104
105 Float_t* ptbins;
106 ptbins=new Float_t[nptbins+1];
107 ptbins[0]=0.;
108 ptbins[1]=4.;
109 ptbins[2]=999.;
110
111 cutsDStartoKpipi->SetPtBins(nptbins+1,ptbins);
112
113 Float_t** rdcutsvalmine;
114 rdcutsvalmine=new Float_t*[nvars];
115 for(Int_t iv=0;iv<nvars;iv++){
116 rdcutsvalmine[iv]=new Float_t[nptbins];
117 }
118 //0-4
119 rdcutsvalmine[0][0]=0.15;
120 rdcutsvalmine[1][0]=0.07;
121 rdcutsvalmine[2][0]=0.8;
122 rdcutsvalmine[3][0]=0.8;
123 rdcutsvalmine[4][0]=0.8;
124 rdcutsvalmine[5][0]=0.08;
125 rdcutsvalmine[6][0]=0.08;
126 rdcutsvalmine[7][0]=-0.00002;
127 rdcutsvalmine[8][0]=0.72;
128 rdcutsvalmine[9][0]=0.15;
129 rdcutsvalmine[10][0]=0.03;
130 rdcutsvalmine[11][0]=0.2;
131 rdcutsvalmine[12][0]=100.;
132 rdcutsvalmine[13][0]=0.5;
133 //4-999
134 rdcutsvalmine[0][1]=0.24;
135 rdcutsvalmine[1][1]=0.07;
136 rdcutsvalmine[2][1]=0.8;
137 rdcutsvalmine[3][1]=0.8;
138 rdcutsvalmine[4][1]=0.8;
139 rdcutsvalmine[5][1]=0.1;
140 rdcutsvalmine[6][1]=0.1;
141 rdcutsvalmine[7][1]=0.00001;
142 rdcutsvalmine[8][1]=0.72;
143 rdcutsvalmine[9][1]=0.15;
144 rdcutsvalmine[10][1]=0.03;
145 rdcutsvalmine[11][1]=0.2;
146 rdcutsvalmine[12][1]=100.;
147 rdcutsvalmine[13][1]=0.5;
148
149 cutsDStartoKpipi->SetCuts(nvars,nptbins,rdcutsvalmine);
150
484e74f5 151 cutsDStartoKpipi->AddTrackCuts(esdTrackCuts);
152 cutsDStartoKpipi->AddTrackCutsSoftPi(esdTrackCutsSoftPi);
153 vHF->SetCutsDStartoKpipi(cutsDStartoKpipi);
abe53e01 154
155 //--------------------------------------------------------
156
a07ad8e0 157 AliRDHFCutsLctoV0 *cutsLctoV0 = new AliRDHFCutsLctoV0("CutsLctoV0");
158 Float_t cutsArrayLctoV0[9]={4.0,4.0,2.0,2.0,0.0,0.0,0.0,1000.,1000.};
159 cutsLctoV0->SetCuts(9,cutsArrayLctoV0);
160 cutsLctoV0->AddTrackCuts(esdTrackCuts);
161 vHF->SetCutsLctoV0(cutsLctoV0);
e3d40058 162 //
2f1e74b9 163 //--- set this if you want to reconstruct primary vertex candidate by
164 // candidate using other tracks in the event (for pp, broad
165 // interaction region)
166 //vHF->SetRecoPrimVtxSkippingTrks();
167 //--- OR set this if you want to remove the candidate daughters from
168 // the primary vertex, without recostructing it from scratch
169 //vHF->SetRmTrksFromPrimVtx();
170
171 //--- check the settings
172 vHF->PrintStatus();
173 //--- verbose
a07ad8e0 174 // AliLog::SetClassDebugLevel("AliAnalysisVertexingHF",2);
2f1e74b9 175
176
177 return vHF;
178}
179
180