]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGHF/vertexingHF/upgrade/ConfigVertexingHF_ITSUpgrade_wPID.C
end-of-line normalization
[u/mrichter/AliRoot.git] / PWGHF / vertexingHF / upgrade / ConfigVertexingHF_ITSUpgrade_wPID.C
CommitLineData
a65a7e70 1AliAnalysisVertexingHF* 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->SetD0toKpiOn();
9 vHF->SetJPSItoEleOff();
10 //vHF->Set3ProngOff();
11 //vHF->SetLikeSignOn(); // like-sign pairs and triplets
12 vHF->SetLikeSign3prongOff();
13 vHF->Set4ProngOff();
14 //vHF->SetDstarOff();
15 vHF->SetFindVertexForDstar(kFALSE);
16 //--- secondary vertex with KF?
17 //vHF->SetSecVtxWithKF();
18 //Cascade
19 //vHF->SetCascadesOff();
20 vHF->SetCascadesOn();
21 vHF->SetFindVertexForCascades(kFALSE);//put kFALSE
22 vHF->SetV0TypeForCascadeVertex(AliRDHFCuts::kOnlyOfflineV0s); //All V0s 0, Offline 1, OnTheFly 2
23 vHF->SetUseProtonPIDforLambdaC2V0();
24
25 vHF->SetMassCutBeforeVertexing(kTRUE); // PbPb
26 //set PID
27 vHF->SetUseKaonPIDfor3Prong(kTRUE);
28 vHF->SetUseKaonPIDforDs(kTRUE);
29 vHF->SetUseProtonAndPionPIDforLambdaC();
30 vHF->SetnSigmaTOFforKaonSel(3., 5.);
31 vHF->SetnSigmaTPCforKaonSel(5., 5.);
32 vHF->SetnSigmaTOFforProtonSel(3.,5.);
33 vHF->SetnSigmaTPCforProtonSel(5., 5.);
34 vHF->SetnSigmaTPCforPionSel(4., 4.);
35 vHF->SetnSigmaTOFforPionSel(40.,40.);
36 vHF->SetMaxMomForTPCPid(9999999999.);
37 vHF->SetUseTPCPID(kTRUE);
38 vHF->SetUseTOFPID(kTRUE);
39 vHF->SetUseTPCPIDOnlyIfNoTOF(kTRUE);
40
41 //--- set cuts for single-track selection
42 // displaced tracks
43 AliESDtrackCuts *esdTrackCuts = new AliESDtrackCuts("AliESDtrackCuts","default");
44 esdTrackCuts->SetRequireTPCRefit(kTRUE);
45 esdTrackCuts->SetMinNClustersTPC(70);
46 esdTrackCuts->SetRequireITSRefit(kTRUE);
47 //esdTrackCuts->SetMinNClustersITS(4);
48 esdTrackCuts->SetClusterRequirementITS(AliESDtrackCuts::kITSU012,
49 AliESDtrackCuts::kAny);
50 // |d0|>30 micron for pt<2GeV, no cut above 2
51 esdTrackCuts->SetMinDCAToVertexXYPtDep("0.003*TMath::Max(0.,(1-TMath::Floor(TMath::Abs(pt)/2.)))");
52 esdTrackCuts->SetMaxDCAToVertexXY(1.);
53 esdTrackCuts->SetMaxDCAToVertexZ(1.);
54 esdTrackCuts->SetPtRange(0.5,1.e10);
55 esdTrackCuts->SetEtaRange(-0.9,+0.9);
56 AliAnalysisFilter *trkFilter = new AliAnalysisFilter("trackFilter");
57 trkFilter->AddCuts(esdTrackCuts);
58 vHF->SetTrackFilter(trkFilter);
59 // D* soft pion tracks
60 AliESDtrackCuts *esdTrackCutsSoftPi = new AliESDtrackCuts("AliESDtrackCuts","default");
61 esdTrackCutsSoftPi->SetMinNClustersITS(2);
62 esdTrackCutsSoftPi->SetMaxDCAToVertexXY(1.);
63 esdTrackCutsSoftPi->SetMaxDCAToVertexZ(1.);
64 esdTrackCutsSoftPi->SetPtRange(0.1,1.e10);// 0.2
65 esdTrackCutsSoftPi->SetEtaRange(-0.9,+0.9);
66 AliAnalysisFilter *trkFilterSoftPi = new AliAnalysisFilter("trackFilterSoftPi");
67 trkFilterSoftPi->AddCuts(esdTrackCutsSoftPi);
68 vHF->SetTrackFilterSoftPi(trkFilterSoftPi);
69 //--- set cuts for candidates selection
70 Int_t nptbins=2; Float_t ptlimits[2]={0.,1000000.};
71 AliRDHFCutsD0toKpi *cutsD0toKpi = new AliRDHFCutsD0toKpi("CutsD0toKpi");
72 cutsD0toKpi->SetStandardCutsPbPb2010();
73 cutsD0toKpi->SetMinCentrality(-10);
74 cutsD0toKpi->SetMaxCentrality(110);
75 cutsD0toKpi->SetUseSpecialCuts(kFALSE);
76 cutsD0toKpi->SetMinPtCandidate(0.);
77 cutsD0toKpi->SetUsePID(kFALSE);
78 cutsD0toKpi->SetUsePhysicsSelection(kFALSE);
79 cutsD0toKpi->SetMaxVtxZ(1.e6);
80 cutsD0toKpi->SetTriggerClass("");
81 Float_t cutsArrayD0toKpi[11]={0.4,999999.,1.1,0.,0.,999999.,999999.,0.,0.5,-1,0.};
82 cutsD0toKpi->SetPtBins(nptbins,ptlimits);
83 cutsD0toKpi->SetCuts(11,cutsArrayD0toKpi);
84 cutsD0toKpi->AddTrackCuts(esdTrackCuts);
85 vHF->SetCutsD0toKpi(cutsD0toKpi);
86 AliRDHFCutsJpsitoee *cutsJpsitoee = new AliRDHFCutsJpsitoee("CutsJpsitoee");
87 Float_t cutsArrayJpsitoee[9]={0.350,100000.,1.1,0.,0.,100000.,100000.,100000000.,-1.1};
88 cutsJpsitoee->SetCuts(9,cutsArrayJpsitoee);
89 cutsJpsitoee->AddTrackCuts(esdTrackCuts);
90 vHF->SetCutsJpsitoee(cutsJpsitoee);
91 AliRDHFCutsDplustoKpipi *cutsDplustoKpipi = new AliRDHFCutsDplustoKpipi("CutsDplustoKpipi");
92 cutsDplustoKpipi->SetStandardCutsPbPb2010();
93 cutsDplustoKpipi->SetUsePID(kFALSE);
94 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.};
95 cutsDplustoKpipi->SetPtBins(nptbins,ptlimits);
96 cutsDplustoKpipi->SetCuts(14,cutsArrayDplustoKpipi);
97 cutsDplustoKpipi->AddTrackCuts(esdTrackCuts);
98 cutsDplustoKpipi->SetMinPtCandidate(1.);
99 vHF->SetCutsDplustoKpipi(cutsDplustoKpipi);
100 AliRDHFCutsDstoKKpi *cutsDstoKKpi = new AliRDHFCutsDstoKKpi("CutsDstoKKpi");
101 cutsDstoKKpi->SetStandardCutsPbPb2010();
102 cutsDstoKKpi->SetUsePID(kFALSE);
103 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.};
104 cutsDstoKKpi->SetPtBins(nptbins,ptlimits);
105 cutsDstoKKpi->SetCuts(20,cutsArrayDstoKKpi);
106 cutsDstoKKpi->AddTrackCuts(esdTrackCuts);
107 cutsDstoKKpi->SetMinPtCandidate(1.);
108 vHF->SetCutsDstoKKpi(cutsDstoKKpi);
109 AliRDHFCutsLctopKpi *cutsLctopKpi = new AliRDHFCutsLctopKpi("CutsLctopKpi");
110 cutsLctopKpi->SetStandardCutsPbPb2010();
111 cutsLctopKpi->SetUsePID(kFALSE);
112 Float_t cutsArrayLctopKpi[13]={0.13,0.4,0.4,0.,0.,0.,0.06,0.,0.,0.,0.,0.05,0.4};
113 cutsLctopKpi->SetPtBins(nptbins,ptlimits);
114 cutsLctopKpi->SetCuts(13,cutsArrayLctopKpi);
115 cutsLctopKpi->AddTrackCuts(esdTrackCuts);
116 cutsLctopKpi->SetMinPtCandidate(2.);// era due
117 vHF->SetCutsLctopKpi(cutsLctopKpi);
118 AliRDHFCutsD0toKpipipi *cutsD0toKpipipi = new AliRDHFCutsD0toKpipipi("CutsD0toKpipipi");
119 Float_t cutsArrayD0toKpipipi[9]={0.2,0.04,0.00,0.01,0.02,0.8,0.,0.1,0.};
120 cutsD0toKpipipi->SetCuts(9,cutsArrayD0toKpipipi);
121 cutsD0toKpipipi->AddTrackCuts(esdTrackCuts);
122 vHF->SetCutsD0toKpipipi(cutsD0toKpipipi);
123
124
125 // D* pt dependent cuts ------------------------------------------
126
127 AliRDHFCutsDStartoKpipi *cutsDStartoKpipi = new AliRDHFCutsDStartoKpipi("CutsDStartoKpipi");
128 cutsDStartoKpipi->SetUsePID(kFALSE);
129
130 const Int_t nvars=16;
131 const Int_t nptbins=2;
132
133 Float_t* ptbins;
134 ptbins=new Float_t[nptbins+1];
135 ptbins[0]=0.;
136 ptbins[1]=5.;
137 ptbins[2]=999.;
138
139 cutsDStartoKpipi->SetPtBins(nptbins+1,ptbins);
140
141 Float_t** rdcutsvalmine;
142 rdcutsvalmine=new Float_t*[nvars];
143 for(Int_t iv=0;iv<nvars;iv++){
144 rdcutsvalmine[iv]=new Float_t[nptbins];
145 }
146 //0-5
147 rdcutsvalmine[0][0]=0.15; //D0 inv mass window
148 rdcutsvalmine[1][0]=0.06; // dca
149 rdcutsvalmine[2][0]=0.9; // thetastar
150 rdcutsvalmine[3][0]=0.5; // pt Pion
151 rdcutsvalmine[4][0]=0.5; // Pt Kaon
152 rdcutsvalmine[5][0]=0.1; // d0K
153 rdcutsvalmine[6][0]=0.1; // d0Pi
154 rdcutsvalmine[7][0]=0.0001; // d0xd0
155 rdcutsvalmine[8][0]=0.8; // costhetapoint
156 rdcutsvalmine[9][0]=0.20; // Dstar inv mass window
157 rdcutsvalmine[10][0]=0.03; // half width of (M_Kpipi-M_D0)
158 rdcutsvalmine[11][0]=0.1; // Pt min of Pi soft
159 rdcutsvalmine[12][0]=100.; // Pt max of pi soft
160 rdcutsvalmine[13][0]=9999.; // theta
161 rdcutsvalmine[14][0]=0.9; // |cosThetaPointXY|
162 rdcutsvalmine[15][0]=1.; // NormDecayLenghtXY
163 //5-999
164 rdcutsvalmine[0][1]=0.15; //D0 inv mass window
165 rdcutsvalmine[1][1]=0.06; // dca
166 rdcutsvalmine[2][1]=0.9; // thetastar
167 rdcutsvalmine[3][1]=0.5; // pt Pion
168 rdcutsvalmine[4][1]=0.5; // Pt Kaon
169 rdcutsvalmine[5][1]=0.1; // d0K
170 rdcutsvalmine[6][1]=0.1; // d0Pi
171 rdcutsvalmine[7][1]=0.0001; // d0xd0
172 rdcutsvalmine[8][1]=0.7; // costhetapoint
173 rdcutsvalmine[9][1]=0.20; // Dstar inv mass window
174 rdcutsvalmine[10][1]=0.03; // half width of (M_Kpipi-M_D0)
175 rdcutsvalmine[11][1]=0.1; // Pt min of Pi soft
176 rdcutsvalmine[12][1]=100.; // Pt max of pi soft
177 rdcutsvalmine[13][1]=9999.; // theta
178 rdcutsvalmine[14][1]=0.8; // |cosThetaPointXY|
179 rdcutsvalmine[15][1]=0.; // NormDecayLenghtXY
180
181 cutsDStartoKpipi->SetCuts(nvars,nptbins,rdcutsvalmine);
182
183 cutsDStartoKpipi->AddTrackCuts(esdTrackCuts);
184 cutsDStartoKpipi->AddTrackCutsSoftPi(esdTrackCutsSoftPi);
185 cutsDStartoKpipi->SetMinPtCandidate(1.);
186 vHF->SetCutsDStartoKpipi(cutsDStartoKpipi);
187
188 //--------------------------------------------------------
189
190 AliRDHFCutsLctoV0 *cutsLctoV0 = new AliRDHFCutsLctoV0("CutsLctoV0");
191 /*
192 Float_t cutsArrayLctoV0[9]={4.0,4.0,2.0,2.0,0.0,0.0,0.0,1000.,1000.};
193 cutsLctoV0->SetCuts(9,cutsArrayLctoV0);
194 */
195 //last dummy
196 //Float_t cutsArrayLctoV0[10]={4.0,4.0,2.0,2.0,0.0,0.0,0.0,1000.,1000.,1.};
197 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};
198 cutsLctoV0->SetCuts(17,cutsArrayLctoV0);
199 cutsLctoV0->AddTrackCuts(esdTrackCuts);
200 vHF->SetCutsLctoV0(cutsLctoV0);
201 //
202 //--- set this if you want to reconstruct primary vertex candidate by
203 // candidate using other tracks in the event (for pp, broad
204 // interaction region)
205 //vHF->SetRecoPrimVtxSkippingTrks();
206 //--- OR set this if you want to remove the candidate daughters from
207 // the primary vertex, without recostructing it from scratch
208 //vHF->SetRmTrksFromPrimVtx();
209
210 //--- check the settings
211 vHF->PrintStatus();
212 //--- verbose
213 // AliLog::SetClassDebugLevel("AliAnalysisVertexingHF",2);
214
215
216 return vHF;
217}
218
219