2 macro to extract the OCDB entries
4 input: CalibObjects.root
5 ouput: TimeGain and TimeVdrift calibration objects for TPC and TRD
8 .L $ALICE_ROOT/ANALYSIS/CalibMacros/MergeCalibration/makeOCDB.C
13 const AliTRDCalDet *GetCalDetVdrift(Int_t runNumber, Int_t version, Int_t subversion);
14 void makeOCDB(TString runNumberString, TString ocdbStorage="")
17 // extract TPC OCDB entries
19 gROOT->Macro("LoadLibraries.C");
20 gROOT->LoadMacro("ConfigCalibTrain.C");
22 // switch off log info
23 AliLog::SetClassDebugLevel("AliESDEvent",0);
26 Int_t runNumber = runNumberString.Atoi();
27 printf("runNumber from runCalibTrain = %d\n",runNumber);
28 ConfigCalibTrain(runNumber, "raw://");
30 // Steering Tasks - set output storage
31 // DefaultStorage set already before - in ConfigCalibTrain.C
32 ocdbStorage+="?se=ALICE::CERN::SE";
33 AliCDBManager::Instance()->SetSpecificStorage("*/*/*",ocdbStorage.Data());
36 if (ocdbStorage.Length()==0) ocdbStorage+="local://"+gSystem->GetFromPipe("pwd")+"/OCDB";
39 TFile fcalib("CalibObjects.root");
40 AliTPCPreprocessorOffline proces;
42 // switch on parameter validation
43 proces.SwitchOnValidation();
45 // Make timegain calibration
46 //proces.CalibTimeGain("CalibObjects.root", runNumber,AliCDBRunRange::Infinity(),ocdbStorage);
47 proces.CalibTimeGain("CalibObjects.root", runNumber,runNumber,ocdbStorage);
49 // Make vdrift calibration
50 //proces.CalibTimeVdrift("CalibObjects.root",runNumber,AliCDBRunRange::Infinity(),ocdbStorage);
51 proces.CalibTimeVdrift("CalibObjects.root",runNumber,runNumber,ocdbStorage);
55 AliTRDPreprocessorOffline procestrd;
56 procestrd.SetLinearFitForVdrift(kTRUE);
57 procestrd.Init("CalibObjects.root");
58 Int_t versionVdriftUsed = procestrd.GetVersionVdriftUsed();
59 Int_t subversionVdriftUsed = procestrd.GetSubVersionVdriftUsed();
60 procestrd.SetCalDetVdrift(GetCalDetVdrift(runNumber,versionVdriftUsed,subversionVdriftUsed));
62 procestrd.SetMinStatsVdriftT0PH(600*10);
63 procestrd.SetMinStatsVdriftLinear(60);
64 procestrd.SetMinStatsGain(600);
66 procestrd.CalibVdriftT0("CalibObjects.root",runNumber,runNumber,ocdbStorage);
67 procestrd.CalibGain("CalibObjects.root",runNumber,runNumber,ocdbStorage);
72 const AliTRDCalDet *GetCalDetVdrift(Int_t runNumber, Int_t version, Int_t subversion){
74 // Get Cal Det used during reconstruction for vdrift
77 AliCDBEntry *entry = AliCDBManager::Instance()->Get("TRD/Calib/ChamberVdrift",runNumber, version, subversion);
79 printf("Found no entry\n");
82 const AliCDBId id = entry->GetId();
83 version = id.GetVersion();
84 subversion = id.GetSubVersion();
85 //printf("Found version %d and subversion %d for vdrift\n",version,subversion);
86 const AliTRDCalDet* calDet = (AliTRDCalDet *)entry->GetObject();