本文整理汇总了C++中AliAnalysisAlien::SetRunMode方法的典型用法代码示例。如果您正苦于以下问题:C++ AliAnalysisAlien::SetRunMode方法的具体用法?C++ AliAnalysisAlien::SetRunMode怎么用?C++ AliAnalysisAlien::SetRunMode使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类AliAnalysisAlien
的用法示例。
在下文中一共展示了AliAnalysisAlien::SetRunMode方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: AliAnalysisAlien
AliAnalysisGrid *AnalysisConfig(TString analysisMode,
const char *aliphyiscsVersion,
const char *alirootVersion,
const char *rootVersion) {
AliAnalysisAlien *plugin = new AliAnalysisAlien();
// Setting software versions
plugin->SetROOTVersion(rootVersion);
plugin->SetAliROOTVersion(alirootVersion);
plugin->SetAliPhysicsVersion(aliphyiscsVersion);
// Overwrite all generated files, datasets and output results from a previous
// session
plugin->SetOverwriteMode();
// Set the run mode (can be "full", "test", "offline", "submit" or
// "terminate")
plugin->SetRunMode(analysisMode.Data()); // VERY IMPORTANT - DECRIBED BELOW
// adds Proof setting
MySetupAnalysisPluginProof(plugin, analysisMode);
// adds AliEn settings
MySetupAnalysisPluginAliEn(plugin);
return plugin;
}
示例2: AliAnalysisAlien
AliAnalysisAlien *CreateGridHandler(){
//
// Setup main settings of the Alien plugin
//
AliAnalysisAlien *plugin = new AliAnalysisAlien();
plugin->SetRunMode(g_plugin_mode.Data());
if(!g_plugin_mode.CompareTo("Terminate"))
plugin->SetMergeViaJDL(kFALSE);
else
plugin->SetMergeViaJDL(kTRUE);
plugin->SetOverwriteMode();
plugin->SetNtestFiles(1);
plugin->SetAPIVersion("V1.1x");
plugin->SetROOTVersion(g_root_version.Data());
plugin->SetAliROOTVersion(g_aliroot_version.Data());
plugin->SetOutputToRunNo();
plugin->AddIncludePath("-I. .I$ALIEN_ROOT/api/lib -I$ROOTSYS/lib -I$ROOTSYS/include -I$ALICE_ROOT/include -I$ALICE_ROOT/PWGHF/ -I$ALICE_ROOT/PWGHF/hfe/macros -I$ALICE_ROOT/PWGHF/hfe -I$ALICE_ROOT/ANALYSIS -I$ALICE_ROOT/TENDER/Tender -I$ALICE_ROOT/TENDER/TenderSupplies -I$ALICE_ROOT/PWG/ -I$ALICE_ROOT/PWG/FLOW -I$ALICE_ROOT/PWG/Base -I$ALICE_ROOT/PWG/Tasks");
plugin->SetAdditionalLibs("libGui.so libXMLParser.so libSTEERBase.so libESD.so libAOD.so libCDB.so libANALYSIS.so libANALYSISalice.so libCORRFW.so libPWGflowBase.so libPWGflowTasks.so libPWGHFhfe.so libTender.so libProof.so libRAWDatabase.so libSTEER.so libTOFbase.so libPWGTRD.so");
plugin->SetDefaultOutputs(kFALSE);
plugin->SetOutputFiles("AnalysisResults.root");
plugin->SetExecutableCommand("aliroot -b -q");
plugin->SetTTL(30000);
plugin->SetInputFormat("xml-single");
plugin->SetPrice(1);
plugin->SetSplitMode("se");
return plugin;
}
示例3:
//___________________________________________________________
AliAnalysisAlien *CreateAlienHandler(Bool_t isProof){
//if(!AliAnalysisGrid::CreateToken()) return NULL;
if(!FindDependentPackages()) return NULL;
AliAnalysisAlien *alienplugin = new AliAnalysisAlien;
// common settings
alienplugin->SetAliROOTVersion(aliroot_version);
alienplugin->SetROOTVersion(root_version);
alienplugin->SetAPIVersion(api_version);
alienplugin->SetAdditionalLibs("libPWGHFhfe.so");
alienplugin->SetDefaultOutputs(kTRUE);
if(isProof){
// proof mode
if(analysis_mode.Contains("test")) alienplugin->SetRunMode("test");
alienplugin->SetProofCluster("alice_caf.cern.ch");
alienplugin->SetRootVersionForProof(root_version);
alienplugin->SetAliRootMode("aliroot");
} else {
// grid mode
alienplugin->SetRunMode(analysis_mode.Data());
// default setting that need no deeper logic
alienplugin->SetJDLName("hfeanalysis.jdl");
alienplugin->SetExecutable("hfeanalysis.sh");
alienplugin->SetAnalysisMacro("hfeanalysis.C");
alienplugin->SetValidationScript("hfevalidate.sh");
alienplugin->SetGridWorkingDir("hfeanalysis");
/*alienplugin->SetOutputArchive();
alienplugin->SetDefaultOutputs();*/
alienplugin->SetOverwriteMode();
alienplugin->SetFastReadOption();
alienplugin->SetSplitMaxInputFileNumber(5);
alienplugin->SetTTL(30000);
alienplugin->SetInputFormat("xml-single");
alienplugin->SetPrice(1);
alienplugin->SetSplitMode("se");
alienplugin->SetNtestFiles(1);
// Merging setting, only needed in terminate or full mode
if(analysis_mode.Contains("full") || analysis_mode.Contains("terminate")){
alienplugin->SetMergeViaJDL();
alienplugin->SetMaxMergeFiles(50);
alienplugin->SetMaxMergeStages(5);
}
}
return alienplugin;
}
示例4: CreateAlienHandler
AliAnalysisGrid* CreateAlienHandler(TString mode="test",TString fname="testName"){
AliAnalysisAlien *plugin = new AliAnalysisAlien();
plugin->SetOverwriteMode();
plugin->SetExecutableCommand("aliroot -q -b");
plugin->SetRunMode(mode.Data());
plugin->SetNtestFiles(20);
// Set versions of used packages
plugin->SetAPIVersion("V1.1x");
//plugin->SetROOTVersion("v5-34-26");
plugin->SetAliROOTVersion("v5-07-20");
plugin->SetAliPhysicsVersion("vAN-20160203");
// Declare input data to be processed.
plugin->SetNrunsPerMaster(100);
plugin->SetSplitMaxInputFileNumber(15); // 3 in the LEGO trains
plugin->SetGridDataDir("/alice/data/2013/LHC13c/");
plugin->SetGridWorkingDir(Form("%s/",fname.Data()));
plugin->SetRunPrefix("000");
plugin->SetDataPattern("/ESDs/pass2/*/AliESDs.root");
plugin->SetAnalysisMacro("TaskDeuteronTreeTest.C");
plugin->SetExecutable("TaskDeuteronTreeTest.sh");
plugin->SetJDLName("TaskDeuteronTreeTest.jdl");
Int_t runnumbers[]={195596,195592};
for(Int_t irun=0;irun<2;irun++){
Printf("%d %d",irun,runnumbers[irun]);
plugin->AddRunNumber(runnumbers[irun]);
}
TString extraLibs;
plugin->AddIncludePath("-I. -I$ROOTSYS/include -I$ALICE_ROOT/include -I$ALICE_PHYSICS/include");
//plugin->SetAdditionalLibs("libCORRFW.so libPWGTools.so libPWGCFCorrelationsBase.so libPWGCFCorrelationsDPhi.so AliAnalysisTaskPhiCorrelations.cxx AliAnalysisTaskPhiCorrelations.h");
//plugin->SetAnalysisSource("AliAnalysisTaskPhiCorrelations.cxx");
plugin->SetGridOutputDir("output"); // In this case will be $HOME/work/output
// Declare the output file names separated by blancs.
// (can be like: file.root or [email protected]::Niham::File)
//plugin->SetDefaultOutputs(0);
//plugin->SetOutputFiles("AnalysisResults.root.root");
plugin->SetMergeViaJDL(kTRUE);
plugin->SetOneStageMerging(kFALSE);
//plugin->SetMaxMergeFiles(40);
//plugin->SetMaxMergeStages(4);
plugin->SetTTL(50000);
// Optionally set input format (default xml-single)
plugin->SetInputFormat("xml-single");
// Optionally modify job price (default 1)
plugin->SetPrice(1);
// Optionally modify split mode (default 'se')
//plugin->SetSplitMaxInputFileNumber();
plugin->SetSplitMode("se");
return plugin;
}
示例5: CreateAlienHandler
AliAnalysisGrid* CreateAlienHandler(const char* mode, bool isMC){
AliAnalysisAlien *plugin = new AliAnalysisAlien();
// Set the run mode (can be "full", "test", "offline", "submit" or "terminate")
plugin->SetRunMode(gridmode.Data());
// Set versions of used packages
plugin->SetAPIVersion("V1.1x");
plugin->SetAliPhysicsVersion("vAN-20170425-1");
plugin->SetExecutableCommand("aliroot -b -q");
// Declare the analysis source files names separated by blancs. To be compiled runtime
// using ACLiC on the worker nodes.
//plugin->SetAdditionalLibs("libPWGLFnuclex.so");
plugin->AddIncludePath("-I. -I$ROOTSYS/include -I$ALICE_ROOT/include -I$ALICE_PHYSICS/include");
// Declare all libraries (other than the default ones for the framework. These will benloaded by the generated analysis macro. Add all extra files (task .cxx/.h) here.
// Declare the output file names separated by blancs.
// (can be like: file.root or [email protected]::Niham::File)
// To only save certain files, use SetDefaultOutputs(kFALSE), and then
// SetOutputFiles("list.root other.filename") to choose which files to save
plugin->SetDefaultOutputs();
//plugin->SetOutputFiles("list.root");
// Optionally set a name for the generated analysis macro (default MyAnalysis.C)
plugin->SetAnalysisMacro(Form("%s.C",kTaskName.Data()));
// Optionally set maximum number of input files/subjob (default 100, put 0 to ignore)
plugin->SetSplitMaxInputFileNumber(kJobSplitting);
// Optionally modify the executable name (default analysis.sh)
plugin->SetExecutable(Form("%s.sh",kTaskName.Data()));
// set number of test files to use in "test" mode
plugin->SetNtestFiles(2);
// file containing a list of chuncks to be used for testing
plugin->SetFileForTestMode("testdata");
// Optionally resubmit threshold.
plugin->SetMasterResubmitThreshold(90);
// Optionally set time to live (default 30000 sec)
plugin->SetTTL(30000);
// Optionally set input format (default xml-single)
plugin->SetInputFormat("xml-single");
// Optionally modify the name of the generated JDL (default analysis.jdl)
plugin->SetJDLName(Form("%s.jdl",kTaskName.Data()));
// Optionally modify job price (default 1)
plugin->SetPrice(1);
// Optionally modify split mode (default 'se')
plugin->SetSplitMode("se");
return plugin;
}
示例6: AliAnalysisAlien
AliAnalysisGrid *CreateAlienHandler()
{
AliAnalysisAlien *plugin = new AliAnalysisAlien();
//plugin->SetOverwriteMode();
// Set the run mode (can be "full", "test", "offline", "submit" or "terminate")
//plugin->SetRunMode("test");
plugin->SetRunMode("full");
//plugin->SetRunMode("terminate");
// Set versions of used packages
plugin->SetAPIVersion("V1.1x");
plugin->SetROOTVersion("v5-34-08-6");
plugin->SetAliROOTVersion("vAN-20141031");
// Set the path for finding the data
plugin->SetGridDataDir("/alice/data/2010/LHC10h/");
plugin->SetDataPattern("ESDs/pass2/AOD086/*/AliAOD.root"); // for testing over multiple files
//plugin->SetDataPattern("ESDs/pass2/AOD086/0001/AliAOD.root"); // for testing over a single file
plugin->SetRunPrefix("000");
//plugin->AddRunNumber(137161);
gROOT->ProcessLine(".L AddRunNumbers.C");
int added = AddRunNumbers(plugin,0,95,"lhc10h");
if(added<0) return NULL;
// Set the path for the output
plugin->SetGridWorkingDir("TaskExample"); // $HOME/TaskExample
plugin->SetGridOutputDir("OutputTesting_X005"); // $HOME/TaskExample/OutputTesting
// Specify the source code for the analysis
plugin->SetAnalysisSource("AliAnalysisTaskExample.cxx"); // class file
plugin->SetAdditionalLibs("AliAnalysisTaskExample.h AliAnalysisTaskExample.cxx"); // header space class
// Default outputs (?)
plugin->SetDefaultOutputs(); // ALWAYS use default outputs, code warns then crashes if not
// The rest of these are optional, though some are very useful
plugin->SetSplitMaxInputFileNumber(100); // default 100 input files/subjob
plugin->SetMaxInitFailed(5); // default (?) jobs fail to kill waiting subjobs
plugin->SetMasterResubmitThreshold(90); // default (?) resubmit threshold
plugin->SetTTL(50000); // default 30000 sec time to live
plugin->SetAnalysisMacro("TaskExample.C"); // default "MyAnalysis.C"
plugin->SetExecutable("TaskExample.sh"); // default "analysis.sh"
plugin->SetJDLName("TaskExample.jdl"); // default "analysis.jdl"
plugin->SetInputFormat("xml-single"); // default "xml-single"
plugin->SetPrice(1); // default 1 price to modify job
plugin->SetSplitMode("se"); // default "se"
return plugin;
}
示例7: AliAnalysisAlien
AliAnalysisGrid *CreateAlienHandler()
{
AliAnalysisAlien *plugin = new AliAnalysisAlien();
plugin->SetRunMode("test"); // generate files and make local test on my PC
//plugin->SetRunMode("offline"); // generate files that can be modified; no submission
//plugin->SetRunMode("submit"); // submit files generated with offline mode
//plugin->SetRunMode("full"); // generate files and submit
//plugin->SetRunMode("terminate"); // do merging only in one job
plugin->SetAPIVersion("V1.1x");
plugin->SetAliPhysicsVersion("vAN-20151115-1");
plugin->SetNtestFiles(1);
//plugin->SetROOTVersion("v5-34-08-6");
//plugin->SetAliROOTVersion("vAN-20141031");
plugin->SetGridDataDir("/alice/data/2010/LHC10h/");
plugin->SetDataPattern("ESDs/pass2/AOD160/0008/AliAOD.root");
plugin->SetRunPrefix("000");
int runNumber[] = {139510, 139507};
int size = sizeof(runNumber)/sizeof(runNumber[0]);
for(int i=0; i<size; i++) {
plugin->AddRunNumber(runNumber[i]);
}
//plugin->AddRunNumber(139510);
plugin->SetGridWorkingDir("TaskFlow"); // $HOME/TaskFlow
plugin->SetGridOutputDir("OutputFlow"); // TaskFlow/OutputFlow
// plugin->AddIncludePath("-I$ROOTSYS/include -I$ALICE_ROOT/include");
plugin->SetAnalysisSource("AliAnalysisTaskFlow.cxx");
plugin->SetAdditionalLibs("AliAnalysisTaskFlow.h AliAnalysisTaskFlow.cxx");
plugin->SetDefaultOutputs();
plugin->SetOutputToRunNo();
plugin->SetAnalysisMacro("Flow.C");
plugin->SetSplitMaxInputFileNumber(400);
plugin->SetMasterResubmitThreshold(90);
plugin->SetTTL(20000);
plugin->SetJDLName("Flow.jdl");
plugin->SetExecutable("Flow.sh");
// plugin->SetExecutableCommand("aliroot -b -q");
return plugin;
}
示例8: CreateAlienHandler
//_______________________________| CreateAlienHandler |________________________________
AliAnalysisGrid* CreateAlienHandler()
{
AliAnalysisAlien *Plugin = new AliAnalysisAlien();
Plugin->SetRunMode(fPluginMode.Data());
Plugin->SetUser(fUsername.Data());
Plugin->SetAPIVersion("V1.1x");
Plugin->SetROOTVersion("v5-34-30-alice-12");
Plugin->SetAliROOTVersion("v5-07-20-4");
Plugin->SetAliPhysicsVersion("vAN-20160129-1");
Plugin->SetNtestFiles(1);
Plugin->SetFileForTestMode(TestFilesWPlugin.Data());
// Set data search pattern for DATA grid Mode
Plugin->SetGridDataDir("/alice/sim/2013/LHC13b2_efix_p1"); // specify MC sample
if(readAOD) Plugin->SetDataPattern("AOD/*AliAOD.root");// specify AOD set
else Plugin->SetDataPattern("*/AliESDs.root");
Int_t totruns=0;
//gROOT->LoadMacro("$ALICE_PHYSICS/PWGHF/vertexingHF/AddGoodRuns.C");
gROOT->LoadMacro("AddGoodRuns.C");
totruns += AddGoodRuns(Plugin,"LHC13b","LHC13b2_efix_p1"); //Set accordingly
Plugin->SetNrunsPerMaster(totruns);
Plugin->SetGridWorkingDir("SingleTrkEff/LHC13b2_efix_p1/16Feb2016/");
Plugin->SetGridOutputDir("out");
Plugin->SetExecutable("STE16Feb2016.sh");
Plugin->AddIncludePath("-I. -I$ROOTSYS/include -I$ALICE_PHYSICS -I$ALICE_PHYSICS/include -I$ALICE_PHYSICS/ITS -I$ALICE_PHYSICS/TPC -I$ALICE_PHYSICS/CONTAINERS -I$ALICE_PHYSICS/STEER/STEER -I$ALICE_PHYSICS/STEER/STEERBase -I$ALICE_PHYSICS/STEER/ESD -I$ALICE_PHYSICS/STEER/AOD -I$ALICE_PHYSICS/TRD -I$ALICE_PHYSICS/macros -I$ALICE_PHYSICS/ANALYSIS -I$ALICE_PHYSICS/OADB -g");
Plugin->SetSplitMaxInputFileNumber(5);
Plugin->SetDefaultOutputs(kTRUE);
Plugin->SetMergeViaJDL(kTRUE); // Merge Via JDL
Plugin->SetOneStageMerging(kFALSE);
Plugin->SetMaxMergeStages(2);
Plugin->SetAnalysisMacro("STE16Feb2016.C");
Plugin->SetJDLName("STE16Feb2016.jdl");
return Plugin;
}
示例9: runWithHandler
AliAnalysisGrid* runWithHandler()
{
// Check if user has a valid token, otherwise make one. This has limitations.
if (!AliAnalysisGrid::CreateToken()) return NULL;
AliAnalysisAlien *plugin = new AliAnalysisAlien();
// Set the run mode (can be "full", "test", "offline", "submit" or "terminate")
plugin->SetRunMode("full");
// Set versions of used packages
plugin->SetAPIVersion("V1.1x");
plugin->SetROOTVersion("v5-26-00b-2");
plugin->SetAliROOTVersion("v4-19-10-AN");
// Declare input data to be processed.
// Method 1: Create automatically XML collections using alien 'find' command.
// Define production directory LFN
//plugin->SetGridDataDir("/alice/sim/LHC10a6");
// On real reconstructed data:
plugin->SetGridDataDir("/alice/data/2009/LHC09d");
// Set data search pattern
//plugin->SetDataPattern("*ESDs.root");
// Data pattern for reconstructed data
plugin->SetDataPattern("*ESDs/pass4/*ESDs.root");
plugin->SetRunPrefix("000"); // real data
// ...then add run numbers to be considered
plugin->AddRunNumber(104824);
// plugin->AddRunNumber(104065); // real data
// plugin->SetOutputSingleFolder("output");
// plugin->SetOutputToRunNo();
// Method 2: Declare existing data files (raw collections, xml collections, root file)
// If no path mentioned data is supposed to be in the work directory (see SetGridWorkingDir())
// XML collections added via this method can be combined with the first method if
// the content is compatible (using or not tags)
// plugin->AddDataFile("tag.xml");
// plugin->AddDataFile("/alice/data/2008/LHC08c/000057657/raw/Run57657.Merged.RAW.tag.root");
// Define alien work directory where all files will be copied. Relative to alien $HOME.
plugin->SetGridWorkingDir("TrackletsTask");
// Declare alien output directory. Relative to working directory.
plugin->SetGridOutputDir("output"); // In this case will be $HOME/work/output
// Declare the analysis source files names separated by blancs. To be compiled runtime
// using ACLiC on the worker nodes.
plugin->SetAnalysisSource("AliTrackletsTask.cxx");
// Declare all libraries (other than the default ones for the framework. These will be
// loaded by the generated analysis macro. Add all extra files (task .cxx/.h) here.
plugin->SetAdditionalLibs("AliTrackletsTask.h AliTrackletsTask.cxx");
// Declare the output file names separated by blancs.
// (can be like: file.root or [email protected]::Niham::File)
//plugin->SetOutputFiles("Pt.ESD.1.root");
plugin->SetDefaultOutputs();
// Optionally define the files to be archived.
// plugin->SetOutputArchive("log_archive.zip:stdout,[email protected]::NIHAM::File root_archive.zip:*[email protected]::NIHAM::File");
plugin->SetOutputArchive("log_archive.zip:stdout,stderr");
// Optionally set a name for the generated analysis macro (default MyAnalysis.C)
plugin->SetAnalysisMacro("MacroTrackletsTask.C");
// Optionally set maximum number of input files/subjob (default 100, put 0 to ignore)
plugin->SetSplitMaxInputFileNumber(50);
// Optionally modify the executable name (default analysis.sh)
plugin->SetExecutable("ExecutableTrackletsTask.sh");
// Optionally set number of failed jobs that will trigger killing waiting sub-jobs.
// plugin->SetMaxInitFailed(5);
// Optionally resubmit threshold.
// plugin->SetMasterResubmitThreshold(90);
// Optionally set time to live (default 30000 sec)
plugin->SetTTL(28000);
// Optionally set input format (default xml-single)
plugin->SetInputFormat("xml-single");
// Optionally modify the name of the generated JDL (default analysis.jdl)
plugin->SetJDLName("JdlTrackletsTask.jdl");
// Optionally modify job price (default 1)
plugin->SetPrice(1);
// Optionally modify split mode (default 'se')
plugin->SetSplitMode("se");
return plugin;
}
示例10: runCPVAnalysis
//.........这里部分代码省略.........
// create the analysis manager
AliAnalysisManager *mgr = new AliAnalysisManager("AnalysisTaskCPV");
AliESDInputHandler *esdH = new AliESDInputHandler();
mgr->SetInputEventHandler(esdH);
//PID task
gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskPIDResponse.C");
AliAnalysisTask *taskPID = AddTaskPIDResponse(/*Bool_t isMC=*/ kFALSE, /*Bool_t autoMCesd=*/kTRUE,
/*Bool_t tuneOnData=*/kTRUE);
// // Add physics selection
gROOT->LoadMacro("$ALICE_PHYSICS/OADB/macros/AddTaskPhysicsSelection.C");
AliPhysicsSelectionTask* physSelTask = AddTaskPhysicsSelection();
physSelTask->GetPhysicsSelection()->SetUseBXNumbers(kFALSE);// ---> ???
// load the addtask macro
gROOT->LoadMacro("AddTaskCPV.C");
// create an instance of your analysis task
AliAnalysisTaskCPV *task = AddTaskCPV();
task->SetRCPV(428.3);
task->SelectCollisionCandidates(AliVEvent::kINT7);
if(!mgr->InitAnalysis()) return;
mgr->SetDebugLevel(2);
mgr->PrintStatus();
mgr->SetUseProgressBar(1, 25);
if(local) {
// if you want to run locally, we need to define some input
TChain* chain = new TChain("esdTree");
// add a few files to the chain (change this so that your local files are added)
TGrid::Connect("alien://");
chain->Add("alien:///alice/data/2015/LHC15n/000244340/pass2/15000244340020.100/AliESDs.root");
// start the analysis locally, reading the events from the tchain
mgr->StartAnalysis("local", chain);
} else {
// if we want to run on grid, we create and configure the plugin
AliAnalysisAlien *alienHandler = new AliAnalysisAlien();
alienHandler->SetCheckCopy(kFALSE);
// also specify the include (header) paths on grid
alienHandler->AddIncludePath("-I. -I$ROOTSYS/include -I$ALICE_ROOT -I$ALICE_ROOT/include -I$ALICE_PHYSICS/include");
// select the aliphysics version. all other packages
// are LOADED AUTOMATICALLY!
alienHandler->SetAliPhysicsVersion("vAN-20170215-1");
// set the Alien API version
alienHandler->SetAPIVersion("V1.1x");
// select the input data
alienHandler->SetGridDataDir("/alice/data/2015/LHC15n");
alienHandler->SetDataPattern("/pass2/*/AliESDs.root");
const Int_t runList[] = {244340, 244343};
const Int_t nRuns = 2;
// const Int_t runList[] = {244340, 244343, 244351, 244355, 244359,
// 244364, 244377, 244411, 244416, 244418,
// 244421, 244453, 244480, 244481, 244482,
// 244483, 244484, 244531, 244540, 244542,
// 244617, 244618, 244627, 244628};
// const Int_t nRuns = 24;
// MC has no prefix, data has prefix 000
alienHandler->SetRunPrefix("000");
// runnumber
for (Int_t iRun=0; iRun<nRuns; iRun++) {
alienHandler->AddRunNumber(runList[iRun]);
}
// number of files per subjob
alienHandler->SetSplitMaxInputFileNumber(50);
alienHandler->SetExecutable("CPVTask.sh");
// specify how many seconds your job may take
alienHandler->SetTTL(36000);
alienHandler->SetJDLName("CPVTask.jdl");
alienHandler->SetOutputToRunNo(kTRUE);
alienHandler->SetKeepLogs(kTRUE);
// merging: run with kTRUE to merge on grid
// after re-running the jobs in SetRunMode("terminate")
// (see below) mode, set SetMergeViaJDL(kFALSE)
// to collect final results
alienHandler->SetMaxMergeStages(2);
alienHandler->SetMergeViaJDL(kTRUE);
// define the output folders
alienHandler->SetGridWorkingDir("CPVWorkingDir");
alienHandler->SetGridOutputDir("CPVOutputDir_R428");
// connect the alien plugin to the manager
mgr->SetGridHandler(alienHandler);
if(gridTest) {
// speficy on how many files you want to run
alienHandler->SetNtestFiles(1);
// and launch the analysis
alienHandler->SetRunMode("test");
mgr->StartAnalysis("grid");
} else {
// else launch the full grid analysis
alienHandler->SetRunMode(runmode);
mgr->StartAnalysis("grid");
}
}
}
示例11: CreateAlienHandlerTrigger
AliAnalysisGrid* CreateAlienHandlerTrigger(const char * run,const char * recopass="pass1", Bool_t isMC=kFALSE)
{
// Check if user has a valid token, otherwise make one. This has limitations.
// One can always follow the standard procedure of calling alien-token-init then
// source /tmp/gclient_env_$UID in the current shell.
TGrid::Connect("alien:");
AliAnalysisAlien *plugin = new AliAnalysisAlien();
// Set the run mode (can be "full", "test", "offline", "submit" or "terminate")
plugin->SetRunMode("full");
//plugin->SetRunMode("test");
// Set versions of used packages
plugin->SetAPIVersion("V1.1x");
plugin->SetROOTVersion("v5-27-06-2");
plugin->SetAliROOTVersion("v4-21-03-AN");
// Declare input data to be processed.
// Method 1: Create automatically XML collections using alien 'find' command.
// Define production directory LFN
// LHC09d
// /alice/data/2009/LHC09d/000104892/ESDs/pass6/
if (!isMC)
plugin->SetGridDataDir(Form("/alice/data/2010/LHC10h/%s/ESDs/%s/", run,recopass));
else
plugin->SetGridDataDir(Form("/alice/sim/%s",recopass));
// Set data search pattern
plugin->SetDataPattern("AliESDs.root");
// ...then add run numbers to be considered
// plugin->AddRunNumber(104892);
// plugin->AddRunNumber(300001);
// Method 2: Declare existing data files (raw collections, xml collections, root file)
// If no path mentioned data is supposed to be in the work directory (see SetGridWorkingDir())
// XML collections added via this method can be combined with the first method if
// the content is compatible (using or not tags)
// plugin->AddDataFile("tag.xml");
// plugin->AddDataFile("/alice/data/2008/LHC08c/000057657/raw/Run57657.Merged.RAW.tag.root");
// Define alien work directory where all files will be copied. Relative to alien $HOME.
plugin->SetGridWorkingDir(Form("MultPb/Task_%s_%s",run,recopass));
// Declare alien output directory. Relative to working directory.
plugin->SetGridOutputDir("out");
// Declare the analysis source files names separated by blancs. To be compiled runtime
// using ACLiC on the worker nodes.
plugin->SetAnalysisSource("AliAnalysisTaskTriggerStudy.cxx AliHistoListWrapper.cxx");
// Declare all libraries (other than the default ones for the framework. These will be
// loaded by the generated analysis macro. Add all extra files (task .cxx/.h) here.
plugin->SetAdditionalLibs("AliAnalysisTaskTriggerStudy.cxx AliHistoListWrapper.cxx AliAnalysisTaskTriggerStudy.h AliHistoListWrapper.h");
// plugin->SetAdditionalLibs("AliCollisionsNormalization.cxx AliCollisionNormalizationTask.cxx AliPhysicsSelection.cxx AliCollisionsNormalization.h AliCollisionNormalizationTask.h AliPhysicsSelection.h");
// I'm using a modified ANALYSISalice package, so I need to load par files for everything
plugin->EnablePackage("STEERBase");
plugin->EnablePackage("ESD");
plugin->EnablePackage("AOD");
plugin->EnablePackage("CORRFW");
plugin->EnablePackage("ANALYSIS");
plugin->EnablePackage("ANALYSISalice");
// Declare the output file names separated by blancs.
// (can be like: file.root or [email protected]::Niham::File)
plugin->SetDefaultOutputs(kFALSE);
// plugin->SetOutputFiles(Form("EventStat_temp.root %s",outfilename);
plugin->SetOutputFiles("Trig_Temp.root");
// Optionally define the files to be archived.
// plugin->SetOutputArchive("log_archive.zip:stdout,[email protected]::NIHAM::File root_archive.zip:*[email protected]::NIHAM::File");
plugin->SetOutputArchive("log_archive.zip:stdout,stderr");
// Optionally set a name for the generated analysis macro (default MyAnalysis.C)
plugin->SetAnalysisMacro("AnalysisTrigger.C");
// Optionally set maximum number of input files/subjob (default 100, put 0 to ignore)
plugin->SetSplitMaxInputFileNumber(100);
// Optionally set number of failed jobs that will trigger killing waiting sub-jobs.
plugin->SetMaxInitFailed(5);
// Optionally resubmit threshold.
plugin->SetMasterResubmitThreshold(90);
// Optionally set time to live (default 30000 sec)
plugin->SetTTL(30000);
// Optionally set input format (default xml-single)
plugin->SetInputFormat("xml-single");
// Optionally modify the name of the generated JDL (default analysis.jdl)
plugin->SetJDLName("TaskNorm.jdl");
// Optionally modify job price (default 1)
plugin->SetPrice(1);
// Optionally modify split mode (default 'se')
plugin->SetSplitMode("se");
return plugin;
}
示例12: CreateAlienHandler
//______________________________________________________________________________
AliAnalysisGrid* CreateAlienHandler(Bool_t bAOD, Int_t bunchN, const char *taskname, const char *gridmode, const char *proofcluster, const char *proofdataset)
{
AliAnalysisAlien *plugin = new AliAnalysisAlien();
// Set the run mode (can be "full", "test", "offline", "submit" or "terminate")
plugin->SetRunMode(gridmode);
// Set versions of used packages
plugin->SetAPIVersion("V1.1x");
plugin->SetROOTVersion("v5-34-08");
plugin->SetAliROOTVersion("v5-05-19-AN");
// Declare input data to be processed.
// Method 1: Create automatically XML collections using alien 'find' command.
// Define production directory LFN
plugin->SetGridDataDir("/alice/data/2010/LHC10h/");
// On real reconstructed data:
// plugin->SetGridDataDir("/alice/data/2009/LHC09d");
// Set data search pattern
//plugin->SetDataPattern("*ESDs.root"); // THIS CHOOSES ALL PASSES
// Data pattern for reconstructed data
if(!bAOD){
plugin->SetDataPattern("*ESDs/pass2/*ESDs.root"); // CHECK LATEST PASS OF DATA SET IN ALIENSH
}
else{
plugin->SetDataPattern("*ESDs/pass2/AOD086/*/AliAOD.root");
}
plugin->SetRunPrefix("000"); // real data
// ...then add run numbers to be considered
//plugin->SetRunRange(114917,115322);
if(bunchN==0){
plugin->AddRunNumber(137366);
}
//bunch1
else if(bunchN == 1){
plugin->AddRunNumber(139510);
plugin->AddRunNumber(139507);
plugin->AddRunNumber(139505);
plugin->AddRunNumber(139503);
plugin->AddRunNumber(139465);
plugin->AddRunNumber(139438);
plugin->AddRunNumber(139437);
plugin->AddRunNumber(139360);
plugin->AddRunNumber(139329);
plugin->AddRunNumber(139328);
}
//bunch2
else if(bunchN == 2){
plugin->AddRunNumber(139314);
plugin->AddRunNumber(139310);
plugin->AddRunNumber(139309);
plugin->AddRunNumber(139173);
plugin->AddRunNumber(139107);
plugin->AddRunNumber(139105);
plugin->AddRunNumber(139038);
plugin->AddRunNumber(139037);
plugin->AddRunNumber(139036);
plugin->AddRunNumber(139029);
plugin->AddRunNumber(139028);
plugin->AddRunNumber(138872);
plugin->AddRunNumber(138871);
plugin->AddRunNumber(138870);
plugin->AddRunNumber(138837);
plugin->AddRunNumber(138732);
plugin->AddRunNumber(138730);
plugin->AddRunNumber(138666);
plugin->AddRunNumber(138662);
plugin->AddRunNumber(138653);
}
else if(bunchN == 3){
plugin->AddRunNumber(138652);
plugin->AddRunNumber(138638);
plugin->AddRunNumber(138624);
plugin->AddRunNumber(138621);
plugin->AddRunNumber(138583);
plugin->AddRunNumber(138582);
plugin->AddRunNumber(138579);
plugin->AddRunNumber(138578);
plugin->AddRunNumber(138534);
plugin->AddRunNumber(138469);
}
else if(bunchN == 4){
plugin->AddRunNumber(138442);
plugin->AddRunNumber(138439);
plugin->AddRunNumber(138438);
plugin->AddRunNumber(138396);
plugin->AddRunNumber(138364);
plugin->AddRunNumber(138275);
plugin->AddRunNumber(138225);
plugin->AddRunNumber(138201);
plugin->AddRunNumber(138197);
//.........这里部分代码省略.........
示例13: CreateAlienHandler
//______________________________________________________________________________
AliAnalysisGrid* CreateAlienHandler(const char *taskname, const char *gridmode,
const char *proofcluster, const char *proofdataset)
{
AliAnalysisAlien *plugin = new AliAnalysisAlien();
// Set the run mode (can be "full", "test", "offline", "submit" or "terminate")
plugin->SetRunMode(gridmode);
// Set versions of used packages
plugin->SetAPIVersion("V1.1x");
plugin->SetROOTVersion("v5-34-08");
plugin->SetAliROOTVersion("vAN-20140915");
plugin->SetExecutableCommand("aliroot -b -q");
// Declare input data to be processed.
// Method 1: Create automatically XML collections using alien 'find' command.
// Define production directory LFN
// plugin->SetGridDataDir("/alice/data/2010/LHC10h");
// plugin->SetGridDataDir(" /alice/data/2011/LHC11h_2/"); //sim
// plugin->SetDataPattern("pass2/*AliAOD.root"); // sim
plugin->SetGridDataDir("/alice/data/2011/LHC11h_2/"); //sim
plugin->SetDataPattern("*/pass2/*AliESDs.root"); // sim
plugin->SetRunPrefix("000"); // real data
Int_t runlist[] = { // Counter
170309, 170308, 170306, 170270, 170269, 170268, 170230, 170228, 170204, 170203, // 10
170193, 170163, 170159, 170155, 170081, 170027, 169859, 169858, 169855, 169846, // 20
169838, 169837, 169835, 169417, 169415, 169411, 169238, 169167, 169160, 169156, // 30
169148, 169145, 169144, 169138, 169094, 169091, 169035, 168992, 168988, 168826, // 40
168777, 168514, 168512, 168511, 168467, 168464, 168460, 168458, 168362, 168361, // 50
168342, 168341, 168325, 168322, 168311, 168310, 167988, 167987 // 58
};
for(Int_t i = 0; i < 9; i++)
plugin->AddRunNumber(runlist[i]);
plugin->SetNrunsPerMaster(3);
plugin->SetOutputToRunNo();
// Method 2: Declare existing data files (raw collections, xml collections, root file)
// plugin->AddDataFile("/alice/data/2008/LHC08c/000057657/raw/Run57657.Merged.RAW.tag.root");
// Define alien work directory where all files will be copied. Relative to alien $HOME.
plugin->SetGridWorkingDir(taskname);
// Declare alien output directory. Relative to working directory.
plugin->SetGridOutputDir("output"); // In this case will be $HOME/taskname/out
// plugin->SetAdditionalLibs("libTree.so libGeom.so libPhysics.so libVMC.so libMinuit.so libSTEERBase.so libESD.so libAOD.so libANALYSIS.so libOADB.so libANALYSISalice.so libCORRFW.so libPWGHFbase.so libPWGflowBase.so libPWGflowTasks.so libPWGHFvertexingHF.so");
// plugin->SetAdditionalLibs("libCORRFW.so libPWGHFbase.so libPWGflowBase.so libPWGflowTasks.so libPWGHFvertexingHF.so");
plugin->SetAnalysisSource("AliAnalysisTaskFlowd.cxx");
//plugin->SetAdditionalLibs("AliAnalysisTaskFlowd.h AliAnalysisTaskFlowd.cxx ");
cout<<"-->>>>>>>>>>>>>>>>>>>>>>>>> 1"<<endl;
// Declare the analysis source files names separated by blancs. To be compiled runtime
// using ACLiC on the worker nodes.
//plugin->SetAdditionalLibs("libPWGHFbase.so libPWGflowBase.so libPWGflowTasks.so libPWGHFvertexingHF.so AliAODMuonReplicator0.so");
cout<<"-->>>>>>>>>>>>>>>>>>>>>>>>> 2"<<endl;
// plugin->SetAdditionalLibs("libTree.so libGeom.so libPhysics.so libVMC.so libMinuit.so libSTEERBase.so libESD.so libAOD.so libANALYSIS.so libOADB.so libANALYSISalice.so libCORRFW.so libPWGHFbase.so libPWGflowBase.so libPWGflowTasks.so libPWGHFvertexingHF.so");
// plugin->SetAnalysisSource("AliAnalysisTaskESDMuonFilterO.cxx");
//plugin->SetAnalysisSource("AliAODMuonReplicator0.cxx");
// Declare all libraries (other than the default ones for the framework. These will be
// loaded by the generated analysis macro. Add all extra files (task .cxx/.h) here.
// plugin->SetAdditionalLibs("AliAODMuonReplicator0_cxx.so");
// plugin->SetAdditionalLibs("AliAnalysisTaskESDMuonFilterO_cxx.so");
//questo
plugin->SetAdditionalLibs("libSTEERBase.so libESD.so AliAnalysisTaskFlowd.h AliAnalysisTaskFlowd.cxx libPWGflowBase.so libPWGflowTasks.so libPWGHFbase.so libPWGHFvertexingHF.so");
plugin->AddIncludePath("-I. -I$ROOTSYS/include -I$ALICE_ROOT -I$ALICE_ROOT/include -I$ALICE_ROOT/ITS -I$ALICE_ROOT/TPC -I$ALICE_ROOT/CONTAINERS -I$ALICE_ROOT/STEER/STEER -I$ALICE_ROOT/STEER/STEERBase -I$ALICE_ROOT/STEER/ESD -I$ALICE_ROOT/STEER/AOD -I$ALICE_ROOT/TRD -I$ALICE_ROOT/macros -I$ALICE_ROOT/ANALYSIS -I$ALICE_ROOT/OADB -I$ALICE_ROOT/PWGHF -I$ALICE_ROOT/PWGHF/base -I$ALICE_ROOT/PWGHF/vertexingHF -I$ALICE_ROOT/PWG/FLOW/Base -I$ALICE_ROOT/PWG/FLOW/Tasks -g");
// plugin->SetAdditionalLibs("AliAODMuonReplicator0.h AliAODMuonReplicator0.cxx");
// plugin->SetAdditionalLibs("AliAnalysisTaskESDMuonFilterO.h AliAnalysisTaskESDMuonFilterO.cxx");
//plugin->SetAdditionalLibs("AliAODMuonReplicator0.h AliAODMuonReplicator0.cxx AliAnalysisTaskESDMuonFilterO.h AliAnalysisTaskESDMuonFilterO.cxx");
cout<<"-->>>>>>>>>>>>>>>>>>>>>>>>> 3"<<endl;
// plugin->SetAdditionalLibs("AliAODMuonReplicator0.h AliAODMuonReplicator0.cxx");
// plugin->SetAdditionalLibs("AliAnalysisTaskESDMuonFilterO.h AliAnalysisTaskESDMuonFilterO.cxx");
// Declare the output file names separated by blancs.
// (can be like: file.root or [email protected]::Niham::File)
// To only save certain files, use SetDefaultOutputs(kFALSE), and then
// SetOutputFiles("list.root other.filename") to choose which files to save
plugin->SetDefaultOutputs();
//plugin->SetOutputFiles("list.root");
// Optionally set a name for the generated analysis macro (default MyAnalysis.C)
//.........这里部分代码省略.........
示例14: CreateAlienHandlerHadEt
AliAnalysisGrid* CreateAlienHandlerHadEt(Int_t dataset, Bool_t data, Int_t test, Int_t material, Bool_t altV0Scale = kFALSE, bool runCompiledVersion = kFALSE, int simflag = 0)
{
// Check if user has a valid token, otherwise make one. This has limitations.
// One can always follow the standard procedure of calling alien-token-init then
// source /tmp/gclient_env_$UID in the current shell.
//if (!AliAnalysisGrid::CreateToken()) return NULL;
AliAnalysisAlien *plugin = new AliAnalysisAlien();
// Overwrite all generated files, datasets and output results from a previous session
plugin->SetOverwriteMode();
// Set the run mode (can be "full", "test", "offline", "submit" or "terminate")
if(test==1){
plugin->SetRunMode("test"); // VERY IMPORTANT - DECRIBED BELOW
}
else{
if(test==0){
plugin->SetRunMode("full"); // VERY IMPORTANT - DECRIBED BELOW
}
else{
plugin->SetRunMode("terminate"); // VERY IMPORTANT - DECRIBED BELOW
}
}
//needed for local testing?
//plugin->SetFileForTestMode("files.txt"); // file should contain path name to a local directory containg *ESDs.root etc
// Set versions of used packages
plugin->SetAPIVersion("V1.1x");
plugin->SetROOTVersion("v5-34-08-6");
plugin->SetAliROOTVersion("vAN-20140624");
// Declare input data to be processed.
plugin->AddIncludePath("-I$ALICE_ROOT/PWGUD/base -I$ALICE_ROOT/ANALYSIS -I$ALICE_ROOT/PWGPP -I$ALICE_ROOT/PWGPP/ITS");
// Method 1: Create automatically XML collections using alien 'find' command.
// Define production directory LFN
// plugin->SetGridDataDir("/alice/sim/LHC10a18");
// Set data search pattern
// plugin->SetDataPattern("*ESDs.root"); // simulated, tags not used
// plugin->SetDataPattern("*ESDs/pass4/*ESDs.root"); // real data check reco pass and data base directory
// plugin->SetRunPrefix("000"); // real data
// plugin->SetDataPattern("*tag.root"); // Use ESD tags (same applies for AOD's)
// ...then add run numbers to be considered
// plugin->AddRunNumber(125020); // simulated
// plugin->AddRunNumber(104065); // real data
// Method 2: Declare existing data files (raw collections, xml collections, root file)
// If no path mentioned data is supposed to be in the work directory (see SetGridWorkingDir())
// XML collections added via this method can be combined with the first method if
// the content is compatible (using or not tags)
//plugin->AddDataFile("tag.xml");
// plugin->AddDataFile("/alice/data/2008/LHC08c/000057657/raw/Run57657.Merged.RAW.tag.root");
TString outputdir = "etPbPbSim";
if(data)outputdir = "etPbPbData";
if(dataset==20100){//PbPb 2.76 TeV
if(data){//185 jobs
cout<<"Running over data"<<endl;
plugin->SetGridDataDir("/alice/data/2010/LHC10h");//PbPb data
plugin->SetDataPattern("*ESDs/pass2/*ESDs.root");
plugin->SetRunPrefix("000"); // real data
}
else{
cout<<"Running over MC"<<endl;
if(material==0){
plugin->SetGridDataDir("/alice/sim/LHC11a10a_bis");
//plugin->SetGridDataDir("/alice/sim/LHC11a4_bis");//PbPb simulation
}
if(material==1){//7% more material
plugin->SetGridDataDir("/alice/sim/LHC10h9");//PbPb simulation
}
if(material==-1){//7% less material
plugin->SetGridDataDir("/alice/sim/LHC10h10");//PbPb simulation
}
if(material==10){//OK it's a cheat but this runs on DPM jet
plugin->SetGridDataDir("/alice/sim/LHC10h2");//PbPb simulation
}
if(material==11){//OK it's a cheat but this runs on AMPT
plugin->SetGridDataDir(" /alice/sim/LHC11a9a");//PbPb simulation
plugin->AddRunNumber(137366);
}
plugin->SetDataPattern("*ESDs.root");
//plugin->SetGridWorkingDir("etPbPbSim");
}
if(simflag==0){//not really using it as a simflag but that way I don't need a new argument...
plugin->AddRunNumber(139465);
outputdir += "139465";
}
if(simflag==1){//not really using it as a simflag but that way I don't need a new argument...
outputdir += "138442";
plugin->AddRunNumber(138442);
}
if(simflag==2){//not really using it as a simflag but that way I don't need a new argument...
outputdir += "138364";
plugin->AddRunNumber(138364);
}
if(simflag==3){//not really using it as a simflag but that way I don't need a new argument...
outputdir += "138396";
plugin->AddRunNumber(138396);
}
if(simflag==4){//not really using it as a simflag but that way I don't need a new argument...
outputdir += "137722";
plugin->AddRunNumber(137722);
//.........这里部分代码省略.........
示例15: CreateAlienHandler
//######################################################################################################################################
AliAnalysisAlien* CreateAlienHandler ( const char* gridMode, const char* tag, unsigned int nr_test_files, unsigned int TTL,
const char* outdir, const char subworkdir, const char* extradirlvl ) {
AliAnalysisAlien* plugin = new AliAnalysisAlien();
if ( !plugin ) { std::cout << "!!! -->> alien handler could not be created <<-- !!!" << std::endl; return NULL;}
plugin->AddIncludePath("-I.");
plugin->AddIncludePath("-I$ALICE_PHYSICS/include");
plugin->AddIncludePath("-I$ALICE_ROOT/include");
plugin->AddIncludePath("-I$FASTJET/include");
plugin->AddIncludePath("-I/usr/include");
// unsigned int kGridMaxMergeFiles = 100; // Number of files merged in a chunk grid run range
// unsigned int kMaxInitFailed = 10 ; // Optionally set number of failed jobs that will trigger killing waiting sub-jobs.
TString kGridOutdir = outdir ; // AliEn output directory. If blank will become output_<kTrainName>
TString kGridSubWorkDir = subworkdir ; // sub working directory not to confuse different run xmls
TString kGridExtraAliendirLevel = extradirlvl ; // sub working directory not to confuse different run xmls
TString kWorkDir = tag; // AliEn work dir; relative to AliEn $HOME
TString kTrainName = "cdfjets"; // *CHANGE ME* (no blancs or special characters)
TString macroName(""); macroName = Form("%s.C", kTrainName.Data());
TString execName(""); execName = Form("%s.sh", kTrainName.Data());
TString jdlName(""); jdlName = Form("%s.jdl", kTrainName.Data());
// Set run mode. Can be "full", "test", "offline", "submit" or "merge"
plugin->SetRunMode(gridMode);
if (std::strcmp(gridMode, "test")) { plugin->SetCheckCopy(kFALSE); }
// Set the number of test files; set to kGridFilesPerJob as to evaluate the memory consumption and ttl on grid
plugin->SetNtestFiles ( nr_test_files );
// Job tag
plugin->SetJobTag(tag);
// AliEn directory containing the input packages
plugin->SetGridWorkingDir(tag);
// Declare alien output directory. Relative to working directory.
plugin->SetGridOutputDir( kGridOutdir.Data() ); // In this case will be $HOME/work/output
// Optionally modify the executable name (default analysis.sh)
plugin->SetExecutable(execName.Data());
// Optionally set a name for the generated analysis macro (default MyAnalysis.C)
plugin->SetAnalysisMacro(macroName.Data());
// Optionally modify the name of the generated JDL (default analysis.jdl)
plugin->SetJDLName(jdlName.Data());
// Use the output files connected to output containers from the analysis manager
// rather than the files defined by SetOutputFiles
plugin->SetDefaultOutputs(kTRUE);
//******************** PLUGIN OPTIONS ************************
// min (nr,4) replicas in grid storage
plugin->SetNumberOfReplicas(2);
// Optionally set time to live
plugin->SetTTL(TTL);
// Optionally set maximum number of input files/subjob (default 100, put 0 to ignore)
plugin->SetSplitMaxInputFileNumber ( nr_test_files );
// Use xrootd tweaks to reduce timeouts in file access
plugin->SetFastReadOption ( kFALSE );
// Maximum initial consecutive subjobs accepted to fail.
// plugin->SetMaxInitFailed ( kMaxInitFailed );
// Optionally resubmit threshold.
// plugin->SetMasterResubmitThreshold(90);
// Number of runs per masterjob
// plugin->SetNrunsPerMaster(1);
// exit from aliensh after submmiting job
plugin->SetDropToShell ( kTRUE );
// Overwrite existing files if any
plugin->SetOverwriteMode();
// write the output to subdirs named after run number
// plugin->SetOutputToRunNo(1);
// Optionally set input format (default xml-single)
plugin->SetInputFormat("xml-single");
// Optionally modify job price (default 1)
plugin->SetPrice(1);
// We split per SE or file
plugin->SetSplitMode("se");
// MERGING - Enable merging via automatic JDL
plugin->SetMergeViaJDL(kTRUE);
// Maximum number of files to be merged in one chunk
plugin->SetOneStageMerging(kFALSE);
//.........这里部分代码省略.........