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