]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ITS/StoreMapsSDD.C
Improve kITSrefit efficiency at low pt (A. Dainese)
[u/mrichter/AliRoot.git] / ITS / StoreMapsSDD.C
1 #if !defined(__CINT__) || defined(__MAKECINT__)
2 #include "AliCDBManager.h"
3 #include "AliITSCalibrationSDD.h"
4 #include "AliITSCorrMapSDD.h"
5 #include "AliCDBMetaData.h"
6 #include "AliCDBStorage.h"
7 #include "AliCDBId.h"
8 #include "AliCDBPath.h"
9 #include "AliCDBEntry.h"
10 #include <TObjArray.h>
11 #include <TRandom3.h>
12 #endif
13
14 void StoreMapsSDD(Int_t firstRun=0,Int_t lastRun=9999999 ){
15   ///////////////////////////////////////////////////////////////////////
16   // Macro to generate and store the correction maps for SDD           //
17   // Generates:                                                        //
18   //  1 file with 520 AliITSCorrMapSDD drift maps (MapsTimeSDD)        //
19   ///////////////////////////////////////////////////////////////////////
20   
21   if(!AliCDBManager::Instance()->IsDefaultStorageSet()) {
22     AliCDBManager::Instance()->SetDefaultStorage("local://OCDB");
23   }
24   
25
26   AliCDBMetaData *md = new AliCDBMetaData();
27   md->SetObjectClassName("TObjArray");
28   md->SetResponsible("Francesco Prino");
29   md->SetBeamPeriod(0);
30   md->SetComment("Simulated data");
31
32
33
34   AliCDBId mapT("ITS/Calib/MapsTimeSDD",firstRun,lastRun);
35   TObjArray tmap(520);
36   tmap.SetOwner(kFALSE);
37
38   TRandom3 *gran = new TRandom3();
39   
40   AliITSCorrMapSDD* mapTime0;
41   AliITSCorrMapSDD* mapTime1;
42   for(Int_t mod=0;mod<260;mod++){
43     // maps
44     Char_t name[20];
45     sprintf(name,"DriftTimeMap_%d_%d\n",mod,0);
46     Int_t nbinsan=1;
47     if(mod==10 || mod==240){
48       nbinsan=256;
49       sprintf(name,"DriftTimeMap_%d_%d\n",mod,0);
50       mapTime0 = new AliITSCorrMap2DSDD(name,nbinsan,72);
51       sprintf(name,"DriftTimeMap_%d_%d\n",mod,1);
52       mapTime1 = new AliITSCorrMap2DSDD(name,nbinsan,72);
53     }else{
54       sprintf(name,"DriftTimeMap_%d_%d\n",mod,0);
55       mapTime0 = new AliITSCorrMap1DSDD(name,72);
56       sprintf(name,"DriftTimeMap_%d_%d\n",mod,1);
57       mapTime1 = new AliITSCorrMap1DSDD(name,72);
58     }
59     for(Int_t nan = 0;nan< nbinsan;nan++){
60       for(Int_t nt = 0;nt<36*2;nt++){
61         mapTime0->SetCellContent(nan,nt,gran->Gaus(0,20));
62         mapTime1->SetCellContent(nan,nt,gran->Gaus(0,20));                   
63       }
64     }
65     tmap.Add(mapTime0);
66     tmap.Add(mapTime1); 
67     printf("Added module %d\n",mod);
68   }
69     
70   AliCDBManager::Instance()->GetDefaultStorage()->Put(&tmap, mapT, md);
71
72 }