]>
Commit | Line | Data |
---|---|---|
e67279ba | 1 | // Steer TRD QA train for Reconstruction (Clusterizer, Tracking and PID). |
2 | // | |
3 | // Usage: | |
4 | // AddTrainPerformanceTRD.C(MC, friends, tasks) | |
5 | // tasks : "ALL" or one/more of the following: | |
6 | // "EFF" : TRD Tracking Efficiency | |
7 | // "EFFC" : TRD Tracking Efficiency Combined (barrel + stand alone) - only in case of simulations | |
8 | // "MULT" : TRD single track selection | |
9 | // "RES" : TRD tracking Resolution | |
10 | // "CLRES": clusters Resolution | |
11 | // "CAL" : TRD calibration | |
12 | // "ALGN" : TRD alignment | |
13 | // "PID" : TRD PID - pion efficiency | |
14 | // "PIDR" : TRD PID - reference data | |
15 | // "DET" : Basic TRD Detector checks | |
16 | // "NOFR" : Data set does not have AliESDfriends.root | |
17 | // "NOMC" : Data set does not have Monte Carlo Informations (real data), so all tasks which rely | |
18 | // on MC information are switched off | |
19 | // | |
20 | // In compiled mode : | |
21 | // Don't forget to load first the libraries | |
22 | // gSystem->Load("libMemStat.so") | |
23 | // gSystem->Load("libMemStatGui.so") | |
24 | // gSystem->Load("libANALYSIS.so") | |
25 | // gSystem->Load("libANALYSISalice.so") | |
26 | // gSystem->Load("libPWG1.so"); | |
27 | // | |
28 | // Authors: | |
29 | // Alex Bercuci (A.Bercuci@gsi.de) | |
30 | // Markus Fasel (m.Fasel@gsi.de) | |
31 | ||
32 | #if ! defined (__CINT__) || defined (__MAKECINT__) | |
33 | //#ifndef __CINT__ | |
34 | #include <Riostream.h> | |
35 | ||
36 | #include "TStopwatch.h" | |
37 | #include "TMemStat.h" | |
38 | #include "TMemStatViewerGUI.h" | |
39 | ||
40 | #include "TROOT.h" | |
41 | #include "TClass.h" | |
42 | #include "TSystem.h" | |
43 | #include "TError.h" | |
44 | #include "TChain.h" | |
45 | #include "TGrid.h" | |
46 | #include "TAlienCollection.h" | |
47 | #include "TGridCollection.h" | |
48 | #include "TGridResult.h" | |
49 | #include "TGeoGlobalMagField.h" | |
50 | ||
51 | #include "AliMagF.h" | |
52 | #include "AliTracker.h" | |
53 | #include "AliLog.h" | |
54 | #include "AliCDBManager.h" | |
55 | #include "AliGRPManager.h" | |
56 | #include "AliGeomManager.h" | |
57 | #include "AliAnalysisManager.h" | |
58 | #include "AliAnalysisDataContainer.h" | |
59 | #include "AliMCEventHandler.h" | |
60 | #include "AliESDInputHandler.h" | |
61 | ||
62 | #include "TRD/AliTRDtrackerV1.h" | |
63 | #include "TRD/AliTRDcalibDB.h" | |
64 | ||
65 | #include "PWG1/TRD/macros/AliTRDperformanceTrain.h" | |
66 | #include "PWG1/TRD/macros/AddTRDcheckESD.C" | |
67 | #include "PWG1/TRD/macros/AddTRDinfoGen.C" | |
68 | #include "PWG1/TRD/macros/AddTRDcheckDET.C" | |
69 | #include "PWG1/TRD/macros/AddTRDefficiency.C" | |
70 | #include "PWG1/TRD/macros/AddTRDresolution.C" | |
71 | #include "PWG1/TRD/macros/AddTRDcheckPID.C" | |
72 | #endif | |
73 | ||
74 | #include "../TRD/macros/AliTRDperformanceTrain.h" | |
75 | ||
76 | ||
77 | Bool_t AddTrainPerformanceTRD(Bool_t mc, Bool_t fr, Char_t *trd="ALL") | |
78 | { | |
79 | AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager(); | |
80 | if(!mgr) { | |
81 | Error("AddTrainPerformanceTRD", "AliAnalysisManager not set!"); | |
82 | return kFALSE; | |
83 | } | |
84 | ||
85 | // TRD data containers | |
86 | AliAnalysisDataContainer *ci[] = {0x0, 0x0, 0x0}; | |
87 | ||
88 | // initialize TRD settings | |
89 | AliTRDcalibDB *cal = AliTRDcalibDB::Instance(); | |
90 | AliTRDtrackerV1::SetNTimeBins(cal->GetNumberOfTimeBins()); | |
91 | ||
92 | for(Int_t it=0; it<NTRDQATASKS; it++){ | |
93 | if(gROOT->LoadMacro(Form("$ALICE_ROOT/PWG1/TRD/macros/Add%s.C+", TString(fgkTRDtaskClassName[it])(3,20).Data()))) { | |
94 | Error("AddTrainPerformanceTRD()", Form("Error loading %s task.", fgkTRDtaskClassName[it])); | |
95 | return kFALSE; | |
96 | } | |
97 | ||
98 | switch(it){ | |
99 | case kCheckESD: | |
100 | AddTRDcheckESD(mgr); break; | |
101 | case kInfoGen: | |
102 | AddTRDinfoGen(mgr, trd, 0x0, ci); break; | |
103 | case kCheckDET: | |
104 | AddTRDcheckDET(mgr, trd, ci); break; | |
105 | case kEfficiency: | |
106 | AddTRDefficiency(mgr, trd, ci); break; | |
107 | case kResolution: | |
108 | AddTRDresolution(mgr, trd, ci); break; | |
109 | case kCheckPID: | |
110 | AddTRDcheckPID(mgr, trd, ci); break; | |
111 | default: | |
112 | Warning("AddTrainPerformanceTRD()", Form("No performance task registered at slot %d.", it)); | |
113 | } | |
114 | } | |
115 | return kTRUE; | |
116 | } | |
117 |