]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/StoreMapsSDD.C
alignment of sensor wrt hybrid is now allowed (fgkSSDModulVerticalDisalignement)...
[u/mrichter/AliRoot.git] / ITS / StoreMapsSDD.C
CommitLineData
d5d0cab2 1#if !defined(__CINT__) || defined(__MAKECINT__)
2#include "AliCDBManager.h"
3#include "AliITSCalibrationSDD.h"
4#include "AliITSMapSDD.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
14void StoreMapsSDD(Int_t firstRun=0,Int_t lastRun=9999999 ){
15 ///////////////////////////////////////////////////////////////////////
16 // Macro to generate and store the residual maps for SDD //
17 // Generates: //
18 // 1 file with 520 AliITSMapSDD anode maps (MapsAnodeSDD) //
19 // 1 file with 520 AliITSMapSDD drift coordinate maps (MapsTimeSDD) //
20 ///////////////////////////////////////////////////////////////////////
21
22 if(!AliCDBManager::Instance()->IsDefaultStorageSet()) {
23 AliCDBManager::Instance()->SetDefaultStorage("local://OCDB");
24 }
25
26
27 AliCDBMetaData *md3 = new AliCDBMetaData();
28 md3->SetObjectClassName("AliITSMapSDD");
29 md3->SetResponsible("Elisabetta Crescio, Francesco Prino");
30 md3->SetBeamPeriod(0);
31 md3->SetAliRootVersion("Head 24 sept. 2007");
32 md3->SetComment("This is a test");
33
34 AliCDBMetaData *md4 = new AliCDBMetaData();
35 md4->SetObjectClassName("AliITSMapSDD");
36 md4->SetResponsible("Elisabetta Crescio, Francesco Prino");
37 md4->SetBeamPeriod(0);
38 md4->SetAliRootVersion("Head 24 sept. 2007");
39 md4->SetComment("This is a test");
40
41
42 AliCDBId mapA("ITS/Calib/MapsAnodeSDD",firstRun,lastRun);
43 TObjArray anmap(520);
44 anmap.SetOwner(kFALSE);
45
46 AliCDBId mapT("ITS/Calib/MapsTimeSDD",firstRun,lastRun);
47 TObjArray tmap(520);
48 tmap.SetOwner(kFALSE);
49
50 TRandom3 *gran = new TRandom3();
51
52 for(Int_t mod=0;mod<260;mod++){
53 // maps
54 Char_t name[20];
55 sprintf(name,"AnodeMap_%d_%d\n",mod,0);
56 AliITSMapSDD* mapAnodes0 = new AliITSMapSDD(name);
57 sprintf(name,"DriftTimeMap_%d_%d\n",mod,0);
58 AliITSMapSDD* mapTime0 = new AliITSMapSDD(name);
59 sprintf(name,"AnodeMap_%d_%d\n",mod,1);
60 AliITSMapSDD* mapAnodes1 = new AliITSMapSDD(name);
61 sprintf(name,"DriftTimeMap_%d_%d\n",mod,1);
62 AliITSMapSDD* mapTime1 = new AliITSMapSDD(name);
63
64 for(Int_t nan = 0;nan<256;nan++){
65 for(Int_t nt = 0;nt<36*2;nt++){
66 mapAnodes0->SetCellContent(nan,nt,gran->Gaus(0,20));
67 mapTime0->SetCellContent(nan,nt,gran->Gaus(0,20));
68 mapAnodes1->SetCellContent(nan,nt,gran->Gaus(0,20));
69 mapTime1->SetCellContent(nan,nt,gran->Gaus(0,20));
70 }
71 }
72 anmap.Add(mapAnodes0);
73 tmap.Add(mapTime0);
74 anmap.Add(mapAnodes1);
75 tmap.Add(mapTime1);
76 printf("Added module %d\n",mod);
77 }
78
79 AliCDBManager::Instance()->GetDefaultStorage()->Put(&anmap, mapA, md3);
80 AliCDBManager::Instance()->GetDefaultStorage()->Put(&tmap, mapT, md4);
81
82}