3 #include "AliRunDigitizer.h"
4 #include "AliTPCDigitizer.h"
45 AliRunDigitizer * manager =
new AliRunDigitizer(2,1);
46 manager->SetTreeDTPCBaseName(
"TreeD_75x40_100x60_150x60_");
47 manager->SetInputTreeTPCSBaseName(
"TreeS_75x40_100x60_150x60_");
48 manager->SetInputStream(0,
"galice.root");
49 manager->SetInputStream(1,
"ev2/galice.root.sdigits");
50 AliTPCDigitizer *dTPC =
new AliTPCDigitizer(manager);
51 manager->SetNrOfEventsToWrite(1);
61 void drawmerged(Int_t sec, Int_t row, Int_t x1=-1, Int_t x2=-1, Int_t y1=-1, Int_t y2=-1)
67 TFile *
f =
new TFile(
"galice.root");
68 TFile * f1=
new TFile(
"ev1/galice.root.digits");
69 TFile * f2=
new TFile(
"ev2/galice.root.digits");
70 TTree *
tree = (TTree*)f->Get(
"TreeD_75x40_100x60_150x60_0");
71 TTree * tree1 = (TTree*)f1->Get(
"TreeD_75x40_100x60_150x60_0");
72 TTree * tree2 = (TTree*)f2->Get(
"TreeD_75x40_100x60_150x60_0");
78 tree->GetBranch(
"Segment")->SetAddress(&dig);
79 tree1->GetBranch(
"Segment")->SetAddress(&dig1);
80 tree2->GetBranch(
"Segment")->SetAddress(&dig2);
86 else param=(
AliTPCParam*) f->Get(
"75x40_100x60_150x60");
87 Int_t index = param->
GetIndex(sec,row);
88 tree->GetEvent(index);
89 tree1->GetEvent(index);
90 tree2->GetEvent(index);
92 TCanvas * c =
new TCanvas(
" Test merged digits",
"test",600,900);
97 his->SetTitle(
"MergedDigits");
98 his->SetName(
"Merged Digits");
99 his->GetXaxis()->SetTitle(
"time");
100 his->GetYaxis()->SetTitle(
"pad");
101 his->DrawClone(
"cont1");
105 his1->SetTitle(
"background");
106 his1->SetName(
"background");
107 his1->GetXaxis()->SetTitle(
"time");
108 his1->GetYaxis()->SetTitle(
"pad");
109 his1->DrawClone(
"cont1");
113 his2->SetTitle(
"signal");
114 his2->SetName(
"signal");
115 his2->GetXaxis()->SetTitle(
"time");
116 his2->GetYaxis()->SetTitle(
"pad");
117 his2->DrawClone(
"cont1");
121 void drawd(TFile *
f, Int_t amp1, Int_t amp2)
123 TTree *
tree = (TTree*)f->Get(
"TreeD_75x40_100x60_150x60_0");
125 tree->GetBranch(
"Segment")->SetAddress(&dig);
126 TH1F * his =
new TH1F(
"his",
"his",amp2-amp1,amp1,amp2);
127 for (Int_t i=0;i<60;i++){
132 for (Int_t rows=0;rows<nrows; rows++)
133 for (Int_t col=0;col<ncols; col++){
145 TFile
f(
"galice.root");
146 TFile f1(
"ev1/galice.root.digits");
147 TFile f2(
"ev2/galice.root.digits");
148 TTree *
tree = (TTree*)f.Get(
"TreeD_75x40_100x60_150x60_0");
149 TTree * tree1 = (TTree*)f1.Get(
"TreeD_75x40_100x60_150x60_0");
150 TTree * tree2 = (TTree*)f2.Get(
"TreeD_75x40_100x60_150x60_0");
156 tree->GetBranch(
"Segment")->SetAddress(&dig);
157 tree1->GetBranch(
"Segment")->SetAddress(&dig1);
158 tree2->GetBranch(
"Segment")->SetAddress(&dig2);
160 for (Int_t i=0;i<6000;i++){
170 for (Int_t rows=0;rows<nrows; rows++)
171 for (Int_t col=0;col<ncols; col++){
176 if (abs(d-(d1+d2))>4)
177 printf(
"%d\t%d\t%d\t%d\t%d\t%d\n",i,rows,col,d,d1,d2);
185 TFile
f(
"galice.root");
186 TFile f1(
"ev1/galice.root.dig2");
187 TFile f2(
"ev2/galice.root.dig2");
188 TTree *
tree = (TTree*)f.Get(
"TreeD_75x40_100x60_150x60_0");
189 TTree * tree1 = (TTree*)f1.Get(
"TreeD_75x40_100x60_150x60_0");
190 TTree * tree2 = (TTree*)f2.Get(
"TreeD_75x40_100x60_150x60_0");
196 tree->GetBranch(
"Segment")->SetAddress(&dig);
197 tree1->GetBranch(
"Segment")->SetAddress(&dig1);
198 tree2->GetBranch(
"Segment")->SetAddress(&dig2);
203 for (Int_t i=0;i<6000;i++){
214 for (Int_t rows=0;rows<nrows; rows++)
215 for (Int_t col=0;col<ncols; col++){
222 printf(
"%d\t%d\t%d\t%d\t%d\t%d\n",i,rows,col,d,d1,d2);
230 TFile
f(
"galice.root");
231 TFile f1(
"ev1/galice.root.sdigits");
232 TFile f2(
"ev2/galice.root.sdigits");
233 TTree *
tree = (TTree*)f.Get(
"TreeD_75x40_100x60_150x60_0");
234 TTree * tree1 = (TTree*)f1.Get(
"TreeS_75x40_100x60_150x60_0");
235 TTree * tree2 = (TTree*)f2.Get(
"TreeS_75x40_100x60_150x60_0");
241 tree->GetBranch(
"Segment")->SetAddress(&dig);
242 tree1->GetBranch(
"Segment")->SetAddress(&dig1);
243 tree2->GetBranch(
"Segment")->SetAddress(&dig2);
245 for (Int_t i=0;i<6000;i++){
249 if ( (dig1->
GetID()!=i) || (dig2->
GetID()!=i) ) {
250 printf(
"missed segments\n");
260 for (Int_t rows=0;rows<nrows; rows++)
261 for (Int_t col=0;col<ncols; col++){
267 printf(
"%d\t%d\t%d\t%d\t%d\t%d\n",i,rows,col,d,d1,d2);
277 TFile f1(
"galice.root.digits");
278 TFile f2(
"galice.root.dig2");
280 TTree * tree1 = (TTree*)f1.Get(
"TreeD_75x40_100x60_150x60_0");
281 TTree * tree2 = (TTree*)f2.Get(
"TreeD_75x40_100x60_150x60_0");
286 tree1->GetBranch(
"Segment")->SetAddress(&dig1);
287 tree2->GetBranch(
"Segment")->SetAddress(&dig2);
289 for (Int_t i=0;i<6000;i++){
294 if ( (dig1->
GetID()!=i) || (dig2->
GetID()!=i) ) {
295 printf(
"miised semgnets\n");
306 for (Int_t rows=0;rows<nrows; rows++)
307 for (Int_t col=0;col<ncols; col++){
318 if ( (d2>0) && (d1>0))
319 if ( ( ( d2>2) || (d1>2)) && (t2_1!=t1_1)) {
320 printf(
"%d\t%d\t%d\t\t%d\t%d\n",i,rows,col,t1_1,t2_1);
321 printf(
"\t\t\t\t%d\t%d\n",d1,d2);
331 TFile f1(
"galice.root.digits");
332 TFile f2(
"galice.root.dig2");
334 TTree * tree1 = (TTree*)f1.Get(
"TreeD_75x40_100x60_150x60_0");
335 TTree * tree2 = (TTree*)f2.Get(
"TreeD_75x40_100x60_150x60_0");
340 tree1->GetBranch(
"Segment")->SetAddress(&dig1);
341 tree2->GetBranch(
"Segment")->SetAddress(&dig2);
343 for (Int_t i=0;i<6000;i++){
348 if ( (dig1->
GetID()!=i) || (dig2->
GetID()!=i) ) {
349 printf(
"miised semgnets\n");
360 for (Int_t rows=0;rows<nrows; rows++)
361 for (Int_t col=0;col<ncols; col++){
367 if ( ((d2>4) || (d1>4)) && abs(d1-d2)>4)
368 printf(
"%d\t%d\t%d\t\t%d\t%d\n",i,rows,col,d1,d2);
378 TFile f1(
"galice.root.sdigits");
379 TFile f2(
"galice.root.digits");
380 TTree * tree1 = (TTree*)f1.Get(
"TreeS_75x40_100x60_150x60_0");
381 TTree * tree2 = (TTree*)f2.Get(
"TreeD_75x40_100x60_150x60_0");
386 tree1->GetBranch(
"Segment")->SetAddress(&dig1);
387 tree2->GetBranch(
"Segment")->SetAddress(&dig2);
389 for (Int_t i=0;i<6000;i++){
394 if ( (dig1->
GetID()!=i) || (dig2->
GetID()!=i) ) {
395 printf(
"miised semgnets\n");
404 for (Int_t rows=0;rows<nrows; rows++)
405 for (Int_t col=0;col<ncols; col++){
408 if ((d2>5) &&abs(d1-d2)>2)
printf(
"%d\t%d\t%d\t\t%d\t%d\n",i,rows,col,d1,d2);
virtual void ExpandBuffer()
printf("Chi2/npoints = %f\n", TMath::Sqrt(chi2/npoints))
Manager and of geomety classes for set: TPC.
Manager and of geomety classes for set: TPC.
TFile f("CalibObjects.root")
Short_t GetDigitFast(Int_t row, Int_t column)
void drawd(TFile *f, Int_t amp1, Int_t amp2)
virtual void ExpandTrackBuffer()
Int_t GetTrackIDFast(Int_t row, Int_t column, Int_t level)
Int_t GetIndex(Int_t sector, Int_t row) const
void drawmerged(Int_t sec, Int_t row, Int_t x1=-1, Int_t x2=-1, Int_t y1=-1, Int_t y2=-1)
AliH2F * DrawDigits(const char *option=0, Float_t x1=-1, Float_t x2=-1, Float_t y1=-1, Float_t y2=-1)