]>
Commit | Line | Data |
---|---|---|
289fa632 | 1 | AliAnalysisVertexingHF* 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 |
6f32471f | 11 | // vHF->SetLikeSign3prongOff(); |
2f1e74b9 | 12 | vHF->Set4ProngOff(); |
61313538 | 13 | //vHF->SetDstarOff(); |
2f1e74b9 | 14 | vHF->SetFindVertexForDstar(kFALSE); |
15 | //--- secondary vertex with KF? | |
16 | //vHF->SetSecVtxWithKF(); | |
484e74f5 | 17 | vHF->SetCascadesOff(); |
a07ad8e0 | 18 | vHF->SetFindVertexForCascades(kFALSE); |
e0732246 | 19 | vHF->SetMassCutBeforeVertexing(kTRUE); // PbPb |
34595b3c | 20 | vHF->SetV0TypeForCascadeVertex(AliRDHFCuts::kAllV0s); |
2f1e74b9 | 21 | |
22 | //--- set cuts for single-track selection | |
23 | // displaced tracks | |
24 | AliESDtrackCuts *esdTrackCuts = new AliESDtrackCuts("AliESDtrackCuts","default"); | |
25 | esdTrackCuts->SetRequireTPCRefit(kTRUE); | |
f493fe7b | 26 | esdTrackCuts->SetMinNClustersTPC(50); |
2f1e74b9 | 27 | esdTrackCuts->SetRequireITSRefit(kTRUE); |
484e74f5 | 28 | //esdTrackCuts->SetMinNClustersITS(4); |
2f1e74b9 | 29 | esdTrackCuts->SetClusterRequirementITS(AliESDtrackCuts::kSPD, |
a9b75906 | 30 | AliESDtrackCuts::kAny); |
1616ff38 | 31 | // |d0|>75 micron for pt<2GeV, no cut above 2 |
6965b459 | 32 | esdTrackCuts->SetMinDCAToVertexXYPtDep("0.0075*TMath::Max(0.,(1-TMath::Floor(TMath::Abs(pt)/2.)))"); |
e0732246 | 33 | esdTrackCuts->SetMaxDCAToVertexXY(1.); |
34 | esdTrackCuts->SetMaxDCAToVertexZ(1.); | |
1616ff38 | 35 | esdTrackCuts->SetPtRange(0.7,1.e10); |
e06be5c8 | 36 | esdTrackCuts->SetEtaRange(-0.8,+0.8); |
2f1e74b9 | 37 | AliAnalysisFilter *trkFilter = new AliAnalysisFilter("trackFilter"); |
38 | trkFilter->AddCuts(esdTrackCuts); | |
39 | vHF->SetTrackFilter(trkFilter); | |
40 | // D* soft pion tracks | |
41 | AliESDtrackCuts *esdTrackCutsSoftPi = new AliESDtrackCuts("AliESDtrackCuts","default"); | |
aaa9b040 | 42 | esdTrackCutsSoftPi->SetMinNClustersITS(4); |
e0732246 | 43 | esdTrackCutsSoftPi->SetMaxDCAToVertexXY(1.); |
44 | esdTrackCutsSoftPi->SetMaxDCAToVertexZ(1.); | |
85a93b90 | 45 | esdTrackCutsSoftPi->SetPtRange(0.2,1.e10); |
e06be5c8 | 46 | esdTrackCutsSoftPi->SetEtaRange(-0.8,+0.8); |
2f1e74b9 | 47 | AliAnalysisFilter *trkFilterSoftPi = new AliAnalysisFilter("trackFilterSoftPi"); |
48 | trkFilterSoftPi->AddCuts(esdTrackCutsSoftPi); | |
49 | vHF->SetTrackFilterSoftPi(trkFilterSoftPi); | |
50 | //--- set cuts for candidates selection | |
8de02e31 | 51 | Int_t nptbins=2; Float_t ptlimits[2]={0.,1000000.}; |
a9b75906 | 52 | AliRDHFCutsD0toKpi *cutsD0toKpi = new AliRDHFCutsD0toKpi("CutsD0toKpi"); |
939850df | 53 | cutsD0toKpi->SetStandardCutsPbPb2010(); |
1616ff38 | 54 | cutsD0toKpi->SetMinPtCandidate(0.); |
939850df | 55 | cutsD0toKpi->SetUsePID(kFALSE); |
0395d6cb | 56 | cutsD0toKpi->SetUsePhysicsSelection(kFALSE); |
ed7ec7f7 | 57 | cutsD0toKpi->SetMaxVtxZ(1.e6); |
777c8d86 | 58 | cutsD0toKpi->SetTriggerClass(""); |
3cae9332 | 59 | Float_t cutsArrayD0toKpi[11]={0.4,999999.,1.1,0.,0.,999999.,999999.,0.,0.5,-1,0.}; |
8de02e31 | 60 | cutsD0toKpi->SetPtBins(nptbins,ptlimits); |
29068278 | 61 | cutsD0toKpi->SetCuts(11,cutsArrayD0toKpi); |
e3d40058 | 62 | cutsD0toKpi->AddTrackCuts(esdTrackCuts); |
63 | vHF->SetCutsD0toKpi(cutsD0toKpi); | |
a9b75906 | 64 | AliRDHFCutsJpsitoee *cutsJpsitoee = new AliRDHFCutsJpsitoee("CutsJpsitoee"); |
65 | Float_t cutsArrayJpsitoee[9]={0.350,100000.,1.1,0.,0.,100000.,100000.,100000000.,-1.1}; | |
e3d40058 | 66 | cutsJpsitoee->SetCuts(9,cutsArrayJpsitoee); |
67 | cutsJpsitoee->AddTrackCuts(esdTrackCuts); | |
68 | vHF->SetCutsJpsitoee(cutsJpsitoee); | |
a9b75906 | 69 | AliRDHFCutsDplustoKpipi *cutsDplustoKpipi = new AliRDHFCutsDplustoKpipi("CutsDplustoKpipi"); |
939850df | 70 | cutsDplustoKpipi->SetStandardCutsPbPb2010(); |
71 | cutsDplustoKpipi->SetUsePID(kFALSE); | |
3cae9332 | 72 | Float_t cutsArrayDplustoKpipi[14]={0.25,0.3,0.3,0.,0.,0.01,0.06,0.05,1.,0.85,0.,10000000000.,0.,0.}; |
8de02e31 | 73 | cutsDplustoKpipi->SetPtBins(nptbins,ptlimits); |
5754362c | 74 | cutsDplustoKpipi->SetCuts(14,cutsArrayDplustoKpipi); |
e3d40058 | 75 | cutsDplustoKpipi->AddTrackCuts(esdTrackCuts); |
6965b459 | 76 | cutsDplustoKpipi->SetMinPtCandidate(3.); |
e3d40058 | 77 | vHF->SetCutsDplustoKpipi(cutsDplustoKpipi); |
a9b75906 | 78 | AliRDHFCutsDstoKKpi *cutsDstoKKpi = new AliRDHFCutsDstoKKpi("CutsDstoKKpi"); |
939850df | 79 | cutsDstoKKpi->SetStandardCutsPbPb2010(); |
80 | cutsDstoKKpi->SetUsePID(kFALSE); | |
ac8cab2d | 81 | Float_t cutsArrayDstoKKpi[20]={0.2,0.4,0.4,0.,0.,0.005,0.045,0.,0.,0.9,0.,100000.,0.035,0.05,-1.,1.,0.,0.,0.,-1.}; |
8de02e31 | 82 | cutsDstoKKpi->SetPtBins(nptbins,ptlimits); |
ac8cab2d | 83 | cutsDstoKKpi->SetCuts(20,cutsArrayDstoKKpi); |
e3d40058 | 84 | cutsDstoKKpi->AddTrackCuts(esdTrackCuts); |
ac8cab2d | 85 | cutsDstoKKpi->SetMinPtCandidate(3.); |
e3d40058 | 86 | vHF->SetCutsDstoKKpi(cutsDstoKKpi); |
a9b75906 | 87 | AliRDHFCutsLctopKpi *cutsLctopKpi = new AliRDHFCutsLctopKpi("CutsLctopKpi"); |
939850df | 88 | cutsLctopKpi->SetStandardCutsPbPb2010(); |
89 | cutsLctopKpi->SetUsePID(kFALSE); | |
d6055c25 | 90 | 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}; |
8de02e31 | 91 | cutsLctopKpi->SetPtBins(nptbins,ptlimits); |
d6055c25 | 92 | cutsLctopKpi->SetCuts(13,cutsArrayLctopKpi); |
e3d40058 | 93 | cutsLctopKpi->AddTrackCuts(esdTrackCuts); |
6965b459 | 94 | cutsLctopKpi->SetMinPtCandidate(4.); |
e3d40058 | 95 | vHF->SetCutsLctopKpi(cutsLctopKpi); |
a9b75906 | 96 | AliRDHFCutsD0toKpipipi *cutsD0toKpipipi = new AliRDHFCutsD0toKpipipi("CutsD0toKpipipi"); |
e3d40058 | 97 | Float_t cutsArrayD0toKpipipi[9]={0.2,0.04,0.00,0.01,0.02,0.8,0.,0.1,0.}; |
98 | cutsD0toKpipipi->SetCuts(9,cutsArrayD0toKpipipi); | |
99 | cutsD0toKpipipi->AddTrackCuts(esdTrackCuts); | |
100 | vHF->SetCutsD0toKpipipi(cutsD0toKpipipi); | |
abe53e01 | 101 | |
102 | ||
103 | // D* pt dependent cuts ------------------------------------------ | |
104 | ||
105 | AliRDHFCutsDStartoKpipi *cutsDStartoKpipi = new AliRDHFCutsDStartoKpipi("CutsDStartoKpipi"); | |
8003523d | 106 | cutsDStartoKpipi->SetUsePID(kFALSE); |
abe53e01 | 107 | |
c8cd526d | 108 | const Int_t nvars=16; |
abe53e01 | 109 | const Int_t nptbins=2; |
110 | ||
111 | Float_t* ptbins; | |
112 | ptbins=new Float_t[nptbins+1]; | |
113 | ptbins[0]=0.; | |
8003523d | 114 | ptbins[1]=5.; |
abe53e01 | 115 | ptbins[2]=999.; |
116 | ||
117 | cutsDStartoKpipi->SetPtBins(nptbins+1,ptbins); | |
118 | ||
119 | Float_t** rdcutsvalmine; | |
120 | rdcutsvalmine=new Float_t*[nvars]; | |
121 | for(Int_t iv=0;iv<nvars;iv++){ | |
122 | rdcutsvalmine[iv]=new Float_t[nptbins]; | |
123 | } | |
8003523d | 124 | //0-5 |
125 | rdcutsvalmine[0][0]=0.10; //D0 inv mass window | |
126 | rdcutsvalmine[1][0]=0.06; // dca | |
127 | rdcutsvalmine[2][0]=0.9; // thetastar | |
128 | rdcutsvalmine[3][0]=0.5; // pt Pion | |
129 | rdcutsvalmine[4][0]=0.5; // Pt Kaon | |
130 | rdcutsvalmine[5][0]=0.1; // d0K | |
131 | rdcutsvalmine[6][0]=0.1; // d0Pi | |
132 | rdcutsvalmine[7][0]=0.0001; // d0xd0 | |
133 | rdcutsvalmine[8][0]=0.8; // costhetapoint | |
134 | rdcutsvalmine[9][0]=0.15; // Dstar inv mass window | |
135 | rdcutsvalmine[10][0]=0.03; // half width of (M_Kpipi-M_D0) | |
136 | rdcutsvalmine[11][0]=0.1; // Pt min of Pi soft | |
137 | rdcutsvalmine[12][0]=100.; // Pt max of pi soft | |
138 | rdcutsvalmine[13][0]=9999.; // theta | |
139 | rdcutsvalmine[14][0]=0.9; // |cosThetaPointXY| | |
140 | rdcutsvalmine[15][0]=1.; // NormDecayLenghtXY | |
141 | //5-999 | |
142 | rdcutsvalmine[0][1]=0.10; //D0 inv mass window | |
143 | rdcutsvalmine[1][1]=0.06; // dca | |
144 | rdcutsvalmine[2][1]=0.9; // thetastar | |
145 | rdcutsvalmine[3][1]=0.5; // pt Pion | |
146 | rdcutsvalmine[4][1]=0.5; // Pt Kaon | |
147 | rdcutsvalmine[5][1]=0.1; // d0K | |
148 | rdcutsvalmine[6][1]=0.1; // d0Pi | |
149 | rdcutsvalmine[7][1]=0.0001; // d0xd0 | |
150 | rdcutsvalmine[8][1]=0.7; // costhetapoint | |
151 | rdcutsvalmine[9][1]=0.15; // Dstar inv mass window | |
152 | rdcutsvalmine[10][1]=0.03; // half width of (M_Kpipi-M_D0) | |
153 | rdcutsvalmine[11][1]=0.1; // Pt min of Pi soft | |
154 | rdcutsvalmine[12][1]=100.; // Pt max of pi soft | |
155 | rdcutsvalmine[13][1]=9999.; // theta | |
156 | rdcutsvalmine[14][1]=0.8; // |cosThetaPointXY| | |
157 | rdcutsvalmine[15][1]=0.; // NormDecayLenghtXY | |
abe53e01 | 158 | |
159 | cutsDStartoKpipi->SetCuts(nvars,nptbins,rdcutsvalmine); | |
160 | ||
484e74f5 | 161 | cutsDStartoKpipi->AddTrackCuts(esdTrackCuts); |
162 | cutsDStartoKpipi->AddTrackCutsSoftPi(esdTrackCutsSoftPi); | |
8003523d | 163 | cutsDStartoKpipi->SetMinPtCandidate(2.); |
484e74f5 | 164 | vHF->SetCutsDStartoKpipi(cutsDStartoKpipi); |
abe53e01 | 165 | |
166 | //-------------------------------------------------------- | |
167 | ||
a07ad8e0 | 168 | AliRDHFCutsLctoV0 *cutsLctoV0 = new AliRDHFCutsLctoV0("CutsLctoV0"); |
a578b2da | 169 | 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}; |
170 | cutsLctoV0->SetCuts(17,cutsArrayLctoV0); | |
a07ad8e0 | 171 | cutsLctoV0->AddTrackCuts(esdTrackCuts); |
60b29186 | 172 | AliESDtrackCuts *esdV0daughterTrackCuts = new AliESDtrackCuts("AliESDtrackCutsForV0D","default cuts for V0 daughters"); |
173 | esdV0daughterTrackCuts->SetRequireTPCRefit(kTRUE); | |
174 | esdV0daughterTrackCuts->SetMinNClustersTPC(30); | |
175 | esdV0daughterTrackCuts->SetRequireITSRefit(kFALSE); | |
176 | esdV0daughterTrackCuts->SetMinDCAToVertexXY(0.); | |
177 | esdV0daughterTrackCuts->SetPtRange(0.05,1.e10); | |
178 | esdV0daughterTrackCuts->SetEtaRange(-1.1,+1.1); | |
179 | esdV0daughterTrackCuts->SetAcceptKinkDaughters(kTRUE); | |
180 | esdV0daughterTrackCuts->SetRequireSigmaToVertex(kFALSE); | |
181 | cutsLctoV0->AddTrackCutsV0daughters(esdV0daughterTrackCuts); | |
a07ad8e0 | 182 | vHF->SetCutsLctoV0(cutsLctoV0); |
e3d40058 | 183 | // |
2f1e74b9 | 184 | //--- set this if you want to reconstruct primary vertex candidate by |
185 | // candidate using other tracks in the event (for pp, broad | |
186 | // interaction region) | |
187 | //vHF->SetRecoPrimVtxSkippingTrks(); | |
188 | //--- OR set this if you want to remove the candidate daughters from | |
189 | // the primary vertex, without recostructing it from scratch | |
190 | //vHF->SetRmTrksFromPrimVtx(); | |
191 | ||
192 | //--- check the settings | |
193 | vHF->PrintStatus(); | |
194 | //--- verbose | |
a07ad8e0 | 195 | // AliLog::SetClassDebugLevel("AliAnalysisVertexingHF",2); |
2f1e74b9 | 196 | |
197 | ||
198 | return vHF; | |
199 | } | |
200 | ||
201 |