1 AliAnalysisGrid* CreateAlienHandlerCaloEtSim(TString outputDir, TString outputName, const char * pluginRunMode)
3 // Check if user has a valid token, otherwise make one. This has limitations.
4 // One can always follow the standard procedure of calling alien-token-init then
5 // source /tmp/gclient_env_$UID in the current shell.
6 if (!AliAnalysisGrid::CreateToken()) return NULL;
7 AliAnalysisAlien *plugin = new AliAnalysisAlien();
9 // Overwrite all generated files, datasets and output results from a previous session
10 plugin->SetOverwriteMode();
11 // Set the run mode (can be "full", "test", "offline", "submit" or "terminate")
12 // plugin->SetRunMode("full"); // VERY IMPORTANT - DECRIBED BELOW
13 // plugin->SetRunMode("test"); // VERY IMPORTANT - DECRIBED BELOW
14 plugin->SetRunMode(pluginRunMode); // VERY IMPORTANT - DECRIBED BELOW
16 // Set versions of used packages
17 plugin->SetAPIVersion("V1.1x");
18 plugin->SetROOTVersion("v5-27-05");
19 plugin->SetAliROOTVersion("v4-20-08-AN");
20 // Declare input data to be processed.
22 // Method 1: Create automatically XML collections using alien 'find' command.
23 // Define production directory LFN
24 // plugin->SetGridDataDir("/alice/sim/LHC10a18");
25 // Set data search pattern
26 // plugin->SetDataPattern("*ESDs.root"); // simulated, tags not used
27 // plugin->SetDataPattern("*ESDs/pass4/*ESDs.root"); // real data check reco pass and data base directory
28 // plugin->SetRunPrefix("000"); // real data
29 // plugin->SetDataPattern("*tag.root"); // Use ESD tags (same applies for AOD's)
30 // ...then add run numbers to be considered
31 // plugin->AddRunNumber(125020); // simulated
32 // plugin->AddRunNumber(104065); // real data
34 // Method 2: Declare existing data files (raw collections, xml collections, root file)
35 // If no path mentioned data is supposed to be in the work directory (see SetGridWorkingDir())
36 // XML collections added via this method can be combined with the first method if
37 // the content is compatible (using or not tags)
38 plugin->AddDataFile("tag.xml");
39 // file generated with: find -x tag /alice/sim/LHC10d1/117222/* AliESDs.root > tag.xml
41 // Define alien work directory where all files will be copied. Relative to alien $HOME.
42 plugin->SetGridWorkingDir(outputDir.Data());
43 // Declare alien output directory. Relative to working directory.
44 plugin->SetGridOutputDir("output"); // In this case will be $HOME/work/output
45 // Declare the analysis source files names separated by blancs. To be compiled runtime IN THE SAME ORDER THEY ARE LISTED
46 // using ACLiC on the worker nodes.
47 plugin->SetAnalysisSource("AliAnalysisEt.cxx AliAnalysisEtMonteCarlo.cxx AliAnalysisEtMonteCarloPhos.cxx AliAnalysisEtMonteCarloEmcal.cxx AliAnalysisEtReconstructed.cxx AliAnalysisEtReconstructedPhos.cxx AliAnalysisEtReconstructedEmcal.cxx AliAnalysisTaskTotEt.cxx");
48 // Declare all libraries (other than the default ones for the framework. These will be
49 // loaded by the generated analysis macro. Add all extra files (task .cxx/.h) here.
50 plugin->SetAdditionalLibs("AliAnalysisEtCuts.h AliAnalysisEt.h AliAnalysisEtMonteCarlo.h AliAnalysisEtMonteCarloPhos.h AliAnalysisEtMonteCarloEmcal.h AliAnalysisEtReconstructed.h AliAnalysisEtReconstructedPhos.h AliAnalysisEtReconstructedEmcal.h AliAnalysisTaskTotEt.h AliAnalysisEt.cxx AliAnalysisEtMonteCarlo.cxx AliAnalysisEtMonteCarloPhos.cxx AliAnalysisEtMonteCarloEmcal.cxx AliAnalysisEtReconstructed.cxx AliAnalysisEtReconstructedPhos.cxx AliAnalysisEtReconstructedEmcal.cxx AliAnalysisTaskTotEt.cxx");
52 // No need for output file names. Procedure is automatic. <-- not true
53 plugin->SetDefaultOutputs(kFALSE);
54 plugin->SetOutputFiles(outputName.Data());
55 // No need define the files to be archived. Note that this is handled automatically by the plugin.
56 // plugin->SetOutputArchive("log_archive.zip:stdout,stderr");
57 // Set a name for the generated analysis macro (default MyAnalysis.C) Make this unique !
58 plugin->SetAnalysisMacro("DavidEtAnalysis.C");
59 // Optionally set maximum number of input files/subjob (default 100, put 0 to ignore). The optimum for an analysis
60 // is correlated with the run time - count few hours TTL per job, not minutes !
61 plugin->SetSplitMaxInputFileNumber(100);
62 // Optionally set number of failed jobs that will trigger killing waiting sub-jobs.
63 plugin->SetMaxInitFailed(5);
64 // Optionally resubmit threshold.
65 plugin->SetMasterResubmitThreshold(90);
66 // Optionally set time to live (default 30000 sec)
67 plugin->SetTTL(20000);
68 // Optionally set input format (default xml-single)
69 plugin->SetInputFormat("xml-single");
70 // Optionally modify the name of the generated JDL (default analysis.jdl)
71 plugin->SetJDLName("TaskEt.jdl");
72 // Optionally modify job price (default 1)
74 // Optionally modify split mode (default 'se')
75 plugin->SetSplitMode("se");