]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGGA/GammaConv/macros/AddTask_GammaConvDalitzV1_pPb.C
Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / PWGGA / GammaConv / macros / AddTask_GammaConvDalitzV1_pPb.C
1 void AddTask_GammaConvDalitzV1_pPb(    Int_t trainConfig = 1,
2                                        Bool_t isMC       = kFALSE, //run MC 
3                                        Bool_t enableQAMesonTask = kTRUE, //enable QA in AliAnalysisTaskGammaConvDalitzV1
4                                        Bool_t enableDoMesonChic = kFALSE, // enable additional Chic analysis
5                                        TString fileNameInputForWeighting = "MCSpectraInput.root", // path to file for weigting input
6                                        Bool_t doWeighting = kFALSE,  //enable Weighting
7                                        TString generatorName = "DPMJET",                                
8                                        TString cutnumberAODBranch = "0000000060084001001500000"
9                                   ) {
10
11
12    
13    cout<<"Entro -1"<<endl;
14
15   // ================= Load Librariers =================================
16    gSystem->Load("libCore.so");  
17    gSystem->Load("libTree.so");
18    gSystem->Load("libGeom.so");
19    gSystem->Load("libVMC.so");
20    gSystem->Load("libPhysics.so");
21    gSystem->Load("libMinuit");
22    gSystem->Load("libSTEERBase");
23    gSystem->Load("libESD");
24    gSystem->Load("libAOD");
25    gSystem->Load("libANALYSIS");
26    gSystem->Load("libANALYSISalice");  
27    gSystem->Load("libPWGGAGammaConv.so");
28    gSystem->Load("libCDB.so");
29    gSystem->Load("libSTEER.so");
30    gSystem->Load("libSTEERBase.so");
31    gSystem->Load("libTENDER.so");
32    gSystem->Load("libTENDERSupplies.so");
33
34
35    cout<<"Entro 0"<<endl;
36
37    // ================== GetAnalysisManager ===============================
38    AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
39    if (!mgr) {
40       Error(Form("AddTask_GammaConvDalitzV1_pPb_%i",trainConfig), "No analysis manager found.");
41       return ;
42    }
43
44    // ================== GetInputEventHandler =============================
45    AliVEventHandler *inputHandler=mgr->GetInputEventHandler();
46    
47    //========= Add PID Reponse to ANALYSIS manager ====
48    if(!(AliPIDResponse*)mgr->GetTask("PIDResponseTask")){
49       gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskPIDResponse.C");
50       AddTaskPIDResponse(isMC);
51    }
52    
53    //=========  Set Cutnumber for V0Reader ================================
54    TString ConvCutnumber = "8000000060084001001500000000";   //Online  V0 finder
55    TString ElecCuts      = "9000540000000200000";            //Electron Cuts
56    Bool_t doEtaShift = kFALSE;
57
58
59
60    AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
61    
62    //========= Add V0 Reader to  ANALYSIS manager if not yet existent =====
63    if( !(AliV0ReaderV1*)mgr->GetTask("V0ReaderV1") ){
64       AliV0ReaderV1 *fV0ReaderV1 = new AliV0ReaderV1("V0ReaderV1");
65       
66       fV0ReaderV1->SetUseOwnXYZCalculation(kTRUE);
67       fV0ReaderV1->SetCreateAODs(kFALSE);// AOD Output
68       fV0ReaderV1->SetUseAODConversionPhoton(kTRUE);
69       
70       if (!mgr) {
71          Error("AddTask_V0ReaderV1", "No analysis manager found.");
72          return;
73       }
74
75       // Set AnalysisCut Number
76       AliConversionCuts *fCuts=NULL;
77       if( ConvCutnumber !=""){
78          fCuts= new AliConversionCuts(ConvCutnumber.Data(),ConvCutnumber.Data());
79          fCuts->SetPreSelectionCutFlag(kTRUE);
80          if(fCuts->InitializeCutsFromCutString(ConvCutnumber.Data())){
81             fCuts->DoEtaShift(doEtaShift);
82             fV0ReaderV1->SetConversionCuts(fCuts);
83             fCuts->SetFillCutHistograms("",kTRUE);
84          }
85       }
86       if(inputHandler->IsA()==AliAODInputHandler::Class()){
87       // AOD mode
88          fV0ReaderV1->SetDeltaAODBranchName(Form("GammaConv_%s_gamma",cutnumberAODBranch.Data()));
89       }
90       fV0ReaderV1->Init();
91
92       AliLog::SetGlobalLogLevel(AliLog::kInfo);
93
94       //connect input V0Reader
95       mgr->AddTask(fV0ReaderV1);
96       mgr->ConnectInput(fV0ReaderV1,0,cinput);
97
98    }
99
100    //================================================
101    //========= Add Electron Selector ================
102
103
104    if( !(AliDalitzElectronSelector*)mgr->GetTask("ElectronSelector") ){
105
106    AliDalitzElectronSelector *fElectronSelector = new AliDalitzElectronSelector("ElectronSelector");
107
108    // Set AnalysisCut Number
109
110    AliDalitzElectronCuts *fElecCuts=0;
111
112    //ElecCuts = "900054000000020000";
113
114     if( ElecCuts!=""){
115
116        fElecCuts= new AliDalitzElectronCuts(ElecCuts.Data(),ElecCuts.Data());
117
118             if(fElecCuts->InitializeCutsFromCutString(ElecCuts.Data())){
119
120                 fElectronSelector->SetDalitzElectronCuts(fElecCuts);
121
122                 fElecCuts->SetFillCutHistograms("",kTRUE);
123
124             }
125
126     }
127
128     fElectronSelector->Init();
129     mgr->AddTask(fElectronSelector);
130     
131     AliAnalysisDataContainer *cinput1  = mgr->GetCommonInputContainer();
132
133     //connect input V0Reader
134
135     mgr->ConnectInput (fElectronSelector,0,cinput1);
136
137     }
138
139
140
141     cout<<"Entro"<<endl;
142    //================================================
143    //========= Add task to the ANALYSIS manager =====
144    //================================================
145    //            find input container
146    
147   
148  
149    AliAnalysisTaskGammaConvDalitzV1 *task=NULL;
150
151    task= new AliAnalysisTaskGammaConvDalitzV1(Form("GammaConvDalitzV1_%i",trainConfig));
152
153    task->SetIsHeavyIon(2);
154    task->SetIsMC(isMC);
155
156
157
158    // Cut Numbers to use in Analysis
159    Int_t numberOfCuts = 6;
160
161    TString *ConvCutarray    = new TString[numberOfCuts];
162
163    TString *ElecCutarray    = new TString[numberOfCuts];
164
165    TString *MesonCutarray   = new TString[numberOfCuts];
166
167    Bool_t doEtaShiftIndCuts = kFALSE;
168    TString stringShift = "";
169
170    // Shifting in pPb direction
171
172    doEtaShiftIndCuts = kTRUE;
173    stringShift = "pPb";
174
175
176    if( trainConfig == 1 ) {
177         
178      //No eta shift Standard
179      
180         ConvCutarray[0] = "8000011082093603007200000000"; ElecCutarray[0] = "9047540025810262171"; MesonCutarray[0] = "01039035009000"; //standard cut Pi0 PbPb 00-100
181         ConvCutarray[1] = "8020011082093603007200000000"; ElecCutarray[1] = "9047540025810262171"; MesonCutarray[1] = "01039035009000"; //standard cut Pi0 PbPb 00-20
182         ConvCutarray[2] = "8240011082093603007200000000"; ElecCutarray[2] = "9047540025810262171"; MesonCutarray[2] = "01039035009000"; //standard cut Pi0 PbPb 20-40
183         ConvCutarray[3] = "8460011082093603007200000000"; ElecCutarray[3] = "9047540025810262171"; MesonCutarray[3] = "01039035009000"; //standard cut Pi0 PbPb 40-60
184         ConvCutarray[4] = "8680011082093603007200000000"; ElecCutarray[4] = "9047540025810262171"; MesonCutarray[4] = "01039035009000"; //standard cut Pi0 PbPb 60-80        
185         ConvCutarray[5] = "8600011082093603007200000000"; ElecCutarray[5] = "9047540025810262171"; MesonCutarray[5] = "01039035009000"; //standard cut Pi0 PbPb 60-100
186         
187    } 
188   
189   else if( trainConfig == 2 ) {
190        //Standard cut
191        
192         ConvCutarray[0] = "8000011082093603007200000000"; ElecCutarray[0] = "9047540025810262170"; MesonCutarray[0] = "01039035009000"; //standard cut Pi0 PbPb 00-100
193         ConvCutarray[1] = "8020011082093603007200000000"; ElecCutarray[1] = "9047540025810262170"; MesonCutarray[1] = "01039035009000"; //standard cut Pi0 PbPb 00-20
194         ConvCutarray[2] = "8240011082093603007200000000"; ElecCutarray[2] = "9047540025810262170"; MesonCutarray[2] = "01039035009000"; //standard cut Pi0 PbPb 20-40
195         ConvCutarray[3] = "8460011082093603007200000000"; ElecCutarray[3] = "9047540025810262170"; MesonCutarray[3] = "01039035009000"; //standard cut Pi0 PbPb 40-60
196         ConvCutarray[4] = "8680011082093603007200000000"; ElecCutarray[4] = "9047540025810262170"; MesonCutarray[4] = "01039035009000"; //standard cut Pi0 PbPb 60-80        
197         ConvCutarray[5] = "8600011082093603007200000000"; ElecCutarray[5] = "9047540025810262170"; MesonCutarray[5] = "01039035009000"; //standard cut Pi0 PbPb 60-100
198
199  }
200  else if( trainConfig == 3 ) {
201    
202         //No eta shift   |y| < 0.8 |electrons.eta < 0.9|  |gamma.eta| < 0.9
203         
204         ConvCutarray[0] = "8000011002093603007200000000"; ElecCutarray[0] = "9047540025310262171"; MesonCutarray[0] = "01031035009000"; //standard cut Pi0 PbPb 00-100
205         ConvCutarray[1] = "8020011002093603007200000000"; ElecCutarray[1] = "9047540025310262171"; MesonCutarray[1] = "01031035009000"; //standard cut Pi0 PbPb 00-20
206         ConvCutarray[2] = "8240011002093603007200000000"; ElecCutarray[2] = "9047540025310262171"; MesonCutarray[2] = "01031035009000"; //standard cut Pi0 PbPb 20-40
207         ConvCutarray[3] = "8460011002093603007200000000"; ElecCutarray[3] = "9047540025310262171"; MesonCutarray[3] = "01031035009000"; //standard cut Pi0 PbPb 40-60
208         ConvCutarray[4] = "8680011002093603007200000000"; ElecCutarray[4] = "9047540025310262171"; MesonCutarray[4] = "01031035009000"; //standard cut Pi0 PbPb 60-80        
209         ConvCutarray[5] = "8600011002093603007200000000"; ElecCutarray[5] = "9047540025310262171"; MesonCutarray[5] = "01031035009000"; //standard cut Pi0 PbPb 60-100
210    
211  }
212
213 else if( trainConfig == 4 ) {
214
215         ConvCutarray[0] = "8000011082093603007200000000"; ElecCutarray[0] = "9047540025810262171"; MesonCutarray[0] = "01039035009000"; //standard cut Pi0 PbPb 00-100
216         ConvCutarray[1] = "8020011082093603007200000000"; ElecCutarray[1] = "9047540025810262171"; MesonCutarray[1] = "01039035009000"; //standard cut Pi0 PbPb 00-20
217         ConvCutarray[2] = "8240011082093603007200000000"; ElecCutarray[2] = "9047540025810262171"; MesonCutarray[2] = "01039035009000"; //standard cut Pi0 PbPb 20-40
218         ConvCutarray[3] = "8460011082093603007200000000"; ElecCutarray[3] = "9047540025810262171"; MesonCutarray[3] = "01039035009000"; //standard cut Pi0 PbPb 40-60
219         ConvCutarray[4] = "8680011082093603007200000000"; ElecCutarray[4] = "9047540025810262171"; MesonCutarray[4] = "01039035009000"; //standard cut Pi0 PbPb 60-80        
220         ConvCutarray[5] = "8600011082093603007200000000"; ElecCutarray[5] = "9047540025810262171"; MesonCutarray[5] = "01039035009000"; //standard cut Pi0 PbPb 60-100
221
222 } else if( trainConfig == 5 ) {
223
224         ConvCutarray[0] = "8000012082093603007200000000"; ElecCutarray[0] = "9047540025810262171"; MesonCutarray[0] = "01039035009000"; //standard cut Pi0 PbPb 00-100
225         ConvCutarray[1] = "8020012082093603007200000000"; ElecCutarray[1] = "9047540025810262171"; MesonCutarray[1] = "01039035009000"; //standard cut Pi0 PbPb 00-20
226         ConvCutarray[2] = "8240012082093603007200000000"; ElecCutarray[2] = "9047540025810262171"; MesonCutarray[2] = "01039035009000"; //standard cut Pi0 PbPb 20-40
227         ConvCutarray[3] = "8460012082093603007200000000"; ElecCutarray[3] = "9047540025810262171"; MesonCutarray[3] = "01039035009000"; //standard cut Pi0 PbPb 40-60
228         ConvCutarray[4] = "8680012082093603007200000000"; ElecCutarray[4] = "9047540025810262171"; MesonCutarray[4] = "01039035009000"; //standard cut Pi0 PbPb 60-80        
229         ConvCutarray[5] = "8600012082093603007200000000"; ElecCutarray[5] = "9047540025810262171"; MesonCutarray[5] = "01039035009000"; //standard cut Pi0 PbPb 60-100
230         
231 } else if( trainConfig == 6 ) {
232   
233         //No eta shift |Y| < 0.8 |electrons.eta| < 0.9 |gamma.eta| < 0.9
234         
235         ConvCutarray[0] = "8000012002093603007200000000"; ElecCutarray[0] = "9047540025310262171"; MesonCutarray[0] = "01031035009000"; //standard cut Pi0 PbPb 00-100
236         ConvCutarray[1] = "8020012002093603007200000000"; ElecCutarray[1] = "9047540025310262171"; MesonCutarray[1] = "01031035009000"; //standard cut Pi0 PbPb 00-20
237         ConvCutarray[2] = "8240012002093603007200000000"; ElecCutarray[2] = "9047540025310262171"; MesonCutarray[2] = "01031035009000"; //standard cut Pi0 PbPb 20-40
238         ConvCutarray[3] = "8460012002093603007200000000"; ElecCutarray[3] = "9047540025310262171"; MesonCutarray[3] = "01031035009000"; //standard cut Pi0 PbPb 40-60
239         ConvCutarray[4] = "8680012002093603007200000000"; ElecCutarray[4] = "9047540025310262171"; MesonCutarray[4] = "01031035009000"; //standard cut Pi0 PbPb 60-80        
240         ConvCutarray[5] = "8600012002093603007200000000"; ElecCutarray[5] = "9047540025310262171"; MesonCutarray[5] = "01031035009000"; //standard cut Pi0 PbPb 60-100
241  }  else if( trainConfig == 7 ) {
242         //No eta shift added signals
243     
244         ConvCutarray[0] = "8000012082093603007200000000"; ElecCutarray[0] = "9047540025810262171"; MesonCutarray[0] = "01039035009000"; //standard cut Pi0 PbPb 00-100
245         ConvCutarray[1] = "8020012082093603007200000000"; ElecCutarray[1] = "9047540025810262171"; MesonCutarray[1] = "01039035009000"; //standard cut Pi0 PbPb 00-20
246         ConvCutarray[2] = "8240012082093603007200000000"; ElecCutarray[2] = "9047540025810262171"; MesonCutarray[2] = "01039035009000"; //standard cut Pi0 PbPb 20-40
247         ConvCutarray[3] = "8460012082093603007200000000"; ElecCutarray[3] = "9047540025810262171"; MesonCutarray[3] = "01039035009000"; //standard cut Pi0 PbPb 40-60
248         ConvCutarray[4] = "8680012082093603007200000000"; ElecCutarray[4] = "9047540025810262171"; MesonCutarray[4] = "01039035009000"; //standard cut Pi0 PbPb 60-80        
249         ConvCutarray[5] = "8600012082093603007200000000"; ElecCutarray[5] = "9047540025810262171"; MesonCutarray[5] = "01039035009000"; //standard cut Pi0 PbPb 60-100
250         
251 }  else if( trainConfig == 8 ) {  //No eta shift |Y| < 0.8
252         
253         
254         ConvCutarray[0] = "8000011002093653007200000000"; ElecCutarray[0] = "9047540025310262171"; MesonCutarray[0] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + dEdx pion rejec sec 0.3 GeV Low and 3.5 High momentum
255         ConvCutarray[1] = "8000011002093601007200000000"; ElecCutarray[1] = "9047540025310262171"; MesonCutarray[1] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + dEdx pion rejec sec 0.5 GeV Low and 5.0 High momentum
256         ConvCutarray[2] = "8000011002093603007900000000"; ElecCutarray[2] = "9047540025310262171"; MesonCutarray[2] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Chi2 < 15
257         ConvCutarray[3] = "8000011002093603007800000000"; ElecCutarray[3] = "9047540025310262171"; MesonCutarray[3] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Chi2 < 20
258         ConvCutarray[4] = "8000011002093603007100000000"; ElecCutarray[4] = "9047540025310262171"; MesonCutarray[4] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Chi2 < 50
259         ConvCutarray[5] = "8000011002093603002200000000"; ElecCutarray[5] = "9047540025310262171"; MesonCutarray[5] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Qt < 0.7
260         
261         
262 }  else if( trainConfig == 9 ) {        //No eta shift |Y| < 0.8
263
264         ConvCutarray[0] = "8000011002093603003200000000"; ElecCutarray[0] = "9047540025310262171"; MesonCutarray[0] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Qt < 0.5
265         ConvCutarray[1] = "8000011002093603007200000000"; ElecCutarray[1] = "9047540015310262171"; MesonCutarray[1] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + SPD first layer
266         ConvCutarray[2] = "8000011002093603007200000000"; ElecCutarray[2] = "9047540025330262171"; MesonCutarray[2] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + PsiPair cut 0.52
267         ConvCutarray[3] = "8000011002093603007200000000"; ElecCutarray[3] = "9047540025310162171"; MesonCutarray[3] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Background method V0 multiplicity
268         ConvCutarray[4] = "8000011042093603007200000000"; ElecCutarray[4] = "9047540025510262171"; MesonCutarray[4] = "01032035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Y < 0.70  and prim and sec e |eta| < 0.75 //NOTE revisar
269         ConvCutarray[5] = "8000011002093603007200000000"; ElecCutarray[5] = "9047540025310263171"; MesonCutarray[5] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Single prim Pt cut > 0.150
270         
271         
272 } else if ( trainConfig == 10 ) {       //No eta shift |Y| < 0.8
273
274         ConvCutarray[0] = "8000011002493603007200000000"; ElecCutarray[0] = "9047540025310262171"; MesonCutarray[0] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Single sec  Pt cut > 0.075
275         ConvCutarray[1] = "8000011002193603007200000000"; ElecCutarray[1] = "9047540025310262171"; MesonCutarray[1] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Single sec  Pt cut > 0.100
276         ConvCutarray[2] = "8000011002083603007200000000"; ElecCutarray[2] = "9047540025310262171"; MesonCutarray[2] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Findable Cls sec  > 0.35
277         ConvCutarray[3] = "8000011002093603007200000000"; ElecCutarray[3] = "9047540026310262171"; MesonCutarray[3] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Findable Cls prim > 0.60
278         ConvCutarray[4] = "8000011002093603007200000000"; ElecCutarray[4] = "9047540028310262171"; MesonCutarray[4] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Min TPC cls = 0
279         ConvCutarray[5] = "8000011002093603007200000000"; ElecCutarray[5] = "9057540025310262171"; MesonCutarray[5] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + dEdx primary electron -3,5
280         
281         
282 } else if ( trainConfig == 11 ) {        //No eta shift |Y| < 0.8
283         
284         ConvCutarray[0] = "8000011002093603007200000000"; ElecCutarray[0] = "9043540025310262171"; MesonCutarray[0] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + dEdx pion rejec primary 2.0sigmas Low and 0 High momentum
285         ConvCutarray[1] = "8000011002093603007200000000"; ElecCutarray[1] = "9047740025310262171"; MesonCutarray[1] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + dEdx pion rejec primary 0.3 GeV Low and 3.5 High momentum
286         ConvCutarray[2] = "8000011002093603007200000000"; ElecCutarray[2] = "9047520025310262171"; MesonCutarray[2] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + dEdx pion rejec primary 0.5 GeV Low and 5.0 High momentum
287         ConvCutarray[3] = "8000011002093603007200000000"; ElecCutarray[3] = "9047540025310262271"; MesonCutarray[3] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + DCAxy < 1 cm
288         ConvCutarray[4] = "8000011002093603007200000000"; ElecCutarray[4] = "9047540025310261171"; MesonCutarray[4] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + Single prim Pt cut > 0.100
289         ConvCutarray[5] = "8000011002093603007200000000"; ElecCutarray[5] = "9047540025310262171"; MesonCutarray[5] = "01031005009000"; //standard cut Pi0 pPb 00-100 Standard cut + Alpha cut < 0.7
290         
291         
292 } else if ( trainConfig == 12 ) {         //No eta shift |Y| < 0.8
293
294         ConvCutarray[0] = "8000011002093603001200000000"; ElecCutarray[0] = "9047540025310262171"; MesonCutarray[0] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + qT < 0.1
295         ConvCutarray[1] = "8000011002093603007200000000"; ElecCutarray[1] = "9047540025310262141"; MesonCutarray[1] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + InvMass(e+,e-) < 0.050
296         ConvCutarray[2] = "8000011002093603007200000000"; ElecCutarray[2] = "9037540025310262171"; MesonCutarray[2] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + dEdx primary  electron -5,5
297         ConvCutarray[3] = "8000011002091603007200000000"; ElecCutarray[3] = "9047540025310262171"; MesonCutarray[3] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + dEdx secondary electron -5,5
298         ConvCutarray[4] = "8000011002092603007200000000"; ElecCutarray[4] = "9047540025310262171"; MesonCutarray[4] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + dEdx secondary electron -3,5
299         ConvCutarray[5] = "8000011002093603007200000000"; ElecCutarray[5] = "9042540025310262171"; MesonCutarray[5] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + dEdx pion rejec  primary  2.0sigmas Low and -1 High momentum 
300             
301         
302 } else if ( trainConfig == 13 ) {
303   
304         ConvCutarray[0] = "8000011002093803007200000000"; ElecCutarray[0] = "9047540025310262171"; MesonCutarray[0] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + dEdx pion rejec  secon    2.0sigmas Low and  1 High momentum
305         ConvCutarray[1] = "8000011002093603007200000000"; ElecCutarray[1] = "9047540025310272171"; MesonCutarray[1] = "01031035009000"; //standard cut Pi0 PbPb 00-100 + 100 events backgroubd
306         ConvCutarray[2] = "8000011002093603007200000000"; ElecCutarray[2] = "9047540025310262171"; MesonCutarray[2] = "01031035009000"; //standard cut Pi0 PbPb 00-100 + Standard
307         ConvCutarray[3] = "8000011002093603007200000000"; ElecCutarray[3] = "9047540025310262171"; MesonCutarray[3] = "01031035000000"; //standard cut Pi0 PbPb 00-100 + No extra smearing
308         ConvCutarray[4] = "8000011002093603007200000000"; ElecCutarray[4] = "9047540025300262171"; MesonCutarray[4] = "01031035009000"; //standard cut Pi0 PbPb 00-100 + No psi pair 
309         ConvCutarray[5] = "8000011002093603007200000000"; ElecCutarray[5] = "9047540025310252171"; MesonCutarray[5] = "01031035009000"; //standard cut Pi0 PbPb 00-100 + 50 events background
310  
311    
312
313 } else if( trainConfig == 14 ) {  //No eta shift |Y| < 0.8 addedSignal
314         
315         
316         ConvCutarray[0] = "8000012002093653007200000000"; ElecCutarray[0] = "9047540025310262171"; MesonCutarray[0] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + dEdx pion rejec sec 0.3 GeV Low and 3.5 High momentum
317         ConvCutarray[1] = "8000012002093601007200000000"; ElecCutarray[1] = "9047540025310262171"; MesonCutarray[1] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + dEdx pion rejec sec 0.5 GeV Low and 5.0 High momentum
318         ConvCutarray[2] = "8000012002093603007900000000"; ElecCutarray[2] = "9047540025310262171"; MesonCutarray[2] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Chi2 < 15
319         ConvCutarray[3] = "8000012002093603007800000000"; ElecCutarray[3] = "9047540025310262171"; MesonCutarray[3] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Chi2 < 20
320         ConvCutarray[4] = "8000012002093603007100000000"; ElecCutarray[4] = "9047540025310262171"; MesonCutarray[4] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Chi2 < 50
321         ConvCutarray[5] = "8000012002093603002200000000"; ElecCutarray[5] = "9047540025310262171"; MesonCutarray[5] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Qt < 0.7
322         
323         
324 }  else if( trainConfig == 15 ) {       //No eta shift |Y| < 0.8 addedSignal
325
326         ConvCutarray[0] = "8000012002093603003200000000"; ElecCutarray[0] = "9047540025310262171"; MesonCutarray[0] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Qt < 0.5
327         ConvCutarray[1] = "8000012002093603007200000000"; ElecCutarray[1] = "9047540015310262171"; MesonCutarray[1] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + SPD first layer
328         ConvCutarray[2] = "8000012002093603007200000000"; ElecCutarray[2] = "9047540025330262171"; MesonCutarray[2] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + PsiPair cut 0.52
329         ConvCutarray[3] = "8000012002093603007200000000"; ElecCutarray[3] = "9047540025310162171"; MesonCutarray[3] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Background method V0 multiplicity
330         ConvCutarray[4] = "8000012042093603007200000000"; ElecCutarray[4] = "9047540025510262171"; MesonCutarray[4] = "01032035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Y < 0.70  and prim and sec e |eta| < 0.75 //NOTE revisar
331         ConvCutarray[5] = "8000012002093603007200000000"; ElecCutarray[5] = "9047540025310263171"; MesonCutarray[5] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Single prim Pt cut > 0.150
332         
333         
334 } else if ( trainConfig == 16 ) {       //No eta shift |Y| < 0.8 addedSignal
335
336         ConvCutarray[0] = "8000012002493603007200000000"; ElecCutarray[0] = "9047540025310262171"; MesonCutarray[0] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Single sec  Pt cut > 0.075
337         ConvCutarray[1] = "8000012002193603007200000000"; ElecCutarray[1] = "9047540025310262171"; MesonCutarray[1] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Single sec  Pt cut > 0.100
338         ConvCutarray[2] = "8000012002083603007200000000"; ElecCutarray[2] = "9047540025310262171"; MesonCutarray[2] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Findable Cls sec  > 0.35
339         ConvCutarray[3] = "8000012002093603007200000000"; ElecCutarray[3] = "9047540026310262171"; MesonCutarray[3] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Findable Cls prim > 0.60
340         ConvCutarray[4] = "8000012002093603007200000000"; ElecCutarray[4] = "9047540028310262171"; MesonCutarray[4] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + Min TPC cls = 0
341         ConvCutarray[5] = "8000012002093603007200000000"; ElecCutarray[5] = "9057540025310262171"; MesonCutarray[5] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + dEdx primary electron -3,5
342         
343         
344 } else if ( trainConfig == 17 ) {        //No eta shift |Y| < 0.8 addedSignal
345         
346         ConvCutarray[0] = "8000012002093603007200000000"; ElecCutarray[0] = "9043540025310262171"; MesonCutarray[0] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + dEdx pion rejec primary 2.0sigmas Low and 0 High momentum
347         ConvCutarray[1] = "8000012002093603007200000000"; ElecCutarray[1] = "9047740025310262171"; MesonCutarray[1] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + dEdx pion rejec primary 0.3 GeV Low and 3.5 High momentum
348         ConvCutarray[2] = "8000012002093603007200000000"; ElecCutarray[2] = "9047520025310262171"; MesonCutarray[2] = "01031035009000"; //standard cut Pi0 PbPb 00-100  New Standard cut + dEdx pion rejec primary 0.5 GeV Low and 5.0 High momentum
349         ConvCutarray[3] = "8000012002093603007200000000"; ElecCutarray[3] = "9047540025310262271"; MesonCutarray[3] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + DCAxy < 1 cm
350         ConvCutarray[4] = "8000012002093603007200000000"; ElecCutarray[4] = "9047540025310261171"; MesonCutarray[4] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + Single prim Pt cut > 0.100
351         ConvCutarray[5] = "8000012002093603007200000000"; ElecCutarray[5] = "9047540025310262171"; MesonCutarray[5] = "01031005009000"; //standard cut Pi0 pPb 00-100 Standard cut + Alpha cut < 0.7
352         
353         
354 } else if ( trainConfig == 18 ) {         //No eta shift |Y| < 0.8 addedSignal
355
356         ConvCutarray[0] = "8000012002093603001200000000"; ElecCutarray[0] = "9047540025310262171"; MesonCutarray[0] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + qT < 0.1
357         ConvCutarray[1] = "8000012002093603007200000000"; ElecCutarray[1] = "9047540025310262141"; MesonCutarray[1] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + InvMass(e+,e-) < 0.050
358         ConvCutarray[2] = "8000012002093603007200000000"; ElecCutarray[2] = "9037540025310262171"; MesonCutarray[2] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + dEdx primary  electron -5,5
359         ConvCutarray[3] = "8000012002091603007200000000"; ElecCutarray[3] = "9047540025310262171"; MesonCutarray[3] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + dEdx secondary electron -5,5
360         ConvCutarray[4] = "8000012002092603007200000000"; ElecCutarray[4] = "9047540025310262171"; MesonCutarray[4] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + dEdx secondary electron -3,5
361         ConvCutarray[5] = "8000012002093603007200000000"; ElecCutarray[5] = "9042540025310262171"; MesonCutarray[5] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + dEdx pion rejec  primary  2.0sigmas Low and -1 High momentum 
362             
363         
364 } else if ( trainConfig == 19 ) {         //No eta shift |Y| < 0.8 addedSignal
365   
366         ConvCutarray[0] = "8000012002093803007200000000"; ElecCutarray[0] = "9047540025310262171"; MesonCutarray[0] = "01031035009000"; //standard cut Pi0 pPb 00-100 Standard cut + dEdx pion rejec  secon    2.0sigmas Low and  1 High momentum
367         ConvCutarray[1] = "8000012002093603007200000000"; ElecCutarray[1] = "9047540025310272171"; MesonCutarray[1] = "01031035009000"; //standard cut Pi0 PbPb 00-100 + 100 events backgroubd
368         ConvCutarray[2] = "8000012002093603007200000000"; ElecCutarray[2] = "9047540025310262171"; MesonCutarray[2] = "01031035009000"; //standard cut Pi0 PbPb 00-100 + Standard
369         ConvCutarray[3] = "8000012002093603007200000000"; ElecCutarray[3] = "9047540025310262171"; MesonCutarray[3] = "01031035000000"; //standard cut Pi0 PbPb 00-100 + No extra smearing
370         ConvCutarray[4] = "8000012002093603007200000000"; ElecCutarray[4] = "9047540025300262171"; MesonCutarray[4] = "01031035009000"; //standard cut Pi0 PbPb 00-100 + No psi pair 
371         ConvCutarray[5] = "8000012002093603007200000000"; ElecCutarray[5] = "9047540025310252171"; MesonCutarray[5] = "01031035009000"; //standard cut Pi0 PbPb 00-100 + 50 events background
372  } 
373
374  
375    
376    
377
378         
379
380    TList *ConvCutList  = new TList();
381    TList *MesonCutList = new TList();
382    TList *ElecCutList  = new TList();
383
384    TList *HeaderList = new TList();
385    TObjString *Header1 = new TObjString("pi0_1");
386    HeaderList->Add(Header1);
387    TObjString *Header3 = new TObjString("eta_2");
388    HeaderList->Add(Header3);
389    
390    ConvCutList->SetOwner(kTRUE);
391    AliConversionCuts **analysisCuts             = new AliConversionCuts*[numberOfCuts];
392    MesonCutList->SetOwner(kTRUE);
393    AliConversionMesonCuts **analysisMesonCuts   = new AliConversionMesonCuts*[numberOfCuts];
394    ElecCutList->SetOwner(kTRUE);
395    AliDalitzElectronCuts **analysisElecCuts     = new AliDalitzElectronCuts*[numberOfCuts];
396
397
398
399    for(Int_t i = 0; i<numberOfCuts; i++){
400
401
402       analysisCuts[i] = new AliConversionCuts();
403       if( ! analysisCuts[i]->InitializeCutsFromCutString(ConvCutarray[i].Data()) ) {
404             cout<<"ERROR: analysisCuts [" <<i<<"]"<<endl;
405             return 0;
406       }
407    else {
408
409    if ( trainConfig == 1 || trainConfig == 3 || trainConfig == 4  ){
410
411          if (i == 0 && doWeighting){
412
413             if (generatorName.CompareTo("DPMJET")==0){
414                analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_DPMJET_LHC13b2_efix_pPb_5023GeV_MBV0A", "Eta_DPMJET_LHC13b2_efix_pPb_5023GeV_MBV0A", "","Pi0_Fit_Data_pPb_5023GeV_MBV0A","Eta_Fit_Data_pPb_5023GeV_MBV0A");
415             } else if (generatorName.CompareTo("HIJING")==0){
416                analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_Hijing_LHC13e7_pPb_5023GeV_MBV0A", "Eta_Hijing_LHC13e7_pPb_5023GeV_MBV0A", "","Pi0_Fit_Data_pPb_5023GeV_MBV0A","Eta_Fit_Data_pPb_5023GeV_MBV0A");
417             }
418          }
419          if (i == 1 && doWeighting){
420             if (generatorName.CompareTo("DPMJET")==0){
421                analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_DPMJET_LHC13b2_efix_pPb_5023GeV_0020V0A", "Eta_DPMJET_LHC13b2_efix_pPb_5023GeV_0020V0A", "","Pi0_Fit_Data_pPb_5023GeV_0020V0A","Eta_Fit_Data_pPb_5023GeV_0020V0A");
422             } else if (generatorName.CompareTo("HIJING")==0){
423                analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_Hijing_LHC13e7_pPb_5023GeV_0020V0A", "Eta_Hijing_LHC13e7_pPb_5023GeV_0020V0A", "","Pi0_Fit_Data_pPb_5023GeV_0020V0A","Eta_Fit_Data_pPb_5023GeV_0020V0A");
424             }
425          }
426          if (i == 2 && doWeighting){
427             if (generatorName.CompareTo("DPMJET")==0){
428                analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_DPMJET_LHC13b2_efix_pPb_5023GeV_2040V0A", "Eta_DPMJET_LHC13b2_efix_pPb_5023GeV_2040V0A", "","Pi0_Fit_Data_pPb_5023GeV_2040V0A","Eta_Fit_Data_pPb_5023GeV_2040V0A");
429             } else if (generatorName.CompareTo("HIJING")==0){
430                analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_Hijing_LHC13e7_pPb_5023GeV_2040V0A", "Eta_Hijing_LHC13e7_pPb_5023GeV_2040V0A", "","Pi0_Fit_Data_pPb_5023GeV_2040V0A","Eta_Fit_Data_pPb_5023GeV_2040V0A");
431             }
432          }
433          if (i == 3 && doWeighting){
434             if (generatorName.CompareTo("DPMJET")==0){
435                analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_DPMJET_LHC13b2_efix_pPb_5023GeV_4060V0A", "Eta_DPMJET_LHC13b2_efix_pPb_5023GeV_4060V0A", "","Pi0_Fit_Data_pPb_5023GeV_4060V0A","Eta_Fit_Data_pPb_5023GeV_4060V0A");
436             } else if (generatorName.CompareTo("HIJING")==0){
437                analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_Hijing_LHC13e7_pPb_5023GeV_4060V0A", "Eta_Hijing_LHC13e7_pPb_5023GeV_4060V0A", "","Pi0_Fit_Data_pPb_5023GeV_4060V0A","Eta_Fit_Data_pPb_5023GeV_4060V0A");
438             }
439          }
440          if (i == 4 && doWeighting){
441             if (generatorName.CompareTo("DPMJET")==0){
442                analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_DPMJET_LHC13b2_efix_pPb_5023GeV_6080V0A", "Eta_DPMJET_LHC13b2_efix_pPb_5023GeV_6080V0A", "","Pi0_Fit_Data_pPb_5023GeV_6080V0A","Eta_Fit_Data_pPb_5023GeV_6080V0A");
443             } else if (generatorName.CompareTo("HIJING")==0){
444                analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_Hijing_LHC13e7_pPb_5023GeV_6080V0A", "Eta_Hijing_LHC13e7_pPb_5023GeV_6080V0A", "","Pi0_Fit_Data_pPb_5023GeV_6080V0A","Eta_Fit_Data_pPb_5023GeV_6080V0A");
445             }
446          }
447          if (i == 5 && doWeighting){
448             if (generatorName.CompareTo("DPMJET")==0){
449                analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_DPMJET_LHC13b2_efix_pPb_5023GeV_60100V0A", "Eta_DPMJET_LHC13b2_efix_pPb_5023GeV_60100V0A", "","Pi0_Fit_Data_pPb_5023GeV_60100V0A","Eta_Fit_Data_pPb_5023GeV_60100V0A");
450             } else if (generatorName.CompareTo("HIJING")==0){
451                analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_Hijing_LHC13e7_pPb_5023GeV_60100V0A", "Eta_Hijing_LHC13e7_pPb_5023GeV_60100V0A", "","Pi0_Fit_Data_pPb_5023GeV_60100V0A","Eta_Fit_Data_pPb_5023GeV_60100V0A");
452             }
453          }
454    }
455       
456   else if ( trainConfig == 5 ||  trainConfig == 6  || trainConfig == 7 ){
457
458          if (i == 0 && doWeighting){
459             analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_Hijing_LHC13e7_addSig_pPb_5023GeV_MBV0A", "Eta_Hijing_LHC13e7_addSig_pPb_5023GeV_MBV0A", "","Pi0_Fit_Data_pPb_5023GeV_MBV0A","Eta_Fit_Data_pPb_5023GeV_MBV0A");
460          }
461          if (i == 1 && doWeighting){
462             analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_Hijing_LHC13e7_addSig_pPb_5023GeV_0020V0A", "Eta_Hijing_LHC13e7_addSig_pPb_5023GeV_0020V0A", "","Pi0_Fit_Data_pPb_5023GeV_0020V0A","Eta_Fit_Data_pPb_5023GeV_0020V0A");
463             
464          }
465          if (i == 2 && doWeighting){
466             analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_Hijing_LHC13e7_addSig_pPb_5023GeV_2040V0A", "Eta_Hijing_LHC13e7_addSig_pPb_5023GeV_2040V0A", "","Pi0_Fit_Data_pPb_5023GeV_2040V0A","Eta_Fit_Data_pPb_5023GeV_2040V0A");
467             
468          }
469          if (i == 3 && doWeighting){
470             analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_Hijing_LHC13e7_addSig_pPb_5023GeV_4060V0A", "Eta_Hijing_LHC13e7_addSig_pPb_5023GeV_4060V0A", "","Pi0_Fit_Data_pPb_5023GeV_4060V0A","Eta_Fit_Data_pPb_5023GeV_4060V0A");
471          }
472          if (i == 4 && doWeighting){
473             analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_Hijing_LHC13e7_addSig_pPb_5023GeV_6080V0A", "Eta_Hijing_LHC13e7_addSig_pPb_5023GeV_6080V0A", "","Pi0_Fit_Data_pPb_5023GeV_6080V0A","Eta_Fit_Data_pPb_5023GeV_6080V0A");
474          }
475          if (i == 5 && doWeighting){
476             analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_Hijing_LHC13e7_addSig_pPb_5023GeV_60100V0A", "Eta_Hijing_LHC13e7_addSig_pPb_5023GeV_60100V0A", "","Pi0_Fit_Data_pPb_5023GeV_60100V0A","Eta_Fit_Data_pPb_5023GeV_60100V0A");
477          }
478    
479   }
480   else if ( trainConfig == 8 ||  trainConfig == 9  || trainConfig == 10 || trainConfig == 11 ||  trainConfig == 12  || trainConfig == 13 ){
481     
482           if (doWeighting){
483             if (generatorName.CompareTo("DPMJET")==0){
484                analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_DPMJET_LHC13b2_efix_pPb_5023GeV_MBV0A", "Eta_DPMJET_LHC13b2_efix_pPb_5023GeV_MBV0A", "","Pi0_Fit_Data_pPb_5023GeV_MBV0A","Eta_Fit_Data_pPb_5023GeV_MBV0A");
485             } else if (generatorName.CompareTo("HIJING")==0){
486                analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_Hijing_LHC13e7_pPb_5023GeV_MBV0A", "Eta_Hijing_LHC13e7_pPb_5023GeV_MBV0A", "","Pi0_Fit_Data_pPb_5023GeV_MBV0A","Eta_Fit_Data_pPb_5023GeV_MBV0A");
487             }
488          }
489   }
490   else if ( trainConfig == 14 ||  trainConfig == 15  || trainConfig == 16 || trainConfig == 17 ||  trainConfig == 18  || trainConfig == 19 ){
491     
492           if (doWeighting){
493               analysisCuts[i]->SetUseReweightingWithHistogramFromFile(kTRUE, kTRUE, kFALSE, fileNameInputForWeighting, "Pi0_Hijing_LHC13e7_addSig_pPb_5023GeV_MBV0A", "Eta_Hijing_LHC13e7_addSig_pPb_5023GeV_MBV0A", "","Pi0_Fit_Data_pPb_5023GeV_MBV0A","Eta_Fit_Data_pPb_5023GeV_MBV0A");
494           }
495   }
496    
497         
498
499
500       
501         if (doEtaShiftIndCuts) {
502           
503           if( trainConfig == 2 || trainConfig == 4 || trainConfig == 5 ){   //Apply_eta shift
504           
505               analysisCuts[i]->DoEtaShift(doEtaShiftIndCuts);
506               analysisCuts[i]->SetEtaShift(stringShift);
507           }
508         }
509         ConvCutList->Add(analysisCuts[i]);
510         analysisCuts[i]->SetFillCutHistograms("",kFALSE);
511         analysisCuts[i]->SetAcceptedHeader(HeaderList);
512    }
513
514
515
516       analysisMesonCuts[i] = new AliConversionMesonCuts();
517     
518       if( ! analysisMesonCuts[i]->InitializeCutsFromCutString(MesonCutarray[i].Data()) ) {
519             cout<<"ERROR: analysisMesonCuts [ " <<i<<" ] "<<endl;
520             return 0;
521       }
522       else {
523             MesonCutList->Add(analysisMesonCuts[i]);
524             analysisMesonCuts[i]->SetFillCutHistograms("");
525       }
526
527
528        TString cutName( Form("%s_%s_%s",ConvCutarray[i].Data(),ElecCutarray[i].Data(),MesonCutarray[i].Data() ) );
529
530
531        analysisElecCuts[i] = new AliDalitzElectronCuts();
532        if( !analysisElecCuts[i]->InitializeCutsFromCutString(ElecCutarray[i].Data())) {
533
534             cout<< "ERROR:  analysisElecCuts [ " <<i<<" ] "<<endl;
535             return 0;
536        }
537        else { 
538         ElecCutList->Add(analysisElecCuts[i]);
539         analysisElecCuts[i]->SetFillCutHistograms("",kFALSE,cutName); 
540        }
541      
542
543    }
544
545
546    task->SetConversionCutList(numberOfCuts,ConvCutList);
547    task->SetMesonCutList(MesonCutList);
548    task->SetElectronCutList(ElecCutList);
549
550    task->SetMoveParticleAccordingToVertex(kTRUE);
551
552
553    if(enableQAMesonTask) task->SetDoMesonQA(kTRUE);
554    if(enableDoMesonChic) task->SetDoChicAnalysis(kTRUE);
555
556    //connect containers
557    AliAnalysisDataContainer *coutput =
558    mgr->CreateContainer(Form("GammaConvDalitzV1_%i",trainConfig), TList::Class(),
559                            AliAnalysisManager::kOutputContainer,Form("GammaConvV1Dalitz_%i.root",trainConfig));
560
561    mgr->AddTask(task);
562    mgr->ConnectInput(task,0,cinput);
563    mgr->ConnectOutput(task,1,coutput);
564
565    return;
566
567 }