34 AliVEvent::kMuonLikePB |
35 AliVEvent::kMuonUnlikePB);
121 Printf(
"%-30s : %3s", title, use ?
"yes" :
"no");
171 "-I$ROOTSYS/include "
172 "-I$ALICE_ROOT/include "
176 "-I$ALICE_PHYSICS/PWGPP "
177 "-I$ALICE_PHYSICS/PWGPP/TRD");
179 gSystem->Load(
"libANALYSISalice");
185 gSystem->Load(
"libAliHLTTrigger");
189 (qaCfg->
DoCALO() && !is10h)) {
190 gSystem->Load(
"libEMCALUtils");
192 gSystem->Load(
"libPWGCaloTrackCorrBase");
193 gSystem->Load(
"libPWGGACaloTrackCorrelations");
194 gSystem->Load(
"libPWGGACaloTasks");
195 gSystem->Load(
"libPWGGAPHOSTasks");
198 gSystem->Load(
"libPWGGAEMCALTasks");
202 gSystem->Load(
"libPWGPPMUONlite");
203 gSystem->Load(
"libPWGmuondep");
206 gSystem->Load(
"libPWGLFforward2");
219 mgr->SetCommonFileName(
"QAresults.root");
223 TString ali =
"$ALICE_PHYSICS";
226 TString pwghf = ali +
"/PWGHF";
227 TString pwglf = ali +
"/PWGLF";
228 TString pwgje = ali +
"/PWGJE";
229 TString pwgdq = ali +
"/PWGDQ";
230 TString pwgpp = ali +
"/PWGPP";
231 TString pwgga = ali +
"/PWGGA";
238 gROOT->LoadMacro(pwgpp+
"/PilotTrain/AddTaskCDBconnect.C");
239 AliTaskCDBconnect *taskCDB = AddTaskCDBconnect(cdb_location,
grp->
run);
240 if (!taskCDB)
return;
245 gROOT->LoadMacro(oadb+
"/macros/AddTaskPhysicsSelection.C");
246 AliPhysicsSelectionTask* physSelTask = AddTaskPhysicsSelection(kTRUE);
255 gROOT->LoadMacro(ana+
"/macros/AddTaskPIDResponse.C");
256 AliAnalysisTaskPIDResponse *PIDResponse = AddTaskPIDResponse(kTRUE);
261 gROOT->LoadMacro(oadb+
"/macros/AddTaskCentrality.C");
262 AliCentralitySelectionTask *taskCentrality = AddTaskCentrality();
263 taskCentrality->SetMCInput();
268 gROOT->LoadMacro(pwgpp+
"/macros/AddTaskVertexESD.C");
270 AliAnalysisTaskVertexESD* taskvertexesd =
278 gROOT->LoadMacro(pwgpp+
"/PilotTrain/AddTaskQAsym.C");
287 gROOT->LoadMacro(pwgpp+
"/PilotTrain/AddTaskVZEROQA.C");
291 gROOT->LoadMacro(pwgpp+
"/VZERO/AddTaskVZEROPbPb.C");
292 AliAnaVZEROPbPb* taskV0PbPb =
293 (AliAnaVZEROPbPb*)AddTaskVZEROPbPb(
Int_t(
grp->
run));
305 gROOT->LoadMacro(pwgpp+
"/TPC/macros/AddTaskPerformanceTPCdEdxQA.C");
306 AliPerformanceTask *tpcQA = 0;
309 tpcQA = AddTaskPerformanceTPCdEdxQA(kTRUE, kTRUE, kTRUE);
312 tpcQA = AddTaskPerformanceTPCdEdxQA(kTRUE, kTRUE, kFALSE);
315 AliPerformanceRes::SetMergeEntriesCut(5000000);
320 gROOT->LoadMacro(pwgpp+
"/TPC/macros/AddTaskPerformanceTPCdEdxQA.C");
321 AliPerformanceTask *hltQA = AddTaskPerformanceTPCdEdxQA(kTRUE, kTRUE,
327 gROOT->LoadMacro(pwgpp+
"/PilotTrain/AddTaskSPDQA.C");
328 AliAnalysisTaskSPD* taskspdqa = (AliAnalysisTaskSPD*)AddTaskSPDQA();
330 if (
grp->
IsAA()) taskspdqa->SetHeavyIonMode();
332 taskspdqa->SetOCDBInfo(
grp->
run,
"raw://");
336 gROOT->LoadMacro(pwgpp+
"/PilotTrain/AddSDDPoints.C");
342 gROOT->LoadMacro(pwgpp+
"/PilotTrain/AddTaskdEdxSSDQA.C");
350 gROOT->LoadMacro(pwgpp+
"/macros/AddTaskPerformanceITS.C");
351 AliAnalysisTaskITSTrackingCheck *itsQA = 0;
352 AliAnalysisTaskITSTrackingCheck *itsQACent0010 = 0;
353 AliAnalysisTaskITSTrackingCheck *itsQACent3050 = 0;
354 AliAnalysisTaskITSTrackingCheck *itsQACent6080 = 0;
356 itsQA = AddTaskPerformanceITS(kTRUE);
358 itsQA = AddTaskPerformanceITS(kTRUE);
359 itsQACent0010 = AddTaskPerformanceITS(kTRUE,kFALSE,kFALSE,3500,10000);
360 itsQACent3050 = AddTaskPerformanceITS(kTRUE,kFALSE,kFALSE,590,1570);
361 itsQACent6080 = AddTaskPerformanceITS(kTRUE,kFALSE,kFALSE,70,310);
367 gROOT->LoadMacro(pwgpp+
"/macros/AddTaskITSsaTracks.C");
368 AliAnalysisTaskITSsaTracks *itssaTracks = AddTaskITSsaTracks(kTRUE,kFALSE);
373 gROOT->LoadMacro(pwgpp+
"/macros/AddTaskITSAlign.C");
374 AliAnalysisTaskITSAlignQA *itsAlign = AddTaskITSAlign(0,2011);
380 gROOT->LoadMacro(pwgpp+
"/macros/AddTrainPerformanceTRD.C");
389 AddTrainPerformanceTRD(Translate(doCheckESD, doCheckDET, doEffic,
390 doResolution, doCheckPID, doV0Monitor));
396 gROOT->LoadMacro(pwgpp+
"/ZDC/AddTaskZDCQA.C");
402 if(qaCfg->
DoCALO() && !is10h) {
403 gROOT->LoadMacro(pwgga+
404 "/CaloTrackCorrelations/macros/QA/AddTaskCalorimeterQA.C");
407 taskCaloQA->SetDebugLevel(0);
413 taskCaloQA->SetDebugLevel(0);
414 taskCaloQA->SelectCollisionCandidates(
kTriggerEMC);
421 gROOT->LoadMacro(pwgpp+
"/macros/AddTaskMTRchamberEfficiency.C");
427 gROOT->LoadMacro(ali+
"/PWG3/muondep/AddTaskMUONTrackingEfficiency.C");
434 gROOT->LoadMacro(pwgpp+
"/macros/AddTaskV0QA.C");
435 AliAnalysisTaskV0QA *taskv0QA = AddTaskV0QA(kTRUE);
441 gROOT->LoadMacro(pwgpp+
"/macros/AddTaskImpParRes.C");
445 taskimpparres= AddTaskImpParRes(kTRUE);
447 taskimpparres= AddTaskImpParRes(kTRUE,-1,kTRUE,kFALSE);
455 gROOT->LoadMacro(pwgpp+
"/PilotTrain/AddTaskMuonQA.C");
461 gROOT->LoadMacro(pwgpp+
"/TOF/AddTaskTOFQA.C");
462 AliAnalysisTaskTOFqa *tofQA = AddTaskTOFQA(kFALSE);
467 if (qaCfg->
DoPIDqa() && !is10h) {
468 gROOT->LoadMacro(ana+
"/macros/AddTaskPIDqa.C");
469 AliAnalysisTaskPIDqa *PIDQA = AddTaskPIDqa();
476 gROOT->LoadMacro(pwgpp+
"/HMPID/AddTaskHmpidQA.C");
485 gROOT->LoadMacro(pwgpp+
"/T0/AddTaskT0QA.C");
486 AliT0AnalysisTaskQA* taskt0qa= AddTaskT0QA();
492 gROOT->LoadMacro(pwglf+
"/FORWARD/analysis2/AddTaskForwardQA.C");
497 const char* hack=
"AliForwardCorrectionManager::Instance().SetPrefix(\".\")";
498 gROOT->ProcessLine(hack);
499 const char* hack2=
"AliForwardCorrectionManager::Instance().Print(\"R\")";
500 gROOT->ProcessLine(hack2);
506 gROOT->LoadMacro(pwgga+
"/PHOSTasks/CaloCellQA/macros/AddTaskCaloCellsQA.C");
507 AliAnalysisTaskCaloCellsQA *taskPHOSCellQA1 =
508 AddTaskCaloCellsQA(4, 1, NULL,
"PHOSCellsQA_AnyInt");
509 taskPHOSCellQA1->SelectCollisionCandidates(
kTriggerMask);
510 taskPHOSCellQA1->GetCaloCellsQA()->SetClusterEnergyCuts(0.3,0.3,1.0);
512 AliAnalysisTaskCaloCellsQA *taskPHOSCellQA2 =
513 AddTaskCaloCellsQA(4, 1, NULL,
"PHOSCellsQA_PHI7");
514 taskPHOSCellQA2->SelectCollisionCandidates(AliVEvent::kPHI7);
515 taskPHOSCellQA2->GetCaloCellsQA()->SetClusterEnergyCuts(0.3,0.3,1.0);
519 gROOT->LoadMacro(pwgga+
"/PHOSTasks/PHOS_PbPbQA/macros/AddTaskPHOSPbPb.C");
520 AliAnalysisTaskPHOSPbPbQA* phosPbPb = AddTaskPHOSPbPbQA(0);
524 gROOT->LoadMacro(pwgga+
525 "/PHOSTasks/PHOS_TriggerQA/macros/AddTaskPHOSTriggerQA.C");
526 AliAnalysisTaskPHOSTriggerQA *taskPHOSTrig = AddTaskPHOSTriggerQA(0,0);
531 gROOT->LoadMacro(pwgga+
"/EMCALTasks/macros/AddTaskEMCALTriggerQA.C");
537 gROOT->LoadMacro(pwgpp+
"/macros/AddTaskFBFqa.C");
540 qaFBFMB->SelectCollisionCandidates(AliVEvent::kMB);
543 qaFBFSC->SelectCollisionCandidates(AliVEvent::kSemiCentral);
546 qaFBFCE->SelectCollisionCandidates(AliVEvent::kCentral);
556 out.open(
"outputs_valid", ios::out);
573 outputFiles.Add(
new TObjString(
"QAresults.root"));
574 outputFiles.Add(
new TObjString(
"EventStat_temp.root"));
577 TIter iter(&outputFiles);
580 while((str = static_cast<TObjString*>(iter()))) {
581 TString& outputFile = str->GetString();
583 if (!
gSystem->AccessPathName(outputFile)) {
584 ::Warning(
"Merge",
"Output file <%s> found. Not merging again.",
588 if (mergeExcludes.Contains(outputFile.Data()))
continue;
589 merged = AliAnalysisAlien::MergeOutput(outputFile,
594 ::Error(
"Merge",
"Cannot merge %s\n", outputFile.Data());
598 TString infolog =
"fileinfo.log";
599 AliAnalysisAlien::MergeInfo(infolog, dir);
601 if (!outputDir.Contains(
"Stage")) {
608 mgr->SetSkipTerminate(kFALSE);
609 if (!mgr->InitAnalysis())
return;
612 mgr->StartAnalysis(
"gridterminate", (
TTree*)0);
627 const char* xmlfile =
"wn.xml",
629 const char* cdb =
"raw://")
635 gROOT->Macro(Form(
"GRP.C(%d)", run));
636 gROOT->Macro(
"BaseConfig.C");
637 gROOT->Macro(
"QAConfig.C");
638 gROOT->Macro(
"DetConfig.C");
642 if (cdbString.Contains(
"raw://")) {
643 TGrid::Connect(
"alien://");
644 if (!gGrid || !gGrid->IsConnected()) {
645 ::Error(
"QAtrain",
"No grid connection");
657 printf(
"Include path: %s\n",
gSystem->GetIncludePath());
663 mgr->SetRunFromPath(
grp->
run);
666 AliESDInputHandlerRP *esdHandler =
new AliESDInputHandlerRP();
667 esdHandler->SetReadFriends(kTRUE);
668 esdHandler->SetActiveBranches(
"ESDfriend");
669 mgr->SetInputEventHandler(esdHandler);
673 AliMCEventHandler* mcHandler =
new AliMCEventHandler();
674 mgr->SetMCtruthEventHandler(mcHandler);
675 mcHandler->SetPreReadMode(1);
676 mcHandler->SetReadTR(
true);
685 if (debug_level > 0) mgr->SetDebugLevel(debug_level);
697 chain->Add(
"AliESDs.root");
702 if (!mgr->InitAnalysis())
return;
705 mgr->SetSkipTerminate(kTRUE);
707 mgr->StartAnalysis(
"local", chain);
virtual Int_t DebugLevel() const =0
return jsonbuilder str().c_str()
virtual Bool_t DoTOF() const =0
void ana(Int_t mode=mGRID)
UInt_t kTriggerMuonBarell
virtual Bool_t DoTRD() const =0
virtual Bool_t DoCentrality() const =0
virtual Bool_t DoHLT() const =0
virtual Bool_t DoVertex() const =0
AliAnalysisTask * AddTaskForwardQA(Bool_t mc=false, Bool_t useCent=false)
virtual Bool_t DoCDBconnect() const =0
AliAnalysisTaskEMCALTriggerQA * AddTaskEMCALTriggerQA(Bool_t kSimulation=kFALSE, TString outputFile="")
virtual Bool_t DoImpParRes() const =0
virtual Bool_t DoITS() const =0
virtual Bool_t UseFMD() const
virtual Bool_t DoQAsym() const =0
virtual Bool_t DoHMPID() const =0
virtual Bool_t DoFWD() const =0
virtual Bool_t UseT0() const
virtual Bool_t DoZDC() const =0
tracking chamber efficiency from ESD data
virtual void PrintOne(const char *title, Bool_t use) const
virtual Bool_t UsePHOS() const
void QA(UInt_t run, const char *xmlfile="wn.xml", Int_t stage=0, const char *cdb="raw://")
virtual Bool_t UseMUON() const
AliAnalysisTaskCaloTrackCorrelation * AddTaskCalorimeterQA(const char *suffix="default", Bool_t simulation=kFALSE, TString outputFile="", Int_t year=2015, Bool_t printSettings=kFALSE, Bool_t calibrate=kTRUE)
void QAMerge(const char *dir, Int_t stage)
virtual Bool_t DoTPC() const =0
virtual Bool_t DoSSDdEdx() const =0
virtual Bool_t DoMUONEff() const =0
virtual Bool_t UseTPC() const
virtual void Print() const
virtual Bool_t DoVZEROPbPb() const =0
virtual Bool_t DoMUONTrig() const =0
virtual Bool_t DoPHOSTrig() const =0
virtual Bool_t UseITS() const
virtual Bool_t DoSDD() const =0
virtual Bool_t DoVZERO() const =0
virtual Bool_t DoEMCAL() const =0
virtual Bool_t UseTRD() const
virtual Bool_t DoCALO() const =0
virtual Bool_t DoITSalign() const =0
virtual Bool_t UseVZERO() const
virtual Bool_t DoSPD() const =0
void AddAnalysisTasks(const char *cdb_location)
Main class conecting the CaloTrackCorrelations package and Analysis Frame.
virtual Bool_t UseZDC() const
virtual Bool_t DoPIDqa() const =0
virtual Bool_t UseEMCAL() const
virtual Bool_t DoFBFqa() const =0
virtual Bool_t DoITSsaTracks() const =0
Fill histograms with basic QA information for EMCAL offline trigger.
AliAnalysisTaskMuonTrackingEff * AddTaskMUONTrackingEfficiency(Bool_t setDefaultTrackCuts, Bool_t isMC, TString extension="")
virtual Bool_t DoEventStat() const =0
virtual Bool_t DoT0() const =0
virtual Bool_t UseTOF() const
virtual Bool_t DoMUON() const =0
virtual Bool_t UseHMPID() const
virtual Bool_t DoV0() const =0
virtual Bool_t DoPHOS() const =0
virtual Bool_t DoPIDResponse() const =0