]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGJE/macros/ConfigTrainGrid.C
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGJE / macros / ConfigTrainGrid.C
1 {
2   /*
3
4     //  < 1 are private
5     // run >= 100 < 1000 are real data
6     // runs > 1000 are sim data
7     1 = LHC09a1 pt hard 15 - 50 GeV 
8     2 = LHC09a2 pt hard 50 -100 GeV
9     3 = LHC09a3 pt hard > 100
10     100 = LHC09d 0.9 GeV real with TPC
11     200 = LHC10b 7 TeV real with TPC  
12     202 = LHC10b 7 TeV real with TPC  (pass2) 
13     300 = LHC10c 900 GeV real with TPC
14     302 = LHC10c 900 GeV  pass2 real with TPC
15     400 = LHC10c 7000 GeV real with TPC
16     402 = LHC10c 7000 GeV pass2  real with TPC
17     500 = LHC10d 7000 GeV Real
18     502 = LHC10d 7000 GeV Real pass2
19     801 = LHC10h Pb+Pb real
20     802 = LHC10h Pb+Pb real pass2
21     812 = LHC11h pass 2
22    1012 = LHC10a12 0.9 GeV MC Pythiy D6T  
23    1014 = LHC10a14 0.9 GeV MC ojet D6T  
24    2001 = LHC10b1 7 TeV Phojet with real OCDB
25    2002 = LHC10b2 7 TeV Pythia Pergiua-0
26    4001 = LHC10d1 pp, Pythia6 Perugia-0, 0.5T, 7000GeV, // misses some runs since i a different direcotory LHC10c9
27    4002 = LHC10d2 pp, Phojet, 0.5T, 7000GeV
28    4004 = LHC10d4 pp, Perugis, 0.5T, 7000GeV
29    5014 = LHC10e14 pp, Jet+Jet different p_T hard bins 0.5T, 7000GeV
30    6006 = LHC10f6 pp, Phojet Nachor Runs LHC10d
31    8012 = 50 80 GeV (LHC10h12)
32    8013 = 80-inf GeV (LHC10h13)
33    8102 = LHC11a2XX (where x = a - j)
34   */
35   Bool_t debugConfig =false;
36   Bool_t ckbConfig = false;
37   Bool_t productionConfig = true; // make this true for productions mode, no par files ets 
38   Int_t  iVersion = 1; // this is the train version for one datapass
39
40   // bextra == 0 4 plus
41   // bextra == 1 large pass1 split..
42   // bextra == 2 3 plus
43   //  Int_t bRun = 802; Int_t bExtra = 0;  char* cDate = "111018b";
44   Int_t bRun = 812; Int_t bExtra = 0;  char* cDate = "120202a";
45   //  Int_t bRun = 8102; Int_t bExtra = 1;  char* cDate = "110725a";
46   iAODanalysis = 0; 
47   // 1 == Read Jets and tracks form the input AOD
48   // needs the jet branchnames set explicitly
49   // 2 == Read tracks from input and jets from output
50   
51   // 1 =  write the Full AOD for all events 
52   // 2 =  write the Full AOD for triggered events
53   // 3 =  write the deltaAOD for all events
54   iFilterAnalysis = 1;
55   //  iFilterAnalysis = 2;kJetTriggerPtCut = 40; 
56   //  iFilterAnalysis = 3;
57   // iFilterAnalysis = 2;
58
59   if(iFilterAnalysis==1){
60     kSaveAOD            = 1;
61     kGridFilesPerJob       = 5;
62     kDeltaAODJetName   = "";
63     kFilterAOD = false;
64   }
65   else if(iFilterAnalysis==2){
66     kSaveAOD            = 1;
67     kGridFilesPerJob    = 20;
68     kDeltaAODJetName   = "";
69     kFilterAOD = true;
70   }
71   else if(iFilterAnalysis == 3){
72     kSaveAOD            = 2;
73     kGridFilesPerJob    = 20;
74       kDeltaAODJetName   = "AliAOD.Jets.root";
75       kFilterAOD = true;
76   }
77   
78
79
80   if (kPluginMode.Contains("merge")){
81     // currently merging this one...
82     //       cDate = "110717a";
83     //    bRun = 802; Int_t bExtra = 0; cDate = "110812a";
84   }
85   kUseDebug = kFALSE;
86   // this is for testing just one run...
87   //  kGridMaxRunsFromList = 1;kUseDebug = kTRUE;
88
89   kUseSysInfo = 100;
90   
91   kFillAOD                = kTRUE; // fill the aod
92   kGridMergeExclude = ""; kSaveAOD = (1<<0)|(1<<1)|(1<<3); // 
93   if(!productionConfig){
94     kUsePAR              = kTRUE; // 
95     kUseCPAR            = kTRUE;
96     kGridFilesPerJob       = 20;
97   }
98
99   iPhysicsSelection = 1;
100
101   if(iAODanalysis){
102     // iAODAn
103     if(iAODanalysis == 1){
104       iJETAN = 0;
105       iPWG4Cluster = 0;
106       //      iJETSUBTRACT = 0;
107     }
108   }
109
110   iJETAN = 3;
111   iDIJETAN = 1; // only run on one JetFinder for the moment
112   iPWGPPQASym = 0; // excluded since also on QA train         
113   iPWG4JetServices = 1; 
114   iPWG4Fragmentation = 0; 
115   iPWG4JetSpectrum = 7; 
116   iPWG4UE = 0; // tmp off awating updates
117   iPWG4LeadingUE = 1; 
118   iPWG4CorrectionsUE = 0; // 19.07. OFF awaiting changes by Sara
119   iPWG4PtQAMC       = 1;
120   iPWG4PtSpectra    = 1;
121   iPWG4PtQATPC      = 3;
122   iPWG4PtTrackQA    = 1;
123   iPWG4Cosmics      = 0; 
124   iPWG4JetChem      = 0;
125   iPWG4QGSep  = 0;
126   iPWG4Minijet  = 0;
127   iPWG4ThreeJets    = 0; // tmp off mem leak
128   iPWG4KMeans       = 1; // Off no feedback 
129   iPWG4Cluster      = 5;
130   kDeltaAODJetName   = ""; // for OTF we do not need to write a delta/saves some extension gymnastics in the tasks       
131   kPluginExecutableCommand = "cat wn.xml; root -b -q "; // dump the file list to stdout for debugging
132   kPluginAliRootVersion    = ""; 
133   kGridRunsPerMaster = 1; // To have the separate configs for eacj run in separate dirs
134
135   if(bRun<100){ // private MC
136     iPWGPPQASym = 0;
137     iPWG4JetChem = 0;
138     iPWG4UE = 0;
139     iPWG4Cluster      = 0;
140     iPWG4PtQAMC       = 0;
141     iPWG4PtSpectra    = 0;
142     iPWG4PtQATPC      = 0;
143     iPWG4Cosmics      = 0; // tmp on
144     iPWG4ThreeJets    = 0; 
145     iPWG4KMeans       = 0;
146     kUseKinefilter         = kTRUE;
147     kIsMC                  = kTRUE;  
148     kUseTR                 = kTRUE; 
149     kUseMC                 = kTRUE; 
150     kUseAODMC              = kTRUE; 
151     //   kErrorIgnoreLevel = 3001;
152     //    kPluginFastReadOption = kTRUE;
153   }
154
155   if(bRun>=1000){
156     kUseKinefilter         = kTRUE;
157     kIsMC                  = kTRUE; 
158     kUseMC                 = kTRUE; 
159     kUseAODMC              = kTRUE; 
160     kUseTR                 = kTRUE; 
161     iPhysicsSelection      = 1;
162   }
163
164
165   if (bRun == 1){
166     kGridRunRange[0]       =  0;  
167     kGridRunRange[1]       =  -1; 
168     kGridDatadir           = "/alice/sim/PDC_08b/LHC09a1/"; 
169     kGridDataSet           = "LHC09a1"; 
170     kGridRunPattern        = "%05d"; 
171     kGridLocalRunList      = "fp_lhc09a1.txt";
172     kTrainName             = Form("pwg4train_LHC09a1_%s",cDate);
173     iPhysicsSelection      = 0;
174     kHighPtFilterMask      = 32;     
175     kGridFilesPerJob       = 200;
176   }
177   else if (bRun == 2){
178     kGridRunRange[0]       =  0;  
179     kGridRunRange[1]       =  -1; 
180     kGridDatadir           = "/alice/sim/PDC_08b/LHC09a2/"; 
181     kGridDataSet           = "LHC09a2"; 
182     kGridRunPattern        = "%05d"; 
183     kGridLocalRunList      = "fp_lhc09a2.txt";
184     kTrainName             = Form("pwg4train_LHC09a2_%s",cDate);
185     iPhysicsSelection      = 0;
186     kHighPtFilterMask      = 32;     
187     kGridFilesPerJob       = 80;
188   }
189   else if (bRun == 3){
190     kGridRunRange[0]       =  0;  
191     kGridRunRange[1]       =  -1; // 
192     kGridDatadir           = "/alice/sim/PDC_08b/LHC09a3/"; 
193     kGridDataSet           = "LHC09a3"; 
194     kGridRunPattern        = "%05d"; 
195     kGridLocalRunList      = "fp_lhc09a3.txt";
196     kTrainName             = Form("pwg4train_LHC09a3_%s",cDate);
197     iPhysicsSelection      = 0;
198     kHighPtFilterMask      = 32;     
199     kGridFilesPerJob       = 80;
200   }
201   else if (bRun == 100){
202     kGridRunRange[0]       =  0; 
203     kGridRunRange[1]       =  -1; // 
204     kGridDatadir           = "/alice/data/2009/LHC09d/"; 
205     kGridDataSet           = "LHC09d"; 
206     kGridRunPattern        = "%09d"; 
207     kUseKinefilter         = kFALSE;
208     kIsMC                  = kFALSE;  // is real! 
209     kUseMC                 = kFALSE; 
210     kUseAODMC              = kFALSE; 
211     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
212     //    kGridPassPattern       = "pass1";    kGridLocalRunList      = "fp_runlist_pass1.txt";    kTrainName  = "pwg4train_LHC09d_pass1_100104";
213     kGridPassPattern       = "pass6";    kGridLocalRunList      = "fp_runlist_pass6.txt";    kTrainName  = Form("pwg4train_LHC09d_pass6_%s",cDate);
214     kGridRunsPerMaster = 1; // Physcicsselection does not support more than on run per job
215   }
216   else if (bRun == 200){
217     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
218     kGridRunRange[1]       =  -1; // 
219     kGridDatadir           = "/alice/data/2010/LHC10b/"; 
220     kGridDataSet           = "LHC10b"; 
221     kGridRunPattern        = "%09d"; 
222     kUseKinefilter         = kFALSE;
223     kIsMC                  = kFALSE;  // is real! 
224     kUseMC                 = kFALSE; 
225     kUseAODMC              = kFALSE; 
226     kGridPassPattern       = "pass1";    kGridLocalRunList      = "fp_lhc10b_runlist_pass1.txt";    kTrainName  = Form("pwg4train_LHC10b_pass1_%s",cDate);
227     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
228     kGridRunsPerMaster = 1; // Physcicsselection does not support more than on run per job
229     // stich of tasks not from PWG4JetTasks
230     gROOT->LoadMacro("cleanXML.C");
231     cleanXML();
232   }
233   else if (bRun == 202){
234     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
235     kGridRunRange[1]       =  -1; // 
236     kGridDatadir           = "/alice/data/2010/LHC10b/"; 
237     kGridDataSet           = "LHC10b"; 
238     kGridRunPattern        = "%09d"; 
239     kUseKinefilter         = kFALSE;
240     kIsMC                  = kFALSE;  // is real! 
241     kUseMC                 = kFALSE; 
242     kUseAODMC              = kFALSE; 
243     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
244     kGridPassPattern       = "pass2";    kGridLocalRunList      = "fp_lhc10b_runlist_pass2.txt";    kTrainName  = Form("pwg4train_LHC10b_pass2_%s",cDate);
245
246     kGridRunsPerMaster = 1; // Physcicsselection does not support more than on run per job
247     // stich of tasks not from PWG4JetTasks
248
249     // switch off tasks with no feedback...
250     iPWG4ThreeJets    = 0; // tmp off mem leak
251     iPWG4KMeans       = 0;  // OFF no FEEDBACK
252     iPWG4Tagged       = 0; // OFF crashes on MC 
253     iPWG4CaloQA       = 0; // OFF not needed on MC   
254     iPWG4JetCorr      = 0; 
255     iPWG4JCORRAN      = 0;  // TMP OFF: Writes a Tree
256     iPWG4omega3pi     = 0; // OFF no feedback
257
258     gROOT->LoadMacro("cleanXML.C");
259     cleanXML();
260   }
261   else if (bRun == 300){
262     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
263     kGridRunRange[1]       =  -1; // 
264     kGridDatadir           = "/alice/data/2010/LHC10c/"; 
265     kGridDataSet           = "LHC10c"; 
266     kGridRunPattern        = "%09d"; 
267     kUseKinefilter         = kFALSE;
268     kIsMC                  = kFALSE;  // is real! 
269     kUseMC                 = kFALSE; 
270     kUseAODMC              = kFALSE; 
271     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
272     kGridPassPattern       = "pass1";    kGridLocalRunList      = "fp_lhc10c_runlist_900_pass1.txt";    kTrainName  = Form("pwg4train_LHC10c_900_pass1_%s",cDate);
273     
274     kGridRunsPerMaster = 1; // Physcicsselection does not support more than on run per job
275     // stich of tasks not from PWG4JetTasks
276     gROOT->LoadMacro("cleanXML.C");
277     cleanXML();
278   }
279   else if (bRun == 302){
280     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
281     kGridRunRange[1]       =  -1; // 
282     kGridDatadir           = "/alice/data/2010/LHC10c/"; 
283     kGridDataSet           = "LHC10c"; 
284     kGridRunPattern        = "%09d"; 
285     kUseKinefilter         = kFALSE;
286     kIsMC                  = kFALSE;  // is real! 
287     kUseMC                 = kFALSE; 
288     kUseAODMC              = kFALSE; 
289     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
290     kGridPassPattern       = "pass2";    kGridLocalRunList      = "fp_lhc10c_runlist_900_pass2.txt";    kTrainName  = Form("pwg4train_LHC10c_900_pass2_%s",cDate);
291
292     // switch off tasks with no feedback...
293     iPWG4ThreeJets    = 0; // tmp off mem leak
294     iPWG4KMeans       = 0;  // OFF no FEEDBACK
295     iPWG4Tagged       = 0; // OFF crashes on MC 
296     iPWG4CaloQA       = 0; // OFF not needed on MC   
297     iPWG4JetCorr      = 0; 
298     iPWG4JCORRAN      = 0;  // TMP OFF: Writes a Tree
299     iPWG4omega3pi     = 0; // OFF no feedback
300
301     
302     kGridRunsPerMaster = 1; // Physcicsselection does not support more than on run per job
303     // stich of tasks not from PWG4JetTasks
304     gROOT->LoadMacro("cleanXML.C");
305     cleanXML();
306   }
307   else if (bRun == 400){
308     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
309     kGridRunRange[1]       =  -1; // 
310     kGridDatadir           = "/alice/data/2010/LHC10c/"; 
311     kGridDataSet           = "LHC10c"; 
312     kGridRunPattern        = "%09d"; 
313     kUseKinefilter         = kFALSE;
314     kIsMC                  = kFALSE;  // is real! 
315     kUseMC                 = kFALSE; 
316     kUseAODMC              = kFALSE; 
317     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
318     kGridPassPattern       = "pass1";    kGridLocalRunList      = "fp_lhc10c_runlist_7000_pass1.txt";    kTrainName  = Form("pwg4train_LHC10c_7000_pass1_%s",cDate);
319
320     kGridRunsPerMaster = 1; // Physcicsselection does not support more than on run per job
321     // stich of tasks not from PWG4JetTasks
322     gROOT->LoadMacro("cleanXML.C");
323     cleanXML();
324   }
325   else if (bRun == 402){
326     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
327     kGridRunRange[1]       =  -1; // 
328     kGridFilesPerJob       = 10;
329     kGridDatadir           = "/alice/data/2010/LHC10c/"; 
330     kGridDataSet           = "LHC10c"; 
331     kGridRunPattern        = "%09d"; 
332     kUseKinefilter         = kFALSE;
333     kIsMC                  = kFALSE;  // is real! 
334     kUseMC                 = kFALSE; 
335     kUseAODMC              = kFALSE; 
336     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
337     kGridPassPattern       = "pass2";    kGridLocalRunList      = "fp_lhc10c_runlist_7000_pass2.txt";    kTrainName  = Form("pwg4train_LHC10c_7000_pass2_%s",cDate);
338
339     // switch off tasks with no feedback...
340     iPWG4ThreeJets    = 0; // tmp off mem leak
341     iPWG4KMeans       = 0;  // OFF no FEEDBACK
342     iPWG4Tagged       = 0; // OFF crashes on MC 
343     iPWG4CaloQA       = 0; // OFF not needed on MC   
344     iPWG4JetCorr      = 0; 
345     iPWG4JCORRAN      = 0;  // TMP OFF: Writes a Tree
346     iPWG4omega3pi     = 0; // OFF no feedback
347
348     kGridRunsPerMaster = 1; // Physcicsselection does not support more than on run per job
349     // stich of tasks not from PWG4JetTasks
350     gROOT->LoadMacro("cleanXML.C");
351     cleanXML();
352   }
353   else if (bRun == 500){
354     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
355     kGridRunRange[1]       =  -1; // 
356     kGridDatadir           = "/alice/data/2010/LHC10d/"; 
357     kGridDataSet           = "LHC10d"; 
358     kGridRunPattern        = "%09d"; 
359     kUseKinefilter         = kFALSE;
360     kIsMC                  = kFALSE;  // is real! 
361     kUseMC                 = kFALSE; 
362     kUseAODMC              = kFALSE; 
363     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
364     kGridPassPattern       = "pass1";    kGridLocalRunList      = "fp_lhc10d_runlist_7000_pass1.txt";    kTrainName  = Form("pwg4train_LHC10d_7000_pass1_%s",cDate);
365
366     kGridRunsPerMaster = 1; // Physcicsselection does not support more than on run per job
367     // stich of tasks not from PWG4JetTasks
368     gROOT->LoadMacro("cleanXML.C");
369     cleanXML();
370   }
371   else if (bRun == 502){
372     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
373     kGridRunRange[1]       =  -1; // 
374     kGridDatadir           = "/alice/data/2010/LHC10d/"; 
375     kGridDataSet           = "LHC10d"; 
376     kGridRunPattern        = "%09d"; 
377     kUseKinefilter         = kFALSE;
378     kIsMC                  = kFALSE;  // is real! 
379     kUseMC                 = kFALSE; 
380     kUseAODMC              = kFALSE; 
381
382     // switch off tasks with no feedback...
383     iPWG4ThreeJets    = 0; // tmp off mem leak
384     iPWG4KMeans       = 0;  // OFF no FEEDBACK
385     iPWG4Tagged       = 0; // OFF crashes on MC 
386     iPWG4CaloQA       = 0; // OFF not needed on MC   
387     iPWG4JetCorr      = 0; 
388     iPWG4JCORRAN      = 0;  // TMP OFF: Writes a Tree
389     iPWG4omega3pi     = 0; // OFF no feedback
390
391
392     // swtich off most tasks for Pb+Pb
393     iDIJETAN = 0; // only run on one JetFinder for the moment
394     iPWG4Fragmentation = 0; 
395     iPWG4LeadingUE = 0; 
396     iPWG4JetChem      = 0;
397     iPWG4QGSep  = 0;
398     iPWG4Minijet  = 0;
399
400     // running as light a possible 
401
402     iPWG4PtQAMC     = 1;
403     iPWG4PtSpectra   = 1;
404     iPWG4PtQATPC   = 1;
405     iPWG4JetSpectrum = 1;
406     iPWG4JetServices  = 1; // !!!!!!!!!!! 
407     iPWG4Cluster      = 1;// not 5....
408     kHighPtFilterMask = 1<<8; // 256 TPC related to SPD     
409
410     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
411     kGridPassPattern       = "pass2";    kGridLocalRunList      = "fp_lhc10d_runlist_7000_pass2.txt";    kTrainName  = Form("p4t_10d_7000_p2_%s",cDate);
412     //    kDeltaAODJetName   = "AliAOD.Jets.root"; 
413     kGridRunsPerMaster = 1; // Physcicsselection does not support more than on run per job
414     // stich of tasks not from PWG4JetTasks
415     gROOT->LoadMacro("cleanXML.C");
416     cleanXML();
417   }
418   else if (bRun == 801){
419     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
420     kGridRunRange[1]       =  -1; // 
421     kGridDatadir           = "/alice/data/2010/LHC10h/"; 
422     kGridDataSet           = "LHC10h"; 
423     kGridRunPattern        = "%09d"; 
424     kUseKinefilter         = kFALSE;
425     kIsMC                  = kFALSE;  // is real! 
426     kUseMC                 = kFALSE; 
427     kUseAODMC              = kFALSE; 
428
429     // switch off tasks with no feedback...
430     iPWG4ThreeJets    = 0; // tmp off mem leak
431     iPWG4KMeans       = 0;  // OFF no FEEDBACK
432     iPWG4Tagged       = 0; // OFF crashes on MC 
433     iPWG4CaloQA       = 0; // OFF not needed on MC   
434     iPWG4JetCorr      = 0; 
435     iPWG4JCORRAN      = 0;  // TMP OFF: Writes a Tree
436     iPWG4omega3pi     = 0; // OFF no feedback
437
438     // swtich off most tasks for Pb+Pb
439     iDIJETAN = 0; // only run on one JetFinder for the moment
440     iPWG4Fragmentation = 0; 
441
442     // running as light a possible 
443
444     iPWG4PtQAMC     = 1;
445     iPWG4PtSpectra   = 1;
446     iPWG4PtQATPC   = 1;
447     iPWG4JetSpectrum = 1;
448     iPWG4JetServices  = 1; // !!!!!!!!!!! 
449     iPWG4Cluster      = 1;// not 5....
450     kHighPtFilterMask = 1<<8; // 256 TPC related to SPD     
451
452
453     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
454     kGridPassPattern       = "pass1_4plus";    kGridLocalRunList      = "fp_lhc10h_pass1_4plus.txt";    
455     kTrainName  = Form("t_10h_1_4p_%s",cDate);
456     if(bExtra==1){
457       kGridPassPattern       = "pass1";    kGridLocalRunList      = "fp_lhc10h_pass1.txt";   
458       //      kTrainName  = Form("train_pass1_%s",cDate);
459       kTrainName  = Form("t_10h_p1_%s",cDate);
460     }
461     else if(bExtra==2){
462       kGridPassPattern       = "pass1_plusplusplus";    kGridLocalRunList      = "fp_lhc10h_pass1_3plus.txt";
463       //      kTrainName  = Form("train_LHC10h_pass1_3p_%s",cDate);      
464       kTrainName  = Form("t_10h_p1_3p_%s",cDate);
465     }
466     kSaveAOD            = 1;  
467     kDeltaAODJetName   = "AliAOD.Jets.root";kSaveAOD = 2;
468
469     if (kPluginMode.Contains("merge")){
470       kSaveAOD = 0; // 
471     }
472     kGridRunsPerMaster = 1; // Physcicsselection does not support more than on run per job
473     // stich of tasks not from PWG4JetTasks
474     //    gROOT->LoadMacro("cleanXML.C");
475     // cleanXML();
476   }
477   else if (bRun == 802){
478     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
479     kGridRunRange[1]       =  -1; // 
480     kGridDatadir           = "/alice/data/2010/LHC10h/"; 
481     kGridDataSet           = "LHC10h"; 
482     kGridExtraAliendirLevel  = Form("/%s",cDate);kGridOutdir = "output";
483     kGridRunPattern        = "%09d"; 
484     kUseKinefilter         = kFALSE;
485     kIsMC                  = kFALSE;  // is real! 
486     kUseMC                 = kFALSE; 
487     kUseAODMC              = kFALSE; 
488
489     if(iVersion==1){
490     // switch off tasks with no feedback...
491       iPWG4ThreeJets    = 0; // tmp off mem leak
492       iPWG4KMeans       = 0;  // OFF no FEEDBACK
493       iPWG4Tagged       = 0; // OFF crashes on MC 
494       iPWG4CaloQA       = 0; // OFF not needed on MC   
495       iPWG4JetCorr      = 0; 
496       iPWG4JCORRAN      = 0;  // TMP OFF: Writes a Tree
497       iPWG4omega3pi     = 0; // OFF no feedback
498       
499       // swtich off most tasks for Pb+Pb
500       iDIJETAN = 0; // only run on one JetFinder for the moment
501       iPWG4LeadingUE = 0; 
502       iPWG4JetChem      = 0;
503       iPWG4QGSep  = 0;
504       iPWG4Minijet  = 0;
505       
506       // running as light a possible 
507       
508       iPWG4PtQAMC     = 0;  // 
509       iPWG4PtQATPC   = 0;  // 
510       iPWG4PtSpectra   = 0;  //  
511       iPWG4PtTrackQA    = 0; // currently not needed 08.09.2011
512       iPWG4JetSpectrum = 1; 
513       iPWG4JetServices  = 1; // !!!!!!!!!!! 
514       iPWG4Cluster      = 1;// not 5....
515       kHighPtFilterMask = 1<<4|1<<8; // Global tracks with SPD requirment global constraitn for the rest
516       iPWG4Fragmentation = 1;
517     //
518     }// version1
519
520
521     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
522     kGridPassPattern       = "pass2";    // reset for AODs below
523
524     kGridLocalRunList      = "fp_lhc10h_pass2c.txt";    
525     if(bExtra==1)kGridLocalRunList      = "fp_lhc10h_pass2.txt";    
526     kTrainName  = Form("p4t_10h_pass2_%s",cDate);
527     if (kPluginMode.Contains("merge")){
528       //      kGridLocalRunList      = "fp_lhc10h_pass2b.txt";    
529       kGridLocalRunList      = "out_merge_100_1.txt";    
530     }
531     if(iAODanalysis)kTrainName  = Form("tAOD_10h_pass2_%s",cDate);
532
533     if(iAODanalysis==0){
534       // select what is running in the spectrum task, list of jet names is filles automatically
535       kGridFilesPerJob       = 30;
536      
537       /*
538         1: jetsAOD_UA104_B0_Filter00272_Cut01000
539         2: jetsAOD_UA104_B0_Filter00272_Cut02000
540         3: jetsAOD_UA104_B2_Filter00272_Cut01000
541         4: jetsAOD_UA104_B2_Filter00272_Cut02000
542         5: clustersAOD_KT04_B0_Filter00272_Cut00150_Skip00
543         6: clustersAOD_KT04_B0_Filter00272_Cut00150_Skip00RandomConeSkip00
544         7: clustersAOD_KT04_B0_Filter00272_Cut00150_Skip00RandomCone_random
545         8: clustersAOD_KT04_B0_Filter00272_Cut01000_Skip00
546         9: clustersAOD_KT04_B0_Filter00272_Cut01000_Skip00RandomConeSkip00
547         10: clustersAOD_KT04_B0_Filter00272_Cut01000_Skip00RandomCone_random
548         11: clustersAOD_KT04_B0_Filter00272_Cut02000_Skip00
549         12: clustersAOD_KT04_B0_Filter00272_Cut02000_Skip00RandomConeSkip00
550         13: clustersAOD_KT04_B0_Filter00272_Cut02000_Skip00RandomCone_random
551         14: clustersAOD_KT02_B0_Filter00272_Cut00150_Skip00
552         15: clustersAOD_KT02_B0_Filter00272_Cut00150_Skip00RandomConeSkip00
553         16: clustersAOD_KT02_B0_Filter00272_Cut00150_Skip00RandomCone_random
554         17: clustersAOD_ANTIKT04_B0_Filter00272_Cut00150_Skip00
555         18: clustersAOD_ANTIKT04_B0_Filter00272_Cut00150_Skip00RandomConeSkip02
556         19: clustersAOD_ANTIKT04_B0_Filter00272_Cut01000_Skip00
557         20: clustersAOD_ANTIKT04_B0_Filter00272_Cut01000_Skip00RandomConeSkip02
558         21: clustersAOD_ANTIKT04_B0_Filter00272_Cut02000_Skip00
559         22: clustersAOD_ANTIKT04_B0_Filter00272_Cut02000_Skip00RandomConeSkip02
560         23: clustersAOD_ANTIKT02_B0_Filter00272_Cut00150_Skip00
561         24: clustersAOD_ANTIKT02_B0_Filter00272_Cut00150_Skip00RandomConeSkip02
562         25: clustersAOD_KT04_B1_Filter00272_Cut00150_Skip00RandomConeSkip00
563         26: clustersAOD_KT04_B1_Filter00272_Cut00150_Skip00RandomCone_random
564         27: clustersAOD_ANTIKT04_B1_Filter00272_Cut00150_Skip00
565         28: clustersAOD_ANTIKT02_B1_Filter00272_Cut00150_Skip00
566         29: clustersAOD_KT04_B2_Filter00272_Cut00150_Skip00RandomConeSkip00
567         30: clustersAOD_KT04_B2_Filter00272_Cut00150_Skip00RandomCone_random
568         31: clustersAOD_ANTIKT04_B2_Filter00272_Cut00150_Skip00
569         32: clustersAOD_ANTIKT02_B2_Filter00272_Cut00150_Skip00
570         33: clustersAOD_KT04_B2_Filter00272_Cut01000_Skip00RandomConeSkip00
571         34: clustersAOD_KT04_B2_Filter00272_Cut01000_Skip00RandomCone_random
572         35: clustersAOD_ANTIKT04_B2_Filter00272_Cut01000_Skip00
573         36: clustersAOD_KT04_B2_Filter00272_Cut02000_Skip00RandomConeSkip00
574         37: clustersAOD_KT04_B2_Filter00272_Cut02000_Skip00RandomCone_random
575         38: clustersAOD_ANTIKT04_B2_Filter00272_Cut02000_Skip00
576       */
577       // in the first map we fill the correlations we want to plot
578       // in the jet back map we associated the branche used for background calculation
579       // to fetch the multiplicity
580
581       // UA1 
582       kJetMapSpectrum.Add(4,2);
583       kJetBackMapSpectrum.Add(4,8);
584
585       // anti kT 150 MeV
586       kJetMapSpectrum.Add(31,17);
587       kJetBackMapSpectrum.Add(31,5);
588       kJetBackMapSpectrum.Add(17,5);
589
590       // anti kT B1 150 MeV
591       kJetMapSpectrum.Add(27,17);
592       kJetBackMapSpectrum.Add(27,5);
593       kJetBackMapSpectrum.Add(17,5);
594
595       // anti kT 1000 MeV
596       kJetMapSpectrum.Add(35,19);
597       kJetBackMapSpectrum.Add(35,8);      
598       kJetBackMapSpectrum.Add(19,8);
599
600       // anti kT 2000 MeV
601       kJetMapSpectrum.Add(38,21);
602       kJetBackMapSpectrum.Add(38,11);      
603       kJetBackMapSpectrum.Add(21,11);
604
605
606       // anti kT 0.2
607       kJetMapSpectrum.Add(32,23);
608       kJetBackMapSpectrum.Add(32,5);      
609       kJetBackMapSpectrum.Add(23,5);
610
611       // random cones
612       /*
613       kJetMapSpectrum.Add(6,7);
614       kJetBackMapSpectrum.Add(6,5);
615       kJetBackMapSpectrum.Add(7,5);
616
617       kJetMapSpectrum.Add(9,10);
618       kJetBackMapSpectrum.Add(9,8);
619       kJetBackMapSpectrum.Add(10,8);
620       */
621     }
622     else if (iAODanalysis){
623       kGridFilesPerJob       = 20;
624       if(iAODanalysis==1){
625         kGridPassPattern = "pass2/AOD049";
626         iJETAN = 0;
627         iPWG4Cluster = 0;
628         //      iJETSUBTRACT = 0;
629
630
631         /* 
632            reading from AOD043 input
633            1 jetsAOD_UA104_B0_Filter00128_Cut01000 1 0x102c068d0
634            2 jetsAOD_UA104_B2_Filter00128_Cut01000 1 0x102c068d0
635            3 jetsAOD_SISCONE04_B0_Filter00128_Cut00150 1 0x102c068d0
636            4 clustersAOD_KT04_B0_Filter00128_Cut00150_Skip00 1 0x102c068d0
637            5 clustersAOD_KT04_B0_Filter00128_Cut00150_Skip00_random 1 0x102c068d0
638            6 clustersAOD_KT04_B0_Filter00128_Cut00150_Skip00RandomConeSkip00 1 0x102c068d0
639            7 clustersAOD_KT04_B0_Filter00128_Cut00150_Skip00RandomCone_random 1 0x102c068d0
640            8 clustersAOD_ANTIKT04_B0_Filter00128_Cut00150_Skip02 1 0x102c068d0
641            9 clustersAOD_ANTIKT04_B0_Filter00128_Cut00150_Skip02_random 1 0x102c068d0
642            10 clustersAOD_ANTIKT04_B0_Filter00128_Cut00150_Skip02RandomConeSkip02 1 0x102c068d0
643            11 clustersAOD_ANTIKT04_B0_Filter00128_Cut00150_Skip02RandomCone_random 1 0x102c068d0
644            12 clustersAOD_ANTIKT02_B0_Filter00128_Cut00150_Skip00 1 0x102c068d0
645            13 clustersAOD_ANTIKT02_B0_Filter00128_Cut00150_Skip00_random 1 0x102c068d0
646            14 jetsAOD_SISCONE04_B1_Filter00128_Cut00150 1 0x102c068d0
647            15 clustersAOD_ANTIKT04_B1_Filter00128_Cut00150_Skip02 1 0x102c068d0
648            16 clustersAOD_ANTIKT02_B1_Filter00128_Cut00150_Skip00 1 0x102c068d0
649         */
650
651         kJetListSpectrum.Add(new TObjString("jetsAOD_UA104_B0_Filter00128_Cut01000"));
652         kJetListSpectrum.Add(new TObjString("jetsAOD_UA104_B2_Filter00128_Cut01000"));
653         kJetListSpectrum.Add(new TObjString("jetsAOD_SISCONE04_B0_Filter00128_Cut00150"));
654         kJetListSpectrum.Add(new TObjString("clustersAOD_KT04_B0_Filter00128_Cut00150_Skip00"));
655         kJetListSpectrum.Add(new TObjString("clustersAOD_KT04_B0_Filter00128_Cut00150_Skip00_random"));
656         kJetListSpectrum.Add(new TObjString("clustersAOD_KT04_B0_Filter00128_Cut00150_Skip00RandomConeSkip00"));
657         kJetListSpectrum.Add(new TObjString("clustersAOD_KT04_B0_Filter00128_Cut00150_Skip00RandomCone_random"));
658         kJetListSpectrum.Add(new TObjString("clustersAOD_ANTIKT04_B0_Filter00128_Cut00150_Skip02"));
659         kJetListSpectrum.Add(new TObjString("clustersAOD_ANTIKT04_B0_Filter00128_Cut00150_Skip02_random"));
660         kJetListSpectrum.Add(new TObjString("clustersAOD_ANTIKT04_B0_Filter00128_Cut00150_Skip02RandomConeSkip02"));
661         kJetListSpectrum.Add(new TObjString("clustersAOD_ANTIKT04_B0_Filter00128_Cut00150_Skip02RandomCone_random"));
662         kJetListSpectrum.Add(new TObjString("clustersAOD_ANTIKT02_B0_Filter00128_Cut00150_Skip00"));
663         kJetListSpectrum.Add(new TObjString("clustersAOD_ANTIKT02_B0_Filter00128_Cut00150_Skip00_random"));
664         kJetListSpectrum.Add(new TObjString("jetsAOD_SISCONE04_B1_Filter00128_Cut00150"));
665         kJetListSpectrum.Add(new TObjString("clustersAOD_ANTIKT04_B1_Filter00128_Cut00150_Skip02"));    
666         kJetListSpectrum.Add(new TObjString("clustersAOD_ANTIKT02_B1_Filter00128_Cut00150_Skip00"));
667
668         // anti kT 150 MeV
669         kJetMapSpectrum.Add(15,8);
670         kJetBackMapSpectrum.Add(8,4);
671         kJetBackMapSpectrum.Add(15,4);
672
673         // anti kT R  = 0.2
674         kJetMapSpectrum.Add(17,12);
675         kJetBackMapSpectrum.Add(17,4);      
676         kJetBackMapSpectrum.Add(12,4);
677         
678         // random cones
679         kJetMapSpectrum.Add(6,7);
680         kJetBackMapSpectrum.Add(6,4);
681         kJetBackMapSpectrum.Add(7,4);
682         
683         kJetMapSpectrum.Add(10,11);
684         kJetBackMapSpectrum.Add(10,4);
685         kJetBackMapSpectrum.Add(11,4);
686         kDeltaAODJetNameInput = "AliAOD.Jets.root";
687         kDeltaAODJetName = "";
688         kHighPtFilterMask      = 128; // centrally produced AOD     
689       }
690       else if(iAODanalysis==2){
691         /*
692           ############# Possible jet branches ###################
693           1: jetsAOD_UA104_B0_Filter00128_Cut01000
694           2: jetsAOD_UA104_B0_Filter00128_Cut02000
695           3: jetsAOD_UA104_B2_Filter00128_Cut01000
696           4: jetsAOD_UA104_B2_Filter00128_Cut02000
697           5: clustersAOD_KT04_B0_Filter00128_Cut00150_Skip00
698           6: clustersAOD_KT04_B0_Filter00128_Cut00150_Skip00RandomConeSkip00
699           7: clustersAOD_KT04_B0_Filter00128_Cut00150_Skip00RandomCone_random
700           8: clustersAOD_KT04_B0_Filter00128_Cut02000_Skip00
701           9: clustersAOD_KT04_B0_Filter00128_Cut02000_Skip00RandomConeSkip00
702           10: clustersAOD_KT04_B0_Filter00128_Cut02000_Skip00RandomCone_random
703           11: clustersAOD_KT02_B0_Filter00128_Cut00150_Skip00
704           12: clustersAOD_ANTIKT04_B0_Filter00128_Cut00150_Skip02
705           13: clustersAOD_ANTIKT04_B0_Filter00128_Cut00150_Skip02RandomConeSkip02
706           14: clustersAOD_ANTIKT04_B0_Filter00128_Cut00150_Skip02RandomCone_random
707           15: clustersAOD_ANTIKT04_B0_Filter00128_Cut02000_Skip02
708           16: clustersAOD_ANTIKT02_B0_Filter00128_Cut00150_Skip00
709           17: clustersAOD_KT04_B1_Filter00128_Cut00150_Skip00Skip00RandomConeSkip00
710           18: clustersAOD_KT04_B1_Filter00128_Cut00150_Skip00Skip00RandomCone_random
711           19: clustersAOD_ANTIKT04_B1_Filter00128_Cut00150_Skip02
712           20: clustersAOD_ANTIKT04_B1_Filter00128_Cut00150_Skip02Skip02RandomConeSkip02
713           21: clustersAOD_ANTIKT04_B1_Filter00128_Cut00150_Skip02Skip02RandomCone_random
714           22: clustersAOD_ANTIKT02_B1_Filter00128_Cut00150_Skip00
715           23: clustersAOD_KT04_B2_Filter00128_Cut00150_Skip00Skip00RandomConeSkip00
716           24: clustersAOD_KT04_B2_Filter00128_Cut00150_Skip00Skip00RandomCone_random
717           25: clustersAOD_ANTIKT04_B2_Filter00128_Cut00150_Skip02
718           26: clustersAOD_ANTIKT04_B2_Filter00128_Cut00150_Skip02Skip02RandomConeSkip02
719           27: clustersAOD_ANTIKT04_B2_Filter00128_Cut00150_Skip02Skip02RandomCone_random
720           28: clustersAOD_ANTIKT02_B2_Filter00128_Cut00150_Skip00
721           29: clustersAOD_KT04_B2_Filter00128_Cut02000_Skip00Skip00RandomConeSkip00
722           30: clustersAOD_KT04_B2_Filter00128_Cut02000_Skip00Skip00RandomCone_random
723           31: clustersAOD_ANTIKT04_B2_Filter00128_Cut02000_Skip02
724          */
725         
726         // anti kT 150 MeV
727         kJetMapSpectrum.Add(25,12);
728         kJetBackMapSpectrum.Add(25,5);
729         kJetBackMapSpectrum.Add(12,5);
730
731         // anti kT R  = 0.2
732         kJetMapSpectrum.Add(28,16);
733         kJetBackMapSpectrum.Add(28,5);      
734         kJetBackMapSpectrum.Add(16,5);
735
736         // anti kT 2 GeV
737         kJetMapSpectrum.Add(31,15);
738         kJetBackMapSpectrum.Add(31,8);      
739         kJetBackMapSpectrum.Add(15,8);
740
741         
742         // random cones
743         kJetMapSpectrum.Add(9,10);
744         kJetBackMapSpectrum.Add(10,5);
745         kJetBackMapSpectrum.Add(9,5);
746         
747         kJetMapSpectrum.Add(13,14);
748         kJetBackMapSpectrum.Add(14,5);
749         kJetBackMapSpectrum.Add(13,5);
750         kDeltaAODJetNameInput = "";
751
752
753         kDeltaAODJetName   = "AliAOD.Jets.root";kSaveAOD = 2;
754         kHighPtFilterMask      = 128; // centrally produced AOD     
755         iPWG4Fragmentation = 0; // off for a pass 
756
757         
758       }
759     }
760     if (kPluginMode.Contains("merge")){
761       kSaveAOD = 0; // 
762     }
763     kGridRunsPerMaster = 1; // Physcicsselection does not support more than on run per job
764     // stich of tasks not from PWG4JetTasks
765     //    gROOT->LoadMacro("cleanXML.C");
766     // cleanXML();
767   }
768   else if (bRun == 812){
769     iRunFlag = 1108;
770     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
771     kGridRunRange[1]       =  -1; // 
772     kGridDatadir           = "/alice/data/2011/LHC11h_2/"; 
773     kGridDataSet           = "LHC11h_2"; 
774     kGridExtraAliendirLevel  = Form("/%s",cDate);kGridOutdir = "output";
775     kGridRunPattern        = "%09d"; 
776     kUseKinefilter         = kFALSE;
777     kIsMC                  = kFALSE;  // is real! 
778     kUseMC                 = kFALSE; 
779     kUseAODMC              = kFALSE; 
780
781     if(iVersion==1){
782     // switch off tasks with no feedback...
783       iPWG4ThreeJets    = 0; // tmp off mem leak
784       iPWG4KMeans       = 0;  // OFF no FEEDBACK
785       iPWG4Tagged       = 0; // OFF crashes on MC 
786       iPWG4CaloQA       = 0; // OFF not needed on MC   
787       iPWG4JetCorr      = 0; 
788       iPWG4JCORRAN      = 0;  // TMP OFF: Writes a Tree
789       iPWG4omega3pi     = 0; // OFF no feedback
790       
791       // swtich off most tasks for Pb+Pb
792       iDIJETAN = 0; // only run on one JetFinder for the moment
793       iPWG4LeadingUE = 0; 
794       iPWG4JetChem      = 0;
795       iPWG4QGSep  = 0;
796       iPWG4Minijet  = 0;
797       
798       // running as light a possible 
799       
800       iPWG4PtQAMC     = 0;  // 
801       iPWG4PtQATPC   = 0;  // 
802       iPWG4PtSpectra   = 0;  //  
803       iPWG4PtTrackQA    = 0; // currently not needed 08.09.2011
804       iPWG4JetSpectrum = 1; 
805       iPWG4JetServices  = 1; // !!!!!!!!!!! 
806       iPWG4Cluster      = 1;// not 5....
807       kHighPtFilterMask = 1<<4|1<<8; // Global tracks with SPD requirment global constraitn for the rest
808       iPWG4Fragmentation = 1;
809     //
810     }// version1
811
812
813     kJetMapSpectrum.Add(25,17);
814     kJetBackMapSpectrum.Add(25,5);
815     kJetBackMapSpectrum.Add(17,5);
816
817         
818     // anti kT 150 MeV
819     /*
820     kJetMapSpectrum.Add(25,12);
821     kJetBackMapSpectrum.Add(25,5);
822     kJetBackMapSpectrum.Add(12,5);
823     
824     // anti kT R  = 0.2
825     kJetMapSpectrum.Add(28,16);
826     kJetBackMapSpectrum.Add(28,5);      
827     kJetBackMapSpectrum.Add(16,5);
828     
829     // anti kT 2 GeV
830     kJetMapSpectrum.Add(31,15);
831     kJetBackMapSpectrum.Add(31,8);      
832     kJetBackMapSpectrum.Add(15,8);
833     
834     
835     // random cones
836     kJetMapSpectrum.Add(9,10);
837     kJetBackMapSpectrum.Add(10,5);
838     kJetBackMapSpectrum.Add(9,5);
839     
840     kJetMapSpectrum.Add(13,14);
841     kJetBackMapSpectrum.Add(14,5);
842     kJetBackMapSpectrum.Add(13,5);
843     */ 
844
845     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
846     kGridPassPattern       = "pass2";    // reset for AODs below
847
848     kGridLocalRunList      = "fp_lhc11h_pass2.txt";    
849     kTrainName  = Form("p4t_11h_pass2_%s",cDate);
850     if (kPluginMode.Contains("merge")){
851       //      kGridLocalRunList      = "fp_lhc10h_pass2b.txt";    
852       kGridLocalRunList      = "out_merge_100_1.txt";    
853     }
854     if (kPluginMode.Contains("merge")){
855       kSaveAOD = 0; // 
856     }
857     kGridRunsPerMaster = 1; // Physcicsselection does not support more than on run per job
858     // stich of tasks not from PWG4JetTasks
859     //    gROOT->LoadMacro("cleanXML.C");
860     // cleanXML();
861   }
862
863   else if (bRun == 1012){
864     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
865     kGridRunRange[1]       =  -1; // 
866     kGridDatadir           = "/alice/sim/LHC10a12/"; 
867     kGridDataSet           = "LHC10a12"; 
868     kGridRunPattern        = "%06d"; 
869     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
870     kGridPassPattern       = "";    kGridLocalRunList      = "fp_lhc10a12.txt";    kTrainName  = Form("pwg4train_LHC10a12_%s",cDate);
871     kGridRunsPerMaster     = 1; // Physcicsselection does not support more than on run per job
872     kGridFilesPerJob       = 250; // only few events in a sim file
873     // stich of tasks not from PWG4JetTasks
874     gROOT->LoadMacro("cleanXML.C");
875     cleanXML();
876   }
877   else if (bRun == 1014){
878     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
879     kGridRunRange[1]       =  -1; // 
880     kGridDatadir           = "/alice/sim/LHC10a14/"; 
881     kGridDataSet           = "LHC10a14"; 
882     kGridRunPattern        = "%06d"; 
883     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
884     kGridPassPattern       = "";    kGridLocalRunList      = "fp_lhc10a14.txt";    kTrainName  = Form("pwg4train_LHC10a14_%s",cDate);
885     kGridRunsPerMaster     = 1; // Physcicsselection does not support more than on run per job
886     kGridFilesPerJob       = 250; // only few events in a sim file
887     // stich of tasks not from PWG4JetTasks
888     gROOT->LoadMacro("cleanXML.C");
889     cleanXML();
890   }
891   else if (bRun == 2001){
892     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
893     kGridRunRange[1]       =  -1; // 
894     kGridDatadir           = "/alice/sim/LHC10b1/"; 
895     kGridDataSet           = "LHC10b1"; 
896     kGridRunPattern        = "%06d"; 
897     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
898     kGridPassPattern       = "";    kGridLocalRunList      = "fp_lhc10b1.txt";    kTrainName  = Form("pwg4train_LHC10b1_%s",cDate);
899     kGridRunsPerMaster     = 1; // Physcicsselection does not support more than on run per job
900     kGridFilesPerJob       = 250; // only few events in a sim file
901     // stich of tasks not from PWG4JetTasks
902     gROOT->LoadMacro("cleanXML.C");
903     cleanXML();
904   }
905   else if (bRun == 2002){
906     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
907     kGridRunRange[1]       =  -1; // 
908     kGridDatadir           = "/alice/sim/LHC10b2/"; 
909     kGridDataSet           = "LHC10b2"; 
910     kGridRunPattern        = "%06d"; 
911     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
912     kGridPassPattern       = "";    kGridLocalRunList      = "fp_lhc10b2.txt";    kTrainName  = Form("pwg4train_LHC10b2_%s",cDate);
913     kGridRunsPerMaster     = 1; // Physcicsselection does not support more than on run per job
914     kGridFilesPerJob       = 250; // only few events in a sim file
915     // stich of tasks not from PWG4JetTasks
916     gROOT->LoadMacro("cleanXML.C");
917     cleanXML();
918   }
919   else if (bRun == 4001){
920     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
921     kGridRunRange[1]       =  -1; // 
922     kGridDatadir           = "/alice/sim/LHC10d1/"; 
923     kGridDataSet           = "LHC10d1"; 
924     kGridRunPattern        = "%06d"; 
925     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
926     kGridPassPattern       = "";    kGridLocalRunList      = "fp_lhc10d1.txt";    kTrainName  = Form("pwg4train_LHC10d1_%s",cDate);
927     kGridRunsPerMaster     = 1; // Physcicsselection does not support more than on run per job
928     kGridFilesPerJob       = 50; // only few events in a sim file
929     // stich of tasks not from PWG4JetTasks
930     gROOT->LoadMacro("cleanXML.C");
931     cleanXML();
932   }
933   else if (bRun == 4002){
934     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
935     kGridRunRange[1]       =  -1; // 
936     kGridDatadir           = "/alice/sim/LHC10d2/"; 
937     kGridDataSet           = "LHC10d2"; 
938     kGridRunPattern        = "%06d"; 
939     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
940     kGridPassPattern       = "";    kGridLocalRunList      = "fp_lhc10d2.txt";    kTrainName  = Form("pwg4train_LHC10d2_%s",cDate);
941     kGridRunsPerMaster     = 1; // Physcicsselection does not support more than on run per job
942     kGridFilesPerJob       = 100; // only few events in a sim file
943     // stich of tasks not from PWG4JetTasks
944     gROOT->LoadMacro("cleanXML.C");
945     cleanXML();
946   }
947   else if (bRun == 4004){
948     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
949     kGridRunRange[1]       =  -1; // 
950     kGridDatadir           = "/alice/sim/LHC10d4/"; 
951     kGridDataSet           = "LHC10d4"; 
952     kGridRunPattern        = "%06d"; 
953     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
954     kGridPassPattern       = "";    kGridLocalRunList      = "fp_lhc10d4.txt";    kTrainName  = Form("pwg4train_LHC10d4_%s",cDate);
955     kGridRunsPerMaster     = 1; // Physcicsselection does not support more than on run per job
956     kGridFilesPerJob       = 100; // only few events in a sim file
957     // stich of tasks not from PWG4JetTasks
958     iPWG4UE = 0; //
959     iPWG4ThreeJets    = 0; // tmp off mem leak
960     iPWG4KMeans       = 0;  // OFF no FEEDBACK
961     iPWG4Tagged       = 0; // OFF crashes on MC 
962     iPWG4CaloQA       = 0; // OFF not needed on MC   
963     iPWG4JetCorr      = 0; 
964     iPWG4JCORRAN      = 0;  // TMP OFF: Writes a Tree
965     iPWG4CaloConv    = 0;  // 25.08. off: Output size 03.09 crashes 
966     iPWG4omega3pi     = 0; // OFF no feedback
967     gROOT->LoadMacro("cleanXML.C");
968     cleanXML();
969   }
970   else if(bRun==5014){
971     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
972     kGridRunRange[1]       =  -1; // 
973     kGridDatadir           = "/alice/sim/LHC10e14/120823/"; 
974     kGridRunPattern        = "%d"; 
975     kGridDataSet           = "LHC10e14"; 
976     kGridLocalRunList      = "fp_lhc10e14.txt";   kTrainName  = Form("pwg4train_LHC10e14_%s",cDate);
977     kGridPassPattern       = "";
978
979     iPWG4UE = 0; // off not needed on Jet+Jet
980     iPWG4LeadingUE = 0; // off not needed on Jet +Jet
981     iPWG4CorrectionsUE = 0; // off not needed on Jet +Jet
982     iPWG4Cosmics      = 0; // off not needed on Jet +Jet MC
983     iPWG4JetChem      = 0; // OFF no FEEDBACK
984     iPWG4ThreeJets    = 0; // tmp off mem leak
985     iPWG4KMeans       = 0;  // OFF no FEEDBACK
986     iPWG4Tagged       = 0; // OFF crashes on MC 
987     iPWG4CaloQA       = 0; // OFF not needed on MC   
988     iPWG4JetCorr      = 0; 
989     iPWG4GammaConv    = 0; // TMP OFF cuts not updated not so important for jet+jet
990     iPWG4JCORRAN      = 0;  // TMP OFF: Writes a Tree
991     iPWG4CaloConv    = 0;  // 25.08. off: Output size 03.09 crashes 
992     iPWG4omega3pi     = 0; // OFF no feedback
993     iPWGPPQASym = 0; // excluded since also on QA train         
994     iPWG4Minijet  = 0;
995       iPWG4ThreeJets    = 0; // tmp off mem leak
996       iPWG4KMeans       = 0;  // OFF no FEEDBACK
997       iPWG4Tagged       = 0; // OFF crashes on MC 
998       iPWG4CaloQA       = 0; // OFF not needed on MC   
999       iPWG4JetCorr      = 0; 
1000       iPWG4JCORRAN      = 0;  // TMP OFF: Writes a Tree
1001       iPWG4omega3pi     = 0; // OFF no feedback
1002       
1003       // swtich off most tasks for Pb+Pb
1004       iDIJETAN = 0; // only run on one JetFinder for the moment
1005
1006       
1007       // running as light a possible 
1008       
1009       iPWG4PtQAMC     = 0;  // 
1010       iPWG4PtQATPC   = 0;  // 
1011       iPWG4PtSpectra   = 0;  //  
1012       iPWG4PtTrackQA    = 0; // currently not needed 08.09.2011
1013       iPWG4JetSpectrum = 1; 
1014       iPWG4JetServices  = 1; // !!!!!!!!!!! 
1015       iPWG4Cluster      = 1;// not 5....
1016       kHighPtFilterMask = 1<<4|1<<8; // Global tracks with SPD requirment global constraitn for the rest
1017       iPWG4Fragmentation = 1;
1018     //
1019
1020
1021     kDeltaAODJetName   = ""; // for OTF we do not need to write a delta/saves some extension gymnastics in the tasks       
1022
1023     kUseKinefilter         = kTRUE;
1024     kIsMC                  = kTRUE;  
1025     kUseTR                 = kTRUE; 
1026     kUseMC                 = kTRUE; 
1027     kUseAODMC              = kTRUE; 
1028     //    gSystem->Exec("cp wn_lhc10b.xml wn.xml");
1029     kGridFilesPerJob       = 50; // only few events in a sim file
1030     gROOT->LoadMacro("cleanXML.C");
1031     cleanXML();
1032   }
1033   else if (bRun == 6006){
1034     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
1035     kGridRunRange[1]       =  -1; // 
1036     kGridDatadir           = "/alice/sim/LHC10f6/"; 
1037     kGridDataSet           = "LHC10f6"; 
1038     kGridRunPattern        = "%06d"; 
1039     kUseKinefilter         = kTRUE;
1040     kIsMC                  = kTRUE;  
1041     kUseMC                 = kTRUE; 
1042     kUseAODMC              = kTRUE; 
1043     kGridFilesPerJob       = 100;
1044     // switch off tasks with no feedback...
1045     iPWG4ThreeJets    = 0; // tmp off mem leak
1046     iPWG4KMeans       = 0;  // OFF no FEEDBACK
1047     iPWG4Tagged       = 0; // OFF crashes on MC 
1048     iPWG4CaloQA       = 0; // OFF not needed on MC   
1049     iPWG4JetCorr      = 0; 
1050     iPWG4JCORRAN      = 0;  // TMP OFF: Writes a Tree
1051     iPWG4omega3pi     = 0; // OFF no feedback
1052
1053     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
1054     kGridPassPattern       = "";    kGridLocalRunList      = "fp_lhc10f6.txt";    kTrainName  = Form("pwg4train_LHC10f6_%s",cDate);
1055     kGridRunsPerMaster = 1; // Physcicsselection does not support more than on run per job
1056     // stich of tasks not from PWG4JetTasks
1057     //    gROOT->LoadMacro("cleanXML.C");
1058     //    cleanXML();
1059   }
1060   else if (bRun == 8012){
1061     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
1062     kGridRunRange[1]       =  -1; // 
1063     kGridDatadir           = "/alice/sim/LHC10h12/"; 
1064     kGridDataSet           = "LHC10h12"; 
1065     kGridRunPattern        = "%06d"; 
1066     kUseKinefilter         = kTRUE;
1067     kIsMC                  = kTRUE;  
1068     kUseMC                 = kTRUE; 
1069     kUseAODMC              = kTRUE; 
1070     kGridFilesPerJob       = 50;
1071     // switch off tasks with no feedback...
1072
1073
1074     // switch off tasks with no feedback...
1075     iPWG4ThreeJets    = 0; // tmp off mem leak
1076     iPWG4KMeans       = 0;  // OFF no FEEDBACK
1077     iPWG4Tagged       = 0; // OFF crashes on MC 
1078     iPWG4CaloQA       = 0; // OFF not needed on MC   
1079     iPWG4JetCorr      = 0; 
1080     iPWG4JCORRAN      = 0;  // TMP OFF: Writes a Tree
1081     iPWG4omega3pi     = 0; // OFF no feedback
1082
1083
1084     // swtich off most tasks for Pb+Pb
1085     iDIJETAN = 0; // only run on one JetFinder for the moment
1086     iPWG4Fragmentation = 0; 
1087     iPWG4LeadingUE = 0; 
1088     iPWG4JetChem      = 0;
1089     iPWG4QGSep  = 0;
1090     iPWG4Minijet  = 0;
1091
1092     // running as light a possible 
1093
1094     iPWG4PtQAMC     = 0;
1095     iPWG4PtSpectra   = 0;
1096     iPWG4PtQATPC   = 0;
1097     iPWG4JetSpectrum = 0;
1098     iPWG4JetServices  = 0; // !!!!!!!!!!! 
1099     iPWG4Cluster      = 1;// not 5....
1100     kHighPtFilterMask = 256;     
1101
1102     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
1103     kGridPassPattern       = "";    kGridLocalRunList      = "fp_lhc10h12.txt";    kTrainName  = Form("pwg4train_LHC10h12_%s",cDate);
1104     kGridRunsPerMaster = 1; // Physcicsselection does not support more than on run per job
1105     // stich of tasks not from PWG4JetTasks
1106     gROOT->LoadMacro("cleanXML.C");
1107     cleanXML();
1108   }
1109   else if (bRun == 8102){
1110     kGridRunRange[0]       =  0;  // 0 is a bad number :(, needs a manual commit in alien...
1111     kGridRunRange[1]       =  -1; // 
1112
1113
1114     char a;
1115     if(bExtra<10)a = bExtra+97;
1116
1117     kGridDatadir           = Form("/alice/sim/LHC11a2%c/",a); 
1118     kGridDataSet           = Form("LHC11a2%c/",a); 
1119     kGridRunPattern        = "%06d"; 
1120     kUseKinefilter         = kTRUE;
1121     kIsMC                  = kTRUE;  
1122     kUseMC                 = kTRUE; 
1123     kUseAODMC              = kTRUE; 
1124     kGridFilesPerJob       = 50;
1125     // switch off tasks with no feedback...
1126
1127
1128     // switch off tasks with no feedback...
1129     iPWG4ThreeJets    = 0; // tmp off mem leak
1130     iPWG4KMeans       = 0;  // OFF no FEEDBACK
1131     iPWG4Tagged       = 0; // OFF crashes on MC 
1132     iPWG4CaloQA       = 0; // OFF not needed on MC   
1133     iPWG4JetCorr      = 0; 
1134     iPWG4JCORRAN      = 0;  // TMP OFF: Writes a Tree
1135     iPWG4omega3pi     = 0; // OFF no feedback
1136
1137
1138     // swtich off most tasks for Pb+Pb
1139     iDIJETAN = 0; // only run on one JetFinder for the moment
1140     iPWG4Fragmentation = 0; 
1141     iPWG4LeadingUE = 0; 
1142     iPWG4JetChem      = 0;
1143     iPWG4QGSep  = 0;
1144     iPWG4Minijet  = 0;
1145
1146     // running as light a possible 
1147     //    iJETSUBTRACT = 0; // no subtraction
1148
1149
1150     iPWG4PtQAMC     = 1;
1151     iPWG4PtSpectra   = 1;
1152     iPWG4PtQATPC   = 1;
1153     iPWG4JetSpectrum = 1;
1154     iPWG4JetServices  = 1; // !!!!!!!!!!! 
1155     iPWG4Cluster      = 1;// not 5....
1156     kHighPtFilterMask = 1<<4|1<<8;     
1157
1158
1159     kGridFilesPerJob       = 100;
1160     /*
1161 ############# Possible jet branches ###################
1162   1: jetsAOD_UA104_B0_Filter00272_Cut01000
1163       2: jetsAOD_UA104_B0_Filter00272_Cut02000
1164       3: jetsAODMC_UA104_B0_Filter00272_Cut01000
1165       4: jetsAODMC2_UA104_B0_Filter00272_Cut01000
1166       5: clustersAOD_KT06_B0_Filter00272_Cut00150_Skip00
1167       6: clustersAOD_KT04_B0_Filter00272_Cut00150_Skip00
1168       7: clustersAOD_ANTIKT04_B0_Filter00272_Cut00150_Skip02
1169       8: clustersAOD_ANTIKT04_B0_Filter00272_Cut00150_Skip02RandomConeSkip02
1170       9: clustersAOD_ANTIKT04_B0_Filter00272_Cut00150_Skip02RandomCone_random
1171       10: clustersAOD_ANTIKT04_B0_Filter00272_Cut02000_Skip02
1172       11: clustersAOD_ANTIKT02_B0_Filter00272_Cut00150_Skip00
1173       12: clustersAODMC_KT06_B0_Filter00272_Cut00150_Skip00
1174       13: clustersAODMC2_KT06_B0_Filter00272_Cut00150_Skip00
1175       14: clustersAODMC_ANTIKT04_B0_Filter00272_Cut00150_Skip00
1176       15: clustersAODMC2_ANTIKT04_B0_Filter00272_Cut00150_Skip00
1177 */
1178     // CLEAN XML FILES LOCALLY AND ON ALIEN WHEN STARTING A NEW PASS!
1179     kGridPassPattern       = "";    kGridLocalRunList      = "fp_runlist_lhc11a2.txt";    kTrainName  = Form("pwg4train_LHC11a2%c_%s",a,cDate);
1180     kGridRunsPerMaster = 1; // Physcicsselection does not support more than on run per job
1181     kGridFilesPerJob       = 100;
1182     // stich of tasks not from PWG4JetTasks
1183     gROOT->LoadMacro("cleanXML.C");
1184     cleanXML();
1185   }
1186
1187
1188
1189   if(ckbConfig){
1190     // switch off all but my analyses
1191     iPWG4KMeans     = 0;
1192     iPWGPPQASym = 0;
1193     iPWG4UE = 0;
1194     iPWG4PtQAMC        = 0;
1195     iPWG4PtSpectra     = 0;
1196     iPWG4PtQATPC        = 0;
1197     iPWG4ThreeJets        = 0;
1198     iPWG4KMeans     = 0;
1199     iPWG4Tagged    = 0; 
1200     kDeltaAODJetName   = ""; // for OTF we do not need to write a delta/saves some extension gymnastics in the tasks       
1201     kUseDebug = kFALSE;
1202     kPluginAliRootVersion    = ""; 
1203     kGridFilesPerJob       = 60;
1204     kTrainName             = Form("%s_ckb",kTrainName.Data());
1205   }
1206
1207   if(debugConfig){
1208     // debug mode 
1209     //    kUsePAR                = kFALSE; // cannot patch the macro for local test, need to laod FASTjet libs before loading FASTJETA.so
1210     //    kUseCPAR               = kFALSE;
1211     kUseSysInfo = 100;
1212     kUseDebug = kTRUE;
1213     kGridLocalRunList      = "fp_runlist_pass4_debug.txt";
1214     kTrainName             = Form("pwg4train_LHC09d_debug",cDate);
1215     
1216     // kPluginExecutableCommand = "root -b -q ";
1217     kPluginExecutableCommand = "cat wn.xml; echo \"Root.Stacktrace:         yes\" > .rootrc; root -b -q ";
1218     //    kPluginExecutableCommand = "echo \"run -b -q  pwg4train_LHC09d_debug.C\" > gdb.cmd; echo where >> gdb.cmd; echo quit >> gdb.cmd; echo y >> gdb.cmd; gdb -x gdb.cmd -batch root.exe";
1219   }
1220
1221   if (kPluginMode.Contains("test")){
1222     kJetTriggerPtCut = 0.01; 
1223     if(kAnalysisMode.Contains("grid")){
1224       //      kPluginExecutableCommand = "source ~/setup_root.txt; alienroot -b -q";      
1225       kPluginExecutableCommand = "root -b -q";      
1226       //      kPluginExecutableCommand = "valgrind --tool=memcheck --error-limit=no --max-stackframe=3060888 --suppressions=$ROOTSYS/etc/valgrind-root.supp --leak-check=full --num-callers=15 --log-file=valgrind_memcheck.log root.exe -b -q";
1227       //      kPluginExecutableCommand = "export ALICE_ROOT=./ROOTFILES/;" + kPluginExecutableCommand; 
1228       kPluginExecutableCommand = kPluginExecutableCommand; 
1229       kUseSysInfo = 1;
1230       kUseDebug = kTRUE;
1231       if(bRun==802){
1232         kGridLocalRunList      = "fp_lhc10h_anchor.txt";
1233       }
1234       kTrainName             = Form("pwg4train_test");
1235       if(iAODanalysis)kNumberOfEvents     = 500;
1236     }
1237     else{
1238       // local
1239       if(iAODanalysis)kNumberOfEvents     = 2000;
1240       kUseSysInfo = 1;
1241       kUseDebug = kTRUE;
1242       kTrainName             = Form("pwg4train_test_local");
1243       kLocalDataList = "runlists/all/local_esd_lhc10h.txt";
1244       kUsePAR              = kFALSE; // cannot patch the macro for local test, need to laod FASTjet libs before loading FASTJETA.so
1245       kUseCPAR            = kFALSE;
1246       if(bRun==802){
1247         kLocalDataList = "runlists/all/local_esd_lhc10h.txt";
1248         if(iAODanalysis)          kLocalDataList = "local_aod_lhc10h.txt";
1249       }
1250       else if (bRun == 5014){
1251         kLocalDataList = "local_esd_lhc10e14.txt";
1252       }
1253       //        iPWG4PtTrackQA    = 0;
1254       //        iPWG4PtQAMC       = 0;
1255       //        iPWG4PtSpectra    = 0;
1256       //        iPWG4PtQATPC      = 0;
1257       //        iPWG4PtTrackQA    = 0;
1258       //        iPWG4Cluster      = 0;
1259       kUseCPAR            = kFALSE;
1260       kUsePAR            = kFALSE;
1261       //      kNumberOfEvents     = 70;
1262       // all OFF
1263     }
1264   }
1265   if(kPluginAliRootVersion.Length()==0){
1266     //    kPluginExecutableCommand = "export ALICE_ROOT=./ROOTFILES/;" + kPluginExecutableCommand; 
1267     kPluginExecutableCommand = kPluginExecutableCommand; 
1268   } 
1269
1270   if (kPluginMode.Contains("merge")){
1271     // swtich of task where macros changed in the meantime
1272   }
1273
1274
1275 }
1276