2 Template of calibration/filtering macro using ESD:
3 - requires AliESDs.root and AliESDfriend.root
4 - requires OCDB access (default set to "raw://")
5 - requires run number as argument to init OCDB
6 - calls LoadLibraries.C, ConfigCalibTrain.C and AddTaskTPCCalib.C macros
7 - output AliESDfriends_v1.root with TPC and TRD calibration objects are created
10 .L $ALICE_ROOT/ANALYSIS/macros/runCalibTrain.C
11 runCalibTrain("104892");
14 void runCalibTrain(TString runNumberString, const char *inFileName = "AliESDs.root", const char *ocdb="raw://")
17 // macro to run TPC calibration train
19 AliLog::SetGlobalLogLevel(AliLog::kError);
20 gROOT->Macro("$ALICE_ROOT/PWGPP/CalibMacros/CPass1/LoadLibraries.C");
21 gROOT->LoadMacro("$ALICE_ROOT/PWGPP/CalibMacros/CPass1/ConfigCalibTrain.C");
24 gROOT->LoadMacro("$ALICE_ROOT/PWGPP/CalibMacros/CPass1/AddTaskTPCCalib.C");
25 gROOT->LoadMacro("$ALICE_ROOT/PWGPP/CalibMacros/CPass1/AddTaskTRDCalib.C");
26 gROOT->LoadMacro("$ALICE_ROOT/PWGPP/CalibMacros/CPass1/AddTOFAnalysisTaskCalibPass0.C");
27 gROOT->LoadMacro("$ALICE_ROOT/PWGPP/CalibMacros/CPass1/AddTaskT0Calib.C");
28 // gROOT->LoadMacro("$ALICE_ROOT/PWGPP/CalibMacros/CPass1/AddTaskMeanVertexCalib.C");
29 gROOT->LoadMacro("$ALICE_ROOT/PWGPP/CalibMacros/CPass1/AddTaskSDDCalib.C");
32 AliLog::SetClassDebugLevel("AliESDEvent",0);
34 // steering input chain
35 TChain *chain = new TChain("esdTree");
36 chain->Add(inFileName);
38 // config calibration train
39 // setting geometry and B-field from GRP
40 Int_t runNumber = runNumberString.Atoi();
41 printf("runNumber from runCalibTrain = %d\n",runNumber);
42 printf("ocdb from runCalibTrain = %s\n",ocdb);
43 ConfigCalibTrain(runNumber, ocdb);
48 AliAnalysisManager *mgr = new AliAnalysisManager("ESD to ESD", "Analysis Manager");
49 // mgr->SetDebugLevel(3);
52 AliESDInputHandler* inpHandler = new AliESDInputHandler();
53 inpHandler->SetReadFriends(1);
54 mgr->SetInputEventHandler(inpHandler);
57 const char *outFile = "AliESDfriends_v1.root";
58 AliESDHandler* esdHandler = new AliESDHandler();
59 mgr->SetOutputEventHandler(esdHandler);
60 esdHandler->SetOutputFileName(outFile);
61 mgr->SetCommonFileName(outFile);
64 AliAnalysisTask* tTPC = AddTaskTPCCalib(runNumber);
65 AliAnalysisTask* tTRD = AddTaskTRDCalib(runNumber);
66 AliTOFAnalysisTaskCalibPass0 *thisTask = AddTOFAnalysisTaskCalibPass0();
67 AliAnalysisTask* tT0 = AddTaskT0Calib(runNumber);
68 //AliMeanVertexCalibTask *tMeanVtx = AddTaskMeanVertexCalib();
70 Bool_t useTPCcrv=kFALSE;
71 Bool_t writeITSTP = kTRUE;
72 AliAnalysisTaskITSAlignQA *itsAlign = AddTaskSDDCalib(0,writeITSTP,useTPCcrv);
75 if (!mgr->InitAnalysis()) {
76 printf("Analysis cannot be started, returning\n");
81 mgr->StartAnalysis("local", chain);