]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TRD/Cal/AliTRDplotNoiseBaseline.C
AliCFGridSparse : propagate the bin labels during projections
[u/mrichter/AliRoot.git] / TRD / Cal / AliTRDplotNoiseBaseline.C
CommitLineData
20ffb0b8 1#if !defined( __CINT__) || defined(__MAKECINT__)\r
2\r
3\r
4#include <Riostream.h>\r
5#include <TSystem.h>\r
6#include <TProfile2D.h>\r
7#include <TCanvas.h>\r
8#include <TH1F.h>\r
9#include <TH2I.h>\r
10#include <TStyle.h>\r
11#include <TFile.h>\r
12#include <TGrid.h>\r
13\r
14\r
15#include "AliCDBManager.h"\r
16#include "AliCDBStorage.h"\r
17#include "AliCDBEntry.h"\r
18\r
19\r
20#include "../TRD/AliTRDarrayF.h"\r
21#include "../TRD/AliTRDCalibPadStatus.h"\r
22#include "../TRD/Cal/AliTRDCalPadStatus.h"\r
23#include "../TRD/Cal/AliTRDCalDet.h"\r
24#include "../TRD/Cal/AliTRDCalPad.h"\r
25#include "../TRD/Cal/AliTRDCalROC.h"\r
26#include "../TRD/AliTRDcalibDB.h"\r
27\r
28\r
29#endif\r
30\r
31\r
32//void PlotNoiseBaseline(Int_t run, Int_t sm, Int_t det, const char * pathdatabase="local:///d/alice12/bailhache/TestShuttle/database/", const char * pathreferencefile="local:///d/alice12/bailhache/TestShuttle/reference")\r
33//void PlotNoiseBaseline(Int_t run=34529, Int_t sm=0, Int_t det=0, const char * pathdatabase="alien://Folder=/alice/data/2008/LHC08b/OCDB/", const char * pathreferencedatabase="alien://Folder=/alice/data/2008/LHC08b/Reference/")\r
34//void PlotNoiseBaseline(Int_t run=1, Int_t sm=0, Int_t det=0, const char * pathdatabase="local:///d/alice12/bailhache/AliAnalysisTask/v4-13-Head/SHUTTLE/TestShuttle/TestCDB/", const char * pathreferencedatabase="local:///d/alice12/bailhache/AliAnalysisTask/v4-13-Head/SHUTTLE/TestShuttle/TestReference/")\r
35void AliTRDplotNoiseBaseline(Int_t run=34529, Int_t sm=0, Int_t det=0, const char * pathdatabase="alien://Folder=/alice/data/2008/LHC08b/OCDB/", const char * pathreferencedatabase="alien://Folder=/alice/data/2008/LHC08b/Reference/")\r
36{\r
37\r
38 //TGrid::Connect("alien://",0,0,"t");\r
39\r
40 AliCDBManager *CDB = AliCDBManager::Instance();\r
162637e4 41 CDB->SetDefaultStorage("local://$ALICE_ROOT/OCDB"); \r
20ffb0b8 42 CDB->SetSpecificStorage("TRD/Calib/PadNoise",pathdatabase);\r
43 CDB->SetSpecificStorage("TRD/Calib/DetNoise",pathdatabase);\r
44 CDB->SetSpecificStorage("TRD/Calib/PadStatus",pathdatabase);\r
45 CDB->SetRun(run);\r
46\r
47 AliTRDcalibDB *cal = AliTRDcalibDB::Instance();\r
48\r
49 //const AliTRDCalDet *u = cal->GetNoiseDet();\r
50\r
51 AliTRDCalDet *u = new AliTRDCalDet("u","u");\r
52 for(Int_t k = 0; k < 540; k++){\r
53 u->SetValue(k,10.0);\r
54 }\r
55\r
56 //Style\r
57 //************************\r
58 gStyle->SetPalette(1);\r
59 gStyle->SetOptStat(1111);\r
60 gStyle->SetPadBorderMode(0);\r
61 gStyle->SetCanvasColor(10);\r
62 gStyle->SetPadLeftMargin(0.13);\r
63 gStyle->SetPadRightMargin(0.13);\r
64\r
65 //Build the Cal Pad\r
66 //********************************\r
67 Int_t smi = sm*30;\r
68 AliTRDCalPad *ki = new AliTRDCalPad("testnoise","testnoise");\r
69 for(Int_t k = 0; k < 540; k++){\r
70 ki->SetCalROC(k,(AliTRDCalROC *) cal->GetNoiseROC(k)); \r
71 }\r
72\r
73 // padstatus 2D\r
74 Int_t smn = (Int_t) det/30;\r
75 if((smn==0) || (smn==1) || (smn==2) || (smn==9) || (smn==10) || (smn==11)) smn = 1;\r
76 if((smn==3) || (smn==4) || (smn==5) || (smn==12) || (smn==13) || (smn==14)) smn = 2;\r
77 if((smn==6) || (smn==7) || (smn==8) || (smn==15) || (smn==16) || (smn==17)) smn = 3;\r
78 TString name("TRD/DAQData/PadStatus");\r
79 name += smn;\r
80 //name += 3;\r
81 AliCDBEntry *entrypadstatus = AliCDBManager::Instance()->Get("TRD/Calib/PadStatus",run);\r
82 if(!entrypadstatus) return;\r
83 AliTRDCalPadStatus *lo = (AliTRDCalPadStatus *)entrypadstatus->GetObject();\r
84 AliCDBEntry *entryo = AliCDBManager::Instance()->GetStorage(pathreferencedatabase)->Get(name, run);\r
85 if(!entryo) return;\r
86 AliTRDCalibPadStatus *calpad = (AliTRDCalibPadStatus *) entryo->GetObject();\r
87 if(!calpad) return;\r
88 \r
89\r
90 // Plot\r
91 //***********\r
92 \r
93 \r
94 // noise 2D\r
95 TCanvas *cnoise = new TCanvas((const char*)"noise1",(const char*)"noise1",50,50,600,800);\r
96 cnoise->Divide(3,2);\r
97 cnoise->cd(1);\r
98 ((TH2F *)ki->MakeHisto2DSmPl(sm,0,u,0,0.0,3.5,-1))->Draw("colz");\r
99 cnoise->cd(2);\r
100 ((TH2F *)ki->MakeHisto2DSmPl(sm,1,u,0,0.0,3.5,-1))->Draw("colz");\r
101 cnoise->cd(3);\r
102 ((TH2F *)ki->MakeHisto2DSmPl(sm,2,u,0,0.0,3.5,-1))->Draw("colz");\r
103 cnoise->cd(4);\r
104 ((TH2F *)ki->MakeHisto2DSmPl(sm,3,u,0,0.0,3.5,-1))->Draw("colz");\r
105 cnoise->cd(5);\r
106 ((TH2F *)ki->MakeHisto2DSmPl(sm,4,u,0,0.0,3.5,-1))->Draw("colz");\r
107 cnoise->cd(6);\r
108 ((TH2F *)ki->MakeHisto2DSmPl(sm,5,u,0,0.0,3.5,-1))->Draw("colz");\r
109 \r
110\r
111 // Pad Status \r
112 TCanvas *cpadstatus = new TCanvas((const char*)"padstatus",(const char*)"padstatus",50,50,600,800);\r
113 cpadstatus->Divide(3,2);\r
114 cpadstatus->cd(1);\r
115 ((TH2F *)lo->MakeHisto2DSmPl(sm,0))->Draw("colz");\r
116 cpadstatus->cd(2);\r
117 ((TH2F *)lo->MakeHisto2DSmPl(sm,1))->Draw("colz");\r
118 cpadstatus->cd(3);\r
119 ((TH2F *)lo->MakeHisto2DSmPl(sm,2))->Draw("colz");\r
120 cpadstatus->cd(4);\r
121 ((TH2F *)lo->MakeHisto2DSmPl(sm,3))->Draw("colz");\r
122 cpadstatus->cd(5);\r
123 ((TH2F *)lo->MakeHisto2DSmPl(sm,4))->Draw("colz");\r
124 cpadstatus->cd(6);\r
125 ((TH2F *)lo->MakeHisto2DSmPl(sm,5))->Draw("colz");\r
126\r
127 \r
128 \r
129 // reference data \r
130\r
131 TCanvas *cpoui = new TCanvas((const char*)"cpoui",(const char*)"cpoui",50,50,600,800);\r
132 cpoui->cd();\r
133 ((TH2F *)calpad->GetHisto(det))->Draw("lego");\r
134\r
135\r
136 AliTRDCalROC *ouip = calpad->GetCalRocMean(det);\r
137 TCanvas *cpouilo = new TCanvas((const char*)"cpouilo",(const char*)"cpouilo",50,50,600,800);\r
138 cpouilo->Divide(2,1);\r
139 cpouilo->cd(1);\r
140 ((TH1F *)ouip->MakeHisto1D(8.5,10.5,-1,10.0))->Draw();\r
141 //((TH1F *)ouip->MakeHisto1D(0.85,1.05,-1))->Draw();\r
142 cpouilo->cd(2);\r
143 ((TH2F *)ouip->MakeHisto2D(8.5,10.5,-1,10.0))->Draw("colz");\r
144 //((TH2F *)ouip->MakeHisto2D(0.85,1.05,-1))->Draw("colz");\r
145\r
146 AliTRDCalROC *ouiphy = calpad->GetCalRocRMS(det);\r
147 TCanvas *cpouiloh = new TCanvas((const char*)"cpouiloh",(const char*)"cpouiloh",50,50,600,800);\r
148 cpouiloh->Divide(2,1);\r
149 cpouiloh->cd(1);\r
150 ((TH1F *)ouiphy->MakeHisto1D(0.1,4.5,-1,10.0))->Draw();\r
151 //((TH1F *)ouiphy->MakeHisto1D(0.01,0.45,-1))->Draw();\r
152 cpouiloh->cd(2);\r
153 ((TH2F *)ouiphy->MakeHisto2D(0.1,4.5,-1,10.0))->Draw("colz");\r
154 //((TH2F *)ouiphy->MakeHisto2D(0.01,0.45,-1))->Draw("colz");\r
155 \r
156 \r
157\r
158 \r
159}\r