1 AliAnalysisGrid* CreateAlienHandler() {
2 // Check if user has a valid token, otherwise make one. This has limitations.
3 // One can always follow the standard procedure of calling alien-token-init then
4 // source /tmp/gclient_env_$UID in the current shell.
5 AliAnalysisAlien *plugin = new AliAnalysisAlien();
7 // Set the run mode (can be "full", "test", "offline", "submit" or "terminate")
8 //plugin->SetRunMode("test");
9 //plugin->SetRunMode("offline");
10 //plugin->SetRunMode("submit");
11 plugin->SetRunMode("full");
12 //plugin->SetRunMode("terminate");
13 plugin->SetNtestFiles(3); // Relevant only for run mode "test"
15 // Set versions of used packages
16 plugin->SetAPIVersion("V1.1x");
17 plugin->SetROOTVersion("v5-27-06b");
18 plugin->SetAliROOTVersion("v4-21-12-AN");
20 // Declare input data to be processed - can be done in two ways:
21 // METHOD 1: Create automatically XML collections using alien 'find' command.
22 // ============================================================================
23 // Example 1: MC production (set in macro runFlowTask.C: DATA = kFALSE)
24 //plugin->SetGridDataDir("/alice/sim/LHC10d4");
25 //plugin->SetDataPattern("*AliESDs.root"); // The default data pattern, other may be "*tag.root", "*ESD.tag.root", etc
26 //plugin->AddRunNumber(119844); // Alternatively use e.g. plugin->SetRunRange(105044,106044); to add more runs in one go
27 //plugin->SetOutputToRunNo();
28 // ============================================================================
29 // Example 2: Real data (set in macro runFlowTask.C: DATA = kTRUE, MCEP = kFALSE)
30 plugin->SetGridDataDir("/alice/data/2010/LHC10h");
31 plugin->SetDataPattern("*ESDs/pass1_4plus/*ESDs.root");
32 plugin->SetRunPrefix("000"); // IMPORTANT!
33 plugin->AddRunNumber(137161);
34 plugin->AddRunNumber(137431);
35 plugin->AddRunNumber(137549);
36 plugin->AddRunNumber(137595);
37 plugin->AddRunNumber(137638);
38 plugin->AddRunNumber(137639);
39 plugin->AddRunNumber(137693);
40 // plugin->AddRunNumber(119844); // Alternatively use e.g. plugin->SetRunRange(104044,106044); to add more runs in one go
41 plugin->SetOutputToRunNo();
43 // Define alien work directory where all files will be copied. Relative to alien $HOME.
44 plugin->SetGridWorkingDir("Fluctuations/PbPb/2.76TeV/LHC10h/Pass1_4Plus/Systematics/Centrality/TPC/TPCOnly");
45 // Declare alien output directory. Relative to working directory.
46 plugin->SetGridOutputDir("output"); // In this case will be $HOME/work/output
47 // Declare the analysis source files names separated by blancs. To be compiled runtime
48 // using ACLiC on the worker nodes.
49 plugin->SetAnalysisSource("AliEbyEFluctuationAnalysisTask.cxx");
50 // Declare all libraries (other than the default ones for the framework. These will be
51 // loaded by the generated analysis macro. Add all extra files (task .cxx/.h) here.
52 plugin->SetAdditionalLibs("AliEbyEFluctuationAnalysisTask.h AliEbyEFluctuationAnalysisTask.cxx");
54 // Do not specify your outputs by hand anymore:
55 plugin->SetDefaultOutputs(kTRUE);
56 // Optionally set a name for the generated analysis macro (default MyAnalysis.C)
57 plugin->SetAnalysisMacro("fluctuationsAnalysis.C");
58 // Optionally set maximum number of input files/subjob (default 100, put 0 to ignore)
59 plugin->SetSplitMaxInputFileNumber(100);
60 // Optionally set number of runs per masterjob:
61 plugin->SetNrunsPerMaster(7);
63 // Optionally set time to live (default 30000 sec)
64 plugin->SetTTL(30000);
65 // Optionally set input format (default xml-single)
66 plugin->SetInputFormat("xml-single");
67 // Optionally modify the name of the generated JDL (default analysis.jdl)
68 plugin->SetJDLName("TaskFluctuations.jdl");
69 // Optionally modify job price (default 1)
71 // Optionally modify split mode (default 'se')
72 plugin->SetSplitMode("se");
75 plugin->SetMergeViaJDL(kTRUE);