Bool_t kUseCPAR = kFALSE; // use par files for common libs
Bool_t kFillAOD = kTRUE; // switch of AOD filling for on the fly analysis
Bool_t kFilterAOD = kTRUE;
+Float_t kJetTriggerPtCut = 20; // pT for jet trigger in case of iFilter==2
Int_t kSaveAOD = 8; // Bit switch 1 = Full AOD 2 = Jet AOD , 4 = PartCorr, 8 = JCORRAN
//== general input and output variables
// const Int_t kSysError = 5000;
// const Int_t kFatal = 6000;
Int_t kUseSysInfo = 0; // activate debugging
-Long64_t kNumberOfEvents = 1234567890; // number of events to process from the chain
+Long64_t kNumberOfEvents = 1234567890; // Number of events to process from the chain
Bool_t kUseMC = kTRUE; // use MC info
Bool_t kIsMC = kTRUE; // is MC info, if false it overwrites Use(AOD)MC
Bool_t kUseAODMC = kTRUE; // use MC infA
TString kDefaultJetBranch = ""; // is currently set when filled (iJETAN or clusters) or from config macro
TString kDefaultJetBackgroundBranch = ""; // is currently set when filled (jet clsuters
TString kDefaultJetBackgroundBranchCut1 = ""; // is currently set when filled (jet clsuters
+TString kDefaultJetBackgroundBranchCut2 = ""; // is currently set when filled (jet clsuters
TString kDefaultJetBackgroundBranch_extra = ""; // is currently set when filled (jet clsuters)
TString kJetSubtractBranches = ""; // is currently set when filled (jet clsuters
TString kJetSubtractBranchesCut1 = ""; // is currently set when filled (jet clsuters
+TString kJetSubtractBranchesCut2 = ""; // is currently set when filled (jet clsuters
TString kJetSubtractBranches_extra = ""; // is currently set when filled (jet clsuters
TString kDefaultJetBranchMC = ""; // is currently set when filled (iJETAN or clusters) or from config macro
//== grid plugin setup variables
Bool_t kPluginUse = kTRUE; // do not change
Bool_t kPluginUseProductionMode = kFALSE; // use the plugin in production mode
-TString kPluginRootVersion = "v5-28-00c"; // *CHANGE ME IF MORE RECENT IN GRID*
+TString kPluginRootVersion = "v5-30-02"; // *CHANGE ME IF MORE RECENT IN GRID*
TString kPluginAliRootVersion = "v4-21-01a-AN"; // *CHANGE ME IF MORE RECENT IN GRID*
Bool_t kPluginMergeViaJDL = kTRUE; // merge via JDL
Bool_t kPluginFastReadOption = kFALSE; // use xrootd tweaks
Float_t fTrackEtaWindow = 0.9;
Float_t fJetEtaWindow = 0.5;
-
+ Float_t fVertexWindow = 10;
/*
if(kIsPbPb){// for pass1
Float_t fTrackEtaWindow = 0.8;
iTriggerHIC = 2;
rejectBkg = false; // for the moment...
}
- AliPhysicsSelectionTask* physSelTask = AddTaskPhysicsSelection(kIsMC,rejectBkg);
+ AliPhysicsSelectionTask* physSelTask = AddTaskPhysicsSelection(kIsMC,true,rejectBkg);
- mgr->RegisterExtraFile("EventStat_temp.root");
+ // mgr->RegisterExtraFile("event_stat.root");
mgr->AddStatisticsTask();
}
else{
iPhysicsSelectionFlag = AliVEvent::kMB;
}
-
- if(iCentralitySelection){
+
+ if(kIsPbPb&&!iAODanalysis){
// has to run before AOD filter
gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskCentrality.C");
- // const char* file1="$ALICE_ROOT/ANALYSIS/macros/AliCentralityBy1D_137161.root";
- // const char* file2="$ALICE_ROOT/ANALYSIS/macros/AliCentralityByFunction_137161.root";
AliCentralitySelectionTask *taskC = AddTaskCentrality();
if (!taskC) ::Warning("AnalysisTrainPWG4Jets", "AliCentralitySelectionTask cannot run for this train conditions - EXCLUDED");
- }
+
+ gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskEventplane.C");
+ AliEPSelectionTask *taskEP = AddTaskEventplane();
+ if (!taskEP) ::Warning("AnalysisTrainPWG4Jets", "AliEventplan cannot run for this train conditions - EXCLUDED");
+ }
+
if (iESDfilter && !iAODanalysis) {
// ESD filter task configuration.
gROOT->LoadMacro("$ALICE_ROOT/PWG4/macros/AddTaskESDFilterPWG4Train.C");
- AliAnalysisTaskESDfilter *taskesdfilter = AddTaskESDFilter(kUseKinefilter,kUseMuonfilter);
+ // switch on centrality make for PbPb
+ AliAnalysisTaskESDfilter *taskesdfilter = AddTaskESDFilterPWG4Train(kUseKinefilter); // carefull, if physics selection is enabled you may get not primary vertex pointer later on...
taskesdfilter->SetEnableFillAOD(!kFilterAOD);
taskesdfilter->DisableV0s();
taskesdfilter->DisableCascades();
if(iPWG4Cluster&1){
if(kIsPbPb){
- taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.4,0,1, kDeltaAODJetName.Data(),0.15,fTrackEtaWindow,0); // this one is for the background and random jets, random cones with no skip
+ taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.4,0,1, kDeltaAODJetName.Data(),0.15,fTrackEtaWindow,fVertexWindow,0); // this one is for the background and random jets, random cones with no skip
taskCl->SetBackgroundCalc(kTRUE);
taskCl->SetNRandomCones(1);
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
// taskCl->SetDebugLevel(11);
taskCl->SetCentralityCut(fCenLo,fCenUp);
- taskCl->SetGhostEtamax(fTrackEtaWindow);
+
+ taskCl->SetJetTypes(1<<0|1<<2|1<<3);
kDefaultJetBackgroundBranch = Form("%s_%s",AliAODJetEventBackground::StdBranchName(),taskCl->GetJetOutputBranch());
kJetListSpectrum.Add(new TObjString(taskCl->GetJetOutputBranch()));
kJetListSpectrum.Add(new TObjString(Form("%sRandomConeSkip%02d",taskCl->GetJetOutputBranch(),0)));
kJetListSpectrum.Add(new TObjString(Form("%sRandomCone_random",taskCl->GetJetOutputBranch())));
+
kJetSubtractBranches += Form("%s%s ",taskCl->GetJetOutputBranch(),"RandomConeSkip00");
kJetSubtractBranches += Form("%s%s ",taskCl->GetJetOutputBranch(),"RandomCone_random");
- taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.4,0,1, kDeltaAODJetName.Data(),2.0,fTrackEtaWindow,0); // this one is for the background and random jets, random cones with no skip
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.4,0,1, kDeltaAODJetName.Data(),1.0,fTrackEtaWindow,fVertexWindow,0); // this one is for the background and random jets, random cones with no skip
taskCl->SetNRandomCones(1);
taskCl->SetBackgroundCalc(kTRUE);
taskCl->SetCentralityCut(fCenLo,fCenUp);
- taskCl->SetGhostEtamax(fTrackEtaWindow);
if(iAODanalysis==2)taskCl->SetAODTrackInput(kTRUE);
+
+ taskCl->SetJetTypes(1<<0|1<<2|1<<3);
kDefaultJetBackgroundBranchCut1 = Form("%s_%s",AliAODJetEventBackground::StdBranchName(),taskCl->GetJetOutputBranch());
kJetSubtractBranchesCut1 += Form("%s%s ",taskCl->GetJetOutputBranch(),"RandomConeSkip00");
kJetSubtractBranchesCut1 += Form("%s%s ",taskCl->GetJetOutputBranch(),"RandomCone_random");
kJetListSpectrum.Add(new TObjString(Form("%sRandomConeSkip%02d",taskCl->GetJetOutputBranch(),0)));
kJetListSpectrum.Add(new TObjString(Form("%sRandomCone_random",taskCl->GetJetOutputBranch())));
+ taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.4,0,1, kDeltaAODJetName.Data(),2.0,fTrackEtaWindow,fVertexWindow,0); // this one is for the background and random jets, random cones with no skip
+ taskCl->SetNRandomCones(1);
+ taskCl->SetBackgroundCalc(kTRUE);
+ taskCl->SetCentralityCut(fCenLo,fCenUp);
+ if(iAODanalysis==2)taskCl->SetAODTrackInput(kTRUE);
+
+ taskCl->SetJetTypes(1<<0|1<<2|1<<3);
+ kDefaultJetBackgroundBranchCut2 = Form("%s_%s",AliAODJetEventBackground::StdBranchName(),taskCl->GetJetOutputBranch());
+ kJetSubtractBranchesCut2 += Form("%s%s ",taskCl->GetJetOutputBranch(),"RandomConeSkip00");
+ kJetSubtractBranchesCut2 += Form("%s%s ",taskCl->GetJetOutputBranch(),"RandomCone_random");
+ kJetListSpectrum.Add(new TObjString(taskCl->GetJetOutputBranch()));
+ kJetListSpectrum.Add(new TObjString(Form("%sRandomConeSkip%02d",taskCl->GetJetOutputBranch(),0)));
+ kJetListSpectrum.Add(new TObjString(Form("%sRandomCone_random",taskCl->GetJetOutputBranch())));
+
+
if (iPWG4FastEmbedding) {
AliAnalysisTaskJetCluster *taskClEmb = 0;
- taskClEmb = AddTaskJetCluster("AODextra","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.4,0,1, kDeltaAODJetName.Data(),0.15,fTrackEtaWindow); // this one is for the background and random jets
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ taskClEmb = AddTaskJetCluster("AODextra","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.4,0,1, kDeltaAODJetName.Data(),0.15,fTrackEtaWindow,fVertexWindow); // this one is for the background and random jets
taskClEmb->SetBackgroundCalc(kTRUE);
taskClEmb->SetCentralityCut(fCenLo,fCenUp);
- taskClEmb->SetGhostEtamax(fTrackEtaWindow);
if(iAODanalysis==2)taskClEmb->SetAODTrackInput(kTRUE);
kDefaultJetBackgroundBranch_extra = Form("%s_%s",AliAODJetEventBackground::StdBranchName(),taskClEmb->GetJetOutputBranch());
- taskClEmb = AddTaskJetCluster("AODextraonly","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.4,0,1, kDeltaAODJetName.Data(),0.15,fTrackEtaWindow); // this one is for the background and random jets
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ taskClEmb = AddTaskJetCluster("AODextraonly","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.4,0,1, kDeltaAODJetName.Data(),0.15,fTrackEtaWindow,fVertexWindow); // this one is for the background and random jets
taskClEmb->SetBackgroundCalc(kFALSE);
taskClEmb->SetCentralityCut(fCenLo,fCenUp);
- taskClEmb->SetGhostEtamax(fTrackEtaWindow);
if(iAODanalysis==2)taskClEmb->SetAODTrackInput(kTRUE);
- taskClEmb = AddTaskJetCluster("AODextra","",kHighPtFilterMask,iPhysicsSelectionFlag,"ANTIKT",0.4,0,1,kDeltaAODJetName.Data(),0.15,fTrackEtaWindow);
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ taskClEmb = AddTaskJetCluster("AODextra","",kHighPtFilterMask,iPhysicsSelectionFlag,"ANTIKT",0.4,0,1,kDeltaAODJetName.Data(),0.15,fTrackEtaWindow,fVertexWindow);
taskClEmb->SetCentralityCut(fCenLo,fCenUp);
taskClEmb->SetBackgroundBranch(kDefaultJetBackgroundBranch_extra.Data());
kJetSubtractBranches_extra += Form("%s ",taskClEmb->GetJetOutputBranch());
if(iAODanalysis==2)taskClEmb->SetAODTrackInput(kTRUE);
- taskClEmb = AddTaskJetCluster("AODextraonly","",kHighPtFilterMask,iPhysicsSelectionFlag,"ANTIKT",0.4,0,1,kDeltaAODJetName.Data(),0.15,fTrackEtaWindow);
+ taskClEmb = AddTaskJetCluster("AODextraonly","",kHighPtFilterMask,iPhysicsSelectionFlag,"ANTIKT",0.4,0,1,kDeltaAODJetName.Data(),0.15,fTrackEtaWindow,fVertexWindow);
taskClEmb->SetCentralityCut(fCenLo,fCenUp);
if(iAODanalysis==2)taskClEmb->SetAODTrackInput(kTRUE);
}
- taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.2,0,1, kDeltaAODJetName.Data(),0.15); // this one is for the background and random jets
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.2,0,1, kDeltaAODJetName.Data(),0.15,fTrackEtaWindow,fVertexWindow,0); // this one is for the background and random jets
+ taskCl->SetNRandomCones(1);
taskCl->SetBackgroundCalc(kTRUE);
taskCl->SetCentralityCut(fCenLo,fCenUp);
- taskCl->SetGhostEtamax(fTrackEtaWindow);
+ taskCl->SetJetTypes(1<<0|1<<2|1<<3);
kJetListSpectrum.Add(new TObjString(taskCl->GetJetOutputBranch()));
+ kJetListSpectrum.Add(new TObjString(Form("%sRandomConeSkip%02d",taskCl->GetJetOutputBranch(),0)));
+ kJetListSpectrum.Add(new TObjString(Form("%sRandomCone_random",taskCl->GetJetOutputBranch())));
+
+
+
if(iAODanalysis==2)taskCl->SetAODTrackInput(kTRUE);
}
else{
- taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.6,0,1,kDeltaAODJetName.Data(),0.15); // this one is for the background jets
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.6,0,1,kDeltaAODJetName.Data(),0.15,fTrackEtaWindow,fVertexWindow); // this one is for the background jets
taskCl->SetBackgroundCalc(kTRUE);
kDefaultJetBackgroundBranch = Form("%s_%s",AliAODJetEventBackground::StdBranchName(),taskCl->GetJetOutputBranch());
- taskCl->SetGhostEtamax(fTrackEtaWindow);
if(iAODanalysis==2)taskCl->SetAODTrackInput(kTRUE);
kJetListSpectrum.Add(new TObjString(taskCl->GetJetOutputBranch()));
- taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.4,0,1,kDeltaAODJetName.Data(),0.15);
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.4,0,1,kDeltaAODJetName.Data(),0.15,fTrackEtaWindow,fVertexWindow);
taskCl->SetBackgroundCalc(kTRUE);
- taskCl->SetGhostEtamax(fTrackEtaWindow);
if(iAODanalysis==2)taskCl->SetAODTrackInput(kTRUE);
kJetListSpectrum.Add(new TObjString(taskCl->GetJetOutputBranch()));
}
- taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"ANTIKT",0.4,2,1,kDeltaAODJetName.Data(),0.15);
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"ANTIKT",0.4,0,1,kDeltaAODJetName.Data(),0.15,fTrackEtaWindow,fVertexWindow); // thid id sldo got the random cones but avoiding the two leading jets
taskCl->SetCentralityCut(fCenLo,fCenUp);
if(kIsPbPb)taskCl->SetBackgroundBranch(kDefaultJetBackgroundBranch.Data());
- // taskCl->SetDebugLevel(3);
-
taskCl->SetNRandomCones(1);
+ if(iFilterAnalysis==2){
+ taskCl->SetJetTriggerPtCut(kJetTriggerPtCut);
+ }
if(iAODanalysis==2)taskCl->SetAODTrackInput(kTRUE);
+
+ taskCl->SetJetTypes(1<<0|1<<2); // only store the RC on full event with 2 removed
kDefaultJetBranch = taskCl->GetJetOutputBranch();
kJetSubtractBranches += Form("%s ",taskCl->GetJetOutputBranch());
- kJetSubtractBranches += Form("%s%s ",taskCl->GetJetOutputBranch(),"RandomConeSkip02");
- kJetSubtractBranches += Form("%s%s ",taskCl->GetJetOutputBranch(),"RandomCone_random");
+ // kJetSubtractBranches += Form("%s%s ",taskCl->GetJetOutputBranch(),"RandomConeSkip02");
+ // kJetSubtractBranches += Form("%s%s ",taskCl->GetJetOutputBranch(),"RandomCone_random");
kJetListSpectrum.Add(new TObjString(taskCl->GetJetOutputBranch()));
kJetListSpectrum.Add(new TObjString(Form("%sRandomConeSkip%02d",taskCl->GetJetOutputBranch(),2)));
- kJetListSpectrum.Add(new TObjString(Form("%sRandomCone_random",taskCl->GetJetOutputBranch())));
+ // kJetListSpectrum.Add(new TObjString(Form("%sRandomCone_random",taskCl->GetJetOutputBranch())));
- taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"ANTIKT",0.4,2,1,kDeltaAODJetName.Data(),2.0);
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"ANTIKT",0.4,0,1,kDeltaAODJetName.Data(),1.0,fTrackEtaWindow,fVertexWindow);
+ taskCl->SetNRandomCones(1);
taskCl->SetCentralityCut(fCenLo,fCenUp);
if(iAODanalysis==2)taskCl->SetAODTrackInput(kTRUE);
if(kIsPbPb)taskCl->SetBackgroundBranch(kDefaultJetBackgroundBranchCut1.Data());
+
+ taskCl->SetJetTypes(1<<0|1<<2); // only store the RC on full event with 2 removed
kJetSubtractBranchesCut1 += Form("%s ",taskCl->GetJetOutputBranch());
kJetListSpectrum.Add(new TObjString(taskCl->GetJetOutputBranch()));
+ kJetListSpectrum.Add(new TObjString(Form("%sRandomConeSkip%02d",taskCl->GetJetOutputBranch(),2)));
- if(iFilterAnalysis==2){
- if(kIsPbPb)taskCl->SetJetTriggerPtCut(50.);
- else taskCl->SetJetTriggerPtCut(20.);
- }
- // tmp track qa...
- taskCl = AddTaskJetCluster("AOD","",1<<4|1<<8,iPhysicsSelectionFlag,"ANTIKT",0.4,2,1,kDeltaAODJetName.Data(),2.0);
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"ANTIKT",0.4,0,1,kDeltaAODJetName.Data(),2.0,fTrackEtaWindow,fVertexWindow);
taskCl->SetCentralityCut(fCenLo,fCenUp);
- taskCl->SetFilterMask(1<<4|1<<8,1);
-
+ taskCl->SetNRandomCones(1);
+ if(iAODanalysis==2)taskCl->SetAODTrackInput(kTRUE);
+ if(kIsPbPb)taskCl->SetBackgroundBranch(kDefaultJetBackgroundBranchCut2.Data());
+ taskCl->SetJetTypes(1<<0|1<<2); // only store the RC on full event with 2 removed
+ kJetSubtractBranchesCut2 += Form("%s ",taskCl->GetJetOutputBranch());
+ kJetListSpectrum.Add(new TObjString(taskCl->GetJetOutputBranch()));
+ kJetListSpectrum.Add(new TObjString(Form("%sRandomConeSkip%02d",taskCl->GetJetOutputBranch(),2)));
- taskCl = AddTaskJetCluster("AOD","",1<<9|1<<8,iPhysicsSelectionFlag,"ANTIKT",0.4,2,1,kDeltaAODJetName.Data(),2.0);
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ // tmp track qa...
+ /*
+ taskCl = AddTaskJetCluster("AOD","",1<<8,iPhysicsSelectionFlag,"ANTIKT",0.4,2,1,kDeltaAODJetName.Data(),2.0);
taskCl->SetCentralityCut(fCenLo,fCenUp);
- taskCl->SetFilterMask(1<<9|1<<8,2);
-
-
-
- taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"ANTIKT",0.2,0,1,kDeltaAODJetName.Data(),0.15);
+ taskCl->SetFilterMask(1<<4|1<<8,1);
+ */
+ taskCl = AddTaskJetCluster("AOD","",kHighPtFilterMask,iPhysicsSelectionFlag,"ANTIKT",0.2,0,1,kDeltaAODJetName.Data(),0.15,fTrackEtaWindow,fVertexWindow,2);
taskCl->SetCentralityCut(fCenLo,fCenUp);
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ taskCl->SetNRandomCones(1);
if(iAODanalysis==2)taskCl->SetAODTrackInput(kTRUE);
if(kIsPbPb)taskCl->SetBackgroundBranch(kDefaultJetBackgroundBranch.Data());
+
+ taskCl->SetJetTypes(1<<0|1<<2);
kJetSubtractBranches += Form("%s ",taskCl->GetJetOutputBranch());
+ // kJetSubtractBranches += Form("%s%s ",taskCl->GetJetOutputBranch(),"RandomConeSkip00");
+ // kJetSubtractBranches += Form("%s%s ",taskCl->GetJetOutputBranch(),"RandomCone_random");
kJetListSpectrum.Add(new TObjString(taskCl->GetJetOutputBranch()));
+ kJetListSpectrum.Add(new TObjString(Form("%sRandomConeSkip%02d",taskCl->GetJetOutputBranch(),2)));
+
if(kUseAODMC){
if(kIsPbPb){
- taskCl = AddTaskJetCluster("AODMC","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.4,0,1, kDeltaAODJetName.Data(),0.15,fTrackEtaWindow); // this one is for the background and random jets
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ taskCl = AddTaskJetCluster("AODMC","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.4,0,1, kDeltaAODJetName.Data(),0.15,fTrackEtaWindow,fVertexWindow); // this one is for the background and random jets
taskCl->SetBackgroundCalc(kTRUE);
- taskCl->SetGhostEtamax(0.9);
kDefaultJetBackgroundBranchMC = Form("%s_%s",AliAODJetEventBackground::StdBranchName(),taskCl->GetJetOutputBranch());
if(iAODanalysis==2)taskCl->SetAODTrackInput(kTRUE);
kJetListSpectrum.Add(new TObjString(taskCl->GetJetOutputBranch()));
- taskCl = AddTaskJetCluster("AODMC2","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.4,0,1, kDeltaAODJetName.Data(),0.15); // this one is for the background and random jets
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ taskCl = AddTaskJetCluster("AODMC2","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.4,0,1, kDeltaAODJetName.Data(),0.15,fVertexWindow,fVertexWindow); // this one is for the background and random jets
taskCl->SetBackgroundCalc(kTRUE);
- taskCl->SetGhostEtamax(fTrackEtaWindow);
- kDefaultJetBackgroundBranchMC2 = Form("%s_%s",AliAODJetEventBackground::StdBranchName(),taskCl->GetJetOutputBranch(),fTrackEtaWindow);
+ kDefaultJetBackgroundBranchMC2 = Form("%s_%s",AliAODJetEventBackground::StdBranchName(),taskCl->GetJetOutputBranch());
if(iAODanalysis==2)taskCl->SetAODTrackInput(kTRUE);
kJetListSpectrum.Add(new TObjString(taskCl->GetJetOutputBranch()));
}
else{
- taskCl = AddTaskJetCluster("AODMC","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.6,0,1, kDeltaAODJetName.Data(),0.15,fTrackEtaWindow); // this one is for the background and random jets
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ taskCl = AddTaskJetCluster("AODMC","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.6,0,1, kDeltaAODJetName.Data(),0.15,fTrackEtaWindow,fVertexWindow); // this one is for the background and random jets
taskCl->SetBackgroundCalc(kTRUE);
- taskCl->SetGhostEtamax(fTrackEtaWindow);
kDefaultJetBackgroundBranchMC = Form("%s_%s",AliAODJetEventBackground::StdBranchName(),taskCl->GetJetOutputBranch());
kJetListSpectrum.Add(new TObjString(taskCl->GetJetOutputBranch()));
- taskCl = AddTaskJetCluster("AODMC2","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.6,0,1, kDeltaAODJetName.Data(),0.15,fTrackEtaWindow); // this one is for the background and random jets
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ taskCl = AddTaskJetCluster("AODMC2","",kHighPtFilterMask,iPhysicsSelectionFlag,"KT",0.6,0,1, kDeltaAODJetName.Data(),0.15,fTrackEtaWindow,fVertexWindow); // this one is for the background and random jets
taskCl->SetBackgroundCalc(kTRUE);
- taskCl->SetGhostEtamax(fTrackEtaWindow);
kDefaultJetBackgroundBranchMC2 = Form("%s_%s",AliAODJetEventBackground::StdBranchName(),taskCl->GetJetOutputBranch());
if(iAODanalysis==2)taskCl->SetAODTrackInput(kTRUE);
kJetListSpectrum.Add(new TObjString(taskCl->GetJetOutputBranch()));
// pp background calcs...
}
- taskCl = AddTaskJetCluster("AODMC","",kHighPtFilterMask,iPhysicsSelectionFlag,"ANTIKT",0.4,0,1, kDeltaAODJetName.Data(),0.15,fTrackEtaWindow);
- taskCl->SetGhostEtamax(fTrackEtaWindow);
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ taskCl = AddTaskJetCluster("AODMC","",kHighPtFilterMask,iPhysicsSelectionFlag,"ANTIKT",0.4,0,1, kDeltaAODJetName.Data(),0.15,fTrackEtaWindow,fVertexWindow);
if(kIsPbPb)taskCl->SetBackgroundBranch(kDefaultJetBackgroundBranchMC.Data());
kDefaultJetBranchMC = taskCl->GetJetOutputBranch();
if(iAODanalysis==2)taskCl->SetAODTrackInput(kTRUE);
kJetListSpectrum.Add(new TObjString(taskCl->GetJetOutputBranch()));
- taskCl = AddTaskJetCluster("AODMC2","",kHighPtFilterMask,iPhysicsSelectionFlag,"ANTIKT",0.4,0,1, kDeltaAODJetName.Data(),0.15,fTrackEtaWindow);
- taskCl->SetEventSelection(kTRUE); // saves some computing time, not all vertices are processed
+ taskCl = AddTaskJetCluster("AODMC2","",kHighPtFilterMask,iPhysicsSelectionFlag,"ANTIKT",0.4,0,1, kDeltaAODJetName.Data(),0.15,fTrackEtaWindow,fVertexWindow);
if(kIsPbPb)taskCl->SetBackgroundBranch(kDefaultJetBackgroundBranchMC2.Data());
kDefaultJetBranchMC2 = taskCl->GetJetOutputBranch();
if(iAODanalysis==2)taskCl->SetAODTrackInput(kTRUE);
taskSubtract = AddTaskJetBackgroundSubtract(kJetSubtractBranches,iB,kJetSubtractMask1.Data(),kJetSubtractMask2.Data());
taskSubtract->SetBackgroundBranch(kDefaultJetBackgroundBranch.Data()); taskSubtract->SelectCollisionCandidates(iPhysicsSelectionFlag);
if(kDeltaAODJetName.Length()>0)taskSubtract->SetNonStdOutputFile(kDeltaAODJetName.Data());
- // taskSubtract->SetDebugLevel(10);
+ taskSubtract->SetKeepJets(kTRUE);
TString cTmp;
TObjArray *objArr = kJetSubtractBranches.Tokenize(" ");
for(int iJB = 0;iJB<objArr->GetEntries();iJB++){
//
// cut1
Int_t iB = 2;
- taskSubtract = AddTaskJetBackgroundSubtract(kJetSubtractBranchesCut1,iB,kJetSubtractMask1.Data(),kJetSubtractMask2.Data(),"Cut2000");
+ taskSubtract = AddTaskJetBackgroundSubtract(kJetSubtractBranchesCut1,iB,kJetSubtractMask1.Data(),kJetSubtractMask2.Data(),"Cut1000");
taskSubtract->SetBackgroundBranch(kDefaultJetBackgroundBranchCut1.Data());
taskSubtract->SelectCollisionCandidates(iPhysicsSelectionFlag);
if(kDeltaAODJetName.Length()>0)taskSubtract->SetNonStdOutputFile(kDeltaAODJetName.Data());
kJetListSpectrum.Add(new TObjString(cTmp.Data()));
}
+ taskSubtract = AddTaskJetBackgroundSubtract(kJetSubtractBranchesCut2,iB,kJetSubtractMask1.Data(),kJetSubtractMask2.Data(),"Cut2000");
+ taskSubtract->SetBackgroundBranch(kDefaultJetBackgroundBranchCut2.Data());
+ taskSubtract->SelectCollisionCandidates(iPhysicsSelectionFlag);
+ if(kDeltaAODJetName.Length()>0)taskSubtract->SetNonStdOutputFile(kDeltaAODJetName.Data());
+
+ objArr = kJetSubtractBranchesCut2.Tokenize(" ");
+ for(int iJB = 0;iJB<objArr->GetEntries();iJB++){
+ TObjString *ostr = (TObjString*)objArr->At(iJB);
+ cTmp = ostr->GetString().Data();
+ cTmp.ReplaceAll(kJetSubtractMask1.Data(),Form(kJetSubtractMask2.Data(),iB));
+ kJetListSpectrum.Add(new TObjString(cTmp.Data()));
+ }
}
if(kJetSubtractBranches_extra.Length()){
if(iPWG4JetServices){
gROOT->LoadMacro("$ALICE_ROOT/PWG4/macros/AddTaskJetServices.C");
AliAnalysisTaskJetServices *taskjetServ = 0;
- taskjetServ = AddTaskJetServices();
+ taskjetServ = AddTaskJetServices("/Users/kleinb/Dropbox/SharedJets/Christian/Files/PWG4_JetTasksOutput_110818a.root");
if (!taskjetServ) ::Warning("AnalysisTrainPWG4Jets", "AliAnalysisTaskJetServices cannot run for this train conditions - EXCLUDED");
if(kGridRunRange[0]>0)taskjetServ->SetRunRange(kGridRunRange[0],kGridRunRange[1]);
else taskjetServ->SetRunRange(110000,160000);
taskjetServ->SetPhysicsSelectionFlag(iPhysicsSelectionFlag); //
taskjetServ->SetNonStdFile(kDeltaAODJetName.Data());
taskjetServ->SetTrackEtaWindow(fTrackEtaWindow);
+ taskjetServ->SetZVertexCut(fVertexWindow);
taskjetServ->SetFilterMask(kHighPtFilterMask);
+
+ if(kIsPbPb)taskjetServ->SetCollisionType(AliAnalysisTaskJetServices::kPbPb);
+ else taskjetServ->SetCollisionType(AliAnalysisTaskJetServices::kPP);
if(kIsPbPb){
if(kDeltaAODJetName.Length()>0&&kFilterAOD)taskjetServ->SetFilterAODCollisions(kTRUE);
// else if(iAODanalysis)taskjetServ->SetFilterAODCollisions(kTRUE);
// taskjetServ->SetDebugLevel(3);
- taskjetServ->SetZVertexCut(8.);
}
if(iAODanalysis){
//
Printf("%3d: %s",iJF+1,objStr->GetString().Data());
}
+ // Printf("Type q to exit");if(getchar()=='q')return;
if(iPWG4JetSpectrum&1){
if(kIsPbPb){
for(int iJF = 0;iJF < kJetListSpectrum.GetSize();iJF++){
AliPWG4HighPtQAMC *taskQAMC = 0;
if(kUseMC){
if(iPWG4PtQAMC&1){
- taskQAMC = AddTaskPWG4HighPtQAMC(kGridDataSet.Data(),0);
- taskQAMC = AddTaskPWG4HighPtQAMC(kGridDataSet.Data(),1);
- taskQAMC = AddTaskPWG4HighPtQAMC(kGridDataSet.Data(),2);
- taskQAMC = AddTaskPWG4HighPtQAMC(kGridDataSet.Data(),3);
+ taskQAMC = AddTaskPWG4HighPtQAMCAll(kGridDataSet.Data());
}
}
if (!taskQAMC) ::Warning("AnalysisTrainPWG4Jets", "AliAnalysisTaskQAMC cannot run for this train conditions - EXCLUDED");
if(iPWG4PtTrackQA){
gROOT->LoadMacro("$ALICE_ROOT/PWG4/macros/AddTaskPWG4HighPtTrackQA.C");
-
- AddTaskPWG4HighPtTrackQAAll(kGridDataSet.Data(),kIsPbPb,iAODanalysis);
-
+ if(iPWG4PtTrackQA&2)AddTaskPWG4HighPtTrackQAAll(kGridDataSet.Data(),kIsPbPb,iAODanalysis);
+ else AddTaskPWG4HighPtTrackQAAllReduced(kGridDataSet.Data(),kIsPbPb,iAODanalysis);
}
if(iPWG4PtQATPC){
if(iPWG4PtSpectra){
gROOT->LoadMacro("$ALICE_ROOT/PWG4/macros/AddTaskPWG4HighPtSpectra.C");
- AddTaskPWG4HighPtSpectraAll(kGridDataSet.Data(),kIsPbPb);
+ AddTaskPWG4HighPtSpectraAll(kGridDataSet.Data(),kIsPbPb,iAODanalysis);
}
-
+
if(iPWG4KMeans){
gROOT->LoadMacro("$ALICE_ROOT/PWG4/macros/AddTaskKMeans.C");
AliAnalysisTaskKMeans *taskKMeans = AddTaskKMeans();
if( iPWG4Cosmics)::Info("AnalysisTrainPWG4Jets.C::CheckModuleFlags", "PWG4 Comics disabled in analysis on AOD's");
iPWG4Cosmics = 0;
- if( iPWG4PtSpectra)::Info("AnalysisTrainPWG4Jets.C::CheckModuleFlags", "PWG4 PtQAMC disabled in analysis on AOD's");
- iPWG4PtSpectra = 0;
if(iPWG4KMeans)::Info("AnalysisTrainPWG4Jets.C::CheckModuleFlags", "PWG4KMeans disabled on AOD's");
iPWG4KMeans = 0;
if (iPWG4JetCorr)::Info("AnalysisTrainPWG4Jets.C::CheckModuleFlags", "PWG4Jetcorr disabled on AOD's");
gSystem->Load("libGeom.so");
gSystem->Load("libVMC.so");
gSystem->Load("libPhysics.so");
+ gSystem->Load("libMinuit.so");
// Load framework classes. Par option ignored here.
switch (imode) {
AliAnalysisAlien *plugin = new AliAnalysisAlien();
// Set the run mode (can be "full", "test", "offline", "submit" or "terminate")
plugin->SetRunMode(plugin_mode);
+ plugin->SetCheckCopy(kFALSE);
if (kPluginUseProductionMode) plugin->SetProductionMode();
plugin->SetJobTag(kJobTag);
plugin->SetNtestFiles(1);
if(kGridLocalRunList.Length()>0){
ifstream in1;
in1.open(kGridLocalRunList.Data());
- int iRun;
+ int iRun = 0;
int icount = 0;
Int_t nRun = 0;
// just use run numbers, negatives will be excluded