@@ -57,6 +57,62 @@ AnalysisCompositeCut* o2::aod::dqcuts::GetCompositeCut(const char* cutName)
5757 return cut;
5858 }
5959
60+ if (!nameStr.compare (" lmeePID_TPChadrejTOFrec" )) {
61+ cut->AddCut (GetAnalysisCut (" lmeeStandardKine" ));
62+ cut->AddCut (GetAnalysisCut (" TightGlobalTrack" ));
63+ cut->AddCut (GetAnalysisCut (" standardPrimaryTrack" ));
64+
65+ AnalysisCompositeCut* cut_tpc_hadrej = new AnalysisCompositeCut (" pid_TPChadrej" , " pid_TPChadrej" , kTRUE );
66+ cut_tpc_hadrej->AddCut (GetAnalysisCut (" tpc_electron" ));
67+ cut_tpc_hadrej->AddCut (GetAnalysisCut (" tpc_pion_rejection" ));
68+ cut_tpc_hadrej->AddCut (GetAnalysisCut (" tpc_kaon_rejection" ));
69+ cut_tpc_hadrej->AddCut (GetAnalysisCut (" tpc_proton_rejection" ));
70+
71+ AnalysisCompositeCut* cut_tof_rec = new AnalysisCompositeCut (" pid_tof_rec" , " pid_tof_rec" , kTRUE );
72+ cut_tof_rec->AddCut (GetAnalysisCut (" tpc_electron" ));
73+ cut_tof_rec->AddCut (GetAnalysisCut (" tof_electron" ));
74+
75+ AnalysisCompositeCut* cut_pid_OR = new AnalysisCompositeCut (" pid_TPChadrejTOFrec" , " pid_TPChadrejTOFrec" , kFALSE );
76+ cut_pid_OR->AddCut (cut_tpc_hadrej);
77+ cut_pid_OR->AddCut (cut_tof_rec);
78+ cut->AddCut (cut_pid_OR);
79+ return cut;
80+ }
81+
82+ if (!nameStr.compare (" lmeePID_TPChadrej" )) {
83+ cut->AddCut (GetAnalysisCut (" lmeeStandardKine" ));
84+ cut->AddCut (GetAnalysisCut (" TightGlobalTrack" ));
85+ cut->AddCut (GetAnalysisCut (" standardPrimaryTrack" ));
86+
87+ AnalysisCompositeCut* cut_tpc_hadrej = new AnalysisCompositeCut (" pid_TPChadrej" , " pid_TPChadrej" , kTRUE );
88+ cut_tpc_hadrej->AddCut (GetAnalysisCut (" tpc_electron" ));
89+ cut_tpc_hadrej->AddCut (GetAnalysisCut (" tpc_pion_rejection" ));
90+ cut_tpc_hadrej->AddCut (GetAnalysisCut (" tpc_kaon_rejection" ));
91+ cut_tpc_hadrej->AddCut (GetAnalysisCut (" tpc_proton_rejection" ));
92+ cut->AddCut (cut_tpc_hadrej);
93+ return cut;
94+ }
95+
96+ if (!nameStr.compare (" lmeePID_TOFrec" )) {
97+ cut->AddCut (GetAnalysisCut (" lmeeStandardKine" ));
98+ cut->AddCut (GetAnalysisCut (" TightGlobalTrack" ));
99+ cut->AddCut (GetAnalysisCut (" standardPrimaryTrack" ));
100+
101+ AnalysisCompositeCut* cut_tof_rec = new AnalysisCompositeCut (" pid_tof_rec" , " pid_tof_rec" , kTRUE );
102+ cut_tof_rec->AddCut (GetAnalysisCut (" tpc_electron" ));
103+ cut_tof_rec->AddCut (GetAnalysisCut (" tof_electron" ));
104+
105+ cut->AddCut (cut_tof_rec);
106+ return cut;
107+ }
108+
109+ if (!nameStr.compare (" lmee_GlobalTrack" )) {
110+ cut->AddCut (GetAnalysisCut (" lmeeStandardKine" ));
111+ cut->AddCut (GetAnalysisCut (" TightGlobalTrack" ));
112+ cut->AddCut (GetAnalysisCut (" standardPrimaryTrack" ));
113+ return cut;
114+ }
115+
60116 if (!nameStr.compare (" pairNoCut" )) {
61117 cut->AddCut (GetAnalysisCut (" pairNoCut" ));
62118 return cut;
@@ -124,6 +180,29 @@ AnalysisCut* o2::aod::dqcuts::GetAnalysisCut(const char* cutName)
124180 return cut;
125181 }
126182
183+ if (!nameStr.compare (" lmeeStandardKine" )) {
184+ cut->AddCut (VarManager::kPt , 0.2 , 10.0 );
185+ cut->AddCut (VarManager::kEta , -0.8 , 0.8 );
186+ return cut;
187+ }
188+
189+ if (!nameStr.compare (" lmeeLowBKine" )) {
190+ cut->AddCut (VarManager::kPt , 0.075 , 10.0 );
191+ cut->AddCut (VarManager::kEta , -0.8 , 0.8 );
192+ return cut;
193+ }
194+
195+ if (!nameStr.compare (" TightGlobalTrack" )) {
196+ cut->AddCut (VarManager::kIsSPDfirst , 0.5 , 1.5 );
197+ cut->AddCut (VarManager::kIsITSrefit , 0.5 , 1.5 );
198+ cut->AddCut (VarManager::kIsTPCrefit , 0.5 , 1.5 );
199+ cut->AddCut (VarManager::kTPCchi2 , 0.0 , 4.0 );
200+ cut->AddCut (VarManager::kITSchi2 , 0.0 , 5.0 );
201+ cut->AddCut (VarManager::kTPCnclsCR , 80.0 , 161 .);
202+ cut->AddCut (VarManager::kITSncls , 3.5 , 7.5 );
203+ return cut;
204+ }
205+
127206 if (!nameStr.compare (" electronStandardQuality" )) {
128207 cut->AddCut (VarManager::kIsSPDany , 0.5 , 1.5 );
129208 cut->AddCut (VarManager::kIsITSrefit , 0.5 , 1.5 );
@@ -154,6 +233,41 @@ AnalysisCut* o2::aod::dqcuts::GetAnalysisCut(const char* cutName)
154233 return cut;
155234 }
156235
236+ if (!nameStr.compare (" tpc_pion_rejection" )) {
237+ TF1* f1maxPi = new TF1 (" f1maxPi" , " [0]+[1]*x" , 0 , 10 );
238+ f1maxPi->SetParameters (85 , -50 );
239+ cut->AddCut (VarManager::kTPCsignal , 70 , f1maxPi, true , VarManager::kPin , 0.0 , 0.4 , false );
240+ return cut;
241+ }
242+
243+ if (!nameStr.compare (" tpc_kaon_rejection" )) {
244+ TF1* f1minKa = new TF1 (" f1minKa" , " [0]+[1]*x" , 0 , 10 );
245+ f1minKa->SetParameters (220 , -300 );
246+ TF1* f1maxKa = new TF1 (" f1maxKa" , " [0]+[1]*x" , 0 , 10 );
247+ f1maxKa->SetParameters (182.5 , -150 );
248+ cut->AddCut (VarManager::kTPCsignal , f1minKa, f1maxKa, true , VarManager::kPin , 0.4 , 0.8 , false );
249+ return cut;
250+ }
251+
252+ if (!nameStr.compare (" tpc_proton_rejection" )) {
253+ TF1* f1minPr = new TF1 (" f1minPr" , " [0]+[1]*x" , 0 , 10 );
254+ f1minPr->SetParameters (170 , -100 );
255+ TF1* f1maxPr = new TF1 (" f1maxPr" , " [0]+[1]*x" , 0 , 10 );
256+ f1maxPr->SetParameters (175 , -75 );
257+ cut->AddCut (VarManager::kTPCsignal , f1minPr, f1maxPr, true , VarManager::kPin , 0.8 , 1.4 , false );
258+ return cut;
259+ }
260+
261+ if (!nameStr.compare (" tpc_electron" )) {
262+ cut->AddCut (VarManager::kTPCsignal , 70 , 90 , false , VarManager::kPin , 0.0 , 1e+10 , false );
263+ return cut;
264+ }
265+
266+ if (!nameStr.compare (" tof_electron" )) {
267+ cut->AddCut (VarManager::kTOFbeta , 0.99 , 1.01 , false , VarManager::kPin , 0.0 , 1e+10 , false );
268+ return cut;
269+ }
270+
157271 if (!nameStr.compare (" pairNoCut" )) {
158272 cut->AddCut (VarManager::kMass , 0.0 , 1000.0 );
159273 return cut;
0 commit comments